説明

情報処理方法及び情報処理装置

【課題】 複数の撮像装置をそれぞれ処理装置に接続した状態で、第1の撮像装置の位置姿勢情報計測値を第2の撮像装置の位置姿勢に変換するための較正情報をより簡便に取得することを目的とする。
【解決手段】 マスタ演算処理装置300は、ビデオカメラ120が撮影したランドマークを含む撮影画像を入力し、ビデオカメラ120の位置姿勢を算出し、スレーブ演算処理装置1300に送信する。スレーブ演算処理装置1300は、ビデオカメラ1120で撮像された画像上のランドマークの識別番号及び画像座標を取得し、(画像座標−世界座標−マスタ撮像装置位置姿勢)の組としてデータリストを生成する。生成したデータリストより較正情報算出部1340は、画像座標の理論値と実際の観測値との誤差が最小となるようにビデオカメラ120からビデオカメラ1120への位置姿勢の較正情報を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法及び情報処理装置に関し、特に、複数の撮像装置の位置姿勢を取得するために、撮像装置間の位置姿勢変換情報の較正を行う情報処理方法及び情報処理装置に関する。
【背景技術】
【0002】
近年、現実空間と仮想空間の繋ぎ目のない結合を目的とした、複合現実感に関する研究が盛んに行われている。複合現実感の提示を行う画像表示装置は、ビデオカメラなどの撮像装置によって撮影された現実空間の画像に、仮想空間(例えばコンピュータ・グラフィックスにより描画された仮想物体や文字情報等)の画像を重畳表示することで実現される。
【0003】
このような画像表示装置の応用としては、患者の体表面に体内の様子を重畳表示する手術支援や、現実空間に浮遊する仮想の敵と戦う複合現実感ゲーム等、今までのバーチャルリアリティとは異なった新たな分野が期待されている。
【0004】
これらの応用に対して共通に要求されるのは、現実空間と仮想空間の間の位置合わせをいかに正確に行うかということであり、従来から多くの取り組みが行われてきた。
【0005】
また立体感のある映像を提示するため、左右のそれぞれの視点に対応する現実空間の画像をステレオカメラで撮影し、それぞれに対応する仮想空間の画像を重畳表示するという取り組みもされている。
【0006】
この場合、左右の視点から見たそれぞれの画像を生成するため、負荷が重く処理時間が遅くなってしまうのを防ぐため、それぞれの処理演算部を独立させるという取り組みもされている。その場合それぞれの処理演算部として、それぞれ独立した汎用コンピュータが利用されることがよく行われている。
【0007】
また、このようなシステムには、HMDとも呼ばれる撮像装置と表示装置を内蔵した頭部装着型のデバイスがよく用いられる。
【0008】
複合現実感における位置合わせの問題は、現実空間に設定した世界座標系(以後、単に世界座標系と呼ぶ)における、撮像装置の3次元位置姿勢を求める問題に帰結される。これらの問題を解決する方法として、磁気式センサや超音波式センサなどの3次元位置姿勢センサを利用することが一般的に行われている。
【0009】
3次元位置姿勢センサが出力する出力値は、センサ座標系における測点の位置姿勢を撮像装置の位置姿勢に変換する座標変換と、センサ座標系における変換後の位置姿勢を世界座標系における位置姿勢に変換する座標変換によって、変換されて用いられる。
【0010】
左右の撮像装置における片方の撮像装置の位置姿勢は上記のように求められるが、もう一方の撮像装置の位置姿勢は、2つの撮像装置の位置関係の変換情報によって位置姿勢を変換する事で求める。
【0011】
正常な立体感を保つため、2つ撮像装置の位置姿勢を別々に求めて利用する事は望ましくなく、この変換は常に一定の変換情報を用いて行われる必要があり、予め較正された値が用いられる。
【0012】
図4は、ユーザに複合現実感の提示を行う一般的な画像表示装置の構成を示す図である。
【0013】
大まかなブロックとしては、位置姿勢センサ130、マスタ演算処理装置170、スレーブ演算処理装置1170、頭部装着装置100によって構成されている。位置姿勢センサ130は、例えば、磁気式センサであるPolhemus社のFASTRAKにより構成される。マスタ演算処理装置170、スレーブ演算処理装置1170、それぞれは汎用コンピュータによって構成される。頭部装着装置100は、ステレオビデオシースルーHMDであり、磁気センサーであるFASTRAKのレシーバが固定されている。
【0014】
頭部装着装置100には、マスタ表示部110、マスタビデオカメラ120、スレーブ表示部1110、スレーブビデオカメラ1120が固定されている。ユーザが、マスタ表示部110とスレーブ表示部1110をユーザのそれぞれの眼前に位置するように頭部装着装置100を装着すると、ユーザのそれぞれの眼前の情景がマスタビデオカメラ120とスレーブビデオカメラ1120によって撮像される。
【0015】
従って、仮にマスタビデオカメラ120が撮像した画像を、マスタ表示部110に表示したとする。すると、ユーザは、頭部装着装置100を装着していなければ裸眼で観察するであろう眼前の情景を、マスタビデオカメラ120とマスタ表示部110を介して観察することになる。
【0016】
位置姿勢センサ130は、頭部装着装置100に固定された測点のセンサ座標系における位置姿勢を計測する装置である。
【0017】
位置姿勢センサ30は、例えば、レシーバ131、センサ制御部132、トランスミッタ133よりなる磁気式センサであるPolhemus社のFASTRAKによって構成される。レシーバ131は測点として頭部装着装置100に固定されており、センサ制御部132は、トランスミッタ133の位置姿勢を基準としたセンサ座標系におけるレシーバ131の位置姿勢を計測し、計測値を出力する。
【0018】
一方、マスタ演算処理装置170は、マスタ位置姿勢情報変換部140、メモリ150、画像生成部160、位置姿勢情報送信部180からなり、例えば1台の汎用コンピュータにより構成することが可能である。
【0019】
マスタ位置姿勢情報変換部140は、メモリ150が保持する較正情報に従って、位置姿勢センサ130より入力した計測値に変換を加え、世界座標系におけるビデオカメラ120の位置姿勢を算出しこれを位置姿勢情報として出力する。位置姿勢送信部180は、位置姿勢情報変換部140より入力された位置姿勢情報をスレーブ演算処理装置1170の位置姿勢情報受信部1180に送信する。
【0020】
画像生成部160は、位置姿勢情報変換部140より入力された位置姿勢情報に基づいて仮想画像を生成し、これをビデオカメラ120が撮像した実写画像に重畳して出力する。表示部110は、画像生成部160から入力された画像をこれを表示画面に表示する。
【0021】
一方、スレーブマスタ演算処理装置1170は、スレーブ位置姿勢情報変換部1140、メモリ1150、画像生成部1160、位置姿勢情報受信部1180からなり、例えば1台の汎用コンピュータにより構成することが可能である。
【0022】
位置姿勢情報受信部1180は、マスタ演算処理装置170の位置姿勢情報送信部180から送信された位置姿勢情報を受け取り、スレーブ位置姿勢情報変換部1140に出力する。
【0023】
スレーブ位置姿勢情報変換部1140は、メモリ1150が保持する較正情報に従って、位置姿勢送信部180より入力されたマスタの位置姿勢情報に変換を加え、世界座標系におけるビデオカメラ1120の位置姿勢を算出する。そして、これを位置姿勢情報として出力する。
【0024】
画像生成部1160は、スレーブ位置姿勢情報変換部1140より入力された位置姿勢情報に基づいて仮想画像を生成し、これをビデオカメラ1120が撮像した実写画像に重畳して出力する。表示部1110は、画像生成部1160から入力された画像を表示画面に表示する。
【0025】
以上の構成により、ユーザは、眼前の現実空間に仮想物体が立体的に存在するかのごとき感覚を得ることになる。
【0026】
次に、図5を用いて、スレーブ位置姿勢情報変換部1140において、世界座標系におけるスレーブビデオカメラ1120の位置姿勢を算出する方法を説明する。
【0027】
図5において、世界座標系200におけるマスタビデオカメラ120の位置姿勢をMMWとし、スレーブビデオカメラ1120の位置姿勢をMSWとし、マスタビデオカメラ120の座標系からみたスレーブビデオカメラ1120の位置姿勢をMSMとする。なお、座標系Aにおける物体Bの位置姿勢を、座標系Aから座標系Bへのビューイング変換行列MBA(4×4)で表記するものとする。
【0028】
このときMSWは、
SW=MSM・MMW (式A)
によって示すことができる。
【0029】
このうち、MMWがマスタ位置姿勢情報変換部140で算出され、位置姿勢情報送信部180と位置姿勢受信部1180を経てスレーブ位置姿勢情報変換部1140へ入力される。また、MSWがスレーブ位置姿勢情報変換部1140から画像生成部1160へ出力される。MSMが、MMWをMSWに変換するために必要な較正情報に相当する。スレーブ位置姿勢情報変換部1140は、位置姿勢情報受信部1180から入力されるMMWと、メモリ1150に保持されているMSMとを用いて、(式A)に基づいてMSWを算出し、これを画像生成部1160へ出力する。
【0030】
ユーザが自然な立体感を感じられる映像を見るためには、マスタビデオカメラ120とスレーブビデオカメラ1120間の正確な位置合わせを行うことが必要であり、何らかの手段によってメモリ1150に正確な較正情報が設定される必要がある。正確な較正情報が与えられてはじめて、立体感のある映像を見る事ができる。
【0031】
尚、メモリ1150における較正情報は、必ずしもビューイング変換行列である必要はなく、一方の座標系からみたもう一方の座標系の位置及び姿勢が定義できる情報であれば、いずれの形態をとってもよい。
【0032】
例えば、位置を記述する3パラメータと、姿勢をオイラー角によって表現する3パラメータの計6パラメータで位置姿勢を表現してもよい。また、姿勢に関しては、回転軸を定義する3値のベクトルとその軸まわりの回転角という4パラメータで表現してもよいし、回転軸を定義するベクトルの大きさによって回転角を表現するような3パラメータによって表現してもよい。また、それらの逆変換を表わすパラメータによって表現しても良い。ただし、いずれの場合も、3次元空間中における物体の位置及び姿勢は、位置に3自由度、姿勢に3自由度の計6自由度を有しているのみである。よって、本画像表示装置の較正に必要な未知パラメータ数は、マスタビデオカメラの座標系120からスレーブカメラの座標系1120への変換に必要な6パラメータとなる。
【0033】
較正情報を設定する公知の方法の一つとして、次の方法がある。即ち、ユーザ又はオペレータが、入力手段(不図示)を介して、メモリ1150に格納されたMSMを定義する6パラメータ(又はそれに等価な6以上のパラメータ)を対話的に変更し、正確な位置合わせが達成されるまで調整を試行錯誤的に行う方法がある。
【0034】
また、マスタ演算処理装置170及び、スレーブ演算処理装置1170が1台の汎用コンピュータ内に構築されている場合であれば、マスタビデオカメラ120及びスレーブビデオカメラ1120の両方の画像を入力として、較正を行う事も可能である。この場合較正を行う時のみマスタビデオカメラ120をスレーブ演算処理装置1170に接続し、較正完了後に、図4の本来の接続状態に戻すという方法がある。
【先行技術文献】
【非特許文献】
【0035】
【非特許文献1】佐藤,内山,山本:UG+B法:主観及び客観視点カメラと姿勢センサを用いた位置合わせ手法,日本バーチャルリアリティ学会論文誌,vol.10,no.3,pp.391−400,2005.
【非特許文献2】佐藤,内山,田村: 複合現実感における位置合わせ手法,日本バーチャルリアリティ学会論文誌,vol.8,no.2,pp.171−180,2003.
【非特許文献3】M.A.Fischler and R.C.Bolles(June 1981):RandomSample Consensus:A paradigm for model fitting with applications to image analysis and automated cartography,Comm.of the ACM,vol.24,no.6,pp.381−395,1981.
【発明の概要】
【発明が解決しようとする課題】
【0036】
しかし、前者の方法では、6の未知パラメータを同時に調整する必要があるため調整に著しく時間がかかり、必ずしも正確な較正情報が得られるとは限らないという問題点があった。また、後者の方法においても、較正を行うために接続状態を変更し、それをまた元に戻すという作業が必要になり、混乱するという問題があった。
【0037】
本発明は以上の問題に鑑みてなされたものであり、それぞれ別々の装置に接続されたマスタビデオカメラの位置姿勢を世界座標系におけるスレーブビデオカメラの位置姿勢に変換するための較正情報を、簡便に取得することを目的とする。
【0038】
更に、本発明は、前述の較正情報を、物理的な接続の変更を行うことなく取得することを目的とする。
【課題を解決するための手段】
【0039】
本発明の目的を達成する為に、本発明の情報処理方法は、
第一の撮像装置の位置姿勢から、第二の撮像装置の位置姿勢を求めるために必要な、前記第一の撮像装置と前記第二の撮像装置の間の較正情報を算出する情報処理方法であって、
前記第一の撮像装置が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第一の撮像装置の世界座標系における第一の位置姿勢を算出する第一の算出工程と、
前記第二の撮像装置が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第二の撮像装置の世界座標系における第二の位置姿勢を算出する第二の算出工程と、
前記第一の姿勢と前記第二の姿勢とに基づいて、前記較正情報を演算する工程と、
を備える。
【0040】
また、本発明の情報処理装置は、
第一の撮像手段の位置姿勢から、第二の撮像手段の位置姿勢を求めるために必要な、前記第一の撮像装置と前記第二の撮像装置の間の較正情報を算出する情報処理装置であって、
前記第一の撮像手段が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第一の撮像装置の世界座標系おける第一の位置姿勢を算出する第一の算出手段と、
前記第二の撮像手段が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第二の撮像装置の世界座標系おける第二の位置姿勢を算出する第二の算出手段と、
前記第一の位置姿勢と、前記第二の位置姿勢とに基づいて、前記較正情報を演算する演算手段と
を備える。
【発明の効果】
【0041】
本発明によれば、第1の撮像装置の位置姿勢情報の取得値を第2の撮像装置の位置姿勢に変換するための較正情報を、簡便に取得することが可能となる。
【図面の簡単な説明】
【0042】
【図1】本発明の一実施形態に係る較正装置の構成を示す図である。
【図2】本発明の一実施形態に係る較正装置の処理手順を示すフローチャートである。
【図3】本発明の一実施形態における較正の概念を示す図である。
【図4】複合現実感の提示を行う一般的な画像表示装置の構成を示す図である。
【図5】マスタビデオカメラの位置姿勢計測値からスレーブカメラの位置姿勢を求めるための変換を説明する図である。
【発明を実施するための形態】
【0043】
以下、添付図面を参照して本発明の一実施の形態について詳細に説明する。
【0044】
以下の実施形態では、本発明の較正装置及びその方法を、図1の画像表示装置の較正に適用した場合について説明する。
【0045】
図3は本実施形態によって較正を行う場合の一組のカメラと、現実空間におけるランドマークの配置を説明するための概念図である。尚、本実施の形態において、特徴点として検出されるランドマークとして、現実物体上に配置されたそれぞれ異なる色のマーカ4001〜4004を示している。図3においては、色の代わりにテクスチャパターンを用いて表している。
【0046】
図3に示すように互いの位置関係が固定の各々のカメラから、同じランドマークが撮影されるようにしながら、後述するようにカメラの位置を変えて複数の画像を撮影し、較正を行う。
【0047】
本実施形態の較正装置を用いて撮像装置の較正を行うためには、当該撮像装置が撮影する対象としている現実空間内に、世界座標が既知な最低3点以上のランドマークが配置されている必要がある。ここで、各ランドマークは、撮影画像上におけるその投影像の画像座標が検出可能であって、かついずれのランドマークであるかが識別可能であるような、例えばそれぞれが異なる色を有するランドマークであるものとする。
【0048】
図1は、本実施形態に係るセンサ較正装置である情報処理装置の構成を示している。図1に示したように、本実施形態における較正装置は、マスタ演算処理装置300、スレーブ演算処理装置1300、頭部装着装置100、位置姿勢センサ130から構成されている。
【0049】
位置姿勢センサ130、表示部110、表示部1110は、図4に用いて説明したものと同じ動作を行うため、その詳細な説明を省略する。
【0050】
マスタ演算処理装置300は、世界座標保持部310、画像座標取得部320、データ管理部330、位置姿勢算出部340、位置姿勢情報送信部380、その他から構成される。マスタ演算処理装置300には、較正対象である頭部装着装置100及びスレーブ演算処理装置1300が接続されている。スレーブ演算処理部1300への接続に関しては、イーサネット(登録商標)等の通信手段を利用することも可能である。尚、本実施の形態において、マスタ演算処理装置300は、第一の処理部として機能する。
【0051】
世界座標保持部310は、各ランドマークの世界座標系における座標を保持しており、データ管理部330からの要求にしたがってこれを出力する。
【0052】
画像座標取得部320は、ビデオカメラ120が撮影した画像を入力し、画像中に撮影されているランドマークの画像座標およびその識別番号を検出し、データ管理部330からの要求にしたがって、これらの情報をデータ管理部330へ出力する。画像からのランドマークの検出は、色を識別情報として有するランドマークを用いて、閾値処理により画像から特定色領域を抽出し、その重心位置を、当該色を有するランドマークの画像座標として検出することで行う。尚、本実施の形態においては、ビデオカメラ120が第一の撮像装置として機能する。
【0053】
データ管理部330は、画像座標取得部320からランドマークの画像座標及び識別番号が入力されると、世界座標保持部310から対応するランドマークの世界座標を取得し、世界座標及び画像座標を位置姿勢情報算出部340に出力する。
【0054】
位置姿勢情報算出部340は、世界座標及び画像座標よりビデオカメラ120の位置姿勢を算出し位置姿勢情報送信部380、画像生成部160に出力する。
【0055】
ビデオカメラ120の位置姿勢を算出する手法としては、カメラが連続的に撮影する時系列画像を利用して、カメラの位置及び姿勢を逐次計測することが一般的に行われている(非特許文献1,非特許文献2,非特許文献3)。例えば、以下の手順によって、基準座標系におけるカメラの位置及び姿勢を求めることができる。
【0056】
(1)室内の床や壁、テーブル面等に、基準座標系における位置(基準座標)が既知である複数のランドマークを配置あるいは設定する。
(2)カメラが撮影した撮像画像内におけるランドマークの投影像の座標を検出する。
(3)検出されたランドマークの画像座標と、当該ランドマークの基準座標との対応関係に基づいて、カメラの位置及び姿勢を求める。
【0057】
位置姿勢情報送信部380は、位置姿勢情報算出部340から受け取った位置姿勢情報を、スレーブ演算処理装置1300の位置姿勢情報受信部1380に出力する。
【0058】
スレーブ演算処理装置1300は、世界座標保持部1310、画像座標取得部1320、データ管理部1330、較正情報算出部1340、指示部1350、その他から構成される。スレーブ演算処理装置1300には、較正対象である頭部装着装置100及びマスタ演算処理装置300が接続されている。尚、本実施の形態において、スレーブ演算処理装置1300は、第二の処理部として機能する。
【0059】
世界座標保持部1310は、各ランドマークの世界座標系における座標を保持しており、データ管理部1330からの要求にしたがってこれを出力する。
【0060】
世界座標保持部1310に保持される情報は、予めマスタ演算処理装置300の世界座標保持部310の情報と同じにしておく必要がある。通信手段を設けて同期させる事によって、較正装置をより容易に利用できるようにする事も可能である。
【0061】
画像座標取得部1320は、ビデオカメラ1120が撮影した画像が入力され、画像中に撮影されているランドマークの画像座標およびその識別番号を検出し、データ管理部1330からの要求にしたがって、これらの情報をデータ管理部1330へと出力する。画像からのランドマークの検出は、色を識別情報として有するランドマークを用いて、閾値処理により画像から特定色領域を抽出し、その重心位置を、当該色を有するランドマークの画像座標として検出することで行う。尚、本実施の形態においては、ビデオカメラ1120が第二の撮像装置として機能する。
【0062】
データ管理部1330は、指示部1350から「データ取得」の指示を受けると、画像座標取得部1320からランドマークの画像座標及び識別番号が入力され、世界座標保持部1310から対応するランドマークの世界座標を入力される。更に、マスタ位置姿勢情報受信部1380から撮影画像と同一時刻のセンサ計測値が入力され、[世界座標−マスタ位置姿勢計測値−画像座標]の組をデータリストに追加しこれを保持する。また、較正情報算出部1340からの要求にしたがって、生成したデータリストを較正情報算出部1340に出力する。
【0063】
較正情報算出部1340は、指示部1350から「較正情報算出」の指示を受けると、データ管理部1330からデータリストが入力され、これをもとに較正情報を算出し、算出した較正情報を出力する。
【0064】
指示部1350は、ユーザからデータ取得コマンドが入力されたときには「データ取得」の指示をデータ管理部1330に、較正情報算出コマンドが入力されたときには「較正情報算出」の指示を較正情報算出部1340に送信する。指示部1350へのコマンドの入力は、例えばキーボードを用いて、特定のコマンドを割り当てたキーを押すことによって行うことができる。また、コマンドの入力は、不図示のディスプレイ上に表示されたGUIで行うなどの、いずれの方法で行ってもよい。
【0065】
図2は、本実施形態による較正装置の処理手順を示すフローチャートである。なお、同フローチャートに従ったプログラムコードは、本実施形態の装置内の、不図示のRAMやROMなどのメモリ内に格納され、不図示のCPUにより読み出され、実行される。
【0066】
ステップS4010において、指示部1350は、データ取得コマンドがオペレータから入力されたか否かの判定を行う。データ取得コマンドが入力されている場合には、ステップS4020へと処理を移行させる。以下では、データ取得コマンドが入力された時点においてビデオカメラ1120が位置していた視点位置をVjとする。
【0067】
ステップS4020において、データ管理部1330は、位置姿勢情報受信部1380から、視点位置Vjにビデオカメラ1120が位置している際の計測値
【0068】
【数1】


を入力する。
【0069】
ステップS4030において、データ管理部1330は、視点位置Vjに位置するビデオカメラ1120によって撮影された撮像画像上におけるランドマークQkの識別番号k及び画像座標
【0070】
【数2】


を、画像座標取得部1320から入力する。この入力は、当該撮像画像上に複数のランドマークが撮像されている場合には、それら各々のランドマークに対して行われる。
【0071】
ステップS4040において、データ管理部1330は、画像座標取得部1320から入力した各ランドマークQkの(それぞれの識別番号kに対応する)世界座標
【0072】
【数3】


を、世界座標管理部1330から入力する。
【0073】
次に、ステップS4050において、データ管理部1330は、検出されたランドマーク毎に、入力したデータをデータリストLiに追加する。具体的には、ランドマークQkに対する画像座標を
【0074】
【数4】


その世界座標を
【0075】
【数5】


その際のマスタカメラの位置姿勢を
【0076】
【数6】


として、
【0077】
【数7】


の組を、i番目のデータとしてリストに登録する。ここでiは現在リストに登録されているデータ総数から1を引いた値を示す。
【0078】
以上によって、データの取得が行われる。
【0079】
ステップS4060では、指示部1350によって、現在までに取得されたデータリストが、較正情報を算出するに足るだけの情報を有しているかどうかの判定が行われる。データリストが条件を満たしていない場合には、再びステップS4010へと戻り、データ取得コマンドの入力を待つ。一方、データリストが較正情報算出の条件を満たしている場合には、ステップS4070へと処理を移行させる。較正情報算出の条件としては、例えば、異なる4点以上のランドマークに関するデータが得られていること、複数の視点位置においてデータの取得が行われていること、及びデータ総数が3点以上であること、を条件とする。ただし、入力データの多様性が増すほどに導出される較正情報の精度は向上するので、より多くのデータを要求するように条件を設定してもよい。
【0080】
次にステップS4070において、較正情報算出コマンドがオペレータから入力されたか否かの判定を行う。較正情報算出コマンドが入力されている場合には、ステップS4080へと処理を移行し、入力されていない場合には、再びステップS4010へと戻り、データ取得コマンドの入力を待つ。
【0081】
較正情報算出部1340は、求めるべき較正情報のうちの姿勢に関する情報を、ベクトルの大きさによって回転角を、ベクトルの向きによって回転軸方向を、それぞれ定義するような3値のベクトルによって内部的に表現する。そして、MSMを、スレーブビデオカメラ1120が定義する座標系におけるマスタビデオカメラ1120の位置(xCS,yCS,zCS)及び姿勢
【0082】
【数8】

によって表現し、6の未知パラメータは、ベクトル
【0083】
【数9】

によって表現される。
【0084】
ステップS4080において、較正情報算出部1340は、ベクトルsに適当な初期値(例えばs=[000000 ])を与える。
【0085】
ステップS4090において、較正情報算出部1340は、リスト中の各データLi(i=1,2,……,N)に対して、当該ランドマークの画像座標の理論値
【0086】
【数10】

を、センサ出力
【0087】
【数11】

世界座標
【0088】
【数12】

および現在のsに基づいて算出する。
【0089】
【数13】

は、sを変数として、センサ出力
【0090】
【数14】

および世界座標
【0091】
【数15】

によって定義される関数
【0092】
【数16】

によって定めることができる。
【0093】
具体的には、まず、次式、
【0094】
【数17】

に基づいて、sの構成要素である(xCS,yCS,zCS)及び
【0095】
【数18】


からビューイング変換行列MSMを算出する。次に、当該ランドマークのカメラ座標
【0096】
【数19】


を、
【0097】
【数20】


によって算出する。最後に、画像座標の理論値を、
【0098】
【数21】


によって算出する。ただし、fはビデオカメラ1120の焦点距離である。
【0099】
ステップS4100において、較正情報算出部1340は、リスト中の各データLiに対して、当該ランドマークの画像座標の理論値
【0100】
【数22】


と実測値uとの誤差△uを、
【0101】
【数23】


によって算出する。
【0102】
ステップS4110において、較正情報算出部1340は、リスト中の各データLiに対して、(式B)の右辺をベクトルsの各要素で偏微分した解を各要素に持つ2行×6列のヤコビ行列
【0103】
【数24】


を算出する。具体的には、(式E)の右辺をカメラ座標
【0104】
【数25】


の各要素で偏微分した解を各要素に持つ2行×3列のヤコビ行列
【0105】
【数26】


と、(式D)の右辺をベクトルsの各要素で偏微分した解を各要素に持つ3行×6列のヤコビ行列
【0106】
【数27】


をそれぞれ、(式E)および(式D)に基づいて算出し、
【0107】
【数28】


として算出する。
【0108】
ステップS4120において、較正情報算出部1340は、ステップS4100およびステップS4110において算出した、リスト中の全てのデータLiに対する誤差△u及びヤコビ行列
【0109】
【数29】

に基づいて、sの補正値△sを算出する。具体的には、全てのデータに対する誤差△uおよびヤコビ行列
【0110】
【数30】

をそれぞれ垂直に並べたベクトルU=[△u △u ・・・ △uおよび
【0111】
【数31】

を作成し、Φの一般化逆行列を用いて、
△s=(ΦΦ)−1ΦU (式H)
として算出する。
【0112】
ステップS4130において、較正情報算出部1340は、ステップS4120において算出した補正値△sを用いてsを補正する。
【0113】
s+△s→s (式I)
ステップS4140において、較正情報算出部1340は、Uが十分に小さいかどうか、あるいは、△sが十分に小さいかどうかといった何らかの判定基準を用いて、計算が収束しているか否かの判定を行う。収束してない場合には、補正後のsを用いて、再度ステップS4090以降の処理を行う。
【0114】
ステップS4150において、較正情報算出部1350は、得られたsを較正情報として出力する。較正情報は、例えば、sから算出したビューイング変換行列の形態によって出力する。出力の形態はsそのものでもよいし、他のいずれの位置姿勢記述方法によるものでもよい。
【0115】
この較正情報に基づき、仮想画像が生成され、現実画像に合成される。
【0116】
<変形例1>
上記実施形態では、2つの独立した汎用コンピュータを利用して、実現されていた。しかしながら、CPUやGPUの多重化が進む近年のコンピュータでは、同一汎用コンピュータ内で、マスターとスレーブの処理を独立させる事も有効であり、その場合でも、本発明による較正方法により、簡易に正確な較正を行う事ができる。
【0117】
<変形例2>
上記実施形態では、ランドマークの画像座標およびその識別番号の取得を、色を識別情報として有するランドマークを用いて、閾値処理により画像から特定色領域を抽出し、その重心位置を、当該色を有するランドマークの画像座標として検出することで行っていた。
【0118】
しかし、画像上におけるランドマークの投影座標及びランドマークの識別番号が特定可能であれば、他のいずれの手法を用いてもよい。例えば、特定のパターンを識別情報として有するランドマークを用いて、パターンマッチングにより画像から特定パターンの領域を抽出し、その検出位置を、当該パターンを有するランドマークの画像座標として出力してもよい。
【0119】
また、画像処理によって行う必要は必ずしもなく、オペレータの手入力によってランドマークの画像座標およびその識別番号を入力してもよい。この場合、画像座標取得部320は、例えば作業用ディスプレイに表示された撮像画像上のランドマーク位置をマウスクリックによって指定する等によって、オペレータが容易にランドマーク位置を入力できるような、何らかのGUIを有した構成が望ましい。
【0120】
また、画像処理による識別の望めない同一特徴をもつ複数のランドマークを用いる場合には、ランドマークの画像座標の取得を画像処理によって行い、その識別番号の入力を手入力によって行うといった構成をとることもできる。また、ランドマークの識別には他のいずれの方法をとってもよい。例えば、大まかな較正情報が初めから得られている場合には、(式B)によって算出される各ランドマークの画像座標の理論値と、検出されたランドマークの画像座標の比較によって、ランドマークの識別を行ってもよい。
【0121】
また、画像処理によって取得する場合あるいは手入力によって取得する場合のいずれの場合においても、ランドマークは必ずしも人工的(人為的)なものでなくてもよく、自然特徴を用いてもよい。自然特徴としては、建物の輪郭とその座標位置など対応付けて予め登録しておくことにより実現ずる。
【0122】
<変形例3>
上記実施形態では、ステップS4080で較正情報の初期値として適当な値を設定していた。しかし、初期値と実際の値がかけ離れている場合には、上記実施形態では解が収束せず較正情報を求めることができない。
【0123】
このような状況に対処するため、異なる位置姿勢の組み合わせを予め設定しておき、これらを順次初期値として用いてステップS4090からステップS4140までの処理を行い、解が収束した際のsを選択するようにしてもよい。また、オペレータによる初期値(あるいは初期値を生成するのに必要な位置姿勢の情報)の入力を行う初期値入力部をさらに用意して、入力された初期値を用いて較正情報算出処理を行うことも可能である。
【0124】
<変形例4>
本発明のより好適な変形例では、較正装置は画像生成部をさらに有している。画像生成部は、画像座標取得部1320によって検出されたランドマークの画像座標を撮影画像に重畳して表示画面へ出力する。本変形例によれば、オペレータは、ランドマークの検出状況を確認しながらデータ取得の指示を入力することができる。
【0125】
また、画像生成部は、較正情報算出部1340が算出した較正情報に基づいて各ランドマークの画像座標の理論値を算出し、これを撮像画像に重畳して表示画面に出力する。本変形例によれば、オペレータは、現実のランドマークとそこに表示される計算位置とを比較することによって、較正作業の検証を行うことができる。
【0126】
<変形例5>
上記実施形態では、オペレータからの制御コマンドを入力するための指示部1350を有していた。しかしながら、この入力は必ずしも必要ではなく、例えば画像座標取得部1320がランドマークを検出するごとにデータリストへ追加を行い、データリストが条件を満たした時点で較正情報演算部1340が較正情報の演算を行うような構成にしてもよい。
【0127】
<変形例6>
上記実施形態では、複合現実感を提示するステレオビデオシースルーHMDの複数のカメラ間の位置姿勢の較正を行うものであった。しかしながら、本発明の適用範囲はこれに限定されるものではなく、固定されている2つ以上の撮像装置の位置姿勢を計測するような他の何れの用途に適用することも可能である。その場合はマスターとなる撮像装置を設定し、マスターとなる撮像装置から他の撮像装置への位置姿勢を較正する事ができる。
【0128】
[他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアの制御プログラムを構成するプログラムコードを記録したコンピュータ可読メモリである記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0129】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0130】
本発明を上記記憶媒体に適用する場合、その記憶媒体には先に説明した(図2に示す)フローチャートに対応するプログラムコードが格納されることになる。

【特許請求の範囲】
【請求項1】
第一の撮像装置の位置姿勢から、第二の撮像装置の位置姿勢を求めるために必要な、前記第一の撮像装置と前記第二の撮像装置の間の較正情報を算出する情報処理方法であって、
前記第一の撮像装置が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第一の撮像装置の世界座標系における第一の位置姿勢を算出する第一の算出工程と、
前記第二の撮像装置が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第二の撮像装置の世界座標系における第二の位置姿勢を算出する第二の算出工程と、
前記第一の姿勢と前記第二の姿勢とに基づいて、前記較正情報を演算する工程と、
を備えることを特徴とする情報処理方法。
【請求項2】
前記特徴点は、現実空間に配置されたマーカであることを特徴とする請求項1に記載の情報処理方法。
【請求項3】
前記特徴点は、現実空間に存在する自然特徴であることを特徴とする請求項1に記載の情報処理方法。
【請求項4】
前記撮像画像を画像処理することによって前記特徴点を検出し、前記画像座標を算出することを特徴とする請求項1に記載の情報処理方法。
【請求項5】
ユーザによる指示に基づいて、前記画像座標を取得することを特徴とする請求項1に記載の情報処理方法。
【請求項6】
請求項1乃至5いずれか1項に記載の情報処理方法を、コンピュータで実現させるための制御プログラム。
【請求項7】
請求項6に記載の制御プログラムを格納するコンピュータ可読メモリ。
【請求項8】
第一の撮像手段の位置姿勢から、第二の撮像手段の位置姿勢を求めるために必要な、前記第一の撮像装置と前記第二の撮像装置の間の較正情報を算出する情報処理装置であって、
前記第一の撮像手段が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第一の撮像装置の世界座標系おける第一の位置姿勢を算出する第一の算出手段と、
前記第二の撮像手段が撮像した撮像画像上における複数の特徴点の画像座標と当該特徴点の予め記憶されている世界座標系における座標に基づいて、前記第二の撮像装置の世界座標系おける第二の位置姿勢を算出する第二の算出手段と、
前記第一の位置姿勢と、前記第二の位置姿勢とに基づいて、前記較正情報を演算する演算手段と
を備えることを特徴とする情報処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−145598(P2012−145598A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2012−106117(P2012−106117)
【出願日】平成24年5月7日(2012.5.7)
【分割の表示】特願2007−140567(P2007−140567)の分割
【原出願日】平成19年5月28日(2007.5.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】