以下、図面を参照しながら、入力機器、入力方法及びコンピュータプログラムの実施形態について説明する。但し、本発明が以下に説明する実施形態に限定されることはない。
(1)入力機器1の使用方法
はじめに、図1を参照しながら、本実施形態の入力機器1の使用方法について説明する。図1は、本実施形態の入力機器1の使用方法の一例を示す模式図である。
図1に示すように、入力機器1は、ユーザが装着可能な又はユーザが身につけることが可能な形状又は外観を有している。図1に示す例では、入力機器1は、リストバンドの如き形状を有しており、ユーザの手首の周りを取り囲むループ状の形状を有している。従って、ユーザは、ユーザの手首に入力機器1を装着することができる。
入力機器1は、対象機器2をユーザが操作するために使用される。入力機器1は、対象機器2に対してユーザが希望する指示内容(言い換えれば、操作内容、制御内容又は処理内容)を決定する。本実施形態では、入力機器1は、対象機器2に対してユーザが希望する指示内容を示す指示コマンド(言い換えれば、指示コマンド、制御コマンド又は処理コマンド)を決定するものとする。
入力機器1は、ユーザの人体を構成する複数の部位の状態に基づいて、対象機器2に対する指示コマンドを決定する。具体的には、入力機器1は、ユーザの人体を構成する複数の部位の状態を検出する。その後、入力機器1は、検出した複数の部位(或いは、複数の部位のうちの少なくとも2つの部位)の状態に対して割り当てられた指示コマンドを、対象機器2に対してユーザが希望する指示内容を示す指示コマンドとして決定する。
例えば、人体を構成する部位の一例として、頭、首、顔、目、右目、左目、耳、右耳、左耳、鼻、口、顎、上顎、下顎、歯、上の歯、下の歯、舌、腕、右腕、左腕、肩、右肩、左肩、上腕、右上腕、左上腕、肘、右肘、左肘、前腕、右前腕、左前腕、手、右手、左手、手の指、手の親指、手の人差し指、手の中指、手の薬指、手の小指、右手の親指、右手の人差し指、右手の中指、右手の薬指、右手の小指、左手の親指、左手の人差し指、左手の中指、左手の薬指、左手の小指、背中、胸、腹、腰、下肢、脚、右脚、左脚、腿、右腿、左腿、膝、右膝、左膝、足(ここでは、足は、くるぶし以下の接地部であるものとして、脚と便宜的に区別する)、右足、左足、足の指、足の親指、足の人差し指、足の中指、足の薬指、足の小指、右足の親指、右足の人差し指、右足の中指、右足の薬指、右足の小指、左足の親指、左足の人差し指、左足の中指、左足の薬指や、左足の小指等が例示される。
ユーザの人体を構成する部位に基づいて指示コマンドが決定されることを考慮すれば、ユーザの人体を構成する部位は、ユーザ自身の意思に基づいてユーザが動かすことが可能な部位であることが好ましい。上述した部位の一例は、いずれも、ユーザ自身の意思に基づいてユーザが動かすことが可能な部位であると言える。
「部位の状態」とは、例えば、部位の姿勢(たとえば、部位が伸びている状態、曲げられている状態)、複数の部位の接触の状態などである。具体的には、例えば、部位の姿勢の一例は、人差し指と中指とを立てている状態(たとえば、図6)、人差し指を曲げている状態(たとえば、図10)などである。部位の接触の状態とは、どの部位とどの部位とが接触しているか、複数の部位のどの部分が接触しているかなどである。具体的には、部位の接触の状態の一例は、例えば、人差し指と中指が接触している状態、人差し指と中指と薬指が接触している状態などである。また、部位の接触の状態の一例は、人差し指と中指の一部が接触している状態(たとえば、図9参照)などでもよい。指は、手の指でもよいし、足の指でもよい。また、部位の接触の状態の一例は、左足のかかとと右足のかかととを接触させた状態、左足のくるぶしと右足のくるぶしとを接触させた状態、上の歯と下の歯とを接触させた状態などであってもよい。さらに、手の一部または全体と、足の一部または全体とが接触している状態のように、部位の接触の状態の一例は、上述した部位のうちの異なる部位同士の接触であってもよい。なお、「接触の状態」には、部位と部位とが接触していない状態も含む。具体的には、部位と部位とが接触していない状態の一例は、例えば、人差し指と中指とが離間した状態である。また、例えば、ある部位の状態は、そのある部位の動き(例えば、動きの有無や、動きの方向や、動きの速さや、動きの内容)を意味していてもよい。例えば、ある部位の状態は、ある部位が向いている方向を意味していてもよい。例えば、ある部位の状態は、ある部位の形状を意味していてもよい。例えば、ある部位の状態は、ある部位の他の部位に対する相対的な位置関係(例えば、ある部位と他の部位との接触の有無や、他の部位を基準としてある部位が存在する方向や、ある部位と他の部位との間の距離等)を意味していてもよい。
本実施形態では、後に詳述するように、ユーザの左手の指の状態を入力機器1が検出すると共に、当該検出結果に基づいて入力機器1が指示コマンドを決定する例を用いて説明を進める。特に、後に詳述するように、ユーザの左手の親指、左手の人差し指及び左手の中指の夫々の状態を入力機器1が検出すると共に、当該検出結果に基づいて入力機器1が指示コマンドを決定する例を用いて説明を進める。この場合、入力機器1は、左手の親指、左手の人差し指及び左手の中指の夫々の状態を検出する。更に、入力機器1は、左手の親指、左手の人差し指及び左手の中指のうちの少なくとも2つの部位の状態に対して割り当てられた指示コマンドを、対象機器2に対してユーザが希望する指示コマンドとして決定する。
入力機器1は、決定した指示コマンドを、有線ネットワーク及び無線ネットワークの少なくとも一方を介して、対象機器2に対して送信する。有線ネットワークの一例として、LANや、電話回線や、インターネット回線や、USB(Universal Serial Bus)ケーブル等の任意の信号線を用いた通信ネットワークや、人体を通信媒体とする人体通信ネットワーク等が例示される。無線ネットワークの一例として、無線LAN(WiFi(登録商標))や、携帯電話回線や、Bluetooth(登録商標)や、赤外線通信ネットワークや、NFC(Near Field Communication:近距離無線通信)が例示される。
対象機器2は、入力機器1から送信された指示コマンドを受信する。その結果、対象機器2は、指示コマンドに応じた動作又は処理を行う。
対象機器2は、ユーザが操作可能な任意の機器である。図2に示す例では、対象機器2は、スマートフォンである。その他、対象機器2の一例として、タブレット端末、ノートパソコン及びデスクトップパソコン等の情報処理機器や、テレビ、CDプレーヤ、DVDプレーヤ、BDプレーヤ及びAVアンプ等のAV機器や、冷蔵庫、エアコン、電子レンジ及び洗濯機等の家電機器や、ゲーム機等の娯楽機器等が例示される。
尚、入力機器1は、必ずしもユーザによって装着されるものでなくてもよい。ユーザは、入力機器1を装着しなくてもよい。入力機器1は、当該入力機器1が指示コマンドを決定する期間の少なくとも一部の期間中にユーザによって装着される一方で、当該入力機器1が指示コマンドを決定する期間の少なくとも他の一部の期間中にユーザによって装着されなくてもよい。入力機器1は、当該入力機器1がユーザの人体を構成する部位の状態を検出する期間の少なくとも一部の期間中にユーザによって装着される一方で、当該入力機器1がユーザの人体を構成する部位の状態を検出する期間の少なくとも他の一部の期間中にユーザによって装着されなくてもよい。
入力機器1の形状は、リストバンドの如き形状とは異なる形状であってもよい。例えば、入力機器1は、ユーザの手に装着可能な手袋(言い換えれば、グローブ)の如き形状を有していてもよい。例えば、入力機器1は、ユーザの指に装着可能な指サックの如き形状を有していてもよい。例えば、入力機器1は、ユーザが任意の箇所に装着可能な又はユーザが任意の箇所に身につけることが可能な任意の形状を有していてもよい。但し、入力機器1は、ユーザが装着困難若しくは不可能な又はユーザが身につけることが困難若しくは不可能な任意の形状を有していてもよい。
(2)入力機器1の構成
続いて、図2を参照しながら、入力機器1の構成(特に、上述したユーザの人体を構成する部位の状態を検出し且つ指示コマンドを決定するための構成)について説明する。図2は、入力機器1の構成(特に、上述したユーザの人体を構成する部位の状態を検出し且つ指示コマンドを決定するための構成)の一例を示すブロック図である。
図1に示すように、入力機器1は、検出器11と、制御装置12と、通信インタフェース13とを備える。
検出器11は、夫々がユーザの人体を構成する複数の部位の状態を検出する。検出器11は、入力機器1が装着されている左手の手首の筋肉の電位(いわゆる、筋電)を検出することで、ユーザの人体を構成する複数の部位の状態を検出する。このため、検出器11は、筋電を検出可能な筋電センサ(或いは、電位センサ)を含んでいる。
上述したように、本実施形態では、入力機器1は、左手の親指、左手の人差し指及び左手の中指の夫々の状態を検出することで、指示コマンドを決定する。このため、検出器11は、左手の手首の筋肉のうち左手の親指の状態に関連する筋肉、左手の人差し指の状態に関連する筋肉及び左手の中指の状態に関連する筋肉の夫々の電位を検出することで、左手の親指、左手の人差し指及び左手の中指の夫々の状態を検出する。このため、検出器11は、左手の手首で検出可能な筋電のうち左手の親指の状態に関連する筋電成分、左手の人差し指の状態に関連する筋電成分及び左手の中指の状態に関連する筋電成分の夫々を検出することで、左手の親指、左手の人差し指及び左手の中指の夫々の状態を検出する。検出器11は、検出結果(つまり、左手の親指、左手の人差し指及び左手の中指の夫々の状態)を制御装置12に通知する。
制御装置12は、入力機器1の動作を制御する。制御装置12は、例えば、入力機器1の動作を制御するための情報処理(例えば、指示コマンドを決定するための情報処理)を行うCPU(Central Processing Unit)を含んでいてもよい。制御装置12は、例えば、CPUに上述した情報処理を行わせるためのコンピュータプログラムが格納されたり、上述した情報処理の際に参照される各種情報が一時的に格納されたりするメモリを含んでいてもよい。
制御装置12は、その内部に論理的に実現される処理ブロックとして又はその内部に物理的に実現される処理回路として、ペアリング処理部121と、対象特定部122と、モード特定部123と、指示コマンド決定部124とを備える。尚、ペアリング処理部121、対象特定部122、モード特定部123及び指示コマンド決定部124の少なくとも一つが論理的な処理ブロックとして実現される場合には、CPUに読み込まれることで当該CPU内に論理的な処理ブロックを実現可能なコンピュータプログラムが、メモリに格納されていてもよい。或いは、このようなコンピュータプログラムが、入力機器1に着脱可能な外部記録媒体に格納されていてもよい。或いは、このようなコンピュータプログラムが、ネットワークを介して入力機器1にダウンロードされてもよい。
ペアリング処理部121は、入力機器1と対象機器2とのペアリングを行う。本実施形態の「ペアリング」は、通信を行う機器同士を接続することである。ペアリングにより、入力機器1と対象機器2とが対応付けされ、入力機器1から対象機器2への指示コマンドの送信が可能となる。尚、以下の実施形態では、「ペアリング」という用語を用いて説明するが、入力機器1と対象機器2とを対応付けることができる限りは、通信の方法は他の方法でも構わない。たとえば、WiFi(登録商標)、NFC、赤外線通信ネットワーク、Bluetooth(登録商標)、人体通信、その他の方法を用いてもよい。
対象特定部122は、対象特定部122は、入力機器1を用いてユーザが実際に操作する(つまり、ユーザの実際の操作対象となる)対象機器2を特定する。対象特定部122は、入力機器1が決定した指示コマンドの実際の送信先となる対象機器2を特定する。対象特定部122は、入力機器1が決定した指示コマンドに応じた動作又は処理を実際に行う対象機器2を特定する。例えば、入力機器1と複数の対象機器2とがペアリングされている場合には、対象特定部122は、複数の対象機器2の中から実際の操作対象となる少なくとも一つの対象機器2を特定する。
モード特定部123は、ユーザが対象機器2を操作する際の操作モードを特定する。操作モードはユーザにより設定される。例えば、対象機器2のメニューを操作することにより設定することができる。本実施形態における「操作モード」は、ユーザがどのような操作目的(言い換えれば、使用目的、制御目的又は処理目的)で対象機器2を操作するか(言い換えれば、使用するか)を実質的に示す。つまり、操作モードは、対象機器2を操作するユーザの操作目的(言い換えれば、対象機器2を使用するユーザの使用目的)を実質的に示すと言える。
操作モードの一例として、対象機器2の表示部23(後述する図3参照)が表示する表示画面上の所望位置を指定したり、表示画面を切り替えたりする操作をユーザが行う通常モードが例示される。この場合、ユーザは、表示画面上の所望位置を指定したり表示画面を切り替えたりするという操作目的で、対象機器2を操作する。操作モードの他の一例として、表示部23が表示する表示画面内でテキストを入力する操作をユーザが行うテキスト入力モードが例示される。この場合、ユーザは、テキストを入力するという操作目的で、対象機器2を操作する。操作モードの他の一例として、対象機器2の撮像部22を用いて写真又は動画を撮影する操作をユーザが行うカメラモードが例示される。この場合、ユーザは、写真又は動画を撮影するという操作目的で、対象機器2を操作する。操作モードの他の一例として、ゲーム機として機能する対象機器2を用いてゲームをプレイする操作をユーザが行うゲームモードが例示される。この場合、ユーザは、ゲームをプレイするという操作目的で、対象機器2を操作する。その他、通常モード、テキスト入力モード、カメラモード及びゲームモードとは異なる任意の操作モードが採用されてもよい。
尚、操作モードが決まると、対象機器2がどのように動作するかが実質的に決まる。例えば、操作モードがテキスト入力モードに決まると、対象機器2は、テキスト入力をユーザが行うことができるように動作する。言い換えれば、対象機器2がどのように動作するかが決まると、操作モードが実質的に決まる。例えば、ユーザがテキストを入力する操作を行うことができるように対象機器2が動作する場合には、操作モードは、テキスト入力モードに決まるはずである。このため、操作モードの特定は、実質的には、対象機器2がどのように動作するかを示す動作モードの特定と等価であると言える。
指示コマンド決定部124は、モード特定部123が特定した操作モード及び検出器11の検出結果に基づいて、指示コマンドを決定する。
通信インタフェース13は、指示コマンド決定部124が決定した指示コマンドを、有線ネットワーク及び無線ネットワークの少なくとも一方を介して、対象機器2に対して送信する。
尚、図2を用いて説明した入力機器1の構成は一例である。従って、入力機器1の構成の少なくとも一部が適宜改変されてもよい。以下、入力機器1の構成の少なくとも一部の改変の例について説明する。
検出器11は、筋電を検出する方法に加えて又は代えて、その他の方法で、人体を構成する複数の部位の状態を検出してもよい。検出器11は、筋電センサに加えて又は代えて、他のセンサを含んでいてもよい。例えば、検出器11は、人体を構成する部位の状態に起因した静電容量(例えば、人体を構成する部位の状態を検出するために設置された電極の静電容量)を検出することで、人体を構成する複数の部位の状態を検出してもよい。この場合、検出器11は、静電容量センサを含んでいてもよい。例えば、検出器11は、人体を構成する部位の状態に起因した振動(例えば、人体を構成する部位自身の振動や、当該部位の状態を検出するために設置された振動体の振動)を検出することで、人体を構成する複数の部位の状態を検出してもよい。この場合、検出器11は、振動センサを含んでいてもよい。例えば、検出器11は、人体を構成する部位の状態に起因した熱(例えば、人体を構成する部位自身の熱)を検出することで、人体を構成する複数の部位の状態を検出してもよい。この場合、検出器11は、熱センサや熱伝導センサを含んでいてもよい。例えば、検出器11は、人体を構成する部位の状態を光学的に検出することで、人体を構成する複数の部位の状態を検出してもよい。この場合、検出器11は、光センサや、赤外線センサや、紫外線センサや、撮像素子等を含んでいてもよい。いずれにせよ、検出器11は、何らかの方法を用いて、人体を構成する複数の部位の状態を検出してもよい。
入力機器1は、人体を構成する複数の部位の状態を検出する単一の検出器11を備えていてもよい。入力機器1は、人体を構成する複数の部位の状態を夫々検出する複数の検出器11を備えていてもよい。入力機器1が複数の検出器11を備えている場合には、各検出器11は、対応する各部位に又は当該各部位に近接して若しくは当該各部位に対応してユーザの人体に装着されてもよい。その結果、入力機器1が複数の検出器11を備えている場合には、複数の部位の状態の検出精度が相対的に高くなる。
入力機器1は、検出器11を備えていなくてもよい。この場合、入力機器1(特に、入力機器1が備える制御装置12)は、入力機器1とは別個にユーザに装着された検出器11の検出結果を取得してもよい。
(3)対象機器2の構成
続いて、図3を参照しながら、対象機器2の構成(特に、上述した入力機器1の構成に関連する対象機器2の構成)について説明する。図3は、対象機器2の構成(特に、上述した入力機器1の構成に関連する対象機器2の構成)の一例を示すブロック図である。
図3に示すように、対象機器2は、制御装置21と、撮像部22と、表示部23と、通信インタフェース24とを備える。
制御装置21は、対象機器2の動作を制御する。制御装置21は、例えば、対象機器2の動作を制御するための情報処理(例えば、指示コマンドを決定するための情報処理)を行うCPU(Central Processing Unit)を含んでいてもよい。制御装置21は、例えば、CPUに上述した情報処理を行わせるためのコンピュータプログラムが格納されたり、上述した情報処理の際に参照される各種情報が一時的に格納されたりするメモリを含んでいてもよい。
制御装置21は、その内部に論理的に実現される処理ブロックとして又はその内部に物理的に実現される処理回路として、ペアリング処理部211と、モード設定部212と、表示制御部213と、撮像制御部214とを備える。尚、ペアリング処理部211、モード設定部212、表示制御部213及び撮像制御部214の少なくとも一つが論理的な処理ブロックとして実現される場合には、CPUに読み込まれることで当該CPU内に論理的な処理ブロックを実現可能なコンピュータプログラムが、メモリに格納されていてもよい。或いは、このようなコンピュータプログラムが、対象機器2に着脱可能な外部記録媒体に格納されていてもよい。或いは、このようなコンピュータプログラムが、ネットワークを介して対象機器2にダウンロードされてもよい。
ペアリング処理部211は、上述した入力機器1のペアリング処理部121と協調して、入力機器1と対象機器2とのペアリングを行う。
モード設定部212は、操作モードを設定する。モード設定部212は、対象機器2に対して入力機器1が送信する指示コマンドが実質的に操作モードの切り替え、変更又は設定を要求している場合には、当該指示コマンドに基づいて、操作モードを設定する。モード設定部212は、操作モードを指定するユーザの操作に基づいて、操作モードを設定する。但し、モード設定部212は、モード設定部212自身によっていわば自動的に操作モードを設定してもよい。
表示制御部213は、表示部23を制御する。表示制御部213は、所望の表示画面を表示部23が表示するように、表示部23を制御する。表示制御部213は、対象機器2に対して入力機器1が送信する指示コマンドが示す指示内容が反映された所望の表示画面を表示部23が表示するように、表示部23を制御する。
撮像制御部214は、撮像部22を制御する。撮像制御部214は、対象機器2に対して入力機器1が送信する指示コマンドが示す指示内容に応じた撮像態様で撮像部22が写真又は動画を撮影することができるように、撮像部22を制御する。
撮像部22は、撮像制御部214の制御の下で、写真又は動画を撮影可能である。撮像部22は、カメラを含んでいてもよい。
表示部23は、表示制御部213の制御の下で、所望の表示画面を表示する。表示部23は、ディスプレイ装置を含んでいてもよい。このようなディスプレイ装置の一例として、液晶ディスプレイや、有機EL(Electro Luminescence)ディスプレイが例示される。
通信インタフェース24は、対象機器2に対して入力機器1が送信する指示コマンド4を、有線ネットワーク及び無線ネットワークの少なくとも一方を介して、受信する。
尚、図3を用いて説明した対象機器2の構成は一例である。従って、対象機器2の構成の少なくとも一部が適宜改変されてもよい。以下、対象機器2の構成の少なくとも一部の改変の例について説明する。
対象機器2は、撮像部22及び表示部23のうちの少なくとも一方を備えていなくてもよい。この場合、制御装置21は、表示制御部213及び撮像制御部214の少なくとも一方を備えていなくてもよい。
(4)入力機器1及び対象機器2の動作
続いて、図4から図14を参照しながら、入力機器1及び対象機器2の動作(特に、ユーザが入力機器1を用いて対象機器2を操作する場合に行われる動作)について説明する。
(4−1)入力機器1及び対象機器2の動作の流れ
はじめに、図4を参照しながら、入力機器1及び対象機器2の動作(特に、ユーザが入力機器1を用いて対象機器2を操作する場合に行われる動作)の流れについて説明する。図4は、入力機器1及び対象機器2の動作の流れ(特に、ユーザが入力機器1を用いて対象機器2を操作する場合に行われる動作)の一例を示すフローチャートである。
図4に示すように、入力機器1のペアリング処理部121は、対象機器2のペアリング処理部211と協調して、入力機器1と対象機器2とのペアリングを行う(ステップS11)。同様に、対象機器2のペアリング処理部211は、入力機器1のペアリング処理部121と協調して、入力機器1と対象機器2とのペアリングを行う(ステップS21)。
本実施形態では、ペアリング処理部121及びペアリング処理部211は、ユーザの人体を通信媒体とする人体通信を用いて相互に情報を送受信することで、ペアリングを行う。この場合、ペアリング処理部121は、ユーザによる入力機器1の装着(ユーザによる入力機器1の保持)をトリガ(言い換えれば、開始条件)として、ペアリングを行うための情報(以降、適宜“ペアリング情報”と称する)を、人体通信を用いて送信してもよい。同様に、ペアリング処理部211は、ユーザによる対象機器2の保持をトリガとして、ペアリング情報を、人体通信を用いて送信してもよい。
ユーザが入力機器1及び対象機器2の双方を保持している場合には、ペアリング処理部121が送信したペアリング情報は、ユーザの人体を介して、対象機器2に到達する。その結果、ペアリング処理部211は、ペアリング処理部121が送信したペアリング情報を受信する。同様に、ユーザが入力機器1及び対象機器2の双方を保持している場合には、ペアリング処理部211が送信したペアリング情報は、ユーザの人体を介して、入力機器1に到達する。その結果、ペアリング処理部121は、ペアリング処理部211が送信したペアリング情報を受信する。このように、ユーザが入力機器1及び対象機器2の双方を保持している場合には、ペアリング処理部121とペアリング処理部211との間でペアリング情報の送受信が行われる。その結果、入力機器1と対象機器2とのペアリングが完了する。
ユーザが入力機器1を保持している一方で対象機器2を保持していない場合には、ペアリング処理部121が送信したペアリング情報は、対象機器2に到達することはない。つまり、ペアリング処理部211は、ペアリング処理部121が送信したペアリング情報を受信することはない。同様に、ユーザが対象機器2を保持している一方で入力機器1を保持していない場合には、ペアリング処理部211が送信したペアリング情報は、入力機器1に到達することはない。つまり、ペアリング処理部121は、ペアリング処理部211が送信したペアリング情報を受信することはない。このように、ユーザが入力機器1及び対象機器2の少なくとも一方を保持していない場合には、ペアリング処理部121とペアリング処理部211との間でペアリング情報の送受信が行われることはない。その結果、入力機器1と対象機器2とのペアリングが完了することはない。
ペアリングが完了すると、ユーザは、ペアリングが完了した入力機器1を用いて、当該入力機器1とペアリングされた(つまり、対応付けられた)対象機器2を操作することができる。例えば、入力機器1と対象機器2とがペアリングされている場合には、入力機器1は、指示コマンド等の各種情報を対象機器2に送信することができる。一方で、入力機器1と対象機器2とがペアリングされていない場合には、入力機器1は、指示コマンド等の各種情報を対象機器2に送信することができない。
尚、既にペアリングされた入力機器1及び対象機器2がユーザによって保持された場合には、再度のペアリングは必ずしも行われなくてもよい。つまり、ペアリングは、ペアリングされていない入力機器1及び対象機器2がユーザによって保持された場合に行われれば足りる。既にペアリングされた入力機器1及び対象機器2がユーザによって保持された場合には、入力機器1及び対象機器2は、人体通信等を用いて互いにその存在を確認することで、入力機器1を用いてユーザが対象機器2を操作することが可能な状態に遷移してもよい。
入力機器1と対象機器2とのペアリングが完了すると、対象機器2のモード設定部212は、操作モードを設定する(ステップS22)。ここで、上述したように、モード設定部212は、入力機器1から対象機器2に送信される指示コマンドに基づいて、操作モードを設定する。しかしながら、ペアリングが完了した直後は、入力機器1から対象機器2に対して指示コマンドがいまだ送信されていない可能性が高い。従って、この段階では、モード設定部212は、デフォルトの操作モードを設定してもよい。例えば、モード設定部212は、対象機器2の電源を起動した後に表示部23がデフォルトで表示する表示画面(例えば、スマートフォンにおけるホーム画面)を操作するための操作モード(典型的には、上述した通常モード)を、デフォルトの操作モードとして設定してもよい。その後、モード設定部212は、通信インタフェース部25を用いて、設定した操作モードを示す情報を入力機器1に送信する。
一方で、入力機器1と対象機器2とのペアリングが完了すると、入力機器1の対象特定部122は、入力機器1を用いた実際の操作対象となる(つまり、入力機器1が決定した指示コマンドの実際の送信先となる)対象機器2を特定する(ステップS12)。
ここで、ユーザが装着した入力機器1とペアリングされている対象機器2が1つである場合には、当該ペアリングされている1つの対象機器2が実際の操作対象となるはずである。従って、この場合には、対象特定部122は、当該ペアリングされている対象機器2を、実際の操作対象となる対象機器2として特定してもよい。
一方で、ユーザが装着した入力機器1とペアリングされている対象機器2が2つ以上存在する場合には、当該ペアリングされている2つ以上の対象機器2のうちのいずれか1つの対象機器2が実際の操作対象となることが好ましい。従って、この場合には、対象特定部122は、2つ以上の対象機器2の中から実際の操作対象となる1つの対象機器2を特定することが好ましい。
対象特定部122は、実際の操作対象となる対象機器2を特定するためのユーザの動作に基づいて、実際の操作対象となる対象機器2を特定する。実際の操作対象となる対象機器2を特定するためのユーザの動作は、例えば、対象機器2を保持する(或いは、触れる)という動作であってもよい。この場合、対象特定部122は、ユーザが保持している対象機器2を、実際の操作対象となる対象機器2として特定する。
実際の操作対象となる対象機器2が特定された後には、入力機器1のモード特定部123は、操作モードを特定(言い換えれば、検出)する(ステップS13)。上述したように、対象機器2のモード設定部212は、モード設定部212自身が設定した操作モードを示す情報を入力機器1に送信する。従って、モード特定部123は、対象機器2から入力機器1に送信される操作モードを示す情報を参照することで、操作モードを特定する。但し、モード特定部123は、その他の方法で操作モードを特定してもよい。
その後、入力機器1の検出器11は、左手の親指、左手の人差し指及び左手の中指の夫々の状態を検出する(ステップS14)。検出器11は、検出結果(つまり、左手の親指、左手の人差し指及び左手の中指の状態)を、指示コマンド決定部124に通知する。尚、検出器11の検出結果は、左手の親指、左手の人差し指及び左手の中指の状態を示す情報である。
その後、指示コマンド決定部124は、モード特定部123が特定した操作モード及び検出器11の検出結果(以降、便宜的に“指状態検出結果”と称する)に基づいて、指示コマンドを決定する(ステップS15)。
本実施形態では、一の操作モード及び一の指状態検出結果は、固有の指示コマンドに対応付けられている。例えば、第1操作モード及び第1指状態検出結果は、第1指示コマンドに対応付けられている。例えば、第1操作モード及び第1指状態検出結果と異なる第2指状態検出結果は、第1指示コマンドとは異なる第2指示コマンドに対応付けられている。例えば、第1操作モードとは異なる第2操作モード及び第1指状態検出結果は、第1指示コマンド及び第2指示コマンドとは異なる第3指示コマンドに対応付けられている。例えば、第2操作モード及び第2指状態検出結果は、第1指示コマンドから第3指示コマンドとは異なる第4指示コマンドに対応付けられている。
入力機器1のメモリ等には、このような操作モード及び指状態検出結果と指示コマンドとの対応付けを示す情報が予め格納されていてもよい。対応付けを示す情報の一例として、例えばマップや、関数や、数式や、表(テーブル)等が例示される。指示コマンド決定124は、このような情報を参照することで、指示コマンドを決定してもよい。
その後、指示コマンド決定部124は、通信インタフェース13を用いて、決定した指示コマンドを対象機器2に対して送信する(ステップS16)。その結果、対象機器2は、指示コマンドを受信する(ステップS23)。
対象機器2が指示コマンドを受信すると、対象機器2に対して、指示コマンドが特定する操作が行われる。つまり、対象機器2は、指示コマンドに応じた動作(言い換えれば、制御又は処理)を行う(ステップS24)。例えば、指示コマンドが、表示部23が表示する表示画面上での指示内容を示す指示コマンドである場合には、表示制御部213は、指示コマンドが示す指示内容が反映された所望の表示画面を表示部23が表示するように、表示部23を制御する。例えば、指示コマンドが、撮像部22に対する指示内容を示す指示コマンドである場合には、撮像制御部214は、指示コマンドが示す指示内容に応じた撮影態様で撮像部22が写真又は動画を撮影することができるように、撮像部22を制御する。例えば、指示コマンドが、その他対象機器2に対する任意の指示内容を示す指示コマンドである場合には、制御装置21は、指示コマンドが示す指示内容に応じた動作、制御又は処理態様を行う。
受信した指示コマンドが実質的に操作モードの切り替え、変更又は設定を要求している場合には、モード設定部212は、当該指示コマンドに基づいて操作モードを適宜設定し直す。更にモード設定部212は、設定し直した操作モードを示す情報を入力機器1に送信する。従って、モード特定部123は、適宜切り替えられる、変更される又は設定される操作モードを特定することができる。従って、指示コマンド決定部124は、適宜切り替えられる、変更される又は設定される操作モードに基づいて、指示コマンドを適切に決定することができる。
(4−2)指状態検出結果及び操作モードと指示コマンドとの対応付け
続いて、図5から図14を参照しながら、指状態検出結果及び操作モードと指示コマンドとの対応付けの一例について説明する。尚、以下では、4種類の操作モード(具体的には、上述した通常モード、テキスト入力モード、カメラモード及びゲームモード)を例にあげて順に説明する。また、以下では、説明の簡略化のために、特段の説明がない場合には、“親指”、“人差し指”及び“中指”は、夫々、“左手の親指”、“左手の人差し指”及び“左手の中指”を意味するものとする。
(4−2−1)通常モード時の指状態検出結果と指示コマンドとの対応付け
はじめに、図5から図10を参照しながら、操作モードが通常モードである場合の指状態検出結果と指示コマンドとの対応付けの一例について説明する。図5は、操作モードが通常モードである場合に表示部23が表示する表示画面の一例を示す平面図である。図6から図10は、夫々、左手の親指31、左手の人差し指32及び左手の中指33の状態と表示部23が表示する表示画面上での指示内容との関係を示す平面図である。
図5に示すように、以下では、説明の便宜上、サーチボックス231とタブウインドウ232とを含む表示画面が表示部23に表示されている例を用いて説明を進める。尚、図5は、操作モードが通常モードである場合に表示部23に表示される表示画面23の一具体例を示すに過ぎない。図5は、操作モードが通常モードである場合に表示部23に表示される表示画面23が、図5に示す表示画面に限定されることを意図するものではない。操作モードが通常モードである場合には、表示部23は、任意の表示画面を表示可能である。
サーチボックス231は、キーワード検索を行うためにユーザがテキストを入力することが可能な表示ウインドウである。タブウインドウ232は、タブ234(図5に示す例では、タブ234aからタブ234d)を選択することでその表示内容を切り替えることが可能な表示ウインドウである。タブウインドウ232内には、少なくとも一つのテキストリンク233が表示されている。テキストリンク233が選択されると、表示部23は、テキストリンク233が示すリンク先の表示画面を新たに表示する。
表示画面上には、ユーザが指定する(言い換えれば、指し示す)位置を示すポインタ235が表示されている。操作モードが通常モードである場合には、ユーザは、入力機器1を使用することで、当該ポインタ235を表示画面上で移動させると共に、所望の表示対象物(例えば、サーチボックス231や、タブ234や、テキストリンク233等)を選択することができる。
以下、このような表示画面が表示部23に表示されているとの前提の下で、指状態検出結果と指示コマンドとの対応付けの一例について更に説明を進める。
図6(a)は、ユーザが表示画面上の所望位置を指定する(つまり、表示画面上でポインタ235を移動させる)ための各指の状態の一例を示している。図6(a)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33の上で又は前で親指31を所望方向(図6(a)中の矢印の方向)に向かって動かしている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)親指31が人差し指32及び中指33の上で又は前で所望方向に向かって動いていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、接触している人差し指32及び中指33の上で又は前で所望方向に向かって動いている状態であり、(ii)人差し指32の状態が、中指33に接触している状態であり、(iii)中指33の状態が、人差し指32に接触している状態であることを示す。
操作モードが通常モードであり且つ図6(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、親指31の動きに合わせて表示画面上でポインタ235を移動させる指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、ポインタ235が移動するように表示画面を表示する。つまり、図6(a)に示す例では、人差し指32と中指33を接触させるユーザの動作により、指示コマンドのカテゴリ(例えば、ポインタ235を移動させるというカテゴリ)が決定する。更に、接触させている人差し指32及び中指33とは異なる親指31を動かすユーザの動作により、対象機器2に送信する具体的な指示コマンド(例えば、ポインタ235を具体的にどの方向にどの程度移動させるかを含む指示コマンド)が決定する。
例えば、ユーザが接触させた人差し指32及び中指33の上で又は前で親指31を右側(例えば、ユーザから見て右側であり、以下に示す方向はいずれもユーザから見た方向を意味するものとする)に向かって移動させている場合を想定する。この場合には、指示コマンド決定部124は、表示画面上でポインタ235を右側に向かって移動させる指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、ポインタ235が表示画面上で右側に向かって移動するように表示画面を表示する。図6(b)に示す例では、ポインタ235は、図6(b)中に点線で示す位置(タブ234aにポインタ235が重なる位置)から、図6(b)中に実線で示す位置(タブ234bにポインタ235が重なる位置)へと移動する。
図7(a)は、ユーザが指定している所望位置にある表示対象物(つまり、ポインタ235が重なっている表示対象物)をユーザが選択している表示対象物であると決定するための各指の状態の一例を示している。図7(a)に示す例では、ユーザは、人差し指32を親指31で2回タップしている。つまり、ユーザは、人差し指32と親指31とを接触させた後に離す動作を短時間の間に2回繰り返している。従って、指状態検出結果は、人差し指32と親指31とが接触した後に離れる動作が短時間の間に2回行われたことを示す。言い換えれば、指状態検出結果は、(i)人差し指32の状態が、親指31に接触した後に離れる動作が短時間の間に2回行われた状態であり、(ii)親指31の状態が、人差し指32に接触した後に離れる動作が短時間の間に2回行われた状態であることを示す。
操作モードが通常モードであり且つ図7(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ポインタ235が重なっている表示対象物をユーザが選択している表示対象物であると決定する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、必要に応じて、ポインタ235が重なっている表示対象物(つまり、ユーザが選択していると決定された表示対象物)に対応する表示画面を表示する。
例えば、タブ234aに対応するテキストリンク233をタブウインドウ232が表示しており且つタブ234bにポインタ235が重なっている状況(図6(b)参照)において、ユーザが人差し指32を親指31で2回タップした場合を想定する。この場合には、指示コマンド決定部124は、ユーザが選択している表示対象物がタブ234bであると決定する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、図7(b)に示すように、表示部23は、タブ234aに対応するテキストリンク233に代えてタブ234bに対応するテキストリンク233をタブウインドウ232が表示するように表示画面を表示する。
或いは、例えば、サーチボックス231にポインタ235が重なっている状況において、ユーザが人差し指32と親指31とを2回タップした場合を想定する。この場合には、指示コマンド決定部124は、ユーザが選択している表示対象物がサーチボックス231であると決定する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、サーチボックス231にテキストを入力することが可能な表示画面を表示する。更に、この場合には、サーチボックス231にテキストが入力されるがゆえに、モード設定部212は、操作モードを、テキスト入力モードに設定する。つまり、操作モードが切り替えられる。
尚、図7(a)に示す例では、指示コマンドの決定に対して中指33の状態が寄与していない。この場合には、(i)人差し指32の状態が、親指31と2回接触した状態であり、(ii)親指31の状態が、人差し指32と2回接触した状態である限りは、指示コマンド決定部124は、中指33がどのような状態にあるかを考慮することなく、指示コマンドを決定してもよい。以下の説明でも同様に、指示コマンド決定部124は、場合によっては、少なくとも一つの指がどのような状態にあるかを考慮することなく、指示コマンドを決定してもよい。
図8(a)は、ユーザが表示画面をスクロールするための各指の状態の一例を示している。図8(a)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33を親指31で上下方向又は左右方向に向かって相対的に早い速度(典型的には、図6(a)に示す場合と比較して早い速度)でこすっている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)親指31が人差し指32及び中指33を上下方向又は左右方向に向かって相対的に早い速度でこすっていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、接触している人差し指32及び中指33を上下方向又は左右方向に向かって相対的に早い速度でこすっている状態であり、(ii)人差し指32の状態が、中指33に接触している状態であり、(iii)中指33の状態が、人差し指32に接触している状態であることを示す。
操作モードが通常モードであり且つ図8(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、親指31がこする方向(つまり、親指31が動く方向)に合わせて表示画面をスクロールする指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、スクロールした表示画面を表示する。
例えば、ユーザが接触させた人差し指32及び中指33を親指31で上下方向に向かって相対的に早い速度でこすっている場合には、指示コマンド決定部124は、表示画面を上下方向にスクロールする指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、図8(b)に示すように、表示部23は、上下方向(図8(b)に示す例では、下方向)に向かってスクロールした表示画面を表示する。親指31を左右方向に移動させる場合も同様である。
図9(a)は、ユーザが表示画面を拡大又は縮小するための各指の状態の一例を示している。図9(a)に示す例では、ユーザは、親指31と中指33とを接触させた状態で、親指31を右側又は左側に向かって動かしている。つまり、ユーザは、中指33を親指31で左右方向に向かってこすっている。従って、指状態検出結果は、(i)親指31と中指33とが接触しており、且つ、(ii)親指31が中指33を左右方向に向かってこすっていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、中指33に接触しており且つ左右方向に向かって中指33をこすっている状態であり、(ii)中指33の状態が、親指31に接触している状態であることを示す。
操作モードが通常モードであり且つ図9(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、親指31の動く方向に応じて表示画面を拡大又は縮小する指示コマンドがユーザの希望する指示コマンドであると決定する。例えば、親指31が右側に動くように親指31が中指33をこすっている場合には、指示コマンド決定部124は、表示画面を拡大する指示コマンドがユーザの希望する指示コマンドであると決定してもよい。例えば、親指31が左側に動くように親指31が中指33をこすっている場合には、指示コマンド決定部124は、表示画面を縮小する指示コマンドがユーザの希望する指示コマンドであると決定してもよい。その結果、表示部23は、拡大又は縮小した表示画面を表示する。例えば、図9(b)は、表示部23が拡大した表示画面(つまり、図6(b)に示す表示画面を拡大することで得られる表示画面)を表示する例を示している。つまり、図9(a)に示す例では、親指31と中指33を接触させるユーザの動作により、指示コマンドのカテゴリ(例えば、表示画面の大きさを変えるというカテゴリ)が決定する。更に、中指33に接触させている親指31を動かすユーザの動作により、対象機器2に送信する具体的な指示コマンド(例えば、表示画面をどの程度拡大又は縮小させるかを含む指示コマンド)が決定する。
このように、図6及び図9で示したように、人差し指32と中指33との姿勢や接触状態が異なると、親指31の動きに対応付けられている指示内容(指示コマンド)が異なるものとなり得る。また、図8で示したように、人差し指32と中指33とを接触させたときは、親指31がこする方向に合わせて表示画面をスクロールさせて、人差し指32と中指33と薬指とを立てて接触させたときは、親指31を上下方向にこすったときに、表示している画像を拡大または縮小することとしてもよい。また、図9の例では、人差し指32を立てて、中指33を曲げた状態で操作を行っている。この時、例えば、立てた人差し指31と、曲げた中指32とが接触している場合と、接触していない場合とで異なる指示内容としてもよい。
図10(a)は、ユーザが表示対象物を選択したまま移動させる(つまり、ドラッグする)ための各指の状態の一例を示している。図10(a)に示す例では、ユーザは、親指31と人差し指32とを接触させた状態で、親指31を右側又は左側に向かって動かしている。つまり、ユーザは、人差し指32を親指31で左右方向に向かってこすっている。従って、指状態検出結果は、(i)親指31と人差し指32とが接触しており、且つ、(ii)親指31が人差し指32を左右方向に向かってこすっていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、人差し指32に接触しており且つ左右方向に向かって人差し指32をこすっている状態であり、(ii)人差し指32の状態が、親指31に接触している状態であることを示す。
操作モードが通常モードであり且つ図10(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、親指31の動く方向に応じて選択した表示対象物をドラッグする指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、ユーザが選択している表示対象物がドラッグされた表示画面を表示する。
例えば、タブ234bにポインタ235が重なっている状況(図7(b)参照)において、親指31が左側に移動するようにユーザが親指31で人差し指32をこすった場合を想定する。この場合には、指示コマンド決定部124は、ユーザが選択している表示対象物であるタブ234bを左側に向かってドラッグする指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、図10(b)に示すように、表示部23は、タブ234bがドラッグされた結果タブ234bがタブ234aよりも左側に位置する表示画面を表示する。
(4−2−2)テキスト入力モード時の指状態検出結果と指示コマンドとの対応付け
続いて、図11から図12を参照しながら、操作モードがテキスト入力モードである場合の指状態検出結果と指示コマンドとの対応付けの一例について説明する。図11から図12は、夫々、左手の親指、左手の人差し指32及び左手の中指33の状態と表示部23が表示する表示画面上での指示内容との関係を示す平面図である。
尚、以下の説明では、ユーザが、子音を共通にする一連の日本語テキスト群が表示された表示画面上で所望の日本語テキストを選択すると共に、表示画面上に表示される一連の日本語テキスト群の子音を適宜切り替える例を用いて説明を進める。
図11(a)は、ユーザが子音を共通にする一連の日本語テキスト群から所望の日本語テキストを選択するための各指の状態の一例を示している。図11(a)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33の上で又は前で親指31を所望方向(図11(a)に示す例では、一連の日本語テキスト群が配列される方向であって、上下方向又は左右方向)に向かって動かしている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)親指31が人差し指32及び中指33の上で又は前で所望方向に向かって動いていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、接触している人差し指32及び中指33の上で又は前で所望方向に向かって動いている状態であり、(ii)人差し指32の状態が、中指33に接触している状態であり、(iii)中指33の状態が、人差し指32に接触している状態であることを示す。
操作モードがテキスト入力モードであり且つ図11(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、一連の日本語テキスト群のうち親指31が動く方向に位置する日本語テキストを選択候補として選択する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、一連の日本語テキスト群のうち親指31が動く方向に位置する日本語テキストが選択された(例えば、日本語テキストがフレームで囲まれた)表示画面を表示する。
例えば、図11(b)に示すように、表示部23が、「さ(SA)」が中心に位置し、「し(SHI)」が「さ(SA)」の左側に位置し、「す(SU)」が「さ(SA)」の上側に位置し、「せ(SE)」が「さ(SA)」の右側に位置し、「そ(SO)」が「さ(SA)」の下側に位置する表示画面を表示する例を用いて説明する。ユーザが接触させた人差し指32及び中指33の上で又は前で親指31を右側に向かって移動させている場合には、指示コマンド決定部124は、相対的に右側に位置する「せ(SE)」を選択候補として選択する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、「せ(SE)」が選択されている表示画面を表示する。更に、表示部23は、選択された日本語テキストがサーチボックス231内に表示されている表示画面を表示する。
尚、図11(a)に示す各指の状態は、操作モードが通常モードである場合にユーザが表示画面上の所望位置を指定するための各指の状態と同一である。しかしながら、操作モードが異なるがゆえに、指示コマンド決定部124は、同一の指情報検出結果から異なる指示コマンドを決定する。
図12(a)は、表示画面上に表示される一連の日本語テキスト群の子音を切り替える(具体的には、順送りする)ための各指の状態の一例を示している。図12(a)に示す例では、ユーザは、人差し指32を親指31で1回タップしている。つまり、ユーザは、人差し指32と親指31とを接触させた後に離す動作を短時間の間に1回行っている。従って、指状態検出結果は、人差し指32と親指31とが接触した後に離れる動作が短時間の間に1回行われたことを示す。言い換えれば、指状態検出結果は、(i)人差し指32の状態が、親指31に接触した後に離れる動作が短時間の間に1回行われた状態であり、(ii)親指31の状態が、人差し指32に接触した後に離れる動作が短時間の間に1回行われた状態であることを示す。
操作モードがテキスト入力モードであり且つ図12(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、順送りされた子音に対応する一連の日本語テキスト群を表示する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、順送りされた子音に対応する一連の日本語テキスト群を示す表示画面を表示する。図12(b)は、表示部23が「S」という子音に対応する一連の日本語テキスト群を表示している状況(図11(b)参照)でユーザが人差し指32を親指31でタップした場合の表示画面の例を示している。図12(b)に示すように、表示部23は、「S」から1つだけ順送りされた子音である「T」に対応する一連の日本語テキスト群(つまり、た(TA)、ち(TI)、つ(TSU)、て(TE)、と(TO))を示す表示画面を表示する。
図12(c)は、表示画面上に表示される一連の日本語テキスト群の子音を切り替える(具体的には、逆送りする)ための各指の状態の一例を示している。図12(c)に示す例では、ユーザは、中指33を親指31で1回タップしている。つまり、ユーザは、中指33と親指31とを接触させた後に離す動作を短時間の間に1回行っている。従って、指状態検出結果は、中指33と親指31とが接触した後に離れる動作が短時間の間に1回行われたことを示す。言い換えれば、指状態検出結果は、(i)中指33の状態が、親指31に接触した後に離れる動作が短時間の間に1回行われた状態であり、(ii)親指31の状態が、中指33に接触した後に離れる動作が短時間の間に1回行われた状態であることを示す。
操作モードがテキスト入力モードであり且つ図12(c)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、逆送りされた子音に対応する一連の日本語テキスト群を表示する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、表示部23は、逆送りされた子音に対応する一連の日本語テキスト群を示す表示画面を表示する。図12(d)は、表示部23が「S」という子音に対応する一連の日本語テキスト群を表示している状態でユーザが中指33を親指31でタップした場合の表示画面の例を示している。図12(d)に示すように、表示部23は、「S」から1つだけ逆送りされた子音である「K」に対応する一連の日本語テキスト群(つまり、か(KA)、き(KI)、く(KU)、け(KE)、こ(KO))を示す表示画面を表示する。
(4−2−3)カメラモード時の指状態検出結果と指示コマンドとの対応付け
続いて、図13を参照しながら、操作モードがカメラモードである場合の指状態検出結果と指示コマンドとの対応付けについて説明する。図13は、夫々、左手の親指、左手の人差し指32及び左手の中指33の状態を示す平面図である。
図13(a)は、ズームインするための各指の状態の一例を示している。図13(a)に示す例では、ユーザは、人差し指32を時計回り(つまり、ユーザから見て時計回りであり、以下同じ)に回転させている。従って、指状態検出結果は、(i)人差し指32が時計回りに回転し、且つ、(ii)親指31及び中指33が回転していないことを示す。言い換えれば、指状態検出結果は、(i)人差し指32の状態が、時計回りに回転している状態であり、(ii)親指31及び中指33の状態が、回転していない状態であることを示す。
操作モードがカメラモードであり且つ図13(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ズームインする指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、撮像部22は、ズームインする。
図13(b)は、ズームアウトするための各指の状態の一例を示している。図13(b)に示す例では、ユーザは、人差し指32を反時計回り(つまり、ユーザから見て反時計回りであり、以下同じ)に回転させている。従って、指状態検出結果は、(i)人差し指32が反時計回りに回転し、且つ、(ii)親指31及び中指33が回転していないことを示す。言い換えれば、指状態検出結果は、(i)人差し指32の状態が、反時計回りに回転している状態であり、(ii)親指31及び中指33の状態が、回転していない状態であることを示す。
操作モードがカメラモードであり且つ図13(b)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ズームアウトする指示コマンドを決定する。その結果、撮像部22は、ズームアウトする。
図13(c)は、オートフォーカスを作動させるための各指の状態の一例を示している。図13(c)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33に親指31を重ねている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)親指31が人差し指32及び中指33に重なっていることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、接触している人差し指32及び中指33に重なっている状態であり、(ii)人差し指32の状態が、中指33に接触している状態であり、(iii)中指33の状態が、人差し指32に接触している状態であることを示す。
操作モードがカメラモードであり且つ図13(c)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、オートフォーカスを作動させる指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、撮像部22は、オートフォーカスを作動させる。
図13(d)は、シャッターを切る(つまり、シャッターを開く又はリリースする)ための各指の状態の一例を示している。図13(d)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33に親指31が重なっている状態において親指31をはじく(つまり、人差し指32及び中指33に親指31が重ならなくなるように親指31を動かす)。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)人差し指32及び中指33に重なっていた親指31が人差し指32及び中指33に重ならなくなることを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、接触している人差し指32及び中指33に重なっていた後に移動する(つまり、接触している人差し指32及び中指33に重ならなくなるように移動する)状態であり、(ii)人差し指32の状態が、中指33に接触している状態であり、(iii)中指33の状態が、人差し指32に接触している状態であることを示す。
操作モードがカメラモードであり且つ図13(d)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、シャッターを切る指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、撮像部22は、シャッターを切る。
図13(e)は、露出を+補正するための各指の状態の一例を示している。図13(e)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33を時計回りに回転させている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、(ii)人差し指32及び中指33が時計回りに回転しており、(iii)親指31が回転していないことを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、回転していない状態であり、(ii)人差し指32の状態が、中指33に接触し且つ時計回りに回転している状態であり、(iii)中指33の状態が、人差し指32に接触し且つ時計回りに回転している状態であることを示す。
操作モードがカメラモードであり且つ図13(e)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、露出を+補正する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、撮像部22は、露出を+補正する。
図13(f)は、露出を−補正するための各指の状態の一例を示している。図13(f)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33を反時計回りに回転させている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、(ii)人差し指32及び中指33が反時計回りに回転しており、(iii)親指31が回転していないことを示す。言い換えれば、指状態検出結果は、(i)親指31の状態が、回転していない状態であり、(ii)人差し指32の状態が、中指33に接触し且つ反時計回りに回転している状態であり、(iii)中指33の状態が、人差し指32に接触し且つ反時計回りに回転している状態であることを示す。
操作モードがカメラモードであり且つ図13(f)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、露出を−補正する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、撮像部22は、露出を−補正する。
このように、図6で説明した通常モードの場合と、図13で示したカメラモードとの場合では、部位の接触状態が同じであっても異なる指示内容となり、異なる指示コマンドが決定される。
(4−2−4)ゲームモード時の指状態検出結果と指示コマンドとの対応付け
続いて、図14を参照しながら、操作モードがゲームモードである場合の指状態検出結果と指示コマンドとの対応付けについて説明する。図14は、夫々、左手の親指、左手の人差し指32及び左手の中指33の状態を示す平面図である。
図14(a)は、ゲーム内の第1機能(例えば、ゲームキャラクタが右手に持っている武器を使用する第1機能)を制御するための各指の状態の一例を示している。図14(a)に示す例では、ユーザは、人差し指32を動かしている。従って、指状態検出結果は、人差し指32が動いていることを示す。言い換えれば、指状態検出結果は、人差し指32の状態が、動いている状態であることを示す。
操作モードがゲームモードであり且つ図14(a)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ゲーム内の第1機能を制御する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、制御装置21は、ゲーム内の第1機能を制御する。
図14(b)は、ゲーム内の第2機能(例えば、ゲームキャラクタが左手に持っている武器を使用する第2機能)を制御するための各指の状態の一例を示している。図14(b)に示す例では、ユーザは、親指31を動かしている。従って、指状態検出結果は、親指31が動いていることを示す。言い換えれば、指状態検出結果は、親指31の状態が、動いている状態であることを示す。
操作モードがゲームモードであり且つ図14(b)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ゲーム内の第2機能を制御する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、制御装置21は、ゲーム内の第2機能を制御する。
図14(c)は、ゲーム内の第3機能(例えば、ゲームキャラクタが保有しているアイテムを使用する第3機能)を制御するための各指の状態の一例を示している。図14(c)に示す例では、ユーザは、人差し指32と中指33とを接触させると共に、接触させた人差し指32及び中指33を動かしている。従って、指状態検出結果は、(i)人差し指32と中指33とが接触しており、且つ、(ii)人差し指32及び中指33が接触した状態で動いていることを示す。言い換えれば、指状態検出結果は、(i)人差し指32の状態が、中指33に接触し且つ動いている状態であり、(ii)中指33の状態が、人差し指32に接触し且つ動いているという状態であることを示す。
操作モードがゲームモードであり且つ図14(c)に示す指状態検出結果が得られた場合には、指示コマンド決定部124は、ゲーム内の第3機能を制御する指示コマンドがユーザの希望する指示コマンドであると決定する。その結果、制御装置21は、ゲーム内の第3機能を制御する。
(5)入力機器1の技術的効果
本実施形態の入力機器1は、対象機器2に対する指示コマンドを好適に決定することができる。従って、ユーザは、入力機器1を使用することで、対象機器2を好適に操作することができる。
更に、入力機器1は、親指31、人差し指32及び中指33の状態(例えば、親指31、人差し指32及び中指33のうちの少なくとも2つの接触状態や、親指31、人差し指32及び中指33のうちの少なくとも一つの動きの状態等)に基づいて、指示コマンドを決定することができる。従って、ユーザは、指を動かすという比較的シンプルな動作を行うことで、対象機器2を好適に操作することができる。特に、親指31、人差し指32及び中指33の状態の数が膨大になり得ることを考慮すれば、入力機器1は、多種多様な指示コマンドを決定することができる。従って、ユーザは、入力機器1を使用することで、対象機器2を多種多様に操作することができる。
更に、入力機器1は、操作モードに基づいて、指示コマンドを決定することができる。このため、入力機器1は、操作モードに適合する多種多様の指示コマンドを決定することができる。従って、ユーザは、入力機器1を使用することで、操作モードに合わせて、対象機器2を多種多様に操作することができる。
更に、本実施形態では、人体通信を用いて入力機器1と対象機器2とのペアリングが行われる。このため、ユーザが入力機器1及び対象機器2の双方を保持すれば、実質的には、自動的にペアリングが行われる。このため、ペアリングを行うための設定や暗証番号の入力等をユーザが行わなくてもよくなる。従って、比較的容易にペアリングが行われる。また、ペアリングは、NFC(近距離無線通信)を用いて、入力機器1と対象機器2とが接触したら行われることとしてもよい。また、ペアリングは、NFC(近距離無線通信)を用いて、入力機器1と対象機器2との距離が所定の距離になったら行われることとしてもよい。所定の距離とは、例えば、NFC(近距離無線通信)で通信が可能となる距離や予め定められた距離などとすることができる。
更に、入力機器1は、ユーザが保持している対象機器2を、実際の操作対象となる対象機器2として特定することができる。従って、入力機器1は、比較的容易に、実際の操作対象となる対象機器2を特定することができる。このため、入力機器1が決定した指示コマンドが意図しない対象機器2に誤送信されてしまうことは殆ど又は全くない。
尚、図4から図14を用いて説明した入力機器1及び対象機器2の動作は一例である。従って、入力機器1及び対象機器2の動作の少なくとも一部が適宜改変されてもよい。以下、入力機器1及び対象機器2の動作の少なくとも一部の改変の例について説明する。
入力機器1が行う動作の少なくとも一部は、入力機器1に加えて又は代えて、対象機器2が行ってもよい。例えば、対象機器2は、操作モード及び指状態検出結果に基づいて、指示コマンドを決定してもよい(図4のステップS15)。この場合、対象機器2は、検出器11の検出結果を取得することが好ましい。
入力機器1が行う動作の少なくとも一部は、入力機器1及び対象機器2に加えて又は代えて、入力機器1及び対象機器2とネットワークを介して接続された外部のサーバが行ってもよい。例えば、外部のサーバは、操作モード及び指状態検出結果に基づいて、指示コマンドを決定してもよい(図4のステップS15)。この場合、外部のサーバは、検出器11の検出結果を取得すると共に、決定した指示コマンドを入力機器1及び対象機器2の少なくとも一方に送信することが好ましい。
ペアリング処理部121及びペアリング処理部211は、人体通信を用いたペアリング情報の送受信を行うことに加えて又は代えて、その他の方法を用いて、入力機器1と対象機器2とのペアリングを行ってもよい。
対象特定部122は、実際の操作対象となる2つ以上の対象機器2を特定してもよい。対象特定部122は、ユーザが装着した入力機器1とペアリングされている対象機器2が2つ以上存在する場合には、2つ以上の対象機器2の中から実際の操作対象となる2つ以上の対象機器2を特定してもよい。この場合、入力機器1が決定した指示コマンドは、実際の操作対象として特定された2つ以上の対象機器2に送信される。その結果、実際の操作対象として特定された2つ以上の対象機器2は、実質的に同一の動作を行ってもよい。
対象特定部122は、実際の操作対象となる対象機器2を特定しなくてもよい。この場合、例えば、対象機器122は、入力機器1とペアリングされており且つ通信インタフェース13を介して通信可能な全ての対象機器2(或いは、当該全ての対象機器2の一部)に対して、指示コマンドを送信してもよい。更に、この場合には、入力機器1は、対象特定部122を備えていなくてもよい。
対象特定部122は、実際の操作対象となる対象機器2を特定するためのユーザの動作を参照することなく、実際の操作対象となる対象機器2を特定してもよい。例えば、操作対象部122は、入力機器1とペアリングされている対象機器2の優先度に関する情報を保持すると共に、入力機器1とペアリングされており且つ通信インタフェース13を介して通信可能な全ての対象機器2の中から優先度の高い対象機器2を、実際の操作対象となる対象機器2として特定してもよい。
対象特定部122は、ペアリングが行われる場合のみならず、任意のタイミング(例えば、図4のステップS13からステップS16の動作が行われている期間中の任意のタイミング)で、実際の操作対象となる対象機器2を特定してもよい。対象特定部122は、ユーザが保持している対象機器2が変わった場合には、ユーザが新たに保持した対象機器2を、実際の操作対象となる対象機器2として新たに特定してもよい。
モード特定部123は、操作モードを特定しなくてもよい。指示コマンド決定部124は、操作モードに基づくことなく、指状態検出結果に基づいて指示コマンドを決定してもよい。この場合、入力機器1は、モード特定部123を備えていなくてもよい。上述した実施の形態では、操作モードはユーザが対象機器のメニューを操作して決定したが、音声などで設定してもよく、また、入力機器からのコマンドで設定してもよい。例えば、入力機器と対象機器とのペアリングが成立した後の部位のパターンを特定し、特定したパターンを設定するためのコマンドを入力機器から対象機器に送信することにより操作モードが設定されてもよい。
検出器11が検出する部位が親指31、人差し指32及び中指33に限定されることがないことは既に上述したとおりである。一例として、検出器11は、上顎の状態(或いは、上の歯の状態)、下顎の状態(或いは、下の歯の状態)及び舌の状態(或いは、これらの少なくとも一部)を検出してもよい。指示コマンド決定部124は、上顎の状態(或いは、上の歯の状態)、下顎の状態(或いは、下の歯の状態)及び舌の状態(或いは、これらの少なくとも一部)に基づいて、指示コマンドを決定してもよい。この場合、ユーザが対象機器2を操作するために動かす部位がユーザの口の中に隠れるがゆえに、ユーザが対象機器2を操作していることが外部に露見しにくくなる。
上述の各実施形態の構成要件の少なくとも一部は、上述の各実施形態の構成要件の少なくとも他の一部と適宜組み合わせることができる。上述の各実施形態の構成要件のうちの一部が用いられなくてもよい。また、法令で許容される限りにおいて、上述の各実施形態で引用した全ての公報の開示を援用して本文の記載の一部とする。
本発明は、上述した実施形態に限られるものではなく、特許請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴う入力機器、入力方法及びコンピュータプログラムもまた本発明の技術的範囲に含まれるものである。