JP6581348B2 - Information processing apparatus, information processing method, and program - Google Patents

Information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JP6581348B2
JP6581348B2 JP2014237015A JP2014237015A JP6581348B2 JP 6581348 B2 JP6581348 B2 JP 6581348B2 JP 2014237015 A JP2014237015 A JP 2014237015A JP 2014237015 A JP2014237015 A JP 2014237015A JP 6581348 B2 JP6581348 B2 JP 6581348B2
Authority
JP
Japan
Prior art keywords
virtual object
dimensional virtual
orientation
information processing
processing apparatus
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
JP2014237015A
Other languages
Japanese (ja)
Other versions
JP2016099839A (en
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
Priority to JP2014237015A priority Critical patent/JP6581348B2/en
Publication of JP2016099839A publication Critical patent/JP2016099839A/en
Priority to JP2019159723A priority patent/JP6948363B2/en
Application granted granted Critical
Publication of JP6581348B2 publication Critical patent/JP6581348B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複合現実感提示システムにおいて、三次元空間上での仮想物体の位置姿勢情報を設定する技術に関する。   The present invention relates to a technique for setting position and orientation information of a virtual object in a three-dimensional space in a mixed reality presentation system.

CADデータなどの仮想的な三次元モデル(以後、三次元仮想物体と呼ぶ)を三次元空間上に配置する方法を考える。従来方法では、観察者はまず、ディスプレイ等の二次元画面に三次元仮想物体を二次元画像として投影し、擬似的な三次元空間上でキーボード等を用いて物体の位置姿勢の操作を行い、三次元仮想物体の配置を設定していた。しかし、この方法では、二次元画像への投影時に、三次元仮想物体の情報が欠落してしまい、三次元仮想物体を直観的に操作し、配置を設定することが難しい場合がある。この問題を解決するために、複合現実感(Mixed Reality:MR)技術(例えば、特許文献1)を用いて、三次元仮想物体を三次元空間上で操作して配置する方法が試みられている。   Consider a method of arranging a virtual three-dimensional model such as CAD data (hereinafter referred to as a three-dimensional virtual object) in a three-dimensional space. In the conventional method, the observer first projects a three-dimensional virtual object as a two-dimensional image on a two-dimensional screen such as a display, and operates the position and orientation of the object using a keyboard or the like in a pseudo three-dimensional space. The arrangement of the three-dimensional virtual object was set. However, in this method, information on the three-dimensional virtual object is lost during projection onto the two-dimensional image, and it may be difficult to intuitively operate the three-dimensional virtual object and set the arrangement. In order to solve this problem, a method of manipulating and arranging a three-dimensional virtual object in a three-dimensional space using mixed reality (MR) technology (for example, Patent Document 1) has been attempted. .

三次元仮想物体を三次元の現実空間内で操作する方法の例としては、6自由度位置姿勢計測装置(例えば、Polhemus社のFASTRAKセンサのスタイラス)を用いる方法がある。この方法では、観察者は、6自由度位置姿勢計測装置から出力される位置姿勢変化分を取り出し、その変化分を三次元仮想物体の移動回転量として三次元仮想物体の配置を設定する(特許文献1)。図4は、観察者が従来の操作方法を行う様子を示す模式図である。図4では、観察者が6自由度位置姿勢計測装置を手に持ち、これを同図矢印の如く回転、移動させると、この回転、移動を三次元仮想物体に反映させている状態が示されている。   As an example of a method for operating a three-dimensional virtual object in a three-dimensional real space, there is a method using a six-degree-of-freedom position / orientation measurement apparatus (for example, a stylus of a FASTRAK sensor manufactured by Polhemus). In this method, the observer takes out the position and orientation change output from the 6-DOF position and orientation measurement apparatus, and sets the arrangement of the three-dimensional virtual object using the change as the moving rotation amount of the three-dimensional virtual object (patent) Reference 1). FIG. 4 is a schematic diagram showing how an observer performs a conventional operation method. In FIG. 4, when an observer holds a 6-DOF position / orientation measurement device in his / her hand and rotates and moves it as shown by the arrow in the figure, a state in which this rotation and movement is reflected in the three-dimensional virtual object is shown. ing.

観察者に提示する手段としては、HMD(Head Mounted Display)などが用いられる。このHMDにより、観察者は、現実空間と三次元仮想物体との位置関係を容易に把握し、三次元仮想物体の配置の設定を行うことが出来る。   As a means for presenting to the observer, an HMD (Head Mounted Display) or the like is used. With this HMD, the observer can easily grasp the positional relationship between the real space and the three-dimensional virtual object and set the arrangement of the three-dimensional virtual object.

特開2004−62758号公報JP 2004-62758 A

林建一,加藤博一,西田正吾,“境界線ベースステレオマッチングを用いた実物体と三次元仮想物体の前後判定”,日本バーチャルリアリティ学会論文誌,Vol.10,No.3,pp.371−380,2005Kenichi Hayashi, Hirokazu Kato, Masami Nishida, “Judgment of Real and Three-Dimensional Virtual Objects Using Boundary-Based Stereo Matching”, Transactions of the Virtual Reality Society of Japan, Vol. 10, no. 3, pp. 371-380, 2005

観察者が、現実物体と現実物体の形状を模した三次元仮想物体の配置が同じになるように、三次元仮想物体の位置姿勢を設定しよう場合を考える。このとき、6自由度位置姿勢計測装置と現実物体の交差が、面ではなく点であるために、姿勢が一意に定まらず短時間で正確に三次元仮想物体の位置姿勢を設定することは難しい。   Consider a case where the observer wants to set the position and orientation of a three-dimensional virtual object so that the arrangement of the three-dimensional virtual object imitating the shape of the real object and the real object is the same. At this time, since the intersection of the 6-DOF position and orientation measurement device and the real object is not a plane, it is difficult to set the position and orientation of the 3D virtual object accurately in a short time because the orientation is not uniquely determined. .

本発明は、このような課題に鑑みてなされたものであり、短時間に三次元仮想物体の位置姿勢を正確に設定することを目的とする。   The present invention has been made in view of such problems, and an object thereof is to accurately set the position and orientation of a three-dimensional virtual object in a short time.

上記目的を達成するための一手段として、本発明による情報処理装置は以下の構成を有する。すなわち、現実物体の形状に対応する面である基準面を取得する取得手段と、前記基準面との距離に基づき、三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定手段と、前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、前記移動手段によって移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定手段と、を有する。
As a means for achieving the above object, an information processing apparatus according to the present invention has the following configuration. That is, an acquisition unit that acquires a reference plane that is a plane corresponding to the shape of the real object, and a selection unit that selects one of the planes of the three-dimensional virtual object as a corresponding plane based on the distance from the reference plane Setting means for setting the position and orientation of the three-dimensional virtual object so that the reference plane and the corresponding plane have a predetermined positional relationship, and the position of the three-dimensional virtual object according to the movement of the reference plane And a determining means for determining the position of the three-dimensional virtual object based on the result of movement by the moving means.

本発明によれば、短時間に三次元仮想物体の位置姿勢を正確に設定することが可能となる。   According to the present invention, it is possible to accurately set the position and orientation of a three-dimensional virtual object in a short time.

情報処理装置の機能構成を示すブロック図。The block diagram which shows the function structure of information processing apparatus. 実施形態1に係る情報処理装置の機能構成を示す模式図。FIG. 2 is a schematic diagram showing a functional configuration of the information processing apparatus according to the first embodiment. 実施形態1に係る処理の手順を示すフローチャート。3 is a flowchart showing a procedure of processing according to the first embodiment. 従来の操作方法を行っている様子を示す模式図。The schematic diagram which shows a mode that the conventional operating method is performed. 手に対して基準面及び基準面座標系が定義されている様子を示す模式図。The schematic diagram which shows a mode that the reference plane and the reference plane coordinate system are defined with respect to the hand. 基準面位置姿勢の推定の詳細な処理の手順を示すフローチャート。The flowchart which shows the procedure of the detailed process of estimation of a reference plane position and orientation. 手の輪郭のサンプリング点を示す模式図。The schematic diagram which shows the sampling point of the outline of a hand. 基準面と三次元仮想物体が交差しているか判定する詳細な処理の手順を示したフローチャート。The flowchart which showed the procedure of the detailed process which determines whether a reference plane and the three-dimensional virtual object cross | intersect. 三次元仮想物体205のバウンディングボックス901の例を示した図。The figure which showed the example of the bounding box 901 of the three-dimensional virtual object 205. FIG. 交差したバウンディングボックス面を基準面に平行に交差させる詳細な処理の手順を示すフローチャート。The flowchart which shows the procedure of the detailed process which cross | intersects the bounding box surface which cross | intersected in parallel with the reference plane. バウンディングボックス901と基準面501に平行に交差している様子を示す模式図。The schematic diagram which shows a mode that it cross | intersects the bounding box 901 and the reference plane 501 in parallel. 基準面と仮想物体面の相対位置姿勢の推定の詳細な処理の手順を示すフローチャート。The flowchart which shows the procedure of the detailed process of estimation of the relative position and orientation of a reference surface and a virtual object surface. 基準面座標系502の変化に合わせて三次元仮想物体2050を描画している様子を表している図。The figure showing a mode that the three-dimensional virtual object 2050 is drawn according to the change of the reference plane coordinate system 502. FIG. 実施形態2に係る情報処理装置の機能構成を示すブロック図。3 is a block diagram showing a functional configuration of an information processing apparatus according to Embodiment 2. FIG. 実施形態2に係る情報処理装置の機能構成を示す模式図。FIG. 3 is a schematic diagram illustrating a functional configuration of an information processing apparatus according to a second embodiment. 実施形態2に係る処理の手順を示すフローチャート。9 is a flowchart showing a processing procedure according to the second embodiment. 情報処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図。The block diagram which shows the hardware constitutions of the computer applicable to information processing apparatus.

以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。以下の実施形態における情報処理装置は、コンピュータグラフィクス等による仮想画像を現実の空間に融合させて観察者に提示する複合現実感提示システムにおいて、三次元空間上での仮想物体の位置姿勢情報を設定することが可能な情報処理装置である。   Hereinafter, the present invention will be described in detail based on preferred embodiments with reference to the accompanying drawings. The configurations shown in the following embodiments are merely examples, and the present invention is not limited to the illustrated configurations. An information processing apparatus according to the following embodiment sets position and orientation information of a virtual object in a three-dimensional space in a mixed reality presentation system that presents an observer with a virtual image by computer graphics or the like fused to a real space It is an information processing apparatus that can do this.

[実施形態1]
<構成>
図1は、本実施形態における情報処理装置の機能構成を示すブロック図である。また、図2は、本実施形態における情報処理装置の模式図であり、図17は、情報処理装置に適用可能なコンピュータのハードウェア構成を示すブロック図である。本実施形態では、図2に示すように、撮像部201、表示部202、撮像部位置姿勢取得部211は、HMD(Head Mounted Display)200に取り付けられ、各々はHMD200の本体に固定されている。撮像部201と表示部202は各々2つずつHMD200の本体に設けられており、撮像部201R、表示部202Rは右目用、撮像部201L、表示部202Lは左目用である。以下、特に右目用、左目用に限定する説明出ない限りでは、R,Lを省略する(すなわち、以下、撮像部201、表示部は202とする)。観察者は、このHMD200を頭部に装着することにより、表示部202に映る実写映像に記憶部104から入力した三次元仮想物体205が重畳された画像(以下、MR画像とする)を見ることが出来る。
[Embodiment 1]
<Configuration>
FIG. 1 is a block diagram illustrating a functional configuration of the information processing apparatus according to the present embodiment. FIG. 2 is a schematic diagram of the information processing apparatus in the present embodiment, and FIG. 17 is a block diagram showing a hardware configuration of a computer applicable to the information processing apparatus. In the present embodiment, as shown in FIG. 2, the imaging unit 201, the display unit 202, and the imaging unit position and orientation acquisition unit 211 are attached to an HMD (Head Mounted Display) 200, and each is fixed to the main body of the HMD 200. . Two imaging units 201 and two display units 202 are provided in the main body of the HMD 200, the imaging unit 201R and the display unit 202R are for the right eye, and the imaging unit 201L and the display unit 202L are for the left eye. Hereinafter, R and L will be omitted unless specifically limited to the right eye and the left eye (ie, the imaging unit 201 and the display unit are 202 hereinafter). An observer wears the HMD 200 on the head to view an image (hereinafter, referred to as an MR image) in which a three-dimensional virtual object 205 input from the storage unit 104 is superimposed on a real video image displayed on the display unit 202. I can do it.

撮像画像取得部101は、撮像部201において撮像された撮像画像を、画像データとして取得する。撮像部位置姿勢取得部211は、撮像部201の位置姿勢を計測した結果から、観察者の視点位置姿勢の推定を行う。本実施形態では、撮像部位置姿勢取得部211として、磁気センサが用いられる。撮像部位置姿勢取得部211は、現実空間上に配置された磁界発生装置210から発生した磁界を受け、受けた磁界の変化をセンサコントローラ209に送る。   The captured image acquisition unit 101 acquires the captured image captured by the imaging unit 201 as image data. The imaging unit position and orientation acquisition unit 211 estimates the viewpoint position and orientation of the observer from the result of measuring the position and orientation of the imaging unit 201. In the present embodiment, a magnetic sensor is used as the imaging unit position / orientation acquisition unit 211. The imaging unit position / orientation acquisition unit 211 receives a magnetic field generated from the magnetic field generator 210 arranged in the real space, and sends a change in the received magnetic field to the sensor controller 209.

センサコントローラ209は、磁界発生装置210を原点とする基準座標系206における撮像部位置姿勢取得部211の位置姿勢を求める。ここで「位置姿勢を求める」処理とは、以下のような処理である。すなわち、まず、センサコントローラ209は、撮像部位置姿勢取得部211によって計測された位置姿勢の変化分を用いて、位置姿勢変換行列ΔMRを生成する。その後、センサコントローラ209は、前フレームの撮像部位置姿勢取得部211の位置姿勢(三次元配置情報)を示す行列MRにΔMRを積算することで、次のフレームにおける撮像部位置姿勢取得部211の位置姿勢を示す行列MR'を以下の(式1)の通り求める。
(式1)

Figure 0006581348
The sensor controller 209 obtains the position and orientation of the imaging unit position and orientation acquisition unit 211 in the reference coordinate system 206 with the magnetic field generator 210 as the origin. Here, the “determining position and orientation” processing is as follows. That is, first, the sensor controller 209 generates a position / orientation conversion matrix ΔM R using the change in position and orientation measured by the imaging unit position and orientation acquisition unit 211. Thereafter, the sensor controller 209 adds ΔM R to the matrix M R indicating the position and orientation (three-dimensional arrangement information) of the imaging unit position and orientation acquisition unit 211 of the previous frame, so that the imaging unit position and orientation acquisition unit in the next frame A matrix M R ′ indicating the position and orientation of 211 is obtained as in the following (formula 1).
(Formula 1)
Figure 0006581348

なお、撮像部位置姿勢取得部211の位置姿勢を示す行列MR'、位置変化成分を示す行列Wt、姿勢変化成分を示す行列Wrは各々、4×4の行列である。センサコントローラ209は、行列MRの初期値として、あらかじめ撮像部位置姿勢取得部211の初期位置姿勢を記憶している。位置姿勢変換行列ΔMRは、行列Wt、Wrを用いて算出される行列である。行列Wtと行列Wrは、撮像部位置姿勢取得部211からの出力として得られる。
(式2)

Figure 0006581348
(式3)
Figure 0006581348
(式4)
Figure 0006581348
(式2)は行列Wt(基準座標系206に対する姿勢を表す3×3回転行列を含む行列)、(式3)は行列Wr(基準座標系206に対する位置を表す3次元ベクトルを含む行列)を示す式である。行列Wtと行列Wrにおける各成分は周知の通り、撮像部位置姿勢取得部211による位置姿勢の計測値に基づいて決まるものである。 Note that the matrix M R ′ indicating the position and orientation of the imaging unit position and orientation acquisition unit 211, the matrix W t indicating the position change component, and the matrix W r indicating the orientation change component are each a 4 × 4 matrix. Sensor controller 209 as the initial value of the matrix M R, stores in advance the initial position and orientation of the imaging unit position and orientation acquisition unit 211. The position / orientation conversion matrix ΔM R is a matrix calculated using the matrices W t and W r . The matrix W t and the matrix W r are obtained as outputs from the imaging unit position and orientation acquisition unit 211.
(Formula 2)
Figure 0006581348
(Formula 3)
Figure 0006581348
(Formula 4)
Figure 0006581348
(Expression 2) is a matrix W t (a matrix including a 3 × 3 rotation matrix representing an attitude relative to the reference coordinate system 206), and (Expression 3) is a matrix W r (a matrix including a three-dimensional vector indicating a position relative to the reference coordinate system 206). ). As is well known, each component in the matrix Wt and the matrix Wr is determined based on the position and orientation measurement values obtained by the imaging unit position and orientation acquisition unit 211.

センサコントローラ209は、基準座標系206に対する撮像部位置姿勢取得部211の位置姿勢MR'を、ワークステーション203に出力する。ワークステーション203は、(式5)のように、既知である撮像部位置姿勢取得部211と撮像部201との位置姿勢行列MLを用いて座標変換を行い、撮像部座標系208に対する位置姿勢を表す行列MCを求める。
(式5)

Figure 0006581348
The sensor controller 209 outputs the position and orientation M R ′ of the imaging unit position and orientation acquisition unit 211 with respect to the reference coordinate system 206 to the workstation 203. Workstation 203, as shown in (Equation 5), performs coordinate conversion using the position and orientation matrix M L between the image pickup unit position and orientation acquisition unit 211 and the imaging unit 201 is known, the position and orientation relative to the imaging unit coordinate system 208 Find a matrix M C representing
(Formula 5)
Figure 0006581348

なお、撮像部位置姿勢取得部211に適用可能なセンサは、磁気センサに限定されず、他の種類のセンサでもよい。例えば、光学センサ、超音波センサ、慣性センサであってもよい。また、画像処理による撮像部位置姿勢計測など、撮像部の位置姿勢を計測できるものであれば、撮像部位置姿勢取得部211に適応可能である。   The sensor applicable to the imaging unit position / orientation acquisition unit 211 is not limited to a magnetic sensor, but may be other types of sensors. For example, an optical sensor, an ultrasonic sensor, or an inertial sensor may be used. Further, any device that can measure the position and orientation of the imaging unit, such as measurement of the imaging unit position and orientation by image processing, can be applied to the imaging unit position and orientation acquisition unit 211.

基準面位置姿勢推定部103は、撮像画像取得部101が取得した一枚以上のステレオ画像中から、手212を含む空間の形状を求める。手の領域を検出し輪郭線の三次元形状を推定するための技術は周知であり、例えば、非特許文献1に開示されている技術が用いられる。この方法によれば、基準面位置姿勢推定部103は、キーフレームとの差分によって物体領域を検出し、物体領域の境界線のステレオマッチングを行う。基準面位置姿勢推定部103は、マッチングした境界線について、三角測量により撮像部201(カメラ)から当該境界線までの距離を求める。その後、基準面位置姿勢推定部103は、基準座標系206における撮像部201の位置姿勢を推定し、基準座標系206における当該境界線の位置姿勢を求める。基準面位置姿勢推定部103は、更に、当該境界線の位置姿勢に基づいて、近似平面である基準面501を求める。図5に、基準面位置姿勢推定部103が求めた基準面501の例を示す。三次元仮想物体選択部102は、入力部109から、対象の三次元仮想物体205を選択する入力が行われたかを判定する。   The reference plane position / orientation estimation unit 103 obtains the shape of the space including the hand 212 from one or more stereo images acquired by the captured image acquisition unit 101. A technique for detecting a hand region and estimating a three-dimensional shape of a contour line is well known. For example, a technique disclosed in Non-Patent Document 1 is used. According to this method, the reference plane position / orientation estimation unit 103 detects the object region based on the difference from the key frame, and performs stereo matching of the boundary line of the object region. The reference plane position / orientation estimation unit 103 obtains a distance from the imaging unit 201 (camera) to the boundary line by triangulation with respect to the matched boundary line. Thereafter, the reference plane position and orientation estimation unit 103 estimates the position and orientation of the imaging unit 201 in the reference coordinate system 206, and obtains the position and orientation of the boundary line in the reference coordinate system 206. The reference plane position / orientation estimation unit 103 further obtains a reference plane 501 that is an approximate plane based on the position / orientation of the boundary line. FIG. 5 shows an example of the reference plane 501 obtained by the reference plane position / orientation estimation unit 103. The three-dimensional virtual object selection unit 102 determines whether an input for selecting the target three-dimensional virtual object 205 has been performed from the input unit 109.

記憶部104は、ワークステーション203により計測されたモックアップ204の形状に模して得られた三次元仮想物体205のデータ(配置情報、形状情報等)を記憶する。記憶する三次元仮想物体205のデータは、頂点三次元位置情報、座標変換用の4×4行列(基準座標系206からの位置姿勢行列MCGと呼ぶ)などから構成される。また、記憶部104は、基準座標系206における三次元仮想物体座標系207の位置姿勢の初期値を記憶する。記憶部104は、記憶した初期値を、三次元仮想物体205を基準座標系206に配置するための位置情報として、交差面判定部105へ入力する。記憶部104は、また、三次元仮想物体選択部102において対象の三次元仮想物体205が選択されているかの判定結果を記憶し、三次元仮想物体配置固定部110へ判定結果を入力する。記憶部104は、ハードウェア構成として、図17に示す外部記憶装置17070に限らず、任意の場所にデータを記憶することが出来る。 The storage unit 104 stores data (arrangement information, shape information, etc.) of the three-dimensional virtual object 205 obtained by imitating the shape of the mockup 204 measured by the workstation 203. Data storage to the three-dimensional virtual object 205, the vertex three-dimensional position information, (referred to as the position and orientation matrix M CG from the reference coordinate system 206) 4 × 4 matrix for coordinate transformation and the like. The storage unit 104 also stores initial values of the position and orientation of the three-dimensional virtual object coordinate system 207 in the reference coordinate system 206. The storage unit 104 inputs the stored initial value to the intersection determination unit 105 as position information for placing the three-dimensional virtual object 205 in the reference coordinate system 206. The storage unit 104 also stores a determination result as to whether the target three-dimensional virtual object 205 is selected in the three-dimensional virtual object selection unit 102, and inputs the determination result to the three-dimensional virtual object arrangement fixing unit 110. The storage unit 104 is not limited to the external storage device 17070 shown in FIG. 17 as a hardware configuration, and can store data in any location.

交差面判定部105は、基準面位置姿勢推定部103から得られる基準面501と、記憶部104に記憶されている三次元仮想物体205のデータに基づいて、基準面501と三次元仮想物体205が、所定の位置関係の一例として、交差しているかを判定する。相対位置姿勢推定部106は、基準面501の持つ基準面座標系502と、三次元仮想物体205の持つ三次元仮想物体座標系207の位置姿勢を其々求め、二つの座標系の相対的な位置姿勢を求める。   Based on the reference plane 501 obtained from the reference plane position / orientation estimation unit 103 and the data of the three-dimensional virtual object 205 stored in the storage unit 104, the intersection plane determination unit 105 performs the reference plane 501 and the three-dimensional virtual object 205. However, as an example of the predetermined positional relationship, it is determined whether or not they intersect. The relative position / orientation estimation unit 106 obtains the position / orientation of the reference plane coordinate system 502 of the reference plane 501 and the three-dimensional virtual object coordinate system 207 of the three-dimensional virtual object 205, and calculates the relative position of the two coordinate systems. Find the position and orientation.

三次元仮想物体位置姿勢推定部107は、基準座標系206における三次元仮想物体205の位置姿勢を推定する。基準面座標系502の位置姿勢行列MSP、相対位置姿勢変換行列ΔMreを用いて、基準座標系206における三次元仮想物体205の位置姿勢MCG'は、以下の(式6)により求められる。
(式6)

Figure 0006581348
The three-dimensional virtual object position / orientation estimation unit 107 estimates the position / orientation of the three-dimensional virtual object 205 in the reference coordinate system 206. Using the position / orientation matrix M SP and the relative position / orientation transformation matrix ΔM re of the reference plane coordinate system 502, the position / orientation M CG ′ of the three-dimensional virtual object 205 in the reference coordinate system 206 is obtained by the following (formula 6). .
(Formula 6)
Figure 0006581348

画像合成部108は、撮像画像取得部101が取得した撮像画像に、三次元仮想物体205を重ねる。このとき、画像合成部108は、撮像部201の位置姿勢情報と、三次元仮想物体205の位置姿勢情報とを用いて、撮像部201からの視点における三次元仮想物体205を合成する。入力部109は、キーボード17040やマウス17050、ゲームパッド等の入力機器からワークステーション203への入力があったとき、三次元仮想物体選択部102へ入力があったことを伝える。   The image composition unit 108 superimposes the three-dimensional virtual object 205 on the captured image acquired by the captured image acquisition unit 101. At this time, the image synthesis unit 108 synthesizes the three-dimensional virtual object 205 at the viewpoint from the imaging unit 201 using the position and orientation information of the imaging unit 201 and the position and orientation information of the three-dimensional virtual object 205. When there is an input to the workstation 203 from an input device such as a keyboard 17040, a mouse 17050, or a game pad, the input unit 109 informs the three-dimensional virtual object selection unit 102 that there is an input.

三次元仮想物体配置固定部110は、入力部109からの入力に応じて、撮像画像取得部101から撮像画像を受け取る。三次元仮想物体配置固定部110は、撮像画像と三次元仮想物体205を2次元平面に投影し、撮像画像に撮像されているモックアップ204とのフィッティングを三次元仮想物体205の位置姿勢を変化させながら行う。フィッティングは、公知の方法で行われる。例えば、仮想物体から抽出される特徴と、撮像画像に含まれるモックアップの特徴とを一致させるようすればよい。フィッティング終了後、三次元仮想物体配置固定部110は、三次元仮想物体205の位置姿勢MCG'を算出する。三次元仮想物体配置固定部110は、算出した位置姿勢MCG'を外部記憶装置17070に記憶し、基準座標系206における三次元仮想物体座標系207の変換行列MCGに、算出した位置姿勢MCG'を代入する。 In response to an input from the input unit 109, the three-dimensional virtual object arrangement fixing unit 110 receives a captured image from the captured image acquisition unit 101. The three-dimensional virtual object arrangement fixing unit 110 projects the captured image and the three-dimensional virtual object 205 on a two-dimensional plane, and changes the position and orientation of the three-dimensional virtual object 205 by fitting with the mockup 204 captured in the captured image. To do. The fitting is performed by a known method. For example, the feature extracted from the virtual object may be matched with the mock-up feature included in the captured image. After the fitting is completed, the 3D virtual object arrangement fixing unit 110 calculates the position and orientation M CG ′ of the 3D virtual object 205. The three-dimensional virtual object arrangement fixing unit 110 stores the calculated position and orientation M CG ′ in the external storage device 17070, and calculates the calculated position and orientation M in the transformation matrix M CG of the three-dimensional virtual object coordinate system 207 in the reference coordinate system 206. Substitute CG '.

<処理の手順>
本実施形態における処理の手順を図3のフローチャートを参照して説明する。ステップS301において、撮像画像取得部101は、撮像部201にて撮像された画像を取得する。ステップS302において、撮像部位置姿勢取得部211は、基準座標系206における撮像部位置姿勢取得部211の位置姿勢を表す行列MR'を求める。その後、ワークステーション203は、(式5)を用いて撮像部座標系208の位置姿勢を表す行列MCを求める。
<Processing procedure>
A processing procedure in this embodiment will be described with reference to a flowchart of FIG. In step S301, the captured image acquisition unit 101 acquires an image captured by the imaging unit 201. In step S302, the imaging unit position / orientation acquisition unit 211 obtains a matrix M R ′ representing the position and orientation of the imaging unit position / orientation acquisition unit 211 in the reference coordinate system 206. Thereafter, the workstation 203 calculates a matrix M C representing the position and orientation of the imaging unit coordinate system 208 using (Equation 5).

ステップS303において、三次元仮想物体配置固定部110は、入力部109からの入力に応じて、記憶部104で記憶されている位置姿勢行列MCGを用いて三次元仮想物体205を基準座標系206に配置する。ステップS304において、記憶部104は、三次元仮想物体選択部102から、位置姿勢を設定する対象の三次元仮想物体205を選択するための操作(入力)が行われたかどうかを調べる。対象の三次元仮想物体205の選択するための操作が行われた場合は、処理はステップS305へ移る。一方、選択するための操作が行われていない場合は、処理はステップS301へ移る。 In step S303, the three-dimensional virtual object arrangement fixing unit 110 converts the three-dimensional virtual object 205 into the reference coordinate system 206 using the position / orientation matrix M CG stored in the storage unit 104 in response to an input from the input unit 109. To place. In step S304, the storage unit 104 checks whether or not an operation (input) for selecting the target 3D virtual object 205 for setting the position and orientation has been performed from the 3D virtual object selection unit 102. When an operation for selecting the target three-dimensional virtual object 205 is performed, the process proceeds to step S305. On the other hand, if an operation for selection has not been performed, the process proceeds to step S301.

ステップS305において、撮像画像取得部101は、撮像部201から取得した撮像画像を基準面位置姿勢推定部103に入力し、基準面位置姿勢推定部103は、基準面501の位置姿勢を推定する。図6は、基準面501の位置姿勢推定ステップS305の、詳細な処理手順を示すフローチャートである。図6に示す処理手順は、非特許文献1に記載の手法に基づく。また、図7は、手212の領域から抽出された輪郭線のサンプリング点701を模した図である。サンプリング点701は、撮像部座標系208における三次元位置の情報を持つ。   In step S305, the captured image acquisition unit 101 inputs the captured image acquired from the imaging unit 201 to the reference plane position and orientation estimation unit 103, and the reference plane position and orientation estimation unit 103 estimates the position and orientation of the reference plane 501. FIG. 6 is a flowchart showing a detailed processing procedure of the position / orientation estimation step S305 of the reference surface 501. The processing procedure shown in FIG. 6 is based on the method described in Non-Patent Document 1. FIG. 7 is a diagram simulating the sampling point 701 of the contour line extracted from the hand 212 region. The sampling point 701 has information on a three-dimensional position in the imaging unit coordinate system 208.

図6のステップS601において、基準面位置姿勢推定部103は、手212の三次元空間中の輪郭線の位置姿勢を推定し、サンプリング点701の三次元位置を推定する。   In step S601 of FIG. 6, the reference plane position / orientation estimation unit 103 estimates the position / orientation of the contour line in the three-dimensional space of the hand 212, and estimates the three-dimensional position of the sampling point 701.

ステップS602において、基準面位置姿勢推定部103は、最小二乗近似による無限平面の数式モデルを用いてサンプリング点701を含む近似平面を算出する。平面の式をax + by + cz = 1とし、これをベクトル演算で表現すると、(式7)のように表される。
(式7)

Figure 0006581348
求める近似平面上に存在する点は(式7)が成り立つ。(式7)に基づき、入力されたn個の点群がすべて近似平面上にあると仮定すると、(式8)が成り立つ。
(式8)
Figure 0006581348
ここで、この式を、
(式9)
Figure 0006581348
とおく。この(式9)のXの一般化逆行列を求めることで、近似平面の数式モデルのパラメータであるp(a, b, c)が求められる。ここで、(式9)のXの一般化逆行列をX+とすると
(式10)
Figure 0006581348
となり、
(式11)
Figure 0006581348
となる。 In step S602, the reference plane position / orientation estimation unit 103 calculates an approximate plane including the sampling point 701 using a mathematical model of an infinite plane by least square approximation. If the plane expression is ax + by + cz = 1, and this is expressed by a vector operation, it is expressed as (Expression 7).
(Formula 7)
Figure 0006581348
The point existing on the approximate plane to be obtained is established by (Equation 7). Based on (Equation 7), assuming that all the input n point groups are on the approximate plane, (Equation 8) holds.
(Formula 8)
Figure 0006581348
Where this equation is
(Formula 9)
Figure 0006581348
far. By obtaining the generalized inverse matrix of X in (Equation 9), p (a, b, c) that is a parameter of the mathematical model of the approximate plane is obtained. Here, if the generalized inverse matrix of X in (Equation 9) is X + (Equation 10)
Figure 0006581348
And
(Formula 11)
Figure 0006581348
It becomes.

この(式11)によって、入力点群から近似平面の数式モデルのパラメータp(a, b, c)が求められる。サンプリング点701を(式11)のXの行列に設定し、(式11)の計算結果から近似平面の数式モデルのパラメータp(a, b, c)を求める。ここで、得られたパラメータp(a, b, c)を(式7)に代入することにより、近似平面の数式が得られる。なお、近似平面を求める手法として、最小二乗近似による手法に限るものではなく、他の手法であっても適用可能である。   By this (Expression 11), the parameter p (a, b, c) of the mathematical model of the approximate plane is obtained from the input point group. Sampling points 701 are set in the X matrix of (Expression 11), and parameters p (a, b, c) of the mathematical model of the approximate plane are obtained from the calculation result of (Expression 11). Here, by substituting the obtained parameters p (a, b, c) into (Equation 7), the mathematical expression of the approximate plane can be obtained. The method for obtaining the approximate plane is not limited to the method using the least square approximation, and other methods can be applied.

ステップS603において、基準面位置姿勢推定部103は、手212の輪郭線の三次元形状に外接する直方体を求め、ステップS602で求めた近似平面との交線を求めて手212の平面領域を決定し、この平面領域を基準面501とする。まず、基準面位置姿勢推定部103は、輪郭線の三次元形状に外接する直方体として、三次元形状を構成するサンプリング点701が取り得るX座標値、Y座標値、Z座標値の最大値と最小値を用いて構成する6平面の式を算出する。基準面位置姿勢推定部103は、算出した6平面とステップS602で求めた近似平面との交線を求めて、直方体の表面に乗る線分を記録することができる。さらに、基準面位置姿勢推定部103は、求めた複数の線分の交点を、近接する平面領域の基準面頂点504A〜504Dとし、これらの基準面頂点から基準面501を構成する。このとき、基準面501の任意の頂点を原点とし基準面座標系502を定義する。また、撮像部座標系208から基準面座標系502への座標変換行列をMCSPとおく。 In step S603, the reference plane position / orientation estimation unit 103 obtains a rectangular parallelepiped that circumscribes the three-dimensional shape of the outline of the hand 212, obtains a line of intersection with the approximate plane obtained in step S602, and determines a plane area of the hand 212. This plane area is defined as a reference plane 501. First, the reference plane position / orientation estimation unit 103, as a cuboid circumscribing the three-dimensional shape of the contour line, the maximum X coordinate value, Y coordinate value, and Z coordinate value that can be taken by the sampling point 701 constituting the three-dimensional shape, Calculate the 6-plane formula using the minimum value. The reference plane position / orientation estimation unit 103 can determine the line of intersection between the calculated six planes and the approximate plane obtained in step S602, and can record a line segment on the surface of the rectangular parallelepiped. Furthermore, the reference plane position / orientation estimation unit 103 sets the intersections of the obtained plurality of line segments as reference plane vertices 504A to 504D in the adjacent plane area, and configures the reference plane 501 from these reference plane vertices. At this time, a reference plane coordinate system 502 is defined with an arbitrary vertex of the reference plane 501 as the origin. Also, placing the M CSP coordinate transformation matrix to the reference plane coordinate system 502 from the imaging unit coordinate system 208.

なお、本実施形態では、平面領域を設定するために、基準面位置姿勢推定部103は、外接する直方体を求めて、当該直方体と近似平面との交線から平面領域(基準面501)を求めた。しかしながら、この手法に限定されるものではなく、基準面位置姿勢推定部103は、手212の輪郭線の三次元形状を用いて、手のひらの平面領域を算出してもよい。   In this embodiment, in order to set a plane area, the reference plane position / orientation estimation unit 103 obtains a circumscribed rectangular parallelepiped and obtains a plane area (reference plane 501) from an intersection line between the rectangular parallelepiped and the approximate plane. It was. However, the present invention is not limited to this method, and the reference plane position / orientation estimation unit 103 may calculate the plane area of the palm using the three-dimensional shape of the outline of the hand 212.

図3に戻り、ステップS306において、相対位置姿勢推定部106は、ステップS305で推定された基準面501と三次元仮想物体205との相対位置姿勢を推定する。ステップS307において、交差面判定部105は、ステップS305で推定された基準面501が三次元仮想物体205と交差しているかを判定する。図8は、交差面判定部105が基準面501と三次元仮想物体が交差しているかを判定するステップS307の、詳細な処理手順を示すフローチャートである。   Returning to FIG. 3, in step S306, the relative position / orientation estimation unit 106 estimates the relative position / orientation between the reference plane 501 and the three-dimensional virtual object 205 estimated in step S305. In step S307, the intersection surface determination unit 105 determines whether the reference surface 501 estimated in step S305 intersects the three-dimensional virtual object 205. FIG. 8 is a flowchart illustrating a detailed processing procedure of step S307 in which the intersection surface determination unit 105 determines whether the reference surface 501 and the three-dimensional virtual object intersect.

図8のステップS801では、交差面判定部105は、三次元仮想物体205のバウンディングボックスを作成する。三次元仮想物体205のバウンディングボックスを作成する手法として、例えば、三次元仮想物体205を構成する三次元点をすべて含むような直方体を作成する方法がある。図9は、三次元仮想物体205のバウンディングボックス901の例を示したものである。   In step S801 of FIG. 8, the intersection determination unit 105 creates a bounding box of the three-dimensional virtual object 205. As a method of creating the bounding box of the three-dimensional virtual object 205, for example, there is a method of creating a rectangular parallelepiped that includes all the three-dimensional points constituting the three-dimensional virtual object 205. FIG. 9 shows an example of the bounding box 901 of the three-dimensional virtual object 205.

ステップ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の交差を判定するアルゴリズムはこの方法に限定されるものではなく、他の方法で交差を判定しても良い。   In step S802, the intersection plane determination unit 105 determines whether the bounding box 901 and the reference plane 501 intersect. Specifically, each point of the bounding box 901 is compared with the position of the rectangular corner point constituting the reference plane 501 in the reference coordinate system 206. First, the intersection surface determination unit 105 obtains the maximum value and the minimum value of the X axis, the Y axis, and the Z axis in the reference coordinate system 206 of the bounding box 901. The intersection plane determination unit 105 also determines the maximum value and the minimum value of the X axis, the Y axis, and the Z axis in the reference coordinate system 206 for the reference plane 501. The intersection plane determination unit 105 calculates whether the maximum value and the minimum value of the reference plane 501 are included in the range from the maximum value of the bounding box 901 to the minimum value for each axis. If it is included, the intersection determination unit 105 determines that it intersects. If it is determined that they intersect, the process proceeds to step S803. If it is determined that they do not intersect, the processing flow ends. However, the algorithm for determining the intersection between the plane of the bounding box 901 and the reference plane 501 is not limited to this method, and the intersection may be determined by another method.

ステップS803において、交差面判定部105は、S802において交差していると判定されたバウンディングボックス901の面を基準面501にフィッティングする。図10は、交差面判定部105がバウンディングボックス901の面を基準面501にフィッティングする(平行に交差させる)ステップS803の、詳細な処理手順を示すフローチャートである。   In step S803, the intersection surface determination unit 105 fits the surface of the bounding box 901 determined to intersect in S802 to the reference surface 501. FIG. 10 is a flowchart showing a detailed processing procedure of step S803 in which the intersecting surface determination unit 105 fits the surface of the bounding box 901 to the reference surface 501 (intersects in parallel).

図10のステップS1001において、交差面判定部105は、バウンディングボックス901の各面と基準面頂点504A〜504Dとの距離を算出し、基準面頂点504A〜504Dから面までの距離の平均値をとる。ステップS1002において、交差面判定部105は、バウンディングボックス901の各面について、基準面頂点504A〜504Dとの距離の平均値を求める。最も距離が短い面を対応面901Aとする。ステップS1003において、交差面判定部105は、対応面901Aと基準面501と平行に交差するように三次元仮想物体205を回転移動させる。図11に、移動した結果、バウンディングボックス901と基準面501が平行に交差している様子を示す。   In step S1001 of FIG. 10, the intersection surface determination unit 105 calculates the distance between each surface of the bounding box 901 and the reference surface vertices 504A to 504D, and takes the average value of the distances from the reference surface vertices 504A to 504D to the surface. . In step S1002, the intersection surface determination unit 105 obtains the average value of the distances from the reference surface vertices 504A to 504D for each surface of the bounding box 901. The surface with the shortest distance is the corresponding surface 901A. In step S1003, the intersection surface determination unit 105 rotates and moves the three-dimensional virtual object 205 so as to intersect the corresponding surface 901A and the reference surface 501 in parallel. FIG. 11 shows a state in which the bounding box 901 and the reference plane 501 intersect in parallel as a result of the movement.

図3に戻り、ステップS307における上記処理の結果、基準面501と三次元仮想物体205が交差した場合、処理はステップS308へ移る。一方、交差しなかった場合、処理はステップS301へ戻る。ステップS308において、三次元仮想物体位置姿勢推定部107は、ステップS306で推定された基準面501と三次元仮想物体205との相対的な位置姿勢と、ステップS305で推定された基準面501の位置姿勢から、三次元仮想物体205の位置姿勢を推定する。図12は、三次元仮想物体位置姿勢推定部107が基準面501と三次元仮想物体205との相対位置姿勢を推定するステップS308の、詳細な処理手順を示すフローチャートである。   Returning to FIG. 3, when the reference plane 501 and the three-dimensional virtual object 205 intersect as a result of the processing in step S307, the processing proceeds to step S308. On the other hand, if it does not intersect, the process returns to step S301. In step S308, the three-dimensional virtual object position / orientation estimation unit 107 calculates the relative position / orientation between the reference plane 501 and the three-dimensional virtual object 205 estimated in step S306, and the position of the reference plane 501 estimated in step S305. The position and orientation of the three-dimensional virtual object 205 are estimated from the orientation. FIG. 12 is a flowchart showing a detailed processing procedure of step S308 in which the three-dimensional virtual object position / orientation estimation unit 107 estimates the relative position / orientation between the reference plane 501 and the three-dimensional virtual object 205.

図12のステップS1201において、三次元仮想物体位置姿勢推定部107は、基準座標系206における基準面座標系502の位置姿勢を推定する。具体的には、三次元仮想物体位置姿勢推定部107は、以下の(式12)により、基準座標系206における基準面座標系502の位置姿勢行列MSPを推定する。なお、行列MCSPは、撮像部座標系208から基準面座標系502への座標変換行列である。
(式12)

Figure 0006581348
In step S1201 of FIG. 12, the three-dimensional virtual object position / orientation estimation unit 107 estimates the position / orientation of the reference plane coordinate system 502 in the reference coordinate system 206. Specifically, the three-dimensional virtual object position and orientation estimation unit 107, the following equation (12), to estimate the position and orientation matrix M SP reference plane coordinate system 502 in the reference coordinate system 206. The matrix M CSP is a coordinate transformation matrix from the imaging unit coordinate system 208 to the reference plane coordinate system 502.
(Formula 12)
Figure 0006581348

ステップS1202において、三次元仮想物体位置姿勢推定部107は、ステップS1201で求めた基準面座標系502の座標変換行列MSPと基準座標系206における三次元仮想物体座標系207の座標変換行列MCGを用いて(式13)のように、以下の通り相対的な位置姿勢行列Mreを算出する。
(式13)

Figure 0006581348
In step S1202, the three-dimensional virtual object position / orientation estimation unit 107 calculates the coordinate transformation matrix M SP of the reference plane coordinate system 502 obtained in step S1201 and the coordinate transformation matrix M CG of the three-dimensional virtual object coordinate system 207 in the reference coordinate system 206. As shown in (Equation 13), the relative position and orientation matrix M re is calculated as follows.
(Formula 13)
Figure 0006581348

図13は、推定された位置姿勢を用いて三次元仮想物体205を描画した図である。図13では、基準面501の変化に合わせて三次元仮想物体205を描画されている様子が表されている。図13から、三次元仮想物体205と基準面501との位置姿勢が保たれた状態で三次元仮想物体205が移動していることがわかる。   FIG. 13 is a diagram in which the three-dimensional virtual object 205 is drawn using the estimated position and orientation. FIG. 13 shows a state in which the three-dimensional virtual object 205 is drawn in accordance with the change of the reference plane 501. From FIG. 13, it can be seen that the three-dimensional virtual object 205 is moving in a state where the position and orientation of the three-dimensional virtual object 205 and the reference plane 501 are maintained.

図3に戻り、ステップS309において、三次元仮想物体配置固定部110が入力部109からの入力情報を参照し、三次元仮想物体205の配置の決定が入力された場合は、処理はステップS310へ移る。ここでは、三次元仮想物体205の輪郭線が、モックアップ204の輪郭線と一致するように、配置が行われ、三次元仮想物体205の位置が決定される。一方、配置の決定が入力されていない場合は、処理はステップS301へ移る。ステップS310において、三次元仮想物体配置固定部110は、算出した三次元仮想物体座標系207の位置姿勢を記憶部104に記憶し、更に、三次元仮想物体座標系207の位置姿勢に代入する。   Returning to FIG. 3, in step S309, when the determination of the arrangement of the three-dimensional virtual object 205 is input by the three-dimensional virtual object arrangement fixing unit 110 referring to the input information from the input unit 109, the process proceeds to step S310. Move. Here, the arrangement is performed so that the contour line of the three-dimensional virtual object 205 matches the contour line of the mockup 204, and the position of the three-dimensional virtual object 205 is determined. On the other hand, if the placement determination has not been input, the process proceeds to step S301. In step S310, the three-dimensional virtual object arrangement fixing unit 110 stores the calculated position and orientation of the three-dimensional virtual object coordinate system 207 in the storage unit 104, and further substitutes them into the position and orientation of the three-dimensional virtual object coordinate system 207.

ステップS311において、本処理の終了指示が入力された、もしくは本処理を終了する条件が満たされた場合には本処理を終了する。一方、本処理の終了指示は入力されておらず、本処理を終了する条件も満たされていない場合は、処理はステップS301へ移る。   In step S311, when an instruction to end the process is input or when a condition for ending the process is satisfied, the process ends. On the other hand, if the end instruction of this process has not been input and the condition for ending this process is not satisfied, the process proceeds to step S301.

以上のように、本実施形態における情報処理装置は、現実物体と該現実物体の形状を模した三次元仮想物体の配置が同じになるように三次元仮想物体の位置姿勢を設定する。このとき、情報処理装置は、三次元空間中で位置姿勢を計測出来る他の現実物体を用いて三次元仮想物体を操作する。該現実物体と該他の現実物体がいずれも現実の物体であるため、現実物体同士を面で交差させることにより、三次元仮想物体の姿勢を一意に定めることが出来る。これにより、正確、かつ、短時間に三次元仮想物体の位置姿勢を設定することが可能となる。   As described above, the information processing apparatus according to the present embodiment sets the position and orientation of a three-dimensional virtual object so that the arrangement of the real object and the three-dimensional virtual object simulating the shape of the real object are the same. At this time, the information processing apparatus operates the three-dimensional virtual object using another real object that can measure the position and orientation in the three-dimensional space. Since both the real object and the other real object are real objects, the posture of the three-dimensional virtual object can be uniquely determined by crossing the real objects with each other on the plane. This makes it possible to set the position and orientation of the three-dimensional virtual object accurately and in a short time.

[実施形態2]
実施形態1では、基準座標系206におけるモックアップ204の位置は計測されていない。このため、ステップS310において三次元仮想物体205の位置姿勢を固定した後、観察者がモックアップ204を移動させると三次元仮想物体205とずれてしまう。そこで、実施形態2として、モックアップにモックアップ座標系1501を定義する形態を説明する。本実施形態では、3次元空間内をモックアップ204が回転・移動するのに合わせて、三次元仮想物体205が回転・移動してもよい。
[Embodiment 2]
In the first embodiment, the position of the mockup 204 in the reference coordinate system 206 is not measured. For this reason, if the observer moves the mockup 204 after fixing the position and orientation of the three-dimensional virtual object 205 in step S310, the three-dimensional virtual object 205 is displaced. Therefore, as a second embodiment, an embodiment in which a mockup coordinate system 1501 is defined for mockup will be described. In the present embodiment, the three-dimensional virtual object 205 may rotate and move in accordance with the rotation and movement of the mockup 204 in the three-dimensional space.

図14は、本実施形態における機能構成を示すブロック図である。図1と同じ部分については同じ番号をつけており、その説明を省略する。図15は、本実施形態における情報処理装置の構成の模式図である。図2と同じ部分については同じ番号をつけており、その説明を省略する。   FIG. 14 is a block diagram showing a functional configuration in the present embodiment. The same parts as those in FIG. 1 are denoted by the same reference numerals, and the description thereof is omitted. FIG. 15 is a schematic diagram of the configuration of the information processing apparatus in the present embodiment. The same parts as those in FIG. 2 are given the same numbers, and the description thereof is omitted.

モックアップ位置姿勢推定部1401は、モックアップ位置姿勢取得部1502で取得された位置姿勢から、基準座標系206におけるモックアップ座標系1501の位置姿勢を推定する。相対位置姿勢固定部1402は、三次元仮想物体座標系207とモックアップ座標系1501の相対位置姿勢を算出し、相対位置姿勢を記憶部104へ記憶する。   The mockup position and orientation estimation unit 1401 estimates the position and orientation of the mockup coordinate system 1501 in the reference coordinate system 206 from the position and orientation acquired by the mockup position and orientation acquisition unit 1502. The relative position and orientation fixing unit 1402 calculates the relative position and orientation of the three-dimensional virtual object coordinate system 207 and the mockup coordinate system 1501, and stores the relative position and orientation in the storage unit 104.

図16は、本実施形態における処理の手順を示すフローチャートである。図3と同じ部分については同じ番号をつけており、その説明を省略する。ステップS1601において、三次元仮想物体配置固定部110は、三次元仮想物体座標系207の位置姿勢を推定する。ステップS1602において、モックアップ位置姿勢取得部1502は、モックアップ座標系1501の基準座標系206における位置姿勢を取得する。本実施形態では、説明を簡単にするため、モックアップ座標系1501の位置姿勢は、モックアップ位置姿勢取得部1502で得られる位置姿勢と同一であるとする。モックアップ位置姿勢取得部1502は、取得したモックアップ座標系1501と三次元仮想物体座標系207との相対位置姿勢を算出する。   FIG. 16 is a flowchart showing a processing procedure in the present embodiment. The same parts as those in FIG. 3 are denoted by the same reference numerals, and the description thereof is omitted. In step S1601, the 3D virtual object arrangement fixing unit 110 estimates the position and orientation of the 3D virtual object coordinate system 207. In step S1602, the mockup position / orientation acquisition unit 1502 acquires the position and orientation of the mockup coordinate system 1501 in the reference coordinate system 206. In this embodiment, to simplify the description, it is assumed that the position and orientation of the mockup coordinate system 1501 is the same as the position and orientation obtained by the mockup position and orientation acquisition unit 1502. The mockup position / orientation acquisition unit 1502 calculates the relative position / orientation between the acquired mockup coordinate system 1501 and the three-dimensional virtual object coordinate system 207.

ステップS1603において、相対位置姿勢固定部1402は、モックアップ座標系1501に対してS1602で求めた相対位置姿勢を積算した結果を、三次元仮想物体座標系207の位置姿勢に代入する。これにより、モックアップ204と三次元仮想物体205との相対位置姿勢が固定される。ステップS1604において、記憶部104は、入力部109からの入力情報を参照し、相対位置姿勢を固定すると選択する操作(入力)が行われているかどうかを調べる。相対位置姿勢を固定すると選択する操作が行われた場合は、処理はステップS1603へ移る。一方、相対位置姿勢を固定すると選択する操作が行われていない場合は、処理はステップS301へ移る。   In step S1603, the relative position / orientation fixing unit 1402 substitutes the result obtained by integrating the relative position / orientation obtained in S1602 with respect to the mockup coordinate system 1501 into the position / orientation of the three-dimensional virtual object coordinate system 207. Thereby, the relative position and orientation of the mockup 204 and the three-dimensional virtual object 205 are fixed. In step S1604, the storage unit 104 refers to the input information from the input unit 109 and checks whether or not an operation (input) to be selected when the relative position and orientation is fixed is performed. If an operation of selecting to fix the relative position and orientation is performed, the process proceeds to step S1603. On the other hand, if the operation of selecting to fix the relative position and orientation is not performed, the process proceeds to step S301.

以上のように、本実施形態における情報処理装置は、3次元空間内をモックアップ204が回転・移動したとき、モックアップ座標系1501に対してステップS1604で算出した相対位置姿勢を積算する。これにより、情報処理装置は、三次元仮想物体座標系207の位置姿勢を求めることが可能となる。   As described above, the information processing apparatus according to the present embodiment integrates the relative position and orientation calculated in step S1604 with respect to the mockup coordinate system 1501 when the mockup 204 rotates and moves in the three-dimensional space. Thereby, the information processing apparatus can obtain the position and orientation of the three-dimensional virtual object coordinate system 207.

[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
[Other Embodiments]
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

101 撮像画像取得部、 102 三次元仮想物体選択部、 104 記憶部、 105 交差面判定部、 106 相対位置姿勢推定部、 107 三次元仮想物体位置姿勢推定部、 108 画像合成部、 109 入力部、 110 三次元仮想物体配置固定部、 200 HMD、 201 撮像部、 202 表示部、203 ワークステーション、 204 モックアップ、 205 三次元仮想物体、 206 基準座標系、 207 三次元仮想物体座標系、 208 撮像部座標系、 209 センサコントローラ、 210 磁界発生装置、 211 撮像部位置姿勢取得部、 212 手 101 Captured image acquisition unit, 102 3D virtual object selection unit, 104 Storage unit, 105 Cross plane determination unit, 106 Relative position and orientation estimation unit, 107 3D virtual object position and orientation estimation unit, 108 Image composition unit, 109 Input unit, 110 3D virtual object arrangement fixing unit, 200 HMD, 201 imaging unit, 202 display unit, 203 workstation, 204 mockup, 205 3D virtual object, 206 reference coordinate system, 207 3D virtual object coordinate system, 208 imaging unit Coordinate system, 209 sensor controller, 210 magnetic field generator, 211 imaging unit position and orientation acquisition unit, 212 hands

Claims (14)

現実物体の形状に対応する面である基準面を取得する取得手段と、
前記基準面との距離に基づき、三次元仮想物体の面のうち、一つの面を対応面として選択する選択手段と、
前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定手段と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動手段と、
前記移動手段によって移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定手段と、
を有することを特徴とする情報処理装置。
An acquisition means for acquiring a reference plane which is a plane corresponding to the shape of the real object;
Selection means for selecting one of the surfaces of the three-dimensional virtual object as a corresponding surface based on the distance from the reference surface ;
Setting means for setting the position and orientation of the three-dimensional virtual object so that the reference plane and the corresponding plane have a predetermined positional relationship;
Moving means for moving the position of the three-dimensional virtual object in accordance with the movement of the reference plane;
Determining means for determining the position of the three-dimensional virtual object based on the result of movement by the moving means;
An information processing apparatus comprising:
前記取得手段は、前記現実物体の形状を近似する面を前記基準面として取得することを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the acquisition unit acquires a surface that approximates the shape of the real object as the reference surface. 前記取得手段は、前記現実物体の輪郭線のサンプリング点を含む平面を前記基準面として算出することを特徴とする請求項1または2に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the acquisition unit calculates a plane including a sampling point of a contour line of the real object as the reference plane. 前記選択手段は、前記三次元仮想物体の面のうち、前記基準面との距離が最も短い面である面を前記対応面として選択することを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。   The said selection means selects the surface which is the surface whose distance with the said reference surface is the shortest among the surfaces of the said three-dimensional virtual object as said corresponding surface, The any one of Claim 1 to 3 characterized by the above-mentioned. The information processing apparatus described in 1. 前記選択手段は、前記三次元仮想物体のバウンディングボックスを作成し、該バウンディングボックスの面のうち、前記基準面の各頂点との距離が最も短い面を前記対応面として選択することを特徴とする請求項1から4のいずれか1項に記載の情報処理装置。   The selection unit creates a bounding box of the three-dimensional virtual object, and selects, as the corresponding surface, a surface having the shortest distance from each vertex of the reference surface among the surfaces of the bounding box. The information processing apparatus according to any one of claims 1 to 4. 前記設定手段は、前記基準面と前記対応面とが平行に交差するように前記三次元仮想物体の位置姿勢を設定することを特徴とする請求項1から5のいずれか1項に記載の情報処理装置。 The setting means, information according to any one of claims 1 5, characterized in that said reference surface and said corresponding surface to set the position and orientation of the three-dimensional virtual object so as to intersect in parallel Processing equipment. 前記設定手段は、前記三次元仮想物体を回転移動させることにより前記位置姿勢を設定することを特徴とする請求項1から6のいずれか1項に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the setting unit sets the position and orientation by rotating and moving the three-dimensional virtual object. 前記三次元仮想物体は他の現実物体を模したものであり、前記移動手段は該他の現実物体の輪郭線と一致するように前記三次元仮想物体の位置を移動することを特徴とする請求項1から7のいずれか1項に記載の情報処理装置。   The three-dimensional virtual object imitates another real object, and the moving means moves the position of the three-dimensional virtual object so as to coincide with the contour line of the other real object. Item 8. The information processing apparatus according to any one of Items 1 to 7. 前記他の現実物体と前記三次元仮想物体との相対位置を固定する固定手段を更に有することを特徴とする請求項8に記載の情報処理装置。   The information processing apparatus according to claim 8, further comprising a fixing unit that fixes a relative position between the other real object and the three-dimensional virtual object. 観察者の視点の位置姿勢に基づいて、前記三次元仮想物体に基づいた画像を表示する表示手段を更に有することを特徴とする請求項1から9に記載の情報処理装置。   The information processing apparatus according to claim 1, further comprising display means for displaying an image based on the three-dimensional virtual object based on a position and orientation of an observer's viewpoint. 前記表示手段は、現実空間の画像を撮像する撮像手段を備え、前記撮像手段によって撮像された前記現実空間の画像に、前記三次元仮想物体の画像を重畳して表示することを特徴とする請求項10に記載の情報処理装置。   The display unit includes an imaging unit that captures an image of a real space, and displays the image of the three-dimensional virtual object superimposed on the image of the real space captured by the imaging unit. Item 11. The information processing apparatus according to Item 10. 前記取得手段は、前記現実物体を前記撮像手段によって撮像された複数の画像から、前記基準面を作成して取得することを特徴とする請求項11に記載の情報処理装置。   The information processing apparatus according to claim 11, wherein the acquisition unit generates and acquires the reference plane from a plurality of images captured by the imaging unit. 現実物体の形状に対応する面である基準面を取得する取得工程と、
前記基準面との距離に基づき、三次元仮想物体の面のうち、一つの面を対応面として選択する選択工程と、
前記基準面と前記対応面とが所定の位置関係になるように前記三次元仮想物体の位置姿勢を設定する設定工程と、
前記基準面の移動に応じて、前記三次元仮想物体の位置を移動する移動工程と、
前記移動工程において移動された結果に基づいて、前記三次元仮想物体の位置を決定する決定工程と、
を有することを特徴とする情報処理方法。
An acquisition step of acquiring a reference surface that is a surface corresponding to the shape of the real object;
A selection step of selecting one of the surfaces of the three-dimensional virtual object as a corresponding surface based on the distance from the reference surface ;
A setting step for setting the position and orientation of the three-dimensional virtual object so that the reference plane and the corresponding plane have a predetermined positional relationship;
A moving step of moving the position of the three-dimensional virtual object according to the movement of the reference plane;
A determination step of determining a position of the three-dimensional virtual object based on the result of movement in the movement step;
An information processing method characterized by comprising:
請求項1乃至請求項12のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。   The program for functioning a computer as each means of the information processing apparatus of any one of Claims 1 thru | or 12.
JP2014237015A 2014-11-21 2014-11-21 Information processing apparatus, information processing method, and program Active JP6581348B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014237015A JP6581348B2 (en) 2014-11-21 2014-11-21 Information processing apparatus, information processing method, and program
JP2019159723A JP6948363B2 (en) 2014-11-21 2019-09-02 Information processing equipment, information processing methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014237015A JP6581348B2 (en) 2014-11-21 2014-11-21 Information processing apparatus, information processing method, and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019159723A Division JP6948363B2 (en) 2014-11-21 2019-09-02 Information processing equipment, information processing methods, and programs

Publications (2)

Publication Number Publication Date
JP2016099839A JP2016099839A (en) 2016-05-30
JP6581348B2 true JP6581348B2 (en) 2019-09-25

Family

ID=56075824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014237015A Active JP6581348B2 (en) 2014-11-21 2014-11-21 Information processing apparatus, information processing method, and program

Country Status (1)

Country Link
JP (1) JP6581348B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168521B (en) * 2017-04-10 2020-06-23 北京小鸟看看科技有限公司 Film viewing guide method and device and head-mounted display equipment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012208705A (en) * 2011-03-29 2012-10-25 Nec Casio Mobile Communications Ltd Image operation apparatus, image operation method and program
JP2014071850A (en) * 2012-10-02 2014-04-21 Osaka Prefecture Univ Image processing apparatus, terminal device, image processing method, and program

Also Published As

Publication number Publication date
JP2016099839A (en) 2016-05-30

Similar Documents

Publication Publication Date Title
US11010965B2 (en) Virtual object placement for augmented reality
US8055061B2 (en) Method and apparatus for generating three-dimensional model information
JP2004062758A (en) Information processor and information processing method
JP2019534510A5 (en)
JP5709440B2 (en) Information processing apparatus and information processing method
CN109313821B (en) Three-dimensional object scan feedback
CN110956695B (en) Information processing apparatus, information processing method, and storage medium
JP7238060B2 (en) Information processing device, its control method, and program
JP6319804B2 (en) Projection image generation apparatus, projection image generation method, and projection image generation program
JP2006252468A (en) Image processing method and image processing system
JP2009087161A (en) Image processor and image processing method
US20200211275A1 (en) Information processing device, information processing method, and recording medium
Zhu et al. Wii remote–based low-cost motion capture for automated assembly simulation
JP6818968B2 (en) Authoring device, authoring method, and authoring program
JP6581348B2 (en) Information processing apparatus, information processing method, and program
JP6948363B2 (en) Information processing equipment, information processing methods, and programs
JP4689344B2 (en) Information processing method and information processing apparatus
JP3433204B2 (en) 3D model construction device
JP2015121892A (en) Image processing apparatus, and image processing method
JP6429240B2 (en) Shape detection apparatus, shape detection method, and program
JP7465133B2 (en) Information processing device and information processing method
JP6660159B2 (en) Information processing apparatus, control method for information processing apparatus, and program
JP2002245486A (en) Device, method and program for three-dimensional model generation
JP2016038632A (en) Image processing apparatus and image processing method
JP2006252059A (en) Image processing method and image processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190318

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: 20190802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190830

R151 Written notification of patent or utility model registration

Ref document number: 6581348

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151