(57)【特許請求の範囲】
【請求項１】
対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部と、
前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合部と、
過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定部と、
前記２次元テンプレート照合部が検出した照合位置と、前記カメラポーズ・３次元座標推定部が算出したカメラポーズ、及び前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換部と
を具備し、
前記座標系変換部は、
前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出部と、
前記３次元座標抽出部が算出した３次元座標で示される点が属する基準平面を算出する基準平面算出部と、
前記基準平面算出部が算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出部が算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換部と
を備える
ことを特徴とする物体座標系変換装置。
【請求項２】
対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部を備える物体座標系変換装置が行う物体座標系変換方法であって、
前記物体座標系変換装置が、前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合ステップと、
前記物体座標系変換装置が、過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定ステップと、
前記物体座標系変換装置が、前記２次元テンプレート照合ステップにおいて検出した照合位置と、前記カメラポーズ・３次元座標推定ステップにおいて算出したカメラポーズ、及び前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換ステップと
を有し、
前記座標系変換ステップには、
前記物体座標系変換装置が、前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出ステップと、
前記物体座標系変換装置が、前記３次元座標抽出ステップで算出した３次元座標で示される点が属する基準平面を算出する基準平面算出ステップと、
前記物体座標系変換装置が、前記基準平面算出ステップで算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出ステップで算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換ステップと、
が含まれる
ことを特徴とする物体座標系変換方法。
【請求項３】
対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部を備える物体座標系変換装置が有するコンピュータに、
前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合ステップと、
過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定ステップと、
前記２次元テンプレート照合ステップにおいて検出した照合位置と、前記カメラポーズ・３次元座標推定ステップにおいて算出した前記ワールド座標系における撮像装置の位置及び向き、並びに前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換ステップと
を実行させ、
前記座標系変換ステップにおいて、
前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出ステップと、
前記３次元座標抽出ステップで算出した３次元座標で示される点が属する基準平面を算出する基準平面算出ステップと、
前記基準平面算出ステップで算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出ステップで算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換ステップと、
を実行させる
ための物体座標系変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実空間に属する物体を含むシーンを撮像するカメラによって入力されたフレーム画像列から算出される実空間におけるカメラの位置及び姿勢を示すカメラポーズと、フレーム画像内の特徴点の３次元座標とを、物体を基準にした物体座標系に変換する物体座標系変換装置、物体座標系変換方法、及び物体座標系変換プログラムに関する。
【背景技術】
【０００２】
実空間を撮像するカメラによって入力されたフレーム画像から、実空間におけるカメラの位置及び姿勢を示すカメラポーズと、フレーム画像内の特徴点の３次元座標を算出するカメラポーズ・３Ｄ推定装置では、算出したカメラポーズを用いて、例えばフレーム画像中にコンピュータグラフィクス等を合成することを可能にしている。
このようなカメラポーズ・３Ｄ推定装置では、例えば、非特許文献１に記載の方法が用いられている。具体的には、カメラポーズ、実空間内における特徴点の３次元座標の初期値、及びフレーム画像を入力し、（１）フレーム画像における特徴点に対応する画像点を決定、（２）特徴点の３次元座標と画像点の座標との組から非線形最小自乗法によってカメラポーズの算出、（３）過去に亘った複数時刻のフレーム画像を用いて特徴点の３次元座標を更新する処理を時々刻々繰り返すことによって正確にカメラポーズと３次元座標とを算出することを実現している。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】"Parallel Tracking and Mapping for Small AR Workspaces", Georg Klein and David Murray, In Proc. International Symposium on Mixed and Augmented Reality (ISMAR'07, Nara), pp.225-234, 2007
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前述のような、カメラポーズ・３Ｄ推定装置で算出されるカメラポーズと３次元座標とは、カメラポーズがワールド座標系から見たカメラの位置及び向きとして表現され、３次元座標がワールド座標系からの位置として表現される。当該ワールド座標系は、カメラポーズ・３Ｄ推定装置で初期時刻において予め設定したものが利用される。
ここで、フレーム画像中の物体に対してコンピュータグラフィクス等を合成する場合には、物体を基準とする物体座標系でのカメラポーズと３次元座標とが必要となる。
しかしながら、前述のカメラポーズ・３Ｄ推定装置では、前述の通り、物体に関係なく予め設定したワールド座標系を基準としてカメラポーズと３次元座標とを算出するため、当該カメラポーズを用いてフレーム画像中において対象物体に対してコンピュータグラフィクスを合成しても、対象物体と、コンピュータグラフィクスとの位置がずれることがある。
【０００５】
本発明は、上述したような従来技術が有する問題点に鑑みてなされたものであり、フレーム画像における対象物体に対して精度の高い画像合成を行えるカメラポーズと３次元座標とを算出する物体座標系変換装置、物体座標系変換方法、及び物体座標系変換プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記問題を解決するために、本発明は、対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部と、前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合部と、過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定部と、前記２次元テンプレート照合部が検出した照合位置と、前記カメラポーズ・３次元座標推定部が算出したカメラポーズ、及び前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換部とを具備し、前記座標系変換部は、前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出部と、前記３次元座標抽出部が算出した３次元座標で示される点が属する基準平面を算出する基準平面算出部と、前記基準平面算出部が算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出部が算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換部とを備えることを特徴とする物体座標系変換装置である。
【０００８】
また、上記問題を解決するために、本発明は、対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部を備える物体座標系変換装置が行う物体座標系変換方法であって、前記物体座標系変換装置が、前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合ステップと、前記物体座標系変換装置が、過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定ステップと、前記物体座標系変換装置が、前記２次元テンプレート照合ステップにおいて検出した照合位置と、前記カメラポーズ・３次元座標推定ステップにおいて算出したカメラポーズ、及び前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換ステップとを有し、前記座標系変換ステップには、前記物体座標系変換装置が、前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出ステップと、前記物体座標系変換装置が、前記３次元座標抽出ステップで算出した３次元座標で示される点が属する基準平面を算出する基準平面算出ステップと、前記物体座標系変換装置が、前記基準平面算出ステップで算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出ステップで算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換ステップと、が含まれることを特徴とする物体座標系変換方法である。
【０００９】
また、上記問題を解決するために、本発明は、対象物体の特徴点を含む３つ以上の照合テンプレート画像が予め記憶されている照合テンプレート記憶部を備える物体座標系変換装置が有するコンピュータに、前記照合テンプレート画像のうち少なくとも３つの照合テンプレート画像それぞれのフレーム画像における位置である照合位置を検出する２次元テンプレート照合ステップと、過去のフレーム画像から最新のフレーム画像までにおいて前記特徴点を検出し、前記フレーム画像における前記特徴点の位置の時系列変化と、前記フレーム画像を撮像した撮像装置の焦点距離とに基づいて、予め定められたワールド座標系における、前記撮像装置の位置及び向きを示すカメラポーズと、前記特徴点の３次元座標とを算出するカメラポーズ・３次元座標推定ステップと、前記２次元テンプレート照合ステップにおいて検出した照合位置と、前記カメラポーズ・３次元座標推定ステップにおいて算出した前記ワールド座標系における撮像装置の位置及び向き、並びに前記特徴点の３次元座標とに基づいて、前記対象物体を基準として定められた３次元座標系である物体座標系における、カメラポーズ、及び前記特徴点の３次元座標を算出する座標系変換ステップとを実行させ、前記座標系変換ステップにおいて、前記ワールド座標系におけるカメラポーズに基づいて、前記特徴点の３次元座標を前記フレーム画像における座標に変換し、変換した座標と前記照合位置とを対応付け、前記照合位置に対応する３次元座標を算出する３次元座標抽出ステップと、前記３次元座標抽出ステップで算出した３次元座標で示される点が属する基準平面を算出する基準平面算出ステップと、前記基準平面算出ステップで算出した基準平面と、前記特徴点が属する平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、前記３次元座標抽出ステップで算出した３次元座標、及び、前記ワールド座標系におけるカメラポーズを、前記物体座標系に変換する剛体変換ステップと、を実行させるための物体座標系変換プログラムである。
【発明の効果】
【００１０】
本発明によれば、合成の対象となる対象物体を基準とした物体座標系におけるカメラポーズ及び３次元座標を算出することができる。算出したカメラポーズ及び３次元座標を用いることにより、フレーム画像において、合成の対象となる対象物体と、合成するコンピュータグラフィクス等とがずれることがなくなり、より精度の高い合成を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】本明細書において用いる座標系の一例を示す図である。
【図２】本実施形態における物体座標系変換装置１の構成を示す概略ブロック図である。
【図３】本実施形態におけるテンプレート画像記憶部１１に記憶されている照合テンプレート画像の一例を示す図である。
【図４】本実施形態における物体座標系変換装置１が行う物体座標系変換処理の一例を示すフローチャートである。
【図５】本実施形態における対象物体の特徴点の３次元座標及びカメラポーズを算出する処理結果の一例を示す図である。
【図６】本実施形態における照合テンプレート画像と照合位置との対応の一例を示す図である。
【図７】本実施形態における３次元座標抽出部１５１における３次元座標を抽出する処理を示すフローチャートである。
【図８】本実施形態における３次元座標抽出部１５１が抽出ウィンドウを設定する一例を示す図である。
【図９】剛体変換部１５３における剛体変換処理を示すフローチャートである。
【図１０】本実施形態における剛体変換部１５３が算出する並進ベクトルの一例を示す図である。
【図１１】本実施形態における剛体変換部１５３が算出する回転行列Ｒの一例を示す図である。
【図１２】本実施形態に係る剛体変換部１５３が算出するロール角の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施形態における物体座標系変換装置、物体座標系変換方法、及び物体座標系変換プログラムを説明する。
【００１３】
初めに、本明細書において用いる座標系について説明する。
図１は、本明細書において用いる座標系の一例を示す図である。同図に示すように、ワールド座標系（ＷＸＹＺ）は、空間全体を表す座標系であり、カメラポーズ及び３次元座標を推定する処理において、初期時刻に予め設定したものが利用される。カメラ座標系（ＣＸＹＺ）は、フレーム画像を出力する撮像装置であるカメラの投影中心を原点とする座標系であり、ワールド座標系に関連付けられている。なお、本明細書における「カメラポーズ」とは、ワールド座標系に対するカメラの位置、及び向き（併進、及び回転）を示す情報である。最後に、物体座標系（ＯＸＹＺ）は、ワールド座標系で表現される空間の中にある個別の対象物体ごとに設定する座標系である。また、物体座標系は、対象物体における任意の点を原点とする座標系である。
【００１４】
以下、本発明の一実施形態による物体座標系変換装置について図面を参照して説明する。
【００１５】
図２は、本実施形態による物体座標系変換装置１の構成を示す概略ブロック図である。同図に示す通り、物体座標系変換装置１は、テンプレート画像記憶部１１と、カメラパラメータ記憶部１２と、２次元テンプレート照合部１３と、カメラポーズ・３次元座標推定部１４と、座標系変換部１５とを具備している。
【００１６】
テンプレート画像記憶部１１には、コンピュータグラフィクス等を合成する対象物体の表面において同一平面上に属する３つ以上の特徴点それぞれに対応する照合テンプレート画像が予め記憶されている。照合テンプレート画像記憶部１１に記憶されている照合テンプレート画像は、少なくとも３つあり、そのうち１つは物体座標系の原点を示す点を特徴点として含む照合テンプレート画像であり、異なる１つは物体座標系の原点に対して鉛直軸上に位置する点を特徴点として含む照合テンプレート画像である。ここで、鉛直軸とは、物体座標系におけるＸ軸、Ｙ軸、及びＺ軸のいずれかの軸である。
カメラパラメータ記憶部１２には、フレーム画像を撮像したカメラの焦点距離又は画角を示すカメラパラメータが予め記憶されている。
【００１７】
２次元テンプレート照合部１３には、外部に設けられたカメラなどを用いて撮像された画像を表すフレーム画像が入力される。また、２次元テンプレート照合部１３は、フレーム画像が入力されると、少なくとも３つ以上の照合テンプレート画像をテンプレート画像記憶部１１から読み出す。２次元テンプレート照合部１３は、読み出した照合テンプレート画像ごとに、当該照合テンプレート画像が照合する位置をフレーム画像から検出し、検出した位置のフレーム画像における座標を照合位置として出力する。照合位置は、照合テンプレート画像に含まれる特徴点の位置でもよいし、照合テンプレート画像に対して予め定められた点（画素）の位置でもよい。
【００１８】
カメラポーズ・３次元座標推定部１４には、外部に設けられたカメラなどを用いて撮像された画像を表すフレーム画像が入力される。このフレーム画像は、２次元テンプレート照合部１３に入力されるフレーム画像と同じ画像である。カメラポーズ・３次元座標推定部１４は、フレーム画像が入力されると、入力されたフレーム画像に含まれている物体のコーナー（角）などを示す複数の特徴点を抽出する。また、カメラポーズ・３次元座標推定部１４は、過去のフレーム画像から最新のフレーム画像まで（フレーム画像列）において、特徴点の位置を追跡する。カメラポーズ・３次元座標推定部１４は、カメラパラメータ記憶部１２からフレーム画像を撮像したカメラのカメラパラメータを読み出し、読み出したカメラパラメータと、抽出した各特徴点の時系列での追跡結果（各特徴点の位置の時系列変化）とに基づいて、各特徴点の３次元座標、及び現時刻のカメラポーズを算出する。カメラポーズ・３次元座標推定部１４は、算出した、各特徴点の３次元座標のリストと、カメラポーズとを含む３次元情報を座標系変換部１５に出力する。
【００１９】
座標系変換部１５には、２次元テンプレート照合部１３が出力する照合位置と、カメラポーズ・３次元座標推定部１４が出力する３次元情報と、フレーム画像とが入力される。このフレーム画像は、２次元テンプレート照合部１３及びカメラポーズ・３次元座標推定部１４に入力されるフレーム画像と同じ画像である。座標系変換部１５は、照合位置に対応する３次元座標を検出し、検出した３次元座標から基準平面を算出する。また、座標系変換部１５は、カメラポーズ・３次元座標推定部１４から入力された特徴点の３次元座標のリストとカメラポーズとを剛体変換して、照合テンプレート画像で表現される物体座標系に算出した基準平面を合致させる。座標系変換部１５は、剛体変換した３次元座標のリスト及びカメラポーズを含む３次元情報を出力する。
【００２０】
本実施形態に係る物体座標系変換装置１で実行される詳細な処理を以下に説明する。
図３は、テンプレート画像記憶部１１に記憶されている照合テンプレート画像の一例を示す図である。以下の説明において、テンプレート画像記憶部１１には、対象物体の照合テンプレート画像として、図３に示した３つの照合テンプレート画像（ａ）、（ｂ）、及び（ｃ）が予め記憶されているものとする。ここで、原点テンプレートとは、照合テンプレート画像のうち、対象物体に対応する物体座標系の原点を特徴点として含む照合テンプレート画像である。鉛直軸上テンプレートとは、物体座標系において原点から鉛直方向にある特徴点を含む照合テンプレート画像である。なお、以下の説明では物体座標系変換装置１が時刻ｔに起動されたものとする。
【００２１】
図４は、本実施形態における物体座標系変換装置１が行う物体座標系変換処理を示すフローチャートである。
物体座標系変換装置１において、カメラなどから撮像した現時刻のフレーム画像が入力される（ステップＳ１０１）。
入力された画像は、２次元テンプレート照合部１３、カメラポーズ・３次元座標推定部１４、及び座標系変換部１５に入力される。２次元テンプレート照合部１３及びカメラポーズ・３次元座標推定部１４それぞれは、フレーム画像が入力されると起動する（ステップＳ１０２、ステップＳ１０３）。
【００２２】
２次元テンプレート照合部１３は、テンプレート画像記憶部１１に記憶されている照合テンプレート画像のうち、フレーム画像において３つ以上の照合テンプレート画像が照合したか否かを判定する（ステップＳ１０４）。
２次元テンプレート照合部１３は、３つ以上の照合テンプレート画像が照合した場合（ステップＳ１０４：Ｙｅｓ）、照合位置を座標系変換部１５に出力して座標系変換部１５を起動させ、座標系変換部１５に座標系変換処理を行わせる（ステップＳ１０５）。
【００２３】
座標系変換部１５は、座標変換処理を終えると、物体座標系変換装置１を利用するユーザからの終了指示があるか否かを判定し（ステップＳ１０６）、終了指示がない場合（ステップＳ１０６：Ｎｏ）、次時刻まで待機し（ステップＳ１０７）、次時刻になるとステップＳ１０１からステップＳ１０６までの処理を繰り返して行う。
一方、座標系変換部１５は、ユーザからの終了指示がある場合（ステップＳ１０６：Ｙｅｓ）、物体座標系変換処理を終了させる。
また、ステップＳ１０４において、２次元テンプレート照合部１３は、３つ以上の照合テンプレート画像が照合しなかった場合（ステップＳ１０４：Ｎｏ）、処理をステップＳ１０６に進める。
【００２４】
続いて、物体座標系変換装置１に備えられた各部での処理をより詳細に説明する。
物体座標系変換装置１では、まずカメラポーズ・３Ｄ推定部と２Ｄテンプレート照合部とが起動される（ステップＳ１０２、及びステップＳ１０３）。
ステップＳ１０３において、カメラポーズ・３次元座標推定部１４は、起動すると、入力されたフレーム画像と、カメラパラメータ記憶部１２から読み出したカメラパラメータとに基づいて、フレーム画像から特徴点を抽出する。カメラポーズ・３次元座標推定部１４は、フレーム画像から抽出した特徴点の時系列での追跡結果によって、特徴点の３次元座標の時系列と、現時刻のカメラポーズとを算出し、夫々３次元座標の時系列を示すリストとカメラポーズとを出力する。このカメラポーズを算出する処理と、特徴点の３次元座標を算出する処理には、公知の技術を用いる。例えば、非特許文献１に記載の方法によって、各処理を実現できる。
図５は、本実施形態における対象物体の特徴点の３次元座標及びカメラポーズを算出する処理結果の一例を示す図である。本実施形態では、図５に示すように、対象物体の特徴点（図５において○で示されている点）の３次元座標と、カメラポーズとがそれぞれ算出され、出力されるものとする。
【００２５】
２次元テンプレート照合部１３は、起動すると、入力されたフレーム画像と、テンプレート画像記憶部１１から読み出した照合テンプレート画像とに基づいて、フレーム画像における対象物体の特徴点を検出する。このとき、２次元テンプレート照合部１３がテンプレート画像記憶部１１から読み込む照合テンプレート画像は、各照合テンプレート画像の特徴点が同一平面上に属する少なくとも３つ以上の照合テンプレート画像である。読み込んだ照合テンプレート画像のうち、１つの照合テンプレート画像は物体座標系の原点を示す点を特徴点として含む照合テンプレート画像であり、１つの照合テンプレート画像は物体座標系の鉛直軸上に属する点を特徴点として含む照合テンプレート画像である。本実施形態では、図３に示した照合テンプレート画像（ａ）、（ｂ）、及び（ｃ）が２次元テンプレート照合部１３に読み込まれたものとする。
【００２６】
続いて、２次元テンプレート照合部１３は、読み込んだ照合テンプレート画像に照合する点をフレーム画像から決定する。ここでフレーム画像に対する照合する点を決定する処理は、フレーム画像に対する照合テンプレート画像をマッチングさせる処理により行われる。最後に、２次元テンプレート照合部１３は、決定した各点のフレーム画像における位置座標を照合テンプレート画像の照合位置として出力する。
図６は、本実施形態における照合テンプレート画像と照合位置との対応の一例を示す図である。本実施形態では、図３に示した照合テンプレート画像（ａ）、（ｂ）、及び（ｃ）について、図６に示すように、点（ｘａ，ｙａ）、点（ｘｂ，ｙｂ）、及び点（ｘｃ，ｙｃ）が照合位置として夫々決定され出力されるものとする。
【００２７】
２次元テンプレート照合部１３がフレーム画像において照合テンプレート画像を３つ以上照合した場合には、座標系変換部１５が起動される。座標系変換部１５は、図２に示すように、３次元座標抽出部１５１と、基準平面算出部１５２と、剛体変換部１５３と、射影点記憶部１５４と、３次元座標記憶部１５５とを有している。
座標系変換部１５は、起動すると、まず３次元座標抽出部１５１を起動する。
【００２８】
図７は、３次元座標抽出部１５１における３次元座標を抽出する処理を示すフローチャートである。
同図に示すように、３次元座標抽出部１５１は、起動すると、外部より入力されたフレーム画像と、２次元テンプレート照合部１３が決定した照合位置と、カメラポーズ・３次元座標推定部１４が出力した３次元情報とを受信する（ステップＳ２０１、ステップＳ２０２）。
【００２９】
続いて、３次元座標抽出部１５１は、受信した３次元情報に含まれるカメラポーズを用いて、特徴点の３次元座標を夫々フレーム画像に射影し、フレーム画像に投影した点である射影点の座標と特徴点とを対応付けて、射影点記憶部１５４に記憶させる(ステップＳ２０３)。
ここで、３次元座標からフレーム画像における射影点を算出する処理について述べる。まず３次元座標（Ｘ，Ｙ，Ｚ）とその射影点の座標（ｘ，ｙ）には下式（１）の関係がある。
【００３０】
【数１】
0005620343.tif 000002
【００３１】
ここで、要素ｐｉｊ（ｉ＝１，２，３、ｊ＝１，２，３，４）から構成される３行４列の行列は、射影変換行列であり、フレーム画像を撮像したカメラのカメラパラメータ（焦点距離）と、カメラの位置及び向きを示すカメラポーズから算出することができる。本実施形態において、３次元座標抽出部１５１は、カメラパラメータ記憶部１２から読み出したカメラパラメータと、カメラポーズ・３次元座標推定部１４から受信したカメラポーズを用いることによって射影行列を算出する。３次元座標抽出部１５１は、算出した射影変換行列と、特徴点の３次元座標とから式（１）によって、各特徴点のフレーム画像における射影点の座標を算出することができる。
【００３２】
続いて、３次元座標抽出部１５１は、各照合テンプレート画像に対して、処理を行ったか否かを判定し（ステップＳ２０４）、すべての照合テンプレート画像に対して処理が終わっている場合（ステップＳ２０４：Ｙｅｓ）、処理をステップＳ２０８に進める。
一方、３次元座標抽出部１５１は、すべての照合テンプレート画像に対して処理が終わって異な場合（ステップＳ２０４：Ｎｏ）、処理をステップＳ２０５に進める。
３次元座標抽出部１５１は、未処理の照合テンプレート画像に対して、フレーム画像において対応する照合位置を中心に抽出ウィンドウを設定する（ステップＳ２０５）。
【００３３】
図８は、本実施形態における３次元座標抽出部１５１が抽出ウィンドウを設定する一例を示す図である。同図に示すように、３次元座標抽出部１５１は、図３に示した照合テンプレート画像（ｂ）に含まれる特徴点に対して、抽出ウィンドウを設定している。このとき、３次元座標抽出部１５１は、図８に示すように、照合テンプレート画像（ｂ）の照合位置（ｘｂ，ｙｂ）に抽出ウィンドウの中心位置が合致するように抽出ウィンドウを設定する。ここで、抽出ウィンドウの傾きは、２次元テンプレート照合部１３でのテンプレートマッチング処理において照合したときの傾きを採用するのが好適であるが、予め定められた所定の傾きを設定しても良い。抽出ウィンドウのサイズは、２次元テンプレート照合部１３でのテンプレートマッチング処理において用いた照合テンプレート画像の画像サイズを採用するのが好適であるが、予め定められた所定のサイズを設定しても良い。
【００３４】
図７に戻って、３次元座標抽出部１５１が行う処理の説明を続ける。
続いて、３次元座標抽出部１５１は、抽出ウィンドウに含まれる射影点を決定する（ステップＳ２０６）。この処理は、３次元座標抽出部１５１が、射影点記憶部１５４から射影点の座標を読み出し、読み出した射影点の座標の抽出ウィンドウに対する内外判定によって行う。図８に示す例では、２点が抽出ウィンドウに含まれる射影点として決定される。
【００３５】
続いて、３次元座標抽出部１５１は、抽出ウィンドウに含まれる射影点に対応付けられている特徴点の３次元座標を射影点記憶部１５４から読み出し、読み出した３次元座標から照合テンプレート画像に含まれる射影点の３次元座標を決定する（ステップＳ２０７）。抽出ウィンドウに含まれる射影点は１つより多いこともあるため、例えば、読み出した３次元座標の平均値を算出し、これを照合テンプレート画像の３次元座標とするようにしてもよい。
３次元座標抽出部１５１は、２次元テンプレート照合部１３から受信した全照合テンプレート画像に対して、上記の処理（ステップＳ２０５〜ステップＳ２０７）を行う。３次元座標抽出部１５１は、照合テンプレート画像それぞれに対して、照合テンプレート画像の照合位置と３次元座標とを対応付けて３次元座標記憶部１５５に記憶させて（ステップＳ２０８）、処理を終える。
【００３６】
３次元座標抽出部１５１が処理を終えると、続いて、基準平面算出部１５２が起動される。基準平面算出部１５２は、まず、全照合テンプレート画像分について、照合テンプレート画像の照合位置と３次元座標とを３次元座標記憶部１５５から読み出す。続いて、基準平面算出部１５２は、読み出した３次元座標が表現する３次元点に平面をフィッティングすることで基準平面を算出する。この平面フィッティングには、最小自乗法を用いてもよい。但し、受信した照合テンプレート画像の３次元座標には、カメラポーズ・３次元座標推定部１４での３次元座標を算出する際の誤差が含まれる場合もあるので、外れ値を除去するロバスト推定法を用いるのが好適である。基準平面算出部１５２は、最後に、フィッティングした平面の法線ベクトルを剛体変換部１５３に出力して、処理を終える。
【００３７】
基準平面算出部１５２が処理を終えると、続いて、剛体変換部１５３が起動される。
図９は、剛体変換部１５３における剛体変換処理を示すフローチャートである。
剛体変換部１５３は、起動すると、まず基準平面算出部１５２から平面の法線ベクトルを受信し、照合テンプレート画像の照合位置と、当該照合位置に関連付けられた３次元座標とを３次元座標記憶部１５５から読み出す（ステップＳ３０１）。
【００３８】
続いて、剛体変換部１５３は、照合位置の３次元座標うち、物体座標系の原点となる特徴点の３次元座標から、剛体変換の並進ベクトルを算出する（ステップＳ３０２）。本実施形態では、図３における原点テンプレート（ａ）が物体座標系の原点となる特徴点を含む照合テンプレート画像である。そこで、剛体変換部１５３は、原点テンプレート（ａ）の３次元座標を用いて剛体変換の並進ベクトルを算出する。
図１０は、本実施形態における剛体変換部１５３が算出する並進ベクトルの一例を示す図である。同図に示すように、剛体変換部１５３は、物体座標系の原点となる照合テンプレート画像の３次元座標が（Ｘｏ，Ｙｏ，Ｚｏ）である場合、剛体変換の並進ベクトルＴを（−Ｘｏ，−Ｙｏ，−Ｚｏ）とすることで算出することができる。
【００３９】
続いて、剛体変換部１５３は、受信した基準平面の法線ベクトルと、物体座標系で照合テンプレート画像が属する面の法線ベクトルから回転行列を算出する（ステップＳ３０３）。このとき、剛体変換部１５３は、まず回転軸ベクトルＡを算出する。回転軸ベクトルＡは、次式（２）を用いて求めることができる。
【００４０】
Ａ  ＝  Ｎ  ×  Ｎｏ  ・・・式（２）
【００４１】
式（２）において、ベクトルＮは受信した平面の法線ベクトル、すなわち基準平面算出部１５２が算出した法線ベクトルである。ベクトルＮｏは物体座標系における照合テンプレート画像が属する面の法線ベクトルである。「×」は外積を示す。
続いて、剛体変換部１５３は、回転角度Ａｎｇを次式（３）を用いて求める。
【００４２】
Ａｎｇ  ＝  ＡＣＯＳ（Ｎ・Ｎｏ／（｜Ｎ｜｜Ｎｏ｜））  ・・・式（３）
【００４３】
ここで、｜Ｎ｜及び｜Ｎｏ｜は、ベクトルＮ及びベクトルＮｏの大きさであり、「ＡＣＯＳ（）」は逆余弦（アークコサイン）である。
剛体変換部１５３は、式（２）及び式（３）を用いて、回転軸ベクトルＡと、回転角度Ａｎｇとを算出し、算出した回転軸ベクトルＡと回転角度Ａｎｇとから回転行列Ｒを示す、回転クオータニオンを生成する。剛体変換部１５３は、カメラポーズ・３次元座標推定部１４が算出した特徴点の３次元座標のリストとカメラポーズとに対して、算出した併進ベクトルＴと、回転行列Ｒとを適用する。
【００４４】
図１１は、本実施形態における剛体変換部１５３が算出する回転行列Ｒの一例を示す図である。同図に示すように、剛体変換部１５３は、基準平面の法線ベクトルを、照合テンプレート画像が含む特徴点が属する平面の法線ベクトルＮｏに揃える回転行列Ｒを算出する。
【００４５】
図９に戻って、剛体変換部１５３における剛体変換処理の説明を続ける。
続いて、剛体変換部１５３は、照合テンプレート画像のうち、剛体変換された平面上での物体座標系の原点となる特徴点の３次元座標と、鉛直軸上の特徴点の３次元座標とから、ロール角を算出決定する（ステップＳ３０４）。
図１２は、本実施形態に係る剛体変換部１５３が算出するロール角の一例を示す図である。ここでは、鉛直軸上の特徴点を含み、図６に示した鉛直軸上テンプレート（ｃ）が予め設定されているので、図１２に示すように、剛体変換部１５３は、図３の原点テンプレート（ａ）に含まれる特徴点を剛体変換した３次元座標と、図３の鉛直軸上テンプレート（ｃ）に含まれる特徴点を剛体変換した３次元座標から平面鉛直軸Ｙｐを決定する。続いて、剛体変換部１５３は、物体座標系の鉛直軸Ｙｏと平面鉛直軸Ｙｐとが揃うように変換する角度をロール角として算出し、算出したロール角に応じた回転行列Ｒ’を算出する。このロール角度算出は、ベクトルＹｐとベクトルＹｏとの内積によって算出することができる。
【００４６】
剛体変換部１５３は、算出したロール角を用いて、再度、カメラポーズ・３次元座標推定部１４がメモリ記録した３Ｄ点リストとカメラポーズに対して、並進ベクトルＴ、回転行列Ｒ、及び回転行列Ｒ’からなる剛体変換を適用する（ステップＳ３０５）。最後に、剛体変換された３Ｄ点リスト及びカメラポーズを物体座標系でのカメラポーズ・３Ｄとして出力し（ステップＳ３０６）、処理を終える。
すなわち、剛体変換部１５３は、基準平面算出部１５２が算出した基準平面と、照合テンプレート画像に含まれる特徴点が含まれる平面とを一致させる剛体変換行列を算出し、算出した剛体変換行列を用いて、特徴点の３次元座標及びカメラポーズを、対象物体を基準とした３次元座標系における３次元座標及びカメラポーズに変換して出力する。この剛体変換行列は、上述の並進ベクトルＴ、回転行列Ｒ、回転行列Ｒ’により定義される行列である。
【００４７】
以上説明したように、本発明によれば、フレーム画像における物体に対してコンピュータグラフィクス等を合成する場合においても、対象物体を基準にした物体座標系でのカメラポーズと３次元座標を算出することができるため、物体に対してコンピュータグラフィックス等を合成する際の位置の精度を向上させることができる。これにより、正確な合成を実現することができる。
【００４８】
以上、本発明を実施形態に基づき具体的に説明したが、上記実施の形態の説明は、本発明を説明するためのものであって、特許請求の範囲に記載の発明を限定し、或は範囲を減縮する様に解すべきではない。また、本発明の各手段構成は上記実施の形態に限らず、特許請求の範囲に記載の技術的範囲内で種々の変形が可能であることは勿論である。
例えば、本実施形態の説明において、剛体変換での回転変換は、回転行列の算出と、ロール角の算出処理に分けて説明したが、一度に算出しても良いし、夫々求めた回転行列を乗算したものを利用して１回の剛体変換演算のみとしても良い。
また、カメラパラメータ記憶部１２に、フレーム画像を撮像したカメラの焦点距離がカメラパラメータとして記憶されている構成について説明したが、焦点距離に加えて、レンズの歪曲パラメータ（ラジアル方向歪曲及び接線方向歪曲）をカメラパラメータとして記憶するようにしてもよい。
【００４９】
なお、本発明における物体座標系変換装置１の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより物体座標系変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００５０】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００５１】
１…物体座標系変換装置、１１…テンプレート画像記憶部、１２…カメラパラメータ記憶部、１３…２次元テンプレート照合部、１４…カメラポーズ・３次元座標推定部、１５…座標系変換部、１５１…３次元座標抽出部、１５２…基準平面算出部、１５３…剛体変換部、１５４…射影点記憶部、１５５…３次元座標記憶部
【図１】
0005620343.tif 000003
【図２】
0005620343.tif 000004
【図３】
0005620343.tif 000005
【図４】
0005620343.tif 000006
【図５】
0005620343.tif 000007
【図６】
0005620343.tif 000008
【図７】
0005620343.tif 000009
【図８】
0005620343.tif 000010
【図９】
0005620343.tif 000011
【図１０】
0005620343.tif 000012
【図１１】
0005620343.tif 000013
【図１２】
0005620343.tif 000014