(57)【要約】  ３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得する取得部と、軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索する最適化処理部とを含む、情報処理装置が開示される。
2019030794.tif 000002
【特許請求の範囲】
【請求項１】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得する取得部と、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索する最適化処理部と、
前記最適解又は該最適解に基づく対象物情報を出力する出力部とを含む、情報処理装置。
【請求項２】
前記対象物モデルを変化させることは、複数の前記幾何モデルの種類を変化させることを含み、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれの最適な種類を、円柱、円錐、台形柱、楕円柱、楕円錐、及び台形楕円柱のうちの少なくともいずれか２つのうちから、探索することを含む、請求項１に記載の情報処理装置。
【請求項３】
前記最適解を探索することは、前記点群データに対する前記幾何モデルの当てはまり度合いの確率的な指標値を導出し、複数の前記部位のそれぞれごとに、前記指標値が最良の前記当てはまり度合いを表す種類の前記幾何モデルを、前記最適な種類として決定する、請求項２に記載の情報処理装置。
【請求項４】
前記指標値は、前記幾何モデルの表面に対する前記点群データの残差。
【請求項５】
前記当てはめ処理は、ＥＭアルゴリズムに基づき、
前記指標値は、事後分布のデータ和である、請求項４に記載の情報処理装置。
【請求項６】
前記対象物モデルを変化させることは、前記対象物モデルを変形させることを含み、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれについて、軸方向、該軸方向に垂直な方向の最適な長さ、及び該軸方向に沿った最適な長さのうちの少なくともいずれか１つを探索することを含む、請求項１〜５のうちのいずれか１項に記載の情報処理装置。
【請求項７】
前記対象物モデルを変化させることは、機構モデルを用いた順運動学に基づき前記対象物モデルを変形させることを含む、請求項１〜５のうちのいずれか１項に記載の情報処理装置。
【請求項８】
前記対象物モデルを変化させることは、複数の前記部位間の関節回転、複数の前記部位のうちの所定関節の並進、及び重心の回転を伴い、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれについて、最適な位置、及び最適な向きを探索することを含む、請求項１〜５のうちのいずれか１項に記載の情報処理装置。
【請求項９】
前記対象物モデルを変化させることは、更に、複数の前記幾何モデルの少なくともいずれか１つについて、軸方向に沿った長さを変更することを含み、
前記最適解を探索することは、前記対象物モデルを変化させる際に、前記関節回転、前記所定関節の並進、及び前記重心の回転に対応する変形に応じて、複数の前記幾何モデルのそれぞれの向きを更新し、次いで、更新後の向きと変更後の長さに基づいて、複数の前記幾何モデルの位置を更新することを含む、請求項８に記載の情報処理装置。
【請求項１０】
前記所定関節は、複数の前記部位のうちの、他の部位の関節回転では動かない部位の根元側の関節である、請求項８又は９に記載の情報処理装置。
【請求項１１】
前記最適化処理部は、収束条件が成立するまで、前記最適解を探索し続け、
前記収束条件は、前記最適解の前回値からの変化量が所定変化量以下になった場合に満たされる、請求項６〜１０のうちのいずれか１項に記載の情報処理装置。
【請求項１２】
前記対象物は、人、又は、人型のロボットであり、
前記最適化処理部は、前記対象物モデルの初期状態から前記対象物モデルを変形させ、
前記対象物モデルの初期状態は、前記対象物モデルに係る重心が、前記点群データの重心に一致し、かつ、前記複数の幾何モデルのうちの、前記対象物の左右の腕部に対応付けられる幾何モデルが左右に開いた状態を含む、請求項１に記載の情報処理装置。
【請求項１３】
前記最適解を探索することは、複数の前記幾何モデルのそれぞれごとに、前記点群データに対する前記幾何モデルの当てはまり度合いの確率的な指標値を導出することを含み、
前記最適化処理部は、複数の前記幾何モデルのそれぞれごとの前記指標値の合計値が所定閾値以下である場合に、前記初期状態を再設定してから、前記最適解を再探索する、請求項１２に記載の情報処理装置。
【請求項１４】
前記最適化処理部は、複数の前記幾何モデルの表面に対する前記点群データの残差を最小化する前記最適解を、尤度関数の期待値を最大化することで探索し、
前記尤度関数は、正則化項、及び、前記対象物モデルの左右の対称性に係る罰則項の少なくともいずれか一方を有する、請求項１２又は１３に記載の情報処理装置。
【請求項１５】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得し、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索し、
前記最適解又は該最適解に基づく対象物情報を出力する、
処理をコンピュータに実行させる、モデルデータ作成プログラム。
【請求項１６】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得し、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索し、
前記最適解又は該最適解に基づく対象物情報を出力することを含む、コンピュータにより実行されるモデルデータ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、モデルデータ作成プログラム、モデルデータ作成方法に関する。
【背景技術】
【０００２】
人など対象物の表面に点在する点群データに基づいて、対象物の骨格を追跡する技術が知られている（例えば、非特許文献１参照）。この技術では、対象物の表面を多数の分割したメッシュでモデル化し、点と点との距離（即ち2点間距離）に基づいてメッシュ頂点と点群データを合わせこむことで、対象物の姿勢を推定している。
【先行技術文献】
【特許文献】
【０００３】
【非特許文献１】M. Ye and R. Yangによる"Real-time Simultaneous Pose and Shape Estimation for Articulated Objects Using a Single Depth Camera" in CVPR (2014)
【特許文献１】特開平10-149445号公報
【特許文献２】特開2011-179907号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような従来技術では、点群データに基づいて対象物の状態（姿勢など）を認識する際、比較的低い計算負荷でノイズに対してロバストに精度の高い結果を得ることが難しい。例えば、メッシュでモデル化を行う上記の従来技術では、メッシュ頂点の数を増やすことで対象物の形状を詳細に表現が可能であるが、ノイズの比較的多い点群データではモデルの表現力が活きず、かつ、誤差が増加し易い。即ち、メッシュ間隔に起因する誤差が上乗せされてしまう。また、点群数が例えば1,000であり、メッシュ頂点数が例えば1,000であると、1,000,000の組合わせ計算が必要となり、計算量が膨大となり得る。【０００５】
そこで、１つの側面では、本発明は、比較的低い計算負荷でかつノイズに対してロバストな態様で、点群データに基づいて対象物の状態を認識可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
本開示の一局面によれば、３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得する取得部と、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索する最適化処理部と、
前記最適解又は該最適解に基づく対象物情報を出力する出力部とを含む、情報処理装置が提供される。
【発明の効果】
【０００７】
本開示によれば、比較的低い計算負荷でかつノイズに対してロバストな態様で、点群データに基づいて対象物の状態が認識可能となる。
【図面の簡単な説明】
【０００８】
【図１】一実施例による対象物認識システムの概略構成を模式的に示す図である。
【図２】対象物認識装置のハードウェア構成の一例を示す図である。
【図３】対象物認識装置の機能の一例を示すブロック図である。
【図４】関節モデルの一例の説明図である。
【図５Ａ】対象物モデルの一例の説明図である。
【図５Ｂ】対象物モデルの他の一例の説明図である。
【図６Ａ】初期状態の設定方法の一例の説明図である。
【図６Ｂ】幾何モデルのパラメータの説明図である。
【図７】点群データｘｎの一例の説明図である。
【図８Ａ】χｋｌの説明図である。
【図８Ｂ】χｋｌの説明のための部位へ番号の割り当て例を示す図である。
【図９】出力例を示す図である。
【図１０Ａ】対象物認識装置により実行される処理の一例を示すフローチャートである。
【図１０Ｂ】更新処理の一例を示すフローチャートである。
【図１１】対象物認識装置により実行される処理の他の一例を示すフローチャートである。
【図１２】事後分布ｐｎｍの算出結果の説明図である。
【図１３】フィッティング結果の説明図である。
【図１４Ａ】フィッティング結果の説明図である。
【図１４Ｂ】フィッティング結果の説明図である。
【発明を実施するための形態】
【０００９】
本明細書において、特に言及しない限り、「あるパラメータ（例えば後述のパラメータθ）を導出する」とは、「該パラメータの値を導出する」ことを意味する。
【００１０】
図１は、一実施例による対象物認識システム１の概略構成を模式的に示す図である。図１には、説明用に、対象者Ｓ（対象物の一例）が示されている。また、図１には、表示装置７が併せて示される。
【００１１】
対象物認識システム１は、距離画像センサ２１と、対象物認識装置１００（情報処理装置の一例）とを含む。
【００１２】
距離画像センサ２１は、対象者Ｓの距離画像を取得する。例えば、距離画像センサ２１は、３次元画像センサであり、空間全体のセンシングを行って距離を計測し、デジタル画像のように画素毎に距離情報を持つ距離画像（点群データの一例）を取得する。距離情報の取得方式は任意である。例えば、距離情報の取得方式は、特定のパターンを対象に投影してそれをイメージセンサで読み取り、投影パターンの幾何学的な歪みから三角測量の方式により距離を取得するアクティブステレオ方式であってもよい。また、レーザー光を照射してイメージセンサで反射光を読み取り、その位相のずれから距離を計測するTOF（Time-of-Flight）方式であってもよい。
【００１３】
尚、距離画像センサ２１は、位置が固定される態様で設置されてもよいし、位置が可動な態様で設置されてもよい。
【００１４】
対象物認識装置１００は、距離画像センサ２１から得られる距離画像に基づいて、対象者Ｓの関節や骨格を認識する。この認識方法については、後で詳説する。対象者Ｓは、人や人型のロボットであり、複数の関節を有する。以下では、一例として、対象者Ｓは、人であるものとする。対象者Ｓは、用途に応じて、特定の個人であってもよいし、不特定の人であってもよい。例えば、用途が体操等の競技時の動きの解析である場合、対象者Ｓは、競技選手であってよい。尚、用途が、体操やフィギュアスケート等の競技時のような激しい動き（高速かつ複雑な動作）を解析する場合、距離画像センサ２１は、好ましくは、図１に模式的に示すように、対象者Ｓの３次元形状に近い点群データが得られるように、複数個設置される。
【００１５】
対象物認識装置１００は、距離画像センサ２１に接続されるコンピュータの形態で実現されてもよい。対象物認識装置１００と距離画像センサ２１との接続は、有線による通信路、無線による通信路、又はこれらの組み合わせで実現されてよい。例えば、対象物認識装置１００が距離画像センサ２１に対して比較的遠隔に配置されるサーバの形態である場合、対象物認識装置１００は、ネットワークを介して距離画像センサ２１に接続されてもよい。この場合、ネットワークは、例えば、携帯電話の無線通信網、インターネット、World Wide Web、VPN（virtual private network）、WAN（Wide Area Network）、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでもよい。他方、対象物認識装置１００が距離画像センサ２１に対して比較的近傍に配置される場合、無線による通信路は、近距離無線通信、ブルーツース（登録商標）、Ｗｉ−Ｆｉ（Wireless Fidelity）等により実現されてもよい。また、対象物認識装置１００は、異なる２つ以上の装置（例えばコンピュータやサーバ等）により協動して実現されてもよい。
【００１６】
図２は、対象物認識装置１００のハードウェア構成の一例を示す図である。
【００１７】
図２に示す例では、対象物認識装置１００は、制御部１０１、主記憶部１０２、補助記憶部１０３、ドライブ装置１０４、ネットワークＩ／Ｆ部１０６、入力部１０７を含む。
【００１８】
制御部１０１は、主記憶部１０２や補助記憶部１０３に記憶されたプログラムを実行する演算装置であり、入力部１０７や記憶装置からデータを受け取り、演算、加工した上で、記憶装置などに出力する。制御部１０１は、例えばＣＰＵ（Central Processing Unit)やＧＰＵを含んでよい。
【００１９】
主記憶部１０２は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などであり、制御部１０１が実行する基本ソフトウェアであるＯＳやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【００２０】
補助記憶部１０３は、ＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【００２１】
ドライブ装置１０４は、記録媒体１０５、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。
【００２２】
記録媒体１０５は、所定のプログラムを格納する。この記録媒体１０５に格納されたプログラムは、ドライブ装置１０４を介して対象物認識装置１００にインストールされる。インストールされた所定のプログラムは、対象物認識装置１００により実行可能となる。
【００２３】
ネットワークＩ／Ｆ部１０６は、有線及び／又は無線回線などのデータ伝送路により構築されたネットワークを介して接続された通信機能を有する周辺機器（例えば図１に示す表示装置７）と対象物認識装置１００とのインターフェースである。
【００２４】
入力部１０７は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、マウスやスライスパット等を有する。入力部１０７は、音声入力やジェスチャー等の他の入力方法に対応してもよい。
【００２５】
尚、図２に示す例において、以下で説明する各種処理等は、プログラムを対象物認識装置１００に実行させることで実現できる。また、プログラムを記録媒体１０５に記録し、このプログラムが記録された記録媒体１０５を対象物認識装置１００に読み取らせて、以下で説明する各種処理等を実現させることも可能である。なお、記録媒体１０５は、様々なタイプの記録媒体を用いることができる。例えば、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体１０５には、搬送波は含まれない。
【００２６】
図３は、対象物認識装置１００の機能の一例を示すブロック図である。
【００２７】
対象物認識装置１００は、データ入力部１２０（取得部の一例）と、初期状態設定部１２２と、最適化部１２４（最適化処理部の一例）と、出力部１２６を含む。各部１２０乃至１２６は、図２に示す制御部１０１が主記憶部１０２に記憶された１つ以上のプログラムを実行することで実現できる。尚、対象物認識装置１００の機能の一部は、距離画像センサ２１に内蔵されうるコンピュータにより実現されてもよい。また、対象物認識装置１００は、幾何モデルデータベース１４０（図３では、"幾何モデルＤＢ"と表記）を含む。幾何モデルデータベース１４０は、図２に示す補助記憶部１０３により実現されてよい。
【００２８】
データ入力部１２０には、距離画像センサ２１から距離画像（以下、「点群データ」と称する）が入力されるとともに、使用する関節モデルが入力される。点群データは、上述のとおりであり、例えばフレーム周期毎に入力されてよい。また、複数の距離画像センサ２１が用いられる場合は、点群データは、複数の距離画像センサ２１からの距離画像の集合を含んでよい。
【００２９】
使用する関節モデルは、対象者Ｓの関節に係る任意のモデルであり、例えば、複数の関節と、関節間の骨格（リンク）とで表されるモデルである。本実施例では、一例として、図４に示すような関節モデルが用いられる。図４に示すような関節モデルは、頭部が１つ、胴部（胴体部）、両腕部、及び両脚部がそれぞれ３つの関節を持つ１６関節モデルであり、頭部は両端が関節として規定され、その他は両端及び中点の３つが関節として規定される。具体的には、関節モデルは、１６個の関節ａ０〜ａ１５と、関節間を繋ぐ１５個の骨格ｂ１〜ｂ１５（又は「部位ｂ１〜ｂ１５」とも称する）とからなる。尚、理解できるように、例えば関節ａ４，ａ７は、左右の肩の関節であり、関節ａ２は、頸椎に係る関節である。また、関節ａ１４，ａ１５は、左右の股関節であり、関節ａ０は、腰椎に係る関節である。このような関節モデルでは、股関節に係る骨格ｂ１４、ｂ１５や、肩の関節に係る骨格ｂ４、ｂ７は、後述の幾何モデルを用いたフィッティングだけでは精度良く認識できない骨格（以下、「隠れた骨格」とも称する）となる。尚、以下の説明において、関節や部位に関する位置関係について、「祖先」とは、体の中心に近い側を指し、「子孫」とは、体の中心から遠い側を指す。
【００３０】
初期状態設定部１２２は、データ入力部１２０に入力される点群データと、幾何モデルデータベース１４０内の幾何モデルとに基づいて、最適化部１２４で用いる対象物モデルの初期状態を生成する。対象物モデルは、対象者Ｓの体表面に係るモデルであり、使用する関節モデルと、幾何モデルデータベース１４０内の幾何モデルに基づいて、生成される。より具体的には、対象物モデルは、図５Ａに示すように、複数の幾何モデルが、複数の関節を介して繋がるモデルである。即ち、対象物モデルは、関節モデルで表現される対象者Ｓの部位（隠れた部位の除く部位）ごとに、幾何モデルを有する。図５Ａに示す例では、対象物モデルは、１１個の幾何モデルＭｄ１〜Ｍｄ１１が、複数の関節（黒●で表現）を介して繋がるモデルである。本実施例では、一例として、図５Ａに示すような対象物モデルが用いられる。幾何モデルデータベース１４０内の幾何モデルは、例えば円柱に係り、以下では、主に円柱に係る幾何モデルを用いる場合について説明する。他の幾何モデルの可能性は後述する。
【００３１】
尚、変形例では、図５Ｂに示すように、より多くの幾何モデルが使用されてもよい。図５Ｂに示す例では、図５Ａに示す対象物モデルに対して、首に対応する幾何モデルＭｄ１２と、足首から先の足の末端部に対応する幾何モデルＭｄ１３、Ｍｄ１４が追加されている。なお、この場合、図示は省略するが、使用する関節モデルについても、図４に示した関節モデルに対して、関節が追加されることになる。
【００３２】
対象物モデルの自由度は、隣接する幾何モデル間（即ち関節）での回転（以下、「関節回転」とも称する）と、幾何モデル自体の変位である。対象物モデルは、隣接する幾何モデル間で回転の自由度を有するので、"幾何形状付きリンク機構モデル"とも言うことができる。対象物モデルの自由度の詳細は後述する。
【００３３】
初期状態設定部１２２は、好ましくは、図６Ａに模式的に示すように、対象物モデル６００に係る重心が、点群データの重心に一致し、かつ、複数の幾何モデルのうちの、対象物の左右の腕部に対応付けられる幾何モデルが左右に開いた状態を、初期状態に設定する。図６Ａでは、対象物モデル６００に係る重心Ｇｍは、点群データｘｎの重心Ｇｓと一致され、左右の腕部が真横に開かれている。初期状態の設定に用いる対象物モデルの重心は、対象物モデルに含まれる全ての幾何モデルに基づく重心であってもよいが、特定の部位に係る幾何モデルの重心であってもよい。特定の部位に係る幾何モデルは、例えば腰部に係る幾何モデル（図５Ａの幾何モデルＭｄ１参照）である。また、変形例では、初期状態は、左右の脚部に対応付けられる幾何モデルが左右に開いた状態を含んでもよい。
【００３４】
対象物モデルの初期状態は、例えば、対象物モデルに含まれる各幾何モデルの位置、方向、太さ、及び長さの各初期値で表現されてよい。本実施例では、一例として、図６Ｂに示すように、一の幾何モデルは、位置ｃ、方向ｅ、太さｒ、及び長さｌで表現される。位置ｃ及び方向ｅは、ベクトルであり、方向ｅは、円柱の軸Ｉの向きを表す単位ベクトル表現であるとする。位置ｃは、円柱の軸Ｉ上の、長さ方向の中点位置Ｇに係る位置ベクトルである。尚、長さｌに代えて、等価的に、円柱の軸Ｉ上の上下の端点の位置（即ち関節の位置）が利用されてもよい。
【００３５】
最適化部１２４は、データ入力部１２０に入力される点群データと、初期状態設定部１２２で生成される対象物モデルの初期状態とに基づいて、ＥＭアルゴリズムによりフィッティングを行う。初期状態設定部１２２で得た対象物モデルの初期状態を用いるのは、EMアルゴリズムではある程度、解に近い初期値を与えることが有用であるためである。
【００３６】
以下では、対象者Ｓの部位ｍ（ｍ＝１，２、・・・、Ｍ−ｈ）に係る幾何モデル（ここでは円柱）の位置ｃ、方向ｅ、太さｒ、及び長さｌを、ｃｍ、ｅｍ、ｒｍ、及びｌｍを表記する。従って、対象者Ｓの部位ｍに係る幾何モデルは、位置ｃｍ、方向ｅｍ、太さｒｍ、及び長さｌｍの４つのモデルパラメータで表現される。対象者Ｓの部位ｍは、対象物モデルにおける骨格ｂ１〜ｂ１５（又は「部位ｂ１〜ｂ１５」とも称する）に対応する。Ｍは、関節モデルの全部位数（隠れた部位を含む全部位の総数）であり、図４に示す関節モデルでは、"１５"である。「Ｍ−ｈ」を用いるのは、フィッティングに寄与しない部位を除外するためである。従って、部位ｍとは、対象者Ｓの全部位のうちの、幾何モデルによるフィッティングの対象となる部位である。以下では、区別するときは、対象者Ｓの全部位のうちの任意の一部位を、「部位ｋ」とも表記する。
【００３７】
また、点群データｘｎは、３次元の空間座標（ｘ，ｙ，ｚ）で表現されるＮ個の各点（例えば位置ベクトル）の集合（ｘ１、ｘ２、・・・、ｘＮ）であるとする。この場合、例えば空間座標のｘ成分及びｙ成分は、画像平面内の２次元座標の値であり、ｘ成分は、水平方向の成分であり、ｙ成分は、垂直方向の成分である。また、ｚ成分は、距離を表す。図７には、点群データｘｎの一例が示される。また、対象物モデルの関節回転、対象物モデルの重心の回転、及び対象物モデルの所定関節（以下、「根幹関節」と称する）の並進、並びに太さｒ及び長さｌを表すパラメータを、「変形パラメータθａｒ」と称する。根幹関節とは、部位ｍ（ｍ＝１，２、・・・、Ｍ−ｈ）のうちの１つの所定部位の祖先側（根本側）の関節であり、所定部位は、他の部位の関節回転では動かない部位である。根幹関節は、対象物モデルにおける例えば骨盤部と胴部との間の関節（図４の関節ａ０）である。尚、対象物モデルの重心の回転とは、対象物モデル全体としての回転と同義である。同様に、根幹関節の並進とは、対象物モデル全体としての並進と同義となる。
【００３８】
本実施例では、点群データｘｎと部位ｍに係る幾何モデルの表面残差εｍ(ｘｎ,θａｒ)（軸まわりの表面に垂直な方向の差）がガウス分布であることが仮定される。具体的には、以下のとおりである。
【００３９】
【数１】
2019030794.tif 000003
ここで、ｐ（ｘｎ）は、点群データｘｎの混合確率分布モデルであり、σ２は、分散である。このとき、対応する対数尤度関数は、以下のとおりである。
【００４０】
【数２】
2019030794.tif 000004
部位ｍに係る幾何モデルが円柱であるとき、表面残差εｍ(ｘｎ,θ)は、次の通り表現できる。尚、ベクトル間の符号"×"は外積を表す。
εｍ(ｘｎ,θ)＝｜（ｘｎ−ｅｍ）×ｅｍ｜−ｒｍ
ＥＭアルゴリズムは、知られているように、期待値を算出するEステップと、期待値を最大化するMステップの繰返しである。
【００４１】
Eステップでは、最適化部１２４は、以下の事後分布ｐｎｍ（指標値の一例）を計算する。
【００４２】
【数３】
2019030794.tif 000005
Mステップでは、最適化部１２４は、以下の期待値Ｑ（θａｒ,σ２)を最大化するパラメータθａｒ及び分散σ２を導出する。尚、Ｍステップでは、事後分布ｐｎｍは定数として扱われる。
【００４３】
【数４】
2019030794.tif 000006
ここで、Ｐは、事後分布ｐｎｍのデータ和の全部位の和（以下、「事後分布ｐｎｍのデータ和の全部位和」とも称する）であり、以下のとおりである。
【００４４】
【数５】
2019030794.tif 000007
期待値Ｑ（θａｒ,σ２)の分散σ２による偏微分から、期待値Ｑ（θａｒ,σ２)を最大化する分散σ２の推定値σ２＊は、以下のとおりである。
【００４５】
【数６】
2019030794.tif 000008
この推定値σ２＊を数４の式に代入すると、以下のとおりである。
【００４６】
【数７】
2019030794.tif 000009
また、パラメータθａｒの各要素のうちの、太さｒｍについてはもとより線形であるので、太さｒｍの推定値ｒ＊ｍは、以下の通り、直接的に最小化が可能である。
【００４７】
【数８】
2019030794.tif 000010
期待値Ｑ（θａｒ,σ２)は、パラメータθａｒの各要素のうちの、太さｒｍ以外については非線形関数であるが、本実施例では微小変形を想定するため、線形近似により更新式を計算する。尤度関数の最大化問題は、分散σ２と同様に、線形近似により解を導出できる。具体的には、変形パラメータθａｒの微小変化Δθを用いると、以下のとおりである。
【００４８】
【数９】
2019030794.tif 000011
よって、変形パラメータθａｒの微小変化Δθは、表面残差εｎｍ、及び、表面残差の微分ε'ｎｍを用いて、以下のとおりである。尚、数１０において（以下も同様）、Ｔは、転置を表す。
【００４９】
【数１０】
2019030794.tif 000012
表面残差εｎｍ、及び、表面残差の微分ε'ｎｍは、以下の通り定義される。尚、θａｒは、変形パラメータである。
【００５０】
【数１１】
2019030794.tif 000013
表現〈〉ｐについては、事後分布ｐｎｍを用いた平均操作であり、任意のテンソルないし行列ａｎｍに対して、以下の通りとする。
【００５１】
【数１２】
2019030794.tif 000014
表面残差εｎｍ、及び、表面残差の微分ε'ｎｍに基づく微小変化Δθの算出方法は、次の通り、機構モデルを用いた順運動学に基づいて実現できる。
【００５２】
以下では、位置ｃｍΘ及び向きｅｍΘは、ある姿勢Θにおける部位ｍに係る幾何モデルの位置及び向きを表す。尚、位置ｃｍΘは、部位ｍの祖先側の関節の位置である。微小変化Δθによる位置ｃｋΘ及び向きｅｋΘのそれぞれの変化をΔｃｋΘ及びΔｅｋΘとしたとき、変化ΔｃｋΘ及びΔｅｋΘの後の位置ｃｋΘ＋ΔΘ及び向きｅｋΘ＋ΔΘは、それぞれ以下の通り表すことができる。尚、部位ｋは、上述のように、隠れた部位を含み、従って、図４に示す関節モデルでは、ｋ＝１，２、・・・、１５である。尚、向きｅｋΘ＋ΔΘについては、ノルムが保存される態様で更新される。
【００５３】
【数１３】
2019030794.tif 000015
【００５４】
【数１４】
2019030794.tif 000016
ここで、ΔｃｋΘ及びΔｅｋΘは、機構モデルの順運動学に基づき、以下の関係を有する。
【００５５】
【数１５】
2019030794.tif 000017
【００５６】
【数１６】
2019030794.tif 000018
ここで、ｃ０は、根幹関節の位置である。添字ｌは、可動部位を指し、総数はＭ−ｆ（例えば１３）である。また、ｆは、可動しない関節数である。可動しない関節とは、例えば骨盤部（図４の部位ｂ１４、ｂ１５参照）に係る関節（図４の関節ａ０参照）である。また、Δｌｋ、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iは、微小変化Δθの各要素である。Δｌｋは、部位ｋ（ｋ＝１，２、・・・、Ｍ）の長さの変化を表す。また、Δθliは、可動部位ｌ（ｌ＝１，２、・・・、Ｍ−ｆ）の祖先側（根本側）の関節回転を表し、ΔθＭ−ｆ＋１,iは、対象物モデルの重心の回転を表し、ΔθＭ−ｆ＋２,iは、根幹関節の並進（３次元）を表す。また、添字iは、ΔθＭ−ｆ＋２,iについては空間次元（本実施例では、３次元であり、ｉ＝１、２，３）を表し、ΔθliやΔθＭ−ｆ＋１,iのようなその他については、回転の自由度（本実施例では、３自由度であり、ｉ＝０、Ｘ，ＸＸ）を表す。ｅｌｉΘ（ｉ＝０、Ｘ，ＸＸ）は、ある姿勢Θにおける可動部位ｌの回転軸ｅｌｉΘであり、以下のとおりである。
【００５７】
【数１７】
2019030794.tif 000019
尚、ｎは、任意の単位ベクトル（固定ベクトル）であり、例えば距離画像センサ２１の方向に係る単位ベクトルであってよい。その他、数１５及び数１６（後出の数２２〜数２４も同様）において用いられるベクトルは、以下のとおりである。
【００５８】
【数１８】
2019030794.tif 000020
また、数１６において用いられるδｋｌは、クロネッカーのデルタであり、以下のとおりである。
【００５９】
【数１９】
2019030794.tif 000021
また、χｋｌは、部位ｋ（ｋ＝１，２、・・・、１５）と可動部位ｌ（ｌ＝１，２、・・・、１３）との祖先・子孫関係を表すパラメータであり、例えば、図８Ａに示すとおりである。図８Ａにおける部位の番号は、図８Ｂに示すとおりである。例えば、部位ｋ＝部位６でありかつ可動部位ｌ＝部位５であるとき、χ５６＝１である。これは、部位５が部位６の祖先側にあるためである。尚、図８Ａ及び図８Ｂに示す例では、可動しない骨盤部の番号が最後の２つ"１４"及び"１５"とされかつが列から除外されている。尚、行と列は、同一の番号が同一の部位を指す。
【００６０】
尚、ここで、添字の表記について整理すると、添字ｋはすべての部位を指し、総数はＭである。添字ｍは、フィッティング対象の部位を指し、総数はＭ−ｈである。添字ｌは、可動部位を指し、総数はＭ−ｆである。尚、これらの添字は同じ番号でも同一の部位を指すとは限らない。
【００６１】
幾何モデルが円柱の場合、表面残差は、上述したが、以下の通り、軸まわりの表面（円筒状の表面）に対する径方向の差として、表現されてよい。
【００６２】
【数２０】
2019030794.tif 000022
このとき、表面残差の微分は、機構モデルの順運動学（数１５及び数１６の関係式）に基づき、以下のとおりである。
【００６３】
【数２１】
2019030794.tif 000023
【００６４】
【数２２】
2019030794.tif 000024
【００６５】
【数２３】
2019030794.tif 000025
【００６６】
【数２４】
2019030794.tif 000026
Δｌｋは、部位ｋの長さの変化を表し、Δｌｋによる表面残差の微分を、「ε'ｎｍΔｌ」とも表記する。Δθｌｉは、上述のように可動部位ｌの関節回転を表し、Δθｌｉによる表面残差の微分を、「ε'ｎｍｌｉ」とも表記する。Δθｎｍ,Ｍ−ｆ＋１,iは、上述のように対象物モデルの重心の回転を表し、Δθｎｍ,Ｍ−ｆ＋１,iによる表面残差の微分を、「ε'ｎｍ,Ｍ−ｆ＋１,i」と表記する。Δθｎｍ,Ｍ−ｆ＋２,iは、上述のように根幹関節の並進（３次元）を表し、Δθｎｍ,Ｍ−ｆ＋２,iによる表面残差の微分を、「ε'ｎｍ,Ｍ−ｆ＋２,i」と表記する。また、χｍｋは、以下のとおりである。
【００６７】
【数２５】
2019030794.tif 000027
χｍｋは、部位ｍと部位ｋ間の祖先・子孫関係を表すパラメータである。χσ（ｍ）lは、部位ｍのうちの部位σ（ｍ）と可動部位ｌ（ｌ＝１，２、・・・、１３）との祖先・子孫関係を表すパラメータであり、部位σ（ｍ）は、可動部位ｌの子孫側の隣接部位を表す。χｍｋやχσ（ｍ）lについて、考え方は、部位ｋと可動部位ｌとに係るχｋｌと実質的に同様であり、図８Ａ及び図８Ｂを参照して上述した通りである。
【００６８】
最適化部１２４は、幾何モデルが円柱である場合は、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iを、数２２、数２３、及び数２４の式と、数１０とに基づいて導出できる。換言すると、ε'ｎｍｌｉは、上記の数１０の式から、関節回転Δθliを得るための表面残差の微分である。同様に、ε'ｎｍ,Ｍ−ｆ＋１,iは、上記の数１０の式から、ΔθＭ−ｆ＋１,iを得るための表面残差の微分である。同様に、ε'ｎｍ,Ｍ−ｆ＋２,iは、上記の数１０の式から、ΔθＭ−ｆ＋２,iを得るための表面残差の微分である。尚、円柱以外の幾何モデルについても、以下の表面残差を用いて同様に導出可能である。
【００６９】
円錐の場合、表面残差εｍ(ｘｎ,θａｒ)は、以下の通り表現されてよい。尚、円錐（楕円錐の場合も同様）では、位置ｃｍΘは、ある姿勢Θにおける頂点位置に対応し、ある姿勢Θにおける向きｅｍΘは、中心軸の単位ベクトルである。
【００７０】
【数２６】
2019030794.tif 000028
ベクトルｎｍは、円錐の表面上のある1点における法線ベクトルである。台形柱の場合、円錐の場合と同様であってよい。
【００７１】
また、楕円柱の場合、表面残差εｍ(ｘｎ,θａｒ)は、以下の通り表現されてよい。
【００７２】
【数２７】
2019030794.tif 000029
ｄｍは、焦点距離であり、ａｍは、断面の楕円の長軸の長さであり、ｎｍ'は、長軸方向の単位ベクトルである。尚、同様に、位置ｃｍは軸上の位置に対応し、向きｅｍは、楕円柱の軸（軸方向）の単位ベクトルである。
【００７３】
また、楕円錐の場合、表面残差εｍ(ｘｎ,θａｒ)は、以下の通り表現されてよい。
【００７４】
【数２８】
2019030794.tif 000030
ここで、ψｍ１及びψｍ２は、それぞれ長軸及び短軸方向への傾斜角である。また、同様に、位置ｃｍは頂点位置に対応し、向きｅｍは、中心軸の単位ベクトルである。台形楕円柱の場合、表面残差εｍ(ｘｎ,θａｒ)は、楕円錐の場合と同様であってよい。
【００７５】
最適化部１２４は、Δｌｋ、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iを得ると、Δｌｋ、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iを数１５及び数１６に代入することで、ΔｃｋΘ及びΔｅｋΘを導出してもよい。そして、最適化部１２４は、ΔｃｋΘ及びΔｅｋΘを得ると、数１３乃至数１６の更新式に基づいて、部位ｋの位置ｃｋΘ＋ΔΘ及び向きｅｋΘ＋ΔΘを導出（更新）してもよい。
【００７６】
或いは、最適化部１２４は、Δｌｋ、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iを得ると、回転行列を利用して、部位ｋの位置ｃｋΘ＋ΔΘ及び向きｅｋΘ＋ΔΘ等を導出（更新）してもよい（後出の図１０Ｂ参照）。
【００７７】
最適化部１２４は、このようにしてＭステップを行うことで、期待値を最大化する分散σ２及びパラメータθａｒ（最適解の一例）を得ると、収束条件を判定し、収束条件を満たさない場合は、Ｅステップから繰り返す。収束条件は、例えば最適解の前回値からの変化量が所定変化量以下になった場合に満たされる。収束条件の更なる具体例は、後述する。次のＥステップでは、最適化部１２４は、微小変化Δθの後の対象物モデル（即ち直前のＭステップで得た分散σ２及びパラメータθａｒ）に基づいて、新たな事後分布ｐｎｍを計算する。そして、次のＭステップでは、同様に、新たな事後分布ｐｎｍに基づいて、期待値を最大化する分散σ２及びパラメータθａｒを導出する。
【００７８】
出力部１２６は、最適化部１２４で得られる最適解、又は、該最適解に基づき導出される対象者Ｓに係る情報（対象物情報の一例）を出力する。例えば、出力部１２６は、表示装置７（図１参照）等に、対象者Ｓの骨格情報を出力する。例えば、出力部１２６は、フレーム周期ごとに、略リアルタイムに、対象者Ｓの骨格情報を出力してもよい。或いは、対象者Ｓの動きの解説用などでは、出力部１２６は、非リアルタイムで、骨格情報を時系列に出力してもよい。
【００７９】
骨格情報は、関節ａ０〜ａ１５の各位置を特定できる情報を含んでもよい。また、骨格情報は、骨格ｂ１〜ｂ１５の位置や、向き、太さを特定できる情報を含んでもよい。骨格情報の用途は任意であるが、次のフレーム周期における同骨格情報の導出に利用されてもよい。また、骨格情報は、最終的には、体操等の競技時の対象者Ｓの動きの解析に利用されてもよい。例えば体操の競技時の対象者Ｓの動きの解析では、骨格情報に基づく技の認識が実現されてもよい。図９には、一例として、対象者Ｓが体操選手であるときの表示例が示される。図９に示す例では、"わざ（技）"とともに、各種角度（右ひじ角度等）の数値が数値されている。各種角度は、対象者Ｓの骨格情報に基づいて導出された値である。このようにして、本実施例によれば、例えば体操競技において、各種角度を数値化できるので、目視判定では限界があった採点者による"わざ"の判定が容易となる。
【００８０】
尚、骨格情報の他の用途としては、作業者を想定する対象者Ｓの動きを解析して、ロボットプログラムに利用されてもよい。或いは、骨格情報は、ジェスチャーによるユーザインターフェースや、個人の識別、熟練技術の定量化などに利用することもできる。
【００８１】
本実施例によれば、上述のように、最適化部１２４は、対象物モデルを微小に変形させながら、点群データｘｎに対象物モデルを当てはめるフィッティングを行うことで、対象者Ｓの骨格情報を生成する。これにより、点と点との距離（即ち2点間距離）に基づいてメッシュ頂点と点群データを合わせこむ上述の従来技術に比べて、計算負荷を低減できる。即ち、本実施例では、対象物モデルは、メッシュ頂点よりも有意に少ない数の幾何モデルからなるので、計算負荷を大幅に低減できる。これにより、体操やフィギュアスケートなど、高速かつ複雑な動作の解析等にも適用可能となる。
【００８２】
また、本実施例によれば、点と点との距離に基づいてメッシュ頂点と点群データを合わせこむ上述の従来技術に比べて、ノイズに対してロバストに精度の高い認識結果（骨格情報）を得ることができる。例えば、強い照明下で撮影できないため、点群データには、照明のばらつきによるノイズが比較的多く混入する場合がある。具体的には、上述の従来技術では、当てはめ誤差は、ノイズに起因したデータ誤差を点群データ数Ｎで除した値に、メッシュ間隔分の誤差が上乗せされる。これに対して、本実施例では、当てはめ誤差は、ノイズに起因したデータ誤差を点群データ数Ｎで除した値に対応し、メッシュ間隔分の誤差の上乗せはない。
【００８３】
また、本実施例によれば、ＥＭアルゴリズムにおいて、機構モデルを用いた順運動学に基づき対象物モデルを変形させながら、幾何モデルの表面に対する点群データｘｎの残差（表面残差）を最小化する最適解が探索される。これにより、かかる機構モデルを用いた順運動学に基づくことなく最適解を探索する場合に比べて、最適解の精度を高めることができる。なお、上述では、最適解とは、分散σ２やパラメータθａｒであるが、後述のように、対象物モデルの種類の最適解（最適な種類）をも含みうる。
【００８４】
このようにして、本実施例によれば、点群データに基づいて対象者Ｓの状態（例えば姿勢）を認識する際、比較的低い計算負荷で、ノイズに対してロバストに対象物の関節又は骨格を精度良く認識できる。
【００８５】
ところで、ＥＭアルゴリズムは、繰返し計算なので初期状態が必要である。本実施例では、Ｍステップでは、上述のように、線形近似を用いるので、正解にある程度近い初期状態が有用である。これは、正解から乖離する初期状態を用いると、ローカルマキシマムに陥る可能性が高くなるためである。
【００８６】
この点、本実施例によれば、ＥＭアルゴリズムにおいて使用する対象物モデルの初期状態は、上述のように、対象物モデルに係る重心が、点群データの重心に一致し、かつ、対象物の左右の腕部に対応付けられる幾何モデルが左右に開いた状態である。これにより、ＥＭアルゴリズムにおいて、ローカルマキシマムを高い確率で回避することができる。
【００８７】
ここで、Ｍステップでは、期待値Ｑ（θａｒ,σ２)に対し、微小変化を仮定して計算しているため、微小変化Δθが"微小"であることが有用である。そこで、本実施例においては、好ましくは、微小変化Δθが"微小"を超えて大きくならないよう、以下のような罰則項を導入するとよい。
【００８８】
【数２９】
2019030794.tif 000031
ここで、ｗｒは所定の重みである。このような罰則項は正則化項と呼ばれ、上記の機能（微小変化Δθが"微小"を超えて大きくならないようにする機能）の他、データ欠損などにより値が不定となる場合の数値不安定性を回避する効果がある。
【００８９】
また、同様に、本実施例においては、好ましくは、左右で長さや大きさが同じになるように、以下のような罰則項を導入するとよい。即ち、対象物モデルの左右の対称性に係る罰則項を導入するとよい。
【００９０】
【数３０】
2019030794.tif 000032
ここで、ｗｓｌ及びｗｓｒは、それぞれ所定の重みである。また、ｉは、左右に存在する部位（腕部や脚部）を表し、ｌｉＲ、ｒｉＲは、右の長さ、半径を表し、ｌｉＬ、ｒｉＬは左の長さ、半径を表す。尚、楕円柱に係る幾何モデル等では、長径や短径のように、太さが複数の太さパラメータで表現される場合には、それぞれに対し罰則項を導入すればよい。なお、左右の対称性に係る罰則項は、上述した正則化項とともに導入されてもよい。
【００９１】
また、同様に、本実施例においては、長さが無限として定式化されている円柱や楕円柱などの幾何モデルを用いる場合、好ましくは、Ｅステップでは、最適化部１２４は、好ましくは、有限長処理を行う。有限長処理は、点群データｘｎのうちの、所定の条件を満たすデータについてのみ事後分布ｐｎｍを算出し、他のデータについては事後分布ｐｎｍを０とする処理である。有限長処理は、部位ｍに無関係なデータの混入を防ぐための処理であり、所定の条件は、部位ｍに無関係なデータを排除できるように設定される。これにより、実際には関係ないはずの点群データが解析に影響を及ぼすことを抑制できる。所定の条件を満たすデータは、例えば、以下の式を満たすデータであってよい。
【００９２】
【数３１】
2019030794.tif 000033
点群データのうちの、部位ｍに係る幾何モデルの中心（又は中心位置、以下同じ）からの軸方向の距離が所定距離（＝ｌ（ｍ）ｔｈ）以上のデータに対し、事後分布が０とされる。所定距離ｌ（ｍ）ｔｈは、手入力することも可能であるし、他の計測によって得られる対象者Ｓの形状情報に基づいて設定されてもよい。
【００９３】
また、上述した実施例では、点群データｘｎがすべて幾何モデル表面近傍に存在するとして定式化してきたが、点群データｘｎにはノイズなども含まれる。そのような表面から離れたデータが混入すると、Ｅステップの事後分布が数値不安定となり正しく計算されない場合がある。そこで、分布ｐ（ｘｎ）には、以下のように、ノイズ項として一様分布が追加されてもよい。
【００９４】
【数３２】
2019030794.tif 000034
ここで、ｕは任意の重みである。このとき、事後分布は以下のように修正される。
【００９５】
【数３３】
2019030794.tif 000035
ここで、ｕｃは、以下の通り定義される。
【００９６】
【数３４】
2019030794.tif 000036
これにより、分母にｕｃが導入され、数値不安定が解消される。尚、Ｅステップのみの変更であり、Ｍステップはそのままでよい。
【００９７】
また、上述した実施例では、点群データｘｎと部位ｍに係る幾何モデルの表面残差εｍ(ｘｎ,θａｒ)に対して、部位ｍごとに重みを付けていないが、重み付けを行ってもよい。これは、各幾何モデルで説明される点群データの数には差がある点を考慮したものである。具体的には、点群データｘｎの混合確率分布モデルは、以下の通り表現されてよい。尚、数３５では、ノイズ項として一様分布が追加されているが、省略されてもよい。
【００９８】
【数３５】
2019030794.tif 000037
ここで、αｍは、部位ｍに係る重みである。αｍは、対応する幾何モデルで説明される点群データの数が大きいほど大きくなる態様で設定されてよい。例えば、αｍは、以下の通りである。
αｍ＝部位ｍの表面積／全体の表面積
部位ｍの表面積は、部位ｍに係る幾何モデルの表面積であってよく、全体の表面積は、対象物モデルの全体の表面積であってよい。この際、表面積とは、幾何モデルの表面積のうちの、表面残差に係る表面の面積である。例えば、円柱に係る幾何モデルの場合、軸方向の端面以外の表面（外周面）の表面積である。これにより、対象者Ｓの各部位ｍの大きさを反映したより精密なモデル化が可能となる。このとき、事後分布ｐｎｍは、以下のとおりである。
【００９９】
【数３６】
2019030794.tif 000038
次に、図１０Ａ以降の概略フローチャートを参照して、本実施例による対象物認識装置１００の動作例について説明する。
【０１００】
図１０Ａは、対象物認識装置１００により実行される処理の一例を示すフローチャートである。図１０Ａに示す処理は、データ入力部１２０により１シーン（１時点）に係る点群データが取得されるごとに（即ちフレーム周期ごとに）実行されてよい。或いは、図１０Ａに示す最適化処理は、オフラインで、データ入力部１２０により取得された複数のシーンに係る点群データに対して、一のシーンに係る点群データごとに実行されてもよい。
【０１０１】
ステップＳ１０００では、初期状態設定部１２２は、対象物モデルの初期状態を設定する。対象物モデルの初期状態の設定方法は上述のとおりである。
【０１０２】
ステップＳ１００１では、最適化部１２４は、ｊ＝１に設定する。
【０１０３】
ステップＳ１００２では、最適化部１２４は、事後分布ｐｎｍと表面残差εｎｍを算出する。事後分布ｐｎｍ及び表面残差εｎｍの算出方法は、上述のとおりである。尚、ｊ＝１のときは、事後分布ｐｎｍと表面残差εｎｍは、対象物モデルの初期状態に基づいて算出される。なお、この際、分散σ２は、適当な値が使用されてよい。また、ｊ≧２のときは、事後分布ｐｎｍと表面残差εｎｍは、前回のＭステップで得られた分散σ２、パラメータθａｒ、位置ｃｋΘ＋ΔΘ及び向きｅｋΘ＋ΔΘに基づいて算出される。
【０１０４】
ステップＳ１００４では、最適化部１２４は、表面残差εｎｍの微分ε'ｎｍを算出する。即ち、最適化部１２４は、上述したε'ｎｍΔｌ、ε'ｎｍｌｉ、ε'ｎｍ,Ｍ−ｆ＋１,i、及びε'ｎｍ,Ｍ−ｆ＋２,iを算出する。ε'ｎｍΔｌ、ε'ｎｍｌｉ、ε'ｎｍ,Ｍ−ｆ＋１,i、及びε'ｎｍ,Ｍ−ｆ＋２,iの算出方法は、上述のとおりである。
【０１０５】
ステップＳ１００６では、最適化部１２４は、ステップＳ１００４で得た表面残差εｎｍの微分ε'ｎｍと、ステップＳ１００２で得た事後分布ｐｎｍ及び表面残差εｎｍとに基づいて、変形パラメータθａｒの微小変化Δθを算出する。微小変化Δθは、上述のように、Δｌｋ、Δθli、ΔθＭ−ｆ＋１,i、及びΔθＭ−ｆ＋２,iを含み、算出方法は上述のとおりである。
【０１０６】
ステップＳ１００８では、最適化部１２４は、ステップＳ１００６で得たｊ番目の周期の微小変化Δθ（以下、「Δθ（ｊ）」と表記する）を記憶する。
【０１０７】
ステップＳ１０１０では、最適化部１２４は、ｊ番目の周期までに得られた微小変化Δθに基づいて、位置ｃｋΘ及び向きｅｋΘを更新する更新処理を行う。更新処理は、上述のとおり数１３乃至数１６の更新式に基づいて実行されてもよいが、更新処理の好ましい一例は、図１０Ｂを用いて説明する。
【０１０８】
ステップＳ１０１２では、最適化部１２４は、収束条件が満たされたか否かを判定する。収束条件は、例えばｊ番目の周期の微小変化Δθ（ｊ）の各要素（最適解の前回値からの変化量の一例）のうちの最大値が所定値以下である場合に満たされてよい。収束条件が満たされた場合は、ステップＳ１０１６に進み、それ以外の場合は、ステップＳ１０１４を介してステップＳ１００２に戻る。
【０１０９】
ステップＳ１０１４では、最適化部１２４は、ｊを"１"だけインクリメントする。
【０１１０】
ステップＳ１０１６では、最適化部１２４は、フィッティングが成功したか否かを判定する。例えば、最適化部１２４は、各部位の事後分布ｐｎｍのデータ和に基づいて、事後分布ｐｎｍのデータ和の全部位和が、所定値Ｔｈ１（所定閾値の一例）より大きい場合に、フィッティングが成功したと判定する。所定値Ｔｈ１は、必要なフィッティング精度に応じて決定されてよい。判定結果が"ＹＥＳ"の場合は、ステップＳ１０２２に進み、それ以外の場合は、ステップＳ１０１８に進む。
【０１１１】
ステップＳ１０１８では、最適化部１２４は、ｊ≧ｊｍａｘであるか否かを判定する。ｊｍａｘは、無限ループ回避用の上限値である。判定結果が"ＹＥＳ"の場合は、終了し、それ以外の場合は、ステップＳ１０２０を介して、ステップＳ１００１に戻る。
【０１１２】
ステップＳ１０２０では、最適化部１２４は、対象物モデルの初期状態を再設定する。対象物モデルの初期状態の再設定は、各幾何モデルの長さｌ及び太さｒを、比較的大幅に（例えば２倍や半分等）変更することを含む。また、対象物モデルの初期状態の再設定は、更に、例えば、重心の位置を維持しながら、対象物モデルの上下の向きを反転させることや９０度回転させることを含んでもよい。これにより、再設定前の初期状態が正解から乖離していた場合でも、再設定後に、ローカルマキシマムを回避できる可能性を高めることができる。尚、変形例では、ステップＳ１０２０は省略されてもよい。この場合、ステップＳ１０１８での判定結果が"ＮＯ"の場合、対象物モデルの生成は、失敗となる。
【０１１３】
ステップＳ１０２２では、出力部１２６は、ステップＳ１０１６で成功と判定されたフィッティング結果（例えば位置ｃｋΘ及び向きｅｋΘのような骨格情報）を出力する。
【０１１４】
図１０Ａに示す処理によれば、１シーンごとに、対象物モデルの初期状態から、収束条件が満たされるまで、パラメータθａｒの微小変化Δθを繰り返しながら、最適なパラメータθａｒを効率的に探索できる。
【０１１５】
尚、図１０Ａに示す処理では、シーンごとに、独立に処理されているが、前回のシーンに係る位置ｃｋΘ及び向きｅｋΘや、前回のシーンに係る最適なパラメータθａｒに基づいて、今回のシーンに係る対象物モデルの初期状態が設定されてもよい。
【０１１６】
図１０Ｂは、図１０ＡのステップＳ１０１０で実行される更新処理の一例を示すフローチャートである。
【０１１７】
ステップＳ１０３０では、最適化部１２４は、ステップＳ１００８で得た微小変化Δθ（ｊ）のうちの、根幹関節の並進ΔθＭ−ｆ＋２,iに基づいて、根幹関節の位置ｃ０を更新する。具体的には、以下のとおりである。
ｃ０（ｊ）＝ｃ０（ｊ−１）＋ΔθＭ−ｆ＋２,i
なお、ｃ０（ｊ）は、今回値（ｊ番目の周期での値）であり、ｃ０（ｊ−１）は、前回値（ｊ−１番目の周期での値）である。
【０１１８】
ステップＳ１０３２では、最適化部１２４は、ステップＳ１００８で得た微小変化Δθ（ｊ）のうちの、関節回転Δθli（ｊ）と重心の回転ΔθＭ−ｆ＋１,i（ｊ）とに基づいて、部位ｋの新たな向きｅｋΘ（ｊ）及び回転軸ｅｌｉΘ（ｊ）を算出する。この際、部位ｋごとに、重心回転、および影響する関節回転をすべて作用させる。即ち、ある部位ｋについては、祖先側に向かう方向に隣接する部位の回転行列から順に根本の部位の回転行列までかけあわせ、最後に重心の回転行列をかける。具体的には、回転行列として例えばロドリゲスの公式を用い、部位ｋの回転行列を、Ｒｋと表記すると、部位ｋに係る変換行列Ｍｋは、以下のように表せる。
Ｍｋ＝ＲＧＲ０Ｒ１・・・ＲｊＲｋ
ここで、ＲＧは、重心の回転行列であり、Ｒ０は、根幹関節の回転行列である。Ｒ１は、根幹関節に直接繋がる部位（以下、「根幹関節形成部位」とも称する）の回転行列であり、以下同様に（「・・・」で表現）、最後のＲｊは、部位ｋに対して祖先側に隣接する部位の回転行列である。尚、部位ｋが、根幹関節形成部位（例えば、図４に示す部位ｂ１、部位ｂ１４、及び部位ｂ１５）であるときは、Ｒ１やＲｊ及びその間の回転行列は存在しないので、部位ｋに係る変換行列Ｍｋは、以下の通りとなる。
Ｍｋ＝ＲＧＲ０
部位ｋの新たな向きｅｋΘ（ｊ）は、部位ｋに係る変換行列Ｍｋに基づいて、以下の通り算出できる。
ｅｋΘ（ｊ）＝ＭｋｅｋΘ（１）
ここで、ｅｋ（１）は、部位ｋに係る変換行列Ｍｋに基づいて、対象物モデルの初期状態における部位ｋの向きである。
また、部位ｋの新たな回転軸ｅｌｉΘ（ｊ）は、以下の通り算出できる。
ｅｌｉΘ（ｊ）＝ＭｋｅｌｉΘ（１）
尚、ロドリゲスの公式では、一般的に、部位ｌの回転行列Ｒlは、回転軸ｅliの合成軸まわりにγlだけ回転する場合、以下のとおりである。
【０１１９】
【数３７】
2019030794.tif 000039
ここでの添字iは、回転の自由度（ｉ＝０、Ｘ，ＸＸ）を表す。ｅｌｉｘ、ｅｌｉｙ、及びｅｌｉｚは、回転軸ｅliの単位ベクトルの各成分であり、可動部位ｌについて、対象物モデルの初期状態における回転軸ｅｌｉΘ（１）が用いられる。γｌiは、回転軸ｅliまわりの回転角度である。可動部位ｌに係るγｌiは、ｊ番目の周期までに得られた微小変化Δθのうちの、初期状態からの各Δθliを積算することで導出される。具体的には、以下のとおりである。
【０１２０】
【数３８】
2019030794.tif 000040
尚、Δθli（ｊ'）は、ｊ'番目の周期で得られるΔθliを表す。重心の回転行列ＲＧは、Δθliに代えて、重心の回転ΔθＭ−ｆ＋１,iを用いて導出できる。
【０１２１】
ステップＳ１０３４では、最適化部１２４は、ステップＳ１００８で得た微小変化Δθ（ｊ）のうちの、Δｌｋに基づいて、部位ｋの長さｌｋΘを更新する。部位ｋの長さｌｋΘの更新は、以下の通り実現できる。
ｌｋΘ（ｊ）＝ｌｋΘ（ｊ−１）＋Δｌｋ
ステップＳ１０３６では、最適化部１２４は、ステップＳ１０３０で更新した根幹関節の位置ｃ０と、ステップＳ１０３２で更新した部位ｋの向きｅｋΘ（ｊ）と、ステップＳ１０３４で更新した部位ｋの長さｌｋΘ（ｊ）とに基づいて、部位ｋの位置ｃｋΘを更新する。尚、位置を更新する部位ｋは、根幹関節形成部位以外の部位である。尚、部位ｋの位置ｃｋ（ｊ）は、根幹関節の位置と部位ｋの向きｅｋΘ（ｊ）と部位ｋの長さｌｋΘ（ｊ）とに基づき、幾何的に定まる。
【０１２２】
図１０Ｂに示す処理によれば、部位ｋのうちの、根幹関節形成部位以外の部位の位置ｃｋΘについては、根幹関節の位置と関節回転と重心の回転とに基づいて更新される。また、各部位の向きｅｋΘは、重心の回転行列や根幹関節の回転行列に基づいて更新される。これにより、数１３乃至数１６の更新式に基づいて、部位ｋの位置ｃｋΘ及び向きｅｋΘを更新する場合よりも精度良く位置ｃｋΘを更新できる。
【０１２３】
図１１は、対象物認識装置１００により実行される処理の他の一例を示すフローチャートである。図１１に示す処理は、図１０Ａに示した処理に対して代替的に実行されてよい。
【０１２４】
図１１に示す処理は、図１０Ａに示した処理に対して、ステップＳ１０００が、ステップＳ１０００−１及びステップＳ１０００−２で置換され、かつ、ステップＳ１１００〜ステップＳ１１０８が追加された点が異なる。また、図１１に示す処理では、ステップＳ１０１８での判定結果が"ＹＥＳ"の場合、終了せずに、ステップＳ１１００に進む。
【０１２５】
ステップＳ１０００−１では、初期状態設定部１２２は、複数種類（図１１ではＮｓ種類）の対象物モデルに基づいて、それぞれ種類の初期状態を設定する。対象物モデルの初期状態の設定方法は上述のとおりである。複数種類の対象物モデルとは、円柱、円錐、台形柱、楕円柱、楕円錐、及び台形楕円柱に係る各幾何モデルの組み合わせ方が異なる対象物モデルを意味する。本実施例では、初期状態設定部１２２は、一例として、円柱に係る幾何モデルのみで形成する第１種類の対象物モデルと、円錐に係る幾何モデルのみで形成する第２種類の対象物モデルといった具合に、第１種類〜第６種類の計６種類の対象物モデルを用いる。
【０１２６】
ステップＳ１０００−２では、最適化部１２４は、ｊｊ＝１に設定し、１番目の種類（第１種類）に係る対象物モデルを選択する。ステップＳ１００１〜ステップＳ１０２０、及びステップＳ１１００は、ｊｊ番目の種類に係る対象物モデルに対して実行される。
【０１２７】
ステップＳ１１００では、最適化部１２４は、ｊｊ番目の種類に係る対象物モデルに関して、各部位の事後分布のデータ和を記憶する。図１２には、ある種類に係る対象物モデルに関する事後分布ｐｎｍの算出結果の一例が表図で示される。図１２では、マス内の数字は、事後分布ｐｎｍの値であり、縦は、ｎ（点群データｘｎの"ｎ"）を表し、横は、ｍ（部位ｍの"ｍ"）を表す。このように、事後分布ｐｎｍは、点群データｘｎの各点ごとの各部位ｍに対する値である。尚、横方向の数値を合計すると"１"になる。最適化部１２４は、縦方向の数値を合計することで、部位ごとの事後分布のデータ和を算出できる。
【０１２８】
ステップＳ１１０２では、最適化部１２４は、ｊｊ≧Ｎｓであるか否かを判定する。Ｎｓは、複数種類の対象物モデルの数（種類数）であり、本実施例では"６"である。判定結果が"ＹＥＳ"の場合は、ステップＳ１１０６に進み、それ以外の場合は、ステップＳ１０１４を介して、ステップＳ１００１に戻る。
【０１２９】
ステップＳ１１０４では、最適化部１２４は、ｊｊを"１"だけインクリメントし、ｊｊ番目の種類に係る対象物モデルを選択する。この場合、続くステップＳ１００１〜ステップＳ１０２０、及びステップＳ１１００は、同様に、ｊｊ番目の種類に係る対象物モデルに対して実行される。
【０１３０】
ステップＳ１１０６では、最適化部１２４は、ステップＳ１１００で記憶した各部位の事後分布のデータ和（対象物モデルの種類毎のデータ和）に基づいて、部位ごとにデータ和が最大となる対象物モデルの種類を選択する。例えば腰部について、最適化部１２４は、６種類の対象物モデルのうち、腰部に係る事後分布のデータ和が最大となる対象物モデルの種類を選択する。そして、最適化部１２４は、選択した対象物モデルの種類を形成する幾何モデル（円柱、円錐、台形柱、楕円柱、楕円錐、及び台形楕円柱に係る各幾何モデルのいずれか１つ）を、腰部に係る最適な種類の幾何モデルとして決定する。このようにして、最適化部１２４は、部位ごとにデータ和が最大となる対象物モデルの種類に基づいて、部位ごとに最適な種類の幾何モデルを探索する。
【０１３１】
ステップＳ１１０８では、出力部１２６は、ステップＳ１１０６で選択した種類の幾何モデルを、部位ごとに出力するとともに、ステップＳ１１０６で選択した種類の幾何モデルに基づき得られたフィッティング結果を出力する。フィッティング結果は、例えば、例えば位置ｃｋΘ及び向きｅｋΘのような骨格情報である。
【０１３２】
図１１に示す処理によれば、複数種類の対象物モデルに対するフィッティング結果に基づいて、部位ごとに、最適な種類の幾何モデルを特定できる。この結果、部位ごとに最適な種類の幾何モデルを有する対象物モデルを生成できる。
【０１３３】
尚、図１１に示す処理では、対象物モデルの種類ごとに、独立に処理されているが、あるシーンに係る最初の種類の対象物モデルに係る位置ｃｋΘ及び向きｅｋΘ等に基づいて、当該シーンに係る次の種類の対象物モデルの初期状態が設定されてもよい。即ち、ｊｊ≧２のときは、初期状態設定部１２２は、ｊｊ＝１のときの位置ｃｋΘ及び向きｅｋΘ等に基づいて、対象物モデルの初期状態を設定してもよい。また、対象物モデルを形成する幾何モデルの種類の最適化は、シーンごとに毎回実行される必要はなく、例えば、初回のシーンのみに対して実行され、続くシーンに対しては、最適化された対象物モデルが継続的に使用されてもよい。
【０１３４】
また、図１１に示す処理では、図５Ａに示す対象物モデルが用いられるが、候補として図５Ｂに示すような、異なる数の幾何モデルが使用されてもよい。即ち、複数種類の対象物モデルは、図５Ａに示す対象物モデルのみならず、図５Ｂに示すような幾何モデルをも含んでもよい。
【０１３５】
図１３は、フィッティング結果の説明図である。図１３では、フィッティング結果として、部位ごとに、幾何モデルの種類（最適な種類の幾何モデル）と、関節角度、長さｌ、及び太さｒとが対応付けられている。関節角度は、上述のように、位置ｃｋΘに関するパラメータであり、図１３では、前後及び左右のそれぞれについて値をもつ。なお、図１３では、部位"右鎖骨"は、隠れた部位であるが故に、幾何モデルの種類等は対応付けられていない（"斜線"はデータ無を意味する）。部位"腰"や"胴"には、楕円柱に係る幾何モデルが、最適な種類の幾何モデルとして対応付けられている。この場合、太さに関して、長軸の長さ及び短軸の長さのそれぞれについて値をもつ。尚、円柱に係る幾何モデルの場合は、太さに関して、半径の１つの値だけをもつ。
【０１３６】
図１４Ａ及び図１４Ｂは、フィッティング結果の説明図である。図１４Ａは、初期状態の対象物モデル１４００と点群データｘｎとの関係を模式的に示し、図１４Ｂは、最適な種類の幾何モデルの組み合わせからなる対象物モデルと点群データｘｎとの関係を模式的に示す。図１４Ｂでは、部位"腰"や"胴"には、楕円柱に係る幾何モデル（Ｍｄ１及びＭｄ２参照）が、最適な種類の幾何モデルとして対応付けられており、他の部位には、円柱に係る幾何モデルが、最適な種類の幾何モデルとして対応付けられている。
【０１３７】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
【０１３８】
例えば、上述した実施例において、初期状態設定部１２２は、データ入力部１２０に入力される点群データをクラスタリングして、クラスター毎にフィッティングを行って初期当てはめ結果を取得してもよい。この場合、初期状態設定部１２２は、初期あてはめ結果に基づいて、初期状態を設定してもよい。クラスタリング手法としては、Kmeans++法などを用いることができる。尚、クラスタリング部１２２に与えられるクラスター数は、手動による入力でもよいが、骨格モデルに応じた所定数が用いられてもよい。骨格モデルに応じた所定数は、例えば、骨格モデルに係る部位の総数から、隠れた骨格に係る部位の数を引いた値である。即ち、図４に示す16関節（15部位）モデルの場合、4部位が隠れた骨格となるため、最初のクラスター数である所定数は"11"である。
【０１３９】
また、上述した実施例において、初期状態設定部１２２は、機械学習部を用いて、初期状態を設定してもよい。この場合、機械学習部は、データ入力部１２０に入力される点群データに基づいて、15部位についてラベル分け（部位認識）を行う。機械学習方式としてランダムフォレストを用い、特徴量として注目画素と周辺画素の距離値の差が使用されてもよい。また、距離画像を入力として各画素のマルチクラス分類(Multi-class Classification)を行う方式であってもよい。また、ランダムフォレストの場合でも距離値の差以外の特徴量を使ってもよいし、特徴量に相当するパラメータも含めて学習を行う深層学習(Deep Learning)を用いてもよい。
【０１４０】
また、上述した実施例では、一例として、すべての関節が球関節のように3自由度持っているとしている。例えば、すべての関節が、肩や股関節のように、軸まわりの回転、縦振り、横振りが可能であると仮定している。しかしながら、実際には自由度が制限される関節もある。例えば肘は1自由度のみである。この点、軸対称に近い部位では可動軸を同定することは困難である。従って、本実施例では、一例として、可動軸を同定することを避け、ある固定ベクトルｎを用いて構成した軸まわりの回転をすべての関節について考慮している。但し、円柱や台形柱のような軸対称の幾何モデルでは、軸まわりの回転自由度は不定となるため除外されてもよい。具体的には、軸対称の幾何モデルでは、軸回りの自由度を除いた2自由度を有する。従って、軸対称の幾何モデルについては、Δθl０、ΔθlＸ、及びΔθlＸＸのうちの、軸まわりの関節回転Δθl０を除くΔθlＸ及びΔθlＸＸのみが計算されてもよい。これにより、計算負荷を効率的に低減できる。尚、実際の可動軸における回転角度を求めたい場合には、上述の回転行列により変換することで取得可能である。
【０１４１】
また、上述した実施例では、一例として、対象物モデルの全ての幾何モデルにつき、それぞれ、位置ｃｍ、方向ｅｍ、太さｒｍ、及び長さｌｍの４つのモデルパラメータをフィッティングにより最適化しているが、これに限られない。例えば、対象物モデルの一部の幾何モデルに対しては、位置ｃｍ、方向ｅｍ、太さｒｍ、及び長さｌｍの４つのモデルパラメータのうちの、３つ以下のモデルパラメータだけがフィッティングにより最適化されてもよい。また、例えば太さｒｍや長さｌｍについては、初回の１シーンで得られた最適解が、次回以降のシーンでそのまま利用されてもよい。これは、対象者Ｓの部位の太さや長さは、基本的に一定であるためである。
【符号の説明】
【０１４２】
１  対象物認識システム
７  表示装置
２１  距離画像センサ
１００  対象物認識装置
１２０  データ入力部
１２２  初期状態設定部
１２４  最適化部
１２６  出力部
１４０  幾何モデルデータベース
【図１】
2019030794.tif 000041
【図２】
2019030794.tif 000042
【図３】
2019030794.tif 000043
【図４】
2019030794.tif 000044
【図５Ａ】
2019030794.tif 000045
【図５Ｂ】
2019030794.tif 000046
【図６Ａ】
2019030794.tif 000047
【図６Ｂ】
2019030794.tif 000048
【図７】
2019030794.tif 000049
【図８Ａ】
2019030794.tif 000050
【図８Ｂ】
2019030794.tif 000051
【図９】
2019030794.tif 000052
【図１０Ａ】
2019030794.tif 000053
【図１０Ｂ】
2019030794.tif 000054
【図１１】
2019030794.tif 000055
【図１２】
2019030794.tif 000056
【図１３】
2019030794.tif 000057
【図１４Ａ】
2019030794.tif 000058
【図１４Ｂ】
2019030794.tif 000059
【手続補正書】
【提出日】令和2年2月14日(2020.2.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得する取得部と、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索する最適化処理部と、
前記最適解又は該最適解に基づく対象物情報を出力する出力部とを含む、情報処理装置。
【請求項２】
前記対象物モデルを変化させることは、複数の前記幾何モデルの種類を変化させることを含み、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれの最適な種類を、円柱、円錐、台形柱、楕円柱、楕円錐、及び台形楕円柱のうちの少なくともいずれか２つのうちから、探索することを含む、請求項１に記載の情報処理装置。
【請求項３】
前記最適解を探索することは、前記点群データに対する前記幾何モデルの当てはまり度合いの確率的な指標値を導出し、複数の前記部位のそれぞれごとに、前記指標値が最良の前記当てはまり度合いを表す種類の前記幾何モデルを、前記最適な種類として決定する、請求項２に記載の情報処理装置。
【請求項４】
前記指標値は、前記幾何モデルの表面に対する前記点群データの残差に関する、請求項３に記載の情報処理装置。
【請求項５】
前記対象物モデルを変化させることは、前記対象物モデルを変形させることを含み、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれについて、軸方向、該軸方向に垂直な方向の最適な長さ、及び該軸方向に沿った最適な長さのうちの少なくともいずれか１つを探索することを含む、請求項１〜４のうちのいずれか１項に記載の情報処理装置。
【請求項６】
前記対象物モデルを変化させることは、機構モデルを用いた順運動学に基づき前記対象物モデルを変形させることを含む、請求項１〜４のうちのいずれか１項に記載の情報処理装置。
【請求項７】
前記対象物モデルを変化させることは、複数の前記部位間の関節回転、複数の前記部位のうちの所定関節の並進、及び重心の回転を伴い、
前記最適解を探索することは、複数の前記幾何モデルのそれぞれについて、最適な位置、及び最適な向きを探索することを含む、請求項１〜４のうちのいずれか１項に記載の情報処理装置。
【請求項８】
前記対象物モデルを変化させることは、更に、複数の前記幾何モデルの少なくともいずれか１つについて、軸方向に沿った長さを変更することを含み、
前記最適解を探索することは、前記対象物モデルを変化させる際に、前記関節回転、前記所定関節の並進、及び前記重心の回転に対応する変形に応じて、複数の前記幾何モデルのそれぞれの向きを更新し、次いで、更新後の向きと変更後の長さに基づいて、複数の前記幾何モデルの位置を更新することを含む、請求項７に記載の情報処理装置。
【請求項９】
前記対象物は、人、又は、人型のロボットであり、
前記最適化処理部は、前記対象物モデルの初期状態から前記対象物モデルを変形させ、
前記対象物モデルの初期状態は、前記対象物モデルに係る重心が、前記点群データの重心に一致し、かつ、前記複数の幾何モデルのうちの、前記対象物の左右の腕部に対応付けられる幾何モデルが左右に開いた状態を含む、請求項１に記載の情報処理装置。
【請求項１０】
前記最適解を探索することは、複数の前記幾何モデルのそれぞれごとに、前記点群データに対する前記幾何モデルの当てはまり度合いの確率的な指標値を導出することを含み、
前記最適化処理部は、複数の前記幾何モデルのそれぞれごとの前記指標値の合計値が所定閾値以下である場合に、前記初期状態を再設定してから、前記最適解を再探索する、請求項９に記載の情報処理装置。
【請求項１１】
前記最適化処理部は、複数の前記幾何モデルの表面に対する前記点群データの残差を最小化する前記最適解を、尤度関数の期待値を最大化することで探索し、
前記尤度関数は、正則化項、及び、前記対象物モデルの左右の対称性に係る罰則項の少なくともいずれか一方を有する、請求項９又は１０に記載の情報処理装置。
【請求項１２】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得し、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索し、
前記最適解又は該最適解に基づく対象物情報を出力する、
処理をコンピュータに実行させる、モデルデータ作成プログラム。
【請求項１３】
３次元の位置情報を得るセンサから、関節を介して繋がる複数の部位を有する対象物の表面に係る点群データを取得し、
軸を有する複数の幾何モデルを用いて複数の前記部位を表現する対象物モデルと、前記点群データとに基づいて、前記対象物モデルを変化させながら、前記点群データに整合する前記対象物モデルに係る最適解を探索し、
前記最適解又は該最適解に基づく対象物情報を出力することを含む、コンピュータにより実行されるモデルデータ作成方法。
【国際調査報告】
2019030794.tif 000060
2019030794.tif 000061
2019030794.tif 000062
2019030794.tif 000063