【解決手段】入力装置1は、被写体を撮像して画像を取得する撮像手段2と、前記撮像手段で取得した画像を解析して、所定の物体に手が接触しているか否かを検出し、前記所定の物体に前記手が接触しているのを検出した場合に、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方を検出する検出手段3と、前記検出手段で検出された、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートする操作指示手段4と、を備えている。
前記検出手段は、前記所定の物体に手が接触しているのを検出した後に、前記所定の物体から手が離れるのを検出した場合には、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方の検出を停止することを特徴とする請求項1〜請求項3のいずれか1つに記載の入力装置。
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、上記に鑑みてなされたものであり、ポインティングデバイスの入力操作を,
手を使用してエミュレートする場合に、ユーザの使い勝手がよく、かつ、誤操作の少ない入力装置、入力方法、及びコンピュータが実行可能なプログラムを提供することを課題とする。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するために、本発明は、被写体を撮像して画像を取得する撮像手段と、前記撮像手段で取得した画像を解析して、所定の物体に手が接触しているか否かを検出し、前記所定の物体に前記手が接触しているのを検出した場合に、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方を検出する検出手段と、前記検出手段で検出された、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートする操作指示手段と、を備えたことを特徴とする。
【0010】
また、本発明の好ましい態様によれば、前記検出手段は、前記撮像手段で取得した画像を解析して、前記所定の物体を動作させるための動作平面を検出する平面検出手段と、前記撮像手段で取得した画像を解析して、前記所定の物体を検出する物体検出手段と、前記物体検出手段で前記所定の物体を検出した場合に、前記画像を解析して、前記所定の物体に手が接触しているか否かを検出する手検出手段と、前記手検出手段で前記所定の物体に手が接触しているのを検出した場合に、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方を検出する動作検出手段と、を含むことが望ましい。
【0011】
また、本発明の好ましい態様によれば、前記所定の物体を前記撮像手段で撮影して登録する登録手段を備え、前記検出手段は、前記登録手段で登録された所定の物体を検出することが望ましい。
【0012】
また、本発明の好ましい態様によれば、前記検出手段は、前記所定の物体に手が接触しているのを検出した後に、前記所定の物体から手が離れるのを検出した場合には、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方の検出を停止することが望ましい。
【0013】
また、本発明の好ましい態様によれば、前記ポインティングデバイスはマウスであり、
前記操作指示手段は、前記検出手段で検出された前記所定の物体の移動に応じてカーソルを移動させ、また、前記所定の物体に対する第1の指又は第2の指の操作に応じた左ボタン又は右ボタンのクリック操作を行うことが望ましい。
【0014】
また、本発明の好ましい態様によれば、前記撮像手段は、3Dカメラであり、被写体の3次元の画像を取得することが望ましい。
【0015】
また、上述した課題を解決し、目的を達成するために、本発明は、入力装置の入力方法であって、被写体を撮像して画像を取得する撮像工程と、前記撮像工程で取得した画像を解析して、所定の物体に手が接触しているか否かを検出し、前記所定の物体に前記手が接触しているのを検出した場合に、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方を検出する検出工程と、前記検出工程で検出された、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートする操作指示工程と、を含むことを特徴とする。
【0016】
また、上述した課題を解決し、目的を達成するために、本発明は、入力装置に搭載されるプログラムであって、被写体を撮像して画像を取得する撮像工程と、前記撮像工程で取得した画像を解析して、所定の物体に手が接触しているか否かを検出し、前記所定の物体に前記手が接触しているのを検出した場合に、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方を検出する検出工程と、前記検出工程で検出された、前記所定の物体の移動及び前記所定の物体に対する手の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートする操作指示工程と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【0017】
本発明にかかる入力装置によれば、ポインティングデバイスの入力操作を手を使用してエミュレートする場合に、ユーザの使い勝手がよく、かつ、誤操作の少ない入力装置を提供することが可能になるという効果を奏する。
【発明を実施するための形態】
【0019】
以下に、この発明にかかる入力装置、その入力方法、及びコンピュータが実行可能なプログラムを図面に基づいて詳細に説明する。本発明の構成要素は、本明細書の図面に一般に示してあるが、様々な構成で広く多様に配置し設計してもよいことは容易に理解できる。したがって、本発明の装置、方法、及びプログラムの実施形態についての以下のより詳細な説明は、特許請求の範囲に示す本発明の範囲を限定するものではなく、単に本発明の選択した実施形態の一例を示すものであって、本明細書の特許請求の範囲に示す本発明と矛盾無く装置、方法、及びプログラムについての選択した実施形態を単に示すものである。当業者は、特定の細目の1つ以上が無くても、又は他の方法、部品、材料でも本発明を実現できることが理解できる。
【0020】
(実施の形態)
図1は、本実施の形態に係る入力装置の概念図である。
図1に示す入力装置1は、ハードウェアやソフトウェアのモジュール、又は、その組み合わせで構成することができる。
図1に示すように、入力装置1は、撮像手段2、検出手段3、及び操作指示手段4等を備えている。
【0021】
撮像手段2は、被写体を撮像して得られた画像(動画)を、検出手段3に出力する。撮像手段2は、例えば、3Dカメラであり、被写体の3次元の画像を取得することにしてよい。
【0022】
検出手段3は、撮像手段2で取得した画像を解析して、所定の物体11に手12が接触しているか否かを検出し、所定の物体11に手12が接触しているのを検出した場合に、所定の物体11の移動及び所定の物体11に対する手12の動作の少なくとも一方を検出して、その検出結果を操作指示手段4に出力する。所定の物体11は、ユーザが机上で移動させることが可能なものが望ましく、例えば、オレンジ、箱、携帯電話、スマートフォン、ペン等の各種の物体を使用することができる。
【0023】
操作指示手段4は、検出手段3で検出された、所定の物体11の移動及び所定の物体11に対する手12の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートする。これにより、ユーザは、所定の物体11を手12で移動させたり、所定の物体11に対して手12で操作することにより、ポインティングデバイスと同様の入力操作を行うことができる。ポインティングデバイスは、例えば、マウス、タッチパッド、トラックポイント、及びタッチペン等である。
【0024】
また、所定の物体11を撮像手段2で撮影して登録する登録手段を備えることにしてもよい。この場合、検出手段3は、登録手段により登録されている所定の物体11を検出することにしてもよい。これにより、ユーザが所望の物体を登録して、所望の物体11を手で操作することにより、ポインティングデバイスと同様の入力操作を行うことが可能となる。
【0025】
また、検出手段3は、撮像手段2で取得した画像を解析して、所定の物体11を動作させるための動作平面10を検出する平面検出手段5と、撮像手段2で取得した画像を解析して、所定の物体11を検出する物体検出手段6と、物体検出手段6で所定の物体11を検出した場合に、画像を解析して、所定の物体11に手12が接触しているか否かを検出する手接触検出手段7と、手接触検出手段7で所定の物体11に手12が接触しているのを検出した場合に、所定の物体11の移動及び所定の物体11に対する手12の動作の少なくとも一方を検出し、その検出結果を操作指示手段4に出力する動作検出手段8と、を備える構成としてもよい。これにより、簡単な方法で所定の物体11の移動や所定の物体11に対する手12の動作を検出することが可能となる。
【0026】
また、検出手段3は、所定の物体11に手12が接触しているのを検出した後に、所定の物体11から手12が離れるのを検出した場合には、検出中の、所定の物体11の移動及び/又は所定の物体に対する手の動作の検出を停止することにしてもよい。これにより、ユーザが所定の物体11から手12を離した場合には、検出が中断されるので、ユーザが所定の物体11から手12を離すことにより、入力操作を中断することが可能となる。
【0027】
また、エミュレートするポインティングデバイスはマウスとしてもよい。操作指示手段4は、検出手段3で検出された所定の物体11の移動に応じてカーソルを移動させ、また、所定の物体11に対する第1の指又は第2の指の操作に応じた左ボタン又は右ボタンのクリック操作を行うことにしてもよい。これにより、所定の物体11と手12を使用してマウスと同様な入力操作を行うことが可能となる。
【0028】
なお、カーソルの移動操作のみを行いたい場合(例えば、タッチパッドをエミュレートする場合)は、所定の物体11の移動のみを検出する構成とし、また、クリック操作のみを行いたい場合には(例えば、タッチペンのクリックボタンのみをエミュレートする場合)、所定の物体11に対する指の操作のみを検出する構成としてもよい。すなわち、所定の物体で行いたい操作をエミュレートすることにすればよい。
【0029】
以上説明したように、本実施の形態によれば、撮像手段2は、被写体を撮像して画像を取得し、検出手段3は、撮像手段2で取得した画像を解析して、所定の物体に手が接触しているか否かを検出し、所定の物体に手が接触しているのを検出した場合に、所定の物体11の移動及び所定の物体11に対する手の動作の少なくとも一方を検出し、操作指示手段4は、検出手段3で検出された、所定の物体11の移動及び所定の物体11に対する手12の動作の少なくとも一方に応じた入力操作を行って、ポインティングデバイスの入力操作をエミュレートすることとしたので、ポインティングデバイスの入力操作を、手を使用してエミュレートする場合に、ユーザの使い勝手がよく、かつ、ユーザの意図しない手の動作等によるユーザの意図しない入力操作を防止することができる。
【0030】
(実施例)
図2−A及び
図2−Bは、本実施の形態に係る入力装置を適用した情報処理装置であるノートPC20の概略の外観図である。ノートPC20は、
図2−Aに示すように、いずれも略直方体である本体側筐体22及びディスプレイ側筐体23を備える。本体側筐体22は、キーボード及びタッチパッド等を有する入力部24を備える。ディスプレイ側筐体23は、LCD(液晶ディスプレイ)25と、LCD25の表示面側にその上方の略中央に配置され、前方の被写体を撮像可能な3Dカメラ26とを備える。3Dカメラ26は、例えば、ステレオカメラを使用することができる。
【0031】
本体側筐体22及びディスプレイ側筐体23は、それぞれの端部で左右の一対の連結部(ヒンジ部)27a、27bによって連結されており、連結部27a、27bは、これらの筐体を開閉自在に支持している。
【0032】
上述したように、ハンドジェスチャだけでマウス操作をエミュレートする方法では、手を支えるものが無いため長時間作業では手の疲労が大きく、また、マウスを操作する感覚とは大きく異なっている。そこで、本実施例では、手でHID物体を操作して、マウス操作をエミュレートすることにより、手をHID物体で支え、長時間作業でも手の疲労が少なく、また、マウスを操作するのと同じ感覚での入力操作を可能としている。ここでは、一例として、HID物体30としてオレンジを使用する場合について説明する。
【0033】
図2−Aに示すように、ユーザは、所望するHID物体30を動作平面32上に置き、3Dカメラ26でHID物体30を撮影してHID物体30を登録する。
図2−Bに示すように、ユーザは、登録したHID物体30を握り、物体30を手31により動作平面32で動かして、LCD25に表示されるカーソル28の移動操作を行い、また、手31の指31a,31bをHID物体30に対して押下操作することにより左右のクリック操作を行う。
【0034】
図3は、上記ノートPC20の概略のハードウェア構成例を示す図である。ノートPC20は、同図に示すように、CPU41、ROM42、メモリ43、HDD(ハードディスク)44、LCD25、入力部24、3Dカメラデバイス50、通信デバイス51、バッテリ52、DC−DCコンバータ53,ACアダプタ54、USBポート55等を備えており、各部はバスを介して直接又は間接的に接続されている。
【0035】
CPU41は、バスを介して接続されたHDD44に格納されたOS45によりノートPC20全体の制御を行うとともに、HDD44に格納された各種のプログラムに基づいて処理を実行する機能を司る。ROM42は、BIOS(Basic Input/Output System:基本入出力システム)42aやデータ等を格納している。
【0036】
メモリ43は、キャッシュメモリやRAMで構成されており、CPU41の実行プログラムの読み込み領域として、実行プログラムの処理データを書き込む作業領域として利用される書き込み可能メモリである。
【0037】
HDD(ハードディスク)44は、例えば、Windows(登録商標) XP、Vista、7、8等のノートPC20全体の制御を行うためのOS45、周辺機器類をハードウェア操作するための各種ドライバ46、マウスエミュレート用アプリケーションプログラム47、特定業務に向けられた他のアプリケーションプログラム48等を記憶する機能を有する。
【0038】
OS45は、ノートPC20の基本的な動作を制御しているものであり、各種資源を管理し、例えば、アプリケーションプログラムが発生した命令を、各種ドライバ46やBIOS42aに伝える。OS45は、マルチタスク機能及びマルチウィンドウ機能を有し、アプリケーションプログラムの実行コンテキスト(あるアプリケーションプログラムが利用しているレジスタセットやメインメモリイメージ、ファイルハンドルなど)やGUIの
部品などのソフトウェア資源の管理も行うように構成されている。アプリケーションプログラムと各デバイス・ドライバの間のデータ又はコマンドの送受信には、OS45が介在する。
【0039】
各種ドライバ46は、例えば、OS45の指示に従ってLCD25を制御する表示ドライバ、OS45の指示に従って3Dカメラデバイス50を制御するカメラドライバ、OS35の指示に従ってマウスを制御するマウスライバ、OS45の指示に従って通信デバイス51を制御する通信ドライバ等である。
【0040】
マウスエミュレート用アプリケーションプログラム47は、ユーザが登録したHID物体30を手で操作して、マウスと同様の入力操作を行うためのものである。他のアプリケーションプログラム48は、ブラウザ、メール、ワープロ、表計算等のプログラムである。
【0041】
LCD25は、CPU41の制御に従って、表示情報をビデオ信号に変換し、変換したビデオ信号に応じた各種情報を表示画面に表示する。
【0042】
なお、本実施の形態では、ディスプレイとしてLCDを使用することにしているが、本発明はこれに限られるものではなく、有機ELディスプレイやCRT等の他のディスプレイを使用することにしてもよい。
【0043】
入力部24は、ユーザが入力操作を行うためのユーザ・インターフェースであり、文字、コマンド等を入力する各種キーより構成されるキーボードや、画面上のカーソルを移動させたり、各種メニューを選択するタッチパッド等を備えている。
【0044】
3Dカメラデバイス50は、ステレオカメラ等の3Dカメラ26と、カメラ処理回路56とを備えている。3Dカメラ26は、レンズや撮像部(CCDやCMOS)を備えており、レンズは被写体光を結像し、撮像部は結像された被写体光をR,G,Bの画像信号として出力する。カメラ処理回路56は、A/D変換器、画像処理用LSI、メモリ等を備え、撮像部の駆動タイミングや露出制御等を行うと共に、撮像部で得られたRGBの画像信号を信号処理(3次元画像の生成処理を含む)して3次元の画像をCPU41に出力する。
【0045】
通信デバイス51は、ネットワークを介してデータの送受信を行うためのものであり、画像データ及び音声データをネットワークに送信し、また、ネットワークを介して送信されてくる画像データ及び音声データを受信する。なお、通信デバイス51は、画像データ及び音声データをコード化して送信することにしてもよく、また、コード化された画像データ及び音声データを受信した場合には、デコードすることにしてもよい。USBポート55には、USBデバイス(例えば、USBマウス等)が接続可能となっている。
【0046】
ACアダプタ54は、商用電源に接続して、AC電圧をDC電圧に変換してDC−DCコンバータ53に出力する。DC−DCコンバータ53は、ACアダプタ54から供給されるDC電圧を所定の電圧に変換して各部に電力を供給し、また、バッテリ52の充電を行う。バッテリ52は、DC−DCコンバータ53により充電され、充電した電圧を各部に供給する。バッテリ53は、ACアダプタ54が商用電源に接続されていない場合に使用される。
【0047】
図4及び
図5を参照して、マウスエミュレート用アプリケーションプログラム47によるマウスエミュレート処理を説明する。マウスエミュレート処理では、3Dカメラデバイス50により、登録したHID物体30及びHID物体30を操作している操作者の手31が撮影される。マウスエミュレート用アプリケーションプログラム47は、3Dカメラデバイス50からの画像を画像処理して解析することにより、HID物体30の移動及び手31の指31a,31bによる(仮想の)左クリックまたは(仮想の)右クリック操作を検出する。マウスエミュレート用アプリケーションプログラム47は、これらの検出結果に応じたカーソル28の移動や左右クリック処理を行う。
【0048】
図4は、マウスエミュレート用アプリケーションプログラム47の機能構成を示す図である。マウスエミュレート用アプリケーションプログラム47は、HID物体登録部61と、HID有効・無効判定部62と、HIDエミュレーション部63とを備えている。
【0049】
HID物体登録部61は、3Dカメラデバイス50でHID物体30を撮影して登録する。具体的には、HID物体登録部61は、ユーザがHID物体30を登録するためのガイダンスをLCD25に表示し、ユーザはガイダンスに従って、3Dカメラ26の撮影エリア内に所望のHID物体30を置く。3Dカメラ26がHID物体30を撮影し、HID物体登録部61は、撮影されたHID物体30の3次元の画像をメモリに登録する。この場合、HID物体30を回転させて、複数方向から撮影するのが望ましい。
【0050】
例えば、
図2−Aに示す例では、ユーザは、HID物体登録部61がLCD25に表示するガイダンス(不図示)に従って、3Dカメラデバイス50の3Dカメラ26の撮影エリア内にオレンジ30を置くと、3Dカメラデバイス50がオレンジ30を撮影し、HID物体登録部61は、撮影されたオレンジの3次元の画像をメモリに登録する。これにより、例えば、ユーザは、マウスを忘れた場合などに身近な物を登録することで、マウスに類似した操作で擬似的なマウス入力を行うことができる。
【0051】
HID有効・無効判定部62は、平面検出部71と、HID物体検出部72と、手接触検出部73と、を備えている。平面検出部71は、3Dカメラデバイス50が撮影した画像を解析して、動作平面32が有るか否かを検出する。平面の検出方法は公知の方法を使用することができるのでその詳細な説明は省略する。ここで、動作平面32は、HID物体30の動作を確保するための平面であり、所定の大きさ以上の平面であればよく、その色は限定されない。
【0052】
HID物体検出部72は、3Dカメラデバイス50からの画像を解析して、動作平面32上にHID物体登録部61で登録されたHID物体30が有るか否かを検出する。手接触検出部73は、HID物体検出部72がHID物体30を検出した場合に、3Dカメラデバイス50からの画像を解析して、HID物体30に手31が接触しているか否かを検出し、HID物体30に手31が接触している場合には、その旨をHIDエミュレーション部63に通知する。これにより、HIDエミュレーション部63によるHID物体30のTrackingがActiveとなる(マウス機能がActiveとなる)。なお、手の検出方法は公知であるのでその詳細な説明は省略する。
【0053】
HIDエミュレート部63は、手接触検出部73からHID物体30に手31が接触している旨の通知があった場合には、HID物体30のTrackingを開始する。HIDエミュレート部63は、HID物体座標追跡部81と、指操作追跡部82と、操作指示部83とを備えている。
【0054】
HID物体座標追跡部81は、3Dカメラデバイス50からの画像を解析して、HID物体30の座標位置を検出することにより、HID物体30の移動を検出し、その移動方向および移動量を操作指示部83に出力する。より具体的は、HID物体座標追跡部81は、HID物体30の3次元座標位置(X
3D、Y
3D、Z
3D)を検出した後、2次元座標位置(X
2D、Y
2D)に変換する。3次元−2次元座標変換は公知の方法を使用することができるので、その詳細な説明は省略する。3次元座標位置(X
3D、Y
3D、Z
3D)は、HID物体30の重心位置や中心位置とすることができる。座標追跡部81は、HID物体30の2次元座標における移動方向及び移動量を算出して、操作指示部83に出力する。
【0055】
指操作追跡部82は、第1の指31aにマウスの右ボタンの機能を、第2の指31bにマウスの左ボタンの機能をそれぞれ割り当て、3Dカメラデバイス50からの画像を解析して、第1の指31a又は第2の指31bの座標を検出することにより、第1の指31a又は第2の指31bのHID物体30に対する押下動作を監視する(
図2−B参照)。指操作追跡部82は、例えば、第1の指31a又は第2の指31bがHID物体30から一旦離れた後、HID物体30を押す(接触する)動作を検出した場合に、右ボタン又は左ボタンがクリックされたと判定することができる。指操作追跡部82は、右ボタン又は左ボタンがクリックされたか否かを判定して、その判定結果を操作指示部83に出力する。マウスの右ボタン及び左ボタンの機能を割り当てる指は、第1の指31a、第2の指31bに限られるものではなく、他の指を割り当てることにしてもよい。
【0056】
操作指示部83は、HID物体座標追跡部81から入力されるHID物体30の移動方向及び移動量に応じてカーソル28を移動させる。また、操作指示部83は、指操作追跡部82から右ボタン又は左ボタンのクリックが行われた旨の通知があった場合には、右クリック操作または左クリック操作を実行する。
【0057】
図5は、
図4のマウスエミュレート用アプリケーションプログラム47の処理の概略を説明するためのフローチャートである。マウスエミュレート用アプリケーションプログラム47が起動すると、マウスエミュレート用アプリケーションプログラム47は、3Dカメラデバイス50を起動させ、常時、3次元の画像を撮影して出力させる。
【0058】
まず、HID物体登録部61は、3Dカメラデバイス50でHID物体30を撮影してその三次元の画像を登録する(ステップS1)。
【0059】
平面検出部71は、3Dカメラデバイス50が撮影した画像を解析して、動作平面32が有るか否かを判定する(ステップS2)。平面検出部71が動作平面32が有ると判定した場合には(ステップS2の「Yes」)、HID物体検出部72は、3Dカメラデバイス50で撮影した画像を解析して、動作平面32上にHID物体登録部61で登録されたHID物体30が有るか否かを判定する(ステップS3)。HID物体検出部72で動作平面32上にHID物体登録部61で登録されたHID物体30が有ると判定された場合には(ステップS3の「Yes」)、手接触検出部73は、3Dカメラデバイス50からの画像を解析して、HID物体30に手31が接触しているか否かを判定する(ステップS4)。
【0060】
手接触検出部73は、HID物体30に手31が接触していると判定した場合には(ステップS4の「Yes」)、その旨をHIDエミュレーション部63に通知する。これにより、HIDエミュレーション部63によるHID物体30のTrackingがActiveとなる(マウス機能がActiveとなる)。このように、HID物体30に手31が接触していることが検出された場合にマウス機能がActiveとなるので、手だけの動作によるご操作を防止することができる。
【0061】
ステップS5では、HID物体座標追跡部81は、3Dカメラデバイス50からの画像を解析して、HID物体30が移動したか否かを判定する(ステップS5)。HID物体座標追跡部81は、HID物体30が移動したと判定した場合には(ステップS5の「Yes」)、HID物体30の移動方向及び移動量を操作指示部83に出力する。操作指示部83は、HID物体30の移動方向及び移動量に応じてカーソルを移動させる(ステップS6)。HID物体30が移動したと判定されなかった場合には(ステップS5の「No」)、ステップS7に移行する。
【0062】
ステップS7では、指操作追跡部82は、HID物体30に対して第1の指31a又は第2の指31bの押下が行われたか否かを判定する。HID物体30に対して第1の指31a又は第2の指31bの押下が行われた場合には(ステップS7の「Yes」)、右クリック又は左クリックが行われた旨を操作指示部83に出力し、操作指示部83は、右クリック操作または左クリック操作を実行する(ステップS8)。
【0063】
HID物体30に対して第1の指31a又は第2の指31bの押下が行われなかった場合には(ステップS7の「No」)、ステップS9に移行する。ステップS9では、手接触検出部73は、HID物体30から手31が離れたか(手31がHID物体30に置かれていない状態)否かを判定する。HID物体30から手31が離れなかった場合には(ステップS9の「No」)、ステップS5に戻る。
【0064】
他方、HID物体30から手31が離れた場合には(ステップS9の「Yes」)、ステップS2に戻り、HIDエミュレーション部63によるHID物体30のTrackingがIdleとなり(マウス機能がIdleとなる)、再度、動作平面30、登録したHID物体30、登録したHID物体30に対する手の接触の検出が行われ(ステップS2〜S4)、これらが検出された場合に、HIDエミュレート部63によるHID物体30のTrackingがActiveとなる(マウス機能がActiveとなる)。このように、ユーザがHID物体30から手31を離すことにより、マウス機能の使用を中断することができ、ユーザがマウス機能を使い時だけ、HID物体30に手を置けばよく、ハンドジェスチャのみの手法に比して、ユーザの使い勝手が向上する。
【0065】
以上説明したように、上記実施例によれば、被写体を撮像して3次元の画像を取得する3Dカメラデバイス50と、HID物体を3Dカメラデバイス50で撮影して登録するHID物体登録部61と、3Dカメラデバイス50で撮影した画像を解析して、HID物体30を動作させるための動作平面32を検出する平面検出部71と、3Dカメラデバイス50で撮影した画像を解析して、登録されたHID物体30を検出するHID物体検出部72と、HID物体検出部72で登録したHID物体30を検出した場合に、3Dカメラデバイス50で撮影した画像を解析して、HID物体30に手31が接触しているか否かを検出する手接触検出部73と、手接触検出部73でHID物体30に手31が接触しているのを検出した場合に、HID物体30の移動及びHID物体30に対する指の押下動作を検出するHID物体座標追跡部81及び指操作追跡部82と、HID物体30の移動及びHID物体30に対する指の押下動作に応じて、カーソル28の移動及び左右クリック操作を行って、マウスの入力操作をエミュレートする操作指示部83とを備えているので、マウスの入力操作を、手を使用してエミュレートする場合に、ユーザの使い勝手がよく、かつ、誤操作を低減することが可能となる。
【0066】
付言すると、本実施例によれば、手でHID物体30を操作して、マウス操作をエミュレートしているため、手をHID物体30で支えていることができ、手の疲労が少なく、また、マウスを操作するのと同じ感覚での入力操作を行うことが可能となる。
【0067】
また、手でHID物体30を触っているときのみマウス機能が有効となるので、誤操作や誤検出を低減することが可能となる。
【0068】
なお、上記実施例では、HID物体30に対する第1及び第2の指31a、31bの押下で、左ボタン操作及び右ボタン操作を行う例を示したが、第3の指を使用して、スクロールボタンの操作を行う構成としてもよい。
【0069】
また、HID物体30に対する第1及び第2の指31a、31bの押下で左ボタン操作及び右ボタン操作を行う例を示したが、本発明はこれに限られるものではない。
【0070】
例えば、HID物体30が特徴的な形状の部分を有している場合には、マウスエミュレート用アプリケーションプログラム47は、当該特徴的な形状の部分に指が触れるのを検出した場合に、所定の入力操作を行う構成としてもよい。より具体的には、例えば、HID物体30をスマートフォンとした場合に、スマートフォンのホームボタンに指が触れるのを検出した場合に左クリック操作を行い、スマートフォンのマイクに指が触れるのを検出した場合に、右クリック操作を行うことにしてもよい。
【0071】
また、HID物体30が所定の色の領域を有している場合には、マウスエミュレート用アプリケーションプログラム47は、当該所定の色の領域に指が触れるのを検出した場合に、所定の操作を行う構成としてもよい。より具体的には、例えば、HID物体30が赤の領域と青の領域を有する場合には、HID物体30の赤の領域に指が触れるのを検出した場合に左クリック操作を行い、HID物体30の青の領域に指が触れるのを検出した場合に、右クリック操作を行うことにしてもよい。
【0072】
なお、本実施例では、マウスエミュレート処理をマウスエミュレート用アプリケーションプログラム47が実行することとしたが、ドライバプログラム、ユーティリティプログラム、又はOSが実行することにしてもよい。さらに、3Dカメラデバイス50がマウスエミュレート処理の一部又は全部を実行することにしてもよい。
【0073】
また、本実施例では、情報処理装置としてノートPCを例示したが、本発明はこれに限られるものではなく、デスクトップ型PC、タブレットPC、PDA、スマートフォン、携帯電話等に適用可能である。