(57)【特許請求の範囲】
【請求項１】
あらかじめ作成された仮想物体の画像と１台の撮像装置から入力される動画像とを合成し，表示装置に表示する表示制御手段，
前記動画像を構成する各フレーム画像内に現われる指領域を抽出する指領域抽出手段，
前記指領域抽出手段が抽出した指領域における指の太さを算出する手段，
時間的に隣接するフレーム間の，抽出した指領域のＸ方向，Ｙ方向および算出した指の太さによって表わされる３次元パラメータの差分量に基づいて３次元の速度情報および加速度情報を求める差分算出手段，ならびに
前記差分算出手段が求めた前記指領域の速度情報および加速度情報に基づいて，前記指領域が，動いている状態から，急減速して表示されている仮想物体の画像の所定領域内で停止したときにクリック動作と判断するクリック動作検出手段，
を備えるクリック動作検出装置。
【請求項２】
前記表示装置に表示されている仮想物体の画像の所定領域内で，前記抽出された指領域が，所定時間以上，動きを停止していることを検出してクリック可能状態と判断するクリック可能状態検出手段をさらに備える，請求項１に記載のクリック動作検出装置。
【請求項３】
前記クリック可能状態検出手段がクリック可能状態と判断したときに，前記表示制御手段は前記仮想物体の画像の所定領域に関連する部分の表示態様を変化させる，請求項２に記載のクリック動作検出装置。
【請求項４】
前記クリック動作検出手段がクリック動作を検出したときにその旨を報知する報知手段をさらに備える，請求項２または３に記載のクリック動作検出装置。
【請求項５】
あらかじめ作成された仮想物体の画像と１台の撮像装置から入力される動画像とを合成して，表示装置に表示し，
前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，
抽出した手領域における指の太さを算出し，
時間的に隣接するフレーム間の，抽出した手領域の特定部分のＸ方向，Ｙ方向および算出した指の太さによって表わされる３次元パラメータの差分量に基づいて３次元の速度情報および加速度情報を求め，
前記表示装置に表示されている仮想物体の画像の所定領域内で，前記抽出された手領域の前記特定部分が，所定時間以上，動きを停止していることを検出してクリック可能状態と判断し，
前記速度情報および加速度情報に基づいて，前記手領域の前記特定部分が，前記クリック可能状態から運動状態に入り，その後急減速して表示されている仮想物体の画像の所定領域内で停止したときにクリック動作と判断する，
クリック動作検出方法。
【請求項６】
あらかじめ作成された仮想物体の画像と１台の撮像装置から入力される動画像とを合成して，表示装置に表示させ，
前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，
抽出した手領域における指の太さを算出し，
時間的に隣接するフレーム間の，抽出した手領域の特定部分のＸ方向，Ｙ方向および算出した指の太さによって表わされる３次元パラメータの差分量に基づいて３次元の速度情報および加速度情報を求め，
前記表示装置に表示されている仮想物体の画像の所定領域内で，前記抽出された手領域の前記特定部分が，所定時間以上，動きを停止していることを検出してクリック可能状態と判断し，そして
前記速度情報および加速度情報に基づいて，前記手領域の前記特定部分が，前記クリック可能状態から運動状態に入り，その後急減速して表示されている仮想物体の画像の所定領域内で停止したときにクリック動作と判断するようにコンピュータを制御する，
クリック動作検出のためのプログラム。
【請求項７】
請求項６に記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は，仮想物体（ｖｉｒｔｕａｌ  ｏｂｊｅｃｔｓ）を手（指，指先を含む）でクリックする動作（操作）（ｃｌｉｃｋ  ｇｅｓｔｕｒｅ，ｃｌｉｃｋ  ｏｐｅｒａｔｉｏｎ）を検出する装置，方法およびプログラムに関し，たとえばカメラ付携帯端末装置，ヘッドマウントディスプレイ（特に透過型），大型，中型，小型を問わず表示装置を有する各種機器またはカメラを備えた各種機器において利用される。
【背景技術】
【０００２】
ＡＲ（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：拡張現実）においては，仮想物体と実際の映像を合成して表示し，あたかも仮想物体が現実に存在するかのような印象を利用者に与えることが要求される。単純に仮想物体を表示するだけでは不十分であり，仮想物体に対し利用者が何らかの操作をすることが求められる。
クリックはコンピュータなどを操作するための基本的な動作である。透過型ヘッドマウントディスプレイなどの実体を伴わない表示画面を用いる場合に，その表示画面に表示したボタンなどの仮想物体をクリック操作することは，空中でクリック動作を行うことになり，このクリック動作を検出することは難しかった。
１台のカメラからの映像に基づいて空中でのクリック動作を検出しようとすると，指先の正確な三次元位置を推定することが困難で，三次元空間における動きである仮想物体との接触を判定することができない。
従来技術として，指に付されたマーカから指の三次元位置を推定し，仮想物体との三次元的な衝突を判定するものがある。たとえば特許文献１では，肌色検出やエッジ抽出などを行い，指を検出することができるとされている。しかしながら，二次元画像上の手指の領域から推定できる奥行位置には精度の限界があり，仮想物体との衝突を正しく判定することは難しいので，指にマーカなどを付して検出することが開示されている。この場合にはマーカの画像上の大きさによってある程度正しく奥行き位置を推定できると考えられるが，指先にマーカをつけることが装置利用上の制約となることがある。
特許文献２では，複数台のカメラから出力される画像に基づいて得られる指先位置から指の三次元位置を獲得し，仮想物体と三次元位置との衝突を判定している。この場合にも，大きさを持った手指の領域から三角測量の原理で指先位置を推定することになり，高い精度で奥行き位置を推定することは望めない。複数台のカメラを用いることが装置利用上の制約となることもある。
また非特許文献１では，画像上で検出しやすいジェスチャである「親指と人差し指で挟む」（ｐｉｎｃｈ，ピンチ）ことに着目して，指先の三次元位置を推定することなく，仮想物体指定を実現している。このジェスチャは理解しやすいものの，一般に行われている現実物体を指定する方法とは異なるために，仮想物体とのやり取りをしている印象が強くなり，自然なインタフェースを実現する上で用途によっては不十分であることがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−４１４３１号公報
【特許文献２】特開平６−３１４３３２号公報
【非特許文献】
【０００４】
【非特許文献１】Ａ．Ｗｉｌｓｏｎ，“Ｒｏｂｕｓｔ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ−Ｂａｓｅｄ  Ｄｅｔｅｃｔｉｏｎ  ｏｆ  Ｐｉｎｃｈｉｎｇ  ｆｏｒ  Ｏｎｅ  ａｎｄ  Ｔｗｏ−Ｈａｎｄｅｄ  Ｇｅｓｔｕｒｅ  Ｉｎｐｕｔ，”ＵＩＳＴ’０６，Ｏｃｔｏｂｅｒ  １５−１８，２００６．
【０００５】
発明が解決しようとする課題
上述したように，指先にマーカを付したり，複数のカメラを用いたりする場合には，奥行位置を把握する精度が十分でなく，クリック動作の検出精度が低いことや，余分な装置を用いることで制約が生じたり，製造コストが高くなるというような問題がある。
また，現実物体の操作方法と異なるジェスチャを利用する場合には，不自然な操作方法となり違和感を与えるというような問題がある。
発明の開示
この発明は，最も一般的で現実的なクリック動作に着目して，これを検出しようとするものである。
この発明はクリック操作する手，指等にマーカ等を付すことなく，素の状態で行うクリック動作を検出しようとするものである。
この発明はまた，一台のカメラからの動画像に基づいてクリック動作を検出することができるようにするものである。
この発明によるクリック動作検出装置は，あらかじめ作成された仮想物体の画像と撮像装置から入力される動画像とを合成し，表示装置に表示する表示制御手段，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出する手領域抽出手段，時間的に隣接する（または，近い。以下同じ。）フレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求める差分算出手段，および前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するクリック動作検出手段を備えるものである。
この発明によるクリック動作検出方法は，あらかじめ作成された仮想物体の画像と撮像装置から入力される動画像とを合成して表示装置に表示し，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するものである。
この発明によるクリック動作検出のためのプログラムは，あらかじめ作成された仮想物体の画像と撮像装置から入力される動画像とを合成し，表示装置に表示させ，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するようにコンピュータを制御するものである。
手領域は手領域の一部，たとえば特定の指や指先部分を含む。
この発明によると，コンピュータの操作において最も一般的なクリック動作と類似の動作を検出することができる。しかも，手，指，指先等にマーカ等を付ける必要はない。そして，カメラは１台ですむ。
好ましい実施態様では，前記表示装置に表示されている仮想物体の画像の所定領域内で，前記抽出された手領域の前記特定部分が，所定時間以上，動きを停止していることを検出してクリック可能状態と判断する（クリック可能状態検出手段）。
クリック可能状態と判断したときにその旨を報知するとよい（クリック可能状態報知手段）。この報知は，表示画像上で行ってもよいし，音等を発生することにより行ってもよい。これにより，ユーザは目的とする仮想物体を選択できたことを認識することができる。
特に望ましい実施態様では，前記クリック可能状態検出手段がクリック可能状態と判断したときに，前記表示制御手段は前記仮想物体の画像の所定領域に関連する部分の表示態様（色，大きさ，形）を変化させる。これにより，ユーザはクリックしようとする仮想物体を表示画面上で認識することができ，誤ったクリック対象を回避することができる。
さらに，前記クリック動作検出手段がクリック動作を検出したときにその旨を報知すると一層好ましい（クリック動作報知手段）。ユーザは自分がクリック動作を正しく行なえたことを認識することができる。
前記差分算出手段が算出する差分量の例は，抽出した手領域の特定部分の速度情報および加速度情報である。
クリック動作検出の態様にはさまざまある。その一は，前記手領域の前記特定部分の動きが，動いている状態から，急減速して停止したことを検出してクリック動作と判断するものである。その二は，前記手領域の前記特定部分の動きに停止状態，運動状態，急減速，そして停止状態の遷移があったときにクリック動作と判断するものである。
上記において，急減速から，表示されている仮想物体の画像の所定領域内で停止したときにクリック動作と判断するようにすると，特定の仮想物体が確かにクリックされたことを確認できる。
あらかじめ作成された仮想物体の画像を必ずしも表示しなくてもよい。仮想物体の画像の表示を要しないこの発明のクリック動作検出装置は，撮像装置から入力される動画像を表示装置に表示する表示制御手段，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出する手領域抽出手段，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求める差分算出手段，および前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するクリック動作検出手段を備えているものである。
この発明によるクリック動作検出方法は，撮像装置から入力される動画像を表示装置に表示し，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するものである。
この発明によるクリック動作検出のためのプログラムは，撮像装置から入力される動画像を表示装置に表示させ，前記動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するようにコンピュータを制御するものである。
上記は特に仮想物体が一つでユーザが仮想物体を選択する必要がない場合に有効である。
クリック可能状態の検出も可能である。すなわち，前記表示装置の表示画面内の所定領域内で，前記抽出された手領域の前記特定部分が所定時間以上，動きを停止していることを検出してクリック可能状態と判断する。
表示装置を必要とせず，撮像装置からの動画像信号に基づいてクリック動作を検出するようにすることもできる。これは，クリック動作を何らかの合図とするような場合に有効である。
この発明によるクリック動作検出装置は，撮像装置から入力される動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出する手領域抽出手段，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求める差分算出手段，および前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するクリック動作検出手段を備えているものである。
この発明によるクリック動作検出方法は，撮像装置から入力される動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するものである。
この発明によるクリック動作検出のためのプログラムは，撮像装置から入力される動画像を構成する各フレーム画像内に現われる手領域の少なくとも一部を抽出し，時間的に隣接するフレーム（フレーム画像）間の（２フレーム間，３フレーム間などの），抽出した手領域の特定部分に関する差分量を求め，そして前記差分量によって表わされる状態の時間遷移を調べることによって，前記手領域の前記特定部分の動きによって表わされるクリック動作を検出するようにコンピュータを制御するものである。
この発明は，上記のプログラムを格納したコンピュータ読取可能な記録（記憶）媒体も提供している。
【図面の簡単な説明】
【０００６】
第１図は，クリック動作検出装置をヘッドマウントディスプレイに応用した例を示す斜視図である。
第２図は，実施例によるクリック動作検出装置の電気的構成を示すブロック図である。
第３図は，仮想物体を表示する表示画面の一例を示す。
第４図は，カメラで撮像した画面の一例を示す。
第５図は，仮想物体の表示画面とカメラの撮像画面とを合成して得られる画面の例を示す。
第６図は，クリック動作可能状態の通知例を示す。
第７図は，指先の検出処理を説明するためのものである。
第８図は，指先の運動，静止の遷移図である。
第９Ａ図および第９Ｂ図は，クリック動作時における指先の動きの遷移を示す。
第１０図は，クリック動作検出の処理手順を示すフローチャートである。
第１１図は，携帯端末装置への応用例を示す斜視図である。
第１２図は，大型ディスプレイへの応用例を示す斜視図である。
【発明を実施するための形態】
【０００７】
クリック動作検出装置の概要の理解を促進するためにその使用例について第１図を参照して説明する。
ユーザがヘッドマウントディスプレイ（以下，ＨＭＤという）２０を頭部に装着している。ＨＭＤは表示装置を有しており，ユーザは表示装置に映された画像を見る。画像の中に現われている仮想物体（ｖｉｒｔｕａｌ  ｏｂｊｅｃｔ）がユーザの目の前の適当な距離はなれた位置（空中）に存在するかのように見える。第１図に示す例では仮想物体は複数個の配列されたボタン３１であり，それらのボタン３１が表示装置の表示画面３０Ａ内に表示されている。
コンピュータ上での従来のクリック動作は，表示画面上の特定の位置（対象）または領域（対象）内にカーソルを位置決めし，マウス上のボタンを押すことにより，該当する対象を選択する，または特定の命令の実行を指令するものである。これと類似の動作（操作）として，この実施例では表示画面上の仮想物体（表示された位置，領域，対象）を選択して，あたかもボタンを押すかのように指先で押す動作を行うことをクリック動作という（後述するところから明らかになるように，クリック動作の検出のためには，特定の仮想物体を選択することは必ずしも必須の要件ではない）。
ＨＭＤ２０を装着したユーザは，その表示画面に表示され，あたかも前方の空中に存在するかのように見える複数のボタン３１のうちの１つを選択して，自分の指先でそのボタンを押す（クリックする）動作を行う。ＨＭＤ２０にはカメラ１１が設けられ，その前方，すなわち仮想物体３１が存在する付近を撮像し，撮像により得られる動画像信号を出力する。ユーザの指先（指，手）はカメラ１１で撮影され，カメラ１１から出力される動画像信号についての画像処理により，ユーザが特定のボタンを選択したこと，およびそのボタンをクリックしたこと（押したこと）が検出される。
第２図はこの実施例のクリック動作検出装置の電気的構成を示すものである。
処理装置１０はたとえばコンピュータにより実現され，機能的には，後に詳述する画像メモリ１３，表示制御部１４，手領域抽出部１５，差分算出部１６，クリック可能状態検出部１７，クリック動作検出部１８を備えている。カメラ１１は，たとえば上述したＨＭＤ２０に設けられたものであり，クリック動作を行うユーザの手または指付近を撮影するようにその視野が位置決めされる。表示装置１２は，一例として，上述したＨＭＤ２０に装備されている表示装置（ディスプレイ）である。
クリック動作検出装置はさらに入力装置２１，出力装置２２，記憶装置１９等を必要に応じて備える。入力装置２１はクリック動作検出プログラム，パラメータ，指令等を入力するもので，キーボード，表示画面とマウス，通信装置，媒体の読取装置等により実現される。出力装置２２は，クリック動作により入力されたデータ等を出力するもので，表示装置（表示装置１２と兼用できる），通信装置，媒体の書込装置等により実現される。記憶装置１９は，クリック動作検出プログラム，パラメータ，入力データ（クリック動作により入力されたデータを含む）等を記憶する。
処理装置１０の画像メモリ１３は，カメラ１１により撮像され，カメラ１１から出力される動画像（信号，データ）の少なくとも複数フレーム分の静止画像（信号，データ）を記憶する。これらの画像データは手領域抽出部１５，差分算出部１６において利用される。
表示制御部１４は，あらかじめ作成された仮想物体（ボタン３１等）を表示するための画像データを保存しており，それに基づいて表示装置１２の表示画面上に仮想物体を表示する。また，画像メモリ１３に記憶されている撮像画像を仮想物体の画像上に重ね合わせて（合成して），表示装置１２の表示画面上に表示する。
たとえば第３図は表示装置１２の表示画面に表示される仮想物体３１の画像３０Ａを示している。画面の左上角がＸＹ座標の原点である。仮想物体３１の位置，領域はこのＸＹ座標上にあらかじめ定められている。第４図はカメラ１１が撮像した動画像のうちの１フレーム分の画像３０Ｂを示している。ユーザの手領域４０や人差し指４１が表わされている。この画像３０ＢのＸＹ座標の原点も左上の角に定められている。
第５図は第３図に示す仮想物体３１を含む表示装置１２の表示画像３０Ａとカメラ１１が撮像した１フレーム分の画像３０Ｂとを，ＸＹ座標原点を一致させて重ね合わせて（合成して）得られる画像３０Ｂを示している。最終的にはこの合成画像３０が表示制御部１４の制御の下に表示装置１２の表示画面に表示されることになる。合成画像の作成において，上の説明では，両画像３０Ａ，３０ＢのＸＹ座標原点を一致させているが，必ずしも原点でなくてもよい。画像３０Ａと画像３０Ｂの特定の点を一致させればよい。また，両画像３０Ａ，３０Ｂの一方または両方を，拡大したり，縮小したりした上で合成してもよい。
手領域抽出部１５は，画像メモリ１３に記憶されている撮影画像の各フレーム（画像）上で手領域を算出し，手領域を特定する。手領域の特定は，あらかじめＨＳＶ（Ｈｕｅ，Ｓａｔｕｒａｔｉｏｎ  Ｖａｌｕｅ）表色系などで定義される色の範囲に基づいて，肌色の画素を抜き出すことなどによって行うことができる。例えば，ＨＳＶ色空間上で代表的な肌色の位置を与え，その位置から色空間内で一定距離内にある領域の色を肌色として定義する。
手以外にも肌色を持つ領域が画像上に含まれていることが考えられるので，領域の大きさによって手領域を絞り込む。肌色であると判定された領域をラベリングによって確定し，それらのうちで最大の面積を持つ領域を手領域であると推定する。
最初のフレームで抽出した肌色領域の画素のＨＳＶ色空間における分布を学習データとして，次のフレーム以降の肌色領域の抽出に反映させることも可能である。ＨＳＶ色空間における抽出した肌色領域の画素の平均値と分散共分散行列を求める。求めた平均値と分散共分散行列を用いて判定対象となる画素の色とのマハラノビス距離を算出し，それをしきい値と比較することで次以降のフレームの肌色領域を抽出する。
第７図は肌色領域と判定された領域について膨張縮退処理（クロージング，またはオープニング）を行って得られた手領域４０を示している。この手領域４０にはクリック動作するときに用いられる指（たとえば人差し指）４１が含まれており，その先端は最小のＹ座標を持つ画素であると考えられる。指先領域（指先の内側（爪の反対側）のふくらんだ部分）を確定するために，上記の先端画素を中心とする半径Ｒ（あらかじめ設定）の円の範囲内において，手（指）領域の境界の画素に距離値０を与え，手（指）領域の内側に向って境界から離れる画素ほど大きな距離値を与える。距離値が最大を示す画素（符号４２で示すＸの点）を指先とし，距離値が所定のしきい値以上の範囲を指先領域とする。
上記のようにして決定した指先の画素のｘ，ｙ座標が指先の画面上の位置である。指先の奥行方向（ｚ方向）の位置は，一例として，指の太さをパラメータとして定めることができる。たとえば，指先（または指の先端）の画素を中心とする所定の半径の円（半径Ｒの円でもよい）を仮想し，この円と手（指）領域の境界との交点（２つある）間の距離を指の太さｗを示すものとする。指がカメラ１１から離れれば指の太さは細くなるので，ｚ方向（奥行方向）の位置のパラメータとして使うことができる。以上のようにして，指先の３次元位置（のパラメータ）が定まる。
差分算出部１６は画像メモリ１３に記憶されている複数フレーム分の静止画像を用いて，時間的に隣接するフレーム間での指先の位置変化（速度），速度の変化（加速度）を求めるものである。時間的に隣接するフレーム間（２つのフレーム画像間）における指先位置（ｘ，ｙ，ｗ）の変化分をｄｘ，ｄｙ，ｄｗとすると，ａ（ｄｘ）２＋ｂ（ｄｙ）２＋ｃ（ｄｗ）２（ａ，ｂ，ｃは適当な定数）の平方根を求めて，これを位置変化すなわち速度とする。さらに速度の変化（時間的に隣接する３フレームの画像を用いる）を求めて加速度とする。
ユーザが指先で仮想物体３１をクリックするときには，まず指先をクリックしようとする仮想物体３１に重ねることが多い（必ずしも重ねないときもある）。クリック可能状態検出部１７は，指先が仮想物体３１に重なったことを検出するものである。画像３０Ａ上の各仮想物体（の像）３１は画像３０Ａ上における範囲（領域）を持っている。上述のようにして求められたユーザの指先の位置のＸ，Ｙ座標（ｘ，ｙ）が特定の仮想物体３１の領域の範囲内にあり，この状態が所定の時間（たとえば数フレームの時間，一例として４フレームの時間）継続していることを検知して，クリック可能状態検出とする。クリック可能状態が検出されると，たとえば，第６図に示すように，指先が重なった特定の仮想物体３１（Ｃの文字が表わされたボタン）を拡大して表示するというように，仮想物体３１の表示態様を変化させる。これにより，ユーザは目的とする仮想物体３１上に自分の指先があり，クリック動作が可能となったことを視覚的に認識することができる。仮想物体と指先の重なりは，２次元平面上のみならず，３次元的に，たとえば３次元空間内のある方向に沿う重なりとして検出することもできる。なお，クリック可能状態の検出部１７は無くてもよい。
指先で仮想物体をクリックする動作を観察した結果，指先の動きには第８図に示す遷移があることが分った。
停止状態は，所定時間（数フレームの時間，少なくとも１フレーム時間間隔）以上にわたって指先の位置が変化しない（変化範囲が微小な値以下）静止状態を意味する。低速状態と高速状態は指先が動いている状態を示し，その移動速度が相対的に小さい（速度が０または０に近い値以上で所定の第１のしきい値以下）状態を低速状態，相対的に大きい状態（速度が上記の第１のしきい値を超えている）（加速度が所定のしきい値以上という条件を加えてもよい）を高速状態という。急減速とは，指先の動きが急速に速度を落とす状態，すなわち急激に減速する状態である。第８図の矢印は遷移の方向を示している。停止状態と低速状態との間，停止状態と高速状態との間，低速状態と高速状態との間の遷移はそれぞれ双方向である。急減速については，高速状態から急減速に進み，最終的に停止する。この急減速を含む指先の動きがクリック動作に特徴的なものである。急減速は加速度が負であり，かつ所定のしきい値以下の状態をいう。また，急減速の後の停止は，速度が０またはその近傍（小さなしきい値以下）であればよい。すなわち，少なくとも１フレーム時間間隔の間，指先が実質的に動いていなければよい。
仮想物体をクリックする動作を分析的にみると，第９Ａ図に示すように，停止状態から低速状態に移り，さらに高速状態となって急減速して停止するという動作と，第９Ｂ図に示すように，停止状態から高速状態になり，急減速して停止状態になるという動作があることが分る。第９Ｂ図の高速状態は必ずしも高速でなくてもよい。最初の停止状態は動く前の静止状態と考えればよい。
クリック動作検出部１８は，これらの第９Ａ図または第９Ｂ図に示す動作の状態遷移が生じたことを検出してクリック動作があったことを検出する。クリック動作において特徴的なことは，動いている状態から急減速して停止することである。最終的な停止位置では，クリックされる仮想物体の領域内に指先位置が存在し，かつ所定時間以上，その状態を保っていることが好ましいが，１フレーム時間間隔以上であればよい。動きの開始前は停止しているという意味では，動いている状態の前に，最初の停止状態が存在するが，この最初の停止状態では指先位置が必ずしも仮想物体の領域内に存在しなくてもよい。これとは対照的に，最初の停止状態の検出とクリック可能状態検出（指先位置が仮想物体の領域内に存在する）とを兼ねてもよい。
クリック動作検出部１８はクリック動作を検出すると，クリックされた仮想物体の表示の態様を変える。たとえば，第６図に示す拡大された仮想物体の色を変化させるなどである。特定の音を発生させてもよい。これにより，ユーザはクリック動作を完遂したことを認識することができる。クリックされた仮想物体によって表わされるデータ（第６図の例ではＣというキャラクタ）または命令がクリック動作によって入力されたことを表示画面上の入力データ欄（領域），命令実行領域に表示するようにするとよい。
第１０図は処理装置（コンピュータ）１０がそのクリック動作検出プログラムにしたがって行う処理の流れを示している。
カメラ１１が撮像し画像メモリ１３に記憶されている最初のフレームの静止画を取出して（Ｓ１１），その画像データに基づいて手領域を抽出し，指先位置を算出する（手領域抽出部１５）（Ｓ１２）。算出された指先位置に基づいてその差分（速度，加速度）を算出する（差分算出部１６）（Ｓ１２）。速度の算出には２フレーム分の画像データが必要であり，加速度の算出には３フレーム分の画像データが必要であるから，第２，第３フレームの静止画像データを取得したときに，速度，加速度の算出が可能となる。
得られた差分データに基づいてクリック可能状態の検出処理を行い（クリック可能状態検出部１７）（Ｓ１４），クリック可能状態であれば（Ｓ１５でＹＥＳ），仮想物体の表示態様の変化，特定の音の発生等により，クリック可能状態を通知する（Ｓ１６）。
続いて，移動状態，動作状態の時間的遷移を調べることによりクリック動作検出処理を行う（クリック動作検出部１８）（Ｓ１７）。クリック動作を検出すると（Ｓ１８），仮想物体の表示態様を変化させる，特定の音を発生させるなどによりクリック動作状態を通知する（Ｓ１９）。
画像メモリ１３に記憶された最終フレームでない限り（Ｓ２０），次のフレームを取得して（Ｓ２１），Ｓ１２からの処理を繰返す。最終フレームになれば，クリック検出処理は終了する。
第１１図はクリック動作検出を携帯端末装置に適用した使用例（応用例）を示している。携帯端末装置５０の表示画面５１が設けられている面とは反対側の面にカメラ（カメラの視野を鎖線５２で示す）が設けられている。ユーザはカメラの視野内で指先でクリック動作を行う。すなわち，ユーザの手の指をカメラの視野内に置くと，それがカメラで撮影され，表示画面５１に表示される。表示画面５１には仮想物体（アイコン，ボタンなど）が表示されており，ユーザは表示画面５１上においてそこに表示された仮想物体をそこに表示された指先でクリックする。携帯端末装置の表示画面は小さく，かつ人間の実際の指先によってタッチできる領域の大きさには制約がある。表示画面５１に表示するユーザの指先を小さくすれば，多くの小さなアイコン等（仮想物体）を表示画面に配置し，かつ所望のものをクリックすることができるようになる。
第１２図は逆に大型のディスプレイにクリック動作検出を適用した例を示している。大型の表示装置６０の上部にカメラ６２が設置され，その視野は表示装置６０の表示画面６１の前方の領域に設定されている。表示画面６１が大きすぎてユーザの手が届かないところがあるが，ユーザの手（指）がカメラ６２の視野内にありさえすれば，表示画面６１に表示された仮想物体をカメラ６２が撮影し，表示画面６１に表示された手または指（一般的には左右反転されよう）でクリックすることができる。
さらにノートパソコンやディスクトップ端末にクリック動作検出を応用することができる。一般的には，これらの端末装置の表示装置の上部にカメラが設けられ，表示画面前方を撮影することになるであろう（第１２図と同じ配置）。もちろん，第１１図の形態と同じように表示画面の反対側をカメラで撮影してもよい。キーボードやマウスのほかに，タッチパネルを備えた端末装置が一般に販売されているが，環境によってはこれらの入力装置が不十分であることがある。たとえば，調理場，風呂場，船上，手術室などでは水や油，血液などで汚れるのでキーボード，マウス，タッチパネルに触れることが難しい。上述したクリック動作検出は非接触でボタン操作を実現するので，これらの状況に対しても端末の利用を可能にする。
表示画面に表示される仮想物体は平面的（二次元的）な配置のみならず，三次元的に配置された状態の表示であってもよい。
表示装置の表示画面上に必ずしも仮想物体を表示しなくてもよい。ユーザの手（指）がカメラで撮影されていれば，その動画像信号に基づいてクリック動作を検出することができる。この場合に，クリック可能状態の検出は，表示画面に表示されたユーザの手（指）が表示画面内の所定の領域内で所定時間以上停止状態にあることを検出すればよい。さらに表示装置も必ずしも必要ではない。カメラで手（指）の動きを撮像すれば，その出力画像信号に基づいてクリック動作の検出が可能である。表示装置がない場合には，複数の仮想物体のうちの一つを選択したことがユーザに分りにくい。仮想物体が一つの場合や，仮想物体そのものを想定せずに，何らかの合図としてクリック動作を検出する応用などの場合には必ずしも表示装置は必要ないであろう。
【産業上の利用可能性】
【０００８】
仮想物体のクリック動作検出装置，方法，プログラムは，ヘッドマウントディスプレイ，携帯端末装置，通常のパーソナルコンピュータ，大型ディスプレイ等に応用することができる。
【図１】
0006524589.tif 000002
【図２】
0006524589.tif 000003
【図３】
0006524589.tif 000004
【図４】
0006524589.tif 000005
【図５】
0006524589.tif 000006
【図６】
0006524589.tif 000007
【図７】
0006524589.tif 000008
【図８】
0006524589.tif 000009
【図９Ａ】
0006524589.tif 000010
【図９Ｂ】
0006524589.tif 000011
【図１０】
0006524589.tif 000012
【図１１】
0006524589.tif 000013
【図１２】
0006524589.tif 000014