(57)【要約】【課題】  位置姿勢センサの計測値を世界座標系における撮像装置の位置姿勢に変換するための較正情報を、より簡便に、かつ、特別な較正用器具を用いることなく取得すること。【解決手段】  トランスミッタとレシーバからなる位置姿勢センサのレシーバを撮像部に装着し、撮像部の位置姿勢を測定する際、撮影画像のほぼ中心に位置姿勢センサのトランスミッタが撮像されるように撮像装置の位置姿勢を調整し（ａ）、その時点の位置姿勢センサ計測値に基づいて、レシーバの位置姿勢から撮像装置の位置姿勢への座標変換に必要な較正情報の概略値を算出する。【選択図】  図１４
2004151085.tif 000002
【特許請求の範囲】
【請求項１】
センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理方法であって、
現実空間におけるセンサのトランスミッタが撮影されるように前記撮像部の位置姿勢を調整した際の前記センサの計測値を取得し、
前記センサの計測値を用いて前記第１のパラメータを算出することを特徴とする情報処理方法。
【請求項２】
さらに、算出された前記第１のパラメータに基づき、前記トランスミッタの仮想画像を撮影画像上に重畳し、該トランスミッタの仮想画像が重畳された撮影画像を表示させ、
前記第１のパラメータの調整値に関するユーザの指示を入力するとともに、該調整値に応じて前記仮想画像を更新することを特徴とする請求項１記載の情報処理方法。
【請求項３】
さらに、世界座標系におけるトランスミッタの位置姿勢を求めるための第２のパラメータを、ユーザのマニュアル指示に応じて設定することを特徴とする請求項２記載の情報処理方法。
【請求項４】
さらに、前記設定された第１および第２のパラメータを初期値として用い、センサの計測値を世界座標系における撮像部の位置姿勢に変換するための第３のパラメータを最適化する情報処理方法であって、
世界座標が既知である複数のマーカが配置されている現実空間を、前記撮像部を用いて撮影することにより得られる撮影画像、および撮影した際の前記センサの計測値を取得し、
前記撮影画像に含まれるマーカの位置を検出し、
前記センサの計測値、前記検出されたマーカの位置および該検出されたマーカの世界座標を用いて、前記パラメータを最適化することを特徴とする請求項３記載の情報処理方法。
【請求項５】
センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理方法をコンピュータに実現させるプログラムであって、
現実空間におけるセンサのトランスミッタが撮影されるように前記撮像部の位置姿勢を調整した際の前記センサの計測値を取得する工程のプログラムと、
前記センサの計測値を用いて前記パラメータを算出する工程のプログラムを有することを特徴とするプログラム。
【請求項６】
さらに、算出された前記パラメータに基づき、前記トランスミッタの仮想画像を撮影画像上に重畳し、該トランスミッタの仮想画像が重畳された撮影画像を表示させる工程のプログラムと、
前記パラメータの調整値に関するユーザの指示を入力するとともに、該調整値に応じて前記仮想画像を更新する工程のプログラムを有することを特徴とする請求項５記載のプログラム。
【請求項７】
センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理装置であって、
現実空間におけるセンサのトランスミッタが撮影されるように前記撮像部の位置姿勢を調整した際の前記センサの計測値を取得する手段と、
前記センサの計測値を用いて前記第１のパラメータを算出する手段を有することを特徴とする情報処理装置。
【請求項８】
さらに、算出された前記第１のパラメータに基づき、前記トランスミッタの仮想画像を撮影画像上に重畳し、該トランスミッタの仮想画像が重畳された撮影画像を表示する手段と、
前記第１のパラメータの調整値に関するユーザの指示を入力するとともに、該調整値に応じて前記仮想画像を更新する手段を有すること特徴とする請求項７記載の情報処理装置。
【請求項９】
請求項５又は請求項６記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置姿勢センサの出力値を変換する際に用いるパラメータを求める情報処理方法及び情報処理装置に関する。
【背景技術】
【０００２】
近年、現実空間と仮想空間の繋ぎ目のない結合を目的とした、複合現実感に関する研究が盛んに行われている。複合現実感の提示を行う画像表示装置は、ビデオカメラなどの撮像装置によって撮影された現実空間の画像に仮想空間（たとえばコンピュータ・グラフィックスにより描画された仮想物体や文字情報など）の画像を重畳表示することで実現される。
【０００３】
このような画像表示装置の応用としては、患者の体表面に体内の様子を重畳表示する手術支援や、現実空間に浮遊する仮想の敵と戦う複合現実感ゲームなど、今までのバーチャルリアリティとは異なった新たな分野が期待されている。
【０００４】
これらの応用に対して共通に要求されるのは、現実空間と仮想空間の間の位置合わせをいかに正確に行うかということであり、従来から多くの取り組みが行われてきた。
【０００５】
複合現実感における位置合わせの問題は、現実空間に設定した世界座標系（以後、単に世界座標系と呼ぶ）における、撮像装置の３次元位置姿勢を求める問題に帰結される。これらの問題を解決する方法として、磁気式センサや光学式センサ、超音波式センサなどの３次元位置姿勢センサを利用することが一般的に行われている。
【０００６】
一般に３次元位置姿勢センサが出力する出力値は、センサが独自に定義するセンサ座標系における測点の位置姿勢であって、世界座標系における撮像装置の位置姿勢ではない。例えば、トランスミッタとレシーバから構成されるPolhemus社の磁気式センサFASTRAKを例にとると、センサ出力として得られるのは、トランスミッタが定義する座標系におけるレシーバの位置姿勢である。したがって、センサ出力値をそのまま世界座標系における撮像装置の位置姿勢として用いることはできず、何らかの較正(calibration)を行う必要がある。具体的には、測点の位置姿勢を撮像装置の位置姿勢に変換する座標変換と、センサ座標系における位置姿勢を世界座標系における位置姿勢に変換する座標変換が必要となる。なお、本明細書においては、撮像装置の位置姿勢測定用センサの出力値を、世界座標系における撮像装置の位置姿勢に変換するための情報を較正情報と呼ぶこととする。また、センサ座標系から世界座標系への座標変換に必要な較正情報をWorld Transform、測点の位置姿勢から撮像装置の位置姿勢への座標変換に必要な較正情報をLocal Transformと呼ぶこととする。
【０００７】
現実空間と仮想空間の正確な位置合わせを行うためには、何らかの手段によって正確な較正情報が設定される必要がある。正確な較正情報が与えられてはじめて、現実空間に正確に位置合わせのなされた仮想画像の表示が実現される。
【０００８】
尚、較正情報の保持形態は、一方の座標系からみたもう一方の座標系の位置及び姿勢が定義できる情報であれば、いずれの形態をとってもよい。例えば、一方の座標系からもう一方の座標系への変換を表す４行４列のビューイング変換行列であってもよい。また、位置を記述する３パラメータと、姿勢をオイラー角によって表現する３パラメータの計６パラメータで位置姿勢を表現してもよい。また、姿勢に関しては、回転軸を定義する３値のベクトルとその軸まわりの回転角という４パラメータで表現してもよいし、回転軸を定義するベクトルの大きさによって回転角を表現するような３パラメータによって表現してもよい。
【０００９】
また、それらの逆変換を表わすパラメータ（例えば、センサ座標系における世界座標系の位置姿勢）によって表現しても良い。
ただし、いずれの場合も、３次元空間中における物体の位置及び姿勢は、位置に３自由度、姿勢に３自由度の計６自由度を有しているのみであるので、較正に必要な未知パラメータ数は、センサ座標系から世界座標系への変換に必要な６パラメータ(World Transform)と、測点の位置姿勢から撮像装置の位置姿勢への変換に必要な６パラメータ(Local Transform)の合計１２パラメータとなる。
【００１０】
較正情報を設定する公知の方法の一つとして、ユーザあるいはオペレータが、何らかの入力手段を介して、前記１２のパラメータ（あるいはそれに等価な１２以上のパラメータ）を対話的に変更し、正確な位置合わせが達成されるまで調整を試行錯誤的に行うという方法がある。
【００１１】
また、特許文献１により提案された較正方法によれば、Local Transform、またはWorld Transformのいずれかが何らかの方法で得られていれば、ある値に固定した位置姿勢情報に基づいて生成した仮想画像を視覚キューとして用いることで、残された未知パラメータを簡便に導出することができる。
【００１２】
【特許文献１】特開２００２−２２９７３０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した従来の方法では、複雑な調整が必要となり調整に時間がかかるという問題があった。
本発明は上述の点に鑑みてなされたものであり、ユーザが簡単に較正情報の調整を行うことができるようにすることをその主な目的とする。
【課題を解決するための手段】
【００１４】
すなわち、本発明の要旨は、センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理方法であって、現実空間におけるセンサのトランスミッタが撮影されるように撮像部の位置姿勢を調整した際のセンサの計測値を取得し、センサの計測値を用いて第１のパラメータを算出することを特徴とする情報処理方法に存する。
【００１５】
また、本発明の別の要旨は、センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理方法をコンピュータに実現させるプログラムであって、現実空間におけるセンサのトランスミッタが撮影されるように撮像部の位置姿勢を調整した際のセンサの計測値を取得する工程のプログラムと、センサの計測値を用いて第１のパラメータを算出する工程のプログラムを有することを特徴とするプログラムに存する。
【００１６】
また、本発明の別の要旨は、センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータを求める情報処理装置であって、現実空間におけるセンサのトランスミッタが撮影されるように撮像部の位置姿勢を調整した際のセンサの計測値を取得する手段と、センサの計測値を用いて第１のパラメータを算出する手段を有することを特徴とする情報処理装置に存する。
【００１７】
また、本発明の別の要旨は、本発明のプログラムを格納したコンピュータ読み取り可能な記録媒体に存する。
【発明の効果】
【００１８】
本発明によれば、現実空間におけるセンサのトランスミッタが撮影されるように撮像部の位置姿勢を調整した際のセンサの計測値を取得し、センサの計測値を用いてパラメータを算出するので、パラメータの調整を簡単に行うことができる。
また、センサのトランスミッタを用いているので、ユーザが特別な準備をする必要がない。
【発明を実施するための最良の形態】
【００１９】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。
＜第１の実施形態＞
本発明に係る情報処理装置の実施形態としてのセンサ較正装置は、センサにより計測された測点の位置姿勢を世界座標系における撮像部の位置姿勢に変換するための較正情報を求める。
【００２０】
そのため、本実施形態のセンサ較正装置は、
(１)  同一直線上にない３点以上のマーカの世界座標，
(２)  複数の位置姿勢で撮影した画像上におけるマーカの画像座標，
(３)  (２)の画像を撮影したときのセンサ計測値，
(４)  センサ配置情報の初期値（大まかな値），
を用いてパラメータを求める。
【００２１】
このうち，(１)のマーカの世界座標は，較正の準備段階で既知の情報として用意すべきデータである。マーカ（ランドマーク、特徴点）は、現実空間内に、世界座標が既知な最低３点以上が配置されている必要がある。ここで、各マーカは、撮影画像上におけるその投影像の画像座標が検出可能であって、かついずれのマーカであるかが識別可能であるような、例えばそれぞれが異なる色を有するマーカであるものとする。世界座標系は所定の１点を原点とし、更にこの原点から夫々直交する方向にＸ、Ｙ、Ｚ軸をとる。そしてこの座標系において上記３点のマーカの座標が既知であるとする。つまり、予め上記３点のマーカについて、原点からＸ、Ｙ、Ｚ方向への距離を測定しておく。
【００２２】
(２)と(３)は，較正時に取得するデータである。(４)のセンサ配置情報の初期値は必ずしも必要なデータではないが、設定しないと適切な解が得られない場合がある。
【００２３】
これらのデータを入力として，各マーカの世界座標，センサ計測値，そしてセンサ配置情報を基にそのマーカの画像座標の理論値を求め，実測値との誤差の和が最小となるような較正情報（パラメータ）を 最小自乗法を用いて算出する。
なお、他の情報を用いる他の方法を用いてパラメータを求めても構わない。
【００２４】
図１は本実施形態によるセンサ較正装置の概略構成を示すブロック図である。
図１において、１００は演算処理部であり、コンピュータなどの計算機から構成される。演算処理部１００はその内部にＣＰＵ１０１、ＲＡＭ１０２、画像生成装置１０３、システムバス１０４、ディスク装置１０５、入力装置１０６、画像取込装置１０７を備える。
【００２５】
ＣＰＵ１０１は較正プログラムに基づき、較正処理を制御する。ＣＰＵ１０１はシステムバス１０４に接続され、ＲＡＭ１０２、画像生成装置１０３、ディスク装置１０５、入力装置１０６、画像取込装置１０７と相互に通信することが可能である。
【００２６】
ＲＡＭ１０２は、メモリ等の主記憶装置によって実現される。ＲＡＭ１０２は、システムバス１０４を介して、較正プログラムのプログラムコードやプログラムの制御情報、マーカの世界座標および画像座標、本装置が算出した較正情報などを一時的に保持する。
【００２７】
画像生成装置１０３は、グラフィックスカードなどの機器によって実現される。システムバス４を介して、ＣＰＵ１０１上で実行されるプログラムによって生成された画像情報を表示部２００に送出する。
システムバス１０４は、演算処理部１００を構成する各機器が接続され、上記機器が相互に通信するための通信路となる。
【００２８】
ディスク装置１０５は、ハードディスク等の補助記憶装置によって実現される。ディスク装置１０５は、較正プログラムのプログラムコードやプログラムの制御情報、マーカの世界座標および画像座標、本装置が算出した較正情報などを保持する。
【００２９】
入力装置１０６は、各種インタフェース機器によって実現される。演算処理部１００の外部に接続された機器からの信号をデータとして入力し、システムバス１０４を介して、ＲＡＭ１０２にデータを書き込む。
【００３０】
画像取込装置１０７は、video/imageキャプチャカードなどの機器によって実現される。撮像装置３０２から送出される画像を入力し、システムバス１０４を介して、ＲＡＭ１０２に画像データを書き込む。
【００３１】
２００は表示部であり、ＣＲＴモニタ、液晶モニタなどのディスプレイ装置によって実現される。画像生成装置１０３から送出される映像信号を表示し、本装置の使用者に結果を提示するために用いられる。
３００は頭部装着部であり、本較正装置によって較正を行う対象であるセンサが設けられる。頭部装着部３００はセンサを構成するレシーバ３０１と、センサで位置姿勢を測定する対象である撮像装置３０２から構成される。
【００３２】
レシーバ３０１は、例えば磁気センサにおいては、トランスミッタ６００が発生する磁界を計測する機器によって実現される。レシーバ３０１が計測した磁界の値は、センサ出力としてセンサ制御装置５００に送出され、センサ制御部５００によって、３次元位置および姿勢を表すパラメータに変換される。
撮像装置３０２は、ＣＣＤカメラなどの撮像装置によって実現される。撮像装置３０２が撮影する映像信号は画像取込装置１０７に送られる。
【００３３】
操作入力部４００は、キーボード、マウスなどの演算処理部１００を制御するための入力機器によって実現される。操作入力部４００は入力装置１０６に操作信号を送出する。図示しない本装置の使用者は、操作入力部４００を操作することによって、本装置を制御する指令を与える。
【００３４】
センサ制御部５００は、例えば磁気センサにおいては、レシーバ３０１およびトランスミッタ６００を制御し、レシーバ３０１から得た情報をもとに、レシーバ３０１の３次元位置および姿勢情報を算出する。センサ制御部５００によって算出された前記三次元位置および姿勢情報は、入力装置１０６に送出される。
トランスミッタ６００は、例えば磁気センサにおいては、センサ制御部５００がレシーバ３０１の３次元位置および姿勢を算出するために、磁界を発生させる。
【００３５】
本実施形態では、３次元位置姿勢センサとして磁気センサを用いた場合について説明したが、用いるセンサは磁気センサに限られない。例えば光学式センサや、超音波式センサなどを用いてもよく、３次元位置および姿勢を計測することができるセンサであれば、センサの種類は問わない。この場合、レシーバ３０１はセンサの計測対象であり、トランスミッタ６００は、センサ制御部５００がレシーバ３０１の３次元位置および姿勢を算出するときのセンサ座標系原点である。
【００３６】
図２は本実施形態における較正装置の機能構成を示すブロック図である。図２の各部の処理は図１における演算処理部１００内で行われる。
世界座標保持部１１０は、各マーカの世界座標系における座標データを保持しており、データ管理部１１２からの要求に従って、これを出力する。また、世界座標保持部１１０は各マーカの座標データに各々のマーカ固有の情報（マーカの色情報、識別情報）のデータを関連づけて保持している。
【００３７】
データ管理部１１１は、指示部１１５からデータ取得要求を受けると、画像座標取得部１１２からマーカの画像座標および識別情報を入力し、世界座標保持部１１０から前記識別情報に対応するマーカの世界座標を入力し、画像座標、世界座標、識別情報の組をデータリストに追加しこれを保持する。画像座標取得部１１２からマーカの画像座標のみが入力され、識別情報が入力されない場合においては、画像座標のみがデータリストに追加される。また、指示部１１５からデータ削除要求を受けると、データリストからデータを削除する。また、指示部１１５からデータ同定要求を受けると、マーカの世界座標、画像座標、識別情報の組み合わせを変更し、データリストのデータを変更する。また、較正情報算出部１１３からの要求に従って、生成したデータリストを較正情報算出部１１３に出力する。
【００３８】
画像座標取得部１１２は、図１における撮像装置３０２が撮影し、図１における画像取込装置１０７によって獲得された画像（以下現実画像と表記する）中に撮影されているマーカの座標および識別情報を特定し、データ管理部１１１からの要求に従ってこれらの情報をデータ管理部１１１へと出力する。
【００３９】
較正情報算出部１１３は指示部１１５から較正情報算出指示を受けると、データ管理部１１２からデータリストを入力し、これをもとに較正情報を算出し、算出した較正情報を較正情報保持部１１４へ送出する。
【００４０】
較正情報保持部１１４は、較正情報算出部１１３が算出した較正情報を保持し、指示部１１５からの要求に従って、保持する較正情報を出力したり、変更したり、ファイルに保存する。指示部１１５から出力要求を受けると、較正情報を出力する。指示部１１５から較正情報変更要求を受けると、保持する較正情報の値を変更する。指示部１１５からファイル保存要求を受けると、ディスク装置１０５にファイルを作成し、較正情報を前記ファイルに保存する。指示部１１５からファイル読み込み要求を受けると、現在保持する較正情報を破棄し、ディスク装置１０５から指示されたファイルを読み込み、読み込まれた値を新たに現在の較正情報として設定する。指示部１１５からリセット要求を受けると、現在保持する較正情報を破棄し、本装置の起動時に保持していた較正情報のデフォルト値を新たに現在の較正情報として設定する。また、較正情報算出部１１３からの要求に応じて、較正情報保持部１１４が保持している較正情報を較正情報算出部１１３へ送出する。較正情報算出部１１３へ送出された較正情報は、較正情報算出部１１３が較正情報を算出する際に初期値として用いる。
【００４１】
指示部１１５は、本装置の使用者からデータ取得コマンドが入力されたときにはデータ取得要求を、データ削除コマンドが入力されたときにはデータ削除要求を、データ同定コマンドが入力されたときにはデータ同定要求を、それぞれデータ管理部１１１に送出する。また、較正情報算出コマンドが入力されたときには、較正情報算出部１１３に較正情報算出要求を送出する。
【００４２】
本実施形態において、本装置の使用者が指示部１１５に指示を行う際には、図３に示すＧＵＩを用いる。図３におけるＧＵＩは、メインウィンドウ１０００、画像表示領域１０１０、較正情報表示領域１０２０、操作ボタン１０３０およびファイルメニュー１０４０から構成される。また、図４に示すように、ファイルメニュー１０４０は保存サブメニュー１０５０と終了サブメニュー１０６０から構成される。
【００４３】
画像表示領域１０１０には、現実画像が表示される。また、画像座標取得部１１２が特定したマーカの座標位置を示す印および識別情報についても現実画像に重畳して表示される。
【００４４】
図５には、画像座標取得部１１２が特定したマーカの座標位置を示す印および識別情報を、現実画像に重畳して画像表示領域１０１０に表示している様子を示している。図５において楕円形で示されているのは、現実画像中において撮影されているマーカである。また、画像座標取得部１１２が特定したマーカの画像座標を四角形で囲われた×印で示している。さらに、画像座標取得部１１２で特定されたマーカの識別情報について、マーカの名称を表すテキストを重畳して表示している。
【００４５】
マーカの画像座標の位置に印を重畳することによって、本装置の使用者は、画像座標取得部１１２が特定した座標を一目で確認することが可能となる。
また、マーカの識別情報を重畳表示することによって、本装置の使用者は、画像座標取得部１１２が特定したマーカがどのマーカであるのかを、一目で確認することが可能となる。
【００４６】
ここではマーカの画像座標を示すために四角形で囲われた×印を重畳した例を示したが、重畳するものは四角形で囲われた×印に限られない。○、×、□、矢印などの各種記号やアイコンなどを用いてもよく、画像座標取得部１１２が特定したマーカの画像座標を視認することができるものであれば、何でも良い。
【００４７】
また、ここではマーカの識別情報として、名称を表すテキストを重畳した例を示しているが、重畳する識別情報はテキストのみに限られない。アイコンや画像などを用いて識別させても良いし、テキスト、アイコン、画像などの色や、マーカそのものの色を変えて表示することで識別させても良い。本装置の使用者が、現実画像中に撮影されているマーカと、実際のマーカとの対応を確認できるものであれば、何でも良い。
【００４８】
図６では、画像座標取得部１１２においてマーカの画像座標の特定が行われているものの、識別情報の特定が行われておらず、データ管理部１１１においてマーカの世界座標、画像座標、識別情報との組が作成されていない場合における、画像表示領域１０１０の表示例を示している。データ管理部１１１において、マーカの世界座標、画像座標、識別情報との対応付けを行い、組を作成することを、以下「マーカを同定する」と表現する。
【００４９】
図６では、マーカの画像座標に×印を現実画像に重畳している。また図６ではマーカが同定できていないため、その旨を表す「？」のテキストを現実画像に重畳して表示している。画像表示領域１０１０において、マーカの同定が行われている場合には、例えば図５に示すように四角形で囲われた×印とマーカの識別情報を重畳して表示し、マーカの同定が行われていない場合には、例えば図６に示すように表示方法を切り替えるようにする。
【００５０】
マーカの同定が行われている場合と行われていない場合の表示方法については、画像表示領域１０１０全体で切り替える必要はなく、画像表示領域１０１０で撮影されている各マーカについて、マーカ単位で独立に切り替えることが可能である。
【００５１】
また、図７では、現在の較正情報およびレシーバ３０１の位置姿勢情報をもとに、世界座標保持部１１０が保持するマーカの世界座標系での座標を、撮像装置３０２の視点からＣＧによって描画し、画像表示領域１０１０の現実画像に重畳して表示している様子を示している。
【００５２】
本装置による較正が正しく行われていれば、画像座標取得部１１２で特定されたマーカの座標と、現実画像に重畳された当該マーカの世界座標の投影位置とは理論的に一致する。本装置の使用者は、画像座標取得部１１２で特定されたマーカの画像座標と、当該マーカの世界座標の投影位置とのずれ量を見ることによって、本装置によって行われた較正の精度を視覚的に随時確認することが可能となる。
【００５３】
本実施形態では、ＣＧによってマーカの世界座標を描画しているが、ＣＧで描画する対象は、マーカの世界座標に限られない。
例えば、世界座標系が現実画像上でどのように観測されるのかを確認するために、世界座標系を構成する座標軸や平面、世界座標原点などを描画するようにしてもよい。
【００５４】
また、本較正装置の一部を、複合現実感の提示を行う画像表示装置を用いて実現している場合には、複合現実感の提示を行う際に用いる仮想世界や仮想物体をＣＧで描画するようにしてもよい。
【００５５】
画像座標取得部１１２がマーカの座標を特定するために、画像中の色領域を抽出する処理を行っているような場合には、画像表示領域１０１０には、現実画像の代わりに前記色領域抽出処理の結果を示す画像を表示するようにしてもよい。このようにすることで、本装置の使用者が、色領域抽出処理のためのパラメータを容易に調整できるようになる。
【００５６】
本装置の使用者は、指示部１１５に含まれる、マウス等のポインティングデバイスを用いて、画像表示領域１０１０中の画像座標を指定することができる。例えば、画像座標取得部１１２が行うマーカの（現実画像中の）座標の特定を本装置の使用者自身で行うことや、現実画像に撮影された所望のマーカを選択し、そのマーカに対する処理パラメータを変更したり、識別情報を本装置の使用者が手動で与えることが可能となる。
【００５７】
較正情報表示領域１０２０には、較正情報保持部１１４が保持している現在の較正情報を表示する。
操作ボタン１０３０は、本装置の使用者が、ボタンの領域をマウス等のポインティングデバイスで選択することによって、本装置の挙動やＧＵＩを制御するために用いられる。本実施形態においては、本装置の使用者が操作ボタン１０３０を選択すると、データ取得ダイアログ、初期値設定ダイアログ、検出パラメータ設定ダイアログを新たに表示させる。
【００５８】
ファイルメニュー１０４０は、本装置の使用者が、メニューの領域をマウス等のポインティングデバイスで選択することによって、保存サブメニュー１０５０および終了サブメニュー１０６０を表示させる。
【００５９】
保存サブメニュー１０５０は、本装置の使用者がサブメニューの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。保存サブメニュー１０５０が選択されると、指示部１１５はファイル保存コマンドを発行し、較正情報保持部１１４にファイル保存要求を送出する。
【００６０】
終了サブメニュー１０６０は、本装置の使用者がサブメニューの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。終了サブメニュー１０６０が選択されると、本較正装置を終了する。較正情報保持部１１４が未保存の較正情報を保持している場合には、指示部１１５はファイル保存コマンドを発行し、較正情報保持部１１４にファイル保存要求を送出し、較正情報保持部１１４がファイル保存処理を完了するまで待機した後に、本較正装置を終了する。
【００６１】
図８には、データ取得ダイアログの例を示している。図８におけるデータ取得ダイアログ１１００は、データリスト表示領域１１１０、データ取得操作ボタン１１２０、表示画像切替ボタン１１３０、較正情報算出ボタン１１４０、選択データ無効化／有効化ボタン１１５０、選択データ削除ボタン１１６０、選択データ表示領域１１７０、選択データ操作領域１１８０、誤差表示領域１１９０、データ取得ダイアログ終了ボタン１１９５から構成される。
【００６２】
データリスト表示領域１１１０は、これまでに取得したデータリストに対応する現実画像の縮小画像のサムネイルが表示される。本装置の使用者があるサムネイルを選択すると、その画像に対応するデータをデータリストから選び出し、選択データ表示領域１１７０に表示する。また、その画像に対応するデータを選択状態とする。選択データ（選択状態になっているデータ）は、選択データ無効化／有効化ボタン１１５０、選択データ削除ボタン１１６０が押されたときの処理の対象となる。
【００６３】
このとき、図３の画像表示領域１０１０には選択データに対応する現実画像を表示する。データリスト表示領域１１１０は現実画像が縮小表示されており、本装置の使用者が縮小画像から詳細を確認するのは困難であるため、画像表示領域１０１０には縮小しない状態で現実画像を表示する。また、データリストから選び出したマーカの画像座標、世界座標、識別情報についても、画像表示領域１０１０に関する説明で述べた方法により、現実画像に重畳して表示する。
【００６４】
データ取得ボタン１１２０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。データ取得ボタン１１２０が押されると、指示部１１５はデータ取得コマンドを発行し、データ管理部１１１にデータ取得要求を送出する。また、その時点での現実画像をデータリスト表示領域に追加して表示する。
【００６５】
表示画像切替ボタン１１３０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。表示画像切替ボタン１１３０が押されると、画像表示領域１０１０に表示される画像のモードを切り替える。本装置の使用者は、現在取得されている現実画像を表示する「ライブ映像表示モード」と、データリスト表示領域１１１０で現在選択されている現実画像を表示する「取得データ表示モード」とを選択することが可能である。表示画像切替ボタン１１３０が押されると、現在のモードがライブ映像表示モードの時には取得データ表示モードに、現在のモードが取得データ表示モードの時にはライブ映像表示モードに切り替える。
【００６６】
較正情報算出ボタン１１４０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。較正情報算出ボタンが押されると、指示部１１５は較正情報算出コマンドを発行し、較正情報算出部１１３に較正情報算出要求を送出する。
【００６７】
選択データ無効化／有効化ボタン１１５０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。選択データ無効化／有効化ボタン１１５０を押すことによって、データ表示領域１１１０で現在選択されているデータ（撮影画像）が有効であるときには当該データを無効にし、較正情報算出処理の対象から選択データを除外する。現在選択されているデータが無効であるときには、当該データを有効にする。
【００６８】
選択データ削除ボタン１１６０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。選択データ削除ボタン１１６０が押されると、指示部１１５はデータ削除コマンドを発行し、データ管理部１１１にデータ削除指示を送出する。また、現在選択している現実画像のサムネイルをデータリスト表示領域１１１０から消去する。
【００６９】
選択データ表示領域１１７０には、本装置の使用者がデータリスト表示領域１１１０で選択したデータが表示される。
選択データ操作領域１１８０は、本装置の使用者が選択データを操作するために用いられる。図９には、選択データ操作領域１１８０の詳細を示している。
選択データ操作領域１１８０は、マーカ選択ボタン１１８１、マーカ追加ボタン１１８２、マーカ識別情報選択メニュー１１８３、マーカ削除ボタン１１８４から構成される。
【００７０】
マーカ選択ボタン１１８１は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ選択ボタン１１８１が押されると、操作モードを「マーカ選択モード」に設定する。マーカ選択モードが設定された状態で、本装置の使用者が、画像表示領域１０１０で表示されているマーカの座標位置を示す印の近傍を選択すると、当該マーカを選択状態にする。
【００７１】
マーカ追加ボタン１１８２は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ追加ボタン１１８２が押されると、操作モードを「マーカ追加モード」に設定する。マーカ追加モードが設定された状態で、本装置の使用者が、画像表示領域１０１０の任意の部位を選択すると、その画像座標をマーカの座標とする新規のマーカを設定し、データリストに追加する。さらに当該マーカを選択状態にする。
【００７２】
マーカ識別情報選択メニュー１１８３は、本装置の使用者がメニューの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ識別情報選択メニュー１１８３が選択されると、データリストに蓄積されているマーカ識別情報を一覧表示する。本実施形態では、マーカ識別情報として、マーカの名称を示す文字列を用いている。本装置の使用者は、マウス等のポインティングデバイスを用いて、一覧表示されたマーカ識別情報の中から一つを選択する。マーカ識別情報が選択されると、指示部１１５はデータ同定コマンドを発行し、選択した識別情報、選択状態になっているマーカ情報とをデータ管理部１１１に対して、データ同定要求と同時に送出する。
【００７３】
マーカ削除ボタン１１８４は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ削除ボタン１１８４が押されると、現在選択状態になっているマーカをデータリストから削除する。
【００７４】
誤差表示領域１１９０には、較正情報算出部１１３が較正情報を算出した際の較正誤差を表示する。本実施形態においては、データリストの各マーカに対する誤差と、全データの誤差の平均の２種類の較正誤差を表示している。
【００７５】
本装置の使用者は、各マーカに対する較正誤差を確認することによって、較正情報算出部１１３が算出した較正情報の精度が十分でない場合、または較正情報の算出において解が収束しないような場合に、その原因となっているマーカを特定することが容易となる。
【００７６】
また、全データの誤差の平均を確認することによって、選択データ無効化／有効化ボタンを用いて、較正情報の算出に用いるデータの有効もしくは無効にした結果を、評価することができる。
【００７７】
データ取得ダイアログ終了ボタン１１９５は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。データ取得ダイアログ終了ボタン１１９５が選択されると、データ取得ダイアログを閉じる。データ取得ダイアログを閉じても、データリストの内容は保持される。
【００７８】
図１０及び図１９には、初期値設定ダイアログ１２００の例を示している。初期値設定ダイアログはパラメータ種選択タブ１２１０、Local Transform設定領域１２２０、標準設定指定ボタン１２３０、トランスミッタ観測ボタン１２４０、リセットボタン１２５０、初期値設定ダイアログ終了ボタン１２６０及びWorld Transform設定領域１２７０（図１９）から構成される。
【００７９】
パラメータ種選択タブ１２１０は、本装置の使用者がタブの領域をマウス等のポインティングデバイスで選択することで、初期値を設定する較正情報の種別を選択する。タブの領域には”Local Transform”と”World Transform”の２種類が存在し、”Local Transform”の領域を選択すると、較正情報モードを、センサの計測値を撮像部の位置姿勢に変換するための第１のパラメータ(Local Transform)の設定を行う”Local Transform mode”に設定する。”World Transform”の領域を選択すると、較正情報モードを、センサ座標系における位置姿勢を世界座標系における位置姿勢に変換するための第２のパラメータ(World Transform)の設定を行う”World Transform mode”に設定する。図１０には、Local Transform modeの状態が示されている。
【００８０】
Local Transform設定領域１２２０は、較正情報モードがLocal Transform modeの際表示される。Local Transform設定領域１２２０では、本装置の使用者が、ボタン、スライダ、スピンボタン、キーボードからの数値入力などの手段で、Local Transformの設定を行うことができる。本実施形態では、以下の方法を単独または複数を併用することによって較正情報のパラメータの設定を行っている。
【００８１】
第１に、撮像装置３０２から見たレシーバ３０１の位置と回転軸を定義するベクトルおよびその軸周りの回転角を指定する。
第２に、撮像装置３０２から見たレシーバ３０１の位置とオイラー角を指定する。
第３に、撮像装置３０２から見たレシーバ３０１のＸ、Ｙ、Ｚ軸の各軸周りの回転角およびレシーバ３０１から見た撮像装置３０２のＸ、Ｙ、Ｚ軸の各軸周りの回転角を指定する。
較正情報のパラメータの設定が行われると、指示部１１５は較正情報変更コマンドを発行し、較正情報保持部１１４へ較正情報変更要求を送出する。
【００８２】
標準設定指定ボタン１２３０は、較正モードがLocal Transform modeの時に表示され、本装置の使用者が標準設定指定ボタン１２３０の領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。標準設定指定ボタン１２３０が指定されると、指示部１１５は較正情報読み込みコマンドを発行し、較正情報保持部１１４へ較正情報読み込み要求を送出する。その結果、標準的なLocal Transformの値が設定される。
【００８３】
トランスミッタ観測ボタン１２４０は、較正モードがLocal Transform modeの時に表示され、本装置の使用者がトランスミッタ観測ボタン１２４０の領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。
トランスミッタ観測ボタン１２４０を選択することにより、センサ計測値を利用してLocal Transformの大まかな値を自動算出することができる。
【００８４】
まず、図１４（ａ）に示すように撮影画像のほぼ中心にセンサのトランスミッタ６００が撮像されるように撮像装置３０２の位置姿勢を調整した後に，トランスミッタ観測ボタン１２４０をクリックする。その時点のセンサ計測値に基づいてLocal Transformの概略値が算出される。
【００８５】
トランスミッタ観測ボタン１２４０がクリックされると、指示部１１５は較正情報算出コマンドを発行し、較正情報算出部１１３に較正情報算出要求を送出する。このとき、較正情報算出部１１３は、データ管理部１１１から現在のセンサ計測値を入力し、センサ計測値と、「トランスミッタ６００が撮影画像の中心付近に撮像されている」という情報に基づいて、撮像装置３０２とレシーバ３０１間の較正情報（Local Transform）を例えば以下に示す手順によって算出する。
【００８６】
今、レシーバ３０１と撮像装置３０２との間の距離を十分に無視できる、すなわち、レシーバ３０１と撮像装置３０２の位置が等しいと仮定すると、センサ座標系における撮像装置３０２の概算位置ＰSC＝［ｘSCｙSCｚSC］Tを、現在のセンサ計測値から得ることができる。ここで、撮像装置３０２はセンサ座標系の原点であるトランスミッタ６００の方向を向いているので、撮像装置座標系のＺ軸（撮像装置３０２の原点から撮像面の垂直後ろ方向に伸びる軸）を表すベクトルＶzを、ＰSCを正規化した単位ベクトルとして得ることができる。次に、Ｖzとは異なる適当な単位ベクトルＵとＶzとの外積を撮像装置座標系のＹ軸ＶYとし、さらに、ＶYとＶZとの外積を撮像装置座標系のＸ軸ＶXとする。このようにして得られたＶZ，ＶY，ＶXを元に、センサ座標系における撮像装置３０２の位置及び姿勢ＭSCを次式のように決定する。
【００８７】
【数１】
2004151085.tif 000003
【００８８】
なお、ここでは、「ある座標系Ａにおける対象Ｂの位置及び姿勢」を、「対象Ｂが定義する座標系Ｂから座標系Ａへの座標変換を行う４×４の行列（モデリング変換行列）ＭAB」によって表現している。この行列から位置と姿勢を表す６値のパラメータへの変換とその逆変換は、３次元幾何の基本的事項であるので、詳細な説明は省略する。
次に、求めるべきLocal Transform（レシーバ３０１の位置及び姿勢を撮像装置３０２の位置及び姿勢に変換する行列）をＭRC、センサ座標系におけるレシーバ３０１の位置及び姿勢（現在のセンサ計測値）をＭSRと表記すると、
ＭSC＝ＭSR・ＭRC                （式２）
の関係が成り立つ。式２より、
ＭRC＝ＭSR-1・ＭSC              （式３）
であり、かつ，ＭSRはセンサ計測値として得られているので、式１で得たＭSCを用いることで、式３よりLocal Transformの概略値を得ることができる。
【００８９】
なお、Local Transformの概略値の算出方法はこれに限ったものではない。例えば、センサ座標系における撮像装置３０２の姿勢ＲSCをＲSC＝［ＶZ ＶY ＶX］として求め、センサ計測値として得られるセンサ座標系におけるレシーバ３０１の姿勢ＲSRを用いて、Local Transformを表す回転行列ＲRC＝ＲSR-1・ＲSCを求めても良い。
【００９０】
算出された概略値を用いてトランスミッタ６００の位置姿勢の理論値を求め、理論値に応じてトランスミッタ６００の仮想画像を生成するとともに、撮影画像上の理論値に応じた画像位置にトランスミッタ６００の仮想画像を重畳し表示する（図１４（ｂ））。
【００９１】
トランスミッタ観測ボタン１２４０を用いて設定したLocal Transformは撮像装置３０２のZ軸方向の回転角が不定となるので、azimuth (z-axis)スライダーバー（パラメータ設定領域１２２０）でこのパラメータ（Local TransformのZ軸の姿勢成分）を大まかに調整する。そして、その調整結果に応じてトランスミッタ６００の仮想画像をリアルタイムに更新する（図１４（ｃ））。なお、他のパラメータを調整することも可能である。
【００９２】
パラメータ種選択タブ１２１０の”World Transform”が選択されると、較正情報モードがWorld Transform modeとなり、Local Transform設定領域１２２０の代わりにWorld Transform設定領域１２７０が表示される（図１９）。
【００９３】
World Transform設定領域１２７０では、本装置の使用者が、ボタン、スライダ、スピンボタン、キーボードからの数値入力などの手段で、World Transformの設定を行うことができる。本実施形態では、以下の方法を単独または複数を併用することによって較正情報のパラメータの設定を行っている。
【００９４】
第１に、世界座標系におけるトランスミッタ６００の位置と回転軸を定義するベクトルおよびその軸周りの回転角を指定する。
第２に、世界座標系におけるトランスミッタ６００の位置とオイラー角を指定する。
第３に、世界座標系におけるトランスミッタ６００のＸ、Ｙ、Ｚ軸の各軸周りの回転角およびトランスミッタ６００から見た世界座標系の原点のＸ、Ｙ、Ｚ軸の各軸周りの回転角を指定する。
較正情報のパラメータの設定が行われると、指示部１１５は較正情報変更コマンドを発行し、較正情報保持部１１４へ較正情報変更要求を送出する。
【００９５】
リセットボタン１２５０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。リセットボタン１２５０が指定されると、指示部１１５はリセットコマンドを発行し、較正情報保持部１１４にリセット要求を送出する。
【００９６】
初期値設定ダイアログ終了ボタン１２６０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。初期値設定ダイアログ終了ボタン１２６０が選択されると、初期値設定ダイアログを閉じる。初期値設定ダイアログを閉じても、較正情報は保持される。
【００９７】
このように、Local Transform modeにおいて、トランスミッタ観測ボタン１２４０を選択することにより、Local Transformの大まかな値を、センサ計測値を利用して特別な準備を必要とせず、しかも簡単に自動算出することができる。トランスミッタは本システムにおいて必要な構成であるので、ユーザは本処理を行うために特別な処理を行う必要がない。
【００９８】
図１１、図１２には、マーカ検出パラメータ設定ダイアログ１３００の例を示している。マーカ検出パラメータ設定ダイアログ１３００はパラメータ種選択タブ１３１０、マーカ検出パラメータ設定領域１３２０、マーカ検出結果表示ボタン１３３０、マーカ検出パラメータリセットボタン１３４０、マーカ検出ボタン１３５０、マーカ同定手段切替ボタン１３６０、マーカ同定パラメータ設定領域１３７０、マーカ同定パラメータリセットボタン１３８０及びマーカ検出パラメータ設定ダイアログ終了ボタン１３９０から構成される。
【００９９】
パラメータ種選択タブ１３１０は、本装置の使用者がタブの領域をマウス等のポインティングデバイスで選択することで、マーカ検出パラメータ設定画面またはマーカ同定パラメータ設定画面のいずれかを選択し、表示させる。
【０１００】
マーカ検出パラメータ設定領域１３２０は、パラメータ種選択タブ１３１０において、マーカ検出パラメータ設定画面が選択されているときに表示される。マーカ検出パラメータ設定領域１３２０では、本装置の使用者が、スライダや数値入力ボックスなどの手段を用いて、マーカを検出する色のしきい値およびマーカとして認識する色領域の画素数の最小値を設定する。色のしきい値は、ある画素の各色成分の値が当該しきい値を上回っている場合に、その画素をマーカ候補とみなすために用いられる。
【０１０１】
本実施形態では赤、緑、青について各色の輝度値を示すＲ、Ｇ、Ｂについてしきい値を設定しているが、例えば画素のＹ、Ｃｒ、Ｃｂ成分にしきい値を設定するようにしてもよい。色領域の画素数の最小値については、色領域の画素数が設定した最小値よりも小さい場合には、当該領域をマーカとして認識しないようにするために用いられる。本実施形態においては、色領域の画素数の最小値のみを定めるようにしているが、最大値についても同時に定め、マーカ候補とみなす画素数がある範囲内に納まるようにしてもよい。
【０１０２】
マーカ検出結果表示ボタン１３３０は、パラメータ種選択タブ１３１０において、マーカ検出パラメータ設定画面が選択されているときに表示される。マーカ検出結果表示ボタン１３３０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ検出結果表示ボタン１３３０が指定されると、現実画像表示モード色抽出結果画像表示モードとを切り替える。現実画像表示モードでは、画像表示領域１０１０に現実画像を表示する。色抽出結果画像表示モードでは、画像表示領域１０１０に色抽出結果画像を表示する。図１３に示される色抽出結果画像では、実写画像中で抽出された色領域のみを表示している。
【０１０３】
マーカ検出パラメータリセットボタン１３４０は、パラメータ種選択タブ１３１０において、マーカ検出パラメータ設定画面が選択されているときに表示される。マーカ検出パラメータリセットボタン１３４０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ検出パラメータリセットボタン１３４０が指定されると、現在保持しているマーカ検出パラメータを破棄し、本装置を起動したときに設定されるマーカ検出パラメータのデフォルト値を現在のマーカ検出パラメータに設定する。
【０１０４】
マーカ検出停止ボタン１３５０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ検出停止ボタン１３５０が選択されると、マーカ検出処理を停止する。
【０１０５】
マーカ同定手段切替ボタン１３６０は、パラメータ種選択タブ１３１０において、マーカ同定パラメータ設定画面が選択されているときに表示される。マーカ同定手段切替ボタン１３６０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ同定手段切替ボタン１３６０が選択されると、センサ計測値を利用したマーカ同定機能の有効化・無効化を切り替える。前記マーカ同定機能は、現在のセンサ計測値および較正情報から、検出されたマーカの画像座標と、世界座標保持部１１０が保持するマーカの世界座標を撮像装置３０２の撮像面に投影した座標との距離を算出し、前記距離の最小値が最大許容値以下である場合には、自動的にマーカの同定を行う機能である。
【０１０６】
マーカ同定パラメータ設定領域１３７０は、パラメータ種選択タブ１３１０において、マーカ同定パラメータ設定画面が選択されているときに表示される。マーカ同定パラメータ設定領域１３７０では、本装置の使用者が、スライダや数値入力ボックスなどの手段を用いて、マーカを同定するための最大許容距離を設定する。
【０１０７】
マーカ同定パラメータリセットボタン１３８０は、パラメータ種選択タブ１３１０において、マーカ同定パラメータ設定画面が選択されているときに表示される。マーカ同定パラメータリセットボタン１３８０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。マーカ同定パラメータリセットボタン１３８０が指定されると、現在保持しているマーカ同定パラメータを破棄し、本装置を起動したときに設定されるマーカ同定パラメータのデフォルト値を現在のマーカ同定パラメータに設定する。
【０１０８】
検出パラメータ設定ダイアログ終了ボタン１３９０は、本装置の使用者がボタンの領域をマウス等のポインティングデバイスで選択することで、本装置に指示を与える。検出パラメータ設定ダイアログ終了ボタン１３９０が選択されると、検出パラメータ設定ダイアログ１３９０を閉じる。検出パラメータ設定ダイアログを閉じても、マーカ検出パラメータおよびマーカ同定パラメータは保持される。
【０１０９】
図１５は、本実施形態のセンサ較正装置が行う処理のフローチャートである。なお、同フローチャートに従った処理を実現するプログラムコードは、本実施形態の装置内のディスク装置１０５やＲＡＭ１０２などの記憶装置内に格納され、ＣＰＵ１０１により読み出され、実行される。
【０１１０】
ステップＳ０００において、本実施形態のセンサ較正装置を起動する。
ステップＳ１００において、指示部１１５は、本装置の使用者からデータ取得コマンドが入力されたか否かの判定を行う。データ取得コマンドが入力されている場合には、ステップＳ１１０へと処理を移行させる。
ステップＳ１１０において、データ管理部１１１は、センサ制御部５００から現在のレシーバ３０１の位置姿勢の計測値を入力する。
【０１１１】
ステップＳ１２０において、データ管理部１１１は、撮像装置３０２が撮像した撮像画像上におけるマーカの識別情報及び画像座標を、画像座標取得部１１２から入力する。この入力は、当該撮像画像上の複数のマーカが撮像されている場合には、それら各々のマーカに対して行われる。
ステップＳ１３０において、データ管理部１１１は、ステップＳ１２０で得られた識別情報に対応するマーカの世界座標を世界座標保持部１１０から入力する。
ステップＳ１４０において、データ管理部１１１は、検出されたマーカ毎に、入力したデータをデータリストに追加する。
【０１１２】
ステップＳ２００において、指示部１１５は、本装置の使用者からデータリストの編集操作が入力されたか否かの判定を行う。データリストの編集操作が入力されている場合には、ステップＳ２１０の処理に移行させる。
【０１１３】
ステップＳ２１０において、指示部１１５は、本装置の使用者から入力したデータリストの編集操作に対応したコマンドを発行し、データリストの編集を行う。例えばデータリストの編集には、データリストの要素を選択する、データリストから選択要素を削除する、データリストに新規のマーカを追加する、データリストから既存のマーカを削除する、データリストの既存のマーカに識別情報を与え同定するという操作が含まれる。
【０１１４】
ステップＳ３００では、較正情報算出部１１３によって、現在までに取得されたデータリストが、較正情報を算出するに足るだけの情報を有しているかどうかの判定が行われる。データリストが条件を満たしていない場合には、再びステップＳ１００へと戻り、データ取得コマンドの入力を待つ。一方、データリストが較正情報算出の条件を満たしている場合には、ステップＳ４００へと処理を移行させる。較正情報算出の条件としては、例えば、異なる３点以上のマーカに関するデータが得られていること、複数の視点位置においてデータの取得が行われていること、及びデータ総数が６以上であること、を条件とする。ただし、入力データの多様性が増すほどに導出される較正情報の精度は向上するので、より多くのデータを要求するように条件を設定してもよい。
【０１１５】
ステップＳ４００では、本装置の使用者から較正情報算出コマンドが入力されたか否かの判定を行う。較正情報算出コマンドが入力されている場合には、ステップＳ４１０へと処理を移行させ、入力されていない場合には、再びステップＳ１００へと戻り、データ取得コマンドの入力を待つ。
【０１１６】
ステップＳ４１０では、較正情報算出部１１３によって、較正情報の算出処理が行われる。
ステップＳ５００では、指示部１１５は、本装置の使用者から較正情報の編集操作が入力されたか否かの判定を行う。較正情報の編集操作が入力されている場合には、ステップＳ５１０の処理に移行させる。
【０１１７】
ステップＳ５１０において、指示部１１５は、本装置の使用者から入力した較正情報の編集操作に対応したコマンドを発行し、較正情報の編集を行う。例えば較正情報の編集には、較正情報のパラメータの変更、較正情報の読み込み、較正情報のリセットという操作が含まれる。
【０１１８】
ステップＳ６００では、指示部１１５は、本装置の使用者から較正情報の保存操作が入力されたか否かの判定を行う。較正情報の保存操作が入力されている場合には、ステップＳ６１０の処理に移行させる。
ステップＳ６１０では、指示部１１５は、較正情報保持部１１４にファイル保存要求を送出し、現在保持している較正情報をディスク装置１０５に出力する。
【０１１９】
ステップＳ７００では、指示部１１５は、本装置の使用者から、本装置の終了操作が入力されたか否かの判定を行う。較正情報の終了操作が入力されている場合には、ステップＳ８００の処理に移行させる。入力されていない場合には、再びステップＳ１００へ戻る。
ステップＳ８００では、本装置を終了するための処理を行う。
【０１２０】
図１６は、本実施形態のセンサ較正装置の使用者が、本装置を用いてセンサの較正を行うための標準的な操作のフローチャートである。
ステップＳ１０００では、本装置の使用者は、本実施形態のセンサ較正装置を起動する。
【０１２１】
ステップＳ１１００では、本装置の使用者は、撮像装置３０２を用いてマーカを撮像する。本装置の使用者は、本装置の画像座標取得部１１２がマーカの画像座標および識別情報が正しく特定しているか否かを確認する。正しく特定できている場合にはステップＳ１２００へ進み、特定できてない場合には、ステップＳ１１１０へ進む。
【０１２２】
ステップＳ１１１０では、本装置の使用者は、例えばマーカ検出パラメータ設定ダイアログ１３００を用いて、指示部１１５にマーカ検出パラメータおよびマーカ同定パラメータの調整を行うための指示を与える。
ステップＳ１２００では、本装置の使用者は、例えばデータ取得ボタン１１２０を用いて、指示部１１５にデータ取得コマンドを発行させる。
【０１２３】
ステップＳ１３００では、本装置の使用者は、取得したデータリストの各データが良好であるか否かを確認する。データが良好である場合にはステップＳ１４００へ進み、良好でない場合には、状況に応じて、ステップＳ１３１０へ進む、またはステップＳ１１００へ戻る。
【０１２４】
ステップＳ１３１０では、本装置の使用者は、例えばデータ取得ダイアログ１１００を用いて、指示部１１５にデータリストの編集作業を行うための指示を与える。
ステップＳ１４００では、本装置の使用者は、例えば較正情報算出ボタン１１４０を用いて、指示部１１５に較正情報算出コマンドを発行させる。
【０１２５】
ステップＳ１５００では、本装置の使用者は、較正情報算出部１１３が、正しく較正情報を算出したか否かを確認する。正しく算出された場合にはステップＳ１６００へ進み、算出されていない場合には、ステップＳ１１００へ戻る。
ステップＳ１６００では、本装置の使用者は、較正情報算出部１１３が算出した較正情報が良好であるか否かを確認する。較正情報が良好である場合には、ステップＳ１７００へ進み、良好でない場合には、状況に応じてステップＳ１６１０へ進むか、ステップＳ１１００へ戻る。
【０１２６】
ステップＳ１６１０では、本装置の使用者は、例えば初期値設定ダイアログ１２００を用いて、指示部１１５に較正情報の編集を行うための指示を与える。
ステップＳ１７００では、本装置の使用者は、例えば保存サブメニュー１０５０を用いて、指示部１１５にファイル保存コマンドを発行させる。
ステップＳ１８００では、本装置の使用者は、例えば終了サブメニュー１０６０を用いて、本装置を終了させる。
【０１２７】
＜第２の実施形態＞
図１７は本発明によるセンサ較正装置の第２の実施形態における概略構成を示すブロック図である。第１の実施形態では表示部２００は頭部装着部３００の外部に設けられていた。第２の実施形態では、表示部２００は頭部装着部３００に含まれる。このような構成は例えばＨＭＤのように、本装置の使用者が頭部に装着することができる表示装置を表示部２００として用いることよって実現される。第２の実施形態では、頭部に装着可能な表示装置を用いることにより、本装置の使用者が、複合現実感を提示する画像表示装置を使用する条件と同一の条件下で較正を行うことが可能となる。
【０１２８】
＜第３の実施形態＞
図１８は本発明によるセンサ較正装置の第３の実施形態における概略構成を示すブロック図である。第３の実施形態では、表示部２００は第１の実施形態における、頭部装着部３００の外部に備えられる表示装置および、第２の実施形態における、本装置の使用者が頭部に装着する表示装置の両方から構成される。例えばＨＭＤは、ＣＲＴモニタや液晶モニタといった通常のディスプレイ装置と比較して、一般的に解像度が低い。このような表示装置を用いた場合、本装置の使用者は、第１の実施形態で説明したＧＵＩを用いて本装置に指示を与えることが困難となることが考えられる。このような場合、例えば本装置を二人で使用することが考えられる。
【０１２９】
すなわち、本装置の第一の使用者が見る、頭部装着部３００の外部に備えられる表示装置（第１の実施形態における表示部）には、第１の実施形態で説明したＧＵＩを表示し、本装置の第二の使用者が頭部に装着する表示装置（第２の実施形態における表示部）には、第１の実施形態で説明したＧＵＩを除いた、現実画像および現実画像に各種情報やＣＧを重畳した合成画像、マーカの色抽出画像などを表示する。本装置の操作は第一の使用者が行い、撮像装置３０２およびレシーバ３０１の位置姿勢の調整は第二の使用者が行うようにすることで、効率的に較正作業を行うことが可能である。
【０１３０】
［他の実施形態］
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には先に説明した（図１５に示す）フローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１３３】
【図１】本発明の第１の実施形態に係る較正装置の概略構成を説明するブロック図である。
【図２】第１の実施形態における較正装置の機能構成を説明するブロック図である。
【図３】第１の実施形態に係る較正装置が呈示するＧＵＩについて説明する図である。
【図４】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、ファイルメニューについて説明する図である。
【図５】第１の実施形態に係る較正装置が呈示するＧＵＩで、現実画像にマーカの画像座標を示す印および付加情報を重畳して表示する様子を説明する図である。
【図６】第１の実施形態に係る較正装置が呈示するＧＵＩで、マーカの同定が行われていない場合に、現実画像にマーカの画像座標を示す印および付加情報を重畳して表示する様子を説明する図である。
【図７】第１の実施形態に係る較正装置が呈示するＧＵＩで、マーカの世界座標をＣＧで描画し、現実画像に重畳して表示する様子を説明する図である。
【図８】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、データ取得ダイアログについて説明する図である。
【図９】図８のダイアログにおける選択データ操作領域について説明する図である。
【図１０】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、初期値設定ダイアログについて説明する図である。
【図１１】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、検出パラメータ設定ダイアログについて説明する図である。
【図１２】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、検出パラメータ設定ダイアログについて説明する図である。
【図１３】第１の実施形態に係る較正装置において、図３のＧＵＩの画像表示領域に色抽出結果画像を表示する様子を説明する図である。
【図１４】第１の実施形態に係る較正装置において、センサ計測値を利用してLocal Transformの大まかな値を自動算出する手順を説明する図である。
【図１５】第１の実施形態に係るセンサ較正装置の処理手順を示すフローチャートである。
【図１６】第１の実施形態において、センサ較正装置の使用者がセンサ較正装置を使用する手順を示すフローチャートである。
【図１７】第２の実施形態に係るセンサ較正装置の概略構成を説明するブロック図である。
【図１８】第３の実施形態に係るセンサ較正装置の概略構成を説明するブロック図である。
【図１９】第１の実施形態に係る較正装置が呈示するＧＵＩのうち、初期値設定ダイアログについて説明する図である。
【図１】
2004151085.tif 000004
【図２】
2004151085.tif 000005
【図３】
2004151085.tif 000006
【図４】
2004151085.tif 000007
【図５】
2004151085.tif 000008
【図６】
2004151085.tif 000009
【図７】
2004151085.tif 000010
【図８】
2004151085.tif 000011
【図９】
2004151085.tif 000012
【図１０】
2004151085.tif 000013
【図１１】
2004151085.tif 000014
【図１２】
2004151085.tif 000015
【図１３】
2004151085.tif 000016
【図１４】
2004151085.tif 000017
【図１５】
2004151085.tif 000018
【図１６】
2004151085.tif 000019
【図１７】
2004151085.tif 000020
【図１８】
2004151085.tif 000021
【図１９】
2004151085.tif 000022