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