(57)【要約】【課題】短時間に三次元仮想物体の位置姿勢を正確に設定する。【解決手段】情報処理装置は、現実物体の形状に対応する面である基準面を取得し、三次元仮想物体の面のうち、一つの面を対応面として選択し、基準面と対応面とが所定の位置関係になるように三次元仮想物体の位置姿勢を設定し、基準面の移動に応じて、三次元仮想物体の位置を移動し、移動された結果に基づいて、外部からの指示により三次元仮想物体の位置を決定する。【選択図】図１
2020009464.tif 000002
【特許請求の範囲】
【請求項１】
現実物体の形状に対応する面である基準面を取得する取得手段と、
三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、
前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定手段と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、
前記移動手段によって移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記取得手段は、前記現実物体の形状を近似する面を前記基準面として取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得手段は、前記現実物体の輪郭線のサンプリング点を含む平面を前記基準面として算出することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記選択手段は、前記三次元仮想物体の面のうち、前記基準面との距離が最も短い面である面を前記対応面として選択することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記選択手段は、前記三次元仮想物体のバウンディングボックスを作成し、該バウンディングボックスの面のうち、前記基準面の各頂点との距離が最も短い面を前記対応面として選択することを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記設定手段は、前記基準面と前記対応面た平行に交差するように前記三次元仮想物体の位置姿勢を設定することを特徴とする請求項１から５のいずれか１項に記載の情報処理装置。
【請求項７】
前記設定手段は、前記三次元仮想物体を回転移動させることにより前記位置姿勢を設定することを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記三次元仮想物体は他の現実物体を模したものであり、前記移動手段は該他の現実物体の輪郭線と一致するように前記三次元仮想物体の位置を移動することを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記他の現実物体と前記三次元仮想物体との相対位置を固定する固定手段を更に有することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
観察者の視点の位置姿勢に基づいて、前記三次元仮想物体に基づいた画像を表示する表示手段を更に有することを特徴とする請求項１から９に記載の情報処理装置。
【請求項１１】
前記表示手段は、現実空間の画像を撮像する撮像手段を備え、前記撮像手段によって撮像された前記現実空間の画像に、前記三次元仮想物体の画像を重畳して表示することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記取得手段は、前記現実物体を前記撮像手段によって撮像された複数の画像から、前記基準面を作成して取得することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
現実物体の形状に対応する面である基準面を取得する取得工程と、
三次元仮想物体の面のうち、一つの面を対応面として選択する選択工程と、
前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定工程と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動工程と、
前記移動工程において移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定工程と、
を有することを特徴とする情報処理方法。
【請求項１４】
請求項１乃至請求項１２のいずれか１項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複合現実感提示システムにおいて、三次元空間上での仮想物体の位置姿勢情報を設定する技術に関する。
【背景技術】
【０００２】
CADデータなどの仮想的な三次元モデル（以後、三次元仮想物体と呼ぶ）を三次元空間上に配置する方法を考える。従来方法では、観察者はまず、ディスプレイ等の二次元画面に三次元仮想物体を二次元画像として投影し、擬似的な三次元空間上でキーボード等を用いて物体の位置姿勢の操作を行い、三次元仮想物体の配置を設定していた。しかし、この方法では、二次元画像への投影時に、三次元仮想物体の情報が欠落してしまい、三次元仮想物体を直観的に操作し、配置を設定することが難しい場合がある。この問題を解決するために、複合現実感（Mixed Reality:MR)技術（例えば、特許文献1）を用いて、三次元仮想物体を三次元空間上で操作して配置する方法が試みられている。
【０００３】
三次元仮想物体を三次元の現実空間内で操作する方法の例としては、6自由度位置姿勢計測装置（例えば、Polhemus社のFASTRAKセンサのスタイラス）を用いる方法がある。この方法では、観察者は、6自由度位置姿勢計測装置から出力される位置姿勢変化分を取り出し、その変化分を三次元仮想物体の移動回転量として三次元仮想物体の配置を設定する（特許文献1）。図4は、観察者が従来の操作方法を行う様子を示す模式図である。図4では、観察者が6自由度位置姿勢計測装置を手に持ち、これを同図矢印の如く回転、移動させると、この回転、移動を三次元仮想物体に反映させている状態が示されている。
【０００４】
観察者に提示する手段としては、HMD（Head Mounted Display)などが用いられる。このHMDにより、観察者は、現実空間と三次元仮想物体との位置関係を容易に把握し、三次元仮想物体の配置の設定を行うことが出来る。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−６２７５８号公報
【非特許文献】
【０００６】
【非特許文献１】林建一，加藤博一，西田正吾，“境界線ベースステレオマッチングを用いた実物体と三次元仮想物体の前後判定”，日本バーチャルリアリティ学会論文誌，Ｖｏｌ．１０，Ｎｏ．３，ｐｐ．３７１−３８０，２００５
【発明の概要】
【発明が解決しようとする課題】
【０００７】
観察者が、現実物体と現実物体の形状を模した三次元仮想物体の配置が同じになるように、三次元仮想物体の位置姿勢を設定しよう場合を考える。このとき、6自由度位置姿勢計測装置と現実物体の交差が、面ではなく点であるために、姿勢が一意に定まらず短時間で正確に三次元仮想物体の位置姿勢を設定することは難しい。
【０００８】
本発明は、このような課題に鑑みてなされたものであり、短時間に三次元仮想物体の位置姿勢を正確に設定することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するための一手段として、本発明による情報処理装置は以下の構成を有する。すなわち、現実物体の形状に対応する面である基準面を取得する取得手段と、三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定手段と、前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、前記移動手段によって移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定手段と、を有する。
【発明の効果】
【００１０】
本発明によれば、短時間に三次元仮想物体の位置姿勢を正確に設定することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】情報処理装置の機能構成を示すブロック図。
【図２】実施形態1に係る情報処理装置の機能構成を示す模式図。
【図３】実施形態1に係る処理の手順を示すフローチャート。
【図４】従来の操作方法を行っている様子を示す模式図。
【図５】手に対して基準面及び基準面座標系が定義されている様子を示す模式図。
【図６】基準面位置姿勢の推定の詳細な処理の手順を示すフローチャート。
【図７】手の輪郭のサンプリング点を示す模式図。
【図８】基準面と三次元仮想物体が交差しているか判定する詳細な処理の手順を示したフローチャート。
【図９】三次元仮想物体205のバウンディングボックス901の例を示した図。
【図１０】交差したバウンディングボックス面を基準面に平行に交差させる詳細な処理の手順を示すフローチャート。
【図１１】バウンディングボックス901と基準面501に平行に交差している様子を示す模式図。
【図１２】基準面と仮想物体面の相対位置姿勢の推定の詳細な処理の手順を示すフローチャート。
【図１３】基準面座標系502の変化に合わせて三次元仮想物体2050を描画している様子を表している図。
【図１４】実施形態2に係る情報処理装置の機能構成を示すブロック図。
【図１５】実施形態2に係る情報処理装置の機能構成を示す模式図。
【図１６】実施形態2に係る処理の手順を示すフローチャート。
【図１７】情報処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図。
【発明を実施するための形態】
【００１２】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。以下の実施形態における情報処理装置は、コンピュータグラフィクス等による仮想画像を現実の空間に融合させて観察者に提示する複合現実感提示システムにおいて、三次元空間上での仮想物体の位置姿勢情報を設定することが可能な情報処理装置である。
【００１３】
［実施形態１］
＜構成＞
図1は、本実施形態における情報処理装置の機能構成を示すブロック図である。また、図2は、本実施形態における情報処理装置の模式図であり、図17は、情報処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図である。本実施形態では、図2に示すように、撮像部201、表示部202、撮像部位置姿勢取得部211は、HMD(Head Mounted Display)200に取り付けられ、各々はHMD200の本体に固定されている。撮像部201と表示部202は各々２つずつHMD200の本体に設けられており、撮像部201R、表示部202Rは右目用、撮像部201L、表示部202Lは左目用である。以下、特に右目用、左目用に限定する説明出ない限りでは、R,Lを省略する（すなわち、以下、撮像部201、表示部は202とする）。観察者は、このHMD200を頭部に装着することにより、表示部202に映る実写映像に記憶部104から入力した三次元仮想物体205が重畳された画像（以下、MR画像とする）を見ることが出来る。
【００１４】
撮像画像取得部101は、撮像部201において撮像された撮像画像を、画像データとして取得する。撮像部位置姿勢取得部211は、撮像部201の位置姿勢を計測した結果から、観察者の視点位置姿勢の推定を行う。本実施形態では、撮像部位置姿勢取得部211として、磁気センサが用いられる。撮像部位置姿勢取得部211は、現実空間上に配置された磁界発生装置210から発生した磁界を受け、受けた磁界の変化をセンサコントローラ209に送る。
【００１５】
センサコントローラ209は、磁界発生装置210を原点とする基準座標系206における撮像部位置姿勢取得部211の位置姿勢を求める。ここで「位置姿勢を求める」処理とは、以下のような処理である。すなわち、まず、センサコントローラ209は、撮像部位置姿勢取得部211によって計測された位置姿勢の変化分を用いて、位置姿勢変換行列ΔMRを生成する。その後、センサコントローラ209は、前フレームの撮像部位置姿勢取得部211の位置姿勢（三次元配置情報）を示す行列MRにΔMRを積算することで、次のフレームにおける撮像部位置姿勢取得部211の位置姿勢を示す行列MR'を以下の（式1）の通り求める。
（式1）
2020009464.tif 000003
【００１６】
なお、撮像部位置姿勢取得部211の位置姿勢を示す行列MR'、位置変化成分を示す行列Wt、姿勢変化成分を示す行列Wrは各々、4×4の行列である。センサコントローラ209は、行列MRの初期値として、あらかじめ撮像部位置姿勢取得部211の初期位置姿勢を記憶している。位置姿勢変換行列ΔMRは、行列Wt、Wrを用いて算出される行列である。行列Wtと行列Wrは、撮像部位置姿勢取得部211からの出力として得られる。
（式2）
2020009464.tif 000004
（式3）
2020009464.tif 000005
（式4）
2020009464.tif 000006
（式2）は行列Wt（基準座標系206に対する姿勢を表す3×3回転行列を含む行列）、（式3）は行列Wr（基準座標系206に対する位置を表す3次元ベクトルを含む行列）を示す式である。行列Wtと行列Wrにおける各成分は周知の通り、撮像部位置姿勢取得部211による位置姿勢の計測値に基づいて決まるものである。
【００１７】
センサコントローラ209は、基準座標系206に対する撮像部位置姿勢取得部211の位置姿勢MR'を、ワークステーション203に出力する。ワークステーション203は、（式5）のように、既知である撮像部位置姿勢取得部211と撮像部201との位置姿勢行列MLを用いて座標変換を行い、撮像部座標系208に対する位置姿勢を表す行列MCを求める。
（式5）
2020009464.tif 000007
【００１８】
なお、撮像部位置姿勢取得部211に適用可能なセンサは、磁気センサに限定されず、他の種類のセンサでもよい。例えば、光学センサ、超音波センサ、慣性センサであってもよい。また、画像処理による撮像部位置姿勢計測など、撮像部の位置姿勢を計測できるものであれば、撮像部位置姿勢取得部211に適応可能である。
【００１９】
基準面位置姿勢推定部103は、撮像画像取得部101が取得した一枚以上のステレオ画像中から、手212を含む空間の形状を求める。手の領域を検出し輪郭線の三次元形状を推定するための技術は周知であり、例えば、非特許文献１に開示されている技術が用いられる。この方法によれば、基準面位置姿勢推定部103は、キーフレームとの差分によって物体領域を検出し、物体領域の境界線のステレオマッチングを行う。基準面位置姿勢推定部103は、マッチングした境界線について、三角測量により撮像部201（カメラ）から当該境界線までの距離を求める。その後、基準面位置姿勢推定部103は、基準座標系206における撮像部201の位置姿勢を推定し、基準座標系206における当該境界線の位置姿勢を求める。基準面位置姿勢推定部103は、更に、当該境界線の位置姿勢に基づいて、近似平面である基準面501を求める。図5に、基準面位置姿勢推定部103が求めた基準面501の例を示す。三次元仮想物体選択部102は、入力部109から、対象の三次元仮想物体205を選択する入力が行われたかを判定する。
【００２０】
記憶部104は、ワークステーション203により計測されたモックアップ204の形状に模して得られた三次元仮想物体205のデータ（配置情報、形状情報等）を記憶する。記憶する三次元仮想物体205のデータは、頂点三次元位置情報、座標変換用の4×4行列（基準座標系206からの位置姿勢行列MCGと呼ぶ）などから構成される。また、記憶部104は、基準座標系206における三次元仮想物体座標系207の位置姿勢の初期値を記憶する。記憶部104は、記憶した初期値を、三次元仮想物体205を基準座標系206に配置するための位置情報として、交差面判定部105へ入力する。記憶部104は、また、三次元仮想物体選択部102において対象の三次元仮想物体205が選択されているかの判定結果を記憶し、三次元仮想物体配置固定部110へ判定結果を入力する。記憶部104は、ハードウェア構成として、図17に示す外部記憶装置17070に限らず、任意の場所にデータを記憶することが出来る。
【００２１】
交差面判定部105は、基準面位置姿勢推定部103から得られる基準面501と、記憶部104に記憶されている三次元仮想物体205のデータに基づいて、基準面501と三次元仮想物体205が、所定の位置関係の一例として、交差しているかを判定する。相対位置姿勢推定部106は、基準面501の持つ基準面座標系502と、三次元仮想物体205の持つ三次元仮想物体座標系207の位置姿勢を其々求め、二つの座標系の相対的な位置姿勢を求める。
【００２２】
三次元仮想物体位置姿勢推定部107は、基準座標系206における三次元仮想物体205の位置姿勢を推定する。基準面座標系502の位置姿勢行列MSP、相対位置姿勢変換行列ΔMreを用いて、基準座標系206における三次元仮想物体205の位置姿勢MCG'は、以下の（式6）により求められる。
（式6）
2020009464.tif 000008
【００２３】
画像合成部108は、撮像画像取得部101が取得した撮像画像に、三次元仮想物体205を重ねる。このとき、画像合成部108は、撮像部201の位置姿勢情報と、三次元仮想物体205の位置姿勢情報とを用いて、撮像部201からの視点における三次元仮想物体205を合成する。入力部109は、キーボード17040やマウス17050、ゲームパッド等の入力機器からワークステーション203への入力があったとき、三次元仮想物体選択部102へ入力があったことを伝える。
【００２４】
三次元仮想物体配置固定部110は、入力部109からの入力に応じて、撮像画像取得部101から撮像画像を受け取る。三次元仮想物体配置固定部110は、撮像画像と三次元仮想物体205を2次元平面に投影し、撮像画像に撮像されているモックアップ204とのフィッティングを三次元仮想物体205の位置姿勢を変化させながら行う。フィッティングは、公知の方法で行われる。例えば、仮想物体から抽出される特徴と、撮像画像に含まれるモックアップの特徴とを一致させるようすればよい。フィッティング終了後、三次元仮想物体配置固定部110は、三次元仮想物体205の位置姿勢MCG'を算出する。三次元仮想物体配置固定部110は、算出した位置姿勢MCG'を外部記憶装置17070に記憶し、基準座標系206における三次元仮想物体座標系207の変換行列MCGに、算出した位置姿勢MCG'を代入する。
【００２５】
＜処理の手順＞
本実施形態における処理の手順を図3のフローチャートを参照して説明する。ステップS301において、撮像画像取得部101は、撮像部201にて撮像された画像を取得する。ステップS302において、撮像部位置姿勢取得部211は、基準座標系206における撮像部位置姿勢取得部211の位置姿勢を表す行列MR'を求める。その後、ワークステーション203は、（式5）を用いて撮像部座標系208の位置姿勢を表す行列MCを求める。
【００２６】
ステップS303において、三次元仮想物体配置固定部110は、入力部109からの入力に応じて、記憶部104で記憶されている位置姿勢行列MCGを用いて三次元仮想物体205を基準座標系206に配置する。ステップS304において、記憶部104は、三次元仮想物体選択部102から、位置姿勢を設定する対象の三次元仮想物体205を選択するための操作（入力）が行われたかどうかを調べる。対象の三次元仮想物体205の選択するための操作が行われた場合は、処理はステップS305へ移る。一方、選択するための操作が行われていない場合は、処理はステップS301へ移る。
【００２７】
ステップS305において、撮像画像取得部101は、撮像部201から取得した撮像画像を基準面位置姿勢推定部103に入力し、基準面位置姿勢推定部103は、基準面501の位置姿勢を推定する。図6は、基準面501の位置姿勢推定ステップS305の、詳細な処理手順を示すフローチャートである。図6に示す処理手順は、非特許文献１に記載の手法に基づく。また、図7は、手212の領域から抽出された輪郭線のサンプリング点701を模した図である。サンプリング点701は、撮像部座標系208における三次元位置の情報を持つ。
【００２８】
図6のステップS601において、基準面位置姿勢推定部103は、手212の三次元空間中の輪郭線の位置姿勢を推定し、サンプリング点701の三次元位置を推定する。
【００２９】
ステップS602において、基準面位置姿勢推定部103は、最小二乗近似による無限平面の数式モデルを用いてサンプリング点701を含む近似平面を算出する。平面の式をax + by + cz = 1とし、これをベクトル演算で表現すると、（式7）のように表される。
（式7）
2020009464.tif 000009
求める近似平面上に存在する点は（式7）が成り立つ。（式7）に基づき、入力されたn個の点群がすべて近似平面上にあると仮定すると、（式8）が成り立つ。
（式8）
2020009464.tif 000010
ここで、この式を、
（式9）
2020009464.tif 000011
とおく。この（式9）のXの一般化逆行列を求めることで、近似平面の数式モデルのパラメータであるp(a, b, c)が求められる。ここで、（式9）のXの一般化逆行列をX+とすると
（式10）
2020009464.tif 000012
となり、
（式11）
2020009464.tif 000013
となる。
【００３０】
この（式11）によって、入力点群から近似平面の数式モデルのパラメータp(a, b, c)が求められる。サンプリング点701を（式11）のXの行列に設定し、（式11）の計算結果から近似平面の数式モデルのパラメータp(a, b, c)を求める。ここで、得られたパラメータp(a, b, c)を（式7）に代入することにより、近似平面の数式が得られる。なお、近似平面を求める手法として、最小二乗近似による手法に限るものではなく、他の手法であっても適用可能である。
【００３１】
ステップS603において、基準面位置姿勢推定部103は、手212の輪郭線の三次元形状に外接する直方体を求め、ステップS602で求めた近似平面との交線を求めて手212の平面領域を決定し、この平面領域を基準面501とする。まず、基準面位置姿勢推定部103は、輪郭線の三次元形状に外接する直方体として、三次元形状を構成するサンプリング点701が取り得るX座標値、Y座標値、Z座標値の最大値と最小値を用いて構成する6平面の式を算出する。基準面位置姿勢推定部103は、算出した6平面とステップS602で求めた近似平面との交線を求めて、直方体の表面に乗る線分を記録することができる。さらに、基準面位置姿勢推定部103は、求めた複数の線分の交点を、近接する平面領域の基準面頂点504A〜504Dとし、これらの基準面頂点から基準面501を構成する。このとき、基準面501の任意の頂点を原点とし基準面座標系502を定義する。また、撮像部座標系208から基準面座標系502への座標変換行列をMCSPとおく。
【００３２】
なお、本実施形態では、平面領域を設定するために、基準面位置姿勢推定部103は、外接する直方体を求めて、当該直方体と近似平面との交線から平面領域（基準面501）を求めた。しかしながら、この手法に限定されるものではなく、基準面位置姿勢推定部103は、手212の輪郭線の三次元形状を用いて、手のひらの平面領域を算出してもよい。
【００３３】
図3に戻り、ステップS306において、相対位置姿勢推定部106は、ステップS305で推定された基準面501と三次元仮想物体205との相対位置姿勢を推定する。ステップS307において、交差面判定部105は、ステップS305で推定された基準面501が三次元仮想物体205と交差しているかを判定する。図8は、交差面判定部105が基準面501と三次元仮想物体が交差しているかを判定するステップS307の、詳細な処理手順を示すフローチャートである。
【００３４】
図8のステップS801では、交差面判定部105は、三次元仮想物体205のバウンディングボックスを作成する。三次元仮想物体205のバウンディングボックスを作成する手法として、例えば、三次元仮想物体205を構成する三次元点をすべて含むような直方体を作成する方法がある。図9は、三次元仮想物体205のバウンディングボックス901の例を示したものである。
【００３５】
ステップS802において、交差面判定部105は、バウンディングボックス901と基準面501とが交差しているかを判定する。具体的には、バウンディングボックス901の各点と、基準面501を構成する長方形の角点の基準座標系206における位置とを比較する。まず、交差面判定部105は、バウンディングボックス901の基準座標系206におけるX軸、Y軸、Z軸の最大値、最小値を求める。交差面判定部105は、基準面501についても、基準座標系206におけるX軸、Y軸、Z軸の最大値、最小値を求める。交差面判定部105は、各軸に対してバウンディングボックス901の最大値から最小値の範囲内に基準面501の最大値、最小値が含まれているかを算出する。含まれていたら交差面判定部105は、交差していると判定する。交差していると判定された場合ステップS803へ処理を移す。交差していないと判定された場合、処理フローを終了する。ただし、バウンディングボックス901の面と基準面501の交差を判定するアルゴリズムはこの方法に限定されるものではなく、他の方法で交差を判定しても良い。
【００３６】
ステップS803において、交差面判定部105は、S802において交差していると判定されたバウンディングボックス901の面を基準面501にフィッティングする。図10は、交差面判定部105がバウンディングボックス901の面を基準面501にフィッティングする（平行に交差させる）ステップS803の、詳細な処理手順を示すフローチャートである。
【００３７】
図10のステップS1001において、交差面判定部105は、バウンディングボックス901の各面と基準面頂点504A〜504Dとの距離を算出し、基準面頂点504A〜504Dから面までの距離の平均値をとる。ステップS1002において、交差面判定部105は、バウンディングボックス901の各面について、基準面頂点504A〜504Dとの距離の平均値を求める。最も距離が短い面を対応面901Aとする。ステップS1003において、交差面判定部105は、対応面901Aと基準面501と平行に交差するように三次元仮想物体205を回転移動させる。図11に、移動した結果、バウンディングボックス901と基準面501が平行に交差している様子を示す。
【００３８】
図3に戻り、ステップS307における上記処理の結果、基準面501と三次元仮想物体205が交差した場合、処理はステップS308へ移る。一方、交差しなかった場合、処理はステップS301へ戻る。ステップS308において、三次元仮想物体位置姿勢推定部107は、ステップS306で推定された基準面501と三次元仮想物体205との相対的な位置姿勢と、ステップS305で推定された基準面501の位置姿勢から、三次元仮想物体205の位置姿勢を推定する。図12は、三次元仮想物体位置姿勢推定部107が基準面501と三次元仮想物体205との相対位置姿勢を推定するステップS308の、詳細な処理手順を示すフローチャートである。
【００３９】
図12のステップS1201において、三次元仮想物体位置姿勢推定部107は、基準座標系206における基準面座標系502の位置姿勢を推定する。具体的には、三次元仮想物体位置姿勢推定部107は、以下の（式12）により、基準座標系206における基準面座標系502の位置姿勢行列MSPを推定する。なお、行列MCSPは、撮像部座標系208から基準面座標系502への座標変換行列である。
（式12）
2020009464.tif 000014
【００４０】
ステップS1202において、三次元仮想物体位置姿勢推定部107は、ステップS1201で求めた基準面座標系502の座標変換行列MSPと基準座標系206における三次元仮想物体座標系207の座標変換行列MCGを用いて（式13）のように、以下の通り相対的な位置姿勢行列Mreを算出する。
（式13）
2020009464.tif 000015
【００４１】
図13は、推定された位置姿勢を用いて三次元仮想物体205を描画した図である。図13では、基準面501の変化に合わせて三次元仮想物体205を描画されている様子が表されている。図13から、三次元仮想物体205と基準面501との位置姿勢が保たれた状態で三次元仮想物体205が移動していることがわかる。
【００４２】
図3に戻り、ステップS309において、三次元仮想物体配置固定部110が入力部109からの入力情報を参照し、三次元仮想物体205の配置の決定が入力された場合は、処理はステップS310へ移る。ここでは、三次元仮想物体205の輪郭線が、モックアップ204の輪郭線と一致するように、配置が行われ、三次元仮想物体205の位置が決定される。一方、配置の決定が入力されていない場合は、処理はステップS301へ移る。ステップS310において、三次元仮想物体配置固定部110は、算出した三次元仮想物体座標系207の位置姿勢を記憶部104に記憶し、更に、三次元仮想物体座標系207の位置姿勢に代入する。
【００４３】
ステップS311において、本処理の終了指示が入力された、もしくは本処理を終了する条件が満たされた場合には本処理を終了する。一方、本処理の終了指示は入力されておらず、本処理を終了する条件も満たされていない場合は、処理はステップS301へ移る。
【００４４】
以上のように、本実施形態における情報処理装置は、現実物体と該現実物体の形状を模した三次元仮想物体の配置が同じになるように三次元仮想物体の位置姿勢を設定する。このとき、情報処理装置は、三次元空間中で位置姿勢を計測出来る他の現実物体を用いて三次元仮想物体を操作する。該現実物体と該他の現実物体がいずれも現実の物体であるため、現実物体同士を面で交差させることにより、三次元仮想物体の姿勢を一意に定めることが出来る。これにより、正確、かつ、短時間に三次元仮想物体の位置姿勢を設定することが可能となる。
【００４５】
［実施形態２］
実施形態１では、基準座標系206におけるモックアップ204の位置は計測されていない。このため、ステップS310において三次元仮想物体205の位置姿勢を固定した後、観察者がモックアップ204を移動させると三次元仮想物体205とずれてしまう。そこで、実施形態２として、モックアップにモックアップ座標系1501を定義する形態を説明する。本実施形態では、3次元空間内をモックアップ204が回転・移動するのに合わせて、三次元仮想物体205が回転・移動してもよい。
【００４６】
図14は、本実施形態における機能構成を示すブロック図である。図1と同じ部分については同じ番号をつけており、その説明を省略する。図15は、本実施形態における情報処理装置の構成の模式図である。図2と同じ部分については同じ番号をつけており、その説明を省略する。
【００４７】
モックアップ位置姿勢推定部1401は、モックアップ位置姿勢取得部1502で取得された位置姿勢から、基準座標系206におけるモックアップ座標系1501の位置姿勢を推定する。相対位置姿勢固定部1402は、三次元仮想物体座標系207とモックアップ座標系1501の相対位置姿勢を算出し、相対位置姿勢を記憶部104へ記憶する。
【００４８】
図16は、本実施形態における処理の手順を示すフローチャートである。図3と同じ部分については同じ番号をつけており、その説明を省略する。ステップS1601において、三次元仮想物体配置固定部110は、三次元仮想物体座標系207の位置姿勢を推定する。ステップS1602において、モックアップ位置姿勢取得部1502は、モックアップ座標系1501の基準座標系206における位置姿勢を取得する。本実施形態では、説明を簡単にするため、モックアップ座標系1501の位置姿勢は、モックアップ位置姿勢取得部1502で得られる位置姿勢と同一であるとする。モックアップ位置姿勢取得部1502は、取得したモックアップ座標系1501と三次元仮想物体座標系207との相対位置姿勢を算出する。
【００４９】
ステップS1603において、相対位置姿勢固定部1402は、モックアップ座標系1501に対してS1602で求めた相対位置姿勢を積算した結果を、三次元仮想物体座標系207の位置姿勢に代入する。これにより、モックアップ204と三次元仮想物体205との相対位置姿勢が固定される。ステップS1604において、記憶部104は、入力部109からの入力情報を参照し、相対位置姿勢を固定すると選択する操作（入力）が行われているかどうかを調べる。相対位置姿勢を固定すると選択する操作が行われた場合は、処理はステップS1603へ移る。一方、相対位置姿勢を固定すると選択する操作が行われていない場合は、処理はステップS301へ移る。
【００５０】
以上のように、本実施形態における情報処理装置は、3次元空間内をモックアップ204が回転・移動したとき、モックアップ座標系1501に対してステップS1604で算出した相対位置姿勢を積算する。これにより、情報処理装置は、三次元仮想物体座標系207の位置姿勢を求めることが可能となる。
【００５１】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５２】
101  撮像画像取得部、  102  三次元仮想物体選択部、  104  記憶部、  105  交差面判定部、  106  相対位置姿勢推定部、  107  三次元仮想物体位置姿勢推定部、  108  画像合成部、  109  入力部、  110  三次元仮想物体配置固定部、  200  HMD、  201  撮像部、  202  表示部、203  ワークステーション、  204  モックアップ、  205  三次元仮想物体、  206  基準座標系、  207  三次元仮想物体座標系、  208  撮像部座標系、  209  センサコントローラ、  210  磁界発生装置、  211  撮像部位置姿勢取得部、  212  手
【図１】
2020009464.tif 000016
【図２】
2020009464.tif 000017
【図３】
2020009464.tif 000018
【図４】
2020009464.tif 000019
【図５】
2020009464.tif 000020
【図６】
2020009464.tif 000021
【図７】
2020009464.tif 000022
【図８】
2020009464.tif 000023
【図９】
2020009464.tif 000024
【図１０】
2020009464.tif 000025
【図１１】
2020009464.tif 000026
【図１２】
2020009464.tif 000027
【図１３】
2020009464.tif 000028
【図１４】
2020009464.tif 000029
【図１５】
2020009464.tif 000030
【図１６】
2020009464.tif 000031
【図１７】
2020009464.tif 000032
【手続補正書】
【提出日】令和1年10月11日(2019.10.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
現実空間上に基準面を設定する設定手段と、
三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、
前記基準面と前記対応面とが所定の位置関係になるように関連付ける関連付け手段と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記設定手段は、前記現実空間上の現実物体の形状を近似する面を前記基準面として設定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記設定手段は、前記現実空間上の現実物体の輪郭線のサンプリング点を含む平面を前記基準面として算出することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記選択手段は、前記三次元仮想物体の面のうち、前記基準面との距離が最も短い面である面を前記対応面として選択することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記選択手段は、前記三次元仮想物体のバウンディングボックスを作成し、該バウンディングボックスの面のうち、前記基準面の各頂点との距離が最も短い面を前記対応面として選択することを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記関連付け手段は、前記基準面と前記対応面とが平行に交差するように関連付けることを特徴とする請求項１から５のいずれか１項に記載の情報処理装置。
【請求項７】
前記関連付け手段は、前記三次元仮想物体を回転移動させることにより関連付けることを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記三次元仮想物体は他の現実物体を模したものであり、前記移動手段は該他の現実物体の輪郭線と一致するように前記三次元仮想物体の位置を移動することを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記他の現実物体と前記三次元仮想物体との相対位置を固定する固定手段を更に有することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
観察者の視点の位置姿勢に基づいて、前記三次元仮想物体に基づいた画像を表示する表示手段を更に有することを特徴とする請求項１から９に記載の情報処理装置。
【請求項１１】
前記表示手段は、現実空間の画像を撮像する撮像手段を備え、前記撮像手段によって撮像された前記現実空間の画像に、前記三次元仮想物体の画像を重畳して表示することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記設定手段は、前記現実空間上の現実物体を前記撮像手段によって撮像された複数の画像から、前記基準面を作成して設定することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
現実空間上に基準面を設定する設定工程と、
三次元仮想物体の面のうち、一つの面を対応面として選択する選択工程と、
前記基準面と前記対応面とが所定の位置関係になるように関連付ける関連付け工程と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動工程と、
を有することを特徴とする情報処理方法。
【請求項１４】
請求項１乃至請求項１２のいずれか１項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
上記目的を達成するための一手段として、本発明による情報処理装置は以下の構成を有する。すなわち、現実空間上に基準面を設定する設定手段と、三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、前記基準面と前記対応面とが所定の位置関係になるように関連付ける関連付け手段と、前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、を有する。