(57)【特許請求の範囲】
【請求項１】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップと
を有し、
前記スコア算出ステップにおいて、
前記フレーム画像を撮像したカメラの位置から前記候補３次元点までの距離を前記スコアとして算出し、
前記代表３次元座標算出ステップにおいて、
前記候補３次元点のうち、全ての前記候補３次元点の前記スコアにおける中央値に対応する候補３次元点の３次元座標を前記代表３次元座標として出力する
ことを特徴とする３次元座標算出方法。
【請求項２】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップと
を有し、
前記スコア算出ステップにおいて、
前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから前記スコアを算出し、
前記代表３次元座標算出ステップにおいて、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出方法。
【請求項３】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップと
を有し、
前記スコア算出ステップにおいて、
前記候補３次元点ごとに、該候補３次元点の被観測回数の予め定めた定数に対する比をべき乗した値を前記スコアとして算出し、
前記代表３次元座標算出ステップにおいて、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出方法。
【請求項４】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップと
を有し、
前記スコア算出ステップにおいて、
前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて前記スコアを算出し、
前記代表３次元座標算出ステップにおいて、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力する
ことを特徴とする３次元座標算出方法。
【請求項５】
前記スコア算出ステップにおいて、
前記テンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像とのサイズが同じである
ことを特徴とする請求項４に記載の３次元座標算出方法。
【請求項６】
前記スコア算出ステップにおいて、
前記過去のフレーム画像を撮像した際のカメラポーズと、前記代表３次元座標を算出する対象のフレーム画像を撮像した際のカメラポーズとに基づいて、前記テンプレート画像を前記代表３次元座標を算出する対象のフレーム画像に投影した領域を算出し、
算出した領域の画像と前記テンプレート画像との類似度を前記スコアとして算出する
ことを特徴とする請求項４に記載の３次元座標算出方法。
【請求項７】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップと
を有し、
前記スコア算出ステップにおいて、
前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから第１のスコアを算出し、
前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて第２のスコアを算出し、
前記代表３次元座標算出ステップにおいて、
前記候補３次元点それぞれに対応する、前記第１のスコアと前記第２のスコアとから算出された重みを用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出方法。
【請求項８】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部と
を備え、
前記スコア算出部は、
前記フレーム画像を撮像したカメラの位置から前記候補３次元点までの距離を前記スコアとして算出し、
前記代表３次元座標算出部は、
前記候補３次元点のうち、全ての前記候補３次元点の前記スコアにおける中央値に対応する候補３次元点の３次元座標を前記代表３次元座標として出力する
ことを特徴とする３次元座標算出装置。
【請求項９】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部と
を備え、
前記スコア算出部は、
前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから前記スコアを算出し、
前記代表３次元座標算出部は、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出装置。
【請求項１０】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部と
を備え、
前記スコア算出部は、
前記候補３次元点ごとに、該候補３次元点の被観測回数の予め定めた定数に対する比をべき乗した値を前記スコアとして算出し、
前記代表３次元座標算出部は、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出装置。
【請求項１１】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部と
を備え、
前記スコア算出部は、
前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて前記スコアを算出し、
前記代表３次元座標算出部は、
前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力する
ことを特徴とする３次元座標算出装置。
【請求項１２】
フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、
前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部と
を備え、
前記スコア算出部は、
前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから第１のスコアを算出し、
前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて第２のスコアを算出し、
前記代表３次元座標算出部は、
前記候補３次元点それぞれに対応する、前記第１のスコアと前記第２のスコアとから算出された重みを用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、
前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数である
ことを特徴とする３次元座標算出装置。
【請求項１３】
請求項１から請求項７のいずれか一項に記載の３次元座標算出方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実空間を撮像するカメラによって入力されたフレーム画像列のうち、現時刻のフレーム画像において指定された対象画像領域を代表する３次元座標を算出する装置であって、入力されたフレーム画像列を用いて算出された特徴点の３次元点群のうち、対象画像領域で観測する３次元点群から代表３次元座標を算出する３次元座標算出装置、３次元座標算出方法、及びプログラムに関する。
【背景技術】
【０００２】
実空間を撮像するカメラによって入力されたフレーム画像から、実空間におけるカメラの位置及び姿勢を示すカメラポーズと、フレーム画像上の特徴点の３次元座標とを算出するカメラポーズ３Ｄ推定装置では、算出したカメラポーズを用いて、例えばフレーム画像上にコンピュータグラフィクス（Computer Graphics：ＣＧ）等を合成することを可能にしている。
カメラポーズ３Ｄ推定装置では、カメラポーズと実空間内の３次元点との初期値、及びフレーム画像を入力し、（１）実空間の３次元点がフレーム画像で観測された画像点を決定し、（２）３次元点の３次元座標と画像点の座標との組から非線形最小自乗法によってカメラポーズを算出し、（３）過去に亘った複数時刻のフレーム画像を用いて３次元点の３次元座標を更新する、（１）〜（３）の処理を時々刻々繰り返すことによって、正確にカメラポーズと３次元座標とを算出することを実現している。
【０００３】
このようなカメラポーズ３Ｄ推定装置で算出されるカメラポーズと３次元座標とは、カメラポーズがワールド座標系におけるカメラの位置及び向きとして表現され、３次元座標がワールド座標系における位置として表現される。カメラポーズ３Ｄ推定装置は、初期時刻において予め設定された座標系がワールド座標系として利用される。このため、例えばフレーム画像上の物体に対してＣＧ等を合成する場合には、ワールド座標系における物体の位置及び姿勢を示す物体座標系への剛体変換行列が必要となる。
剛体変換行列を算出する物体座標系変換装置として、例えば非特許文献１に記載されているものがある。非特許文献１に記載されている方法では、カメラポーズ３Ｄ推定装置において、フレーム画像上の物体に対してＣＧ等を合成する際に正確な合成を実現するために、ワールド座標系から物体座標系への剛体変換行列を算出している。
【０００４】
図１５は、物体座標系変換装置９の構成例を示す概略ブロック図である。同図に示すように、物体座標系変換装置９は、テンプレート画像記憶部９１と、カメラパラメータ記憶部９２と、ＣＧデータ記憶部９３と、カメラポーズ３Ｄ推定部９４と、テンプレート照合部９５と、３次元座標算出部９６と、平面算出部９７と、物体座標系変換行列算出部９８と、ＣＧ合成部９９とを具備している。
テンプレート画像記憶部９１には、ＣＧを合成したい平面物体のテンプレート画像が予め記憶されている。カメラパラメータ記憶部９２には、カメラの焦点距離等を示すカメラパラメータが予め記憶されている。ＣＧデータ記憶部９３には、フレーム画像に合成したいＣＧを表すＣＧデータが予め記憶されている。
【０００５】
カメラポーズ３Ｄ推定部９４は、カメラで撮像したある時刻ｔのフレーム画像Ｆ（ｔ）が順次入力され、フレーム画像Ｆ（ｔ）上の特徴点、例えば角や交点を追跡した結果に基づいて、時刻ｔにおける特徴点の３次元座標及びカメラポーズを推定する。カメラポーズ３Ｄ推定部９４が推定する３次元座標及びカメラポーズは、予め定められたワールド座標系を用いて表現される。
テンプレート照合部９５には、カメラポーズ３Ｄ推定部９４と同様に、フレーム画像Ｆ（ｔ）が順次入力される。テンプレート照合部９５は、テンプレート画像記憶部９１からテンプレート画像を読み出し、読み出したテンプレート画像と、入力されたフレーム画像Ｆ（ｔ）とに対してＳＩＦＴ（Scale-Invariant Feature Transform）等を用いて照合することにより、テンプレート内部の特徴点の位置をフレーム画像Ｆ（ｔ）上で推定する。
【０００６】
３次元座標算出部９６は、フレーム画像Ｆ（ｔ）に近接する時刻ｔ以前のフレーム画像に対するステレオ対応付けによって、テンプレート照合部９５が推定した特徴点の３次元座標を算出する。３次元座標算出部９６が算出する特徴点の３次元座標は、物体座標系を用いて表現される。
平面算出部９７は、３次元座標算出部９６が算出した特徴点の３次元座標に対して平面を当てはめ、当該平面を成す４点のワールド座標系における３次元座標と、物体座標系における３次元座標とを算出する。
【０００７】
物体座標系変換行列算出部９８は、平面算出部９７が算出した４点のワールド座標系における３次元座標と、物体座標系における３次元座標とから剛体変換行列を算出する。
ＣＧ合成部９９は、ＣＧデータ記憶部９３からＣＧデータを読み出し、物体座標系変換行列算出部９８が算出した剛体変換行列を用いて、読み出したＣＧデータをワールド座標系の情報に変換する。また、ＣＧ合成部９９は、カメラポーズ３Ｄ推定部９４が推定したカメラポーズを用いて、ワールド座標系に変換したＣＧデータをフレーム画像Ｆ（ｔ）に重畳合成し、重畳合成したフレーム画像Ｆ（ｔ）を出力する
【０００８】
物体座標系変換装置９は、順次入力されるフレーム画像Ｆ（ｔ）に対して、ＣＧ等をフレーム画像Ｆ（ｔ）に重畳合成する処理を時々刻々繰り返すことによって、フレーム画像Ｆ（ｔ）中の物体に対してＣＧ等を合成することを実現している。
【０００９】
このような物体座標系変換装置９において、フレーム画像Ｆ（ｔ）に近接する時刻ｔ以前のフレーム画像とのステレオ視の原理によって３次元座標を算出する場合、その基線長が短く奥行分解能が低いために、３次元座標の精度が悪いといった問題がある。これに対して、シーンを様々な位置及び方向から撮像した動画像を構成する複数のフレーム画像を使って特徴点の３次元座標を算出する方法がある。この方法を用いて得られる３次元座標は、ステレオ視の原理を用いて算出した３次元座標に比べ精度が高い。そこで、カメラポーズ３Ｄ推定部９４が算出した３次元座標から、テンプレート画像内の３次元座標を算出する方法が考えられる。
【００１０】
図１６は、テンプレート画像内の３次元座標の算出方法を示す概略図である。以下、テンプレート画像の対象画像領域を表現する一つの３次元座標を算出する方法について説明する。また、テンプレート画像の領域全体を表現する一つの３次元座標を代表３次元座標という。
図１６に示されているように、フレーム画像上のテンプレート画像の位置を対象画像領域とする。テンプレート照合部９５において、この対象画像領域の４隅の点と、カメラポーズ３Ｄ推定部９４が推定したカメラポーズのうちカメラの位置を示す投影中心位置とから、四角錐台を形成する。更に、カメラポーズ３Ｄ推定部９４が推定した特徴点の３次元点のうち、形成した四角錐台に属する３次元点を候補３次元点群とする。この候補３次元点群に含まれる特徴点の３次元座標の平均値を代表３次元座標として算出する。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】Robert O. Castle,David W. Murray,“Object Recognition and Localization while Tracking and Mapping,” International Symposium on Mixed and Augmented Reality, pp. 179-180,Oct. 2009.
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、カメラポーズ３Ｄ推定部９４が算出する３次元点の３次元座標には、画像の量子化誤差や対応付けの誤りによる誤差が含まれていることがある。この誤差に起因して、テンプレート画像内（対象画像領域）を代表する代表３次元座標は真値とずれてしまうことがあるという問題がある。
【００１３】
本発明は、上記問題を解決すべくなされたもので、フレーム画像上の対象画像領域を代表する代表３次元座標の精度を向上させることができる３次元座標算出装置、３次元座標算出方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記問題を解決するために、本発明は、フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出ステップと、前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出ステップとを有することを特徴とする３次元座標算出方法である。
【００１５】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記フレーム画像を撮像したカメラの位置から前記候補３次元点までの距離を前記スコアとして算出し、前記代表３次元座標算出ステップにおいて、前記候補３次元点のうち、全ての前記候補３次元点の前記スコアにおける中央値に対応する候補３次元点の３次元座標を前記代表３次元座標として出力することを特徴とする。
【００１６】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから前記スコアを算出し、前記代表３次元座標算出ステップにおいて、前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数であることを特徴とする。
【００１７】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記候補３次元点ごとに、該候補３次元点の被観測回数の予め定めた定数に対する比をべき乗した値を前記スコアとして算出し、前記代表３次元座標算出ステップにおいて、前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数であることを特徴とする。
【００１８】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、
前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて前記スコアを算出し、前記代表３次元座標算出ステップにおいて、前記候補３次元点それぞれに対応する前記スコアを重みとして用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力することを特徴とする。
【００１９】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記テンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像とのサイズが同じであることを特徴とする。
【００２０】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記過去のフレーム画像を撮像した際のカメラポーズと、前記代表３次元座標を算出する対象のフレーム画像を撮像した際のカメラポーズとに基づいて、前記テンプレート画像を前記代表３次元座標を算出する対象のフレーム画像に投影した領域を算出し、算出した領域の画像と前記テンプレート画像との類似度を前記スコアとして算出することを特徴とする。
【００２１】
また、本発明は、上記に記載の発明において、前記スコア算出ステップにおいて、前記候補３次元点ごとに、該候補３次元点の被観測回数と、全ての前記候補３次元点の被観測回数のうち最大の被観測回数とから第１のスコアを算出し、前記候補３次元点ごとに、過去のフレーム画像における候補３次元点を含む画像であるテンプレート画像と、前記代表３次元座標を算出する対象のフレーム画像における候補３次元点を含む領域内の画像との類似度に基づいて第２のスコアを算出し、前記候補３次元点それぞれに対応する、前記第１のスコアと前記第２のスコアとから算出された重みを用いることにより、前記候補３次元点の３次元座標の加重平均を算出し、算出した加重平均を前記代表３次元座標として出力し、前記被観測回数は、それぞれ異なる時刻に撮像された複数の前記フレーム画像において各フレーム画像の前記対象画像領域内で前記候補３次元点が観測された回数であることを特徴とする。
【００２２】
また、本発明は、フレーム画像に撮像されている物体を含む対象画像領域内の前記物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部と、前記候補３次元点の３次元座標と、該３次元座標に対する前記スコアとに対する統計処理を用いて前記対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部とを備えることを特徴とする３次元座標算出装置である。
【００２３】
また、本発明は、上記に記載の３次元座標算出方法をコンピュータに実行させるためのプログラムである。
【発明の効果】
【００２４】
この発明によれば、各候補３次元点の３次元座標に基づいてスコアを算出し、算出したスコアに対する統計処理の結果に基づいて代表３次元座標を算出することにより、３次元座標の外れ値の影響を低減して代表３次元座標を得ることができ、フレーム画像上の対象画像領域を代表する代表３次元座標を算出する精度を向上させることができる。
【図面の簡単な説明】
【００２５】
【図１】本明細書における座標系及び用語を説明するための図である。
【図２】第１実施形態における３次元座標算出装置１の構成を示す概略ブロック図である。
【図３】同実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
【図４】同実施形態における代表３次元座標を算出する処理のフローチャートである。
【図５】同実施形態における被観測回数を説明するための図である。
【図６】第２実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
【図７】同実施形態における代表３次元座標を算出する処理のフローチャートである。
【図８】第３実施形態における３次元点生成テンプレート画像を説明するための図である。
【図９】同実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
【図１０】同実施形態における３次元点生成テンプレート領域を説明するための図である。
【図１１】第４実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
【図１２】同実施形態における３次元点生成テンプレート射影領域を説明するための第１の図である。
【図１３】同実施形態における３次元点生成テンプレート射影領域を説明するための第２の図である。
【図１４】第５実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
【図１５】物体座標系変換装置９の構成例を示す概略ブロック図である。
【図１６】テンプレート画像内の３次元座標の算出方法を示す概略図である。
【発明を実施するための形態】
【００２６】
以下、図面を参照して、本発明の実施形態における３次元座標算出装置、３次元座標算出方法、及びプログラムを説明する。
【００２７】
まず、実施形態において用いる座標系及び用語について説明する。
図１は、本明細書における座標系及び用語を説明するための図である。同図に示すように、ワールド座標系は空間全体を表し予め定められた座標系である。３次元点の３次元座標はワールド座標系における３次元点の位置を示す３次元座標である。カメラポーズはワールド座標系におけるカメラ位置の並進と回転とを表す。
【００２８】
（第１実施形態）
図２は、第１実施形態における３次元座標算出装置１の構成を示す概略ブロック図である。同図に示すように、３次元座標算出装置１は、情報入力部１１と、候補３次元点記憶部１２と、スコア算出部１３と、代表３次元座標算出部１４とを具備している。
情報入力部１１には、処理対象のフレーム画像における候補３次元点群に含まれる各候補３次元点の３次元座標を示す候補３次元点群情報と、当該フレーム画像を撮像したカメラポーズとが入力される。候補３次元点群とは、図１６において示した、処理対象のフレーム画像における対象画像領域を示す４隅の点と、当該フレーム画像を撮像したカメラの投影中心位置とから構成される四角錐台に含まれる３次元点の集合である。
【００２９】
候補３次元点記憶部１２は、情報入力部１１に入力された候補３次元点群情報に含まれる各３次元座標にスコア（特徴量）を対応付けて記憶する。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている各候補３次元点の３次元座標を読み出し、読み出した３次元座標と、情報入力部１１に入力されたカメラポーズとに基づいて、候補３次元点に対するスコアを算出する。スコア算出部１３は、算出したスコアを、当該スコアに対応する３次元座標に対応付けて候補３次元点記憶部１２に記憶させる。
代表３次元座標算出部１４は、候補３次元点記憶部１２に記憶されている３次元座標及びスコアに基づいて、対象画像領域を代表する代表３次元座標を算出し、算出した代表３次元座標を出力する。
【００３０】
図３は、本実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
候補３次元点群情報及びカメラポーズが情報入力部１１に入力され、候補３次元点群情報に含まれる各３次元座標が候補３次元点記憶部１２に記憶されると、スコア算出部１３が起動される（ステップＳ１１）。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている全ての３次元座標に対して、カメラポーズに含まれるカメラ位置（投影中心位置）からの距離ｄを算出する（ステップＳ１２）。
スコア算出部１３は、算出した距離ｄをスコアとし、スコアと３次元座標とを対応付けて候補３次元点記憶部１２に記憶させる（ステップＳ１３）。
【００３１】
ステップＳ１２における距離ｄの算出は、ワールド座標系において、第ｉ番目の候補３次元点の３次元座標を（Ｘｉ，Ｙｉ，Ｚｉ）とし、投影中心位置の３次元座標を（Ｃｘ，Ｃｙ，Ｃｚ）としたとき、次式（１）を用いて算出される。
【００３２】
【数１】
0005748355.tif 000002
【００３３】
図４は、本実施形態における代表３次元座標を算出する処理のフローチャートである。
スコア算出部１３が全ての３次元点の３次元座標に対してスコアを算出し終えると、代表３次元座標算出部１４が起動される。
代表３次元座標算出部１４は、候補３次元点記憶部１２から全ての３次元座標と、当該３次元座標に対応付けられたスコアとを読み出す（ステップＳ１６）。
代表３次元座標算出部１４は、読み出したスコアのうち中央値に対応するスコアを検出し、検出したスコアに対応する３次元座標を代表３次元座標として出力し（ステップＳ１７）、処理を終える。
【００３４】
ステップＳ１６において、代表３次元座標算出部１４は、例えば候補３次元点群に含まれる候補３次元点の数がＮの場合、読み出した全てのスコアを昇順又は降順にソートし、ソートしたスコアの列において（Ｎ／２）番目のスコアに対応する３次元座標を選択することにより中央値を検出する。
【００３５】
上述のように、本実施形態における３次元座標算出装置１は、カメラの投影中心位置から各候補３次元点までの距離をスコアとし、全てのスコアの中央値に対応する３次元座標を代表３次元座標としている。
ところで、平均値は、測定誤差などによって発生する外れ値（他の値と著しく異なる値）に影響され、真値から大きくずれることや無意味な値になることがある。対して、中央値は外れ値に影響されにくく、真値に近い値を得ることができる。
このように、３次元座標算出装置１は、中央値を用いて代表３次元座標を算出することにより、候補３次元点群の各３次元座標に含まれる誤差の影響を低減し、代表３次元座標を算出する精度を向上させることができる。
【００３６】
（第２実施形態）
第２実施形態における３次元座標算出装置は、スコア算出部１３と代表３次元座標算出部１４とにおける処理が第１実施形態と異なる。そこで、図２に示した構成を用いて各部の処理を説明する。なお、本実施形態においては、情報入力部１１には、候補３次元点群情報及びカメラポーズに替えて、候補３次元点群情報と各候補３次元点に対応付けられた被観測回数が入力される。
【００３７】
ここで、被観測回数について説明する。図５は本実施形態における被観測回数を説明するための図である。
被観測回数は、３次元点ごとに算出される値で０以上の整数であり、初期時刻において全ての候補３次元点に対して０が設定される。被観測回数は、処理対象のフレーム画像Ｆ（ｔ）における対象画像領域を示す４隅の点と、当該フレーム画像を撮像したカメラの投影中心位置とから構成される四角錐台に含まれる場合に「１」増加する。
例えば、図５に示すように、時刻（ｔ−１）、時刻ｔに亘って被観測回数を計数すると、時刻（ｔ−１）と時刻ｔとの両方の四角錐台に含まれる３次元点の被観測回数は「２」となる。また、時刻ｔの四角錐台のみに含まれる３次元点の観測回数は「１」となる。時刻（ｔ−１）と時刻ｔとの両方の四角錐台に含まれない３次元点の被観測回数は「０」となる。
すなわち、被観測回数は、各３次元点に対して、それぞれ異なる時刻に撮像された複数のフレーム画像において、各フレーム画像上の対象画像領域内で３次元点が観測（検出）された回数である。
【００３８】
図６は、第２実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
候補３次元点群情報及び各候補３次元点に対応付けられた被観測回数が情報入力部１１に入力され、候補３次元点群情報に含まれる各３次元座標と被観測回数とが対応付けられて候補３次元点記憶部１２に記憶されると、スコア算出部１３が起動される（ステップＳ２１）。ここで入力される被観測回数は、フレーム画像に対する処理を開始した初期時刻から全てのフレーム画像に亘って計数された値である。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている全ての３次元座標それぞれに対して、スコアとしての重み値ｗを算出し（ステップＳ２２）、算出した重み値ｗを３次元座標に対応付けて候補３次元点記憶部１２に記憶させる（ステップＳ２３）。
【００３９】
ステップＳ２２における重み値ｗの算出は、次式（２−１）又は次式（２−２）を用いて算出する。
【００４０】
【数２】
0005748355.tif 000003
【００４１】
式（２−１）及び式（２−２）において、ｃｎｔは被観測回数を示す。また、式（２−１）において、ｃｎｔｍａｘは候補３次元点記憶部１２に記憶されている被観測回数のうち最大の被観測回数を示す。また、式（２−２）において、Ｃは予め定められた定数を示し、０以外の任意の数である。
【００４２】
式（２−１）に示した関数は、被観測回数０から最大観測回数ｃｎｔｍａｘまでの定義域で０から１までの値を取る。また、式（２−１）に示した関数は、被観測回数ｃｎｔが最大観測回数と一致する場合に重み値ｗを１として出力し、被観測回数ｃｎｔが０である場合に重み値ｗを０として出力する。
ただし、式（２−１）に示した関数では、各候補３次元点の重み値ｗを算出する際に、入力されている候補３次元点の被観測回数から最大観測回数ｃｎｔｍａｘを事前に特定しておく必要があり、計算処理量が増加する。
【００４３】
計算処理量の増加を回避するため、式（２−２）に示した関数では、重み値ｗを被観測回数ｃｎｔの自乗で算出し、被観測回数ｃｎｔの値が大きいほど大きな重みを与える。式（２−２）に示した関数を利用することにより、各候補３次元点の重み値ｗを算出する際に、最大観測回数ｃｎｔｍａｘを事前に特定しておく必要がなくなり、重み値ｗを算出するときの計算処理量を低減することができる。
【００４４】
図７は、本実施形態における代表３次元座標を算出する処理のフローチャートである。
スコア算出部１３が全ての３次元点の３次元座標に対してスコアを算出し終えると、代表３次元座標算出部１４が起動される。
代表３次元座標算出部１４は、候補３次元点記憶部１２から全ての３次元座標と、当該３次元座標に対応付けられたスコアとを読み出す（ステップＳ２６）。
代表３次元座標算出部１４は、読み出した３次元座標とスコアとから加重平均により代表３次元座標（Ｘ，Ｙ，Ｚ）を算出し、代表３次元座標（Ｘ，Ｙ，Ｚ）を出力して（ステップＳ２７）、処理を終える。
【００４５】
ステップＳ２７における代表３次元座標（Ｘ，Ｙ，Ｚ）は、次式（３）を用いて算出する。
【００４６】
【数３】
0005748355.tif 000004
【００４７】
式（３）において、Ｎは候補３次元点の総数であり、（Ｘｉ，Ｙｉ，Ｚｉ）は第ｉ番目の候補３次元点の３次元座標であり、Ｗｉは第ｉ番目の候補３次元点に対する重み値ｗである。
【００４８】
上述の第１実施形態において説明した代表３次元座標を算出する方法では、測定誤差を有する候補３次元点が少ない場合には、正確な代表３次元座標を算出することが可能であるが、測定誤差を有する候補３次元点が真値に近い３次元座標を有する候補３次元点より多い場合、スコアの分布が測定誤差を有する候補３次元点へと偏ることによって中央値が真値からずれ、代表３次元座標の精度が低下することがある。
これに対し、本実施形態において説明した方法では、真値に近い３次元座標を有する３次元点が図５に示したように複数時刻に跨るフレーム画像列において観測される回数が増加することを利用し、被観測回数に基づいたスコアを算出し、算出したスコアを用いて代表３次元座標を算出することで、測定誤差を有する候補３次元点が多いときでも、代表３次元座標を算出する精度を向上させることができる。
【００４９】
このように、３次元座標算出装置１は、フレーム画像に撮像されている物体を含む対象画像領域内の物体の特徴点である複数の候補３次元点の３次元座標から、各候補３次元点に対するスコアを算出するスコア算出部１３と、候補３次元点の３次元座標と該３次元座標に対するスコアとに対して、中央値の検出や加重平均などの統計処理を用いて、対象画像領域を代表する点の３次元座標である代表３次元座標を算出する代表３次元座標算出部１４とを備えている。
これにより、各候補３次元点の３次元座標に基づいてスコアを算出し、算出したスコアに対する統計処理の結果に基づいて代表３次元座標を算出することにより、３次元座標の外れ値の影響を低減して代表３次元座標を得ることができ、フレーム画像上の対象画像領域を代表する代表３次元座標を算出する精度を向上させることができる。
また、例えば３次元座標算出装置１を物体座標系変換装置９に適用することにより、コンピュータグラフィクス等を合成させる対象物体のワールド座標系における３次元座標を算出する精度を向上させることができ、フレーム画像上の物体に対してコンピュータグラフィクス等を精度良く合成することができる。
【００５０】
（第３実施形態）
第３実施形態における３次元座標算出装置は、スコア算出部１３における処理が第１実施形態及び第２実施形態と異なる。そこで、図２に示した構成を用いて各部の処理を説明する。なお、本実施形態においては、情報入力部１１には、候補３次元点群情報及びカメラポーズに替えて、候補３次元点群情報と当該候補３次元点群情報が示す各候補３次元点に対応付けられた３次元点生成テンプレート画像とが候補３次元点数分入力される。
【００５１】
ここで、３次元点生成テンプレート画像について説明する。図８は第３実施形態における３次元点生成テンプレート画像を説明するための図である。
３次元点生成テンプレート画像は、候補３次元点ごとに設定される画像であり、０以上のサイズを有する。３次元点生成テンプレート画像は、時刻（ｔ−Ｎ）の撮像画像であるフレーム画像Ｆ（ｔ−Ｎ）における特徴点の三次元座標が算出されたときに、当該特徴点近傍の小領域から構成される０以上のサイズの画像を抽出したものである。例えば、図８に示すように、時刻（ｔ−Ｎ）で対象特徴点の３次元点の三次元座標を算出する際に、フレーム画像Ｆ（ｔ−Ｎ）上の対象特徴点近傍の小領域である３次元点生成テンプレート画像が生成される。この小領域、すなわち３次元点生成テンプレート画像のサイズは、予め定められたサイズが用いられる。
【００５２】
図９は、本実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
候補３次元点群情報及び各候補３次元点に対応付けられた３次元点生成テンプレート画像が情報入力部１１に入力され、候補３次元点群情報に含まれる各３次元座標と３次元点生成テンプレート画像とが対応付けられて候補３次元点記憶部１２に記憶されると、スコア算出部１３が起動される（ステップＳ３１）。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている全ての３次元座標それぞれに対して、スコアとしての重み値ｗを算出し（ステップＳ３２）、算出した重み値ｗを３次元座標に対応付けて候補３次元点記憶部１２に記憶させる（ステップＳ３３）。
【００５３】
ステップＳ３２における重み値ｗの算出は、対象画像領域に対するテンプレートマッチング処理により行われる。すなわち、フレーム画像Ｆ（ｔ−Ｎ）の３次元点生成テンプレート画像と、フレーム画像Ｆ（ｔ）の対象画像領域内の３次元点生成テンプレート領域との各画像データを比較することで重み値ｗを算出する。
【００５４】
スコア算出部１２３は、テンプレートマッチング処理において算出される評価値から重み値ｗを算出する。評価値は適用するテンプレートマッチング処理に応じて異なる。そこで、２つの画像の類似度が高いときに評価値が小さくなる場合には、評価値の逆数を重み値ｗにする。逆に、２つの画像の類似度が高いときに評価値が大きくなる場合には、評価値を重み値ｗにする。
【００５５】
テンプレートマッチング処理における評価値としては、例えば、輝度差の二乗和(Sum of Squared Difference：ＳＳＤ)、輝度差の総和(Sum of Absolute Difference：ＳＡＤ)、正規化相互相関（Normalized Cross-Correlation：ＮＮＣ）、正規化相互相関（Zero-mean Normalized Cross-Correlation：ＺＮＣＣ）など複数有るがどれを用いてもよいものとする。
【００５６】
ここで、３次元点生成テンプレート領域について説明する。図１０は本実施形態における３次元点生成テンプレート領域を説明するための図である。
３次元点生成テンプレート領域は、候補３次元点の一つである対象３次元点のフレーム画像Ｆ（ｔ）への射影点である３次元点射影座標近傍に、当該対象３次元点の３次元点生成テンプレート画像の縦横サイズに合致する長方形領域である。
ここで対象３次元点（Ｘ，Ｙ，Ｚ）の３次元点射影座標（ｘ，ｙ）は次式（４）によって算出できる。
【００５７】
【数４】
0005748355.tif 000005
【００５８】
式（４）における記号「〜」は、その両辺が定数倍の違いを許して等しいことを表している。なお、式１において、行列Ｍは時刻（ｔ）においてフレーム画像Ｆ（ｔ）を撮像したカメラのカメラポーズを示し次式（５）で表現される。
【００５９】
【数５】
0005748355.tif 000006
【００６０】
式（５）で表現されるように、カメラポーズを示す行列Ｍは、回転行列Ｒと並進ベクトルＴとからなる。回転行列Ｒは３行３列（３×３）の行列であり、並進ベクトルＴは３行１列（３×１）のベクトルである。また、式（４）における行列Ａは、カメラパラメータに基づいて定められる３行３列の行列である。行列Ａは次式（６）で表現される。なお、ｆはカメラの焦点距離であり、δｕとδｖとはカメラの撮像素子における横方向と縦方向との画素の物理的な間隔、ＣｕとＣｖとは画像中心である。
【００６１】
【数６】
0005748355.tif 000007
【００６２】
このように、本実施形態では、各候補３次元点に対応する画像であって過去のフレーム画像Ｆ（ｔ−Ｎ）から抽出した３次元点生成テンプレート画像と、代表３次元座標を算出する対象のフレーム画像Ｆ（ｔ）における対象画像領域内の３次元点生成テンプレート領域の画像との類似度に基づいてスコア（重み値ｗ）を算出する。そして、スコア（重み値ｗ）を用いて候補３次元点の３次元座標の加重平均を代表３次元座標として算出する。すなわち、代表３次元座標を算出する処理は第２実施形態の処理（図７）と同じである。時刻（ｔ−Ｎ）から時刻（ｔ−１）までのＮ個の候補３次元点と、各候補３次元点の重み値ｗとから代表３次元座標を算出する。
【００６３】
上述の第２実施形態において説明したスコアを算出する方法では、測定誤差を有する候補３次元点が真値に近い３次元座標を有する候補３次元点より多い場合でも正確に代表３次元座標を算出することが可能であるが、初回起動時刻と時刻（ｔ）の間隔が短くて全候補３次元点の被観測回数の値もしくはその差が小さい場合、代表３次元座標の精度が低下することがある。
これに対し、本実施形態において説明した方法では、３次元点とその近傍の色や輝度値は、複数時刻に跨るフレーム画像列において同様の画像として観測されることを利用し、３次元点生成テンプレート画像に基づいたスコアを算出し、算出したスコアを用いて代表３次元座標を算出することで、初回起動時刻と時刻（ｔ）の間隔が短いときでも、代表３次元座標を算出する精度を向上させることができる。
【００６４】
（第４実施形態）
第４実施形態における３次元座標算出装置は、スコア算出部１３における処理が第１実施形態及び第２実施形態及び第３実施形態と異なる。特に第３実施形態のスコア算出部１３がテンプレートマッチング処理に対象画像領域内の長方形の３次元点生成テンプレート領域を用いるのに対し、本実施形態では３次元点生成テンプレートを幾何変換させた３次元点生成テンプレート射影領域を用いるところが異なる。図２に示した構成を用いて各部の処理を説明する。なお、本実施形態においては、情報入力部１１には、候補３次元点群情報及びカメラポーズに替えて、候補３次元点群情報とカメラポーズと各候補３次元点に対応付けられた候補３次元点数分の３次元点生成テンプレート画像とが入力される。
【００６５】
図１１は、第４実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
候補３次元点群情報とカメラポーズと各候補３次元点に対応付けられた３次元点生成テンプレート画像が情報入力部１１に入力され、候補３次元点群情報に含まれる各候補３次元点と３次元点生成テンプレート画像とカメラポーズとが対応付けられて候補３次元点記憶部１２に記憶されると、スコア算出部１３が起動される（ステップＳ４１）。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている全ての３次元座標それぞれに対して、スコアとしての重み値ｗを算出し（ステップＳ４２）、算出した重み値ｗを３次元座標に対応付けて候補３次元点記憶部１２に記憶させる（ステップＳ４３）。
【００６６】
ステップＳ４２における重み値ｗの算出は、対象画像領域に対するテンプレートマッチング処理により行われる。すなわち、３次元点生成テンプレート画像と、フレーム画像Ｆ（ｔ）の対象画像領域内の３次元点生成テンプレート射影領域との各画像データを比較することで重み値ｗを算出する。
ここで、３次元点生成テンプレート射影領域について説明する。図１２及び図１３は本実施形態における３次元点生成テンプレート射影領域を説明するための図である。
【００６７】
図１２及び図１３における３次元点生成テンプレート射影領域は、図１０において示したフレーム画像Ｆ（ｔ−Ｎ）における３次元点生成テンプレート画像を、対象３次元点を時刻（ｔ−Ｎ）のカメラポーズの光軸に直交し対象３次元点を通る平面、すなわち画像投影面に平行で対象３次元点を通る平面に逆投影し、その逆投影された領域が時刻（ｔ）のカメラポーズで撮影されたフレーム画像Ｆ（ｔ）上で観測される四角形の領域である。
【００６８】
３次元点生成テンプレート射影領域を算出する具体的な処理を以下説明する。
まず、３次元点生成テンプレート画像領域を幾何的に歪ませるワーピング行列ＷＰａ、ＷＰｈを次式（７−１）、次式（７−２）によって算出する。
【００６９】
【数７】
0005748355.tif 000008
【００７０】
式（７−１）において、１行１列の要素はフレーム画像Ｆ（ｔ−Ｎ）における画像座標（ｘ，ｙ）の点がｘ軸方向に微小変動した場合の同一の点のフレーム画像Ｆ（ｔ）におけるｘ軸方向の変動量を示す。
また、２行１列の要素は、フレーム画像Ｆ（ｔ−Ｎ）における画像座標（ｘ，ｙ）の点がｘ軸方向に微小変動した場合の同一の点のフレーム画像Ｆ（ｔ）におけるｙ軸方向の変動量を示す。１行２列の要素は、フレーム画像Ｆ（ｔ−Ｎ）における画像座標（ｘ，ｙ）の点がｙ軸方向に微小変動した場合の同一の点のフレーム画像Ｆ（ｔ）におけるｘ軸方向の変動量を示す。２行２列の要素は、フレーム画像Ｆ（ｔ−Ｎ）における画像座標（ｘ，ｙ）の点がｙ軸方向に微小変動した場合の同一の点のフレーム画像Ｆ（ｔ）におけるｙ軸方向の変動量を示す。
【００７１】
式（７−２）において、行列Ａｔ−Ｎと行列Ａｔとは時刻（ｔ−Ｎ）、時刻（ｔ）それぞれにおけるカメラの内部パラメータ（式（６））を示し、行列Ｒは時刻（ｔ−Ｎ）のカメラポーズに対する時刻（ｔ）のカメラポーズの回転行列と並進ベクトルとを示す。ベクトルＴｎは時刻（ｔ−Ｎ）の画像投影面に平行で対象３次元点を通る平面の単位法線ベクトルを示し、Ｚは時刻（ｔ）のカメラポーズから対象３次元点までの奥行きを示す。
【００７２】
式（７−１）で定義される２行２列（２×２）の行列ＷＰａは図１２に示すようなアフィン変換を実施する。式（７−２）で定義される３行３列（３×３）の行列ＷＰｈは図１３に示すような平面射影変換を実施する。
【００７３】
式（７−１）を用いて３次元点生成テンプレート射影領域を作成する場合、３次元点生成テンプレート射影領域における各画素（ｕ，ｖ）の画素値は、行列ＷＰａを使って式（８−１）で画素（ｕ，ｖ）に対応する３次元テンプレート画像上の画素（ｘ，ｙ）を算出し、その画素値を参照することで決定できる。
また、式（７−２）を用いて３次元点生成テンプレート射影領域を作成する場合、３次元点生成テンプレート射影領域における各画素（ｕ，ｖ）の画素値は、行列ＷＰｈを使って式（８−２）で画素（ｕ，ｖ）に対応する３次元テンプレート画像上の画素（ｘ，ｙ）を算出し、その画素値を参照することで決定できる。
【００７４】
【数８】
0005748355.tif 000009
【００７５】
このように、本実施形態では、フレーム画像Ｆ（ｔ−Ｎ）に対応するカメラポーズと、フレーム画像Ｆ（ｔ）に対応するカメラポーズとから、３次元点生成テンプレート画像が示す領域をフレーム画像Ｆ（ｔ）に射影した３次元点生成テンプレート射影領域を算出する。そして、３次元点生成テンプレート射影領域の画像と、３次元点生成テンプレート画像とのテンプレートマッチング処理で算出される評価値から重み値ｗを候補３次元点ごとに算出する。そして、第２の実施形態の代表３次元座標を算出する処理と同様に、算出した重み値ｗを用いて代表３次元座標を算出する。
【００７６】
上述の第３実施形態において説明したスコアを算出する方法では、初回起動時刻と時刻（ｔ）の間隔が短いときでも、代表３次元座標を算出する精度を向上させることが可能であるが、時刻（ｔ−Ｎ）で観測された３次元点生成テンプレート画像が時刻（ｔ）において異なるカメラポーズから観測した場合に生じる幾何歪みを考慮しておらず、このことに起因してスコアに誤差が含まれ、その結果、代表３次元座標の精度が低下することがある。
【００７７】
これに対し、本実施形態において説明した方法では、時刻（ｔ−Ｎ）と時刻（ｔ）とのカメラポーズを用いてワーピング行列を算出する。ワーピング行列を用いて、時刻（ｔ）のフレーム画像Ｆ（ｔ）における３次元点生成テンプレート画像の幾何歪みを再現した３次元点生成テンプレート射影領域を生成する。そして、３次元点生成テンプレート射影領域に対するテンプレートマッチング処理で算出するスコアを用いることにより、代表３次元座標を算出する精度を向上させることができる。
【００７８】
（第５実施形態）
第５実施形態における３次元座標算出装置は、スコア算出部１３における処理が第１実施形態、第２実施形態、第３実施形態、及び第４実施形態と異なる。図２に示した構成を用いて各部の処理を説明する。なお、本実施形態においては、情報入力部１１には、候補３次元点群情報及びカメラポーズに替えて、候補３次元点群情報と、カメラポーズと、候補３次元点群情報が示す候補３次元点それぞれに対応する３次元点生成テンプレート画像及び被観測回数とが入力される。
【００７９】
図１４は、第５実施形態における候補３次元点に対するスコアを算出する処理のフローチャートである。
本実施形態ではまず、被観測回数が関連付けられた候補３次元点群及びカメラポーズと各候補３次元点に対応付けられた３次元点生成テンプレート画像とが入力される。
候補３次元点群情報及びカメラポーズと、各候補３次元点に対応付けられた３次元点生成テンプレート画像及び被観測回数とが情報入力部１１に入力され、候補３次元点群情報に含まれる各３次元座標と、３次元点生成テンプレート画像及び被観測回数とが対応付けられて候補３次元点記憶部１２に記憶されると、スコア算出部１３が起動される（ステップＳ５１）。
スコア算出部１３は、候補３次元点記憶部１２に記憶されている全ての３次元座標それぞれに対して、スコアとしての重み値ｗを算出し（ステップＳ５２）、算出した重み値ｗを３次元座標に対応付けて候補３次元点記憶部１２に記憶させる（ステップＳ５３）。
【００８０】
ステップＳ５２における重み値ｗの算出は、次式（９−１）又は次式（９−２）を用いて算出する。
【００８１】
【数９】
0005748355.tif 000010
【００８２】
式（９−１）及び式（９−２）において、ｗｖは第２実施形態で説明した式（２−１）又は式（２−２）で算出される重み値（第１のスコア）であり、ｗｔは第３実施形態又は第４実施形態で説明した重み値（第２のスコア）である。また式（９−２）において、αは０より大きい実数であり、ｗｖに対するｗｔの重みを与える所定の値である。すなわち、本実施形態における重み値ｗは、第２実施形態における重み値と、第３実施形態又は第４実施形態における重み値とを組み合わせて算出する。
【００８３】
上述の第２から第４実施形態において説明した代表３次元座標を算出する方法では、候補３次元点の被観測回数もしくは３次元点生成テンプレート画像とフレームＦ（ｔ）の類似性の何れかのみで重み値ｗを決定するため、初回起動時刻と時刻（ｔ）の間隔が短くて全候補３次元点の被観測回数の値もしくはその差が小さい場合や、３次元点生成テンプレート画像とフレームＦ（ｔ）がたまたま類似した場合にスコアの分布が測定誤差を有する候補３次元点へと偏ることによって中央値が真値からずれ、代表３次元座標の精度が低下することがある。
【００８４】
これに対し、本実施形態において説明した方法では、被観測回数に基づいた重み値と、３次元点生成テンプレート画像とフレームＦ（ｔ）の類似性から算出する重み値の両者からスコアを算出し、算出したスコアを用いて代表３次元座標を算出することで、初回起動時刻と時刻（ｔ）の間隔が短くて全候補３次元点の被観測回数の値もしくはその差が小さい場合や、３次元点生成テンプレート画像とフレームＦ（ｔ）がたまたま類似した場合においても、代表３次元座標を算出する精度を向上させることができる。
【００８５】
以上、本発明を実施形態の例に基づき具体的に説明したが、上述の実施形態の説明は、本発明を説明するためのものであって、特許請求の範囲に記載の発明を限定しあるいは範囲を減縮するように解すべきではない。また、本発明の各手段構成は上述の実施形態に限らず、特許請求の範囲に記載の技術的範囲内で種々の変形が可能であることは勿論である。
例えば、第１実施形態において、距離ｄをスコアとする構成を説明したが、距離ｄの自乗（ｄ２）をスコアとしてもよい。
また、第２実施形態において、式（２−２）に示した候補３次元点の被観測回数の定数Ｃに対する比を自乗した値を重み値ｗとする構成を説明したが、３乗した値や４乗した値などの、べき乗した値であってもよい。
【００８６】
なお、本発明における３次元座標算出装置１の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、各候補３次元点に対するスコアを算出する処理、及び代表３次元座標を算出する処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００８７】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００８８】
１…３次元座標算出装置
９…物体座標系変換装置
１１…情報入力部
１２…候補３次元点記憶部
１３…スコア算出部
１４…代表３次元座標算出部
９１…テンプレート画像記憶部
９２…カメラパラメータ記憶部
９３…ＣＧデータ記憶部
９４…カメラポーズ３Ｄ推定部
９５…テンプレート照合部
９６…３次元座標算出部
９７…平面算出部
９８…物体座標系変換行列算出部
９９…ＣＧ合成部
【図１】
0005748355.tif 000011
【図２】
0005748355.tif 000012
【図３】
0005748355.tif 000013
【図４】
0005748355.tif 000014
【図５】
0005748355.tif 000015
【図６】
0005748355.tif 000016
【図７】
0005748355.tif 000017
【図８】
0005748355.tif 000018
【図９】
0005748355.tif 000019
【図１１】
0005748355.tif 000020
【図１２】
0005748355.tif 000021
【図１３】
0005748355.tif 000022
【図１４】
0005748355.tif 000023
【図１５】
0005748355.tif 000024
【図１６】
0005748355.tif 000025
【図１０】
0005748355.tif 000026