(57)【要約】【課題】  複数種類の指標について投影誤差を最小化するような指標配置情報を求めることができないため、指標の配置情報を精度よく求めることができなかった。【解決手段】  配置情報の情報量が各々異なる複数種類の指標の配置情報を推定する方法であって、複数の画像中から複数種類の指標を検出し、複数の画像が撮影された時の撮像装置の位置姿勢の近似値と指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算し、検出された指標の画像面上の位置と計算された得られた指標の投影位置との誤差が小さくなるように指標の配置情報の補正値を求め、指標の配置情報を補正するとともに、これらの処理を繰り返し行うことにより指標の配置情報を算出する。【選択図】  図７
2005326274.tif 000002
【特許請求の範囲】
【請求項１】
配置情報の情報量が各々異なる複数種類の指標の配置情報推定方法であって、
指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出工程と、
前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、各種類の指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算工程と、
前記指標検出工程が検出した各種類の指標の画像面上での位置と、前記指標投影位置計算工程により得られた指標の画像面上での投影位置との誤差が小さくなるように各種類の指標の配置情報の補正値を求める補正値計算工程と、
前記補正値計算工程によって求めた補正値によって各種類の指標の配置情報を補正する配置情報補正工程と、
前記配置情報補正工程により補正された指標の配置情報を前記指標投影位置計算工程の近似値のかわりに利用して、前記指標投影位置計算工程と前記補正値計算工程と前記配置情報補正工程とを繰返し行うことにより指標の配置情報を算出する繰り返し演算工程を備えることを特徴とする指標配置情報推定方法。
【請求項２】
前記補正値計算工程は、指標の種類ごとに異なる重みを与えて各種類の配置情報の補正値を求めることを特徴とする請求項１に記載の指標配置情報推定方法。
【請求項３】
配置情報の情報量が各々異なる複数種類の指標の指標配置情報推定方法であって、
指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出工程と、
複数種類の指標のうちのあるひとつ以上の種類の指標を選択する指標種類選択工程と、
前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、前記指標種類選択工程で選択した指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算工程と、
前記指標検出工程が検出した指標種類選択工程で選択されている種類の指標の画像面上での位置と、前記指標投影位置計算工程により得られた指標の画像面上での投影位置との誤差が小さくなるように選択されている種類の指標の配置情報の補正値を求め、配置情報を補正する配置情報補正工程と、
前記配置情報補正工程により補正された指標の配置情報を前記指標投影位置計算工程の近似値のかわりに利用して、前記指標投影位置計算工程と前記配置情報補正工程とを繰返し行って該指標の配置情報を求める第一の繰り返し演算工程と、
前記指標種類選択工程で選択されていない他の種類のひとつ以上の指標を選択し直し、前記指標投影位置計算工程と前記配置情報補正工程と前記第一の繰り返し演算工程とを、繰り返し行う第二の繰り返し演算工程と、
を備えること特徴とする指標配置情報推定方法。
【請求項４】
前記複数種類の指標は、配置情報が３次元空間内の１点の位置によって記述される指標種１と、配置情報が３次元空間内の位置及び姿勢で記述される指標種２の二種類の指標を含むことを特徴とする請求項１乃至３に記載の指標配置情報推定方法。
【請求項５】
請求項４に記載の指標種２は、周囲と色もしくは明度の異なる平面状の多角形領域であって、その外周形状を画像から求めることによって検出することが可能である多角形指標であることを特徴とする請求項４に記載の指標配置情報推定方法。
【請求項６】
前記推測された指標の指標配置情報をファイルに出力する工程を有することを特徴とする請求項１乃至５のいずれかに記載の指標配置情報推定方法。
【請求項７】
請求項１乃至６のいずれかに記載の指標配置情報推定方法をコンピュータによって実現させるための制御プログラムを格納する記憶媒体。
【請求項８】
請求項１乃至６のいずれかに記載の指標配置情報推定方法をコンピュータによって実現させるための制御プログラム。
【請求項９】
配置情報の情報量が各々異なる複数種類の指標の配置情報を推定する情報処理装置であって、
指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出手段と、
前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、各種類の指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算手段と、
前記指標検出手段が検出した各種類の指標の画像面上での位置と、前記指標投影位置計算手段により得られた指標の画像面上での投影位置との誤差が小さくなるように各種類の指標の配置情報の補正値を求める補正値計算手段と、
前記補正値計算手段によって求めた補正値によって各種類の指標の配置情報を補正する配置情報補正工程と、
前記配置情報補正手段により補正された指標の配置情報を前記指標投影位置計算手段の近似値のかわりに利用して、前記指標投影位置計算手段と前記補正値計算手段と前記配置情報補正手段とを繰返し行うことにより指標の配置情報を算出する繰り返し演算手段とを備えることを特徴とする情報処理装置。
【請求項１０】
配置情報の情報量が各々異なる複数種類の指標の配置情報を推定する情報処理装置であって、
指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出手段と、
複数種類の指標のうちのあるひとつ以上の種類の指標を選択する指標種類選択手段と、
前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、前記指標種類選択手段で選択した指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算手段と、
前記指標検出手段が検出した指標種類選択手段で選択されている種類の指標の画像面上での位置と、前記指標投影位置計算手段により得られた指標の画像面上での投影位置との誤差が小さくなるように選択されている種類の指標の配置情報の補正値を求め、配置情報を補正する配置情報補正手段と、
前記配置情報補正手段により補正された指標の配置情報を前記指標投影位置計算手段の近似値のかわりに利用して、前記指標投影位置計算手段と前記配置情報補正手段とを繰返し行って該指標の配置情報を求める第一の繰り返し演算手段と、
前記指標種類選択手段で選択されていない他の種類のひとつ以上の指標を選択し直し、前記指標投影位置計算手段と前記配置情報補正手段と前記第一の繰り返し演算手段とを、繰り返し行う第二の繰り返し演算手段とを備えること特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元空間中に配置した指標の位置姿勢を推定する方法に関する。
【背景技術】
【０００２】
近年、複合現実感（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ；ＭＲ）技術の研究が盛んである。ＭＲ技術は、現実空間とコンピュータによって作られる仮想空間を継ぎ目なく融合する技術である。ＭＲ技術の中でも、現実空間に仮想空間を重ね合わせて表示するＡｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ（ＡＲ、拡張現実感、増強現実感とも呼ばれる）技術が特に注目を集めている。
【０００３】
ＡＲの画像表示装置は、ビデオカメラ等の撮像装置によって撮影された現実空間の画像に、該撮像装置の位置及び姿勢に応じて生成された仮想空間（コンピュータグラフィクスにより描画された仮想物体や文字情報等）の画像を重畳描画した合成画像を表示するビデオシースルー方式か、あるいは観察者の頭部に装着された光学シースルー型ディスプレイに、観察者の視点の位置及び姿勢に応じて生成された仮想空間の画像を表示する光学シースルー方式によって実現される。
【０００４】
ＡＲ技術は、患者の体表面に体内の様子を重畳表示する手術支援や、空き地に仮想のビルを重畳表示する建築シミュレーション、組立作業時に作業手順や配線の様子を重畳表示する組み立て支援等様々な分野への応用が期待される。
【０００５】
ＡＲ技術において最も重要な課題の一つは、現実空間と仮想空間の間の位置合わせをいかに正確に行うかということであり、従来より多くの取り組みが行われてきた。ＡＲにおける位置合わせの問題は、ビデオシースルー方式の場合はシーン中における（すなわち基準座標系における）撮像装置の位置及び姿勢を求める問題に帰結する。同様に、光学シースルー方式の場合は、シーン中における観察者の視点あるいはディスプレイの位置及び姿勢を求める問題に帰結する。
【０００６】
前者の問題を解決する方法として、シーン中に複数の指標を配置あるいは設定し、撮像装置が撮影した画像内における指標の投影位置と指標の基準座標系における位置との対応関係から、基準座標系における該撮像装置の位置及び姿勢を求めることが一般的に行われている。また、後者の問題を解決する方法として、計測対象物（すなわち観察者の頭部あるいはディスプレイ）に撮像装置を装着し、前者と同様な方法によって該撮像装置の位置及び姿勢を求め、それに基づいて計測対象物の位置及び姿勢を求めることが一般的に行われている。
【０００７】
図１を用いて、撮像装置が撮影した画像から検出される指標の２次元座標と、基準座標系における指標の３次元位置とを対応づけることで該撮像装置の位置及び姿勢を計測する位置姿勢計測装置の従来例について説明する。図１に示すように、本従来例における位置姿勢計測装置１００は、指標検出部１１０及び位置姿勢算出部１２０によって構成されており、撮像装置１３０に接続されている。
【０００８】
また、現実空間中には、撮像装置１３０の位置姿勢を求めるための指標として、基準座標系における位置が既知であるＫ個の指標Ｑｋ（ｋ＝１，２，・・・，Ｋ）が配置されている。図１の例は、４個の指標Ｑ１、Ｑ２、Ｑ３、Ｑ４が配置されており、そのうちの３個Ｑ１、Ｑ３、Ｑ４が撮像装置１３０の視野内に含まれている状況を示している。
【０００９】
指標Ｑｋは、例えば各々が異なる色を有する円形状のマーカなど、撮影画像内における指標の投影位置が検出可能であって、かつ何れの指標であるかが同定可能であるような指標であれば何れの形態であってもよい。例えば３次元空間中の自然特徴点を指標として用い、撮影画像内からテンプレートマッチングによって検出してもよい。撮像装置１３０が出力する画像は、位置姿勢計測装置１００に入力される。指標検出部１１０は、撮像装置１３０により画像を入力し、該画像上に撮影されている指標Ｑｋの画像座標を検出する。例えば、指標Ｑｋの各々が異なる色を有する円形状のマーカによって構成されている場合には、入力画像上から各々のマーカ色に対応する領域を検出し、その重心位置を当該指標の検出座標とする。
【００１０】
さらに指標検出部１１０は、検出された各々の指標Ｑｋｎの画像座標ｕＭｋｎとその識別子ｋｎを位置姿勢算出部１２０へと出力する。ここで、ｎ（＝１，２，・・・，Ｎ）は検出された指標の通し番号を表す記号であり、Ｎは検出された指標の総数を表している。例えば図１の場合には、Ｎ＝３であり、識別子ｋ１＝１、ｋ２＝３、ｋ３＝４とこれらに対応する画像座標ｕＭｋ１、ｕＭｋ２、ｕＭｋ３、が出力される。
【００１１】
位置姿勢算出部１２０は、検出された各々の指標Ｑｋｎの画像座標ｕＭｋｎと、既知な情報として予め保持している当該指標Ｑｋｎの基準座標系における位置との対応関係に基づいて、撮像装置１３０の位置及び姿勢を算出する。指標の３次元座標と画像座標の組から撮像装置の位置及び姿勢を算出する方法は、写真測量の分野において古くから提案されている（例えば、非特許文献１、非特許文献２を参照）。位置姿勢算出部１２０は、例えば非特許文献１に記載の手法によって、撮像装置１３０の位置及び姿勢を算出する。
【００１２】
なお、ここでは複数の３次元空間中の点としての指標（以下、点指標）を用いる場合について説明したが、例えば非特許文献３、４で開示されているように、大きさが既知の正方形形状の指標（以下、正方形指標）を用いた撮像装置の位置及び姿勢を算出が提案されている。また、例えば非特許文献７で開示されているように、正方形指標と点指標を組み合わせた撮像装置の位置及び姿勢算出方法も提案されている。点指標には狭いところにも設定できるというメリットがあり、正方形指標には同定が簡単である、一つの指標の情報量が多いため一つの指標だけから撮像装置の位置及び姿勢を求めることができるというメリットがあり、相補的に利用することができる。
【００１３】
以上の方法によって、撮像装置が撮影した画像に基づいて、該撮像装置の位置及び姿勢を取得することが従来からなされてきた。
【００１４】
一方、例えば特許文献１、２や非特許文献５で開示されているように、計測対象である撮像装置に磁気センサや超音波センサなどの６自由度位置姿勢センサを取り付け、前述のような画像処理による指標の検出との併用によって位置及び姿勢を計測することも行われている。センサの出力値は測定範囲によって精度は変わるが安定的に得ることができるため、センサと画像処理を併用する方法は、画像処理だけによる方法に比べてロバスト性を向上させることができる。
【００１５】
従来の指標を利用した位置合わせ手法では、計測対象である撮像装置の基準座標系における位置及び姿勢を求めるために、点指標の場合は基準座標系における位置、正方形指標の場合は基準座標系における位置及び姿勢が既知である必要がある。正方形指標の場合には、基準座標系を別途設けることなく、正方形指標そのものを座標系の基準とする場合が多いが、複数の正方形指標を用いる場合には、互いの位置及び姿勢の関係が既知である必要があるため、基準座標系が必要であることに変わりはない。
【００１６】
指標の位置及び姿勢の計測は、巻尺や分度器を用いた手作業や、測量器によって行うことが可能であるが、精度や手間の問題から、画像を利用した計測が行われている。点指標の位置計測には、バンドル調整法と呼ばれる方法で求めることができる。バンドル調整法は、点指標を撮像装置によって多数撮影し、点指標、点指標の画像上での投影点、撮像装置の視点の３点が同一直線上に存在するという拘束条件をもとに、指標が実際に画像上で観察される投影位置と撮像装置の位置及び姿勢と指標の位置から計算される投影位置との誤差（投影誤差）が最小化されるように、繰返し演算によって画像を撮影した撮像装置の位置及び姿勢と、点指標の位置を求める方法である。
【００１７】
また、非特許文献６では３次元空間中に配置された多数の正方形マーカの位置及び姿勢を計測する方法が開示されている。非特許文献６では、３次元空間中に配置された多数の正方形マーカの画像を多数撮影し、投影誤差が最小になるように繰返し演算によって各画像を撮影した撮像装置の位置及び姿勢と、正方形マーカの位置及び姿勢を求めている。
【特許文献１】特開平１１−０８４３０７号公報
【特許文献２】特開２０００−０４１１７３号公報
【非特許文献１】Ｒ．Ｍ．Ｈａｒａｌｉｃｋ，Ｃ．Ｌｅｅ，Ｋ．Ｏｔｔｅｎｂｅｒｇ，ａｎｄ  Ｍ．Ｎｏｌｌｅ：“Ｒｅｖｉｅｗ  ａｎｄ  ａｎａｌｙｓｉｓ  ｏｆ  ｓｏｌｕｔｉｏｎｓ  ｏｆ  ｔｈｅ  ｔｈｒｅｅ  ｐｏｉｎｔ  ｐｅｒｓｐｅｃｔｉｖｅ  ｐｏｓｅ  ｅｓｔｉｍａｔｉｏｎ  ｐｒｏｂｌｅｍ”，Ｉｎｔ’ｌ．Ｊ．Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，ｖｏｌ．１３，ｎｏ．３，ｐｐ．３３１−３５６，１９９４．
【非特許文献２】Ｍ．Ａ．Ｆｉｓｃｈｌｅｒ  ａｎｄ  Ｒ．Ｃ．Ｂｏｌｌｅｓ：“Ｒａｎｄｏｍ  ｓａｍｐｌｅ  ｃｏｎｓｅｎｓｕｓ：ａ  ｐａｒａｄｉｇｍ  ｆｏｒ  ｍｏｄｅｌ  ｆｉｔｔｉｎｇ  ｗｉｔｈ  ａｐｐｌｉｃａｔｉｏｎｓ  ｔｏ  ｉｍａｇｅ  ａｎａｌｙｓｉｓ  ａｎｄ  ａｕｔｏｍａｔｅｄ  ｃａｒｔｏｇｒａｐｈｙ”，Ｃｏｍｍ．ＡＣＭ，ｖｏｌ．２４，ｎｏ．６，ｐｐ．３８１−３９５，１９８１．
【非特許文献３】暦本純一：“２次元マトリックスコードを利用した拡張現実感の構成手法”，インタラクティブシステムとソフトウェア  ＩＶ，近代科学社，１９９６．
【非特許文献４】加藤，Ｍ．Ｂｉｌｌｉｎｇｈｕｒｓｔ，浅野，橘：“マーカー追跡に基づく拡張現実感システムとそのキャリブレーション”，日本バーチャルリアリティ学会論文誌，ｖｏｌ．４，ｎｏ．４，ｐｐ．６０７−６１６，１９９９．
【非特許文献５】Ａ．Ｓｔａｔｅ，Ｇ．Ｈｉｒｏｔａ，Ｄ．Ｔ．Ｃｈｅｎ，Ｗ．Ｆ．Ｇａｒｒｅｔｔ  ａｎｄ  Ｍ．Ａ．Ｌｉｖｉｎｇｓｔｏｎ：“Ｓｕｐｅｒｉｏｒ  ａｕｇｍｅｎｔｅｄ  ｒｅａｌｉｔｙ  ｒｅｇｉｓｔｒａｔｉｏｎ  ｂｙ  ｉｎｔｅｇｒａｔｉｎｇ  ｌａｎｄｍａｒｋ  ｔｒａｃｋｉｎｇ  ａｎｄ  ｍａｇｎｅｔｉｃ  ｔｒａｃｋｉｎｇ”，Ｐｒｏｃ．ＳＩＧＧＲＡＰＨ’９６，ｐｐ．４２９−４３８，１９９６．
【非特許文献６】Ｇ．Ｂａｒａｔｏｆｆ，Ａ．Ｎｅｕｂｅｃｋ  ａｎｄ  Ｈ．  Ｒｅｇｅｎｂｒｅｃｈｔ：“Ｉｎｔｅｒａｃｔｉｖｅ  ｍｕｌｔｉ−ｍａｒｋｅｒ  ｃａｌｉｂｒａｔｉｏｎ  ｆｏｒ  ａｕｇｍｅｎｔｅｄ  ｒｅａｌｉｔｙ  ａｐｐｌｉｃａｔｉｏｎｓ”，Ｐｒｏｃ．ＩＳＭＡＲ２００２，ｐｐ．１０７−１１６，２００２．
【非特許文献７】Ｈ．Ｋａｔｏ，Ｍ．Ｂｉｌｌｉｎｇｈｕｒｓｔ，Ｉ．Ｐｏｕｐｙｒｅｖ，Ｋ．Ｉｍａｍｏｔｏ  ａｎｄ  Ｋ．Ｔａｃｈｉｂａｎａ：“Ｖｉｒｔｕａｌ  ｏｂｊｅｃｔ  ｍａｎｉｐｕｌａｔｉｏｎ  ｏｎ  ａ  ｔａｂｌｅ−ｔｏｐ  ＡＲ  ｅｎｖｉｒｏｎｍｅｎｔ”，Ｐｒｏｃ．ＩＳＡＲ２０００，ｐｐ．１１１−１１９，２０００．
【発明の開示】
【発明が解決しようとする課題】
【００１８】
従来の指標の位置及び姿勢の計測手法では、点指標の位置と、正方形指標のような「平面図形様」の指標（以下、平面指標）の位置及び姿勢を同時に求めることができない。つまり、３次元空間中の１点の位置という配置情報を持つ指標（例えば点指標）と、３次元空間中での位置及び姿勢という配置情報を持つ指標（例えば平面指標）といった配置情報が持つ情報量が異なる複数種類の指標の配置情報を同時に求めることができない。そのため、点指標の位置、平面指標の位置及び姿勢といった指標の配置情報は指標の種類ごとに個別に求める必要がある。よって、同一画像内に異なる種類の指標（例えば点指標と平面指標）が撮影されていたとしても、両方の指標について投影誤差を最小化するような各々の種類の指標の配置情報、撮像装置の位置及び姿勢を求めることができないため、指標の配置情報を精度よく求めることができなかった。
【００１９】
本発明は上記の課題に鑑みてなされたものであり、その目的は、指標を含むシーンを撮像装置により撮影し、配置情報が持つ情報量が異なる複数種類の指標の配置情報を同時に求めることにより、各種類の指標の配置情報を精度よく求めることにある。
【００２０】
また、本発明の別の目的は、指標を含むシーンを撮像装置により撮影し、情報量が異なる配置情報を持つ複数種類の指標の配置情報を交互に求めることを繰返し行うことにより、各種類の指標の配置情報を精度よく求めることにある。
【課題を解決するための手段】
【００２１】
上記目的を達成するために本発明は以下の構成を有することを特徴とする。
【００２２】
請求項１記載の発明は、配置情報の情報量が各々異なる複数種類の指標の配置情報推定方法であって、指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出工程と、前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、各種類の指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算工程と、前記指標検出工程が検出した各種類の指標の画像面上での位置と、前記指標投影位置計算工程により得られた指標の画像面上での投影位置との誤差が小さくなるように各種類の指標の配置情報の補正値を求める補正値計算工程と、前記補正値計算工程によって求めた補正値によって各種類の指標の配置情報を補正する配置情報補正工程と、前記配置情報補正工程により補正された指標の配置情報を前記指標投影位置計算工程の近似値のかわりに利用して、前記指標投影位置計算工程と前記補正値計算工程と前記配置情報補正工程とを繰返し行うことにより指標の配置情報を算出する繰り返し演算工程を備えることを特徴とする指標配置情報推定方法。
【００２３】
請求項３の発明は、配置情報の情報量が各々異なる複数種類の指標の指標配置情報推定方法であって、指標が含まれるシーンが撮影された複数の画像中から複数種類の指標を検出する指標検出工程と、複数種類の指標のうちのあるひとつ以上の種類の指標を選択する指標種類選択工程と、前記複数の画像が撮影された時の撮像装置の位置及び姿勢の近似値と、前記指標種類選択工程で選択した指標の配置情報の近似値とを基にして、指標が画像面に投影される位置を計算する指標投影位置計算工程と、前記指標検出工程が検出した指標種類選択工程で選択されている種類の指標の画像面上での位置と、前記指標投影位置計算工程により得られた指標の画像面上での投影位置との誤差が小さくなるように選択されている種類の指標の配置情報の補正値を求め、配置情報を補正する配置情報補正工程と、前記配置情報補正工程により補正された指標の配置情報を前記指標投影位置計算工程の近似値のかわりに利用して、前記指標投影位置計算工程と前記配置情報補正工程とを繰返し行って該指標の配置情報を求める第一の繰り返し演算工程と、前記指標種類選択工程で選択されていない他の種類のひとつ以上の指標を選択し直し、前記指標投影位置計算工程と前記配置情報補正工程と前記第一の繰り返し演算工程とを、繰り返し行う第二の繰り返し演算工程とを備えること特徴とする。
【発明の効果】
【００２４】
請求項１の発明によれば、指標を含むシーンを撮像装置により撮影し、配置情報が持つ情報量が異なる複数種類の指標の配置情報を同時に求めることにより、各種類の指標の配置情報を精度よく求めることが可能になる。
【００２５】
また、請求項２の発明によれば、画像からの検出結果の信頼度が高い種類の指標に対してより大きい重みを与えて配置情報を求めることにより、指標の配置情報を精度よく求めることが可能になる。
【００２６】
また、請求項３の発明によれば、指標を含むシーンを撮像装置により撮影し、情報量が異なる配置情報を持つ複数種類の指標の配置情報を交互に求めることを繰返し行うことにより、各種類の指標の配置情報を精度よく求めることが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、添付の図面を参照して本発明の好適な実施形態について説明する。
【００２８】
＜第一実施形態＞
図２は本実施形態における指標位置姿勢推定装置２の機能構成を示すブロック図である。撮像部２１０はカメラであり、指標が配置されたシーンを撮影する。画像取り込み部２２０は、撮像部２１０によって撮影された画像をコンピュータ内に取り込む。画像取り込み部２２０によってコンピュータ内に取り込まれた画像から、指標検出同定部２３０によって指標を検出し、検出されたそれぞれの指標の同定を行う。指標位置姿勢算出部２４０は、指標検出同定部２３０の指標検出結果をもとに、指標の位置及び姿勢を算出する。
【００２９】
図３は、本実施形態における指標位置姿勢推定装置のハードウェア構成を示すブロック図である。図３に示したハードウェア構成は通常のパーソナルコンピュータの構成と同等であるが、さらに画像取り込み器３１０、カメラ３１１が接続されている。画像取り込み器３１０はカメラ３１１で撮影された画像をコンピュータ内に取り込むものであり、画像取り込み部２２０に対応する。画像取り込み器３１０は例えばビデオキャプチャボードであるが、カメラで撮影した画像をコンピュータ内に取り込むものであれば何でもよい。ＣＰＵ３０１は、ディスク３０５またはＲＯＭ３０６、不図示の光学メディア、外部記憶装置等に保存されているプログラムを実行することにより、指標検出同定部２３０、指標位置姿勢算出部２４０として機能する。
【００３０】
次に、以上の構成を備えた本実施形態の指標位置姿勢推定装置２の動作の概要について述べる。
【００３１】
まず本実施形態で用いられる指標について説明する。図４は本実施形態で用いられる指標を説明する図である。図４（ａ）は、３次元空間における点の位置によって表される点指標である。画像内で検出できるように、点指標は同一色からなる円形形状をとり、その重心位置を点指標の３次元空間における位置であるとする。図４（ｂ）は、３次元空間中における位置と姿勢によって表現される平面指標である。本実施形態では、平面指標として正方形指標を用いるが、平面指標は正方形指標に限るものではなく、平面図形様の指標であれば何れの形態であってもよい。正方形指標の３次元空間における位置は、正方形の中心、すなわち２本の対角線の交点であるとする。また、図４（ｂ）に示すように、指標の法線方向をｚ軸とし、ｘ軸、ｙ軸を指標の二つの辺に平行になるように正方形指標の座標系をとり、基準座標系から見た正方形指標の座標系の姿勢を正方形指標の姿勢とする。正方形指標は画像上で容易に検出可能なように黒枠で囲まれているので、黒枠内部の正方形を正方形指標であるとする。
【００３２】
（１．指標の撮影）
撮像部２１０において、指標が配置されたシーンの画像を多数撮影する。撮影された画像は画像取り込み部２２０を通してコンピュータ内に取り込まれる。
【００３３】
（２．指標の検出同定）
指標検出同定部２３０において、コンピュータ内に取り込まれた撮影画像から指標を検出し同定を行う。ここで、指標の検出とは、２次元画像上での指標の画像座標を求めることであり、点指標の場合は画像上での重心の画像座標を、正方形指標では各頂点の画像座標を求める。指標の画像座標は、自動で求めてもよいし、ユーザが画像上をマウスでクリックするなどして手動で指定してもよい。点指標の位置を自動で求める場合には、例えば指標と同一の色を有する画素を該色に対応するＹＵＶ色空間画像の特定領域にあるかどうかで抽出し、同一色として連結している画素をラベリングすることで指標領域を求め、画像内での指標領域の重心を計算する。また、正方形指標の各頂点の位置を自動で求める場合には、例えば入力画像を二値化して、正方形指標の黒枠領域を検出し、黒枠領域に内接する四角形を求める。
【００３４】
指標の同定とは、画像内で検出される指標を一意に特定することである。指標の同定は、自動で行ってもよいし、ユーザが手動で行ってもよい。点指標の同定を自動で行う場合には、例えば複数の点指標の色をそれぞれ異なる色にして、指標検出の際の指標領域のラベリング色をもとに同定を行う。また、正方形指標の同定を自動的に行う場合には、例えば指標ごとに固有のパターンを持つようにすることで同定を行う。
【００３５】
（３．指標の位置姿勢算出）
指標の検出同定結果をもとに基準座標系における指標の位置及び姿勢算出を行う。はじめに透視投影変換について説明する。図５はカメラ座標系及び画面座標系を説明する図である。画面座標系の原点ｏｉは視軸と画像面の交点にとり、画像の水平方向をｘｉ軸、垂直方向をｙｉ軸にとる。また、カメラ座標系の原点ｏｃと画像面との距離（焦点距離）をｆとし、カメラ座標系のｚｃ軸は視軸の反対方向、ｘｃ軸は画像の水平方向と平行に、ｙｃ軸は画像の垂直方向と平行にとる。
【００３６】
透視投影変換により、カメラ座標系上の点ｘｃ＝［ｘｃｙｃｚｃ］ｔは式（２）のように画面座標がｕ＝［ｕｘｕｙ］ｔである点に投影される。
【００３７】
【数１】
2005326274.tif 000003
【００３８】
本実施形態ではレンズ歪みは存在しないか、もしくは補正されていると仮定し、カメラはピンホールカメラであると想定している。式（２）は、図６に示すように、空間中の点と、該点の画像上の投影点とカメラ位置（視点）は同一直線上に存在することを示しており、共線条件式とも呼ばれる。
【００３９】
基準座標系におけるカメラの位置をｔ＝［ｔｘｔｙｔｚ］ｔ、カメラの姿勢（実際には、カメラ座標系に対する基準座標系の姿勢）をω＝［ωｘωｙωｚ］であるとする。ωは３自由度の姿勢表現方法であり、姿勢を回転軸ベクトル及び回転角で表現している。回転角をｒａとすると、ｒａはωによって式（３）のように表される。
【００４０】
【数２】
2005326274.tif 000004
【００４１】
また、回転軸ベクトルをｒ＝［ｒｘｒｙｒｚ］ｔとすると、ｒとωの関係は式（４）のように表される。
【００４２】
【数３】
2005326274.tif 000005
【００４３】
ω（回転角ｒａ、回転軸ベクトルｒ）と３×３回転変換行列Ｒとの関係は式（５）のように表される。
【００４４】
【数４】
2005326274.tif 000006
【００４５】
基準座標系上の点ｘｗ＝［ｘｗｙｗｚｗ］ｔのカメラ座標ｘｃはｔ、Ｒによって式（６）のように表される。
【００４６】
【数５】
2005326274.tif 000007
【００４７】
式（２）、（６）から、透視投影変換によって、基準座標上の点ｘｗ＝［ｘｗｙｗｚｗ］ｔは式（７）のように画像上の点ｕ＝［ｕｘｕｙ］ｔに投影される。
【００４８】
【数６】
2005326274.tif 000008
【００４９】
理想的には、ｔ、ω、ｘｗをもとに式（７）から計算される投影位置（計算位置）と実際に観察される位置（観察位置）は一致する。そのため、計算位置と観察位置の画像の水平方向のずれをＦ、垂直方向のずれをＧ、観察位置をｕｏ＝［ｕｏｘｕｏｙ］ｔとした場合、式（８）に示すようにＦ、Ｇは０となる。
【００５０】
【数７】
2005326274.tif 000009
【００５１】
Ｆ、Ｇはカメラ位置ｔ、カメラ姿勢ω、観察対象である基準座標上での点の位置ｘｗに関する関数である。観察対象が点指標である場合には、式（９）に示すように、Ｆ、Ｇはカメラ位置ｔ、カメラ姿勢ω、点指標の基準座標系における位置ｘｗに関する関数となる。
【００５２】
【数８】
2005326274.tif 000010
【００５３】
一方正方形指標は、基準座標系における位置ｔｍ＝［ｔｍｘｔｍｙｔｍｚ］ｔ及び基準座標系に対する姿勢ωｍ＝［ωｍｘωｍｙωｍｚ］（ωｍに対応した３×３回転変換行列をＲｍとする）で表現される。正方形指標の頂点の正方形指標座標系における位置をｘｍ＝［ｘｍｙｍ０］ｔとする。正方形指標の頂点の基準座標系における位置ｘｗは式（１０）のようにｔｍとωｍ（Ｒｍ）に関する関数となる。
【００５４】
【数９】
2005326274.tif 000011
【００５５】
そのため、式（１１）に示すように、Ｆ、Ｇも、カメラ位置ｔ、カメラ姿勢ω、正方形指標の位置ｔｍ及び正方形指標の姿勢ωｍの関数となる。
【００５６】
【数１０】
2005326274.tif 000012
【００５７】
式（９）、式（１１）はカメラの位置及び姿勢、指標の位置及び姿勢について非線形な方程式となっている。そこで、１次の項までのテイラー展開を用いてカメラの位置及び姿勢、指標の位置及び姿勢の近似値の近傍で線形化し、繰返し計算によってカメラの位置及び姿勢、指標の位置及び姿勢を求める。
【００５８】
式（１２）、（１３）はそれぞれ式（９）、（１１）を線形化したものである。Δｔｘ、Δｔｙ、Δｔｚはカメラの位置、Δωｘ、Δωｙ、Δωｚはカメラの姿勢、Δｘｗ、Δｙｗ、Δｚｗは点指標の位置、Δｔｍｘ、Δｔｍｙ、Δｔｍｚは正方形指標の位置、Δωｍｘ、Δωｍｙ、Δωｍｚは正方形指標の姿勢の近似値に対する補正量を表す。
【００５９】
【数１１】
2005326274.tif 000013
【００６０】
【数１２】
2005326274.tif 000014
【００６１】
ここで、式（１２）、（１３）のＦ０、Ｇ０は定数であり、それぞれ式（８）のＦ、Ｇにカメラ位置及び姿勢、点指標の位置または正方形指標の位置の近似値を代入したときの投影位置の計算位置と観察位置ｕｏとの差である。
【００６２】
式（１２）は、ある画像上で観察される一個の点指標についての観測方程式である。また、式（１３）は、ある画像上で観察される正方形指標の一個の頂点についての観測方程式である。実際には複数の画像上で、複数の点指標や正方形指標の頂点が観察されるため、式（１２）、（１３）は複数得られる。そこで、複数の式（１２）、（１３）を、カメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値に対する補正値についての連立方程式として解き、近似値を補正することを繰り返すことによってカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢を求める。
【００６３】
図７は、本実施形態における点指標の位置、正方形指標の位置及び姿勢を求める手順を示すフローチャートである。なお、指標を含むシーンの撮影及び撮影画像からの指標抽出及び同定は終了しているものとする。ステップＳ１００では、各画像を撮影したカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値の設定を行う。ステップＳ１１０以降では、ここで設定された近似値を補正するための補正値を求める。ステップＳ１１０では、カメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値から、投影誤差を最小化するような各近似値の補正値を同時に求めるための連立方程式の立式を行う。ステップＳ１２０では、ステップＳ１１０で立式された連立方程式から各近似値の補正値を求める。ステップＳ１３０では、ステップＳ１２０で求めた補正値によって近似値を補正し、新たな近似値とする。ステップＳ１４０では、ステップＳ１３０において補正されたカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢が最適値に収束しているかどうかの判定を行う。以下、各ステップについて詳細に説明する。
【００６４】
ステップＳ１００において、各画像を撮影したカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値を入力する。ここで、撮影された画像の枚数をＮ枚とし、それぞれの画像を撮影したカメラの位置をｔｉ＝［ｔｉｘｔｉｙｔｉｚ］ｔ（ｉ＝１，・・・，Ｎ）、姿勢をωｉ＝［ωｉｘωｉｙωｉｚ］（ｉ＝１，・・・，Ｎ）とする。また、位置を求める点指標の数をＫｐ個とし、それぞれの点指標の位置をｘｗｉ＝［ｘｗｉｙｗｉｚｗｉ］ｔ（ｉ＝１，・・・，Ｋｐ）とする。また、位置及び姿勢を求める正方形指標の数をＫｓ個とし、それぞれの正方形指標の位置をｔｍｉ＝［ｔｍｉｘｔｍｉｙｔｍｉｚ］ｔ（ｉ＝１，・・・，Ｋｓ）とし、姿勢をωｍｉ＝［ωｍｉｘωｍｉｙωｍｉｚ］（ｉ＝１，・・・，Ｋｓ）とする。
【００６５】
カメラの位置及び姿勢の近似値は、カメラに磁気センサのような６自由度位置姿勢センサを装着し、センサの出力値から得てもよいし、基準座標系における位置が既知の点と、該点の画像上での投影位置の対応関係から求めてもよい。基準座標系における位置が既知の点を用いる場合には、シーンには位置が既知の点と、本実施形態により求めようとしている配置情報が未知の指標とが混在していることになる。もしくは、後述する指標の位置および姿勢の近似値を利用して、その値を基にしてカメラの位置姿勢の近似値を求めても良い。
【００６６】
また、モーションコントロールカメラのように機械的にカメラの位置姿勢を得てもよいし、あらかじめ位置姿勢がキャリブレーション済みのカメラを用いて撮影し、そのキャリブレーション結果を用いてもよい。
【００６７】
指標の位置及び姿勢の近似値は、巻尺や分度器、測量器などを用いて手動で測定した概略の値を用いてもよいし、本実施形態の方法等で一度推定された値を用いてもよい。
【００６８】
次に、ステップＳ１１０において、画像上で観察される指標の数だけ式（１２）、（１３）の観測方程式をたてる。式（１２）、（１３）は、一台のカメラの位置及び姿勢の補正値と、一個の点指標の位置の補正値または一個の正方形指標の位置及び姿勢の補正値についての観測方程式であるが、ここでは式（１４）に示すように、Ｎ台のカメラの位置及び姿勢、Ｋｐ個の点指標の位置、Ｋｓ個の正方形指標の位置及び姿勢の補正値についての観測方程式をたてる。この場合、未知数の数は、（６×Ｎ＋３×Ｋｐ＋６×Ｋｓ）個である。
【００６９】
【数１３】
2005326274.tif 000015
・・・（１４）
【００７０】
画像ｉ（ｉ＝１，・・・，Ｎ）から検出される点指標の数をｄｐｉ個、正方形指標の数をｄｓｉ個とすると、Ｎ枚の画像から検出される点指標の数Ｄｐ、正方形指標のＤｓは式（１５）のようになる。
【００７１】
【数１４】
2005326274.tif 000016
【００７２】
Ｎ枚の画像から検出される点指標の数がＤｐ、正方形指標の数がＤｓ個である場合には、観測方程式（１４）が（Ｄｐ＋４×Ｄｓ）組、つまり２×（Ｄｐ＋４×Ｄｓ）本の観測方程式が立つ。式（１４）の観測方程式の左辺の定数項Ｆ０、Ｇ０を右辺に移項し、連立方程式を立てると、この連立方程式は式（１６）のように行列形式で書くことができる。
【００７３】
【数１５】
2005326274.tif 000017
【００７４】
Ｊはヤコビ行列と呼ばれ、Ｆ、Ｇのカメラ位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢についての偏微分係数を並べたものである。ヤコビ行列Ｊの行数は、観測方程式の数２×（Ｄｐ＋４×Ｄｓ）個であり、列数は未知数の数（６×Ｎ＋３×Ｋｐ＋６×Ｋｓ）個である。Δは補正値ベクトルである。補正値ベクトルの要素数は未知数の数（６×Ｎ＋３×Ｋｐ＋６×Ｋｓ）個である。Ｅは誤差ベクトルであり、近似値による投影位置の計算位置と観察位置ｕｏの差−Ｆ０、−Ｇ０を要素として持つ。Ｅの要素数は、観測方程式の数２×（Ｄｐ＋４×Ｄｓ）個である。
【００７５】
なお、基準座標系における位置が既知である点指標または位置及び姿勢が既知の正方形指標を同時に撮影することによって、基準座標系の原点、スケール、姿勢を明示的に指定することができる。これらの指標についての式（１４）の方程式では、指標の位置及び指標についての偏微分係数の値はすべて０となる。基準座標系の原点、スケール、姿勢を明示的に指定するためには、点指標であれば位置が既知の点指標を３個用いればよく、正方形指標であれば位置及び姿勢が既知の正方形指標を１個用いればよい。
【００７６】
次に、ステップＳ１２０においてカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値に対する補正値を求める。補正値は式（１６）から求める。ヤコビ行列Ｊが正方行列である場合には、式（１６）の両辺にＪの逆行列をかけることで補正値ベクトルΔを求める。Ｊが正方行列でない場合には、式（１７）に示すように最小二乗法によって補正値ベクトルΔを求める。
【００７７】
【数１６】
2005326274.tif 000018
【００７８】
ここで、ヤコビ行列Ｊの各要素の求め方について説明する。まずＦ＝［ＦＧ］ｔとおく。式（７）、（８）よりＦ、Ｇは式（１８）のように書けるので、Ｆ、Ｇはｘｃ、ｙｃ、ｚｃの関数である。
【００７９】
【数１７】
2005326274.tif 000019
【００８０】
Ｆ、Ｇのｘｃ、ｙｃ、ｚｃによる偏微分係数を各要素に持つヤコビ行列
【００８１】
【数１８】
2005326274.tif 000020
は、式（１９）のように書ける。
【００８２】
【数１９】
2005326274.tif 000021
【００８３】
ここで、ｘｃ、ｙｃ、ｚｃが変数ｓ１、ｓ２、・・・、ｓｍの関数であるならば、Ｆ、Ｇもまたｓ１、ｓ２、・・・、ｓｍの関数である。Ｆ、Ｇのｓ１、ｓ２、・・・、ｓｍによる偏微分係数を各要素に持つヤコビ行列ＪＦｓは、式（２０）のように分解することができる。
【００８４】
【数２０】
2005326274.tif 000022
【００８５】
ｓをカメラ位置ｔ、カメラ姿勢ω、点指標位置ｘｗに置き換え、
【００８６】
【数２１】
2005326274.tif 000023
を求めることにより、Ｆ、Ｇのカメラ位置、カメラ姿勢、点指標位置についての偏微分係数を求めることができる。
【００８７】
Ｆ、Ｇのカメラ位置ｔｘ、ｔｙ、ｔｚによる偏微分係数を各要素に持つヤコビ行列ＪＦｔは、式（２１）のように書ける。
【００８８】
【数２２】
2005326274.tif 000024
【００８９】
ただし、姿勢ωと３×３回転変換行列Ｒの関係は式（５）で表される。
【００９０】
Ｆ、Ｇのカメラ姿勢ωｘ、ωｙ、ωｚによる偏微分係数を各要素に持つヤコビ行列ＪＦωは、式（２２）のように分解して書ける。
【００９１】
【数２３】
2005326274.tif 000025
【００９２】
ここで、
【００９３】
【数２４】
2005326274.tif 000026
は式（２３）に示すようなヤコビ行列である。
【００９４】
【数２５】
2005326274.tif 000027
【００９５】
また、ＪＲｒは式（２４）に示すようなヤコビ行列である。
【００９６】
【数２６】
2005326274.tif 000028
【００９７】
【数２７】
2005326274.tif 000029
【００９８】
【数２８】
2005326274.tif 000030
【００９９】
Ｆ、Ｇの指標位置ｘｗ、ｙｗ、ｚｗによる偏微分係数を各要素に持つヤコビ行列
【０１００】
【数２９】
2005326274.tif 000031
は、式（２７）のように書ける。
【０１０１】
【数３０】
2005326274.tif 000032
【０１０２】
正方形指標の場合、ｘｗは正方形指標の位置ｔｍ及び姿勢ωｍの関数であるため、Ｆ、Ｇもｔｍ及びωｍの関数となる。Ｆ、Ｇのｔｍによる偏微分係数を各要素に持つヤコビ行列は、式（２８）のように分解することができる。
【０１０３】
【数３１】
2005326274.tif 000033
【０１０４】
また、Ｆ、Ｇのωｍによる偏微分係数を各要素に持つヤコビ行列は、式（２９）のように分解することができる。
【０１０５】
【数３２】
2005326274.tif 000034
【０１０６】
【数３３】
2005326274.tif 000035
は、式（２４）〜（２６）と同様にして求めることができる。
【０１０７】
次にステップＳ１３０において、カメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値を、ステップＳ１２０で求めた補正値によって補正する。Ｎ台のカメラの位置及び姿勢は式（３０）のように補正される。
【０１０８】
【数３４】
2005326274.tif 000036
【０１０９】
また、Ｋｐ個の点指標の位置は式（３１）のように補正される。
【０１１０】
【数３５】
2005326274.tif 000037
【０１１１】
また、Ｋｓ個の正方形指標の位置及び姿勢は式（３２）のように補正される。
【０１１２】
【数３６】
2005326274.tif 000038
【０１１３】
次にステップＳ１４０において、収束判定を行う。収束判定は、補正値の絶対値が指定した閾値を下回る、投影位置の計算位置と観察位置の差が指定した閾値を下回る、投影位置の計算位置と観察位置の差が極小となる、などの条件を判定することにより行う。本ステップで収束していると判定された場合、指標の位置及び姿勢推定を終了し、収束していない場合は、ステップＳ１１０に戻り、補正されたカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値をもとに再度連立方程式を立式する。
【０１１４】
以上、説明したように、本実施形態では、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、画像上の指標観察位置をもとに、撮影したカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値に対する補正値を同時に求めて近似値を補正する操作を繰返し行うことによって、点指標の位置及び正方形指標の位置及び姿勢を求める。なお、本実施形態では、指標の配置情報が３次元空間中の１点の位置によって表される指標として円形形状からなる点指標を用いたが、これに限るものではない。例えば、図８（ａ）に示すような表面がある同一色で覆われた球体状の指標であってもよい。このような球体の場合、検出方法は円形形状を検出する場合と全く同様であり、検出結果の重心位置を指標の位置とすればよい。また、図８（ｂ）に示すような２次元パターンの指標であってもよい。この場合、エッジ検出オペレータなどにより白黒の境界エッジを検出し、得られたエッジ点を直線近似した後に、それらの交点を求める方法によって、指標位置を検出することができる。さらには、空間中の自然特徴点を利用することが可能である。その場合、例えば、予め撮影しておいた特徴点近傍の画像をテンプレートとして用意しておき、そのテンプレートと実際の画像間の相関を取り、相関の高いものとして検出することができる。これら何れの方法も、３次元空間中の１点の位置によって、指標の配置情報が表現されていることは共通する特徴であり、このような１点のみの位置を配置情報とする指標として、本実施形態に述べた方法を適用することができる。
【０１１５】
また、本実施形態では、指標の配置情報が３次元空間中の位置と姿勢によって表される指標として正方形指標を用いたが、これに限るものではない。例えば、図９（ａ）に示すような立方体形状の指標であってもよい。立方体形状の指標の場合、その６つの側面が正方形となることから、正方形指標と同様な模様を各側面に配置しておくことによって、正方形指標を検出する方法と同様な方法で検出することが可能である。立方体形状をもつ塊として指標として取り扱う場合、この指標の場合もその配置情報は位置と姿勢とによって表されることとなる。また、図９（ｂ）に示すような正方形以外の多角形の指標であってもよい。これらの指標に共通する性質として、何れの指標もその配置情報として３次元空間中の位置と姿勢によって表現される指標であり、本実施形態で述べた方法を適用することができる。
【０１１６】
＜第二実施形態＞
第一実施形態では、点指標の位置と正方形指標の位置及び姿勢の補正値を同時に求めることにより、点指標についての投影誤差（投影位置の計算位置と観察位置の誤差）と正方形指標の投影誤差が同時に最小二乗化されるため、点指標の位置、正方形指標の位置及び姿勢を精度よく求めることができる。第二実施形態では、点指標の位置と正方形指標の位置及び姿勢を求めることを交互に繰り返すことにより、点指標の位置、正方形指標の位置及び姿勢を精度よく求める。
【０１１７】
図１０は本実施形態における点指標の位置、正方形指標の位置及び姿勢を求める手順を示フローチャートである。なお、指標を含むシーンの撮影及び撮影画像からの指標抽出及び同定は終了しているものとする。ステップＳ２１０では、各画像を撮影したカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値の設定を行う。ステップＳ２２０では、カメラの位置及び姿勢、正方形指標の位置及び姿勢の近似値を用いてカメラの位置及び姿勢と正方形指標の位置及び姿勢を求める。ステップＳ２３０では、ステップＳ２１０で設定した点指標の位置の近似値と、ステップＳ２２０で求めたカメラの位置及び姿勢を用いてカメラの位置及び姿勢と点指標の位置を求める。ステップＳ２４０では、ステップＳ２２０、Ｓ２３０で求めたカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢が最適値に収束しているかどうかの判定を行う。以下、各ステップについて詳細に説明する。
【０１１８】
ステップＳ２１０において、各画像を撮影したカメラの位置及び姿勢、点指標の位置、正方形指標の位置及び姿勢の近似値を入力する。ここで、第一実施形態と同様に、撮影された画像の枚数をＮ枚とし、それぞれの画像を撮影したカメラの位置をｔｉ＝［ｔｉｘｔｉｙｔｉｚ］ｔ（ｉ＝１，・・・，Ｎ）、姿勢をωｉ＝［ωｉｘωｉｙωｉｚ］（ｉ＝１，・・・，Ｎ）とする。また、位置を求める点指標の数をＫｐ個とし、それぞれの点指標の位置をｘｗｉ＝［ｘｗｉｙｗｉｚｗｉ］ｔ（ｉ＝１，・・・，Ｋｐ）とする。また、位置及び姿勢を求める正方形指標の数をＫｓ個とし、それぞれの正方形指標の位置をｔｍｉ＝［ｔｍｉｘｔｍｉｙｔｍｉｚ］ｔ（ｉ＝１，・・・，Ｋｓ）とし、姿勢をωｍｉ＝［ωｍｉｘωｍｉｙωｍｉｚ］（ｉ＝１，・・・，Ｋｓ）とする。
【０１１９】
カメラの位置及び姿勢、指標の位置及び姿勢の近似値は、第一実施形態で述べたような方法によって得るものとする。
【０１２０】
次に、ステップＳ２２０において、まず正方形指標の位置及び姿勢を求める。ここでは式（３３）に示すように、画像上で検出された正方形指標の各頂点に対して、Ｎ台のカメラの位置及び姿勢、Ｋｓ個の正方形指標の位置及び姿勢の補正値についての観測方程式をたてる。この場合、未知数の数は、（６×Ｎ＋６×Ｋｓ）個である。
【０１２１】
【数３７】
2005326274.tif 000039
【０１２２】
Ｆ０、Ｇ０は定数項であり、正方形指標の各頂点の近似値から計算される投影位置と実際の観察位置の差である。Ｎ枚の画像上で検出された正方形指標の数がＤｓ個である場合、式（３３）の方程式は４×Ｄｓ組、すなわち８×Ｄｓ本の方程式ができる。この８×Ｄｓ本の連立方程式を解くことにより、Ｎ台のカメラの位置及び姿勢、Ｋｓ個の正方形指標の位置及び姿勢の近似値に対する補正値が求まる。近似値を補正し、カメラの位置及び姿勢、正方形指標の位置及び姿勢が収束するまで、補正値計算と近似値の補正を繰り返す。
【０１２３】
次に、ステップＳ２３０において、ステップＳ２２０で求めたカメラの位置及び姿勢を近似として、点指標の位置を求める。ここでは式（３４）に示すように、画像上で検出された点指標に対して、Ｎ台のカメラの位置及び姿勢、Ｋｐ個の点指標の位置の補正値についての観測方程式をたてる。この場合、未知数の数は、（６×Ｎ＋３×Ｋｐ）個である。
【０１２４】
【数３８】
2005326274.tif 000040
【０１２５】
Ｆ０、Ｇ０は定数項であり、点指標の近似値から計算される投影位置と実際の観察位置の差である。Ｎ枚の画像上で検出された点指標の総数がＤｐ個である場合、式（３４）の方程式はＤｐ組、すなわち２×Ｄｐ本の方程式ができる。この２×Ｄｐ本の連立方程式を解くことにより、Ｎ台のカメラの位置及び姿勢、Ｋｐ個の点指標の位置の近似値に対する補正値が求まる。近似値を補正し、カメラの位置及び姿勢、点指標の位置が収束するまで、補正値計算と近似値の補正を繰り返す。
【０１２６】
次にステップＳ２４０において、ステップＳ２２０で求めた正方形指標の位置及び姿勢と、ステップＳ２３０で求めたカメラの位置及び姿勢と点指標の位置を用いて収束判定を行う。収束判定は、例えば計算される投影位置と実際の観察位置の誤差の平均値が閾値を下回った場合に収束したと判定する。本ステップで収束していると判断された場合には処理を終了し、収束していないと判断された場合にはステップＳ２２０に戻る。
【０１２７】
以上説明したように、第二実施形態では、正方形指標の位置及び姿勢と点指標の位置を求めることを交互に繰り返すことにより、点指標の位置、正方形指標の位置及び姿勢を精度よく求めることができる。なお、本実施形態の説明では正方形指標の位置及び姿勢推定を点指標の位置推定の前に行っていたが、点指標の位置推定を正方形指標の位置及び姿勢推定の前に行ってもよい。
【０１２８】
また、第一実施形態と同様に、指標の配置情報が３次元空間中の１点の位置によって表される点指標は、円形形状の指標だけでなく、図８に示すような形状の指標を用いてもよい。指標の配置情報が３次元空間中の位置と姿勢によって表される指標は、正方形指標だけでなく、図９に示すような形状の指標を用いてもよい。
【０１２９】
＜第三実施形態＞
前記第一実施形態、第二実施形態では、撮像装置によって指標を含むシーンの画像を撮影してから指標の位置及び姿勢推定を行っていた。第三実施形態では、あらかじめ撮影されて記憶装置に保存されている画像をもとに指標の位置及び姿勢推定を行うことで、オフラインでの処理を可能にする。
【０１３０】
図１１は、第三実施形態における指標位置姿勢推定装置３のブロック図である。指標位置姿勢推定装置３は、画像保存部３５０、画像取り込み部３２０、指標検出同定部３３０、指標位置姿勢算出部３４０によって構成される。以下、指標位置姿勢推定装置３における指標位置姿勢推定の手順について説明する。
【０１３１】
（１．画像の取り込み）
指標を含むシーンの画像があらかじめＮ枚撮影され、画像保存部３５０に保存されている。画像取り込み部３２０は、画像保存部３５０からＮ枚の画像を読み出し、指標検出同定部３３０に送る。
【０１３２】
（２．指標の検出・同定）
指標検出同定部３３０において、画像取り込み部３２０によって読み出された撮影画像から指標を検出し同定を行う。指標の検出は、点指標については２次元画像上での重心位置を、正方形指標については２次元画像上での各頂点の位置を求める。指標の検出は、自動で行っても手動で行ってもよい。指標の検出後、検出指標を同定し、一意に特定する。
【０１３３】
（３．指標の位置及び姿勢推定）
第一実施形態及び第二実施形態で説明した方法により、カメラの位置及び姿勢、指標の位置及び姿勢の近似値を与え、近似値に対する補正値を求めて近似値を補正する処理を繰返し行うことにより、カメラの位置及び姿勢、指標の位置及び姿勢を求める。
【０１３４】
ここで、カメラの位置及び姿勢の近似値は、画像を撮影する際にカメラに６自由度位置姿勢センサを装着し、撮影と同時にセンサ出力値をカメラの位置及び姿勢データとしてファイルに保存し、指標位置姿勢推定時に該ファイルを読み出した値を用いてもよい。図１２にカメラの位置及び姿勢データのファイルフォーマットの一例を示す。行頭に＃のついた一行目はコメント行であるとする。２行目以降にカメラの位置及び姿勢データが含まれている。まず撮影画像のＩＤ番号が記述されている。ＩＤ番号は、撮影画像のファイル名と対応付けられ、例えば撮影画像がＪＰＥＧフォーマットで保存される場合には、ＩＤ番号が０の撮影画像のファイル名は００００００．ｊｐｇ、ＩＤ番号が１の撮影画像のファイル名は０００００１．ｊｐｇというように名前を付ける。ＩＤ番号の次に、それぞれ括弧で囲まれて位置データ、姿勢データが記述される。なお、ここでは６自由度位置姿勢センサの出力値としたが、カメラの位置及び姿勢の近似値であれば何でもよい。
【０１３５】
また本実施形態では、画像を取り込みはすべて画像保存部からの読み出しによって行われているが、予め撮影された画像を読み出すだけでなく、新たに撮影装置で画像を撮影し、両方の画像を用いてもよい。
【０１３６】
以上説明したように、第三実施形態では、予め撮影されて記憶装置に保存されている画像をもとに指標の位置及び姿勢推定を行うことにより、オフラインでの指標の位置及び姿勢推定が可能になる。
【０１３７】
＜第四実施形態＞
第四実施形態は、前記第一乃至第三実施形態で述べた指標位置及び推定装置を包含する指標位置及び姿勢推定システムを用いて、指標データファイルの出力を行う。
【０１３８】
図１３は、第四実施形態における指標位置及び姿勢推定システムの処理の手順を示すフローチャートである。ステップＳ４１０では、指標の配置情報を推定する指標のリストが記述されている指標ファイルを読み出す。ステップＳ４２０では、既に撮影されて保存されている画像を用いるかどうかの判定を行う。ステップＳ４３０では、既に撮影されて保存されている画像を読み出す。ステップＳ４４０では、新たに撮像装置によって画像を撮影するかの判定を行う。ステップＳ４５０では、撮像装置によって指標を含むシーンの撮影を行う。ステップＳ４６０において、記憶装置から読み出された画像または撮像装置によって撮影された画像から指標の検出・同定を行う。ステップＳ４７０では指標の検出結果をもとに、指標の位置及び姿勢の推定を行う。ステップＳ４８０では、指標の位置及び姿勢推定を終了するかどうかの判定を行う。ステップＳ４９０では、指標の位置及び姿勢推定結果をファイルに書き出す。以下、各ステップについて詳細に説明する。
【０１３９】
まずステップＳ４１０において指標ファイルの読み出しを行う。指標ファイルには、位置姿勢推定を行う各指標の固有の名前、種類（ここでは点指標または正方形指標）、各指標が正方形指標である場合には一辺の長さ、各指標が点指標である場合には指標の色、指標の位置及び姿勢の近似値が記述されている。図１４に指標ファイルフォーマットの一例を示す。図１４の指標ファイルでは、まず指標の種類を記述し、次に指標の名前を記述する。図１４のｓｑｕａｒｅは正方形指標を示し、ｐｏｉｎｔは点指標を示している。各指標の記述は括弧で囲まれている。正方形指標の場合、ｐｏｓｉｔｉｏｎの欄に指標の位置の近似値、ｏｒｉｅｎｔａｔｉｏｎの欄に姿勢の近似値、ｓｉｚｅの欄に正方形の一辺の長さが記述される。点指標の場合、ｐｏｓｉｔｉｏｎの欄に指標の位置の近似値、ｃｏｌｏｒの欄に指標の色が記述される。指標の色は、例えば色をＹＵＶ空間で表現した場合のＵ、Ｖ成分を記述する。
【０１４０】
次にステップＳ４２０で、あらかじめ撮影してあって保存されているデータを利用するかどうかの判断を行う。あらかじめ撮影してあるデータが無い場合、またはあらかじめ撮影してあるデータを利用しない場合にはステップＳ４４０に進む。あらかじめ撮影してあるデータを利用する場合には、ステップＳ４３０に進み、画像ファイルの読み出しを行う。画像ファイルを読み出す際に、第三実施形態において述べたような撮影時のカメラの位置及び姿勢のデータファイルが存在する場合には同時に読み込む。
【０１４１】
ステップＳ４４０において、新規に撮影を行うかどうかの判断を行う。新規に撮影を行う場合にはステップＳ４５０に進み、指標を含むシーンの撮影を行う。カメラに装着された６自由度位置姿勢センサなどからカメラの位置及び姿勢の近似値を得ることができる場合には、ここで同時に取得する。
【０１４２】
次に、ステップＳ４６０において、撮影された画像、読み出された画像から指標の検出を行い、ステップＳ４１０で読み出した指標ファイル内で記述されている指標との対応付け（同定）を行う。ステップＳ４６０では、指標の検出・同定の他に、各画像を指標の位置及び姿勢推定に利用するかどうかの決定も行う。
【０１４３】
指標の検出・同定が終わったら、ステップＳ４７０において指標の位置及び姿勢の推定を行う。具体的な推定方法は、第一実施形態、第二実施形態において述べたとおりである。指標の位置及び姿勢の推定終了後、ステップＳ４８０に進み、指標の位置及び姿勢推定を終了するかどうかの判断を行う。ユーザが推定結果に満足できない場合には、ステップＳ４５０に戻り、新たに画像撮影を行って、再度推定を行う。ユーザが推定結果に満足している場合には、ステップＳ４９０に進み、図１４に示すようなフォーマットで、指標ファイルとして書き出す。ＭＲアプリケーションのユーザは、ステップＳ４９０において書き出された指標ファイルを、仮想空間と現実空間との位置合わせに利用する。
【０１４４】
以上説明したように、第四実施形態は、前記第一乃至第三実施形態で述べた指標位置及び推定装置を包含する指標位置及び姿勢推定システムを用いて、ＭＲアプリケーションにおいて位置合わせのために利用される指標データファイルの出力を行う。
【０１４５】
＜第五実施形態＞
第五実施形態では、配置情報の情報量が異なる種類の指標について、指標の種類ごとに重みを変えて配置情報を求める。画像からの検出結果の信頼度が高い指標に対して大きい重みを与えて配置情報を求めることにより、指標の配置情報の精度を高める。
【０１４６】
本実施形態では、点指標と正方形指標の二種類の指標を用いる場合について説明する。図４（ａ）に示すような円形形状からなる点指標の画像上の観察位置としては、通常画像上の円形領域の重心を用いる。しかしながら、画像上での重心は、必ずしも３次元空間における円形領域の重心とはならない。そのため、画像上での検出位置の信頼度は低くなる。一方、正方形指標の場合には、画像上の観察位置として、各頂点の投影位置をそのまま用いるために、画像上での検出位置の信頼度は高い。第一実施形態では、点指標の位置と正方形指標の位置及び姿勢を求めるために式（１６）を用いていた。式（１６）を式（３５）として再度掲載する。
【０１４７】
【数３９】
2005326274.tif 000041
【０１４８】
式（３５）を、点指標の検出結果については小さい重みを与え、正方形指標については大きい重みを与えるよう変更することで、指標の位置及び姿勢を求める際に、点指標に比べて正方形指標の検出結果の寄与が大きくなるようにすることができる。ここで、式（３６）に示すように重み行列Ｗを定義する。
【０１４９】
【数４０】
2005326274.tif 000042
【０１５０】
重み行列Ｗは対角行列である。式（３７）に示すように、この重み行列Ｗを式（３５）の両辺にかける。
Ｗ Ｊ △＝Ｗ Ｅ      ・・・（３７）
式（３５）の両辺の各行において、点指標の行については重みは小さく、正方形指標の行については重みが大きくなるように重み行列Ｗの各要素の値を設定する。行列（Ｗ・Ｊ）が正方行列であるときは式（３８）のように、そうでない場合は式（３９）のように最小二乗法によって補正値ベクトルΔを求める。
△＝（Ｗ Ｊ）−１ Ｗ Ｅ                                ・・・（３８）
△＝（（Ｗ Ｊ）２（Ｗ Ｊ））−１ （Ｗ Ｊ）２ Ｗ Ｅ      ・・・（３９）
【０１５１】
以上説明したように、第五実施形態は、配置情報の情報量が異なる種類の指標について、画像からの検出結果の信頼度が高い種類の指標に対してより大きい重みを与えて配置情報を求めることにより、指標の配置情報の精度を高める。
【０１５２】
また、この重みＷを各々の指標がパラメータの更新値へ与える影響の差異を基にして、動的に変更することにより、計算を安定化させる方法は公知の技術であり、そのような方法と組み合わせることも可能であることは言うまでもない。
【０１５３】
＜変形例＞
第一の実施例では、指標の配置情報の補正方法として、観測方程式をテイラー展開しその１次の項までを利用して繰り返し補正していく方法を述べた。これは、ある繰り返しの一過程において、局所的に観測方程式を線形近似し、誤差０となると仮定した場合の未知パラメータの補正量を推定する方法であり、一般にニュートン法と呼ばれている方法と等価な方法である。ニュートン法は非線形方程式を数値演算により求解する代表的な方法であるが、本実施形態で利用する繰り返し演算方法はこの方法に限ったものではない。例えば、ニュートン法と同様に周知の技術として知られているＬｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄｔ法のように、一過程において推定される未知パラメータの補正量のばらつきに基づいて、補正量を動的に変更してもよい。また、テイラー展開した結果をより高次の項まで考慮して、繰り返し演算を行うような方法であっても良い。本発明の本質は、配置情報量の異なる複数種類の指標が混在して存在している場合であっても、それぞれの種類の指標を有効に利用して最適な解を求めることにあり、数値解法としての繰り返し演算の具体的な方法によって本質が失われるものではない。
【図面の簡単な説明】
【０１５４】
【図１】従来の位置姿勢計測装置を説明する図である。
【図２】第一実施形態における指標位置姿勢推定装置２の機能構成を示すブロック図である。
【図３】第一実施形態における指標位置姿勢推定装置のハードウェア構成を示すブロック図である。
【図４】第一実施形態で用いられる指標を説明する図である。
【図５】カメラ座標系及び画面座標系を説明する図である。
【図６】共線条件式を説明する図である。
【図７】第一実施形態における点指標の位置、正方形指標の位置及び姿勢を求める手順を示すフローチャートである。
【図８】３次元空間中の１点の位置で表される指標を説明する図である。
【図９】３次元空間中の位置と姿勢で表される指標を説明する図である。
【図１０】第二実施形態における点指標の位置、正方形指標の位置及び姿勢を求める手順を示フローチャートである。
【図１１】第三実施形態における指標位置姿勢推定装置３のブロック図である。
【図１２】カメラの位置及び姿勢データのファイルフォーマットの一例を示す図である。
【図１３】第四実施形態における指標位置及び姿勢推定システムの処理の手順を示すフローチャートである。
【図１４】指標ファイルフォーマットの一例を示す図である。
【図１】
2005326274.tif 000043
【図２】
2005326274.tif 000044
【図３】
2005326274.tif 000045
【図４】
2005326274.tif 000046
【図５】
2005326274.tif 000047
【図６】
2005326274.tif 000048
【図７】
2005326274.tif 000049
【図８】
2005326274.tif 000050
【図９】
2005326274.tif 000051
【図１０】
2005326274.tif 000052
【図１１】
2005326274.tif 000053
【図１２】
2005326274.tif 000054
【図１３】
2005326274.tif 000055
【図１４】
2005326274.tif 000056