JP6800599B2 - 情報処理装置、方法及びプログラム - Google Patents

情報処理装置、方法及びプログラム Download PDF

Info

Publication number
JP6800599B2
JP6800599B2 JP2016077570A JP2016077570A JP6800599B2 JP 6800599 B2 JP6800599 B2 JP 6800599B2 JP 2016077570 A JP2016077570 A JP 2016077570A JP 2016077570 A JP2016077570 A JP 2016077570A JP 6800599 B2 JP6800599 B2 JP 6800599B2
Authority
JP
Japan
Prior art keywords
axis
vector
virtual object
moving
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016077570A
Other languages
English (en)
Other versions
JP2017084323A (ja
JP2017084323A5 (ja
Inventor
努 中原
努 中原
太郎 上松
太郎 上松
靖己 田中
靖己 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of JP2017084323A publication Critical patent/JP2017084323A/ja
Publication of JP2017084323A5 publication Critical patent/JP2017084323A5/ja
Application granted granted Critical
Publication of JP6800599B2 publication Critical patent/JP6800599B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、現実空間を撮像する撮像装置を視点として空間に仮想物体を重ねた複合現実画像を生成し、表示部に表示する情報処理装置、方法及びプログラムに関する。
近年、現実空間に3Dモデリングソフトによって作成された3Dモデル等の仮想物体をリアルタイムに重ねて表示する複合現実感(MR:Mixed Reality)に関する研究が盛んである。MR技術を利用することで、操作者は現実空間内にあたかも仮想物体が存在するかのような体験ができる。例えばカメラで撮像した現実空間の映像上に3Dモデルを重ねて表示することで、モックアップや実際の製品がなくても、操作者はデザインの確認や完成品の大きさを確認することができる。また、MR技術を利用することで、製品組み立ての手順説明やシミュレーションを行うといった、様々な分野への活用が期待されている。
また、仮想現実感(VR:Virtual Reality)の分野では、仮想空間において仮想物体を任意の位置に移動させることが一般的に行われている。例えば仮想物体を移動させるために、仮想空間内に3次元の格子を生成し、仮想空間における仮想物体の位置と大きさを計算する。そして、仮想物体から最も近い距離にある格子点を求め、格子点に移動するための3次元座標系の成分を決定し、仮想物体を移動するという方法が取られてきた(例えば特許文献1を参照)。また、仮想空間において仮想視点を設定する場合があり、この仮想視点を移動させることも行われている。
また、既存のCGソフトをCGの描画部として利用し、VRシステムやMRシステムと連携した環境を構築する技術が提案されている(例えば特許文献2を参照)。
特開平11−316858号公報 特許第4847203号公報 特許第4739004号公報
A. Criminisi, I. Reid and A. Zisserman: "Single view metrology", Int. J. of Computer Vision, 40, 2, pp.123-148 (2000).
VRやMRにより空間に仮想物体を重ねた仮想現実画像又は複合現実画像を生成する場合に、仮想物体を例えば空間内の地面の位置に合わせることが行われる。現実空間のアップベクトルと仮想物体に対するアップベクトルとが異なる場合には、仮想物体を移動させる方向を事前に設定しないと、操作者の意図する方向に仮想物体を移動させられないことになる。仮想視点を移動させるときも同様に、仮想視点を移動させる方向を事前に設定しないと、操作者の意図する方向に仮想視点を移動させられないことになる。
本発明は上記の点に鑑みてなされたものであり、操作者が意図する方向に仮想物体や仮想視点を移動させられるようにすることを目的とする。
本発明の情報処理装置は、現実空間を撮像する撮像装置を視点として空間に仮想物体を重ねた複合現実画像を生成し、表示部に表示する情報処理装置であって、前記撮像装置のアップベクトル又は視線ベクトルと、前記空間の世界座標系を構成する軸の各軸ベクトルとが成す角度に基づいて、前記軸のうち、前記仮想物体移動を拘束する移動軸を設定する設定手段と、前記設定手段で設定した軸に応じて定められる方向に、前記仮想物体仮想的に移動させる移動手段とを備えることを特徴とする。
本発明によれば、操作者が意図する方向に仮想物体移動させることができる。
第1の実施形態に係るMRシステムの機能構成を示す図である。 第1の実施形態に係るMRシステムの概略構成を示す図である。 第1の実施形態におけるワークステーションによる処理手順を示すフローチャートである。 カメラのアップベクトルと世界座標系の各軸ベクトルとの関係を説明するための図である。 カメラのアップベクトルと世界座標系の各軸ベクトルとが成す角度を示す図である。 第1の実施形態における移動軸の判定処理の詳細を示すフローチャートである。 第1の実施形態における仮想物体の移動の概要を示す図である。 第2、第3の実施形態における仮想物体の移動の概要を示す図である。 第4の実施形態における仮想物体の移動の概要を示す図である。 第5の実施形態における移動軸の判定処理の詳細を示すフローチャートである。 カメラの視線ベクトルと世界座標系の各軸ベクトルとの関係を説明するための図である。 カメラの視線ベクトルと世界座標系の各軸ベクトルとが成す角度を示す図である。 第6の実施形態における移動軸の判定処理の詳細を示すフローチャートである。 第6の実施形態における移動軸の判定処理の他の例の詳細を示すフローチャートである。 カメラの第三のベクトルと世界座標系の各軸ベクトルとの関係を説明するための図である。 カメラの第三のベクトルと世界座標系の各軸ベクトルとが成す角度を示す図である。 第7の実施形態における移動軸の判定処理の詳細を示すフローチャートである。 第7の実施形態における移動軸の判定処理の他の例の詳細を示すフローチャートである。 第8の実施形態に係るVRシステムの機能構成を示す図である。 カメラの視点と世界座標系の各軸ベクトルとの関係を説明するための図である。 第9の実施形態におけるワークステーションによる処理手順を示すフローチャートである。 MRシステム及びVRシステムの変形例の概略構成を示す図である。
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
[第1の実施形態]
図1に、第1の実施形態に係るMRシステムの機能構成を示す。また、図2に、第1の実施形態に係るMRシステムの概略構成を示す。MRシステムは、本発明を適用した情報処理装置として機能するワークステーション100と、ワークステーション100との通信機能を有する頭部装着ディスプレイ150(HMD:Head Mount Display)とを備える。
HMD150には、撮像装置であるカメラ151及び表示部152が搭載されている。本実施形態では、図2に示すように、HMD150内にカメラ151及び表示部152がそれぞれ2基搭載されており、ステレオでの撮像及び表示が可能である。操作者はHMD150を頭部に装着することで、表示部152に映るステレオの複合現実画像を見ることができる。複合現実画像とは、カメラ151で撮像する現実空間に仮想物体を重ねた画像であり、表示部152には、カメラ151を視点とする複合現実画像が表示される。
図1に示すように、ワークステーション100において、撮像画像取得部101は、カメラ151で撮像する撮像画像を取得して、データ記憶部102に保存する。
位置姿勢算出部103は、データ記憶部102に保存されている撮像画像に対して画像処理を行い、画像中の特徴点を用いて現実空間でのカメラ151の位置姿勢を算出し、データ記憶部102に保存する。本実施形態では、算出されるカメラ151の位置姿勢は、ユーザがHMD150を装着した場合にユーザの頭部の中心から頭頂部の方向に向かうアップベクトルを含んだパラメータである。カメラの位置姿勢を算出する処理については周知の技術であるので、その説明を省略する。現実空間での位置姿勢とは、世界座標系(現実空間の任意の1点を原点として、原点で直交する3軸(X軸、Y軸、Z軸)を持つ座標系)における位置姿勢である。図2に示すように、カメラ151で現実空間の指標200を認識させ、指標200上の1点を原点として、世界座標系におけるカメラ151の位置姿勢を算出することができる。現実空間での位置姿勢を算出する方法は、画像中の特徴点を用いる方法に限定されるものではなく、位置姿勢センサ(光学式センサ、磁気式センサ、超音波式センサ)を用いる方法でもよい。位置姿勢センサは計測対象に直接又は間接的に装着されており、位置姿勢センサの出力値は計測対象の位置姿勢を算出できるものである。
仮想空間生成部105は、仮想空間情報を生成する。仮想空間情報とは、仮想物体のデータを含む。仮想空間情報取得部104は、仮想空間生成部105で生成した仮想空間情報を取得し、仮想物体の位置姿勢を算出して、データ記憶部102に保存する。
イベント入力部106で仮想物体を移動するイベントが発生すると、位置姿勢算出部103は、カメラ151の位置姿勢、詳しくはカメラ座標系のアップベクトル(カメラの頭頂部の向き)と、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させる。なお、イベントの入力方法は、ワークステーション100のGUIによる操作の他、キーボード、マウス、コントローラを使用してもよい。仮想物体を移動させる方向は、カメラ151のアップベクトルと世界座標系の各軸ベクトルとの関係を求める以外にも、画像認識により画像内の構造物の直線を検出し、直線の消失点から重力方向を検出することにより決定(例えば非特許文献1を参照)してもよい。
複合現実画像生成部107は、データ記憶部102に保存されている撮像画像及び仮想空間情報を用いて、視点から見える複合現実画像を生成する。
複合現実画像出力部108は、複合現実画像生成部107で生成した複合現実画像を表示部152に出力する。これにより、表示部152には、視点となるカメラ151の位置姿勢に応じた複合現実画像が表示されることになる。
図3に、第1の実施形態におけるワークステーション100による処理手順を示す。図3のフローチャートの処理は、複合現実画像を1画像描画するごとに繰り返し行われる。
ステップS301で、撮像画像取得部101は、カメラ151で撮像する撮像画像を取得して、データ記憶部102に保存する。
ステップS302で、位置姿勢算出部103は、データ記憶部102に保存されている撮像画像に対して画像処理を行い、画像中の特徴点を用いて現実空間でのカメラ151の位置姿勢を算出し、データ記憶部102に保存する。
ステップS303で、仮想空間情報取得部104は、仮想空間生成部105で生成した仮想空間情報を取得し、データ記憶部102に保存する。
ステップS304で、仮想空間情報取得部104は、仮想物体の位置姿勢を算出し、データ記憶部102に保存する。
ステップS305で、仮想物体を移動するイベントが発生していれば、ステップS306に進み、イベントが発生していなければ、ステップS308に進む。
ステップS306で、仮想物体を移動させるための、すなわち仮想物体の移動を拘束する移動軸を判定する。位置姿勢算出部103は、図4に示すように、カメラ151のアップベクトル404と、世界座標系のX軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。なお、図4では、説明の簡略化のため、1台のカメラ151だけを図示する。図5(a)はアップベクトル404とX軸ベクトル401とが成す角度、図5(b)はアップベクトル404とY軸ベクトル402とが成す角度、図5(c)はアップベクトル404とZ軸ベクトル403とが成す角度を示す。カメラ151のアップベクトル404と世界座標系の各軸ベクトル401〜403とが成す角度を算出した後、成す角度の値が最も小さい軸ベクトルを判定する。本実施形態では、成す角度を求めるためにcosθを用いる。図5(a)を例にX軸ベクトル401をA、アップベクトル404をBとすると、cosθ=A・B(A・BはX軸ベクトル401とアップベクトル404との内積を表わす)で求めることができる。cosθの値が1に最も近い軸ベクトルが、成す角度の最も小さい軸ベクトルであると判定して、その軸を移動軸とする。
図6に、ステップS306の移動軸の判定処理の詳細を示す。
ステップS601で、世界座標系の各軸ベクトル(X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403)の値を取得する。
ステップS602で、カメラ151のアップベクトル404の値を取得する。
ステップS603〜S605で、カメラ151のアップベクトル404と、X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。
ステップS606で、ステップS603〜S605において算出した成す角度を比較し、値が最も小さい軸ベクトルを判定して、その軸を移動軸とする。判定した軸ベクトルの情報はデータ記憶部102に保存する。
図3に説明を戻して、ステップS307で、位置姿勢算出部103は、仮想物体の移動を行う。図7を参照して、仮想物体の移動の例を説明する。まず現実空間における所定の平面の座標値を取得し、ステップS306において判定した軸ベクトルと平行に仮想物体を所定の平面上に移動させる。所定の平面とは、例えば天井、地面、床、壁、箱、机等の現実物体の平面としてもよいし、現実空間内に仮想の平面があると仮定してもよい。現実空間における所定の平面は、ユーザにより予め設定しておけばよい。現実空間における平面の座標値を算出する処理については周知の技術(例えば特許文献3を参照)であるので、その説明を省略する。
例えばステップS306において移動軸がZ軸(カメラ151のアップベクトル404と成す角度の値が最も小さい軸ベクトルがZ軸ベクトル403)と判定したとする。この場合、所定の平面がXY平面であるとして、図7(a)の状態にある仮想物体405を世界座標系のZ軸と平行にXY平面上に移動し、図7(b)の状態にする。具体的には、まず現実空間における平面(XY平面)の座標値(XY平面のZ軸の値)を算出する。そして、仮想物体405の位置及び大きさを計算し、図7(a)に示すように、仮想物体405のZ軸における値が最小の点406の値を求める。点406の値を(x,y,z)とした場合、図7(b)に示すように、XY平面上に点406を移動させるには、値を(x,y,0)としてXY平面上の値に一致させる。移動軸がX軸、Y軸の場合は、それぞれの軸と平行に仮想物体405を所定の平面上に移動させる。移動後の仮想物体405の位置姿勢を求めて、データ記憶部102に保存する。
ステップS308で、複合現実画像生成部107は、データ記憶部102に保存されている仮想物体の位置姿勢を用いて、複合現実画像を生成する。
ステップS309で、複合現実画像出力部108は、ステップS308において生成した複合現実画像を表示部152に出力する。
以上のように、例えばユーザが正面を向いているときには、カメラ151のアップベクトルは垂直に近くなっている。この状況でユーザが仮想物体を移動させると(例えばコントローラで下カーソルを押す)、ユーザとしては自分の見ている画像に対して下方向(つまり、垂直方向)に仮想物体を移動させることができる。また、例えばユーザが下を向いているときには、カメラ151のアップベクトルは水平に近くなっている。この状況でユーザが仮想物体を移動させると、ユーザとしては自分の見ている画像に対して下方向(つまり、水平方向)に仮想物体を移動させることができる。
[第2の実施形態]
次に、第2の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第1の実施形態では、ステップS307において、図7に示すように、仮想物体405を移動させる方法として、仮想物体405のZ軸における値が最小の点406の値を求めて、点406をXY平面上の値となるように移動させた。
それに対して、第2の実施形態では、図8(a)に示すように、仮想物体405のZ軸における値が最大の点407を求めて、点407がXY平面上の値となるように移動させるようにした。
[第3の実施形態]
次に、第3の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第1、第2の実施形態では、ステップS307において、図7、図8(a)に示すように、仮想物体405を移動させる方法として、仮想物体405のZ軸における値が最小の点406又は最大の点407の値を求めて、点406又は点407がXY平面上の値となるように移動させた。
それに対して、第3の実施形態では、図8(b)に示すように、仮想物体405のZ軸における値が最小又は最大となる以外の点408の値を求めて、点408がXY平面上の値となるように移動させるようにした。
[第4の実施形態]
次に、第4の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第1〜第3の実施形態では、ステップS307において、図7、図8に示すように、仮想物体405を移動させる方法として、仮想物体405のZ軸における点406、407又は408の値を求めて、点406、407又は408がXY平面上の値となるように移動させた。
それに対して、第4の実施形態では、図9(a)に示すように、仮想物体901の面(例えば平面902)を選択して、図9(b)に示すように、選択した平面902がXY平面上の値となるように移動させるようにした。また、面以外にも、仮想物体の線(例えば直線)を選択して、選択した線が所定の平面上の値となるように移動させてもよい。
[第5の実施形態]
次に、第5の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第5の実施形態では、第1の実施形態と比べて、移動軸の判定処理を変更している。
図10に、ステップS306の移動軸の判定処理の詳細を示す。なお、図6と同じ処理については同じ符号を付し、その説明を省略する。
第1乃至第4の実施形態では、ステップS305において仮想物体を移動させると判定した場合、ステップS306に進み、図6の処理で、成す角度の計算を毎回実行する。
それに対して、第5の実施形態では、ステップS305において仮想物体を移動させると判定した場合、ステップS306に進み、図10の処理で、まずステップS1001で、仮想物体の移動軸が決定済かどうかを判定する。その結果、移動軸が決定済みの場合は本処理を抜け、移動軸が未決定の場合だけステップS601〜S606の処理を実行し、移動軸を判定する。
[第6の実施形態]
次に、第6の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第1乃至第5の実施形態では、カメラ151のアップベクトルと、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させる。
それに対して、第6の実施形態では、カメラ151の視線ベクトルと、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させるようにした。
図3のステップS306で、仮想物体を移動させるための移動軸を判定する。位置姿勢算出部103は、図11に示すように、カメラ151の視線ベクトル1101と、世界座標系のX軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。なお、図11では、説明の簡略化のため、1台のカメラ151だけを図示する。図12(a)は視線ベクトル1101とX軸ベクトル401とが成す角度、図12(b)は視線ベクトル1101とY軸ベクトル402とが成す角度、図12(c)は視線ベクトル1101とZ軸ベクトル403とが成す角度を示す。カメラ151の視線ベクトル1101と世界座標系の各軸ベクトル401〜403とが成す角度を算出した後、成す角度の値が最も小さい軸ベクトルを判定する。第1の実施形態と同様、cosθの値が1に最も近い軸ベクトルが、成す角度の最も小さい軸ベクトルであると判定して、その軸を移動軸とする。
図13に、ステップS306の移動軸の判定処理の詳細を示す。
ステップS601で、世界座標系の各軸ベクトル(X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403)の値を取得する。
ステップS1301で、カメラ151の視線ベクトル1101の値を取得する。
ステップS1302〜S1304で、カメラ151の視線ベクトル1101と、X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。
ステップS606で、ステップS1302〜S1304において算出した成す角度を比較し、値が最も小さい軸ベクトルを判定して、その軸を移動軸とする。判定した軸ベクトルの情報はデータ記憶部102に保存する。
なお、この場合も、図14に示すように、第5の実施形態で説明したのと同様、まずステップS1001で、仮想物体の移動軸が決定済かどうかを判定するようにしてもよい。
[第7の実施形態]
次に、第7の実施形態を説明する。なお、MRシステムの構成及び基本動作は第1の実施形態と同様であり、以下では、第1の実施形態との相違点を中心に説明し、第1の実施形態との共通点についてはその説明を省略する。
第1乃至第5の実施形態では、カメラ151のアップベクトルと、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させる。また、第6の実施形態では、カメラ151の視線ベクトルと、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させる。
それに対して、第7の実施形態では、カメラ151のアップベクトル及び視線ベクトルと直交する第三のベクトルと、世界座標系の各軸ベクトルとの関係に基づいて、仮想物体を移動させるようにした。
図3のステップS306で、仮想物体を移動させるための移動軸を判定する。位置姿勢算出部103は、図15に示すように、カメラ151のアップベクトル404及び視線ベクトル1101と直交する第三のベクトル1501と、世界座標系のX軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。なお、図15では、説明の簡略化のため、1台のカメラ151だけを図示する。図16(a)は第三のベクトル1501とX軸ベクトル401とが成す角度、図16(b)は第三のベクトル1501とY軸ベクトル402とが成す角度、図16(c)は第三のベクトル1501とZ軸ベクトル403とが成す角度を示す。カメラ151の第三のベクトル1501と世界座標系の各軸ベクトル401〜403とが成す角度を算出した後、成す角度の値が最も小さい軸ベクトルを判定する。第1の実施形態と同様、cosθの値が1に最も近い軸ベクトルが、成す角度の最も小さい軸ベクトルであると判定して、その軸を移動軸とする。
図17に、ステップS306の移動軸の判定処理の詳細を示す。
ステップS601で、世界座標系の各軸ベクトル(X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403)の値を取得する。
ステップS1701で、カメラ151の第三のベクトル1501の値を取得する。
ステップS1702〜S1704で、カメラ151の第三のベクトル1501と、X軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出する。
ステップS606で、ステップS1702〜S1704において算出した成す角度を比較し、値が最も小さい軸ベクトルを判定して、その軸を移動軸とする。判定した軸ベクトルの情報はデータ記憶部102に保存する。
なお、この場合も、図18に示すように、第5の実施形態で説明したのと同様、まずステップS1001で、仮想物体の移動軸が決定済かどうかを判定するようにしてもよい。
[第8の実施形態]
第1〜第7の実施形態では、複合現実画像を生成し、表示部152に表示するMRシステムを例に説明したが、本発明は、仮想現実画像を生成し、表示部152に表示するVRシステムに適用可能である。
図19に、実施形態に係るVRシステムの機能構成を示す。なお、図1と同様の構成には同一の符号を付し、その説明を省略する。
仮想空間生成部105は、カメラ151を視点とする仮想空間を構築する。すなわち、仮想空間の世界座標は、現実空間の世界座標に合うように設定される。また、仮想空間情報を生成する。仮想空間情報とは、仮想物体のデータを含む。
仮想現実画像生成部1901は、データ記憶部102に保存されている仮想空間及び仮想空間における仮想物体の位置姿勢を用いて、視点から見える仮想現実画像を生成する。
仮想現実画像出力部1902は、仮想現実画像生成部1901で生成した仮想現実画像を表示部152に出力する。これにより、表示部152には、視点となるカメラ151の位置姿勢に応じた仮想現実画像が表示されることになる。
なお、第8の実施形態におけるワークステーション100による処理手順は、図3に示すものと同様であり、複合現実画像でなく仮想現実画像を生成、表示する点が相違する。
[第9の実施形態]
第9の実施形態では、VRシステムにおいて仮想視点を移動させる例を説明する。
VRシステムの機能構成は、第8の実施形態で説明した図19と同様である。本実施形態に係るVRシステムでは、イベント入力部106で視点を移動するイベントが発生すると、位置姿勢算出部103は、カメラ151の位置姿勢、詳しくはカメラ座標系のアップベクトル(カメラの頭頂部の向き)と、世界座標系の各軸ベクトルとの関係に基づいて、仮想視点を移動させる。ここで、仮想視点とは、図20に示すように、視点となるカメラ151を仮想的に移動させた仮想カメラ225での視点である。なお、イベントの入力方法は、第1の実施形態で述べたのと同様である。
なお、本実施形態では、カメラ151のアップベクトルを例にするが、視線ベクトルや第三のベクトルを世界座標系の各軸ベクトルと比較する形態でもよいことはいうまでもない。
図21に、第9の実施形態におけるワークステーション100による処理手順を示す。第9の実施形態におけるワークステーション100による処理手順は、複合現実画像でなく仮想現実画像を生成、表示する点、及び仮想物体でなく仮想視点を移動させる(移動軸が視点の移動を拘束する)点で図3のフローチャートと相違する。以下では、図3のフローチャートとの相違点を中心に説明し、図3のフローチャートと同様の処理には同一の符号を付して、その説明を省略する。図21のフローチャートの処理は、仮想現実画像を1画像描画するごとに繰り返し行われる。
ステップS2101で、仮想視点を移動するイベントが発生していれば、ステップS2102に進み、イベントが発生していなければ、ステップS308に進む。
ステップS2102で、各実施形態で説明したように、仮想視点を移動させるための移動軸を判定する。例えば位置姿勢算出部103は、カメラ151のアップベクトルと、世界座標系のX軸ベクトル401、Y軸ベクトル402、Z軸ベクトル403とが成す角度を算出し、成す角度の値が最も小さい軸ベクトルを判定する。その結果、例えば移動軸がZ軸と判定したとする。
ステップ2103で、位置姿勢算出部103は、仮想視点の移動を行う。図22を参照して、仮想視点の移動の例を説明する。ステップ2102において判定した軸ベクトルと平行に、すなわち移動軸がZ軸であれば、図20中の方向224にゲームコントローラを用いて仮想視点を移動させる。ゲームコントローラによる視点操作は既知であるためその説明を割愛する。移動後の仮想視点、すなわち仮想カメラ225の位置姿勢を求めて、データ記憶部102に保存する。
なお、各実施形態では、移動軸を判定した後、その移動軸と平行に仮想物体や仮想視点を移動させる例を説明したが、移動軸の判定と同様の手法で軸を判定した後、その軸に応じて定められる方向に仮想物体や仮想視点を移動させるようにしてもよい。例えば判定した軸と垂直に移動させると定められていてもよい。本実施形態の例でいえば、ステップ2102において判定した軸と垂直に、すなわち軸がZ軸であれば、図20中の方向222や方向223に仮想視点を移動させるようにしてもよい。
以上のように、例えばユーザが正面を向いているときには、カメラ151のアップベクトルは垂直に近くなっている。この状況でユーザが仮想視点を移動させると(例えばコントローラで下カーソルを押す)、ユーザとしては自分の見ている画像に対して垂直方向又は水平方向に仮想視点を移動させることができる。
また、本実施形態では自動的に仮想視点の移動方向を決定しているが、ユーザ操作により設定した移動軸に基づく方向や他のシステムが決定した方向を利用してもよい。このとき、他のシステムが決定した方向を基準として、仮想視点を平行又は垂直に移動させる。
以上述べた第1〜第9の実施形態では、HMD150を例に説明したが、本発明は、HMDを用いない場合でも適用可能である。
例えば図22に示すように、本発明を適用した情報処理装置として機能するワークステーション100と、撮像装置であるカメラ151と、表示部152となる表示装置とにより構成するようにしてもよい。
また、ステレオでの撮像及び表示を行うことに限定されるものではなく、少なくとも1つ以上のカメラ及び表示部があればよい。また、HMDを用いる場合でも、HMDにカメラが搭載されておらず、カメラが別に設置されていてもよい。また、例えば現実空間を透過する機構を備える光学式タイプでもよい。また、HMDではなく、手持ち型表示装置のHHD(Hand Held Display)を用いてもよい。
以上、本発明を実施形態と共に説明したが、上記実施形態は本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100:ワークステーション、150:頭部装着ディスプレイ、151:カメラ、152:表示部

Claims (9)

  1. 現実空間を撮像する撮像装置を視点として空間に仮想物体を重ねた複合現実画像を生成し、表示部に表示する情報処理装置であって、
    前記撮像装置のアップベクトル又は視線ベクトルと、前記空間の世界座標系を構成する軸の各軸ベクトルとが成す角度に基づいて、前記軸のうち、前記仮想物体移動を拘束する移動軸を設定する設定手段と、
    前記設定手段で設定した軸に応じて定められる方向に、前記仮想物体仮想的に移動させる移動手段とを備えることを特徴とする情報処理装置。
  2. 前記設定手段は、前記空間の世界座標系の各軸ベクトルのうち、前記撮像装置のアップベクトルと成す角度が最も小さい軸ベクトルを特定し、その軸を移動軸に設定することを特徴とする請求項に記載の情報処理装置。
  3. 前記設定手段は、前記空間の世界座標系の各軸ベクトルのうち、前記撮像装置の視線ベクトルと成す角度が最も小さい軸ベクトルを特定し、その軸を移動軸に設定することを特徴とする請求項に記載の情報処理装置。
  4. 前記表示部は頭部装着ディスプレイであることを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  5. 前記撮像装置は前記頭部装着ディスプレイに搭載されていることを特徴とする請求項に記載の情報処理装置。
  6. 前記移動手段は、前記仮想物体所定の面まで移動させることを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  7. 前記移動手段は、前記仮想物体の点、線、又は面が前記所定の面上の値となるように移動させることを特徴とする請求項に記載の情報処理装置。
  8. 現実空間を撮像する撮像装置を視点として空間に仮想物体を重ねた複合現実画像を生成し、表示部に表示する情報処理方法であって、
    前記撮像装置のアップベクトル又は視線ベクトルと、前記空間の世界座標系を構成する軸の各軸ベクトルとが成す角度に基づいて、前記軸のうち、前記仮想物体移動を拘束する移動軸を設定するステップと、
    前記設定した軸に応じて定められる方向に、前記仮想物体仮想的に移動させるステップとを有することを特徴とする情報処理方法。
  9. 現実空間を撮像する撮像装置を視点として空間に仮想物体を重ねた複合現実画像を生成し、表示部に表示するためのプログラムであって、
    前記撮像装置のアップベクトル又は視線ベクトルと、前記空間の世界座標系を構成する軸の各軸ベクトルとが成す角度に基づいて、前記軸のうち、前記仮想物体移動を拘束する移動軸を設定する設定手段と、
    前記設定手段で設定した軸に応じて定められる方向に、前記仮想物体仮想的に移動させる移動手段としてコンピュータを機能させるためのプログラム。
JP2016077570A 2015-10-22 2016-04-07 情報処理装置、方法及びプログラム Active JP6800599B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015207968 2015-10-22
JP2015207968 2015-10-22

Publications (3)

Publication Number Publication Date
JP2017084323A JP2017084323A (ja) 2017-05-18
JP2017084323A5 JP2017084323A5 (ja) 2019-05-16
JP6800599B2 true JP6800599B2 (ja) 2020-12-16

Family

ID=58711013

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016077570A Active JP6800599B2 (ja) 2015-10-22 2016-04-07 情報処理装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6800599B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102374404B1 (ko) * 2017-07-25 2022-03-15 삼성전자주식회사 콘텐트를 제공하기 위한 디바이스 및 방법
CN110827412A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 自适应平面的方法、装置和计算机可读存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2782428B2 (ja) * 1995-10-19 1998-07-30 株式会社エイ・ティ・アール通信システム研究所 仮想物体操作装置
JP2004252815A (ja) * 2003-02-21 2004-09-09 Dainippon Screen Mfg Co Ltd 画像表示装置、画像表示方法およびプログラム
JP2005107972A (ja) * 2003-09-30 2005-04-21 Canon Inc 複合現実感提示方法、複合現実感提示装置
KR100679039B1 (ko) * 2005-10-21 2007-02-05 삼성전자주식회사 3차원 그래픽 유저 인터페이스, 이를 제공하는 장치 및방법
JP5627973B2 (ja) * 2010-09-24 2014-11-19 任天堂株式会社 ゲーム処理をするためのプログラム、装置、システムおよび方法
JP5829771B1 (ja) * 2015-03-24 2015-12-09 グリー株式会社 ゲームプログラム、コンピュータの制御方法、およびコンピュータ

Also Published As

Publication number Publication date
JP2017084323A (ja) 2017-05-18

Similar Documents

Publication Publication Date Title
CN110383343B (zh) 不一致检测系统、混合现实系统、程序和不一致检测方法
EP2779113B1 (en) Information processing device, display control method, and program
US9607439B2 (en) Information processing apparatus and information processing method
US10469829B2 (en) Information processor and information processing method
JP3944019B2 (ja) 情報処理装置および方法
JP6643170B2 (ja) 作業支援システム及び方法
JP5709440B2 (ja) 情報処理装置、情報処理方法
US20130215230A1 (en) Augmented Reality System Using a Portable Device
US10360444B2 (en) Image processing apparatus, method and storage medium
JP2020182251A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2011028309A5 (ja)
JP2007042055A (ja) 画像処理方法、画像処理装置
JP2017187667A (ja) 頭部装着型表示装置およびコンピュータープログラム
JP2019008623A (ja) 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体
WO2019013204A1 (ja) 情報を提示する情報処理装置、情報処理方法及びプログラム
JP2018106661A (ja) 不整合検出システム、複合現実システム、プログラム及び不整合検出方法
JP2017108370A (ja) 頭部装着型表示装置およびコンピュータープログラム
JP6295296B2 (ja) 複合システム及びターゲットマーカ
JP6800599B2 (ja) 情報処理装置、方法及びプログラム
JP2022058753A (ja) 情報処理装置、情報処理方法及びプログラム
JP2013008257A (ja) 画像合成プログラム
US20170300121A1 (en) Input/output device, input/output program, and input/output method
JP6726016B2 (ja) 情報処理装置、情報処理方法
JP2008217119A (ja) システム、画像処理装置、画像処理方法
JP4689344B2 (ja) 情報処理方法、情報処理装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190401

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190401

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200731

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201027

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201125

R151 Written notification of patent or utility model registration

Ref document number: 6800599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151