(57)【要約】【課題】  ユーザの利便性にすぐれ、３次元的なポインティングを実現できるインタフェース方法および装置を提供する。【解決手段】  ３次元指示方向情報算出部２は入力された２個以上の入力画像から、ユーザ６の指し示す方向の３次元指示方向情報を求める。空間情報登録部４はユーザ６が指示する可能性のある実空間中の物体の情報を空間情報データベース５に登録する。投票処理部３１は実空間を分割したボクセル空間の各ボクセルに１対１に対応した投票箱を含む投票箱データメモリ３３の、該３次元指示方向情報に基づきユーザ６の指し示す方向の延長線が交差するボクセルに対応する投票箱投票処理を行う。検出処理部３２は各投票箱に記録されている投票値の情報と、登録されている物体情報とから、ユーザ６の指し示す３次元指示位置のボクセルを検出する。【選択図】  図１
2005321966.tif 000002
【特許請求の範囲】
【請求項１】
複数台のカメラで撮影された画像を入力し、操作者が体の部位を用いて指し示した実空間内の位置もしくは物体を認識するインタフェース方法であって、
実空間上にある物体の情報の一部もしくは全体に渡る３次元位置情報およびその付加情報を登録する空間情報登録ステップと、
複数台のカメラで撮影した複数の入力画像から、操作者の体の部位の、該操作者の指し示した方向に関わる始点と終点の３次元座標を算出し、該操作者の指し示す実空間上での３次元指示方向情報を求める３次元指示方向検出ステップと、
得られた該３次元指示方向情報と、前記登録された物体の情報とから、該操作者が指し示す３次元指示位置情報である、該操作者が指し示す方向の延長線と、登録された物体との交点に関する情報を検出する３次元指示位置検出ステップであって、実空間を分割したボクセル空間の各ボクセルに１対１に対応した投票箱を含む投票箱データメモリの、該３次元指示方向情報に基づき該操作者の指し示す方向の延長線が交差するボクセルに対応する投票箱に投票処理を行う投票処理ステップと、前記投票箱データメモリ内の各投票箱に記録されている投票値の情報と、登録されている物体情報とから、操作者の指し示す３次元指示位置のボクセルを検出する検出ステップとを含む３次元指示位置検出ステップと
を有するインタフェース方法。
【請求項２】
前記投票処理ステップは、交差するボクセルに隣接し、ボクセル毎に異なる重み付けがされた投票箱が予め設定されているボクセルに投票処理を行うステップをさらに有し、前記検出ステップは、時間的に連続した画像に対する投票処理により積算された投票値が所定の閾値を越えたボクセルを、該操作者の指し示す３次元指示位置のボクセルとして検出する、請求項１に記載のインタフェース方法。
【請求項３】
前記重み付けは、交差するボクセルに近い方から高い点数となるようなものである、請求項２に記載のインタフェース方法。
【請求項４】
前記３次元指示位置検出ステップが、時間的に連続した画像に対する前記投票値を減算するステップをさらに含む、請求項１から３のいずれかに記載のインタフェース方法。
【請求項５】
複数台のカメラで撮影された画像を入力し、操作者が体の部位を用いて指し示した実空間内の位置もしくは物体を認識するインタフェース装置であって、
実空間上にある物体の情報の一部もしくは全体に渡る３次元位置情報およびその付加情報を登録する空間情報登録手段と、
複数台のカメラで撮影した複数の入力画像から、操作者の体の部位の、該操作者の指し示した方向に関わる始点と終点の３次元座標を算出し、該操作者の指し示す実空間上での３次元指示方向情報を求める３次元指示方向情報算出手段と、
得られた該３次元指示方向情報と、前記登録された物体の情報とから、操作者が指し示す３次元指示位置情報である、該操作者が指し示す方向の延長線と、登録された物体との交点に関する情報を検出する３次元指示位置検出手段であって、実空間を分割したボクセル空間の各ボクセルに１対１に対応した投票箱を含む投票箱データメモリと、該３次元指示方向情報に基づき該操作者の指し示す方向の延長線が通過するボクセルに対応する投票箱に投票処理を行う投票処理手段と、前記投票箱データメモリ内の各投票箱に記録されている投票値の情報と、登録されている物体情報とから、該操作者の指し示す３次元指示位置のボクセルを検出する検出処理手段とを含む３次元指示位置検出手段と
を有するインタフェース装置。
【請求項６】
請求項１から４のインタフェース方法をコンピュータに実行させるためのインタフェースプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数台のカメラで撮影された画像を入力画像とし、操作者（ユーザ）が何も装着せずに、体の部位（指や腕等）を用いて指し示した実空間内の位置もしくは物体を検出するインタフェース方法および装置に関する。
【背景技術】
【０００２】
コンピュータと人間とのインタフェースに関し、人間の３次元的な動作に基づくインタフェース方法や装置としては、これまで以下に挙げるような従来手法がある。
【０００３】
第１の従来手法として、体に動作計測可能なセンサを装着し、センサ情報から動きを検出する装置がある。例えば、塚田らのＵｂｉ−ｆｉｎｇｅｒ（非特許文献１）は、加速度センサ等を取り付けたグローブを手に装着して、ジェスチャを認識するものである。
【０００４】
第２の従来手法として、福本らの非接触ハンドリーダ（非特許文献２）がある。本手法は、体の中に求めた座標位置（「仮想投射中心」）と、検出した指先の座標位置を結び、延長した指示軸線がスクリーンと交差する点をカーソル位置（指示位置）とする方法である。仮想投射中心位置は、スクリーンの４つの角位置から指先へ延長した直線の交点から求めているので、非接触・非装着だが、指示できる位置はスクリーン上のみである。指先の位置の抽出は、２台のカメラを用い、１台を上部から撮影する位置に設置することにより、スクリーンに最も近い物体を検出することで実現している。
【０００５】
第３の従来手法として、金次らの指さしポインター（非特許文献３）がある。本手法は、多眼ステレオカメラを用いて生成した距離画像を用いて、スクリーン（入力画像を表示している表示装置の画面）に最も近い物体の検出によって指先の位置を抽出し、また色情報と距離情報を用いて眉間（目）の位置を検出し、これらを結んだ延長線がスクリーンと交差する点をカーソル位置（指示位置）とする方法である。非接触・非装着だが、指示できる位置はスクリーン上のみである。
【０００６】
第４の従来手法として、山本らの腕さしジェスチャインタフェース（非特許文献４）がある。本手法は、複数台のステレオカメラ群と統合処理するサーバコンピュータを用いて、実空間内でのユーザの腕さし方向を認識する方法である。非接触・非装着で、実空間内の位置を指し示せる。
【非特許文献１】塚田ら，“Ｕｂｉ−Ｆｉｎｇｅｒ：モバイル指向ジェスチャ入力デバイスの研究”，情報処理学会論文誌，２００２．１２
【非特許文献２】福本ら，“動画像処理による非接触ハンドリーダ”，第７回ヒューマン・インタフェース・シンポジウム論文集，ｐｐ．４２７−４３２，１９９１
【非特許文献３】金次ら，電子情報通信学会画像工学研究会，２００２．１
【非特許文献４】山本ら，“ユビキタスステレオビジョンを用いた腕さしジェスチャインタフェース”，第９回画像センシングシンポジウム，２００３．６
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来の手法では、以下のような問題があった。
【０００８】
１）第１の従来手法は、手または指の動作を認識でき、実空間内の３次元位置を指し示すことができるポインティング手法であるが、体の部位に常に何らかの装置を装着する必要があるため、実用的なインタフェース装置としての利便性に欠ける。
【０００９】
２）第２、第３の従来手法は、ユーザが非装着かつ非接触に、３次元的な動作により、スクリーン上の位置を指示することができるポインティング手法であるが、指し示せるのはスクリーン上の位置だけであるため、実空間中の３次元的な位置や物体を直接指し示すことはできない。
【００１０】
３）第４の従来手法は、ユーザが非装着かつ非接触に、３次元的な動作により、実空間内の３次元位置を指し示すことができるポインティング手法であり、かつポインティング位置の判定のために投票処理を用いているが、ポインティング方向の周辺に対する投票処理や、投票値の重みを変えるなどの精度向上化手法は用いられていなかった。
【００１１】
本発明の目的は、前述した従来の手法に対して、装着型のため利便性に欠ける問題、スクリーン上のポインティングができるが実空間中への３次元的なポインティングはできない問題、投票処理を利用した実空間への３次元的なポインティングはできるがポインティング方向の周辺への投票処理による性能向上化手法は用いられていない問題を解決したインタフェース方法、装置、およびプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
上述した目的を達成するために、本発明のインタフェース方法は、
実空間上にある物体の情報の一部もしくは全体に渡る３次元位置情報およびその付加情報を登録する空間情報登録ステップと、
複数台のカメラで撮影した複数の入力画像から、操作者の体の部位の、該操作者の指し示した方向に関わる始点と終点の３次元座標を算出し、操作者の指し示す実空間上での３次元指示方向情報を求める３次元指示方向情報算出ステップと、
得られた該３次元指示方向情報と、前記登録された物体の情報とから、操作者が指し示す３次元指示位置情報である、操作者が指し示す方向の延長線と、登録された物体との交点に関する情報を検出する３次元指示位置検出ステップであって、実空間を分割したボクセル空間の各ボクセルに１対１に対応した投票箱を含む投票箱データメモリの、該３次元指示方向情報に基づき操作者の指し示す方向の延長線が交差するボクセルに対応する投票箱に投票処理を行う投票処理ステップと、投票箱データメモリ内の各投票箱に記録されている投票値の情報と、登録されている物体情報とから、操作者の指し示す３次元指示位置のボクセルを検出する検出処理ステップとを含む３次元指示位置検出ステップと
を有する。
【００１３】
非装着であるため、ユーザの利便性が向上する。また、ユーザの指示方向を検出し指示位置を検出するため、３次元的なポインティングを実現できる。さらに、３次元的なポインティングの指示先として、スクリーン上だけでなく実空間上の位置もポインティング可能であり、応用先を広げることができる。また、投票処理を用いることによりユーザが指し示したい位置を精度よく認識することができる。よって、前記課題の１）と２）を解決できる。
【００１４】
本発明の実施態様によれば、投票処理ステップが、交差するボクセルに隣接し、ボクセル毎に異なる重み付けがされた投票値が予め設定されているボクセルに投票処理を行うステップをさらに有し、検出ステップは、時間的に連続した画像に対する投票処理により積算された投票値が所定の閾値を越えたボクセルを、該操作者の指し示す３次元指示位置のボクセルとして検出する。
【００１５】
そのため、ポインティング方向の周辺に対する投票処理を行うことや投票値の重みを変えることによる精度向上化を図れることから、前記課題の３）を解決できる。
【００１６】
本発明の実施形態によれば、重み付けは、交差するボクセルに近い方から高い点数となるようなものである。
【００１７】
本発明の実施態様によれば、３次元指示位置検出ステップが、時間的に連続した画像に対する投票値を減算するステップを有している。
【００１８】
そのため、投票した投票値を時間経過とともに減らすことができるので誤認識を減らせることから、前記課題の３）を解決できる。
【発明の効果】
【００１９】
本発明は下記の効果がある。
１）請求項１と５と６の発明によれば、非装着であるため、ユーザの利便性が向上し、またユーザの指示方向を検出し指示位置を検出できるため、３次元的なポインティングを実現でき、さらに３次元的なポインティングの指示先として、スクリーン上だけでなく実空間上の位置もポインティング可能であり、応用先を広げることができ、また投票処理を用いることによりユーザが指し示したい位置を精度よく認識することができる。
２）請求項２の発明によれば、ポインティング方向の周辺に対する投票処理を行うことや投票値の重みを変えることによる精度向上化を図ることができる。
３）請求項４の発明によれば、投票した投票値を時間経過とともに減らすことができるので、誤認識を減らし、精度を向上させることができる。
【発明を実施するための最良の形態】
【００２０】
次に、本発明の実施の形態について図面を参照して説明する。
【００２１】
［第１の実施形態］
図１は本発明の第１の実施形態のインタフェース装置の構成図、図２はその処理の流れを示すフローチャートである。
【００２２】
本インタフェース装置は、画像入力部１ａ，１ｂと３次元指示方向情報算出部２と３次元指示位置検出部３と空間情報登録部４と空間情報メモリ５から構成される。
【００２３】
画像入力部１ａ，１ｂとしては、図１のように２台（もしくは３台以上）のカメラを用いる。カメラは一般に用いられるビデオカメラやＣＣＤカメラでよく、白黒でもカラーでもよい。ただし後述する色情報を使用した方法を用いる場合はカラーカメラが必要である。２台のカメラの場合、カメラは、ステレオ法による画像処理が可能な程度の距離に、かつカメラの視線方向（光軸）が３次元空間上で並行、もしくは並行に近いように設置する。３台以上の場合も同様（含まれる２台が同様の条件）である。
【００２４】
３次元指示方向情報算出部２は、ユーザ６の指し示す方向（３次元指示方向）の３次元情報を求めるものである。具体的には、３次元指示方向情報算出部２は、例えば、距離画像生成部２１と始終点２次元座標算出部２２と始終点３次元座標算出部２３で構成され、以下のような方法によって、該３次元指示方向の３次元情報を求めることができる。
【００２５】
距離画像生成部２１は、入力された２個以上の入力画像から、ステレオ法による画像処理を用いて距離画像を生成する（ステップ１０１）。距離画像とは、カメラから物体までの距離を視覚化した画像のことで、例えば近いものを明るく（値を大きく）、遠いものを暗く（値を小さく）して表示するものである。また、ステレオ法は両眼立体視とも言い、人間の両眼と同様に、同一の物体を異なる２つの視点から見ることにより、対象物の３次元的な位置を測定する方法である。
【００２６】
距離画像を生成する具体的な画像処理方法の例としては、市販の製品（Ｐｏｉｎｔ  Ｇｒｅｙ  Ｒｅｓｅａｒｃｈ社のＤｉｇｉｃｌｏｐｓ（３眼カメラ式）やＢｕｍｂｌｅｂｅｅ（２眼カメラ式）等）を用いる方法がある。これらは各々、２個もしくは３個のカメラが内蔵された画像入力機器であり、出力として距離画像を生成できるものである。また、ステレオ法を用いる手法は、画像処理分野において一般的である（発表文献多数）ので、任意の２個以上のカメラを用いて自作することも可能である。
【００２７】
始終点２次元座標算出部２２は、距離画像生成部２１で用いた入力画像のうち少なくとも１個の入力画像を用いて、ユーザの体の予め定めた部位２箇所（始点と終点）の入力画像上での２次元座標を算出するものである（ステップ１０２）。始点と終点は、例えば、ユーザの肩の位置を始点とし、手または腕の重心の位置を終点とすることが考えられる。これにより、この場合は腕を伸ばした手または腕の重心へ向かう方向が後述する３次元指示方向となる。肩と手（または腕）の位置を始点・終点とした場合の入力画像上での具体的な検出方法について、以下に示す。手または腕の位置を画像処理により検出する方法としては、例えば、入力画像をカラー画像とした場合、カラー画像中のＲＧＢ等の色情報から、肌色成分（任意に幅を持たせた色の値の範囲で指定可能）を抽出し、ラベリング処理を行う。得られた複数の肌色部分の中から、手または腕の大きさや位置等の制約情報（例えば、手または腕の大きさから推測される可能性のある肌色面積の範囲を指定したり、入力画像上の天井付近や床付近等、手または腕が存在する可能性の低いところを除外したりする等の制約）を利用して、目的とする手または腕の肌色部分を選択する。選択する具体的な方法例としては、通常ユーザが衣服を着ているとすると、肌色部分の候補となる可能性が高いのは両手（または腕）と顔と考えられ、また最も面積の大きいのは顔と考えられるので、２番目と３番目に面積が大きい肌色部分を手または腕の候補として選択する。ユーザ指定位置として両手（または腕）２つ使うとした利用方法の場合、その２つの（２番目と３番目に大きい）肌色部分の候補に対する各重心位置を、各々左右の手または腕のユーザ指定位置とすればよい。左右の選択は左手側にあるものを左手（腕）、右手側にあるものを右手（腕）とすればよい。また、ユーザ指定位置を１つ（片手または片腕）だけ使うとした利用方法の場合は、２つの候補から１つを選ぶ必要があるが、予め例えば右手（または右腕）を指定する手としたら、体より右手側にある候補を、右手（または右腕）の可能性が高いことから、右手（または右腕）の肌色部分として選び、その重心位置を右手（または右腕）のユーザ指定位置とすればよい。左手（または左腕）の場合も同様である。また、肩の位置を画像処理により検出する方法としては、例えば、初めに顔の位置を抽出してから、肩の位置を算出する方法がある。具体的には、まず、前記の肌色抽出処理を行った結果から、１番目に面積が大きい肌色部分は顔の可能性が高いので、その肌色部分を顔と判断し、その重心を求める。次に、（通常の姿勢では）肩の位置は顔の重心位置から、下へある程度の距離、左右へある程度の距離ずらしたものと仮定することができるので、予めそのずらす距離を決めておいて（個人差あるのでユーザ６によって値を変えてもよい）、顔の重心位置から左右の肩の位置を算出することができる。また、始点・終点の２次元座標を出力する際に、その候補値を複数求め、始終点３次元座標算出部２３へ複数の値を出力してもよい。その場合、始終点３次元座標算出部２３において、始終点の３次元座標を求める際に用いられる。これらにより、始点・終点の入力画像上での２次元座標を求めることができる。また、ここでは肩の位置を始点としているが、前記により求められる顔の位置（重心）をそのまま始点としてもよい。その場合、顔の位置と手（または腕）の位置を結ぶ延長線がユーザ６の指示方向となる。
【００２８】
始終点３次元座標算出部２３は、生成された距離画像情報と、始点・終点の２次元座標から、始点・終点の３次元座標値を求めるものである（ステップ１０３）。具体的な方法としては、例えば、距離画像上で、始点の入力画像上での２次元座標と同じ位置の値（距離値）を参照し、それを始点の距離値とすればよい。終点も同様である。３次元の実空間上において、入力画像の２次元座標系と３次元座標系の変換は一般に、予め容易に算出しておけるので、それに基づいて得られた入力画像上での始点および終点の２次元座標値とその各距離値から、始点と終点の３次元空間上での３次元座標値を求めることができる。さらに、得られた始点・終点の２つの３次元座標値から、２点を結ぶ３次元直線を求めることにより、ユーザの指示方向を求めることができる。また、始点・終点の２次元座標が複数入力された場合（始終点２次元座標算出部２２にて記述）、距離画像情報に基づいて、複数の２次元座標候補から選択することもできる。例えば、ユーザ６のいる位置が予め制限された空間内にしかいないとすると、その制限を越えた場所を指示する候補を除くこと等が可能である。すなわち、始終点３次元座標算出部２３において、始終点３次元座標だけでなく、始終点２次元座標の絞込み処理も可能である。これにより、始終点２次元座標算出部２２における誤検出を異なる情報（距離画像情報）を用いて除外できるので、精度向上が期待できる。
【００２９】
空間情報登録部４は、ユーザ６が指示する可能性のある実空間中の物体等の情報を空間情報メモリ５に登録するものである（ステップ１０４）。実空間中の物体等としては、例えば、ユーザ６が部屋の中にいる場合には、部屋の中にある家電機器等（テレビ、エアコン、コンピュータ、時計、窓、棚、椅子、机、引出し、書類、オーディオ機器、照明機器等）の物体や、また部屋自体の壁、床、天井、窓等、任意のものが対象として考えられる。これらの物体等の情報（３次元位置の座標情報やその他物体に関する情報等）は、表１に示すように、予め空間情報データメモリ５に登録・保存しておく。
【００３０】
【表１】
2005321966.tif 000003
【００３１】
また、情報の登録に関しては、予め固定の３次元位置座標としておくのではなく、対象とする実物体毎に位置認識可能なセンサ（市販されている磁気センサ、超音波センサ、赤外線タグ、無線タグ等）を取り付けておくことにより、各々の物体の位置をリアルタイムに認識することができるので、それらにより得られた３次元位置情報から該物体情報を生成し、常時その物体の３次元位置座標等の情報を更新していくことも可能である。この場合、物体を移動させても３次元位置情報等をリアルタイムに更新させることができる。
【００３２】
３次元指示位置検出部３は、ユーザ６が指し示した実空間中の３次元位置を検出するもので、例えば、投票処理部３１と検出処理部３２と投票箱データメモリ３３から構成される。ここで、予め３次元の実空間を分割した３次元のボクセル空間を設定する（図３）。例えば、幅５ｍ×奥行５ｍ×高さ５ｍの空間を各々１０等分した場合（すなわち１０×１０×１０個のボクセルに分割した場合）、１個のボクセルは５０ｃｍ×５０ｃｍ×５０ｃｍのサイズの空間領域に対応する。空間情報登録部４で登録された物体の座標情報に基づき、各物体はどのボクセルに属するか（空間的にどこに位置するか）を予め求めておき、空間情報データメモリ５に登録されている各物体毎に、対応するボクセル座標を求めておく。１個のボクセルには、１個の投票箱を設ける。ここで、実空間の分割数を（Ｘdiv，Ｙdiv，Ｚdiv）とし、座標（Ｘ，Ｙ，Ｚ）のボクセルをＶ（Ｘ，Ｙ，Ｚ）とする。投票箱とは、数値（整数でも実数でもよい）を記憶できるメモリであり、Ｘdiv×Ｙdiv×Ｚdiv個分のメモリがあればよく、これらのメモリを持つものを投票箱データメモリと呼ぶ。すべての投票箱に記憶されている値（投票値）は、最初に１度初期化（例えば値０をセット）しておく。
【００３３】
投票処理部３１は、まず３次元指示方向情報算出部２の始終点３次元座標算出部２３で求められた、始点・終点を結ぶ３次元直線を手または腕（終点）方向に延長していき、このとき、該延長線が交差するボクセル（交差ボクセル）を算出する（ステップ１０５、図４）。延長線は、ボクセル空間内を通過する際に、複数のボクセルと交差するのでそれら交差ボクセルをすべて求める。求めた交差ボクセルに対応する投票箱に対し、各々投票処理を行う（ステップ１０５）。投票処理とは、投票箱に、予め定めた投票値を加算していく処理である。延長線が交差したボクセルの投票箱の値は、初期値０とし、投票値をｖとすると、０＋ｖ＝ｖとなる。投票するボクセルは、交差ボクセルすべてでもよいが、複数の交差ボクセルの中で、（前述したように）予め行う空間情報データとの対応付けによって、そのボクセルに何かの物体が対応付けられている場合のみ、投票する方法も考えられる（図５）。これにより、何もない空間のボクセル（すなわち投票箱）には投票されず、誤認識を減らすことができる。時間的に連続して入力される画像群に対し、各画像毎に３次元指示方向情報算出処理（ステップ１０１〜１０３）、および３次元位置検出処理（ステップ１０５、１０６）を行う。よって、投票処理も各画像毎に行うので、投票箱データメモリ３３内の各ボクセルの投票値は時間と共に積算される。
【００３４】
検出処理部３２は、時間的に連続した画像毎に投票処理部３１にて投票されることにより投票箱データメモリ３３内の各ボクセルにおいて時間的に積算された投票値の中で、予め定めた閾値を超える投票値を持つ投票箱（すなわちボクセル）を検索する（ステップ１０６）。ここで、閾値とは、時間的に連続した画像に対する投票処理により積算された投票値がその閾値を超えたとき、その投票値のあるボクセルが、ユーザ６の指示する３次元指示位置であると判定するための値であり、例えば投票値ｖ＝１、閾値ｔｈ＝５のように任意に設定すればよい。この例のように１回の投票値より閾値を高く設定した場合は、複数の画像において同じ投票箱（ボクセル）に投票されるため（この場合は画像５回分）、ユーザ６がある一定時間（これは連続した時間でも不連続な時間でもよい）指し示すことにより目的のボクセルが検出されることになるので、ユーザ６が腕を動かす際の移動中等に、目的でないボクセルが誤検出されることが大幅に少なくなり、検出性能を高くすることができる。検索する方法は、ボクセル空間内のすべてのボクセル（に対応する投票箱）の中から、閾値を超える投票値を持つ投票箱（ボクセル）を探す方法がある。また、交差ボクセルの中だけから探す方法もあり、そのようにすれば探すボクセルの数を少なくでき処理量を小さくできる。閾値を超えた投票箱（ボクセル）を検出した場合、投票箱はすべて初期化（０にセット）すればよい。
【００３５】
以上により、本実施形態によれば、ユーザ６が腕を伸ばして、３次元空間中の物体等を直接実空間中で、ある一定時間指し示すことにより、指し示された３次元位置（物体）を検出することが可能になる。
【００３６】
［第２の実施形態］
図６は本発明の第２の実施形態のインタフェース装置の構成図、図７はその処理の流れを示すフローチャートである。
【００３７】
本インタフェース装置は、画像入力部１ａ，１ｂと３次元指示方向情報算出部２と３次元指示位置検出部３と空間情報登録部４と空間情報データメモリ５から構成される。３次元指示位置検出部３は投票処理部３１と検出処理部３２と投票箱データメモリ３３から構成され、投票処理部３１は交差ボクセル投票処理部３１ａと隣接ボクセル投票処理部３１ｂから構成される。画像入力部１ａ，１ｂ、３次元指示方向情報算出部２、空間情報登録部４、空間情報データメモリ５については、第１の実施形態と同様の構成である。
【００３８】
交差ボクセル投票処理部３１ａは、第１の実施形態と同様に、まず３次元指示方向情報算出部２の始終点３次元座標算出部２３で求められた、始点・終点を結ぶ３次元直線を手または腕（終点）方向に延長していく。このとき、該延長線が交差するボクセル（交差ボクセル）を算出する。延長線は、ボクセル空間内を通過する際に、複数のボクセルと交差するのでそれら交差ボクセルをすべて求める。求めた交差ボクセルに対応する投票箱に対し、各々投票処理を行う（ステップ１０７）。投票処理とは、投票箱に、予め定めた投票値を加算していく処理である。
【００３９】
隣接ボクセル投票処理部３１ｂは、交差ボクセル投票処理部３１ａで投票が行われる各々のボクセルに対して、その周辺の（隣接した）ボクセルにも投票処理を行うものである（ステップ１０８）。投票するボクセルは、例えば３次元ボクセル空間における該ボクセルの２６近傍の全ボクセルでもよいし、もしくは６近傍のボクセルや１８近傍のボクセルでもよいし、また２次元上の４近傍のボクセルや８近傍のボクセルでもよい（図８）。投票する値（投票値）は、近傍すべて同じ値でもよいし、異なる値でもよい。例えば、２６近傍への投票を考えた場合、中央の交差ボクセルへの投票値をａとし、隣接の近傍ボクセルへの投票値をそれぞれ、６近傍ボクセルをｂ、１８近傍ボクセルから６近傍ボクセルを除いた近傍ボクセルをｃ、２６近傍ボクセルから１８近傍ボクセルを除いた近傍ボクセルをｄとすればよい。ここで、ａ＝ｂ＝ｃ＝ｄ＝１（または１以外の値）としてもよいし、また中心（交差ボクセル）に近いボクセルほど値を大きくして、例えばａ＝１０、ｂ＝５、ｃ＝２、ｄ＝１のようにしてもよい（図９）。ｂ＝ｃ＝ｄ＝０とすれば交差ボクセルのみへの投票処理と、ｃ＝ｄ＝０とすれば６近傍への投票処理と、ｄ＝０とすれば１８近傍への投票処理と同じである。中心に近いボクセルほど値を大きくすることにより、投票処理による認識結果の精度を向上させることができる。これは、３次元指示方向情報算出部２で得られる３次元指示方向の情報に含まれる誤差により３次元指示方向が、本来指し示すべき正しい方向よりも周囲の方向にずれる場合でも、正しい方向にあるボクセルへの投票も行われるので、精度向上が期待できるためである。また、これにより、時間と共に投票値が積算される際に、正しい方向のボクセルが早く閾値を超えることによる高速化が期待できる。
【００４０】
時間的に連続して入力される画像群に対し、各画像毎に３次元指示方向情報算出処理１００、投票処理（交差ボクセル投票処理１０７、隣接ボクセル投票処理１０８）、検出処理１０９を行う。よって、投票処理も各画像毎に行われるので、投票箱データメモリ３３内の各ボクセルの投票値は時間と共に積算される。
【００４１】
検出処理部３２は、第１の実施形態と同様に、投票箱データメモリ３３内の各ボクセルの投票値の中で、予め定めた閾値を超える投票値を持つ投票箱（すなわちボクセル）を検索する（ステップ１０６）。閾値とは、時間的に連続した画像に対する投票処理によりの積算された値がその閾値を超えたとき、その投票値のあるボクセルが、ユーザ６の指示する３次元指示位置であると判定するための値であり、例えば投票値ａ＝１０、ｂ＝５、ｃ＝２、ｄ＝１、閾値ｔｈ＝２０などのように任意に設定すればよい。検索する方法は、第１の実施形態と同様に、ボクセル空間内のすべてのボクセル（に対応する投票箱）の中から、閾値を超える投票値を持つ投票箱（ボクセル）を探す方法や、交差ボクセルの中だけから探す方法もある。また、投票した交差ボクセルと近傍ボクセルの中から探してもよく、そのようにすれば探すボクセルの数を少なくでき処理量を小さくできる。閾値を超えた投票箱（ボクセル）を検出した場合、投票箱はすべて初期化（０にセット）すればよい。
【００４２】
以上により、本実施形態によれば、ユーザ６が腕を伸ばして、３次元空間中の物体等を直接実空間中で、ある一定時間指し示すことにより、指し示された３次元位置（物体）を検出することが可能になるとともに、第１の実施形態よりも精度よく、かつ高速に物体検出を行うことが可能になる。
【００４３】
［第３の実施形態］
図１０は本発明の第３の実施形態のインタフェース装置の構成図、図１１はその処理の流れを示すフローチャートである。
【００４４】
本インタフェース装置は、画像入力部１ａ，１ｂと３次元指示方向情報算出部２と３次元指示位置検出部３と空間情報登録部４と空間情報データメモリ５から構成される。３次元指示位置検出部３は投票処理部３１と検出処理部３２と投票箱データメモリ３３と投票値減算処理部３４から構成され、投票処理部３１は交差ボクセル投票処理部３１ａと隣接ボクセル投票処理部３１ｂから構成される。画像入力部１ａ，１ｂ、３次元指示方向情報算出部２、交差ボクセル投票処理部３１ａ、隣接ボクセル投票処理部３１ｂ、検出処理部３２、投票箱データメモリ３３、空間情報登録部４、空間情報データメモリ５については、第２の実施形態と同様の構成である。
【００４５】
投票値減算処理部３４は、時間的に連続して入力される画像群に対し、各画像毎に３次元指示方向情報算出処理（ステップ１００）、投票処理（ステップ１０７、１０８）、検出処理（ステップ１０６）を行った後に、投票箱データメモリ３３に積算された投票値を、時間の経過と共に（画像を変えて次に進む毎に）減算する処理を行うものである。
【００４６】
減算処理の方法については例えば以下の方法がある。ある画像が入力された時刻をｔ（ｉ）、連続した次の画像が入力された時刻をｔ（ｉ＋１）とする。時刻ｔ（ｉ）における処理で投票された後の投票データメモリ３３内の任意のボクセル（ｘ，ｙ，ｚ）に積算された投票値をｖ（ｉ）（ｘ，ｙ，ｚ）とし、減算値をｓとすると、すべてのボクセルの投票箱に対して、
ｖ（ｉ＋１）＝ｖ（ｉ）（ｘ，ｙ，ｚ）−ｓ
を行うことにより実行できる。投票箱の値が０の場合は、ｓを減算しなくてよい。
【００４７】
第１、第２の実施形態では、各ボクセルの投票箱では、どれかが閾値を超えて検出されるまでは、時間と共にその積算される投票箱の値が増加し続けるため、ユーザ６が投票するつもりのない場所にも、その間ずっと積算された値が残ってしまう問題があったが、本実施形態の投票値減算処理により、しばらくユーザ６が指し示していない方向のボクセルは、積算された投票値は時間と共に減少していき、最後は０に落ち着くので、ユーザ６が意図しないボクセルを検出してしまう誤検出を減らすことができる利点を持っている。
【００４８】
また、上記では、減算値を−ｓとしたが、引き算ではなく掛け算により値を減らす方法もある。例えば、掛ける値をｍとし、ｍを０〜１の間の実数とすると、
ｖ（ｉ＋１）＝ｖ（ｉ）（ｘ，ｙ，ｚ）×ｍ
を行うことにより、同様に時間と共に値を減らすことができる。求められた値はそのままでは実数になるが、計算しやすいように、小数点以下を切り捨てるなどの整数化を行ってもよい。減算を引き算（−ｓ）で行う場合は、時間と共に単調に減少していくが、掛け算（×ｍ）で行う場合は、時間が経つにつれ、減少する量は小さくなる特徴を持つ。必要に応じ使い分ければよい。
【００４９】
以上により、本実施形態によれば、ユーザ６が腕を伸ばして、３次元空間中の物体等を直接実空間中で、ある一定時間指し示すことにより、指し示された３次元位置（物体）を検出することが可能になるとともに、第１の実施形態よりも精度よく、かつ高速に物体検出を行うことが可能になるとともに、ユーザ６が意図しないボクセル位置を誤検出する可能性を減らすことができ、精度向上が図れる。
【００５０】
なお、以上説明したインタフェース装置の機能は専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フロッピーディスク、光磁気ディスク、ＣＤ−ＲＯＭ等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの（伝送媒体もしくは伝送波）、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。
【図面の簡単な説明】
【００５１】
【図１】本発明の第１の実施形態のインタフェース装置の構成図である。
【図２】第１の実施形態のインタフェース装置の処理の流れを示すフローチャートである。
【図３】ボクセル空間の例を示す図である。
【図４】交差ボクセルすべてに投票処理を行う例の説明図である。
【図５】物体が登録されている交差ボクセルのみに投票処理を行う例の説明図である。
【図６】本発明の第２の実施形態のインタフェース装置の構成図である。
【図７】第２の実施形態のインタフェース装置の処理の流れを示すフローチャートである。
【図８】投票するボクセルの例を示す図である。
【図９】重み付きの投票値（同図（ａ））と、重み付きの投票値の例（同図（ｂ））を示す図である。
【図１０】本発明の第３の実施形態のインタフェース装置の構成を示す図である。
【図１１】第３の実施形態のインタフェース装置の処理の流れを示すフローチャートである。
【符号の説明】
【００５２】
１ａ，１ｂ    画像入力部
２    ３次元指示方向情報算出部
３    ３次元指示位置検出部
４    空間情報登録部
５    空間情報データメモリ
６    ユーザ
２１    距離画像生成部
２２    始終点２次元座標算出部
２３    始終点３次元座標算出部
３１    投票処理部
３１ａ    交差ボクセル投票処理部
３１ｂ    隣接ボクセル投票処理部
３２    検出処理部
３３    投票箱データメモリ
３４    投票値減算処理部
１００〜１０９    ステップ
【図１】
2005321966.tif 000004
【図２】
2005321966.tif 000005
【図３】
2005321966.tif 000006
【図４】
2005321966.tif 000007
【図５】
2005321966.tif 000008
【図６】
2005321966.tif 000009
【図７】
2005321966.tif 000010
【図８】
2005321966.tif 000011
【図９】
2005321966.tif 000012
【図１０】
2005321966.tif 000013
【図１１】
2005321966.tif 000014