(57)【特許請求の範囲】
【請求項１】
情景を撮像する撮像装置で撮像された第１の画像を入力する第１の画像入力工程と、
前記撮像装置を固定された複数の客観視点位置からステレオ客観視点撮像手段で撮像された複数の第２の画像を入力する第２の画像入力工程と、
前記撮像装置の傾斜角に関わる情報を計測する傾斜角計測装置から傾斜角計測値を入力する傾斜角入力工程と、
前記撮像装置の複数の方位角を仮に設定する仮設定工程と、
前記第１の画像入力工程で入力された第１の画像から、前記情景中の第１の指標の特徴量を検出する第１の検出工程と、
前記第２の画像入力工程で入力された複数の第２の画像の各々から、前記撮像装置に備わる第２の指標の候補の特徴量を検出する第２の検出工程と、
前記仮に設定された複数の方位角の各々ごとに前記第１の指標の投影位置を複数算出する第１の指標位置算出工程と、
前記第１の検出工程で検出された第１の指標の特徴量に基づいて、前記複数の第１の指標の投影位置の各々のうち何れかを選択することにより、当該検出された特徴量の第１の指標を当該選択された投影位置の第１の指標を示すとして同定するとともに、当該選択された投影位置の算出に対応する前記仮に設定された方位角を前記撮像装置の方位角とする第１の同定工程と、
前記第１の検出工程で検出された特徴量に基づいて、前記第２の指標の３次元位置を算出する第２の指標位置算出工程と、
前記第２の検出工程で前記複数の第２の画像の各々から検出された特徴量に基づいて、前記第２の指標の候補の３次元位置を算出する第２の候補位置算出工程と、
前記第２の指標の３次元位置と前記候補の３次元位置との３次元距離に基づいて、当該候補が当該第２の指標を示すか否かを同定する第２の同定工程と
を有することを特徴とする情報処理方法。
【請求項２】
前記第２の指標は、前記撮像装置に備わる物体に備わることにより、該物体を介して該撮像装置に備わることを特徴とする請求項１に記載の情報処理方法。
【請求項３】
前記第１の同定工程による処理は、前記第１の検出工程の処理にともなって実行することを特徴とする、請求項１に記載の情報処理方法。
【請求項４】
前記第１の同定工程による処理は、前記第２の同定工程の処理にともなって実行することを特徴とする、請求項１に記載の情報処理方法。
【請求項５】
コンピュータに、請求項１乃至４の何れか１項に記載の情報処理方法を実行させるためのコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記録媒体。
【請求項７】
情景を撮像する撮像装置で撮像された第１の画像を入力する第１の画像入力手段と、
前記撮像装置を固定された複数の客観視点位置からステレオ客観視点撮像手段で撮像された複数の第２の画像を入力する第２の画像入力手段と、
前記撮像装置の傾斜角に関わる情報を計測する傾斜角計測装置から傾斜角計測値を入力する傾斜角入力手段と、
前記撮像装置の複数の方位角を仮に設定する仮設定手段と、
前記第１の画像入力手段で入力された第１の画像から、前記情景中の第１の指標の特徴量を検出する第１の検出手段と、
前記第２の画像入力手段で入力された複数の第２の画像の各々から、前記撮像装置に備わる第２の指標の候補の特徴量を検出する第２の検出手段と、
前記仮に設定された複数の方位角の各々ごとに前記第１の指標の投影位置を複数算出する第１の指標位置算出手段と、
前記第１の検出手段によって検出された第１の指標の特徴量に基づいて、前記複数の第１の指標の投影位置の各々のうち何れかを選択することにより、当該検出された特徴量の第１の指標を当該選択された投影位置の第１の指標を示すとして同定するとともに、当該選択された投影位置の算出に対応する前記仮に設定された方位角を前記撮像装置の方位角とする第１の同定手段と、
前記第１の検出手段で検出された特徴量に基づいて、前記第２の指標の３次元位置を算出する第２の指標位置算出手段と、
前記第２の検出手段で前記複数の第２の画像の各々から検出された特徴量に基づいて、前記第２の指標の候補の３次元位置を算出する第２の候補位置算出手段と、
前記第２の指標の３次元位置と前記候補の３次元位置との３次元距離に基づいて、当該候補が当該第２の指標を示すか否かを同定する第２の同定手段と
を備えることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像中の指標を同定するための技術に関するものである。
【背景技術】
【０００２】
［従来技術１］
現実空間を撮像するカメラなどの撮像部（以下適宜カメラと言い換える）の位置姿勢計測は、例えば現実空間と仮想空間とを融合表示する複合現実感システムにおいて必要となる。このような従来技術として、現実空間に配置した位置が既知のマーカ、または現実空間中の位置が既知の特徴点（以下、マーカと特徴点を合わせて指標という）を用いて、カメラの位置姿勢を測定する位置姿勢センサの計測誤差を補正する方法がある。これらの方法は、特許文献１乃至２および非特許文献１において開示されている。
【０００３】
［従来技術２］
一方で、非特許文献２乃至３において開示されているように、位置姿勢センサを用いず、カメラで撮像した指標のみを利用してカメラの位置姿勢推定を行う方法も知られている。そして、これら非特許文献においては、正方形の指標を利用し、正方形の４頂点の座標を基にして、カメラの位置姿勢を推定している。ただし、正方形はその中心点（対角線の交点）を通り、面に垂直な軸を回転軸として９０°毎の回転対称形であることから、頂点の座標からだけでは上下左右の判定を行うことができない。そのため、正方形の指標内部に、上下左右の判定を行うためのさらなる画像特徴が設けられている。さらに、指標を複数利用する場合に、カメラで撮像した画像のみに基づいて複数の指標のどれを捉えているのかを識別する必要があるため、指標の内部にはさらに指標毎に異なる固有のパターンや符号などの図形情報が埋め込まれている。
【０００４】
［従来技術３］
また、現実空間に配置した位置姿勢が既知の複数の撮像部によって、対象物上での位置が既知の複数の指標を撮像して、対象物の位置姿勢を推定する方法が知られている。従来技術３では、検出した指標が複数の指標のどれに対応するのかを求める手段として、指標となるＬＥＤ毎に発光タイミングを制御することが行われている。
【特許文献１】特開平１１−０８４３０７号公報
【特許文献２】特開２０００−０４１１７３号公報
【特許文献３】特開２００４−２３３３３４号公報
【非特許文献１】Ａ．Ｓｔａｔｅ，Ｇ．Ｈｉｒｏｔａ，Ｄ．Ｔ．Ｃｈｅｎ，Ｂ．Ｇａｒｒｅｔｔ，ａｎｄ  Ｍ．Ｌｉｖｉｎｇｓｔｏｎ：Ｓｕｐｅｒｉｏｒ  ａｕｇｍｅｎｔｅｄ  ｒｅａｌｉｔｙ  ｒｅｇｉｓｔｒａｔｉｏｎ  ｂｙ  ｉｎｔｅｇｒａｔｉｎｇ  ｌａｎｄｍａｒｋ  ｔｒａｃｋｉｎｇ  ａｎｄ  ｍａｇｎｅｔｉｃ  ｔｒａｃｋｉｎｇ，Ｐｒｏｃ．ＳＩＧＧＲＡＰＨ’９６，ｐｐ．４２９−４３８，Ｊｕｌｙ  １９９６．
【非特許文献２】加藤，Ｂｉｌｌｉｎｇｈｕｒｓｔ，浅野，橘：マーカー追跡に基づく拡張現実感システムとそのキャリブレーション，日本バーチャルリアリティ学会論文誌，ｖｏｌ．４，ｎｏ．４，ｐｐ．６０７−６１６，Ｄｅｃ．１９９９．
【非特許文献３】Ｘ．Ｚｈａｎｇ，Ｓ．Ｆｒｏｎｚ，Ｎ．Ｎａｖａｂ：Ｖｉｓｕａｌｍａｒｋｅｒ  ｄｅｔｅｃｔｉｏｎ  ａｎｄ  ｄｅｃｏｄｉｎｇ  ｉｎ  ＡＲ  ｓｙｓｔｅｍｓ：Ａ  ｃｏｍｐａｒａｔｉｖｅ  ｓｔｕｄｙ，Ｐｒｏｃ．ｏｆ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｍｉｘｅｄ  ａｎｄ  Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ（ＩＳＭＡＲ’０２），２００２．
【非特許文献４】Ｒ．Ｍ．Ｈａｒａｌｉｃｋ，Ｃ．Ｌｅｅ，Ｋ．Ｏｔｔｅｎｂｅｒｇ，ａｎｄ  Ｍ．Ｎｏｌｌｅ：Ｒｅｖｉｅｗ  ａｎｄ  ａｎａｌｙｓｉｓ  ｏｆ  ｓｏｌｕｔｉｏｎｓ  ｏｆ  ｔｈｅ  ｔｈｒｅｅ  ｐｏｉｎｔ  ｐｅｒｓｐｅｃｔｉｖｅ  ｐｏｓｅ  ｅｓｔｉｍａｔｉｏｎ  ｐｒｏｂｌｅｍ，Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，ｖｏｌ．１３，ｎｏ．３，ｐｐ．３３１−３５６，１９９４．
【非特許文献５】Ｄ．Ｇ．Ｌｏｗｅ：Ｆｉｔｔｉｎｇ  ｐａｒａｍｅｔｅｒｉｚｅｄｔｈｒｅｅ−ｄｉｍｅｎｓｉｏｎａｌ  ｍｏｄｅｌｓ  ｔｏ  ｉｍａｇｅｓ，ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  ＰＡＭＩ，ｖｏｌ．１３，ｎｏ．５，ｐｐ．４４１−４５０，１９９１．
【非特許文献６】藤井博文，神原誠之，岩佐英彦，竹村治雄，横矢直和，拡張現実のためのジャイロセンサを併用したステレオカメラによる位置合わせ，電子情報通信学会技術研究報告ＰＲＭＵ９９−１９２（信学技報ｖｏｌ．９９，ｎｏ．５７４，ｐｐ．１−８）
【非特許文献７】Ｈ．Ｎａｊａｆｉ，Ｎ．Ｎａｖａｂ，Ｇ．Ｋｌｉｎｋｅｒ：Ａｕｔｏｍａｔｅｄ  Ｉｎｉｔｉａｌｉｚａｔｉｏｎ  Ｆｏｒ  Ｍａｒｋｅｒ−ｌｅｓｓ  Ｔｒａｃｋｉｎｇ：Ａ  Ｓｅｎｓｏｒ  Ｆｕｓｉｏｎ  Ａｐｐｒｏａｃｈ，Ｐｒｏｃ．  ｏｆ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｍｉｘｅｄ  ａｎｄ  Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ，ｐｐ．７９−８８，２００４．
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来技術１のカメラの位置姿勢を推定する方法において、ある特定の色の小さな円形のシート状の物体を指標とすることができる。この場合、指標のもつ情報は、３次元位置（座標）と色である。位置姿勢センサの計測値を利用し、指標の３次元位置をカメラの画像面へと投影し、一方で、画像からのその指標の色を検出する色領域検出処理を行い、画像中での重心位置を計算する。そして、画像面上へ投影した３次元位置と、画像から計算した重心位置を比較し、例えば最も近いものを同じ指標であると判定することによって、画像中の指標を同定することができる。
【０００６】
このように、色領域検出によって画像中から指標を検出する場合、カメラが撮像するであろう現実空間の中に、指標以外に指標と同じ色が存在すると、それらを誤って同定してしまうという問題がある。
【０００７】
このような問題を防止するため、同心円状に配置した異なる色の組み合わせからなる指標を用い、色領域検出を行った後に色の組み合わせを調べる、組み合わせの正しい領域のみを指標として検出する方法もある。この場合、単色の指標を用いた場合に比べ、背景の一部を誤って指標であると検出してしまう可能性が低くなる。
【０００８】
しかしながら、色領域検出を利用して安定した指標検出を行うため、指標の色は目立つ色に設定されることが多い。さらに、同心円上に異なる色を組み合わせる場合には、同心円を安定的に検出するために画像中で十分大きく撮像されねばならない。すなわち、現実空間に大きく、かつ、見た目を損ねる指標を配置する必要が生じる。しかし、現実空間にそのような指標を配置することが許されない場合があったり、現実空間の見栄えを悪くするという点で改善の余地があった。
【０００９】
一方で、従来技術２で利用されている正方形マーカのような図形的な拡がりのある指標を利用する方法がある。しかしながら、従来技術２では完全に画像のみから個々のマーカを識別する必要が生じるため、指標に符号情報やテンプレートとなりうる記号情報などを埋め込む必要があった。図９は、非特許文献２および非特許文献３にて開示されている従来技術２で利用されている具体的な正方形マーカの例である。
【００１０】
このような複雑な構造をもつ指標を撮像画像から検出しなければならないため、撮像画像面の中で十分に大きな面積を占めるように指標を捉えなければ、指標の認識ができないという問題があった。これは換言すれば、現実空間の広い領域を指標配置のために確保しなければならないこと、あるいは、カメラが指標に十分に近づかなければならないということを意味する。または、指標の配置条件が厳しいという問題と言い換えることができる。
【００１１】
指標が目立たないように小さくしつつ、個々の指標を識別するには、ＬＥＤのような発光体や、再帰性反射材を指標として利用する方法がある。しかしながら、このような方法には、指標の他に発光体や反射体が存在する場合に、それらを指標と誤って判定してしまうという問題があった。
【００１２】
例えば、図１０に示すように、背景となる空間に指標の他にも発光体が存在する場合を例にして説明する。図１０において、利用する指標２０５は、現実物体２０４上に配置され、ここでは例えば赤外光を発光する球体であるとする。また、電球などの発光体２０３から赤外光が放出されているとする。この状態で赤外カメラ１０１が可視光カット（赤外光透過）フィルタ２０２を通して撮像した画像が、図１１に示すような画像だったとする。
【００１３】
このとき、画像から指標２０５の明度に相当する領域を検出する明度領域検出処理を行うと、指標２０５に対応する領域３０１のみならず、発光体２０３に対応する領域３０２もまた指標２０５の明度に相当する領域として検出される可能性がある。このような場合には、指標２０５が領域３０１に対応するのか、それとも領域３０２に対応するのか、判定することができないという問題があった。このように、撮像される空間内に、指標と同じか又は似通った明度をもつ物体が存在すると、それを指標と誤って認識してしまう場合があるという問題点があった。
【００１４】
発光体や反射体を利用した指標を識別するために、数点の発光体または反射体を相対位置が固定された状態で配置し、それらをまとめて指標として用いる方法がある。この方法では、発光体又は反射体間の位置関係を使って個々の指標を識別している。しかしながら、数点の発光体または反射体のうちの一部が隠されてしまうと指標として識別されなくなるという問題があった。また、指標が大きくなるため、現実空間の見栄えを悪くするという問題もあった。
【００１５】
一方、従来技術３では、複数の指標を識別するために、時分割で発光タイミングを制御することが可能な指標を用いているが、発光タイミングの制御機構や高速度カメラが必要であるため、コストがかかるという問題があった。
【００１６】
本発明はこのような従来技術の問題点を解決するためになされたものであり、本願発明の目的は、指標を正しく同定することができる情報処理方法および装置を提供することである。
【課題を解決するための手段】
【００１７】
本発明の目的を達成するために、例えば、本発明の情報処理方法及び装置は以下の構成を備える。
【００１８】
本発明の情報処理方法は、情景を撮像する撮像装置で撮像された第１の画像を入力する第１の画像入力工程と、前記撮像装置を固定された複数の客観視点位置からステレオ客観視点撮像手段で撮像された複数の第２の画像を入力する第２の画像入力工程と、前記撮像装置の傾斜角に関わる情報を計測する傾斜角計測装置から傾斜角計測値を入力する傾斜角入力工程と、前記撮像装置の複数の方位角を仮に設定する仮設定工程と、前記第１の画像入力工程で入力された第１の画像から、前記情景中の第１の指標の特徴量を検出する第１の検出工程と、前記第２の画像入力工程で入力された複数の第２の画像の各々から、前記撮像装置に備わる第２の指標の候補の特徴量を検出する第２の検出工程と、前記仮に設定された複数の方位角の各々ごとに前記第１の指標の投影位置を複数算出する第１の指標位置算出工程と、前記第１の検出工程で検出された第１の指標の特徴量に基づいて、前記複数の第１の指標の投影位置の各々のうち何れかを選択することにより、当該検出された特徴量の第１の指標を当該選択された投影位置の第１の指標を示すとして同定するとともに、当該選択された投影位置の算出に対応する前記仮に設定された方位角を前記撮像装置の方位角とする第１の同定工程と、前記第１の検出工程で検出された特徴量に基づいて、前記第２の指標の３次元位置を算出する第２の指標位置算出工程と、前記第２の検出工程で前記複数の第２の画像の各々から検出された特徴量に基づいて、前記第２の指標の候補の３次元位置を算出する第２の候補位置算出工程と、前記第２の指標の３次元位置と前記候補の３次元位置との３次元距離に基づいて、当該候補が当該第２の指標を示すか否かを同定する第２の同定工程とを有することを特徴とする。
【００２０】
本発明の情報処理装置は、情景を撮像する撮像装置で撮像された第１の画像を入力する第１の画像入力手段と、前記撮像装置を固定された複数の客観視点位置からステレオ客観視点撮像手段で撮像された複数の第２の画像を入力する第２の画像入力手段と、前記撮像装置の傾斜角に関わる情報を計測する傾斜角計測装置から傾斜角計測値を入力する傾斜角入力手段と、前記撮像装置の複数の方位角を仮に設定する仮設定手段と、前記第１の画像入力手段で入力された第１の画像から、前記情景中の第１の指標の特徴量を検出する第１の検出手段と、前記第２の画像入力手段で入力された複数の第２の画像の各々から、前記撮像装置に備わる第２の指標の候補の特徴量を検出する第２の検出手段と、前記仮に設定された複数の方位角の各々ごとに前記第１の指標の投影位置を複数算出する第１の指標位置算出手段と、前記第１の検出手段によって検出された第１の指標の特徴量に基づいて、前記複数の第１の指標の投影位置の各々のうち何れかを選択することにより、当該検出された特徴量の第１の指標を当該選択された投影位置の第１の指標を示すとして同定するとともに、当該選択された投影位置の算出に対応する前記仮に設定された方位角を前記撮像装置の方位角とする第１の同定手段と、前記第１の検出手段で検出された特徴量に基づいて、前記第２の指標の３次元位置を算出する第２の指標位置算出手段と、前記第２の検出手段で前記複数の第２の画像の各々から検出された特徴量に基づいて、前記第２の指標の候補の３次元位置を算出する第２の候補位置算出手段と、前記第２の指標の３次元位置と前記候補の３次元位置との３次元距離に基づいて、当該候補が当該第２の指標を示すか否かを同定する第２の同定手段とを備えることを特徴とする情報処理装置。
【発明の効果】
【００２５】
本発明によれば、指標と、画像中から検出された指標候補領域との対応付けを行う際に、仮に、指標と似た領域が現実空間に存在し、その領域が指標候補領域として検出された場合であっても、指標を正しく同定することができる。また、同定された指標を用いることで、撮像装置または対象物体の位置及び姿勢をより高い精度で算出することができる。
【発明を実施するための最良の形態】
【００２６】
以下、添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
【００２７】
［第１の実施形態］
本実施形態に係る情報処理装置は、撮像装置の推定位置に基づいて指標の同定を行う。
【００２８】
図１は、本実施形態における情報処理装置の構成を示している。本実施形態における情報処理装置１００は、画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部１９０によって構成されている。情報処理装置１００は、客観視点カメラ１８０、及び、撮像装置１３０に接続されている。なお、客観視点カメラ１８０は、その位置が固定されており、撮像装置１３０は、例えば、頭部搭載型の装置であり、操作者の頭部に搭載して移動可能である。
【００２９】
現実空間中の複数の位置には、撮像装置１３０によって撮影するための指標（以下、主観視点指標）として、世界座標系（現実空間の１点を原点として定義し、更に互いに直交する３軸を夫々Ｘ軸、Ｙ軸、Ｚ軸として定義した座標系）における位置ｘＷＱｋが既知である複数個の主観視点指標Ｑｋ（ｋ＝１，，，ＫＱ）が配置されている。また、撮像装置１３０上には、客観視点カメラ１８０によって撮影するための指標（以下、客観視点指標）として、撮像装置座標系（撮像装置１３０上の１点を原点として定義し、更に互いに直交する３軸を夫々Ｘ軸、Ｙ軸、Ｚ軸として定義した座標系）上における位置ｘＣＰが既知である客観視点指標Ｐが設定されている。
【００３０】
客観視点カメラ１８０の視野内の複数の地点のそれぞれに撮像装置１３０を位置させた時に、撮像装置１３０によって取得される主観視点画像上において少なくとも３個以上の主観視点指標Ｑｋが常に観測されるように撮像装置１３０が位置するようにすることが望ましい。また、客観視点カメラ１８０によって取得される客観視点画像上において客観視点指標Ｐが常に観測されるように撮像装置１３０が位置するようにすることが望ましい。図１の例は、４個の主観視点指標Ｑ１，Ｑ２，Ｑ３，Ｑ４と１個の客観視点指標Ｐが設定されており、また、客観視点指標Ｐと似た偽指標Ｐ’が現実空間中に存在していて、そのうちの３個の主観視点指標Ｑ１，Ｑ３，Ｑ４が撮像装置１３０の視野内に含まれており、１個の客観視点指標Ｐと１個の偽指標Ｐ’が客観視点カメラ１８０の視野内に含まれている状況を示している。
【００３１】
なお、主観視点指標Ｑｋは、例えば、それぞれが異なる色を有する円形状のマーカによって構成してもよいし、それぞれが異なるテクスチャ特徴を有する自然特徴等の特徴点によって構成してもよい。また、ある程度の面積を有する四角形の単色領域によって形成されるような、四角形指標を用いることも可能である。撮影画像上における投影像の画像座標が検出可能であって、かついずれの指標であるかが何らかの方法で同定可能であるような指標であれば、何れの形態であってもよい。主観視点指標は、操作者により設定されたものであっても良いし、操作者により設定されたものではない、自然形状のものを用いても良い。
【００３２】
一方、客観視点指標Ｐは、広画角の客観視点カメラで遠くから撮影した画像上で安定的に検出する必要があるため、例えばＬＥＤや再帰性反射材などによって構成される。
【００３３】
撮像装置１３０が出力する画像（以下、これを主観視点画像と呼ぶ）は、画像入力部１６０に入力される。また、客観視点カメラ１８０が出力する画像（以下、これを客観視点画像と呼ぶ）も、画像入力部１６０に入力される。
【００３４】
客観視点カメラ１８０は、撮像装置１３０上の客観視点指標Ｐを常に撮像可能な位置に固定して配置されている。ここで、客観視点カメラ１８０の世界座標系における位置及び姿勢は、データ記憶部１７０に既知の値として予め保持されているものとする。
【００３５】
画像入力部１６０は、情報処理装置１００へ入力される主観視点画像及び客観視点画像をデジタルデータに変換し、データ記憶部１７０に保存する。
【００３６】
主観視点指標検出部１１０は、データ記憶部１７０より主観視点画像を入力し、入力した画像中に撮影されている主観視点指標の画像座標を検出する。例えば、主観視点指標の各々が異なる色を有するマーカによって構成されている場合には、画像上から各々のマーカ色に対応する領域を検出し、その重心位置を主観視点指標の検出座標とする。また、主観視点指標の各々が異なるテクスチャ特徴を有する特徴点によって構成されている場合には、既知の情報として予め保持している各々の主観視点指標のテンプレート画像によるテンプレートマッチングを画像上に施すことにより、主観視点指標の位置を検出する。また、四角形指標を用いる場合は、画像に２値化処理を施した後にラベリングを行い、４つの直線によって形成されている領域を指標候補として検出する。さらに、候補領域の中に特定のパターンがあるか否かを判定することによって誤検出を排除し、また、指標の識別子を取得する。なお、このようにして検出される四角形指標は、本実施例では、４つの頂点の個々によって特定される４つの指標であると考える。なお、撮像装置１３０の位置の推定値（後述する位置姿勢推定部１２０の出力）をデータ記憶部１７０からさらに入力し、この推定値に基づいて画像上における主観視点指標の位置を予測し探索範囲を限定することにより、主観視点指標の検出処理の計算負荷を軽減したり、主観視点指標の誤検出や誤同定を低減させたりすることが可能である。
【００３７】
主観視点指標検出部１１０は、さらに、検出された指標の画像座標とその指標の識別子をデータ記憶部１７０へと出力する。なお、以下では、主観視点画像上で検出された指標を、検出された指標の夫々に付けられた識別子ｎ（ｎ＝１，，，Ｎ）を用いて、Ｑｋｎと表記する。ここで、Ｎは主観視点画像上で検出された指標の数を表している。また、検出された指標Ｑｋｎの画像座標をｕＱｋｎと表記する。例えば図１の場合には、Ｎ＝３であり、指標の識別子ｋ１＝１，ｋ２＝３，ｋ３＝４と、これらに対応する画像座標ｕＱｋ１，ｕＱｋ２，ｕＱｋ３が出力される。
【００３８】
位置姿勢推定部１２０は、主観視点指標検出部１１０によって検出された各々の主観視点指標の画像座標ｕＱｋｎと、既知な情報として予め保持されている世界座標ｘＷＱｋｎの組をデータ記憶部１７０から入力し、これらの情報に基づいて撮像装置１３０の位置及び姿勢を算出（推定）する。推定した位置及び姿勢は、例えば、位置を表す３次元ベクトルｘＷＣと姿勢を表す３×３行列ＲＷＣとの組の形態によってデータ記憶部１７０に出力される。主観視点指標の世界座標と画像座標の組から撮像装置１３０の位置及び姿勢を算出する方法は、写真測量等の分野において知られている（例えば、非特許文献４、非特許文献５を参照）ため、その詳細については、省略する。
【００３９】
客観視点指標候補検出部１４０は、データ記憶部１７０より客観視点画像を入力し、入力した客観視点画像中に撮影されている客観視点指標（及び偽指標）の画像座標を検出する。例えば、画像上からＬＥＤや再帰性反射材などの明るさに対応する領域を検出し、その重心位置を客観視点指標の検出座標とする。
【００４０】
客観視点指標候補検出部１４０は、さらに、検出された客観視点指標候補の画像座標をデータ記憶部１７０へと出力する。なお、以下では、客観視点画像上で検出された客観視点指標候補を、検出された客観視点指標候補の夫々に付けられた識別子ｍ（ｍ＝１，，，Ｍ）を用いて、Ｐｍと表記する。ここで、Ｍは客観視点画像上で検出された客観視点指標候補の数を表している。また、検出された客観指標候補Ｐｍの画像座標をｕＰｍと表記する。例えば図１の場合には、Ｍ＝２であり、画像座標ｕＰ１，ｕＰ２が出力される。
【００４１】
位置拘束条件算出部１５０は、客観視点指標候補検出部１４０によって検出された各々の客観視点指標候補の画像座標ｕＰｍと、客観視点カメラの世界座標における位置及び姿勢をデータ記憶部１７０から入力し、これらの情報に基づいて夫々の客観視点指標候補の位置拘束条件（本実施形態では位置を拘束する直線を記述するパラメータ）を算出する。
【００４２】
客観視点指標同定部１９０は、位置姿勢推定部１２０によって推定された撮像装置の位置及び姿勢と、位置拘束条件算出部１５０によって算出された夫々の客観視点指標候補の位置拘束条件とに基づいて、客観視点指標を同定する。
【００４３】
データ記憶部１７０は、画像入力部１６０から入力される画像、位置姿勢推定部１２０から入力される位置の推定値、主観視点指標検出部１１０から入力される各々の指標の画像座標及び識別子、客観視点指標候補検出部１４０から入力される各々の指標候補の画像座標、さらに、既知の値である主観視点指標の世界座標、客観視点指標の撮像装置座標（撮像装置座標系における座標値）、客観視点カメラ１８０のカメラパラメータ等のデータを保持し、必要に応じてこれらを入出力する。
【００４４】
なお、図１に示した画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部１９０の夫々は、独立した装置として扱っても良いし、夫々ソフトウェアとして１つもしくは複数のコンピュータにインストールし、夫々のコンピュータのＣＰＵにより実行することで、その機能を実現するようにしても良い。本実施形態では、各部（画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部１９０）は１台のコンピュータ内で実行対象となるソフトウェア実行することにより実現される機能として扱う。
【００４５】
図２は画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部１９０の夫々をソフトウェアとして実行するコンピュータの基本構成を示す図である。
【００４６】
１００１はＣＰＵで、ＲＡＭ１００２やＲＯＭ１００３に格納されたプログラムやデータを用いてコンピュータ全体の制御を行うと共に、画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部１９０の夫々のソフトウェアの実行を制御して、各部の機能を実現する。
【００４７】
１００２はＲＡＭで、外部記憶装置１００７や記憶媒体ドライブ１００８からロードされたプログラムやデータを一時的に記憶するエリアを備えると共に、ＣＰＵ１００１が各種の処理を行うために必要とするワークエリアを備える。データ記憶部１７０の機能は、ＲＡＭ１００２によって実現される。
【００４８】
１００３はＲＯＭで、一般にコンピュータの記憶プログラムや設定データなどが格納されている。１００４、１００５は夫々キーボード、マウスで、操作者は夫々を用いて、各種の指示をＣＰＵ１００１に入力することができる。
【００４９】
１００６は表示部で、ＣＲＴや液晶画面などにより構成されており、例えば、撮像装置１３０の位置姿勢計測のために表示すべきメッセージ等を表示することができる。
【００５０】
１００７は外部記憶装置で、ハードディスクなどの大容量情報記憶装置として機能する装置であって、ここにＯＳ（オペレーティングシステム）やソフトウェアのプログラム等を保存する。また本実施形態の説明において、既知であると説明する情報はここに保存されており、必要に応じてＲＡＭ１００２にロードされる。
【００５１】
１００８は記憶媒体ドライブで、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどの記憶媒体に記憶されているプログラムやデータをＣＰＵ１００１からの指示に従って読み出して、ＲＡＭ１００２や外部記憶装置１００７に出力する。
【００５２】
１００９はＩ／Ｆで、客観視点カメラ１８０や撮像装置１３０を接続するためのアナログビデオポートあるいはＩＥＥＥ１３９４等のデジタル入出力ポートや、同定した指標に関わる情報を外部へ出力するためのイーサネット（登録商標）ポート等によって構成される。夫々が入力したデータはＩ／Ｆ１００９を介してＲＡＭ１００２に取り込まれる。画像入力部１６０の機能の一部は、Ｉ／Ｆ１００９によって実現される。
【００５３】
１０１０は、上述の各部を繋ぐバスである。
【００５４】
図３は、客観視点指標候補Ｐｍの位置を拘束する直線を算出する処理のフローチャートであり、ＣＰＵ１００１がソフトウェアプログラムを実行することで位置拘束条件算出部１５０として機能する。なお、以下の処理を行う前段で、同フローチャートに従ったプログラムコードは、ＲＡＭ１００２に既にロードされているものとする。
【００５５】
ステップＳ４０００において、位置拘束条件算出部１５０は、客観視点指標候補検出部１４０において検出された夫々の客観視点指標候補Ｐｍの画像座標ｕＰｍをデータ記憶部１７０から入力する。
【００５６】
ステップＳ４０１０において、位置拘束条件算出部１５０は、画像座標ｕＰｍに基づいて、世界座標系における夫々の客観視点指標候補Ｐｍの位置を拘束する直線を表すパラメータを算出する。すなわち、世界座標系における直線の傾きｈｘｍ，ｈｙｍ，ｈｚｍを、
【００５７】
【数１】
0005127165.tif 000002
【００５８】
によって画像座標ｕＰｍに基づいて算出し、このｈｘｍ，ｈｙｍ，ｈｚｍを直線のパラメータとする。ここで、ｆＢｘ及びｆＢｙは、それぞれｘ軸方向及びｙ軸方向における客観視点カメラ１８０の焦点距離であって、データ記憶部１７０に既知の値として予め保持されているものとする。また、ＲＷＢは客観視点カメラ座標系における姿勢を世界座標に変換する回転行列であり、データ記憶部１７０に既知の値として予め保持されている世界座標系における客観視点カメラ１８０の姿勢に基づいて、予め算出されているものとする。このとき、世界座標系における直線上の点は、媒介変数τの関数として
【００５９】
【数２】
0005127165.tif 000003
【００６０】
のように表すことができる。ここで、ｘＷＢ，ｙＷＢ，ｚＷＢは世界座標系における客観視点カメラ１８０の位置であって、データ記憶部１７０に既知の値として予め保持されているものとする。
【００６１】
ステップＳ４０２０において、位置拘束条件算出部１５０は、夫々の客観視点指標候補Ｐｍの世界座標系における直線の傾きｈｘｍ，ｈｙｍ，ｈｚｍをデータ記憶部１７０に出力する。
【００６２】
従って式（２）で表される直線は、世界座標系における客観視点カメラ１８０の位置と世界座標系における客観視点指標候補Ｐｍの位置とを通る直線であって、世界座標系における客観視点指標候補Ｐｍの位置は、上記媒介変数τが適当な値を取ることにより得られるものである。
【００６３】
図４は、客観視点指標を同定する処理のフローチャートであり、ＣＰＵ１００１がソフトウェアプログラムを実行することで客観視点指標同定部１９０として機能する。同フローチャートに従った処理は、ステップＳ５０００の処理を行った後、夫々の客観視点指標候補についてステップＳ５０１０〜ステップＳ５０３０の処理を行うことによって成されるものである。なお、以下の処理を行う前段で、同フローチャートに従ったプログラムコードは、ＲＡＭ１００２に既にロードされているものとする。
【００６４】
ステップＳ５０００において、客観視点指標同定部１９０は、位置姿勢推定部１２０で推定した撮像装置の位置を表す３次元ベクトルｘＷＣと姿勢を表す３×３行列ＲＷＣをデータ記憶部１７０から入力し、それに基づいて客観視点指標Ｐの推定位置を算出する。すなわち、世界座標系における客観視点指標Ｐの推定位置ｘＷＰを、
【００６５】
【数３】
0005127165.tif 000004
【００６６】
によって算出する。ここで、ｘＣＰは、撮像装置座標系における客観視点指標Ｐの座標値であり、データ記憶部１７０に既知な情報として予め保持されている。
【００６７】
なお、客観視点指標Ｐの位置が撮像装置座標系の原点と十分に近い場合には、本ステップの処理を行わずに、撮像装置の推定位置を客観視点指標Ｐの推定位置としてそのまま用いてもよい。その場合には、位置姿勢推定部１２０において、撮像装置の姿勢を表す３×３行列ＲＷＣをデータ記憶部１７０に保持しておかなくてもよい。
【００６８】
ステップＳ５０１０において、客観視点指標同定部１９０は、客観視点指標Ｐの推定位置ｘＷＰから注目する客観視点指標候補Ｐｍの位置を拘束する直線ｌＷｍ（τ）までの距離を算出する。すなわち、距離ｄｍを表す次式、
【００６９】
【数４】
0005127165.tif 000005
【００７０】
の右辺（τの二次関数）の最小値を求め、その値の正の平方根を取ることによって算出する。
【００７１】
ステップＳ５０２０において、客観視点指標同定部１９０は、ステップＳ５０１０で求めた距離ｄｍが所定の範囲内であるかを判断する。
【００７２】
所定範囲内であれば処理をステップＳ５０３０に進め、ステップＳ５０３０において、客観視点指標同定部１９０は、この客観視点指標候補が客観視点指標であると判定し、例えばその客観視点指標の画像座標をＩ／Ｆ１００９を介して外部へと出力して、本処理を終了する。
【００７３】
一方、所定範囲外の場合には処理をステップＳ５０４０に進め、ステップＳ５０４０において、客観視点指標同定部１９０は、全ての客観視点指標候補ＰｍについてステップＳ５０１０〜Ｓ５０３０の処理を行ったのか否かを判断する。行っているのであれば本処理を終了するのであるが、行っていないのであれば処理をステップＳ５０１０に戻し、未だステップＳ５０１０以降の処理対象となっていない客観視点指標候補ＰｍについてステップＳ５０１０以降の処理を行う。
【００７４】
以上の処理によって客観視点指標を同定することができる。
【００７５】
なお、本実施形態では、撮像装置が１つ（客観視点指標が１つ）の場合を想定していたが、撮像装置が複数（客観視点指標が複数）の場合であっても良いことは言うまでもない。即ち、ステップＳ５０００〜Ｓ５０４０の処理を夫々の客観視点指標Ｐに対して行うことによって、客観視点画像から検出した客観視点指標候補が、どの客観視点指標に対応するのかを同定すればよい。
【００７６】
以上のように、本実施形態に係る情報処理装置及び情報処理方法によると、上記［従来技術３］で利用されていたような発光タイミングの制御機構や高速度カメラは不要となり、その結果、コストを低く抑えることができる。
【００７７】
［第２の実施形態］
本実施形態に係る情報処理装置は、第１の実施形態の情報処理装置にさらにもう１台の客観視点カメラを追加した構成となっている。
【００７８】
図５は、本実施形態に係る情報処理装置の構成を示す図である。なお、図１と同じ部分については同じ番号、記号を付けており、その説明を省略する。図５に示したように、本実施形態における情報処理装置６００は、画像入力部６６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部６４０、位置拘束条件算出部６５０、及び客観視点指標同定部６９０によって構成されている。情報処理装置６００は、客観視点カメラ１８０ａ，１８０ｂ、及び、計測対象である撮像装置１３０に接続されている。なお、客観視点カメラ１８０ａ及び１８０ｂは、その位置が固定されており、撮像装置１３０は、例えば、頭部搭載型の装置であり、操作者の頭部に搭載して移動可能である。
【００７９】
現実空間中の複数の位置には、第１の実施形態と同様に主観視点指標Ｑｋが配置されている。また、撮像装置１３０上には、撮像装置座標系上における位置が既知である客観視点指標Ｐが配置されている。
【００８０】
客観視点カメラ１８０ａ及び１８０ｂの視野内の複数の地点のそれぞれに撮像装置１３０を位置させた時に、撮像装置１３０によって取得される主観視点画像上において少なくとも３個以上の主観視点指標Ｑｋが常に観測されるように撮像装置１３０が位置するようにすることが望ましい。また、客観視点カメラ１８０ａ，１８０ｂの各々によって取得される客観視点画像上において客観視点指標Ｐが常に観測されるように撮像装置１３０が位置するようにすることが望ましい。図５の例は、４個の主観視点指標Ｑ１，Ｑ２，Ｑ３，Ｑ４と１個の客観視点指標Ｐが設定されており、また、客観視点指標Ｐと似た偽指標Ｐ’が現実空間中に存在していて、そのうちの３個の主観視点指標Ｑ１，Ｑ３，Ｑ４が撮像装置１３０の視野内に含まれており、１個の客観視点指標Ｐと１個の偽指標Ｐ’が客観視点カメラ１８０ａ及び１８０ｂの視野内に含まれている状況を示している。
【００８１】
客観視点カメラ１８０ａ及び１８０ｂは、撮像装置１３０上の客観視点指標Ｐを常に撮像可能な位置に固定して配置されている。ここで、世界座標系における客観視点カメラ１８０ａ及び１８０ｂの位置及び姿勢は、データ記憶部１７０に既知の値として予め保持されているものとする。
【００８２】
画像入力部６６０は、情報処理装置６００へ入力される主観視点画像及び２枚の客観視点画像（夫々、客観視点カメラ１８０ａ，１８０ｂによって撮影）をデジタルデータに変換し、データ記憶部１７０に保存する。
【００８３】
客観視点指標候補検出部６４０は、データ記憶部１７０より２枚の客観視点画像を入力し、客観視点指標候補の画像座標を夫々で検出し、夫々の画像座標をデータ記憶部１７０へと出力する。なお、以下では、客観視点カメラ１８０ａによって撮影された客観視点画像上で検出された客観視点指標候補を、検出された客観視点指標候補の夫々に付けられた識別子ｍａ（ｍａ＝１，，，Ｍａ）を用いて、Ｐａｍａと表記する。ここで、Ｍａは客観視点カメラ１８０ａによって撮影された客観視点画像上で検出された客観視点指標候補の数を表している。また、検出された客観指標候補Ｐａｍａの画像座標をｕＰａｍａと表記する。一方、客観視点カメラ１８０ｂによって撮影された客観視点画像上で検出された客観視点指標候補を、検出された客観視点指標候補の夫々に付けられた識別子ｍｂ（ｍｂ＝１，，，Ｍｂ）を用いて、Ｐｂｍｂと表記する。ここで、Ｍｂは客観視点カメラ１８０ｂによって撮影された客観視点画像上で検出された客観視点指標候補の数を表している。そして、検出された客観指標候補Ｐｂｍｂの画像座標をｕＰｂｍｂと表記する。例えば図５の場合には、Ｍａ＝Ｍｂ＝２であり、画像座標ｕＰａ１ａ，ｕＰａ２ａ，ｕＰｂ１ｂ，ｕＰｂ２ｂが出力される。
【００８４】
位置拘束条件算出部６５０は、客観視点指標候補検出部６４０によって検出された各々の客観視点指標候補の画像座標（図５の例ではｕＰａ１ａ，ｕＰａ２ａ，ｕＰｂ１ｂ，ｕＰｂ２ｂ）と、夫々の客観視点カメラの世界座標における位置及び姿勢をデータ記憶部１７０から入力し、これらの情報に基づいて夫々の客観視点指標候補の位置拘束条件（本実施形態では３次元位置）を算出する。
【００８５】
客観視点指標同定部６９０は、位置姿勢推定部１２０によって推定された撮像装置１３０の位置と、位置拘束条件算出部６５０によって算出された夫々の客観視点指標候補の位置拘束条件とに基づいて、客観視点指標を同定する。
【００８６】
なお、図５に示した画像入力部６６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部６４０、位置拘束条件算出部６５０、及び客観視点指標同定部６９０の夫々は独立した装置として扱っても良いし、夫々ソフトウェアとして１つもしくは複数のコンピュータにインストールし、夫々のコンピュータのＣＰＵにより実行することで、その機能を実現するようにしても良い。本実施形態では、各部（画像入力部６６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部１２０、客観視点指標候補検出部６４０、位置拘束条件算出部６５０、及び客観視点指標同定部６９０）は１台のコンピュータ内で実行対象となるソフトウェアを実行することで実現する機能として扱う。またこのコンピュータの基本構成は図２に示した構成とする。
【００８７】
図６は、客観視点指標候補Ｐｍの３次元位置を算出する処理のフローチャートであり、ＣＰＵ１００１がソフトウェアプログラムを実行することで位置拘束条件算出部６５０として機能する。なお、以下の処理を行う前段で、同フローチャートに従ったプログラムコードは、ＲＡＭ１００２に既にロードされているものとする。
【００８８】
ステップＳ７０００において、位置拘束条件算出部６５０は、客観視点指標候補検出部６４０において検出された夫々の客観視点指標候補（図５の例ではＰａｍａ，Ｐｂｍｂ）の画像座標（図５の例ではｕＰａ１ａ，ｕＰａ２ａ，ｕＰｂ１ｂ，ｕＰｂ２ｂ）をデータ記憶部１７０から入力する。
【００８９】
ステップＳ７０１０において、位置拘束条件算出部６５０は、エピポーラ拘束を用いて客観視点指標候補の画像間での対応付けを行い、三角測量の原理に基づいて、対応付けられた客観視点指標候補Ｐｍ（ｍ＝１，，，Ｍ）の画像座標を用いて、世界座標系における客観視点指標候補Ｐｍの３次元位置ｘＷＰｍを算出する。ここで、Ｍは対応付けられた客観視点指標候補の数を表している。
【００９０】
ステップＳ７０２０において、位置拘束条件算出部６５０は、世界座標系における客観視点指標候補Ｐｍの３次元位置ｘＷＰｍをデータ記憶部１７０に出力する。
【００９１】
図７は、客観視点指標を同定する処理のフローチャートであり、ＣＰＵ１００１がソフトウェアのプログラムを実行することで客観視点指標同定部６９０として機能する。同フローチャートに従った処理は、ステップＳ８０００の処理を行った後、夫々の客観視点指標候補についてステップＳ８０１０〜ステップＳ８０３０の処理を行うことによって成されるものである。なお、以下の処理を行う前段で、同フローチャートに従ったプログラムコードは、ＲＡＭ１００２に既にロードされているものとする。
【００９２】
ステップＳ８０００において、客観視点指標同定部６９０は、位置姿勢推定部１２０で推定した撮像装置の位置を表す３次元ベクトルｘＷＣと姿勢を表す３×３行列ＲＷＣをデータ記憶部１７０から入力し、式３に基づいて客観視点指標Ｐの推定位置ｘＷＰを算出する。
【００９３】
ステップＳ８０１０において、客観視点指標同定部６９０は、客観視点指標Ｐの推定位置ｘＷＰと注目する客観視点指標候補Ｐｍの３次元位置ｘＷＰｍとの距離を算出する。すなわち、距離ｄｍを、
【００９４】
【数５】
0005127165.tif 000006
【００９５】
によって算出する。
【００９６】
ステップＳ８０２０において、客観視点指標同定部６９０は、ステップＳ８０１０で求めた距離ｄｍが所定の範囲内であるかを判断する。
【００９７】
所定範囲内であれば処理をステップＳ８０３０に進め、ステップＳ８０３０において、客観視点指標同定部６９０は、この客観視点指標候補が客観視点指標であると判定し、例えばその客観視点指標の画像座標をＩ／Ｆ１００９を介して外部へと出力して、本処理を終了する。
【００９８】
一方、所定範囲外の場合には処理をステップＳ８０４０に進め、ステップＳ８０４０において、客観視点指標同定部６９０は、全ての客観視点指標候補ＰｍについてステップＳ８０１０〜Ｓ８０３０の処理を行ったのか否かを判断し、行っているのであれば本処理を終了するのであるが、行っていないのであれば処理をステップＳ８０１０に戻し、未だステップＳ８０１０以降の処理対象となっていない客観視点指標候補ＰｍについてステップＳ８０１０以降の処理を行う。
【００９９】
以上の処理によって客観視点指標を同定することができる。
【０１００】
以上のように、本実施形態に係る情報処理装置及び情報処理方法によっても、上記［従来技術３］で利用されていたような発光タイミングの制御機構や高速度カメラは不要となり、その結果、コストを低く抑えることができる。
【０１０１】
［第３の実施形態］
第１の実施形態では、空間中を移動する撮像装置に客観視点指標が設定されていた。本実施形態に係る情報処理装置は、任意の対象物体に客観視点指標が設定された情報処理装置であって、第１の実施形態の情報処理装置に対象物体を追加した構成となっている。
【０１０２】
図８は、本実施形態に係る情報処理装置の構成を示す図である。図８に示したように、本実施形態に係る情報処理装置９００は、客観視点カメラ１８０、画像入力部１６０、データ記憶部１７０、主観視点指標検出部１１０、位置姿勢推定部９２０、客観視点指標候補検出部１４０、位置拘束条件算出部１５０、及び客観視点指標同定部９９０、及び主観視点カメラ９３０によって構成されている。
【０１０３】
第１の実施形態と同じ機能を有する部分については図１と同じ番号を付けており、その説明を省略する。ただし、対象物体９３５に固定された主観視点カメラ９３０によって取得された画像が主観視点画像として画像入力部１６０に入力されるという点は第１の実施形態とは異なっている。
【０１０４】
本実施形態では、客観視点指標は対象物体９３５上に設定されているとする。
【０１０５】
主観視点カメラ９３０は、対象物体９３５に固定して装着されている。ここで、主観視点カメラ座標系における対象物体９３５の位置及び姿勢は既知であるとする。
【０１０６】
また、対象物体９３５上には、客観視点指標として、対象物体座標系上における位置が既知である客観視点指標Ｐが設定されているとする。
【０１０７】
位置姿勢推定部９２０は、主観視点指標検出部１１０によって検出された各々の主観視点指標の画像座標ｕＱｋｎと、既知な情報として予め保持されている世界座標ｘＷＱｋｎの組をデータ記憶部１７０から入力し、これらの情報に基づいて主観視点カメラ９３０の位置及び姿勢を推定する。
【０１０８】
位置姿勢推定部９２０はさらに、上記によって推定した（世界座標系における）主観視点カメラ９３０の位置及び姿勢と、既知の値である主観視点カメラ座標系における対象物体９３５の位置及び姿勢とに基づいて、対象物体９３５の位置及び姿勢を推定する。
【０１０９】
客観視点指標同定部９９０は、位置姿勢推定部９２０によって推定された対象物体９３５の位置及び姿勢と、位置拘束条件算出部１５０によって算出された夫々の客観視点指標候補の位置拘束条件とに基づいて、客観視点指標を同定する。
【０１１０】
以上によって、任意の対象物体に設定された客観視点指標の同定が実現される。
【０１１１】
なお、本実施形態における位置姿勢推定部９２０は、主観視点カメラ９３０の位置及び姿勢を一旦求めた後に対象物体９３５の位置及び姿勢を求めていたが、対象物体９３５の位置及び姿勢を直接求めてもよい。
【０１１２】
なお、本実施形態における対象物体９３５は、情景を撮像する撮像装置であってもよい。そして、主観視点カメラ９３０を、情景を撮像する撮像装置の視野とは異なる視野となるように例えば上向きに配置し、それに伴って主観視点カメラ９３０の視野内に主観視点指標Ｑｋを配置してもよい。そうすることにより、情景を撮像する撮像装置の視野内に主観視点指標Ｑｋが入らなくなるため、美観を損ねるという問題の軽減等に貢献する。
【０１１３】
また、本実施形態において、対象物体９３５に複数の主観視点カメラ９３０を装着することによって、対象物体９３５の位置及び姿勢の推定を、位置と姿勢のいずれにおいても高い精度で実現されるようにしてもよい。
【０１１４】
（変形例１）
上記の実施形態の夫々において、撮像装置に慣性センサを装着して、例えば非特許文献６の手法によって、撮像装置の位置及び姿勢を推定してもよい。この場合、撮像装置によって取得される主観視点画像上において、少なくとも２個以上の主観視点指標が常に観測されるように設定されていればよい。そして、この場合には、画像情報のみを用いる場合と比較して、撮像装置の位置及び姿勢を安定的に推定することができる。
【０１１５】
（変形例２）
上記の実施形態の夫々で用いる主観視点カメラまたは客観視点カメラには、可視光とは異なる波長の光を撮像するカメラを用いることも可能である。例えば、客観視点カメラとして赤外光を撮像するカメラを用い、客観視点指標として赤外光を発光または反射する指標を用いてもよい。この場合、主観視点指標は客観視点カメラには写らないため、客観視点画像上で主観視点指標を誤検出することがなくなるという効果がある。
【０１１６】
なお、主観視点カメラとして赤外光を撮像するカメラを用い、主観視点指標として赤外光を発光または反射する指標を用いることも可能である。さらに、主観視点カメラと客観視点カメラの両方に赤外光を撮像するカメラを用い、主観視点指標と客観視点指標の両方に赤外光を発光または反射する指標を用いてもよい。
【０１１７】
また、可視光とは異なる波長の光を撮像するカメラとしては、赤外光を撮像するカメラに限らず、紫外光を撮像するカメラなどを用いてもよい。さらに、可視光とは異なる波長の光と可視光の両方を同時に撮像するカメラを用いてもよい。
【０１１８】
（変形例３）
上記の実施形態の夫々における客観視点指標同定部では、客観視点指標の推定位置との距離が所定の範囲内である指標候補を客観視点指標であると判定していたが、全ての指標候補と推定位置との距離を求め、それが最小であるものを客観視点指標と判定してもよい。また、最小の距離が閾値以上の場合には、客観視点指標に対応する指標候補が無いと判断してもよい。
【０１１９】
（変形例４）
上記の実施形態の夫々における客観視点指標同定部では、客観視点指標の推定位置と指標候補との３次元距離を求めて指標の同定を行っていたが、客観視点画像上の２次元距離を求めて指標の同定を行ってもよい。すなわち、客観視点カメラの世界座標における位置及び姿勢をデータ記憶部１７０から入力し、これらの情報に基づいて客観視点指標の推定位置を客観視点画像上に投影し、その画像座標と指標候補の画像座標との２次元距離を求めて指標の同定を行ってもよい。この場合、位置拘束条件算出部が不要となることは言うまでもない。
【０１２０】
（変形例５）
上記の実施形態の夫々における客観視点指標同定部では、客観視点指標の画像座標をＩ／Ｆ１００９を介して外部へと出力していた。しかし、外部に出力する情報は客観視点指標の画像座標に限定されるものではない。例えば特許文献３の方法によって、客観視点指標の画像座標と主観視点指標の画像座標とに基づいて撮像装置（または対象物体）の位置姿勢を算出し、それを外部へと出力してもよい。
【０１２１】
図１２は、撮像装置（または対象物体）の位置及び姿勢を算出する処理のフローチャートである。本処理を実現するための構成は、第１の実施形態の構成に、位置姿勢算出部を付加した構成であり、例えばＣＰＵ１００１がソフトウェアプログラムを実行することで位置姿勢算出部として機能する。なお、他の実施形態と同じ構成については、その説明を省略する。
【０１２２】
ステップＳ１２０００において、位置姿勢算出部は、主観視点指標検出部において検出された主観視点指標の画像座標と、客観視点指標同定部において同定された客観視点指標の画像座標と、位置拘束条件算出部において算出された客観視点指標の位置を拘束するパラメータとを入力する。客観視点指標の位置を拘束するパラメータとしては、客観視点カメラが１台の場合には３次元直線を表すパラメータを入力すればよく、客観視点カメラが２台以上の場合には３次元位置を入力すればよい。
【０１２３】
ステップＳ１２０１０において、位置姿勢算出部は、客観視点指標が存在すべき位置の拘束条件の下で，主観視点画像上における主観視点指標の誤差を最小とするような撮像装置（または対象物体）の位置及び姿勢を算出する。具体的には，例えば特許文献３の方法によって撮像装置（または対象物体）の位置及び姿勢を算出する。
【０１２４】
ステップＳ１２０２０において、位置姿勢算出部は、算出した撮像装置（または対象物体）の位置及び姿勢の情報を、例えばモデリング変換行列の形態によって出力する。
【０１２５】
なお、客観視点指標の位置を拘束するパラメータを用いるのではなく、主観視点指標及び客観視点指標の画像座標とそれらの点の計算値との間の誤差の総和を最小化するような演算を行って、撮像装置（または対象物体）の位置及び姿勢を算出してもよい。具体的には、例えば特許文献３の方法を使えばよい。
【０１２６】
（変形例６）
上記の実施形態の夫々では、まず主観視点画像の情報を用いて撮像装置（または対象物体）の位置及び姿勢を推定し、その位置及び姿勢に基づいて客観視点指標の同定を行っていた。しかし、主観視点画像の情報を利用して客観視点指標の同定を行う方法は、これに限定されるものではない。
【０１２７】
例えば、以下に述べるような方法で客観視点指標を同定してもよい。まず、夫々の客観視点指標候補が客観視点指標であると仮定する。次に、客観視点指標であると仮定した客観視点指標候補の画像座標と主観視点指標の画像座標とを使って、例えば特許文献３の方法によって、撮像装置の位置及び姿勢を夫々算出する。そして、その算出過程で得られる投影誤差の残差を最小にするような客観視点指標候補を客観視点指標と判定してもよい。この場合、主観視点画像のみを用いて撮像装置の位置及び姿勢を推定できなくてもよい。なお、この場合、位置姿勢推定部と位置拘束条件算出部が不要となる。
【０１２８】
（変形例７）
上記の実施形態の夫々では、各主観視点指標が何らかの方法で識別可能である場合について説明したが、客観視点指標と同様に各主観視点指標も識別できなくてもよい。つまり、図１または図５または図８において、主観視点指標Ｑｋ（ｋ＝１〜４）を、略同一色を有する円形状のマーカや、エッジ等の自然特徴によって構成してもよい。この場合には、以下に述べるような方法で客観視点指標を同定することができる。
【０１２９】
図１３は、客観視点指標を同定する処理のフローチャートである。本処理は、例えばＣＰＵ１００１がソフトウェアプログラムを実行することで客観視点指標同定部として機能する。
【０１３０】
ステップＳ１３０００において、客観視点指標同定部は、各客観視点指標候補の画像座標及び３次元位置、及び各主観視点指標候補の画像座標、及び各主観視点指標の３次元位置をデータ記憶部１７０から入力する。
【０１３１】
ステップＳ１３０１０において、客観視点指標同定部は、客観視点指標候補の３次元位置の一つを撮像装置（または対象物体）の位置と仮に設定する。
【０１３２】
ステップＳ１３０２０において、客観視点指標同定部は、撮像装置の仮定位置を中心とする仮想球面上に各主観視点指標の３次元位置を投影し、それらと主観視点指標候補の夫々とを、例えば非特許文献７の方法によって仮に対応付ける。
【０１３３】
ステップＳ１３０３０において、客観視点指標同定部は、客観視点指標候補の画像座標と、ステップＳ１３０２０において仮に対応付けられた主観視点指標候補の画像座標とを使って、例えば特許文献３の方法によって撮像装置の位置及び姿勢を算出する。そして、その算出過程で得られる投影誤差の残差を求める。
【０１３４】
ステップＳ１３０４０において、客観視点指標同定部は、全ての客観視点指標候補に対してステップＳ１３０１０〜Ｓ１３０３０の処理を行ったのか否かを判断する。全ての客観視点指標候補に対して処理を終えていない場合はステップＳ１３０１０に処理を戻し、未処理の客観視点指標候補に対してステップＳ１３０１０〜Ｓ１３０３０の処理を行う。一方、全ての客観視点指標候補に対して処理を終えた場合は、ステップＳ１３０５０に処理を進める。
【０１３５】
ステップＳ１３０５０において、客観視点指標同定部は、夫々の客観視点指標候補に対してステップＳ１３０３０で算出した残差を比較し、それが最も小さい客観視点指標候補が客観視点指標であると判定して、データ記憶部１７０へと出力する。
【０１３６】
なお、選択された客観視点指標候補を仮定した際にステップＳ１３０２０で仮に対応付けられる主観視点指標の情報を、主観視点指標の同定情報として同時に出力してもよい。また、選択された客観視点指標候補を仮定した際にステップＳ１３０３０で算出される撮像装置の位置及び姿勢を、撮像装置の位置及び姿勢として出力してもよい。
【０１３７】
以上の処理によって、客観視点指標を同定することができる。
【０１３８】
（変形例８）
変形例７では、客観視点指標候補の３次元位置が算出可能な場合、つまり客観視点カメラが複数台の場合について説明したが、客観カメラは１台であってもよい。この場合には、以下に述べるような方法で客観視点指標を同定することができる。
【０１３９】
図１４は、客観カメラが１台の場合に客観視点指標を同定する処理のフローチャートである。本処理は、例えばＣＰＵ１００１がソフトウェアプログラムを実行することで客観視点指標同定部として機能する。
【０１４０】
ステップＳ１４０００において、客観視点指標同定部は、各客観視点指標候補の画像座標、及び各主観視点指標候補の画像座標、及び各主観視点指標の３次元位置をデータ記憶部１７０から入力する。
【０１４１】
ステップＳ１４０１０において、客観視点指標同定部は、客観視点指標候補の一つを選択する。
【０１４２】
ステップＳ１４０２０において、客観視点指標同定部は、選択された客観視点指標の位置を拘束する３次元直線を例えば１０ｃｍ間隔で分割して、分割された夫々の位置を撮像装置の位置と仮に設定する。
【０１４３】
ステップＳ１４０３０において、客観視点指標同定部は、撮像装置の仮定位置を中心とする仮想球面上に各主観視点指標の３次元位置を投影し、それらと主観視点指標候補の夫々とを、例えば非特許文献７の方法によって仮に対応付ける。
【０１４４】
ステップＳ１４０４０において、客観視点指標同定部は、選択された客観視点指標候補の画像座標と、ステップＳ１４０３０において仮に対応付けられた主観視点指標候補の画像座標とを使って、例えば特許文献３の方法によって撮像装置の位置及び姿勢を算出する。そして、その算出過程で得られる投影誤差の残差を求める。
【０１４５】
ステップＳ１４０５０において、客観視点指標同定部は、撮像装置の全ての仮定位置に対してステップＳ１４０２０〜Ｓ１４０４０の処理を行ったのか否かを判断する。全ての仮定位置に対して処理を終えていない場合はステップＳ１４０２０に処理を戻し、未処理の仮定位置に対してステップＳ１４０２０〜Ｓ１４０４０の処理を行う。一方、全ての仮定位置に対して処理を終えた場合は、ステップＳ１４０６０に処理を進める。
【０１４６】
ステップＳ１４０６０において、客観視点指標同定部は、撮像装置の全ての仮定位置で算出した残差を比較し、その最小値を選択する。
【０１４７】
ステップＳ１４０７０において、客観視点指標同定部は、全ての客観視点指標候補に対してステップＳ１４０１０〜Ｓ１４０６０の処理を行ったのか否かを判断する。全ての客観視点指標候補に対して処理を終えていない場合はステップＳ１４０１０に処理を戻し、未処理の客観視点指標候補に対してステップＳ１４０１０〜Ｓ１４０６０の処理を行う。一方、全ての客観視点指標候補に対して処理を終えた場合は、ステップＳ１４０８０に処理を進める。
【０１４８】
ステップＳ１４０８０において、客観視点指標同定部は、夫々の客観視点指標候補に対してステップＳ１４０６０で選択された残差の最小値を比較し、それが最も小さい客観視点指標候補が客観視点指標であると判定して、データ記憶部１７０へと出力する。
【０１４９】
なお、変形例７と同様に、選択された客観視点指標候補を仮定した際に得られる主観視点指標の同定情報や撮像装置の位置及び姿勢を出力することも、もちろん可能である。
【０１５０】
以上の処理によって、客観視点指標を同定することができる。
【０１５１】
（変形例９）
変形例７のステップＳ１３０２０や変形例８のステップＳ１４０３０における主観視点指標と主観視点指標候補とを対応付ける方法は、非特許文献７の方法に限らない。例えば、撮像装置に慣性センサを装着して傾斜角の絶対値を計測して方位角のみを未知とすることで、より効率的な対応付けをおこなうことができる。
【０１５２】
図１５は、主観視点指標を同定する処理のフローチャートである。本処理は、変形例７のステップＳ１３０２０や変形例８のステップＳ１４０３０の代わりとなる処理であって、例えばＣＰＵ１００１がソフトウェアのプログラムを実行することで客観視点指標同定部として機能する。ここで、傾斜角の計測値は予めデータ記憶部１７０から入力されているものとする。
【０１５３】
ステップＳ１５０００において、客観視点指標同定部は、未知な方位角を例えば１度刻みで仮に設定する。
【０１５４】
ステップＳ１５０１０において、客観視点指標同定部は、撮像装置の傾斜角及び仮定方位角及び仮定位置に基づいて、撮像画像上に夫々の主観視点指標の３次元位置を投影する。そして、主観視点指標の夫々と主観視点指標候補の夫々とを、夫々の主観視点指標の投影座標と主観視点指標候補の画像座標との２次元距離に基づいて仮に対応付ける。例えば、夫々の主観視点指標と、その投影座標と最も距離の近い画像座標を有する主観視点指標候補とを、仮に対応付ける。
【０１５５】
ステップＳ１５０２０において、客観視点指標同定部は、ステップＳ１５０１０における主観視点指標と主観視点指標候補との対応付けの評価値を算出する。例えば、夫々の主観視点指標の投影座標と、仮に対応付けられた主観視点指標候補の画像座標との２次元距離を求め、その距離が予め設定した閾値よりも小さくなるような対応付けの個数を評価値とすればよい。または、夫々の２次元距離と前記個数の両方を考慮した評価値を用いてもよい。例えば、前記閾値から前記２次元距離の二乗平均値を引いた値と前記個数の和を評価値としてもよい。もちろん、これらに限らず、対応付けの正しさの度合が測れる評価値であれば何を用いてもよい。
【０１５６】
ステップＳ１５０３０において、客観視点指標同定部は、全ての仮定方位角に対してステップＳ１５０００〜Ｓ１５０２０の処理を行ったのか否かを判断する。全ての仮定方位角に対して処理を終えていない場合はステップＳ１５０００に処理を戻し、未処理の仮定方位角に対してステップＳ１５０００〜Ｓ１５０２０の処理を行う。一方、全ての仮定方位角に対して処理を終えた場合は、ステップＳ１５０４０に処理を進める。
【０１５７】
ステップＳ１５０４０において、客観視点指標同定部は、全ての仮定方位角に対してステップＳ１５０２０で算出した評価値を比較する。そして、評価値が最も大きくなるような主観視点指標と主観視点指標候補との対応付け結果を選択する。
【０１５８】
このように、傾斜角を既知とすることにより、主観視点指標と主観視点指標候補とを対応付ける処理に要する時間を、非特許文献７の方法と比べて短縮することができる。
【０１５９】
なお、撮像装置に慣性センサを装着すると、主観視点指標と主観視点指標候補との対応付けが１次元の探索に基づいて行われることになる。したがって、主観視点指標にエッジ等の自然特徴を用いる場合にも、従来よりも高い精度で対応付けることができる。
【０１６０】
ここで、さらに例えば磁気式のコンパスを撮像装置に装着して大まかな方位角を計測することによって、方位角の探索範囲をコンパスの計測誤差の範囲内（例えば±３０度）に絞り込んでもよい。
【０１６１】
以上のようにして同定された客観視点指標と主観視点指標を用いて、例えば特許文献３の手法によって、撮像装置の位置及び姿勢を算出することができる。
【０１６２】
なお、客観視点指標候補が一つだけの場合や何らかの他の手段によって客観視点指標が同定可能な場合、すなわち、客観視点指標が既に同定済みの場合であっても、本変形例で示した主観視点指標の同定方法は効果的である。
【０１６３】
［その他の実施形態］
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１６４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６５】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６６】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１６７】
【図１】第１の実施形態に係る情報処理装置の概略構成を示す図である。
【図２】情報処理装置の各部をソフトウェアにより実現することのできるコンピュータの基本構成を示す図である。
【図３】第１の実施形態における、客観視点指標候補の位置を拘束する直線を算出する処理を説明するフローチャートである。
【図４】第１の実施形態における、客観視点指標を同定する処理を説明するフローチャートである。
【図５】第２の実施形態に係る情報処理装置の概略構成を示す図である。
【図６】第２の実施形態における、客観視点指標候補の３次元位置を算出する処理を説明するフローチャートである。
【図７】第２の実施形態における、客観視点指標を同定する処理を説明するフローチャートである。
【図８】第３の実施形態に係る情報処理装置の概略構成を示す図である。
【図９】従来技術で利用されている指標の例である。
【図１０】指標の他に発光体が存在するような現実空間の例を示す図である。
【図１１】図１０に示す赤外カメラにより撮像された画像を示す図である。
【図１２】変形例５における、撮像装置（または対象物体）の位置及び姿勢を算出する処理を説明するフローチャートである。
【図１３】変形例７における、客観視点指標を同定する処理を説明するフローチャートである。
【図１４】変形例８における、客観視点指標を同定する処理を説明するフローチャートである。
【図１５】変形例９における、主観視点指標を同定する処理を説明するフローチャートである。
【図１】
0005127165.tif 000007
【図２】
0005127165.tif 000008
【図３】
0005127165.tif 000009
【図４】
0005127165.tif 000010
【図５】
0005127165.tif 000011
【図６】
0005127165.tif 000012
【図７】
0005127165.tif 000013
【図８】
0005127165.tif 000014
【図９】
0005127165.tif 000015
【図１０】
0005127165.tif 000016
【図１１】
0005127165.tif 000017
【図１２】
0005127165.tif 000018
【図１３】
0005127165.tif 000019
【図１４】
0005127165.tif 000020
【図１５】
0005127165.tif 000021