(57)【要約】【課題】視体積交差法により生成されたボリュームデータの各ボクセルが観測対象物のどの体節部を表しているかをリアルタイム、かつ精度よく特定する。【解決手段】入力ボリュームデータ生成部５０は、カメラ１１〜１ｍによりフレームが取得される毎に、視体積交差法を用いて基準対象物と同様の複数の体節部を有する観測対象物のボリュームデータである入力ボリュームデータを生成する。探索部６０は、入力ボリュームデータ生成部５０により生成された入力ボリュームデータを学習空間に投影し、入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を学習空間内で探索する。探索部６０により探索された最近傍基準投影点に対応する基準ボリュームに付されたラベルを基に、入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する。【選択図】図２
2009048305.tif 000002
【特許請求の範囲】
【請求項１】
複数の体節部からなる基準対象物の動画像から、各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物のボリュームデータである基準ボリュームデータをフレーム毎に生成する基準ボリュームデータ生成手段と、
前記基準ボリュームデータ生成手段によりフレーム毎に生成された複数の基準ボリュームデータを、前記基準ボリュームデータのボクセル数よりも低い所定次元の学習空間に投影することで得られる複数の基準投影点列を学習データとして生成する学習データ生成手段と、
前記基準ボリュームデータ生成手段により生成された基準ボリュームデータと、前記学習データ生成手段により生成された学習データとを予め記憶する学習データ記憶手段と、
前記基準対象物と同じ複数の体節部からなる観測対象物の動画像を撮影する複数の撮影手段と、
前記複数の撮影手段によりフレームが取得される毎に、視体積交差法を用いて前記観測対象物のボリュームデータである入力ボリュームデータを生成する入力ボリュームデータ生成手段と、
前記入力ボリュームデータ生成手段により生成された入力ボリュームデータを前記学習空間に投影し、前記入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を前記学習空間内で探索する探索手段と、
前記探索手段により探索された最近傍基準投影点に対応する基準ボリュームデータの各ボクセルに付されたラベルを基に、前記入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する特定手段としてコンピュータを機能させることを特徴とする形状解析プログラム。
【請求項２】
前記学習データ記憶手段は、前記入力ボリュームデータ生成手段により生成された入力ボリュームデータに含まれる偽のボリュームデータを除去するための信頼度を予め記憶し、
前記探索手段は、前記信頼度を用いて前記入力ボリュームデータを修正し、修正した入力ボリュームデータを前記学習空間に投影することを特徴とする請求項１記載の形状解析プログラム。
【請求項３】
前記基準ボリュームデータ生成手段は、視体積交差法により生成されたボリュームデータを修正することで前記基準ボリュームデータを生成し、
前記基準ボリュームデータ生成手段により生成された基準ボリュームデータを仮想３次元空間内に配置し、複数の仮想カメラと前記基準ボリュームデータとの位置関係を変化させながら、前記複数の仮想カメラで前記基準ボリュームデータを撮影することで得られた２次元画像から視体積交差法を用いて前記位置関係毎の簡略ボリュームデータを生成する簡略ボリュームデータ生成手段と、
各簡略ボリュームデータと前記基準ボリュームデータとを比較することで、前記簡略ボリュームデータにおける偽のボリュームデータの発生箇所を特定し、前記信頼度を生成する信頼度生成手段としてコンピュータを更に機能させることを特徴とする請求項２記載の形状解析プログラム。
【請求項４】
前記探索手段は、前記学習空間を一定サイズの部分領域に区切り、前記入力ボリュームデータの投影点が属する注目部分領域内において前記最近傍基準投影点を探索し、前記注目部分領域内において前記基準投影点が存在しない場合、前記基準投影点が検出されるように前記部分領域のサイズを拡大させることを特徴とする請求項１〜３のいずれかに記載の形状解析プログラム。
【請求項５】
前記探索手段は、前記注目部分領域内において前記入力ボリュームデータの投影点の最近傍に位置する基準投影点を検出し、検出した基準投影点及び前記入力ボリュームデータの投影点間の距離よりも、前記入力ボリュームデータの投影点までの距離が短い１又は複数の隣接部分領域を特定し、特定した隣接部分領域及び前記注目部分領域内を探索することで前記最近傍基準投影点を検出することを特徴とする請求項４記載の形状解析プログラム。
【請求項６】
前記基準ボリュームデータ生成手段は、所定の低解像度でボクセルが配置され、かつ各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物全体のボリュームデータである全身基準ボリュームデータと、前記低解像度よりも高解像度でボクセルが配置され前記基準対象物の各体節部のボリュームデータである複数の体節基準ボリュームデータとを前記基準ボリュームデータとして生成し、
前記学習データ生成手段は、前記基準ボリュームデータ生成手段により生成された全身基準ボリュームデータ及び複数の体節基準ボリュームデータを、各々の学習空間である全身の学習空間及び各体節部の学習空間に投影することで、全身及び各体節部の学習データを生成し、
前記入力ボリューデータ生成手段は、前記低解像度でボクセルが配置された前記観測対象物全体のボリュームデータである第１の全身入力ボリュームデータと、前記高解像度でボクセルが配置された前記観測対象物全体のボリュームデータである第２の全身入力ボリュームデータとを前記入力ボリュームデータとして生成し、
前記探索手段は、前記第１の全身入力ボリュームデータを全身の学習空間に投影することで、前記全身基準ボリュームデータに対する前記第１の全身入力ボリュームデータの向きを推定し、推定した向きに前記第２の全身入力ボリュームデータを回転させ、前記全身基準ボリュームデータの各ボクセルに付されたラベルを基に、回転させた第２の全身入力ボリュームデータから前記観測対象物の各体節部のボリュームデータである複数の体節入力ボリュームデータを生成し、各体節入力ボリュームデータを対応する学習空間に投影することで、体節部毎の前記最近傍基準投影点を探索し、
前記特定手段は、前記探索手段により探索された体節部毎の最近傍基準投影点に対応する体節基準ボリュームを基に、前記第２の全身入力ボリュームデータの各ボクセルがどの体節部に属するかを特定することを特徴とする請求項１〜５のいずれかに記載の形状解析プログラム。
【請求項７】
前記探索手段は、前記第１の全身入力ボリュームデータを仮想３次元空間内で所定方向を基準として所定角度回転ずつ回転させる毎に全身の学習空間に投影し、距離が最短となる前記第１の全身入力ボリュームデータの投影点と基準投影点とを探索することで、前記入力ボリュームデータの向きを推定することを特徴とする請求項６記載の形状解析プログラム。
【請求項８】
前記学習データ生成手段及び前記探索手段は、主成分分析を用いて前記基準ボリュームデータ及び前記入力ボリュームデータを前記学習空間に投影することを特徴とする請求項１〜７のいずれかに記載の形状解析プログラム。
【請求項９】
前記基準ボリュームデータ生成手段は、体節部毎に異なる色が付された基準対象物の動画像を用いて、前記基準ボリュームデータの各ボクセルがどの体節部に属するかを特定することを特徴とする請求項１〜８のいずれかに記載の形状解析プログラム。
【請求項１０】
前記基準対象物及び前記観測対象物は、ゆとりのある衣服を着用した人物であることを特徴とする請求項１〜９のいずれかに記載の形状解析プログラム。
【請求項１１】
複数の体節部からなる基準対象物の動画像から、各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物のボリュームデータである基準ボリュームデータをフレーム毎に生成する基準ボリュームデータ生成手段と、
前記基準ボリュームデータ生成手段によりフレーム毎に生成された複数の基準ボリュームデータを、前記基準ボリュームデータのボクセル数よりも低い所定次元の学習空間に投影することで得られる複数の基準投影点列を学習データとして生成する学習データ生成手段と、
前記基準ボリュームデータ生成手段により生成された基準ボリュームデータと、前記学習データ生成手段により生成された学習データとを予め記憶する学習データ記憶手段と、
前記基準対象物と同じ複数の体節部からなる観測対象物の動画像を撮影する複数の撮影手段と、
前記複数の撮影手段によりフレームが取得される毎に、視体積交差法を用いて前記観測対象物のボリュームデータである入力ボリュームデータを生成する入力ボリュームデータ生成手段と、
前記入力ボリュームデータ生成手段により生成された入力ボリュームデータを前記学習空間に投影し、前記入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を前記学習空間内で探索する探索手段と、
前記探索手段により探索された最近傍基準投影点に対応する基準ボリュームデータの各ボクセルに付されたラベルを基に、前記入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する特定手段とを備えることを特徴とする形状解析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の体節部からなる観測対象物のボリュームデータの各ボクセルがどの体節部に属するかをリアルタイムに特定することができる形状解析プログラム及び形状解析装置に関するものである。
【背景技術】
【０００２】
近年、人体の姿勢・運動情報の獲得することで、ジェスチャ等の動作を入力としたインターフェイス、ヒューマン・ロボットインタラクション、観測人物の位置・姿勢に応じた撮影のためにカメラを制御する能動観測、スポーツ・伝統技能などの自動撮影・学習支援システム等の様々なシステムを実現することが期待されている。環境における人体の運動情報獲得のためには、着衣を含めた身体部位の特定が要素技術として必要となる。
【０００３】
ルーズな着衣を含んだ姿勢推定やその形状解析を行う手法として、非特許文献１には、各体節の形状を剛体ではなくパラメトリックな空間分布として表現し、各体節の体積保存や体節ラベルの空間的連続性を制約条件として各体節形状の最適パラメータを推定する技術が開示されている。
【０００４】
また、非特許文献２には、異なる視点間で対応画素の色の同一性をチェックして立体物の形状を復元するSpaceCarving法と呼ばれる技術が開示されている。
【非特許文献１】藤田武史、向川康博、尺長健，“多視点カメラシステムによる舞踊動作の獲得と解析”  情処研報、CVIM-2002-132，pp.95.102，2002.
【非特許文献２】K. N. Kutulakos, S. M. Seitz, “A Theory of Shape by Space Carving,” IJCV, Vol.38, No.3, pp.199.218, 2000.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１の手法では、最適パラメータを推定するためになされる反復計算量が膨大であるため、リアルタイム処理を行うことは困難であり、また、パラメトリックモデルでは形状表現に限界があるため高精度に体節形状を算出することができない。また、非特許文献２の手法では、立体物をリアルに表現することは可能であるが、計算量が膨大であるため、リアルタイム処理を行うことは事実上不可能である。一方、複数のカメラで立体物を撮影して立体物を復元する視体積交差法を用いれば立体物をリアルタイムで復元することはできるが、凹部が偽のボリュームデータによって再現されるため、数多くの凹部が含まれる着衣を含めた身体部位を高精度に再現することは困難である。
【０００６】
本発明の目的は、視体積交差法により生成されたボリュームデータの各ボクセルが観測対象物のどの体節部を表しているかをリアルタイム、かつ精度よく特定することができる形状解析装置及び形状解析プログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明による形状解析プログラムは、複数の体節部からなる基準対象物の動画像から、各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物のボリュームデータである基準ボリュームデータをフレーム毎に生成する基準ボリュームデータ生成手段と、前記基準ボリュームデータ生成手段によりフレーム毎に生成された複数の基準ボリュームデータを、前記基準ボリュームデータのボクセル数よりも低い所定次元の学習空間に投影することで得られる複数の基準投影点列を学習データとして生成する学習データ生成手段と、前記基準ボリュームデータ生成手段により生成された基準ボリュームデータと、前記学習データ生成手段により生成された学習データとを予め記憶する学習データ記憶手段と、前記基準対象物と同じ複数の体節部からなる観測対象物の動画像を撮影する複数の撮影手段と、前記複数の撮影手段によりフレームが取得される毎に、視体積交差法を用いて前記観測対象物のボリュームデータである入力ボリュームデータを生成する入力ボリュームデータ生成手段と、前記入力ボリュームデータ生成手段により生成された入力ボリュームデータを前記学習空間に投影し、前記入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を前記学習空間内で探索する探索手段と、前記探索手段により探索された最近傍基準投影点に対応する基準ボリュームデータの各ボクセルに付されたラベルを基に、前記入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する特定手段としてコンピュータを機能させることを特徴とする。
【０００８】
また、本発明による形状解析プログラムは、複数の体節部からなる基準対象物の動画像から、各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物のボリュームデータである基準ボリュームデータをフレーム毎に生成する基準ボリュームデータ生成手段と、前記基準ボリュームデータ生成手段によりフレーム毎に生成された複数の基準ボリュームデータを、前記基準ボリュームデータのボクセル数よりも低い所定次元の学習空間に投影することで得られる複数の基準投影点列を学習データとして生成する学習データ生成手段と、前記基準ボリュームデータ生成手段により生成された基準ボリュームデータと、前記学習データ生成手段により生成された学習データとを予め記憶する学習データ記憶手段と、前記基準対象物と同じ複数の体節部からなる観測対象物の動画像を撮影する複数の撮影手段と、前記複数の撮影手段によりフレームが取得される毎に、視体積交差法を用いて前記観測対象物のボリュームデータである入力ボリュームデータを生成する入力ボリュームデータ生成手段と、前記入力ボリュームデータ生成手段により生成された入力ボリュームデータを前記学習空間に投影し、前記入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を前記学習空間内で探索する探索手段と、前記探索手段により探索された最近傍基準投影点に対応する基準ボリュームデータの各ボクセルに付されたラベルを基に、前記入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する特定手段とを備えることを特徴とする。
【０００９】
これらの構成によれば、観測対象物の動画像からフレーム毎に生成された基準ボリュームデータが学習空間に投影され、投影点である基準投影点列からなる学習データが予め生成されている。また、撮影手段により観測対象物が撮影されたフレームが取得される毎に、視体積交差法を用いて仮想３次元空間内に基準ボリュームデータと同一ボクセル数の入力ボリュームデータが生成され、この入力ボリュームデータが学習空間に投影され、入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点が探索され、最近傍基準投影点に対応する基準ボリュームデータの各ボクセルに付された体節部の部位を表すラベルに基づいて、入力ボリュームデータの各ボクセルがどの体節部に属しているのかが特定される。
【００１０】
ここで、学習空間の次元数が入力ボリュームデータのボクセル数より低いため、入力ボリュームデータを学習空間に投影すると、入力ボリュームデータのボクセル数が圧縮される結果、最近傍基準点の探索処理を高速に行うことができる。また、入力ボリュームデータは視体積交差法により生成されているため、撮影手段により撮影された動画像から入力ボリュームデータを高速に生成することができる。従って、入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する処理をリアルタイムに行うことができる。
【００１１】
また、学習データとなる基準投影点は、観測対象物と同じ複数の体節部からなる基準対象物の基準ボリュームデータが投影されたものであるため、最近傍基準投影点に対応する基準ボリュームデータは、入力ボリュームデータの姿勢と類似しており、入力ボリュームデータの各ボクセルがどの体節部を表しているかを精度よく特定することができる。
【００１２】
更に、姿勢が類似する基準ボリュームデータに付されたラベルを用いて入力ボリュームデータにおける体節部が特定されているため、基準対象物及び観測対象物としてゆとりのある衣服を着用した人物を採用したとしても、精度良く体節部を特定することができる。
【００１３】
また、前記学習データ記憶手段は、前記入力ボリュームデータ生成手段により生成された入力ボリュームデータに含まれる偽のボリュームデータを除去するための信頼度を予め記憶し、前記探索手段は、前記信頼度を用いて前記入力ボリュームデータを修正し、修正した入力ボリュームデータを前記学習空間に投影することが好ましい。
【００１４】
この構成によれば、偽ボリュームを除去するための信頼度を用いて入力ボリュームデータが修正されているため、視体積交差法を採用する以上、入力ボリュームデータに発生する偽のボリュームを減少させることが可能となる。
【００１５】
また、前記基準ボリュームデータ生成手段は、視体積交差法により生成されたボリュームデータを修正することで前記基準ボリュームデータを生成し、前記基準ボリュームデータ生成手段により生成された基準ボリュームデータを仮想３次元空間内に配置し、複数の仮想カメラと前記基準ボリュームデータとの位置関係を変化させながら、前記複数の仮想カメラで前記基準ボリュームデータを撮影することで得られた２次元画像から視体積交差法を用いて前記位置関係毎の簡略ボリュームデータを生成する簡略ボリュームデータ生成手段と、各簡略ボリュームデータと前記基準ボリュームデータとを比較することで、前記簡略ボリュームデータにおける偽のボリュームデータの発生箇所を特定し、前記信頼度を生成する信頼度生成手段としてコンピュータを更に機能させることが好ましい。
【００１６】
この構成によれば、視体積交差法により生成されたボリュームデータが修正されて基準ボリュームデータが生成されているため、基準ボリュームデータは、偽ボリュームを含むことなく基準対象物を表すことになる。そして、この基準ボリュームデータが仮想３次元空間内で配置され、複数の仮想カメラで撮影され、得られた２次元画像から視体積交差法を用いて、簡略ボリュームデータが生成され、仮想カメラと基準ボリュームデータとの位置関係が変化されつつ、位置関係毎の簡略ボリュームデータが生成されている。
【００１７】
ここで、視体積交差法によって表される偽ボリュームデータは、基準対象物と複数のカメラとの位置関係とに応じて多く表れたり少なく表れたりする。一方、基準ボリュームデータは基準対象物そのものを表していると考えられるため、基準ボリュームデータと位置関係毎の簡略ボリュームデータとを比較すれば、簡略ボリュームデータの各ボクセルにおいて偽ボリュームが多く発生しているボクセルとあまり発生していないボクセルとを特定することができる。そして、信頼度はこのようにして特定された偽ボリュームに基づいて作成されているため、入力ボリュームデータのどのボクセルが偽ボリュームデータであるかを表すことが可能となる。
【００１８】
また、前記探索手段は、前記学習空間を一定サイズの部分領域に区切り、前記入力ボリュームデータの投影点が属する注目部分領域内において前記最近傍基準投影点を探索し、前記注目部分領域内において前記基準投影点が存在しない場合、前記基準投影点が検出されるように前記部分領域のサイズを拡大させることが好ましい。
【００１９】
この構成によれば、最近傍基準投影点の探索範囲が入力ボリュームデータの投影点が属する注目部分領域内とされるため、探索範囲が狭まり最近傍基準投影点を高速に探索することができる。また、注目部分領域内において基準投影点が存在しない場合、基準投影点が検出されるように、部分領域のサイズが拡大されるため、注目部分領域内において基準投影点が存在しないことを回避することができる。
【００２０】
また、前記探索手段は、前記注目部分領域内において前記入力ボリュームデータの投影点の最近傍に位置する基準投影点を検出し、検出した基準投影点及び前記入力ボリュームデータの投影点間の距離よりも、前記入力ボリュームデータの投影点までの距離が短い１又は複数の隣接部分領域を特定し、特定した隣接部分領域及び前記注目部分領域内を探索することで前記最近傍基準投影点を検出することが好ましい。
【００２１】
この構成によれば、最近傍基準投影点が注目部分領域ではなく、隣接する部分領域に存在する場合であっても、最近傍基準投影点を探索することができる。
【００２２】
また、前記基準ボリュームデータ生成手段は、所定の低解像度でボクセルが配置され、かつ各ボクセルがどの体節部に属するかを示すラベルが付された前記基準対象物全体のボリュームデータである全身基準ボリュームデータと、前記低解像度よりも高解像度でボクセルが配置され前記基準対象物の各体節部のボリュームデータである複数の体節基準ボリュームデータとを前記基準ボリュームデータとして生成し、前記学習データ生成手段は、前記基準ボリュームデータ生成手段により生成された全身基準ボリュームデータ及び複数の体節基準ボリュームデータを、各々の学習空間である全身の学習空間及び各体節部の学習空間に投影することで、全身及び各体節部の学習データを生成し、前記入力ボリューデータ生成手段は、前記低解像度でボクセルが配置された前記観測対象物全体のボリュームデータである第１の全身入力ボリュームデータと、前記高解像度でボクセルが配置された前記観測対象物全体のボリュームデータである第２の全身入力ボリュームデータとを前記入力ボリュームデータとして生成し、前記探索手段は、前記第１の全身入力ボリュームデータを全身の学習空間に投影することで、前記全身基準ボリュームデータに対する前記第１の全身入力ボリュームデータの向きを推定し、推定した向きに前記第２の全身入力ボリュームデータを回転させ、前記全身基準ボリュームデータの各ボクセルに付されたラベルを基に、回転させた第２の全身入力ボリュームデータから前記観測対象物の各体節部のボリュームデータである複数の体節入力ボリュームデータを生成し、各体節入力ボリュームデータを対応する学習空間に投影することで、体節部毎の前記最近傍基準投影点を探索し、前記特定手段は、前記探索手段により探索された体節部毎の最近傍基準投影点に対応する体節基準ボリュームを基に、前記第２の全身入力ボリュームデータの各ボクセルがどの体節部に属するかを特定することが好ましい。
【００２３】
この構成によれば、基準対象物の全体を低解像度でボクセルが配置された全身基準ボリュームデータと、基準対象物の各体節部を高解像度でボクセルが配置された複数の体節基準ボリュームデータとが生成され、全身基準ボリュームデータ及び複数の体節基準ボリュームデータが、各々の学習空間である全身の学習空間及び各体節部の学習空間に投影されて全身及び各体節部の学習データが生成される。
【００２４】
一方、観測対象物を複数の撮影手段により撮影することで、低解像度でボクセルが配置された第１の全身入力ボリュームデータと高解像度でボクセルが配置された第２の全身入力ボリュームデータとが生成され、第１の全身入力ボリュームデータを全身の学習空間に投影することで、全身基準ボリュームデータに対する第１の全身入力ボリュームデータの向きが推定される。ここで、第１の全身入力ボリュームデータは低解像度でボクセルが配置されているため、第１の全身入力ボリュームデータに姿勢が類似する全身基準ボリュームデータと、その全身基準ボリュームデータに対する第１の全身入力ボリュームデータの向きとを高速に特定することができる。
【００２５】
そして、推定された向きに第２の全身入力ボリュームデータが回転され、全身基準ボリュームデータの各ボクセルに付されたラベルを基に、回転された第２の全身入力ボリュームデータから観測対象物における各体節部の体節入力ボリュームデータが生成され、各体節入力ボリュームデータを対応する学習空間に投影することで、体節部毎の最近傍基準投影点が探索される。ここで、各体節入力ボリュームデータは、全身基準ボリュームデータと同じ向きに回転された高解像度の第２の全身入力ボリュームデータから、基準ボリュームデータに付されたラベルに基づいて生成されたものであるため、観測対象物の各体節部の位置を精度良く表している。
【００２６】
そして、探索された体節部毎の最近傍基準投影点に対応する体節基準ボリュームの各ボクセルに付されたラベルを基に、第２の全身入力ボリュームデータの各ボクセルがどの体節部に属するかが特定されるため、第２の全身入力ボリュームデータの各ボクセルがどの体節部に属しているかを高速かつ高精度に特定することができる。
【００２７】
また、前記探索手段は、前記第１の全身入力ボリュームデータを仮想３次元空間内で所定方向を基準として所定角度回転ずつ回転させる毎に全身の学習空間に投影し、距離が最短となる前記第１の全身入力ボリュームデータの投影点と基準投影点とを探索することで、前記入力ボリュームデータの向きを推定することが好ましい。
【００２８】
この構成によれば、第１の全身入力ボリュームデータは、仮想３次元空間内で所定方向を基準として所定角度回転ずつ回転させる毎に学習空間に投影され、距離が最短となる第１の全身入力ボリュームデータの投影点と基準投影点とが探索されているため、第１の全身入力ボリュームデータに最も類似する全身基準ボリュームデータを特定し、かつこの全身基準ボリュームデータに対する入力ボリュームデータの向きを特定することができる。
【００２９】
また、前記学習データ生成手段及び前記探索手段は、主成分分析を用いて前記基準ボリュームデータ及び前記入力ボリュームデータを前記学習空間に投影することが好ましい。
【００３０】
この構成によれば、基準ボリュームデータ及び入力ボリュームデータは主成分分析を用いて学習空間に投影されているため、元の特徴を損なうことなくボクセル数を圧縮することができる。
【００３１】
また、前記基準ボリュームデータ生成手段は、体節部毎に異なる色が付された基準対象物の動画像を用いて、前記基準ボリュームデータの各ボクセルがどの体節部に属するかを特定することが好ましい。
【００３２】
この構成によれば、体節部毎に異なる色が付された基準対象物の動画像を用いて基準ボリュームデータに付すラベルが特定されているため、各体節部の位置を精度良く表す基準ボリュームデータを生成することができる。
【００３３】
また、前記基準対象物及び前記観測対象物は、ゆとりのある衣服を着用した人物であることが好ましい。
【００３４】
この構成によれば、ゆとりのある衣服を着用した人物を構成する体節部をリアルタイムかつ高精度に特定することができる。
【発明の効果】
【００３５】
本発明によれば、学習空間の次元数は入力ボリュームデータのボクセル数より低いため、入力ボリュームデータを学習空間に投影すると、入力ボリュームデータのボクセル数が圧縮される結果、最近傍基準点の探索処理を高速に行うことができる。また、入力ボリュームデータは視体積交差法により生成されているため、撮影手段により撮影された動画像から入力ボリュームデータを高速に生成することができる。従って、入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する処理をリアルタイムに実現することが可能となる。
【００３６】
また、学習データとなる基準投影点は、基準対象物と同じ複数の体節部からなる観測対象物の基準ボリュームデータが投影されたものであるため、最近傍基準投影点に対応する基準ボリュームデータは、入力ボリュームデータの姿勢と類似しており、入力ボリュームデータの各ボクセルがどの体節部を表しているかを精度よく特定することができる。
【００３７】
更に、姿勢が類似する基準ボリュームデータに付されたラベルを用いて入力ボリュームデータにおける体節部が特定されているため、基準対象物及び観測対象物としてゆとりのある衣服を着用した人物を採用したとしても、精度良く体節部を特定することができる。
【発明を実施するための最良の形態】
【００３８】
以下、本発明の実施の形態による形状解析装置について説明する。図１は、本発明の実施の形態による形状解析装置のハードウェア構成を示すブロック図である。本形状解析装置は、通常のコンピュータ等から構成され、入力装置１、ＲＯＭ（リードオンリメモリ）２、ＣＰＵ（中央演算処理装置）３、ＲＡＭ（ランダムアクセスメモリ）４、外部記憶装置５、表示装置６、記録媒体駆動装置７、インターフェイス部（Ｉ／Ｆ）部９、及びｍ（ｍは２以上の整数）台のカメラ１１〜１ｍを備える。入力装置１、ＲＯＭ２、ＣＰＵ３、ＲＡＭ４、外部記憶装置５、表示装置６、記録媒体駆動装置７、及びＩ／Ｆ部９は内部のバスに接続され、このバスを介して種々のデータ等が入出され、ＣＰＵ３の制御の下、種々の処理が実行される。
【００３９】
入力装置１は、キーボード、マウス等から構成され、ユーザが種々のデータを入力するために使用される。ＲＯＭ２には、ＢＩＯＳ（Basic Input/Output System）等のシステムプログラムが記憶される。外部記憶装置５は、ハードディスクドライブ等から構成され、所定のＯＳ（Operating System）及び形状解析プログラム等が記憶される。ＣＰＵ３は、外部記憶装置５からＯＳ等を読み出し、各ブロックの動作を制御する。本実施の形態では、ＣＰＵ３として、例えばＯＰＴＥＲＯＮ  １．５ＧＨｚを採用することができる。ＲＡＭ４は、ＣＰＵ３の作業領域等として用いられる。
【００４０】
表示装置６は、液晶表示装置等から構成され、ＣＰＵ３の制御の下に種々の画像を表示する。記録媒体駆動装置７は、ＣＤ−ＲＯＭドライブ、フレキシブルディスクドライブ等から構成される。
【００４１】
なお、本形状解析プログラムは、ＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体８に格納されて市場に流通される。ユーザはこの記録媒体８を記録媒体駆動装置７に読み込ませることで、形状解析プログラムをコンピュータにインストールする。また、形状解析プログラムをインターネット上のサーバに格納し、このサーバからダウンロードすることで、形状解析プログラムをコンピュータにインストールしてもよい。
【００４２】
Ｉ／Ｆ部９は、例えばＵＳＢインターフェイスから構成され、カメラ１〜１ｍと形状解析装置との入出力インターフェイスを行う。カメラ１〜１ｍは所定のフレームレートで動画像を撮影するカメラから構成され、同一時刻にフレームが撮影されるように同期が図られている。
【００４３】
図２は、図１に示す形状解析装置の機能構成を示すブロック図である。図２に示すように形状解析装置は、ｍ台のカメラ１１〜１ｍ（撮影手段の一例）、基準ボリュームデータ生成部２０（基準ボリュームデータ生成手段の一例）、簡略ボリュームデータ生成部３０（簡略ボリュームデータ生成手段の一例）、学習データ生成部４０（学習データ生成手段の一例）、入力ボリュームデータ生成部５０（入力ボリュームデータ生成手段の一例）、探索部６０（探索手段の一例）、特定部７０（特定手段の一例）、信頼度生成部８０（信頼度生成手段の一例）、及び学習データ記憶部９０（学習データ記憶手段の一例）を備えている。なお、図２に示す基準ボリュームデータ生成部２０〜９０は、ＣＰＵ３が形状解析プログラムを実行することで実現されるが、これに限定されず、各ブロックを専用のハードウェア装置により構成してもよい。
【００４４】
カメラ１１〜１ｍは、３次元の実空間の所定箇所に配置され、基準ボリュームデータ生成部２０及び入力ボリュームデータ生成部５０がボリュームデータを生成する際に用いる動画像を撮影する。
【００４５】
基準ボリュームデータ生成部２０は、複数の体節部からなる基準対象物の動画像から、各ボクセルがどの体節部に属するかを示すラベルが付された基準対象物のボリュームデータである基準ボリュームデータをフレーム毎に生成する。
【００４６】
具体的には、基準ボリュームデータ生成部２０は、カメラ１１〜１ｍで撮影された基準対象物の動画像から視体積交差法によりボリュームデータを生成し、生成したボリュームデータを弾性メッシュ変形、又はスペースカービング（Ｓｐａｃｅ  Ｃａｒｖｉｎｇ）といった手法を用いて修正することで基準ボリュームデータを生成する。なお、視体積交差法としては、「G. K. M. Cheung, T. Kanade, J.-Y. Bouguet, M. Holler, “A real time system for robust 3D voxel reconstruction of humanmotions,” CVPR2000, Vol.2, pp.714.720, 2000.」又は「X. Wu, O. Takizawa, and T. Matsuyama, “Parallel Pipeline Volume Intersection for Real-Time 3D Shape Reconstruction on a PC Cluster,” in Proc. of The 4th IEEE International Conference on Computer Vision Systems (ICVS), 2006.」に記載された手法を採用することができる。また、弾性メッシュ変形としては、「S. Nobuhara and T. Matsuyama, “Deformable Mesh Model for Complex Multi-Object 3D Motion Estimation from Multi-Viewpoint Video,” 3DPVT, 2006.」に記載された手法を採用することができる。
【００４７】
また、スペースカービングとしては、「K. N. Kutulakos, S. M. Seitz, “A Theory of Shape by Space Carving,” IJCV, Vol.38, No.3, pp.199.218, 2000.」に記載された手法を採用することができる。
【００４８】
基準ボリュームデータとしては、所定の低解像度でボクセルが配置され、かつ各ボクセルがどの体節部に属するかを示すラベルが付された基準対象物全体のボリュームデータである全身基準ボリュームデータと、低解像度よりも高解像度でボクセルが配置された基準対象物の各体節部のボリュームデータである複数の体節基準ボリュームデータとが含まれる。
【００４９】
基準対象物としては、人物が採用され、体節部としては、人物の頭部、胴体部、右上腕部、右下腕部、左上腕部、左下腕部、右上脚部、右下脚部、左上脚部、及び左下脚部の１０個の部位が採用される。したがって、全身基準ボリュームデータの各ボクセルには、上記１０個の体節部のうち、自己が属する体節部を示すラベルが付される。なお、上記体節部は一例であり、１１個以上の体節部を採用してもよいし、異なる体節部を採用してもよいし、上記の体節部のうちいずれかの体節部を省いてもよい。
【００５０】
図３は、本実施の形態で採用されるボリュームデータを示した図であり、（ａ）は全身基準ボリュームデータを示し、（ｂ）は体節基準ボリュームデータを示している。図３（ａ）に示すように全身基準ボリュームデータは、仮想３次元空間において基準対象物Ｋ１の全体を囲むように配置された直方体状のバウンディングボックスＢ１内を格子状に区画する複数のボクセルＢＳ１の集合によって表される。基準対象物Ｋ１に位置するボクセルＢＳ１には、例えば「１」の符号が割り当てられ、基準対象物Ｋ１が位置しないボクセルＢＳ１には、例えば「０」の符号が割り当てられる。また、各ボクセルＢＳ１は、頭部に位置するボクセルＢＳ１には頭部を示すラベルが付され、右上腕部に位置するボクセルＢＳ１には右上腕部を示すラベルが付されるというように、自己が属する体節部を表すラベルが付されている。
【００５１】
図３（ｂ）に示す体節基準ボリュームデータは、仮想３次元空間において基準対象物Ｋ１の１０個の体節部のそれぞれを囲むように配置された１０個のバウンディングボックスＢ２内を格子状に区画する複数のボクセルＢＳ２から構成されている。ボクセルＢＳ２もボクセルＢＳ１と同様、体節部に位置するボクセルＢＳ２には、「１」の符号が割り当てられ、体節部に位置しないボクセルＢＳ２には、「０」の符号が割り当てられる。ここで、全身基準ボリュームデータは、低解像度であり、体節基準ボリュームデータは高解像度であるため、ボクセルＢＳ１のサイズはボクセルＢＳ２のサイズよりも大きい。
【００５２】
図２に戻り簡略ボリュームデータ生成部３０は、基準ボリュームデータ生成部２０により生成された全身基準ボリュームデータを仮想３次元空間内に配置し、複数の仮想カメラと全身基準ボリュームデータとの位置関係を変化させながら、複数の仮想カメラで全身基準ボリュームデータを撮影することで得られた複数のシルエット画像から視体積交差法を用いて形状復元することで位置関係毎の簡略ボリュームデータを生成する。
【００５３】
信頼度生成部８０は、位置関係毎の簡略ボリュームデータと全身基準ボリュームデータとを比較することで、簡略ボリュームデータにおける偽のボリュームの発生箇所を特定し、入力ボリュームデータに含まれる偽のボリュームを除去するための全身基準ボリュームデータの各ボクセルに付された信頼度を生成する。ここで、信頼度は、入力ボリュームデータ生成部５０により生成される入力ボリュームデータの各ボクセルにおける偽のボリュームの発生し易さを確率的に表現したデータである。例えば、あるフレームの全身基準ボリュームデータのあるボクセルにおいて、仮想カメラと全身基準ボリュームデータとの位置関係を１０回変化させたうち、２回において偽ボリュームが発生した場合、そのボクセルの信頼度は０．２となる。
【００５４】
偽のボリュームが発生する箇所は、対象形状だけでなく撮影カメラ群との位置関係によって大きく変化する。そのため、位置関係毎の簡略ボリュームデータと全身基準ボリュームデータとを比較することで、偽のボリュームの発生箇所を特定することができる。
【００５５】
学習データ生成部４０は、基準ボリュームデータ生成部２０によりフレーム毎に生成された複数の基準ボリュームデータを、例えば主成分分析を用いて基準ボリュームデータのボクセル数よりも低い所定次元の学習空間に投影することで得られる複数の基準投影点列を学習データとして生成する。なお、主成分分析に代えて、「N. D. Lawrence, “Probabilistic non-linear principal component analysis with Gaussian process latent variable models,” in Journal of Machine Learning Research, Vol.6,, pp.1783. 1816, 2005.」に示す陰変数を利用した非線形写像を用いる手法を適用してもよい。
【００５６】
本実施の形態では、基準ボリュームデータとして、全身基準ボリュームデータと体節基準ボリュームデータとが含まれるため、学習空間としては、全身基準ボリュームデータのボクセル数よりも低い所定次元の学習空間である全身学習空間と、各体節基準ボリュームデータのボクセル数よりも低い所定次元の学習空間である体節学習空間とが存在する。なお、本実施の形態では、体節部は１０種類存在するため、１０個体節学習空間が存在する。
【００５７】
そして、学習データ生成部４０は、フレーム毎に生成された複数の全身基準ボリュームデータを全身学習空間に投影することで得られる複数の基準投影点列を全身の学習データとして生成すると共に、フレーム毎に生成された複数の体節基準ボリュームデータを対応する体節学習空間に投影することで得られる複数の基準投影点列を体節の学習データとして生成する。
【００５８】
学習データ記憶部９０は、信頼度生成部８０により生成された信頼度と、学習データ生成部４０により生成された学習データとを予め記憶する。なお、基準ボリュームデータ生成部２０〜学習データ生成部４０及び信頼度生成部８０による処理は、後述する入力ボリュームデータ生成部５０〜特定部７０によりリアルタイムで実行される処理の前処理として予め実行される。
【００５９】
入力ボリュームデータ生成部５０は、カメラ１１〜１ｍによりフレームが取得される毎に、視体積交差法を用いて基準対象物と同様の複数の体節部を有する観測対象物のボリュームデータである入力ボリュームデータを生成する。入力ボリュームデータには、全身基準ボリュームデータと同じ低解像度でボクセルが配置された観測対象物全体のボリュームデータである第１の全身入力ボリュームデータと、体節基準ボリュームデータと同じ高解像度でボクセルが配置された観測対象物全体のボリュームデータである第２の全身入力ボリュームデータとが含まれる。したがって、第１の全身入力ボリュームデータは、図３（ａ）に示す全身基準ボリュームデータと同様のボクセルＢＳ１で表されるデータとなり、第２の全身入力ボリュームデータは、図３（ａ）に示す全身基準ボリュームデータのボクセルＢＳ１をボクセルＢＳ２としたデータで表される。
【００６０】
探索部６０は、入力ボリュームデータ生成部５０により生成された入力ボリュームデータを学習空間に投影し、入力ボリュームデータの投影点に対して最近傍に位置する基準投影点である最近傍基準投影点を学習空間内で探索する。
【００６１】
具体的には、探索部６０は、第１の全身入力ボリュームデータを全身学習空間に投影することで、全身基準ボリュームデータに対する第１の全身入力ボリュームデータの向きを推定し、推定した向きに第２の全身入力ボリュームデータを回転させ、全身基準ボリュームデータの各ボクセルに付されたラベルを基に、回転させた第２の全身入力ボリュームデータにおける１０個の体節部の位置を特定し、１０個の体節部のそれぞれを囲む１０個のバウンディングボックスを設定することで、１０個の体節入力ボリュームデータを生成し、１０個の体節入力ボリュームデータを対応する学習空間に投影することで、１０個の体節部に対する最近傍基準投影点を探索する。
【００６２】
特定部７０は、探索部６０により探索された体節部毎の最近傍基準投影点に対応する体節基準ボリュームに付されたラベルを基に、第２の全身入力ボリュームデータの各ボクセルがどの体節部に属するかを特定する。
【００６３】
次に、本形状解析装置における学習データの生成処理について説明する。図４は、学習データ生成処理を示すフローチャートである。まず、ステップＳ１において、カメラ１１〜１ｍは、基準対象物の動画像を撮影する。図５は、全身基準ボリュームデータが生成される過程を示した図である。カメラ１１〜１ｍは、図５（ａ）に示すように特定対象となる１０個の体節部毎に異なる色が付されたゆとりのある衣服（例えば浴衣）を着用した人物を撮影する。
【００６４】
次に、ステップＳ２において、基準ボリュームデータ生成部２０は、カメラ１１〜１ｍのそれぞれにより撮影された同一時刻のｍ枚のフレームから、視体積交差法を用いて３次元のボリュームデータを生成し、生成したボリュームデータに対して弾性メッシュ変形又はスペースカービングを施して全身基準ボリュームデータを生成する。これにより、全身基準ボリュームデータの形状は、図５（ｂ）に示す実際の基準対象物の形状に近似され、基準対象物をリアルに再現することができる。
【００６５】
次に、ステップＳ３において、基準ボリュームデータ生成部２０は、ステップＳ２で生成した全身基準ボリュームデータの各ボクセルに、各ボクセルが属する体節部を示すラベル（体節ラベル）を付す。具体的には、基準ボリュームデータ生成部２０は以下のようにして体節ラベルを付す。まず、カメラ１１〜１ｍにより撮影された同一時刻のｍ枚のフレームに対して色検出処理を実行し、図５（ｃ）に示すような体節部ごとにラベル化された多視点ラベル画像を生成する。なお、色検出処理としては、「和田俊和：“最近傍識別器を用いた色ターゲット検出”，情報処理学会CVIM 論文誌，Vol.44，No.SIG17，pp.126.135，2003．」記載の手法を採用することができる。
【００６６】
次に、多視点ラベル画像から全身基準ボリュームデータに対して体節ラベルの逆投影を行うことにより、全身基準ボリュームデータの表面ボクセルを体節ラベルでラベリングする。次に、全身基準ボリュームデータの各内部ボクセルの最近傍に位置する表面ボクセルを探索し、探索した表面ボクセルの体節ラベルで各内部ボクセルをラベリングする。以上により、図５（ｄ）に示すような、各ボクセルに体節ラベルが付された高精度形状を有する全身基準ボリュームデータが生成される。
【００６７】
次に、ステップＳ４において、基準ボリュームデータ生成部２０は、体節ラベルが付された全身基準ボリュームデータを用いて基準対象物の１０個の体節部を表す１０個の体節基準ボリュームデータを生成する。ここで、基準ボリュームデータ生成部２０は、高解像度でボクセルが配置されたバウンディングボックスを、全身基準ボリュームデータに含まれる各体節部が覆われるように配置することで、高解像度の体節基準ボリュームデータを生成する。
【００６８】
全身基準ボリュームデータ及び各体節基準ボリュームデータを主成分分析するためには、各フレームにおける全身基準ボリュームデータ及び各体節基準ボリュームデータのボクセル数（次元数）を一致させる必要がある。そこで、基準ボリュームデータ生成部２０は、各フレームにおける基準対象物の３次元重心を求め、それを基準に基準対象物を囲むように一定サイズのバウンディングボックスを配置して全身基準ボリュームデータを生成すると共に、各フレームにおける各体節部の３次元重心を求め、それを基準に各体節部を囲むように一定サイズのバウンディングボックスを配置して各体節基準ボリュームを生成している。なお、全身を囲むバウンディングボックス及び各体節部を囲むバウンディングボックスのサイズは、全フレームにおいて基準対象物及び各体節部を囲むことができるサイズであることが好ましい。また、図３（ｂ）に示すように、ある体節部のバウンディングボックスＢＳ２内には、他の体節部の体節基準ボリュームデータが含まれている。
【００６９】
次に、ステップＳ５において、学習データ生成部４０は、全フレームにおける全身基準ボリュームデータ及び体節基準ボリュームデータを時系列的に並べたボリュームデータの集合Ｖを算出する。ここで、ある時刻ｔにおけるｄ次元（ボクセル数がｄ個）のボリュームデータは、ｖｔ＝［ｖｔ，１，ｖｔ，２，・・・，ｖｔ，ｄ］Ｔ（ｖｔ，ｉ∈｛０，１｝とし、０は非対象ボクセル、１は対象ボクセルとする。）で表される。また、全フレームのボリュームデータの集合Ｖは、次のように表現される。
【００７０】
Ｖ＝［ｖ１−ｍ，ｖ２−ｍ，・・・，ｖＴ−ｍ］      （１）
但し、Ｔは学習データとして利用するボリュームデータ数（すなわち、撮影フレーム数）、ｍはＴ個のボリュームデータの平均ボリュームである。
【００７１】
次に、ステップＳ６において、学習データ生成部４０は、全身基準ボリュームデータ及び体節基準ボリュームデータの各々において、集合Ｖから共分散行列Ｓ＝ＶＶＴを算出し、固有ベクトルの集合｛ｅｉ｜ｉ＝１，・・・，ｄ｝を得る。但し、ｅｉは対応する固有値λｉを大きい順に並べたものとする。この固有ベクトルを基底とした空間が固有空間となる。なお、全身基準ボリュームデータ及び各体節基準ボリュームデータのボクセル数は説明の便宜上、ｄで表しているが、実際には各々異なるボクセル数である。
【００７２】
次に、ステップＳ７において、学習データ生成部４０は、全身基準ボリュームデータ及び体節基準ボリュームデータの各々において、ｄ次元のボリュームデータｖｔを、ｄより十分に小さいｄｌ個の固有ベクトルによって近似表現し、ｄｌ個の固有ベクトルからなる行列Ｅ＝［ｅ１，ｅ２，・・・，ｅｄｌ］を用いて、ｄｌ次元の全身学習空間及び１０個の体節学習空間を生成する。なお、全身学習空間及び各体節学習空間の次元数は説明の便宜上ｄｌで表しているが、実際には各々異なる次元数であってもよいし、同じ次元数であってもよい。
【００７３】
次に、ステップＳ８において、学習データ生成部４０は、全身基準ボリュームデータ及び各体節基準ボリュームデータを、下式の線形射影により、ｄｌ次元の全身学習空間及び対応する体節学習空間に基準投影点として投影する。なお、ｙｔは基準投影点を示す。
【００７４】
ｙｔ＝ＥＴ（ｖｔ−ｍ）      （２）
次に、ステップＳ９において、学習データ生成部４０は、全身学習空間及び体節学習空間に投影された基準投影点を時系列的に結び、この基準投影点列を全身及び各体節部の学習データとして生成する。つまり、時系列に連続なボリュームデータの投影点を結ぶことにより、時系列的な形状変化を学習空間上の軌跡として表現することができる。上述の処理により、学習データを学習空間上の多様体として表現できる。この多様体は、基準投影点の集合｛ｙ１Ｌ，・・・，ｙＴＬ｝で構成される。但し、ｙｔＬは時刻ｔにおける基準投影点を表すものとする。更に、多様体中の各点（あるフレームの全身基準ボリュームデータ）に対して、各ボクセルに付された体節ラベルを記録しておく。なお、体節基準ボリュームデータに対しては、各ボクセルに付された体節ラベルを記録しておいてもよいし、記録しておかなくてもよい。
【００７５】
図６は、学習空間の一例を示した図である。図６においては全身学習空間が３次元で示されている。図６に示すように、フレーム毎に生成された各全身基準ボリュームデータＶＤは、３次元の全身学習空間内の１点（基準投影点）として表されていることが分かる。そして、各基準投影点には対応する全身基準ボリュームデータＶＤの各ボクセルに付された体節ラベルが関連付けられている。そして、学習データ生成部４０は、図６に示すような学習空間を各体節部に対して生成する。本実施の形態では、１０個の体節部が存在するため、１個の全身学習空間と１０個の体節学習空間との合計１１個の学習空間が生成されることになる。
【００７６】
次に、探索部６０による最近傍基準投影点の探索処理について説明する。探索部６０は、第１の全身入力ボリュームデータと１０個の体節入力ボリュームデータに対して最近傍基準投影点を探索するが、以下の説明では、説明の便宜上これらのボリュームデータを単に入力ボリュームデータとする。現フレームと過去ｎフレームからなる入力ボリュームデータ｛ｖｔ，ｖｔ−１，・・・，ｖｔ−ｎ｝を、それぞれ全身学習空間に投影すると、入力ボリュームデータの投影点は、｛ｙｔＩ，ｙｔ−１Ｉ，・・・，ｙｔ−ｎＩ｝で表される投影点群からなる軌跡パターンで表される。但し、ｙｔＩは、時刻ｔにおける入力ボリュームデータの投影点を表すものとする。
【００７７】
そして、探索部６０は、時刻ｔにおける入力ボリュームデータから得られる軌跡パターンであるｙｔＩ＝（ｙｔＩ，ｙｔ−１Ｉ，・・・，ｙｔ−ｎＩ）と、学習データの軌跡パターンであるｙｓＬ＝（ｙｓＬ，ｙｓ−１Ｌ，・・・，ｙｓ−ｎＬ）（ｓ∈｛ｎ＋１，・・・，Ｔ｝）との比較により最近傍基準投影点、すなわち時刻ｔにおける入力ボリュームデータに類似する基準ボリュームデータを探索する。
【００７８】
したがって、参照する過去の履歴数であるｎが大きいほど、同一動作の探索成功率は向上するが、探索コストは大きくなってしまう。また、ｎが大き過ぎると、長時間にわたって学習データと全く同じ動きをしている入力動作の解析しかできなくなってしまう。そこで、タスクにあわせて処理時間、及び短い類似動作の組み合わせからなる動きへの適用可能性を考慮にいれて、ｎを決定することが望ましく、本実施の形態ではｎ＝５が採用されている。
【００７９】
具体的には、入力ボリュームデータと全身の学習データとの軌跡パターンの各点同士の距離総和を探索の評価値である式（３）に示すＤ（ｔ）を満たす全身の学習データｙｓＬをｙｔＩと最も類似した学習データ、すなわち最近傍基準投影点として決定する。
【００８０】
【数１】
2009048305.tif 000003
【００８１】
ｎ＝５として式（３）を説明すると、まず、Ｔ個のｙＳＬの中からｙ６Ｌ〜ｙ１Ｌをとり、ｙ６Ｌ〜ｙ１ＬとｙｔＩとの各々の距離の総和を求め、次に、ｙ７Ｌ〜ｙ２Ｌをとり、ｙ７Ｌ〜ｙ２ＬとｙｔＩとの各々の距離の総和を求めるという処理をｓ＝６（＝ｎ＋１）〜Ｔまで繰り返し、距離の総和が最小となるｙＳＬをｙｔＩに対する最近傍基準投影点として特定する。
【００８２】
こうして決定された全身の学習データｙｓＬから、凹部分のボリューム除去などの処理が施された高精度の全身基準ボリュームデータが参照可能であり、その形状と対応する体節ラベルも参照することができる。
【００８３】
しかしながら、入力ボリュームデータには偽のボリュームが含まれており、この偽のボリュームの影響により正しい学習データを探索できない恐れがある。そこで、探索部６０は、信頼度生成部８０により生成された信頼度Ｃｔを用いて、入力ボリュームデータに含まれる偽のボリュームを減少させている。図７は、偽のボリュームを示した図である。図７の丸で囲んだ領域において偽のボリュームが発生している。視体積交差法によれば、このような偽のボリュームが発生してしまうが、信頼度Ｃｔを用いることで、この偽のボリュームを減少させることが可能となる。
【００８４】
また、学習データｙｓＬ＝（ｙｓＬ，ｙｓ−１Ｌ，・・・，ｙｓ−ｎＬ）に対して評価を行っているため、学習したボリュームデータの数に比例して処理時間が増大する。そこで、探索部６０は、以下に示すような探索処理の効率化を行うことで処理時間を減少させている。図８及び図９は探索処理の効率化を説明する図である。なお、図８及び図９では、説明の便宜上、学習空間を２次元で表し、四角で示す各点が学習データを示している。
【００８５】
探索処理の高速化のためには、学習空間中の学習データを探索対象とするのではなく、入力ボリュームデータの投影点Ｐの近傍の学習データのみを探索対象とすればよい。そこで、探索部６０は、事前に学習空間全体を一定間隔の部分領域に区切り、各部分領域中に存在する学習データを調べておく。そして、探索処理時には、まず、入力ボリュームデータの投影点Ｐが含まれる部分領域を注目部分領域ＣＤとして選択し、注目部分領域ＣＤ内でのみ探索処理を行う。部分領域のサイズを小さくすると、探索対象となるデータの数は減少するが、図８（ａ）に示すように注目部分領域ＣＤにおいて学習データが存在しない可能性が上がる。そこで、探索部６０は、図８（ｂ）に示すように更に大きなサイズの部分領域を複数用意しておき、小さいサイズの部分領域集合から順に入力ボリュームデータを投影することで、注目部分領域ＣＤ内に学習データを含ませることを可能としている。
【００８６】
しかしながら、投影点Ｐを含む注目部分領域ＣＤのみ探索すると、図９（ａ）に示すように注目部分領域ＣＤ外に真の最近傍基準投影点Ｐｘが存在する可能性がある。そこで、探索部６０は、図９（ｂ）に示すように、投影点Ｐと、注目部分領域ＣＤにおける最近傍の基準投影点Ｐ１との距離ｄｐを閾値として、投影点Ｐからの距離ｄｉがｄｉ＜ｄｐを満たす隣接部分領域ＣＤ１〜ＣＤ３を探索範囲に含ませる。このように、探索範囲を階層的に設定した効率的な探索により、高速性と確実に類似解を探索することができる安定性とを両立することができる。
【００８７】
次に、入力ボリュームデータ生成部５０〜特定部７０によってなされる形状解析処理について説明する。図１０は形状解析処理を示すフローチャートである。まず、ステップＳ３１において、カメラ１１〜１ｍは、同一時刻における観測対象物のｍ枚のフレームを取得する。次に、ステップＳ３２において、入力ボリュームデータ生成部５０は、ステップＳ３１で取得されたｍ枚のフレームから視体積交差法を用いて低解像度の第１の全身入力ボリュームデータと、高解像度の第２の全身入力ボリュームデータとを生成する。
【００８８】
次に、ステップＳ３３において、式（４）を用いて第１の全身入力ボリュームデータを全身学習空間に投影する。
【００８９】
ｙｔＩ＝ＥＴＣｔ（ｖｔ−ｍ）      （４）
ここで、Ｃｔは信頼度生成部８０により予め算出された信頼度を示し、式（５）により表される。
【００９０】
【数２】
2009048305.tif 000004
【００９１】
但し、ｃｔ，ｉは０以上１以下の値をとりうる時刻ｔのフレームにおける全身基準ボリュームデータのｉ番目のボクセルの信頼度を表す。これにより、第１の全身入力ボリュームデータに含まれる偽のボリュームが減少され、高精度な探索処理を実現することができる。
【００９２】
信頼度Ｃｔは、時刻ｔにおける入力ボリュームデータに対応する学習データが既知でないと与えることができず、鶏と卵の関係にある。そこで、本実施の形態では、時系列的に連続な第１の全身入力ボリュームデータ間の差は微小であると仮定し、時刻ｔで使用するボクセル信頼度は時刻ｔ−１で探索された学習データから決定される。すなわち、時刻ｔ−１の最近傍基準投影点に対応する全身基準ボリュームデータに対応付けられた信頼度が時刻ｔにおける信頼度Ｃｔとして用いられる。
【００９３】
次に、ステップＳ３４において、探索部６０は、式（３）に示す評価値であるＤθ（ｔ）を算出し、Ｄθ（ｔ）を満たす学習データであるｙＳＬを最近傍基準投影点として探索する。
【００９４】
ステップＳ３５において、探索部６０は、評価値であるＤθ（ｔ）を最小にするθ´が探索できた場合（ステップＳ３５でＹＥＳ）、処理をステップＳ３７に進め、Ｄθ（ｔ）を最小にするθ´が探索できなかった場合（ステップＳ３５でＮＯ）、θを所定角度変化させる（ステップＳ３６）。すなわち、探索部６０は、θ´が探索できるまでステップＳ３３〜Ｓ３６の処理を繰り返し実行する。
【００９５】
次に、ステップＳ３７において、Ｄθ´（ｔ）を満たす全身の学習データに対応する全身基準ボリュームデータを特定する。ここで、特定された全身基準ボリュームデータは、第１の全身入力ボリュームデータに最も類似したデータとなる。また、探索されたθ´は、ステップＳ３７で特定された全身基準ボリュームデータに対する第１の全身入力ボリュームデータの向きを表す。
【００９６】
全身基準ボリュームデータ及び第１の全身入力ボリュームデータは、世界座標系の下で復元されたボクセル集合である。よって、基準対象物と観測対象物とが同じ形状及び姿勢を有していても、向きが異なれば、全く異なるデータとしてみなされてしまう。そこで、探索部６０は、第１の全身入力ボリュームデータの全身基準データに対する向きを特定している。
【００９７】
ステップＳ３８において、探索部６０は、第２の全身入力ボリュームデータをθ´回転させる。これによりステップＳ３７で特定された全身基準ボリュームと第２の全身入力ボリュームデータとの向きが一致する。ステップＳ３９において、探索部６０は、ステップＳ３７で特定された全身基準ボリュームデータの各ボクセルに付された体節ラベルに従って、第２の全身入力ボリュームデータの各体節部の位置を特定し、特定した各体節部を囲む高解像度のバウンディングを設定することで、第２の全身入力ボリュームデータを各体節領域に分割し、体節入力ボリュームデータを生成する。
【００９８】
ステップＳ４０において、探索部６０は、各体節入力ボリュームデータを対応する体節学習空間にそれぞれ投影する。ステップＳ４１において、探索部６０は、式（３）に示す評価値であるＤＬ（ｔ）がＤＬ（ｔ）＜閾値を満たす複数の学習データを探索する。ステップＳ４２において、特定部７０は、ステップＳ４１で探索された複数の学習データに対応する複数の体節基準ボリュームデータの各ボクセルの体節ラベルから第２の全身入力ボリュームの各ボクセルに付す体節ラベルを特定する。ここで付される体節ラベルは、各ボクセルの体節ラベルの候補を確率的に表現したデータとなる。例えば、ＤＬ（ｔ）＜閾値を満たす学習データが５個存在し、この５個の学習データに対応する５個の体節基準ボリュームデータのうち４個の体節基準ボリュームデータがあるボクセルを「１」とし、１個の体節基準ボリュームデータがこのあるボクセルを「０」としている場合、このボクセルの体節ラベルは、３／４＝０．７５となる。
【００９９】
各体節部は１つの塊として存在するため、あるボクセルとその近傍ボクセルとのラベルは一致している可能性が高い。そこで、特定部７０は、各ボクセルにおいて、近傍ボクセルとの体節ラベルの重み付き平均（重みは対象ボクセルからの距離に応じて小さくする）を計算して、体節部全体としての整合化を図る。また、体節のバウンディングボックスには重なりがあり、重なった領域に属するボクセルは複数種類の体節ラベルが付されることになる。そこで、特定部７０は、あるボクセルにおいて、最も高い確率をもつ体節ラベルをそのボクセルの体節ラベルとして決定する。
【０１００】
ステップＳ４３において、最終フレームに到達した場合（ステップＳ４３でＹＥＳ）、処理が終了され、最終フレームに到達しない場合（ステップＳ４３でＮＯ）、処理がステップＳ３１に戻され、次フレームに対して同様の処理が実行される。以上により本形状解析装置の目的が達成される。
【０１０１】
次に、本形状解析装置の有効性を確認するために行った実験について説明する。本実験では、形状変化の大きい着物を身に付けた人物の舞踊動作を観測対象とした。観測対象を囲むように天井に設置された７台の同期撮影カメラ（Ｐｏｉｎｔｇｒｅｙ社Ｆｌｅａ：１０２４×７６８ｐｉｘｅｌ、８ｂｉｔ  ｂａｙｅｒ  ｐａｔｔｅｒｎ）により３０ｆｐｓで撮影される時系列画像集合を利用した。全ての処理はＯｐｔｅｒｏｎ  １．８ＧＨｚのＰＣで行った。
【０１０２】
学習データ中に含まれる舞踊動作は、ある一人のみの観測データのみとした。被験者はビデオを見て舞踊動作を習得した。学習データは１０００フレームからなる時系列ボリュームデータによって構成され、低解像度な全身ボリュームデータ及び高解像度な各体節ボリュームデータのボクセルサイズは世界座標系でそれぞれ６０ｍｍ３、２０ｍｍ３とした。
【０１０３】
学習空間の次元数ｄｌは主成分分析で得られる固有値の累積寄与率ａ（式６）を基に決定する。
【０１０４】
【数３】
2009048305.tif 000005
【０１０５】
本実験では、十分な形状解析率を保てる最小の次元数として累積寄与率が７５％を満たす次元数を各学習空間の次元数とした。図１１は、次元数に応じた累積寄与率の変化を示している。
【０１０６】
学習データとしては上述したものを利用して形状解析を行った。被験者は二人で、うち一人は学習データと同一人物であった。二人ともに、学習データ中の着物と似た形状・素材の着物を着用して、学習データと同じビデオを見て覚えた舞踊動作を行った。ただし、学習データに含まれる被験者（１５５ｃｍ）ともう一人の被験者（１７５ｃｍ）は大きく対角が異なるため、後者の視体積交差法の結果は身長の比に合わせて全体形状をサイズ変更して学習固有空間に投影した。
【０１０７】
形状解析結果の例を図１２に示す。図１２おいて、１〜４段目はそれぞれ観測画像、入力の低解像度ボリューム、入力の高解像度ボリュームを示している。全フレームにわたり、低解像度解析では手先などの細かな形状を無視した探索が行なわれ、高解像度解析では低解像度解析で無視された細かな形状まで正しく復元・体節特定できている。また、人体の運動による着衣の大きな変形に対しても、安定に各体節への分割ができていることも確認できる。また、図１３に示すように、入力のボリュームデータ中に含まれる偽のボリューム領域が、除去されていることが確認できる。図１４は学習データと違う被験者における実験結果を示している。図１４に示すように学習データと同一人物の実験結果と比較しても、大きく劣る点は見受けられない。更に、背景差分の失敗により視体積交差法の復元結果に大きな誤りが含まれる場合においても、正確な学習データとの比較により良好な復元結果が得られている例も確認できた（図１４の円で囲まれた領域）。
【０１０８】
通常の姿勢推定手法で対象とされているタイトな着衣でも実験を行った。学習データのフレーム数が４０００フレームである以外は，先に示した着物における実験と同様の条件で実験を行なった。形状解析結果の例を図１５に示す。着物の場合と同様に本形状解析装置による処理が有効であることが確認できる。
【０１０９】
形状解析結果の実行速度は１フレームあたり約０．００４２秒であった。この実行速度には三次元復元に要する時間は含まれていない。しかし、「X. Wu, O. Takizawa, and T. Matsuyama, “Parallel Pipeline Volume Intersection for Real-Time 3D Shape Reconstruction on a PC Cluster,” in Proc. of The 4th IEEE International Conference on Computer Vision Systems (ICVS), 2006.」において、ＶＧＡサイズの画像集合から５ｍｍ３解像度での視体積交差法がビデオレート（０．００３３秒／フレーム）で実行可能なことが示されているように、３次元形状解析に十分な解像度での復元が実時間実行可能になってきている。よって、この形状復元と本形状解析装置の手法による形状修正・体節特定の実行時間の合計をあわせても、ビデオレートに近い実行速度を実現できている。この結果、オンライン性が必要であるＨＣＬ、ロボットインタラクション、能動カメラ制御なども実現可能であるといえる。
【０１１０】
このように、本形状解析装置によれば、任意の人体・着衣のオンライン形状解析に基づいて、復元誤差の除去および各体節部位の特定を同時に実行することが可能であり、詳細解析により得られる対象の高精度形状の時系列変化を体節ラベル付で事前に学習し、この正解学習データと入力データとの比較による形状解析を行い、この解析の結果、視体積交差法で得られる対象の３次元ボリュームの中から大きな復元誤差領域を除去し、修正された３次元ボリュームの中から定義済の１０種類の体節（非対象ラベルを除く）が対応する領域を得ることができる。
【図面の簡単な説明】
【０１１１】
【図１】本発明の実施の形態による形状解析装置のハードウェア構成を示すブロック図である。
【図２】図１に示す形状解析装置の機能構成を示すブロック図である。
【図３】本実施の形態で採用されるボリュームデータを示した図である。
【図４】学習データ生成処理を示すフローチャートである。
【図５】全身基準ボリュームデータが生成される過程を示した図である。
【図６】学習空間の一例を示した図である。
【図７】偽のボリュームを示した図である。
【図８】探索処理の効率化を説明する図である。
【図９】探索処理の効率化を説明する図である。
【図１０】形状解析処理を示すフローチャートである。
【図１１】次元数に応じた累積寄与率の変化を示したグラフである。
【図１２】実験結果を示す図である。
【図１３】実験結果を示す図である。
【図１４】実験結果を示す図である。
【図１５】実験結果を示す図である。
【符号の説明】
【０１１２】
１１〜１ｍ  カメラ
２０  基準ボリュームデータ生成部
３０  簡略ボリュームデータ生成部
４０  学習データ生成部
５０  入力ボリュームデータ生成部
６０  探索部
７０  特定部
８０  信頼度生成部
９０  学習データ記憶部
【図１】
2009048305.tif 000006
【図２】
2009048305.tif 000007
【図４】
2009048305.tif 000008
【図８】
2009048305.tif 000009
【図９】
2009048305.tif 000010
【図１０】
2009048305.tif 000011
【図１１】
2009048305.tif 000012
【図３】
2009048305.tif 000013
【図５】
2009048305.tif 000014
【図６】
2009048305.tif 000015
【図７】
2009048305.tif 000016
【図１２】
2009048305.tif 000017
【図１３】
2009048305.tif 000018
【図１４】
2009048305.tif 000019
【図１５】
2009048305.tif 000020