説明

画像操作装置、画像操作方法およびプログラム

【課題】ユーザが装着する専用の装置を必要とせず、立体視オブジェクトをユーザの指で操作することを可能にする。
【解決手段】画像操作装置1の表示制御部16は、データ取得部11が取得した立体視オブジェクトのデータに基づいて、立体視オブジェクトを表示部17に表示させる。指座標抽出部14は、画像取得部12が取得した画像と、記憶部13が記憶するユーザの指の画像とを比較し、ユーザの指がポインティングしている指座標を抽出する。判定部15は、表示画面の前面の空間で立体視オブジェクトが視認される領域を計算し、領域と指座標とに基づいてユーザの指が立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う。触れたと判定した場合、判定部15は、ユーザの指の動きを検出し、ユーザが立体視オブジェクトに対して行った操作を示す操作情報を生成する。表示制御部16、操作情報に基づいて、立体視オブジェクトの表示を変化させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示した画像を操作する画像操作装置、画像操作方法およびプログラムに関する。
【背景技術】
【0002】
近年、画面から飛び出して見える立体視の画像や映像に関して、様々な技術が提案されている。
【0003】
たとえば、特許文献1は、仮想空間において、仮想の本が所定の程度開かれた際に、そこに描かれている平面画像の表示物を立体的に表示することができる画像処理装置を開示している。特許文献1の画像処理装置は、ユーザの手に装着され、装着された手や各指に対して触覚や力覚を与える一対のリアルグローブを備え、仮想空間画像を仮想空間表示装置に表示し、リアルグローブを装着した手や指が仮想空間に表示された物体に仮想的に接触した場合等に、その様子を仮想空間表示装置に表示するとともに、リアルグローブを装着した手や各指に接触したときの触覚や力覚を与える。
【0004】
また、特許文献2は、立体画像データを受信して、浮き上がって見えるように立体表示する立体画像表示可能なカメラ付携帯端末を開示している。
【0005】
特許文献3は、ユーザのジェスチャを判別するジェスチャ動作認識システムを開示している。特許文献3のジェスチャ動作認識システムは、異なる位置に配された同一被写体の画像を撮影する第一カメラ及び第二カメラを備え、同一時刻における第一カメラ及び第二カメラの画像情報を対比して被写体領域と背景領域とを識別し、識別された被写体領域からさらに被写体の頭領域及び手先領域を検出するとともに、頭領域及び手先領域の各々の特徴点を三次元座標算出して特定する。
【0006】
特許文献4は、本発明は、複数の撮像手段にて対象物を撮像し、この撮像信号を基に前記対象物の位置を認識する画像認識装置を開示している。特許文献4の画像認識装置は、カメラ僅体等の機械的基準によることなく、また、専用の調整治具を使用することなく、複数のカメラ基準の補正が可能である。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2004−318400号公報
【特許文献2】特開2010−141447号公報
【特許文献3】特開2009−211563号公報
【特許文献4】特開平04−367186号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、このような立体視用の画像を表示した際にユーザが視認する仮想物体(以下、立体視オブジェクトという)に対する操作は基本的に物理キーで行うことしかできない。そのため、立体視オブジェクトを実際に触れるように扱うことができず、利用者の直感性を損ねる可能性がある。特許文献1に記載の方法では、立体オブジェクトを操作するのにリアルグローブという装着型の専用の装置が必要である。
【0009】
特許文献2は、立体オブジェクトを操作するものではない。
【0010】
特許文献3および4は、立体オブジェクトを表示するものではなく、立体オブジェクトを操作するものでもない。
【0011】
本発明は、上述のような事情に鑑みてなされたものであり、ユーザが装着する専用の装置を必要とせず、立体視オブジェクトをユーザの指で操作することができる画像操作装置、画像操作方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の第1の観点に係る画像操作装置は、
画像を表示する表示画面と、
前記表示画面の前面の所定の空間を撮影する撮影部と、
前記撮影部が撮影した画像を取得する画像取得手段と、
ユーザの指の画像を記憶する記憶手段と、
立体視オブジェクトのデータを取得するデータ取得手段と、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段と、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段と、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段と、を備え、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする。
【0013】
本発明の第2の観点に係る画像操作方法は、
画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備える画像操作装置が実行する
前記撮影部が撮影した画像を取得する画像取得ステップと、
ユーザの指の画像を記憶する記憶ステップと、
立体視オブジェクトのデータを取得するデータ取得ステップと、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御ステップと、
前記画像取得ステップで取得した画像と、前記記憶ステップで記憶した前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出ステップと、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定ステップと、を備え、
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得ステップで取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御ステップでは、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする。
【0014】
本発明の第3の観点に係るプログラムは、画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備えるコンピュータを、
前記撮影部が撮影した画像を取得する画像取得手段、
ユーザの指の画像を記憶する記憶手段、
立体視オブジェクトのデータを取得するデータ取得手段、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段、として機能させ、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする。
【発明の効果】
【0015】
本発明によれば、ユーザが装着する専用の装置を必要とせず、立体視オブジェクトをユーザの指で操作することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の実施の形態に係る画像操作装置の一例を示す斜視図である。
【図2】実施の形態に係る画像操作装置の機能構成例を示すブロック図である。
【図3】平面視オブジェクトおよび立体視オブジェクトを説明する図である。
【図4】ユーザの指と立体視オブジェクトとの衝突判定の例を説明する図である。
【図5】ユーザが立体視オブジェクトに対して行う操作の一例を説明する図である。
【図6】ユーザが立体視オブジェクトに対して行うジェスチャの例を示す図である。
【図7】ユーザの指と立体視オブジェクトとの衝突判定の他の例を説明する図である。
【図8】実施の形態に係る画像操作の動作の一例を示すフローチャートである。
【図9】実施の形態に係る画像操作装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【0017】
以下に、発明を実施するための形態について図面を参照して詳細に説明する。なお、図中同一または相当する部分には同じ符号を付す。
【0018】
図1は、本発明の実施の形態に係る画像操作装置の一例を示す斜視図である。画像操作装置1は、筐体E1に、カメラC1、カメラC2および表示画面D1を備える。筐体E1にはめ込まれた表示画面D1には、立体視オブジェクトO1の画像が表示されており、ユーザには立体視オブジェクトO1が図示のように飛び出して見える。表示画面D1の両端に設置されたカメラC1およびカメラC2は、表示画面D1の前面の所定の範囲の空間を撮影する。所定の範囲の空間とは、たとえば、表示画面D1の前面で立体視オブジェクトが仮想的に出現しうる範囲の空間である。なお、カメラC1およびカメラC2の設置位置は、任意の位置でよい。また、筐体E1、カメラC1、カメラC2および表示画面D1は、図1の形状に限らず、画像操作装置1は、2つのカメラと表示画面を備えていればよい。
【0019】
図示のように、ユーザが指で立体視オブジェクトO1を触る動作をすると、カメラC1およびカメラC2はユーザの指を撮影した画像を取得する。なお、立体視オブジェクトO1は、実際には表示画面D1の平面に画像が表示されているだけなので、カメラC1およびカメラC2が撮影する画像には写らない。
【0020】
図2は、実施の形態に係る画像操作装置の機能構成例を示すブロック図である。画像操作装置1は、データ取得部11、画像取得部12、記憶部13、指座標抽出部14、判定部15、表示制御部16および表示部17を備える。
【0021】
データ取得部11は、立体視オブジェクトのデータを取得し、判定部15および表示制御部16に送る。なお、データ取得部11は、立体視オブジェクトのデータとともに、表示画面D1の前面の空間で立体視オブジェクトが視認される領域を示すデータ(以下、領域データという)を取得し、判定部15に送ってもよい。
【0022】
画像取得部12は、ユーザの指の画像を取得し、あらかじめ記憶部13に記憶させる。また、画像取得部12は、図1に示す表示画面D1の前面の所定の範囲の空間を撮影した画像を取得し、指座標検出部14に送る。なお、ユーザの指の画像は、撮影して取得してもよいし、外部から取得してもよい。
【0023】
記憶部13は、画像取得部12から受け取ったユーザの指の画像をあらかじめ記憶する。
【0024】
指座標検出部14は、画像取得部12から受け取った画像と記憶部13から読み出したユーザの指の画像とのパターンマッチングを行い、ユーザの指がポインティングしている位置を示す座標(以下、指座標という)を抽出する。
【0025】
判定部15は、データ取得部11から受け取った立体視オブジェクトのデータに基づいて、表示画面D1の前面の空間で立体視オブジェクトが視認される領域を計算する。データ取得部11が立体オブジェクトのデータとともに領域データを取得する場合は、判定部15は、データ取得部11から領域データを受け取る。
【0026】
判定部15は、表示画面D1の前面の空間で立体視オブジェクトが視認される領域と、指座標抽出部14から受け取った指座標とに基づいて、ユーザの指が立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う。判定部15は、ユーザの指が立体視オブジェクトに触れたと判定した場合、画像取得部12から受け取った画像に基づいてユーザの指の動きを検出し、ユーザが立体視オブジェクトに対して行った操作を示す操作情報を生成し、表示制御部16に送信する。
【0027】
表示制御部16は、データ取得部11から受け取った立体視オブジェクトのデータに基づいて、表示部17に立体視オブジェクトを表示させる。また、表示制御部16は、判定部15から受け取った操作情報に基づいて、表示部17の立体視オブジェクトの表示を変化させる。
【0028】
表示部17は、表示制御部16からの指示に従い、立体視オブジェクトを表示する。
【0029】
図3は、平面視オブジェクトおよび立体視オブジェクトを説明する図である。図3(a)に示す平面視オブジェクトO2は、表示画面D1の横方向と平行なα軸と表示画面D1の縦方向と平行なβ軸で表される二次元における平面視オブジェクトO2の中心の座標P1(α1,β1)と、平面視オブジェクトO2の形状を表すデータと、座標P1を中心とした平面視オブジェクトの回転角とで表現することができる。
【0030】
一方、図3(b)に示す立体視オブジェクトO1は、表示画面D1の横方向と平行なα軸と表示画面D1の縦方向と平行なβ軸と表示画面D1の垂直方向と平行なγ軸とで表される三次元における立体視オブジェクトO1の中心の座標P2(α2,β2,γ2)と、立体視オブジェクトO1の形状を表すデータと、α軸を中心とした立体視オブジェクトの回転角Pitchと、β軸を中心とした立体視オブジェクトの回転角Rollと、γ軸を中心とした立体視オブジェクトの回転角Yawとで表現することができる。
【0031】
画像操作装置1のデータ取得部11が、立体視オブジェクトO1のデータとして、立体視オブジェクトO1の中心座標P2(α2,β2,γ2)と、立体視オブジェクトO1の形状を表すデータと、立体視オブジェクトO1の回転角(Pitch:0°,Roll:0°,Yaw:0°)とを受け取ると、表示制御部16は、これに基づいて表示部17に立体視オブジェクトO1を表示させる。
【0032】
なお、図3(b)の立体視オブジェクトO1をβ軸を中心としたオブジェクトの回転角Rollを負の方向(時計回り)にθ回転させた場合、図3(c)のように、表示画面D1に表示される。このとき、立体視オブジェクトO1のデータに含まれる立体視オブジェクトO1の回転角は、(Pitch:0°,Roll:−θ,Yaw:0°)となる。
【0033】
立体視オブジェクトO1のデータは、ユーザの視点があらかじめ設定されているデータであり、実際には、表示制御部16は、立体オブジェクトO1のデータに基づいて、ユーザの右目の視点と立体視オブジェクトO1を構成する各点とをつないだ延長線上にある表示画面上の各点と、ユーザの左目の視点と立体視オブジェクトO1を構成する各点とをつないだ延長線上にある表示画面上の各点とを計算する。表示制御部16は、計算した表示画面上の各点の集合から、視差によって立体視オブジェクトO1がユーザに視認できる画像を生成し、表示部17に表示させる。
【0034】
あるいは、立体視オブジェクトO1のデータは、元々、視差によって立体視オブジェクトO1がユーザに視認できる画像であってもよい。この場合、判定部15は、立体視オブジェクトO1のデータと、あらかじめ設定されているユーザの視点に基づいて、立体視オブジェクトO1の中心座標P2と、立体視オブジェクトO1の形状を表すデータと、立体視オブジェクトO1の回転角とを計算する。
【0035】
図4は、実施の形態に係るユーザの指と立体視オブジェクトとの衝突判定の例を説明する図である。図4(a)の例では、立体視オブジェクトO1を示すデータは、中心の座標P2(α2,β2,γ2)と、直方体(W:a2,H;b2,D:c2)と、回転角(Pitch:0°,Roll:0°,Yaw:0°)とで表される。なお、直方体のWはX軸方向の幅を示す、HはZ軸方向の高さを表し、DはY軸方向の奥行きを表す。
【0036】
画像操作装置1の判定部15は、このような立体視オブジェクトO1のデータに基づいて、表示画面D1の前面の空間で立体視オブジェクトO1が視認される領域A1を計算する。なお、領域A1の座標は、所定の位置を原点とした表示画面D1の横方向と平行なX軸と表示画面D1の縦方向と平行なY軸と表示画面D1の垂直方向と平行なZ軸とで表される三次元で規定する。判定部15は、立体視オブジェクトO1の中心の座標P2(α2,β2,γ2)をP2(X2,Y2,Z2)に変換する。P2(X2,Y2,Z2)を中心とした直方体(W:a2,H;b2,D:c2)が領域A1である。なお、αβγ座標からXYZ座標への変換方法は、αβγ座標の原点とXYZ座標の原点との各軸の差をαβγ座標の各軸の値に加算すればよい。
【0037】
一方、図4(b)に示すように、指座標抽出部14は、画像取得部12(図中のカメラC1およびカメラC2)から受け取った画像と、記憶部13が記憶しているユーザの指の画像とのパターンマッチングを行い、指座標P3(X3,Y3,Z3)を抽出する。
【0038】
具体的には、指座標抽出部14は、まず、P4(X4,Y4,Z4)の座標に設置されたカメラC1が所定の角度で撮影した画像と記憶部13が記憶しているユーザの指の画像とを比較してユーザの指を検出し、そのポインティング位置(図4の例では、指の先端)を検出する。同様に、指座標抽出部14は、指座標抽出部14は、P5(X5,Y5,Z5)の座標に設置されたカメラC2が所定の角度で撮影した画像と記憶部13が記憶しているユーザの指の画像とを比較してユーザの指を検出し、そのポインティング位置を検出する。指座標抽出部14は、あらかじめ記憶部13に記憶したカメラC1の画像におけるポインティング位置とカメラC2の画像におけるポインティング位置との組み合わせに、表示画面D1の前面の空間における指座標を対応付けたデータテーブルを参照し、指座標P3(X3,Y3,Z3)を抽出する。
【0039】
あるいは、カメラC1の画像におけるポインティング位置と、カメラC2の画像におけるポインティング位置と、カメラC1の撮影角度と、カメラC2の撮影角度とから、ポインティング位置のXYZ座標における位置(X3,Y3,Z3)を算出して指座標P3とする。
【0040】
判定部15は、領域A1と指座標P3に基づいて、ユーザの指が立体視オブジェクトO1に仮想的に触れたか否かの衝突判定を行う。図4(b)の例では、領域A1を示す直方体の側面に指座標P3が含まれるため、判定部15は、ユーザの指が立体視オブジェクトO1に仮想的に触れたと判定する。
【0041】
図5は、実施の形態に係るユーザが立体視オブジェクトに対して行う操作の一例を説明する図である。判定部15は、ユーザの指が立体視オブジェクトO1に仮想的に触れたと判定すると、画像取得部12から受け取った画像に基づいてユーザの指の動きを検出し、ユーザが立体視オブジェクトに対して行った操作を示す操作情報を生成する。図5のように、ユーザが指をP3(X3,Y3,Z3)からP32(X32,Y3,Z3)までX軸の負の方向に移動させたとすると、判定部15は、ユーザの指がX軸の負の方向に(X3−X32)移動したことを示す操作情報を生成し、表示制御部16に送信する。
【0042】
表示制御部16は、この操作情報に基づいて、表示部17に表示している立体視オブジェクトO1をX軸の負の方向に(X3−X32)移動させる。これにより、ユーザの指で行った立体視オブジェクトに対して行った操作が立体視オブジェクトの表示に反映される。なお、ユーザが立体視オブジェクトに対して行う操作は、移動させる操作に限らず、回転させたり、拡大・縮小したりしてもよい。この場合、たとえば、それぞれの操作に対応するジェスチャを示すデータをあらかじめ記憶部13に記憶しておく。判定部15は、ユーザの指が立体視オブジェクトO1に仮想的に触れたと判定すると、記憶部13が記憶している操作に対応するジェスチャを示すデータを参照し、画像取得部12(図中のカメラC1およびカメラC2)から受け取った画像からユーザが立体視オブジェクトO1に対して行ったジェスチャを検出して操作情報を生成する。
【0043】
図6は、ユーザが立体視オブジェクトに対して行うジェスチャの例を示す図である。図6(a)は、対象の立体視オブジェクトを拡大するジェスチャの例である。このジェスチャは、親指と人差し指の指先が接着している状態から開く。逆に親指と人差し指の指先が開いている状態から接着させると対象の立体視オブジェクトを縮小するジェスチャとする。拡大方法は、XYZ軸の比率を保持して拡大してもよいし、開いた親指の指先の座標と人差し指の指先の座標を結んだ直線方向に拡大してもよい。縮小も同様である。
【0044】
図6(b)は、対象の立体視オブジェクトを回転するジェスチャの例である。このジェスチャは、親指と人差し指の指先が開いている状態で手首を時計回りに回転させる。逆に手首を反時計回りに回転させると逆方向に回転させるジェスチャとする。回転方法は、親指および人差し指の指先の手首を中心とした回転を検出し、立体視オブジェクトに同様の回転をさせてもよいし、立体視オブジェクトに対する親指および人差し指の指先の位置によって、立て回転、横回転、斜め回転などに分け、該当する回転をさせてもよい。
【0045】
図7は、ユーザの指と立体視オブジェクトとの衝突判定の他の例を説明する図である。図7(a)の例では、立体視オブジェクトO1を示すデータは、特徴点P6(α6,β6,γ6)と、特徴点P7(α7,β7,γ7)と、特徴点P8(α8,β8,γ8)と、特徴点P9(α9,β9,γ9)と、特徴点P10(α10,β10,γ10)と、特徴点P11(α11,β11,γ11)と、特徴点P12(α12,β12,γ12)と、特徴点P13(α13,β13,γ13)とで表される。
【0046】
画像操作装置1の判定部15は、このような立体視オブジェクトO1のデータに基づいて、表示画面D1の前面の空間で立体視オブジェクトO1が視認される領域A1を計算する。図4の例と同様に、領域A1の座標は、所定の位置を原点とした表示画面D1の横方向と平行なX軸と表示画面D1の縦方向と平行なY軸と表示画面D1の垂直方向と平行なZ軸とで表される三次元で規定する。特徴点P6〜特徴点P13は、それぞれ特徴点P6(X6,Y6,Z6)と、特徴点P7(X7,Y7,Z7)と、特徴点P8(X8,Y8,Z8)と、特徴点P9(X9,Y9,Z9)と、特徴点P10(X10,Y10,Z10)と、特徴点P11(X11,Y11,Z11)と、特徴点P12(X12,Y12,Z12)と、特徴点P13(X13,Y13,Z13)と、に変換される。これらの特徴点P6〜特徴点P13で囲まれる領域が領域A1である。なお、αβγ座標からXYZ座標への変換方法は、図4の例と同様である。
【0047】
一方、図7(b)に示すように、指座標抽出部14は、画像取得部12(カメラC1およびC2)から受け取った画像と、記憶部13が記憶しているユーザの指の画像とのパターンマッチングを行い、指座標P3(X3,Y3,Z3)を抽出する。指座標の抽出方法は図4の例と同様である。判定部15は、領域A1と指座標P3に基づいて、ユーザの指が立体視オブジェクトO1に仮想的に触れたか否かの衝突判定を行う。図7(b)の例では、特徴点P7、P8、P11およびP12で囲まれる面に指座標P3が含まれるため、判定部15は、ユーザの指が立体視オブジェクトO1に仮想的に触れたと判定する。
【0048】
図8は、実施の形態に係る画像操作の動作の一例を示すフローチャートである。なお、画像操作装置1の記憶部13は、あらかじめ画像取得部12が取得したユーザの指の画像を記憶している。
【0049】
データ取得部11は、立体視オブジェクトのデータを取得し(ステップS11)、判定部15および表示制御部16に送る。表示制御部16は、データ取得部11から受け取った立体視オブジェクトのデータに基づいて、表示部17に立体視オブジェクトを表示させる(ステップS12)。判定部15は、データ取得部11から受け取った立体視オブジェクトのデータに基づいて、表示画面D1の前面の空間で立体視オブジェクトが視認される領域を計算する(ステップS13)。なお、ステップS11でデータ取得部11が立体視オブジェクトのデータとともに領域データを取得した場合は、判定部15は、データ取得部11から領域データを受け取る。
【0050】
画像取得部12は、表示画面D1の前面の所定の範囲の空間の画像を取得し(ステップS14)、指座標検出部14は、画像取得部12が取得した画像と記憶部13から読み出したユーザの指の画像とのパターンマッチングを行い、指座標を抽出する(ステップS15)。指座標検出部14は、抽出した指座標を判定部15に送る。
【0051】
判定部15は、表示画面D1の前面の空間で立体視オブジェクトが視認される領域と、指座標抽出部14から受け取った指座標とに基づいて、ユーザの指が立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う(ステップS16)。ユーザの指が立体視オブジェクトに仮想的に触れていないと判定した場合(ステップS16;NO)、ステップS16を繰り返す。ユーザの指が立体視オブジェクトに仮想的に触れたと判定した場合(ステップS16;YES)、判定部15は、画像取得部12から受け取った画像に基づいてユーザの指の動きを検出し、ユーザが立体視オブジェクトに対して行った操作を示す操作情報を生成する(ステップS17)。判定部15は、操作情報を表示制御部16に送信する。
【0052】
表示制御部16は、判定部15から受け取った操作情報に基づいて、表示部17の立体視オブジェクトの表示を変化させ(ステップS18)、処理を終了する。
【0053】
以上説明したように、本実施の形態の画像操作装置によれば、ユーザが装着する専用の装置を必要とせず、立体視オブジェクトをユーザの指で操作することができる。また、ユーザの指で操作することで、立体視オブジェクトに対する操作の自由度を向上させることが期待できる。
【0054】
なお、上述の実施の形態では、立体視オブジェクトのデータは、あらかじめユーザの視点が設定されている。しかし、これに限らず、画像操作装置1は、ユーザの視点を検出する手段を備えてもよい。この場合、表示制御部16は、立体視オブジェクトのデータと検出したユーザの視点に基づいて、表示部17に立体視オブジェクトを表示させる。判定部15は、立体視オブジェクトのデータと検出したユーザの視点とに基づいて、表示画面D1の前面の空間で立体視オブジェクトが視認される領域を計算する。視点を検出する手段は、たとえば、カメラC1およびカメラC2が取得したユーザの画像を解析しユーザの目を検出する。あるいは、ユーザが視点の位置を入力して設定してもよい。
【0055】
図9は、実施の形態に係る画像操作装置のハードウェア構成の一例を示すブロック図である。
【0056】
制御部31はCPU(Central Processing Unit)等から構成され、外部記憶部33に記憶されている制御プログラム39に従って、指座標抽出部14、判定部15および表示制御部16の各処理を実行する。
【0057】
主記憶部32はRAM(Random Access Memory)等から構成され、外部記憶部33に記憶されている制御プログラム39をロードし、制御部31の作業領域として用いられる。
【0058】
外部記憶部33は、フラッシュメモリ、ハードディスク、DVD−RAM(Digital Versatile Disc Random-Access Memory)、DVD−RW(Digital Versatile Disc ReWritable)等の不揮発性メモリから構成され、画像操作装置1の処理を制御部31に行わせるためのプログラムをあらかじめ記憶し、また、制御部31の指示に従って、このプログラムが記憶するデータを制御部31に供給し、制御部31から供給されたデータを記憶する。記憶部13は、外部記憶部33に構成される。
【0059】
操作部34はキーボードおよびマウスなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バス30に接続するインタフェース装置から構成されている。ユーザが入力した情報は、操作部34を介して、制御部31に供給される。
【0060】
表示部35は、CRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)などから構成され、制御部31から受け取った表示情報を表示する。表示部35は、表示画面D1であり、表示部17として機能する。
【0061】
送受信部36は、網終端装置または無線送受信機と、それらと接続するシリアルインタフェースまたはLAN(Local Area Network)インタフェースから構成されている。送受信部36は、データ取得部11として機能する。
【0062】
撮影部37は、カメラC1およびカメラC2であり、画像取得部12として機能する。
【0063】
図2に示す画像操作装置1のデータ取得部11、画像取得部12、記憶部13、指座標抽出部14、判定部15、表示制御部16および表示部17の処理は、制御プログラム39が、制御部31、主記憶部32、外部記憶部33、操作部34、表示部35、送受信部36および撮影部37などを資源として用いて処理することによって実行する。
【0064】
その他、前記のハードウェア構成やフローチャートは一例であり、任意に変更および修正が可能である。
【0065】
制御部31、主記憶部32、外部記憶部33、操作部34、表示部35、送受信部36および撮影部37などから構成される画像操作装置1の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行する画像操作装置1を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで画像操作装置1を構成してもよい。
【0066】
また、画像操作装置1の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【0067】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【0068】
上記の実施形態の一部または全部は、以下の請求項のようにも記載されうるが、以下には限られない。
【0069】
(付記1)
画像を表示する表示画面と、
前記表示画面の前面の所定の空間を撮影する撮影部と、
前記撮影部が撮影した画像を取得する画像取得手段と、
ユーザの指の画像を記憶する記憶手段と、
立体視オブジェクトのデータを取得するデータ取得手段と、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段と、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段と、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段と、を備え、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする画像操作装置。
【0070】
(付記2)
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、三次元の各軸を中心とした回転角とを含み、
前記判定手段は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、前記三次元の各軸を中心とした回転角と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする付記1に記載の画像操作装置。
【0071】
(付記3)
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトのすべての特徴点の三次元の座標を含み、
前記判定手段は、前記立体視オブジェクトのすべての特徴点の三次元の座標と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする付記1に記載の画像操作装置。
【0072】
(付記4)
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザが指を移動させた方向と移動距離とを計算して、前記ユーザが前記立体視オブジェクトを移動させた操作を示す前記操作情報を生成することを特徴とする付記1ないし3のいずれかに記載の画像操作装置。
【0073】
(付記5)
前記記憶手段は、前記ユーザが前記立体視オブジェクトに対して行う操作に対応するジェスチャを示すデータをあらかじめ記憶し、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記ユーザが前記立体視オブジェクトに対して行う操作に対応するジェスチャを示すデータを参照し、前記画像取得手段が取得した画像に基づいて前記ジェスチャを検出して、前記ユーザが前記立体視オブジェクトに対して行った操作を示す前記操作情報を生成することを特徴とする付記1ないし4のいずれかに記載の画像操作装置。
【0074】
(付記6)
画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備える画像操作装置が実行する
前記撮影部が撮影した画像を取得する画像取得ステップと、
ユーザの指の画像を記憶する記憶ステップと、
立体視オブジェクトのデータを取得するデータ取得ステップと、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御ステップと、
前記画像取得ステップで取得した画像と、前記記憶ステップで記憶した前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出ステップと、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定ステップと、を備え、
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得ステップで取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御ステップでは、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする画像操作方法。
【0075】
(付記7)
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、三次元の各軸を中心とした回転角とを含み、
前記判定ステップでは、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、前記三次元の各軸を中心とした回転角と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする付記6に記載の画像操作方法。
【0076】
(付記8)
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトのすべての特徴点の三次元の座標を含み、
前記判定ステップでは、前記立体視オブジェクトのすべての特徴点の三次元の座標と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする付記6に記載の画像操作方法。
【0077】
(付記9)
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得ステップで取得した画像に基づいて、前記ユーザが指を移動させた方向と移動距離とを計算して、前記ユーザが前記立体視オブジェクトを移動させた操作を示す前記操作情報を生成することを特徴とする付記6ないし8のいずれかに記載の画像操作方法。
【0078】
(付記10)
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像操作装置があらかじめ記憶する前記ユーザが前記立体視オブジェクトに対して行う操作に対応するジェスチャを示すデータを参照し、前記画像取得ステップで取得した画像に基づいて前記ジェスチャを検出して、前記ユーザが前記立体視オブジェクトに対して行った操作を示す前記操作情報を生成することを特徴とする付記6ないし9のいずれかに記載の画像操作方法。
【0079】
(付記11)
画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備えるコンピュータを、
前記撮影部が撮影した画像を取得する画像取得手段、
ユーザの指の画像を記憶する記憶手段、
立体視オブジェクトのデータを取得するデータ取得手段、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段、として機能させ、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とするプログラム。
【符号の説明】
【0080】
1 画像操作装置
11 データ取得部
12 画像取得部
13 記憶部
14 指座標抽出部
15 判定部
16 表示制御部
17 表示部
31 制御部
32 主記憶部
33 外部記憶部
34 操作部
35 表示部
36 送受信部
37 撮影部
39 制御プログラム
A1 領域
C1,C2 カメラ
D1 表示画面
O1 平面視オブジェクト
O2 立体視オブジェクト

【特許請求の範囲】
【請求項1】
画像を表示する表示画面と、
前記表示画面の前面の所定の空間を撮影する撮影部と、
前記撮影部が撮影した画像を取得する画像取得手段と、
ユーザの指の画像を記憶する記憶手段と、
立体視オブジェクトのデータを取得するデータ取得手段と、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段と、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段と、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段と、を備え、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする画像操作装置。
【請求項2】
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、三次元の各軸を中心とした回転角とを含み、
前記判定手段は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、前記三次元の各軸を中心とした回転角と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする請求項1に記載の画像操作装置。
【請求項3】
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトのすべての特徴点の三次元の座標を含み、
前記判定手段は、前記立体視オブジェクトのすべての特徴点の三次元の座標と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする請求項1に記載の画像操作装置。
【請求項4】
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザが指を移動させた方向と移動距離とを計算して、前記ユーザが前記立体視オブジェクトを移動させた操作を示す前記操作情報を生成することを特徴とする請求項1ないし3のいずれか1項に記載の画像操作装置。
【請求項5】
前記記憶手段は、前記ユーザが前記立体視オブジェクトに対して行う操作に対応するジェスチャを示すデータをあらかじめ記憶し、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記ユーザが前記立体視オブジェクトに対して行う操作に対応するジェスチャを示すデータを参照し、前記画像取得手段が取得した画像に基づいて前記ジェスチャを検出して、前記ユーザが前記立体視オブジェクトに対して行った操作を示す前記操作情報を生成することを特徴とする請求項1ないし4のいずれか1項に記載の画像操作装置。
【請求項6】
画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備える画像操作装置が実行する
前記撮影部が撮影した画像を取得する画像取得ステップと、
ユーザの指の画像を記憶する記憶ステップと、
立体視オブジェクトのデータを取得するデータ取得ステップと、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御ステップと、
前記画像取得ステップで取得した画像と、前記記憶ステップで記憶した前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出ステップと、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定ステップと、を備え、
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得ステップで取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御ステップでは、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とする画像操作方法。
【請求項7】
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、三次元の各軸を中心とした回転角とを含み、
前記判定ステップでは、前記立体視オブジェクトの三次元の中心座標と、前記立体視オブジェクトの形状を示すデータと、前記三次元の各軸を中心とした回転角と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする請求項6に記載の画像操作方法。
【請求項8】
前記立体視オブジェクトの視認される領域を示す情報は、前記立体視オブジェクトのすべての特徴点の三次元の座標を含み、
前記判定ステップでは、前記立体視オブジェクトのすべての特徴点の三次元の座標と、前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行うことを特徴とする請求項6に記載の画像操作方法。
【請求項9】
前記判定ステップでは、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得ステップで取得した画像に基づいて、前記ユーザが指を移動させた方向と移動距離とを計算して、前記ユーザが前記立体視オブジェクトを移動させた操作を示す前記操作情報を生成することを特徴とする請求項6ないし8のいずれか1項に記載の画像操作方法。
【請求項10】
画像を表示する表示画面と、前記表示画面の前面の所定の空間を撮影する撮影部とを備えるコンピュータを、
前記撮影部が撮影した画像を取得する画像取得手段、
ユーザの指の画像を記憶する記憶手段、
立体視オブジェクトのデータを取得するデータ取得手段、
前記立体視オブジェクトのデータに基づいて、前記立体視オブジェクトを前記表示画面に表示させる表示制御手段、
前記画像取得手段が取得した画像と、前記記憶手段が記憶する前記ユーザの指の画像とを比較し、前記ユーザの指がポインティングしている位置を示す指座標を抽出する指座標抽出手段、
前記表示画面の前面の空間における前記立体視オブジェクトの視認される領域を示す情報を取得し、前記領域を示す情報と前記指座標とに基づいて前記ユーザの指が前記立体視オブジェクトに仮想的に触れたか否かの衝突判定を行う判定手段、として機能させ、
前記判定手段は、前記ユーザの指が前記立体視オブジェクトに仮想的に触れたと判定した場合、前記画像取得手段が取得した画像に基づいて、前記ユーザの指の動きを検出し、前記ユーザが前記立体視オブジェクトに対して行った操作を示す操作情報を生成し、
前記表示制御手段は、前記操作情報に基づいて、前記表示画面に表示させている前記立体視オブジェクトの表示を変化させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−208705(P2012−208705A)
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願番号】特願2011−73390(P2011−73390)
【出願日】平成23年3月29日(2011.3.29)
【出願人】(310006855)NECカシオモバイルコミュニケーションズ株式会社 (1,081)
【Fターム(参考)】