(57)【特許請求の範囲】
【請求項１】
カメラと、該カメラで撮像されたフレーム画像と参照マップとプログラムとが格納された記憶装置と、プロセッサと、出力装置とを備え、該参照マップは複数の特徴点のそれぞれについて特徴点の第１座標系内座標と回転不変性特徴ベクトルとを含み、該プログラムは該プロセッサに対し、
（ａ）グレースケールの該フレーム画像又は該フレーム画像をグレースケール化した画像である輝度画像に対しＦＡＳＴコーナー検出法により特徴点の輝度画像上第２座標系内座標を検出させ、
（ｂ）検出された各特徴点を中心とする局所領域の輝度配向を求めさせ、
（ｃ）該輝度配向を基準として該局所領域の回転不変性特徴ベクトルを求めさせ、
（ｄ）求めた該回転不変性特徴ベクトルと該参照マップ内の回転不変性特徴ベクトルとのマッチングにより、該参照マップ内の対応する特徴点座標を取得させ、
（ｅ）処理（ｄ）で取得した複数の特徴点座標に関する情報を該出力装置に供給する、
画像処理装置において、該プログラムは該プロセッサに対し、処理（ｃ）において、
該特徴点を中心とする第１の半径の円周上の画素のうち等画素間隔のｎ個の画素Ｐｉ、ｉ＝０〜ｎ−１の輝度Ｉ（Ｐｉ）及び該特徴点を中心とする、該第１の半径より大きい第２の半径の円周上の画素のうち等画素間隔のｍ≧ｎなるｍ個の画素Ｑｊ、ｊ＝０〜２ｍ−１の輝度Ｉ（Ｑｊ）を、該輝度配向を基準として所定順にサンプリングさせるとともに、この順に対応した全サンプル画素の組み合わせ（Ｐｉ，Ｑｊ）のそれぞれの両画素の輝度値の差を成分とするｎｘｍ次元のベクトルを求めさせ、
該ベクトルのノルムを所定値に正規化したものを、該回転不変性特徴ベクトルとして求めさせる、
ことを特徴とする画像処理装置。
【請求項２】
該プログラムは該プロセッサに対し、処理（ｂ）において、
該特徴点を中心とする第３の半径の円周上の画素のうち等画素間隔のｐ個の画素Ｒｉ、ｉ＝０〜ｐ−１及び該特徴点を中心とする、該第３の半径より大きい第４の半径の円周上の画素のうち等画素間隔のｑ≧ｐなるｑ個の画素Ｓｊ、ｊ＝０〜ｑ−１の全組み合わせ（Ｒｉ，Ｓｊ）について、該組み合わせの両画素の輝度値Ｉ（Ｒｉ）とＩ（Ｓｊ）との差に、該画素Ｒｉと該画素Ｓｊとの一方から他方への正規化された方位ベクトルを乗じたものの総和のベクトルの方向を、該輝度配向として求めさせる、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
該第３の半径は該第１の半径に等しく３画素又は４画素であり、該第４の半径は該第２の半径に等しく、ｎ及びｍの値の組（ｎ，ｍ）は、（８，８）、（８，１６）又は（１６，１６）であることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
該記憶装置にはさらに、被合成対象である３次元モデル、画像又は情報が格納され、
該プログラムは該プロセッサに対し処理（ｅ）において、
処理（ｂ）で検出された特徴点の座標とこれに対応する、処理（ｄ）で取得した座標とを、３組以上対応させて、該第１座標系の座標を該第２座標系の座標に変換するパラメータを推定させ、該パラメータに基づき該被合成対象を該フレーム画像に投影させ、該投影されたフレーム画像を含む画像のデータを、該複数の特徴点座標に関する情報として該出力装置に供給させる、
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像処理装置。
【請求項５】
該参照マップはさらに、特徴点毎の特徴点ＩＤと、回転不変性特徴ベクトルを入力とし特徴点ＩＤを出力とするランダムフォレスト識別器とを有し、
該参照マップに含まれる回転不変性特徴ベクトルは、各特徴点について、互いに異なる複数のカメラ視点のそれぞれに対応した特徴ベクトルをマッチング対象として含み、
処理（ｄ）では、求めた該回転不変性特徴ベクトルを該識別器に入力して特徴点ＩＤを推定させ、該特徴点ＩＤに対応した、該参照マップ内の特徴点座標を取得させ、ランザックにより、マッチング外れに対応した特徴点の座標を、該取得した特徴点座標から除外することにより、該マッチングを行う、
ことを特徴とする請求項１乃至４のいずれか１つに記載の画像処理装置。
【請求項６】
プロセッサが請求項１乃至５のいずれか１つに記載の画像処理装置の該プログラムを実行することを特徴とする画像処理方法。
【請求項７】
請求項１乃至５のいずれか１つに記載の画像処理装置の該プログラムを有することを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、輝度画像上の自然特徴点を中心とする局所領域の回転不変性特徴ベクトルを求め、これを参照マップ内の回転不変性特徴ベクトルとのマッチングにより、該参照マップ内の対応する特徴点座標を取得し、取得した複数の特徴点座標に関する情報を出力する画像処理装置、画像処理方法及び画像処理プログラムに係り、特に、カメラを備えたスマートフォンに拡張現実画像を表示するのに好適な画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【０００２】
カメラを備えたスマートフォンの性能向上とＦＡＳＴ（Features from Accelerated Segment Test）コーナー検出法などの画像処理技術の向上に伴い、マーカレスＡＲ（Augmented Reality：拡張現実）をスマートフォンで実現可能になった。
【０００３】
ＦＡＳＴコーナー検出法によれば、１画像内の自然特徴点を多数、高速に検出することができる。これら特徴点を、予め求めた参照マップ内の特徴点とマッチングすることにより、３次元座標をカメラ画像の２次元座標に投影するカメラパラメータを推定することができ、このパラメータに基づき、３Ｄモデルをカメラ画像に投影した（カメラ画像にＣＧ画像を重畳した）ＡＲ画像を生成することができる。このマッチングを行うために、各特徴点を中心とする局所特徴ベクトルを記述する必要がある。
【０００４】
下記特許文献１には、画像の回転に強い特徴ベクトルを、コントラストによらずに算出することができる特徴ベクトル算出方法が開示されている。
【０００５】
また、下記非特許文献１には、そこでのテストの結果、下記非特許文献２のＢＲＩＥＦ（Binary Robust  Independent Elementary Features）という手法が最速であると記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−３８２９０号公報
【非特許文献】
【０００７】
【非特許文献１】特徴記述子比較レポート：http://computer-vision-talks.com/2011/08/feature-descriptor-comparison-report/
【非特許文献２】ＢＲＩＥＦ：http://cvlab.epfl.ch/~lepetit/papers/calonder_pami11.pdf
【非特許文献３】ランダムフォレスト：http://link.springer.com/article/10.1023%2FA%3A1010933404324?LI=true
【非特許文献４】ＩＣＰ：http://hal.inria.fr/docs/00/07/48/99/PDF/RR-1658.pdf
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１では、特徴点を中心とするｐ個の円の円周上の画素データを検出する同心円検出部と、各画素データにおける画素値の勾配の角度と支配的勾配との差分値に円の半径の平方根を乗じた重み付き差分値をそれぞれ算出する重み付き差分値算出部と、重み付き差分値についてのｑ個の階級を有する度数分布を作成する度数分布作成部と、各円についての各度数を成分とするｑ次元のベクトルから、ｐ×ｑ次元の記述子ベクトルを算出する記述子ベクトル算出部とを設ける必要があるので、ＳＩＦＴ（Scale Invariant Feature Transform）や、これよりも高速なＳＵＲＦよりも計算コストを低減できるものの、計算コストが比較的大きくなる。
【０００９】
また、非特許文献２のＢＲＩＥＦでは、特徴点を中心とする円内の２画素の輝度差を２値化したものを特徴ベクトルの成分とするので、特徴ベクトルの次元数とビット長とが等しくなって省メモリにはなるものの、高速化の点では、次の理由により、充分とは言えない。すなわち、例えば１２８次元の特徴ベクトルを生成する場合、ＢＲＩＥＦでは特徴ベクトルを１２８ビットで表現できるものの、例えば６４０ｘ４８０画素の画像中の該円内のランダムな１２８回の画素サンプリングが必要になり、キャッシング回数が増え、重い処理となるからである。また、ＢＲＩＥＦは回転不変性を有しない。さらに、上記２値化により、接近した特徴ベクトル間の区別が困難になるので、カメラ画像から取得した特徴ベクトルと参照特徴ベクトルとのマッチングの精度及び安定性、すなわち特徴点識別性が低下する。
【００１０】
本発明の目的は、このような問題点に鑑み、ＦＡＳＴ特徴点を中心とする局所領域の輝度分布特性を効果的に特徴ベクトルに反映させるとともに特徴ベクトルの計算コストをより低減して処理を高速化しつつ、特徴ベクトルのマッチングの精度及び安定性（特徴点識別性）を、カメラ位置・姿勢推定上又は画像検索上、充分確保することが可能な画像処理装置、画像処理方法及び画像処理プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明による画像処理装置の第１態様では、カメラと、該カメラで撮像されたフレーム画像と参照マップとプログラムとが格納された記憶装置と、プロセッサと、出力装置とを備え、該参照マップは複数の特徴点のそれぞれについて特徴点の第１座標系内座標（３次元又は２次元）と回転不変性特徴ベクトルとを含み、該プログラムは該プロセッサに対し、
（ａ）グレースケールの該フレーム画像又は該フレーム画像をグレースケール化した画像である輝度画像に対しＦＡＳＴコーナー検出法により特徴点の輝度画像上第２座標系内２次元座標を検出させ、
（ｂ）検出された各特徴点を中心とする局所領域の輝度配向を求めさせ、
（ｃ）該輝度配向を基準として該局所領域の回転不変性特徴ベクトルを求めさせ、
（ｄ）求めた該回転不変性特徴ベクトルと該参照マップ内の回転不変性特徴ベクトルとのマッチングにより、該参照マップ内の対応する特徴点座標を取得させ、
（ｅ）処理（ｄ）で取得した複数の特徴点座標に関する情報を該出力装置に供給する、
画像処理装置において、該プログラムは該プロセッサに対し、処理（ｃ）において、
該特徴点を中心とする第１の半径の円周上の画素のうち等画素間隔のｎ個の画素Ｐｉ、ｉ＝０〜ｎ−１の輝度Ｉ（Ｐｉ）及び該特徴点を中心とする、該第１の半径より大きい第２の半径の円周上の画素のうち等画素間隔のｍ≧ｎなるｍ個の画素Ｑｊ、ｊ＝０〜２ｍ−１の輝度Ｉ（Ｑｊ）を、該輝度配向を基準として所定順にサンプリングさせるとともに、この順に対応した全サンプル画素の組み合わせ（Ｐｉ，Ｑｊ）のそれぞれの両画素の輝度値の差を成分とするｎｘｍ次元のベクトルを求めさせ、
該ベクトルのノルムを所定値に正規化したものを、該回転不変性特徴ベクトルとして求めさせる。
【００１２】
本発明による画像処理装置の第２態様では、該プログラムは該プロセッサに対し、処理（ｂ）において、
該特徴点を中心とする第３の半径の円周上の画素のうち等画素間隔のｐ個の画素Ｒｉ、ｉ＝０〜ｐ−１及び該特徴点を中心とする、該第３の半径より大きい第４の半径の円周上の画素のうち等画素間隔のｑ≧ｐなるｑ個の画素Ｓｊ、ｊ＝０〜ｑ−１の全組み合わせ（Ｒｉ，Ｓｊ）について、該組み合わせの両画素の輝度値Ｉ（Ｒｉ）とＩ（Ｓｊ）との差に、該画素Ｒｉと該画素Ｓｊとの一方から他方への正規化された方位ベクトルを乗じたものの総和のベクトルの方向を、該輝度配向として求めさせる。
【００１３】
上記第１及び第２態様において、好ましい第１〜４半径、円周上サンプリング画素間隔（等画素間隔）、ｍ、ｎ、ｐ及びｑの範囲は、カメラの解像度や被写体に応じて定まるものであり、特定の値に限定されるものではない。
【００１４】
しかし、一般的に、第１〜４の半径が大き過ぎる場合、円周上サンプリング画素間隔がこの半径に対し広過ぎると、輝度配向ベクトルの変動幅が大きくなって特徴ベクトルの安定性が悪くなり、円周上サンプリング画素間隔が狭過ぎると、特徴ベクトルの次元数が大きくなって計算コスト及びモリ使用量が増加して好ましくない。また、第１及び第３（小さい方の円周）の半径が最小の２画素だと円周が滑らかにならないので、同様に特徴ベクトルの安定性が悪くなる。現在のカメラ付スマートフォンの場合、一般的な被写体に対する小さい方の円周半径の好ましい範囲は３〜４画素である。
【００１５】
また、一般的に、第１の半径と第３の半径とを等しくし，第２の半径と第４の半径とを等しくすれば、輝度配向ベクトル算出における円周上輝度サンプリングでのキャッシュ結果を特徴ベクトル算出時に用いることができるので、特徴ベクトルの計算効率が高くなる。同様に、第１の半径と第３の半径とをＦＡＳＴコーナー検出法での円周半径に等しくすれば、特徴ベクトルの計算効率がさらに高くなる。
【００１６】
また、ｎ、ｍ、ｐ及びｑの値は、２の冪乗であることが好ましい。その理由は、次の通りである。例えばｎについて、輝度配向ベクトルの向きによらず円周上輝度を画一的にサンプリングして配列Ｐに代入しておき、該向きに応じサンプリング開始位置に対応した配列要素のインデックスiの値oを定め、特徴ベクトル計算のループ処理において、インデックスiをoから１だけインクリメントし、ｉ＝ｎになったら次はi=０とし、さらにiを０からo-1まで１つずつインクリメントして循環する。０から始まるループ変数をj、剰余（mode）演算子を%、論理積演算子を&とすると、ｎが２の冪乗である場合、i=(j＋o)%ｎはi=(j＋o)&（ｎ−１）で計算できるので、ｉの値を決定するためｉ＝ｎであるか否かでジャンプする余分な条件ジャンプ命令を用いずに論理積演算子を用いてインデックスｉを高速計算できる。
【００１７】
また、特徴ベクトルの次元数が低すぎると特徴点識別性が悪化する。ｎ、ｍ、ｐ及びｑについては、ｎ＝ｍ、ｐ＝ｑであってもよい。
【００１８】
したがって、ｎ及びｍの好ましい値の組（ｎ，ｍ）は、（８，８）、（８，１６）又は（１６，１６）であり、ｐ、ｑの好ましい値の組は、（１６，１６）、（１６，３２）又は（３２，３２）である。
【発明の効果】
【００１９】
上記第１態様の構成によれば、ＦＡＳＴコーナー検出法による特徴点を中心とする第１の半径の円周上の画素のうち等画素間隔のｎ個の画素Ｐｉ、ｉ＝０〜ｎ−１の輝度Ｉ（Ｐｉ）及び該特徴点を中心とする、該第１の半径より大きい第２の半径の円周上の画素のうち等画素間隔のｍ≧ｎなるｍ個の画素Ｑｊ、ｊ＝０〜２ｍ−１の輝度Ｉ（Ｑｊ）を、輝度配向を基準として所定順にサンプリングさせるとともに、この順に対応した全サンプル画素の組み合わせ（Ｐｉ，Ｑｊ）のそれぞれの両画素の輝度値の差を成分とするｎｘｍ次元のベクトルを求め、該ベクトルのノルムを所定値に正規化したものを、該回転不変性特徴ベクトルとして求めるので、（ｍ＋ｎ）個の画素サンプリングに基づく比較的簡単な計算でｎｘｍ次元のベクトルを作成でき、また、ＦＡＳＴコーナー検出法による特徴点を中心とする局所領域の輝度分布特性が特徴ベクトルに効果的に反映され、これにより特徴ベクトルの参照特徴ベクトルとのマッチングの精度上及び安定性上問題になることなく、従来よりも計算コストを低減して、特徴ベクトルをより高速に求めることが可能になるという効果を奏し、特にスマートフォンのような処理性能が比較的低い画像処理装置に好適である。
【００２０】
また、特徴ベクトルの各成分が両円周上の輝度値の差であることと、特徴ベクトルのノルムが正規化されていることから、特徴ベクトルが照明の変化に殆ど影響されず、さらに、輝度配向を基準として特徴ベクトルの成分が配置されているので、特徴ベクトルが回転不変性を有し、リアルタイム画像処理上充分な上記マッチングの精度及び安定性を確保可能となるという効果を奏する。
【００２１】
上記第２態様の構成によれば、該特徴点を中心とする第３の半径の円周上の画素のうち等画素間隔のｐ個の画素Ｒｉ、ｉ＝０〜ｐ−１及び該特徴点を中心とする、該第３の半径より大きい第４の半径の円周上の画素のうち等画素間隔のｑ＞ｐなるｑ個の画素Ｓｊ、ｊ＝０〜ｑ−１の全組み合わせ（Ｒｉ，Ｓｊ）について、該組み合わせの両画素の輝度値Ｉ（Ｒｉ）とＩ（Ｓｊ）との差に、該画素Ｒｉと該画素Ｓｊとの一方から他方への正規化された方位ベクトルを乗じたものの総和のベクトルの方向を、該輝度配向として求めるので、（ｐ＋ｑ）個の画素サンプリングに基づく比較的簡単な計算で該輝度配向を求めることができ、また、ＦＡＳＴコーナー検出法による特徴点を中心とする局所領域の輝度分布特性が輝度配向決定に効果的に反映され、これにより、特徴ベクトルの回転不変性を確保できるとともに、従来よりもさらに計算コストを低減して、特徴ベクトルをさらに高速に求めることが可能になるという効果を奏する。
【００２２】
本発明の他の目的、特徴的な構成及び効果は、以下の説明を特許請求の範囲及び図面の記載と関係づけて読むことにより明らかになる。 
【図面の簡単な説明】
【００２３】
【図１】本発明の実施例１に係る画像処理装置のハードウェア構成を示す概略ブロック図である。
【図２】フレーム画像を処理してＡＲ画像を生成する処理を示す機能ブロック図である。
【図３】図２中の主処理部による処理を示す概略フローチャートである。
【図４】（Ａ）は図２中の特徴ベクトル化部での処理を示す概略フローチャートであり、（Ｂ）及び（Ｃ）はそれぞれ、このフローチャートのステップＳ４５１及びＳ４５２での処理の説明図である。
【図５】図２中の特徴点検出部により検出された特徴点を、輝度画像上にドットで示す図である。
【図６】左側の輝度画像上の１つの特徴点と、これを中心とする局所領域画像及び図２中のアフィン変換部で作成された複数の局所領域画像の一部と、各局所領域画像の特徴ベクトルとを対応させて示す説明図である。
【図７】（Ａ）〜（Ｄ）は何れも、同一特徴点を中心とする局所領域画像であって、特徴点に対するカメラの奥行きを同一にしカメラの姿勢を変えた場合の画像を示し、(Ｅ)〜（Ｈ）はそれぞれ（Ａ）〜（Ｄ）の特徴ベクトルの棒グラフによる成分表示図であり、（Ｉ）〜（Ｌ）は何れも、他の同一特徴点を中心とする局所領域画像であって、特徴点に対するカメラの奥行きを同一にしカメラの姿勢を変えた場合の画像を示し、(Ｍ)〜（Ｐ）はそれぞれ（Ｉ）〜（Ｌ）の特徴ベクトルの棒グラフによる成分表示図である。
【図８】（Ａ）は、特徴点ＩＤがそれぞれＩＤ０１、ＩＤ０２、ＩＤ０３、・・・である、それぞれ複数の特徴ベクトルを示す説明図であり、（Ｂ）は、参照マップ内の特徴ベクトルの全集合からランダムに抽出した部分集合毎のツリーからなるランダムフォレストの識別器をその入出力と対応付けて示す説明図である。
【図９】（Ａ）及び（Ｂ）は、参照マップの生成に用いた画像（右上隅の画像）上の特徴点と、これに対応するＡＲ画像生成用フレーム画像（左側画像）上の特徴点とを、直線で結んで、対応関係を示す説明図である。
【実施例１】
【００２４】
図１は、本発明の実施例１に係る画像処理装置１０のハードウェア構成を示す概略ブロック図であって、この実施例１で必要な構成要素のみを示す。画像処理装置１０は例えば、カメラを備えたスマートフォンやＰＤＡ等の携帯端末装置、ノートパソコン又はデスクトップパソコンなどである。
【００２５】
画像処理装置１０は、その本体部２０において、プロセッサ２１がバス２２を介して記憶装置２３、入力インターフェイス２４、カメラインターフェイス２５及びディスプレインターフェイス２６に結合されている。プロセッサ２１は、内部キャッシュメモリを備えている。入力インターフェイス２４には入力装置３０が結合され、カメラインターフェイス２５にはカメラ３１が結合され、ディスプレインターフェイス２６には出力装置としての表示装置３２が結合され、他の出力装置としての通信部２７にはアンテナ３３が結合されている。
【００２６】
入力装置３０は、対話型入力装置であって、タッチパネル、ポインティングデバイス若しくはキーボード又はこれらの組み合わせで構成されている。通信部２７は、電波を介して外部モニタ又はインターネットと結合するためのインターフェイスを備えている。
【００２７】
記憶装置２３にはプログラム及びデータが格納され、このプログラムは、プロセッサ２１に対し、入力装置３０から入力インターフェイス２４を介したユーザの指示又は設定値の選択若しくは入力を受け付け、この入力に応じて、ＡＲアプリケーションを起動させ、カメラ３１で被写体を撮像させてそのフレーム画像を順次、一時的に記憶装置２３内に格納させるとともに、このフレーム画像を処理させて、カメラ３１の位置姿勢を推定し、これに基づきフレーム画像にＣＧを重畳させたＡＲ画像を生成し、これを、ディスプレインターフェイス２６に供給することにより表示装置３２に表示させ、通信部２７に供給することにより外部のモニタに表示させ、又は、ブラウザ等のネットワークソフトを介し通信部２７に供給することにより外部のサーバ若しくは基地局を介して通信相手にＡＲ画像を送信する。
【００２８】
図２は主に、上記フレーム画像を処理してＡＲ画像を生成する処理を示す機能ブロック図である。図２中、角丸矩形のブロックＭｉ及びＭ０〜Ｍ８は、図１の記憶装置２３のデータ領域の一部である。
【００２９】
画像入力部４ｉは、オペレーティングシステムを介しカメラ３１からフィールド画像を順次取得してバッファ領域Ｍｉに格納し、２フィールドで１フレーム（例えば６４０ｘ４８０画素）のカラー画像を格納する。バッファ領域Ｍｉはダブルバッファであり、一方のバッファと他方のバッファとに交互に順次フレーム画像を格納（上書き）する。
【００３０】
グレースケール化部４１は、バッファ領域Ｍｉ内の、現在上書きしていない方のバッファのフレーム画像を、グレースケール化して８ビット１チャンネルの輝度画像に変換しながら、これをバッファ領域Ｍ０に格納する。バッファ領域Ｍ０もダブルバッファであり、グレースケール化部４１は、画像入力部４ｉと同様に一方のバッファと他方のバッファとに交互に順次、輝度画像を格納（上書き）する。以下、これら一方及び他方のバッファの画像をそれぞれ輝度画像Ｇ０及びＧ１と称す。
【００３１】
画像入力部４ｉ及びグレースケール化部４１はそれぞれ、イベントドリブンにより実行されて、主処理部４０と並列実行される。
【００３２】
主処理部４０は、フレーム画像及びその輝度画像を画像処理するメインルーチンである。図３は、この主処理部４０による処理を示す概略フローチャートであり、ステップＳ４２、Ｓ４３、Ｓ４５〜Ｓ５１でそれぞれ図２中のブロック４２、４３、４５〜５１を呼び出して処理する。
【００３３】
ステップＳ４２は、前処理であり、アプリケーション起動後の初期段階で行われる。ステップＳ４３、Ｓ４５及びＳ４６は、その後の最初のＡＲ用フレーム画像及びその輝度画像（これを輝度画像Ｇ１とする）に対するＡＲ画像処理（初期認識処理）である。ステップＳ４７〜Ｓ５１のループは、この後に順次取得したフレーム画像及びその輝度画像に対するＡＲ画像処理（トラッキング処理）である。
【００３４】
図２において、参照マップ作成部４２は、後述の特徴点検出部４３を介し輝度画像上の特長点を検出し、これに特徴点ＩＤを付与する。図５は、特徴点検出部４３により検出された特徴点をＧ１上にドットで示す。
【００３５】
参照マップ作成部４２は、後述の特徴ベクトル化部４５を介し、特徴点を中心とする局所領域の特徴ベクトルを求め、後述の輝度画像間テンプレートマッチングで特徴点を追跡し、単眼ステレオ視により各特徴点の３次元座標Ｐｏｓを復元し、各特徴点のＩＤ、３次元座標Ｐｏｓ及び特徴ベクトルを１組にした参照マップＭ４を作成する。
【００３６】
参照マップ作成部４２はまた、アフィン変換部４４を介し、該局所領域の画像をアフィン変換した、局所領域画像群Ｍ２を作成し、それぞれの局所領域画像に対し、特徴ベクトル化部４５を介し特長ベクトルを求め、その特徴点ＩＤの特徴ベクトルとして参照マップＭ４に追加する。即ち、１つの特徴点ＩＤに対し異なる複数のカメラ視点のそれぞれの局所領域画像の特徴ベクトルが含まれる。
【００３７】
図６は、左側の輝度画像上の１つの特徴点と、これを中心とする局所領域画像及び図２中のアフィン変換部４４で作成された複数の局所領域画像の一部と、各局所領域画像の特徴ベクトルＶとを対応させて示す。
【００３８】
アフィン変換部４４による前記アフィン変換は、予め設定された複数のアフィン変換行列のそれぞれで、局所領域画像に対し施すことにより行われ、これにより、カメラ３１の位置・姿勢を変更した場合に得られる複数の局所領域画像を、画像処理で生成する。
【００３９】
より具体的には、まずカメラ３１の姿勢を変えずに奥行きを変更した場合に得られる、局所領域画像Ｇ２に対応した局所領域画像、例えば、局所領域画像Ｇ２の幅及び高さをそれぞれ１／√２倍し、さらに１／√２倍し、さらに１／√２倍したそれぞれの局所領域画像Ｇ３、Ｇ４及びＧ５をアフィン変換で自動生成する。これら局所領域画像Ｇ２〜Ｇ５のそれぞれについてさらに、カメラの奥行きを変えずに姿勢を変えたものに相当する局所領域画像を、アフィン変換で自動生成する。
【００４０】
次に、上記初期認識処理について説明する。
【００４１】
特徴点検出部４３は、グレースケール化部４１で生成された輝度画像Ｇ１に対し、ＦＡＳＴコーナー検出法により特徴点を検出し、輝度画像Ｇ１内の座標系でのそれぞれの座標を取得して、２次元座標群Ｍ１に追加する。
【００４２】
特徴ベクトル化部４５は、輝度画像Ｇ１内の特徴点を中心とする局所領域画像Ｇｘを特徴ベクトル化して、特徴ベクトル群Ｍ３に追加する。
【００４３】
図４（Ａ）は、特徴ベクトル化部４５での処理を示す概略フローチャートである。図４（Ｂ）及び（Ｃ）はそれぞれ、このフローチャートのステップＳ４５１及びＳ４５２での処理の説明図である。
【００４４】
図４（Ｂ）及び（Ｃ）の局所領域画像Ｇｘでは、複雑化を避けるため、画像を省略している。升目で区切られた小矩形は、画素を示している。ハッチングを施した中央の画素は、特徴点を示している。
【００４５】
ここで、ＦＡＳＴコーナー検出法は、注目画素を中心とし、正の閾値をｔｈとし、例えば半径３画素の円周上における１６個の画素の輝度値を、（注目画素の輝度値）−ｔｈより小さければ暗い、（注目画素の輝度値）＋ｔｈより大きければ明るい、これらの間の値であれば類似と３値化し、連続して例えば９画素以上が明るい又は暗いと判定された場合に、注目画素がコーナーの特徴点であると判定するものである。したがって、ＦＡＳＴコーナー検出法による特徴点は、その局所領域において、円周上輝度配向性を有している。
【００４６】
そこで、この特徴点を中心とする半径３及び６の点線で示す円周上の画素をそれぞれ、図示のように、画素Ｒ０〜Ｒｆ及び画素Ｓ０〜Ｓ１ｆとする。符号Ｒ及びＳに付加した番号は、１６進数表記である。
【００４７】
図４（Ａ）のステップＳ４５１においては、バッファメモリ上の画素Ｒ０〜Ｒｆ及び画素Ｓ０〜Ｓ１ｆの輝度値をサンプリングすることによりＭＰＵ内にキャッシングし、次いで画素Ｒｉと画素Ｓｊとの全ての組み合わせ（Ｒｉ，Ｓｊ）について、輝度配向ベクトルＯｒｉを、
1f   f
Ｏｒｉ＝Σ  Σ（Ｉ（Ｓｊ）−Ｉ（Ｒｉ））（Ｒｉ−Ｓｊ）
j=0 i=0
として求める。上式右辺のＲｉ及びＳｊはそれぞれ、特徴点を始点とする画素Ｒｉ及びＳｊの位置ベクトルを示している。また、Ｉ（ｘ）は画素ｘの輝度である。輝度配向ベクトルＯｒｉの計算においては、Ｘ−Ｙ直交座標系のＸ成分及びＹ成分のそれぞれを求める。輝度配向ベクトルＯｒｉの計算においては、Ｘ−Ｙ直交座標系のＸ成分及びＹ成分のそれぞれを求める。
【００４８】
このような輝度配向ベクトルＯｒｉは、輝度値の差がベクトルの係数となっているので、輝度配向ベクトルＯｒｉは照明の変化に影響されにくい。
【００４９】
また、このような比較的簡単に求められる輝度配向ベクトルＯｒｉを用いても、後述の特徴ベクトルの回転不変性が確保されるとともに、従来よりも計算コストを低減して、より高速に輝度配向ベクトルＯｒｉを求めることが可能になる。
【００５０】
計算コストを低減できる理由は、数十〜２００程度の特徴ベクトルのそれぞれについて、６４０ｘ４８０画素構成の輝度画像から、１６＋３２＝４８個の画素サンプリングを行えばよく、画素サンプリングでの比較的重い処理であるＭＰＵ２１のキャッシング回数が少なくなるからである。また、小円周上及び大円周上のそれぞれの画素数が２の冪乗であるので、上述のインデックス計算において、特徴ベクトル毎の１６ｘ３２＝５１２回のループ処理を高速化できるからである。
【００５１】
なお、小円周又は大円周をＦＡＳＴコーナー検出時の円周と一致させることにより、その画素サンプリング結果を共通に用いることができるので、さらに高速化できる。
【００５２】
次に、ステップＳ４５２において、図４（Ｃ）に示すように、求めた輝度配向ベクトルＯｒｉの始点から終点側へ延びた半直線に最も距離が近い（輝度配向ベクトルＯｒｉと小円周上の画素の位置ベクトルとの内積が最大となる）小円周上の画素をＰ０とし、画素Ｐ０から反時計回り（又は時計回り）に１画素ごとの小円周上の画素をそれぞれ画素Ｐ１〜Ｐ７とし、特徴点からこの画素Ｐ０の方向の延長線上且つ大円周上の画素をＱ０とし、同様に、画素Ｑ０から反時計回り（又は時計回り）に１画素ごとの小円周上の画素をそれぞれ画素Ｑ１〜Ｑ１６とし、局所領域画像Ｇｘの特徴ベクトルＶを、
Ｖ＝α（Ｆ００，Ｆ０１，．．，Ｆ０ｆ，Ｆ１０，Ｆ１１，・・・，Ｆｆ７）
として求める。ここに、ベクトル成分Ｆｉｊは、Ｆｉｊ＝Ｉ（Ｑｊ）−Ｉ（Ｐｉ）であり、αは、特徴ベクトルＶのノルムの値を、例えば符号付８ビット整数の最大値である１２７（ノルムの平方が１６１２９）に正規化するための係数である。
【００５３】
プログラム上の実際の計算では、図４（Ｂ）の画素Ｒ０〜Ｒｆ及びＳ０〜Ｓ１ｆのサンプリング結果を用い、Ｑ０〜Ｑｆの替わりにＳ６、Ｓ８、・・・、Ｓ４を用い、Ｐ０〜Ｐ７の替わりにＲ３、Ｒ５、・・・、Ｒ１を用いる。また、画素配列のインデックスは、輝度配向ベクトルＯｒｉに依存せず画一的に変化するループ変数に対し、上述のように論理積演算で循環的に変化させる。
【００５４】
すなわち、正規化前の特徴ベクトルの第ｋ成分をV[ｋ]、輝度Ｉ（Ｒｉ）をR[i]、輝度Ｉ（Ｓｊ）をS[j]、計算開始位置の輝度配列要素をR[o]、S[2*o]（図４（Ｂ）のＯｒｉの場合、o=3）とし、１６進数の前に0xを付加して表記すると、Ｃ言語の場合、正規化前の特徴ベクトルVを次のような簡単なループ処理で計算する。
【００５５】
for (i=0;  i<8;  i++) { 
for(j=0;  j<16;  j++){
V[16*i+j] = S[(2*j+2*o)&0x1f] -R[(2*i+o)&0x0f]
}
}
このような計算は、上記輝度配向ベクトルＯｒｉの計算においても同様である。
【００５６】
Ｆｉｊ＝が輝度値の差であるので、特徴ベクトルＶは、照明の変化に影響されにくい。また、特徴ベクトルＶのノルムが正規化されているので、さらに照明の変化に影響されにくい。
【００５７】
また、このような比較的簡単に求められる特徴ベクトルＶを用いても、特徴ベクトルの参照特徴ベクトルとのマッチングの精度上及び安定性上問題になることがなく、従来よりも計算コストを低減して、特徴ベクトルを高速に求めることが可能になる。
【００５８】
計算コストを低減できる理由は、数十〜２００程度の特徴ベクトルのそれぞれについて、６４０ｘ４８０画素構成の輝度画像から、１６＋８＝２４個の画素サンプリングを行えばよく、画素サンプリングでの比較的重い処理であるＭＰＵ２１のキャッシング回数が少なくなるからである。また、小円周上及び大円周上のそれぞれの画素数が２の冪乗であるので、上述のインデックス計算において、特徴ベクトル毎の１６ｘ８＝１２８回のループ処理を高速化できるからである。
【００５９】
なお、画素サンプリングについては、輝度配向ベクトルＯｒｉ算出時のサンプリング結果を用いることができるので、さらに高速化できる。
【００６０】
また、マッチングの精度上及び安定性上充分である理由は、結果として、ＦＡＳＴコーナー検出法による特徴点を中心とする局所領域の輝度分布特性が特徴ベクトルＶに効果的に反映されるからであろう。
【００６１】
ＭＰＵの周波数速度を上記非特許文献１に記載のテスト結果で用いられた2.6GHzにして、本実施例の128次元特徴ベクトル計算時間を実測した結果、特徴点512個当たり2-3msecであった。これに対し、上記非特許文献１のテスト結果では、最速のBRIEFでも、特徴点512個当たり64次元で約5-8msecである。両テスト条件を詳細に一致させたものではないが、本実施例の方が約2倍早いと言える。
【００６２】
局所領域画像群Ｍ２内の他の全ての局所領域画像についても上記同様にして特徴ベクトルＶを求める。
【００６３】
図７(Ａ)〜（Ｄ）は何れも、同一特徴点を中心とする局所領域画像であって、特徴点に対するカメラ３１の奥行きを同一にしカメラ３１の姿勢を変えた場合の画像を示し、図７(Ｅ)〜（Ｈ）はそれぞれ、図７(Ａ)〜（Ｄ）の特徴ベクトルの棒グラフによる成分表示である。局所領域画像中の直線は、輝度配向ベクトルＯｒｉを示す。
【００６４】
同様に、図７(Ｉ)〜（Ｌ）は何れも、他の同一特徴点を中心とする局所領域画像であって、特徴点に対するカメラ３１の奥行きを同一にしカメラ３１の姿勢を変えた場合の画像を示し、図７(Ｍ)〜（Ｐ）はそれぞれ、図７(Ｉ)〜（Ｌ）の特徴ベクトルのコンピュータによる棒グラフ成分表示である。局所領域画像中の直線は、輝度配向ベクトルＯｒｉを示す。
【００６５】
これら図７(Ａ)〜（Ｈ）の実測画像から、特徴ベクトルＶは、特徴点に対するカメラ３１の奥行きが同一であればカメラ３１の姿勢に殆ど依存しない（回転不変性を有する）ことが分かる。
【００６６】
図１に戻って、マッチング部４６は、特徴ベクトル群Ｍ３内の１つの特徴ベクトルＶと参照マップＭ４内の特徴ベクトルとのマッチングを行って、特徴ベクトル群Ｍ３内の何れの特徴ベクトルが特徴ベクトルＶと最も類似するもの又は類似すると推定できるものに対応する参照マップＭ４内の３次元座標Ｐｏｓを、特徴ベクトルＶの３次元座標と推定する。この処理を、特徴ベクトル群Ｍ３内の全特徴ベクトルＶのそれぞれについて行う。
【００６７】
特徴点数が１輝度画像内に多数存在し、かつ、１つの特徴点に複数の特徴ベクトルが存在するので、特長ベクトル間の類似度として、例えば、特長ベクトル間の内積を直接１つずつ実行すると、計算コストが膨大となる。
【００６８】
そこで、マッチング部４６において、決定木を特徴ベクトルの識別器（分類器）として用いることにより、マッチングを高速に行う。決定木としては、複数のツリーを用いたランダムフォレスト（Random Forest）を用いる。その理由は、使用時に高速動作すること、マルチクラス識別器であること、識別精度が比較的高いこと、識別精度とメモリ使用量がトレードオフになるがそのパラメータがほぼツリーの数で調整できること(ツリーが少数（多数）だと識別精度が低い（高い）がメモリ使用量が小（大）)である。
【００６９】
特徴ベクトルの各成分を２値化しないのは、決定木を用いることにより、２値化とは無関係にマッチングを高速に行うことができることと、２値化による特徴ベクトルの識別力低下を避けるためである。
【００７０】
上記参照マップ作成部４２において、ランダムフォレスト識別器を学習しておく。すなわち、参照マップＭ４内の特徴ベクトルの全集合から、特徴点ＩＤが同一であるか否かを考慮せずにランダムに複数の部分集合（各部分集合の要素数は互いに同一）を決め、部分集合をツリーの分岐ノードで分割する分割関数ｆ（Ｖ）と分割の境界を定める閾値ｔとをランダムに決定し、情報利得が最大になるように学習して分割関数のパラメータと閾値とを更新し、また、各ツリーの各リーフノードに、特徴点ＩＤ毎の確率Ｐｒを対応付けておく（リーフノードに対応付けられていないＩＤはその確率が０）。
【００７１】
特徴ベクトルＶに対し、各ツリーを辿って、リーフノードで特徴点ＩＤ毎の確率を取得し、全ツリーでの特徴点ＩＤ毎の確率の総和が最大になるＩＤを、ランダムフォレスト識別器の出力とする。
【００７２】
図８（Ａ）は、特徴点ＩＤがそれぞれＩＤ０１、ＩＤ０２、ＩＤ０３、・・・である、それぞれ複数の特徴ベクトルＶを示す。図８（Ｂ）は、参照マップ内の特徴ベクトルの全集合からランダムに抽出した部分集合毎のツリーからなるランダムフォレストの識別器をその入出力と対応付けて示す説明図である。
【００７３】
マッチング部４６は、マッチングした特徴ベクトルの特徴点ＩＤに対応した参照マップＭ４内の３次元座標Ｐｏｓと、これに対応した特徴点の２次元座標群Ｍ１内の２次元座標ｐｏｓとを対応させた３次元／２次元座標対Ｍ５を得る。
【００７４】
ランダムフォレスト識別器は、マッチング結果を高速に得ることができるが、マッチング結果を保証するものではなく、誤識別を含むので、それらを取り除く必要がある。
【００７５】
そこで、マッチング部４６は、ランザック（RANSAC：RANdom SAmple Consensus）により、マッチング外れに対応した特徴点を決定し、その３次元座標を除外し、残った３次元座標Ｐｏｓとこれに対応した２次元座標群Ｍ１内の２次元座標ｐｏｓとを対応させた３次元／２次元座標対Ｍ５を得る。
【００７６】
すなわち、３次元／２次元座標対Ｍ５からランダムに例えば６座標対を取り出し、後述のカメラパラメータ推定部４７を介し３行４列のカメラパラメータ行列Ｍ７を推定し、このカメラパラメータ行列Ｍ７で斉次３次元座標Ｐｏｓを斉次２次元座標ｐｏｓｘに変換し、これと、３次元／２次元座標対Ｍ５内の２次元座標ｐｏｓとを対応させ、この対応関係を最小二乗法で直線近似したとき偏差が所定値を超えるもの（外れ値）の個数を求めるという処理を複数回繰り返す。外れ値の個数が最も少なかったカメラパラメータ行列Ｍ７で、３次元／２次元座標対Ｍ５の全３次元座標Ｐｏｓをそれぞれ２次元座標に変換し、同様にして外れ値を決定し、それらの３次元座標を除外し、残った３次元座標Ｐｏｓとこれに対応した２次元座標群Ｍ１内の２次元座標ｐｏｓとを対応させた３次元／２次元座標対Ｍ５を得る。
【００７７】
カメラパラメータ推定部４７は、この３次元／２次元座標対Ｍ５を、最小二乗法を用いたＩＣＰ（Iterative Closest Point）アルゴリズムの入力とし、斉次３次元座標Ｐｏｓを画像上斉次２次元座標に変換する３行４列の斉次変換行列であるカメラパラメータ行列Ｍ７を決定する。
【００７８】
オーバーレイ部４８は、予め登録されている３次元モデルＭ６を、カメラパラメータ行列Ｍ７で、輝度画像Ｇ１に対応するバッファ領域Ｍｉ内のフレーム画像上に投影することにより、重畳画像Ｍ８を生成する。画像出力部４９は、この重畳画像Ｍ８を、図１のディスプレインターフェイス２６に供給して表示装置３２に表示させる。
【００７９】
以上の処理により、フレーム画像に対する最初のＡＲ画像処理が終了する。
【００８０】
今度は、次のフレーム画像に対するＡＲ画像処理に移る。この処理を簡単化して高速化するため、テンプレート画像設定部５０は、上記のように最終的にマッチングされた輝度画像Ｇ１上の特徴点を中心とする例えば９×９画素のブロックをテンプレート画像とする。
【００８１】
テンプレートマッチング部５１は、このテンプレート画像と、該次のフレーム画像の輝度画像Ｇ０内の対応する所定範囲内の９×９画素ブロックとの領域マッチングを行うことにより、最も類似度の高い輝度画像Ｇ０内のブロックを決定する。テンプレートマッチング部５１は、このブロックの中心画素の２次元座標を求め、これを、該テンプレートに対応した特徴点の３次元座標Ｐｏｓと対応させて、輝度画像Ｇ０に対する３次元／２次元座標ｐｏｓ対Ｍ５を取得する。
【００８２】
次に、カメラパラメータ推定部４７の処理に移り、以下上記同様にして、重畳画像Ｍ８を表示装置３２に表示させる。
【００８３】
その後、輝度画像Ｇ０と輝度画像Ｇ１とを交互に入れ替え、同様にフレーム画像もこれに対応して入れ替える毎に、図３のステップＳ４６〜Ｓ５１のループ処理を１回行うことにより、カメラ３１の現在の位置姿勢に対応したＡＲ表示画像を表示する。
【００８４】
図９（Ａ）は、参照マップＭ４の生成に用いた画像（右上隅の画像）上の特徴点と、これに対応する、最初のＡＲ画像生成用フレーム画像（左側画像）上の特徴点とを、直線で結んで、対応関係を示す。同様に、図９(Ｂ)は、参照マップＭ４の生成に用いた画像（右上隅の画像）上の特徴点と、これに対応する、その後のフレーム画像（左側画像）上の特徴点とを、直線で結んで、対応関係を示す。
【００８５】
線で結ばれてないフレーム画像上の特徴点は、上記マッチングの外れで除外されたものである。検出された特徴点数に対する、マッチングできた特徴点数（マッチング精度又は認識率）は、通常のカメラ位置姿勢変化に対し、大略７０〜９０％であり、本実施例１の比較的簡単で高速処理が可能な回転不変性特徴ベクトルＶの決定方法は、ＡＲ画像処理として問題がないことが判明した（認識率は特徴ベクトルＶの決定方法及び識別器の選定に依存）。
【００８６】
本発明の特徴ベクトルＶ自体はスケール不変性を有しないが、予め設定された複数のアフィン変換行列のそれぞれで、アフィン変換部４４により、特徴点を中心とする局所領域画像を変形することにより、カメラ３１の位置・姿勢を変更した場合に得られる複数の局所領域画像を生成し、それぞれの回転不変性特徴ベクトルＶをマッチング対象とするので、マッチング処理上はスケール不変性及びカメラ姿勢不変性を有している。
【００８７】
また、マッチング前に特徴ベクトル化部４５側で１つの特徴点に対し１つの特徴ベクトルのみ作成すればよいので、処理をさらに高速化できる。
【００８８】
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記複数の実施例で述べた構成要素の他の組み合わせ、各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【００８９】
例えば、上記実施例では、図４（Ｂ）及び（Ｃ）の小円周及び大円周の半径をそれぞれ３画素及び６画素としたが、上述のように本発明はこれらの値に限定されるものではなく、また、マッチング部４６で外れ値を除く際にマッチング精度を求めることができるので、この精度に応じマッチング精度がより高くなるように、小円周及び大円周の半径を動的に変更してもよい。
【００９０】
また、参照マップＭ４内を含む全ての特徴点について一律に、図４（Ａ）のステップＳ４５１の輝度配向ベクトルＯｒｉの符号を逆にしたり、ステップＳ４５２の特徴ベクトルＶの成分の順番を変更したりしてもよい（マッチング上問題とならない）。但し、計算速度上は、円周上一方向に順に画素輝度値をサンプリングした方が好ましい。
【００９１】
本発明は、例えば写真画像を撮影し、その特徴点を、参照マップ内の複数の写真画像特徴点とマッチンして画像検索する場合にも適用でき、この場合、参照マップ内の特徴点座標は２次元であり、３行４列のカメラパラメータ行列の替わりに３行３列のホモグラフィ行列が用いられる。
【００９２】
マッチング部４６で用いる識別器は、高速かつある程度以上マッチング精度が得られるものであればよく、ランダムフォレスト識別器に限定されず、バギングやブースティングなどのアンサンブル学習アルゴリズムを用いたものや単一の決定木を用いた識別器であってもよい。
【００９３】
また、本発明は、上記アフィン変換等を行わずに、ガウシアンピラミッドなどを用いた公知のスケールで本発明の特徴ベクトルＶ決定用の大円周半径を決定することにより、特徴ベクトルＶをスケール不変性にする構成であってもよい。この場合も、特徴ベクトルＶ算出の計算コストが従来よりも小さく、また、参照マップＭ４内のマッチング対象数を低減できるので、スケール不変化を含めた特徴ベクトルＶ算出とマッチングとの合計の計算コストを従来よりも低減することができる。
【００９４】
さらに、参照マップＭ４は、アプリケーション起動後に上記のように参照マップ作成部４２で自動生成する替わりに、アプリケーション起動前に予め自動又は手動で作成しておいたものを登録するものであってもよい。この場合、参照マップＭ４内の特徴ベクトルは、各特徴点の上記アフィン変換局所領域画像の替わりに、各特徴点について、互いに異なる複数のカメラ位置姿勢のそれぞれに対応した、すなわち互いに異なる複数のカメラ視点のそれぞれに対応した、特徴点を中心とする実際の局所領域画像に基づき、特徴ベクトルを作成したものであってもよい。また、参照マップＭ４を、アプリケーション起動後に、シーンの変化に応じて更新する構成であってもよい。
【００９５】
また、テンプレート画像設定部５０及びテンプレートマッチング部５１での処理対象は、輝度画像の替わりにカラーのフレーム画像とすることにより、マッチング精度を向上させてもよい。
【００９６】
また、カメラ３１の内部パラメータを予め決定しておき、カメラパラメータ推定部４７においてカメラ３１の位置姿勢を定める６個の外部パラメータのみを決定する構成であったり、カメラパラメータ推定部４７又はテンプレートマッチング部５１において、特徴点群を剛体とみなし、３次元／２次元座標対Ｍ５を３組以上の対応データとし、その位置姿勢を定める６個のパラメータを決定することにより、実質的にカメラパラメータ推定部４７でカメラパラメータ行列Ｍ７を推定する構成であったりしてもよい。
【００９７】
さらに、３次元座標系は、カメラ３１に対する相対的なものであればよく、シーンの背景に固定のワールド座標系に限定されず、その位置姿勢が変化するローカル座標系であってもよいことは勿論である。
【００９８】
また、本発明の適用範囲は３次元モデルをフレーム画像に重畳するものに限定されず、認識された複数の特徴点の３次元座標の組で識別される対象に応じたテキスト、記号、符号、図形又は画像などの情報をフレーム画像に重畳し又は重畳せずに表示装置や通信部に出力したり、類似する複数の特徴点の組を含む画像を画像データベースから検索したりする構成に適用することができる。
【符号の説明】
【００９９】
１０  画像処理装置
２３  記憶装置
２４  入力インターフェイス
２５  カメラインターフェイス
２６  ディスプレインターフェイス
２７  通信部
３０  入力装置
３１  カメラ
３２  表示装置
３３  アンテナ
４ｉ  画像入力部
４０  主処理部
４１  グレースケール化部
４２  参照マップ作成部
４３  特徴点検出部
４４  アフィン変換部
４５  特徴ベクトル化部
４６  マッチング部
４７  カメラパラメータ推定部
４８  オーバーレイ部
４９  画像出力部
５０  テンプレート画像設定部
５１  テンプレートマッチング部
Ｍｉ、Ｍ０  バッファ領域
Ｍ１  ２次元座標群
Ｍ２  局所領域画像群
Ｍ３  特徴ベクトル群
Ｍ４  参照マップ
Ｍ５  ３次元／２次元座標対
Ｍ６  ３次元モデル
Ｍ７  カメラパラメータ行列
Ｍ８  重畳画像
Ｒｉ、Ｓｊ、Ｐｉ、Ｑｊ  画素
【要約】
【課題】ＦＡＳＴ特徴点を中心とする局所領域の輝度分布特性を効果的に特徴ベクトルに反映させるとともに特徴ベクトルの計算コストをより低減して処理を高速化しつつ、特徴ベクトルの充分なマッチングの精度及び安定性を確保する。
【解決手段】輝度配向ベクトルＯｒｉの始点から終点側へ延びた半直線に最も距離が近い小円周上の画素をＰ０とし、この画素Ｐ０の方向の延長線上且つ大円周上の画素をＱ０とし、画素Ｐ０から反時計回りに１画素ごとの小円周上の画素をそれぞれ画素Ｐ１〜Ｐ７とし、画素Ｑ０から反時計回りに１画素ごとの小円周上の画素をそれぞれ画素Ｑ１〜Ｑ１６とし、局所領域画像Ｇｘの特徴ベクトルＶｆを、  Ｖｆ＝α（Ｆ００，Ｆ０１，．．，Ｆｆ７）として求める。ここに、ベクトル成分Ｆｉｊは、Ｆｉｊ＝Ｉ（Ｑｊ）−Ｉ（Ｐｉ）であり、Ｉ（ｘ）は画素ｘの輝度であり、αは、特徴ベクトルＶｆのノルムを正規化するための係数である。
【選択図】図４【図１】
0005500400.tif 000002
【図２】
0005500400.tif 000003
【図３】
0005500400.tif 000004
【図４】
0005500400.tif 000005
【図８】
0005500400.tif 000006
【図５】
0005500400.tif 000007
【図６】
0005500400.tif 000008
【図７】
0005500400.tif 000009
【図９】
0005500400.tif 000010