特許第6109699号(P6109699)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許6109699姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム
<>
  • 特許6109699-姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム 図000004
  • 特許6109699-姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム 図000005
  • 特許6109699-姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム 図000006
  • 特許6109699-姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム 図000007
  • 特許6109699-姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6109699
(24)【登録日】2017年3月17日
(45)【発行日】2017年4月5日
(54)【発明の名称】姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラム
(51)【国際特許分類】
   G06T 7/60 20170101AFI20170327BHJP
   G06T 7/20 20170101ALI20170327BHJP
【FI】
   G06T7/60 150P
   G06T7/20 B
【請求項の数】13
【全頁数】33
(21)【出願番号】特願2013-205136(P2013-205136)
(22)【出願日】2013年9月30日
(65)【公開番号】特開2015-69548(P2015-69548A)
(43)【公開日】2015年4月13日
【審査請求日】2016年2月2日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100122426
【弁理士】
【氏名又は名称】加藤 清志
(72)【発明者】
【氏名】小林 達也
(72)【発明者】
【氏名】加藤 晴久
(72)【発明者】
【氏名】柳原 広昌
【審査官】 佐田 宏史
(56)【参考文献】
【文献】 特開2010−009375(JP,A)
【文献】 Daniel Wagner et al.,"Real-Time Detection and Tracking for Augmented Reality on Mobile Phones",IEEE Transactions on Visualization and Computer Graphics,米国,IEEE,2010年 8月28日,Vol.16, No.3,pp.355-368
【文献】 鳥居 秋彦、外2名,“多視点3次元復元の研究動向”,情報処理学会研究報告 コンピュータビジョンとイメージメディア(CVIM),日本,一般社団法人情報処理学会,2011年 4月15日,No.176,pp.1-22
【文献】 岡松 利美、外4名,“奥行き情報を利用した人物追跡システムステレオPtracker”,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2000年 1月21日,Vol.99, No.575,pp.45-52
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00−7/90
(57)【特許請求の範囲】
【請求項1】
入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、
前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段と、
前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段と、
前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する特徴点追跡手段と、
前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段と、を備え、
前記状態推定手段は、前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、
前記特徴点追跡手段は、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記姿勢パラメータ更新手段は、前記複数解像度画像取得手段により求められた各画像の解像度のうち最も低い解像度においては、前記状態推定手段による前記第1特徴点の追跡結果と、前記特徴点追跡手段による前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置。
【請求項2】
入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、
前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段と、
前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段と、
前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する特徴点追跡手段と、
前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段と、を備え、
前記状態推定手段は、前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、
前記特徴点追跡手段は、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記姿勢パラメータ更新手段は、前記複数解像度画像取得手段により求められた各画像の解像度のうち最も低い解像度においては、前記状態推定手段による前記第1特徴点の追跡結果と、前記特徴点追跡手段による前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置。
【請求項3】
入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、
前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段と、
前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段と、
前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する特徴点追跡手段と、
前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段と、を備え、
前記状態推定手段は、前記第2特徴点の中から、当該第2特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第1特徴点として決定して追跡し、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、
前記特徴点追跡手段は、前記認識対象物の特徴点の中から、当該特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第2特徴点として決定して追跡し、
前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置。
【請求項4】
入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、
前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段と、
前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段と、
前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する特徴点追跡手段と、
前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段と、を備え、
前記状態推定手段は、前記第2特徴点の中から、当該第2特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第1特徴点として決定して追跡し、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、
前記特徴点追跡手段は、前記認識対象物の特徴点の中から、当該特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第2特徴点として決定して追跡し、
前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置。
【請求項5】
前記特徴点追跡手段は、前記第2特徴点の数を、処理対象レベルの画像の解像度が高くなるに従って多くすることを特徴とする請求項1から4のいずれかに記載の姿勢パラメータ推定装置。
【請求項6】
前記姿勢パラメータ更新手段により求められた前フレームにおける姿勢パラメータを用いて、前記認識対象物の姿勢パラメータの予測値を求める姿勢パラメータ予測手段を備え、
前記状態推定手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記第1特徴点の追跡を行い、
前記特徴点追跡手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記第2特徴点の追跡を行い、
前記姿勢パラメータ更新手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記認識対象物の姿勢パラメータを推定することを特徴とする請求項1から5のいずれかに記載の姿勢パラメータ推定装置。
【請求項7】
前記姿勢パラメータ予測手段は、前記状態推定手段により前フレームにおいて求められた前記度合いが予め定められた第1閾値より小さい場合には、前記姿勢パラメータ更新手段により求められた前フレームにおける姿勢パラメータを、当該認識対象物の姿勢パラメータの予測値とすることを特徴とする請求項6に記載の姿勢パラメータ推定装置。
【請求項8】
前記特徴点追跡手段は、前記状態推定手段により求められた前記度合いが予め定められた第2閾値以上である場合には、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて特徴点追跡の初期位置を求め、当該状態推定手段により求められた移動量の平均値を当該特徴点追跡の初期位置に加えたものを用いて、前記第2特徴点の追跡を行うことを特徴とする請求項6または7に記載の姿勢パラメータ推定装置。
【請求項9】
前記特徴点追跡手段は、前記状態推定手段により求められた前記度合いが予め定められた第3閾値以上である場合には、前記第2特徴点の追跡を行う領域を、前記状態推定手段が前記第1特徴点の追跡を行う領域よりも狭くすることを特徴とする請求項1から8のいずれかに記載の姿勢パラメータ推定装置。
【請求項10】
複数解像度画像取得手段、状態推定手段、特徴点追跡手段、および姿勢パラメータ更新手段を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法であって、
前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、
前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、
前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する第3のステップと、
前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、を備え、
前記第2のステップでは、前記状態推定手段が、前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、
前記第3のステップでは、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記第1のステップにより求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記第4のステップでは、前記第1のステップにより求められた各画像の解像度のうち最も低い解像度においては、前記第2のステップによる前記第1特徴点の追跡結果と、前記第3のステップによる前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定方法。
【請求項11】
複数解像度画像取得手段、状態推定手段、特徴点追跡手段、および姿勢パラメータ更新手段を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法であって、
前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、
前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、
前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する第3のステップと、
前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、を備え、
前記第2のステップでは、前記状態推定手段が前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、
前記第3のステップでは、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記第1のステップにより求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記第4のステップでは、前記第1のステップにより求められた各画像の解像度のうち最も低い解像度においては、前記第2のステップによる前記第1特徴点の追跡結果と、前記第3のステップによる前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記第1のステップにより求められた各画像の解像度のうち予め定められた解像度に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定方法。
【請求項12】
複数解像度画像取得手段、状態推定手段、特徴点追跡手段、および姿勢パラメータ更新手段を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法を、コンピュータに実行させるためのプログラムであって、
前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、
前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、
前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する第3のステップと、
前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、をコンピュータに実行させ、
前記第2のステップでは、前記状態推定手段が、前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、
前記第3のステップでは、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記第1のステップにより求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記第4のステップでは、前記第1のステップにより求められた各画像の解像度のうち最も低い解像度においては、前記第2のステップによる前記第1特徴点の追跡結果と、前記第3のステップによる前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定するためのプログラム。
【請求項13】
複数解像度画像取得手段、状態推定手段、特徴点追跡手段、および姿勢パラメータ更新手段を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法を、コンピュータに実行させるためのプログラムであって、
前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、
前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像において、当該画像内における前記認識対象物の第1特徴点を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、
前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点を追跡する第3のステップと、
前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、をコンピュータに実行させ、
前記第2のステップでは、前記状態推定手段が前記第2特徴点の中から前記第1特徴点を決定して追跡し、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、
前記第3のステップでは、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記第1のステップにより求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、
前記第4のステップでは、前記第1のステップにより求められた各画像の解像度のうち最も低い解像度においては、前記第2のステップによる前記第1特徴点の追跡結果と、前記第3のステップによる前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求め、
前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、
前記第1のステップにより求められた各画像の解像度のうち予め定められた解像度に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定するためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、姿勢パラメータ推定装置、姿勢パラメータ推定方法、およびプログラムに関する。
【背景技術】
【0002】
従来、現実空間の映像に対してコンピュータにより情報を付加するAR(拡張現実感)技術が提案されており、近年では、このAR技術は、WEBカメラの接続されたPC(Personal Computer)や、カメラ付き携帯電話端末などで実現されるようになっている。
【0003】
AR技術においては、カメラといった撮像手段で撮影された入力画像内の認識対象物を識別し、認識対象物の姿勢パラメータをリアルタイムに推定する必要がある。そこで、姿勢パラメータを推定する技術が提案されている(例えば、特許文献1から3および非特許文献1参照)。
【0004】
特許文献1には、認識対象物として予め定められたマーカを想定し、このマーカの姿勢パラメータを画像認識処理により推定する技術が示されている。
【0005】
一方、特許文献2や非特許文献1には、連続的に入力される複数の画像内で特徴点を追跡する技術が示されている。特に非特許文献1には、入力画像をサブサンプリングして画像ピラミッドを生成し、画像ピラミッドの最上段の画像から最下段の画像まで1段ずつ順番に、特徴点を追跡する処理と、姿勢パラメータを推定する処理と、を繰り返す技術が示されている。この技術によれば、認識対象物や撮像手段の動きに対して頑健に姿勢パラメータを推定することができる。
【0006】
また、特許文献3には、信頼性の高い特徴点の追跡結果を、他の特徴点の追跡に用いる技術が示されている。この技術によれば、特徴点の追跡を高精度に行うことができる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2012−212460号公報
【特許文献2】特表2013−508844号公報
【特許文献3】特許第5034733号公報
【非特許文献】
【0008】
【非特許文献1】D.Wagner, G. Reitmayr, A. Mulloni, T. Drummond and D. Schmalstieg, “Real-time detection and tracking for augmented reality on mobile phones.” IEEE Trans. Visualization and Computer Graphics, vol.16, no.3, pp.355-368, 2010.
【発明の概要】
【発明が解決しようとする課題】
【0009】
特許文献1で認識対象物として想定されている上述のマーカは、予め定められた形状および模様の平面画像である。このため、特許文献1に示されている技術では、認識対象物として、任意の平面画像や立体物といった任意の物体を扱うことができなかった。
【0010】
これに対して、特許文献2、3に示されている技術では、認識対象物として任意の物体を扱うことができる。しかし、特許文献2や特許文献3に示されている技術では、認識対象物や撮像手段の動きに対する頑健性が不足するという課題があった。
【0011】
一方、非特許文献1に示されている技術では、認識対象物として任意の物体を扱うことができるとともに、上述のように認識対象物や撮像手段の動きに対する頑健性を確保できる。しかし、非特許文献1に示されている技術では、特徴点を追跡する処理と、姿勢パラメータを推定する処理と、を画像ピラミッドの段数分だけ繰り返す必要がある。このため、これら処理をリアルタイムで行うためには、これら処理を行う装置に高い情報処理能力が要求されていた。
【0012】
そこで、本発明は、上述の課題に鑑みてなされたものであり、認識対象物や撮像手段の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷を軽減することを目的とする。
【課題を解決するための手段】
【0013】
本発明は、上記の課題を解決するために、以下の事項を提案している。
(1) 本発明は、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)と、前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段(例えば、図3の状態推定部133に相当)と、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)と、前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)と、を備え、前記状態推定手段は、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置を提案している。
【0014】
ここで、認識対象物が前フレームからあまり移動していない場合には、認識対象物の特徴点が前フレームからあまり移動しないため、認識対象物の特徴点の追跡が比較的容易になる。このため、認識対象物が前フレームからあまり移動していない場合には、特徴点を追跡する処理と、姿勢パラメータを推定する処理と、の2種類の処理を解像度の低い画像で行わなくても、認識対象物や撮像手段の動きに対する頑健性を確保できる。
【0015】
そこで、この発明によれば、姿勢パラメータ推定装置に状態推定手段を設けた。そして、状態推定手段により、まず、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、処理対象レベルとして決定することとした。
【0016】
このため、認識対象物が前フレームから移動した度合いが大きい場合には、処理対象レベルの画像が入力画像になるまで、解像度の低いものから順番に、第2特徴点の追跡と、認識対象物の姿勢パラメータの取得と、が繰り返し行われることになる。そして、認識対象物が前フレームから移動した度合いが小さくなるに従って、第2特徴点の追跡と、姿勢パラメータの取得と、を開始する解像度が高くなる。したがって、認識対象物が前フレームから移動した度合いが小さい場合、すなわち認識対象物が前フレームからあまり移動していない場合に、第2特徴点を追跡する処理と、姿勢パラメータを取得する処理と、の2つの処理を解像度の低い画像を用いて行うのを省略することができ、認識対象物や撮像手段の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷を軽減することができる。
【0017】
(2) 本発明は、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置であって、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)と、前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記複数解像度画像取得手段により求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する状態推定手段(例えば、図3の状態推定部133に相当)と、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)と、前記特徴点追跡手段による前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)と、を備え、前記状態推定手段は、前記複数解像度画像取得手段により求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度(例えば、認識対象物の状態が後述の移動状態である場合には、後述の画像ピラミッドの最も高いレベルに相当し、認識対象物の状態が後述の静止状態である場合には、後述の画像ピラミッドの最も低いレベルに相当)に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記特徴点追跡手段による前記第2特徴点の追跡と、前記姿勢パラメータ更新手段による前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置を提案している。
【0018】
ここで、認識対象物が前フレームから大きく移動している場合には、入力画像にブラー(暈け)やぶれが発生していることが多くなる。このため、認識対象物が前フレームから大きく移動している場合には、特徴点を追跡する処理と、姿勢パラメータを推定する処理と、の2種類の処理を高い解像度の画像で行っても、特徴点の追跡精度の向上はあまり見込めず、認識対象物や撮像手段の動きに対する頑健性の向上を見込めない。
【0019】
そこで、この発明によれば、姿勢パラメータ推定装置に状態推定手段を設けた。そして、状態推定手段により、まず、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、処理対象レベルとして決定することとした。さらに、複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度に処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、第2特徴点の追跡と、認識対象物の姿勢パラメータの取得と、を繰り返し行うこととした。
【0020】
このため、認識対象物が前フレームから移動した度合いが大きい場合、すなわち認識対象物が前フレームから大きく移動している場合に、第2特徴点を追跡する処理と、姿勢パラメータを取得する処理と、の2つの処理を解像度の高い画像を用いて行うのを省略することができ、認識対象物や撮像手段の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷を軽減することができる。
【0021】
(3) 本発明は、(1)または(2)の姿勢パラメータ推定装置について、前記第2特徴点の中から前記第1特徴点を決定し、前記特徴点追跡手段は、前記認識対象物の特徴点の中から前記第2特徴点を決定し、前記複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像においては、前記第2特徴点のうち前記第1特徴点を除くものを追跡し、前記姿勢パラメータ更新手段は、前記複数解像度画像取得手段により求められた各画像の解像度のうち最も低い解像度においては、前記状態推定手段による前記第1特徴点の追跡結果と、前記特徴点追跡手段による前記第2特徴点のうち前記第1特徴点を除くものの追跡結果と、に基づいて、前記認識対象物の姿勢パラメータを求めることを特徴とする姿勢パラメータ推定装置を提案している。
【0022】
この発明によれば、(1)または(2)の姿勢パラメータ推定装置において、複数解像度画像取得手段により求められた各画像の解像度のうち最も低い解像度では、第2特徴点の中から第1特徴点を決定するとともに、第1特徴点の追跡結果と、第2特徴点のうち第1特徴点を除くものの追跡結果と、に基づいて、認識対象物の姿勢パラメータを求めることとした。
【0023】
このため、認識対象物が前フレームから移動した度合いを求めるための処理の一部である、第1特徴点を追跡する処理は、姿勢パラメータの推定精度の確保のための処理としても用いることができる。したがって、認識対象物が前フレームから移動した度合いを求めるために処理負荷が増加してしまうのを、抑制することができる。
【0024】
(4) 本発明は、(1)または(2)の姿勢パラメータ推定装置について前記特徴点追跡手段は、前記認識対象物の特徴点の中から、当該特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第2特徴点として決定し、前記状態推定手段は、前記第2特徴点の中から、当該第2特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、前記第1特徴点として決定することを特徴とする姿勢パラメータ推定装置を提案している。
【0025】
ここで、認識対象物の特徴点は、認識対象物の特徴点の分布の外寄りに位置するものほど、認識対象物が前フレームからどれだけ移動しているかの傾向を、顕著に示す。
【0026】
そこで、この発明によれば、(1)または(2)の姿勢パラメータ推定装置において、認識対象物の特徴点の中から、これら特徴点の分布の外寄りに位置するものから順に予め定められた数だけを、第1特徴点として決定することとした。このため、認識対象物が前フレームからどれだけ移動しているかを、より高精度に推定することができる。
【0027】
(5) 本発明は、(1)から(4)のいずれかの姿勢パラメータ推定装置について、前記特徴点追跡手段は、前記第2特徴点の数を、処理対象レベルの画像の解像度が高くなるに従って多くすることを特徴とする姿勢パラメータ推定装置を提案している。
【0028】
ここで、解像度の低い画像においては、細かい模様が見えにくくなるので、追跡する特徴点の数が多くしても、特徴点の追跡処理の処理負荷が増加するにもかかわらず、特徴点の追跡精度はあまり向上しない。一方、解像度の高い画像においては、細かい画像も見えやすくなるので、追跡する特徴点の数を多くすると、特徴点の追跡精度が向上する。
【0029】
そこで、この発明によれば、(1)から(4)のいずれかの姿勢パラメータ推定装置において、第2特徴点の数を、処理対象レベルの画像の解像度が高くなるに従って多くすることとした。このため、特徴点の追跡処理の処理負荷の増加を抑制しつつ、特徴点の追跡精度を向上させて、姿勢パラメータの推定精度を向上させることができる。
【0030】
(6) 本発明は、(1)から(5)のいずれかの姿勢パラメータ推定装置について、前記姿勢パラメータ更新手段により求められた前フレームにおける姿勢パラメータを用いて、前記認識対象物の姿勢パラメータの予測値(例えば、後述の姿勢パラメータ予測値に相当)を求める姿勢パラメータ予測手段(例えば、図3の姿勢パラメータ予測部131に相当)を備え、前記状態推定手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記第1特徴点の追跡を行い、前記特徴点追跡手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記第2特徴点の追跡を行い、前記姿勢パラメータ更新手段は、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて、前記認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定装置を提案している。
【0031】
この発明によれば、(1)から(5)のいずれかの姿勢パラメータ推定装置において、姿勢パラメータ更新手段により求められた前フレームにおける姿勢パラメータを用いて認識対象物の姿勢パラメータの予測値を求める姿勢パラメータ予測手段を設けた。そして、姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を、状態推定手段、特徴点追跡手段、および姿勢パラメータ更新手段で用いることとした。このため、前フレームにおける姿勢パラメータを用いて現在のフレームにおける姿勢パラメータを推定できるので、姿勢パラメータの推定精度を向上させることができる。
【0032】
(7) 本発明は、(6)の姿勢パラメータ推定装置について、前記姿勢パラメータ予測手段は、前記状態推定手段により前フレームにおいて求められた前記度合いが予め定められた第1閾値より小さい場合(例えば、後述の認識対象物の状態が静止状態である場合に相当)には、前記姿勢パラメータ更新手段により求められた前フレームにおける姿勢パラメータを、当該認識対象物の姿勢パラメータの予測値とすることを特徴とする姿勢パラメータ推定装置を提案している。
【0033】
ここで、認識対象物が静止している場合には、前フレームにおける姿勢パラメータを用いて認識対象物の姿勢パラメータの予測値を求めると、ジッタ誤差が増幅されてしまい、現在のフレームにおける姿勢パラメータの予測値を適切に求めることができなくなってしまうおそれがある。
【0034】
そこで、この発明によれば、(6)の姿勢パラメータ推定装置において、姿勢パラメータ予測手段により、前フレームにおける認識対象物の移動の度合いが予め定められた第1閾値より小さい場合には、前フレームにおける姿勢パラメータを、認識対象物の姿勢パラメータの予測値とすることとした。このため、前フレームにおいて認識対象物が静止していたりあまり移動していなかったりする場合に、ジッタ誤差が増幅されてしまうのを防止でき、現在のフレームにおける姿勢パラメータの予測値を適切に求めることができる。
【0035】
(8) 本発明は、(6)または(7)の姿勢パラメータ推定装置について、前記特徴点追跡手段は、前記状態推定手段により求められた前記度合いが予め定められた第2閾値以上である場合(例えば、後述の認識対象物の状態が移動状態である場合に相当)には、前記姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて特徴点追跡の初期位置を求め、当該状態推定手段により求められた移動量の平均値を当該特徴点追跡の初期位置に加えたものを用いて、前記第2特徴点の追跡を行うことを特徴とする姿勢パラメータ推定装置を提案している。
【0036】
この発明によれば、(6)または(7)の姿勢パラメータ推定装置において、認識対象物が前フレームから移動した度合いが予め定められた第2閾値以上である場合には、姿勢パラメータ予測手段により求められた姿勢パラメータの予測値を用いて特徴点追跡の初期位置を求め、状態推定手段により求められた移動量の平均値を特徴点追跡の初期位置に加えたものを用いて、第2特徴点の追跡を行うこととした。このため、状態推定手段により求められた移動量の平均値から、認識対象物の特徴点の動きの傾向を求めることができ、この傾向に基づいて第2特徴点の追跡を行うことができる。このため、認識対象物や撮像手段の動きに対して、より頑健に姿勢パラメータを推定することができる。
【0037】
(9) 本発明は、(1)から(8)のいずれかの姿勢パラメータ推定装置について、前記特徴点追跡手段は、前記状態推定手段により求められた前記度合いが予め定められた第3閾値以上である場合(例えば、後述の認識対象物の状態が移動状態である場合に相当)には、前記第2特徴点の追跡を行う領域を、前記状態推定手段が前記第1特徴点の追跡を行う領域よりも狭くすることを特徴とする姿勢パラメータ推定装置を提案している。
【0038】
この発明によれば、(1)から(8)のいずれかの姿勢パラメータ推定装置において、認識対象物が前フレームから移動した度合いが予め定められた第3閾値以上である場合には、特徴点追跡手段が第2特徴点の追跡を行う領域を、状態推定手段が第1特徴点の追跡を行う領域よりも狭くすることとした。このため、姿勢パラメータの推定処理の処理負荷を軽減することができる。
【0039】
(10) 本発明は、複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)、状態推定手段(例えば、図3の状態推定部133に相当)、特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)、および姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法であって、前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する第3のステップと、前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、を備え、前記第2のステップでは、前記状態推定手段が、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定方法を提案している。
【0040】
この発明によれば、状態推定手段により、まず、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、処理対象レベルとして決定することとした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。このため、上述した効果と同様の効果を奏することができる。
【0041】
(11) 本発明は、複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)、状態推定手段(例えば、図3の状態推定部133に相当)、特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)、および姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法であって、前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する第3のステップと、前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、を備え、前記第2のステップでは、前記状態推定手段が、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記第1のステップにより求められた各画像の解像度のうち予め定められた解像度(例えば、後述の認識対象物の状態が移動状態である場合には、後述の画像ピラミッドの最も高いレベルに相当し、後述の認識対象物の状態が静止状態である場合には、後述の画像ピラミッドの最も低いレベルに相当)に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定することを特徴とする姿勢パラメータ推定方法を提案している。
【0042】
この発明によれば、状態推定手段により、まず、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、処理対象レベルとして決定することとした。さらに、複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度に処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、第2特徴点の追跡と、認識対象物の姿勢パラメータの取得と、を繰り返し行うこととした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。このため、上述した効果と同様の効果を奏することができる。
【0043】
(12) 本発明は、複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)、状態推定手段(例えば、図3の状態推定部133に相当)、特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)、および姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法を、コンピュータに実行させるためのプログラムであって、前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する第3のステップと、前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、をコンピュータに実行させ、前記第2のステップでは、前記状態推定手段が、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、前記処理対象レベルとして決定し、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記処理対象レベルの画像が前記入力画像になるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定するためのプログラムを提案している。
【0044】
この発明によれば、コンピュータを用いてプログラムを実行することで、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが小さくなるに従って高い解像度を、処理対象レベルとして決定することとした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。このため、上述した効果と同様の効果を奏することができる。
【0045】
(13) 本発明は、複数解像度画像取得手段(例えば、図3の画像ピラミッド生成部132に相当)、状態推定手段(例えば、図3の状態推定部133に相当)、特徴点追跡手段(例えば、図3の特徴点追跡部134に相当)、および姿勢パラメータ更新手段(例えば、図3の姿勢パラメータ更新部135に相当)を備え、入力画像内の認識対象物の姿勢パラメータを推定する姿勢パラメータ推定装置における姿勢パラメータ推定方法を、コンピュータに実行させるためのプログラムであって、前記複数解像度画像取得手段が、前記入力画像と、当該入力画像と同一の画像であって当該入力画像より解像度の低い1つ以上の画像と、を求める第1のステップと、前記状態推定手段が、前記第1のステップにより求められた画像のうち最も解像度の低い画像(例えば、後述の画像ピラミッドの最も高いレベルの画像に相当)において、当該画像内における前記認識対象物の第1特徴点(例えば、後述の状態推定用特徴点に相当)を追跡して当該第1特徴点の前フレームからの移動量を求め、当該認識対象物が前フレームから移動した度合いを示す当該認識対象物の状態を当該移動量に基づいて求め、前記第1のステップにより求められた各画像の解像度のうち1つを処理対象レベルとして当該認識対象物の状態に基づいて決定する第2のステップと、前記特徴点追跡手段が、前記処理対象レベルの画像内における前記認識対象物の第2特徴点(例えば、後述の姿勢推定用特徴点に相当)を追跡する第3のステップと、前記姿勢パラメータ更新手段が、前記第3のステップによる前記第2特徴点の追跡結果に基づいて、前記処理対象レベルの画像内における前記認識対象物の姿勢パラメータを求める第4のステップと、をコンピュータに実行させ、前記第2のステップでは、前記状態推定手段が、前記第1のステップにより求められた各画像の解像度のうち、当該認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、前記処理対象レベルとして決定し、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、が前記処理対象レベルの画像において行われると、当該処理対象レベルを1段階高い解像度に更新し、前記第1のステップにより求められた各画像の解像度のうち予め定められた解像度(例えば、後述の認識対象物の状態が移動状態である場合には、後述の画像ピラミッドの最も高いレベルに相当し、後述の認識対象物の状態が静止状態である場合には、後述の画像ピラミッドの最も低いレベルに相当)に前記処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、前記第3のステップによる前記第2特徴点の追跡と、前記第4のステップによる前記認識対象物の姿勢パラメータの取得と、を繰り返し行って、当該入力画像内の認識対象物の姿勢パラメータを推定するためのプログラムを提案している。
【0046】
この発明によれば、コンピュータを用いてプログラムを実行することで、状態推定手段により、まず、複数解像度画像取得手段により求められた画像のうち最も解像度の低い画像において、認識対象物が前フレームから移動した度合いを求めることとした。次に、複数解像度画像取得手段により求められた各画像の解像度のうち、認識対象物が前フレームから移動した度合いが大きくなるに従って低い解像度を、処理対象レベルとして決定することとした。さらに、複数解像度画像取得手段により求められた各画像の解像度のうち予め定められた解像度に処理対象レベルがなるまで、解像度の低いものから順番に1回ずつ、第2特徴点の追跡と、認識対象物の姿勢パラメータの取得と、を繰り返し行うこととした。また、姿勢パラメータ更新手段により、第2特徴点の追跡結果に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求めることとした。このため、上述した効果と同様の効果を奏することができる。
【発明の効果】
【0047】
本発明によれば、認識対象物や撮像手段の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷を軽減することができる。
【図面の簡単な説明】
【0048】
図1】本発明の第1実施形態に係る姿勢パラメータ推定装置を備えるARシステムのブロック図である。
図2】前記実施形態に係る姿勢パラメータ推定装置のブロック図である。
図3】前記実施形態に係る姿勢パラメータ推定装置が備える姿勢パラメータ追跡部のブロック図である。
図4】前記実施形態に係る姿勢パラメータ推定装置が備える姿勢パラメータ追跡部が行う処理のフローチャートである。
図5】本発明の第2実施形態に係る姿勢パラメータ推定装置が備える姿勢パラメータ追跡部が行う処理のフローチャートである。
【発明を実施するための形態】
【0049】
以下、本発明の実施の形態について図面を参照しながら説明する。なお、以下の実施形態における構成要素は適宜、既存の構成要素などとの置き換えが可能であり、また、他の既存の構成要素との組み合せを含む様々なバリエーションが可能である。したがって、以下の実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0050】
<第1実施形態>
[ARシステム100の構成および動作]
図1は、本発明の第1実施形態に係る姿勢パラメータ推定装置1を備えるARシステム100のブロック図である。ARシステム100は、姿勢パラメータ推定装置1、撮像装置2、表示装置3、および付加情報記憶部4を備える。
【0051】
撮像装置2は、認識対象物の画像を連続的に取得し、これら画像を入力画像として姿勢パラメータ推定装置1および表示装置3に送信する。この撮像装置2は、WEBカメラといった画像を連続的に取得できるもので構成され、例えば携帯端末に搭載されているカメラモジュールであってもよい。なお、認識対象物は、形状や模様の既知である任意の3次元物体または2次元物体(画像)であるものとする。
【0052】
付加情報記憶部4は、認識対象物に紐付けられた付加情報を記憶している。付加情報は、例えば、CG(Computer Graphics)や2次元画像の情報で構成される。この付加情報記憶部4は、PCや携帯端末に設けられたHDD(Hard Disk Drive)やメモリモジュールなどの記憶装置で構成される。
【0053】
姿勢パラメータ推定装置1は、撮像装置2から送信された入力画像に基づいて、認識対象物の姿勢パラメータを推定し、表示装置3に送信する。また、ARシステム100が複数の物体を認識対象物とする場合には、推定した姿勢パラメータに加えて、これら複数の認識対象物のうちどれの姿勢パラメータなのかを示す情報も、表示装置3に送信する。姿勢パラメータ推定装置1の詳細については、後述する。
【0054】
なお、認識対象物の姿勢パラメータは、撮像装置2の外部パラメータとも呼ばれ、認識対象物と撮像装置2との相対的な位置および姿勢の関係を表し、一般に6自由度の行列で表現される。この認識対象物の姿勢パラメータ(撮像装置2の外部パラメータ)と、撮像装置2固有の焦点距離および主軸の位置の情報が含まれる行列(撮像装置2の内部パラメータ)と、その他光学的歪みのパラメータと、によって、表示装置3の表示画面内での物体の見え方が決まる。本実施形態では、内部パラメータや歪みパラメータは、予め、撮像装置2のカメラキャリブレーションなどによって取得され、歪みが取り除かれているものとする。
【0055】
表示装置3は、認識対象物に紐付けられた付加情報を付加情報記憶部4から読み出し、姿勢パラメータ推定装置1で推定された姿勢パラメータに応じて表示位置や向きを補正して、表示する。この表示装置3は、例えば、携帯端末のディスプレイや、ヘッドマウントディスプレイ(HMD)を含んで構成される。
【0056】
表示装置3が、携帯端末のディスプレイや、ビデオシースルー型のHMDである場合には、撮像装置2から送信された入力画像を表示するとともに、この入力画像に付加情報を重畳させて表示する。具体的には、認識対象物に紐付けられた付加情報を付加情報記憶部4から読み出し、姿勢パラメータ推定装置1で推定された姿勢パラメータに応じて表示位置や向きを決定する。そして、入力画像に対して、読み出した付加情報を決定した表示位置および向きで重畳させ、表示画面に表示する。
【0057】
また、表示装置3が、透過型のディスプレイや、光学シースルー型のHMDである場合には、付加情報のみを表示する。具体的には、認識対象物に紐付けられた付加情報を付加情報記憶部4から読み出し、姿勢パラメータ推定装置1で推定されたカメラ姿勢に応じて表示位置や向きを決定する。そして、表示画面の決定した表示位置に、決定した向きで付加情報を表示して、表示画面を透過してユーザが見ている視界に付加情報を重畳させる。
【0058】
以上の構成を備えるARシステム100は、ノートPCや携帯電話機や携帯ゲーム機などの携帯端末上で構築することが可能である。例えば認識対象物が地球儀である場合には、高度を視覚表示するように地表を重畳表示したり、過去の大陸形状を重畳表示したり、国境や国名に変更があった場合に新しい情報を重畳表示したり、ジェスチャー認識と組み合わせてユーザが指差した国名を重畳表示したり、といった利用例が想定される。
【0059】
[姿勢パラメータ推定装置1の構成および動作]
図2は、本発明の第1実施形態に係る姿勢パラメータ推定装置1のブロック図である。姿勢パラメータ推定装置1は、対象物識別部11、初期姿勢パラメータ推定部12、および姿勢パラメータ追跡部13を備える。
【0060】
(対象物識別部11の動作)
対象物識別部11は、撮像装置2から送信された入力画像に基づいて、入力画像内の認識対象物の識別処理を行い、その結果を識別結果として出力する。識別処理では、認識対象物から特徴量が予め検出されていることを前提として、まず、入力画像から局所特徴量を検出する。次に、検出した局所特徴量と、予め検出されている特徴量と、の照合を行って、認識対象物を識別する。
【0061】
なお、認識対象物が多数存在する場合には、上述の識別処理の処理負荷が高くなる。そこで、認識対象物が多数存在する場合には、姿勢パラメータ推定装置1は、外部に設けられた外部サーバに入力画像を送信し、外部サーバで上述の識別処理を行わせ、その結果を識別結果として受信するものとしてもよい。また、認識対象物の存在する数が少ない場合には、対象物識別部11による処理を省くものとしてもよい。
【0062】
(初期姿勢パラメータ推定部12の動作)
初期姿勢パラメータ推定部12は、撮像装置2から送信された入力画像と、対象物識別部11から出力された識別結果と、に基づいて初期姿勢パラメータ推定処理を行い、その結果を初期姿勢パラメータとして出力する。初期姿勢パラメータ推定処理では、例えば特許文献2や非特許文献1に示されているアルゴリズムにより、入力画像に含まれる認識対象物の姿勢パラメータを推定する。
【0063】
なお、後述の姿勢パラメータ追跡部13は、上述の初期姿勢パラメータを、姿勢パラメータの初期値として認識対象物の追跡を開始する場合に用いる。このため、初期姿勢パラメータ推定部12は、上述の初期姿勢パラメータ推定処理を、姿勢パラメータ追跡部13が認識対象物の追跡を開始する場合に行う。ただし、姿勢パラメータ追跡部13は、認識対象物の追跡に失敗する場合もある。そこで、姿勢パラメータ追跡部13による追跡が失敗した場合にも、初期姿勢パラメータ推定部12は、上述の初期姿勢パラメータ推定処理を行う。
【0064】
(姿勢パラメータ追跡部13の構成および動作)
姿勢パラメータ追跡部13は、撮像装置2から送信された入力画像と、後述の追跡処理の初期値と、に基づいて追跡処理を行って、認識対象物の姿勢パラメータを求めて出力する。追跡処理の初期値には、追跡処理の状況に応じたものを用いる。具体的には、認識対象物の追跡を開始する場合と、認識対象物の追跡に失敗した場合と、には、追跡処理の初期値として、初期姿勢パラメータ推定部12から出力される初期姿勢パラメータを用いる。一方、認識対象物の追跡に成功している場合、すなわち前フレームから継続して認識対象物を追跡している場合には、追跡処理の初期値として、前フレームにおいて追跡処理により求めた姿勢パラメータを用いる。
【0065】
図3は、姿勢パラメータ追跡部13のブロック図である。姿勢パラメータ追跡部13は、姿勢パラメータ予測部131、画像ピラミッド生成部132、状態推定部133、特徴点追跡部134、および姿勢パラメータ更新部135を備える。
【0066】
(姿勢パラメータ予測部131の動作)
姿勢パラメータ予測部131は、上述の追跡処理の初期値、すなわち、初期姿勢パラメータ推定部12から出力される初期姿勢パラメータと、姿勢パラメータ追跡部13により求められた前フレームにおける姿勢パラメータと、のいずれかに基づいて姿勢パラメータ予測処理を行い、その結果を姿勢パラメータ予測値として出力する。姿勢パラメータ予測処理では、上述の初期姿勢パラメータまたは前フレームにおける姿勢パラメータに基づいて、現在のフレームにおける姿勢パラメータ予測値を求める。
【0067】
なお、認識対象物の追跡に成功している場合には、姿勢パラメータ予測処理で予測アルゴリズムを用いる。予測アルゴリズムには、様々なものを適用することが可能である。例えば、認識対象物と撮像装置2との線形な運動モデルを仮定し、2フレーム前の姿勢パラメータと前フレームの姿勢パラメータとの差分(移動量)を前フレームの姿勢パラメータに適用して、現在のフレームにおける姿勢パラメータ予測値とするという予測アルゴリズムを、適用してもよい。
【0068】
また、姿勢パラメータ予測処理は、必ずしも行う必要はなく、前フレームの姿勢パラメータ予測値をそのまま用いるものとしてもよい。しかし、姿勢パラメータ予測処理を行うことによって、認識対象物や撮像装置2の動きに対する頑健性を向上させることができる場合がある。その一方で、認識対象物も撮像装置2も静止している状態では、姿勢パラメータ予測処理を行うと、ジッタ誤差を増幅してしまい、現在のフレームにおける姿勢パラメータ予測値を適切に求めることができなくなってしまう場合もある。
【0069】
そこで、姿勢パラメータ予測部131は、姿勢パラメータ予測処理を行うか否かを、後述の状態推定部133により推定された前フレームにおける認識対象物の状態に基づいて決定する。具体的には、前フレームにおける認識対象物の状態が後述の静止状態である場合には、姿勢パラメータ予測処理を行わず、前フレームにおいて追跡処理により求めた姿勢パラメータをそのまま出力する。一方、前フレームにおける認識対象物の状態が後述の移動状態である場合には、姿勢パラメータ予測処理を行う。
【0070】
(画像ピラミッド生成部132の動作)
画像ピラミッド生成部132は、撮像装置2から送信された入力画像を用いて画像ピラミッド生成して出力する。ここで、画像ピラミッドとは、同一画像で解像度の異なる2つ以上の画像の集合のことであり、画像に対して画像縮小処理を1回以上行うことによって生成される。
【0071】
ここで、画像縮小処理により画像を縮小する比率(スケールファクタとも呼ばれる)には、例えば1/2といった任意の値を設定することができる。画像縮小処理を行う回数をn回(nは、任意の正の整数)とすると、画像ピラミッドのレベル数は(n+1)になり、画像ピラミッドの最も低いレベル(plevel=0)に撮像装置2から送信された入力画像が設定され、レベルが高くなるに従って、解像度の低い画像が設定されることになる。
【0072】
なお、本実施形態では、画像縮小処理を行う回数を1回とする。このため、本実施形態では、画像ピラミッドのレベル数は2であり、最も低いレベルである1段目には、撮像装置2から送信された入力画像が設定され、最も高いレベルである2段目には、上述の入力画像に対して画像縮小処理を1回行ったものが設定されることになる。
【0073】
(状態推定部133の動作)
状態推定部133は、姿勢パラメータ予測部131から出力される姿勢パラメータ予測値を用いて後述の状態推定用特徴点の追跡結果を求めて出力するとともに、状態推定用特徴点の追跡結果を用いて認識対象物の状態を推定し、推定結果に応じた画像ピラミッドのレベルを求めて出力する。この状態推定部133は、状態推定用特徴点決定処理、状態推定用特徴点追跡処理、および状態推定処理を行う。
【0074】
まず、状態推定用特徴点決定処理について、以下に説明する。状態推定用特徴点決定処理では、状態推定部133は、状態推定用特徴点を決定する。状態推定用特徴点とは、後述の姿勢推定用特徴点の一種として姿勢パラメータ更新部135が用いることのできる特徴点のことであり、3次元座標の写った認識対象物の画像(キーフレーム)上の特徴点の3次元座標とピクセル座標との組、または、認識対象物の3次元モデルの頂点の座標で指定される。この状態推定用特徴点は、認識対象物の状態を推定するために用いられ、認識対象物の状態の推定には、画像ピラミッドの各レベルのうち最も高いレベルでのみ行われる。このため、状態推定用特徴点は、画像ピラミッドの最も高いレベルに対してのみ決定される。
【0075】
具体的には、状態推定用特徴点決定処理では、状態推定部133は、まず、後述の特徴点追跡部134により決定されたt点(tは、0<t<sを満たす整数)の姿勢推定用特徴点のうち、序列の高い上位u点(uは、0<u≦s−tを満たす整数)を状態推定用特徴点とする。詳細については後述するが、t点の姿勢推定用特徴点とは、認識対象物のs点(sは、任意の正の整数)の特徴点のうち序列の高い上位t点の特徴点、すなわちs点の特徴点のうち分布の外寄りに位置するt点の特徴点のことである。このため、t点の姿勢推定用特徴点のうち分布の外寄りに位置するu点の姿勢推定用特徴点が、u点の状態推定用特徴点になる。
【0076】
次に、状態推定部133は、u点の状態推定用特徴点のそれぞれについて、周囲の8×8の矩形領域の画素情報(輝度値)をキーフレームから取得して、切り出し画像とする。
【0077】
次に、状態推定用特徴点追跡処理について、以下に説明する。状態推定用特徴点追跡処理では、状態推定部133は、画像ピラミッドの最も高いレベルにおいて、上述のu点の状態推定用特徴点のそれぞれを追跡する。
【0078】
具体的には、状態推定用特徴点追跡処理では、状態推定部133は、まず、u点の状態推定用特徴点のそれぞれの3次元座標を、撮像装置2の内部パラメータと、上述の姿勢パラメータ予測値と、を用いて画像ピラミッドの最も高いレベルの画像上に投影し、このレベルにおける特徴点追跡の初期位置とする。なお、認識対象物が平面画像である場合には、特徴点追跡の初期位置は、ホモグラフィ変換によって決定される。
【0079】
ここで、撮像装置2から送信された入力画像において、認識対象物が見切れている場合には、上述の方法では特徴点追跡の初期位置を決定できない。そこで、上述の方法では特徴点追跡の初期位置を決定できない状態推定用特徴点については、u点の状態推定用特徴点から一時的に除外(無効化)するとともに、一時的に除外した状態推定用特徴点の数だけ上述のt点の姿勢推定用特徴点の中から状態推定用特徴点を補充して、状態推定用特徴点として用いる特徴点の数をu点に維持する。また、補充した状態推定用特徴点のそれぞれについて、周囲の8×8の矩形領域の画素情報(輝度値)をキーフレームから取得して、一時的に除外した状態推定用特徴点の中心とする切り出し画像と置き換えて、切り出し画像をu個に維持する。なお、補充する状態推定用特徴点には、上述の序列の高い姿勢推定用特徴点を選ぶ。
【0080】
次に、状態推定部133は、上述のu個の切り出し画像のそれぞれを、画像ピラミッドの最も高いレベルの画像と比較して、u個の切り出し画像のそれぞれについて、一致する領域を画像ピラミッドの最も高いレベルの画像の中から推定する。これら画像の比較では、NCC(Normalized Cross Correlation)や、ZNCC(Zero-mean Normalized Cross Correlation)を用いたマッチングを行う。マッチングによって高い相関を有する領域を求めることができると、この領域を切り出し画像と一致する領域であると推定する。これによれば、この領域の中心のピクセル座標が、u点の状態推定用特徴点のそれぞれの追跡位置になる。
【0081】
なお、姿勢パラメータ予測部131による姿勢パラメータ予測処理が理想的に行われた場合には、切り出し画像と一致する領域の中心は、画像ピラミッドの最も高いレベルの画像のうち特徴点追跡の初期位置と一致する。そこで、上述のマッチングについては、u個の切り出し画像のそれぞれについて、画像ピラミッドの最も高いレベルの画像のうち、このレベルにおける特徴点追跡の初期位置を中心として予め定められた領域(例えば、5×5の矩形領域)に限定して行う。
【0082】
次に、状態推定処理について、以下に説明する。状態推定処理では、状態推定部133は、上述の状態推定用特徴点追跡処理による追跡結果を用いて認識対象物の状態を推定し、推定結果に基づいて、入力画像に適した画像ピラミッドのレベルを2つのレベルの中から求める。
【0083】
具体的には、状態推定処理では、状態推定部133は、まず、上述の状態推定用特徴点追跡処理による追跡結果を用いて、u点の状態推定用特徴点のそれぞれの移動量を求める。u点の状態推定用特徴点のそれぞれの移動量とは、これらu点の状態推定用特徴点のそれぞれの前フレームからの移動量のことであり、上述の状態推定用特徴点追跡処理による追跡結果から2次元ベクトル(dx、dy)で表すことができる。これらu点の状態推定用特徴点のそれぞれの前フレームからの移動量は、姿勢パラメータ更新部135により求められた前フレームにおける姿勢パラメータを用いて画像ピラミッドの最も高いレベルの画像上に投影された状態推定用特徴点の位置を始点とし、上述の状態推定用特徴点追跡処理による追跡位置を終点とする、2次元ベクトルで求めることができる。
【0084】
次に、状態推定部133は、u点の状態推定用特徴点のそれぞれの移動量の平均と分散とを求める。そして、求めた平均が予め定められた平均閾値より小さく、かつ、求めた分散が予め定められた分散閾値より小さい場合には、認識対象物の状態(slevel)を静止状態(slevel=1)と判定する。一方、求めた平均が上述の平均閾値以上である場合と、求めた分散が上述の分散閾値以上である場合と、の少なくともいずれかの場合には、認識対象物の状態を移動状態(slevel=0)と判定する。
【0085】
次に、状態推定部133は、認識対象物の状態を移動状態と判定した場合には、入力画像に適した画像ピラミッドのレベル(plevel)を、最も高いレベルと判定する。そして、画像ピラミッドの処理対象レベルを、初期レベルである2段目のままとする。
【0086】
一方、認識対象物の状態を静止状態と判定した場合には、入力画像に適した画像ピラミッドのレベルを、最も低いレベル(plevel=plevel-slevel)、すなわち1段目と判定する。そして、画像ピラミッドの処理対象レベルを、初期レベルである2段目から1段目に遷移させる。
【0087】
(特徴点追跡部134の動作)
特徴点追跡部134は、姿勢パラメータ予測部131から出力される姿勢パラメータ予測値と、状態推定部から出力される処理対象レベルと、に基づいて、t点の姿勢推定用特徴点のそれぞれを追跡して出力する。
【0088】
具体的には、特徴点追跡部134は、まず、認識対象物の3次元モデルの投影画像、または、認識対象物を予め撮影した画像(対象物が平面画像の場合には、その平面画像そのものであってもよい)から、特徴点検出アルゴリズムを用いて特徴点をs点検出する。なお、上述の特徴点検出アルゴリズムには、例えば、Harris、Hessian、FASTなどを適用することができる。
【0089】
次に、特徴点追跡部134は、検出したs点の特徴点の重心を求め、s点の特徴点のそれぞれについて重心からの距離を求める。そして、重心からの距離の大きいからものから順にt点だけ、s点の特徴点の中から選び、これらt点の特徴点を姿勢推定用特徴点とする。これによれば、s点の特徴点のうち分布の外寄りに位置するものほど序列が高くなり、s点の特徴点のうち序列の高い上位t点の特徴点が、姿勢推定用特徴点となる。
【0090】
次に、特徴点追跡部134は、状態推定部133において決定された処理対象レベルの画像において、t点の姿勢推定用特徴点のそれぞれを、上述のu点の状態推定用特徴点のそれぞれと同様に追跡する。このため、特徴点追跡部134は、t点の姿勢推定用特徴点のそれぞれの追跡を、状態推定部133で求められた処理対象レベルの画像に対してのみ行うことになる。なお、上述の切り出し画像とのマッチングを行う領域については、状態推定部133から出力される処理対象レベルの画像のうち、姿勢パラメータ予測値により定まるt点の姿勢推定用特徴点のそれぞれの初期位置を中心として予め定められた領域に限定する。
【0091】
なお、状態推定部133において決定された処理対象レベルが、画像ピラミッドの最も高いレベルである場合には、t点の姿勢推定用特徴点のうちu点の状態推定用特徴点については、認識対象物の状態を推定する際に状態推定部133で既に追跡されている。このため、状態推定部133において決定された処理対象レベルが、画像ピラミッドの最も高いレベルである場合には、特徴点追跡部134は、t点の姿勢推定用特徴点のうちu点の状態推定用特徴点を除くものについてのみ、上述の追跡を行う。
【0092】
(姿勢パラメータ更新部135の動作)
姿勢パラメータ更新部135は、姿勢パラメータ予測部131から出力される姿勢パラメータ予測値と、状態推定部133による状態推定用特徴点の追跡結果と、特徴点追跡部134による姿勢推定用特徴点の追跡結果と、に基づいて、認識対象物の姿勢パラメータを推定する。これら追跡結果は、特徴点の3次元座標と、その特徴点の入力画像上のピクセル座標(追跡位置)と、の組で構成される。これら3次元座標とピクセル座標との関係は、以下の式(1)で表される。
【0093】
【数1】
【0094】
式(1)において、[X、Y、Z]は、特徴点の3次元座標を示し、[u、v]は、特徴点の入力画像上におけるピクセル座標を示し、[・]は、転置行列を示す。また、Aは、撮像装置2の内部パラメータを示し、Wは、撮像装置2の外部パラメータ(姿勢パラメータ)を示す。姿勢パラメータの推定値W^は、姿勢パラメータ予測部131から出力される姿勢パラメータ予測値を初期値として、非線形の最適化手法を用いて以下の式(2)で求めることができる。
【0095】
【数2】
【0096】
式(2)において、m’は、入力画像上の追跡位置を示し、ρ(・)は、ロバスト推定の重み係数を示す。
【0097】
図4は、姿勢パラメータ追跡部13が行う処理のフローチャートである。
【0098】
ステップS1において、姿勢パラメータ追跡部13は、姿勢パラメータ予測部131により、上述の姿勢パラメータ予測処理を行って、姿勢パラメータ予測値を生成し、ステップS2に処理を移す。
【0099】
ステップS2において、姿勢パラメータ追跡部13は、画像ピラミッド生成部132により、入力画像を用いて画像ピラミッドを生成し、ステップS3に処理を移す。
【0100】
ステップS3において、姿勢パラメータ追跡部13は、特徴点追跡部134により、姿勢推定用特徴点を決定し、ステップS4に処理を移す。
【0101】
ステップS4において、姿勢パラメータ追跡部13は、状態推定部133により、上述の状態推定用特徴点決定処理を行って状態推定用特徴点を決定し、ステップS5に処理を移す。
【0102】
ステップS5において、姿勢パラメータ追跡部13は、状態推定部133により、画像ピラミッドの処理対象レベルの初期レベルである2段目の画像を用いて、上述の状態推定用特徴点追跡処理を行って状態推定用特徴点を追跡し、ステップS6に処理を移す。
【0103】
ステップS6において、姿勢パラメータ追跡部13は、状態推定部133により、上述の状態推定処理を行って認識対象物の状態を推定し、ステップS7に処理を移す。
【0104】
ステップS7において、姿勢パラメータ追跡部13は、状態推定部133により、ステップS6において推定した認識対象物の状態が静止状態であるか否かを判別する。そして、静止状態であると判別した場合には、ステップS8に処理を移し、移動状態であると判別した場合には、ステップS9に処理を移す。
【0105】
ステップS8において、姿勢パラメータ追跡部13は、状態推定部133により、画像ピラミッドの処理対象レベルを2段目から1段目に遷移させ、ステップS9に処理を移す。
【0106】
ステップS9において、姿勢パラメータ追跡部13は、特徴点追跡部134により、画像ピラミッドの処理対象レベルの画像を用いて、姿勢推定用特徴点を追跡し、ステップS10に処理を移す。なお、ステップS7において認識対象物の状態が移動状態であると判別した場合には、ステップS3において決定した姿勢推定用特徴点のうちステップS4において決定した状態推定用特徴点を除くものについて、上述の追跡を行う。
【0107】
ステップS10において、姿勢パラメータ追跡部13は、姿勢パラメータ更新部135により、ステップS9における姿勢推定用特徴点の追跡結果に基づいて、認識対象物の姿勢パラメータを推定し、図4に示す処理を終了する。なお、ステップS7において認識対象物の状態が移動状態であると判別した場合には、ステップS9における姿勢推定用特徴点の追跡結果だけでなく、ステップS5における状態推定用特徴点の追跡結果にも基づいて、認識対象物の姿勢パラメータの推定を行う。
【0108】
以上の姿勢パラメータ推定装置1によれば、以下の効果を奏することができる。
【0109】
姿勢パラメータ推定装置1は、画像ピラミッドの最も高いレベルの画像において、状態推定用特徴点の前フレームからの移動量を求めることで認識対象物の状態を推定する。そして、認識対象物の状態が静止状態であれば、画像ピラミッドの最も低いレベルを処理対象レベルとする。このため、認識対象物の状態が静止状態である場合、すなわち認識対象物が前フレームからあまり移動していない場合に、姿勢推定用特徴点を追跡する処理と、姿勢パラメータを取得する処理と、の2つの処理を画像ピラミッドの最も高いレベルの画像を用いて行うのを省略することができ、認識対象物や撮像装置2の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷を軽減することができる。
【0110】
また、姿勢パラメータ推定装置1は、認識対象物の状態が移動状態であれば、画像ピラミッドの最も高いレベルを処理対象レベルとする。そして、姿勢推定用特徴点を追跡する処理と、姿勢パラメータを取得する処理と、の2つの処理を、画像ピラミッドの最も低いレベルの画像に対しては行わない。このため、認識対象物の状態が移動状態である場合、すなわち認識対象物が前フレームから大きく移動している場合に、姿勢推定用特徴点を追跡する処理と、姿勢パラメータを取得する処理と、の2つの処理を画像ピラミッドの最も低いレベルの画像を用いて行うのを省略することができ、認識対象物や撮像装置2の動きに対する頑健性を確保しつつ、姿勢パラメータの推定処理の処理負荷をさらに軽減することができる。
【0111】
また、姿勢パラメータ推定装置1は、画像ピラミッドの最も高いレベルの画像において、状態推定用特徴点の追跡結果と、姿勢推定用特徴点(ただし、状態推定用特徴点を除く)の追跡結果と、に基づいて、処理対象レベルの画像内における認識対象物の姿勢パラメータを求める。このため、姿勢推定用特徴点の追跡結果だけでなく、認識対象物の状態を求めるために行う状態推定用特徴点の追跡の結果も、姿勢パラメータの推定に用いることになる。したがって、認識対象物の状態を求めるための処理の一部である、状態推定用特徴点を追跡する処理は、姿勢パラメータの推定精度の確保のための処理としても用いることができるので、認識対象物の状態を求めるために処理負荷が増加してしまうのを、抑制することができる。
【0112】
また、姿勢パラメータ推定装置1は、s点の特徴点のうちこれら特徴点の分布の外寄りに位置するものほど序列を高くし、s点の特徴点のうち序列の高い上位t点の特徴点を姿勢推定用特徴点とし、画像ピラミッドの最も高いレベルにおいては、これらt点の姿勢推定用特徴点のうち序列の高い上位u点の姿勢推定用特徴点を状態推定用特徴点とする。このため、s点の特徴点のうち序列の高い上位u点の特徴点を状態推定用特徴点として用いることができるので、認識対象物が前フレームからどれだけ移動しているかを、より高精度に推定することができ、認識対象物の状態をより高精度に推定することができる。
【0113】
また、姿勢パラメータ推定装置1は、s点の特徴点のうちこれら特徴点の分布の外寄りに位置するものほど序列を高くし、s点の特徴点のうち序列の高い上位t点の特徴点を姿勢推定用特徴点とし、画像ピラミッドの最も高いレベルにおいては、これらt点の姿勢推定用特徴点のうち序列の高い上位u点の姿勢推定用特徴点を状態推定用特徴点とする。さらに、画像ピラミッドの最も高いレベルにおいては、u点の状態推定用特徴点の追跡結果と、t点の姿勢推定用特徴点のうちu点の状態推定用特徴点を除くものの追跡結果と、に基づいて、認識対象物の姿勢パラメータを推定する。このため、画像ピラミッドの最も高いレベルの画像において、t点の姿勢推定用特徴点の一部が認識対象物の状態を推定するために用いられることになるが、認識対象物の姿勢パラメータの推定には、t点の姿勢推定用特徴点を追跡した結果が用いられることになる。したがって、認識対象物の状態を推定しても、姿勢パラメータの推定精度を確保できる。
【0114】
また、姿勢パラメータ推定装置1は、姿勢パラメータ予測部131により、姿勢パラメータ更新部135により求められた前フレームにおける姿勢パラメータを用いて、認識対象物の姿勢パラメータ予測値を求める。そして、姿勢パラメータ予測部131により求められた姿勢パラメータ予測値を、状態推定部133、特徴点追跡部134、および姿勢パラメータ更新部135で用いる。このため、前フレームにおける姿勢パラメータを用いて現在のフレームにおける姿勢パラメータを推定できるので、姿勢パラメータの推定精度を向上させることができる。
【0115】
また、姿勢パラメータ推定装置1は、前フレームにおける認識対象物の状態が静止状態である場合には、姿勢パラメータ予測部131では姿勢パラメータ予測処理を行わず、姿勢パラメータ予測部131は、姿勢パラメータ更新部135により求められた前フレームの姿勢パラメータをそのまま出力する。このため、認識対象物の状態が静止状態である場合に、ジッタ誤差が増幅されてしまうのを防止でき、現在のフレームにおける姿勢パラメータの予測値を適切に求めることができる。
【0116】
<第2実施形態>
[姿勢パラメータ推定装置1Aの構成および動作]
本発明の第2実施形態に係る姿勢パラメータ推定装置1Aについて、以下に説明する。この姿勢パラメータ推定装置1Aは、本発明の第1実施形態に係る姿勢パラメータ推定装置1の代わりに図1のARシステム100に用いることができ、姿勢パラメータ推定装置1とは、姿勢パラメータ追跡部13の代わりに姿勢パラメータ追跡部13Aを備える点が異なる。なお、姿勢パラメータ推定装置1Aにおいて、姿勢パラメータ推定装置1と同一構成要件については、同一符号を付し、その説明を省略する。
【0117】
(姿勢パラメータ追跡部13Aの構成および動作)
姿勢パラメータ追跡部13Aは、姿勢パラメータ追跡部13とは、画像ピラミッド生成部132の代わりに画像ピラミッド生成部132Aを備える点と、状態推定部133の代わりに状態推定部133Aを備える点と、特徴点追跡部134の代わりに特徴点追跡部134Aを備える点と、姿勢パラメータ更新部135の代わりに姿勢パラメータ更新部135Aを備える点と、が異なる。
【0118】
(画像ピラミッド生成部132Aの動作)
画像ピラミッド生成部132Aは、画像ピラミッド生成部132と同様に、画像ピラミッドを生成して出力する。ただし、画像ピラミッド生成部132は、画像縮小処理を1回行うのに対して、画像ピラミッド生成部132Aは、画像縮小処理をp(pは、p≧2を満たす整数)回行う。このため、本実施形態では、画像ピラミッドのレベル数は(p+1)であり、最も低いレベルである1段目には、撮像装置2から送信された入力画像が設定され、最も高いレベルである(p+1)段目には、上述の入力画像に対して画像縮小処理をp回行ったものが設定され、q段目(qは、2≦q≦pを満たす任意の整数)には、上述の入力画像に対して画像縮小処理を(q−1)回行ったものが設定される。
【0119】
(状態推定部133Aの動作)
状態推定部133Aは、状態推定部133と同様に、状態推定用特徴点決定処理、状態推定用特徴点追跡処理、および状態推定処理を行って、状態推定用特徴点の追跡結果を求めて出力するとともに、認識対象物の状態を推定し、推定結果に応じた画像ピラミッドのレベルを求めて出力する。
【0120】
ただし、状態推定処理において、状態推定部133は、認識対象物の状態を静止状態と移動状態との2つの状態の中から判定し、入力画像に適した画像ピラミッドのレベルを2つのレベルの中から求める。これに対して、状態推定部133Aは、認識対象物の状態を(p+1)個の状態の中から判定し、入力画像に適した画像ピラミッドのレベルを(p+1)個のレベルの中から求める。具体的には、状態推定部133Aは、u点の状態推定用特徴点のそれぞれの移動量の平均および分散に基づいて、(p+1)個の状態の中から認識対象物の状態を判定する。そして、判定した認識対象物の状態に応じたレベルを、入力画像に適した画像ピラミッドのレベルと判定し、判定したレベルに画像ピラミッドの処理対象レベルを遷移させる。
【0121】
(特徴点追跡部134Aの動作)
特徴点追跡部134Aは、特徴点追跡部134と同様に、姿勢推定用特徴点を決定する。ただし、姿勢推定用特徴点の数を示す「t」の値が、特徴点追跡部134では、画像ピラミッドのレベルによらず一定であるに対して、特徴点追跡部134Aでは、画像ピラミッドのレベルごとに異なる。
【0122】
具体的には、特徴点追跡部134Aは、画像ピラミッドのレベルが低くなるに従って、姿勢推定用特徴点の数を示す「t」の値を大きくする。このため、画像ピラミッドのレベルが低くなるに従って、姿勢推定用特徴点の数が多くなる。
【0123】
また、特徴点追跡部134Aは、特徴点追跡部134と同様に、t点の姿勢推定用特徴点のそれぞれを追跡する。ただし、t点の姿勢推定用特徴点のそれぞれの追跡を、特徴点追跡部134は、状態推定部133で求められた処理対象レベルにおいてのみ行うのに対して、特徴点追跡部134Aは、状態推定部133Aで求められた処理対象レベルから最も低いレベルである1段目まで、特徴点追跡手法により繰り返し行う。
【0124】
特徴点追跡手法については、例えば非特許文献1にPatch Trackerという名称で示されている。このマッチングは、まず、画像ピラミッドの最も高いレベルの画像に対して行われる。このため、探索範囲が狭くても、入力画像では広い範囲を探索したことに相当し、認識対象物や撮像手段の動きに対して頑健な特徴点追跡が可能になる。また、このマッチングは、画像ピラミッドの最も高いレベルの画像に対して行うことで得られた、比較的広い探索範囲(例えば5×5)で荒く推定した姿勢パラメータを初期値として、画像ピラミッドの低いレベルの画像に対して狭い探索範囲(例えば2×2)で行われる。このため、高精度な特徴点追跡を行うことができ、特徴点の追跡精度の低下を抑えることができる。
【0125】
具体的には、状態推定部133Aにおいて、処理対象レベルがr段目(rは、2≦r≦pを満たす整数)になったものとする。すると、特徴点追跡部134Aは、まず、t点の姿勢推定用特徴点のそれぞれの3次元座標を、撮像装置2の内部パラメータと、姿勢パラメータ予測部131により求められた姿勢パラメータ予測値と、を用いて画像ピラミッドのr段目の画像上に投影し、画像ピラミッドのr段目における特徴点追跡の初期位置とする。次に、画像ピラミッドのr段目の画像のうち、画像ピラミッドのr段目における特徴点追跡の初期位置を中心として、予め定められた領域に限定して、上述のマッチングを行って、画像ピラミッドのr段目におけるt点の姿勢推定用特徴点のそれぞれの追跡結果を求める。
【0126】
次に、t点の姿勢推定用特徴点のそれぞれの3次元座標を、撮像装置2の内部パラメータと、姿勢パラメータ更新部135Aから出力される画像ピラミッドのr段目における姿勢パラメータと、を用いて画像ピラミッドの(r−1)段目の画像上に投影し、画像ピラミッドの(r−1)段目における特徴点追跡の初期位置とする。次に、画像ピラミッドの(r−1)段目の画像のうち、画像ピラミッドの(r−1)段目における特徴点追跡の初期位置を中心として、予め定められた領域に限定して、上述のマッチングを行って、画像ピラミッドの(r−1)段目におけるt点の姿勢推定用特徴点のそれぞれの追跡結果を求める。
【0127】
以降、画像ピラミッドの(r−a)段目(aは、0≦a<r−1を満たす任意の整数)の画像のうち、画像ピラミッドの(r−a+1)段目の姿勢パラメータを用いて求めた特徴点追跡の初期位置を中心として予め定められた領域で、t点の姿勢推定用特徴点のそれぞれの追跡結果を求めることを、画像ピラミッドの1段目の画像に対して行うまで、繰り返す。そして、画像ピラミッドの1段目の画像における追跡により求めたt点の姿勢推定用特徴点の追跡結果を出力する。
【0128】
(姿勢パラメータ更新部135Aの動作)
姿勢パラメータ更新部135Aは、姿勢パラメータ更新部135と同様に、画像ピラミッドの最も高いレベルにおいては、状態推定部133Aによる状態推定用特徴点の追跡結果と、特徴点追跡部134Aによる姿勢推定用特徴点の追跡結果と、に基づいて、認識対象物の姿勢パラメータを推定する。また、画像ピラミッドの最も高いレベル以外のレベルにおいては、特徴点追跡部134Aによる姿勢推定用特徴点の追跡結果に基づいて、認識対象物の姿勢パラメータを推定する。ただし、認識対象物の姿勢パラメータの推定を、姿勢パラメータ更新部135は、状態推定部133で求められた処理対象レベルでのみ行うのに対して、姿勢パラメータ更新部135Aは、状態推定部133Aで求められた処理対象レベルから最も低いレベルである1段目まで、繰り返し行う。
【0129】
図5は、姿勢パラメータ追跡部13Aが行う処理のフローチャートである。
【0130】
ステップS21において、姿勢パラメータ追跡部13Aは、姿勢パラメータ予測部131により、上述の姿勢パラメータ予測処理を行って、姿勢パラメータ予測値を生成し、ステップS22に処理を移す。
【0131】
ステップS22において、姿勢パラメータ追跡部13Aは、画像ピラミッド生成部132Aにより、入力画像を用いて画像ピラミッドを生成し、ステップS23に処理を移す。
【0132】
ステップS23において、姿勢パラメータ追跡部13Aは、特徴点追跡部134Aにより、画像ピラミッドのレベルごとに姿勢推定用特徴点を決定し、ステップS24に処理を移す。
【0133】
ステップS24において、姿勢パラメータ追跡部13Aは、状態推定部133Aにより、上述の状態推定用特徴点決定処理を行って状態推定用特徴点を決定し、ステップS25に処理を移す。
【0134】
ステップS25において、姿勢パラメータ追跡部13Aは、状態推定部133Aにより、画像ピラミッドの処理対象レベルの初期レベルである(p+1)段目の画像を用いて、上述の状態推定用特徴点追跡処理を行って状態推定用特徴点を追跡し、ステップS26に処理を移す。
【0135】
ステップS26において、姿勢パラメータ追跡部13Aは、状態推定部133Aにより、上述の状態推定処理を行って認識対象物の状態を推定し、ステップS27に処理を移す。
【0136】
ステップS27において、姿勢パラメータ追跡部13Aは、状態推定部133Aにより、ステップS26において推定した認識対象物の状態に応じたレベルに画像ピラミッドの処理対象レベルを遷移させ、ステップS28に処理を移す。
【0137】
ステップS28において、姿勢パラメータ追跡部13Aは、特徴点追跡部134Aにより、画像ピラミッドの処理対象レベルの画像を用いて、ステップS23において決定した姿勢推定用特徴点を追跡し、ステップS29に処理を移す。
【0138】
ステップS29において、姿勢パラメータ追跡部13Aは、姿勢パラメータ更新部135Aにより、ステップS28における姿勢推定用特徴点の追跡結果に基づいて、認識対象物の姿勢パラメータを推定し、図5に示す処理を終了する。また、ステップS27において遷移させた処理対象レベルが初期レベルのままである場合には、ステップS28における姿勢推定用特徴点の追跡結果だけでなく、ステップS25における状態推定用特徴点の追跡結果にも基づいて、認識対象物の姿勢パラメータの推定を行う。
【0139】
ステップS30において、姿勢パラメータ追跡部13Aは、特徴点追跡部134Aにより、処理対象レベルが最も低いレベルであるか否かを判別する。そして、処理対象レベルが最も低いレベルであると判別した場合には、図5に示す処理を終了し、処理対象レベルが最も低いレベルではないと判別した場合には、ステップS31に処理を移す。
【0140】
ステップS31において、姿勢パラメータ追跡部13Aは、特徴点追跡部134Aにより、画像ピラミッドの処理対象レベルを1つ下の段に遷移させ、ステップS28に処理を戻す。
【0141】
以上の姿勢パラメータ推定装置1Aによれば、姿勢パラメータ推定装置1が奏することのできる上述の効果に加えて、以下の効果を奏することができる。
【0142】
姿勢パラメータ推定装置1Aは、レベル数が3以上である画像ピラミッドを入力画像を用いて生成し、レベル数が3以上である画像ピラミッドを用いて、姿勢パラメータを推定することができる。
【0143】
また、姿勢パラメータ推定装置1Aは、姿勢推定用特徴点の数を、画像ピラミッドのレベルが低くなるに従って多くする。このため、解像度の高い画像では、解像度の低い画像と比べて、多くの姿勢推定用特徴点を追跡することができ、姿勢パラメータの推定精度を向上させることができる。
【0144】
なお、本発明の姿勢パラメータ推定装置1や姿勢パラメータ推定装置1Aの処理を、コンピュータ読み取り可能な非一時的な記録媒体に記録し、この記録媒体に記録されたプログラムを姿勢パラメータ推定装置1や姿勢パラメータ推定装置1Aに読み込ませ、実行することによって、本発明を実現できる。
【0145】
ここで、上述の記録媒体には、例えば、EPROMやフラッシュメモリといった不揮発性のメモリ、ハードディスクといった磁気ディスク、CD−ROMなどを適用できる。また、この記録媒体に記録されたプログラムの読み込みおよび実行は、姿勢パラメータ推定装置1や姿勢パラメータ推定装置1Aに設けられたプロセッサによって行われる。
【0146】
また、上述のプログラムは、このプログラムを記憶装置などに格納した姿勢パラメータ推定装置1や姿勢パラメータ推定装置1Aから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネットなどのネットワーク(通信網)や電話回線などの通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0147】
また、上述のプログラムは、上述の機能の一部を実現するためのものであってもよい。さらに、上述の機能を姿勢パラメータ推定装置1や姿勢パラメータ推定装置1Aにすでに記録されているプログラムとの組み合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0148】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計なども含まれる。
【0149】
例えば、上述の各実施形態では、画像ピラミッド生成部132、132Aは、画像縮小処理を行うものとしたが、これに限らず、例えば画像縮小処理に加えて平滑化処理も行うものとしてもよい。
【0150】
また、上述の各実施形態では、状態推定部133、133Aは、切り出し画像を求める際に、u点の状態推定用特徴点のそれぞれについて、周囲の8×8の矩形領域の画素情報をキーフレームから取得するものとしたが、これに限らず、例えば周囲の4×4や16×16の矩形領域の画素情報をキーフレームから取得するものとしてもよい。
【0151】
また、上述の各実施形態では、t点の姿勢推定用特徴点の中からu点の状態推定用特徴点を決定することとしたが、これに限らない。例えば、認識対象物のs点の特徴点の中からや、認識対象物のs点の特徴点のうちt点の姿勢推定用特徴点を除くものの中から、序列の高い上位u点の特徴点を選択し、これらを状態推定用特徴点としてもよい。これらの場合には、画像ピラミッドの最も高いレベルにおいて、t点の全ての姿勢推定用特徴点を追跡し、これらt点の全ての姿勢推定用特徴点の追跡結果を用いて、すなわちu点の状態推定用特徴点の追跡結果は用いることなく、認識対象物の姿勢パラメータを推定してもよい。
【0152】
また、上述の各実施形態において、特徴点追跡部134、134Aは、認識対象物の状態が移動状態である場合には、u点の状態推定用特徴点のそれぞれの移動量の平均値を、姿勢パラメータ予測部131から出力される姿勢パラメータ予測値を用いて求まる特徴点追跡の初期位置に加えて、マッチングを行ってもよい。これによれば、u点の状態推定用特徴点のそれぞれの移動量の平均値から、特徴点の動きの傾向(例えば、画像の左側から右側に特徴点が移動するという傾向など)を求めることができ、この傾向に基づいてマッチングを行う領域を補正することができる。このため、認識対象物や撮像手段の動きに対して、より頑健な姿勢パラメータを推定することができる。
【0153】
また、上述の各実施形態において、特徴点追跡部134、134Aは、認識対象物の状態が移動状態である場合には、マッチングを行う領域を、状態推定部133、133Aがマッチングを行う領域よりも狭くしてもよい。これによれば、姿勢パラメータの推定処理の処理負荷をさらに軽減することができる。また、特に、u点の状態推定用特徴点のそれぞれの移動量の分散が予め定められた閾値より小さい場合にのみ、特徴点追跡部134、134Aは、マッチングを行う領域を、状態推定部133、133Aがマッチングを行う領域よりも狭くしてもよい。これによれば、u点の状態推定用特徴点のそれぞれの移動量の信頼性が高い場合にのみ、特徴点追跡部134、134Aがマッチングを行う領域を狭くすることができ、姿勢推定用特徴点の追跡を高精度に行うことができる。
【0154】
また、上述の各実施形態において、画像ピラミッド生成部132、132Aは、入力画像と、この入力画像に対して画像縮小処理を行ったものと、で画像ピラミッドを構成するものとしたが、これに限らない。例えば、撮像装置2と、撮像装置2より有効画素数の少ない1つ以上の撮像装置と、で同じ画像を取得すると、同一の画像であって解像度の異なる画像を取得することができる。そこで、これら撮像装置2および撮像装置により同一の画像で解像度の異なる画像を取得し、これら画像で画像ピラミッドを構成するものとしてもよい。
【0155】
また、上述の第2実施形態では、特徴点追跡部134Aは、画像ピラミッドの(r−a)段目(aは、0≦a<r−1を満たす任意の整数)の画像のうち、画像ピラミッドの(r−a+1)段目の姿勢パラメータを用いて求めた特徴点追跡の初期位置を中心として予め定められた領域で、t点の姿勢推定用特徴点のそれぞれの追跡結果を求めることを、画像ピラミッドの1段目の画像に対して行うまで、繰り返すものとした。しかし、これに限らず、画像ピラミッドの(r−a)段目(aは、0≦a<r−1を満たす任意の整数)の画像のうち、画像ピラミッドの(r−a+1)段目の姿勢パラメータを用いて求めた特徴点追跡の初期位置を中心として予め定められた領域で、t点の姿勢推定用特徴点のそれぞれの追跡結果を求めることを、画像ピラミッドのb段目(bは、b≧2を満たす整数)の画像に対して行うまで、繰り返すものとしてもよい。
【符号の説明】
【0156】
1、1A・・・姿勢パラメータ推定装置
2・・・撮像装置
3・・・表示装置
4・・・付加情報記憶部
11・・・対象物識別部
12・・・初期姿勢パラメータ推定部
13、13A・・・姿勢パラメータ追跡部
131・・・姿勢パラメータ予測部
132、132A・・・画像ピラミッド生成部
133、133A・・・状態推定部
134、134A・・・特徴点追跡部
135、135A・・・姿勢パラメータ更新部
100・・・ARシステム
図1
図2
図3
図4
図5