(57)【要約】【課題】カメラの被写体に対するカメラポーズの推定精度を向上させる。【解決手段】カメラポーズ推定装置は、一連の画像データにおける特徴点の変化を追跡し、ワールド座標系における特徴点の三次元座標及びカメラポーズを取得する三次元座標・カメラポーズ取得部と、被写体の一部分を含む複数のテンプレート画像と類似する領域を画像データにおいて検出するテンプレート検出部と、検出された領域内に含まれる特徴点を抽出する特徴点抽出部と、抽出された特徴点のうち外れ値を除去し、除去されなかった特徴点に基づいてテンプレート画像の三次元位置を推定するテンプレート位置推定部と、テンプレート位置推定部が推定した三次元位置に基づいてワールド座標系から被写体を基準にした被写体座標系への変換行列を推定し、該変換行列に基づいて画像データを取得したカメラの被写体に対するカメラポーズを推定するカメラポーズ推定部とを備える。【選択図】図１
2014095553.tif 000002
【特許請求の範囲】
【請求項１】
被写体に対するカメラポーズを推定するカメラポーズ推定装置であって、
一連の画像データを入力する画像入力部と、
前記一連の画像データにおける特徴点の変化を追跡し、ワールド座標系における特徴点の三次元座標及びカメラポーズを取得する三次元座標・カメラポーズ取得部と、
予め用意された複数のテンプレート画像であって前記被写体の一部分を含むテンプレート画像と類似する領域を前記画像データにおいて検出するテンプレート検出部と、
前記テンプレート検出部が検出した領域内に含まれる前記特徴点を抽出する特徴点抽出部と、
前記特徴点抽出部が抽出した前記特徴点のうち外れ値を除去し、除去されなかった前記特徴点に基づいてテンプレート画像の三次元位置を推定するテンプレート位置推定部と、
前記テンプレート位置推定部が推定した三次元位置に基づいてワールド座標系から被写体を基準にした被写体座標系への変換行列を推定し、該変換行列に基づいて前記画像データを取得したカメラの前記被写体に対するカメラポーズを推定するカメラポーズ推定部と、
を備えることを特徴とするカメラポーズ推定装置。
【請求項２】
請求項１に記載のカメラポーズ推定装置であって、
前記テンプレート位置推定部は、
前記特徴点抽出部が抽出した前記特徴点から一つの特徴点をランダムに選択し、選択した特徴点と他の特徴点との距離を算出し、算出した距離に基づいて前記特徴点に含まれる外れ値を除去する
ことを特徴とするカメラポーズ推定装置。
【請求項３】
請求項２に記載のカメラポーズ推定装置であって、
前記テンプレート位置推定部は、
前記特徴点抽出部が抽出した前記特徴点から一つの特徴点をランダムに選択する際に、各特徴点に対して信頼度に応じた重み付けした選択を行う
ことを特徴とするカメラポーズ推定装置。
【請求項４】
請求項１から請求項３のいずれか一項に記載のカメラポーズ推定装置としてコンピュータを動作させるためのカメラポーズ推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラポーズ推定装置、及びカメラポーズ推定プログラムに関する。
【背景技術】
【０００２】
コンピュータビジョン分野では、現実環境を仮想情報で補強する拡張現実感に関する研究が多く行われている。例えば、次のような研究成果が報告されている。
カメラで撮影された動画像から各フレームにおいて特徴的な点（以下、特徴点という。）を追跡することで、カメラの三次元空間中の位置及び姿勢と、特徴点の三次元位置とを同時に算出するｖＳＬＡＭ（visual Simultaneous Localization and Mapping）という方法が検討されている（例えば、非特許文献１）。
【０００３】
また、被写体の一部分含むテンプレートを事前に用意しておき、映像中でテンプレートの検出を行う。更に、検出されたテンプレートの三次元位置をｖＳＬＡＭで算出された特徴点の三次元位置を活用し、この特徴点を画像上に再投影したときにテンプレートの範囲内に入る特徴点の三次元位置を平均化することでテンプレートの三次元位置を求める。これにより、被写体に対するカメラの位置及び姿勢を推定し、推定した位置及び姿勢を利用してカメラ映像上に仮想情報を重畳する技術も検討されている（例えば、非特許文献２）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Jun SHIMAMURA, Masashi MORIMOTO, and Hideki KOIKE, "Robust vSLAM for dynamic scenes", Proc.12th IAPR Conference on Machine Vision Applications, June 2011, p.344-347
【非特許文献２】島村潤、森本正志、小池秀樹、「設備保守支援向けＡＲのための部分テンプレート検出とｖＳＬＡＭの併用によるオブジェクト座標系へのレジストレーション」、画像の認識・理解シンポジウム（ＭＩＲＵ２０１１）、２０１１年７月、ｐ．１３７０−１３７６
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したようにｖＳＬＡＭにより算出される特徴点の三次元座標とテンプレート検出とを組み合わせて被写体に対するカメラの位置及び姿勢を推定する方法では、特徴点を再投影した際にテンプレート範囲内に入る特徴点の中に、実際にはテンプレートの三次元位置を表していない特徴点や、ｖＳＬＡＭの推定誤り等によるノイズなども含まれているため、推定されたカメラの位置及び姿勢に誤差が生じてしまうという問題がある。例えば、映像上でテンプレート付近の奥行きの異なる位置に他の物体が映っている場合など、シーンによっては正確にテンプレートの三次元位置を取得することができず、被写体に対するカメラの位置及び姿勢に大きな誤差が含まれ、仮想情報を映像上に重畳表示した際に仮想情報を表示する位置が大きくずれてしまうという問題がある。
【０００６】
本発明は、上記問題を解決すべくなされたもので、その目的は、被写体を撮影したカメラの被写体に対する位置及び姿勢を示す回転角（以下、カメラポーズという。）の推定精度を向上させることができるカメラポーズ推定装置、及びカメラポーズ推定プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記問題を解決するために、本発明のカメラポーズ推定装置は、被写体に対するカメラポーズを推定するカメラポーズ推定装置であって、一連の画像データを入力する画像入力部と、前記一連の画像データにおける特徴点の変化を追跡し、ワールド座標系における特徴点の三次元座標及びカメラポーズを取得する三次元座標・カメラポーズ取得部と、予め用意された複数のテンプレート画像であって前記被写体の一部分を含むテンプレート画像と類似する領域を前記画像データにおいて検出するテンプレート検出部と、前記テンプレート検出部が検出した領域内に含まれる前記特徴点を抽出する特徴点抽出部と、前記特徴点抽出部が抽出した前記特徴点のうち外れ値を除去し、除去されなかった前記特徴点に基づいてテンプレート画像の三次元位置を推定するテンプレート位置推定部と、前記テンプレート位置推定部が推定した三次元位置に基づいてワールド座標系から被写体を基準にした被写体座標系への変換行列を推定し、該変換行列に基づいて前記画像データを取得したカメラの前記被写体に対するカメラポーズを推定するカメラポーズ推定部と、を備えることを特徴とする。
【０００８】
また、本発明は、上記に記載のカメラポーズ推定装置において、前記テンプレート位置推定部は、前記特徴点抽出部が抽出した前記特徴点から一つの特徴点をランダムに選択し、選択した特徴点と他の特徴点との距離を算出し、算出した距離に基づいて前記特徴点に含まれる外れ値を除去することを特徴とする。
【０００９】
また、本発明は、上記に記載のカメラポーズ推定装置において、前記テンプレート位置推定部は、前記特徴点抽出部が抽出した前記特徴点から一つの特徴点をランダムに選択する際に、各特徴点に対して信頼度に応じた重み付けした選択を行うことを特徴とする。
【００１０】
また、上記問題を解決するために、本発明は、上記に記載のカメラポーズ推定装置としてコンピュータを動作させるためのカメラポーズ推定プログラムである。
【発明の効果】
【００１１】
この発明によれば、テンプレート画像に対応する領域の三次元位置を推定する際に、当該領域に含まれる特徴点から外れ値を除去してからテンプレート画像の三次元位置を推定するようにしたので、外れ値の影響を抑えて三次元位置の精度を向上させることができる。その結果、推定した三次元位置に基づいて推定する変換行列であってワールド座標系から被写体座標系への変換行列を算出する精度を向上させることができ、カメラの被写体に対するカメラポーズの推定精度を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係る実施形態におけるカメラポーズ推定装置１０の構成を示す概略ブロック図である。
【図２】本実施形態において用いるワールド座標系（Ｗｘ，Ｗｙ，Ｗｚ）と、被写体座標系（Ｏｘ，Ｏｙ，Ｏｚ）との一例を示す図である。
【図３】本実施形態におけるカメラポーズ推定装置１０が行うカメラポーズ推定処理を示すフローチャートである。
【図４】本実施形態におけるカメラポーズ推定処理のステップＳ１０５の処理（テンプレート位置推定処理）を示すフローチャートである。
【図５】図３のステップＳ１０２において取得された特徴点の一例を示す図である。
【図６】テンプレート画像の一例と、テンプレート画像に対応する領域の検出結果とを示す図である。
【図７】２つめのテンプレート画像に含まれる特徴点の分布を示す図である。
【図８】通信機器を撮影した画像データに作業位置を示す仮想情報が重畳表示されている一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施形態におけるカメラポーズ推定装置、及びカメラポーズ推定プログラムを説明する。
【００１４】
図１は、本発明に係る実施形態におけるカメラポーズ推定装置１０の構成を示す概略ブロック図である。カメラポーズ推定装置１０は、取得した映像データ又は入力される映像データに基づいて、当該映像データが示す映像に含まれる被写体に対するカメラの位置及び姿勢を示す回転角（以下、カメラポーズという。）を推定し、推定したカメラポーズを出力する装置である。
【００１５】
カメラポーズ推定装置１０は、図１に示すように、画像入力部１１、三次元座標・カメラポーズ取得部１２、特徴点三次元座標記憶部１３、テンプレート検出部１４、特徴点抽出部１５、テンプレート位置推定部１６、及び、カメラポーズ推定部１７を備えている。
画像入力部１１は、各時刻に撮影された画像データを取得する。例えば、画像入力部１１には、デジタルカメラやビデオカメラ等の画像センサを有する撮像装置が用いられる。なお、画像入力部１１は、映像データを構成する一連の画像データを取得できればよく、予め撮影された映像データを取得する装置などであってもよい。
【００１６】
三次元座標・カメラポーズ取得部１２は、画像入力部１１により取得された画像データから特徴点を抽出し、一連の画像データにおける特徴点の位置を追跡することにより、特徴点の三次元座標を取得する。三次元座標・カメラポーズ取得部１２は、取得した特徴点の三次元座標を特徴点三次元座標記憶部１３に記憶させる。また、三次元座標・カメラポーズ取得部１２は、取得したカメラポーズを特徴点抽出部１５に出力する。
特徴点三次元座標記憶部１３は、三次元座標・カメラポーズ取得部１２が取得した特徴点の三次元座標を記憶する。
【００１７】
テンプレート検出部１４は、予め用意されたテンプレート画像を記憶しており、画像入力部１１により取得され画像データにおいて、当該テンプレート画像と類似している領域であるテンプレート領域を検出する。テンプレート検出部１４が記憶しているテンプレート画像は、カメラポーズを推定する際の基準となる被写体の一部分を含む画像であって、座標変換行列を推定するために少なくとも３つの画像である。
【００１８】
特徴点抽出部１５は、現時刻において三次元座標・カメラポーズ取得部１２が取得したカメラポーズを用いて、特徴点三次元座標記憶部１３に記憶されている各特徴点を画像データ上に投影する投影計算を行う。特徴点抽出部１５は、画像データ上に投影した各特徴点のうち、テンプレート検出部１４が検出したテンプレート領域に含まれる特徴点を抽出する
【００１９】
テンプレート位置推定部１６は、特徴点抽出部１５が取得した特徴点のうち、各テンプレート画像により示される被写体の位置を表していない特徴点や、特徴点の三次元推定における誤りなどのノイズを除去する。テンプレート位置推定部１６は、ノイズを除去した特徴点に基づいて、各テンプレート画像の三次元位置を推定する。
【００２０】
カメラポーズ推定部１７は、テンプレート位置推定部１６が推定した各テンプレート画像の三次元位置に基づいて、特徴点を基準としたワールド座標系から被写体を基準とした被写体座標系へ変換する変換行列を推定する。カメラポーズ推定部１７は、三次元座標・カメラポーズ取得部１２により推定された残時刻のカメラポーズに対して推定した変換行列を乗じて、被写体座標系におけるカメラポーズ推定する。
【００２１】
ここで、本実施形態のカメラポーズ推定装置１０の処理において用いるワールド座標系と被写体座標系とについて説明する。図２は、本実施形態において用いるワールド座標系（Ｗｘ，Ｗｙ，Ｗｚ）と、被写体座標系（Ｏｘ，Ｏｙ，Ｏｚ）との一例を示す図である。ワールド座標系は、任意の位置又は予め定めた位置を基準として定められる座標系である。被写体座標系は、被写体の任意の位置を基準として定められる座標系である。図２においては、直方体の被写体の角を基準（原点）として各辺の方向にＸ軸、Ｙ軸、及びＺ軸を有する座標系を被写体座標系としている。なお、三次元座標・カメラポーズ取得部１２が取得する特徴点の三次元座標やカメラポーズは、ワールド座標系における三次元座標である。
【００２２】
以下、カメラポーズ推定装置１０の動作について説明する。なお、位置及び姿勢（ポーズ）の推定対象となるカメラのカメラ内部パラメータ（焦点距離や投影中心）は、事前にキャリブレーション済みで既知であり、カメラポーズ推定装置１０はカメラ内部パラメータを記憶している。また、テンプレート位置推定部１６は、例えば、テンプレート画像の位置を推定する際に、ＬＭｅｄＳ（Least Median of Squares；最小メディアン）推定を用いるものとする。
【００２３】
図３は、本実施形態におけるカメラポーズ推定装置１０が行うカメラポーズ推定処理を示すフローチャートである。
カメラポーズ推定処理が開始されると、カメラポーズ推定装置１０において、画像入力部１１がカメラにより撮影された画像データＩｍを入力する（ステップＳ１０１）。
【００２４】
三次元座標・カメラポーズ取得部１２は、画像入力部１１が入力した画像データＩｍから特徴点の変化を追跡し、特徴点の三次元座標（Ｘ，Ｙ，Ｚ）及びカメラポーズ（Ｔｘ，Ｔｙ，Ｔｚ，φ，θ，ψ）をワールド座標系で取得する。三次元座標・カメラポーズ取得部１２は取得した各特徴点の三次元座標（Ｘ，Ｙ，Ｚ）を特徴点三次元座標記憶部１３に記憶させる（ステップＳ１０２）。
なお、特徴点の三次元座標（Ｘ，Ｙ，Ｚ）やカメラポーズ（Ｔｘ、Ｔｙ，Ｔｚ，φ、θ、ψ）を取得する処理は、ｖＳＬＡＭと呼ばれており、例えば、非特許文献１に記載された方法により取得することができる。
【００２５】
テンプレート検出部１４は、画像入力部１１が入力した画像データＩｍから各テンプレート画像に対応する領域を検出する（ステップＳ１０３）。
ステップＳ１０３において行う処理は、予め用意した３つのテンプレート画像と類似している部分を画像データＩｍにおいて検出することにより実現できる。例えば、２画像の輝度値の差分の絶対値を示すＳＡＤ関数などの評価関数を用いて一番類似度の高い部分を検出結果とし、各テンプレート画像に対する検出結果を示す領域をＴｍ１、Ｔｍ２、Ｔｍ３とする。
【００２６】
特徴点抽出部１５は、特徴点三次元座標記憶部１３に記憶されている各特徴点を、ステップＳ１０２において取得したカメラポーズに基づいて画像データＩｍ上に投影し、領域Ｔｍ１、Ｔｍ２、Ｔｍ３の領域に含まれる特徴点を抽出する。特徴点抽出部１５は、領域Ｔｍ１、Ｔｍ２、Ｔｍ３ごとに、それぞれの領域に含まれる特徴点を集合ＦＰ１、ＦＰ２、ＦＰ３として取得する（ステップＳ１０４）。
特徴点の画像データＩｍ上へ投影する投影計算は、次式（１）により計算することができる。
【００２７】
【数１】
2014095553.tif 000003
【００２８】
式（１）において、行列Ａはカメラ内部パラメータを示す３×３のカメラ内部行列である。行列（Ｒ｜Ｔ）はカメラの位置及び姿勢で構成される３×４のカメラ外部行列である。行列Ｘは特徴点の三次元座標（Ｘ，Ｙ，Ｚ）に「１」を追加して４×１の行列（Ｘ，Ｙ，Ｚ，１）である。ｍは画像データＩｍ上の投影点を示す３×１の行列ｍ（ｘ，ｙ，ｚ）である。
式（１）を用いて算出した画像データＩｍ上の投影座標は、行列ｍの第三成分で第一成分及び第二成分を除算した（ｕ，ｖ）＝（ｘ／ｚ，ｙ／ｚ）として得られる。この座標（ｕ，ｖ）のうち、テンプレート検出により得られた領域Ｔｍ１、Ｔｍ２、Ｔｍ３に含まれる特徴点を集合ＦＰ１、ＦＰ２、ＦＰ３として取得する。
【００２９】
テンプレート位置推定部１６は、特徴点抽出部１５が取得した特徴点の集合ＦＰ１、ＦＰ２、ＰＦ３のうち、テンプレート画像の三次元位置を示していない特徴点をアウトライヤ（外れ値）として除去し、テンプレート画像の三次元位置を算出する（ステップＳ１０５）。
なお、ステップＳ１０５における詳細な処理については後述する。
【００３０】
カメラポーズ推定部１７は、テンプレート位置推定部１６が算出した各テンプレート画像の三次元位置（各テンプレート画像に対応する３つの三次元座標）に基づいて、ワールド座標系から被写体座標系への変換行列を算出し、被写体に対するカメラポーズを推定する（ステップＳ１０６）。
ステップＳ１０６における変換行列の算出は、非特許文献２に記載されているように、被写体座標系の原点をテンプレート画像１の位置として定義し、変換行列の並進成分を求める。また、３つのテンプレート画像１〜テンプレート画像３の各位置で構成される平面における平面法線ベクトルと、テンプレート画像１とテンプレート画像２とで構成される直線ベクトルを利用して回転成分を求めることができる。
【００３１】
カメラポーズ推定部１７は、推定処理を終了するか否かを判定し（ステップＳ１０７）、推定を継続する場合（ステップＳ１０７：ＮＯ）、処理をステップＳ１０１に戻してステップＳ１０１〜ステップＳ１０７の処理を繰り返して行う。一方、処理を終了する場合（ステップＳ１０７：ＹＥＳ）、処理を終了する。なお、推定処理を終了するか否かの判断は、例えば、カメラポーズ推定装置１０に対するユーザの入力操作に基づいて行うようにしてもよい。
【００３２】
図４は、本実施形態におけるカメラポーズ推定処理のステップＳ１０５の処理（テンプレート位置推定処理）を示すフローチャートである。
テンプレート位置推定部１６は、特徴点抽出部１５が集合ＦＰ１、ＦＰ２、ＰＦ３を取得すると、集合ＦＰ１、ＦＰ２、ＰＦ３ごとにＮ回の反復処理を行うことにより、テンプレート画像の三次元位置の推定を行う。以下の説明において、テンプレート画像に含まれる特徴点をＦＰという。
【００３３】
テンプレート位置推定処理が開始されると、テンプレート位置推定部１６は、処理において用いるパラメータｎとＳｃとを初期化する（ステップＳ２０１）。例えば、反復回数のカウントに用いるパラメータｎを「０」に初期化する。
テンプレート位置推定部１６は、集合ＦＰからランダムにいずれか一つの特徴点を選択し、選択した特徴点の三次元座標を一時パラメータ（Ｘｔ，Ｙｔ，Ｚｔ）とし、パラメータｎの値を「１」増加させる（ステップＳ２０２）。
【００３４】
なお、集合ＦＰから一つの特徴点をランダムに選択（ランダムサンプリング）する際に、各特徴点の三次元座標に対する信頼度などのデータが付加されている場合には、当該信頼度で重み付けした選択（サンプリング）を行うようにしてもよい。これにより、反復回数Ｎをより小さくしてもアウトライヤの除去が可能となる。反復回数Ｎは処理時間に大きく影響するため、リアルタイム性が要求されるＡＲアプリケーションにおいてはできるだけ少ない反復回数で処理を行うことが重要となる。
例えば信頼度としては、三次元座標・カメラポーズ取得部１２が特徴点の三次元座標を取得する際の追跡において、移動距離が大きい特徴点に対する信頼度を小さくし、移動距離が小さい特徴点に対する信頼度を大きくする。
【００３５】
テンプレート位置推定部１６は、一時パラメータと、集合ＦＰのうち選択されなかった他の特徴点の三次元座標全てと三次元空間中での距離Ｄｉを、次式（２）を用いて算出する（ステップＳ２０３）。
【００３６】
【数２】
2014095553.tif 000004
【００３７】
次式（２）における座標（Ｘｉ，Ｙｉ，Ｚｉ）は集合ＦＰから選択されなかった任意の特徴点の三次元座標である。
テンプレート位置推定部１６は、ステップＳ２０３において算出した距離Ｄｉを大きさ順でソートして、距離Ｄｉの中間値を選択した特徴点に対するスコアＳｔとして算出する（ステップＳ２０４）。
【００３８】
テンプレート位置推定部１６は、一時パラメータを仮パラメータとして採用するか否かをスコアＳｔに基づいて判定してスコアの更新を行う（ステップＳ２０５）。
具体的には、現在の仮パラメータのスコアＳｃと、直前のステップＳ２０４において算出したスコアＳｔとを比較し、スコアＳｔがスコアＳｃより小さい場合には一時パラメータを仮パラメータに採用し、スコアＳｔを新たなスコアＳｃとして更新する。一方、スコアＳｔがスコアＳｃ以上である場合には一時パラメータを破棄して仮パラメータに採用しない。
【００３９】
テンプレート位置推定部１６は、パラメータｎと反復回数Ｎとを比較して反復回数がＮ回に達したか否かを判定し（ステップＳ２０６）、Ｎ回の反復が終わっていない場合（ステップＳ２０６：ＮＯ）、処理をステップＳ２０２に戻してステップＳ２０２からステップＳ２０６の処理を繰り返して行う。
一方、Ｎ回の反復が終わっている場合（ステップＳ２０６：ＹＥＳ）、テンプレート位置推定部１６は処理をステップＳ２０７に進める。
【００４０】
テンプレート位置推定部１６は、テンプレート画像の三次元位置を決定する（ステップＳ２０７）。
具体的には、テンプレート位置推定部１６は、テンプレート画像の位置を表していなかったり、ノイズと考えられたりする三次元座標値を除去するための基準を仮パラメータのスコアＳｃを利用して設定する。この基準は、次式（３）を用いて算出する。
【００４１】
【数３】
2014095553.tif 000005
【００４２】
式（３）において、Ｃは定数であり、例えば、誤差が正規分布に従うと考えられる場合にはＣ＝１．４８２６となる。また、ｍは集合ＦＰに含まれる特徴点の数である。
テンプレート位置推定部１６は、この基準σを用いて仮パラメータから２．５σ以上の距離にある三次元座標値はテンプレートの位置を示していないと考え、アウトライヤとして除去する。
【００４３】
以上の処理を行い、最終的に除去されなかった特徴点の三次元座標の平均値を算出することにより、テンプレート位置推定部１６はテンプレート画像の三次元位置の推定値を算出する。
このように、テンプレート位置推定部１６は、予め用意された３つのテンプレート画像に対応する各領域に含まれる特徴点に基づいて、各テンプレート画像の位置を推定する。
【００４４】
上述のように、カメラポーズ推定装置１０は、ＬＭｅｄＳ推定を用いて、画像データＩｍにおけるテンプレート画像の位置を推定する精度を向上させることができるので、テンプレート画像の位置に基づいて算出する座標系相互の変換行列の推定精度を向上させることができる。その結果、被写体座標系におけるカメラポーズをより精度よく算出することができる。
【００４５】
なお、本実施形態におけるカメラポーズ推定装置１０において、テンプレート位置推定部１６がＬＭｅｄＳ推定を用いたアウトライヤの除去を行う構成について説明したが、これに限ることなく、ＲＡＮＳＡＣなどのアウトライヤを除去する他の方法を利用してもよい。また、本実施形態では三次元座標点が正規分布になると考えて式（３）によるアウトライヤ除去のための基準σを算出する構成を説明したが、これに限ることなく、スコアＳｃを用いた任意の関数により基準σを算出するようにしてもよい。
【００４６】
また、本実施形態において、テンプレート検出部１４は、３つのテンプレート画像を用いてテンプレート領域を検出する構成について説明したが、これに限ることなく、４つ以上のテンプレート画像を用いて、検出したテンプレート領域のうち類似度の高い３つのテンプレート領域を選択し、選択したテンプレート領域を特徴点抽出部１５に通知するようにしてもよい。
【００４７】
図５から図８を参照して、本実施形態におけるカメラポーズ推定装置１０が行うカメラポーズ推定処理の一例を示す。以下に示す例では、１台のカメラから得られた映像を処理して、被写体に対するカメラポーズを推定し、推定したカメラポーズに基づいて映像に仮想情報を重畳表示する。また、図３に示したカメラポーズ推定処理に沿って説明する。
【００４８】
カメラポーズ推定処理が開始されるとカメラから画像データを入力する（ステップＳ１０１）。
入力された画像データからカメラポーズと特徴点を取得する（ステップＳ１０２）。図５は、図３のステップＳ１０２において取得された特徴点の一例を示す図である。図５（Ａ）は、入力された画像データに特徴点を重畳した画像である。図５（Ｂ）は取得した特徴点とカメラポーズとを三次元座標上に示した画像である。
【００４９】
カメラポーズ推定装置１０は、入力された画像データに対してテンプレート検出を行う（ステップＳ１０３）。図６はテンプレート画像の一例と、テンプレート画像に対応する領域の検出結果とを示す図である。図６（Ａ）はテンプレート画像の一例を示す図である。ここでは、ネジを含む２つの画像と、数字を含む画像との３つのテンプレート画像を予め用意している。図６（Ｂ）は、カメラで入力した画像データにおいて、図６（Ａ）に示した３つのテンプレート画像に対応する領域が示されている。同図に示すように、テンプレート検出処理では、テンプレート画像に類似している領域に矩形が表示されており、テンプレート画像に対応する領域が検出されていることがわかる。
【００５０】
カメラポーズ推定装置１０は、特徴点を画像データ上に再投影し、領域内に含まれる特徴点の集合ＦＰを取得する（ステップＳ１０４）。
カメラポーズ推定装置１０は、各テンプレート画像の領域に含まれる特徴点からアウトライヤを除去し、テンプレート画像の三次元位置を精度よく推定する（ステップＳ１０５）。図７は、２つめのテンプレート画像に含まれる特徴点の分布を示す図である。同図に示すように、特徴点の分布は多峰性を有しており、テンプレート画像の正確な位置を推定するにはアウトライヤの除去が必要なことがわかる。
【００５１】
カメラポーズ推定装置１０は、推定したテンプレート画像の三次元位置を用いて、被写体座標系とワールド座標系との変換行列を算出し、被写体座標系におけるカメラポーズを算出する（ステップＳ１０７）。
以上の処理により、被写体座標系におけるカメラポーズを精度よく推定することができるので、図８に示すように、被写体に仮想情報を精度よく重畳表示することができる。図８は、通信機器を撮影した画像データに作業位置を示す仮想情報が重畳表示されている一例を示す図である。
【００５２】
以上に説明した処理を繰り返すことで本実施形態におけるカメラポーズ推定装置１０は、テンプレート画像の三次元位置を推定する際にアウトライヤを検出、除去することにより、テンプレート画像の三次元位置を推定する精度を向上させることができ、被写体座標系におけるカメラポーズを安定して精度よく推定することができる。その結果、仮想情報を被写体に高い精度で重畳表示させることが可能となり、違和感やぶれの少ない拡張現実感を実現することができる。
【００５３】
なお、本発明におけるカメラポーズ推定装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりカメラポーズ推定処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００５４】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。更に、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【産業上の利用可能性】
【００５５】
カメラ等により得られた画像データに仮想情報を重畳表示する装置やシステム等に適用することができる。
【符号の説明】
【００５６】
１０  カメラポーズ推定装置
１１  画像入力部
１２  三次元座標・カメラポーズ取得部
１３  特徴点三次元座標記憶部
１４  テンプレート検出部
１５  特徴点抽出部
１６  テンプレート位置推定部
１７  カメラポーズ推定部
【図１】
2014095553.tif 000006
【図２】
2014095553.tif 000007
【図３】
2014095553.tif 000008
【図４】
2014095553.tif 000009
【図５】
2014095553.tif 000010
【図６】
2014095553.tif 000011
【図７】
2014095553.tif 000012
【図８】
2014095553.tif 000013