(57)【要約】【課題】入力画面を通して視認される現実環境での対象物の動きをユーザが認識して入力操作する場合、ユーザが認識する対象物の位置と入力操作を適切に対応付けることができるようにすること。【解決手段】表示制御手段17は、複数の操作子を含む入力操作用画面を、現実環境の視認可能な表示面を有する表示手段18に表示させる。入力操作認識手段15は、三次元位置取得手段14により取得される対象物の三次元位置情報に基づいて対象物による入力操作を認識する。入力位置特定手段16は、認識された入力操作における対象物が、表示手段18の表示面上で認識される位置を特定する。入力操作特定手段は、特定された位置と入力操作用画面上の操作子の位置の対応関係から入力操作を特定する。【選択図】図１
2010205031.tif 000002
【特許請求の範囲】
【請求項１】
複数の操作子を含む入力操作用画面を生成する第１のステップと、
前記第１のステップにより生成された入力操作用画面を、現実環境の視認が可能な表示面に表示する第２のステップと、
現実環境の二次元画像データを取得する第３のステップと、
前記第３のステップにより取得された二次元画像データから対象物の固有情報を認識し、該対象物の二次元画像での二次元位置情報を特定する第４のステップと、
深さ画像データを取得する第５のステップと、
前記第４のステップにより特定された対象物の二次元位置情報と前記第５のステップにより取得された深さ画像データから対象物の三次元位置情報を取得する第６のステップと、
前記第６のステップにより取得された三次元位置情報に基づいて対象物による入力操作を認識する第７のステップと、
前記第７のステップにより認識された入力操作における対象物が、前記第２のステップによる表示面上で認識される位置を特定する第８のステップと、
前記第８のステップにより特定された位置と前記第２のステップにより表示された入力操作用画面上の操作子の位置の対応関係から入力操作を特定する第９のステップとを備えたことを特徴とする入力位置特定方法。
【請求項２】
複数の操作子を含む入力操作用画面を生成する表示制御手段と、
現実環境の視認が可能な表示面を有し、前記表示制御手段により生成された入力操作用画面を表示する表示手段と、
現実環境の二次元画像データを取得する二次元画像取得手段と、
前記二次元画像取得手段により取得された二次元画像データから対象物の固有情報を認識し、該対象物の二次元画像での二次元位置情報を特定する画像認識手段と、
深さ画像データを取得する深さ画像取得手段と、
前記画像認識手段により特定された対象物の二次元位置情報と前記深さ画像取得手段により取得された深さ画像データから対象物の三次元位置情報を取得する三次元位置取得手段と、
前記三次元位置取得手段により取得された三次元位置情報に基づいて対象物による入力操作を認識する入力操作認識手段と、
前記入力操作認識手段により認識された入力操作における対象物が、前記表示手段の表示面上で認識される位置を特定する入力位置特定手段と、
前記入力位置特定手段により特定された位置と前記表示手段により表示された入力操作用画面上の操作子の位置の対応関係から入力操作を特定する入力操作特定手段とを備えたことを特徴とする入力位置特定システム。
【請求項３】
前記入力操作認識手段は、前記画像認識手段により特定された対象物の二次元位置の軌跡に基づいて入力操作を認識することを特徴とすることを特徴とする請求項２に記載の入力位置特定システム。
【請求項４】
前記入力操作認識手段は、前記三次元位置取得手段により取得された対象物の三次元位置の軌跡に基づいて入力操作を認識することを特徴とすることを特徴とする請求項２に記載の入力位置特定システム。
【請求項５】
前記表示制御手段は、対象物が前記画像認識手段において二次元画像内または二次元画像の所定領域内で認識された場合に入力操作用画面を前記表示手段に表示させることを特徴とする請求項２ないし４のいずれかに記載の入力位置特定システム。
【請求項６】
前記表示制御手段は、対象物が前記三次元位置取得手段において三次元位置の所定距離範囲内で取得された場合に入力操作用画面を前記表示手段に表示させることを特徴とする請求項２ないし５のいずれかに記載の入力位置特定システム。
【請求項７】
コンピュータに、
複数の操作子を含む入力操作用画面を生成する第１の機能と、
前記第１の機能により生成された入力操作用画面を、現実環境の視認が可能な表示面に表示する第２の機能と、
現実環境の二次元画像データを取得する第３の機能と、
前記第３の機能により取得された二次元画像データから対象物の固有情報を認識し、該対象物の二次元画像での二次元位置情報を特定する第４の機能と、
深さ画像データを取得する第５の機能と、
前記第４の機能により特定された対象物の二次元位置情報と前記第５の機能により取得された深さ画像データから対象物の三次元位置情報を取得する第６の機能と、
前記第６の機能により取得された三次元位置情報に基づいて対象物による入力操作を認識する第７の機能と、
前記第７の機能により認識された入力操作における対象物が、前記第２の機能による表示面上で認識される位置を特定する第８の機能と、
前記第８の機能により特定された位置と前記第２の機能により表示された入力操作用画面上の操作子の位置の対応関係から入力操作を特定する第９の機能を実現させる入力位置特定用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力位置特定方法、入力位置特定方システムおよび入力位置特定用プログラムに関し、特に、透過型ヘッドマウントディスプレイに入力画面を表示し、ジェスチャによる入力操作位置を適切に対応付けることができる入力位置特定方法、入力位置特定システムおよび入力位置特定用プログラムに関する。
【背景技術】
【０００２】
従来から、装着することにより眼前にディスプレイが配置され、視界を覆ってディスプレイ画面のみを利用者に視認させる非透過型ヘッドマウントディスプレイ(Head Mounted Display:以下では、HMDと称する。)が存在する。この非透過型HMDによれば、ユーザは意識的に視線を向けなくても、それに提示される電子情報を確認することができ、かつ小型のディスプレイを用いて仮想的に大型の画面表示を実現できる。非透過型HMD(Vuzix iWear vr920)は、非特許文献１に記載されている
【０００３】
近年では、視界を確保しながら電子情報を付加表示することが可能な透過型HMDも実現されている。透過型HMDでは視界を確保することができるため、視界上に実在する対象物についての関連情報をHMD上に付加表示する拡張現実サービスへの適用が期待されている。透過型HMD(LUMUS)は、非特許文献２に記載されている。
【０００４】
一方、人の動きを画像認識して端末操作の入力として用いるジェスチャ入力技術が存在する。近年では、カメラからの距離(深さ)を認識可能なカメラを用いて3次元の動きを認識し、入力に用いる技術も存在する。深さ認識カメラ(ZCAM)は、非特許文献３に記載されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】http://www.vuzix.com/iwear/ products_vr920.html
【非特許文献２】http://www.lumusvision.com/
【非特許文献３】http://www.3dvsystems. com/
【発明の概要】
【発明が解決しようとする課題】
【０００６】
複数のボタンなどの操作子が配置された入力画面を透過型HMDに表示し、ユーザの指などの動きを透過型HMDに搭載されたカメラを用いて認識して入力操作とする場合、ユーザが指の位置をいずれの操作子上に認識しているかを特定する必要がある。
【０００７】
図３は、透過型HMDに表示された入力画面を用いた入力操作を示す説明図であり、入力画面上の操作子kを操作しようとして、ユーザの眼から見て対象物(指)Oを操作子kに合わせた状態を示している。同図(a)は、対象物Oを近距離で操作子kに合わせた場合であり、同図(b)は、対象物Oを近距離で操作子kに合わせた場合である。
【０００８】
図４は、カメラで認識される対象物Oの二次元位置を示す図である。対象物Oの位置はカメラからの二次元画像を基に認識されるが、カメラの位置によって、例えば、同図(a)に示すように、対象物Oが操作子kの範囲に含まれない(x１,y１)として認識されることがある。対象物Oが近距離の場合には眼とカメラの位置の誤差の影響がより大きくなり、例えば、同図(b)に示すように(x１′,y１′)として認識される。このように、カメラにより取得される二次元画像から認識される対象物Oの位置は、対象物Oの深さ情報によって変わってくるので、対象物Oの二次元画像のみから対象物Oにより操作された操作子を適切に特定することができない。図４には、対象物Oと操作子のX,Y軸上でのずれを示している。
【０００９】
従来のジェスチャ入力技術は、ユーザの指などの対象物のみの動きを認識して入力操作とするものであり、透過型HMDに表示される入力画面を通して現実環境で認識される対象物の動きにより入力操作を行うジェスチャ入力、その場合に、ユーザが認識する対象物の位置を特定し、それを入力操作に適切に対応付ける方法は存在しない。
【００１０】
本発明の目的は、透過型HMDを用いて入力画面を表示し、その入力画面を通して現実環境での指などの対象物の動きをユーザが認識して入力操作を行う場合、ユーザが認識する対象物の位置と入力操作を適切に対応付けることができる入力位置特定方法、入力位置特定システムおよび入力位置特定用プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明の入力位置特定システムは、複数の操作子を含む入力操作用画面を生成する表示制御手段と、現実環境の視認が可能な表示面を有し、前記表示制御手段により生成された入力操作用画面を表示する表示手段と、二次元画像データを取得する二次元画像取得手段と、前記二次元画像取得手段により取得された二次元画像データから対象物の固有情報を認識し、該対象物の二次元画像での二次元位置情報を特定する画像認識手段と、深さ画像データを取得する深さ画像取得手段と、前記画像認識手段により特定された対象物の二次元位置情報と前記深さ画像取得手段により取得された深さ画像データから対象物の三次元位置情報を取得する三次元位置取得手段と、前記三次元位置取得手段により取得された三次元位置情報に基づいて対象物による入力操作を認識する入力操作認識手段と、前記入力操作認識手段により認識された入力操作における対象物が、前記表示手段の表示面上で認識される位置を特定する入力位置特定手段と、前記入力位置特定手段により特定された位置と前記表示手段により表示された入力操作用画面上の操作子の位置の対応関係から入力操作を特定する入力操作特定手段とを備えたことを特徴としている。
【００１２】
また、本発明の入力位置特定システムは、前記入力操作認識手段が、前記画像認識手段により特定された対象物の二次元位置の軌跡に基づいて入力操作を認識することを特徴としている。
【００１３】
また、本発明の入力位置特定システムは、前記入力操作認識手段が、前記三次元位置取得手段により取得された対象物の三次元位置の軌跡に基づいて入力操作を認識することを特徴としている。
【００１４】
また、本発明の入力位置特定システムは、前記表示制御手段が、対象物が前記画像認識手段において二次元画像内または二次元画像の所定領域内で認識された場合に入力操作用画面を前記表示手段に表示させることを特徴としている。
【００１５】
また、本発明の入力位置特定システムは、前記表示制御手段が、対象物が前記三次元位置取得手段において三次元位置の所定距離範囲内で取得された場合に入力操作用画面を前記表示手段に表示させることを特徴としている。
【００１６】
なお、本発明は、入力位置特定システムとしてだけでなく、入力位置特定方法、あるいは入力位置特定用プログラムとしても実現できる。
【発明の効果】
【００１７】
本発明によれば、透過型HMD画面上に表示された入力画面に対してユーザがジェスチャ入力によって操作する場合に、カメラにより認識したジェスチャ位置に対応するHMD画面上の入力位置をユーザの意図した通りに適切に判定することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態を示す機能ブロック図である。
【図２】本発明の位置特定手段の一例を示す図である。
【図３】透過型HMDに表示された入力画面を用いた入力操作を示す説明図である。
【図４】カメラで認識される対象物の二次元位置を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明を説明する。図１は、本発明の一実施形態を示す機能ブロック図である。本実施形態は、本発明を入力位置特定方システムとして実現したものであり、二次元画像取得手段11、画像認識手段12、深さ画像取得手段13、三次元位置取得手段14、入力操作認識手段15、入力位置特定手段16、表示制御手段17、表示手段18および入力特定手段19を備える。画像認識手段12、三次元位置取得手段14、入力操作認識手段15、入力位置特定手段16、表示制御手段17および入力特定手段19は、入力操作処理装置として機能し、例えば携帯電話などに設けられる。これらの各部はハードウエアでもソフトウエアでも実現できる。
【００２０】
二次元画像取得手段11は、入力操作を行う対象物の二次元画像データをカメラによって取得する。入力操作を行う対象物は、例えば、ユーザの指や入力ペンなどである。カメラは、透過型HMD(以下、単にHMDと称する。)に搭載されてもよいし、入力操作処理装置に搭載されてもよい。また、単独の装置としてもよい。
【００２１】
画像認識手段12は、二次元画像取得手段11により取得された二次元画像データから対象物の固有情報および二次元画像での二次元位置情報を特定する。対象物の固有情報および二次元位置情報は、例えば、予め登録された物体の二次元画像データと取得された二次元画像データを比較し、両者の画像パターンの類似性に基づいて特定することができる。なお、ここで特定する二次元位置情は、ユーザの指の指先端部分の中心部、入力ペンの先端部などである。
【００２２】
深さ画像取得手段13は、深さ画像データを取得する。深さ画像データは、例えば、深さ認識カメラによって取得されたピクセルごとの深さ(Z値)である。深さ認識カメラは、深さ情報の認識が可能なカメラであり、例えばZCAM(http://www.3dvsystems. com/)を用いることができる。
【００２３】
三次元位置取得手段14は、画像認識手段12により特定された対象物の二次元位置情報と、深さ画像取得手段13により取得されたZ値のうちの二次元位置に対応するZ値を取得することで、対象物の三次元位置情報を取得する。ここで、二次元画像データを取得するカメラと深さ認識カメラの位置が異なる位置に設けられている場合やそれらの歪度が異なる場合には、互いに二次元位置を対応させてZ値を取得する。
【００２４】
なお、深さ画像取得手段13で先にZ値を取得し、Z値がある範囲(一定深さ)の、二次元位置のピクセル数が一定数以上の場合のみ画像認識手段12が画像認識を行う構成としてもよい。この場合には、深さ画像取得手段13が取得したZ値を画像認識手段12に与える。
【００２５】
入力操作認識手段15は、三次元位置取得手段14により取得された対象物の三次元位置情報に基づいて入力操作を認識し、このときの対象物の二次元あるいは三次元位置情報を入力操作位置情報として取得する。ユーザの指の位置情報に基づく入力操作の認識では、例えば、指の二次元あるいは三次元位置情報を取得し、指が特定の移動をした場合に入力操作が行われたと認識する。
【００２６】
これは、例えば、指が描くパターンを予め設定された移動パターンと比較し、両者の合致が予め設定された一定割合以上である場合に入力操作が行われたと認識することで実現できる。このときの入力操作移動パターンと指が描くパターンとの比較は、二次元あるいは三次元上の何れでも構わない。また、指の移動が一定時間停止、あるいはある空間範囲内に一定時間位置した場合に入力操作が行われたと認識するようにしてもよい。なお、入力操作位置は、指の移動軌跡の始点、終点、あるいは予め設定されたタイミングの位置のいずれかの三次元位置とすることができる。
【００２７】
入力位置特定手段16は、HMDを装着したユーザの眼の位置と入力操作認識手段15により取得された対象物の三次元位置を元に、HMD画面上の入力位置を特定する。この入力位置の特定方法については、後で詳述する。
【００２８】
表示制御手段17は、入力操作用画面、例えば複数のボタンなどの操作子が配置された画面を生成する。なお、入力操作用画面は、画像認識手段12により特定された対象物の二次元位置情報や三次元位置取得手段14により取得された三次元位置情報に従って表示させるようにしてもよい。例えば、通常時にはHMDに入力用操作子(ボタン)を表示させずに、現実環境が何ら支障なく視認されるようにしておく。そして、指などの対象物が、画像認識手段12において二次元画像内または二次元画像の所定領域内で認識された場合、あるいは三次元位置取得手段14において三次元位置の所定距離範囲内で取得された場合に入力用操作子を表示させる。また、HMDを入力操作用とするモードを設定可能にしておき、該モードが設定された場合に入力操作用画面が生成されて入力操作が可能になるようにしてもよい。
【００２９】
表示手段18は、透過型HMDとして構成され、表示制御手段18により生成された入力操作用画面を表示する。これにより、ユーザの眼前に、入力用操作子が配置された入力操作用画面が表示される。なお、表示手段19は、表示制御手段18に画像出力用ケーブルで接続される。この接続方法は、有線接続でもよく、Bluetooth, IEEE802.11, Wireless HDなどの無線接続でもよい。
【００３０】
入力特定手段19は、入力位置特定手段16により特定された入力位置と入力操作用画面での操作子の位置から入力操作を特定し、該入力操作に従って入力処理を実行させる。この入力処理は、携帯電話だけでなく、その他の別の装置を有線あるいは無線を介して制御、コントロールするものでも構わない。
【００３１】
図２は、入力位置特定手段16での入力位置の特定方法を示す説明図である。ここでは、YおよびZ軸に関する位置を図示しているが、XおよびZ軸に関する位置も同様である。入力位置特定手段16は、以下に示す算定方法により特定される位置をHMD画面上の入力位置として特定する。
【００３２】
三次元位置取得手段14により取得された対象物OのX軸、Y軸およびZ軸方向の三次元位置を(x,y,z)、HMDを装着しているユーザの一方の眼(例えば右眼) からHMD画面（レンズ）に垂線を引いた時の交点のHMD画面上の二次元位置を(u,v)とする。また、ユーザの右眼の位置とHMD画面との間の距離をrとし、ユーザの右眼の位置を原点としたときの、二次元画像取得手段(カメラ)11の位置を(dx,dy,dz)とする。ユーザの右眼の二次元位置(u,v)は既知であり、二次元画像取得手段11の位置(dx,dy,dz)およびユーザの右眼の位置とHMD画面との間の距離rも一意に決められる。
【００３３】
ユーザの右眼の位置を原点としたとき、ユーザがHMDを通して現実環境を視認した時の対象物Oの三次元位置は、図２に示すように、(x+dx,y+dy,z+dz)となり、対象物Oは、HMD画面(レンズ：画像投影面)上において、ユーザの右眼の位置と対象物Oの三次元位置を結ぶ線分とHMD画面が交差する点Pとなる。点PのX座標、Y座標はそれぞれ、式(1),(2)で算出される。なお、＊は乗算を表す。なお、ユーザの顔とカメラの向きが一致していない場合には、さらにその不一致による二次元位置(x,y)のずれを補正することが必要である。
【００３４】
点PのＸ座標：ｕ＋（ｘ＋ｄｘ）＊ｒ／（ｚ＋ｄｚ）           (1)
【００３５】
点PのＹ座標：ｖ＋（ｙ＋ｄｙ）＊ｒ／（ｚ＋ｄｚ）           (2)
【００３６】
ユーザは、HMDを通して現実環境を視認した時に対象物Oの位置をHMD画面上では点Pとして認識するので、対象物Oのその位置での入力操作は、HMD画面の点Pに位置する操作子(ボタン)によるものと考えることができる。そこで、入力位置特定手段16は、この入力操作を点Pに位置する操作子の入力操作と特定する。HMD画面上の (u+(x+dx)*r/(z＋dz)、v+(y+dy)*r/(z＋dz))(長さ：単位m)の位置である。コンピュータ上で処理する場合には、長さを画素数に換算するために定倍した座標を電子的な表示座標とする。例えば、HMD画面の大きさがX軸方向に0.02m、Y軸方向に0.015mでHMD画面の画素数が800x600である場合、電子的な表示座標は（（u+(x+dx)*r/(z＋dz)）/0.02m*800, （v+(y+dy)*r/(z＋dz)）/0.015*600)（ピクセル）となる。
【００３７】
以上、ユーザの右眼について説明したが、左眼についても同様に、対象物による入力操作を特定することができる。ただし、両者での入力操作の特定を１つにするため、HMD画面における操作子の表示を右眼用と左眼用とで少しずらして立体視できるようにする。この場合、この立体視での奥行き位置での対象物の入力操作が認識されるので、上述したように、対象物が三次元位置の所定距離範囲内で取得された場合に入力用操作子を表示させるのがよい。
なお、構成および処理の簡単化のため、ユーザの眼の位置を両眼の真ん中の位置あるいは利き眼の位置と考え、対象物による入力操作を特定するようにすることもできる。
【００３８】
以上実施形態を説明したが、本発明は、上記実施形態に限定されず、種々に変形することができる。例えば、上記実施形態は、本発明を入力位置特定システムとして実現したものであるが、本発明は、システムとしての他、入力位置特定方法、あるいは携帯電話などに搭載してそれを入力位置特定システムとして機能させる入力位置特定用プログラムとしても実現できる。
【符号の説明】
【００３９】
11・・・二次元画像取得手段、12・・・画像認識手段、13・・・深さ画像取得手段、14・・・三次元位置取得手段、15・・・入力操作認識手段、16・・・入力位置特定手段、17・・・表示制御手段、18・・・表示手段、19・・・入力特定手段
【図１】
2010205031.tif 000003
【図４】
2010205031.tif 000004
【図２】
2010205031.tif 000005
【図３】
2010205031.tif 000006