JP3840171B2 - Image display apparatus and method, and storage medium - Google Patents

Image display apparatus and method, and storage medium Download PDF

Info

Publication number
JP3840171B2
JP3840171B2 JP2002301652A JP2002301652A JP3840171B2 JP 3840171 B2 JP3840171 B2 JP 3840171B2 JP 2002301652 A JP2002301652 A JP 2002301652A JP 2002301652 A JP2002301652 A JP 2002301652A JP 3840171 B2 JP3840171 B2 JP 3840171B2
Authority
JP
Japan
Prior art keywords
posture
information
sensor
image
correction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002301652A
Other languages
Japanese (ja)
Other versions
JP2003203252A (en
Inventor
清秀 佐藤
まほろ 穴吹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2002301652A priority Critical patent/JP3840171B2/en
Publication of JP2003203252A publication Critical patent/JP2003203252A/en
Application granted granted Critical
Publication of JP3840171B2 publication Critical patent/JP3840171B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、姿勢センサの出力値に基づいて実空間に融合した仮想空間の画像を表示させる画像表示装置及び方法に関する。更に詳しくは、撮像装置によって撮像された実画像に仮想空間の画像を重畳した重畳画像を生成し、これを表示画面に表示する画像表示装置、あるいは、表示画面に現実空間を光学的に透過させつつ当該表示画面に仮想空間の画像を表示する画像表示装置、及びそれらの方法並びに記憶媒体に関するものである。
【0002】
【従来の技術】
近年、現実空間と仮想空間の繋ぎ目のない結合を目的とした、複合現実感(以下、“MR”(Mixed Reality)と称す)に関する研究が盛んに行われている。MRには、ビデオカメラなどの撮影装置で撮影された現実空間の画像に仮想空間(たとえばコンピュータグラフィックス(以下、CGと称す)により描画された仮想物体や文字情報など)の画像を重畳して表示するビデオシースルー方式と、表示装置の表示画面に現実空間を光学的に透過させつつ、その表示画面に仮想空間の画像を重畳表示する光学シースルー方式がある。
【0003】
このようなMRの応用としては、現実の街中において建物等にその名称や案内を重畳表示するナビゲーションや、ビルの建設予定地に建設予定のビルのCG映像を重畳表示する景観シミュレーションなど、今までのバーチャルリアリティとは質的に全く異なった新たな分野が期待されている。これらの応用に対して共通に要求されるのは、現実空間と仮想空間の間の位置合わせをいかにして正確に行うかということであり、従来から多くの取り組みが行われてきた。
【0004】
ビデオシースルー方式のMRにおける位置合わせの問題は、現実空間に設定した世界座標系(以後、単に世界座標系と呼ぶ)における、撮影装置の視点の3次元位置姿勢を求める問題に帰結される。また光学シースルー方式のMRにおける位置合わせの問題は、同様に世界座標系におけるユーザの視点の3次元位置姿勢を求める問題といえる。
【0005】
これらの問題を解決する方法として、磁気センサや超音波センサなどの3次元位置姿勢センサを利用して、世界座標系における撮影装置やユーザの視点(以下、単に視点と呼ぶ)の3次元位置姿勢を取得することが一般的に行われている。
【0006】
また、屋外において対象までの距離が十分離れている場合のように、視点の位置については固定値を用いても差し支えのない状況下では、ジャイロセンサや加速度計の組み合わせによって構成される3次元姿勢センサを用いて視点の3次元姿勢を得て、それを元に視点の3次元位置姿勢を取得することが一般的に行われている。
【0007】
3次元姿勢センサが出力する出力値は、例えば(株)トキメック製の姿勢センサTISS-5-40を例にとると、重力の逆方向をY軸、このY軸によって定められるX−Z平面上でのセンサ起動時のセンサの正面方向を−Z軸として定義される座標系であるところのセンサ座標系におけるセンサ自身の3次元姿勢である。このように、3次元姿勢センサが出力する出力値は、計測対象である世界座標系における視点の3次元姿勢ではないのが一般的である。すなわち、センサ出力値をそのまま世界座標系における視点の3次元姿勢として用いることはできず、何らかの座標変換を行う必要がある。具体的には、センサ自身の姿勢を視点の姿勢に変換する座標変換と、センサ座標系における姿勢を世界座標系における姿勢に変換する座標変換が必要となる。なお、本明細書において、センサ出力値と世界座標系における視点の3次元姿勢との間の座標変換を行うためのデータを補正情報と呼ぶこととする。
【0008】
図1は、光学シースルー方式の複合現実感の提示を行う一般的な画像表示装置の構成を示す図である。
【0009】
表示画面110はシースルー型であり、姿勢センサ120と共に頭部装着部100に固定されている。不図示のユーザが、表示画面110が眼前に位置するように頭部装着部100を装着すると、表示画面110の光学系(第1図には不図示)を通して表示画面の前方の現実空間を観察することができる。姿勢センサ120は、センサ座標系におけるセンサ自身の姿勢を計測し、3自由度の姿勢計測値を出力する。なお、姿勢センサ120は地球の重力方向を計測可能な傾斜計(不図示)を内部に有しており、上述したように、センサ座標系の1つの軸(本例ではY軸とする)は重力の逆方向に設定される。
【0010】
姿勢情報出力部130は、メモリ140が保持する補正情報に従って、姿勢センサ120より入力した計測値に変換を加え、世界座標系におけるユーザの視点の姿勢を算出しこれを姿勢情報として出力する。画像生成部150は、姿勢情報出力部130より入力した姿勢情報に従ってユーザの視点の姿勢に対応した仮想画像を生成し、これを出力する。表示画面110は、画像生成部150より仮想画像を入力しこれを表示する。以上の構成により、不図示のユーザは、表示画面110を通した現実空間の像に重ねて、表示画面110に表示された仮想画像を見ることとなる。
【0011】
次に、図2を用いて、姿勢情報出力部130において、世界座標系におけるユーザの視点の姿勢を算出する方法を説明する。
【0012】
同図において、世界座標系200におけるセンサ座標系210の姿勢をRTW、センサ座標系210における姿勢センサ120の姿勢をRST、姿勢センサ120からみたユーザの視点220の相対的な姿勢をRVS、世界座標系200におけるユーザの視点220の姿勢をRVWとする。
【0013】
ここで、Rは4×4の行列であって、RBAはある座標系Aにおける対象Bの姿勢を記述する。これは言い換えれば、座標系Aから対象Bが定義する座標系Bへの座標変換行列であり、座標系Aにおける座標PA=(XA,YA,ZA,1)Tを座標系Bにおける座標PB=(XB,YB,ZB,1)Tに変換する変換式、PB=RBAAを定義するものである。すなわち、世界座標系200におけるユーザの視点220の姿勢RVWは、世界座標系200における座標PW=(XW,YW,ZW,1)Tをユーザの視点座標系230における座標PV=(XV,YV,ZV,1)Tに変換するための座標変換行列(PV=RVWW)と言い換えることもできる。
【0014】
また行列Rは、X軸まわりの回転角θによって定義される回転行列Rx、Y軸まわりの回転角(方位角)φによって定義される回転行列Ry、Z軸まわりの回転角ψによって定義される回転行列Rzの積により構成されており、R=RzRxRyの関係が成立している。これらの行列はそれぞれ次のように表される。
【0015】
【数1】

Figure 0003840171
このときRVWは、
VW=RVS・RST・RTW … (式A)
によって示すことができる。
【0016】
ここで、センサ座標系210のY軸は重力の逆方向に設定されているので、世界座標系200のY軸を地表面と垂直に定義することにより、世界座標系200とセンサ座標系210のY軸の方向を一致させることができる。このとき、RTWのX軸およびZ軸まわりの成分であるRxTWおよびRzTWはそれぞれ単位行列となり、RTWは、Y軸まわりの回転角φTWによって定義される回転行列RyTWと等価となる。したがって、上記の(式A)は、
VW=RVS・RST・RyTW … (式B)
に変形される。
【0017】
このうち、RSTが姿勢センサ120から姿勢情報出力部130への入力、RVWが姿勢情報出力部130から画像生成部150への出力であり、RVS及びRyTW(言い換えると、RVSを定義する3軸まわりの回転角θVS,φVS,ψVS及びRyTWを定義する回転角φTW)が、RSTをRVWに変換するために必要な補正情報に相当する。姿勢情報出力部130は、姿勢センサ120から入力されるRSTと、メモリ140に保持されているRVS及びRyTWとを用いて、(式B)に基づいてRVWを算出し、これを画像生成部150へと出力する。
【0018】
現実空間と仮想空間の正確な位置合わせを行うためには、何らかの手段によってメモリ140に正確な補正情報が設定される必要がある。正確な補正情報が与えられてはじめて、現実空間に正確に位置合わせのなされた仮想画像の表示が実現される。
【0019】
補正情報を設定する公知の方法の一つとして、ユーザあるいはオペレータが、不図示の入力手段を介してメモリ140に格納されたθVS,φVS,ψVS及びφTWの各値を対話的に増減し、正確な位置合わせが達成されるまで各値の調整を試行錯誤的に行うという方法がある。
【0020】
しかしこの方法では、4つのパラメータを同時に調整する必要があるため、作業が煩雑であり調整に時間がかかるという問題点があった。
【0021】
【発明が解決しようとする課題】
この煩雑さを軽減する一つの方法として、本出願人による特願2001−050990号により提案された方法がある。以下では、この補正情報設定手法について説明する。
【0022】
図3は、図1の画像表示装置にこの補正情報設定方法を組込んだ際の画像表示装置の構成を示すブロック図である。同図に示したように、本構成は、図1の構成に、補正情報算出部310、指示情報入力部320及び切替え部330が追加された構成となる。また、本画像表示装置における図1の姿勢情報出力部130及びメモリ140に相当する構成要素はその機能が第1図の画像表示装置とは異なるため、図3の画像表示装置ではこれを姿勢情報出力部130’及びメモリ140’と表記する。
【0023】
補正情報の算出は、ユーザの視点220の姿勢を、世界座標系におけるある予め定めた姿勢であって、地平面と水平な視軸を持つ姿勢Ry0 VWに移動させて、その時点での姿勢センサ120の出力R0 STを取得することで行われる。メモリ140’は、補正情報の他に、上記の予め定めた視点の姿勢Ry0 VW(あるいはそれを定義するY軸まわりの回転角φ0 VW)を保持している。
【0024】
切替え部330は、ユーザあるいはオペレータ(いずれも第3図には不図示)からの入力を受け、姿勢情報出力部130’のモードを通常モードあるいは補正情報算出モードに設定する。
【0025】
姿勢情報出力部130’は、モードが通常モードの場合には、図1で説明した姿勢情報出力部130と同様に、姿勢センサ120から入力されるRSTから補正情報を用いてRVWを算出し、これを姿勢情報として画像生成部150へと出力する。
【0026】
一方、モードが補正情報算出モードの場合には、メモリ140’からRy0 VWを入力し、これを姿勢情報として画像生成部150へと出力する。指示情報入力部320は、ユーザあるいはオペレータからの入力を受け、補正情報算出処理実行の指示を補正情報算出部310へと送信する。より具体的には、ユーザあるいはオペレータは、補正情報算出モードにおいて、表示画面110に表示された仮想画像と、表示画面110を光学的に透過して観察される現実空間の像が正しい位置関係になるように視点220の姿勢を調整する。そして、両画像が十分に重なり合っていると判断した時点(すなわち、視点220が姿勢Ry0 VWに位置していると判断された時点)で、例えば特定のキーを押すことにより指示情報入力部320への入力を行う。
【0027】
補正情報算出部310は、補正情報算出処理実行の指示を指示情報入力部320から入力し、その時点(すなわち、視点220が姿勢Ry0 VWに位置しているとユーザあるいはオペレータが判断した時点)における姿勢センサ120の出力R0 STを入力し、姿勢Ry0 VWと姿勢R0 STに基づいて補正情報の算出を行う。
【0028】
上記の方法では、補正情報の1つである姿勢RVSのうち、その逆行列RSV(ユーザの視点から見た姿勢センサの相対的な姿勢を表わす)のy軸まわりの回転成分RySV(あるいはそれを定義するY軸まわりの回転角φSV)が何らかの方法によって既知であり、すでにメモリ140’に記憶されている必要がある。
【0029】
このとき、補正情報算出部310で処理されるデータの間には、(式B)より、
Ry0 VW=RVS・R0 ST・RyTW … (式C)
の関係が成立する。ここで、(式C)を変形すると、
Ry0 VW=(RzSVRxSVRySV- 0 STRyTW … (式D)
となる。
【0030】
補正情報算出部310は、メモリ140’よりRy0 VWおよびRySVを、センサ120よりR0 STを入力し、(式D)に基づいて未知の補正情報RzSV,RxSV,RyTWを算出する。以下にその手順を示す。
【0031】
(式D)をさらに変形すると、
RzSVRxSVRySVRy0 VW=Rz0 STRx0 STRy0 STRyTW … (式E)
となる。ここで、(式E)の左辺および右辺のそれぞれがZ、X、Y軸周りの回転成分の積となっているので、Z、X、Y軸周りの回転成分毎に恒等式が成立する。
【0032】
まず、Z、X軸周りの回転成分の恒等式は以下の通りとなる。すなわち、
RzSV=Rz0 ST … (式F)
RxSV=Rx0 ST … (式G)
これより、RzSVおよびRxSVを求めることができる。
【0033】
一方、Y軸周りの回転成分の恒等式は以下の通りとなる。すなわち、
RySVRy0 VW=Ry0 STRyTW
これより、
RyTW=RySVRy0 VWRy0 ST -1 … (式H)
となり、RyTWを求めることができる。
【0034】
補正情報算出部310は、上記の処理によって補正情報RzSV,RxSV,RyTWの算出を行い、これらの値からさらにRVS(=(RzSVR×SVRySV-1)を算出して、RVSおよびRyTW(あるいはそれらを定義する回転角θSV,ψSV及びφTW)をメモリ140’へと出力する。
【0035】
なお、RySVの導出は分度器等の計測値を手掛りに試行錯誤的に行ってもよいし、他のいずれの計測手段を用いて行ってもよい。
【0036】
以上によって、補正情報のうちのRySVのみを予め求めておけば、他の未知な補正情報を容易に導出することができ、正確な位置合わせを実現することが可能となる。
【0037】
しかし、補正情報RySVを予め正確に計測しておくことは一般には困難である。従って、実際には、RySVの大まかな設定、他の補正情報の導出処理、RySVの微調整、他の補正情報の導出処理、RySVの微調整、…という作業を、正しい位置合わせが実現されるまで繰り返し行わなくてはならず、補正情報の取得に煩雑な操作と時間を要するという問題があった。
【0038】
本発明は以上の問題に鑑みてなされたものであり、センサ計測値を世界座標系における視点の姿勢に変換するための補正情報をより簡便に取得することを目的とする。
【0039】
【課題を解決するための手段】
上記の目的を達成する為に、例えば本発明の画像表示装置は以下の構成を備える。すなわち、
ユーザの視点の姿勢に応じた仮想画像を現実画像と合成してユーザに提示する画像表示装置であって、
センサ座標系における自身の姿勢計測値を出力する姿勢センサと、
メモリに予め格納された所定の姿勢情報に基づいて前記仮想画像を生成し、表示画面に表示させる第1表示手段と、
前記視点の姿勢と前記所定の姿勢情報が示す姿勢とが一致したことを示す通知に応じた前記姿勢センサからの姿勢計測値と前記所定の姿勢情報とに基づいて補正情報を算出する算出手段と、
前記姿勢センサから得られた姿勢計測値と前記補正情報とを用いて得られた視点の姿勢情報に基づいて仮想画像を生成し、前記表示画面に表示させる第2表示手段と、
前記第2表示手段によって仮想画像を表示しながら、所定の操作に応じて前記補正情報を修正する修正手段とを有し、
前記補正情報は、前記姿勢センサ自身の姿勢を前記視点の姿勢に変換する第1の座標変換情報と、前記センサ座標系における姿勢を世界座標系における姿勢へ変換する第2の座標変換情報とを含み、
前記修正手段は、前記第1の座標変換情報のうちの方位角に関する変換情報と前記第2の座標変換情報のうちの方位角に関する変換情報とを同時に修正する。
【0040】
また、上記の目的を達成するための、本発明の情報処理方法は、
センサ座標系における自身の姿勢計測値を出力する姿勢センサからの姿勢計測値を用いて、表示画面を観察するユーザの視点の姿勢に応じた仮想画像を、現実画像と合成してユーザに提示する情報処理方法であって、
メモリに予め格納された所定の姿勢情報に基づいて前記仮想画像を生成して、これを前記表示画面に表示させる第1表示工程と、
前記視点の姿勢と前記所定の姿勢情報が示す姿勢とが一致したことを示す通知に応じた前記姿勢センサからの姿勢計測値と前記所定の姿勢情報とに基づいて補正情報を算出する算出工程と、
前記姿勢センサから得られた姿勢計測値と前記補正情報とを用いて得られた視点の姿勢情報に基づいて仮想画像を生成して、これを前記表示画面に表示させる第2表示工程と、
前記第2表示工程によって仮想画像を表示しながら、所定の操作に応じて前記補正情報を修正する修正工程とを有し、
前記補正情報は、前記姿勢センサ自身の姿勢を前記視点の姿勢に変換する第1の座標変換情報と、前記センサ座標系における姿勢を世界座標系における姿勢へ変換する第2の座標変換情報とを含み、
前記修正工程は、前記第1の座標変換情報のうちの方位角に関する変換情報と前記第2の座標変換情報のうちの方位角に関する変換情報とを同時に修正する。
【0041】
【発明の実施の形態】
以下添付図面を参照して、本発明を好適な実施形態を詳細に説明する。
【0042】
以下の実施形態では、本発明の画像表示装置及びその方法を、建設予定のビルの景観シミュレーションを行うシミュレーション装置及びその方法に適用した場合を説明する。
【0043】
図4は、本実施形態のシミュレーション装置の装置構成を示している。同図に示したように、本実施形態の装置構成は、図3に示した画像表示装置の構成に、補正情報修正部400および修正情報入力部410が追加された構成となっている。また、画像生成部150’は、仮想画像として建設予定のビルのCG画像を生成する機能を有しているものとする。尚、頭部装着部100、表示画面110、姿勢センサ120、姿勢情報出力部130’、メモリ140’、補正情報算出部310、指示情報入力部320および切替え部330の各動作は、図3に示した画像表示装置と同様であるので、それらの詳細な説明は省略する。
【0044】
本実施形態においては、メモリ140’に予め保持される補正情報φSVは正確な値である必要がない。本実施形態における補正情報の獲得処理の概要を説明すると、
(1)まず、大まかに設定された補正情報φSVに基づいて、図2及び図3で説明した補正情報算出方法によって補正情報RVSおよびRyTW(あるいはそれらを定義する回転角θSV,ψSV及びφTW)の算出を行い、
(2)その後に、不確定な補正情報であるRySVおよびRyTW(あるいはそれらを定義する回転角φSV及びφTW)の微調整を以下に述べる方法によって行うことで実現される。
【0045】
回転角φSV及びφTWの微調整について説明する。修正情報入力部410は、ユーザあるいはオペレータ(いずれも不図示)の入力により、補正情報φSVの値を一定値増加させるコマンド(増加コマンド)か、あるいは、補正情報φSVの値を一定値減少させるコマンド(減少コマンド)を補正情報修正部400へと出力する。
【0046】
補正情報修正部400は、メモリ140’から補正情報φSVおよびφTWの値を入力し、修正情報入力部410から送信される増加/減少コマンドに従って、これらの補正情報に以下に述べる修正を加え、その結果をメモリ140’へと出力する。
【0047】
すなわち、増加コマンドを入力した場合は、φSVの値を一定値Δφだけ増加させ、φTWの値もΔφだけ増加させる。
φSV ← φSV+Δφ
φTW ← φTW+Δφ …(式I)
【0048】
同様に、減少コマンドを入力した場合は、φSVの値をΔφだけ減少させ、φTWの値もΔφだけ減少させる。
φSV ← φSV−Δφ
φTW ← φTW−Δφ …(式J)
【0049】
ここで、補正情報φSVおよびφTWの値を同量の値だけ操作するのは、これらの値の間に、(式H)より、
φTW=φSV+φ0 VW−φ0 ST …(式K)
の関係が成立しているためである。
【0050】
図5は、本実施形態による画像表示装置の処理手順を説明するフローチャートである。なお、同フローチャートに従ったプログラムコードは本実施形態の装置内の不図示のRAMやROMなどのメモリ内に格納され、不図示のCPUにより読み出され、実行される。
【0051】
まず、ステップS1010において、現在のモードが補正情報算出モードかどうかの判定を行う。モードの切り替えは、切替え部330によって行われる。例えば、切替え部330は、所定のキー操作を検出して、補正情報算出モードか通常モードのいずれが指示されたかを判定し、その判定結果を姿勢情報出力部130’及び補正情報算出部310へ通知する。
【0052】
モードが補正情報算出モードの場合、ステップS1140において、補正情報算出部310は指示情報入力部320から指示情報が入力されているかどうかを判定する。指示情報が入力されていない場合、補正情報算出部310はステップS1150〜S1180で示される処理の実行はしない。そして、処理はステップS1190へスキップし、姿勢情報出力部130’は、メモリ140’から予め定めた姿勢情報を入力する。そして、ステップS1090において、これを視点の姿勢情報として画像生成部150’へ出力する。
【0053】
ステップ1100では、画像生成部150’が姿勢情報出力部130’から視点の姿勢情報を入力し、これを仮想物体の描画パラメータとして設定する。さらに、ステップS1110において、設定された描画パラメータを用いて仮想物体の描画を行い、CG画像を生成する。そして、ステップ1120において、生成されたCG画像を表示画面110へと出力する。これにより、予め定めた姿勢にしたがった仮想物体が表示画面110上へと表示される。この処理は、補正情報算出モードの間繰り返し行われる。
【0054】
一方、ユーザあるいはオペレータは、表示画面110に表示された仮想物体が現実空間と正しい位置関係になるように頭部の姿勢を調整し、一致した時点で指示情報入力部320により指示情報の入力を行う。これは、例えば指示情報入力320がユーザによる所定のキー操作を検出し、その旨を補正情報算出部310に通知するものである。
【0055】
指示情報が入力された場合、補正情報算出部310は、ステップS1150において、姿勢センサ120から計測値を入力する。次に、ステップS1160において、予め定めた姿勢および補正情報RySV(あるいはそれを定義する回転角φSV)をメモリ140’から入力する。そして、ステップS1170において、上述の(式F),(式G)および(式H)に従って未知の補正情報を算出し、ステップS1180において、算出した補正情報をメモリ140’へと出力する。
【0056】
その後、切替え部330により通常モードを設定し、不確定な補正情報であるRySVおよびRyTW(あるいはそれらを定義する回転角φSV及びφTW)の微調整を行なう。以下、このような微調整が可能な通常モードについて説明する。
【0057】
切替え部330によってモードが通常モードに設定された場合、処理はステップS1010からステップS1020へ進む。ステップS1020においては、修正情報入力部410から修正情報が入力されているかどうかの判定が行われる。
【0058】
修正情報が入力されていない場合、処理はステップS1060へ進み、姿勢情報出力部130’が、姿勢センサ120から計測値を入力するとともに、ステップS1070において、メモリ140’から補正情報を入力する。ステップS1080では、姿勢情報出力部130’は、入力された計測値と補正情報に基づいて、視点の姿勢を算出する。その後、ステップS1090において、これを視点の姿勢情報として画像生成部150’へと出力する。
【0059】
画像生成部150’は、ステップS1100において姿勢情報出力部130’から視点の姿勢情報を入力し、ステップS1110においてこの姿勢情報に基づいて仮想物体の描画を行ってCG画像を生成し、ステップ1120において生成したCG画像を表示画面110へと出力する。これにより、視点の姿勢にしたがった仮想物体が表示画面110上へと表示される。この処理は、通常モードの間繰り返し行われる。
【0060】
ユーザあるいはオペレータは、頭部の姿勢を変更した際に、表示画面110に表示された仮想物体と現実空間とが正しく位置合わせされているかどうかを確認し、姿勢の変化によって位置ずれが生じる場合には、修正情報入力部410によって修正情報を入力し、補正情報の微調整を行う。
【0061】
修正情報が入力された場合、補正情報修正部400は以下のステップS1030〜S1050を実行する。
【0062】
まず、ステップS1030において、補正情報RySVおよびRyTW(あるいはそれらを定義する回転角φSVおよびφTW)をメモリ140’から入力する。次に、ステップS1040において、上記の(式I)および(式J)に従って補正情報の修正を行い、ステップS1050において、修正した補正情報をメモリ140’へと出力する。修正された補正情報は姿勢情報出力部130’における姿勢の算出に直ちに反映されるので、ユーザあるいはオペレータは、現実空間の画像と仮想空間の画像との融合の結果を見ながら、対話的に修正情報を入力することが可能である。このため、正しい位置合わせが実現されるように補正情報の微調整を、容易に行うことができる。なお、修正情報は、所定量を増加或は減少させるコマンドとしたが、増加量或は減少量を指示できるようにしてもよい。
【0063】
尚、姿勢情報出力部130’,メモリ140’,画像生成部150’,補正情報算出部310,指示情報入力部320,切替え部330,補正情報修正部400,および修正情報入力部410は、例えば1台の汎用コンピュータ(ノート型コンピュータ等)により構成することが可能である。また、本実施形態では、姿勢センサ120は例えばトキメック(株)の姿勢センサTISS-5-40を含んで構成したが、他の姿勢センサでももちろんかまわない。
【0064】
尚、切替え部330,指示情報入力部320,および修正情報入力部410による入力は、同一のユーザインターフェイスを介して行われることが望ましく、例えば、キーボードや、コントロールパッドを用いることができる。
【0065】
なお、上記実施形態は光学シースルー方式のMRを実現するためのものであったが、光学シースルー方式に限定されるものではなく、ビデオシースルー方式のMRにも適用可能である。その場合、上述の実施形態ではユーザの視点220であった姿勢の計測対象が、撮像装置(例えばビデオカメラ)の視点となる。また、ビデオシースルー方式の場合、画像生成部150’は、撮像装置が撮影した現実空間の画像にCG画像を重畳描画し、これを表示画面110へと表示する。
【0066】
<変形例1>
上記実施形態は、位置合わせの手掛りとして表示対象である仮想物体のCG画像を用いたが、仮想空間と現実空間の位置合わせがなされていることを確認するための視覚的なキューとなる幾何情報であれば、いずれの幾何情報を用いてもよい。例えば地形や現実のビルの形状のモデリングを行い、現実空間の同位置にそのワイヤーフレームモデルを重畳描画するようにして位置合わせを行なってもよい。なお、現実物体のワイヤーフレームモデルと表示対象である仮想物体とを組み合わせて表示することが可能あることは言うまでもない。
【0067】
<変形例2>
また、上記実施形態は、本発明の画像表示装置及びその方法を、景観シミュレーションに適用したものであったが、言うまでもなく景観シミュレーション以外のMRシステムにも適応可能である。また、MRシステムに限らず、姿勢センサを用いて視点の位置姿勢を計測する種々の用途に用いることも可能である。
【0068】
<変形例3>
上記実施形態では、姿勢センサとしてトキメック(株)の姿勢センサTISS-5-40を使用しているが、このセンサの適用に限られるものではない。センサ座標系の1つの軸が世界座標系に関連づけて設定される姿勢センサであれば、いずれのセンサに対しても適用可能である。
【0069】
<変形例4>
上記実施形態では、補正情報算出部310は、指示情報が入力された時点における姿勢センサ120の出力をR0 STとして入力し、これを補正情報の算出に用いた(ステップS1170)が、必ずしも指示情報が入力された時点の姿勢センサ120の出力をR0 STとしなくてもよい。例えば、該指示情報が入力された時点の前後における姿勢センサ120の計測値(例えばそれらの平均値)を用いるようにしてもよい。或は、視点220を姿勢Ry0 VWに一定時間静止させておき、その間の姿勢センサ120の出力の平均値を元にR0 STを求めても良いし、視点220が姿勢Ry0 VWに位置している際の姿勢センサ120の出力を得ることが出来れば、いずれの方法でR0 STを取得してもよい。
【0070】
[他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0071】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0072】
本発明を上記記憶媒体に適用する場合、その記憶媒体には先に説明した(図5に示す)フローチャートに対応するプログラムコードが格納されることになる。
【発明の効果】
以上説明したように本発明によれば、センサ座標系におけるセンサの姿勢を世界座標系における計測対象の姿勢に変換するための補正情報を容易に取得することができる。
【図面の簡単な説明】
【図1】光学シースルー方式の複合現実感の提示を行う一般的な画像表示装置の構成を示す図である。
【図2】姿勢情報出力部130において、世界座標系200におけるユーザの視点220の姿勢を算出する方法を説明する図である。
【図3】補正情報算出部を備えた画像表示装置の構成を示す図である。
【図4】本発明の実施形態における画像表示装置の構成を示したブロック図である。
【図5】本発明の実施形態による画像表示装置における制御を説明するフローチャートである。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image display apparatus and method for displaying an image of a virtual space fused to a real space based on an output value of an attitude sensor. More specifically, a superimposed image is generated by superimposing a virtual space image on a real image captured by the imaging device, and this is displayed on the display screen, or the real space is optically transmitted through the display screen. The present invention also relates to an image display device that displays an image of a virtual space on the display screen, a method thereof, and a storage medium.
[0002]
[Prior art]
In recent years, research on mixed reality (hereinafter referred to as “MR” (Mixed Reality)) has been actively conducted for the purpose of seamless connection between a real space and a virtual space. In 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 superimposed on an image of a real space photographed by a photographing device such as a video camera. There are a video see-through method for displaying and an optical see-through method for superimposing and displaying an image of the virtual space on the display screen while optically transmitting the real space to the display screen of the display device.
[0003]
Such MR applications include navigation in which names and guidance are superimposed on buildings in a real city, and landscape simulations in which CG images of buildings to be built are superimposed on the planned construction site. A new field that is qualitatively different from virtual reality is expected. A common requirement for these applications is how to accurately align the real space and the virtual space, and many efforts have been made in the past.
[0004]
The alignment problem in video see-through MR results in the problem of obtaining the three-dimensional position and orientation of the viewpoint of the photographing apparatus in the world coordinate system (hereinafter simply referred to as the world coordinate system) set in the real space. Similarly, the alignment problem in the optical see-through MR can be said to be a problem of obtaining the three-dimensional position and orientation of the user's viewpoint in the world coordinate system.
[0005]
As a method for solving these problems, a three-dimensional position / orientation sensor such as a magnetic sensor or an ultrasonic sensor is used, and a three-dimensional position / orientation of an imaging device or user's viewpoint (hereinafter simply referred to as a viewpoint) in the world coordinate system Is generally done.
[0006]
Also, in situations where it is safe to use a fixed value for the viewpoint position, such as when the distance to the target is sufficiently large outdoors, a three-dimensional posture composed of a combination of a gyro sensor and an accelerometer In general, a three-dimensional orientation of a viewpoint is obtained using a sensor, and a three-dimensional position and orientation of the viewpoint is acquired based on the obtained viewpoint.
[0007]
The output value output by the three-dimensional posture sensor is, for example, the posture sensor TISS-5-40 manufactured by Tokimec Co., Ltd., with the Y-axis being the reverse direction of gravity and the X-Z plane defined by this Y-axis. This is the three-dimensional posture of the sensor itself in the sensor coordinate system, which is a coordinate system defined as the -Z axis, which is the front direction of the sensor when the sensor is activated. As described above, the output value output from the three-dimensional posture sensor is generally not the three-dimensional posture of the viewpoint in the world coordinate system to be measured. That is, the sensor output value cannot be used as it is as the three-dimensional posture of the viewpoint in the world coordinate system, and some kind of coordinate conversion must be performed. Specifically, coordinate conversion for converting the posture of the sensor itself into the posture of the viewpoint and coordinate conversion for converting the posture in the sensor coordinate system into the posture in the world coordinate system are required. In this specification, data for performing coordinate conversion between the sensor output value and the three-dimensional orientation of the viewpoint in the world coordinate system is referred to as correction information.
[0008]
FIG. 1 is a diagram illustrating a configuration of a general image display device that presents an optical see-through mixed reality.
[0009]
The display screen 110 is a see-through type and is fixed to the head mounting unit 100 together with the posture sensor 120. When a user (not shown) wears the head mounting unit 100 so that the display screen 110 is positioned in front of the eyes, the real space in front of the display screen is observed through the optical system (not shown in FIG. 1) of the display screen 110. can do. The posture sensor 120 measures the posture of the sensor itself in the sensor coordinate system and outputs a posture measurement value with three degrees of freedom. The attitude sensor 120 has an inclinometer (not shown) that can measure the direction of gravity of the earth, and as described above, one axis of the sensor coordinate system (in this example, the Y axis) is Set in the opposite direction of gravity.
[0010]
The posture information output unit 130 converts the measurement value input from the posture sensor 120 according to the correction information held in the memory 140, calculates the posture of the user's viewpoint in the world coordinate system, and outputs this as posture information. The image generation unit 150 generates a virtual image corresponding to the posture of the user's viewpoint according to the posture information input from the posture information output unit 130, and outputs this. The display screen 110 receives a virtual image from the image generation unit 150 and displays it. With the above configuration, a user (not shown) sees a virtual image displayed on the display screen 110 so as to overlap the image of the real space that has passed through the display screen 110.
[0011]
Next, a method for calculating the posture of the viewpoint of the user in the world coordinate system in the posture information output unit 130 will be described using FIG.
[0012]
In the figure, the attitude of the sensor coordinate system 210 in the world coordinate system 200 is R TW , the attitude of the attitude sensor 120 in the sensor coordinate system 210 is R ST , and the relative attitude of the user's viewpoint 220 viewed from the attitude sensor 120 is R VS. Let R VW be the posture of the user's viewpoint 220 in the world coordinate system 200.
[0013]
Here, R is a 4 × 4 matrix, and R BA describes the posture of the object B in a certain coordinate system A. In other words, this is a coordinate transformation matrix from the coordinate system A to the coordinate system B defined by the object B, and the coordinate P A = (X A , Y A , Z A , 1) T in the coordinate system A is represented by the coordinate system B. Coordinate P B = (X B , Y B , Z B , 1) Defines a conversion equation for conversion to T , P B = R BA P A. That is, the posture R VW of the user's viewpoint 220 in the world coordinate system 200 is obtained by changing the coordinates P W = (X W , Y W , Z W , 1) T in the world coordinate system 200 to the coordinates P V in the user's viewpoint coordinate system 230. = (X V , Y V , Z V , 1) It can be paraphrased as a coordinate transformation matrix (P V = R VW P W ) for conversion to T.
[0014]
The matrix R is defined by a rotation matrix Rx defined by a rotation angle θ around the X axis, a rotation matrix Ry defined by a rotation angle (azimuth angle) φ around the Y axis, and a rotation angle ψ around the Z axis. The rotation matrix Rz is the product, and the relationship R = RzRxRy is established. Each of these matrices is represented as follows:
[0015]
[Expression 1]
Figure 0003840171
At this time, R VW is
R VW = R VS · R ST · R TW (Formula A)
Can be indicated by
[0016]
Here, since the Y axis of the sensor coordinate system 210 is set in the direction opposite to the gravity, by defining the Y axis of the world coordinate system 200 perpendicular to the ground surface, the world coordinate system 200 and the sensor coordinate system 210 The direction of the Y axis can be matched. At this time, Rx TW and Rz TW, which are components of R TW around the X axis and Z axis, are unit matrices, respectively, and R TW is equivalent to the rotation matrix Ry TW defined by the rotation angle φ TW around the Y axis. Become. Therefore, the above (formula A) is
R VW = R VS · R ST · Ry TW (Formula B)
Transformed into
[0017]
Among these, R ST is an input from the posture sensor 120 to the posture information output unit 130, R VW is an output from the posture information output unit 130 to the image generation unit 150, and R VS and Ry TW (in other words, R VS rotation angle theta VS around three axes to define, phi VS, the rotation angle phi TW that defines [psi VS and Ry TW) corresponds to the correction information necessary for converting the R ST to R VW. The posture information output unit 130 calculates R VW based on (Equation B) using R ST input from the posture sensor 120 and R VS and Ry TW held in the memory 140, The image is output to the image generation unit 150.
[0018]
In order to accurately align the real space and the virtual space, it is necessary to set accurate correction information in the memory 140 by some means. Only when accurate correction information is given, display of a virtual image accurately aligned with the real space is realized.
[0019]
As one of known methods for setting correction information, a user or an operator interactively sets each value of θ VS , φ VS , ψ VS and φ TW stored in the memory 140 via an input unit (not shown). There is a method of increasing and decreasing and adjusting each value by trial and error until accurate alignment is achieved.
[0020]
However, in this method, since it is necessary to adjust four parameters at the same time, there is a problem that the work is complicated and adjustment takes time.
[0021]
[Problems to be solved by the invention]
As one method for reducing this complexity, there is a method proposed by Japanese Patent Application No. 2001-050990 by the present applicant. Hereinafter, this correction information setting method will be described.
[0022]
FIG. 3 is a block diagram showing the configuration of the image display apparatus when this correction information setting method is incorporated into the image display apparatus of FIG. As shown in the figure, this configuration is a configuration in which a correction information calculation unit 310, an instruction information input unit 320, and a switching unit 330 are added to the configuration of FIG. Also, the components corresponding to the posture information output unit 130 and the memory 140 in FIG. 1 in this image display device have different functions from those in the image display device in FIG. The output unit 130 ′ and the memory 140 ′ are described.
[0023]
The correction information is calculated by moving the posture of the viewpoint 220 of the user to a posture Ry 0 VW having a predetermined posture in the world coordinate system and having a visual axis parallel to the ground plane, and the posture at that time This is done by acquiring the output R 0 ST of the sensor 120. In addition to the correction information, the memory 140 ′ holds the predetermined viewpoint posture Ry 0 VW (or the rotation angle φ 0 VW around the Y axis that defines the posture).
[0024]
The switching unit 330 receives an input from a user or an operator (both not shown in FIG. 3), and sets the mode of the posture information output unit 130 ′ to the normal mode or the correction information calculation mode.
[0025]
When the mode is the normal mode, the posture information output unit 130 ′ calculates R VW using the correction information from RST input from the posture sensor 120, similarly to the posture information output unit 130 described in FIG. This is output to the image generation unit 150 as posture information.
[0026]
On the other hand, when the mode is the correction information calculation mode, Ry 0 VW is input from the memory 140 ′ and is output to the image generation unit 150 as posture information. The instruction information input unit 320 receives an input from a user or an operator and transmits an instruction to execute the correction information calculation process to the correction information calculation unit 310. More specifically, in the correction information calculation mode, the user or the operator has a correct positional relationship between the virtual image displayed on the display screen 110 and the real space image that is optically transmitted through the display screen 110 and observed. The posture of the viewpoint 220 is adjusted so that Then, when it is determined that the two images are sufficiently overlapped (that is, when it is determined that the viewpoint 220 is positioned in the posture Ry 0 VW ), for example, the instruction information input unit 320 is pressed by pressing a specific key. Input to.
[0027]
The correction information calculation unit 310 inputs an instruction to execute the correction information calculation process from the instruction information input unit 320, and at that time (that is, when the user or the operator determines that the viewpoint 220 is positioned in the posture Ry 0 VW ). The output R 0 ST of the attitude sensor 120 is input, and correction information is calculated based on the attitude Ry 0 VW and the attitude R 0 ST .
[0028]
In the above method, the rotation component Ry SV around the y axis of the inverse matrix R SV (representing the relative posture of the posture sensor viewed from the user's viewpoint) out of the posture R VS which is one of the correction information. Alternatively, it is necessary that the rotation angle φ SV around the Y axis defining it is known by some method and already stored in the memory 140 ′.
[0029]
At this time, between the data processed by the correction information calculation unit 310, from (Formula B),
Ry 0 VW = R VS · R 0 ST · Ry TW (Formula C)
The relationship is established. Here, when (Formula C) is transformed,
Ry 0 VW = (Rz SV Rx SV Ry SV) - 1 R 0 ST Ry TW ... ( Equation D)
It becomes.
[0030]
The correction information calculation unit 310 inputs Ry 0 VW and Ry SV from the memory 140 ′ and R 0 ST from the sensor 120, and calculates unknown correction information Rz SV , Rx SV , Ry TW based on (Formula D). To do. The procedure is shown below.
[0031]
When (formula D) is further transformed,
Rz SV Rx SV Ry SV Ry 0 VW = Rz 0 ST Rx 0 ST Ry 0 ST Ry TW (Formula E)
It becomes. Here, since each of the left side and the right side of (Equation E) is a product of rotational components around the Z, X, and Y axes, an identity is established for each rotational component around the Z, X, and Y axes.
[0032]
First, the identity of rotational components around the Z and X axes is as follows. That is,
Rz SV = Rz 0 ST (Formula F)
Rx SV = Rx 0 ST (Formula G)
From this, Rz SV and Rx SV can be obtained.
[0033]
On the other hand, the identity of the rotational component around the Y axis is as follows. That is,
Ry SV Ry 0 VW = Ry 0 ST Ry TW
Than this,
Ry TW = Ry SV Ry 0 VW Ry 0 ST -1 (Formula H)
Thus, Ry TW can be obtained.
[0034]
The correction information calculation unit 310 calculates correction information Rz SV , Rx SV , and Ry TW by the above processing, and further calculates R VS (= (Rz SV R × SV Ry SV ) −1 ) from these values. R VS and Ry TW (or rotation angles θ SV , ψ SV and φ TW defining them) are output to the memory 140 ′.
[0035]
The derivation of Ry SV may be performed on a trial and error basis using a measured value such as a protractor, or may be performed using any other measuring means.
[0036]
As described above, if only Ry SV in the correction information is obtained in advance, other unknown correction information can be easily derived, and accurate alignment can be realized.
[0037]
However, it is generally difficult to accurately measure the correction information Ry SV in advance. Thus, in practice, the rough setting of Ry SV, derivation of other correction information, the fine adjustment of Ry SV, derivation of other correction information, the fine adjustment of Ry SV, the task of ..., the correct positioning There is a problem that it must be repeated until it is realized, and it takes a complicated operation and time to obtain correction information.
[0038]
The present invention has been made in view of the above problems, and an object of the present invention is to more easily acquire correction information for converting sensor measurement values into viewpoint postures in the world coordinate system.
[0039]
[Means for Solving the Problems]
In order to achieve the above object, for example, an image display apparatus of the present invention comprises the following arrangement. That is,
An image display device that synthesizes a virtual image according to a posture of a user's viewpoint with a real image and presents it to the user,
An attitude sensor that outputs its own attitude measurement value in the sensor coordinate system ;
First display means for generating the virtual image based on predetermined posture information stored in advance in a memory and displaying the virtual image on a display screen;
Calculating means for calculating correction information based on a posture measurement value from the posture sensor and the predetermined posture information in response to a notification indicating that the posture of the viewpoint matches the posture indicated by the predetermined posture information; ,
Second display means for generating a virtual image based on the posture information of the viewpoint obtained using the posture measurement value obtained from the posture sensor and the correction information, and displaying the virtual image on the display screen;
Correction means for correcting the correction information according to a predetermined operation while displaying a virtual image by the second display means;
The correction information includes first coordinate conversion information for converting the posture of the posture sensor itself into the posture of the viewpoint, and second coordinate conversion information for converting a posture in the sensor coordinate system into a posture in the world coordinate system. Including
The correction means simultaneously corrects the conversion information related to the azimuth in the first coordinate conversion information and the conversion information related to the azimuth in the second coordinate conversion information.
[0040]
In order to achieve the above object, the information processing method of the present invention includes:
Using the posture measurement value from the posture sensor that outputs its own posture measurement value in the sensor coordinate system, a virtual image corresponding to the posture of the viewpoint of the user observing the display screen is combined with the real image and presented to the user An information processing method,
A first display step of generating the virtual image based on predetermined posture information stored in advance in a memory and displaying the virtual image on the display screen;
A calculation step of calculating correction information based on a posture measurement value from the posture sensor and the predetermined posture information in response to a notification indicating that the posture of the viewpoint matches the posture indicated by the predetermined posture information; ,
A second display step of generating a virtual image based on the posture information of the viewpoint obtained using the posture measurement value obtained from the posture sensor and the correction information, and displaying the virtual image on the display screen;
A correction step of correcting the correction information according to a predetermined operation while displaying a virtual image in the second display step,
The correction information includes first coordinate conversion information for converting the posture of the posture sensor itself into the posture of the viewpoint, and second coordinate conversion information for converting a posture in the sensor coordinate system into a posture in the world coordinate system. Including
The correction step simultaneously corrects the conversion information related to the azimuth in the first coordinate conversion information and the conversion information related to the azimuth in the second coordinate conversion information.
[0041]
DETAILED DESCRIPTION OF THE INVENTION
Preferred embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
[0042]
In the following embodiments, a case will be described in which the image display apparatus and method of the present invention are applied to a simulation apparatus and method for performing a landscape simulation of a building to be constructed.
[0043]
FIG. 4 shows a device configuration of the simulation device of the present embodiment. As shown in the figure, the device configuration of the present embodiment has a configuration in which a correction information correction unit 400 and a correction information input unit 410 are added to the configuration of the image display device shown in FIG. Further, it is assumed that the image generation unit 150 ′ has a function of generating a CG image of a building scheduled for construction as a virtual image. The operations of the head mounting unit 100, the display screen 110, the posture sensor 120, the posture information output unit 130 ′, the memory 140 ′, the correction information calculation unit 310, the instruction information input unit 320, and the switching unit 330 are illustrated in FIG. Since it is the same as the illustrated image display device, detailed description thereof will be omitted.
[0044]
In the present embodiment, the correction information φ SV held in advance in the memory 140 ′ need not be an accurate value. An overview of the correction information acquisition process in the present embodiment will be described.
(1) First, based on the roughly set correction information φ SV , the correction information R VS and Ry TW (or the rotation angles θ SV , ψ defining them) are calculated by the correction information calculation method described in FIGS. SV and φTW )
(2) After that, it is realized by performing fine adjustment of Ry SV and Ry TW (or rotation angles φ SV and φ TW defining them) which are uncertain correction information by the method described below.
[0045]
The fine adjustment of the rotation angles φ SV and φ TW will be described. Correction information input unit 410, the input of the user or operator (both not shown), the command (increase command) to the value of the correction information phi SV is increased by a certain value or, alternatively, a constant value the value of the correction information phi SV decreased The command to be executed (decrease command) is output to the correction information correction unit 400.
[0046]
The correction information correction unit 400 inputs the values of the correction information φ SV and φ TW from the memory 140 ′, and adds the correction described below to these correction information according to the increase / decrease command transmitted from the correction information input unit 410. The result is output to the memory 140 ′.
[0047]
That is, if you enter the increase command, increasing the value of phi SV by a fixed value [Delta] [phi, the value of phi TW also increases by [Delta] [phi.
φ SV ← φ SV + Δφ
φ TW ← φ TW + Δφ (Formula I)
[0048]
Similarly, if you enter the decrease command, the value of phi SV is decreased by [Delta] [phi, the value of phi TW also decreased by [Delta] [phi.
φ SV ← φ SV −Δφ
φ TW ← φ TW −Δφ… (Formula J)
[0049]
Here, the values of the correction information φ SV and φ TW are manipulated by the same amount, because between these values,
φ TW = φ SV + φ 0 VW −φ 0 ST (Formula K)
This is because the relationship is established.
[0050]
FIG. 5 is a flowchart illustrating the processing procedure of the image display apparatus according to the present embodiment. The program code according to the flowchart is stored in a memory such as a RAM or a ROM (not shown) in the apparatus of this embodiment, and is read and executed by a CPU (not shown).
[0051]
First, in step S1010, it is determined whether the current mode is the correction information calculation mode. Switching between modes is performed by the switching unit 330. For example, the switching unit 330 detects a predetermined key operation, determines whether the correction information calculation mode or the normal mode is instructed, and sends the determination result to the posture information output unit 130 ′ and the correction information calculation unit 310. Notice.
[0052]
When the mode is the correction information calculation mode, the correction information calculation unit 310 determines whether or not the instruction information is input from the instruction information input unit 320 in step S1140. When the instruction information is not input, the correction information calculation unit 310 does not execute the processing shown in steps S1150 to S1180. Then, the process skips to step S1190, and the posture information output unit 130 ′ inputs predetermined posture information from the memory 140 ′. In step S1090, this is output to the image generation unit 150 ′ as viewpoint orientation information.
[0053]
In step 1100, the image generation unit 150 ′ inputs viewpoint posture information from the posture information output unit 130 ′, and sets this as drawing parameters for the virtual object. In step S1110, a virtual object is drawn using the set drawing parameters to generate a CG image. In step 1120, the generated CG image is output to the display screen 110. As a result, a virtual object according to a predetermined posture is displayed on the display screen 110. This process is repeated during the correction information calculation mode.
[0054]
On the other hand, the user or the operator adjusts the posture of the head so that the virtual object displayed on the display screen 110 is in a correct positional relationship with the real space, and inputs the instruction information by the instruction information input unit 320 at the time of matching. Do. For example, the instruction information input 320 detects a predetermined key operation by the user and notifies the correction information calculation unit 310 to that effect.
[0055]
When the instruction information is input, the correction information calculation unit 310 inputs a measurement value from the orientation sensor 120 in step S1150. Next, in step S1160, a predetermined posture and correction information Ry SV (or a rotation angle φ SV defining it) are input from the memory 140 ′. In step S1170, unknown correction information is calculated in accordance with the above (formula F), (formula G), and (formula H), and in step S1180, the calculated correction information is output to the memory 140 ′.
[0056]
Thereafter, the normal mode is set by the switching unit 330, and fine adjustment of Ry SV and Ry TW (or rotation angles φ SV and φ TW defining them) which are indefinite correction information is performed. Hereinafter, the normal mode capable of such fine adjustment will be described.
[0057]
When the mode is set to the normal mode by the switching unit 330, the process proceeds from step S1010 to step S1020. In step S1020, it is determined whether correction information is input from correction information input unit 410.
[0058]
If the correction information has not been input, the process proceeds to step S1060, and the posture information output unit 130 ′ inputs the measurement value from the posture sensor 120, and also inputs correction information from the memory 140 ′ in step S1070. In step S1080, the posture information output unit 130 ′ calculates the posture of the viewpoint based on the input measurement value and correction information. Thereafter, in step S1090, this is output to the image generation unit 150 ′ as viewpoint orientation information.
[0059]
In step S1100, the image generation unit 150 ′ inputs viewpoint posture information from the posture information output unit 130 ′. In step S1110, the image generation unit 150 ′ generates a CG image by drawing a virtual object based on the posture information. The generated CG image is output to the display screen 110. Thereby, a virtual object according to the viewpoint posture is displayed on the display screen 110. This process is repeated during the normal mode.
[0060]
When the user or operator changes the posture of the head, the user or the operator checks whether or not the virtual object displayed on the display screen 110 and the real space are correctly aligned. Inputs correction information by the correction information input unit 410 and performs fine adjustment of the correction information.
[0061]
When the correction information is input, the correction information correction unit 400 executes the following steps S1030 to S1050.
[0062]
First, in step S1030, correction information Ry SV and Ry TW (or rotation angles φ SV and φ TW defining them) are input from memory 140 ′. Next, in step S1040, correction information is corrected in accordance with the above (formula I) and (formula J), and in step S1050, the corrected correction information is output to the memory 140 ′. Since the corrected correction information is immediately reflected in the posture calculation in the posture information output unit 130 ′, the user or the operator interactively corrects the result while observing the result of the fusion of the real space image and the virtual space image. Information can be entered. For this reason, fine adjustment of the correction information can be easily performed so that correct alignment is realized. The correction information is a command for increasing or decreasing the predetermined amount, but the increase amount or the decreasing amount may be designated.
[0063]
The posture information output unit 130 ′, the memory 140 ′, the image generation unit 150 ′, the correction information calculation unit 310, the instruction information input unit 320, the switching unit 330, the correction information correction unit 400, and the correction information input unit 410 are, for example, A single general-purpose computer (such as a notebook computer) can be used. In this embodiment, the posture sensor 120 includes, for example, the posture sensor TISS-5-40 of Tokimec Co., Ltd., but other posture sensors may of course be used.
[0064]
The input by the switching unit 330, the instruction information input unit 320, and the correction information input unit 410 is preferably performed through the same user interface, and for example, a keyboard or a control pad can be used.
[0065]
The above embodiment is for realizing the optical see-through MR, but is not limited to the optical see-through MR, and can be applied to a video see-through MR. In this case, the posture measurement target that is the user's viewpoint 220 in the above-described embodiment is the viewpoint of the imaging apparatus (for example, a video camera). In the case of the video see-through method, the image generation unit 150 ′ superimposes and draws a CG image on the real space image captured by the imaging device, and displays the CG image on the display screen 110.
[0066]
<Modification 1>
In the above embodiment, a CG image of a virtual object that is a display target is used as a clue of alignment, but geometric information that is a visual cue for confirming that the virtual space and the real space are aligned. Any geometric information may be used. For example, the terrain or the shape of a real building may be modeled, and the alignment may be performed by superimposing and drawing the wire frame model at the same position in the real space. Needless to say, the wire frame model of the real object and the virtual object to be displayed can be combined and displayed.
[0067]
<Modification 2>
Moreover, although the said embodiment applied the image display apparatus and its method of this invention to landscape simulation, it cannot be overemphasized that it is applicable also to MR systems other than landscape simulation. Further, the present invention is not limited to the MR system, and can be used for various purposes for measuring the position and orientation of the viewpoint using an orientation sensor.
[0068]
<Modification 3>
In the above embodiment, the posture sensor TISS-5-40 of Tokimec Co., Ltd. is used as the posture sensor, but the present invention is not limited to this application. Any orientation sensor can be applied as long as one axis of the sensor coordinate system is set in association with the world coordinate system.
[0069]
<Modification 4>
In the above-described embodiment, the correction information calculation unit 310 inputs the output of the attitude sensor 120 at the time when the instruction information is input as R 0 ST and uses it as the correction information calculation (step S1170). The output of the posture sensor 120 at the time when the information is input may not be R 0 ST . For example, measured values (for example, average values thereof) of the posture sensor 120 before and after the time point when the instruction information is input may be used. Alternatively, the viewpoint 220 may be kept stationary in the posture Ry 0 VW for a certain time, and R 0 ST may be obtained based on the average value of the output of the posture sensor 120 during that time, or the viewpoint 220 is positioned in the posture Ry 0 VW . R 0 ST may be acquired by any method as long as the output of the attitude sensor 120 during the operation can be obtained.
[0070]
[Other Embodiments]
An object of the present invention is to supply a storage medium (or recording medium) in which a program code of software that realizes the functions of the above-described embodiments is recorded to a system or apparatus, and a computer (or CPU or MPU) of the system or apparatus Needless to say, this can also be achieved by 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 instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0071]
Furthermore, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is determined based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion card or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
[0072]
When the present invention is applied to the storage medium, the storage medium stores program codes corresponding to the flowchart described above (shown in FIG. 5).
【The invention's effect】
As described above, according to the present invention, it is possible to easily acquire correction information for converting the orientation of the sensor in the sensor coordinate system into the orientation of the measurement target in the world coordinate system.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration of a general image display apparatus that presents an optical see-through mixed reality.
FIG. 2 is a diagram illustrating a method for calculating a posture of a user's viewpoint 220 in the world coordinate system 200 in the posture information output unit 130.
FIG. 3 is a diagram illustrating a configuration of an image display device including a correction information calculation unit.
FIG. 4 is a block diagram illustrating a configuration of an image display apparatus according to an embodiment of the present invention.
FIG. 5 is a flowchart illustrating control in the image display apparatus according to the embodiment of the present invention.

Claims (8)

ユーザの視点の姿勢に応じた仮想画像を現実画像と合成してユーザに提示する画像表示装置であって、
センサ座標系における自身の姿勢計測値を出力する姿勢センサと、
メモリに予め格納された所定の姿勢情報に基づいて前記仮想画像を生成し、表示画面に表示させる第1表示手段と、
前記視点の姿勢と前記所定の姿勢情報が示す姿勢とが一致したことを示す通知に応じた前記姿勢センサからの姿勢計測値と前記所定の姿勢情報とに基づいて補正情報を算出する算出手段と、
前記姿勢センサから得られた姿勢計測値と前記補正情報とを用いて得られた視点の姿勢情報に基づいて仮想画像を生成し、前記表示画面に表示させる第2表示手段と、
前記第2表示手段によって仮想画像を表示しながら、所定の操作に応じて前記補正情報を修正する修正手段とを有し、
前記補正情報は、前記姿勢センサ自身の姿勢を前記視点の姿勢に変換する第1の座標変換情報と、前記センサ座標系における姿勢を世界座標系における姿勢へ変換する第2の座標変換情報とを含み、
前記修正手段は、前記第1の座標変換情報のうちの方位角に関する変換情報と前記第2の座標変換情報のうちの方位角に関する変換情報とを同時に修正することを特徴とする画像表示装置。
An image display device that synthesizes a virtual image according to a posture of a user's viewpoint with a real image and presents it to the user,
An attitude sensor that outputs its own attitude measurement value in the sensor coordinate system ;
First display means for generating the virtual image based on predetermined posture information stored in advance in a memory and displaying the virtual image on a display screen;
Calculating means for calculating correction information based on a posture measurement value from the posture sensor and the predetermined posture information in response to a notification indicating that the posture of the viewpoint matches the posture indicated by the predetermined posture information; ,
Second display means for generating a virtual image based on the posture information of the viewpoint obtained using the posture measurement value obtained from the posture sensor and the correction information, and displaying the virtual image on the display screen;
Correction means for correcting the correction information according to a predetermined operation while displaying a virtual image by the second display means;
The correction information includes first coordinate conversion information for converting the posture of the posture sensor itself into the posture of the viewpoint, and second coordinate conversion information for converting a posture in the sensor coordinate system into a posture in the world coordinate system. Including
The image display apparatus characterized in that the correction means simultaneously corrects the conversion information related to the azimuth in the first coordinate conversion information and the conversion information related to the azimuth in the second coordinate conversion information.
前記第1及び第2表示手段は、前記表示画面に現実空間の像を光学的に投影させつつ、当該表示画面上に仮想空間の画像を表示することを特徴とする請求項1に記載の画像表示装置。  2. The image according to claim 1, wherein the first and second display units display an image of a virtual space on the display screen while optically projecting an image of a real space on the display screen. Display device. 前記第1及び第2表示手段は、前記表示画面上に撮像装置によって撮像された実画像に、前記仮想画像を重畳して表示することを特徴とする請求項1に記載の画像表示装置。  The image display apparatus according to claim 1, wherein the first and second display units display the virtual image superimposed on a real image captured by the imaging apparatus on the display screen. 前記算出手段は、前記通知が入力された時点及び/または該時点の前後における前記姿勢計測値と、前記所定の姿勢情報に基づいて前記補正情報を算出することを特徴とする請求項1に記載の画像表示装置。2. The calculation unit according to claim 1, wherein the calculation unit calculates the correction information based on the posture measurement value at and / or before and after the notification is input and the predetermined posture information. Image display device. 通常モードと補正情報算出モードとの切替えを行う切替え手段をさらに有し、
前記通常モードにおいては、前記第2表示手段と前記修正手段を機能させ、
前記補正値算出モードでは、前記第1表示手段と前記算出手段を機能させることを特徴とする請求項1乃至4のいずれかに記載の画像表示装置。
It further has switching means for switching between the normal mode and the correction information calculation mode,
In the normal mode, the second display means and the correction means function.
5. The image display device according to claim 1, wherein in the correction value calculation mode, the first display unit and the calculation unit are caused to function.
センサ座標系における自身の姿勢計測値を出力する姿勢センサからの姿勢計測値を用いて、表示画面を観察するユーザの視点の姿勢に応じた仮想画像を、現実画像と合成してユーザに提示する情報処理方法であって、
メモリに予め格納された所定の姿勢情報に基づいて前記仮想画像を生成して、これを前記表示画面に表示させる第1表示工程と、
前記視点の姿勢と前記所定の姿勢情報が示す姿勢とが一致したことを示す通知に応じた前記姿勢センサからの姿勢計測値と前記所定の姿勢情報とに基づいて補正情報を算出する算出工程と、
前記姿勢センサから得られた姿勢計測値と前記補正情報とを用いて得られた視点の姿勢情報に基づいて仮想画像を生成して、これを前記表示画面に表示させる第2表示工程と、
前記第2表示工程によって仮想画像を表示しながら、所定の操作に応じて前記補正情報を修正する修正工程とを有し、
前記補正情報は、前記姿勢センサ自身の姿勢を前記視点の姿勢に変換する第1の座標変換情報と、前記センサ座標系における姿勢を世界座標系における姿勢へ変換する第2の座標変換情報とを含み、
前記修正工程は、前記第1の座標変換情報のうちの方位角に関する変換情報と前記第2の座標変換情報のうちの方位角に関する変換情報とを同時に修正することを特徴とする情報処理方法。
Using the posture measurement value from the posture sensor that outputs its own posture measurement value in the sensor coordinate system, a virtual image corresponding to the posture of the viewpoint of the user observing the display screen is combined with the real image and presented to the user An information processing method,
A first display step of generating the virtual image based on predetermined posture information stored in advance in a memory and displaying the virtual image on the display screen;
A calculation step of calculating correction information based on a posture measurement value from the posture sensor and the predetermined posture information in response to a notification indicating that the posture of the viewpoint matches the posture indicated by the predetermined posture information; ,
A second display step of generating a virtual image based on the posture information of the viewpoint obtained using the posture measurement value obtained from the posture sensor and the correction information, and displaying the virtual image on the display screen;
A correction step of correcting the correction information according to a predetermined operation while displaying a virtual image in the second display step,
The correction information includes first coordinate conversion information for converting the posture of the posture sensor itself into the posture of the viewpoint, and second coordinate conversion information for converting a posture in the sensor coordinate system into a posture in the world coordinate system. Including
The information processing method, wherein the correcting step simultaneously corrects the conversion information related to the azimuth in the first coordinate conversion information and the conversion information related to the azimuth in the second coordinate conversion information.
請求項6に記載の情報処理方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。A computer-readable storage medium storing a program for causing a computer to execute the information processing method according to claim 6. 請求項6に記載の情報処理方法をコンピュータに実行させるための制御プログラム。  A control program for causing a computer to execute the information processing method according to claim 6.
JP2002301652A 2001-10-26 2002-10-16 Image display apparatus and method, and storage medium Expired - Fee Related JP3840171B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002301652A JP3840171B2 (en) 2001-10-26 2002-10-16 Image display apparatus and method, and storage medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001-329361 2001-10-26
JP2001329361 2001-10-26
JP2002301652A JP3840171B2 (en) 2001-10-26 2002-10-16 Image display apparatus and method, and storage medium

Publications (2)

Publication Number Publication Date
JP2003203252A JP2003203252A (en) 2003-07-18
JP3840171B2 true JP3840171B2 (en) 2006-11-01

Family

ID=27666542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002301652A Expired - Fee Related JP3840171B2 (en) 2001-10-26 2002-10-16 Image display apparatus and method, and storage medium

Country Status (1)

Country Link
JP (1) JP3840171B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016117061A1 (en) * 2015-01-22 2016-07-28 株式会社野村総合研究所 Wearable terminal and information processing system using same

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005292027A (en) * 2004-04-02 2005-10-20 Miyazaki Tlo:Kk Processor and method for measuring/restoring three-dimensional shape
JP4976756B2 (en) 2006-06-23 2012-07-18 キヤノン株式会社 Information processing method and apparatus
JP4956456B2 (en) 2008-02-05 2012-06-20 キヤノン株式会社 Image processing apparatus and image processing method
KR102092374B1 (en) * 2018-01-09 2020-03-23 한국과학기술원 Furniture design apparatus displaying personalized guide information
JP2021051000A (en) 2019-09-25 2021-04-01 キヤノン株式会社 Angular-velocity detector, image display device, method for detecting angular velocity, and program
CN116962884B (en) * 2023-09-19 2024-03-15 北京凯视达科技股份有限公司 Display screen detection device, method and equipment, storage medium and electronic equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016117061A1 (en) * 2015-01-22 2016-07-28 株式会社野村総合研究所 Wearable terminal and information processing system using same

Also Published As

Publication number Publication date
JP2003203252A (en) 2003-07-18

Similar Documents

Publication Publication Date Title
JP3805231B2 (en) Image display apparatus and method, and storage medium
US7095424B2 (en) Image display apparatus and method, and storage medium
US11914147B2 (en) Image generation apparatus and image generation method using frequency lower than display frame rate
US7587295B2 (en) Image processing device and method therefor and program codes, storing medium
JP4434890B2 (en) Image composition method and apparatus
EP1596329B1 (en) Marker placement information estimating method and information processing device
JP4065507B2 (en) Information presentation apparatus and information processing method
JP4002983B2 (en) Projection apparatus, projection apparatus control method, composite projection system, projection apparatus control program, and recording medium on which projection apparatus control program is recorded
EP3859495A1 (en) Systems and methods for tracking motion and gesture of heads and eyes
US20050159916A1 (en) Information processing apparatus, and information processing method
JP2008046750A (en) Image processor and image processing method
US20030184602A1 (en) Information processing method and apparatus
JP4367926B2 (en) Image composition system, image composition method, and image composition apparatus
JP4095320B2 (en) Sensor calibration device, sensor calibration method, program, storage medium
JP2007233971A (en) Image compositing method and device
JP3398796B2 (en) Image system for 3D survey support using mixed reality
JP3840171B2 (en) Image display apparatus and method, and storage medium
JP4149732B2 (en) Stereo matching method, three-dimensional measurement method, three-dimensional measurement apparatus, stereo matching method program, and three-dimensional measurement program
JP4926598B2 (en) Information processing method and information processing apparatus
JP2004233201A (en) Position attitude measuring method
JP2015201734A (en) Image processing system, control method of the same, and program
JP4810403B2 (en) Information processing apparatus and information processing method
JP7030906B2 (en) Information processing equipment, information processing methods and programs
JP7465133B2 (en) Information processing device and information processing method
JPH11248435A (en) Device for measuring 3-dimensional coordinates

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060421

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060510

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060804

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090811

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100811

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110811

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120811

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130811

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees