(57)【要約】  学習装置（１００）は、人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から人体の各位置または物体の各位置までの距離を示す距離画像と、人体の各部位または物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する。学習装置（１００）は、学習画像の距離画像と部位画像とを基にして、距離画像の領域のうち、物体の部位に対応する領域の値を修正する。学習装置（１００）は、修正された距離画像を有する複数の学習画像を基にして、距離画像の特徴と、人体の部位または物体の部位とを対応づけた識別器を学習する。
2018207365.tif 000002
【特許請求の範囲】
【請求項１】
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する生成部と、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正する修正部と、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する学習部と
を有することを特徴とする距離画像処理装置。
【請求項２】
前記生成部は、前記合成モデルを基にして、前記距離画像と、前記人体の各関節位置とを対応づけた他の学習画像を複数生成し、前記学習部は、前記他の学習画像を複数用いて、骨格推定器を学習することを特徴とする請求項１に記載の距離画像処理装置。
【請求項３】
前記修正部は、前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記人体の髪の部位に対応する領域の値を更に修正することを特徴とする請求項２に記載の距離画像処理装置。
【請求項４】
前記修正部は、前記物体の部位に対応する領域の値および前記人体の髪の部位に対応する領域の値を、前記距離画像の背景に対応する値と同じ値に修正することを特徴とする請求項３に記載の距離画像処理装置。
【請求項５】
距離センサから対象者、物体および背景を含んだ距離画像を取得する取得部と、前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成する除去部と、前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定する判定部と、前記判定部の判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する認識部とを更に有することを特徴とする請求項４に記載の距離画像処理装置。
【請求項６】
前記判定部は、前記対象者距離画像と前記骨格推定器とを基にして、前記対象者の関節位置を判定することを特徴とする請求項５に記載の距離画像処理装置。
【請求項７】
学習装置と認識装置とを有する距離画像処理システムであって、
前記学習装置は、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する生成部と、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正する修正部と、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する学習部とを有し、
前記認識装置は、
距離センサから対象者、物体および背景を含んだ距離画像を取得する取得部と、
前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成する除去部と、
前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定する判定部と、
前記判定部の判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する認識部とを有する
ことを特徴とする距離画像処理システム。
【請求項８】
コンピュータが実行する距離画像処理方法であって、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成し、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正し、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する
処理を実行することを特徴とする距離画像処理方法。
【請求項９】
前記生成する処理は、前記合成モデルを基にして、前記距離画像と、前記人体の各関節位置とを対応づけた他の学習画像を複数生成し、前記学習する処理は、前記他の学習画像を複数用いて、骨格推定器を学習することを特徴とする請求項８に記載の距離画像処理方法。
【請求項１０】
前記修正する処理は、前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記人体の髪の部位に対応する領域の値を更に修正することを特徴とする請求項９に記載の距離画像処理方法。
【請求項１１】
前記修正する処理は、前記物体の部位に対応する領域の値および前記人体の髪の部位に対応する領域の値を、前記距離画像の背景に対応する値と同じ値に修正することを特徴とする請求項１０に記載の距離画像処理方法。
【請求項１２】
距離センサから対象者、物体および背景を含んだ距離画像を取得し、前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成し、前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定し、判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する処理を更に実行することを特徴とする請求項１１に記載の距離画像処理方法。
【請求項１３】
前記対象者距離画像と前記骨格推定器とを基にして、前記対象者の関節位置を判定する処理を更に実行することを特徴とする請求項１２に記載の距離画像処理方法。
【請求項１４】
コンピュータに、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成し、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正し、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する
処理を実行させることを特徴とする距離画像処理プログラム。
【請求項１５】
前記生成する処理は、前記合成モデルを基にして、前記距離画像と、前記人体の各関節位置とを対応づけた他の学習画像を複数生成し、前記学習する処理は、前記他の学習画像を複数用いて、骨格推定器を学習することを特徴とする請求項１４に記載の距離画像処理プログラム。
【請求項１６】
前記修正する処理は、前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記人体の髪の部位に対応する領域の値を更に修正することを特徴とする請求項１５に記載の距離画像処理プログラム。
【請求項１７】
前記修正する処理は、前記物体の部位に対応する領域の値および前記人体の髪の部位に対応する領域の値を、前記距離画像の背景に対応する値と同じ値に修正することを特徴とする請求項１６に記載の距離画像処理プログラム。
【請求項１８】
距離センサから対象者、物体および背景を含んだ距離画像を取得し、前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成し、前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定し、判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する処理を更に実行することを特徴とする請求項１７に記載の距離画像処理プログラム。
【請求項１９】
前記対象者距離画像と前記骨格推定器とを基にして、前記対象者の関節位置を判定する処理を更に実行することを特徴とする請求項１８に記載の距離画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、距離画像処理装置等に関する。
【背景技術】
【０００２】
図１５は、姿勢認識を行う従来システムを説明するための図である。図１５に示すように、従来システムは、距離センサ６を用いて、対象者５ａの距離画像７を取得する。従来システムは、距離画像７を基にして、関節位置推定を行うことで、対象者５ａの骨格位置５ｂを特定し、対象者５ａの姿勢を推定する。【０００３】
図１６は、従来システムの応用例を説明するための図である。図１６に示す例では、距離センサ６を用いて、対象者５ａの距離画像を取得して、対象者５ａの姿勢を認識し、ゲーム上でのアバター５ｃに、対象者５ａと同じ姿勢を取らせている。【０００４】
図１７は、姿勢認識の従来技術の一例を説明するための図である。従来技術は、人体を含む１つ以上の距離画像を取得する（ステップＳ１０）。たとえば、距離画像１には、特定する人体に関する前景ピクセル１ａと、それ以外の背景ピクセル１ｂとが含まれる。【０００５】
従来技術は、距離画像１から背景ピクセル１ｂを分離することで、前景ピクセルのみを含む距離画像１ｃを得る（ステップＳ１１）。従来技術は、人物の部位を識別する「識別器」に、距離画像１ｃを入力することで、距離画像１ｃの人体の領域を複数の部位ラベルｂｐ１〜ｂｐ１４に分ける（ステップＳ１２）。【０００６】
従来技術は、人体の各部位ラベルｂｐ１〜ｂｐ１４に基づいて、３次元の骨格位置を複数持った人体の骨格モデルを複数提案する（ステップＳ１３）。従来技術は、複数の骨格モデルの中から最も尤度の高い骨格モデルを選択し、選択した骨格モデルに基づき、人物の姿勢を認識する（ステップＳ１４）。【０００７】
ここで、図１７等の従来技術で用いられる識別器は、図１８に示すような処理を実行することで学習される。図１８は、従来の識別器を学習する処理手順を示すフローチャートである。図１８に示すように、従来技術は、モーションキャプチャデータを取得する（ステップＳ２０）。従来技術は、モーションキャプチャデータを基にして、人体モデルリターゲティングを行うことで、様々な姿勢の人体モデルを複数生成する（ステップＳ２１）。【０００８】
従来技術は、各人体モデルから似通った人体モデル姿勢を除去し、ユニークな人体モデル姿勢のみを残すことで、冗長性を除去する（ステップＳ２２）。従来技術は、ユニークな人体モデル姿勢を基にして、想定された距離センサの位置を基準とした部位ラベル画像および距離画像をそれぞれ生成する（ステップＳ２３）。従来技術は、部位ラベル画像と距離画像との組を基にして、距離画像の各位置の特徴（および周辺位置の特徴）と部位ラベルとの対応関係を繰り返し学習することで、識別器を生成する（ステップＳ２４）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１６−２１２６８８号公報
【特許文献２】特開２０１５−１６７００８号公報
【特許文献３】特開２０１２−１２０６４７号公報
【特許文献４】特開２０１６−０９１１０８号公報
【特許文献５】米国特許出願公開第２０１５／００３６８７９号明細書
【特許文献６】米国特許出願公開第２０１６／０１２５２４３号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した従来技術では、人体の部位を適切に判定することができないという問題がある。【００１１】
たとえば、図１５で説明した従来システムで人体の姿勢認識を行う場合には、物体によるオクルージョンが発生する。物体によるオクルージョンは、認識対象となる人体の一部が、他の物体により見えなくなる状態のことである。【００１２】
図１９は、物体によるオクルージョンの一例を示す図である。図１９に示す例では、鞍馬演技において、鞍馬８ｂの後方に対象者８ａの体の一部が隠れた状態で存在している。図２０に示すような状態で、図１７で説明した従来技術を適用し、対象者８ａの姿勢認識を行うと、正常な部位ラベルが割り当てられず、正確な姿勢認識を行うことができない。【００１３】
図２０および図２１は、従来技術の問題点を説明するための図である。たとえば、従来技術は、対象者８ａおよび鞍馬８ｂを含む距離画像を取得し、距離画像から背景を除去し、部位ラベルを割り当てると、図２０に示す部位ラベル認識結果９Ａとなる。従来技術では、対象者８ａおよび鞍馬８ｂを含む領域８ｃを、対象者８ａの領域とし、鞍馬８ｂを人体の一部として、部位ラベルを割り当ててしまう。【００１４】
一方、予め、対象者８ａが存在しない状態で、固定された鞍馬８ｂのみの距離画像を撮影しておき、実際に対象者８ａが鞍馬８ｂ上で運動をしている際に撮影された距離画像から、鞍馬８ｂのみの距離画像を取り除くことは可能である。このように鞍馬８ｂのみの距離画像を取り除くと、鞍馬８ｂの裏側に隠れている足の部分の距離画像を検出することができないので、鞍馬８ｂによって分断された距離画像しか得ることができない。【００１５】
たとえば、鞍馬８ｂの距離画像を取り除いた距離画像について、部位ラベルを割り当てると、図２１に示す部位ラベル認識結果９Ｂとなる。人体の領域が分断されると、分断された各領域Ｂ１、Ｂ２がそれぞれ一つの対象者の領域として認識され、部位ラベルが割り当てられてしまう。たとえば、領域Ｂ１について、部分ｂ１に足の部位ラベルが割り当てられ、領域Ｂ２について、人体の足以外（たとえば、手）の部位ラベルが割り当てられる場合がある。【００１６】
上記のように、部位ラベルを適切に判定することができないと、部位ラベルの判定結果を基にした姿勢認識の精度が低下する。【００１７】
１つの側面では、本発明は、人体の部位を適切に判定することができる距離画像処理装置、距離画像処理システム、距離画像処理方法および距離画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
第１の案では、距離画像処理装置は、生成部と、修正部と、学習部とを有する。生成部は、人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から人体の各位置または物体の各位置までの距離を示す距離画像と、人体の各部位または物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する。修正部は、学習画像の距離画像と部位画像とを基にして、距離画像の領域のうち、物体の部位に対応する領域の値を修正する。学習部は、修正された距離画像を有する複数の学習画像を基にして、距離画像の特徴と、人体の部位または物体の部位とを対応づけた識別器を学習する。
【発明の効果】
【００１９】
本発明は、人体の部位を適切に判定することができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、本実施例に係る距離画像処理システムの一例を示す図である。
【図２】図２は、学習装置の構成の一例を示す図である。
【図３】図３は、キャプチャカメラを説明するための図である。
【図４】図４は、物体モデルデータの一例を示す図である。
【図５】図５は、合成モデルテーブルのデータ構造の一例を示す図である。
【図６】図６は、学習画像テーブルのデータ構造の一例を示す図である。
【図７】図７は、部位ラベル画像と距離画像と関節位置との関係を説明するための図である。
【図８】図８は、識別器データのデータ構造の一例を示す図である。
【図９】図９は、認識装置の構成の一例を示す図である。
【図１０】図１０は、本実施例に係る学習装置の処理手順を示すフローチャートである。
【図１１】図１１は、本実施例に係る認識装置の処理手順を示すフローチャート（１）である。
【図１２】図１２は、本実施例に係る認識装置の処理手順を示すフローチャート（２）である。
【図１３】図１３は、学習装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【図１４】図１４は、認識装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【図１５】図１５は、姿勢認識を行う従来システムを説明するための図である。
【図１６】図１６は、従来システムの応用例を説明するための図である。
【図１７】図１７は、姿勢認識の従来技術の一例を説明するための図である。
【図１８】図１８は、従来の識別器を学習する処理手順を示すフローチャートである。
【図１９】図１９は、物体によるオクルージョンの一例を示す図である。
【図２０】図２０は、従来技術の問題点を説明するための図（１）である。
【図２１】図２１は、従来技術の問題点を説明するための図（２）である。
【発明を実施するための形態】
【００２１】
以下に、本発明にかかる距離画像処理装置、距離画像処理システム、距離画像処理方法および距離画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００２２】
図１は、本実施例に係る距離画像処理システムの一例を示す図である。図１に示すように、この距離画像処理システムは、学習装置１００と、認識装置２００とを含む。学習装置１００は、モーションキャプチャ装置１０に接続される。認識装置２００は、距離センサ２０に接続される。また、学習装置１００と認識装置２００は、相互に接続される。【００２３】
学習装置１００は、認識装置２００が対象者の姿勢を認識する場合に用いる識別器や骨格推定器を学習する装置である。認識装置２００は、学習装置１００が学習した識別器あるいは、骨格推定器を用いて、対象者の姿勢を認識する装置である。学習装置１００および認識装置２００は、距離画像処理装置の一例である。【００２４】
図２は、学習装置の構成の一例を示す図である。図２に示すように、この学習装置１００は、モーションキャプチャ装置１０に接続される。学習装置１００は、入力部１１０と、表示部１２０と、記憶部１３０と、制御部１４０とを有する。【００２５】
モーションキャプチャ装置１０は、複数のキャプチャカメラ１０ａに接続される。図３は、キャプチャカメラを説明するための図である。図３に示すように、キャプチャカメラ１０ａは、対象者１１の周りに配置される。対象者１１の各関節位置には、マーカ１２がそれぞれ取り付けられている。【００２６】
たとえば、モーションキャプチャ装置１０は、対象者１１のマーカ１２の動きを、各キャプチャカメラ１０ａを用いて記録し、各マーカ１２から３次元の関節位置を求める。モーションキャプチャ装置１０は、各マーカ１２の位置座標から求められる３次元の関節位置を順次記録していくことで、モーションキャプチャデータを生成する。モーションキャプチャ装置１０は、モーションキャプチャデータを、学習装置１００に出力する。【００２７】
図２の説明に戻る。入力部１１０は、学習装置１００に各種の情報を入力するための入力装置である。たとえば、入力部１１０は、キーボードやマウス、タッチパネルなどに対応する。【００２８】
表示部１２０は、制御部１４０から出力される情報を表示する表示装置である。たとえば、表示部１２０は、液晶ディスプレイやタッチパネルなどに対応する。【００２９】
記憶部１３０は、モーションキャプチャデータ１３０ａ、人体モデルデータ１３０ｂと、物体モデルデータ１３０ｃと、合成モデルテーブル１３０ｄと、学習画像テーブル１３０ｅを有する。また、記憶部１３０は、識別器データ１３０ｆと、骨格推定器データ１３０ｇとを有する。記憶部１３０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。【００３０】
モーションキャプチャデータ１３０ａは、モーションキャプチャ装置１０により生成される、人物の３次元の関節位置の動きを記録するデータである。たとえば、モーションキャプチャデータ１３０ａは、フレーム毎の関節位置の情報を有する。【００３１】
人体モデルデータ１３０ｂは、人体の３次元モデルのデータである。人体モデルデータ１３０ｂは、モーションキャプチャ１３０ａの人物の各関節位置に基づく骨格に、３次元の人体モデルを結合することで生成される情報である。【００３２】
物体モデルデータ１３０ｃは、人物とは異なる物体の３次元モデルである。図４は、物体モデルデータの一例を示す図である。ここでは一例として、物体を鞍馬としているがこれに限定されるものではない。【００３３】
合成モデルテーブル１３０ｄは、人体モデルデータ１３０ｂと、物体モデルデータ１３０ｃとを合成した合成モデルデータを複数有するテーブルである。図５は、合成モデルテーブルのデータ構造の一例を示す図である。図５に示すように、この合成モデルテーブル１３０ｄは、合成モデル番号と、合成モデルデータとを対応づける。合成モデル番号は、合成モデルデータを識別する番号である。合成モデルデータは、一連の動きの中であるタイミング（フレーム）の人体モデルデータ１３０ｂと、物体モデルデータ１３０ｃとを合成した結果得られるデータである。【００３４】
学習画像テーブル１３０ｅは、識別器データ１３０ｆおよび骨格推定器データ１３０ｇを生成するための学習画像データを複数有するテーブルである。図６は、学習画像テーブルのデータ構造の一例を示す図である。図６に示すように、この学習画像テーブル１３０ｅは、学習画像番号と、部位ラベル画像データと、距離画像データと、関節位置データとを対応づける。【００３５】
学習画像番号は、学習画像となる部位ラベル画像データと、距離画像データと、関節位置データの組を一意に識別する番号である。部位ラベル画像データは、合成モデルデータ（人体＋物体）の各部位および物体をユニークな部位ラベルで示す情報である。距離画像データは、合成モデルデータ（人体＋物体）から生成される距離画像である。後述するように、距離画像データの領域のうち、物体に対応する領域の値は、背景と同じ値に設定される。たとえば、背景と同じ値とは、無限遠であったりする。関節位置データは、合成モデルデータの人体モデルに含まれる各関節位置の情報を抽出したデータである。学習画像テーブル１３０ｅにおいて、対応する部位ラベル画像データ、距離画像データ、関節位置データは、同一の合成モデルデータから生成される。【００３６】
なお、ここでは一例として、部位ラベル画像データと、距離画像データと、関節位置データとの組を学習画像としたが、これに限定されるものではない。たとえば、部位ラベル画像データと、距離画像データとの組を学習画像としても良いし、関節位置データと、距離画像データとの組を学習画像としても良い。【００３７】
図７は、部位ラベル画像と距離画像と関節位置との関係を説明するための図である。図７は、ある学習画像番号に対応する部位ラベル画像データ１３１Ａと距離画像データ１３１Ｂと関節位置データ１３１Ｃとの組を示す。距離画像データ１３１Ｂとは、たとえば、カメラなどの基準位置から、合成モデルデータの各位置までの距離をピクセル毎に示す距離画像データである。【００３８】
部位ラベル画像データ１３１Ａは、距離画像データ１３１Ｂに含まれる人物の各部位および物体をユニークな部位ラベルで示す情報である。たとえば、所定の分割ポリシーに基づいて、人物の領域は複数の部位に分割され、各部位に対応する領域に固有の部位ラベルを割り当てられる。また、物体については、物体に対応する領域に人物の部位とは異なる部位ラベルを割り当てる。【００３９】
関節位置データ１３１Ｃは、距離画像データ１３１Ｂの生成元となった合成モデルデータに含まれる人体モデルを生成する際に基となる人体の関節位置を示すデータである。たとえば、合成モデルデータには、モーションキャプチャデータ１３０ａの人物の各関節位置の情報が含まれており、かかる人物の関節位置の一部、あるいは、全ての情報が、関節位置データ１３０Ｃとして抽出される。【００４０】
識別器データ１３０ｆは、たとえば、距離画像データのある位置の周辺の特徴量を元に、距離画像の各ピクセルを部位ラベルに対応づける識別器を構成する。距離画像データのある位置の部位ラベルを特定する場合には、距離画像データのある位置の周辺の特徴量を、識別器に入力することで、ある位置の部位ラベルが出力される。【００４１】
図８は、識別器のデータ構造の一例を示す図である。図８に示すように、この識別器データ１３０ｆは、複数の分岐（Split）ノードｆ１−１、ｆ２−１〜ｆ２−ｎ、ｆ３−１〜ｆ３−ｎと、リーフ（Leaf）ノードＲ１〜Ｒｎを有する。以下の説明では、分岐ノードｆ１−１、ｆ２−１〜ｆ２−ｎ、ｆ３−１〜ｆ３−ｎをまとめて、分岐ノードｆと表記する。リーフノードＲ１〜Ｒｎをまとめて、リーフノードＲと表記する。【００４２】
分岐ノードｆは、距離画像データのある位置の周辺の特徴量とにより、配下の分岐ノードｆのうち、いずれかの分岐先を指示するノードである。分岐ノードｆが、分岐ノードｆ３−１〜ｆ３−ｎである場合には、距離画像データのある位置の周辺の特徴量とにより、配下のリーフノードＲのうち、いずれかの遷移先を指示する。【００４３】
リーフノードＲは、人体の部位を示すデータを格納するノードである。【００４４】
骨格推定器データ１３０ｇは、距離画像データと、関節位置とを対応づける骨格推定器を構成する。距離画像データのある位置の関節位置を特定する場合には、ディープラーニングによって得られたニューラルネットワークを用い、距離画像データ、から関節位置が出力される。この時、特徴量に相当する量は、ニューラルネットワーク中で自動的に最適化される。【００４５】
図２の説明に戻る。制御部１４０は、取得部１４０ａと、生成部１４０ｂと、修正部１４０ｃと、学習部１４０ｄと、通知部１４０ｅとを有する。制御部１４０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などによって実現できる。また、制御部１４０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。【００４６】
取得部１４０ａは、モーションキャプチャ装置１０からモーションキャプチャデータ１３０ａを取得する処理部である。取得部１４０ａは、取得したモーションキャプチャデータ１３０ａを、記憶部１３０に格納する。【００４７】
生成部１４０ｂは、学習画像テーブル１３０ｅを生成する処理部である。たとえば、生成部１４０ｂは、人体モデルデータ１３０ｂを生成する処理、合成モデルテーブル１３０ｄを生成する処理、学習画像テーブル１３０ｅを生成する処理を実行する。なお、生成部１４０ｂは、物体モデルデータ１３０ｃを新たに生成しても良いし、既存の物体モデルデータを、物体モデルデータ１３０ｃとして用いても良い。【００４８】
生成部１４０ｂが、人体モデルデータ１３０ｂを生成する処理について説明する。生成部１４０ｂは、モーションキャプチャデータ１３０ａに含まれる人物の関節位置の一連の動きのうち、人物の関節位置の情報を取得し、各関節位置をスケルトンで接続することで、人物の骨格情報を生成する。生成部１４０ｂは、骨格情報に、予め準備した人体モデルの部品を組み合わせていくことで、骨格情報に対応する人体モデルを生成する。つまり、生成部１４０ｂが行う処理は、モーションキャプチャデータ１３０ａと人体モデルとを結合する処理に対応する。【００４９】
生成部１４０ｂが、合成モデルテーブル１３０ｄを生成する処理について説明する。生成部１４０ｂは、一連のモーションキャプチャデータ１３０ａに対し、人体モデルを、人体モデルデータ１３０ｂから取得し、取得した人体モデルと、物体モデルデータ１３０ｃの物体モデルとを合成することで、合成モデルデータを生成する。生成部１４０ｂは、他のフレームに対応する人体モデルと、物体モデルとを合成する処理を繰り返すことで、複数の合成モデルデータを生成する。生成部１４０ｂは、合成モデル番号を対応づけて、合成モデルデータを、合成モデルテーブル１３０ｄに登録する。【００５０】
なお、生成部１４０ｂは、合成モデルテーブル１３０ｄに登録された複数の合成モデルデータのうち、類似する合成モデルデータが含まれる場合には、冗長性を除去する処理を行っても良い。たとえば、生成部１４０ｂは、合成モデルデータの各関節位置の差の合計値が閾値未満である合成モデルデータを、類似する合成モデルデータであると判定する。生成部１４０ｂは、類似する合成モデルデータのうち、一つの合成モデルデータを残して、他の合成モデルデータを削除する処理を行う。【００５１】
生成部１４０ｂが、学習画像テーブル１３０ｅを生成する処理について説明する。生成部１４０ｂは、合成モデルテーブル１３０ｄを参照し、ある合成モデル番号の合成モデルデータを取得する。生成部１４０ｂは、取得した合成モデルデータに基づいて、部位ラベル画像データおよび距離画像データを生成する。生成部１４０ｂは、学習画像番号に対応づけて、部位ラベル画像データおよび距離画像データを、学習画像テーブル１３０ｅに登録する。【００５２】
たとえば、生成部１４０ｂは、予め、合成モデルデータに人体の部位を識別する部位ラベルを配置する。生成部１４０ｂは、３次元上に仮想の基準位置を設定し、この基準位置から合成モデルデータをみた場合における距離画像データを生成する。また、生成部１４０ｂは、基準位置から合成モデルデータをみた場合の合成モデルデータの領域を複数の部位ラベルに分類することで、部位ラベル画像データを生成する。たとえば、ある同一の合成モデルデータから生成される部位ラベル画像データおよび距離画像データは、図７で説明した部位ラベル画像データ１３１Ａ、距離画像データ１３１Ｂに対応する。【００５３】
また、生成部１４０ｂは、合成モデルデータを構成する人体モデルから人体の関節位置の情報を抽出することで、関節位置データを生成する。この関節位置データは、図７で説明した関節位置データ１３１Ｃに対応し、少なくとも、距離画像データ１３１Ｂと対応づけられる。【００５４】
生成部１４０ｂは、合成モデルテーブル１３０ｄに格納された他の合成モデルデータについても、上記処理を繰り返し実行することで、部位ラベル画像データ、距離画像データ、関節位置データを生成し、学習画像テーブル１３０ｅに格納する。【００５５】
修正部１４０ｃは、学習画像テーブル１３０ｅの部位ラベル画像データおよび距離画像データを修正する処理部である。たとえば、修正部１４０ｃは、学習画像テーブル１３０ｅで対応付けた、部位ラベル画像データと、距離画像データとを比較し、距離画像データの領域のうち、物体の領域を特定する。修正部１４０ｃは、距離画像データの物体の領域の値を、背景の値と同じ値に修正する。たとえば、修正部１４０ｃは、距離画像データの物体の領域の値を「無限遠」に設定する。また、修正部１４０ｃは、部位ラベル画像データに含まれる物体の部位ラベルを、背景を示すラベルに修正する。【００５６】
修正部１４０ｃは、学習画像テーブル１３０ｅに格納された他の部位ラベル画像データおよび他の距離画像データについても、上記処理を繰り返し実行することで、他の部位ラベル画像データおよび距離画像データを修正する。修正部１４０ｃが係る処理を実行することで、距離画像データに含まれる物体（鞍馬などの物体）を、背景として取り扱うことができる。【００５７】
学習部１４０ｄは、学習画像テーブル１３０ｅに含まれる複数の部位ラベル画像データおよび距離画像データの学習セットを基にして、繰り返し機械学習を実行し、識別器データ１３０ｆを生成する処理部である。また、学習部１４０ｄは、学習画像テーブル１３０ｅに含まれる複数の距離画像データおよび関節位置データの学習セットを基にして、ディープラーニングなど利用して学習を行い、骨格推定器データ１３０ｇを生成する処理部である。【００５８】
学習部１４０ｄが、第１識別器データ１３０ｆを生成する処理の一例について説明する。学習部１４０ｄは、距離画像データのある位置（ｘ１、ｙ１）の周辺の特徴量と、ある位置（ｘ１、ｙ１）に対応する部位ラベルを特定する。たとえば、ある位置（ｘ１、ｙ１）の周辺の特徴量は、距離画像データ上のある位置（ｘ１、ｙ１）を基準とした周辺の距離画像データの凹凸であっても良いし、その他の特徴量であっても良い。ある位置（ｘ１、ｙ１）に対応する部位ラベルは、部品ラベル画像データのある位置（ｘ１、ｙ１）に割り当てられた部位ラベルに対応する。【００５９】
同様に、学習部１４０ｄは、距離画像データのある位置（ｘｎ、ｙｎ）の周辺の特徴量と、ある位置（ｘｎ、ｙｎ）に対応する部位ラベルとのパターンを、異なる位置毎に特定する。学習部１４０ｄは、異なる位置の各パターンを、繰り返し機械学習することで、識別器データ１３０ｆを生成（学習）する。【００６０】
学習部１４０ｄが、骨格推定器データ１３０ｇを生成する処理の一例について説明する。学習部１４０ｄは、ディープラーニングを使用し、特徴量が自動的に最適される形で、距離画像データと関節位置データの関係を学習する。【００６１】
同様に、学習部１４０ｄは、距離画像データのある位置（ｘｎ、ｙｎ）の特徴量と、ある位置（ｘｎ、ｙｎ）の周辺の特徴量と、ある位置（ｘｎ、ｙｎ）に対応する関節位置とのパターンを、異なる位置毎に特定する。学習部１４０ｄは、異なる位置の各パターンを、繰り返し機械学習することで、骨格推定器データ１３０ｇを生成（学習）する。【００６２】
通知部１４０ｄは、学習部１４０ｃにより生成された識別器データ１３０ｆおよび骨格推定器データ１３０ｇを、認識装置２００に送信する処理部である。【００６３】
続いて、認識装置２００の説明に移行する。図９は、認識装置の構成の一例を示す図である。図９に示すように、この認識装置２００は、距離センサ２０に接続される。認識装置２００は、入力部２１０と、表示部２２０と、記憶部２３０と、制御部２４０とを有する。【００６４】
距離センサ２０は、姿勢の認識処理時に、対象者および所定の物体（鞍馬など、図示略）の距離画像を測定し、測定した距離画像のデータを、認識装置２００に出力する。以下の説明では、距離センサ２０から取得する距離画像のデータを、認識距離画像データ２３０ａと表記する。本実施例では、所定の物体を鞍馬として説明を行う。【００６５】
入力部２１０は、認識装置２００に各種の情報を入力するための入力装置である。たとえば、入力部２１０は、キーボードやマウス、タッチパネルなどに対応する。【００６６】
表示部２２０は、制御部２４０から出力される情報を表示する表示装置である。たとえば、表示部２２０は、液晶ディスプレイやタッチパネルなどに対応する。【００６７】
記憶部２３０は、認識距離画像データ２３０ａと、背景距離画像データ２３０ｂと、識別器データ１３０ｆと、骨格推定器データ１３０ｇとを有する。記憶部１３０は、ＲＡＭ、ＲＯＭ、フラッシュメモリなどの半導体メモリ素子や、ＨＤＤなどの記憶装置に対応する。【００６８】
認識距離画像データ２３０ａは、認識時において、距離センサ２０により測定された距離画像データである。認識距離画像データ２３０ａは、位置（ピクセル）毎に、距離センサ２０から対象者および物体までの距離を示すデータである。【００６９】
背景距離画像データ２３０ｂは、対象者が存在しない状態で、距離センサ２０により撮影された背景のみの距離画像データである。図４に記された所定の物体は、この背景距離画像データには存在する（所定の物体は、人物の前に存在したとしても、ここでは背景と記載する）。取得部２４０ａは、予め、距離センサ２０から、背景距離画像データ２３０ｂを取得し、記憶部２３０に格納しておく。【００７０】
識別器データ１３０ｆは、学習装置１００により生成される識別器データである。識別器データ１３０ｆのデータ構造は、図８で説明したデータ構造に対応する。【００７１】
骨格推定器データ１３０ｇは、学習装置１００により生成される骨格推定器データである。【００７２】
制御部２４０は、取得部２４０ａ、除去部２４０ｂ、判定部２４０ｃ、認識部２４０ｄを有する。制御部２４０は、ＣＰＵやＭＰＵなどによって実現できる。また、制御部２４０は、ＡＳＩＣやＦＰＧＡなどのハードワイヤードロジックによっても実現できる。【００７３】
取得部２４０ａは、距離センサ２０から、認識距離画像データ２３０ａを取得し、記憶部２３０に格納する。取得部２４０ａは、学習装置１００から、識別器データ１３０ｆおよび骨格推定器データ１３０ｇを取得し、取得した識別器データ１３０ｆおよび骨格推定器データ１３０ｇを、記憶部２３０に格納する。【００７４】
除去部２４０ｂは、認識距離画像データ２３０ａと背景距離画像データ２３０ｂとの差分を取ることで、認識距離画像データ２３０ａから、背景、および、所定の物体の情報を除去する処理部である。除去部２４０ｂは、認識距離画像データ２３０ａから、背景の情報を除去した距離画像データを、判定部２４０ｃに出力する。以下の説明では、認識距離画像データ２３０ａから、背景の情報を除去した距離画像データを、単に「距離画像データ」と表記する。【００７５】
判定部２４０ｃは、識別器データ１３０ｆまたは骨格推定器データ１３０ｇを選択して、部位ラベルの判定または関節位置の判定を行う処理部である。【００７６】
判定部２４０ｃが、識別器データ１３０ｆを選択して、部位ラベルの判定を行う処理について説明する。判定部２４０ｃは、除去部２４０ｂから取得した距離画像データと、識別器データ１３０ｆとを基にして、距離画像データの位置（ピクセル）毎に、対応する部位ラベルを判定する。【００７７】
たとえば、判定部２４０ｃは、距離画像データの周辺の特徴量と、識別器データ１３０ｆの各分岐ノードｆとを比較して、各分岐ノードｆを辿り、辿った先のリーフノードＲに示される部位ラベルを、判定結果の部位ラベルとする。判定部２４０ｃは、他のピクセルについても、上記処理を繰り返し実行することで、全距離画像データに対応する部位ラベルを判定する。判定部２４０ｃは、距離画像データの各位置と、部位ラベルとを対応づけた第１判定結果を、認識部２４０ｄに出力する。【００７８】
判定部２４０ｃが、骨格推定器データ１３０ｇを選択して、関節位置の判定を行う処理について説明する。判定部２４０ｃは、除去部２４０ｂから取得した距離画像データと、骨格推定器データ１３０ｇとを基にして、距離画像データから、対応する関節位置を推定する。【００７９】
たとえば、判定部２４０ｃは、ディープニューラルネットワークなどを用い、距離画像データから、関節位置とを対応づけた第２判定結果を、認識部２４０ｄに出力する。【００８０】
認識部２４０ｄは、判定部２４０ｃの第１判定結果または第２判定結果を基にして、対象者の姿勢を認識する処理部である。たとえば、認識部２４０ｄは、第１判定結果に含まれる人体の部位ラベルを基にして、３次元位置を複数持った人体の骨格モデルを複数提案する。認識部２４０ｄは、複数の骨格モデルの中から最も尤度の高い骨格モデルを選択し、選択した骨格モデルに基づき、対象者の姿勢を認識する。【００８１】
認識部２４０ｄは、第２判定結果に含まれる人体の関節位置を基にして、骨格モデルを生成し、生成した骨格モデルに基づき、対象者の姿勢を認識する。【００８２】
次に、本実施例に係る学習装置の処理手順および認識装置２００の処理手順について説明する。図１０は、本実施例に係る学習装置の処理手順を示すフローチャートである。図１０に示すように、学習装置１００の取得部１４０ａは、モーションキャプチャ装置１０からモーションキャプチャデータ１３０ａを取得する（ステップＳ１０１）。【００８３】
学習装置１００の生成部１４０ｂは、人体モデルデータ１３０ｂを生成する（ステップＳ１０２ａ）。生成部１４０ｂは、物体モデルデータ１３０ｃを生成する（ステップＳ１０２ｂ）。なお、生成部１４０ｂは、予め生成された物体モデルデータを、物体モデルデータ１３０ｃとして用いても良い。【００８４】
生成部１４０ｂは、動きに応じた複数の人体モデルと物体モデルとを合成した合成モデルデータを生成する（ステップＳ１０３）。生成部１４０ｂは、合成モデルテーブル１３０ｄから冗長性を除去する（ステップＳ１０４）。【００８５】
生成部１４０ｂは、合成モデルデータを基にして、学習画像テーブル１３０ｅに、部位ラベル画像データ、距離画像データを登録する（ステップＳ１０５）。【００８６】
学習装置１００の修正部１４０ｃは、距離画像データのうち、部位ラベル「物体」に対応する位置の距離を無限遠に修正し、部位ラベル画像データの物体の部位ラベルを背景と同一に修正する（ステップＳ１０６）。【００８７】
生成部１４０ｂは、関節位置データを生成し、学習画像テーブル１３０ｅに登録する（ステップＳ１０７）。【００８８】
学習装置１００の学習部１４０ｄは、距離画像データと部位ラベル画像データとを基にして、識別器を生成する場合には（ステップＳ１０８，Ｙｅｓ）、ステップＳ１０９に移行する。学習部１４０ｄは、距離画像データと部位ラベル画像データとを基にして、識別器を生成しない場合には（ステップＳ１０８，Ｎｏ）、ステップＳ１１１に移行する。【００８９】
学習部１４０ｄは、距離画像データの特徴量と部位ラベルとの関係を機械学習し、識別器データ１３０ｆを生成する（ステップＳ１０９）。学習装置１００の通知部１４０ｅは、識別器データ１３０ｆを、認識装置１００に通知する（ステップＳ１１０）。【００９０】
学習部１４０ｄは、距離画像データの特徴量と関節位置との関係を機械学習し、骨格推定器データ１３０ｇを生成する（ステップＳ１１１）。学習装置１００の通知部１４０ｅは、骨格推定器データ１３０ｆを、認識装置１００に通知する（ステップＳ１１２）。【００９１】
図１１は、本実施例に係る認識装置の処理手順を示すフローチャート（１）である。図１１の処理では、認識装置２００は、識別器データ１３０ｆを用いて処理を行うものとする。認識装置２００の取得部２４０ａは、距離センサ２０から認識距離画像データ２３０ａを取得する（ステップＳ２０１）。【００９２】
認識装置２００の除去部２４０ｂは、認識距離画像データ２３０ａから背景、および、所定の物体を除去する（ステップＳ２０２）。認識装置２００の判定部２４０ｃは、識別器データ１３０ｆと距離画像データとを基にして、距離画像データに含まれる人体の各部位ラベルを判定する（ステップＳ２０３）。【００９３】
認識装置２００の認識部２４０ｄは、人体の各部位ラベルを基にして、対象者の姿勢を認識する（ステップＳ２０５）。【００９４】
図１２は、本実施例に係る認識装置の処理手順を示すフローチャート（２）である。図１２の処理では、認識装置２００は、骨格推定器データ１３０ｇを用いて処理を行うものとする。認識装置２００の取得部２４０ａは、距離センサ２０から認識距離画像データ２３０ａを取得する（ステップＳ３０１）。【００９５】
認識装置２００の除去部２４０ｂは、認識距離画像データ２３０ａから背景、および、所定の物体を除去する（ステップＳ３０２）。認識装置２００の判定部２４０ｃは、骨格推定器データ１３０ｇと距離画像データとを基にして、距離画像データに含まれる人体の関節位置を判定する（ステップＳ３０３）。【００９６】
認識装置２００の認識部２４０ｄは、人体の関節位置を基にして、対象者の姿勢を認識する（ステップＳ３０４）。【００９７】
次に、本実施例に係る学習装置１００および認識装置２００の効果について説明する。学習装置１００の生成部１４０ｂは、人体モデルデータ１３０ｂと物体モデルデータ１３０ｃとを合成した合成モデルデータを基にして、距離画像データと部位ラベル画像とを対応づけた学習画像を複数生成する。学習装置１００は、距離画像データの物体の領域に対応する値を、背景の値と同様の値に修正し、複数の学習画像を機械学習することにより、距離画像データの特徴と、人体の部位ラベルとを対応づけた第１識別器データ１３０ｆを生成する。この第１識別器データ１３０ｆは、距離画像データの特徴と、人体の部位ラベルとを対応づけた識別器であるため、距離画像取得時に人体と物体とが同時に存在する場合でも、物体の影響を除去して、距離画像データから、人体の各部位ラベルを特定することができる。【００９８】
学習装置１００は、距離画像データと関節位置データとを対応づけた学習画像を複数生成する。学習装置１００は、複数の学習画像を機械学習することにより、距離画像データの特徴と、人体の関節位置とを対応づけた骨格推定器データ１３０ｇを生成する。この骨格推定器データ１３０ｇは、距離画像データの特徴と、人体の関節位置とを対応づけた識別器であるため、距離画像取得時に人体と物体とが同時に存在する場合でも、物体の影響を除去して、人体の関節位置を特定することができる。【００９９】
認識装置２００は、距離センサ２０から取得する認識距離画像データ２３０ａから背景、および、所定の物体を取り除いた距離画像データおよび識別器データ１３０ｆを用いて、対象者の部位ラベルを判定する。このため、距離画像取得時に、人体と物体とが同時に存在する場合でも、物体の影響を除去して、距離画像データの人体の部位ラベルを特定することができる。すなわち、物体によるオクルージョンが存在しても、正しい部位認識を行うことができる。【０１００】
認識装置２００は、距離センサ２０から取得する認識距離画像データ２３０ａから背景、および、所定の物体を取り除いた距離画像データおよび骨格推定器データ１３０ｇを用いて、対象者の関節位置を判定する。このため、距離画像取得時に、人体と物体とが同時に存在する場合でも、物体の影響を除去して人体の関節位置を特定することができる。すなわち、物体によるオクルージョンが存在しても、正しい部位認識を行うことができる。【０１０１】
ところで、上述した実施例の内容は一例であり、学習装置１００および認識装置２００の処理は、上記の処理に限られるものではない。以下では、その他の処理１〜３について説明する。【０１０２】
その他の処理１について説明する。上記の処理では、学習装置１００は、距離画像データに含まれる人体の各部位および物体の部位のうち、物体の部位の領域の値を、背景の値に修正していたがこれに限定されるものではない。たとえば、学習装置１００の修正部１４０ｃは、距離画像データについて、人体の髪の部位に対応する領域の値も、背景の値に修正する。また、修正部１４０ｃは、部位ラベル画像データの人体の髪の部分の部位ラベルを背景に修正しても良い。たとえば、髪の色が黒色である場合には、距離センサ２０のレーザ光が反射されず、距離画像データから消失する場合がある。このため、人物の髪の部位を予め取り除いて、学習画像を生成し、識別器データ１３０ｆを生成することで、より、部位ラベルの認識精度を向上させることができる。【０１０３】
その他の処理２について説明する。上記の説明では、学習装置１００は、距離画像データと、人体の関節位置を全て含んだ関節位置データとのパターンを繰り返し学習することで、骨格推定器データ１３０ｇを生成していたが、これに限定されるものではない。たとえば、学習装置１００の学習部１４０ｄは、人体の関節位置が、物体の影響で一部取得できない場合でも、距離画像データと、人体の関節位置（物体の影響により一部欠落）を含んだ関節位置データとのパターンを繰り返し学習することで、骨格推定器データ１３０ｇを生成しても良い。【０１０４】
その他の処理３について説明する。上記の処理では、学習装置１００が識別器データ１３０ｆ、骨格推定器データ１３０ｇを生成し、認識装置２００が識別器データ１３０ｆ、骨格推定器データ１３０ｇを用いて対象者の姿勢を認識していたがこれに限定されるものではない。たとえば、学習装置１００および認識装置２００の処理を行う距離画像処理装置が、上記実施例に対応する処理を実行しても良い。たとえば、距離画像処理装置は、「学習フェーズ」において、図２の制御部１４０と同様の処理を実行することで、識別器データ１３０ｆ、骨格推定器データ１２０ｇを生成する。距離画像処理装置は、「認識フェーズ」において、学習フェーズで学習しておいた識別器データ１３０ｆ、骨格推定器データ１３０ｇを用いて、図９に示した制御部２４０と同様の処理を実行し、対象者の姿勢を認識する。【０１０５】
次に、上記実施例に示した学習装置１００および認識装置２００と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図１３は、学習装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。【０１０６】
図１３に示すように、コンピュータ３００は、各種演算処理を実行するＣＰＵ３０１と、ユーザからのデータの入力を受け付ける入力装置３０２と、ディスプレイ３０３とを有する。また、コンピュータ３００は、記憶媒体からプログラム等を読み取る読み取り装置３０４と、有線または無線ネットワークを介して他のコンピュータ（キャリブレーション装置１０等）との間でデータの授受を行うインターフェース装置３０５とを有する。また、コンピュータ３００は、各種情報を一時記憶するＲＡＭ３０６と、ハードディスク装置３０７とを有する。そして、各装置３０１〜３０７は、バス３０８に接続される。【０１０７】
ハードディスク装置３０７は、取得プログラム３０７ａ、生成プログラム３０７ｂ、修正プログラム３０７ｃ、学習プログラム３０７ｄ、通知プログラム３０７ｅを有する。ＣＰＵ３０１は、取得プログラム３０７ａ、生成プログラム３０７ｂ、修正プログラム３０７ｃ、学習プログラム３０７ｄ、通知プログラム３０７ｅを読み出してＲＡＭ３０６に展開する。【０１０８】
取得プログラム３０７ａは、取得プロセス３０６ａとして機能する。生成プログラム３０７ｂは、生成プロセス３０６ｂとして機能する。修正プログラム３０７ｃは、修正プロセス３０６ｃとして機能する。学習プログラム３０７ｄは、学習プロセス３０６ｄとして機能する。通知プログラム３０７ｅは、通知プロセス３０６ｅとして機能する。【０１０９】
取得プロセス３０６ａの処理は、取得部１４０ａの処理に対応する。生成プロセス３０６ｂの処理は、生成部１４０ｂの処理に対応する。修正プロセス３０６ｃの処理は、修正部１４０ｃの処理に対応する。学習プロセス３０６ｄの処理は、学習部１４０ｄの処理に対応する。通知部プロセス３０６ｅの処理は、通知部１４０ｅの処理に対応する。【０１１０】
なお、各プログラム３０７ａ〜３０７ｅについては、必ずしも最初からハードディスク装置３０７に記憶させておかなくても良い。例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ３００が各プログラム３０７ａ〜３０７ｅを読み出して実行するようにしても良い。【０１１１】
図１４は、認識装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。【０１１２】
図１４に示すように、コンピュータ４００は、各種演算処理を実行するＣＰＵ４０１と、ユーザからのデータの入力を受け付ける入力装置４０２と、ディスプレイ４０３とを有する。また、コンピュータ４００は、記憶媒体からプログラム等を読み取る読み取り装置４０４と、有線または無線ネットワークを介して他のコンピュータ（モーションキャプチャ装置１０等）との間でデータの授受を行うインターフェース装置４０５とを有する。また、コンピュータ４００は、各種情報を一時記憶するＲＡＭ４０６と、ハードディスク装置４０７とを有する。そして、各装置４０１〜４０７は、バス４０８に接続される。【０１１３】
ハードディスク装置４０７は、取得プログラム４０７ａ、除去プログラム４０７ｂ、判定プログラム４０７ｃ、認識プログラム４０７ｄを有する。ＣＰＵ４０１は、取得プログラム４０７ａ、除去プログラム４０７ｂ、判定プログラム４０７ｃ、認識プログラム４０７ｄを読み出してＲＡＭ４０６に展開する。【０１１４】
取得プログラム４０７ａは、取得プロセス４０６ａとして機能する。除去プログラム４０７ｂは、除去プロセス４０６ｂとして機能する。判定プログラム４０７ｃは、判定プロセス４０６ｃとして機能する。認識プログラム４０７ｄは、認識プロセス４０６ｄとして機能する。【０１１５】
取得プロセス４０６ａの処理は、取得部２４０ａの処理に対応する。除去プロセス４０６ｂの処理は、除去部２４０ｂの処理に対応する。判定プロセス４０６ｃの処理は、判定部２４０ｃの処理に対応する。認識部プロセス４０６ｄの処理は、認識部２４０ｄの処理に対応する。【０１１６】
なお、各プログラム４０７ａ〜４０７ｄについては、必ずしも最初からハードディスク装置４０７に記憶させておかなくても良い。例えば、コンピュータ４００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ４００が各プログラム４０７ａ〜４０７ｄを読み出して実行するようにしても良い。
【符号の説明】
【０１１７】
１０    モーションキャプチャ装置
２０    距離センサ
１００  学習装置
２００  認識装置
【図１】
2018207365.tif 000003
【図２】
2018207365.tif 000004
【図３】
2018207365.tif 000005
【図４】
2018207365.tif 000006
【図５】
2018207365.tif 000007
【図６】
2018207365.tif 000008
【図７】
2018207365.tif 000009
【図８】
2018207365.tif 000010
【図９】
2018207365.tif 000011
【図１０】
2018207365.tif 000012
【図１１】
2018207365.tif 000013
【図１２】
2018207365.tif 000014
【図１３】
2018207365.tif 000015
【図１４】
2018207365.tif 000016
【図１５】
2018207365.tif 000017
【図１６】
2018207365.tif 000018
【図１７】
2018207365.tif 000019
【図１８】
2018207365.tif 000020
【図１９】
2018207365.tif 000021
【図２０】
2018207365.tif 000022
【図２１】
2018207365.tif 000023
【手続補正書】
【提出日】令和1年10月9日(2019.10.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する生成部と、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正する修正部と、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する学習部と
を有することを特徴とする距離画像処理装置。
【請求項２】
前記生成部は、前記合成モデルを基にして、前記距離画像と、前記人体の各関節位置とを対応づけた他の学習画像を複数生成し、前記学習部は、前記他の学習画像を複数用いて、骨格推定器を学習することを特徴とする請求項１に記載の距離画像処理装置。
【請求項３】
前記修正部は、前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記人体の髪の部位に対応する領域の値を更に修正することを特徴とする請求項２に記載の距離画像処理装置。
【請求項４】
前記修正部は、前記物体の部位に対応する領域の値および前記人体の髪の部位に対応する領域の値を、前記距離画像の背景に対応する値と同じ値に修正することを特徴とする請求項３に記載の距離画像処理装置。
【請求項５】
距離センサから対象者、物体および背景を含んだ距離画像を取得する取得部と、前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成する除去部と、前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定する判定部と、前記判定部の判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する認識部とを更に有することを特徴とする請求項４に記載の距離画像処理装置。
【請求項６】
前記判定部は、前記対象者距離画像と前記骨格推定器とを基にして、前記対象者の関節位置を判定することを特徴とする請求項５に記載の距離画像処理装置。
【請求項７】
学習装置と認識装置とを有する距離画像処理システムであって、
前記学習装置は、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成する生成部と、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正する修正部と、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する学習部とを有し、
前記認識装置は、
距離センサから対象者、物体および背景を含んだ距離画像を取得する取得部と、
前記対象者、物体および背景を含んだ距離画像から背景、および、物体を取り除くことで対象者距離画像を生成する除去部と、
前記対象者距離画像と前記識別器とを基にして、前記対象者距離画像の位置と、前記人体の部位とを関係を判定する判定部と、
前記判定部の判定結果を基にして前記対象者距離画像に含まれる前記人体の各部位の関係から前記対象者の姿勢を認識する認識部とを有する
ことを特徴とする距離画像処理システム。
【請求項８】
コンピュータが実行する距離画像処理方法であって、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成し、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正し、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する
処理を実行することを特徴とする距離画像処理方法。
【請求項９】
コンピュータに、
人体の３次元モデルと物体の３次元モデルとを合成した合成モデルを基にして、基準位置から前記人体の各位置または前記物体の各位置までの距離を示す距離画像と、前記人体の各部位または前記物体の部位を識別する部位画像とを対応づけた学習画像を複数生成し、
前記学習画像の距離画像と部位画像とを基にして、前記距離画像の領域のうち、前記物体の部位に対応する領域の値を修正し、
修正された距離画像を有する複数の学習画像を基にして、前記距離画像の特徴と、前記人体の部位または前記物体の部位とを対応づけた識別器を学習する
処理を実行させることを特徴とする距離画像処理プログラム。
【国際調査報告】
2018207365.tif 000024
2018207365.tif 000025