JP4307189B2 - Information processing method, information processing apparatus, and identification method - Google Patents

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

Info

Publication number
JP4307189B2
JP4307189B2 JP2003314422A JP2003314422A JP4307189B2 JP 4307189 B2 JP4307189 B2 JP 4307189B2 JP 2003314422 A JP2003314422 A JP 2003314422A JP 2003314422 A JP2003314422 A JP 2003314422A JP 4307189 B2 JP4307189 B2 JP 4307189B2
Authority
JP
Japan
Prior art keywords
index
orientation
coordinate
image
imaging
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.)
Expired - Fee Related
Application number
JP2003314422A
Other languages
Japanese (ja)
Other versions
JP2005083826A5 (en
JP2005083826A (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 JP2003314422A priority Critical patent/JP4307189B2/en
Priority to EP03255724.1A priority patent/EP1398601A3/en
Priority to US10/660,637 priority patent/US6956503B2/en
Priority to CNB031569358A priority patent/CN1296680C/en
Publication of JP2005083826A publication Critical patent/JP2005083826A/en
Priority to US11/180,524 priority patent/US7423553B2/en
Publication of JP2005083826A5 publication Critical patent/JP2005083826A5/ja
Application granted granted Critical
Publication of JP4307189B2 publication Critical patent/JP4307189B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、現実空間を撮像する撮像部と大まかな位置姿勢を計測する位置姿勢計測部を備える撮像装置もしくは計測対象の位置姿勢を計測するために利用する指標の識別技術に関するものである。   The present invention relates to an imaging apparatus including an imaging unit that images a real space and a position and orientation measurement unit that measures a rough position and orientation, or an index identification technique used to measure the position and orientation of a measurement target.

現実空間を撮像するカメラなどの撮像部(以下適宜カメラと言い換える)の位置姿勢計測は、例えば現実空間と仮想空間とを融合表示する複合現実感システムにおいて必要となる。これに係る従来技術としては、現実空間に配置した位置が既知のマーカ、または現実空間中の位置が既知の特徴点(以下、マーカと特徴点を合わせて指標という)を用いて、カメラの位置姿勢を測定する位置姿勢センサの計測誤差を補正するという方法がある(例えば特許文献1乃至3を参照)。   Position / orientation measurement of an imaging unit such as a camera that captures a real space (hereinafter referred to as a camera as appropriate) is required in, for example, a mixed reality system that displays a fusion of real space and virtual space. As a related art related to this, the position of the camera is determined by using a marker whose position in the real space is known or a feature point whose position in the real space is known (hereinafter, the marker and the feature point are collectively referred to as an index). There is a method of correcting a measurement error of a position and orientation sensor that measures an orientation (see, for example, Patent Documents 1 to 3).

この方法に係る従来の技術では、個々に計算原理や手段、工程が異なるものの、カメラの位置姿勢を測定するための6自由度の位置姿勢センサから得られる情報、現実空間に配置した位置が既知の指標の情報、及びこれらの指標をカメラで捉えることで得られる情報を基にして、カメラの位置姿勢を求めていた。   In the conventional technology related to this method, although the calculation principle, means, and process are individually different, information obtained from a position / orientation sensor with six degrees of freedom for measuring the position and orientation of the camera and the position arranged in the real space are known. The position and orientation of the camera are obtained based on the information of the indices and information obtained by capturing these indices with the camera.

これらの方法において、画像から検出した指標が現実空間に配置した指標のうちのどの指標に対応するのかを求める手段のひとつとして、画像から検出した指標の座標と、位置姿勢計測値を基にして投影して得られる画像面上での指標の座標とを比較し、距離が近いものが対応する指標であるという判定手段が用いられていた。
特開平11−084307号公報 特開2000−041173号公報 特願2000−354230号公報
In these methods, as one of the means for determining which of the indices placed in the real space the index detected from the image corresponds to, based on the coordinates of the index detected from the image and the position and orientation measurement values A determination means is used in which the coordinates of the indices on the image plane obtained by projection are compared, and the one with a short distance is the corresponding index.
Japanese Patent Laid-Open No. 11-084307 JP 2000-041173 A Japanese Patent Application No. 2000-354230

従来技術で利用される「位置姿勢センサによる計測誤差を補正するために利用される指標」を、例えば、図2に示すように塔状の物体の存在する現実空間に対して、その塔状物体の様々な方向の側面に配置してあるような場合を想定する。   The “index used for correcting the measurement error by the position / orientation sensor” used in the prior art is, for example, the tower-like object with respect to the real space where the tower-like object exists as shown in FIG. A case is assumed where these are arranged on the side surfaces in various directions.

同図において201はそのような現実空間を撮像するカメラ、202はカメラ201の大まかな位置姿勢を計測する3次元位置姿勢センサ、203,204は3次元位置姿勢センサ202による計測誤差を補正するために利用される指標、205は指標203,204を配置する塔状物体である。さらにカメラ201は、この塔状物体205の周囲を移動可能であり、塔状物体205の各側面をすべて撮像する可能性がある場合を想定する。   In the figure, 201 is a camera that captures such a real space, 202 is a three-dimensional position and orientation sensor that measures the approximate position and orientation of the camera 201, and 203 and 204 are for correcting measurement errors caused by the three-dimensional position and orientation sensor 202. An index 205 is a tower-like object on which the indices 203 and 204 are arranged. Furthermore, it is assumed that the camera 201 can move around the tower-like object 205 and may image all the side surfaces of the tower-like object 205.

このような場合、図3に示すように、塔状物体205の側面にほぼ垂直な位置から撮像するような場合がありえる。同図において300はカメラ201によって撮像された画像(撮像画面)で、301は図2における指標203が画像に写りこんだものを示している。302は、3次元位置姿勢センサ202により計測したカメラ201の位置姿勢を基にして、指標203の3次元位置を撮像画像300の画像面に投影計算して得られた撮像画面上での座標を示すものであり、303は指標204の3次元位置を撮像画像300の画像面に投影計算して得られた撮像画面上での座標を示すものである。   In such a case, as shown in FIG. 3, there may be a case where imaging is performed from a position substantially perpendicular to the side surface of the tower-like object 205. In the figure, reference numeral 300 denotes an image (imaging screen) taken by the camera 201, and 301 denotes an image in which the index 203 in FIG. 2 is reflected in the image. Reference numeral 302 denotes the coordinates on the imaging screen obtained by projecting and calculating the three-dimensional position of the index 203 on the image plane of the captured image 300 based on the position and orientation of the camera 201 measured by the three-dimensional position and orientation sensor 202. Reference numeral 303 denotes coordinates on the imaging screen obtained by projecting and calculating the three-dimensional position of the index 204 on the image plane of the captured image 300.

もしも仮に3次元位置姿勢センサ202による位置姿勢計測値に誤差がないとすると、302で示す座標位置と画像301の座標位置とは元来同じ座標であるが、実際には位置姿勢計測値には誤差が含まれるため、同じ位置とはならない。従来技術では、撮像画像から検出した指標(図3であれば301)が、実際に配置された指標のうちのどの指標に対応するのかを求める手段として、画像から検出した指標の座標値と、位置姿勢計測値を基にして計算されたこの指標の画面上での座標値との間の距離を利用している。そのため、この図3に示す例のような場合、302で示す座標位置と画像301の座標位置との間の距離よりも、303で示す座標位置と画像301の座標位置との間の距離の方が、センサ誤差の影響のために短くなっているため、301と303が対応する指標として判断されることとなる。303はこの塔状物体205の裏側に配置された指標が投影された点であるため、誤った対応付けがなされてしまうことを意味する。   If there is no error in the position / orientation measurement value obtained by the three-dimensional position / orientation sensor 202, the coordinate position indicated by 302 and the coordinate position of the image 301 are originally the same coordinates. Since the error is included, it is not the same position. In the prior art, as a means for determining which of the indices actually arranged, the index detected from the captured image (301 in FIG. 3) corresponds to the coordinate value of the index detected from the image, The distance between the coordinates of the index calculated on the basis of the position and orientation measurement values on the screen is used. Therefore, in the case of the example shown in FIG. 3, the distance between the coordinate position indicated by 303 and the coordinate position of image 301 is greater than the distance between the coordinate position indicated by 302 and the coordinate position of image 301. However, since it is shortened due to the influence of the sensor error, 301 and 303 are determined as corresponding indexes. Reference numeral 303 denotes a point on which an index arranged on the back side of the tower-like object 205 is projected, which means that an incorrect association is made.

本発明は以上の問題に鑑みてなされたものであり、画像から検出した指標が現実空間に配置した指標のうちのどの指標に対応するのかを正確に識別することを目的とする。   The present invention has been made in view of the above problems, and an object of the present invention is to accurately identify which index among indices disposed in a real space corresponds to an index detected from an image.

本発明の目的を達成するために、例えば本発明の情報処理方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an information processing method of the present invention comprises the following arrangement.

即ち、指標が配置された現実空間の画像を撮像する撮像手段による撮像画像中の指標の位置を検出する検出工程と、前記指標の前記現実空間中の位置、前記撮像手段の位置姿勢の一方が計測に基づいて求められ、他方が計測で求められている若しくは予め保持されている場合に、前記指標の前記現実空間中の位置と前記撮像手段の位置姿勢とに基づいて前記現実空間中の指標を前記撮像画像上に投影した場合の座標位置を求める第1の計算工程とを備え、前記撮像画像上において、前記検出工程で検出した各指標の座標位置と、前記第1の計算工程で計算した座標位置とで、互いに距離の近い座標位置の指標同士を対応付ける処理を行う情報処理方法であって、
注目指標の法線ベクトルと前記撮像手段の視軸ベクトルとを用いて計算される値を求める第2の計算工程と、
前記第1の計算工程による前記注目指標の前記撮像画像上における座標位置を求める処理を行うか否かを、前記第2の計算工程で求めた値が取る範囲に基づいて決定する決定工程とを備え、
前記決定工程で前記第1の計算工程による前記注目指標の前記撮像画像上における座標位置を求める処理を行うと決定した場合には、前記第1の計算工程で計算した前記注目指標の座標位置と、前記検出工程で検出した各指標の座標位置の何れかとで、距離の近い座標位置の指標同士を対応付ける処理を行うことを特徴とする。
That is, one of the detection step of detecting the position of the index in the captured image by the imaging unit that captures an image of the real space where the index is arranged, and the position of the index in the real space and the position and orientation of the imaging unit are An index in the real space based on the position of the index in the real space and the position and orientation of the imaging means when the other is obtained by measurement or held in advance And calculating the coordinate position of each index detected in the detection step on the captured image and calculating in the first calculation step. And an information processing method for performing processing for associating indices at close coordinate positions with each other,
A second calculation step for obtaining a value calculated using the normal vector of the attention index and the visual axis vector of the imaging means;
A determination step of determining whether or not to perform a process of obtaining a coordinate position of the target index on the captured image in the first calculation step based on a range taken by the value obtained in the second calculation step; Prepared,
When it is determined in the determining step that the process of obtaining the coordinate position of the target index on the captured image in the first calculation step is performed, the coordinate position of the target index calculated in the first calculation step The process of associating the indices at the coordinate positions having a short distance with any one of the coordinate positions of the indices detected in the detection step is performed.

本発明の目的を達成するために、例えば本発明の情報処理装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an information processing apparatus of the present invention comprises the following arrangement.

即ち、指標が配置された現実空間の画像を撮像する撮像手段と、撮像手段による撮像画像中の指標の位置を検出する検出手段と、前記指標の前記現実空間中の位置、前記撮像手段の位置姿勢の一方が計測に基づいて求められ、他方が計測で求められている若しくは予め保持されている場合に、前記指標の前記現実空間中の位置と前記撮像手段の位置姿勢とに基づいて前記現実空間中の指標を前記撮像画像上に投影した場合の座標位置を求める第1の計算手段とを備え、前記撮像画像上において、前記検出手段が検出した各指標の座標位置と、前記第1の計算手段が計算した座標位置とで、互いに距離の近い座標位置の指標同士を対応付ける処理を行う情報処理装置であって、
注目指標の法線ベクトルと前記撮像手段の視軸ベクトルとを用いて計算される値を求める第2の計算手段と、
前記第1の計算手段による前記注目指標の前記撮像画像上における座標位置を求める処理を行うか否かを、前記第2の計算手段が求めた値が取る範囲に基づいて決定する決定手段とを備え、
前記決定手段が前記第1の計算手段による前記注目指標の前記撮像画像上における座標位置を求める処理を行うと決定した場合には、前記第1の計算手段が計算した前記注目指標の座標位置と、前記検出手段が検出した各指標の座標位置の何れかとで、距離の近い座標位置の指標同士を対応付ける処理を行うことを特徴とする。
That is, an imaging unit that captures an image of the real space where the index is arranged, a detection unit that detects a position of the index in the image captured by the imaging unit, a position of the index in the real space, and a position of the imaging unit When one of the postures is obtained based on the measurement and the other is obtained by measurement or held in advance, the reality is based on the position of the index in the real space and the position and posture of the imaging unit. First calculation means for obtaining a coordinate position when an index in space is projected on the captured image, and the coordinate position of each index detected by the detection means on the captured image; An information processing apparatus that performs processing for associating indices of coordinate positions that are close to each other with the coordinate positions calculated by the calculation means,
Second calculation means for obtaining a value calculated using the normal vector of the attention index and the visual axis vector of the imaging means;
Determining means for determining whether or not to perform processing for obtaining a coordinate position of the target index on the captured image by the first calculating means based on a range taken by a value obtained by the second calculating means; Prepared,
When the determination unit determines to perform the process of obtaining the coordinate position of the target index on the captured image by the first calculation unit, the coordinate position of the target index calculated by the first calculation unit and A process of associating indices at close coordinate positions with any one of the coordinate positions of the indices detected by the detecting means.

本発明の目的を達成するために、例えば本発明の識別方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, the identification method of the present invention comprises the following arrangement.

即ち、現実空間を撮像する撮像装置の位置姿勢計測に利用する指標の識別方法であって、
前記撮像装置の大まかな位置姿勢を計測する位置姿勢計測工程と、
前記撮像装置が指標を含む前記現実空間を撮像する撮像工程と、
前記撮像工程で得られた現実空間の画像中に含まれる指標の当該画像中の座標を求める第1の画像座標計算工程と、
前記位置姿勢計測工程で得た位置姿勢における、前記撮像装置による撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと指標の法線ベクトルとの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする。
That is, an identification method of an index used for position and orientation measurement of an imaging device that images a real space,
A position and orientation measurement step for measuring a rough position and orientation of the imaging device;
An imaging step in which the imaging device images the real space including the index;
A first image coordinate calculation step for obtaining coordinates in the image of an index included in the image of the real space obtained in the imaging step;
A second image coordinate calculation step for obtaining coordinates of an index in an imaging screen by the imaging device at the position and orientation obtained in the position and orientation measurement step,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, the visual axis vector of the imaging device obtained in the position and orientation measurement step, and the index Based on the relationship between the normal vector and the normal vector, the index in the imaging screen corresponds to which of the indices arranged in the real space .

本発明の目的を達成するために、例えば本発明の識別方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, the identification method of the present invention comprises the following arrangement.

即ち、現実空間にある対象物体の位置姿勢計測に利用する指標の識別方法であって、
前記対象物体の大まかな位置姿勢を計測する位置姿勢計測工程と、
固定された撮像装置にて前記対象物体の撮像を行う撮像工程と、
前記撮像工程で得られた撮像画像中の指標の座標を求める第1の画像座標計算工程と、
前記位置姿勢計測工程で得た位置姿勢を基にして、前記撮像装置による撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと指標の法線ベクトルの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする。
That is, an index identification method used for measuring the position and orientation of a target object in real space,
A position and orientation measurement step of measuring a rough position and orientation of the target object;
An imaging step of imaging the target object with a fixed imaging device;
A first image coordinate calculation step for obtaining coordinates of an index in the captured image obtained in the imaging step;
Based on the position and orientation obtained in the position and orientation measurement step, a second image coordinate calculation step for obtaining the coordinates of the index in the imaging screen by the imaging device,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, the visual axis vector of the imaging device obtained in the position and orientation measurement step, and the index Based on the relationship between the normal vectors, the index in the imaging screen corresponds to which of the indices arranged in the real space .

本発明の目的を達成するために、例えば本発明の識別方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, the identification method of the present invention comprises the following arrangement.

即ち、現実空間にある対象物体の位置姿勢計測に利用する指標の識別方法であって、
前記対象物体の大まかな位置姿勢を計測する第1の位置姿勢計測工程と、
前記対象物体を撮像する撮像装置の大まかな位置姿勢を計測する第2の位置姿勢計測工程と、
前記撮像装置にて前記対象物体の撮像を行う撮像工程と、
前記撮像工程で得られた撮像画像中の指標の座標を求める第1の画像座標計算工程と、
前記第1の位置姿勢計測工程と前記第2の位置姿勢計測工程とで得た撮像装置を基準とする対象物体の位置姿勢、あるいは、前記対象物体を基準とする前記撮像装置の位置姿勢を基にして、前記撮像装置の撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記第2の位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと前記第1の位置姿勢計測工程で得た指標の法線ベクトルの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする。
That is, an index identification method used for measuring the position and orientation of a target object in real space,
A first position and orientation measurement step of measuring a rough position and orientation of the target object;
A second position / orientation measurement step for measuring a rough position / orientation of an imaging apparatus that images the target object;
An imaging step of imaging the target object in the imaging device;
A first image coordinate calculation step for obtaining coordinates of an index in the captured image obtained in the imaging step;
Based on the position and orientation of the target object with reference to the imaging device obtained in the first position and orientation measurement step and the second position and orientation measurement step, or based on the position and orientation of the imaging device with reference to the target object. And a second image coordinate calculation step for obtaining the coordinates of the index in the imaging screen of the imaging device,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, and the visual axis vector of the imaging device obtained in the second position and orientation measurement step And the relationship between the normal vectors of the indices obtained in the first position and orientation measurement step, which of the indices arranged in the real space corresponds to the index in the imaging screen It is characterized by identifying .

本発明の構成によって、画像から検出した指標が現実空間に配置した指標のうちのどの指標に対応するのかを正確に識別することができる。   According to the configuration of the present invention, it is possible to accurately identify which index among the indices arranged in the real space corresponds to the index detected from the image.

以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。   Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.

[第1の実施形態]
図1は、本実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。このシステムは、現実空間を撮像するカメラ101、カメラ101の位置姿勢を計測する3次元位置姿勢センサ102、本実施形態に係る情報処理装置として機能するコンピュータ150に大別される。
[First Embodiment]
FIG. 1 is a block diagram illustrating a functional configuration of a system including an information processing apparatus according to the present embodiment. This system is roughly divided into a camera 101 that captures a real space, a three-dimensional position and orientation sensor 102 that measures the position and orientation of the camera 101, and a computer 150 that functions as the information processing apparatus according to the present embodiment.

本実施形態に係るシステムは、現実空間に配置(この「配置」という文言はここでは意図的に配置されているもの、及び自然特徴として存在し、意図的に配置したものではないものの両方を含む)されている指標を含む現実空間の画像をカメラ101によって撮像した場合に、撮像画像から検出される指標の座標位置と、カメラ101の位置姿勢に基づいて指標が撮像画像上に位置すべき座標位置とで、同じ指標の座標位置同士の対応付けを行うことにより、撮像画像から検出した指標が、現実空間に配置されている指標のうちのどれにあたるのかを識別する処理を行う。   The system according to the present embodiment includes an arrangement in the real space (the term “arrangement” includes both intentionally arranged here and those that exist as natural features and are not intentionally arranged. ) When an image of a real space including the index that has been captured is captured by the camera 101, the index should be positioned on the captured image based on the coordinate position of the index detected from the captured image and the position and orientation of the camera 101. By associating the coordinate positions of the same index with each position, a process of identifying which of the indices arranged in the real space corresponds to the index detected from the captured image is performed.

以下、図1に示すシステムを構成する各部についてより詳細に説明する。   Hereafter, each part which comprises the system shown in FIG. 1 is demonstrated in detail.

カメラ101には3次元位置姿勢センサ102が取り付けられており、その取り付け位置は固定されている。3次元位置姿勢センサ102は、カメラ101の3次元位置姿勢(位置、姿勢共に3自由度)を計測するのであるが、計測するのはあくまで、センサ座標系におけるカメラ101の位置姿勢である。ここでセンサ座標系とは、例えば3次元位置姿勢センサ102が磁気センサである場合、この磁気を発生する発信器の位置を原点とし、この原点を通って互いに直交する3軸を夫々x、y、z軸とする座標系を指す。従って後述するコンピュータ150にはカメラ101により撮像された現実空間の画像のデータと共に、3次元位置姿勢センサ102により計測されたセンサ座標系におけるカメラ101の位置姿勢を示すデータが入力されることになる。   A three-dimensional position and orientation sensor 102 is attached to the camera 101, and the attachment position is fixed. The three-dimensional position / orientation sensor 102 measures the three-dimensional position / orientation of the camera 101 (3 degrees of freedom in both position and orientation), but the measurement is only the position / orientation of the camera 101 in the sensor coordinate system. Here, the sensor coordinate system is, for example, when the three-dimensional position / orientation sensor 102 is a magnetic sensor, the origin of which is the position of the transmitter that generates the magnetism, and the three axes orthogonal to each other through the origin are x and y, respectively. , Refers to the coordinate system with the z axis. Therefore, data indicating the position and orientation of the camera 101 in the sensor coordinate system measured by the three-dimensional position and orientation sensor 102 is input to the computer 150 described later, along with the data of the real space image captured by the camera 101. .

次に、コンピュータ150を構成する各部について説明する。位置姿勢計測部103は、3次元位置姿勢センサ102を駆動・制御して、3次元位置姿勢センサ102にカメラ101のセンサ座標系における位置姿勢を計測させ、その計測結果(位置姿勢値)のデータを後段の指標座標投影計算部105に出力する処理を行う。   Next, each part constituting the computer 150 will be described. The position / orientation measurement unit 103 drives / controls the three-dimensional position / orientation sensor 102 to cause the three-dimensional position / orientation sensor 102 to measure the position / orientation of the camera 101 in the sensor coordinate system, and the measurement result (position / orientation value) data. Is output to the index coordinate projection calculation unit 105 in the subsequent stage.

指標情報データ保持部104には、現実空間における各指標の世界座標系における座標位置のデータが予め保存されており、指標座標投影計算部105は、3次元位置姿勢センサ102により計測されたセンサ座標系におけるカメラ101の位置姿勢を示すデータに基づいて後述の変換処理を行い、各指標の世界座標系における座標位置をカメラ101によって撮像された画像(撮像画像)上に投影し、撮像画像上における各指標の座標値を求める処理を行う。   In the index information data holding unit 104, coordinate position data in the world coordinate system of each index in the real space is stored in advance, and the index coordinate projection calculation unit 105 detects the sensor coordinates measured by the three-dimensional position and orientation sensor 102. Conversion processing described later is performed based on data indicating the position and orientation of the camera 101 in the system, and the coordinate position of each index in the world coordinate system is projected onto an image (captured image) captured by the camera 101, and the captured image is displayed on the captured image. Processing for obtaining the coordinate value of each index is performed.

指標検出部106は、カメラ101により撮像され、入力された撮像画像から、この撮像画像に含まれる指標を検出し、撮像画像における座標位置を求める処理を行う。求めた座標位置のデータは後段の指標識別部107に出力する。   The index detection unit 106 detects an index included in the captured image from the captured image that is captured and input by the camera 101, and performs processing for obtaining a coordinate position in the captured image. The obtained coordinate position data is output to the index identification unit 107 in the subsequent stage.

指標識別部107は、指標座標投影計算部105から出力された「撮像画像上に投影された各指標の座標位置」と、指標検出部106から出力された「撮像画像から検出した各指標の座標位置」と、指標情報データ保持部104が保持する「各指標の法線ベクトル」(詳細は後述)と、カメラ101の世界座標系における姿勢から得られる「カメラ101の視軸ベクトル」(詳細は後述)と、を用いて、撮像画像から検出した指標が、実際に配置された指標のうちのどの指標に対応するのかを求める。   The index identification unit 107 outputs “the coordinate position of each index projected on the captured image” output from the index coordinate projection calculation unit 105 and “the coordinates of each index detected from the captured image” output from the index detection unit 106. “Position”, “normal vector of each index” held by the index information data holding unit 104 (details will be described later), and “visual axis vector of the camera 101” obtained from the attitude of the camera 101 in the world coordinate system (details are given below) The index detected from the picked-up image corresponds to which index among the actually arranged indexes.

ここで「各指標の法線ベクトル」とは、各指標が位置する面(曲面の場合もあるがその場合には接面の法線ベクトル)の法線ベクトルを指す。従って指標情報データ保持部104は、各指標について、世界座標系における座標位置のデータと法線ベクトルの成分を表すデータとをセットにして保持している。ここで法線ベクトルの成分の表現方法は特には限定しないが、法線ベクトルを単位ベクトルとして、x軸方向成分、y軸方向成分、z軸方向成分で表現しても良いし、極座標系における表現方法を用いても良い。   Here, the “normal vector of each index” refers to a normal vector of a surface on which each index is located (which may be a curved surface but in this case, a tangential surface normal vector). Therefore, the index information data holding unit 104 holds, for each index, a set of coordinate position data in the world coordinate system and data representing a normal vector component. Here, the method of expressing the normal vector component is not particularly limited. However, the normal vector may be expressed as a unit vector by an x-axis direction component, a y-axis direction component, and a z-axis direction component, or in a polar coordinate system. An expression method may be used.

図13は、コンピュータ150の基本構成を示すブロック図である。1301はCPUで、RAM1302やROM1303に記憶されているプログラムやデータを用いてコンピュータ150全体の制御を行うと共に、後述する本実施形態に係る指標識別処理を行う。   FIG. 13 is a block diagram showing the basic configuration of the computer 150. A CPU 1301 controls the entire computer 150 using programs and data stored in the RAM 1302 and the ROM 1303 and performs index identification processing according to the present embodiment, which will be described later.

1302はRAMで、外部記憶装置1307や記憶媒体ドライブ1308からロードされたプログラムやデータを記憶するエリアを備えると共に、CPU1301が各処理を行うために使用するワークエリアも備える。   A RAM 1302 includes an area for storing programs and data loaded from the external storage device 1307 and the storage medium drive 1308, and also includes a work area used by the CPU 1301 for performing each process.

1303はROMで、ここにブートプログラムなどを格納する。   A ROM 1303 stores a boot program and the like.

1304、1305は夫々キーボード、マウスで、CPU1301に各指示を入力するために用いられるものである。   Reference numerals 1304 and 1305 denote a keyboard and a mouse, respectively, which are used to input instructions to the CPU 1301.

1306は表示部で、CRTや液晶画面などにより構成されており、画像や文字といった情報を表示するために用いられる。   A display unit 1306 includes a CRT, a liquid crystal screen, and the like, and is used to display information such as images and characters.

1307は外部記憶装置で、ハードディスクドライブなどの大容量情報記憶装置として機能する装置であって、ここにOSや本実施形態に係る指標識別処理をCPU1301に実行させるためのプログラムやデータなどを保存させておくことができる。なお、これらのプログラムやデータは、CPU1301の制御により、必要に応じてRAM1302に読み出されるものである。   Reference numeral 1307 denotes an external storage device that functions as a large-capacity information storage device such as a hard disk drive, and stores an OS and programs and data for causing the CPU 1301 to execute index identification processing according to the present embodiment. I can keep it. These programs and data are read into the RAM 1302 as needed under the control of the CPU 1301.

1308は記憶媒体ドライブで、CD−ROMやDVD−ROMなどに記憶されているプログラムやデータを外部記憶装置1307やRAM1302に読み出す処理を行う。また記憶媒体がCD−RやDVD−RAMなどの書き込み可能なものである場合には、これに情報を書き込む処理も行う。   Reference numeral 1308 denotes a storage medium drive that performs processing for reading programs and data stored in a CD-ROM, DVD-ROM, and the like to an external storage device 1307 and a RAM 1302. If the storage medium is a writable medium such as a CD-R or a DVD-RAM, a process of writing information to this is also performed.

1309はインターフェース(I/F)で、図1に示したカメラ101、3次元位置姿勢センサ102をコンピュータ150に接続するためのもので、カメラ101により撮像された画像、3次元位置姿勢センサ102によって計測されたカメラ101のセンサ座標系における位置姿勢のデータはこのインターフェース1309を介してRAM1302に入力される。   Reference numeral 1309 denotes an interface (I / F) for connecting the camera 101 and the three-dimensional position / orientation sensor 102 shown in FIG. 1 to the computer 150. The image captured by the camera 101 is displayed by the three-dimensional position / orientation sensor 102. The measured position / orientation data in the sensor coordinate system of the camera 101 is input to the RAM 1302 via the interface 1309.

1310は上述の各部を繋ぐ、バスである。   Reference numeral 1310 denotes a bus that connects the above-described units.

次に、本実施形態に係る指標識別処理について、同処理のフローチャートを示す図4を用いて、以下説明する。尚、同図のフローチャートに従ったプログラムは外部記憶装置1307や記憶媒体に格納されており、CPU1301の制御によりRAM1302に読み出され(記憶媒体に格納されている場合には、記憶媒体ドライブ1308を制御してこの記憶媒体から読み出す)、CPU1301がこれを実行することで、本実施形態に係る情報処理装置は後述の処理を実行することになる。従って以下の説明で登場する位置姿勢計測部103、指標座標投影計算部105、指標検出部106、指標識別部107は本実施形態では夫々プログラムにより実現されるものであるが、これらをハードウェアにより実現しても良いことは言うまでもない。   Next, the index identification process according to the present embodiment will be described below with reference to FIG. 4 showing a flowchart of the process. The program according to the flowchart of FIG. 10 is stored in an external storage device 1307 or a storage medium, and is read into the RAM 1302 under the control of the CPU 1301 (if stored in the storage medium, the storage medium drive 1308 is loaded. When the CPU 1301 executes this, the information processing apparatus according to the present embodiment executes the processing described later. Therefore, the position / orientation measurement unit 103, the index coordinate projection calculation unit 105, the index detection unit 106, and the index identification unit 107 appearing in the following description are each realized by a program in the present embodiment. Needless to say, it may be realized.

ステップS401では、3次元位置姿勢センサ102を制御して、カメラ101のセンサ座標系における位置姿勢を計測させ、その計測結果のデータを信号として指標座標投影計算部105に入力する。次にステップS402では、指標座標投影計算部105がステップS401で得られたカメラ101のセンサ座標系における位置姿勢のデータを用いて、ビューイング変換行列を求める。   In step S401, the three-dimensional position / orientation sensor 102 is controlled to measure the position / orientation of the camera 101 in the sensor coordinate system, and data of the measurement result is input to the index coordinate projection calculation unit 105 as a signal. In step S402, the index coordinate projection calculation unit 105 obtains a viewing transformation matrix using the position and orientation data in the sensor coordinate system of the camera 101 obtained in step S401.

ビューイング変換とは、カメラ101の視点位置を原点とし、撮像面をx−y平面、視軸をz軸負へのベクトルとおいた3次元座標系をカメラ座標系とし、現実空間中の1点を原点とし、この原点から互いに直交する3つの軸をx軸、y軸、z軸とする座標系を世界座標系としたときに、この2つの座標系間の座標変換のことである。従ってビューイング変換行列とは、この2つの座標系間の座標変換を行うための行列である。よって、このビューイング変換行列を求めておけば、世界座標系上にある座標値をカメラ座標系の座標値に変換することが可能となる。また、このビューイング変換行列は換言すれば、世界座標系におけるカメラ101の位置姿勢を示すものでもある。   The viewing transformation is a point in the real space where a camera coordinate system is a three-dimensional coordinate system in which the viewpoint position of the camera 101 is the origin, the imaging plane is the xy plane, and the visual axis is a negative z-axis vector. Is a coordinate transformation between the two coordinate systems, where the coordinate system having the x axis, the y axis, and the z axis as three axes orthogonal to each other from the origin is defined as the world coordinate system. Therefore, the viewing transformation matrix is a matrix for performing coordinate transformation between the two coordinate systems. Therefore, if this viewing conversion matrix is obtained, it is possible to convert the coordinate values on the world coordinate system into the coordinate values of the camera coordinate system. In other words, this viewing transformation matrix also indicates the position and orientation of the camera 101 in the world coordinate system.

ここで、センサ座標系と世界座標系との間の関係は既知であるとすると(例えば、センサ座標系は世界座標系上に固定された関係にある)、センサ座標系上の位置姿勢は世界座標系上の位置姿勢に容易に変換できる。そのため、センサ座標系で得られているカメラの位置姿勢を基にして、ビューイング変換行列を生成することができる。   Here, if the relationship between the sensor coordinate system and the world coordinate system is known (for example, the sensor coordinate system is fixed on the world coordinate system), the position and orientation on the sensor coordinate system is the world It can be easily converted to a position and orientation on the coordinate system. Therefore, a viewing transformation matrix can be generated based on the camera position and orientation obtained in the sensor coordinate system.

次に、ステップS403では、指標座標投影計算部105が、指標情報データ保持部104に予め保持されている世界座標系における各指標の位置を、ステップS402で求めたビューイング変換行列によってカメラ座標系における位置へと変換し、更に、カメラの透視投影変換計算を行うことによって撮像画像面への投影座標を計算する。即ち、ステップS403では、指標の世界座標系における位置と、求めたビューイング変換行列に従ったカメラ101の位置姿勢との関係に基づいて、各指標が撮像画像上に位置すべき座標位置を求める。   Next, in step S403, the index coordinate projection calculation unit 105 calculates the position of each index in the world coordinate system held in advance in the index information data holding unit 104 by using the viewing transformation matrix obtained in step S402. Then, the projection coordinates on the captured image plane are calculated by performing the perspective projection conversion calculation of the camera. That is, in step S403, based on the relationship between the position of the index in the world coordinate system and the position and orientation of the camera 101 according to the obtained viewing transformation matrix, the coordinate position where each index should be positioned on the captured image is determined. .

なお、カメラの透視投影変換は、カメラ101の焦点距離や主点(投影中心)位置によって一意に定まるものであり、このカメラ101の焦点距離や主点(投影中心)位置は予め測定し、データとして外部記憶装置1307や記憶媒体に記憶させておき、必要に応じてRAM1302に読み出されるものである。   Note that the perspective projection conversion of the camera is uniquely determined by the focal length and principal point (projection center) position of the camera 101, and the focal distance and principal point (projection center) position of the camera 101 are measured in advance to obtain data. Are stored in an external storage device 1307 or a storage medium and read out to the RAM 1302 as necessary.

このように、撮像画像上に指標を投影し、投影後の座標位置を求める処理については周知の技術であるので、これ以上の詳細な説明は省略する。   As described above, the process of projecting the index on the captured image and obtaining the coordinate position after the projection is a well-known technique, and thus detailed description thereof is omitted.

さらに、ステップS404では、指標座標投影計算部105が、位置姿勢計測部103より得られるカメラ101の姿勢計測値を基にして、カメラ101の視軸ベクトルを算出する。カメラ101の視軸ベクトルとは、カメラ座標系のZ軸負の方向のことであり、換言すれば、世界座標系におけるカメラ101の姿勢成分がカメラ101の視軸ベクトルの成分である。従って、カメラ101の姿勢計測値をビューイング変換行列によって世界座標系におけるカメラ101の位置姿勢を求めることにより、容易に得ることができる。なお、この視軸ベクトルは単位ベクトルとして、x軸方向成分、y軸方向成分、z軸方向成分で表現しても良いし、極座標系における表現方法を用いても良い。   In step S <b> 404, the index coordinate projection calculation unit 105 calculates the visual axis vector of the camera 101 based on the posture measurement value of the camera 101 obtained from the position / orientation measurement unit 103. The visual axis vector of the camera 101 is a negative direction of the Z axis of the camera coordinate system. In other words, the posture component of the camera 101 in the world coordinate system is a component of the visual axis vector of the camera 101. Therefore, the orientation measurement value of the camera 101 can be easily obtained by obtaining the position and orientation of the camera 101 in the world coordinate system using the viewing transformation matrix. The visual axis vector may be expressed as a unit vector by an x-axis direction component, a y-axis direction component, and a z-axis direction component, or an expression method in a polar coordinate system may be used.

また、ステップS401、S402、S403、S404の工程を行う一方で、ステップS405では、カメラ101によって現実空間の画像を撮像し、後段の指標検出部106に出力する。ステップS406では、指標検出部106は、この撮像画像に含まれている指標を検出し、検出した座標位置を求める処理を行う。撮像画像中の指標の座標位置の検出処理については、例えば、指標に特定色を配色しておき、撮像画像においてこの特定色の閉領域を検出し、検出した閉領域の重心位置をもって指標の座標位置とする方法や、予め現実空間を撮影して指標となる領域をテンプレートとして用意しておき、テンプレートマッチングを行う方法などがあり、本実施形態では撮像画像中の指標の座標位置を検出することが可能な方法であれば、何れの方法を適用しても良い。   In addition, while performing steps S401, S402, S403, and S404, in step S405, an image of the real space is captured by the camera 101 and output to the index detection unit 106 in the subsequent stage. In step S406, the index detection unit 106 detects an index included in the captured image, and performs processing for obtaining the detected coordinate position. For the detection processing of the coordinate position of the index in the captured image, for example, a specific color is arranged on the index, the closed region of the specific color is detected in the captured image, and the coordinates of the index are determined based on the center of gravity position of the detected closed region. There are a method of setting a position, a method of photographing a real space in advance and preparing an area as an index as a template, and performing template matching. In this embodiment, the coordinate position of the index in the captured image is detected. Any method may be applied as long as the method is possible.

以上のステップで、
・ 指標を、撮像画像に投影した場合に、この撮像画像上における指標の座標位置
・ 撮像画像から検出した指標の座標位置
・ カメラ101の視軸ベクトル
を求めることができた。
With the above steps,
When the index is projected on the captured image, the coordinate position of the index on the captured image The coordinate position of the index detected from the captured image The visual axis vector of the camera 101 can be obtained.

本実施形態で最終的に行いたいことは指標の識別を行うことであり、換言すれば、撮像画像から検出した指標が、現実空間に配置されている指標のうちのどれにあたるのかを判別することである(指標識別処理)。   What is finally desired in the present embodiment is to identify the index, in other words, to determine which of the indices arranged in the real space is the index detected from the captured image. (Index identification processing).

この方法として従来では、カメラの世界座標系における位置姿勢に基づいて撮像画像に投影した指標の座標位置と、撮像画像から検出した指標の座標位置との間の距離を利用して、夫々の指標が対応するものであるか否かの判定を行っていたのは上述の通りであり、その方法では、上述の通り、図3に示すような条件の場合に誤判定を行ってしまう問題がある。   Conventionally, as this method, each index is obtained by using the distance between the coordinate position of the index projected on the captured image based on the position and orientation in the world coordinate system of the camera and the coordinate position of the index detected from the captured image. As described above, it is determined whether or not is a corresponding one. As described above, this method has a problem that erroneous determination is performed under the conditions shown in FIG. .

そこで本実施形態ではステップS407において、撮像画像に投影した指標の撮像画像上における指標の座標位置と、撮像画像から検出した指標の座標位置とに加えて、指標情報データ保持部104が保持する「各指標の法線ベクトルのデータ」と、ステップS404で得られたカメラ101の視軸ベクトルとを利用して、指標の判別を行う。   Therefore, in this embodiment, in step S407, in addition to the index coordinate position of the index projected on the captured image on the captured image and the coordinate position of the index detected from the captured image, the index information data holding unit 104 holds “ The index is determined using the “normal vector data of each index” and the visual axis vector of the camera 101 obtained in step S404.

先ず、撮像画像に投影した指標のうち、指標識別処理の対象となる指標を選択する処理を行う。これは、カメラ101が指標のほぼ正面をとらえれているか否かを判定することにより行われる処理である。この処理についてより詳細に説明する。   First, processing for selecting an index to be subjected to index identification processing among indexes projected on a captured image is performed. This is a process performed by determining whether or not the camera 101 catches almost the front of the index. This process will be described in more detail.

先ず、注目指標の法線ベクトルとカメラ101の視軸ベクトルとが成す角度が所定値以上であるか否かを判定する。そしてこの角度が所定値以上である場合には、この注目指標を「後で行う指標識別処理の対象として用いるべき指標」であるということを示すために、この注目指標指標に対して設けられるフラグの値を1にする。一方、この角度が所定値以上でない場合には、この注目指標を「後で行う指標識別処理の対象として用いるべきでない指標」であるということを示すために、この注目指標に対して設けられるフラグの値を0にする。   First, it is determined whether or not the angle formed between the normal vector of the attention index and the visual axis vector of the camera 101 is a predetermined value or more. If this angle is greater than or equal to a predetermined value, a flag provided for this attention index indicator in order to indicate that this attention indicator is “an index to be used as a target for an index identification process to be performed later”. The value of is set to 1. On the other hand, if this angle is not greater than or equal to the predetermined value, a flag provided for this attention index to indicate that this attention index is “an index that should not be used as an object of index identification processing performed later”. Set the value of to 0.

例えば、指標をカメラ101が正面から捕らえていて、カメラ101に対して正対している場合には、この指標の法線ベクトルとカメラ101の視軸ベクトルとが成す角度は180度近く(完全に正対している場合は180度)となり、図3に示すような塔状物体の裏側に指標がある場合には、指標の法線ベクトルはカメラ101の視軸ベクトルに近い方向を示すこととなるため、2つのベクトルのなす角は小さくなる。   For example, when the camera 101 is captured from the front and faces the camera 101, the angle formed by the normal vector of this index and the visual axis vector of the camera 101 is nearly 180 degrees (completely 180 degrees when facing directly), and when there is an index on the back side of the tower-shaped object as shown in FIG. 3, the normal vector of the index indicates a direction close to the visual axis vector of the camera 101. Therefore, the angle formed by the two vectors is small.

すなわち、この2つのベクトルのなす角が90度以上であるか否かを利用することにより、指標の表側がカメラ101に向いているか、裏側がカメラ101に向いているのかを判定することができる。さらには、指標の表側がカメラ101に向いている場合であっても、指標の法線ベクトルとカメラ101の視軸ベクトルが垂直に近いような場合には、必ずしも指標が画像として正常に捉えられているとは限らないため、なす角の判定基準を90度よりも大きくし(90度+α(α>0))、単に指標の表側がカメラ101を向いているというだけではなく、より正対した姿勢の指標に関してのみ、対応付けを行うことも可能である。   That is, by using whether or not the angle formed by these two vectors is 90 degrees or more, it is possible to determine whether the front side of the index faces the camera 101 or the back side faces the camera 101. . Furthermore, even if the front side of the index is facing the camera 101, the index is not necessarily captured normally as an image if the normal vector of the index and the visual axis vector of the camera 101 are nearly perpendicular. Therefore, the criterion for determining the angle to be formed is larger than 90 degrees (90 degrees + α (α> 0)), and not just that the front side of the index is facing the camera 101 but more directly facing. It is also possible to perform association only with respect to the index of posture.

このようにすることで、カメラ101から見て、物体の影などにより見えない指標を上記指標識別処理から除外することにより、間違った対応付けの発生を抑制することができる。   By doing so, it is possible to suppress the occurrence of incorrect association by excluding from the index identification process the index that is not visible due to the shadow of the object as viewed from the camera 101.

このようにして、撮像画像に投影した全ての指標について、上記角度計算、及び計算した角度と所定値との比較処理を行い、各指標について設けられたフラグの値にその比較結果を反映させることにより、「後で行う指標識別処理の対象として用いるべき指標」を得ることができる。   In this manner, the angle calculation and the comparison process between the calculated angle and a predetermined value are performed for all the indices projected on the captured image, and the comparison result is reflected in the value of the flag provided for each index. Thus, it is possible to obtain “an index to be used as an object of an index identification process performed later”.

そして、上記処理によって「指標識別処理の対象として用いるべき指標」とされた指標(即ちフラグの値が1の指標)のみを撮像画像上に投影し、この投影座標位置と、撮像画像上から検出した指標の座標位置とを比較し、最も近い座標位置の指標同士を対応付ける処理を行う。このようにすることで、最も近い座標位置同士を対応付ける際に、夫々の指標は必ず可視可能な位置のものであるので、間違った対応付けの発生を抑制することができる。   Then, only the index (that is, the index whose flag value is 1) that has been “index to be used as an index identification process target” by the above process is projected on the captured image, and this projected coordinate position and the detected position on the captured image are detected. The coordinate positions of the measured indices are compared, and the indices at the closest coordinate positions are associated with each other. In this way, when the closest coordinate positions are associated with each other, each index is always in a visible position, so that the occurrence of incorrect association can be suppressed.

ここで本実施形態では、指標の法線ベクトルとカメラ101の視軸ベクトルとが成す角度が所定値以上であるか否かに応じて、この指標を上記指標識別処理から除外するか否かを判定していたが、以下のようにして判定しても良い。   Here, in the present embodiment, whether or not to exclude the index from the index identification process depends on whether or not the angle formed by the normal vector of the index and the visual axis vector of the camera 101 is a predetermined value or more. Although it has been determined, it may be determined as follows.

注目指標の法線ベクトルとカメラ101の視軸ベクトル(夫々のベクトルをx、yとし、更に夫々のベクトルの大きさを1に正規化したとする)が成す角度θの代わりに、cosθを用いる。このcosθは、
cosθ=x・y (x・yはベクトルxとベクトルyとの内積を表す)
として求めることができる。そして、求めたcosθの値が例えば−1≦cosθ≦A(<0)である場合には、即ち2つのベクトルが成す角度θが少なくとも(A=0)90度以上であるから、cosθがこの範囲内であれば、この注目指標を上記指標識別処理に適用するようにすればよい。このようにcosθを用いても、注目指標を上記指標識別処理から除外するか否かを判断することができる。
Cos θ is used in place of the angle θ formed by the normal vector of the attention index and the visual axis vector of the camera 101 (each vector is assumed to be x, y, and the size of each vector is normalized to 1). . This cos θ is
cos θ = x · y (x · y represents the inner product of the vector x and the vector y)
Can be obtained as When the calculated value of cos θ is, for example, −1 ≦ cos θ ≦ A (<0), that is, the angle θ formed by the two vectors is at least (A = 0) 90 degrees or more. If it is within the range, this attention index may be applied to the index identification processing. Thus, even if cos θ is used, it is possible to determine whether or not to exclude the attention index from the index identification process.

また、本実施形態では指標識別処理を行う際には先ず、各指標に対するフラグの値を決定する処理を行ったが、これに限定されるものではなく、注目指標が「後で行う指標識別処理の対象として用いるべき指標」と決定された場合には、この注目指標の投影位置と、その他のいくつかの「撮像画像から検出された指標の座標位置」とで距離の比較処理を行うというような、逐次的に距離の比較処理を行うようにしても良い。   Further, in the present embodiment, when the index identification process is performed, first, the process of determining the flag value for each index is performed. However, the present invention is not limited to this. If it is determined that the index is to be used as the target of the target, a comparison process of the distance is performed between the projected position of the target index and some other “coordinate positions of the index detected from the captured image”. Alternatively, the distance comparison process may be sequentially performed.

[第2の実施形態]
第1の実施形態では、カメラ101に3次元位置姿勢センサ102を配置し、カメラ101が動的に動く状況にて、現実空間に固定された指標を撮像する場合を想定した実施形態であるが、本実施形態では、カメラ101を固定し、3次元位置姿勢センサ102および指標を配置した物体を動かす。尚、本実施形態について、以下説明する部分以外については第1の実施形態と同様である。
[Second Embodiment]
In the first embodiment, the three-dimensional position / orientation sensor 102 is arranged in the camera 101, and in the situation where the camera 101 dynamically moves, an embodiment is assumed in which an index fixed in the real space is imaged. In this embodiment, the camera 101 is fixed and the object on which the three-dimensional position and orientation sensor 102 and the index are arranged is moved. The present embodiment is the same as the first embodiment except for the portions described below.

図6は本実施形態に係るシステムの模式図である。601は現実空間を撮像するカメラで、第1の実施形態におけるカメラ101と同様のものであるが、異なるのは、その世界座標系における位置姿勢が固定されていることである。600は3次元位置姿勢センサ602、指標603,604を固定して取り付けた物体で、その位置姿勢は3次元位置姿勢センサ602により常に計測されている。   FIG. 6 is a schematic diagram of a system according to the present embodiment. Reference numeral 601 denotes a camera that captures a real space, which is the same as the camera 101 in the first embodiment, except that the position and orientation in the world coordinate system are fixed. Reference numeral 600 denotes an object to which the three-dimensional position / orientation sensor 602 and the indicators 603 and 604 are fixedly attached, and the position / orientation is always measured by the three-dimensional position / orientation sensor 602.

図5は、本実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。このシステムは、現実空間を撮像するカメラ501、物体600の位置姿勢を計測する3次元位置姿勢センサ502、本実施形態に係る情報処理装置として機能するコンピュータ550に大別される。   FIG. 5 is a block diagram illustrating a functional configuration of a system including the information processing apparatus according to the present embodiment. This system is roughly divided into a camera 501 that captures an image of real space, a three-dimensional position / orientation sensor 502 that measures the position and orientation of an object 600, and a computer 550 that functions as an information processing apparatus according to the present embodiment.

カメラ501は第1の実施形態におけるカメラ101と同様のもので、現実空間の画像を撮像して後段の指標検出部506に出力する動作を行う。上述の通りカメラ501の世界座標系における位置姿勢は固定されているので、固定された位置姿勢のデータは予め測定しておき、指標情報データ保持部504に保持させておく。また、カメラ501の世界座標系における位置姿勢が固定されていると言うことは、上述のビューイング変換行列は予め求めておくことができるので、これを予め求めておき、求めた結果を指標情報データ保持部104に保持させておく。   The camera 501 is the same as the camera 101 in the first embodiment, and performs an operation of taking an image of the real space and outputting it to the index detection unit 506 in the subsequent stage. Since the position and orientation of the camera 501 in the world coordinate system is fixed as described above, the data of the fixed position and orientation is measured in advance and held in the index information data holding unit 504. In addition, the fact that the position and orientation of the camera 501 in the world coordinate system is fixed means that the above-described viewing transformation matrix can be obtained in advance, and this is obtained in advance, and the obtained result is used as index information. The data is held in the data holding unit 104.

3次元位置姿勢センサ502は上述の通り、物体600に固定されて取り付けられたもので、物体600の3次元位置姿勢(位置、姿勢共に3自由度)を計測するのであるが、計測するのは第1の実施形態と同様に、「センサ座標系における」物体600の位置姿勢である。従って後述するコンピュータ550にはカメラ501により撮像された現実空間の画像のデータと共に、3次元位置姿勢センサ502により計測されたセンサ座標系における物体600の位置姿勢を示すデータが入力されることになる。   As described above, the three-dimensional position / orientation sensor 502 is fixedly attached to the object 600 and measures the three-dimensional position / orientation of the object 600 (three degrees of freedom in both position and orientation). As in the first embodiment, the position and orientation of the object 600 “in the sensor coordinate system”. Therefore, data indicating the position and orientation of the object 600 in the sensor coordinate system measured by the three-dimensional position and orientation sensor 502 is input to the computer 550 described later, along with data of the real space image captured by the camera 501. .

次に、コンピュータ550を構成する各部について説明する。位置姿勢計測部503は、3次元位置姿勢センサ502を駆動・制御して、3次元位置姿勢センサ502に物体600のセンサ座標系における位置姿勢を計測させ、その計測結果(位置姿勢値)のデータを後段の指標座標投影計算部505に出力する処理を行う。   Next, each part constituting the computer 550 will be described. The position / orientation measurement unit 503 drives / controls the three-dimensional position / orientation sensor 502 to cause the three-dimensional position / orientation sensor 502 to measure the position / orientation of the object 600 in the sensor coordinate system, and the measurement result (position / orientation value) data. Is output to the index coordinate projection calculation unit 505 in the subsequent stage.

指標情報データ保持部104には、現実空間における各指標の物体座標系(物体600中の1点を原点とし、この原点から互いに直交する3つの軸をx軸、y軸、z軸とする座標系を物体座標系)における座標位置のデータ、及びカメラ501の世界座標系における位置姿勢のデータ、ビューイング変換行列のデータが予め保存されており、指標座標投影計算部105は、これらのデータに基づいて後述の変換処理を行い、各指標の世界座標系における座標位置をカメラ501によって撮像された画像(撮像画像)上に投影し、撮像画像上における各指標の座標値を求める処理を行う。   The index information data holding unit 104 includes an object coordinate system of each index in the real space (coordinates having one point in the object 600 as an origin and three axes orthogonal to each other from the origin as an x axis, a y axis, and a z axis. The coordinate position data in the object coordinate system), the position and orientation data in the world coordinate system of the camera 501, and the viewing transformation matrix data are stored in advance, and the index coordinate projection calculation unit 105 stores the data in these data. Based on this, a later-described conversion process is performed, and the coordinate position of each index in the world coordinate system is projected onto an image (captured image) captured by the camera 501, and a process for obtaining the coordinate value of each index on the captured image is performed.

指標検出部506は、第1の実施形態の指標検出部106と同様の処理を行うものであって、カメラ501により撮像され、入力された撮像画像から、この撮像画像に含まれる指標を検出し、撮像画像における座標位置を求める処理を行う。求めた座標位置のデータは後段の指標識別部507に出力する。   The index detection unit 506 performs processing similar to that of the index detection unit 106 of the first embodiment. The index detection unit 506 detects an index included in the captured image from the captured image captured by the camera 501 and input. Then, a process for obtaining a coordinate position in the captured image is performed. The obtained coordinate position data is output to the index identification unit 507 in the subsequent stage.

指標識別部507は、指標座標投影計算部505から出力された「撮像画像上に投影された各指標の座標位置」と、指標検出部506から出力された「撮像画像から検出した各指標の座標位置」と、指標情報データ保持部504が保持する指標の法線ベクトルのデータを後述の変換処理によって変換した「世界座標系における成分を有する各指標の法線ベクトルのデータ」(詳細は後述)と、指標情報データ保持部104が保持するカメラ501の世界座標系における姿勢から得られる「カメラ501の視軸ベクトル」と、を用いて、撮像画像から検出した指標が、実際に配置された指標のうちのどの指標に対応するのかを求める。   The index identification unit 507 outputs “the coordinate position of each index projected on the captured image” output from the index coordinate projection calculation unit 505 and “the coordinates of each index detected from the captured image” output from the index detection unit 506. "Position" and "normal vector data of each index having a component in the world coordinate system" obtained by converting the normal vector data of the index held by the index information data holding unit 504 by a conversion process described later (details will be described later) The index detected from the captured image using the “visual axis vector of the camera 501” obtained from the attitude in the world coordinate system of the camera 501 held by the index information data holding unit 104 is an index in which the index is actually arranged. Which index of which is to be corresponded.

以上が本実施形態に係る情報処理装置の機能構成であるが、基本構成については第1の実施形態と同じ、即ち、図13に示したものと同じである。   The above is the functional configuration of the information processing apparatus according to this embodiment. The basic configuration is the same as that of the first embodiment, that is, the same as that shown in FIG.

次に、本実施形態に係る指標識別処理について、同処理のフローチャートを示す図7を用いて、以下説明する。尚、同図のフローチャートに従ったプログラムは外部記憶装置1307や記憶媒体に格納されており、CPU1301の制御によりRAM1302に読み出され(記憶媒体に格納されている場合には、記憶媒体ドライブ1308を制御してこの記憶媒体から読み出す)、CPU1301がこれを実行することで、本実施形態に係る情報処理装置は後述の処理を実行することになる。従って以下の説明で登場する位置姿勢計測部503、指標座標投影計算部505、指標検出部506、指標識別部507は本実施形態では夫々プログラムにより実現されるものであるが、これらをハードウェアにより実現しても良いことは言うまでもない。   Next, the index identification process according to the present embodiment will be described below with reference to FIG. 7 showing a flowchart of the process. The program according to the flowchart of FIG. 10 is stored in an external storage device 1307 or a storage medium, and is read into the RAM 1302 under the control of the CPU 1301 (if stored in the storage medium, the storage medium drive 1308 is loaded. When the CPU 1301 executes this, the information processing apparatus according to the present embodiment executes the processing described later. Accordingly, the position / orientation measurement unit 503, the index coordinate projection calculation unit 505, the index detection unit 506, and the index identification unit 507 appearing in the following description are each realized by a program in the present embodiment. Needless to say, it may be realized.

ステップS701では、3次元位置姿勢センサ502を制御して、物体600のセンサ座標系における位置姿勢を計測させ、その計測結果のデータを信号として指標座標投影計算部505に入力する。次にステップS702では、指標座標投影計算部505がステップS701で得られた物体600のセンサ座標系における位置姿勢のデータを用いて、モデリング変換行列を求める。   In step S701, the three-dimensional position / orientation sensor 502 is controlled to measure the position / orientation of the object 600 in the sensor coordinate system, and data of the measurement result is input to the index coordinate projection calculation unit 505 as a signal. In step S702, the index coordinate projection calculation unit 505 obtains a modeling transformation matrix using the position and orientation data of the object 600 in the sensor coordinate system obtained in step S701.

モデリング変換とは、現実空間中の1点を原点としてこの原点から互いに直交する3つの軸をx軸、y軸、z軸とする座標系を世界座標系とし、物体600中の1点を原点とし、この原点から互いに直交する3つの軸をx軸、y軸、z軸とする座標系を物体座標系としたときに、この2つの座標系間の座標変換のことである。従ってモデリング変換行列とは、この2つの座標系間の座標変換を行うための行列である。よって、このモデリング変換行列を求めておけば、物体座標系の座標値を世界座標系上にある座標値に変換することが可能となる。   Modeling transformation refers to a coordinate system in which a point in the real space is the origin and three axes orthogonal to each other from the origin are the x-axis, y-axis, and z-axis, the world coordinate system, and one point in the object 600 is the origin. And the coordinate transformation between the two coordinate systems when the coordinate system having three axes orthogonal to each other from the origin as the x-axis, y-axis, and z-axis is the object coordinate system. Therefore, the modeling transformation matrix is a matrix for performing coordinate transformation between the two coordinate systems. Therefore, if this modeling conversion matrix is obtained, the coordinate value of the object coordinate system can be converted to the coordinate value on the world coordinate system.

次に、ステップS703では、指標座標投影計算部105が、指標情報データ保持部104に予め保持されている物体座標系における各指標の位置を、ステップS702で求めたモデリング変換行列によって世界座標系における位置へと変換し、更に、指標情報データ保持部104が保持するビューイング変換行列によるビューイング変換、及びカメラの透視投影変換計算を行うことによって、撮像画像面への投影座標を計算する。即ち、ステップS703では、カメラ501、物体600の位置姿勢に基づいて各指標が撮像画像上に位置すべき座標位置を求める。   Next, in step S703, the index coordinate projection calculation unit 105 calculates the position of each index in the object coordinate system held in advance in the index information data holding unit 104 in the world coordinate system using the modeling transformation matrix obtained in step S702. The projection coordinates on the captured image plane are calculated by converting to a position, and further performing the viewing conversion by the viewing conversion matrix held by the index information data holding unit 104 and the perspective projection conversion calculation of the camera. That is, in step S703, the coordinate position where each index should be located on the captured image is obtained based on the position and orientation of the camera 501 and the object 600.

なお、カメラの透視投影変換は、カメラ501の焦点距離や主点(投影中心)位置によって一意に定まるものであり、このカメラ501の焦点距離や主点(投影中心)位置は予め測定し、データとして外部記憶装置1307や記憶媒体に記憶させておき、必要に応じてRAM1302に読み出されるものである。   Note that the perspective projection conversion of the camera is uniquely determined by the focal length and principal point (projection center) position of the camera 501, and the focal distance and principal point (projection center) position of the camera 501 are measured in advance to obtain data. Are stored in an external storage device 1307 or a storage medium and read out to the RAM 1302 as necessary.

このように、撮像画像上に指標を投影し、投影後の座標位置を求める処理については周知の技術であるので、これ以上の詳細な説明は省略する。   As described above, the process of projecting the index on the captured image and obtaining the coordinate position after the projection is a well-known technique, and thus detailed description thereof is omitted.

さらに、ステップS704では、指標座標投影計算部505が、ステップS702で求められたモデリング変換行列を用いて、指標情報データ保持部104が保持する物体座標系における成分を有する各指標の法線ベクトルを、世界座標系における成分を有する法線ベクトルに変換する。   In step S704, the index coordinate projection calculation unit 505 uses the modeling transformation matrix obtained in step S702 to calculate the normal vector of each index having a component in the object coordinate system held by the index information data holding unit 104. , To a normal vector having components in the world coordinate system.

また、ステップS701、S702、S703、S704の工程を行う一方で、ステップS705では、カメラ501によって現実空間の画像を撮像し、後段の指標検出部506に出力する。ステップS706では、指標検出部506は、この撮像画像に含まれている指標の座標位置を検出する処理を行う。撮像画像中の指標の座標位置の検出処理については第1の実施形態と同様の処理を行う。   In addition, while performing steps S701, S702, S703, and S704, in step S705, an image of the real space is captured by the camera 501, and is output to the index detection unit 506 in the subsequent stage. In step S706, the index detection unit 506 performs processing for detecting the coordinate position of the index included in the captured image. The processing for detecting the coordinate position of the index in the captured image is the same as that in the first embodiment.

以上のステップで、
・ 指標を、撮像画像に投影した場合に、この撮像画像上における指標の座標位置
・ 撮像画像から検出した指標の座標位置
・ 世界座標系における成分を有する各指標の法線ベクトル
を求めることができた。また、カメラ101の視軸ベクトルについては、カメラ501の世界座標系における位置姿勢が固定であるために、この姿勢成分から容易に得ることができる。従ってこれら4つの情報を得ることができたので、後は第1の実施形態と同様の処理を行うことができる。
With the above steps,
-When an index is projected on a captured image, the coordinate position of the index on this captured image-The coordinate position of the index detected from the captured image-The normal vector of each index having components in the world coordinate system can be obtained It was. Further, the visual axis vector of the camera 101 can be easily obtained from this posture component because the position and posture of the camera 501 in the world coordinate system is fixed. Therefore, since these four pieces of information have been obtained, the same processing as in the first embodiment can be performed thereafter.

以上の説明により、本実施形態によって、カメラを固定し、3次元位置姿勢センサおよび指標を配置した物体を動かしても、指標識別処理を行うことができる。   As described above, according to the present embodiment, the index identification process can be performed even when the camera is fixed and the object on which the three-dimensional position and orientation sensor and the index are arranged is moved.

[第3の実施形態]
第1の実施形態は、カメラに3次元位置姿勢センサを配置し、カメラが動的に動く状況にて、現実空間に固定された指標を撮像する場合を想定した実施形態であり、第2の実施形態は、カメラを固定し3次元位置姿勢センサおよび指標を配置した物体を動かす場合を想定した実施形態である。これらを組み合わせ、カメラにも対象物体にも3次元位置姿勢センサをそれぞれ固定し、物体に指標を配置しても良い。すなわち、カメラが動的に動き、かつ、物体も動的に動くような場合である。
[Third Embodiment]
The first embodiment is an embodiment assuming a case where a three-dimensional position / orientation sensor is arranged in a camera, and an image of an index fixed in a real space is captured in a situation where the camera moves dynamically. The embodiment is an embodiment assuming a case where an object on which a camera is fixed and a three-dimensional position and orientation sensor and an index are moved is moved. A combination of these may be used to fix the three-dimensional position and orientation sensors to the camera and the target object, and to place an index on the object. That is, the camera moves dynamically and the object also moves dynamically.

この実施形態は、第2の実施形態を基にして以下の変更を加えればよい。即ち、第2の実施形態のステップS703で行っている処理として、カメラのビューイング変換行列は既知としているが、このビューイング変換をカメラに固定された3次元位置姿勢センサの計測値を基にして第1の実施形態で説明した如く求めればよい。   This embodiment may be modified as follows based on the second embodiment. That is, as the processing performed in step S703 of the second embodiment, the camera viewing transformation matrix is known, but this viewing transformation is based on the measurement value of the three-dimensional position and orientation sensor fixed to the camera. Thus, it may be obtained as described in the first embodiment.

[第4の実施形態]
第1から第3までの実施形態では、いずれも、指標の法線ベクトルが明示的に指標情報データ保持部に記録されており、その法線ベクトルを利用する処理を行っている。しかし、利用する指標の種類によっては、法線ベクトルは必ずしも明示的に記録されている必要はない。
[Fourth Embodiment]
In any of the first to third embodiments, the normal vector of the index is explicitly recorded in the index information data holding unit, and processing using the normal vector is performed. However, depending on the type of index used, the normal vector need not be explicitly recorded.

例えば、図8に示すように、黒い正方形の内部に白い正方形があるような指標を利用する場合、指標の頂点の座標位置(世界座標系における座標位置、もしくは世界座標系における座標位置に変換できるのであればその他の座標系における座標位置でも可)を記録しておけば、この指標に対する法線ベクトルを直接的に記録しておかなくても法線ベクトルを計算することができる。   For example, as shown in FIG. 8, when using an index having a white square inside a black square, the coordinate position of the index vertex (the coordinate position in the world coordinate system or the coordinate position in the world coordinate system can be converted). If the coordinate position in another coordinate system is acceptable, the normal vector can be calculated without directly recording the normal vector for this index.

これは、4頂点のなす平面の法線(直線であり向きは不定)が指標の法線ベクトルの含まれる直線であることを利用して、図12に示すように4頂点の並びを利用して、その直線上での向きを決定すればよい。具体的な計算方法としては、図12中の頂点1から頂点2へのベクトルと、頂点2から頂点3へのベクトルの外積ベクトルを計算する方法がある。すなわち、利用する指標が面的な拡がりをもつ図形である場合には、必ずしも法線ベクトルを明示的に記録しておく必要はない。このようにして、頂点情報などの明示的な法線情報ではない情報から法線ベクトルを計算し、得られた法線ベクトルを利用して指標の識別を行うことができる。   By using the fact that the normal of the plane formed by the four vertices (straight line and the direction is indefinite) is a straight line including the normal vector of the index, an array of four vertices is used as shown in FIG. Then, the direction on the straight line may be determined. As a specific calculation method, there is a method of calculating an outer product vector of a vector from vertex 1 to vertex 2 and a vector from vertex 2 to vertex 3 in FIG. That is, when the index to be used is a figure having a surface spread, it is not always necessary to explicitly record the normal vector. In this way, a normal vector can be calculated from information that is not explicit normal information such as vertex information, and the index can be identified using the obtained normal vector.

また、指標の法線ベクトルではなく、指標の位置姿勢を記録しておくことによって、指標の姿勢情報から法線ベクトルを計算することもできることもいうまでもない。   It goes without saying that the normal vector can be calculated from the attitude information of the index by recording the position and orientation of the index instead of the normal vector of the index.

[第5の実施形態]
第1の実施形態に示した指標の識別結果を活用するカメラの位置姿勢推定方法の好適な実施形態を示す。
[Fifth Embodiment]
3 shows a preferred embodiment of a camera position / orientation estimation method that utilizes the index identification result shown in the first embodiment.

図10は本実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。同図に示す機能構成を有するシステムは、上述の通り、第1の実施形態で説明した、撮像画像上で同じ指標同士を対応付ける処理を行った結果を用いて、HMDの位置姿勢を補正する処理を行うものである。また、同図に示したシステムは、HMD1000と、本実施形態に係る情報処理装置として機能するコンピュータ1050に大別される。   FIG. 10 is a block diagram illustrating a functional configuration of a system including the information processing apparatus according to the present embodiment. As described above, the system having the functional configuration shown in the figure is a process for correcting the position and orientation of the HMD using the result of performing the process of associating the same index on the captured image as described in the first embodiment. Is to do. The system shown in the figure is roughly divided into an HMD 1000 and a computer 1050 that functions as an information processing apparatus according to the present embodiment.

HMD1000は3次元位置姿勢センサ1002、カメラ1001、表示部1011により構成されており、これらは一体となってHMD本体1000に取り付けられている、所謂ビデオシースルー型のHMDである。3次元位置姿勢センサ1002、カメラ1001については基本的には第1の実施形態における3次元位置姿勢センサ102、カメラ101と同じものである。表示部1011は、後述するコンピュータ1050の画像合成部1010から出力された画像を表示するものである。   The HMD 1000 includes a three-dimensional position and orientation sensor 1002, a camera 1001, and a display unit 1011. These are so-called video see-through HMDs that are integrally attached to the HMD main body 1000. The 3D position and orientation sensor 1002 and the camera 1001 are basically the same as the 3D position and orientation sensor 102 and the camera 101 in the first embodiment. The display unit 1011 displays an image output from an image composition unit 1010 of the computer 1050 described later.

次に、コンピュータ1050を構成する各部について説明する。位置姿勢計測部1003、指標情報データ保持部1004,指標座標投影計算部1005、指標検出部1006、指標識別部1007は夫々、第1の実施形態における(図1に示した)位置姿勢計測部103、指標情報データ保持部104,指標座標投影計算部105、指標検出部106、指標識別部107と同じ処理を行うので、その説明は省略する。   Next, each part which comprises the computer 1050 is demonstrated. The position / orientation measuring unit 1003, the index information data holding unit 1004, the index coordinate projection calculating unit 1005, the index detecting unit 1006, and the index identifying unit 1007 are each the position / orientation measuring unit 103 (shown in FIG. 1) in the first embodiment. The index information data holding unit 104, the index coordinate projection calculation unit 105, the index detection unit 106, and the index identification unit 107 perform the same processing, and thus the description thereof is omitted.

位置姿勢補正部1008は、指標識別部1007で対応付けられた2つの指標(一方は撮像画像から検出されたもの、他方は、撮像画像上に投影されたもの)の座標位置間の距離に基づいて、3次元位置姿勢センサ1002が計測した結果に基づく、HMD1000の位置姿勢の計測値を補正する処理を行う。   The position / orientation correction unit 1008 is based on the distance between the coordinate positions of the two indices (one detected from the captured image and the other projected on the captured image) associated by the index identifying unit 1007. Then, a process for correcting the measurement value of the position and orientation of the HMD 1000 based on the result measured by the three-dimensional position and orientation sensor 1002 is performed.

画像生成部1009は、位置姿勢補正部1008で補正した位置姿勢を視点の位置姿勢として用い、この視点から見た仮想空間の画像を作成する。画像合成部1010は、カメラ1001による撮像画像と、画像生成部1009が生成した仮想空間の画像とを合成する処理を行う。その合成結果はHMD1000の表示部1011に出力され、そこで表示される。   The image generation unit 1009 uses the position and orientation corrected by the position and orientation correction unit 1008 as the viewpoint position and orientation, and creates an image of the virtual space viewed from this viewpoint. The image composition unit 1010 performs a process of compositing the image captured by the camera 1001 and the virtual space image generated by the image generation unit 1009. The synthesis result is output to the display unit 1011 of the HMD 1000 and displayed there.

尚、本実施形態に係るコンピュータ1050の基本構成についても第1の実施形態と同様(即ち図13に示す基本構成)とする。   The basic configuration of the computer 1050 according to this embodiment is the same as that of the first embodiment (that is, the basic configuration shown in FIG. 13).

次に、本実施形態に係るコンピュータ1050が行う、合成画像を表示部1011に出力するまでの処理について、同処理のフローチャートを示す図11を用いて、以下説明する。尚、同図のフローチャートに従ったプログラムは外部記憶装置1307や記憶媒体に格納されており、CPU1301の制御によりRAM1302に読み出され(記憶媒体に格納されている場合には、記憶媒体ドライブ1308を制御してこの記憶媒体から読み出す)、CPU1301がこれを実行することで、本実施形態に係る情報処理装置は後述の処理を実行することになる。従って以下の説明で登場する位置姿勢計測部1003、指標座標投影計算部1005、指標検出部1006、指標識別部1007、位置姿勢補正部1008、画像生成部1009、画像合成部1010は本実施形態では夫々プログラムにより実現されるものであるが、これらをハードウェアにより実現しても良いことは言うまでもない。   Next, processing performed by the computer 1050 according to the present embodiment until the composite image is output to the display unit 1011 will be described below with reference to FIG. 11 showing a flowchart of the processing. The program according to the flowchart of FIG. 10 is stored in an external storage device 1307 or a storage medium, and is read into the RAM 1302 under the control of the CPU 1301 (if stored in the storage medium, the storage medium drive 1308 is loaded. When the CPU 1301 executes this, the information processing apparatus according to the present embodiment executes the processing described later. Accordingly, the position / orientation measurement unit 1003, index coordinate projection calculation unit 1005, index detection unit 1006, index identification unit 1007, position / orientation correction unit 1008, image generation unit 1009, and image composition unit 1010 appearing in the following description are described in this embodiment. Each is realized by a program, but it goes without saying that these may be realized by hardware.

ステップS1101では先ず、指標情報データ保持部1004に指標データを読み込む。これは、例えば図9に示すようなテキストデータをファイルとして保存しておいた記憶装置から読み込む処理である。図9の901は指標の種類を表現しており、この例では色をもつ点状の指標を表しており、902にその座標値を903にその法線ベクトルを904にその色を記録してあることを意味する。このデータに示すように、指標情報データ保持部1004は、指標の座標値と共にその法線ベクトルを情報として保持することとなる。   In step S1101, first, index data is read into the index information data holding unit 1004. This is a process for reading, for example, text data as shown in FIG. 9 from a storage device stored as a file. In FIG. 9, reference numeral 901 represents the type of the index. In this example, the index represents a point-like index having a color. The coordinate value is recorded in 902, the normal vector is recorded in 904, and the color is recorded in 904. It means that there is. As shown in this data, the index information data holding unit 1004 holds the normal vector as information together with the coordinate value of the index.

続いて、ステップS1102にて、上述した図4に示すステップS401〜ステップS407までの処理を行い、夫々対応する指標同士を対応付ける処理を行う。   Subsequently, in step S1102, the processing from step S401 to step S407 shown in FIG. 4 described above is performed, and processing for associating corresponding indexes with each other is performed.

ステップS1103では、ステップS1102で対応付けられた夫々の指標間の距離(ステップS403で得た投影座標値と、ステップS406で得た検出座標値との間の距離)に基づいて、位置姿勢補正部1008は、ステップS402で得られたビューイング変換の補正を行う。   In step S1103, based on the distance between the indices associated in step S1102 (the distance between the projected coordinate value obtained in step S403 and the detected coordinate value obtained in step S406), the position and orientation correction unit In step 1008, the viewing conversion obtained in step S402 is corrected.

このビューイング変換の補正方法に関しては、ニュートン法などの繰り返し演算により誤差が最小となるようにする方法を用いてもよいし、指標間の誤差が最小となるように回転変換のみを修正するような方法であってもよい。   As a method for correcting the viewing transformation, a method of minimizing the error by iterative calculation such as Newton's method may be used, or only the rotational transformation may be corrected so that the error between the indices is minimized. It may be a simple method.

ステップS1103ではビューイング変換行列を補正することを行っているのであるが、これは換言すれば、世界座標系におけるカメラ101の位置姿勢のデータを補正していることになる。このような、同じ指標で、ステップS403で得た投影座標値と、ステップS406で得た検出座標値との間の距離を最小にするように、ビューイング変換行列を修正する方法については周知の技術であるので、ここでの説明は省略する。   In step S1103, the viewing transformation matrix is corrected. In other words, the position / orientation data of the camera 101 in the world coordinate system is corrected. A method for correcting the viewing transformation matrix so as to minimize the distance between the projected coordinate value obtained in step S403 and the detected coordinate value obtained in step S406 with the same index is well known. Since it is a technique, the description here is omitted.

次に、ステップS1104では、カメラ101により撮像された現実空間の画像を画像合成部1010に送る。次に、ステップS1105では、画像生成部1009は、ステップS1103で修正されたビューイング変換行列を用いて、上述の通り、仮想空間の画像を生成し、画像合成部1010に送る。画像合成部1010には先に現実空間の画像が送られているので、後で送られた仮想空間の画像はこれに重ねられ、結果的に現実空間の画像と仮想空間の画像との合成画像が画像合成部1010にて生成されることになる。従って画像合成部1010はこの合成画像をHMD1000の表示部1011に出力する。表示部1011はこの合成画像を表示する。   In step S 1104, the real space image captured by the camera 101 is sent to the image composition unit 1010. In step S1105, the image generation unit 1009 generates an image of the virtual space using the viewing transformation matrix corrected in step S1103 as described above, and sends the image to the image synthesis unit 1010. Since the image in the real space is sent to the image composition unit 1010 first, the image in the virtual space sent later is superimposed on this, and as a result, a composite image of the image in the real space and the image in the virtual space Is generated by the image composition unit 1010. Accordingly, the image composition unit 1010 outputs this composite image to the display unit 1011 of the HMD 1000. The display unit 1011 displays this composite image.

ここで、このステップS1104〜ステップS1106までの処理は、得られたカメラのビューイング変換を有効に利用する例として現実空間に仮想空間もしくは仮想物体を融合する場合の工程を示しているのであって、他の用途にカメラのビューイング変換を利用してもよい。もちろん、ビューイング変換が求まっていれば、その逆変換を計算することにより、世界座標系におけるカメラの位置姿勢に変換することが容易にできるので、カメラの位置姿勢を用いる用途に利用することも可能であることはいうまでもない。   Here, the processing from step S1104 to step S1106 shows a process in the case of fusing a virtual space or a virtual object into the real space as an example of effectively using the obtained viewing transformation of the camera. The viewing transformation of the camera may be used for other purposes. Of course, if viewing transformation is desired, it can be easily converted into the camera position and orientation in the world coordinate system by calculating the inverse transformation, so it can be used for applications that use the camera position and orientation. It goes without saying that it is possible.

その後、ステップS1107にて終了の判定を行い、終了しない場合には、処理をステップS1102に戻し、以降、ステップS1102〜ステップS1106までの処理を繰り返す。   Thereafter, the end is determined in step S1107, and if not ended, the process returns to step S1102, and thereafter, the processes from step S1102 to step S1106 are repeated.

[第6の実施形態]
第5の実施形態は、第1の実施形態の指標識別方法をカメラの位置姿勢推定方法に利用した場合の実施形態であるが、第2の実施形態の指標識別方法、または第3の実施形態の指標識別方法を利用することにより、第5の実施形態と同様な工程で同様の目的が達成できるということはいうまでもない。
[Sixth Embodiment]
The fifth embodiment is an embodiment in the case where the index identification method of the first embodiment is used for the camera position / orientation estimation method, but the index identification method of the second embodiment or the third embodiment. It goes without saying that the same object can be achieved by the same process as in the fifth embodiment by using the index identification method.

[その他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
[Other Embodiments]
An object of the present invention is to supply a recording medium (or storage medium) that records software program codes for realizing the functions of the above-described embodiments to a system or apparatus, and the computer of the system or apparatus (or CPU or MPU). Needless to say, this can also be achieved by reading and executing the program code stored in the recording medium. In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention.

また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Furthermore, after the program code read from the recording medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。   When the present invention is applied to the recording medium, program code corresponding to the flowchart described above is stored in the recording medium.

本発明の第1の実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the system containing the information processing apparatus which concerns on the 1st Embodiment of this invention. 従来技術の問題点を説明するための、現実空間に配置される指標となるマーカ、3次元位置姿勢計測装置が固定されたカメラの形態を表す模式図である。It is a schematic diagram showing the form of the camera to which the marker used as the parameter | index arrange | positioned in real space for explaining the problem of a prior art, and the three-dimensional position and orientation measuring apparatus were fixed. 従来技術の問題点を説明するための、3次元位置姿勢センサの計測値を画面に投影した座標と、指標を画像から検出した座標とを表す模式図である。It is a schematic diagram showing the coordinate which projected the measured value of the three-dimensional position and orientation sensor on the screen, and the coordinate which detected the parameter | index from the image for demonstrating the problem of a prior art. 本発明の第1の実施形態に係る指標識別処理のフローチャートである。It is a flowchart of the parameter | index identification process which concerns on the 1st Embodiment of this invention. 本発明の第2の実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the system containing the information processing apparatus which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るシステムの模式図である。It is a schematic diagram of the system which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係る指標識別処理のフローチャートである。It is a flowchart of the parameter | index identification process which concerns on the 2nd Embodiment of this invention. 本発明の第4の実施形態における面的な拡がりをもつ図形である指標の一例を示す図である。It is a figure which shows an example of the parameter | index which is a figure with the area expansion in the 4th Embodiment of this invention. 指標情報データを記録したファイルの内容を示す図である。It is a figure which shows the content of the file which recorded parameter | index information data. 本発明の第5の実施形態に係る情報処理装置を含むシステムの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the system containing the information processing apparatus which concerns on the 5th Embodiment of this invention. 本発明の第5の実施形態に係るコンピュータ1050が行う、合成画像を表示部1011に出力するまでの処理のフローチャートである。10 is a flowchart of processing until a composite image is output to the display unit 1011 performed by a computer 1050 according to the fifth embodiment of the present invention. 図8の指標の法線ベクトルの計算方法を説明する図である。It is a figure explaining the calculation method of the normal vector of the parameter | index of FIG. コンピュータ150の基本構成を示すブロック図である。2 is a block diagram showing a basic configuration of a computer 150. FIG.

Claims (10)

指標が配置された現実空間の画像を撮像する撮像手段による撮像画像中の指標の位置を検出する検出工程と、前記指標の前記現実空間中の位置、前記撮像手段の位置姿勢の一方が計測に基づいて求められ、他方が計測で求められている若しくは予め保持されている場合に、前記指標の前記現実空間中の位置と前記撮像手段の位置姿勢とに基づいて前記現実空間中の指標を前記撮像画像上に投影した場合の座標位置を求める第1の計算工程とを備え、前記撮像画像上において、前記検出工程で検出した各指標の座標位置と、前記第1の計算工程で計算した座標位置とで、互いに距離の近い座標位置の指標同士を対応付ける処理を行う情報処理方法であって、
注目指標の法線ベクトルと前記撮像手段の視軸ベクトルとを用いて計算される値を求める第2の計算工程と、
前記第1の計算工程による前記注目指標の前記撮像画像上における座標位置を求める処理を行うか否かを、前記第2の計算工程で求めた値が取る範囲に基づいて決定する決定工程とを備え、
前記決定工程で前記第1の計算工程による前記注目指標の前記撮像画像上における座標位置を求める処理を行うと決定した場合には、前記第1の計算工程で計算した前記注目指標の座標位置と、前記検出工程で検出した各指標の座標位置の何れかとで、距離の近い座標位置の指標同士を対応付ける処理を行うことを特徴とする情報処理方法。
One of the detection step of detecting the position of the index in the captured image by the imaging unit that captures an image of the real space where the index is arranged, and the position of the index in the real space and the position and orientation of the imaging unit are used for measurement. Is obtained based on the measurement and the other is obtained by measurement or held in advance , the index in the real space is calculated based on the position of the index in the real space and the position and orientation of the imaging unit. A first calculation step for obtaining a coordinate position when projected on the captured image, and a coordinate position of each index detected in the detection step on the captured image and a coordinate calculated in the first calculation step An information processing method for performing processing for associating indices at close coordinate positions with each other,
A second calculation step for obtaining a value calculated using the normal vector of the attention index and the visual axis vector of the imaging means;
A determination step of determining whether or not to perform a process of obtaining a coordinate position of the target index on the captured image in the first calculation step based on a range taken by the value obtained in the second calculation step; Prepared,
When it is determined in the determining step that the process of obtaining the coordinate position of the target index on the captured image in the first calculation step is performed, the coordinate position of the target index calculated in the first calculation step An information processing method characterized by performing a process of associating indices at close coordinate positions with any of the coordinate positions of the indices detected in the detection step.
前記第2の計算工程では、前記注目指標の法線ベクトルと、前記撮像手段の視軸ベクトルとが成す角度、もしくは当該角度に基づく値を求めることを特徴とする請求項1に記載の情報処理方法。 2. The information processing according to claim 1, wherein in the second calculation step, an angle formed between a normal vector of the attention index and a visual axis vector of the imaging unit or a value based on the angle is obtained. Method. 前記決定工程では、前記角度が90度+α(α>0)である場合には、前記第1の計算工程による前記注目指標の前記撮像画像上における座標位置を求める処理を行うと決定することを特徴とする請求項2に記載の情報処理方法。 In the determination step, when the angle is 90 degrees + α (α> 0), it is determined that the processing for obtaining the coordinate position of the attention index on the captured image in the first calculation step is performed. The information processing method according to claim 2, wherein: 更に、対応付けた夫々の指標の前記第1の計算工程で計算した座標位置と、前記検出工程で検出した座標位置との間の距離を用いて、前記撮像手段の位置姿勢を補正する補正工程と、
前記補正工程による補正後の位置姿勢を用いて仮想空間の画像を生成する仮想空間画像生成工程と、
前記仮想空間画像生成工程による仮想空間の画像と、前記撮像手段による撮像画像とを合成して出力する合成工程と
を備えることを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
Further, a correction step of correcting the position and orientation of the imaging unit using the distance between the coordinate position calculated in the first calculation step of each associated index and the coordinate position detected in the detection step When,
A virtual space image generation step of generating a virtual space image using the position and orientation corrected by the correction step;
The image of the virtual space by the virtual space image generation step, information according to any one of claims 1 to 3, characterized in that it comprises a synthesis step of outputting by synthesizing the image taken by the image pickup means Processing method.
指標が配置された現実空間の画像を撮像する撮像手段と、撮像手段による撮像画像中の指標の位置を検出する検出手段と、前記指標の前記現実空間中の位置、前記撮像手段の位置姿勢の一方が計測に基づいて求められ、他方が計測で求められている若しくは予め保持されている場合に、前記指標の前記現実空間中の位置と前記撮像手段の位置姿勢とに基づいて前記現実空間中の指標を前記撮像画像上に投影した場合の座標位置を求める第1の計算手段とを備え、前記撮像画像上において、前記検出手段が検出した各指標の座標位置と、前記第1の計算手段が計算した座標位置とで、互いに距離の近い座標位置の指標同士を対応付ける処理を行う情報処理装置であって、
注目指標の法線ベクトルと前記撮像手段の視軸ベクトルとを用いて計算される値を求める第2の計算手段と、
前記第1の計算手段による前記注目指標の前記撮像画像上における座標位置を求める処理を行うか否かを、前記第2の計算手段が求めた値が取る範囲に基づいて決定する決定手段とを備え、
前記決定手段が前記第1の計算手段による前記注目指標の前記撮像画像上における座標位置を求める処理を行うと決定した場合には、前記第1の計算手段が計算した前記注目指標の座標位置と、前記検出手段が検出した各指標の座標位置の何れかとで、距離の近い座標位置の指標同士を対応付ける処理を行うことを特徴とする情報処理装置。
An imaging unit that captures an image of a real space in which an index is arranged, a detection unit that detects a position of the index in an image captured by the imaging unit, a position of the index in the real space, and a position and orientation of the imaging unit When one is obtained based on measurement and the other is obtained by measurement or held in advance , the position in the real space based on the position of the index in the real space and the position and orientation of the imaging means First calculation means for obtaining a coordinate position when the index is projected onto the captured image, the coordinate position of each index detected by the detection means on the captured image, and the first calculation means. Is an information processing apparatus that performs processing for associating indices at close coordinate positions with the calculated coordinate positions,
Second calculation means for obtaining a value calculated using the normal vector of the attention index and the visual axis vector of the imaging means;
Determining means for determining whether or not to perform processing for obtaining a coordinate position of the target index on the captured image by the first calculating means based on a range taken by a value obtained by the second calculating means; Prepared,
When the determination unit determines to perform the process of obtaining the coordinate position of the target index on the captured image by the first calculation unit, the coordinate position of the target index calculated by the first calculation unit and An information processing apparatus that performs a process of associating indices at close coordinate positions with any of the coordinate positions of the indices detected by the detecting means.
コンピュータに請求項1乃至4の何れか1項に記載の情報処理方法を実行させることを特徴とするプログラム。 A program for causing a computer to execute the information processing method according to any one of claims 1 to 4. 請求項6に記載のプログラムを格納することを特徴とする、コンピュータ読み取り可能な記憶媒体。 A computer-readable storage medium storing the program according to claim 6. 現実空間を撮像する撮像装置の位置姿勢計測に利用する指標の識別方法であって、
前記撮像装置の大まかな位置姿勢を計測する位置姿勢計測工程と、
前記撮像装置が指標を含む前記現実空間を撮像する撮像工程と、
前記撮像工程で得られた現実空間の画像中に含まれる指標の当該画像中の座標を求める第1の画像座標計算工程と、
前記位置姿勢計測工程で得た位置姿勢における、前記撮像装置による撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと指標の法線ベクトルとの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする指標の識別方法。
An identification method of an index used for position and orientation measurement of an imaging device that images a real space,
A position and orientation measurement step for measuring a rough position and orientation of the imaging device;
An imaging step in which the imaging device images the real space including the index;
A first image coordinate calculation step for obtaining coordinates in the image of an index included in the image of the real space obtained in the imaging step;
A second image coordinate calculation step for obtaining coordinates of an index in an imaging screen by the imaging device at the position and orientation obtained in the position and orientation measurement step,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, the visual axis vector of the imaging device obtained in the position and orientation measurement step, and the index A method for identifying an index, characterized in that the index in the imaging screen corresponds to which of the indices arranged in the real space based on a relationship with a normal vector.
現実空間にある対象物体の位置姿勢計測に利用する指標の識別方法であって、
前記対象物体の大まかな位置姿勢を計測する位置姿勢計測工程と、
固定された撮像装置にて前記対象物体の撮像を行う撮像工程と、
前記撮像工程で得られた撮像画像中の指標の座標を求める第1の画像座標計算工程と、
前記位置姿勢計測工程で得た位置姿勢を基にして、前記撮像装置による撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと指標の法線ベクトルの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする指標の識別方法。
A method for identifying an index used for measuring a position and orientation of a target object in a real space,
A position and orientation measurement step of measuring a rough position and orientation of the target object;
An imaging step of imaging the target object with a fixed imaging device;
A first image coordinate calculation step for obtaining coordinates of an index in the captured image obtained in the imaging step;
Based on the position and orientation obtained in the position and orientation measurement step, a second image coordinate calculation step for obtaining the coordinates of the index in the imaging screen by the imaging device,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, the visual axis vector of the imaging device obtained in the position and orientation measurement step, and the index A method for identifying an index, characterized in that the index in the imaging screen corresponds to which of the indices arranged in the real space based on a relationship between normal vectors.
現実空間にある対象物体の位置姿勢計測に利用する指標の識別方法であって、
前記対象物体の大まかな位置姿勢を計測する第1の位置姿勢計測工程と、
前記対象物体を撮像する撮像装置の大まかな位置姿勢を計測する第2の位置姿勢計測工程と、
前記撮像装置にて前記対象物体の撮像を行う撮像工程と、
前記撮像工程で得られた撮像画像中の指標の座標を求める第1の画像座標計算工程と、
前記第1の位置姿勢計測工程と前記第2の位置姿勢計測工程とで得た撮像装置を基準とする対象物体の位置姿勢、あるいは、前記対象物体を基準とする前記撮像装置の位置姿勢を基にして、前記撮像装置の撮像画面中における指標の座標を求める第2の画像座標計算工程とを備え、
前記第1の画像座標計算工程で求めた指標の座標と、前記第2の画像座標計算工程で求めた指標の座標と、前記第2の位置姿勢計測工程で得た前記撮像装置の視軸ベクトルと前記第1の位置姿勢計測工程で得た指標の法線ベクトルの間の関係とを基にして、前記撮像画面中における指標が前記現実空間に配置されている指標のうちのどれにあたるのかを識別することを特徴とする指標の識別方法。
A method for identifying an index used for measuring a position and orientation of a target object in a real space,
A first position and orientation measurement step of measuring a rough position and orientation of the target object;
A second position / orientation measurement step for measuring a rough position / orientation of an imaging apparatus that images the target object;
An imaging step of imaging the target object in the imaging device;
A first image coordinate calculation step for obtaining coordinates of an index in the captured image obtained in the imaging step;
Based on the position and orientation of the target object with reference to the imaging device obtained in the first position and orientation measurement step and the second position and orientation measurement step, or based on the position and orientation of the imaging device with reference to the target object. And a second image coordinate calculation step for obtaining the coordinates of the index in the imaging screen of the imaging device,
The coordinates of the index obtained in the first image coordinate calculation step, the coordinates of the index obtained in the second image coordinate calculation step, and the visual axis vector of the imaging device obtained in the second position and orientation measurement step And the relationship between the normal vectors of the indices obtained in the first position and orientation measurement step, which of the indices arranged in the real space corresponds to the index in the imaging screen A method of identifying an index characterized by identifying.
JP2003314422A 2002-09-13 2003-09-05 Information processing method, information processing apparatus, and identification method Expired - Fee Related JP4307189B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2003314422A JP4307189B2 (en) 2003-09-05 2003-09-05 Information processing method, information processing apparatus, and identification method
EP03255724.1A EP1398601A3 (en) 2002-09-13 2003-09-12 Head up display for navigation purposes in a vehicle
US10/660,637 US6956503B2 (en) 2002-09-13 2003-09-12 Image display apparatus, image display method, measurement apparatus, measurement method, information processing method, information processing apparatus, and identification method
CNB031569358A CN1296680C (en) 2002-09-13 2003-09-15 Image display and method, measuring device and method, recognition method
US11/180,524 US7423553B2 (en) 2002-09-13 2005-07-14 Image display apparatus, image display method, measurement apparatus, measurement method, information processing method, information processing apparatus, and identification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003314422A JP4307189B2 (en) 2003-09-05 2003-09-05 Information processing method, information processing apparatus, and identification method

Publications (3)

Publication Number Publication Date
JP2005083826A JP2005083826A (en) 2005-03-31
JP2005083826A5 JP2005083826A5 (en) 2006-09-21
JP4307189B2 true JP4307189B2 (en) 2009-08-05

Family

ID=34415039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003314422A Expired - Fee Related JP4307189B2 (en) 2002-09-13 2003-09-05 Information processing method, information processing apparatus, and identification method

Country Status (1)

Country Link
JP (1) JP4307189B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4667111B2 (en) * 2005-04-21 2011-04-06 キヤノン株式会社 Image processing apparatus and image processing method
JP4599515B2 (en) * 2005-05-27 2010-12-15 コニカミノルタセンシング株式会社 Method and apparatus for aligning three-dimensional shape data
JP4739004B2 (en) * 2005-12-15 2011-08-03 キヤノン株式会社 Information processing apparatus and information processing method
JP5991423B2 (en) 2013-02-21 2016-09-14 富士通株式会社 Display device, display method, display program, and position setting system
JP6227395B2 (en) * 2013-12-18 2017-11-08 株式会社ミツトヨ Three-dimensional measurement system, three-dimensional measurement method, object to be measured, and position detection device
CN107228663A (en) * 2017-07-25 2017-10-03 广州阿路比电子科技有限公司 The alignment system and method for a kind of automatical pilot transportation vehicle

Also Published As

Publication number Publication date
JP2005083826A (en) 2005-03-31

Similar Documents

Publication Publication Date Title
JP3467017B2 (en) Position and orientation determination method and apparatus, and storage medium
JP4926817B2 (en) Index arrangement information measuring apparatus and method
JP4532982B2 (en) Arrangement information estimation method and information processing apparatus
JP4599184B2 (en) Index placement measurement method, index placement measurement device
US8350897B2 (en) Image processing method and image processing apparatus
JP5230114B2 (en) Information processing apparatus and information processing method
JP4136859B2 (en) Position and orientation measurement method
JP4976756B2 (en) Information processing method and apparatus
JP4914039B2 (en) Information processing method and apparatus
JP4708752B2 (en) Information processing method and apparatus
JP5196825B2 (en) Image processing apparatus and image processing method
JP2003222509A (en) Position attitude determination method and device and storage medium
US7834909B2 (en) Image processing method and image processing apparatus
US20060256110A1 (en) Virtual reality presentation apparatus, virtual reality presentation method, program, image processing method, image processing apparatus, information processing method, and information processing apparatus
JP2006317223A (en) Position attitude measuring method and apparatus
JP4307189B2 (en) Information processing method, information processing apparatus, and identification method
JP2005351886A (en) Position attitude measuring method and information processing device
JP2008070319A (en) Object measurement device and method
JP2005147894A (en) Measuring method and measuring instrument
JP5726024B2 (en) Information processing method and apparatus
JP2000134537A (en) Image input device and its method
JP4612804B2 (en) Position and orientation measurement method and information processing apparatus
JP4926598B2 (en) Information processing method and information processing apparatus
JP2008140047A (en) Information processing method and information processor
JP4810403B2 (en) Information processing apparatus and information processing method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060808

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081002

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090401

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090428

R150 Certificate of patent or registration of utility model

Ref document number: 4307189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140515

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees