(57)【特許請求の範囲】
【請求項１】
推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、前記対象物の姿勢または動きを特徴付けるパラメータを推定する姿勢推定装置であって、
前記撮影画像を入力すると共に、当該撮影画像中のオブジェクトを多関節物体としてコンピュータグラフィックス（ＣＧ）用にモデル化したＣＧキャラクタモデルおよび当該ＣＧキャラクタモデルで用いる関節角度パラメータに基づいて前記撮影画像中のオブジェクトを擬似的に描画することで生成されたＣＧ画像を入力する画像入力手段と、
前記入力された撮影画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記入力されたＣＧ画像から前記オブジェクトの特定領域を２値化したシルエットを抽出する特定領域抽出手段と、
前記抽出されたそれぞれのシルエットに細線化処理を施す細線化手段と、
前記細線化されたそれぞれのシルエットに膨張処理を施す膨張処理手段と、
前記膨張させたそれぞれのシルエットに距離変換を施すことで濃淡画像を生成する距離変換手段と、
前記それぞれの濃淡画像の特徴量としてＨＯＧ（Histogram of Oriented Gradient）を算出する勾配特徴量抽出手段と、
前記撮影画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧと、前記ＣＧ画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧとを照合することで、前記撮影画像中のオブジェクトの関節角度パラメータを推定する照合手段と、
を備えることを特徴とする姿勢推定装置。
【請求項２】
前記画像入力手段に入力する前記ＣＧ画像を生成するために、
前記推定する対象物が一連の所定動作を行うためのモデルとしてフレーム毎に予め作成された関節角度パラメータの値をモデルシーケンスとして記憶したモデルシーケンス記憶手段と、
前記画像入力手段にフレーム毎に入力する撮影画像である撮影フレーム画像に対応させて前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、フレーム毎のＣＧ画像としてＣＧフレーム画像を生成するＣＧ画像生成手段と、をさらに備え、
前記特定領域抽出手段は、前記撮影フレーム画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記ＣＧフレーム画像から前記オブジェクトの特定領域を２値化したシルエットを抽出し、
前記細線化手段、前記膨張処理手段、前記距離変換手段および前記勾配特徴量抽出手段は、前記撮影フレーム画像および前記ＣＧフレーム画像のフレーム別に画像処理を施すことを特徴とする請求項１に記載の姿勢推定装置。
【請求項３】
前記撮影フレーム画像に対して前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値を予め定められた範囲内で変更するパラメータ変更手段をさらに備え、
前記ＣＧ画像生成手段は、フレーム毎に読み出された関節角度パラメータまたは前記変更された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、前記ＣＧフレーム画像を生成し、
前記照合手段は、
前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータまたは前記パラメータ変更手段で変更された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する差分算出手段と、
前記モデルシーケンスのフレーム番号を固定したときに、当該撮影フレーム画像に対して算出された前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記関節角度パラメータの値を判定する空間的特徴判定手段と、を備え、
推定結果として前記フレーム番号および前記関節角度パラメータの値を出力することを特徴とする請求項２に記載の姿勢推定装置。
【請求項４】
前記照合手段は、
前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する差分算出手段と、
前記撮影フレーム画像に対して前記モデルシーケンスのフレーム番号を変化させたときに前記モデルシーケンス記憶手段から読み出される関節角度パラメータの値を用いて生成されるＣＧ画像についての前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記モデルシーケンスのフレーム番号を抽出する時間的特徴抽出手段と、を備え、
推定結果として前記フレーム番号および前記関節角度パラメータの値を出力することを特徴とする請求項２に記載の姿勢推定装置。
【請求項５】
前記撮影フレーム画像に対して前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値を予め定められた範囲内で変更するパラメータ変更手段をさらに備え、
前記ＣＧ画像生成手段は、フレーム毎に読み出された関節角度パラメータまたは前記変更された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、前記ＣＧフレーム画像を生成し、
前記照合手段は、
前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータまたは前記前記パラメータ変更手段で変更された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する差分算出手段と、
前記撮影フレーム画像に対して前記モデルシーケンスのフレーム番号を変化させたときに前記モデルシーケンス記憶手段から読み出される関節角度パラメータの値を用いて生成されるＣＧ画像についての前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記モデルシーケンスのフレーム番号を抽出する時間的特徴抽出手段と、
前記抽出されたフレーム番号に固定し、かつ、前記パラメータ変更手段で前記関節角度パラメータの値を変更したときに、当該撮影フレーム画像に対して算出された前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記関節角度パラメータの値を特定する空間的特徴判定手段と、を備え、
推定結果として前記フレーム番号および前記関節角度パラメータの値を出力することを特徴とする請求項２に記載の姿勢推定装置。
【請求項６】
推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、前記対象物の姿勢または動きを特徴付けるパラメータを推定するために、コンピュータを、
前記撮影画像を入力すると共に、当該撮影画像中のオブジェクトを多関節物体としてコンピュータグラフィックス用にモデル化したＣＧキャラクタモデルおよび当該ＣＧキャラクタモデルで用いる関節角度パラメータに基づいて前記撮影画像中のオブジェクトを擬似的に描画することで生成されたＣＧ画像を入力する画像入力手段、
前記入力された撮影画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記入力されたＣＧ画像から前記オブジェクトの特定領域を２値化したシルエットを抽出する特定領域抽出手段、
前記抽出されたそれぞれのシルエットに細線化処理を施す細線化手段、
前記細線化されたそれぞれのシルエットに膨張処理を施す膨張処理手段、
前記膨張させたそれぞれのシルエットに距離変換を施すことで濃淡画像を生成する距離変換手段、
前記それぞれの濃淡画像の特徴量としてＨＯＧを算出する勾配特徴量抽出手段、
前記撮影画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧと、前記ＣＧ画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧとを照合することで、前記撮影画像中のオブジェクトの関節角度パラメータを推定する照合手段、
として機能させるための姿勢推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、対象物の姿勢または動きを推定する姿勢推定装置および姿勢推定プログラムに関する。
【背景技術】
【０００２】
従来、１台のカメラで撮影された単眼視画像（単視点の静止画または動画像）を用いたモーションキャプチャ手法は種々提案されている。推定する対象物を人物としたときに、単視点の人物画像から、人物の姿勢が推定できれば、人物動作の分析や、コンピュータグラフィックス（ＣＧ）によるキャラクタアニメーションの制作に有効である。
【０００３】
撮影画像から人物領域を抽出し、その形状および模様から姿勢を推定するために、以下の手法などが提案されている。
（１）人体の骨格構造を持った３次元ＣＧモデルを用意しておき、骨格を様々に動かして生成したＣＧ画像と、撮影画像と、のマッチングにより、姿勢推定を行う。このとき、例えば、撮影画像から人物領域を抽出し、その画像特徴とＣＧ生成映像の画像特徴とを比較する（例えば、非特許文献１参照）。
（２）撮影画像から人物領域を抽出し、その形状（シルエット）から、人物の手足や肘、膝の位置を推定し、内部の骨格を推定する（例えば、特許文献１参照）。
（３）撮影画像から人物領域を抽出し、その形状（シルエット）と、ＣＧ生成画像のシルエットと、を比較する。この場合、比較は２つの画像のＸＯＲ（排他的論理和）で行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−１６４４８０号公報
【非特許文献】
【０００５】
【非特許文献１】「ＨＯＧ特徴に基づく単眼画像からの人体３次元姿勢推定」、画像の認識・理解シンポジウム（MIRU2008）、2008年7月
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、前記した（１）の手法のように画像特徴を利用しようとすると、人物が着ている洋服などの模様に推定結果が大きく影響される。服装が異なると、撮影画像とＣＧ画像とのマッチング（照合）の度合いが変化し、正確な姿勢推定が行えない。
【０００７】
また、前記した（２）の手法は、服装の影響が少ないよう、シルエットを用いているが、例えば人物の手足や肘、膝などの部位を認識することは難しく、シルエット形状の正確さによって、部位が正確に特定できるかどうかが大きく影響される。つまり、シルエット形状を抽出するときの誤差、すなわち領域抽出の段階での誤差によって、部位を誤検出する可能性が高い。
【０００８】
また、前記した（３）の手法は、比較的ロバストな方法（頑健な方法）であるが、単純にＸＯＲでシルエット間の照合を行うと、画面上の位置や手足の太さの差異の影響を受けてしまう。つまり、単純にシルエットで比較すると、例えば、シルエットの向きが微妙に変化していたり、歩行中の両足や両腕の重なり具合が原因となって、なかなか適合しない。また、ＣＧでモデルを作成する場合に、標準的であると考えられるような例えば足部のモデルを作成したとしても、撮影画像中のオブジェクトである人物の筋肉のつき方や太さに個人差があるために、形状が同じであっても太さが違うと、希望のマッチング結果が得られない。要するに、従来技術では、様々な動作における特徴を正確に再現できるまでには至っていないのが現状である。
【０００９】
本発明は、以上のような問題点に鑑みてなされたものであり、推定する対象物の撮影画像から姿勢または動きを推定する際に対応するＣＧ画像との照合の精度を高めることのできる姿勢推定装置および姿勢推定プログラムを提供することを課題とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、請求項１に記載の姿勢推定装置は、推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、前記対象物の姿勢または動きを特徴付けるパラメータを推定する姿勢推定装置であって、画像入力手段と、特定領域抽出手段と、細線化手段と、膨張処理手段と、距離変換手段と、勾配特徴量抽出手段と、照合手段と、を備えることとした。
【００１１】
かかる構成によれば、姿勢推定装置は、画像入力手段によって、前記撮影画像を入力すると共に、当該撮影画像中のオブジェクトを多関節物体としてコンピュータグラフィックス（ＣＧ）用にモデル化したＣＧキャラクタモデルおよび当該ＣＧキャラクタモデルで用いる関節角度パラメータに基づいて前記撮影画像中のオブジェクトを擬似的に描画することで生成されたＣＧ画像を入力する。ここで、推定する対象物が例えば人物であれば、ＣＧキャラクタモデルは、人体モデルを含む。そして、姿勢推定装置は、特定領域抽出手段によって、前記入力された撮影画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記入力されたＣＧ画像から前記オブジェクトの特定領域を２値化したシルエットを抽出する。そして、姿勢推定装置は、細線化手段によって、前記抽出されたそれぞれのシルエットに細線化処理を施し、膨張処理手段によって、前記細線化されたそれぞれのシルエットに膨張処理を施し、距離変換手段によって、前記膨張させたそれぞれのシルエットに距離変換を施すことで濃淡画像を生成する。
【００１２】
ここで、細線化処理、膨張処理、距離変換は、一般的な画像処理ソフトウェアにライブラリ化されている関数を用いることで実現できる。
また、細線化処理は、２値画像のシルエットを幅１ピクセルの線画像に変換し、膨張処理は、細線を均等な太さに拡幅する。したがって、例えば撮影画像から抽出された後に細線化されたシルエットに対して膨張処理を施すと、撮影画像から抽出されたシルエットに復元されるわけではなく、細線が均等な太さに拡幅されたシルエットとなる。これにより、画像中のオブジェクトの太さの影響を受けずに、例えば撮影画像中の人物の足部のシルエットを抽出したときに、足部の個人差に関わらず、予め均等な幅で作成したＣＧモデルの足部のシルエットとの間で高精度に照合を行うことができる。
【００１３】
また、距離変換は、値が０と１の２値画像の各画素に対して、そこから値が０である画素への最短距離を与える変換を示す。このため、２値画像のシルエット内の各画素からシルエットの輪郭縁部の画素への距離のうち最短距離を与えることができる。したがって、距離変換後には、２値画像のシルエットの元の形状に応じて、元の形状の縁部が適宜削られたような濃淡画像となる。このようにシルエットに濃淡をつけて濃淡画像を生成すると、シルエットの方向性として、明るさの傾きが表れてくる。そのため、従来技術において領域抽出で得たシルエットで単純に比較したときにシルエットの向きが微妙に変化していたり、シルエットの重なり具合が原因となって適合しない問題を解決し、シルエットであっても方向性を見つけることができ、希望のマッチング結果を得ることができる。
【００１４】
そして、姿勢推定装置は、勾配特徴量抽出手段によって、前記それぞれの濃淡画像の特徴量としてＨＯＧ（Histogram of Oriented Gradient）を算出する。ここで、ＨＯＧは、画像の着目する画素について水平方向および垂直方向に隣接する画素間の明るさの差を輝度勾配として抽出した特徴量を示す。そして、姿勢推定装置は、照合手段によって、前記撮影画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧと、前記ＣＧ画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧとを照合することで、前記撮影画像中のオブジェクトの関節角度パラメータを推定する。照合の結果、ＨＯＧの差分が小さいほど、撮影画像に対するＣＧ画像の類似度が大きいことになる。また、姿勢推定装置は、このようなＣＧ画像を生成するときに用いた関節角度パラメータを、姿勢推定結果として求めることができる。
【００１５】
仮にＨＯＧを算出することなくシルエットあるいは濃淡画像で比較した場合には、撮影画像とＣＧ画像のオブジェクトが同じ形状であったとしても、オブジェクトの位置がずれているだけで、マッチングができなくなってしまう。このような問題に対して、この姿勢推定装置は、照合手段によって、画像のシルエットに基づいてＨＯＧを比較しているので、撮影画像のシルエットに基づいて得た濃淡画像中のオブジェクトの位置と、ＣＧ画像のシルエットに基づいて得た濃淡画像中のオブジェクトの位置と、がずれていたとしても、特徴量をオブジェクトの明るさの傾きで求めているので、画面上のオブジェクトの位置の違いによる影響を受けずに高精度に照合を行うことができる。
また、非特許文献１のようにＨＯＧを適用したとしても画像のシルエットを抽出しない場合には、推定する対象物が人物の場合、服装が異なると、マッチングができなくなる。このような問題に対して、この姿勢推定装置は、画像のシルエットを抽出した上で濃淡画像を生成し、さらに濃淡画像からＨＯＧを算出しているので、洋服の模様などの影響を受けることなく、シルエット照合のロバスト性をいかしながら、撮影画像とＣＧ画像とを高精度に照合することができる。
【００１６】
また、請求項２に記載の姿勢推定装置は、請求項１に記載の姿勢推定装置において、前記画像入力手段に入力する前記ＣＧ画像を生成するために、モデルシーケンス記憶手段と、ＣＧ画像生成手段と、をさらに備えることが好ましい。
【００１７】
かかる構成によれば、姿勢推定装置は、モデルシーケンス記憶手段に、前記推定する対象物が一連の所定動作を行うためのモデルとしてフレーム毎に予め作成された関節角度パラメータの値をモデルシーケンスとして記憶する。ここで、対象物が例えば人物であれば、モデルシーケンスには、例えば歩行や走行等の個別の動きに対応したモデルが含まれる。そして、姿勢推定装置において、ＣＧ画像生成手段は、前記画像入力手段にフレーム毎に入力する撮影画像である撮影フレーム画像に対応させて前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、フレーム毎のＣＧ画像としてＣＧフレーム画像を生成する。そして、姿勢推定装置において、前記特定領域抽出手段は、前記撮影フレーム画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記ＣＧフレーム画像から前記オブジェクトの特定領域を２値化したシルエットを抽出し、前記細線化手段、前記膨張処理手段、前記距離変換手段および前記勾配特徴量抽出手段は、前記撮影フレーム画像および前記ＣＧフレーム画像のフレーム別に画像処理を施す。
【００１８】
また、請求項３に記載の姿勢推定装置は、請求項２に記載の姿勢推定装置において、パラメータ変更手段をさらに備え、前記照合手段が、差分算出手段と、空間的特徴判定手段と、を備えることが好ましい。
【００１９】
かかる構成によれば、姿勢推定装置は、パラメータ変更手段によって、前記撮影フレーム画像に対して前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値を予め定められた範囲内で変更する。そして、姿勢推定装置において、前記ＣＧ画像生成手段は、フレーム毎に読み出された関節角度パラメータまたは前記変更された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、前記ＣＧフレーム画像を生成する。また、姿勢推定装置において、前記照合手段は、差分算出手段によって、前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータまたは前記パラメータ変更手段で変更された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する。そして、姿勢推定装置において、前記照合手段は、空間的特徴判定手段によって、前記モデルシーケンスのフレーム番号を固定したときに、当該撮影フレーム画像に対して算出された前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記関節角度パラメータの値を判定し、推定結果として前記フレーム番号および前記関節角度パラメータの値を出力する。
【００２０】
また、請求項４に記載の姿勢推定装置は、請求項２に記載の姿勢推定装置において、前記照合手段が、差分算出手段と、時間的特徴抽出手段と、を備えることが好ましい。
【００２１】
かかる構成によれば、姿勢推定装置において、前記照合手段は、差分算出手段によって、前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する。そして、姿勢推定装置において、前記照合手段は、時間的特徴抽出手段によって、前記撮影フレーム画像に対して前記モデルシーケンスのフレーム番号を変化させたときに前記モデルシーケンス記憶手段から読み出される関節角度パラメータの値を用いて生成されるＣＧ画像についての前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記モデルシーケンスのフレーム番号を抽出し、推定結果として前記フレーム番号および前記関節角度パラメータの値を出力する。
【００２２】
また、請求項５に記載の姿勢推定装置は、請求項２に記載の姿勢推定装置において、パラメータ変更手段をさらに備え、前記照合手段が、差分算出手段と、時間的特徴抽出手段と、空間的特徴判定手段と、を備えることが好ましい。
【００２３】
かかる構成によれば、姿勢推定装置は、パラメータ変更手段によって、前記撮影フレーム画像に対して前記モデルシーケンス記憶手段からフレーム毎に読み出された関節角度パラメータの値を予め定められた範囲内で変更する。そして、姿勢推定装置において、前記ＣＧ画像生成手段は、フレーム毎に読み出された関節角度パラメータまたは前記変更された関節角度パラメータの値と、前記ＣＧキャラクタモデルとに基づいて、前記ＣＧフレーム画像を生成する。また、姿勢推定装置において、前記照合手段は、差分算出手段によって、前記撮影フレーム画像に対して前記モデルシーケンス記憶手段から読み出された関節角度パラメータまたは前記前記パラメータ変更手段で変更された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出する。そして、姿勢推定装置において、前記照合手段は、第１段階として、時間的特徴抽出手段によって、前記撮影フレーム画像に対して前記モデルシーケンスのフレーム番号を変化させたときに前記モデルシーケンス記憶手段から読み出される関節角度パラメータの値を用いて生成されるＣＧ画像についての前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記モデルシーケンスのフレーム番号を抽出する。これにより、予め作成されたモデルシーケンスの各フレームと、撮影画像の各フレームとのタイミングを合わせることができる。そして、姿勢推定装置において、前記照合手段は、第２段階として、空間的特徴判定手段によって、前記抽出されたフレーム番号に固定し、かつ、前記パラメータ変更手段で前記関節角度パラメータの値を変更したときに、当該撮影フレーム画像に対して算出された前記ＨＯＧの差分データに基づいて、差分データが最小となるときの前記関節角度パラメータの値を特定し、推定結果として前記フレーム番号および前記関節角度パラメータの値を出力する。
【００２４】
また、請求項６に記載の姿勢推定プログラムは、推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、前記対象物の姿勢または動きを特徴付けるパラメータを推定するために、コンピュータを、画像入力手段、特定領域抽出手段、細線化手段、膨張処理手段、距離変換手段、勾配特徴量抽出手段、照合手段、として機能させるためのプログラムである。
【００２５】
かかる構成によれば、姿勢推定プログラムは、画像入力手段によって、前記撮影画像を入力すると共に、当該撮影画像中のオブジェクトを多関節物体としてコンピュータグラフィックス（ＣＧ）用にモデル化したＣＧキャラクタモデルおよび当該ＣＧキャラクタモデルで用いる関節角度パラメータに基づいて前記撮影画像中のオブジェクトを擬似的に描画することで生成されたＣＧ画像を入力する。そして、姿勢推定プログラムは、特定領域抽出手段によって、前記入力された撮影画像から前記オブジェクトの特定領域を２値化したシルエットを抽出すると共に、前記入力されたＣＧ画像から前記オブジェクトの特定領域を２値化したシルエットを抽出する。そして、姿勢推定プログラムは、細線化手段によって、前記抽出されたそれぞれのシルエットに細線化処理を施し、膨張処理手段によって、前記細線化されたそれぞれのシルエットに膨張処理を施し、距離変換手段によって、前記膨張させたそれぞれのシルエットに距離変換を施すことで濃淡画像を生成し、勾配特徴量抽出手段によって、前記それぞれの濃淡画像の特徴量としてＨＯＧを算出する。そして、姿勢推定プログラムは、照合手段によって、前記撮影画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧと、前記ＣＧ画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧとを照合することで、前記撮影画像中のオブジェクトの関節角度パラメータを推定する。
【発明の効果】
【００２６】
本発明によれば、次のような優れた効果を奏することができる。
請求項１に記載の発明によれば、姿勢推定装置において、撮影画像中のオブジェクトの洋服の模様などの影響を受けることなく、シルエット照合のロバスト性をいかしながら、距離変換およびＨＯＧ特徴により、画面上の位置の影響を受けずに精度の高い照合を行うことができる。また、姿勢推定装置は、細線化および膨張処理によって、撮影画像中のオブジェクトの太さを、ＣＧ画像中のオブジェクトの太さと同様に、一定の太さにすることができるので、太さの影響を受けずに精度の高い照合を行うことができる。
また、請求項６に記載の発明によれば、姿勢推定プログラムは、請求項１に記載の姿勢推定装置と同様の効果を奏することができる。
【００２７】
請求項２に記載の発明によれば、姿勢推定装置は、一連の所定動作に対応したモデルシーケンスを記憶しているので、撮影画像中のオブジェクトの姿勢と同様な近似した姿勢をとっているＣＧ画像とのマッチングによる姿勢推定を迅速に行うことができる。
【００２８】
請求項３に記載の発明によれば、姿勢推定装置は、予め作成されたモデルシーケンスの関節角度パラメータの値を変更可能なので、ＣＧフレーム画像を微調整して撮影フレーム画像に合わせ込むことができる。
【００２９】
請求項４に記載の発明によれば、姿勢推定装置は、予め作成されたモデルシーケンスの各フレームと、撮影画像の各フレームとのタイミングを合わせることができる。したがって、例えばＣＧキャラクタの動作をスローモーションにしたり、高速にしたりしたときに、実写のような自然の動きを演出することができる。
【００３０】
請求項５に記載の発明によれば、姿勢推定装置は、撮影フレーム画像との間で動作のタイミングを合わせたＣＧフレーム画像を微調整して撮影フレーム画像に合わせ込むことができる。したがって、撮影動画像をＣＧ動画像に対して時間的にも空間的にも高精度に照合することができ、撮影動画像から時間的、空間的精度の高いモーションデータを頑健に得ることができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の第１実施形態に係る姿勢推定装置の構成を示すブロック図である。
【図２】図１に示す姿勢推定装置の画像処理の説明図であって、（ａ）は撮影画像、（ｂ）は撮影画像から人物領域を抽出した画像、（ｃ）は人物領域から下半身領域を抽出した画像、（ｄ）は下半身画像を細線化した画像、（ｅ）は膨張処理を施した画像、（ｆ）は距離変換を施した画像、（ｇ）は撮影画像に対応して生成されたＣＧ画像、（ｈ）はＣＧ画像から撮影画像と同様な処理により生成された距離変換後の画像をそれぞれ示している。
【図３】図１に示す姿勢推定装置の動作を示すフローチャートである。
【図４】図３に示すＨＯＧ算出処理の概要を示すフローチャートである。
【図５】図４に示すＳ２１の説明図であって、原画像を示している。
【図６】図４に示すＳ２２の説明図であって、（ａ）は図５から求められたセル領域、（ｂ）は（ａ）から求められた勾配ヒストグラムをそれぞれ示している。
【図７】図４に示すＳ２３の説明図であって、ブロックの移動の様子を示している。
【図８】本発明の第２実施形態に係る姿勢推定装置の構成を示すブロック図である。
【図９】図８に示すモデルシーケンス記憶手段の説明図である。
【図１０】図８に示す時間的特徴抽出手段の説明図である。
【発明を実施するための形態】
【００３２】
以下、本発明に係る姿勢推定装置を実施するため形態（以下「実施形態」という）について図面を参照して詳細に説明する。
【００３３】
（第１実施形態）
図１に示す姿勢推定装置１は、推定する対象物を撮影した単視点の静止画または動画像を示す撮影画像に映ったオブジェクトから、画像処理により、対象物の姿勢または動きを特徴付けるパラメータを推定するものである。
以下では、対象物を人物として、例えば「歩行」や「蹴る」といった予め定められた動作をしている人物を１台のカメラで動画撮影した撮影画像が姿勢推定装置１に入力し、フレーム別の撮影画像である撮影フレーム画像中のオブジェクトとしての人物の動きを推定するものとして説明する。ここで、フレームは、フレーム画像であって、時間方向のサンプリング周波数は特に限定されるものではなく、例えば、ノンインターレース方式（例えば２９．９７ｆｐｓ（Frame Per Second））や、フレーム画像を２種類のフィールドで読み出すインターレース方式（例えば５９．９４ｆｐｓ）でもよい。
【００３４】
姿勢推定装置１は、図１に示すように、ＣＧ生成手段２と、フレームデータ処理手段３と、照合手段４と、画像入力手段５とを備えている。
画像入力手段５は、撮影画像を入力すると共に、当該撮影画像中のオブジェクトを擬似的に描画することで生成されたＣＧ画像を入力するものである。この撮影画像およびＣＧ画像は、フレームデータ処理手段３にて画像処理される。この画像入力手段５に入力する撮影画像のフレーム番号（撮影画像フレーム番号）は、ＣＧ生成手段２に入力され、ＣＧ生成手段２のＣＧ画像生成手段２４において、撮影画像と合ったＣＧ画像を生成するための情報として利用される。なお、画像入力手段５は、記憶媒体あるいはオンラインで外部から取り込んだ画像をフレームデータ処理手段３に入力してもよいし、予め姿勢推定装置１の内部の記憶装置に格納しておいた画像を読み出してフレームデータ処理手段３に入力してもよい。
【００３５】
ＣＧ生成手段２は、画像入力手段５に入力する撮影画像中のオブジェクトを描画したＣＧ画像を生成するものであって、ＣＧキャラクタモデル２１を記憶する記憶手段と、パラメータ変更手段２３と、ＣＧ画像生成手段２４と、ＣＧデータ２２を記憶するモデルシーケンス記憶手段２５とを備えている。なお、ＣＧキャラクタモデル２１を記憶する記憶手段は、ＣＧデータ２２を記憶する記憶手段と異なってもよいし、モデルシーケンス記憶手段２５を共用してもよい。
【００３６】
ＣＧキャラクタモデル２１は、推定する対象物を多関節物体としてコンピュータグラフィックス（ＣＧ）用にモデル化したものである。本実施形態では、推定する対象物を人物としているので、ＣＧキャラクタモデル２１は、人体の関節の角度情報をパラメータとして持つ人体構造モデルを含み、人体の予め作成したＣＧパーツ等も含む。
ここで、人体構造モデルは、特に限定されず、推定しようとする動きや、必要とする精度に応じて関節等を適宜設定すればよい。例えば、「歩行」や「蹴る」といった動作について推定する場合には、指関節については無視して、関節を、例えば、肩関節、肘関節、股関節、膝関節、足関節等のように区分し、各関節を部位に応じた１〜３軸の自由度にて予め定められた角度範囲内で屈曲できるようなモデルを用いることができる。ここで、例えば「歩行」等の動きを推定するのであれば、非特許文献１に記載のように、２４次元の関節角度パラメータを用いることができる。
【００３７】
ＣＧデータ２２は、撮影画像中のオブジェクトと照合するために擬似的に生成するＣＧ画像のオブジェクトに関する関節角度パラメータであって、ＣＧキャラクタモデル２１に基づいてＣＧ画像を描画するために用いられる。なお、図１において、ＣＧデータ２２は、フレームデータ処理手段３に入力する１つの撮影画像に対応した１つのＣＧ画像を生成するための１組の関節角度パラメータを代表している。ここで１組の関節角度パラメータとは、例えば、人体構造モデルにおいて２４次元の関節角度パラメータを採用したときには、所定の関節および当該関節の軸方向を特定することのできる２４個の角度（値）を示す。
【００３８】
パラメータ変更手段２３は、撮影フレーム画像に対してモデルシーケンス記憶手段２５からフレーム毎に読み出されたＣＧデータ（関節角度パラメータ）２２の値を予め定められた範囲内で変更するものである。このパラメータ変更手段２３は、ＣＧ画像の１つの姿勢に対応してモデルシーケンス記憶手段２５に予め記憶されている１組の関節角度パラメータの値を微調整する。ここで、微調整とは、例えば人物の動きにおいてある１つの関節に着目したときに、角度を例えば±４５°より大きな範囲で変化させることは、比較的大きな調整と言えるので、例えば±４５°以内の範囲で変化させること、好ましくは±３０°以内の範囲で変化させることを微調整という。例えば、パラメータ変更手段２３は、ＣＧデータ（関節角度パラメータ）２２の関節の角度を、例えば１°ずつ微調整する。この処理に続いて、ＣＧ画像生成手段２４は、関節角度の変更した値と、ＣＧキャラクタモデル２１とに基づいてＣＧフレーム画像を作成し、照合前の画像処理および照合の後に、パラメータ変更手段２３は、再び関節角度を微調整するというように処理を繰り返す。
【００３９】
ＣＧ画像生成手段２４は、画像入力手段５にフレーム毎に入力する撮影画像である撮影フレーム画像に対応させてモデルシーケンス記憶手段２５からフレーム毎に読み出されたＣＧデータ（関節角度パラメータ）２２またはパラメータ変更手段２３で変更された関節角度パラメータの値と、ＣＧキャラクタモデル２１とに基づいて、フレーム毎のＣＧ画像としてＣＧフレーム画像を生成するものである。ＣＧ画像生成手段２４は、画像入力手段５に入力する撮影画像を特定する撮影画像フレーム番号の入力を受け付け、撮影フレーム画像と合ったＣＧフレーム画像を生成するための情報として利用する。ＣＧ画像生成手段２４は、ＣＧデータに基づいて仮想３次元空間データを生成し、入力された関節角度に基づいてＣＧオブジェクトおよびアルファプレーンをレンダリングし、レンダリングしたＣＧオブジェクトを、アルファプレーンと共に画像入力手段５に出力する。なお、アルファプレーンは、ＣＧフレーム画像のオブジェクト領域（被写体領域）とそうでない領域とを区別する情報を有する画像である。
【００４０】
モデルシーケンス記憶手段２５は、推定する対象物が一連の所定動作を行うためのモデルとしてフレーム毎に予め作成されたＣＧデータ（関節角度パラメータ）２２の値をモデルシーケンスとして記憶するものであって、例えば一般的なハードディスクやメモリから構成されている。このモデルシーケンス記憶手段２５には、具体的には、人物が「歩く」動作を行うときのフレーム番号と関節角度パラメータの１組とを紐付けたデータ（モデルシーケンス）や、人物が「蹴る」動作を行うときのモデルシーケンスというように基本的な動きに対応したモデルがそれぞれ格納される。
【００４１】
なお、描画したＣＧフレーム画像そのものをモデルシーケンス記憶手段２５に格納するようにしてもよい。また、本実施形態では、姿勢推定装置１において、フレームデータ処理手段３の特定領域抽出手段３１に入力するＣＧ画像を生成するために、ＣＧ画像生成手段２４を設けたが、描画したＣＧフレーム画像を姿勢推定装置１に予め蓄積している場合には、ＣＧ画像生成手段２４は必須ではない。
【００４２】
フレームデータ処理手段３は、撮影画像とＣＧ画像とに対してフレーム単位で画像処理を行うものであって、特定領域抽出手段３１と、細線化手段３２と、膨張処理手段３３と、距離変換手段３４と、勾配特徴量抽出手段３５と、を備えている。なお、図１のブロック図では、説明の都合上、撮影画像を処理対象とする各手段３１〜３５に符号ａを付し、ＣＧ画像を処理対象とする各手段３１〜３５に符号ｂを付して区別したが、実質的には１つずつの手段があればよい。
【００４３】
特定領域抽出手段３１は、撮影画像とＣＧ画像とを照合するための前処理として、入力された撮影画像からオブジェクト（人物）の特定領域を２値化したシルエットを抽出すると共に、入力されたＣＧ画像からオブジェクト（人物）の特定領域を２値化したシルエットを抽出する。本実施形態のように、対象物が人物であれば、画像上のオブジェクトの特定領域は、その一部であっても全身であってもよい。人物領域の一部として下半身領域を特定するには、例えば、「入力撮影画像の下半分」のように、画像上の位置の閾値範囲を予め定めておけばよい。なお、画像を２値化してシルエットを抽出する手法は、画像上のオブジェクト位置やそのサイズあるいは輝度の閾値を予め定めておく等の公知の手法を採用することができる。なお、後記する動作の説明に画像処理の具体例について図示して説明する。
【００４４】
細線化手段３２は、特定領域抽出手段３１で抽出されたそれぞれのシルエットに細線化処理を施すものである。
膨張処理手段３３は、細線化手段３２で細線化されたそれぞれのシルエットに膨張処理を施すものである。
距離変換手段３４は、膨張処理手段３３で膨張させたそれぞれのシルエットに距離変換を施すことで濃淡画像を生成するものである。
【００４５】
ここで、細線化処理、膨張処理、距離変換は、撮影画像とＣＧ画像とを照合するための前処理であって、一般的な画像処理ソフトウェアにライブラリ化されている関数を用いることで実現できる。
細線化処理は、２値画像のシルエットを幅１ピクセルの線画像に変換する。
膨張処理は、細線を均等な太さに拡幅する。
距離変換は、値が０と１の２値画像の各画素に対して、そこから値が０である画素への最短距離を与える変換を示す。
【００４６】
勾配特徴量抽出手段３５は、撮影画像とＣＧ画像とを照合するための前処理を行った後の画像であるそれぞれの濃淡画像の特徴量として、ＨＯＧ（Histogram of Oriented Gradient）を算出するものである。ＨＯＧは、画像の着目する画素について水平方向および垂直方向に隣接する画素間の明るさの差を輝度勾配として抽出した特徴量を示す。ここで算出されたＨＯＧは、照合手段４に出力され、撮影画像とＣＧ画像との照合に用いられる。なお、ＨＯＧの参考文献として、「N.Dalal and B.Triggs，“Histograms of Oriented Gradients for Human Detection,” IEEE Conputer Vision and Pattern Recognition, 886-893, 2005.」が知られている。
【００４７】
なお、本実施形態では、特定領域抽出手段３１は、撮影フレーム画像およびＣＧフレーム画像を２値化することでシルエットを抽出するので、前記した細線化手段３２、膨張処理手段３３、距離変換手段３４および勾配特徴量抽出手段３５も、撮影フレーム画像およびＣＧフレーム画像に対してフレーム別に画像処理を施す。
【００４８】
照合手段４は、撮影画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧと、ＣＧ画像中のオブジェクトのシルエットに基づいて算出されたＨＯＧとを照合することで、撮影画像中のオブジェクトの関節角度パラメータを推定するものである。この照合手段４は、図１に示すように、差分算出手段４１と、差分データ記憶手段４２と、空間的特徴判定手段４３と、を備えている。
【００４９】
差分算出手段４１は、撮影フレーム画像に対してモデルシーケンス記憶手段２５から読み出されたＣＧデータ（関節角度パラメータ）２２またはパラメータ変更手段２３で変更された関節角度パラメータの値を用いて生成されるＣＧ画像のシルエットに基づく各ＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出するものである。算出された差分データは、差分データ記憶手段４２に格納される。
【００５０】
差分データ記憶手段４２は、フレーム番号５１と、パラメータ５２と、差分データ５３とを紐付けて記憶するものであって、ハードディスク等の記憶装置である。
フレーム番号５１は、モデルシーケンス記憶手段２５から読み出されたＣＧデータ（関節角度パラメータ）２２のフレーム番号である。
パラメータ５２は、フレーム番号５１に対応した関節角度パラメータの値、またはフレーム番号５１においてパラメータ変更手段２３で変更された関節角度パラメータの値である。
差分データ５３は、撮影フレーム画像に対応し、パラメータ５２から生成されたＣＧフレーム画像のシルエットに基づいて算出されたＨＯＧの差分データである。
【００５１】
空間的特徴判定手段４３は、モデルシーケンスのフレーム番号を固定したときに、当該撮影フレーム画像に対して算出されたＨＯＧの差分データに基づいて、差分データが最小となるときの関節角度パラメータの値を判定するものである。
照合手段４は、推定結果として、このフレーム番号および関節角度パラメータの値を出力する。
【００５２】
［姿勢推定装置の動作］
次に、図２および図３を参照（適宜図１参照）して姿勢推定装置１の動作について説明する。図２には、姿勢推定装置１のフレームデータ処理手段３のうち、特定領域抽出手段３１、細線化手段３２、膨張処理手段３３および距離変換手段３４の処理例を示している。また、この例では、人物がボールを蹴る素振りを撮影した撮影画像から下半身の動作を推定するものとして説明する。
【００５３】
図３は、図１に示す姿勢推定装置の動作を示すフローチャートである。
まず、姿勢推定装置１において、画像入力手段５によって、フレームデータ処理手段３に撮影画像を入力する（ステップＳ１）。そして、フレームデータ処理手段３において、特定領域抽出手段３１ａには、図２（ａ）に示す撮影画像が入力される。特定領域抽出手段３１ａは、まず、撮影画像を２値化して図２（ｂ）に示す人物領域のシルエットを抽出し、次いで、この場合には、図２（ｃ）に示すようにシルエットの下半身領域を特定領域として抽出する（ステップＳ２）。下半身領域については、例えば、画像の位置による閾値範囲を「画像下の半分」のように予め定めておくことで抽出できる。
【００５４】
そして、細線化手段３２ａは、抽出したシルエットに対して、図２（ｄ）に示すように細線化処理を施し（ステップＳ３）、膨張処理手段３３ａは、細線化されたシルエットに対して図２（ｅ）に示すように膨張処理を施す（ステップＳ４）。さらに、距離変換手段３４ａは、膨張させたシルエットに対して図２（ｆ）に示すように距離変換を施すことで２値画像から濃淡画像を生成する（ステップＳ５）。そして、勾配特徴量抽出手段３５ａは、撮影画像に基づく濃淡画像（図２（ｆ）参照）についてのＨＯＧを算出する（ステップＳ６）。なお、勾配特徴量抽出手段３５の処理の具体例については後記する。
【００５５】
一方、撮影画像に対応したＣＧ画像を生成するために、ＣＧデータ２２において、図２に示す例では、下半身の動作に着目しているので、左腰、左膝、左足首、および、右腰、右膝、右足首の関節角度を設定している。そして、ＣＧ画像生成手段２４は、撮影画像に対応したＣＧデータ２２の関節角度の設定値と、ＣＧキャラクタモデル２１とに基づいて、図２（ｇ）に示すようにＣＧフレーム画像を作成する（ステップＳ７）。
【００５６】
そして、撮影画像に対して行ったように、ＣＧ画像に対して、ＣＧ特定領域抽出手段３１ｂによる処理（ステップＳ８）、細線化手段３２ｂによる処理（ステップＳ９）、膨張処理手段３３ｂによる処理（ステップＳ１０）、距離変換手段３４ｂによる処理（ステップＳ１１）が順次実行され、図２（ｈ）に示すように距離変換が施された濃淡画像が生成される。そして、勾配特徴量抽出手段３５ｂは、ＣＧ画像に基づく濃淡画像（図２（ｈ）参照）についてのＨＯＧを算出する（ステップＳ１２）。
【００５７】
次いで、照合手段４は、図２（ｆ）の濃淡画像と、図２（ｈ）の濃淡画像とについて、ＨＯＧ特徴の比較を行う。ここで、照合手段４の差分算出手段４１は、ＣＧ画像のシルエットに基づくＨＯＧと、当該撮影フレーム画像のシルエットに基づくＨＯＧとの差分データをそれぞれ算出し、フレーム番号５１およびパラメータ５２と紐付けて差分データ５３を差分データ記憶手段４２に格納する（ステップＳ１３）。
【００５８】
そして、パラメータ変更手段２３は、例えば±３０°の範囲といった予め定められたパラメータ（関節角度）の値をすべて選択していない場合（ステップＳ１４：Ｎｏ）、関節角度パラメータの値を変更する（ステップＳ１５）。すなわち、パラメータ変更手段２３は、ＣＧデータ（関節角度パラメータ）２２の関節の角度を、例えば１°ずつ微調整して、ステップＳ７に戻ると、ＣＧ画像生成手段２４は、関節角度の変更した値と、ＣＧキャラクタモデル２１とに基づいてＣＧフレーム画像を作成し、同様な画像処理によって図２（ｈ）に示すような新たな濃淡画像を得ることを繰り返す。
【００５９】
一方、ステップＳ１４において、予め定められたパラメータ（関節角度）の値をすべて選択した場合（ステップＳ１４：Ｙｅｓ）、照合手段４の空間的特徴判定手段４３は、当該撮影フレーム画像に対して格納されているＨＯＧの差分データ５３のうち、差分データが最小となるときのフレーム番号５１およびパラメータ５２を推定結果として出力する（ステップＳ１６）。すなわち、照合手段４は、最も照合度のよい関節角度の値を、推定されたパラメータとして出力する。
【００６０】
以上が姿勢推定装置１のフレームデータ処理手段３による1枚の撮影フレーム画像についての処理である。したがって、撮影動画像のすべてのフレーム画像について、前記ステップＳ１〜Ｓ１６の処理を同様に行うことで、撮影動画像中の人物の動作を推定することができる。
【００６１】
［ＨＯＧ算出処理］
次に、図３のステップＳ６，Ｓ１２に示すＨＯＧ算出処理について図４ないし図７を参照（適宜図１参照）して説明する。図４は、ＨＯＧ算出処理の概要を示すフローチャートである。ＨＯＧ算出処理は、例えば、前記したＨＯＧの参考文献や非特許文献１等に開示されている公知技術なので、以下ではその概要を簡単に説明する。
【００６２】
ＨＯＧ算出処理では、第１段階として、画像から輝度勾配を算出する（ステップＳ２１）。そして、第２段階として、算出された輝度勾配から、セル毎に勾配方向ヒストグラムを算出する（ステップＳ２２）。そして、第３段階として、算出された勾配方向ヒストグラムを用いて画像のブロック毎に特徴量の正規化を行う（ステップＳ２３）。ＨＯＧは、輝度勾配のヒストグラムを基本としているので、例えば人物の下半身領域の位置や大きさの影響を受けにくいという性質がある。そのため、姿勢推定装置１の勾配特徴量抽出手段３５は、ステップＳ２１〜Ｓ２３の各処理を実行することとした。
【００６３】
以下、ＨＯＧ算出処理の第１段階（ステップＳ２１）〜第３段階（ステップＳ２３）を順次説明する。ここでは、原画像の一例として、図５に示すような歩行中の人物の撮影画像を用い、この原画像から動きを推定する場合を想定する。
【００６４】
＜第１段階（ステップＳ２１）＞
第１段階では、原画像から輝度勾配（輝度勾配画像）を求める。具体的には、原画像の各ピクセル（画素）における輝度の勾配強度ｍと勾配方向θを算出する。ここで、画像中の左上隅を原点として、画素の水平方向の座標をｕ、画素の垂直方向の座標をｖ、画素（ｕ，ｖ）における輝度値をＩ（ｕ，ｖ）とすると、当該画素（ｕ，ｖ）における勾配強度ｍ（ｕ，ｖ）は、次の式（１）で表される。また、当該画素（ｕ，ｖ）における勾配方向θ（ｕ，ｖ）は、次の式（２）で表される。
【００６５】
【数１】
0005503510.tif 000002
【００６６】
＜第２段階（ステップＳ２２）＞
第２段階では、輝度勾配θ（輝度勾配画像）を用いて勾配方向ヒストグラムを算出する。このために、図６（ａ）に示すように、輝度勾配画像をマトリクス状に複数のセル１０１に分割する。ここで、図６（ａ）に示す画像例では、横５×縦５の２５個の画素を１セルとし、輝度勾配画像を、横６×縦１２の７２個のセル１０１に分割した。また、図６（ａ）に示す画像例では、輝度勾配画像において、人物の輪郭を黒色細線で示し、他の領域をすべて白色で示したが、輝度勾配θの角度に応じたカラー表示を行うと、輪郭の線を含めてすべての領域がカラー表示されることになる。
【００６７】
また、セル１０１の中に画素毎に図示した２５個の矢印は、その方向が当該画素における輝度勾配θを示し、その大きさ（magnitude）が勾配強度ｍを示す。輝度勾配θは、実際には−１８０°〜＋１８０°までの値で算出されるが、一直線上の向きを無視して方向のみを考慮するため、負の値には１８０°を加算してシフト変換することで、以下では、輝度勾配は０〜１８０°の値であるものとする。この場合、０°と１８０°とは同じことを意味する。なお、シフト変換後の輝度勾配についても同じ記号（θ）を用いる。
【００６８】
また、ここでは、輝度勾配θの０〜１８０°の範囲の分割数を９とする。つまり、輝度勾配θを、次の（１）〜（９）の区間に分割する。各区間において、例えば、下限の値は含まれず、上限の値は含まれることとする。
（１）      ０〜  ２０°
（２）    ２０〜  ４０°
（３）    ４０〜  ４０°
（４）    ６０〜  ４０°
（５）    ８０〜１００°
（６）  １００〜１２０°
（７）  １２０〜１４０°
（８）  １４０〜１６０°
（９）  １６０〜１８０°
【００６９】
セル毎に、つまり、２５個の画素を１つの単位として求めた勾配方向ヒストグラムの一例を図６（ｂ）に示す。この例では、前記した（５）８０〜１００°の区間における輝度勾配が最も大きいことが分かる。
【００７０】
以下では、図６（ａ）に示す輝度勾配画像におけるセル１０１の位置座標を（ｉ，ｊ）で示す（１≦ｉ≦６，１≦ｊ≦１４）。また、セル（ｉ，ｊ）において、勾配方向が９分割されたそれぞれの方向における大きさをｆ１，ｆ２，ｆ３，ｆ４，ｆ５，ｆ６，ｆ７，ｆ８，ｆ９とする。この場合、１つのセル（ｉ，ｊ）の特徴ベクトルＦｉｊは式（３）のように９次元で表される。
【００７１】
【数２】
0005503510.tif 000003
【００７２】
＜第３段階（ステップＳ２３）＞
第３段階では、算出された勾配方向ヒストグラムから画像のブロック毎に特徴量の正規化を行う。このために、図７に示すように、セル１０１に分割された輝度勾配画像において、複数のセル１０１を一度に選択して構成されたブロック１０２を想定する。なお、このブロックは、一部の領域が互いに重なっても構わないものである。
【００７３】
図７に示す画像例では、横６×縦１２の７２個のセル１０１が表示されており、横３×縦３の９個のセル１０１を１つのブロック１０２として選択する。この場合、前記した式（３）を利用し、１つのブロック内の左上隅のセルの位置を（ｉ，ｊ）とすると、ある位置（識別子ｋ）にある１つのブロックの特徴ベクトルＶｋは、次の式（４）のように８１次元で表される。
【００７４】
【数３】
0005503510.tif 000004
【００７５】
そして、前記したようにブロックは一部の領域が互いに重なっても構わない。ここで、図７の画像例において、例えば１列目から３列目まで、かつ、２行目〜４行目までの範囲の９つのセルを選択した太線で囲まれたブロック（仮にこれをｂ＝１のブロックと呼ぶ）を想定する。このブロック全体を画像の上側にセル１つ分だけシフト移動したきにも別のブロック（同様にｂ＝２のブロックと呼ぶ；図中符号は省略、以下同様）が構成される。この状態から、それ以上上側にはブロックを選択することはできない。一方、この状態からブロック全体を画像の右側にセル１つ分だけシフトすれば別のブロック（ｂ＝３）が構成される。また、同様に右側にセル１つ分だけシフトすれば別のブロック（ｂ＝４）が構成される。さらに、右側にセル１つ分だけシフトしたきにも別のブロック（ｂ＝５）が構成され、それ以上右側にはブロックを選択することはできない。
【００７６】
以上のようにセル１つ分ずつシフトして選択される５個のブロック（ｂ＝１）〜ブロック（ｂ＝５）を重ね合わせた状態を図７の上側に模式的に示す。各ブロックには９個のセルが含まれており、セル１つ分ずつブロックをシフトした場合、セルの重なりが生じる。図７において、重なりが多いセルほど、模様が大きく濃く表示されている。この模様は、セル別のヒストグラムに基づく勾配方向θの９区間（９方向）と、その大きさを模式的に示している。
【００７７】
図７の画像例において、ブロックをシフト移動した場合、処理途中に、横４×縦１０の４０個のブロックが選択可能である。これらすべてについて、識別子ｋ（ｋ＝１〜４０）で識別する。なお、図７において、水平方向の「１，２，３，４」の目盛りは、画像左上ブロックを原点として、画像の水平方向にシフト移動により選択可能なブロック数を示し、同様に垂直方向の「１，４，７，１０」の目盛りは、画像の垂直方向にシフト移動により選択可能なブロック数を示す。この例では、４０個のブロックにおいて、前記した式（３）と前記した式（４）を適用する。ブロック内のセルは（３×３）個存在する。このとき、セルの勾配方向ヒストグラムをｆとして、当該ブロックの特徴ベクトルＶの大きさにより正規化した大きさｖは、次の式（５）で表される。なお、ｆの中身は、（勾配方向「＝９」）×（ブロック内のセルの数「＝９」）×（ブロックの数「＝４０」）の計算結果の値（＝３２４０）と同じ次元となる。
【００７８】
【数４】
0005503510.tif 000005
【００７９】
これにより、撮影画像のシルエットに基づいて算出されたＨＯＧから得られたｖ（ｖｍ）と、ＣＧ画像のシルエットに基づいて算出されたＨＯＧから得られたｖ（ｖｃｇ）と、の距離が小さい方が類似度が大きいと評価することができる。
【００８０】
ここで、ｖ（ｖｍ）とｖ（ｖｃｇ）との距離は、ヒストグラム同士の差分となる。この差分（差分データ）は、例えば、各ヒストグラムの階級（勾配方向の角度の区間）毎の差分を加工した正の値の累積和とすることができる。また、階級毎の差分を加工した正の値の累積和を計算する手法としては、例えば、階級毎の大きさの差分の２乗和、差分の絶対値和等がある。
【００８１】
第１実施形態によれば、洋服の模様などの影響を受けることなく、シルエット照合のロバスト性をいかしながら、距離変換およびＨＯＧ特徴により、画面上の位置の影響を受けない精度の高い照合が行える。また、細線化、膨張処理により、手足が一定の太さになり、太さの影響を受けない。したがって、第１実施形態によれば、撮影動画像から空間的精度の高いモーションデータを頑健に得ることができる。
【００８２】
（第２実施形態）
図８に示す姿勢推定装置１Ｂは、撮影画像とＣＧ画像との照合において、推定する対象物（人物）の動作の空間的特徴のみならず、時間的特徴も考慮して、姿勢または動作を推定するものである。この姿勢推定装置１Ｂは、図８に示すように、ＣＧ生成手段２と、フレームデータ処理手段３と、照合手段４Ｂと、を備えている。この姿勢推定装置１Ｂにおいて、図１に示す姿勢推定装置１と同じ構成には、同じ符号を付して説明を適宜省略する。
【００８３】
また、モデルシーケンス記憶手段２５には、撮影動画像のシーケンスと同じようなＣＧ動画像を作成できるように予めＣＧデータ（関節角度パラメータ）２２が作成されていることとする。例えば、図９（ａ）に示すように、人物がボールを蹴る素振りの構えから、回り込みながら蹴って、身体の向きを変えるまでの動作に関する撮影動画像のシーケンスが姿勢推定装置１Ｂに入力する場合、予め同じようなモデルシーケンスが用意され、ＣＧ動画像として作成される。モデルシーケンスから作成されたＣＧ動画像シーケンスの一例を図９（ｂ）に示す。なお、フレームのサンプリング周期やフレーム枚数は同じでも相違してもよいが、同じであることが好ましい。
【００８４】
図８に示す照合手段４Ｂにおいて、姿勢推定のための手法は大きく２段階に分けられる。第１段階は、時系列フレーム全体に対する時間的処理である。ここでは、「蹴る」等の予め定められたモーションが表示される撮影動画像の各フレームに対して、撮影動画像で表示されるものと同様のモーションを表示可能なモデルシーケンス内のフレームと照合を行い、最も類似しているフレームを抽出する。この第１段階により、撮影動画像とモデルシーケンスとの時間的なフレーム対応関係が得られる。
第２段階は、各フレームに対する空間的処理である。ここでは、第１段階で抽出されたモデルシーケンスのフレームについて、関節角度パラメータを調節して新たに作成したフレームと、対応する撮影動画像フレームとの照合を繰り返して、より実物の姿勢に近い関節角度を求める。
【００８５】
このため、図８に示すように、照合手段４Ｂは、差分算出手段４１と、差分データ記憶手段４２と、空間的特徴判定手段４３と、時間的特徴抽出手段４４とを備えている。
時間的特徴抽出手段４４は、撮影フレーム画像に対してモデルシーケンスのフレーム番号を変化させたときにモデルシーケンス記憶手段２５から読み出されるＣＧデータ（関節角度パラメータ）２２の値を用いて生成されるＣＧ画像についてのＨＯＧの差分データに基づいて、差分データが最小となるときのモデルシーケンスのフレーム番号を抽出する。時系列に並べたフレームを連続的に観察すると、オブジェクトの姿勢が連続的に変化することが分かる。これは動作の時間的変化と同じ意味である。この時間的特徴抽出手段４４は、予め作成したモデルフレームと撮影動画像フレームとを照合することによって、各フレームでの姿勢を推定する。このときの姿勢の連続的な変化が、動作の時間的特徴として求められることになる。そして、時間的特徴抽出手段４４で抽出されたフレーム番号に固定した場合に、空間的特徴判定手段４３は、パラメータ変更手段２３で関節角度パラメータの値を変更したときに、当該撮影フレーム画像に対して算出されたＨＯＧの差分データに基づいて、差分データが最小となるときの関節角度パラメータの値を特定する。
【００８６】
姿勢推定装置１Ｂの動作は、第１段階にて、図３に示したステップＳ１４〜Ｓ１６の処理を動作の時間的特徴を抽出するために置き換えて同様に行った後で、第２段階にて、図１の姿勢推定装置１のように動作の空間的特徴を判定する処理を行う点を除いて、第１実施形態と同様なので説明を省略する。
【００８７】
姿勢推定装置１Ｂの動作の第１段階の処理結果の一例を図１０に示す。この一例は、図９（ａ）に示す人物の動作において下半身の動作について推定した結果である。図１０のグラフにおいて、横軸は撮影動画像のフレーム番号、縦軸はモデルシーケンスのフレーム番号をそれぞれ示す。時間的特徴抽出手段４４は、撮影動画像のあるフレーム番号に着目したときに、当該撮影フレーム画像および同様のＣＧフレーム画像のシルエットに基づくＨＯＧから算出された差分データが最小となるような、ＣＧフレーム画像のフレーム番号を求める。図１０に示す例では、撮影動画像のフレーム番号が「１」の場合、モデルシーケンスにおいてすべてのフレーム番号について探索した結果、モデルシーケンスにおいて最も類似したフレーム番号が「０」であったことが分かる。以下、同様である。
【００８８】
この例のように「蹴る」動作では、動き（運動）の方向は、一方向なので、例えば撮影動画像のフレーム番号が「８」である場合、モデルシーケンスにおいてすべてのフレーム番号について探索する必要は無く、その直前の探索で既に確定している結果を用いれば、モデルシーケンスのフレーム番号「５」およびその後方の残りのフレームと照合すればよい。
【００８９】
また、時間的特徴抽出手段４４において、時系列的に大きくはずれたモデルフレームを誤って抽出することを防ぐために、ＤＰ（Dynamic Programming）マッチングを用いることが好ましい。
【００９０】
なお、時間的特徴抽出手段４４は、照合の探索結果をテーブル形式で保持していれば、図１０のようなグラフを作成する必要は必ずしもない。ただし、図１０のようなグラフを作成した場合には、傾きが小さいときには、モデルの動作に対して実際の人物の動作が遅く、逆に、傾きが大きいときには、モデルの動作に対して実際の人物の動作が速いことが分かったり、あるいは、実際の人物の動作の速度の時間変化による個人別の動作特徴が分かったりするので、グラフを作成しておくことが好ましい。
【００９１】
このように照合の第１段階にて、時間的特徴抽出手段４４で抽出されたあるフレーム番号に固定した場合に、空間的特徴判定手段４３は、パラメータ変更手段２３で関節角度パラメータの値を変更しつつ、差分データが最小となるときの関節角度パラメータの値を特定する。実験の結果、図１０に示す例の場合に、あるフレーム番号で示される姿勢において、関節角度をさらに±３０°の範囲内で微調整した結果、ＣＧフレーム画像を、撮影フレーム画像の姿勢に合わせ込むことができた。
【００９２】
第２実施形態によれば、推定する対象物の動作特徴を、時間変化の特徴（時間的特徴）と、姿勢そのものの特徴（空間的特徴）との２段階に分け、予め用意したモデルフレームとの照合を段階的に行うことにより、動作特徴の再現性が高いモーションキャプチャ手法を提供することができる。すなわち、第２実施形態によれば、撮影動画像から時間的、空間的精度の高いモーションデータを頑健に得ることができる。
【００９３】
以上、本発明の実施形態について説明したが、本発明は、各実施形態には限定されない。例えば、第２実施形態に係る姿勢推定装置１Ｂは、照合手段４Ｂに、空間的特徴判定手段４３と、時間的特徴抽出手段４４との両方を備えるものとしたが、このうち、時間的特徴抽出手段４４だけ備えることとしてもよい。つまり、第２実施形態に係る姿勢推定装置１Ｂが照合のために行う、第１段階と第２段階のうち、第１段階だけを行うこととしてもよい。このように構成した姿勢推定装置によれば、予め作成されたモデルシーケンスの各フレームと、撮影画像の各フレームとのタイミングを合わせることができるので、例えばＣＧキャラクタの動作をスローモーションにしたり、高速にしたりしたときに、実写のような自然の動きを演出することができる。
【００９４】
また、各実施形態では、ＣＧ生成手段２にパラメータ変更手段２３を備えることとしたが、本発明においてパラメータ変更手段２３は必要に応じて備えていればよく、例えば第２実施形態に係る姿勢推定装置１Ｂが照合のために行う、第１段階と第２段階のうち、第１段階だけを行う形態とした場合には、除外してもよい。
【００９５】
また、各実施形態では、ＣＧ生成手段２にモデルシーケンス記憶手段２５を備えることとしたが、本発明においてモデルシーケンス記憶手段２５は必要に応じて備えていればよく、例えば、撮影画像として入力される画像が１枚あるいは数枚程度である場合には、除外してもよい。
【００９６】
なお、撮影画像として入力される画像が動画像の場合、仮に、推定対象である人物が一連の所定動作を行うためのモデルシーケンスが無ければ、例えば歩行中の人物の撮影画像と比較するためのＣＧ画像を、人体モデルから作成する場合、体軸に沿った直立姿勢から、数十個もの関節すべてに亘って網羅的に関節角度パラメータの値を変化させながら、それぞれに基づくＣＧ画像を１つ１つ検証してマッチングを取る必要がある。このような問題に対して、姿勢推定装置１，１Ｂは、一連の所定動作に対応したモデルシーケンスを記憶しているので、撮影画像中のオブジェクトの姿勢に近似した姿勢をとっているＣＧ画像を手動または自動的に容易に求めることができ、マッチングによる姿勢推定を迅速に行うことができる。
【００９７】
また、例えば、推定対象である人物が行う動作は、「蹴る」動作に限定されるものではない。また、推定対象である人物の体格は、図示したものに限定されるものではない。
さらに、推定対象部物は、人物に限らず、姿勢の変更等の各種動作を行うことができ、その動作をモデル化することができれば、例えば動物のほか、関節を有する人形、ロボット、移動体、各種機械等の人工の物体でもよい。
【００９８】
また、姿勢推定装置１，１Ｂは、一般的なコンピュータを、前記した各手段として機能させるプログラムにより動作させることで実現することができる。このプログラムは、通信回線を介して提供することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【符号の説明】
【００９９】
１，１Ｂ  姿勢推定装置
２      ＣＧ生成手段
２１    ＣＧキャラクタモデル
２２    ＣＧデータ（関節角度パラメータ）
２３    パラメータ変更手段
２４    ＣＧ画像生成手段
２５    モデルシーケンス記憶手段
３      フレームデータ処理手段
３１ａ，３１ｂ  特定領域抽出手段
３２ａ，３２ｂ  細線化手段
３３ａ，３３ｂ  膨張処理手段
３４ａ，３４ｂ  距離変換手段
３５ａ，３５ｂ  勾配特徴量抽出手段
４      照合手段
４ｂ    照合手段
４１    差分算出手段
４２    差分データ記憶手段
４３    空間的特徴判定手段
４４    時間的特徴抽出手段
５      画像入力手段
５１    フレーム番号
５２    パラメータ
５３    差分データ
１０１  セル
１０２  ブロック
【図１】
0005503510.tif 000006
【図３】
0005503510.tif 000007
【図４】
0005503510.tif 000008
【図５】
0005503510.tif 000009
【図６】
0005503510.tif 000010
【図７】
0005503510.tif 000011
【図８】
0005503510.tif 000012
【図１０】
0005503510.tif 000013
【図２】
0005503510.tif 000014
【図９】
0005503510.tif 000015