(57)【特許請求の範囲】
【請求項１】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である指標位置および指標姿勢を、当該指標の指標情報として保持する保持手段と、
前記現実空間を撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、
前記撮像装置の位置姿勢を計測した撮像位置姿勢を取得する取得手段と、
前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定手段と、
前記指標位置、前記指標姿勢、および前記撮像位置姿勢に基づいて、前記指標情報が保持された指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、
（１）前記検出された指標について前記推定手段により推定された傾斜角と前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定手段により推定された回転角と該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ手段と
を有することを特徴とする情報処理装置。
【請求項２】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当該指標の指標情報として保持する保持手段と、
前記現実空間を撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、
前記撮像装置の位置姿勢を計測した撮像位置姿勢を取得する第１取得手段と、
前記現実物体の位置を計測した物体位置と、当該現実物体の姿勢を計測した物体姿勢とを取得する第２取得手段と、
前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定手段と、
前記相対位置、前記相対姿勢、前記物体位置、前記物体姿勢、および前記撮像位置姿勢に基づいて、前記指標情報が保持された指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、
（１）前記検出された指標について前記推定手段により推定された傾斜角と、前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定手段により推定された回転角と、該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ手段と
を有することを特徴とする情報処理装置。
【請求項３】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当該指標の指標情報として保持する保持手段と、
前記現実空間を、該現実空間に固定され撮像位置姿勢が既知である撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、
前記現実物体の位置を計測した物体位置と、当該現実物体の姿勢を計測した物体姿勢とを取得する取得手段と、
前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定手段と、
前記相対位置、前記相対姿勢、前記物体位置、前記物体姿勢、および前記撮像位置姿勢に基づいて、前記指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、
（１）前記検出された指標について前記推定手段により推定された傾斜角と、前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定手段により推定された回転角と、該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ手段と、
を有することを特徴とする情報処理装置。
【請求項４】
前記撮像装置の姿勢は、姿勢センサを用いて計測されることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記物体姿勢は、姿勢センサを用いて計測されることを特徴とする請求項２又は３に記載の情報処理装置。
【請求項６】
配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である指標位置および指標姿勢を、当該指標の指標情報として予め保持した情報処理装置が行う情報処理方法であって、
前記情報処理装置の検出手段が、現実空間を撮像装置で撮像した撮像画像から１つ以上の、指標を検出する検出工程と、
前記情報処理装置の取得手段が、前記撮像装置の位置姿勢を計測した撮像位置姿勢を取得する取得工程と、
前記情報処理装置の推定手段が、前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定工程と、
前記情報処理装置の投影手段が、前記指標位置、前記指標姿勢、および前記撮像位置姿勢に基づいて、前記指標情報が保持された指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影工程と、
前記情報処理装置の対応づけ手段が、（１）前記検出された指標について前記推定工程において推定された傾斜角と前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定手段において推定された回転角と該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ工程と
を有することを特徴とする情報処理方法。
【請求項７】
前記情報処理装置の保持手段が、現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当該指標の指標情報として予め保持した情報処理装置が行う情報処理方法であって、
前記情報処理装置の検出手段が、前記現実空間を撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出工程と、
前記情報処理装置の第１取得手段が、前記撮像装置の位置姿勢を計測した撮像位置姿勢を取得する第１取得工程と、
前記情報処理装置の第２取得手段が、前記現実物体の位置を計測した物体位置と、当該現実物体の姿勢を計測した物体姿勢とを取得する第２取得工程と、
前記情報処理装置の推定手段が、前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定工程と、
前記情報処理装置の投影手段が、前記相対位置、前記相対姿勢、前記物体位置、前記物体姿勢、および前記撮像位置姿勢に基づいて、前記指標情報が保持された指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影工程と、
前記情報処理装置の対応づけ手段が、（１）前記検出された指標について前記推定工程において推定された傾斜角と、前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定工程において推定された回転角と、該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ工程と
を有することを特徴とする情報処理方法。
【請求項８】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当該指標の指標情報として予め保持した情報処理装置が行う情報処理方法であって、
前記情報処理装置の取得手段が、前記現実空間を、該現実空間に固定され撮像位置姿勢が既知である撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出工程と、
前記情報処理装置の手段が、前記現実物体の位置を計測した物体位置と、当該現実物体の姿勢を計測した物体姿勢とを取得する取得工程と、
前記情報処理装置の推定手段が、前記撮像画像および前記撮像位置姿勢に基づいて、前記検出された指標が配置された面に垂直で当該指標を通過する回転軸の傾斜角と、当該回転軸を中心に当該指標が何れの方向を向いているかを示す回転角とを、前記検出された指標の推定姿勢として推定する推定工程と、
前記情報処理装置の投影手段が、前記相対位置、前記相対姿勢、前記物体位置、前記物体姿勢、および前記撮像位置姿勢に基づいて、前記指標を前記撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影工程と、
前記情報処理装置の対応づけ手段が、（１）前記検出された指標について前記推定工程において推定された傾斜角と、前記指標情報が保持された指標の前記投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）該検出された指標について前記推定工程において推定された回転角と、該保持された指標の前記投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、該検出された指標と該保持された指標とを、前記撮像画像において検出された指標の画像座標と前記投影座標との距離に基づいて対応づけする対応づけ工程と
を有することを特徴とする情報処理方法。
【請求項９】
請求項６乃至８の何れか１項に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理方法に関し、特には現実空間中に配置された指標を、現実空間を撮像した画像から検出、識別する技術に関する。
【背景技術】
【０００２】
［従来技術１］
例えば現実空間と仮想空間とを融合表示する複合現実感システムにおいて、現実空間を撮像する撮像部（以下、カメラとも言う）の位置姿勢計測が必要となる。従来、位置姿勢センサにより撮像部の位置姿勢測定する際に、現実空間中に予め配置した、位置が既知の指標（例えば特定の形状及び色を有する物体）を利用して、測定結果を補正する技術が知られている（特許文献１、２や非特許文献１参照）
【０００３】
言い換えると、これらの方法は、カメラの位置姿勢を測定する位置姿勢センサと、カメラで撮像した指標とを利用して、カメラの位置姿勢を推定する方法である。このような方法で利用される指標としては、色領域の重心や同心円等がある。また、指標は同時に複数個利用されることが多いため、カメラが撮像した画像から検出した指標（以下、検出指標と呼ぶ）が、現実空間に複数個配置した指標のどれに対応するのか同定する必要がある。  従来、指標の同定方法の１つとして、既知である指標の絶対位置と位置姿勢センサの計測値とに基づいた投影計算から得られる、画像（撮像）面上での指標の推定座標と、実際に画像から検出された指標の画像座標との間の関係を利用することが知られている。
【０００４】
［従来技術２］
また、一方で、非特許文献２乃至４において開示されているように、位置姿勢センサを用いず、カメラで撮像した指標のみを利用してカメラの位置姿勢推定を行う方法も知られている。そして、これらの非特許文献においては、正方形の指標を利用し、正方形の４頂点の座標を基にして、カメラの位置姿勢を測定（推定）している。ただし、正方形は、その中心点（対角線の交点）を通り、面に垂直な軸を回転軸として９０度毎の回転対称形であることから、画像中の頂点座標からだけでは指標の向きを判別できない。そのため、指標の内部に、指標の向きを判別するためのさらなる特徴（例えば方向性のあるパターン）が設けられている。さらに、指標を複数利用する場合、カメラで撮像した画像のみに基づいて複数の指標を同定する必要があるため、指標の内部にはさらに指標毎に異なる固有のパターンや符号などの図形情報が埋め込まれている。
【０００５】
［従来技術３］
従来技術１のカメラ位置姿勢推定方法において、指標として点マーカや同心円マーカを利用する場合、１つの指標がもつ情報は１つの座標値でしかない。そのため幾何的な情報が少なく、複数の指標を同時に利用する方法が採られている。
【０００６】
上述したように、複数の指標を同時に用いる場合には、撮像された検出指標が現実空間に配置された指標のどれに相当するのかを同定する方法を工夫する必要がある。特に、指標の画像特徴（色や形状など、画像処理により識別できる特徴）が同じか、差が小さく、かつ数多くの指標を配置した場合には誤識別の可能性があった。
【０００７】
一方で、従来技術２で利用されている正方形指標は、上下左右を識別するために、マーカ固有の符号情報やテンプレートとなりうる情報などを埋め込む必要があった。このような複雑な構造を持つ指標を画像から検出しなければならないため、撮像画像面の中で十分に大きな面積を占めるように撮像しなければ、指標を認識できないという課題があった。
【０００８】
上述した従来技術１の指標１つ当たりの情報量が少ないことによる誤識別、及び従来技術２の指標の複雑さによる配置条件への制約といった問題を解決するためには、以下の方法が考えられる。
【０００９】
従来技術２のような、方向性を有する同一種の指標が現実空間に配置されているという状況において、検出指標の画像面上における方向と、位置姿勢センサを用いて投影計算を行うことで得た、各指標の画像面上における推定方向とを比較する。これにより、従来よりも単純で安定的に指標を識別することが可能である。
【００１０】
例えば、図７に示すように、位置姿勢センサを用いて投影計算した指標２０２Ａの方向と、撮像画像から検出された候補となる指標２０１Ａ、２０１Ｂとの画像上における方向性を比較する。図７の例では、方向性の近い指標２０１Ａが、２０２Ａに対応する指標であると判定する。この方法では、従来技術１よりも情報量の多い指標を用いながら、従来技術２の指標と比較して指標を小さくすることが可能であり、配置条件の制約を緩和することができる。
【００１１】
【特許文献１】特開平１１−０８４３０７号公報
【特許文献２】特開２０００−０４１１７３号公報
【非特許文献１】A. State, G. Hirota, D. T. Chen, B. Garrett, and M. Livingst on: Superior augmented reality registration by integrating landmark tracking and magnetic tracking, Proc. SIGGRAPH '96, pp.429-438, July 1996.
【非特許文献２】加藤, Billinghurst, 浅野, 橘: マーカー追跡に基づく拡張現実感システムとそのキャリブレーション, 日本バーチャルリアリティ学会論文誌, vol.4, no.4, pp.607-616, Dec. 1999.
【非特許文献３】X. Zhang, S. Fronz, N. Navab: Visual marker detection and decoding in AR systems: A comparative study, Proc. of International Symposium on Mixed and Augmented Reality (ISMAR'02), 2002.
【非特許文献４】Jun Rekimoto, "Matrix: A Realtime Object Identification and Registration Method for Augmented Reality", Proc. of Asia Pacific Computer Human Interaction (APCHI '98), 1998.
【発明の開示】
【発明が解決しようとする課題】
【００１２】
従来技術３の方法は、カメラに取り付けた位置姿勢センサの値と、予め登録されている指標の絶対座標とから計算される画面上の位置に、指標を投影して方向性の比較を行う。そのため、同時に撮像される可能性がある複数の指標同士は、互いに方向性が異なるように指標を配置しなければならないという制限があった。
【００１３】
例えば、図３に示すように床と壁に指標を１つずつ配置した場合、床と壁に配置した指標２０１Ａ及び２０１Ｂは、撮像画像中で同じ方向性を持つため、位置姿勢センサの誤差によっては誤識別の可能性がある。このため、このような配置を避けるために、指標のどちらか一方の向きを変更する必要がある。
【００１４】
すなわち、従来技術３の方法は、近接して複数の指標が撮像されうる場合、その方向性が異なって撮像されるように指標を配置しなければならないという制限を有している。この場合、図３の例のように、現実空間中では異なる傾斜を有する面に指標を配置する場合であっても、撮像画像では方向性に区別が付けにくい場合を考慮する必要がある。
特に、多数の指標を、複数の傾斜面を持つ小領域（床と壁や、多数の傾斜面を持つ立体物）に密集させて配置するような場合において、撮像時の方向性を考慮した配置は容易でない。そのため、実際には同時に撮像される可能性のある領域内に配置できる指標の数が制限されることになっていた。
【００１５】
また、図５に示すように、床に指標２０１Ａが配置され、壁側に印刷物６０１が配置されているとする。この状況において、カメラのノイズなどの要因より、壁の印刷物６０１の一部領域を検出指標６０２として誤検出する場合がある。図５に示すような撮像画像においては、指標２０１Ａは撮像画像の端で切れているため指標として認識されない。その結果、投影によって計算された指標２０１Ａの投影像２０２Ａの方向と、誤検出された検出指標６０２の画像上での方向とが類似している場合に、検出指標６０２を指標２０１Ａと誤識別してしまう。このように、従来は、実際の指標とは傾斜面が異なる場所で誤検出された検出指標６０２に誤同定してしまう場合があるという課題があった。
【００１６】
本発明はこのような従来技術の課題を解決し、精度良く指標を識別可能な情報処理装置及び情報処理方法を提供することを主な目的とする。
【課題を解決するための手段】
【００１７】
上述の目的は、以下に記載の装置によって達成される。
【００１８】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である指標位置および指標姿勢を、当指標の指標情報として保持する保持手段と、現実空間を撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、前記撮像装置の位置姿勢を計測した撮像位置姿勢を取得する取得手段と、撮像画像および撮像位置姿勢に基づいて、検出された指標が配置された面に垂直で当指標を通過する回転軸の傾斜角と、当回転軸を中心に当指標が何れの方向を向いているかを示す回転角とを、検出された指標の推定姿勢として推定する推定手段と、指標位置、指標姿勢、および撮像位置姿勢に基づいて、指標情報が保持された指標を撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、（１）検出された指標について推定手段により推定された傾斜角と指標情報が保持された指標の投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）検出された指標について推定手段により推定された回転角と保持された指標の投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、検出された指標と保持された指標とを、撮像画像において検出された指標の画像座標と投影座標との距離に基づいて対応づけする対応づけ手段とを有することを特徴とする情報処理装置。
【００１９】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当指標の指標情報として保持する保持手段と、現実空間を撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、撮像装置の位置姿勢を計測した撮像位置姿勢を取得する第１取得手段と、現実物体の位置を計測した物体位置と、当現実物体の姿勢を計測した物体姿勢とを取得する第２取得手段と、撮像画像および撮像位置姿勢に基づいて、検出された指標が配置された面に垂直で当指標を通過する回転軸の傾斜角と、当回転軸を中心に当指標が何れの方向を向いているかを示す回転角とを、検出された指標の推定姿勢として推定する推定手段と、相対位置、相対姿勢、物体位置、物体姿勢、および撮像位置姿勢に基づいて、指標情報が保持された指標を撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、（１）検出された指標について推定手段により推定された傾斜角と、指標情報が保持された指標の投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）検出された指標について推定手段により推定された回転角と、保持された指標の投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、検出された指標と保持された指標とを、撮像画像において検出された指標の画像座標と投影座標との距離に基づいて対応づけする対応づけ手段とを有することを特徴とする情報処理装置。
【００２０】
現実空間に複数配置された指標であって、配置された面内で何れの方向を向いているかを示す方向情報が付与された指標の、既知である物体に対する相対位置および相対姿勢を、当指標の指標情報として保持する保持手段と、現実空間を、現実空間に固定され撮像位置姿勢が既知である撮像装置で撮像した撮像画像から１つ以上の指標を検出する検出手段と、前記現実物体の位置を計測した物体位置と、当現実物体の姿勢を計測した物体姿勢とを取得する取得手段と、撮像画像および撮像位置姿勢に基づいて、検出された指標が配置された面に垂直で当指標を通過する回転軸の傾斜角と、当回転軸を中心に当指標が何れの方向を向いているかを示す回転角とを、検出された指標の推定姿勢として推定する推定手段と、相対位置、相対姿勢、物体位置、物体姿勢、および撮像位置姿勢に基づいて、指標を撮像装置の画像面に投影した際の投影座標および投影姿勢を算出する投影手段と、（１）検出された指標について推定手段により推定された傾斜角と、指標情報が保持された指標の投影姿勢から得られる傾斜角との差が予め設定された閾値以下となること、および、（２）検出された指標について推定手段により推定された回転角と、保持された指標の投影姿勢から得られる回転角との差が予め設定された閾値以下となることの両方を満たす、検出された指標と保持された指標とを、撮像画像において検出された指標の画像座標と投影座標との距離に基づいて対応づけする対応づけ手段とを有することを特徴とする情報処理装置。
【発明の効果】
【００２１】
このような構成により、本発明によれば、指標の姿勢情報を用いて識別を行うことにより、精度良く指標を識別可能になる。
【発明を実施するための最良の形態】
【００２２】
以下、添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
＜第１の実施形態＞
図１は、本発明の実施形態に係る情報処理装置としての指標識別装置の構成例を示すブロック図である。
まず、本実施形態の指標識別装置が識別する指標は、指標の基準座標系における姿勢を画像情報から算出可能である指標である。ここでは、好適な指標の例として、従来技術２で述べた指標を用いる。すなわち、図２の２０１Ａ、２０１Ｂに示すような、正方形の外形を有し、指標内部の、一頂点に偏った位置に、他の領域とは明度の大きく異なる正方形（方向性付与形状）を配置してあるような指標を利用する。換言すれば、この指標は、正方形の頂点と、上下左右の方向を一意に定める方向性付与形状（２０３Ａ、２０３Ｂ、以降、区別しない場合は方向性付与形２０３とする）によって構成される。そして、方向性付与形状２３０の位置関係を指標の配置位置と共に登録しておくことによって、画像上における指標の座標情報からカメラ座標系における指標の姿勢を算出可能にしている。
【００２３】
また、本実施形態における指標において、方向性付与形状２０３は、図６に示すように、一つの頂点を指標外形を構成する正方形の中心点Ｏとし、中心点Ｏから特定の頂点、例えば頂点ｂまでの距離２／３の位置に対角頂点ｂ”を有するように配置されている。このような配置とすることで、撮像画像中に占める指標の面積が小さくなっても、指標外形と方向性付与形状外形との間隔を維持し、方向性付与形状である内部の正方形の明度を取得するときにできるだけその中心を見ることができるようになる。
【００２４】
カメラ１０１は、現実空間を撮像できるカメラであり、例えばCCDやCMOSセンサを撮像素子として有するビデオカメラである。カメラ１０１には、例えば磁気センサ等を用いた３次元位置姿勢センサ１０２が固定されている。カメラ位置姿勢計測部１０３は、３次元位置姿勢センサ１０２を駆動・制御し、カメラ１０１の位置姿勢を計測する。
【００２５】
指標情報保持部１０６には、現実空間に配置されている指標の各々について、指標の同定及び方向の認識を行うために必要な情報を予め記憶しておく。具体的には、例えば、配置位置（例えば中心点の３次元絶対座標）、頂点の３次元絶対座標、大きさ、配置姿勢がある。また、指標の方向を特定するための情報（例えば方向性付与形状に最も近い指標外形正方形の頂点のＩＤなど）、方向性付与形状に関する情報（形状や色に関する情報など）なども例示できる。なお、ここで挙げた登録項目は単なる例示であり、使用する指標や指標の識別方法に応じて、これ以外の情報を登録することもあれば、より少ない項目で済む場合もある。
【００２６】
カメラ位置姿勢計測部１０３は、３次元位置姿勢センサ１０２から得られたカメラ１０１の位置姿勢値を、指標座標投影計算部１０７及び指標姿勢計算部１０９に供給する。指標座標投影計算部１０７は、カメラ１０１の位置姿勢値と、指標情報保持部１０６に記録されている指標の３次元座標情報とから、カメラ１０１が撮像していると思われる指標の、カメラ１０１の画像面上での投影位置を計算する。以下、画像面（撮像面とも言う）上に投影した指標を投影指標という。
【００２７】
指標検出部１０４では、カメラ１０１の撮像画像をキャプチャし、色や形状など、予め定められた指標に関する情報に基づき、指標と思われる領域（以下、検出指標とも言う）を画像から検出する。指標姿勢推定部１０５では指標検出部１０４で得られた検出指標の正方形頂点と方向性付与形状の画像上での座標から、カメラの視点位置を原点とし、カメラ座標系における指標の姿勢Rcmを算出する。カメラ座標系とは、撮像面をｘｙ座標、視軸をｚ軸負へのベクトルとおいた３次元直交座標系である。なお、指標の姿勢を求めると同時にカメラ座標系における指標の位置を求めてもよい。
【００２８】
指標姿勢計算部１０９では、カメラ１０１の位置姿勢に基づいて、指標情報保持部１０６に記録された、基準座標系における指標の姿勢をカメラ座標系における姿勢に変換する。
指標識別部１０８は、
・指標座標投影計算部１０７で得られた指標の投影位置、
・指標検出部１０４で得られた検出指標の画像中の位置、
・指標姿勢推定部１０５から得られた検出指標の姿勢、
・指標姿勢計算部１０９で得られた指標の姿勢
とから、検出指標を同定する。指標の同定処理の詳細については後述する。
【００２９】
なお、本実施形態においては、指標の安定的な識別を行うために、画像中における検出指標の位置と、投影計算した指標位置とを比較して識別のための候補としている。しかし、指標投影計算部１０７で得られた投影位置と、指標検出部１０４で得られた画像中の位置とを用いる以外の方法で識別を行っても良い。例えば、夫々の指標の、撮像面における位置の情報は用いずに、指標姿勢推定部１０５から得られた検出指標の姿勢と、指標姿勢計算部１０９で得られた指標の姿勢とから指標の同定を行ってもよい。
【００３０】
ただし、夫々の撮像面における指標位置の情報を用いない場合は、カメラ座標系における指標の姿勢のみから識別を行う。そのため、配置できる指標の数は、センサの姿勢計測精度と検出指標の姿勢推定精度の合計が例えば±４５度未満であれば、指標の最小配置数が６個（６傾斜面）に制限される。すなわち、この６傾斜面の法線が、互いに９０度の角度で配置（すなわち立方体の各面の相対姿勢関係）しなければならない。なお、センサの姿勢計測精度と検出指標の姿勢推定精度が高いほど指標を区別するための姿勢計測分解能が高くなり、指標の最小配置数が増加する。
【００３１】
図２は、指標２０１Ａ、２０１Ｂを、撮像する現実空間中の床と壁に配置し、それを指標識別装置のカメラ１０１で撮像している状態を模式的に示す図である。上述のように、指標２０１Ａ，２０１Ｂの大きさや配置などの情報は、指標情報保持部１０６に記録されている。
【００３２】
次に、上記構成を備える指標識別装置が行う処理について、図４に示したフローチャートを参照して説明する。
ステップＳ４０１にて、カメラ位置姿勢センサ１０２は、カメラ１０１の位置姿勢を計測し、計測したカメラ位置姿勢をカメラ位置姿勢計測部１０３へと送る。ステップＳ４０２では、カメラ位置姿勢計測部１０３が、カメラの位置姿勢計測結果からビューイング変換を４×４の変換行列の形で計算する。ビューイング変換とは、現実世界に固定され設定された座標系を基準座標系としたときの、カメラ座標系と基準座標系との間の座標変換のことであり、より具体的には世界座標系の座標値からカメラ座標系の座標値への変換である。すなわち、このビューイング変換を求めておくことによって、基準座標系上にある座標値からカメラ座標系の座標値への変換を容易に計算することが可能となる。
【００３３】
次に、ステップＳ４０３では、指標座標投影計算部１０７が、指標情報保持部１０６に記録されている基準座標系における夫々の指標の中心点と頂点の位置（座標）を、ステップＳ４０２で得られたビューイング変換を利用してカメラ座標系へと変換する。さらに、カメラ１０１の透視投影変換計算を行うことによって、それぞれの撮像面上での推定位置（投影座標）を計算する。ここで、指標の個々の頂点はそれぞれ別々に区別して記録されているため、その個々の頂点を撮像面に投影して得られる投影座標においても、各々がどの頂点を投影したものであるのか明らかである。なお、カメラ１０１の透視投影変換は、カメラ１０１のレンズ焦点距離や主点（投影中心）位置によって一意に定まるものであり、事前に予め求められているものとする。
【００３４】
ステップＳ４０４では、指標姿勢計算部１０９が、指標情報保持部１０６に記録されている基準座標系における夫々の指標の姿勢Rwmを、ビューイング変換行列によってカメラ座標系における姿勢Rcmに変換する。本実施形態においては、指標情報保持部１０６に記録されている指標の配置姿勢Rwmは３×３の行列で表現されているものとする。この基準座標系の姿勢行列Rwmを、位置成分を（0,0,0）として同次座標の４×４の行列に変換し、ビューイング変換行列によってカメラ座標系における姿勢Rcmに変換する。
【００３５】
また、ステップＳ４０１、Ｓ４０２、Ｓ４０３、Ｓ４０４の工程と並行して、ステップＳ４０５〜Ｓ４０８の処理を行なう。先ず、ステップＳ４０５では、カメラ１０１により現実空間を撮像し、ステップＳ４０６にて、得られた撮像画像から指標を検出するための一工程として、指標の外周正方形を検出し、頂点と中心点を算出する。これは、どのような方法を用いても構わないが、例えば以下のような方法がある。
【００３６】
まず、指標の明度を背景と異なるものとしておき、明度による二値化を行った後にラベリング処理にて連続領域を求める。その連続領域のラベル外周を折れ線近似することにより外周の四角形を検出する。得られた四角形の頂点を求め、さらに対角線の交点を求めることにより中心点を求める。
【００３７】
引き続き、方向性付与形状付き正方形指標の検出のための一工程として、ステップＳ４０７にて、検出した外周四角形の内部の情報を用いて、指標の方向を検出する。まず、指標の画像上での方向の検出は、例えば図６に示すように、外周四角形の４頂点（ａ，ｂ，ｃ，ｄ）と中心点Ｏを結ぶ線分それぞれに対して、中心点から頂点に向かってその線分を１：２に分割する点（ａ’，ｂ’，ｃ’，ｄ）を計算する。さらに、それらの４点の画像中での画素の明度を比較し、最も明度の異なる点を求める。４点のうち他の３点と明度が最も異なる点（図６ではｂ’）は、指標内部に偏って配置された正方形（方向性付与形状）に由来するものであるため、これにより画像から検出した指標の方向を決定することができる。
【００３８】
例えば、方向を特定するための情報として「方向性付与形状に最も近い頂点ＩＤ」を用いた場合は、明度が最も異なる点に最も近い頂点のＩＤを特定する。ここで、方向性付与形状に最も近い頂点のＩＤをＡとし、画像上でＡから時計回りに他の頂点をＢ、Ｃ、Ｄと対応づけるものとする。すなわち、図６の頂点（ａ，ｂ，ｃ，ｄ）に対して、指標外形正方形の頂点ＩＤを（Ｄ、Ａ、Ｂ、Ｃ）と対応づける。
【００３９】
ステップＳ４０８では、検出指標の画像上における頂点の２次元座標値と、ステップＳ４０７で得た指標の方向（頂点の対応情報）とから、カメラ座標系における指標の姿勢の行列Rcm'を求める。撮像された平面上の４点の２次元座標値から、カメラ座標系における姿勢を求める方法は、どのような方法を用いても構わないが、例えば、本実施形態では以下に説明するような、非特許文献２の方法を用いる。
【００４０】
すなわち、まず、画像上の４頂点ＡＢＣＤから、ＡＢを通る直線と、ＤＣを通る直線、すなわち向かい合う平行２辺の直線の方程式を求める。そして、これらの２つの直線とカメラの透視投影変換行列（予め求めておく）とを用いて、２つの直線を含む２平面の式（カメラ座標系）を得る。この２平面の法線ベクトルＮAB、ＮDCの外積（ＮAB×ＮDC）が、平行２辺ＡＢ，ＤＣのカメラ座標系における方向ベクトルU1とする。
【００４１】
もう一組の向かい合う平行２辺ＢＣとＤＡにおいても同様の処理を行い、２平面の法線ベクトルの外積（ＮBC×ＮDA）を、平行２辺ＤＢ，ＤＡのカメラ座標系における方向ベクトルU2とする。
【００４２】
これにより指標の隣り合う２辺の方向ベクトルU1,U2が求められるので、この２つの方向ベクトルの外積方向をV3とする。このV3を垂直軸とし、U1,U2を含む平面内で、なす角度が直角になり、かつ、U1からV1,U2からV2への夫々の変更角度が等しくなるようなベクトルV1,V2を決定する。このとき、[V1tV2tV3t]がカメラ座標系における指標の姿勢Rcm'となる。
【００４３】
このように、ステップＳ４０１〜Ｓ４０４で、カメラ位置姿勢センサ１０２の計測値を基にして、指標情報保持部１０６が保持する夫々の指標の頂点と中心点を画像面へと投影した投影座標とそのカメラ座標系における姿勢Rcmを求めた。また、ステップＳ４０５〜Ｓ４０８で、画像から検出した正方形指標の頂点と中心点の座標と、検出指標のカメラ座標系における姿勢Rcm'を求めた。
【００４４】
本実施形態で最終的に行いたいことは、図３に示すように、撮像画像から検出しただけでは個々の区別のつかない指標が複数個現実空間内に配置されている場合に、個々の指標を識別することにある。例えば、図３に示すように、撮像画像上で同じ方向性を持った２つの指標が壁と床に配置されている場合に、それらを識別することにある。図３の２０１Ａと２０１Ｂは、それぞれ現実空間に配置した指標を撮像画像から検出したものを表す。図に示すように、これらの二つの指標２０１Ａ、２０１Ｂはそれぞれ異なる姿勢で配置されている。
【００４５】
このとき、ステップＳ４０３にて得られた、カメラ１０１の視野に含まれるであろう指標２０１Ａ、２０１Ｂの、カメラ１０１の画像面上への投影座標が図３の２０２Ａ，２０２Ｂに示すような位置に計算されているとする。この場合において、従来技術３の方法により指標の識別を行うと、発明が解決しようとする課題において述べたとおり、誤認識が発生する。すなわち、中心点が近く、画像上での方向性が一致する２０１Ｂと２０２Ａを、対応する指標として誤識別してしまう。
【００４６】
この課題を解決し、異なる姿勢の指標に対して識別を正しく行う工程が、以下に述べるステップＳ４０９とステップＳ４１０である。
ステップＳ４０９では、ステップＳ４０３で得た投影指標の中心点と、ステップＳ４０６で検出された指標の中心点との距離を基にして、ステップＳ４０３で得られた各投影指標に対して、対応する可能性のある検出指標の候補リストを生成する。このリストは、例えば中心点距離の近い順に並べた線形リストである。
【００４７】
ステップＳ４１０では、ステップＳ４０３で得られた各投影座標に対して、対応する可能性のある検出指標の候補リストを先頭から順に探索する。そして、ステップＳ４０４で得られたRcmとステップＳ４０８で得られたRcm'を比較し、姿勢の類似しているものを見つけ出す。姿勢の類似の判定には、例えば、RcmからRcm'への変換を行う回転行列を求めて、さらに回転軸と回転角に変換し、その回転角の大きさの差が閾値以下であれば類似度が高いと判定することができる。また、RcmとRcm'の夫々をクオータニオン表現に変換し、４次元球面上における点間の球面上での距離が閾値以下であれば類似性が高いと判定してもよい。或いは、RcmとRcm'の夫々を特異値分解して得られた夫々の特異値ベクトルの距離が閾値以下であれば類似性が高いと判定しても良いし、Rcm・Rcm'-1が単位行列に近いかどうかを評価してもよい。
そして、投影指標と夫々の検出指標の類似判定結果が閾値を越えた最初の検出指標を対応する指標とする。
【００４８】
このステップＳ４０９及びＳ４１０の工程を、図２及び図３の場合を例にして説明する。ステップＳ４０９により、投影指標２０２Ａに対して、中心点距離の近い検出指標２０１Ａと２０１Ｂが対応する可能性のある検出指標候補としてリストに挙げられる。検出指標２０１Ｂの方が検出指標２０１Ａよりも、投影指標２０２Ａとの中心点距離が小さいので、リストでは、検出指標２０１Ｂが２０１Ａより上位に位置している。そのリストを利用して、ステップＳ４１０にて、まず投影指標２０２Ａと検出指標２０１Ｂの姿勢の類似性を調べ、次に投影指標２０２Ａと検出指標２０１Ａの姿勢の類似性を調べる。
【００４９】
図２に示されているように、検出指標２０１Ｂと投影指標２０２Ａとは姿勢の相違が大きいために、対応すると判定されることはなく、姿勢がほぼ一致している検出指標２０１Ａと投影指標２０２Ａとが対応づけられる。また同時に、誤検出された指標２０１Ｂの姿勢と投影指標２０２Ａの姿勢が一致しないため、誤検出された指標に誤識別される可能性が減少する効果もある。
【００５０】
なお、本実施形態において、ステップＳ４０９とステップＳ４１０の２つの工程は、各投影指標を基準にして、対応候補となる検出指標をリスト化し対応付けを行う方法であった。しかし、代わりに、各検出指標を基準にして、対応候補となる投影指標をリスト化する方法でもよい。また、単純に指標の距離に基づいて候補リストを作る方法に限らず、画像面上での指標の座標に基づいた方法で候補リストを作るのであれば、他の方法であってもよい。さらに、先に画像面上での距離に基づいて候補リストを生成し、そのリストから指標の方向性による対応付けを行うという処理手順ではなく、先に指標の方向性のあっているものをリストアップし、その中から画像面上での距離に基づいて対応付けを行っても良い。
【００５１】
また、ステップＳ４０４、ステップＳ４０８では、各々でカメラ座標系における指標の姿勢を求め、ステップＳ４１０で両者を比較していたが、投影される指標の姿勢と検出した姿勢を比較できる方法であれば、カメラ座標系における指標の姿勢でなくともよい。例えば、指標を基準とする指標座標系を基準として、指標座標系におけるカメラの姿勢RmcをステップＳ４０４、ステップＳ４０８で求め、両者を比較してもよい。指標座標系は、例えば、図６における頂点ｂを原点とし、ベクトルｂｃをＸ軸、法線方向をＹ軸、ベクトルｂａをＺ軸とする直交座標系である。この場合、ステップＳ４０４ではRcm-1の計算によって目的の姿勢Rmcを求める。ここで、Rcm-1はカメラ座標系におけるマーカ姿勢Rcmの逆行列を示している。また、ステップＳ４０８では、Rcm'の逆行列Rcm'-1を求める。
【００５２】
また、基準座標系におけるカメラ姿勢Rwcを比較の基準としてもよい。この場合は、ステップＳ４０４で、センサ計測値により求めたカメラ姿勢を用いる。また、ステップＳ４０８では、RwcをRwm・Rcm'-1により算出する。ここでRwmは、指標情報保持部１０６に記録されている、基準座標系における指標の姿勢である。
このように、指標の姿勢を比較して識別する場合に、どの座標系のどの姿勢を基準とするかについては、特に制限が無く、共通した座標系で比較可能な姿勢であればよい。
【００５３】
以上説明したように本実施形態によれば、指標の現実空間における姿勢を用いて指標の識別を行うことにより、同じ指標が複数配置してある場合でも個々の指標を識別することが可能となる。また、配置されている面の傾斜が異なる場合であれば、指標の方向性が同一であっても姿勢の相違から識別可能であるため、配置の制限が非常に緩やかとなる。
【００５４】
すなわち、従来技術３の方法のように、撮像画像上での方向性を区別する手法では、位置姿勢センサの姿勢計測精度と検出指標の姿勢推定精度の合計が例えば±４５度未満の場合、同時に撮像される可能性がある領域には４種しか配置できなかった。すなわち、上下左右の４種（指標の法線を軸として９０度ずつ回転させて配置する場合の４方向）である。しかし、本実施形態に係る指標識別装置であれば、少なくとも２４種（４方向×６傾斜面）の配置が可能である。
例えば、立方体の各面に指標を１つずつ配置した場合は、センサの計測精度と検出指標の推定精度の合計が±４５度未満である姿勢計測精度があれば、各面の指標を区別できる。さらに、撮像画像上に映り込む指標の方向性を用いると、各面の指標の法線を軸として９０度の回転（４方向）が区別できる。すなわち、立方体の各面には、はじめに各面に配置したマーカの他に、１つの面に対して３種のマーカが追加できて、６面に４個で計２４個の指標を区別できる。
【００５５】
また、本実施形態によれば、発明が解決しようとする課題で述べたように、図５で示すような誤検出が起こる場合、印刷物６０１と目的とする指標２０２Ａの姿勢とが異なる場合は、誤同定されないという効果も得られる。
【００５６】
＜第２の実施形態＞
第１の実施形態では、カメラに３次元位置姿勢センサを配置し、カメラ１０１が可動である状況にて、現実空間に固定された指標を撮像する場合を想定していた。しかし、カメラと同様に、３次元位置姿勢センサおよび指標を配置した現実物体が移動する場合であっても本発明を好適に適用可能である。なお、以下、現実物体に取り付けた３次元位置姿勢センサを物体位置姿勢センサと呼ぶ。また、本実施形態で使用する指標は、第１の実施形態で使用した指標と同一であるとする。
【００５７】
図９は、本実施形態におけるカメラ１０１、カメラ位置姿勢センサ１０２、現実物体９０１及び物体位置姿勢センサ８０１の関係を模式的に示す図である。図８は、本実施形態に係る指標識別装置の構成例を示すブロック図である。
【００５８】
本実施形態においては、図１のブロック図で示した第１の実施形態の構成に加え、物体位置姿勢センサ８０１、及び物体位置姿勢計測部８０２が追加されている。また、指標情報保持部１０６には、基準座標系における指標の位置姿勢の代りに、現実物体９０１を基準とする座標系（物体座標系とよぶ）上における指標の位置姿勢が記録されている。
【００５９】
また、
・指標座標投影計算部１０７で実施する、指標の中心点と頂点座標を画像面上に投影計算する工程
・指標姿勢計算部１０９で実施する、カメラ座標系における指標の姿勢を求める工程
の夫々において、物体座標系上で定義されている指標２０１Ａ、２０１Ｂの位置姿勢を、基準座標系における位置姿勢へ変換する工程が追加される。
【００６０】
図１０は、本実施形態における指標識別装置の動作を示すフローチャートである。
本実施形態では、移動する現実物体９０１に配置した指標２０１Ａ、２０１Ｂの、カメラ座標系における姿勢で識別する必要がある。そのために、第１の実施形態のフローチャートに対して、ステップＳ１００１乃至Ｓ１００２の処理を追加し、ステップＳ４０３及びステップＳ４０４をステップＳ１００３及びステップＳ１００４に変更する。
【００６１】
ステップＳ１００１では、物体位置姿勢センサ８０１によって現実物体９０１の位置姿勢を計測し物体位置姿勢計測部８０２に送る。
ステップＳ１００２では、ステップＳ１００１で計測した現実物体９０１の位置姿勢に基づいて、モデリング変換を４×４の変換行列の形で計算する。モデリング変換とは、基準座標系と物体座標系との間の座標変換のことであり、物体座標系にある点を基準座標系上の点へ変換する変換のことである。
【００６２】
ステップＳ１００３では、指標座標投影計算部１０７が、指標情報保持部１０６に記録されている物体座標系における夫々の指標の中心点と頂点の位置（座標）を、ステップＳ１００２で得られたモデリング変換を利用して基準座標系へと変換する。さらに、ステップＳ４０２で得られたビューイング変換を利用してカメラ座標系へと変換し、さらに、カメラ１０１の透視投影変換計算を行うことによって、それぞれの撮像面上での推定位置（投影座標）を計算する。
【００６３】
ステップＳ１００４では、指標姿勢計算部１０９が、指標情報保持部１０６に記録されている物体座標系上における夫々の指標の姿勢Romを、ステップＳ１００２によって得られたモデリング変換により、基準座標系における指標の姿勢Rwm（=Rwo・Rom）に変換する。さらに、ステップＳ４０２で得られたビューイング変換によって、カメラ座標系における指標の姿勢Rcmを求める。ここで、Rwoは現実物体の姿勢成分を示している。すなわち、Rcmは、カメラの姿勢成分をRwcとすると、以下の式で求めることができる。
Rcm = Rwc-1・Rwo・Rom    （式１）
図１０における他のステップは、第１の実施形態と同様に処理することで、姿勢を用いた指標の識別が可能である。
【００６４】
このように、本実施形態によれば、３次元位置姿勢センサおよび指標を配置した現実物体が移動する場合であっても、第１の実施形態と同様、指標を安定的に、且つ精度良く検出可能となる。
【００６５】
＜変形例１＞
第１の実施形態では、カメラが移動、物体が固定、第２の実施形態では、カメラと物体が移動するという状況であったが、カメラが現実空間に固定され、物体が移動する環境においても本発明を適用することが可能である。
【００６６】
図１２は、本変形例におけるカメラ１０１、現実物体８０１及び物体位置姿勢センサ８０２の関係を模式的に示す図である。図１１は、本実施形態に係る指標識別装置の構成例を示すブロック図である。本実施形態においては、図８で示す第2の実施形態の構成に対して、カメラ位置姿勢センサ１０２、カメラ位置姿勢計測部１０３が削除されている点が異なる。
【００６７】
本実施形態では、第２の実施形態における処理のフローチャートを示す図１０のステップＳ４０１におけるカメラ位置姿勢を計測する処理において、予め別途記録しておいたカメラ位置姿勢の固定値を代りに出力する。他のステップは第２の実施形態と同様に実施すればよい。
【００６８】
＜変形例２＞
第２の実施形態においては、カメラと現実物体に３次元位置姿勢センサを取り付けて、夫々の位置姿勢を計測していた。しかし、本発明は、指標の識別のために３次元位置姿勢センサを用いることに限定されるものではなく、基準座標系における姿勢を求める計測器であれば適用可能である。例えば、ジャイロセンサ等によって構成される姿勢センサをカメラと現実物体に取り付け、夫々の姿勢を計測して指標の識別を行ってもよい。
【００６９】
図１３は、本変形例に係る指標識別装置の構成例を示すブロック図である。第２の実施形態における構成例に対して、位置姿勢を計測する要素１０２、１０３、８０１、８０２が、姿勢を計測する要素１３０１、１３０２、１３０３、１３０４に変更されたこと、指標座標投影計算部１０７が削除されたことが異なる。
【００７０】
物体姿勢センサ１３０１及びカメラ姿勢センサ１３０３は、対象とする物体の姿勢を計測する姿勢計測器であり、本実施形態ではジャイロセンサをベースとしたセンサユニット、例えば米国InterSense社のInertiaCube2を用いるものとする。これらのジャイロセンサの姿勢計測値を物体姿勢計測部１３０２とカメラ姿勢計測部１３０４にそれぞれ出力する。
【００７１】
物体姿勢計測部１３０２は、物体姿勢センサ１３０１で得られた、物体の基準座標系における姿勢を指標姿勢計算部１０９に供給する。
カメラ姿勢計測部１３０４は、カメラ姿勢センサ１３０３で得られた、カメラの基準座標系における姿勢を指標姿勢計算部１０９に供給する。
【００７２】
図１４は、本変形例に係る指標識別装置の処理の詳細を示すフローチャートである。図１４において、撮像画像から指標の姿勢Rcm'を求める処理は第１又は第２の実施形態と共通であるため、同じ参照数字を付してある。
【００７３】
ステップＳ１４０１では、カメラ姿勢センサ１３０３によって、基準座標系におけるカメラ姿勢Rwcを計測し、計測結果をカメラ姿勢計測部１３０３へ送る。
ステップＳ１４０２では、物体姿勢センサ１３０１によって、基準座標系における現実物体の姿勢Rwoを計測し、物体姿勢計測部１３０２へ送る。
【００７４】
ステップＳ１４０３では、カメラ座標系における夫々の指標の姿勢Rcmを、以下の式によって算出する。
Rcm = Rwc-1・Rwo・Rom （式２）
ここで、RwcはステップＳ１４０１で、RwoはステップＳ１４０２で得られた、基準座標系におけるカメラと物体の姿勢である。また、Romは、指標情報保持部１０６に記録されている、物体座標系上で定義された夫々の指標の姿勢である。
【００７５】
一方、ステップＳ４０５〜Ｓ４０８では、第１の実施形態で説明したように、カメラ１０１で撮像した画像から、検出指標の各々について、カメラ座標系における姿勢Rcm'を算出する。
【００７６】
ステップＳ１４０４においては、検出指標候補リストに、ステップＳ４０５〜Ｓ４０８の処理において画像上で検出された検出指標の全てが、検出された順番に格納される。さらに、指標識別部１０９が、ステップＳ１４０３で得られた、指標情報保持部１０６が保持する夫々の指標のカメラ座標系における姿勢Rcmと、検出指標候補リスト内の（ステップＳ４０８で得た）検出指標の姿勢との類似性を判定して対応付けを行う。
【００７７】
ただし、本変形例において、検出指標候補リスト中の検出指標はランク付けされていない。そのため、類似性の判定は、先頭から探索して最初に閾値内になった指標を対応づけるのではなく、候補リスト内の全ての指標との類似性を判定し、一番類似性の高い指標を対応する指標として識別する。このときの類似性の判定には、例えば、Rcm・Rcm'-1の行列式と1との差分の絶対値を算出し、その逆数を類似度としてもよい。あるいは、RcmからRcm'への変換を行う回転行列を求めて、さらに回転軸と回転角に変換し、その回転角の大きさの逆数を類似度として判定してもよい。
他のステップは第２の実施形態と同様に実施すればよい。
【００７８】
なお、InertiaCube2等の姿勢センサは、時間の経過に伴って蓄積されるドリフト誤差を有しているため、出力される姿勢計測値は、真の姿勢とは異なった誤差を有する姿勢となる場合がある。この誤差による指標の誤識別に対処するため、図１４のステップＳ１４０４において、RcmとRcm'の重力方向を軸とする回転である方位角を無視して、傾斜角（２軸の回転）の姿勢を比較してもよい。傾斜方向の姿勢を行うためには、例えば、ステップＳ１４０１、ステップＳ１４０２において、物体姿勢センサ１３０１とカメラ姿勢センサ１３０３が出力する少なくとも１つの姿勢値から、傾斜成分のみを取得する。そして、方位成分には規定値（例えば０度など）で上書きして、姿勢を表す行列に変換する。また、撮像画像からステップＳ４０５〜Ｓ４０８で求めた指標の姿勢Rcm'に対しても、方位角と傾斜角に分け、方位角を同じ既定値によって上書きして姿勢を表す行列に変換することで、比較する２つの姿勢の傾斜角のみで識別を行うことができる。
【００７９】
また、方位角を規定値で上書きして無視する方法のみならず、撮像画像の前フレームにおいて、方位角を指標によって補正し、その補正値から予測した現在の方位角を用いる方法を用いても良い。
【００８０】
＜変形例３＞
上述の実施形態及び変形例では、従来技術２で述べたような、方向性を持つ正方形指標を識別するものであった。しかし、本発明は、このような指標の識別に限定されるものではない。指標が少なくとも１平面を持つ形状であり、かつ、指標の方向性を示す情報を有し、指標を撮像した撮像画像から指標の姿勢を算出できる任意の指標の識別が可能である。なお、１平面を持つ形状とは、図形の頂点を画像における特徴とする指標であれば、同一平面上に頂点が３点以上ある形状やその形状を組み合わせた形状である。
【００８１】
例えば、非特許文献４で述べられているような、正方形内にＩＤコードを持つ指標であってもよい。この指標は、指標内部のコード領域に、５×５の白黒矩形マトリックスによる「２次元バーコード」（以下、コードと呼ぶ）を保持している。従って、理論的には216種の指標が識別可能である。しかし、指標が撮像画像中に小さく映り込んだ場合に、コードの識別を間違えたり、識別できなくなったりするなどの課題がある。その課題への対策として、正方形形状内のコード領域の分割数を３×３などに減らすことが考えられる。しかし、コード領域の分割数を減らすと識別できる数も減少するという別の課題を持つ。
【００８２】
本変形例に係る指標識別装置を適用すれば、コードからの識別だけでなく、姿勢の相違に基づく識別も可能となるため、異なる姿勢で配置すれば、同時に撮像されうる領域に同一コードを有する指標を用いることが可能となる。そのため、コード領域の分割数を減らしたとしても、識別できる指標の種類を従来に比べて増やすことができる。例えば、姿勢センサの姿勢計測精度と検出指標の姿勢推定精度の合計が±４５度未満であれば、同一コードを有する指標を４方向×６傾斜面に配置することが可能であるため、識別可能な指標の数を２４倍に増やすことができる。そのため、コード領域の分割数を減らした場合に発生する、識別可能な指標の種類が減少するという課題を改善することができる。
【００８３】
図１５は、本変形例に係る指標識別装置の構成例を示すブロック図である。前述の実施形態と共通する構成には同じ参照数字を付してある。
指標姿勢推定部１５０１では、撮像画像から検出された検出指標の頂点座標と、指標内部のコードの認識結果から、検出指標のカメラ座標系における姿勢Rcm'を推定する。
【００８４】
カメラ姿勢入力部１５０２では、カメラ１０１の姿勢を何らかの方法によって入力し、指標姿勢計算部１０９に出力する。具体的には、撮像画像の前フレームで識別された指標を用いて得た、基準座標系におけるカメラ姿勢を用いてもよいし、カメラ１０１に姿勢センサを取り付けて姿勢センサの姿勢計測値を入力してもよい。また、単独で識別できる特別な指標（例えば、複数の指標の中で、他の指標は異なる、唯一のコードを有する基準指標など）をカメラ１０１で撮像し、基準指標の識別によって得たカメラ姿勢を入力してもよい。
【００８５】
指標情報保持部１０６には、第１の実施形態で述べた指標の情報に加えて、個々の指標が有するコードも記録されているものとする。
指標識別部１５０３では、画像から検出した検出指標の内部にあるコード情報を読み出すと共に、指標姿勢計算部１０９で得た指標の姿勢と指標姿勢推定部１５０１で得た検出指標の姿勢とを用いて識別を行う。
【００８６】
本変形例における指標識別装置の処理を、図１６に示すフローチャートを用いて説明する。
ステップＳ１６０１では、カメラ姿勢入力部１５０２の出力する、基準座標系でのカメラ姿勢Rwcを、指標姿勢計算部１０９に出力する。
【００８７】
ステップＳ１６０２では、指標姿勢計算部１０９によって、ステップＳ１６０１で出力したカメラ姿勢Rwcを基に、指標情報保持部１０６に保存されている基準座標系における夫々の指標の姿勢Rwmが、カメラ座標系における姿勢Rcmに変換される。
【００８８】
一方、ステップＳ４０５、Ｓ４０６では、第１の実施形態と同様にして、撮像画像から指標を検出し、その頂点と中心座標を算出する。
ステップＳ１６０３では、指標識別部１０９によって、ステップＳ４０６で得られた指標の４頂点の座標を正方形の４頂点に射影する変換を、検出画像に適用し、得られた画像からコードが読み出して認識する。
【００８９】
ステップＳ１６０４では、指標姿勢推定部１０９が、ステップＳ４０６によって得た４頂点の座標を互いに結んだ４辺が基準座標系において正方形となる制約条件を用いて、カメラ座標系における夫々の指標の法線を推定する。さらに、この法線と、カメラ座標系における指標の４辺の方向ベクトルと、対角線の方向ベクトルとの関係を用いて検出指標のカメラ座標系における姿勢Rcm'を求める（より詳細な処理方法については、非特許文献４を参照）。
【００９０】
ステップＳ１６０５では、指標識別部１０９が、ステップＳ１６０２でカメラ座標系の姿勢Rcmに変換された夫々の指標に対して、ステップＳ１６０３において認識したコードが同一の検出指標をリスト化し、夫々の指標に対する検出指標候補リストを作成する。
【００９１】
ステップＳ１６０６では、指標識別部１０９が、ステップＳ１６０５で得た検出指標候補リストを先頭から探索し、夫々の指標のうち、注目する指標の姿勢Rcmとの類似性が一番高い検出指標の姿勢Rcm'を見つけることで、指標の識別を行う。あるいは、コードが同一であっても、類似性が低い指標に対しては誤識別となる指標だと判定する。
【００９２】
なお、ステップＳ１６０２の処理において、指標情報保持部１０６に保存されている全ての指標に対してカメラ座標系における姿勢を計算する代わりに、ステップＳ１６０３で認識されたコードを持つ指標のみに対して計算することにより、処理を軽減してもよい。
【００９３】
＜変形例４＞
第１及び第２の実施形態では、方向性を持つ指標の姿勢を用いて指標の識別をしたが、指標の撮像画像から、法線ベクトルなどの指標の傾きを示すベクトルを算出できるような指標であれば、方向性を持たない指標であってもよい。
【００９４】
例えば、第１の実施形態において、方向性付与形状を持たない正方形指標を用いた場合について説明する。第１の実施形態においては、３×３の姿勢行列を求める目的で、方向性を持つ正方形指標を用いたが、姿勢行列から１自由度少ない、指標の傾きを示すベクトル（例えば法線ベクトル）を用いることで指標が識別できる。例えば、第１の実施形態において、以下のように処理することで指標を識別することができる。
【００９５】
指標情報保持部１０６において、個々の指標について３×３の姿勢行列を記憶する代りに、或いは姿勢行列の他に、個々の指標の法線ベクトル（図２の指標上に示しているベクトル）を予め記録しておく。
【００９６】
図４のステップＳ４０４においては、指標情報保持部１０６内の法線ベクトルをカメラ座標系に変換する。さらに、ステップＳ４０７の処理を削除し、ステップＳ４０８においては、ステップＳ４０６によって得られた検出指標の４頂点の座標からカメラ座標系における指標の法線を求める。この法線は、第１の実施形態のステップＳ４０８で説明した方法の過程で求められるＶ3を用いる。さらに、ステップＳ４１０において、ステップＳ４０３で求めた投影指標の法線ベクトルと、Ｓ４０６の法線ベクトル検出指標の法線Ｖ3との傾きを比較する場合は、この２つの法線の内積値が最小になる検出指標を対応する指標として識別する。
【００９７】
このように、第１の実施形態に若干の変更を加えるだけで、指標の傾斜を示すベクトルによって指標の識別ができるようになる。
【００９８】
［他の実施形態］
なお、上述の実施形態及び変形例においては、理解を容易にするため、カメラ及び３次元位置姿勢センサを含む指標検出装置について説明したが、これらは指標識別装置に必須ではない。すなわち、カメラ又は現実物体の少なくとも一方を３次元位置姿勢計測し、また、撮像は他の装置で行い、他の装置から３次元位置計測結果と撮像画像を取得する構成であってもよい。また、リアルタイムに処理を行う場合だけでなく、記録された３次元位置計測結果と、撮像画像とを用いて識別処理を行うことももちろん可能である。
【００９９】
なお、前述した実施形態の機能を実現するコンピュータプログラムを、コンピュータを含むシステム或いは装置のコンピュータが実行することによって同等の機能が達成される場合も本発明に含む。コンピュータを含むシステム又はコンピュータへのプログラムの供給は、記録媒体から直接行っても、有線／無線通信を用いて行っても良い。
【０１００】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
【０１０１】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１０２】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体がある。また、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどもある。
【０１０３】
有線／無線通信を用いたプログラムの供給方法としては、以下のような方法がある。コンピュータネットワーク上のサーバに、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムデータファイル）を記憶する。そして、接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法である。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。プログラムデータファイルとしては、本発明を形成するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等でよい。
【０１０４】
つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。
【０１０５】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してダウンロードさせることによって供給することもできる。この場合、その鍵情報を使用することにより、暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１０６】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されるだけでなく、他のプログラムを利用することによって実施形態の機能を実現してもよい。例えば、プログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行うことで、前述した実施形態の機能が実現され得る。
【０１０７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードや、コンピュータに接続された機能拡張ユニットで実行されることで前述した実施形態の機能が実現されてもよい。具体的には、機能拡張ボードや機能拡張ユニットが備えるメモリやＣＰＵによってプログラムが実行され、実際の処理の一部または全部を担っても良い。
【図面の簡単な説明】
【０１０８】
【図１】第１の実施形態に係る指標識別装置の構成例を示すブロック図である。
【図２】第１の実施形態で用いる指標を、撮像する現実空間中の床と壁に配置し、それを指標識別装置のカメラで撮像している状態を模式的に示す図である。
【図３】指標の画像面への投影座標と、撮像画像中の指標の関係の例を示す図である。
【図４】第１の実施形態に係る指標識別装置の処理を説明するフローチャートである。
【図５】指標の誤検出に帰因した誤識別の例を説明する図である。
【図６】第１の実施形態に係る指標の構成及び方向検出処理を説明する図である。
【図７】方向性を用いた指標の識別技術を説明する図である。
【図８】第２の実施形態に係る指標識別装置の構成例を示すブロック図である。
【図９】第２の実施形態におけるカメラ１０１、カメラ位置姿勢センサ１０２、現実物体８０１及び物体位置姿勢センサ８０２の関係を模式的に示す図である。
【図１０】第２の実施形態に係る指標識別装置の処理を説明するフローチャートである。
【図１１】変形例１に係る指標識別装置の構成例を示すブロック図である。
【図１２】変形例１におけるカメラ１０１、現実物体８０１及び物体位置姿勢センサ８０２の関係を模式的に示す図である。
【図１３】変形例２に係る指標識別装置の構成例を示すブロック図である。
【図１４】変形例２に係る指標識別装置の処理を説明するフローチャートである。
【図１５】変形例３に係る指標識別装置の構成例を示すブロック図である。
【図１６】変形例３に係る指標識別装置の処理を説明するフローチャートである。
【図１】
0004739004.tif 000002
【図２】
0004739004.tif 000003
【図３】
0004739004.tif 000004
【図４】
0004739004.tif 000005
【図５】
0004739004.tif 000006
【図６】
0004739004.tif 000007
【図７】
0004739004.tif 000008
【図８】
0004739004.tif 000009
【図９】
0004739004.tif 000010
【図１０】
0004739004.tif 000011
【図１１】
0004739004.tif 000012
【図１２】
0004739004.tif 000013
【図１３】
0004739004.tif 000014
【図１４】
0004739004.tif 000015
【図１５】
0004739004.tif 000016
【図１６】
0004739004.tif 000017