JP2003344018A - Unit and method for image processing as well as program and storage medium - Google Patents

Unit and method for image processing as well as program and storage medium

Info

Publication number
JP2003344018A
JP2003344018A JP2003102141A JP2003102141A JP2003344018A JP 2003344018 A JP2003344018 A JP 2003344018A JP 2003102141 A JP2003102141 A JP 2003102141A JP 2003102141 A JP2003102141 A JP 2003102141A JP 2003344018 A JP2003344018 A JP 2003344018A
Authority
JP
Japan
Prior art keywords
image
matrix
correction
calculated
posture
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.)
Granted
Application number
JP2003102141A
Other languages
Japanese (ja)
Other versions
JP4743818B2 (en
Inventor
Kiyohide Sato
清秀 佐藤
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 JP2003102141A priority Critical patent/JP4743818B2/en
Publication of JP2003344018A publication Critical patent/JP2003344018A/en
Application granted granted Critical
Publication of JP4743818B2 publication Critical patent/JP4743818B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To correct a measuring error of a camera eye point by an attitude sensor and to correct a cumulative error of an azimuth direction generated especially due to the passage of time so as to realize an MR without any dislocation. <P>SOLUTION: First, a template image is created (S501). Then, an image I<SP>t</SP>is photographed (S502). A sensor output at this time is acquired (S503). Then, a model view matrix M<SP>t</SP>is calculated based on the sensor output (S504). Then, a correction matrix ΔM<SP>t</SP>is calculated (S505). By using the calculated correction matrix ΔM<SP>t</SP>, the model view matrix ΔM<SP>t</SP>is corrected (S506), and a CG is plotted and displayed by using the corrected model view matrix (S507). <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、計測対象の姿勢ま
たは位置姿勢を出力する画像処理装置及びその方法並び
にプログラム、記憶媒体に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image processing apparatus for outputting the posture or position / orientation of a measurement target, a method therefor, a program, and a storage medium.

【0002】[0002]

【従来の技術】近年、複合現実感(以下、「MR」(M
ixed Reality)と称す)に関する研究が盛
んに行われている。
2. Description of the Related Art In recent years, mixed reality (hereinafter referred to as "MR" (M
Research on “ixed Reality”) has been actively conducted.

【0003】MRには、ビデオカメラなどの撮影装置で
撮影された現実空間の映像に仮想空間(たとえばコンピ
ュータグラフィックス(以下、CGと称す)により描画
された仮想物体や文字情報など)の映像を重畳表示する
ビデオシースルー方式と、ユーザが頭部に装着したHM
D(Head−Mounted Display)に現
実空間の像を光学的に透過させつつ、その表示画面に仮
想空間の映像を重畳表示する光学シースルー方式があ
る。
In the MR, an image of a virtual space (for example, a virtual object drawn by computer graphics (hereinafter, referred to as CG) or character information) is added to an image of a real space photographed by a photographing device such as a video camera. Video see-through method with superimposed display and HM worn by user on head
There is an optical see-through method in which an image in the real space is optically transmitted to a D (Head-Mounted Display) while the image in the virtual space is superimposed and displayed on the display screen.

【0004】MRの応用としては、患者の体内の様子を
透視しているかのように医師に提示する医療補助の用途
や、工場において製品の組み立て手順を実物に重ねて表
示する作業補助の用途など、今までのVRとは質的に全
く異なった新たな分野が期待されている。
[0004] The applications of MR include the use of medical assistance for presenting to a doctor as if the patient's internal state is seen through, and the use of work assistance for displaying the assembly procedure of the product on the actual product in a factory. , A new field that is completely qualitatively different from the existing VR is expected.

【0005】これらの応用に対して共通に要求されるの
は、現実空間と仮想空間の間の位置合わせをいかにして
行うかという技術であり、従来から多くの取り組みが行
われてきた。
What is commonly required for these applications is a technique for aligning the real space and the virtual space, and many efforts have been made in the past.

【0006】ビデオシースルー方式のMRにおける位置
合わせの問題は、撮影装置の視点の位置姿勢を正確に求
める問題に帰結される。また光学シースルー方式のMR
における位置合わせの問題は、同様にユーザの視点の位
置姿勢を求める問題といえる。
The problem of position alignment in the MR of the video see-through method results in the problem of accurately obtaining the position and orientation of the viewpoint of the photographing apparatus. Optical see-through MR
It can be said that the problem of position alignment in (1) is similarly a problem of obtaining the position and orientation of the viewpoint of the user.

【0007】従来のMRシステム(特に屋内におけるM
Rシステム)では、これらの問題を解決する方法とし
て、磁気センサや超音波センサなどの位置姿勢センサを
利用して、これらの視点の位置姿勢を導出することが一
般的に行われている。
Conventional MR systems (especially M indoors)
In the R system), as a method of solving these problems, it is general to derive the position and orientation of these viewpoints using a position and orientation sensor such as a magnetic sensor or an ultrasonic sensor.

【0008】一方、従来の屋外におけるMRシステムで
は、これらの視点の姿勢の導出にジャイロセンサ(厳密
には、3軸方向の角速度を計測するための複数のジャイ
ロセンサと、3軸方向の加速度を計測するための複数の
加速度センサの組み合わせによって構成される3軸姿勢
センサであるが、本明細では便宜上これをジャイロセン
サと呼ぶこととする)が利用されている。
On the other hand, in the conventional outdoor MR system, a gyro sensor (strictly speaking, a plurality of gyro sensors for measuring angular velocities in the three-axis directions and accelerations in the three-axis directions are used to derive the attitudes of these viewpoints. Although it is a three-axis attitude sensor configured by combining a plurality of acceleration sensors for measurement, in the present specification, this is referred to as a gyro sensor for convenience).

【0009】[0009]

【発明が解決しようとする課題】しかし、ジャイロセン
サを用いて視点の姿勢を求める場合、高精度なジャイロ
センサを用いた場合であっても、ジャイロセンサにはド
リフト誤差があるため、時間経過に伴って徐々に方位方
向の計測値に誤差が生じてしまう。また、ジャイロセン
サは姿勢計測のみしか行えないため、視点の位置の変化
に追従することが出来ない。つまり、時間経過や視点の
位置の変化に伴って現実空間と仮想空間との間に位置ず
れが生じてしまう。
However, when the viewpoint posture is obtained by using the gyro sensor, there is a drift error in the gyro sensor even if a high-precision gyro sensor is used, and therefore there is a lapse of time. Along with this, an error gradually occurs in the measurement value in the azimuth direction. Further, since the gyro sensor can only measure the posture, it cannot follow the change in the position of the viewpoint. That is, a position shift occurs between the real space and the virtual space as time passes and the position of the viewpoint changes.

【0010】本発明は以上の問題に鑑みてなされたもの
であり、視点の姿勢または位置姿勢の計測を行うことを
目的とし、特に、時間経過に伴って生じる方位方向成分
の誤差補正を行うことを目的とする。
The present invention has been made in view of the above problems, and an object thereof is to measure the posture or position / orientation of a viewpoint, and in particular, to correct an error in an azimuth direction component that occurs over time. With the goal.

【0011】[0011]

【課題を解決するための手段】本発明の目的を達成する
ために、例えば本発明の画像処理装置は以下の構成を備
える。
In order to achieve the object of the present invention, for example, an image processing apparatus of the present invention has the following configuration.

【0012】すなわち、計測対象を含む撮影画像を取得
する撮像装置と、前記撮像装置の撮像視点の姿勢を計測
する姿勢センサと、前記計測対象の姿勢および/または
位置を、前記姿勢センサの出力に基づいて算出するため
の算出情報を記憶する記憶手段と、前記撮像装置によっ
て撮影された撮影画像中における前記指標の位置を検出
する検出手段と、前記検出手段が検出した前記指標の検
出位置に基づいて、前記記憶手段に記憶されている前記
算出情報を更新する更新手段と、前記計測値と前記更新
手段によって更新された前記算出情報に基づいて、前記
計測対象の姿勢および/または位置を算出する算出手段
とを備え、前記更新手段は、前記撮像装置のカメラ座標
系における3方向の位置情報を更新することを特徴とす
る。
That is, an image pickup device for obtaining a picked-up image including a measurement target, a posture sensor for measuring a posture of an image pickup viewpoint of the image pickup device, and a posture and / or a position of the measurement target are output to the posture sensor. Storage means for storing calculation information for calculating based on the detection position of the index detected by the detection means, the detection means for detecting the position of the index in the captured image captured by the imaging device And updating the calculation information stored in the storage means, and calculating the posture and / or position of the measurement target based on the measurement value and the calculation information updated by the updating means. And updating means for updating position information in three directions in the camera coordinate system of the image pickup apparatus.

【0013】本発明の目的を達成するために、例えば本
発明の画像処理方法は以下の構成を備える。
In order to achieve the object of the present invention, for example, the image processing method of the present invention has the following configuration.

【0014】すなわち、撮像装置からの撮影画像を入力
し、前記撮像装置の撮像視点の姿勢を計測する姿勢セン
サからの計測結果を入力し、前記撮像装置によって撮影
された撮影画像中における前記指標の位置を検出し前記
計測結果と前記検出手段が検出した前記指標の検出位置
とに基づき、前記撮像装置の位置・姿勢を求めることを
特徴とする。
That is, a photographed image from the image pickup device is inputted, a measurement result is inputted from a posture sensor for measuring the posture of the image pickup device at the image pickup viewpoint, and the index of the index in the photographed image photographed by the image pickup device is inputted. It is characterized in that the position / posture of the image pickup device is obtained based on the position detection result and the detection position of the index detected by the detection means.

【0015】[0015]

【発明の実施の形態】以下添付図面を参照して、本発明
を好適な実施形態に従って詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION The present invention will now be described in detail according to preferred embodiments with reference to the accompanying drawings.

【0016】[第1の実施形態]本実施形態では、姿勢
センサによるカメラ視点の姿勢計測誤差を補正すること
で、位置ずれのないMR空間の提示を実現する画像処理
装置について説明する。
[First Embodiment] In this embodiment, an image processing apparatus for realizing presentation of an MR space without misalignment by correcting a posture measurement error of a camera viewpoint by a posture sensor will be described.

【0017】姿勢センサを備えたHMDの姿勢に応じ
て、現実物体の画像に仮想物体の画像を重畳描画する従
来の画像処理装置の構成を図2に示す。
FIG. 2 shows the configuration of a conventional image processing apparatus for superimposing an image of a virtual object on an image of a real object according to the attitude of an HMD equipped with an attitude sensor.

【0018】同図のHMD200はビデオシースルー方
式のものであって、画像を表示するディスプレイ201
と、このHMD200を装着した観察者の視点位置から
現実空間を撮像するカメラ202(観察者視点カメラ)
を備え、またカメラ202の視点の姿勢を計測する姿勢
センサ203(例えばここではジャイロセンサ)を備え
ている。又、画像処理装置210は、姿勢センサ203
からセンサ出力を入力するセンサ入力モジュール21
1、カメラ202から現実物体の撮影画像を入力する画
像入力モジュール213、センサ入力モジュール211
から入力したカメラ202の視点の姿勢と他の方法によ
り得たカメラ202の視点位置に基づいてカメラ202
の視点の位置姿勢を表わす情報(例えば4×4のモデル
ビュー行列M)を生成する視点位置姿勢演算モジュー
ル212、視点位置姿勢演算モジュール212により演
算された視点の位置姿勢を表わす情報に基づいて現実物
体の画像に仮想物体の画像を重畳描画した画像を生成す
る画像生成モジュール214から構成されており、ディ
スプレイ201に提示画像を提供する。この場合、時間
経過に伴って、センサ出力の誤差の蓄積に応じて生じる
位置ずれを含んだ画像がディスプレイ201に表示され
る。
The HMD 200 shown in the figure is of a video see-through type, and is a display 201 for displaying an image.
And a camera 202 (observer viewpoint camera) that captures an image of the real space from the viewpoint position of the observer wearing the HMD 200.
And a posture sensor 203 (for example, a gyro sensor here) that measures the posture of the camera 202 from the viewpoint. Further, the image processing device 210 includes the attitude sensor 203.
Sensor input module 21 for inputting sensor output from the
1, an image input module 213 for inputting a captured image of a physical object from the camera 202, a sensor input module 211
Based on the viewpoint orientation of the camera 202 input from the camera 202 and the viewpoint position of the camera 202 obtained by another method.
Based on the information indicating the position / orientation of the viewpoint calculated by the viewpoint position / orientation calculation module 212, which generates information indicating the position / orientation of the viewpoint (for example, a 4 × 4 model view matrix M t ). The image generation module 214 is configured to generate an image in which the image of the virtual object is superimposed and drawn on the image of the physical object, and provides a presentation image to the display 201. In this case, as time passes, an image including a positional shift caused by the accumulation of the error of the sensor output is displayed on the display 201.

【0019】なお、本実施形態においては、視点位置は
固定値として予め視点位置姿勢演算モジュール212に
保持されているものとする。一般に、観察するMR空間
中の観察対象物体(現実物体、仮想物体)までの距離が
視点位置の実際の移動量に対して相対的に大きい場合に
は、視点位置に多少の誤差があっても画像上での位置ず
れに大幅な影響を与えないという性質がある。特に屋外
におけるMRシステムのように観察対象物体が遠方に存
在する場合で、かつ、観察者が一箇所に立ち止まってい
るような用途においては、このように視点の位置を固定
値とすることが有効である。もちろん、カメラ202の
視点位置を計測する他の位置センサ(例えばGPS等)
をHMD200にさらに装着し、その出力を視点位置と
して入力してもよい。
In this embodiment, it is assumed that the viewpoint position is previously held in the viewpoint position / orientation calculation module 212 as a fixed value. Generally, when the distance to the observation target object (real object, virtual object) in the MR space to be observed is relatively large with respect to the actual movement amount of the viewpoint position, even if there is some error in the viewpoint position. It has the property of not significantly affecting the position shift on the image. In particular, when the object to be observed is present at a long distance such as an outdoor MR system and the observer is stopped at one place, it is effective to set the viewpoint position to a fixed value in this way. Is. Of course, another position sensor (for example, GPS) that measures the viewpoint position of the camera 202
May be further attached to the HMD 200, and the output thereof may be input as the viewpoint position.

【0020】尚、本実施形態では、上記の理由から、視
点位置の誤差が相対値として十分に小さいものであり、
視点位置の誤差に起因する画像上での位置ずれは十分無
視できるほどのものであると仮定する。
In the present embodiment, for the above reason, the error in the viewpoint position is sufficiently small as a relative value,
It is assumed that the positional shift on the image due to the error of the viewpoint position is sufficiently negligible.

【0021】次に、HMD200を繋いだ本実施形態に
おける画像処理装置の構成を図3に示す。図2と同じ部
分には同じ番号を付けており、又、図2と同じ部分につ
いては説明は省略する。
Next, FIG. 3 shows the configuration of the image processing apparatus in this embodiment in which the HMD 200 is connected. The same parts as those in FIG. 2 are designated by the same reference numerals, and the description of the same parts as those in FIG.

【0022】図3に示した画像処理装置310は、図2
に示した画像処理装置210に補正値演算モジュール2
15を付加し、さらに、視点位置姿勢演算モジュール2
12を視点位置姿勢演算モジュール312に変更した装
置の構成となっている。この補正値演算モジュール21
5は、画像入力モジュール213から入力した撮影画像
とセンサ入力モジュール211から入力した視点の姿勢
に基づいて、後述する補正値演算処理によって補正値
(補正行列ΔM)を算出し、視点位置姿勢演算モジュ
ール312へと出力する。視点位置姿勢演算モジュール
312は、センサ入力モジュール211から入力したカ
メラ202の視点の姿勢と他の方法により得たカメラ2
02の視点位置と補正値演算モジュール215から入力
した補正値に基づいて、後述する姿勢補正処理を実行し
て、センサ出力に基づいて算出した位置姿勢情報(モデ
ルビュー行列M)を補正して、補正後の視点位置姿勢
情報(補正後のモデルビュー行列M$)を生成する。
The image processing apparatus 310 shown in FIG.
In the image processing device 210 shown in FIG.
15 is added, and the viewpoint position / orientation calculation module 2 is further added.
12 has a configuration in which 12 is changed to a viewpoint position / orientation calculation module 312. This correction value calculation module 21
Reference numeral 5 calculates a correction value (correction matrix ΔM t ) by a correction value calculation process described later based on the captured image input from the image input module 213 and the viewpoint orientation input from the sensor input module 211, and the viewpoint position / orientation calculation is performed. Output to module 312. The viewpoint position / posture calculation module 312 uses the viewpoint posture of the camera 202 input from the sensor input module 211 and the camera 2 obtained by another method.
02 based on the viewpoint position and the correction value input from the correction value calculation module 215, the attitude correction process described below is executed to correct the position / orientation information (model view matrix M t ) calculated based on the sensor output. , The corrected viewpoint position / orientation information (corrected model view matrix M $ t ) is generated.

【0023】次に、補正値演算モジュール215におけ
る補正値演算処理の基本的原理について説明する。
Next, the basic principle of the correction value calculation processing in the correction value calculation module 215 will be described.

【0024】補正値演算処理は、基本的には、画像上に
撮像されるランドマーク(例えばビルの角や家の屋根な
ど、その投影像の画像特徴を位置合わせの指標して利用
可能な現実物体(の一部分))を用いて、センサ出力に
基づいて予測した画像上におけるランドマークの観測予
測位置と、画像処理によって実際に検出される当該ラン
ドマークの画像上における観測位置に基づいて行われ
る。したがって、画像上から如何に正確かつ安定的にラ
ンドマークの観測位置を検出するかが、補正値演算処理
の最大のポイントとなる。
The correction value calculation process is basically a reality that can be used as an index for alignment of image features of a landmark (for example, a corner of a building or the roof of a house) imaged on an image. It is performed based on the observation predicted position of the landmark on the image predicted based on the sensor output using the object (a part thereof) and the observed position on the image of the landmark actually detected by the image processing. . Therefore, the most important point of the correction value calculation process is how accurately and stably the observation position of the landmark is detected from the image.

【0025】本実施形態では、ランドマークのテンプレ
ート画像を用いたテンプレートマッチングによってラン
ドマークの検出を行う。
In the present embodiment, landmark detection is performed by template matching using a landmark template image.

【0026】一般に、テンプレートマッチングによって
画像中から画像特徴を抽出する場合には、画像面上にお
ける画像特徴の回転が問題となる。この画像特徴の回転
は、カメラや撮影対象物体がカメラ座標系におけるロー
ル方向に回転することで生じる。例えば、図14(a)
に示したテンプレート画像Tを用いて、図14(b)に
示した撮影画像I上からランドマークLを検出する場
合、画像特徴の回転を考慮しない探索処理を行った場合
には安定的にランドマークを検出することが出来ない。
一方、図14(c)に示すように、画像特徴の回転を考
慮した形でテンプレート画像Tに回転(図の例では45
°毎の回転)を加えたテンプレート画像T’を複数用意
し、各々のテンプレート画像毎に探索処理を行うこと
で、画像特徴の回転に対処したランドマークの検出を行
うことができる。しかし、計算量はテンプレートの数に
比例して増加するため、非常に計算負荷の高い処理とな
ってしまう。
Generally, when image features are extracted from an image by template matching, the rotation of the image features on the image plane becomes a problem. The rotation of the image feature occurs when the camera or the object to be photographed rotates in the roll direction in the camera coordinate system. For example, FIG. 14 (a)
When the landmark L is detected from the photographed image I shown in FIG. 14B using the template image T shown in FIG. 14B, when the search processing that does not consider the rotation of the image feature is performed, the land is stably obtained. The mark cannot be detected.
On the other hand, as shown in FIG. 14C, the template image T is rotated (45 in the example in the figure) in consideration of the rotation of the image feature.
By preparing a plurality of template images T ′ to which each rotation is added and performing a search process for each template image, it is possible to detect the landmarks that cope with the rotation of the image features. However, the amount of calculation increases in proportion to the number of templates, which results in processing with a very high calculation load.

【0027】本実施形態においては、姿勢センサ203
によって、カメラ202の視点の姿勢が計測されてい
る。この計測値のうちの方位方向の値については前述の
とおり時間経過に伴う誤差の蓄積が存在するが、方位方
向以外の2軸(すなわち、ロール方向とピッチ方向)に
ついては比較的正確な値が取得されている。したがっ
て、図14(d)に示したように、姿勢センサ203に
よって計測されるカメラ202のロール方向の回転角に
基づいて撮影画像Iに回転を加えた変換画像I’を生成
し、この画像I’上においてテンプレート画像Tによる
探索処理を行うことで、画像特徴の回転に依存しないラ
ンドマークの検出が可能となる。
In this embodiment, the attitude sensor 203
The posture of the viewpoint of the camera 202 is measured by. As for the value in the azimuth direction among these measured values, there is an accumulation of error with the passage of time as described above. Has been acquired. Therefore, as shown in FIG. 14D, a converted image I ′ obtained by adding rotation to the captured image I is generated based on the rotation angle of the camera 202 in the roll direction measured by the orientation sensor 203, and this image I is generated. By performing the search process with the template image T on the above, it becomes possible to detect the landmark that does not depend on the rotation of the image feature.

【0028】さらに、本実施形態においては、他の2軸
の姿勢についても姿勢センサ203による計測値が得ら
れており、かつ、前フレームまでの処理において姿勢補
正値演算モジュール215にて前フレームにおける姿勢
補正値が得られている。したがって、図14(e)に示
したように、それらの値に基づいて撮影画像I上におけ
るランドマークの大まかな位置pを予測し、その予測位
置の近傍領域(同図におけるターゲット画像抽出領域)
に対してのみ上記の回転処理を行うことで、ランドマー
クの探索処理を行う対象であるターゲット画像Rを作成
し(図14(f))、探索範囲を限定することができ
る。
Further, in this embodiment, the measured values by the attitude sensor 203 are obtained for the attitudes of the other two axes, and the attitude correction value calculation module 215 in the previous frame performs the processing in the previous frame. Attitude correction value is obtained. Therefore, as shown in FIG. 14E, the rough position p of the landmark on the photographed image I is predicted based on those values, and a region near the predicted position (target image extraction region in the same figure)
By performing the above-described rotation process only on the target image R, the target image R that is the target of the landmark search process is created (FIG. 14F), and the search range can be limited.

【0029】従って、テンプレートマッチングによるラ
ンドマークの検出を高速かつ安定的に行うことが可能と
なる。
Therefore, it becomes possible to perform landmark detection by template matching at high speed and stably.

【0030】次に、補正値演算モジュール215の具体
的な構成を図4に示す。
Next, FIG. 4 shows a specific configuration of the correction value calculation module 215.

【0031】補正値演算モジュール215は、後述する
画像Iに基づいてテンプレート画像を生成するテンプ
レート画像生成モジュール403と、時刻tにおける画
像I とカメラ202の姿勢(roll)とに基づい
てターゲット画像を生成するターゲット画像生成モジュ
ール404、ターゲット画像とテンプレート画像とを用
いて類似度を算出し、ランドマークの位置を検出する対
応探索モジュール402、そして検出されたランドマー
クの位置に従って、これまでの補正値を最新の補正値
(後述する補正行列ΔM)に更新しこれを出力する補
正値更新モジュール401により構成されている。
The correction value calculation module 215 will be described later.
Image I0Template to generate a template image based on
The rate image generation module 403 and the image at time t
Image I tAnd the attitude of the camera 202 (rollt) And based on
Target image generation module
404, using target image and template image
Calculate the degree of similarity and detect the position of the landmark.
Response search module 402, and detected lander
According to the position of the
(Correction matrix ΔM described latert) And output this
It is configured by the positive value update module 401.

【0032】次に、本実施形態で用いる各変数について
説明する。
Next, each variable used in this embodiment will be described.

【0033】・i番目(i=1,2,3,,,)のラン
ドマークをL ・ランドマークLの世界座標における位置(既知)を
=(X,Y,Z,1) ・カメラの既定の位置を(X,Y,Z) ・テンプレート画像生成の際に用いるカメラの既定の姿
勢を(roll,pitch,yaw) ・カメラの既定の位置姿勢におけるモデルビュー行列
(世界座標系からカメラ座標系への変換行列)をM ・カメラの焦点距離(既知)をf ・カメラの射影変換行列(カメラ座標系から画像座標系
への変換行列)(既知)をS ・カメラの既定の位置姿勢における撮影画像をI ・ランドマークLの画像I上における撮影位置をp
=(x ,y ,h ・ランドマークLを検索するためのテンプレート画像
をT ・テンプレート画像のサイズ(既定)をN×N ・テンプレート画像の座標の範囲をxs,xe,y
,ye(但し、xs=ys=−N/2の小数
部を切り捨てた値。xe=ye=xs+N−1) ・時刻tにおいて撮影された画像をI ・時刻tにおけるセンサによる姿勢計測値を(roll
,pitch,yaw) ・姿勢計測値(roll,pitch,yaw
から算出したモデルビュー行列(世界座標系からカメラ
座標系への変換行列)をM ・画像I上におけるランドマークLの撮像予測位置
をp =(x ,y ,h ・画像I上で実際に検出されるランドマークLの撮
像位置をp$ =(x$ ,y$ ) ・画像IからランドマークLを検出するための探索
処理を行う対象となるターゲット画像をR ・ランドマークのx方向の探索範囲(既定)を±m ・ランドマークのy方向の探索範囲(既定)を±n ・ターゲット画像のサイズをN’×N”(但し、N’=
N+2m,N”=N+2n) ・ターゲット画像の座標の範囲をxs,xe,ys
,ye(但し、xs=xs−m,xe=xe
+m,ys=ys−n,ye=ye+n) ・ターゲット画像上R におけるランドマークL
検出座標を(j ,k ) ・各ランドマークの検出座標(j ,k )の代表
値を(j,k) ・時刻tにおいて算出されるカメラの姿勢の補正更新値
Δroll,Δpitch,Δyaw ・時刻tにおいて算出されるカメラの位置の補正更新値
Δx,Δy,Δz ・時刻tにおいて算出されるモデルビュー行列Mを補
正するための補正行列をΔM ・これまでの処理で既に算出されている(時刻t−1で
算出されている)補正行列をΔMt−1 ・補正行列ΔMt−1を補正行列ΔMに更新するため
の補正更新行列ΔM’ ・Mを補正行列ΔMによって補正した補正後のモデ
ルビュー行列をM$ ・Mを補正行列ΔMt−1によって補正した補正後の
モデルビュー行列をM’ 以上の設定に基づいて、本実施形態における姿勢計測誤
差の補正処理について処理の流れに従って以下説明す
る。
The i-th (i = 1,2,3 ,,) run
Mark is Li ・ Landmark LiThe position (known) in world coordinates of
Pi= (Xi, Yi, Zi, 1)T ・ Set the default position of the camera to (X0, Y0, Z0) -The default appearance of the camera used to generate the template image
Power (roll0, Pitch0, Yaw0) ・ Model view matrix at the default position and orientation of the camera
(The conversion matrix from the world coordinate system to the camera coordinate system) is M0 ・ The focal length (known) of the camera is f -Projective transformation matrix of camera (from camera coordinate system to image coordinate system
Transformation matrix) (known) to S ・ The captured image in the default position and orientation of the camera is I0 ・ Landmark LiImage I0The shooting position above is p
i 0= (Xi 0hi 0, Yi 0hi 0, Hi 0)T ・ Landmark LiTemplate image to search for
To Ti ・ The template image size (default) is N × N ・ The coordinate range of the template image is xsT, XeT, Y
sT, YeT(However, xsT= YsT= -N / 2 decimal
The value with the part cut off. xeT= YeT= XsT+ N-1) ・ The image taken at time t is It ・ Attitude measurement value by the sensor at time t (roll
t, Pitcht, Yawt) ・ Posture measurement value (rollt, Pitcht, Yawt)
Model view matrix calculated from (from the world coordinate system to the camera
Transformation matrix to coordinate system) Mt ・ Image ItLandmark L aboveiPredicted position of
Pi t= (Xi th i t, Yi thi t, Hi t)T ・ Image ItLandmark L actually detected aboveiA picture of
Image position is p $i t= (X $i t, Y $i t) ・ Image ItFrom Landmark LiSearch to detect
R is the target image to be processedi t ・ Landmark search range in the x direction (default) is ± m ・ Landmark search range in the y direction (default) is ± n -The size of the target image is N'xN "(where N '=
N + 2m, N ″ = N + 2n) ・ The range of coordinates of the target image is xsR, XeR, Ys
R, YeR(However, xsR= XsT-M, xeR= Xe
T+ M, ysR= YsT-N, yeR= YeT+ N) ・ R on the target imagei tLandmark L iniof
Let the detected coordinates be (ji t, Ki t) ・ Detected coordinates of each landmark (ji t, Ki t) Representative
The value is (jt, Kt) -Corrected update value of camera attitude calculated at time t
Δroll, Δpitch, Δyaw -Correction update value of camera position calculated at time t
Δx, Δy, Δz -Model view matrix M calculated at time ttSupplement
The correction matrix to correct is ΔMt -Already calculated by the processing so far (at time t-1
The correction matrix (calculated) is ΔMt-1 ・ Correction matrix ΔMt-1Correction matrix ΔMtTo update to
Correction update matrix ΔM ′ of t ・ MtCorrection matrix ΔMtCorrected model corrected by
Lubu Matrix is M $t ・ MtCorrection matrix ΔMt-1Corrected by
Let the model view matrix be M 't Based on the above settings, the posture measurement error in this embodiment
The difference correction processing will be described below according to the flow of processing.
It

【0034】<テンプレート画像の作成>まず、現実空
間を撮影するカメラを既定の位置姿勢に設定し画像I
を撮影する。図1に画像Iの例を示す。同図における
〜Lがランドマークであり、T〜Tで示した
枠の部分がそれぞれのランドマークに対応するテンプレ
ート画像として抽出される領域である。
<Creation of Template Image> First, the camera for photographing the real space is set to a predetermined position and orientation, and the image I 0 is set.
To shoot. FIG. 1 shows an example of the image I 0 . L 1 to L 4 in the figure are landmarks, and the frame portions indicated by T 1 to T 4 are regions extracted as template images corresponding to the respective landmarks.

【0035】次にモデルビュー行列Mを算出する。カ
メラの位置と姿勢からモデルビュー行列を算出する算出
方法は公知の方法であるので、ここでの説明は省略す
る。
Next, the model view matrix M 0 is calculated. Since the calculation method for calculating the model view matrix from the position and orientation of the camera is a known method, the description thereof is omitted here.

【0036】また、撮影された画像中のランドマーク毎
(図1ではL〜L)にp を以下の式にて算出す
る。
Further, p i 0 is calculated for each landmark (L 1 to L 4 in FIG. 1) in the photographed image by the following formula.

【0037】p =SM そして次に各ランドマーク毎にテンプレート画像T
(図1ではT〜Tで示された部分の画像)を後述
の方法により作成する。
P i 0 = SM 0 P i and then for each landmark the template image T
i (the image of the portion indicated by T 1 to T 4 in FIG. 1) is created by the method described below.

【0038】rollが0のときは、画像Iから
(x ,y )を中心としたN×Nのサイズの矩形
領域を抽出し、これをテンプレート画像Tとすればよ
い。テンプレート画像Tにおいては画像の中心を座標
(0,0)と表わすこととすると、この処理は以下のよ
うに記述することができる。
When roll 0 is 0, a rectangular area of size N × N centering on (x i 0 , y i 0 ) is extracted from image I 0 and used as a template image T i. . In the template image T i , if the center of the image is represented by coordinates (0,0), this process can be described as follows.

【0039】 T(j,k)=I(x +j,y +k) 但し、j=xs〜xe,k=ys〜yeT i (j, k) = I 0 (x i 0 + j, y i 0 + k) where j = xs T to xe T and k = ys T to yes T.

【0040】一方、rollが0でないときは、(x
,y )を中心として、N×Nの矩形領域を−r
ollだけ回転させた矩形領域を抽出する。すなわ
ち、j=xs〜xe,k=ys〜yeの各画素
について、 T(j,k)=I(x +jcos(−roll
)−ksin(−roll),y +jsin
(−roll)+kcos(−roll)) となるようなテンプレート画像Tを作成する。
On the other hand, when roll 0 is not 0, (x
i 0 , y i 0 ) as the center, and an N × N rectangular area is -r
Extract a rectangular region rotated by ol 0 . That is, for each pixel of j = xs T to xe T and k = ys T to yes T , T i (j, k) = I 0 (x i 0 + jcos (−roll).
0 ) -ksin (-roll 0 ), y i 0 + jsin
A template image T i such that (−roll 0 ) + kcos (−roll 0 )) is created.

【0041】<各時刻におけるモデルビュー行列M
算出>時刻tにおけるセンサ出力(姿勢(roll
pitch,yaw))と、カメラの既定の位置
(X,Y,Z)に基づいて、モデルビュー行列M
を算出する。カメラの位置と姿勢からモデルビュー行
列を算出する算出方法は公知の方法であるので、ここで
の説明は省略する。
<Model view matrix M at each timetof
Calculation> Sensor output at time t (posture (rollt
pitcht, Yawt)) And the default position of the camera
(X0, Y0, Z0) Based on the model view matrix M
tTo calculate. Model view row from camera position and orientation
Since the calculation method for calculating the columns is a known method, here
Is omitted.

【0042】<補正値演算処理:モデルビュー行列M
を補正する補正行列ΔMの算出>モデルビュー行列M
を補正する補正行列ΔMの算出方法について説明す
る。
<Correction Value Calculation Processing: Model View Matrix M t
Calculation of Correction Matrix ΔM t for Correcting> Model View Matrix M
a description will be given of a method of calculating the correction matrix ΔM t to correct a t.

【0043】まずこれまでの処理で既に算出されている
補正行列ΔMt−1を用いてモデルビュー行列Mを補
正し、M’を求める。尚、この処理が最初の場合(t
=0の場合)、補正行列ΔMt−1は単位行列とする。
First, the model view matrix M t is corrected by using the correction matrix ΔM t−1 already calculated in the processing so far to obtain M ′ t . If this process is the first (t
= 0), the correction matrix ΔM t−1 is a unit matrix.

【0044】M’=ΔMt−1 次に各ランドマーク毎にp を以下の式に従って算出
する。
M ′ t = ΔM t−1 M t Next, p i t is calculated for each landmark according to the following formula.

【0045】p =SM’ 尚、この方法は公知の方法であるため、詳細な説明は省
略する。また、各ランドマークの座標を求めた結果、そ
の座標が画像Iの座標の範囲外であるランドマーク
は、以後の処理対象から除外する。
P i t = SM ′ t P i Since this method is a known method, detailed description will be omitted. Also, landmarks result of obtaining the coordinates of each landmark, the coordinates are outside the range of the coordinates of the image I t are excluded from further processing.

【0046】次に、各ランドマーク毎にターゲット画像
を作成する。具体的には、画像Iから同画像に
おけるローカル座標である(x 、y )を中心と
したN’×N”の矩形領域を−rollだけ回転させ
た矩形を抽出する。すなわち、j=xs〜xe,k
=ys〜yeの各画素について、以下の変換を行
う。
Next, create a target image R i t for each landmark. Specifically, the image I t is a local coordinates in the image (x i t, y i t ) and extracts a rectangle rotated by -Roll t the rectangular area N '× N "around the. That is, j = xs T to xe T , k
The following conversion is performed for each pixel of = ys T to yes T.

【0047】R (j,k)=I(x +jco
s(−roll)−ksin(−roll),y
+jsin(−roll)+kcos(−roll
)) 次に各ランドマーク毎に、ターゲット画像R とテン
プレート画像Tのマッチングを行い、ターゲット画像
上におけるランドマークの位置(j ,k )を求
める。求める方法の具体的な処理について以下説明す
る。
Ri t(J, k) = It(Xi t+ Jco
s (-rollt) -Ksin (-rollt), Yi
t+ Jsin (-rollt) + Kcos (-roll
t)) Next, for each landmark, the target image Ri tAnd ten
Plate image TiMatch the target image
The position of the landmark above (ji t, Ki t)
Meru. The specific processing of the method to obtain is described below.
It

【0048】まずターゲット画像R 上の座標(j,
k)を中心としたN×Nの矩形領域とテンプレート画像
との類似度e(j,k)を算出する。類似度の算出
は例えば相互相関やSSD(Sum of Square
d Difference)などによって行うが、公知
のいずれのテンプレートマッチング手法を用いてもよ
い。この類似度e(j,k)を全てのj及びk(ただ
し、j=−m〜m,k=−n〜n)について算出し、類
似度e(j,k)を最大にするj及びkを(j ,k
)とする。
[0048] First, the target image R i t on the coordinates (j,
The similarity e (j, k) between the N × N rectangular area centered at k) and the template image T i is calculated. The calculation of the degree of similarity is performed by, for example, cross-correlation or SSD (Sum of Square).
d Difference) and the like, but any known template matching method may be used. This similarity e (j, k) is calculated for all j and k (where j = -m to m, k = -n to n) to maximize the similarity e (j, k). Let k be (j i t , k
i t ).

【0049】そして、各ランドマークで求めた
(j ,k )から、代表値(j,k )を算出
する。代表値の算出は、例えば、各ランドマーク毎に求
めた(j ,k )の平均値やメディアン値を求め
ることで行う。なお、各ランドマーク毎に求めた(j
,k )のうち、その検出の際の類似度e
(j ,k )が所定の閾値よりも大きいランドマ
ークのみを代表値の算出に用いることで、信頼性の低い
検出結果を除外することができる。この場合、類似度e
(j ,k )が前記閾値以上となるランドマーク
の個数が所定数以下の場合には、時刻tにおける補正値
演算処理を打ち切ってもよい。
Then, it was calculated for each landmark.
(Ji t, Ki t) From the representative value (jt, K t) Is calculated
To do. The representative value is calculated for each landmark, for example.
Metta (ji t, Ki t) Average value and median value
By doing. It should be noted that it was calculated for each landmark (ji
t, Ki t), The degree of similarity e at the time of detection
(Ji t, Ki t) Is greater than a predetermined threshold
Reliability is low because only the peaks are used to calculate the representative value.
The detection result can be excluded. In this case, the similarity e
(Ji t, Ki t) Is a landmark above the threshold
If the number of is less than or equal to a predetermined number, the correction value at time t
The arithmetic processing may be terminated.

【0050】そして次に、ランドマークの検出結果に基
づいて、補正行列ΔMの更新を行う。
Then, the correction matrix ΔM t is updated based on the landmark detection result.

【0051】まず、カメラの姿勢の補正更新値Δrol
l,Δpitch,Δyawを以下のようにして求め
る。
First, the corrected update value Δroll of the attitude of the camera
l, Δpitch, Δyaw are obtained as follows.

【0052】Δroll =0 Δpitch=arctan(k/f) Δyaw =arctan(j/f) 又、カメラの位置は固定と仮定しているので、位置の補
正更新値Δx,Δy,Δzは全て0となる。
Δroll = 0 Δpitch = arctan (k t / f) Δyaw = arctan (j t / f) Since it is assumed that the position of the camera is fixed, all correction update values Δx, Δy, and Δz of the position are It becomes 0.

【0053】次に、以上の姿勢Δroll,Δpitc
h,Δyaw、及び位置Δx,Δy,Δzによって定め
られるモデルビュー行列として、補正更新行列ΔM’
を算出する。カメラの位置と姿勢からモデルビュー行列
を算出する算出方法は公知の方法であるので、ここでの
説明は省略する。
Next, the above postures Δroll, Δpitc
As a model view matrix defined by h, Δyaw, and positions Δx, Δy, Δz, a correction update matrix ΔM ′ t
To calculate. Since the calculation method for calculating the model view matrix from the position and orientation of the camera is a known method, the description thereof is omitted here.

【0054】そして、これまでに得られた補正行列ΔM
t−1と補正更新行列ΔM’から、更新後の補正行列
ΔMを以下の式に従って算出する。
Then, the correction matrix ΔM obtained so far
An updated correction matrix ΔM t is calculated from t−1 and the correction update matrix ΔM ′ t according to the following formula.

【0055】ΔM=ΔM’ΔMt−1 <位置姿勢補正処理:補正後のモデルビュー行列M$
の算出>時刻tにおける補正後のモデルビュー行列M$
は、以下の式に従って求めることができる。
ΔM t = ΔM ′ t ΔM t−1 <position / orientation correction process: corrected model view matrix M $ t
Calculation> Model view matrix M $ after correction at time t
t can be calculated according to the following equation.

【0056】M$=ΔM そして補正後のモデルビュー行列M$を用いてCGを
描画、表示することで、ジャイロセンサを用いても時間
経過に伴った方位方向の位置ずれを軽減することができ
る。
By drawing and displaying CG using M $ t = ΔM t M t and the corrected model view matrix M $ t , the positional deviation in the azimuth direction with the passage of time can be obtained even with the gyro sensor. Can be reduced.

【0057】以上、説明した本実施形態における補正処
理のフローチャートを図5乃至7に示し、以下説明す
る。
Flowcharts of the correction processing in this embodiment described above are shown in FIGS. 5 to 7, and will be described below.

【0058】図5は上述の補正処理のメインの処理のフ
ローチャートである。
FIG. 5 is a flow chart of the main processing of the above-mentioned correction processing.

【0059】まずテンプレート画像を作成する(ステッ
プS501)。テンプレート画像を作成する具体的な処
理のフローチャートを図6に示す。
First, a template image is created (step S501). FIG. 6 shows a flowchart of a specific process of creating a template image.

【0060】まず、既定の位置姿勢に固定されたカメラ
から画像Iを入力する(ステップS601)。次にこ
のときのカメラの位置姿勢に基づいてモデルビュー行列
を算出する(ステップS602)。次に全てのiに
ついて(言い換えれば全てのランドマークについて)p
を求める(ステップS603,S604)。次にテ
ンプレート画像を作成する。作成する方法は上述の通り
であって、各ランドマークについて上述した範囲内の全
てのj、kに対して画素値を求め、テンプレート画像T
の座標(j,k)に格納する(ステップS606乃至
S608)。
First, the image I 0 is input from the camera fixed in the predetermined position and orientation (step S601). Next, the model view matrix M 0 is calculated based on the position and orientation of the camera at this time (step S602). Then for all i (in other words, for all landmarks) p
i 0 is obtained (steps S603 and S604). Next, a template image is created. The method of creating is as described above, and pixel values are calculated for all j and k within the range described above for each landmark, and the template image T
It is stored in the coordinate (j, k) of i (steps S606 to S608).

【0061】以上の図6に示した処理に従ってテンプレ
ート画像を生成すると、図5に戻って、画像Iの撮影
を行う(ステップS502)。又、このときのセンサ出
力の取得も行う(ステップS503)。尚ステップS5
02,S503の処理の順序はこれに限定されるもので
はなく、その順序が逆でも良いし、同期を取って、同時
に行っても良い。
[0061] After generating the template image according to the process shown in FIG. 6 above, returning to FIG. 5, to photograph an image I t (step S502). Further, the sensor output at this time is also acquired (step S503). Incidentally, step S5
The order of the processing of 02 and S503 is not limited to this, and the order may be reversed, or they may be synchronized and performed simultaneously.

【0062】次にセンサ出力に基づいてモデルビュー行
列Mの算出を行う(ステップS504)。そして補正
行列ΔMの算出を行う(ステップS505)。補正行
列ΔMの算出における具体的な処理のフローチャート
を図7に示し、以下説明する。
Next, the model view matrix M t is calculated based on the sensor output (step S504). Then, the correction matrix ΔM t is calculated (step S505). A flowchart of a specific process in calculating the correction matrix ΔM t is shown in FIG. 7 and will be described below.

【0063】まず、補正行列ΔMt−1でモデルビュー
行列Mを補正し、モデルビュー行列M’を求める
(ステップS701)。そして次に全てのiについて、
言い換えれば全てのランドマークについてp を算出
する(ステップS702,S703)。尚、算出したp
が画像Iの範囲外に存在する場合には後述の処理
の対象外とする。
First, the model view matrix M t is corrected with the correction matrix ΔM t−1 to obtain the model view matrix M ′ t (step S701). And then for all i,
In other words, p i t is calculated for all landmarks (steps S702 and S703). The calculated p
To be eligible for processing described later if the i t is outside the range of the image I t.

【0064】次に各ランドマーク毎にターゲット画像R
を算出する(ステップS704乃至S706)。そ
してターゲット画像R とテンプレート画像Tのマ
ッチングを行い、各j、kごとに類似度e(j,k)を
算出する(ステップS707,S708)。そして類似
度e(j,k)が最大となる(j,k)を(j ,k
)とする(ステップS709)。以上のステップS
707からステップS709までの処理を全てのi、言
い換えると全てのランドマークに対して求める(ステッ
プS710)。
Next, the target image R for each landmark
calculating a i t (step S704 to S706). And performs matching of the target image R i t and the template image T i, each j, for each k similarity e (j, k) is calculated (step S707, S708). Then, (j, k) that maximizes the similarity e (j, k) is (j i t , k).
i t ) (step S709). Step S above
The processing from 707 to step S709 is calculated for all i, in other words, for all landmarks (step S710).

【0065】そして求めた(j ,k )の平均値
を計算し、(j,k)を算出する(ステップS71
1)。また、カメラの位置姿勢の補正値を求め(ステッ
プS712)、補正更新行列ΔM’を求め(ステップ
S713)、最終的に補正行列ΔMを求める(ステッ
プS714)。
Then, the average value of the obtained (j i t , k i t ) is calculated to calculate (j t , k t ) (step S71).
1). Further, the correction value of the position and orientation of the camera is obtained (step S712), the correction update matrix ΔM ′ t is obtained (step S713), and the correction matrix ΔM t is finally obtained (step S714).

【0066】以上の図7に示した処理に従って補正行列
ΔMを算出すると、図5に戻って、算出した補正行列
ΔMを用いてモデルビュー行列Mを補正する(ステ
ップS506)。
When the correction matrix ΔM t is calculated according to the processing shown in FIG. 7, the model view matrix M t is corrected using the calculated correction matrix ΔM t (step S506).

【0067】そして補正後のモデルビュー行列M$
用いてCGを描画、表示する(ステップS507)。
Then, the CG is drawn and displayed using the corrected model view matrix M $ t (step S507).

【0068】以上の説明により、本実施形態の画像処理
装置及びその方法によって、姿勢センサによるカメラ視
点の姿勢計測誤差を補正して位置ずれのないMRを実現
することができる。
As described above, with the image processing apparatus and method according to the present embodiment, it is possible to correct the posture measurement error of the camera viewpoint by the posture sensor and realize MR without misalignment.

【0069】[第2の実施形態]第1の実施形態では、
補正処理を単一ループ(描画ループ)の中で行ってい
る。この場合、画像処理の計算負荷が原因となって描画
のフレームレートを充分得ることができない。あるい
は、描画のフレームレートを確保するために画像処理を
簡単なもの(計算量の少ないもの)にすると、補正の充
分な精度を得ることができない。
[Second Embodiment] In the first embodiment,
The correction process is performed in a single loop (drawing loop). In this case, the drawing frame rate cannot be sufficiently obtained due to the calculation load of the image processing. Alternatively, if the image processing is made simple (with a small amount of calculation) in order to secure the drawing frame rate, it is not possible to obtain sufficient accuracy of correction.

【0070】そこで本実施形態では描画ループと補正演
算ループとを分離し、独立の更新周期(例えば描画ルー
プを60Hzで、補正演算ループを1ループ/秒)で動
作させる。又、本実施形態の処理を実行する装置とし
て、第1の実施形態で用いた画像処理装置を用いる。
Therefore, in this embodiment, the drawing loop and the correction calculation loop are separated and operated at independent update cycles (for example, the drawing loop is 60 Hz and the correction calculation loop is 1 loop / second). Further, the image processing apparatus used in the first embodiment is used as an apparatus that executes the processing of this embodiment.

【0071】<描画ループ>基本的には図5、6に示し
たフローチャートに従った処理を実行するが、ステップ
S505において、後述の補正演算ループより送信され
る最新の補正行列ΔMを得てこれをΔMとする処理
を行う。
<Drawing Loop> Basically, the processing according to the flowcharts shown in FIGS. 5 and 6 is executed, but in step S505, the latest correction matrix ΔM s transmitted from the correction calculation loop described later is obtained. This is set to ΔM t .

【0072】<補正演算ループ>図8に補正演算ループ
の処理のフローチャートを示す。まず、描画ループから
時刻sにおける画像Iと、そのときのモデルビュー行
列Mを入力する(ステップS801)。そして第1の
実施形態で説明したステップS505における処理と同
様にして補正行列ΔMを算出する(ステップS80
2)。そして算出した補正行列ΔMを描画ループに送
信する(ステップS803)。そして以上の処理を終了
許可があるまで実行する(ステップS804)。
<Correction Calculation Loop> FIG. 8 shows a flowchart of the processing of the correction calculation loop. First, the image I s at time s and the model view matrix M s at that time are input from the drawing loop (step S801). Then, the correction matrix ΔM s is calculated in the same manner as the processing in step S505 described in the first embodiment (step S80).
2). Then, the calculated correction matrix ΔM s is transmitted to the drawing loop (step S803). Then, the above processing is executed until the end is permitted (step S804).

【0073】本実施形態では描画ループと補正演算ルー
プを分け、一つの画像処理装置(例えば)の中で実行し
ていたが、これに限定されるものではなく、夫々のルー
プの処理を夫々個々のコンピュータで実行しても良い。
そして、夫々のコンピュータ間で通信可能な状態にして
おき、夫々のコンピュータ間で夫々の処理結果を送受信
可能にする。このようにすることで、一つのコンピュー
タが受け持つ処理数は少なくなるので、より迅速な処理
が可能となる。
In the present embodiment, the drawing loop and the correction calculation loop are divided and executed in one image processing apparatus (for example), but the present invention is not limited to this, and the processing of each loop is performed individually. You can run it on your computer.
Then, the respective computers are set in a communicable state, and the respective processing results can be transmitted and received between the respective computers. By doing so, the number of processes handled by one computer is reduced, and thus more rapid processes are possible.

【0074】[第3の実施形態]第2の実施形態ではモ
デルビュー行列の補正の処理において、得られた補正行
列ΔMとセンサによるモデルビュー行列Mとの単純
な積の演算により、補正後のモデルビュー行列M$
求めているが、補正行列の更新は描画の周期と比べて間
隔が空いているので、補正行列が必ずしも現在のフレー
ム(時刻t)に適切な補正情報を表しているとは言えな
い。
[Third Embodiment] In the second embodiment, in the process of correcting the model view matrix, the correction is performed by a simple product operation of the obtained correction matrix ΔM t and the model view matrix M t by the sensor. Although the subsequent model view matrix M $ t is obtained, the correction matrix does not always represent the correction information appropriate for the current frame (time t) because the correction matrix is updated with a gap compared to the drawing cycle. I can't say that

【0075】そこで本実施形態では、第2の実施形態に
おけるステップS505において、補正演算ループから
得られる過去の補正行列を用いて、時刻tに適した補正
行列ΔMを算出する。
Therefore, in this embodiment, in step S505 in the second embodiment, the correction matrix ΔM t suitable for the time t is calculated using the past correction matrix obtained from the correction calculation loop.

【0076】まず、時刻sにおいて得られる補正行列Δ
を展開して、カメラ姿勢の方位方向の補正値Δya
及びピッチ方向の補正値Δpitchを算出す
る。モデルビュー行列から個々の回転成分を求める方法
は公知であるので、ここでの説明は省略する。時刻s−
1においても同様な処理をおこない、時刻tにおけるカ
メラ姿勢の補正値であるΔyaw及びΔpitch
を以下のようにして求める。
First, the correction matrix Δ obtained at time s
Expanding M s , the correction value Δya in the azimuth direction of the camera posture
to calculate the w s and the pitch direction of the correction value Δpitch t. Since a method of obtaining individual rotation components from the model view matrix is known, description thereof will be omitted here. Time s-
Also performs the same processing in one, the correction value of the camera posture at time t Δyaw t and Derutapitch t
Is calculated as follows.

【0077】Δyaw=Δyaw+(Δyaw
Δyaws−1)×Δst/Δs Δpitch=Δpitch+(Δpitch
Δpitchs−1)×Δst/Δs ここで、Δstは時刻sから時刻tまでの経過時間、Δ
sは時刻s−1から時刻sまでの経過時間を表わすもの
とする。
Δyaw t = Δyaw s + (Δyaw s
Δyaw s−1 ) × Δst / Δs Δpitch t = Δpitch s + (Δpitch s
Δpitch s−1 ) × Δst / Δs where Δst is the elapsed time from time s to time t, Δ
Let s represent the elapsed time from time s-1 to time s.

【0078】そして得られた補正値Δyaw及びΔp
itchを用いて、補正行列ΔM を求める。その結
果、本実施形態における補正行列の算出方法を適用する
ことによって、現在のフレーム(時刻t)に適切な補正
行列を算出することができる。
Then, the obtained correction value ΔyawtAnd Δp
itchtUsing the correction matrix ΔM tAsk for. That conclusion
As a result, the correction matrix calculation method in this embodiment is applied.
By doing so, correction appropriate for the current frame (time t)
The matrix can be calculated.

【0079】尚、本実施形態では上記の式に示したよう
に1次の線形予測によって補正値の外挿を行っている
が、補正値の予測方法はこれに限るものではなく、2次
の線形予測や他の予測方法を用いることも可能である。
In this embodiment, the correction value is extrapolated by the linear prediction of the first order as shown in the above equation, but the method of predicting the correction value is not limited to this, and the method of predicting the second order is not limited to this. It is also possible to use linear prediction or other prediction methods.

【0080】[第4の実施形態]本実施形態では、第1
の実施形態よりもより正確に補正を行う方法を示す。
[Fourth Embodiment] In the present embodiment, the first
A method of performing the correction more accurately than the embodiment of FIG.

【0081】まず、本実施形態で用いる各変数のうち、
上述の実施形態と異なるものについて説明する。
First, of the variables used in this embodiment,
Differences from the above embodiment will be described.

【0082】・時刻tにおけるセンサ出力に基づいたモ
デルビュー行列の回転成分 R ・カメラの既定の位置に基づいたモデルビュー行列の平
行移動成分 T ・画像I上におけるランドマークLの検出位置 p
=(x$ ,y$ ) ・ランドマークLの「画像I上への投影点」のカメ
ラ座標系における位置pc ・ランドマークLから求められる、モデルビュー行列
の補正更新行列(方位方向の回転成分) ΔR ・ランドマークLから求められる、yaw方向の補正
更新値 Δyaw ・全てのランドマークから求められるyaw方向の補正
更新値 Δyaw ・モデルビュー行列の補正行列(方位方向の回転成分)
ΔR ・これまでの処理で既に算出されている補正行列ΔR
t−1(はじめのループでは単位行列) ・補正行列ΔRt−1によって補正されたモデルビュー
行列の回転成分 R’ ・補正行列ΔRt−1によって補正されたモデルビュー
行列 M’ ・補正行列ΔRt−1を補正行列ΔRに更新する為の
補正更新行列(方位方向の回転成分) ΔR’ 以上の設定に基づいて、本実施形態における補正方法に
ついて同方法の処理のフローチャートを示す図9,10
を用いて説明する。
A mode based on the sensor output at time t
Rotation component R of the Delview matrixt · The model view matrix flatness based on the camera's default position
Line shift component Tt ・ Image ItLandmark L aboveiDetection position p
$i t= (X $i t, Y $i t) ・ Landmark Li"Image ItTurtle on projected point "
Position pc in La coordinate systemi t ・ Landmark LiModel view matrix obtained from
Correction update matrix (rotation component in azimuth direction) ΔRit ・ Landmark LiCorrection in the yaw direction obtained from
Update value Δyawi t ・ Yaw direction correction required from all landmarks
Update value Δyawt ・ Correction matrix of model view matrix (rotation component in azimuth direction)
  ΔRt -Correction matrix ΔR already calculated in the processing so far
t-1(Identity matrix in the first loop) ・ Correction matrix ΔRt-1Model view corrected by
Matrix rotation component R ' t ・ Correction matrix ΔRt-1Model view corrected by
Matrix M ’t ・ Correction matrix ΔRt-1Correction matrix ΔRtTo update to
Correction update matrix (rotation component in azimuth direction) ΔR ′t Based on the above settings, the correction method in the present embodiment
9 and 10 showing a flowchart of processing of the same method.
Will be explained.

【0083】図9は本実施形態におけるメインの処理の
フローチャートである。ステップS901からステップ
S903までの処理は第1の実施形態におけるステップ
S501からステップS503までの処理と同じである
ため、説明を省略する。
FIG. 9 is a flowchart of the main processing in this embodiment. Since the processing from step S901 to step S903 is the same as the processing from step S501 to step S503 in the first embodiment, description thereof will be omitted.

【0084】次に、モデルビュー行列の回転成分R
と、平行移動成分Tとを算出する(ステップS90
4)。具体的には回転成分Rは、センサ出力(センサ
から得たカメラの姿勢)(roll,pitch
yaw)に基づいて公知の方法で求める。一方、平行
移動成分Tは、カメラの視点位置に基づいて公知の方
法で求める。
Next, the rotation component R of the model view matrix
t and the translation component T t are calculated (step S90).
4). Specifically, the rotation component R t is the sensor output (the posture of the camera obtained from the sensor) (roll t , pitch t ,
It is determined by a known method based on yaw t ). On the other hand, the translation component T t is obtained by a known method based on the viewpoint position of the camera.

【0085】そして次に補正行列ΔRを求める(ステ
ップS905)。補正行列ΔRを求める具体的な処理
のフローチャートを図10に示し、以下説明する。
Then, the correction matrix ΔR t is obtained (step S905). A flow chart of a specific process for obtaining the correction matrix ΔR t is shown in FIG. 10 and will be described below.

【0086】まず、これまでの処理で既に算出されてい
る補正行列ΔRt−1で行列Rを以下のようにして補
正し、行列R’を求める。
[0086] First, so far the process already matrix R t in the correction matrix [Delta] R t-1, which is calculated by the corrected as follows, obtaining the matrix R 't.

【0087】R’=RΔRt−1 次に、求めた行列R’を用いて行列M’を以下のよ
うにして求める(ステップS1001)。
R ′ t = R t ΔR t−1 Next, the matrix M ′ t is obtained as follows using the obtained matrix R ′ t (step S1001).

【0088】M’=R’ ステップS1002からステップS1010までの処理
はそれぞれステップS702からステップS710まで
の処理と同じであるために、ここでの説明は省略する。
M ′ t = R ′ t T t Since the processing from step S1002 to step S1010 is the same as the processing from step S702 to step S710, respectively, description thereof will be omitted here.

【0089】次に、求まった(j ,k )を用い
て画像I上の各ランドマークの位置p$ =(x$
,y$ )を算出する(ステップS1012)。
算出は以下の式によって行う。
[0089] Next, Motoma' was (j i t, k i t ) by using the image I position of each landmark on the t p $ i t = (x $
i t , y $ i t ) is calculated (step S1012).
The calculation is performed by the following formula.

【0090】x$ =x +j cos(−ro
ll)−k sin(−roll) y$ =y +j sin(−roll)+k
cos(−roll) そして次に各ランドマークの「画像I上への投影点」
のカメラ座標系における位置pc を算出する(ステ
ップS1013)。
[0090] x $ i t = x i t + j i t cos (-ro
ll t ) −k i t sin (−roll t ) y $ i t = y i t + j i t sin (−roll t ) + k
i t cos (-roll t) and then "projection point onto the image I t" of each landmark
Calculating a position pc i t in the camera coordinate system (step S1013).

【0091】 pc =(x$ 、y$ 、−f、1) このとき、aをスケーリングパラメータとすると、pc
・a=R’ΔR が成立する。この
式を解くことで、Δyaw を算出する。その方法を
以下に示す。だたし、以下で、Inv(M)は行列Mの
逆行列を示す。
[0091] pci t= (X $i t, Y $i t, -F, 1)T At this time, if a is a scaling parameter, pc
i t・ A = R 'tΔR itTtPiIs established. this
By solving the equation, Δyawi tTo calculate. How to
It is shown below. However, in the following, Inv (M) is the matrix M
The inverse matrix is shown.

【0092】P$ =(X$ ,Y$ ,Z$
,1)=Inv(R’)pc P’=(X’,Y’,Z’,1)=T とおくと、P$ =ΔRP’/aとなるの
で、 X$ ={cos(Δyaw )X’−sin
(Δyaw )Z’}/a Z$ ={sin(Δyaw )X’+cos
(Δyaw )Z’}/a となり、これを解くことで、 Δyaw =arctan{(Z$ ・X’−X
・Z’)/(X$ ・X’+Z$
Z’)} となる(ステップS1014)。このステップS101
4の処理をすべてのi、すなわち、すべてのランドマー
クに対して求める(ステップS1015)。そして求め
たすべてのΔyaw の平均値Δyawを求める
(ステップS1016)。
P $i t= (X $i t, Y $i t, Z $i
t, 1)T= Inv (R 't) Pc i t P ’i= (X 'i, Y ’i, Z 'i, 1) = TtPi Putting it, P $i t= ΔRitP ’i/ A
so, X $i t= {Cos (Δyawi t) X 'i-Sin
(Δyawi t) Z 'i} / A Z $i t= {Sin (Δyawi t) X 'i+ Cos
(Δyawi t) Z 'i} / A By solving this, Δyawi t= Arctan {(Z $i t・ X 'i-X
$i t・ Z 'i) / (X $i t・ X 'i+ Z $i t
Z 'i)} (Step S1014). This step S101
4 processing for all i, that is, all landmar
(Step S1015). And asked
All Δyawi tAverage value ΔyawtAsk for
(Step S1016).

【0093】そして、求めた補正更新値Δyawを用
いて補正更新行列ΔR’を求める(ステップS101
7)。座標系を任意の角度(ここではΔyaw)で方
位方向に回転させるモデルビュー行列を算出する方法は
公知であるので、説明は省略する。この補正更新行列Δ
R’を用いて、求めるべき補正行列ΔRを以下のよ
うにして求める(ステップS1018)。
Then, the correction update matrix ΔR ′ t is obtained using the obtained correction update value Δyaw t (step S101).
7). A method of calculating the model view matrix for rotating the coordinate system in the azimuth direction at an arbitrary angle (here, Δyaw t ) is known, and therefore its description is omitted. This correction update matrix Δ
The correction matrix ΔR t to be calculated is calculated using R ′ t as follows (step S1018).

【0094】ΔR=ΔRt−1ΔR’ 以上の図10に示した処理に従って補正行列ΔRを算
出すると、図9に戻って、算出した補正行列ΔRを用
いてモデルビュー行列M$を算出する(ステップS9
06)。算出は以下の式に従って行う。
[0094] After calculating the correction matrix [Delta] R t according to the process shown in ΔR t = ΔR t-1 ΔR 't above 10, returning to FIG. 9, the model view matrix by using the calculated correction matrix [Delta] R t M $ t is calculated (step S9)
06). The calculation is performed according to the following formula.

【0095】M$=RΔR そして第1の実施形態と同様に、算出したモデルビュー
行列を用いてCGを描画、表示する(ステップS90
7)。
M $ t = R t ΔR t T t Then, similarly to the first embodiment, the CG is drawn and displayed using the calculated model view matrix (step S90).
7).

【0096】[第5の実施形態]第1乃至4の実施形態
では、視点の位置を既知とし、姿勢(方向、角度)のみ
の補正を行った。前述したように、観察対象物体までの
距離が視点位置の移動量に対して相対的に大きい場合に
は視点位置を固定値とすること有効であるが、その仮定
が成り立たない場合には視点の移動に伴う位置ずれが生
じてしまう。よって本実施形態では視点位置の補正を行
う方法を示す。ただし本実施形態ではカメラ座標系にお
けるZ軸方向(奥行き方向、撮像面に垂直な方向)の移
動量ΔTzは常に0であるものと仮定する。また、回転
成分については、センサにより正しい値が得られている
と仮定する。なお、この仮定が成り立つ場合には、最低
1点のランドマークの検出により位置の補正を行うこと
ができる。ここで本実施形態における設定を以下に示
す。
[Fifth Embodiment] In the first to fourth embodiments, the position of the viewpoint is known, and only the posture (direction, angle) is corrected. As described above, if the distance to the observation target object is relatively large with respect to the amount of movement of the viewpoint position, it is effective to set the viewpoint position to a fixed value, but if that assumption does not hold, Positional displacement occurs due to movement. Therefore, in this embodiment, a method of correcting the viewpoint position will be described. However, in the present embodiment, it is assumed that the movement amount ΔTz in the Z-axis direction (depth direction, direction perpendicular to the imaging surface) in the camera coordinate system is always 0. Further, it is assumed that the sensor obtains a correct value for the rotation component. If this assumption holds, the position can be corrected by detecting at least one landmark. Here, the setting in the present embodiment is shown below.

【0097】・時刻tにおけるセンサ出力に基づいたモ
デルビュー行列の回転成分 R ・時刻tにおけるカメラの既定の位置に基づいたモデル
ビュー行列の平行移動成分 T ・モデルビュー行列の補正行列(世界座標系における平
行移動成分) ΔT ・ランドマークLから求められるモデルビュー行列の
補正行列(世界座標系における平行移動成分) ΔT
・これまでの処理で既に算出されている補正行列 ΔT
t−1(開始ループでは単位行列) ・補正行列ΔTt−1によって補正されたモデルビュー
行列の平行移動成分T’ ・補正行列ΔTt−1によって補正されたモデルビュー
行列 M’ ・モデルビュー行列の補正更新行列(カメラ座標系にお
ける平行移動成分)ΔTc ・ランドマークLから求められる、x軸方向(カメラ
座標系)の補正更新値ΔTx ・ランドマークLから求められる、y軸方向(カメラ
座標系)の補正更新値ΔTy ・全てのランドマークから求められる、x軸方向(カメ
ラ座標系)の補正更新値 ΔTx ・全てのランドマークから求められる、y軸方向(カメ
ラ座標系)の補正更新値 ΔTy 以上の設定に基づいて本実施形態における補正方法につ
いて同方法の処理のフローチャートを示す図11,12
を用いて説明する。
Rotation component of the model view matrix based on the sensor output at time t R t · Translation component of the model view matrix based on the default position of the camera at time t T t · Correction matrix of the model view matrix (world Translation component in coordinate system) ΔT t · Correction matrix of model view matrix obtained from landmark L i (translation component in world coordinate system) ΔT i
t -correction matrix ΔT already calculated in the processing so far
t-1 (start unit matrix in the loop) and correction matrix [Delta] T t-1 'corrected model view matrix M by t · correction matrix [Delta] T t-1' t · Model translation component T of the corrected model view matrix by Correction update matrix of view matrix (translation component in camera coordinate system) ΔTc t · Landmark L i , correction update value in x-axis direction (camera coordinate system) ΔTx i t · Landmark L i , determined from corrected and updated value .DELTA.Ty i t · all landmarks in the y-axis direction (camera coordinate system) is determined from the corrected and updated value Delta] Tx t · all landmarks in the x-axis direction (camera coordinate system), the y-axis direction 11 and 12 showing the flowchart of the processing of the correction method in the present embodiment based on the setting of the correction update value ΔTy t or more of (camera coordinate system).
Will be explained.

【0098】図11は本実施形態におけるメインの処理
のフローチャートである。ステップS1101からステ
ップS1104までの処理は、第4の実施形態における
ステップS901からステップS904における各処理
と同じなので、ここでは説明は省略する。
FIG. 11 is a flowchart of the main processing in this embodiment. The processing from step S1101 to step S1104 is the same as each processing from step S901 to step S904 in the fourth embodiment, and thus the description thereof is omitted here.

【0099】次に、補正行列ΔTを求める(ステップ
S1105)。補正行列ΔTを求める具体的な処理の
フローチャートを図12に示し、以下説明する。
Next, the correction matrix ΔT t is obtained (step S1105). A flowchart of a specific process for obtaining the correction matrix ΔT t is shown in FIG. 12 and will be described below.

【0100】まず、これまでの処理で既に算出されてい
る補正行列ΔTt−1で行列Tを補正し、行列T’
と行列M’を以下のようにして求める(ステップS1
201)。
First, the matrix T t is corrected by the correction matrix ΔT t−1 already calculated in the processing so far, and the matrix T ′ t is calculated.
And matrix M ′ t are obtained as follows (step S1
201).

【0101】T’=ΔTt−1 M’=RT’ 次のステップS1202からステップS1211までの
各処理は、第4の実施形態におけるステップS1002
からステップS1012までの各処理を同じであるため
に、ここのでは説明は省略する。
T ′ t = ΔT t−1 T t M ′ t = R t T ′ t Each process from the next step S1202 to step S1211 is step S1002 in the fourth embodiment.
Since each process from step S1012 to step S1012 is the same, the description thereof is omitted here.

【0102】次にステップS1212では、ランドマー
クLに関する補正更新値ΔTx 、ΔTy を算
出する。
Next, in step S1212, the land marker
Black LiUpdate value ΔTx fori t, ΔTyi tCalculate
Put out.

【0103】 ΔTx =f・Zc (x$ −x ) ΔTy =f・Zc (y$ −y ) ここでZc はカメラ座標系におけるランドマークの
z座標で、M’の第3成分がその値となる。
ΔTx i t = f · Zc i t (x $ i t −x i t ) ΔTy i t = f · Zc i t (y $ i t −y i t ) where Zc i t is the camera coordinate system. At the z coordinate of the landmark at, the third component of M ′ t P i has that value.

【0104】以上の補正更新値ΔTx 、ΔTy
をすべてのi,つまり、すべてのランドマークに対して
求め(ステップS1213)、次に求めたすべての補正
更新値ΔTx 、ΔTy の平均値ΔTx、ΔT
を求める(ステップS1214)。そして、求めた
補正更新値の平均値ΔTx、ΔTyを用いて、x方
向にΔTx、y方向にΔTyの平行移動を座標系に
施す補正更新行列ΔTcを算出する(ステップS12
15)。座標系に任意の平行移動を施す座標変換行列を
算出する方法は公知であるので、説明は省略する。そし
て補正行列ΔT を以下のようにして求める(ステップ
S1216)。
Correction correction value ΔTx abovei t, ΔTyi t
For all i, that is, for all landmarks
Obtained (step S1213), then all corrections obtained
Update value ΔTxi t, ΔTyi tAverage value ΔTxt, ΔT
ytIs calculated (step S1214). And asked
Average value of correction update value ΔTxt, ΔTytUsing x direction
Towards ΔTxt, Ty in the y directiontTo the coordinate system
Correction update matrix ΔTc to be appliedtIs calculated (step S12
15). A coordinate transformation matrix that applies arbitrary parallel movement to the coordinate system
The method of calculation is publicly known, and the description thereof is omitted. That
Correction matrix ΔT tIs calculated as follows (step
S1216).

【0105】 ΔT=Inv(R)ΔTcΔTt−1 以上の図12に示した処理に従って補正行列ΔTを算
出すると、図11に戻って、算出した補正行列ΔT
用いてモデルビュー行列M$を算出する(ステップS
1106)。算出は以下の式に従って行う。
[0105] After calculating the ΔT t = Inv (R t) ΔTc t R t ΔT t-1 or more correction matrix [Delta] T t in accordance with the processing shown in FIG. 12, referring back to FIG. 11, using the calculated correction matrix [Delta] T t To calculate the model view matrix M $ t (step S
1106). The calculation is performed according to the following formula.

【0106】M$=RΔT そして第1の実施形態と同様に、算出したモデルビュー
行列を用いてCGを描画し、表示する(ステップS11
07)。
M $ t = R t ΔT t T t Then, as in the first embodiment, the CG is drawn and displayed using the calculated model view matrix (step S11).
07).

【0107】[第6の実施形態]第5の実施形態ではΔ
Tzが常に0と仮定していた為に、視線方向に対して前
後に視点位置が移動した場合に正確な位置合わせを行う
ことができなかった。本実施形態では、常に2点以上の
ランドマークを観察することで、ΔTzが0でない場合
にも対応する。
[Sixth Embodiment] In the fifth embodiment, Δ
Since Tz was always assumed to be 0, accurate alignment could not be performed when the viewpoint moved forward and backward with respect to the line-of-sight direction. In the present embodiment, two or more landmarks are always observed to cope with the case where ΔTz is not zero.

【0108】本実施形態における補正処理のフローチャ
ートは基本的には第5の実施形態で示した図11,12
と同じであるが、ステップS1214、S1215にお
ける処理の内容が異なる。以下、本実施形態における補
正処理でステップS1214、S1215における各処
理について説明する。
The flowchart of the correction processing in this embodiment is basically the same as that in the fifth embodiment shown in FIGS.
However, the contents of the processing in steps S1214 and S1215 are different. Hereinafter, each processing in steps S1214 and S1215 in the correction processing in the present embodiment will be described.

【0109】x、y、z軸方向におけるカメラ座標系の
補正更新値をΔTx、ΔTy、ΔTzとおくと、
ランドマークの撮像予測位置p と検出位置p$
の間には、各ランドマーク毎に以下の式が成り立つ。
Letting ΔTx t , ΔTy t , and ΔTz t be the correction update values of the camera coordinate system in the x-, y-, and z-axis directions, respectively.
Landmark imaging predicted position p i t and detection position p $ i t
In between, the following formula holds for each landmark.

【0110】ΔTx+x$ ・f・ΔTz=f・
Zc (x$ −x ) ΔTy+y$ ・f・ΔTz=f・Zc (y
−y ) よって、複数のランドマークに対して以下の連立方程式
をたて、これを解くことで、未知の補正更新値ΔT
、ΔTy、ΔTzを算出する(ステップS12
14)。
[0110] ΔTx t + x $ i t · f · ΔTz t = f ·
Zc i t (x $ i t -x i t) ΔTy t + y $ i t · f · ΔTz t = f · Zc i t (y
$ I t -y i t) Thus, built the following simultaneous equations for a plurality of landmarks, by solving this, unknown corrected and updated value ΔT
x t , ΔTy t , and ΔTz t are calculated (step S12).
14).

【0111】[0111]

【数1】 [Equation 1]

【0112】そして算出したΔTx、ΔTy、ΔT
を用いて、補正更新行列ΔTc を公知の方法で求
める(ステップS1215)。そしてステップS121
6では求めた更新行列ΔTcを用いて第5の実施形態
と同様にして補正行列ΔTを求める。
Then, the calculated ΔTxt, ΔTyt, ΔT
ztUsing the correction update matrix ΔTc tBy a known method
(Step S1215). And step S121
Update matrix ΔTc obtained in 6tUsing Fifth Embodiment
Correction matrix ΔTtAsk for.

【0113】[第7の実施形態]第1乃至6の実施形態
では回転か平行移動のいずれかのみの補正しかできなか
った。本実施形態ではその両方の補正を行う。基本的な
方法としては、回転の補正を行った後に、平行移動の補
正を行う。しかしこれに限定されるものではなく、その
逆の順序で補正しても良いし、回転の補正の後に平行移
動の補正(もしくはその逆の順序でも良い)を一定回数
繰り返しても良いし、予め設定しておいた閾値よりも誤
差が小さくなるまで、或いは補正による誤差の変動が閾
値よりも小さくなるまで、繰り返し行っても良い。
[Seventh Embodiment] In the first to sixth embodiments, only rotation or parallel movement can be corrected. In this embodiment, both corrections are performed. As a basic method, after the rotation is corrected, the parallel movement is corrected. However, the present invention is not limited to this, and the correction may be performed in the reverse order, or the parallel movement correction (or the reverse order may be performed) after the rotation correction may be repeated a predetermined number of times. It may be repeated until the error becomes smaller than the set threshold value or the fluctuation of the error due to the correction becomes smaller than the threshold value.

【0114】ここで本実施形態で以下用いる設定につい
て示す。
The settings used in this embodiment will be described below.

【0115】・ 処理の中間段階に得られた補正行列に
よって補正されたモデルビュー行列の回転成分 R” ・ 処理の中間段階に得られた補正行列によって補正さ
れたモデルビュー行列M” 以上の設定に基づいて、本実施形態における補正処理に
ついて説明する。
The rotation component R ″ t of the model view matrix corrected by the correction matrix obtained in the intermediate stage of processing R ″ t · The model view matrix M ″ t corrected by the correction matrix obtained in the intermediate stage of processing The correction process in the present embodiment will be described based on the settings.

【0116】図13に本実施形態におけるメインの処理
のフローチャートを示す。同図に示したフローチャート
は、第4の実施形態の図9に示したフローチャートに補
正行列ΔTを算出する処理(ステップS1306)を
追加したフローチャートとなっており、また、補正行列
ΔRを算出する処理(ステップS1305)における
処理も異なる。以下では、本実施形態における補正行列
ΔTを算出する処理(ステップS1306)、補正行
列ΔRを算出する処理(ステップS1305)につい
て説明する。又その他の部分については説明は省略す
る。
FIG. 13 shows a flowchart of the main processing in this embodiment. The flowchart shown in the figure is a flowchart obtained by adding a process (step S1306) for calculating the correction matrix ΔT t to the flowchart shown in FIG. 9 of the fourth embodiment, and calculates the correction matrix ΔR t . The processing performed (step S1305) is also different. Hereinafter, a process of calculating the correction matrix ΔT t (step S1306) and a process of calculating the correction matrix ΔR t (step S1305) in the present embodiment will be described. Descriptions of other parts are omitted.

【0117】ステップS1305における補正行列ΔR
を算出する具体的な処理のフローチャートは基本的に
は第4の実施形態の図10とほぼ同一であるが、本実施
形態では、ステップS1001において、行列R’
びM’の算出に加え行列T’の算出を行う。
Correction matrix ΔR in step S1305
The flow chart of the specific process for calculating t is basically the same as that of FIG. 10 of the fourth embodiment, but in this embodiment, the matrix R ′ t and M ′ t are calculated in step S1001. The addition matrix T ′ t is calculated.

【0118】R’=RΔRt−1 T’=ΔTt−1 M’=R’T’ そして、以降の処理(例えばS1014)において、図
10における固定値T の代わりとして、導出したT’
を使用する。
R 't= RtΔRt-1 T ’t= ΔTt-1Tt M ’t= R 'tT ’t Then, in the subsequent processing (for example, S1014), the
Fixed value T at 10 tAs an alternative to the derived T ′
tTo use.

【0119】一方、ステップS1306における補正行
列ΔTを補正する具体的な処理のフローチャートは基
本的には第5の実施形態の図12とほぼ同一であるが、
本実施形態では、ステップS1201において、ステッ
プS1305で求めた補正行列ΔRを用いて行列R
を補正し、行列R”とM”を以下の式に従って求め
る。
On the other hand, the flow chart of the concrete processing for correcting the correction matrix ΔT t in step S1306 is basically the same as that of FIG. 12 of the fifth embodiment,
In this embodiment, in step S1201, the matrix R t using the correction matrix [Delta] R t obtained in step S1305
Is corrected and the matrices R ″ t and M ″ t are obtained according to the following equations.

【0120】R”=RΔR M”=R”T’ 又、本実施形態における処理は図12のフローチャート
において、ステップS1212でΔTx 、ΔTy
を以下のようにして求める。
R ″ t = R t ΔR t M ″ t = R ″ t T ′ t Further , the processing in the present embodiment is the same as ΔTx i t , ΔTy i in step S1212 in the flowchart of FIG.
t is calculated as follows.

【0121】 ΔTx =f・Zc (x$ −x ) ΔTy =f・Zc (y$ −y ) ここでZc はカメラ座標系におけるランドマークの
z座標で、M”の第3成分がその値となる。
ΔTx i t = f · Zc i t (x $ i t −x i t ) ΔTy i t = f · Zc i t (y $ i t −y i t ) where Zc i t is the camera coordinate system. At the z coordinate of the landmark at, the third component of M ″ t P i has that value.

【0122】又、本実施形態における処理は図12のフ
ローチャートにおいて、ステップS1216で補正行列
ΔTを算出するが、以下の式に従って算出する。
In the process of this embodiment, the correction matrix ΔT t is calculated in step S1216 in the flowchart of FIG. 12, but it is calculated according to the following formula.

【0123】 ΔT=Inv(R”)ΔTcR”ΔTt−1 そして以上の補正行列ΔTが終了すると、図13に示
したフローチャートに戻り、ステップS1307におい
てモデルビュー行列M$を以下のようにして算出す
る。
[0123] [Delta] T t = the Inv (R "t) ΔTc t R" t ΔT t-1 and more correction matrix [Delta] T t is completed, the process returns to the flowchart shown in FIG. 13, the model view matrix M $ t in step S1307 Is calculated as follows.

【0124】M$=RΔRΔT また、上述の補正行列ΔR、ΔTを求める処理(ス
テップS1305,S1306)を上述の通り所定回数
繰り返しても良い。
M $ t = R t ΔR t ΔT t T t Further , the above-described processing for obtaining the correction matrices ΔR t and ΔT t (steps S1305 and S1306) may be repeated a predetermined number of times as described above.

【0125】[第8の実施形態]第1乃至7の実施形態
では世界座標系におけるランドマークの位置を既知とし
たが、それ以外の方法取ることもできる。すなわち、初
期位置姿勢における画像I上でランドマークの位置を
直接指定してもよいし、初期位置姿勢における画像I
上から顕著な(追跡の容易な)画像特徴(例えばエッジ
部分やテクスチャ性の強い部分)を持つ特徴点を抽出
し、この位置をランドマークの位置としてもよい。
[Eighth Embodiment] In the first to seventh embodiments, the position of the landmark in the world coordinate system is known, but other methods can be adopted. That is, to the position of the landmark on the image I 0 may be specified directly in the initial position and orientation, the image I 0 at the initial position and orientation
It is also possible to extract a feature point having an image feature (for example, an edge portion or a portion having a strong texture) that is remarkable (easy to track) from above and use this position as the position of the landmark.

【0126】ここで、手入力あるいは画像処理によって
画像座標(x ,y )に撮像されている画像特徴
を指定あるいは検出し、ランドマークLとして用いる
場合を考える。このランドマークのカメラ座標をPc
=(x ,y ,f,1)と仮定すると、世界座
標は、初期位置姿勢におけるモデルビュー行列Mの逆
行列を用いて,P=Inv(M)Pc と定義す
ることができ、第1乃至3の実施形態で述べた手法をそ
のまま適応することができる。
Here, consider a case where the image feature imaged at the image coordinates (x i 0 , y i 0 ) is designated or detected by manual input or image processing and used as the landmark L i . The camera coordinates of the landmark Pc i
Assuming that 0 = (x i 0 , y i 0 , f, 1), the world coordinates are P i = Inv (M 0 ) Pc i 0 using the inverse matrix of the model view matrix M 0 in the initial position and orientation. Can be defined, and the methods described in the first to third embodiments can be applied as they are.

【0127】ただし、ランドマーク位置の奥行き方向の
情報は得ることが出来ないので,ランドマーク位置の奥
行き情報を用いた補正(第5の実施形態以降で述べた位
置の補正)を行うことは出来ない。
However, since the depth information of the landmark position cannot be obtained, the correction using the depth information of the landmark position (the position correction described in the fifth and subsequent embodiments) cannot be performed. Absent.

【0128】[変形例1]上記実施形態においては、M
Rシステムにおけるカメラの視点の姿勢(又は位置姿
勢)の計測を行ったが、本発明の適応範囲はこれに留ま
るものではなく、カメラの視点の姿勢(又は位置姿勢)
を計測するいずれの用途に用いることも可能であること
はいうまでもない。
[Modification 1] In the above embodiment, M
Although the posture (or position / orientation) of the viewpoint of the camera in the R system is measured, the applicable range of the present invention is not limited to this, and the posture (or position / orientation) of the viewpoint of the camera is not limited to this.
It goes without saying that it can also be used for any purpose of measuring.

【0129】[変形例2]上記実施形態においては、ビ
デオシースルー方式のMRシステムにおける視点の姿勢
(又は位置姿勢)の計測を行ったが、光学シースルー方
式のMRシステムであっても、本発明の画像処理装置に
よる姿勢(又は位置姿勢)計測を行うことができる。こ
の場合、HMDに姿勢センサを装着するとともに、計測
対象であるところの観察者の視点位置との相対的な姿勢
(又は位置姿勢)関係が既知であるような位置に固定さ
れるように、HMDにカメラを装着する。そして、上記
実施形態と同様な手法によってカメラの姿勢(又は位置
姿勢)を算出し、さらにその値を変換することで、観察
者視点の姿勢(又は位置姿勢)を算出する。また、本発
明の適応範囲は計測対象物体に限定されるものではな
く、いずれの計測対象物体であっても、同様にカメラ及
び姿勢センサを装着することで、その姿勢(又は位置姿
勢)を計測することができる。
[Modification 2] In the above embodiment, the posture (or position / orientation) of the viewpoint is measured in the video see-through MR system. However, even in the optical see-through MR system, the present invention is used. The attitude (or position / orientation) can be measured by the image processing device. In this case, the posture sensor is attached to the HMD, and the HMD is fixed so as to be fixed at a position where the relative posture (or position / posture) relationship with the viewpoint position of the observer, which is the measurement target, is known. Attach the camera to. Then, the attitude (or position / orientation) of the camera is calculated by a method similar to that of the above-described embodiment, and the value is further converted to calculate the attitude (or position / orientation) of the observer's viewpoint. Further, the applicable range of the present invention is not limited to the measurement target object, and the posture (or position / orientation) of any measurement target object is similarly measured by mounting the camera and the posture sensor. can do.

【0130】[変形例3]上記実施形態においては、テ
ンプレート画像生成モジュール430において、既定の
位置姿勢で撮影した画像Iに基づいてテンプレート画
像を生成したが、テンプレート画像は必ずしも画像I
に基づいて生成しなくてもよく、予め保存されているテ
ンプレート画像を用いても良いし、例えば動的なテンプ
レートの更新手法といった周知のいずれの方法によって
得られたテンプレート画像を用いてもよい。
[Modification 3] In the above embodiment, the template image generation module 430 generated the template image based on the image I 0 taken in the predetermined position and orientation. However, the template image is not necessarily the image I 0.
The template image may not be generated based on the above, and a template image stored in advance may be used, or a template image obtained by any known method such as a dynamic template updating method may be used.

【0131】[変形例4]上記実施形態においては、タ
ーゲット画像生成モジュール404において、ランドマ
ークの予測位置の近傍領域のみをターゲット画像として
抽出したが、テンプレートマッチングの対象画像(すな
わちターゲット画像)は、必ずしもランドマークの予測
位置の近傍領域を抽出したものでなくても良い。例え
ば、図14(d)のように入力画像全体に回転処理を加
えた画像I’を各ランドマークに共通のターゲット画像
として設定し、画像I’内において各々のランドマーク
の予測位置を求めその近傍において対応探索を行っても
良いし、画像I’の領域全体に対して対応探索を行って
も良い。
[Modification 4] In the above embodiment, the target image generation module 404 extracts only the region near the predicted position of the landmark as the target image. However, the target image of template matching (that is, the target image) is It is not always necessary to extract a region near the predicted position of the landmark. For example, as shown in FIG. 14D, an image I ′ obtained by rotating the entire input image is set as a target image common to each landmark, and the predicted position of each landmark is calculated in the image I ′. The correspondence search may be performed in the vicinity, or the correspondence search may be performed on the entire area of the image I ′.

【0132】[変形例5]上記実施形態においては、姿
勢又は位置姿勢の計測を目的として、その手段としてテ
ンプレートマッチングによるランドマーク検出を用いた
が、本発明の画像処理装置におけるランドマーク検出手
法は、テンプレートマッチングによって画像中からラン
ドマークの位置を検出する用途であれば、姿勢又は位置
姿勢の計測に限定されることなく適応することができ
る。
[Fifth Modification] In the above embodiment, landmark detection by template matching is used as a means for measuring the posture or position / posture, but the landmark detection method in the image processing apparatus of the present invention is not limited to this. As long as the purpose of detecting the position of the landmark in the image by template matching is not limited to the measurement of the posture or position / posture, it can be applied.

【0133】[他の実施形態]本発明の目的は、前述し
た実施形態の機能を実現するソフトウェアのプログラム
コードを記録した記憶媒体(または記録媒体)を、シス
テムあるいは装置に供給し、そのシステムあるいは装置
のコンピュータ(またはCPUやMPU)が記憶媒体に格納さ
れたプログラムコードを読み出し実行することによって
も、達成されることは言うまでもない。この場合、記憶
媒体から読み出されたプログラムコード自体が前述した
実施形態の機能を実現することになり、そのプログラム
コードを記憶した記憶媒体は本発明を構成することにな
る。また、コンピュータが読み出したプログラムコード
を実行することにより、前述した実施形態の機能が実現
されるだけでなく、そのプログラムコードの指示に基づ
き、コンピュータ上で稼働しているオペレーティングシ
ステム(OS)などが実際の処理の一部または全部を行い、
その処理によって前述した実施形態の機能が実現される
場合も含まれることは言うまでもない。
[Other Embodiments] An object of the present invention is to supply a storage medium (or recording medium) recording a program code of software for realizing the functions of the above-described embodiments to a system or apparatus, and to execute the system or apparatus. It is needless to say that this is also achieved by the computer (or CPU or MPU) of the device reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. 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 instructions of the program code. Do some or all of the actual processing,
It goes without saying that the processing includes the case where the functions of the above-described embodiments are realized.

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

【0135】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明した(図5乃至図13のうち
少なくとも一つに示したフローチャート)に対応するプ
ログラムコードが格納されることになる。
When the present invention is applied to the above-mentioned storage medium, the storage medium stores the program code corresponding to the above-described (the flowchart shown in at least one of FIGS. 5 to 13). become.

【0136】[0136]

【発明の効果】以上の説明により、本発明によって、姿
勢センサによるカメラ視点の計測誤差の補正、特に時間
経過に伴って生じる方位方向の蓄積誤差の補正を行うこ
とができ、位置ずれのないMRを実現することができ
る。
As described above, according to the present invention, it is possible to correct the measurement error of the camera viewpoint by the attitude sensor, especially the correction of the accumulation error in the azimuth direction which occurs with the passage of time, and the MR having no displacement can be obtained. Can be realized.

【図面の簡単な説明】[Brief description of drawings]

【図1】初期画像Iを示す図である。FIG. 1 is a diagram showing an initial image I 0 .

【図2】従来の画像処理装置の構成を示す図である。FIG. 2 is a diagram showing a configuration of a conventional image processing apparatus.

【図3】本発明の第1の実施形態における画像処理装置
の構成を示す図である。
FIG. 3 is a diagram showing a configuration of an image processing apparatus according to the first embodiment of the present invention.

【図4】視点位置姿勢補正値演算モジュール215の具
体的な構成を示す図である。
FIG. 4 is a diagram showing a specific configuration of a viewpoint position / orientation correction value calculation module 215.

【図5】本発明の第1の実施形態におけるメインの処理
のフローチャートである。
FIG. 5 is a flowchart of main processing according to the first embodiment of the present invention.

【図6】テンプレート画像を作成する際の具体的な処理
のフローチャートである。
FIG. 6 is a flowchart of a specific process when creating a template image.

【図7】補正行列ΔMの算出における具体的な処理の
フローチャートである。
FIG. 7 is a flowchart of a specific process in calculating a correction matrix ΔM t .

【図8】本発明の第2の実施形態における補正演算ルー
プの処理のフローチャートである。
FIG. 8 is a flowchart of processing of a correction calculation loop according to the second embodiment of the present invention.

【図9】本発明の第4の実施形態におけるメインの処理
のフローチャートである。
FIG. 9 is a flowchart of main processing according to the fourth embodiment of the present invention.

【図10】補正行列ΔRを求める具体的な処理のフロ
ーチャートである。
FIG. 10 is a flowchart of specific processing for obtaining a correction matrix ΔR t .

【図11】本発明の第5の実施形態におけるメインの処
理のフローチャートである。
FIG. 11 is a flowchart of main processing in the fifth embodiment of the present invention.

【図12】補正行列ΔTを求める具体的な処理のフロ
ーチャートである。
FIG. 12 is a flowchart of specific processing for obtaining a correction matrix ΔT t .

【図13】本発明の第7の実施形態におけるメインの処
理のフローチャートである。
FIG. 13 is a flowchart of main processing according to the seventh embodiment of the present invention.

【図14】本発明におけるテンプレートマッチングの基
本原理を説明する図である。
FIG. 14 is a diagram illustrating a basic principle of template matching in the present invention.

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 2F065 AA04 AA20 AA31 BB05 BB15 CC14 CC16 DD03 EE00 FF04 FF26 FF65 FF67 JJ03 QQ25 QQ31 QQ38 QQ42 RR07 RR09 UU05 5C054 AA05 DA01 FC12 FE14 GB16 5L096 CA02 FA67 FA69 HA08 JA03 JA09    ─────────────────────────────────────────────────── ─── Continued front page    F term (reference) 2F065 AA04 AA20 AA31 BB05 BB15                       CC14 CC16 DD03 EE00 FF04                       FF26 FF65 FF67 JJ03 QQ25                       QQ31 QQ38 QQ42 RR07 RR09                       UU05                 5C054 AA05 DA01 FC12 FE14 GB16                 5L096 CA02 FA67 FA69 HA08 JA03                       JA09

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 計測対象を含む撮影画像を取得する撮像
装置と、 前記撮像装置の撮像視点の姿勢を計測する姿勢センサ
と、 前記計測対象の姿勢および/または位置を、前記姿勢セ
ンサの出力に基づいて算出するための算出情報を記憶す
る記憶手段と、 前記撮像装置によって撮影された撮影画像中における前
記指標の位置を検出する検出手段と、 前記検出手段が検出した前記指標の検出位置に基づい
て、前記記憶手段に記憶されている前記算出情報を更新
する更新手段と、 前記計測値と前記更新手段によって更新された前記算出
情報に基づいて、前記計測対象の姿勢および/または位
置を算出する算出手段とを備え、 前記更新手段は、前記撮像装置のカメラ座標系における
3方向の位置情報を更新することを特徴とする画像処理
装置。
1. An imaging device that acquires a captured image including a measurement target, a posture sensor that measures a posture of an imaging viewpoint of the imaging device, and a posture and / or a position of the measurement target as an output of the posture sensor. Based on the detection position of the index detected by the detection unit, a storage unit that stores calculation information to be calculated based on, a detection unit that detects the position of the index in the captured image captured by the imaging device And update means for updating the calculation information stored in the storage means, and calculate the posture and / or position of the measurement target based on the measurement value and the calculation information updated by the update means. An image processing apparatus comprising: a calculating unit, wherein the updating unit updates position information in three directions in a camera coordinate system of the imaging device.
【請求項2】 撮像装置からの撮影画像を入力し、前記
撮像装置の撮像視点の姿勢を計測する姿勢センサからの
計測結果を入力し、 前記撮像装置によって撮影された撮影画像中における前
記指標の位置を検出し 前記計測結果と前記検出手段が検出した前記指標の検出
位置とに基づき、前記撮像装置の位置・姿勢を求めるこ
とを特徴とする画像処理方法。
2. A captured image from an imaging device is input, a measurement result from an orientation sensor that measures the orientation of the imaging viewpoint of the imaging device is input, and the index of the index in the captured image captured by the imaging device is input. An image processing method, characterized in that the position / orientation of the image pickup device is obtained based on the measurement result and the detected position of the index detected by the detection means.
【請求項3】 コンピュータに請求項2に記載の画像処
理方法を実行させることを特徴とするプログラム。
3. A program for causing a computer to execute the image processing method according to claim 2.
【請求項4】 請求項3に記載のプログラムを格納する
ことを特徴とするコンピュータ読み取り可能な記憶媒
体。
4. A computer-readable storage medium storing the program according to claim 3.
JP2003102141A 2003-04-04 2003-04-04 Image processing apparatus, image processing method, and computer program Expired - Fee Related JP4743818B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003102141A JP4743818B2 (en) 2003-04-04 2003-04-04 Image processing apparatus, image processing method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003102141A JP4743818B2 (en) 2003-04-04 2003-04-04 Image processing apparatus, image processing method, and computer program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001062224A Division JP3486613B2 (en) 2001-03-06 2001-03-06 Image processing apparatus and method, program, and storage medium

Publications (2)

Publication Number Publication Date
JP2003344018A true JP2003344018A (en) 2003-12-03
JP4743818B2 JP4743818B2 (en) 2011-08-10

Family

ID=29774746

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003102141A Expired - Fee Related JP4743818B2 (en) 2003-04-04 2003-04-04 Image processing apparatus, image processing method, and computer program

Country Status (1)

Country Link
JP (1) JP4743818B2 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1596218A2 (en) * 2004-05-14 2005-11-16 Canon Kabushiki Kaisha Information processing method and system
JP2005326282A (en) * 2004-05-14 2005-11-24 Canon Inc Position and attitude measurement method and system
WO2006082928A1 (en) 2005-02-04 2006-08-10 Canon Kabushiki Kaisha Position posture measuring method and device
JP2006292417A (en) * 2005-04-06 2006-10-26 Canon Inc Method and apparatus for measuring position and attitude
JP2008275341A (en) * 2007-04-25 2008-11-13 Canon Inc Information processor and processing method
JP2009109290A (en) * 2007-10-29 2009-05-21 Tokyo Institute Of Technology Target position measuring system
JP2010207330A (en) * 2009-03-09 2010-09-24 Nintendo Co Ltd Device and program for calculating posture, game device and game program
JP2010207329A (en) * 2009-03-09 2010-09-24 Nintendo Co Ltd Coordinate calculation device and coordinate calculation program
JP2011072475A (en) * 2009-09-30 2011-04-14 Nintendo Co Ltd Coordinate calculation apparatus and coordinate calculation program
JP2012080592A (en) * 2012-01-23 2012-04-19 Nikon Corp Imaging apparatus
JP2013031122A (en) * 2011-07-29 2013-02-07 Fujitsu Ltd Program, information processing device, information processing method, and communication system
JP2013508794A (en) * 2009-10-19 2013-03-07 メタイオ ゲゼルシャフト ミット ベシュレンクテル ハフツング Method for providing a descriptor as at least one feature of an image and method for matching features
US8614672B2 (en) 2009-03-09 2013-12-24 Nintendo Co., Ltd. Information processing apparatus, storage medium having information processing program stored therein, information processing system, and display range control method
US8749490B2 (en) 2008-06-30 2014-06-10 Nintendo Co., Ltd. Orientation calculation apparatus, storage medium having orientation calculation program stored therein, game apparatus, and storage medium having game program stored therein
JP2014522007A (en) * 2011-04-20 2014-08-28 クアルコム,インコーポレイテッド Online reference patch generation and pose estimation for augmented reality
JP2015072269A (en) * 2013-10-01 2015-04-16 アプリケーション・ソリューションズ・(エレクトロニクス・アンド・ヴィジョン)・リミテッド System, vehicle and method for online calibration of camera on vehicle
US9079102B2 (en) 2008-06-30 2015-07-14 Nintendo Co., Ltd. Calculation of coordinates indicated by a handheld pointing device
JP2016218839A (en) * 2015-05-22 2016-12-22 Kddi株式会社 AR information display device
KR20190005222A (en) * 2016-05-18 2019-01-15 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. How to adjust the direction of the line of sight in the representation of the virtual environment
US10739142B2 (en) 2016-09-02 2020-08-11 Apple Inc. System for determining position both indoor and outdoor
JP2021018206A (en) * 2019-07-23 2021-02-15 株式会社島津製作所 Head motion tracker device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9159133B2 (en) * 2012-11-05 2015-10-13 Qualcomm Incorporated Adaptive scale and/or gravity estimation
US9658686B2 (en) 2015-05-28 2017-05-23 Microsoft Technology Licensing, Llc Motion based view matrix tuning
US9746675B2 (en) 2015-05-28 2017-08-29 Microsoft Technology Licensing, Llc Alignment based view matrix tuning
US11252399B2 (en) 2015-05-28 2022-02-15 Microsoft Technology Licensing, Llc Determining inter-pupillary distance

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61173161A (en) * 1985-01-28 1986-08-04 Nissan Motor Co Ltd Speed signal output device for moving body
JPH05343306A (en) * 1992-06-05 1993-12-24 Hitachi Ltd Electron beam pattern drawing apparatus
JPH11136706A (en) * 1997-09-01 1999-05-21 Mr System Kenkyusho:Kk Position attitude sensor, position attitude detection method, composite reality providing device, game machine, composite reality providing method and storage medium
JPH11281740A (en) * 1998-03-30 1999-10-15 Mitsubishi Electric Corp Meteorological observation radar system
JP2000097637A (en) * 1998-09-24 2000-04-07 Olympus Optical Co Ltd Attitude position detecting device
JP2000275013A (en) * 1999-03-24 2000-10-06 Mr System Kenkyusho:Kk Method for deciding view point position attitude, computer and storage medium
JP2000347128A (en) * 1999-03-26 2000-12-15 Mr System Kenkyusho:Kk Head mount display device and head mount display system
JP2002259992A (en) * 2001-03-06 2002-09-13 Mixed Reality Systems Laboratory Inc Image processor and its method as well as program code and storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61173161A (en) * 1985-01-28 1986-08-04 Nissan Motor Co Ltd Speed signal output device for moving body
JPH05343306A (en) * 1992-06-05 1993-12-24 Hitachi Ltd Electron beam pattern drawing apparatus
JPH11136706A (en) * 1997-09-01 1999-05-21 Mr System Kenkyusho:Kk Position attitude sensor, position attitude detection method, composite reality providing device, game machine, composite reality providing method and storage medium
JPH11281740A (en) * 1998-03-30 1999-10-15 Mitsubishi Electric Corp Meteorological observation radar system
JP2000097637A (en) * 1998-09-24 2000-04-07 Olympus Optical Co Ltd Attitude position detecting device
JP2000275013A (en) * 1999-03-24 2000-10-06 Mr System Kenkyusho:Kk Method for deciding view point position attitude, computer and storage medium
JP2000347128A (en) * 1999-03-26 2000-12-15 Mr System Kenkyusho:Kk Head mount display device and head mount display system
JP2002259992A (en) * 2001-03-06 2002-09-13 Mixed Reality Systems Laboratory Inc Image processor and its method as well as program code and storage medium

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005326282A (en) * 2004-05-14 2005-11-24 Canon Inc Position and attitude measurement method and system
EP1596218A3 (en) * 2004-05-14 2010-03-03 Canon Kabushiki Kaisha Information processing method and system
EP1596218A2 (en) * 2004-05-14 2005-11-16 Canon Kabushiki Kaisha Information processing method and system
JP4593968B2 (en) * 2004-05-14 2010-12-08 キヤノン株式会社 Position and orientation measurement method and apparatus
US8073201B2 (en) 2005-02-04 2011-12-06 Canon Kabushiki Kaisha Position/orientation measurement method and apparatus
WO2006082928A1 (en) 2005-02-04 2006-08-10 Canon Kabushiki Kaisha Position posture measuring method and device
JP2006292417A (en) * 2005-04-06 2006-10-26 Canon Inc Method and apparatus for measuring position and attitude
JP2008275341A (en) * 2007-04-25 2008-11-13 Canon Inc Information processor and processing method
JP2009109290A (en) * 2007-10-29 2009-05-21 Tokyo Institute Of Technology Target position measuring system
US9079102B2 (en) 2008-06-30 2015-07-14 Nintendo Co., Ltd. Calculation of coordinates indicated by a handheld pointing device
US8749490B2 (en) 2008-06-30 2014-06-10 Nintendo Co., Ltd. Orientation calculation apparatus, storage medium having orientation calculation program stored therein, game apparatus, and storage medium having game program stored therein
US8614672B2 (en) 2009-03-09 2013-12-24 Nintendo Co., Ltd. Information processing apparatus, storage medium having information processing program stored therein, information processing system, and display range control method
US9772694B2 (en) 2009-03-09 2017-09-26 Nintendo Co., Ltd. Coordinate calculation apparatus and storage medium having coordinate calculation program stored therein
US8704759B2 (en) 2009-03-09 2014-04-22 Nintendo Co., Ltd. Coordinate calculation apparatus and storage medium having coordinate calculation program stored therein
JP2010207329A (en) * 2009-03-09 2010-09-24 Nintendo Co Ltd Coordinate calculation device and coordinate calculation program
JP2010207330A (en) * 2009-03-09 2010-09-24 Nintendo Co Ltd Device and program for calculating posture, game device and game program
JP2011072475A (en) * 2009-09-30 2011-04-14 Nintendo Co Ltd Coordinate calculation apparatus and coordinate calculation program
US10650546B2 (en) 2009-10-19 2020-05-12 Apple Inc. Method of providing a descriptor for at least one feature of an image and method of matching features
US10580162B2 (en) 2009-10-19 2020-03-03 Apple Inc. Method for determining the pose of a camera and for recognizing an object of a real environment
JP2013508794A (en) * 2009-10-19 2013-03-07 メタイオ ゲゼルシャフト ミット ベシュレンクテル ハフツング Method for providing a descriptor as at least one feature of an image and method for matching features
US8942418B2 (en) 2009-10-19 2015-01-27 Metaio Gmbh Method of providing a descriptor for at least one feature of an image and method of matching features
US10229511B2 (en) 2009-10-19 2019-03-12 Apple Inc. Method for determining the pose of a camera and for recognizing an object of a real environment
US10062169B2 (en) 2009-10-19 2018-08-28 Apple Inc. Method of providing a descriptor for at least one feature of an image and method of matching features
JP2014522007A (en) * 2011-04-20 2014-08-28 クアルコム,インコーポレイテッド Online reference patch generation and pose estimation for augmented reality
JP2013031122A (en) * 2011-07-29 2013-02-07 Fujitsu Ltd Program, information processing device, information processing method, and communication system
JP2012080592A (en) * 2012-01-23 2012-04-19 Nikon Corp Imaging apparatus
JP2015072269A (en) * 2013-10-01 2015-04-16 アプリケーション・ソリューションズ・(エレクトロニクス・アンド・ヴィジョン)・リミテッド System, vehicle and method for online calibration of camera on vehicle
JP2016218839A (en) * 2015-05-22 2016-12-22 Kddi株式会社 AR information display device
KR20190005222A (en) * 2016-05-18 2019-01-15 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. How to adjust the direction of the line of sight in the representation of the virtual environment
JP2019519842A (en) * 2016-05-18 2019-07-11 フラウンホーファー−ゲゼルシャフト ツール フエルデルング デア アンゲヴァンテン フォルシュング エー.ファオ. How to set the viewing direction in virtual environment display
KR102184619B1 (en) * 2016-05-18 2020-11-30 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. How to adjust the gaze direction in the representation of the virtual environment
US10885663B2 (en) 2016-05-18 2021-01-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. Method for setting a viewing direction in a representation of a virtual environment
US10739142B2 (en) 2016-09-02 2020-08-11 Apple Inc. System for determining position both indoor and outdoor
US11859982B2 (en) 2016-09-02 2024-01-02 Apple Inc. System for determining position both indoor and outdoor
JP2021018206A (en) * 2019-07-23 2021-02-15 株式会社島津製作所 Head motion tracker device
JP7334521B2 (en) 2019-07-23 2023-08-29 株式会社島津製作所 Head motion tracker device

Also Published As

Publication number Publication date
JP4743818B2 (en) 2011-08-10

Similar Documents

Publication Publication Date Title
JP3486613B2 (en) Image processing apparatus and method, program, and storage medium
JP2003344018A (en) Unit and method for image processing as well as program and storage medium
Satoh et al. A hybrid registration method for outdoor augmented reality
EP1437645B1 (en) Position/orientation measurement method, and position/orientation measurement apparatus
JP4434890B2 (en) Image composition method and apparatus
JP5388932B2 (en) Information processing apparatus and control method thereof
JP4976756B2 (en) Information processing method and apparatus
JP4708752B2 (en) Information processing method and apparatus
KR102198851B1 (en) Method for generating three dimensional model data of an object
CN108062776A (en) Camera Attitude Tracking method and apparatus
US10930008B2 (en) Information processing apparatus, information processing method, and program for deriving a position orientation of an image pickup apparatus using features detected from an image
Tamas et al. Targetless calibration of a lidar-perspective camera pair
JP6491517B2 (en) Image recognition AR device, posture estimation device, and posture tracking device
JPWO2016017254A1 (en) Information processing apparatus, information processing method, and program
US20050256396A1 (en) Image composition system, image composition method, and image composition apparatus
CN110388919B (en) Three-dimensional model positioning method based on feature map and inertial measurement in augmented reality
JP2004213355A (en) Information processing method
JP4242529B2 (en) Related information presentation device and related information presentation method
JP2009186288A (en) Image processing device and image processing method
JP2002230586A (en) Image system for supporting three-dimensional survey using composite reality
JP4926598B2 (en) Information processing method and information processing apparatus
JP5726024B2 (en) Information processing method and apparatus
JP2021009557A (en) Information processing device, information processing method, and program
JP4896762B2 (en) Image processing apparatus and image processing program
JP2004108836A (en) Azimuth angle computing method of imaging apparatus and system, attitude sensor of imaging apparatus, tilt sensor of imaging device and computer program and three-dimentional model configuration device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080306

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100813

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110106

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

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

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees