(57)【特許請求の範囲】
【請求項１】
追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、前記第１の画像フレームにおける対象物の推定存在確率分布に基づき、前記第２の画像フレームにおける対象物の候補輪郭を定める候補輪郭決定部と、
前記候補輪郭決定部が定めた候補輪郭と、前記第２の画像フレームのエッジ画像とをマッチングして、前記候補輪郭の尤度を観測する観測部と、
前記観測部が観測した尤度に基づき、前記第２の画像フレームにおける対象物の存在確率分布を推定する結果取得部と、を備え、
前記観測部は、
前記候補輪郭の曲線を構成するノットごとに、当該ノットに対して定まる探索領域を前記エッジ画像から切り出して配下のローカルメモリに保存したうえ、当該ノットから最近傍にあるエッジを、切り出した探索領域内で探索するエッジ探索処理を並列に実行する複数の探索部と、
前記探索部が探索した結果を統合して前記候補輪郭ごとに尤度を求める尤度取得部と、
を備え、
前記複数の探索部はそれぞれ、あるノットに対するエッジ探索処理と、次にエッジ探索を行うノットに対する探索領域の切り出し処理とを並列に実行し、
前記探索領域のサイズは、前記エッジ探索処理の時間と、前記探索領域の切り出し処理の時間との比較に基づき決定することを特徴とする対象物追跡装置。
【請求項２】
前記候補輪郭決定部は、前記第１の画像フレームにおける対象物の推定存在確率分布に基づき、前記第２の画像フレームにおける対象物の候補輪郭を定めるパラメータ空間上にパーティクルフィルタに用いるパーティクルを生成し、各パーティクルを所定の運動モデルに則り遷移させることにより前記候補輪郭を定めることを特徴とする請求項１に記載の対象物追跡装置。
【請求項３】
前記複数の探索部はそれぞれ、ノットを重心とする矩形の領域を前記探索領域として前記エッジ画像から切り出すことを特徴とする請求項１または２に記載の対象物追跡装置。
【請求項４】
前記探索部は、前記エッジ探索処理の時間と前記探索領域の切り出し処理の時間とを実測して比較することにより、前記探索領域のサイズを調整することを特徴とする請求項１から３のいずれかに記載の対象物追跡装置。
【請求項５】
前記複数の探索部は、各ノットの座標情報と当該ノットに対する探索領域に係る情報とを含むエッジ探索の処理要求を格納したタスクキューから、いずれかの処理要求を順次読み出すことにより、前記エッジ探索処理を並列に実行することを特徴とする請求項１から４のいずれかに記載の対象物追跡装置。
【請求項６】
対象物追跡装置において、追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、前記第１の画像フレームにおける対象物の推定存在確率分布に基づき、前記第２の画像フレームにおける対象物の候補輪郭を定めるステップと、
前記第２の画像フレームのエッジ画像を生成してメモリに格納するステップと、
前記メモリに格納したエッジ画像のうち、前記候補輪郭の曲線を構成するノットのそれぞれに対して定まる探索領域を前記エッジ画像から切り出してローカルメモリに保存したうえ、当該ノットから最近傍にあるエッジを、切り出した探索領域内で探索するエッジ探索処理を、ノットごとに並列に実行するステップと、
探索した結果を統合して前記候補輪郭ごとに尤度を求め、前記第２の画像フレームにおける対象物の存在確率分布を推定するステップと、
を含み、
前記ノットごとに並列に実行するステップは、あるノットに対するエッジ探索処理と、次にエッジ探索を行うノットに対する探索領域の切り出し処理とを並列に実行し、
前記探索領域のサイズは、前記エッジ探索処理の時間と、前記探索領域の切り出し処理の時間との比較に基づき決定することを特徴とする対象物追跡方法。
【請求項７】
前記探索領域のサイズは、前記エッジ探索処理の時間と前記探索領域の切り出し処理の時間とを実測して比較することにより調整することを特徴とする請求項６に記載の対象物追跡方法。
【請求項８】
追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、前記第１の画像フレームにおける対象物の推定存在確率分布に基づき、前記第２の画像フレームにおける対象物の候補輪郭を定める機能と、
前記第２の画像フレームのエッジ画像を生成してメモリに格納する機能と、
前記メモリに格納したエッジ画像のうち、前記候補輪郭の曲線を構成するノットのそれぞれに対して定まる探索領域を前記エッジ画像から切り出してローカルメモリに保存したうえ、当該ノットから最近傍にあるエッジを、切り出した探索領域内で探索するエッジ探索処理を、ノットごとに並列に実行する機能と、
探索した結果を統合して前記候補輪郭ごとに尤度を求め、前記第２の画像フレームにおける対象物の存在確率分布を推定する機能と、
をコンピュータに実現させ、
前記ノットごとに並列に実行する機能は、あるノットに対するエッジ探索処理と、次にエッジ探索を行うノットに対する探索領域の切り出し処理とを並列に実行し、
前記探索領域のサイズは、前記エッジ探索処理の時間と、前記探索領域の切り出し処理の時間との比較に基づき決定することを特徴とするコンピュータプログラム。
【請求項９】
追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、前記第１の画像フレームにおける対象物の推定存在確率分布に基づき、前記第２の画像フレームにおける対象物の候補輪郭を定める機能と、
前記第２の画像フレームのエッジ画像を生成してメモリに格納する機能と、
前記メモリに格納したエッジ画像のうち、前記候補輪郭の曲線を構成するノットのそれぞれに対して定まる探索領域を前記エッジ画像から切り出してローカルメモリに保存したうえ、当該ノットから最近傍にあるエッジを、切り出した探索領域内で探索するエッジ探索処理を、ノットごとに並列に実行する機能と、
探索した結果を統合して前記候補輪郭ごとに尤度を求め、前記第２の画像フレームにおける対象物の存在確率分布を推定する機能と、
をコンピュータに実現させ、
前記ノットごとに並列に実行する機能は、あるノットに対するエッジ探索処理と、次にエッジ探索を行うノットに対する探索領域の切り出し処理とを並列に実行し、
前記探索領域のサイズは、前記エッジ探索処理の時間と、前記探索領域の切り出し処理の時間との比較に基づき決定するコンピュータプログラムを記録したことを特徴とする、コンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理技術に関し、特に入力画像中の対象物の追跡を行う対象物追跡装置およびそこで実行される対象物追跡方法に関する。
【背景技術】
【０００２】
視覚追跡はコンピュータビジョン、特にセキュリティ分野における視覚監視やＡＶ分野における記録映像の解析・分類、編集、またはマンマシンインターフェース、さらには人間同士のインターフェース、すなわちテレビ会議やテレビ電話など、多岐に渡る応用が見込まれる。そのため、追跡精度および処理効率の向上等を目的に、多くの研究がなされている。中でも、カルマンフィルタで扱うことのできない非ガウス性雑音が加算された信号の時系列解析手法として注目されているパーティクルフィルタを視覚追跡に応用する研究が多くなされており、特にCondensation(Conditional Density Propagation)アルゴリズムが有名である（例えば非特許文献１から非特許文献３参照）。
【０００３】
パーティクルフィルタはベイズフィルタの近似計算法であり、有限個のパーティクルを追跡候補として導入することにより対象の確率分布を表現し、それを用いて時系列推定や予測を行う。Condensationアルゴリズムはパーティクルフィルタを用いて、追跡対象の形状についての確率分布の時間変化を推定する。具体的には、追跡対象と同一形状を有する候補の輪郭線を１つのパーティクルで表し、運動モデルによるパラメータ遷移と観測による遷移結果の尤度計算によって、対象のパラメータ空間上での存在確率分布を逐次推定する。
【非特許文献１】Contour tracking by stochastic propagation of conditional density, Michael Isard and Andrew Blake, Proc. European Conf. on Computer Vision, vol. 1, pp.343-356, Cambridge UK (1996)
【非特許文献２】CONDENSATION - conditional density propagation for visual tracking, Michael Isard and Andrew Blake, Int. J. Computer Vision, 29, 1, 5-28 (1998)
【非特許文献３】ICondensation: Unifying low-level and high-level tracking in a stochastic framework, Michael Isard and Andrew Blake, Proc 5th European Conf. Computer VIsion, 1998
【発明の開示】
【発明が解決しようとする課題】
【０００４】
パーティクルフィルタを利用して視覚追跡を行う場合、当然、早い処理速度で結果が出力されることが望ましい。このことは、撮影中の映像における対象物をリアルタイムで追跡する場合は特に重要である。この場合、１フレームごとに必要な処理、すなわちパーティクルの生成消滅、各パーティクルが定める候補の輪郭線とそのフレームのエッジ画像とのマッチング、尤度取得、存在確率分布の推定、といった処理をフレームの入力周期以内に終了させる必要がある。しかし、追跡対象の数や大きさが変化すると、処理時間や処理に必要なリソースが変動してしまうため、それらのパラメータの見積もりが難しく、常に最適な環境で高速に追跡処理を行うことは困難であった。
【０００５】
本発明はこのような課題に鑑みてなされたものであり、追跡処理の効率性が追跡対象の変化の影響を受けにくく、スケーラビリティの高い視覚追跡技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のある態様は対象物追跡装置に関する。この対象物追跡装置は、追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、第１の画像フレームにおける対象物の推定存在確率分布に基づき、第２の画像フレームにおける対象物の候補輪郭を定める候補輪郭決定部と、候補輪郭決定部が定めた候補輪郭と、第２の画像フレームのエッジ画像とをマッチングして、候補輪郭の尤度を観測する観測部と、観測部が観測した尤度に基づき、第２の画像フレームにおける対象物の存在確率分布を推定する結果取得部と、を備え、観測部は、候補輪郭の曲線を構成するノットから最近傍にあるエッジを探索する処理を、当該ノットごとに並列に実行する複数の探索部と、探索部が探索した結果を統合して候補輪郭ごとに尤度を求める尤度取得部と、を備えたことを特徴とする。
【０００７】
ここで「第１の画像フレーム」と「第２の画像フレーム」は、画像ストリームにおいて隣接する画像フレームでもよいし、離れて位置する画像フレームでもよい。時間軸の順方向へ追跡していく一般的な対象物追跡においては、「第１の画像フレーム」は「第２の画像フレーム」より時間的に前の画像フレームであるが、本実施の形態はこれに限らない。
【０００８】
「存在確率分布」は、対象物の画像フレーム内の位置座標に対する存在確率分布であってもよいし、形状、色、大きさなど対象物の有する属性のいずれかまたはそれらの組み合わせを表すパラメータが張る空間に対する存在確率分布であってもよい。「候補輪郭」は対象物の一部または全体の輪郭線の候補を表す図形である。また「尤度」は候補輪郭がどの程度対象物と近い態様となっているかを表す度合いであり、例えば対象物との重なり具合、対象物との距離などを数値で示したものなどである。
【０００９】
本発明の別の態様は対象物追跡方法に関する。この対象物追跡方法は、追跡したい対象物を撮影した動画像データを構成する画像ストリームに含まれる第１の画像フレームおよび第２の画像フレームのうち、第１の画像フレームにおける対象物の推定存在確率分布に基づき、第２の画像フレームにおける対象物の候補輪郭を定めるステップと、第２の画像フレームのエッジ画像を生成してメモリに格納するステップと、メモリに格納したエッジ画像の一部の領域の画像データを読み出し、探索することにより、候補輪郭の曲線を構成するノットから最近傍にあるエッジを検出する処理を、ノットごとに並列に実行するステップと、エッジ検出の結果を統合して候補輪郭ごとに尤度を求め、第２の画像フレームにおける対象物の存在確率分布を推定するステップと、を含むことを特徴とする。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、高速でスケーラビリティの高い視覚追跡技術を実現することができる。
【発明を実施するための最良の形態】
【００１２】
実施の形態１
初めに、本実施の形態の特徴および効果を明らかにするために、パーティクルフィルタによる視覚追跡について概説する。図１は人物を追跡対象とした場合の視覚追跡手法を説明するための図である。人物画像１５０は実写した動画像やコンピュータグラフィックスなどにより生成された動画像の画像ストリームを構成する画像フレームのひとつであり、追跡対象である人物１５２が写っている。
【００１３】
この人物１５２の動きを追跡するために、人物１５２の頭部輪郭の形状を近似するΩ形の曲線１５４を既知の表現で記述する。一方、人物１５２を含む人物画像１５０にはエッジ抽出処理を施し、エッジ画像を取得しておく。そして曲線１５４を規定するパラメータを変化させながら形状および位置を変化させて、その近傍にあるエッジを探索することにより、人物１５２の頭部輪郭と最もマッチすると推定されるパラメータの値を特定する。以上の処理をフレームごとに繰り返すことにより人物１５２の追跡が進捗する。ここでエッジとは一般的には画像の濃度や色に急な変化を有する箇所のことである。
【００１４】
様々な曲線１５４と人物１５２の頭部輪郭とのマッチングを行うために、パーティクルフィルタによる確率分布予測技術を導入する。すなわち、ひとつ前のフレームにおけるパラーメータ空間上の対象物の確率分布に応じて曲線１５４のサンプリング数を増減させ、追跡候補の絞り込みを行う。これにより存在確率の高い部分に対しては重点的に探索を行うことができ、精度のよいマッチングが効率的に行える。
【００１５】
対象物の輪郭に着目した追跡に対するパーティクルフィルタの適用手法は、例えば非特許文献３（ICondensation: Unifying low-level and high-level tracking in a stochastic framework, Michael Isard and Andrew Blake, Proc 5th European Conf. Computer VIsion, 1998）に詳述されている。ここでは本実施の形態に係る点に着目して説明する。
【００１６】
まずΩ形の曲線１５４を、Ｂスプライン曲線で記述する。Ｂスプライン曲線はｎ個の制御点列（Ｑ０，・・・，Ｑｎ）とノット列（ｓ０，・・・，ｓｎ）とから定義される。そして基本となる曲線形状、この場合はΩ形の曲線となるように、それらのパラメータをあらかじめ設定しておく。このときの設定によって得られる曲線を以後、テンプレートＱ０と呼ぶ。なお、図１で示した人物画像１５０における人物１５２の追跡を行う場合は、テンプレートＱ０はΩ形であるが、その形状は追跡対象によって変化させる。すなわち追跡対象がボールであれば円形、手のひらであれば手の形状などとなる。
【００１７】
次にテンプレートの形状を変化させるための変換パラメータとして、形状空間ベクトルｘを準備する。形状空間ベクトルｘは以下のような６つのパラメータで構成される。
【００１８】
【数１】
0005213486.tif 000002
【００１９】
ここで（shiftｘ，shiftｙ）は（ｘ，ｙ）方向への並進量、（extendｘ，extendｙ）は倍率、θは回転角である。そして形状空間ベクトルｘをテンプレートＱ０に作用させるための作用行列Ｗを用いると、変形後の曲線、すなわち候補曲線Ｑは以下のように記述できる。
【００２０】
【数２】
0005213486.tif 000003
【００２１】
式２を用いれば、形状空間ベクトルｘを構成する６つのパラメータを適宜変化させることにより、テンプレートを並進、伸縮、回転させることができ、組み合わせによって候補曲線Ｑの形状や位置を種々変化させることができる。
【００２２】
そして、制御点列、およびノット列の間隔といったテンプレートＱ０のパラメータや、形状空間ベクトルｘを構成する６つのパラメータを変化させることによって表現される複数の候補曲線について、各ノットの近傍にある人物１５２のエッジを探索する。その後、エッジとの距離などから各候補曲線の尤度を求めることにより、形状空間ベクトルｘを構成する６つのパラメータが張る６次元空間における確率密度分布を推定する。
【００２３】
図２はパーティクルフィルタを用いた確率密度分布推定の手法を説明する図である。同図では理解を簡単にするために、形状空間ベクトルｘを構成する６つのパラメータのうち、あるパラメータｘ１の変化を横軸に表しているが、実際には６次元空間において同様の処理が行われる。ここで確率密度分布を推定したい画像フレームが時刻ｔの画像フレームであるとする。
【００２４】
まず、時刻ｔの画像フレームのひとつ前のフレームである時刻ｔ−１の画像フレームにおいて推定された、パラメータｘ１軸上の確率密度分布を用いて（Ｓ１０）、時刻ｔにおけるパーティクルを生成する（Ｓ１２）。それまでにフィルタリングを行い、すでにパーティクルが存在する場合は、その分裂、および消滅を決定する。Ｓ１０において表した確率密度分布は、パラメータ空間上の座標に対応して離散的に求められたものであり、円が大きいほど確率密度が高いことを表している。
【００２５】
パーティクルはサンプリングするパラメータｘ１の値とサンプリング密度とを実体化したものであり、例えば時刻ｔ−１において確率密度が高かったパラメータｘ１の領域は、パーティクル密度を高くすることで重点的にサンプリングを行い、確率密度の低かった範囲はパーティクルを少なくすることでサンプリングをあまり行わない。これにより、例えば人物１５２のエッジ近傍において候補曲線を多く発生させて、効率よくマッチングを行う。
【００２６】
次に所定の運動モデルを用いて、パーティクルをパラメータ空間上で遷移させる（Ｓ１４）。所定の運動モデルとは例えば、ガウシアン型運動モデル、自己回帰予測型運動モデルなどである。前者は、時刻ｔにおける確率密度は時刻ｔ−１における各確率密度の周囲にガウス分布している、とするモデルである。後者は、サンプルデータから取得した２次以上の自己回帰予測モデルを仮定する手法で、例えば人物１５２がある速度で等速運動をしているといったことを過去のパラメータの変化から推定する。図２の例では、自己回帰予測型運動モデルによりパラメータｘ１の正方向への動きが推定され、各パーティクルをそのように遷移させている。
【００２７】
次に、各パーティクルで決定される候補曲線の近傍にある人物１５２のエッジを、時刻ｔのエッジ画像を用いて探索することにより、各候補曲線の尤度を求め、時刻ｔにおける確率密度分布を推定する（Ｓ１６）。前述のとおり、このときの確率密度分布はＳ１６に示すように、真の確率密度分布４００を離散的に表したものになる。以降、これを繰り返すことにより、各時刻における確率密度分布がパラメータ空間において表される。例えば確率密度分布が単峰性であった場合、すなわち追跡対象が唯一であった場合は、得られた確率密度を用いて各パラメータの値に対し重み付けした和を最終的なパラメータとすることにより、追跡対象に最も近い輪郭の曲線が得られることになる。
【００２８】
Ｓ１６において推定される時刻ｔにおける確率密度分布p(xti)は以下のように計算される。
【００２９】
【数３】
0005213486.tif 000004
【００３０】
ここでｉはパーティクルに一意に与えられた番号、p(xti|xti, ut-1)は所定の運動モデル、p(yt|xti)は尤度である。
【００３１】
図３は本実施の形態における視覚追跡システムの構成例を示している。視覚追跡システム１０は、追跡対象１８を撮像する撮像装置１２、追跡処理を行う追跡装置１４、撮像装置１２が撮像した画像のデータや追跡結果のデータを出力する表示装置１６を含む。追跡対象１８は人、物、それらの一部など、視覚追跡システム１０の使用目的によって異なっていてよいが、以後の説明では上記の例同様、人であるとする。
【００３２】
追跡装置１４と、撮像装置１２あるいは表示装置１６との接続は、有線、無線を問わず、また種々のネットワークを介していてもよい。あるいは撮像装置１２、追跡装置１４、表示装置１６のうちいずれか２つ、または全てが組み合わされて一体的に装備されていてもよい。また使用環境によっては、撮像装置１２と表示装置１６は同時に追跡装置１４に接続されていなくてもよい。
【００３３】
撮像装置１２は追跡対象１８を含む画像、または追跡対象１８の有無に関わらずある場所の画像のデータを、所定のフレームレートで取得する。取得された画像データは追跡装置１４に入力され、追跡対象１８の追跡処理がなされる。処理結果は出力データとして追跡装置１４の制御のもと、表示装置１６へ出力される。追跡装置１４は別の機能を実行するコンピュータを兼ねていてもよく、追跡処理の結果得られたデータ、すなわち追跡対象１８の位置情報や形状情報などを利用して様々な機能を実現してよい。
【００３４】
図４は本実施の形態における追跡装置１４の構成を詳細に示している。追跡装置１４は、撮像装置１２から入力される入力画像データを取得する画像取得部２０、当該入力画像データや輪郭画像データを記憶する画像記憶部２４、入力画像データから輪郭画像を生成する輪郭画像生成部２２、追跡の開始および終了を判定する追跡開始終了判定部２８、パーティクルフィルタを用いて追跡処理を行う追跡処理部２６、最終的な追跡結果のデータを記憶する結果記憶部３６、追跡結果の表示装置１６への出力を制御する出力制御部４０を含む。
【００３５】
図５において、様々な処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他のＬＳＩで構成することができ、ソフトウェア的には、画像処理を行うプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００３６】
輪郭画像生成部２２は追跡対象の輪郭線を入力画像の画像フレームから抽出し、輪郭画像を生成する。当該輪郭画像は画像記憶部２４に格納され、後に追跡処理部２６の観測部３０において候補曲線の尤度観測に用いられる。通常、「輪郭線」はエッジ画像における「エッジ」として扱われるため、従来の技術では「エッジ画像」を用いた尤度観測が行われていた。しかし一般的なエッジ抽出フィルタでは、入力画像によっては物の輪郭線以外にも多くのエッジが抽出されるため、輪郭線以外のエッジとのマッチングにより尤度観測が正確に行われないことが考えられる。また、エッジ抽出のしきい値を高く設定してエッジの数を減らすと、輪郭線がとぎれてしまい、やはり尤度観測が正確に行われない可能性がある。
【００３７】
そこで本実施の形態の輪郭画像生成部２２は、一般的な「エッジ画像」ではなく、特に入力画像中の物の「輪郭」に着目し、尤度観測を精度よく行うことのできる画像を生成する。具体的な手法は後に述べるが、以後の説明では、輪郭画像生成部２２が生成する画像を「輪郭画像」として一般的な「エッジ画像」と区別する。また輪郭画像生成部２２は、背景差分を利用した前景抽出器（図示せず）を実装していてもよい。そして輪郭画像生成処理の前処理として入力画像から追跡対象を含む前景を抽出することにより、追跡対象の輪郭を効率的に抽出するようにしてもよい。
【００３８】
追跡開始終了判定部２８は、例えば輪郭画像生成部２２によって得られた輪郭線または前景の形状を評価し、所定の条件によって、追跡を開始するか終了するかを判定する。なおここでの「終了」はオクルージョンなどによる追跡の一時停止を含んでもよい。追跡は、追跡対象が撮像装置の視野角内に現れた場合や、物陰などから現れた場合などに開始し、追跡対象が撮像装置の視野角内から去った場合や物陰などに入った場合などに終了する。追跡を開始すると判定した場合は、追跡処理部２６にその旨の通知をし、追跡処理を開始させる。
【００３９】
追跡処理部２６は、サンプリング部２９、観測部３０、および結果取得部３４を含む。サンプリング部２９は、一つ前の時刻ｔ−１における画像フレームに対して推定された確率密度分布に基づき、パーティクルの生成および消滅の処理を行う。そして全てのパーティクルに対し所定の運動モデルを適用して、パーティクルをパラメータ空間上で遷移させる。これにより、時刻ｔの画像フレームにおける複数の候補曲線が決定する。サンプリング部２９は、追跡開始終了判定部２８から追跡開始を示す信号を受けたら処理を開始し、追跡終了を示す信号を受けたら処理を終了する。
【００４０】
観測部３０はサンプリング部が生成・消滅、遷移させた各パーティクルが定める候補曲線の尤度を観測する。例えば各パーティクルが定める候補曲線をそれぞれＢスプライン曲線で表現した場合、当該Ｂスプライン曲線のノットごとに、輪郭画像生成部２２が生成した輪郭画像において最近傍にある輪郭線を探索し距離を求めることにより、所定のルールでノットをスコアリングする。そして候補曲線を構成する全ノットのスコアに基づき当該候補曲線の尤度を求める。観測部３０は、複数のプロセッサユニットを利用してこの探索処理を並列に実行する。
【００４１】
詳細な手法は後に述べるが、本実施の形態では、輪郭線の探索処理をノットごとに分割したものを一の処理単位とし、複数のプロセッサユニットで並列処理する。各プロセッサユニットは、一のノットの最近傍にある輪郭線を探索するために、輪郭画像のうち、当該ノットとその探索領域を含む一部の領域の画像データのみを配下のローカルメモリにコピーする。この処理を複数のプロセッサで繰り返すことにより、一の追跡対象につき、（パーティクルの数）×（候補曲線を構成するノットの数）の個数の処理単位を短時間で処理する。それぞれのプロセッサユニットが並列に取得した各ノットのスコアは候補曲線ごとに統合し、尤度を算出する。スコアリングや尤度算出の手法は従来技術を採用できる。
【００４２】
結果取得部３４は、観測部３０が観測した尤度に基づき式３で示すような確率密度分布p(xti)を算出し、それにより重み付け平均したパラメータによって得られる曲線のデータなどの追跡結果を算出し、結果記憶部３６に格納する。また次の時刻ｔ＋１における追跡処理に使用するため、サンプリング部２９にそのデータを返す。結果記憶部３６に格納するデータは、重み付け平均した各パラメータの値でもよいし、それにより定まる曲線のみで構成される画像や、曲線と入力画像とを合成してできた画像のデータなどのいずれでもよい。
【００４３】
追跡対象が複数存在する場合、結果取得部３４はさらに、それぞれに用意したテンプレートを用いて、追跡対象ごとに追跡を行い、それらの追跡結果を合成することによりひとつの追跡結果としてもよい。また複数の追跡対象が重なるような場合を追跡結果によって検出し、後ろに隠れる追跡対象については所定のタイミングで追跡処理対象からはずすなどの措置を講じる。これにより追跡対象が別の追跡対象の背後に回ったことによって観測尤度が一時的に低下しても、不適当な追跡結果を出力するのを避けることができる。
【００４４】
輪郭画像生成部２２、追跡処理部２６における上述の処理を、各フレームに対して行うことにより、結果記憶部３６には例えば追跡結果を含む動画像のデータが記憶される。この場合、出力制御部４０の制御のもと、当該動画像のデータを表示装置１６に出力することにより、テンプレートの曲線が追跡対象の動きと同様に動く様を表示することができる。なお上述のとおり、追跡結果は動画として表示する以外に、追跡の目的に応じて別の演算モジュールに出力するなどの処理を適宜行ってよい。
【００４５】
次にこれまで述べた構成による追跡装置１４の動作について説明する。以下、例としてある場所にいる人物を追跡する場合について説明する。このとき撮像装置１２は、撮影対象の場所を所定のフレームレートで撮影する。撮影された画像は入力画像データとして追跡装置１４の画像取得部２０へ入力され、画像記憶部２４に格納される。このような状態において以下に述べる追跡処理が行われる。
【００４６】
図５は本実施の形態における追跡処理の手順を示すフローチャートである。この例の場合、追跡対象は人物であるため、追跡装置１４には前述のとおりΩ型のテンプレートを用意する。なおテンプレートの表現手法はＢスプライン曲線に限らず、所望の曲線を表現できる記述形式であればよい。またテンプレート形状の変形手法も、その記述形式に適合し、数種類のパラメータを変化させることによって上述のような柔軟な変形を行うことのできる手法を適宜選択してよい。
【００４７】
まず追跡開始終了判定部２８は、画像記憶部２４に格納された入力画像データをフレームごとに読み出し、追跡を開始するかどうかの判定を行う（Ｓ２０、Ｓ２２）。例えば、画像フレームから抽出した前景として、人物と推定できる所定のサイズ、形を有する対象が出現した場合には、追跡を開始する判定を行う。判定基準となる前景のサイズや形はあらかじめ論理的にまたは実験的に定めておく。前景の抽出処理は、輪郭画像生成部２２に実装された図示しない前景抽出器を利用してもよい。この場合は、追跡開始終了判定部２８が、輪郭画像生成部２２に対し前景抽出処理の要求を行う。あるいは追跡開始終了判定部２８が前景抽出器を実装していてもよい。
【００４８】
追跡開始と判定されるまでＳ２０とＳ２２を繰り返し、追跡開始と判定されたら（Ｓ２２のＹ）、追跡処理部２６が追跡処理を開始する。ここで、追跡開始を判定された画像フレームに対応する時刻をｔ＝０とし、以後の画像フレームは時刻ｔ＝１，２，３，・・・にそれぞれ対応するとする。まず、サンプリング部２９が輪郭画像生成部２２に対し、輪郭画像生成処理の要求を行うことにより、輪郭画像生成部２２はｔ＝０画像フレームの輪郭画像を生成する（Ｓ２６）。このときサンプリング部２９は、後続フレームの輪郭画像生成処理要求も行い、輪郭画像生成部２２は順次処理を行ってよい。
【００４９】
そしてサンプリング部２９は、例えばパラメータ空間の所定領域に均等にパーティクルを配置してサンプリングを行い、観測部３０が各パーティクルが定める候補曲線と輪郭画像とをマッチングすることにより尤度を観測し、結果取得部３４が式３により率密度分布の初期値p(x0i)を算出する（Ｓ２８、Ｓ３０、Ｓ３２）。
【００５０】
一方、輪郭画像生成部２２は、画像記憶部２４より時刻ｔ＝１の画像フレームを読み出し輪郭画像を生成する（Ｓ３４のＮ、Ｓ２６）。サンプリング部２９は、生成した確率密度分布の初期値p(x0i)に対応した数のパーティクルをパラメータ空間上に発生させ、所定の運動モデルに基づきパーティクルをそれぞれ遷移させることによりサンプリングを行う（Ｓ２８）。発生させるパーティクルの数は、追跡装置１４が有する演算リソースの量や、求められる結果出力速度などに基づき、処理の負荷を考慮して制御する。運動モデルは追跡対象の種類に応じてガウシアン型運動モデル、自己回帰予測型運動モデルなどから追跡精度が高く得られるものをあらかじめ決定しておく。
【００５１】
すると観測部３０は、遷移後のパーティクルが定める各候補曲線の尤度p(yt|xti)を観測する（Ｓ３０）。尤度の観測は、輪郭画像生成部２２が生成した時刻ｔ＝１の輪郭画像を用いて、各候補曲線近傍にある輪郭線を探索することにより行われる。このとき上述のとおり、探索処理をノットごとに複数のプロセッサに割り振る。詳細は後に述べる。
【００５２】
次いで結果取得部３４は、観測された尤度に基づき時刻ｔ＝１の確率密度分布p(x1i)を求める。複数の追跡対象が存在する場合は、上記の処理を全ての追跡対象について行う。そして結果取得部３４は、時刻ｔ＝１における追跡対象の形状および位置として、確率密度分布p(x1i)によって各パラーメータを重み付け平均して得られるΩ型の曲線を最終的に決定し、元の入力画像フレームに重ねた画像フレームのデータを生成するなど、所望の追跡結果データを生成して結果記憶部に保存する（Ｓ３２）。
【００５３】
追跡開始終了判定部２８は、追跡処理をこれ以上続行するか終了するかの判定を行う（Ｓ３４）。例えば人物と推定できる所定のサイズ、形を有する対象が前景として現れない状態が所定時間継続した場合に追跡終了の判定を行う。あるいは、実空間上においてある追跡対象が別の追跡対象の背後に回った場合など、オクルージョンの状態が所定時間継続した場合に追跡終了の判定を行う。オクルージョンの状態は、過去の追跡処理結果から推定してもよいし、図示しない距離計測系などによって検出してもよい。さらに、追跡対象が撮像装置１２の画角から外れた状態が所定時間継続した状況も、オクルージョンと同様の手法で検出し、追跡終了の判定を行う。
【００５４】
Ｓ３４において追跡処理を終了しないと判定した場合は（Ｓ３４のＮ）、時刻ｔ＝２の画像フレームから輪郭画像を生成するとともに、Ｓ３２で得られた時刻ｔ＝１のときの確率密度分布p(x1i)を用いて、パーティクルの生成または消滅、および運動モデルによる遷移を行い、時刻ｔ＝２のフレームに対する尤度観測、確率密度分布算出を行う（Ｓ２６〜Ｓ３２）。以降、Ｓ３４で追跡開始終了判定部２８が追跡終了の判定を行うまでＳ２６からＳ３２までの処理を、各フレームに対して繰り返す。これにより、Ω型の曲線が追跡対象の来訪者の頭部と同じ動きおよび形状で、時間に対して変化していくような動画のデータが結果記憶部３６に格納される。出力制御部４０が当該データを、表示装置１６や別の機能を提供するモジュールなどに出力することにより、ユーザは所望の形態で追跡結果を利用することができる。
【００５５】
次にＳ３０において観測部３０が候補曲線と輪郭画像上の輪郭線とをマッチングして尤度を観測する処理について説明する。図６は観測部３０の構成をより詳細に示している。観測部３０は、輪郭画像切り出し部５０、輪郭探索タスクキュー５２、輪郭探索部５６、尤度取得部５４を含む。輪郭画像切り出し部５０は、候補曲線を表す曲線のノットの座標に基づき、各ノットに対応する領域を輪郭画像から切り出す。ここで各ノットに対応する領域とは、当該ノットとそのノットのための探索領域を含む領域である。探索領域と等しくてもよく、以後の説明では「探索領域」とも呼ぶ。そしてノットの座標情報と、対応する領域に係る情報とを含む輪郭探索の処理要求を発行する。発行された処理要求は輪郭探索タスクキュー５２における処理待ち行列に加えられる。
【００５６】
輪郭探索部５６は、第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎのＮ個の処理ユニットと、それぞれに接続するローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｄを含む。各処理ユニットは、輪郭探索タスクキュー５２より輪郭探索処理要求を順次読み出し、要求されたノットに対して輪郭探索処理を実行する。具体的には、画像記憶部２４に格納された輪郭画像から、処理要求で指定された領域の画像データを配下のローカルメモリにコピーする。そして指定されたノットの座標に基づき、当該ノットの最近傍にある輪郭線を、ローカルメモリにコピーした領域内で探索し、所定の規則に則りスコアリングする。
【００５７】
輪郭の探索には一般的に用いられるエッジ探索の手法を利用することができる。そして探索領域は、選択した探索手法やマッチングに求められる精度により決定することができる。第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎは各自、１つの処理要求を実行すると、得られたスコアを尤度取得部５４に出力する。そして次の輪郭探索処理要求を輪郭探索タスクキュー５２より読み出し、同様の処理を繰り返す。
【００５８】
尤度取得部５４は、輪郭探索部の第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎからそれぞれ入力された各ノットのスコアを統合して、候補曲線ごとの尤度を算出する。具体的には候補曲線を構成する全ノットのスコアを集めて合計したり、平均値を算出したり、所定の変換式に代入する。輪郭探索部５６の各処理ユニットからはノットに対するスコアが次々出力されるが、ノットの識別情報と、そのノットが属する候補曲線の識別情報とを対応付けた情報を、観測部３０内で共通に保持しておき、処理要求やスコアの出力時に、必要な識別情報を含めることにより、候補曲線ごとに結果を統合できる。
【００５９】
図７は、輪郭探索部５６の第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎが輪郭探索処理要求に従い、画像記憶部２４に格納された輪郭画像から、指定された領域の画像データを各自のローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｄにコピーする様子を模式的に示している。まず画像記憶部２４には、輪郭画像生成部２２が生成した輪郭画像９０が格納されている。そしてサンプリング部２９が決定したパーティクルによって、候補曲線の各ノット９２の座標が定められる。
【００６０】
輪郭画像切り出し部５０はノット９２の座標を取得すると、そのノットの探索領域９４をノットごとに切り出す。探索領域の決定の仕方は、精度、メモリ容量、処理速度などに鑑み決定する。図７の例では、ノット９２の座標を重心とする正方形を探索領域９４として切り出している。探索精度の観点から、探索領域９４の大きさは、候補曲線の大きさによって変化させることが望ましい。例えば、候補曲線がとり得る最大サイズに対する探索領域９４の最大データサイズを、ローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｄのコピー領域に格納できる最大データサイズと等しくなるように設定する。そして探索領域９４を、候補曲線の大きさの比率に応じて変化させることにより正方形の大きさを決定する。候補曲線の大きさは、各パーティクルが有するパラメータのうち倍率（extendｘ，extendｙ）に基づき決定できる。
【００６１】
探索領域９４の決定の仕方は図７で示したものに限らない。後に述べるように当該領域の画像データをローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｄにコピーする時間や、探索処理に要する時間などを考慮して増減させてもよい。また、探索領域９４の重心にノットがなくてもよい。例えばパーティクルを運動モデルによって遷移させた際用いた自己回帰予測モデルによって追跡対象の動きを推定し、動くと推定される方向に探索領域９４を広く設けるようにしてもよい。また探索領域９４は正方形でなくてもよく、探索手法や追跡対象の動きの特徴などによってその他の矩形や菱形、横や縦一列の画素などでもよい。
【００６２】
輪郭画像切り出し部５０は、ノット９２の座標とそれに対応する探索領域９４の情報、例えば正方形の一角の座標と一辺の長さの情報、を含む輪郭探索処理要求を輪郭探索タスクキュー５２に入れる。輪郭探索部の第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎは、輪郭探索タスクキュー５２から輪郭探索処理要求を１つ読み込むと、当該要求に含まれる正方形の情報に基づき画像記憶部２４に格納された輪郭画像９０から正方形の領域の画像データのみを、配下のローカルメモリにコピーする。
【００６３】
本実施の形態では、処理単位をノットごととすることにより、一の処理単位に必要なデータの量を限定的にしている。すなわち一の候補曲線に対する輪郭線の探索を処理単位とした場合などと比較し、ノットごとに処理を分割することにより探索領域のデータ量が格段に小さくなるうえ、候補曲線の大きさに影響をうけにくい。これにより、追跡対象がいかなる大きさであっても、ローカルメモリへの格納が可能となる。ローカルメモリは一般的に、容量が小さい一方で高速アクセスが可能である。そのため、ノットごとに探索領域を定め、その領域の画像データのみをコピーするようにすることで、並列処理による効果とともに、高速な追跡処理が可能となる。この効果は、複数のプロセッサを有するいかなる情報処理装置でも得ることができる。特にこのような構成とすると、「ヘテロジニアスマルチコア」を実装する情報処理装置への適用が容易となる。
【００６４】
「ヘテロジニアスマルチコア」は異種のコアを実装する情報処理装置であり、各コアが使用するメモリ容量が小さい、各コアのメモリに処理に必要なデータをコピーする必要がある、といった特徴を有する。上述のように探索領域９４を定めると、その画像データのサイズは、各コアが有するメモリ容量より小さくできる。これにより本実施の形態をヘテロジニアスマルチコアに適用することが可能となり、装置を限定せずに高速な追跡処理を実現できる。
【００６５】
なお輪郭探索部５６に含まれる第１処理部５８ａ〜第Ｎ処理部５８ｎの機能を実現する複数のプロセッサユニットのいずれかが、輪郭画像切り出し部５０および尤度取得部５４を兼ねていてもよい。さらに追跡装置１４に含まれる観測部３０以外の各機能も、複数のプロセッサユニットのいずれかが実現するようにしてよい。
【００６６】
図８は輪郭探索部５６の第１処理部５８ａ、第２処理部５８ｂ、・・・、第Ｎ処理部５８ｎが輪郭探索処理を行う際の処理の推移を模式的に示している。図の右方向を時間軸とし、時刻Ｔ１から、第１処理部５８ａ〜第Ｎ処理部５８ｎのＮ個の処理部が、ある候補曲線のノット１、ノット２、・・・、ノットＮについての探索処理要求を実行する。輪郭探索タスクキュー５２から探索処理要求を読み出すと、各処理部は画像記憶部２４の輪郭画像から、当該探索処理要求が指定する領域の画像データを配下のローカルメモリにコピーし、探索処理を開始する。図８では、コピーに要する時間と探索に要する時間をそれぞれ矩形で表している。
【００６７】
本実施の形態では、あるノットについて輪郭の探索を行っている間に、次に輪郭探索タスクキュー５２から読み出した探索処理要求が指定する領域のコピーを開始するようにパイプライン処理することでさらなる処理時間の短縮を実現する。同図の例では、時刻Ｔ１において、第１処理部５８ａがノット１に対応する領域、第２処理部５８ｂがノット２に対応する領域、・・・、第Ｎ処理部５８ｎがノットＮに対応する領域の画像データのコピーをそれぞれ開始する。そしてコピーが終了した時刻Ｔ２において、コピーした領域内での輪郭線の探索を開始する。このとき第１処理部５８ａ、第２処理部５８ｂ、・・・、第Ｎ処理部５８ｎは、ノットＮの次に探索処理要求が発行されているノットＮ＋１、ノットＮ＋２、・・・、ノット２Ｎの探索領域のコピーを、パイプライン処理により開始する。
【００６８】
そして前のノットの探索処理が終了し、かつ、次のノットの探索領域のコピーが終了した時刻Ｔ３から、コピーした領域内での輪郭線の探索を開始する。以後、ノット２Ｎ＋１〜３Ｎ、ノット３Ｎ＋１〜４Ｎ、・・・について、それぞれの処理部がコピー、探索の処理を、探索時間中に次の領域のコピーを開始するようにして繰り返す。これにより、探索処理を並列化することによって発生するコピー処理の時間を最小限に抑えることができ、並列処理、ローカルメモリに対する高速アクセスといった構成による処理速度の向上をより効果的に実現できる。
【００６９】
図８はコピーに要する時間と探索処理に要する時間がほぼ同一の場合を示しているが、本実施の形態をそれに限る趣旨ではない。すなわち、ある領域について輪郭探索処理を行っている時間帯のいずれかのタイミングで次の処理対象の領域のコピーを開始し、前の探索が終了しコピーも終了したら当該領域について探索処理を行うような態様であればよい。ただし図８に示したようにコピー時間と探索処理時間がほぼ等しいと、コピーの完了を待ちにより探索処理が開始されないといったオーバーヘッドを吸収することができる。輪郭画像全体をコピーして全ノットに対し連続的に輪郭探索を行うようにした場合、最初に大きなサイズの画像データをコピーする時間が必要となるため、このような場合と比較しても、上述のようにすると処理時間が短縮できる。
【００７０】
そのため、コピーに要する時間と探索処理に要する時間が同程度となるように、探索領域の大きさを調整するようにしてもよい。例えば実際の追跡処理前に、同様の画像構成を有するテスト画像を用いて様々なサイズの探索領域で実験を行って、各処理の所用サイクル数を実測し、それらがおよそ等しくなるように切り出す領域のサイズを決定するようにしてもよい。このとき、輪郭画像切り出し部５０が輪郭探索部５６を制御して実際に探索処理を行わせ、コピーおよび探索処理に要する時間を取得することで、最も効率のよい探索領域のサイズを決定するようにフィードバック制御してもよい。
【００７１】
同様に、切り出す領域のサイズを別の観点から調整するようにしてもよい。例えば撮影中の画像における対象物をリアルタイムで追跡する場合など、尤度観測にかけることのできる時間が限られている場合がある。このような状況下では、追跡対象の数が多くなる程、一のノットに対する輪郭探索を短縮する必要がある。このような場合も、実際の追跡処理に先んじて実験することにより領域のサイズを調整し、サイズを小さくすることによってコピーおよび探索処理の時間を短縮できる。あるいは、様々な追跡対象の数に対して探索領域の最適サイズを設定したテーブルをあらかじめ準備しておき、追跡開始後、追跡対象の数を取得したら輪郭画像切り出し部５０が当該テーブルを参照することにより探索領域のサイズを決定するようにしてもよい。
【００７２】
追跡対象の数以外に、候補曲線の形状、動作の複雑性、画像のコントラストなど、追跡のしやすさを決定づけるパラメータと、求められる追跡精度など多角的な要素から探索領域のサイズを決定できるテーブルを準備してもよい。
【００７３】
次に輪郭画像生成部２２による輪郭画像の生成処理について説明する。図９は輪郭画像生成部２２の詳細な構成を示している。輪郭画像生成部２２は、平滑化フィルタ６２、低階調化部６４、エッジ抽出フィルタ６６を含む。輪郭画像生成部２２は、画像記憶部２４に格納された入力画像の画像フレームを読み出し、平滑化フィルタ６２による平滑化、低階調化部６４による低階調化、エッジ抽出フィルタ６６によるエッジ抽出をこの順で施すことにより、輪郭画像を生成する。
【００７４】
輪郭画像生成部２２が輪郭画像を生成する原理は次の通りである。図１０は一般的なエッジ抽出処理と本実施の形態における輪郭画像生成処理との差を説明するための図である。同図におけるグラフの横軸は全て、画像の位置、すなわち画素の並びを表し、範囲は共通とする。最上段のグラフは、入力画像である原画像の輝度値の分布を表している。同図は一例として、矢印で表す領域１１０に追跡対象の像があり、画素Ａと画素Ｂに追跡対象の輪郭があるような画素列を示している。
【００７５】
この原画像の輝度値の分布をみると、画素Ａ近傍の輝度値の変化は画素Ｂ近傍の輝度値の変化より位置に対してなだらかである。このようなことは、画素Ａ近傍で追跡対象と背景の色が似通っていたり、画素Ａ側だけ日影に入っていたりすることにより、頻繁に起こりうる。また、追跡対象の像の領域１１０内においても色が変化していたり影ができていたりしてその輝度値は一定ではなく、凹凸１１２のような輝度値の変動がある。
【００７６】
このような輝度値の分布を示す原画像のエッジ画像を生成する場合、一般的にはラプラシアンフィルタなどのエッジ抽出フィルタでフィルタリングすることによってエッジを抽出する。このとき、輝度値の画像平面に対する変化の大きさに対してあるしきい値を設定し、そのしきい値を超えるような変化が見られる箇所をエッジとして抽出する。図１０の２段目はそのようにエッジ画像を生成した場合のグラフを示している。すなわち当該グラフに示すような輝度値の変化量の大きさがエッジ値として算出され、あらかじめ設定されたしきい値１１６を上回るエッジ値を有する箇所、すなわち画素Ｂ近傍の画素がエッジとして抽出される。
【００７７】
しかし図１０の例では、もう一方の輪郭である画素Ａ近傍は、そのエッジ値がしきい値１１６より小さいためエッジとして抽出されない。画素Ａ近傍をエッジとして抽出するためにはしきい値１１６を小さく設定することになるが、そのようにすることで、輪郭と関係しないが輝度値の凹凸１１２によって比較的大きなエッジ値を有する箇所１１４もエッジとして抽出されてしまう。本実施の形態では、追跡対象の輪郭に対して候補曲線を設定し、実際の輪郭とマッチングすることにより尤度を観測して追跡対象の位置を推定する。したがって、輪郭線に抽出されない箇所が存在したり、逆に輪郭以外の線が多く抽出されたりすると、当然、追跡精度が低くなる。そのため精度よい追跡を行うためには、これらの状況を回避できるしきい値１１６の最適値を見つけ出す必要があるが、画像ごとに最適値が変化するほか、画像によってはそもそも最適値といえるしきい値がない、といった状況が発生し得る。
【００７８】
そこで本実施の形態では、画像中の線やグラデーションなどの詳細な情報より、物を面として大まかに捉えることにより、「画像中のエッジ」というより「物の輪郭」を抽出できるようにする。具体的には、図１０の３段目に示すように、原画像の輝度値を低階調化した低階調画像を生成する。同図では理解を容易にするために原画像の輝度値を３階調で表している。すると、輝度値の画像平面上の変化と関わりなく、追跡対象が存在する領域１１０の輝度値は、他の領域の輝度値から不連続に変化し、領域として追跡対象の存在を表す情報となる。
【００７９】
この低階調画像にエッジ抽出フィルタを施すと、低階調化した輝度値が不連続に変化した箇所にのみ値を有する図１０の４段目に示すようなエッジ値が得られる。このようなエッジ値の場合、エッジ値が突出した箇所が限定的となるため、しきい値１１８を詳細に最適化する必要もなく、輪郭画像を容易に得ることができる。
【００８０】
図９に示した構成において輪郭画像生成部２２はまず、入力画像の画像フレームを平滑化フィルタ６２により平滑化する。平滑化フィルタ６２としては、ガウシアンフィルタ、メディアンフィルタ、単純平均化フィルタ、ローパスフィルタなど一般的な平滑化フィルタを用いることができる。これにより余分な高周波成分を除去して、物の面を領域として捉えやすくする。次に低階調化部６４によって、上述のような低階調化画像を生成する。低階調化部６４は一般的なビットシフト操作で実現でき、あらかじめ定めた境界で輝度値を区分けし、各区分内の輝度値を一の輝度値に変換する。このとき、輝度値を下から均等に区分けしてもよいし、画像フレームのカラーヒストグラムを作成し、区分けした際、画素の数が均等になるような輝度値を境界としてもよい。一般的なポスタリゼーションの手法を用いてもよい。低階調画像の階調数は例えば８〜３２階調程度とすることができる。
【００８１】
また追跡対象や背景、画像の内容、種別などによって、低階調画像の階調数を設定し直すようにしてもよい。この場合、実際の追跡時と同様のテスト画像などによって様々な階調の低階調画像を生成し、最も精度よく輪郭画像が生成できる、または追跡を失敗しない階調を求める。次に、低階調化部６４によって得られた低階調画像にエッジ抽出フィルタ６６を施すことにより輪郭画像を生成する。エッジ抽出フィルタ６６として、ラプラシアンフィルタ、ソーベルフィルタ、キャニーエッジフィルタなど一般的なエッジ抽出フィルタを利用することができる。これにより、輪郭部分とその他の部分で値の異なる２値画像が輪郭画像として得られる。
【００８２】
次に本実施の形態の輪郭画像生成手法を実際の画像に適用した結果を、一般的なエッジ画像とともに示す。まず図１１は処理対象である原画像の例を示す。図１２、１３は、当該原画像に対し一般的なエッジ画像生成手法でエッジ画像を生成した結果を示しており、図１２はしきい値が低い場合、図１３はしきい値が高い場合のエッジ画像である。まず図１２では、被写体である人物の輪郭の他に、服の模様、しわや顔の部位など、多くのエッジが抽出され、輪郭との区別がつきにくい。また人物の頭部左側の影となっている部分などはエッジがほとんど抽出されていない。しきい値を大きくすると、図１３に示すように、抽出されるエッジが少なくなり、輪郭もほとんど抽出されなくなってしまう。
【００８３】
図１４は、本実施の形態における輪郭画像生成部２２の平滑化フィルタ６２、低階調化部６４が図１１で示した原画像を処理することによって得られた低階調画像を示している。同図に示すように低階調画像では、図１２のエッジ画像で見られるような、服の模様などの詳細な情報は省かれ、人物や物の面を領域として捉えた画像となっている。図１５はエッジ抽出フィルタ６６によって当該低階調画像にエッジ抽出処理を施して生成される輪郭画像を示す。同図では、人物や物の輪郭がおよそ連続した線で表されており、図１２ではエッジが抽出されなかった、人物の頭部左側も輪郭線が抽出されている。
【００８４】
本実施の形態は画像内の人物や物の動きを追跡することを主な目的としているため、画素レベルでの画像の詳細な情報より、輪郭線の存在およびおよその位置の情報を優先して取り出すことにより、追跡対象を取り違えたり見失ったりすることなくその動きを正しく検出することができる。低階調化の処理は、輝度値に基づき画像を粗く領域に分割する意味を持ち、これにより発生する領域の境界を輪郭ととらえるため、途中で線がとぎれることが少なく、探索が容易となる。
【００８５】
また一般的なエッジ画像は、エッジ値がしきい値を上回る画素がある幅をもって表れる場合が多い。これは図１０の２段目に示したように、通常のエッジ値が多階調でおよそ連続的に変化し、ある幅をもってピークに到達するためである。さらにエッジを確実に抽出しようとしきい値１１６を低く設定するほど抽出されるエッジの幅も広くなる。一方、本実施の形態の輪郭画像は、隣り合う画素でも階調が大きく変化し、１つの画素でエッジ値がピークとなるため、抽出される箇所が画素単位となり、結果として抽出結果が線状になる。エッジが幅をもっていると、候補曲線とマッチングするためにエッジを細線化する処理が必要となるが、本実施の形態における輪郭線の場合はその処理が必要なくなり、より簡素な構成で高速に追跡処理を行うことができる。
【００８６】
以上述べた本実施の形態によれば、パーティクルフィルタを用いた視覚追跡装置において各パーティクルの尤度を観測する際、パーティクルが定める候補曲線のノットに着目し、ノットごとに輪郭探索の処理を分割して複数のプロセッサに割り当て、並列に処理する。輪郭探索の処理はノットごとに独立であるため、プロセッサへの割り振りや結果の統合が容易である。また、一のノットに対する輪郭探索処理に必要な画像データは、当該ノットの近傍の限られた領域であるため、そのデータサイズが小さく、各プロセッサは当該データをローカルメモリへコピーして輪郭探索処理を実行できる。そのため輪郭画像データへのアクセスを高速に行え、処理速度をさらに向上できる。
【００８７】
元の動画の輪郭画像からローカルメモリへのコピーが可能なサイズの領域を切り出すことにより、ヘテロジニアスマルチコアのように、データを各コアにコピーして処理を遂行することを前提とした構造を有する情報処理装置への適用が可能となる。これにより、特にハイビジョン映像など高画質画像に対する追跡処理でも、装置の構造を問わず高速に処理できるようになる。
【００８８】
例えば追跡対象ごとに探索処理を分割して並列処理した場合、追跡対象の数によって必要となるプロセッサの数が変動するため、追跡対象の数がプロセッサの数より小さいと装置の処理能力を十分使い切れなくなる。逆に追跡対象の数がプロセッサの数より大きいと、割り振れなかった一部の処理を後から実行することになり、結局は処理能力を余らせてしまう可能性がある。また、追跡対象の大きさによって個々の探索処理に必要な画像データサイズが大きく変動するため、メモリ容量不足やデータ転送時間の変動などが起こりうる。このように入力画像の内容によって処理時間や必要なメモリサイズが大きく変動すると、装置の仕様を決定するうえでの障害となりうるほか、汎用性に乏しくなる。
【００８９】
一方本実施の形態では、ノットごとに探索処理を分割して処理単位の粒度を細かく、処理単位の数を多くしたことにより、追跡人数や追跡対象の大きさなど追跡条件が変化しても、処理時間や必要なメモリサイズへの影響が少なく、それらのパラメータを見積もりやすい。そのため装置の仕様を容易に決定でき、入力画像の内容に関わらず好適な環境で追跡処理を行うことができる。同様に、プロセッサの数によらず同様の処理手順で並列処理が可能であり、１フレームにつき数千個オーダー以上の処理単位が生成されるため、各プロセッサへ容易に割り振ることができるうえ、一の処理単位は比較的短時間で終了するためスケーラビリティが高い。
【００９０】
またノットごとの探索処理を処理単位とすることで、処理単位同士に依存関係がないため、あるノットについて輪郭探索処理を行っている間に、次の処理対象である領域のコピーを開始するようにパイプライン処理が可能となる。これにより、ローカルメモリへのコピー時間を探索処理時間で吸収することができ、処理の並列化との相乗効果により、より高速な処理が可能になる。特に、輪郭画像から切り出す領域のサイズを変化させることにより、コピーに要する時間と探索処理に要する時間、およびそれらのバランスを調整することができ、追跡精度と処理時間のいずれを優先させるかといったユーザの意志を反映させることが容易にできる。
【００９１】
さらに輪郭画像を生成する際は、まず元の画像を平滑化、低階調化することにより撮像対象の面を大まかに捉えて領域分けしてからエッジ抽出を行う。これにより、面と面との境界を輪郭線として抽出することができる。通常のエッジ抽出処理では、抽出のためのしきい値によって輪郭線以外の余分なエッジが多く抽出されたり、輪郭線がとぎれてしまったり、といったことが起こり、追跡精度に影響を与えていた。本実施の形態では、上述のとおり面と面との境界が強調されるため、しきい値の許容範囲が広く、輪郭線を容易に抽出できる。
【００９２】
また、低階調化する前処理として画像を平滑化することにより、面を捉えるのに有効な情報を抽出し、より正確に低階調画像、ひいては精度のよい輪郭画像を生成できる。例えば上記のように、輪郭画像生成に用いられる平滑化フィルタ、低階調部、エッジ抽出フィルタはいずれもラスタースキャンでの処理が可能であり、かつラインごとに独立した処理であるため、高速処理が可能となる。また、本実施の形態で生成する輪郭画像は、その輪郭が１画素分の幅を有する線状に表れるため、尤度観測のための細線化処理の必要もなくなる。
【００９３】
実施の形態２
実施の形態１ではノットと探索領域を一対一に対応させて切り出しを行い、各ノットに対して輪郭探索要求が発行された。本実施の形態では、あらかじめ輪郭画像を所定のサイズに分割しておき、分割後の領域単位で輪郭探索要求を発行する。追跡装置１４や観測部３０の構成は、図４および図６で示したのと同様であり、主な処理手順も実施の形態１で説明した手順と同様である。以下、実施の形態１と同様の処理については説明を省略し、実施の形態１と異なる点に着目して説明する。
【００９４】
図１６は本実施の形態において、輪郭探索部の第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎが、画像記憶部２４に格納された輪郭画像から、分割後の領域の画像データを各自のローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｎにコピーする様子を模式的に示している。本実施の形態では、輪郭画像をノットの位置に関わらず分割する。同図では輪郭画像９０を横方向に６等分、縦方向に５等分している。この際、分割後の各領域９８のサイズがローカルメモリ６０ａ、６０ｂ、６０ｃ、・・・、６０ｎの容量以下となるようにあらかじめ分割数を決定しておく。また分割は均等に行わなくてもよい。このような分割パターンの座標情報はあらかじめ設定したものを画像記憶部２４などに格納しておき、画像切り出し部５０がその情報を読み出す。
【００９５】
そして画像切り出し部５０は、候補曲線のノット９６がどの領域に含まれるかを、サンプリング部２９が決定したパーティクルが定める全ての候補曲線について求める。そして、ノット９６を含む領域９８を抽出し、当該領域に係る情報と当該領域９８に含まれる全てのノットの座標の情報を含む輪郭探索処理要求を輪郭探索タスクキュー５２に発行する。分割パターンの境界線の座標情報と分割後の領域９８の識別情報とを対応付けて画像記憶部２４に記憶させておくことにより、輪郭探索要求に含める領域に係る情報は、当該識別情報のみでもよくなる。
【００９６】
輪郭探索部５６の第１処理部５８ａ、第２処理部５８ｂ、第３処理部５８ｃ、・・・、第Ｎ処理部５８ｎは、輪郭探索タスクキュー５２から輪郭探索処理要求を１つ読み込むと、指定された領域９８の識別情報などに基づき画像記憶部２４に格納された輪郭画像９０から指定された領域９８の画像データを、配下のローカルメモリにコピーする。そしてノットの座標情報に基づき、ノットの最近傍にある輪郭線を、コピーした領域内で探索する。コピーした領域に複数のノットが含まれる場合は、全てのノットについて連続して輪郭線探索を行い、ノットごとにスコアリングした結果を尤度取得部５４に出力する。コピーした領域に含まれる全てのノットについて探索が完了したら、次の輪郭探索処理要求を輪郭探索タスクキュー５２より読み出し、同様の処理を繰り返す。
【００９７】
例えばある人物の追跡を行う場合、輪郭探索を行うべきノットは、当該人物の輪郭の近傍に集中していると考えられる。ノットが互いに近接していると、それぞれの探索領域が重なり合っていることが多くなる。本実施の形態ではその性質を利用して、領域のコピー処理の頻度を減らす。そして一回にコピーした領域の一部の領域を対象とする探索処理は、どの候補曲線のノットかに関わらず一度に実行することにより処理の効率を上げる。
【００９８】
この場合も、実施の形態１で説明したのと同様、尤度取得部５４はノットの情報とそのノットが属する候補曲線の識別情報とを対応付けた情報を参照することにより、候補曲線ごとに尤度を取得できる。
【００９９】
以上述べた本実施の形態によれば、輪郭画像を所定のパターンで分割し、分割後の領域ごとに輪郭探索の処理を分割して複数のプロセッサに割り当て、並列に処理する。各プロセッサは、分割後の領域をローカルメモリへコピーし、候補曲線に関わらず当該領域に含まれる全ノットについて、コピーした領域内で輪郭線の探索を行う。パーティクルフィルタの性質上、複数の候補曲線が互いに近接し、ノットが限られた領域に多数存在する状況が多く発生するが、このような場合に１度にコピーした領域を利用して複数のノットの探索を行うことができ、効率性が向上する。結果的に、実施の形態１で述べた並列処理やローカルメモリを利用することとの相乗効果で、より高速に処理を進捗させることができる。
【０１００】
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１０１】
例えば、実施の形態１において、輪郭画像生成部２２は、図９に示すように平滑化フィルタ６２、低階調化部６４、エッジ抽出フィルタ６６を含み、これらの処理により輪郭画像を生成した。一方、輪郭画像生成部２２は、一般的なエッジ抽出器であってもよく、例えば平滑化フィルタ６２とエッジ抽出フィルタ６６のみの構成としてもよい。例えば追跡対象の表面や背景が複雑な変化をしていない場合はエッジ抽出器での輪郭画像生成も可能である。この場合も、生成されたエッジ画像を用いてエッジ探索を行うことにより尤度を観測できる。そして処理の並列化などによって高速の追跡処理が可能となる。
【０１０２】
また、輪郭画像生成部２２は図示しない前景抽出器によって輪郭画像を生成してもよい。例えばサッカーの試合の映像を入力画像として、選手の動きを追跡するような場合、主な背景はグラウンドであり、選手はユニフォームを着ているため、それぞれの画素値が限定的である。このような場合は、一般的な前景抽出処理により、精度よく追跡対象の輪郭を抽出することができる。輪郭画像生成部２２が上記したどの処理を行うかを、入力画像の種類などにより決定できるように、それらを対応付けたテーブルを準備しておいてもよい。あるいはユーザが設定を変更できるようにしてもよい。
【０１０３】
さらに、輪郭画像生成部２２を追跡装置１４以外の画像処理装置に備えてもよい。例えば、自動で写真撮影を行う装置に備え、被写体の画像を一旦取り込み、輪郭画像生成部２２によって被写体の輪郭画像を生成してもよい。この場合、輪郭画像から被写体の位置を算出し、その情報をカメラの向きや位置の制御装置へフィードバックすることにより、被写体が写真の真ん中など所望の位置に写るように自動調整を行う。あるいはレタッチ装置に備え、入力された画像において被写体の輪郭線を抽出することにより、特定の物以外の領域あるいは物の内部の領域のみに所望の加工を施すなどの機能を実現できる。
【０１０４】
さらに、ＦＡＸで送信された書面や、ダビングされた録画テープに記録された映像内のテロップなど、字の輪郭が不明確になるような状況において、それらを画像として取り込み輪郭画像生成部２２に入力することにより、不明確な部分に境界を設けることができ、結果として字の輪郭がはっきりする。したがって、ＯＣＲ（Optical Character Reader）やデータ形式変換器などに備えることも有効である。
【図面の簡単な説明】
【０１０５】
【図１】人物を追跡対象とした場合の視覚追跡手法を説明するための図である。
【図２】パーティクルフィルタを用いた確率密度推定の手法を説明する図である。
【図３】実施の形態１における視覚追跡システムの構成例を示す図である。
【図４】実施の形態１における追跡装置の構成を詳細に示す図である。
【図５】実施の形態１における追跡処理の手順を示すフローチャートである。
【図６】実施の形態１における観測部の構成をより詳細に示す図である。
【図７】実施の形態１において画像記憶部に格納された輪郭画像から、切り出された領域の画像データを各ローカルメモリにコピーする様子を模式的に示す図である。
【図８】実施の形態１において輪郭探索部の第１処理部、第２処理部、・・・、第Ｎ処理部が輪郭探索処理を行う際の処理の推移を模式的に示す図である。
【図９】実施の形態１における輪郭画像生成部の詳細な構成を示す図である。
【図１０】一般的なエッジ抽出処理と本実施の形態における輪郭画像生成処理との差を説明するための図である。
【図１１】処理対象である原画像の例を示す図である。
【図１２】図１１の原画像に対し一般的なエッジ画像生成手法で生成したエッジ画像を示す図である。
【図１３】図１１の原画像に対し一般的なエッジ画像生成手法で生成したエッジ画像を示す図である。
【図１４】実施の形態１において図１１で示した原画像に本実施の形態の輪郭画像生成処理を施した際、中間画像として得られる低階調化画像を示す図である。
【図１５】図１４の低階調化画像にエッジ抽出処理を施して生成される輪郭画像を示す図である。
【図１６】実施の形態２において画像記憶部に格納された輪郭画像から、分割後の領域の画像データを各ローカルメモリにコピーする様子を模式的に示す図である。
【符号の説明】
【０１０６】
１０  視覚追跡システム、  １２  撮像装置、  １４  追跡装置、  １６  表示装置、  ２０  画像取得部、  ２２  輪郭画像生成部、  ２４  画像記憶部、  ２６  追跡処理部、  ２８  追跡開始終了判定部、  ２９  サンプリング部、  ３０  観測部、  ３４  結果取得部、  ３６  結果記憶部、  ４０  出力制御部、  ５０  輪郭画像切り出し部、  ５２  輪郭探索タスクキュー、  ５４  尤度取得部、  ５６  輪郭探索部、  ５８ａ  第１処理部、  ６０ａ  ローカルメモリ、  ６２  平滑化フィルタ、  ６４  低階調化部、  ６６  エッジ抽出フィルタ。
【図１】
0005213486.tif 000005
【図２】
0005213486.tif 000006
【図３】
0005213486.tif 000007
【図４】
0005213486.tif 000008
【図５】
0005213486.tif 000009
【図６】
0005213486.tif 000010
【図７】
0005213486.tif 000011
【図８】
0005213486.tif 000012
【図９】
0005213486.tif 000013
【図１０】
0005213486.tif 000014
【図１６】
0005213486.tif 000015
【図１１】
0005213486.tif 000016
【図１２】
0005213486.tif 000017
【図１３】
0005213486.tif 000018
【図１４】
0005213486.tif 000019
【図１５】
0005213486.tif 000020