(57)【要約】【課題】対象物の動作をより少ない情報から可視化することが可能な仕組みを提供する。【解決手段】対象物に関する動作パターンを示す動作モデルを取得する取得部と、前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、を備える情報処理装置。【選択図】図１
2017217050.tif 000002
【特許請求の範囲】
【請求項１】
対象物に関する動作パターンを示す動作モデルを取得する取得部と、
前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、
前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、
を備える情報処理装置。
【請求項２】
前記取得部は、前記対象物のコンテキストに対応する前記動作モデルを取得する、請求項１に記載の情報処理装置。
【請求項３】
前記取得部は、ユーザ操作に基づいて前記動作モデルを取得する、請求項２に記載の情報処理装置。
【請求項４】
前記取得部は、前記対象物の動作のうち特定された一部の動作に対応する前記動作モデルを取得する、請求項２に記載の情報処理装置。
【請求項５】
前記対象物は、ユーザを含み、
前記動作モデルは、第１の動作モデル及び第２の動作モデルを含み、
前記取得部は、前記ユーザに配置されたセンサ装置により測定されたセンサ情報により特定された前記ユーザの一部の動作に基づいて前記コンテキストを認識し、認識した前記コンテキストに応じて前記第１の動作モデル及び前記第２の動作モデルのうち一方を自動的に取得する、請求項３に記載の情報処理装置。
【請求項６】
前記出力情報は、前記対象物に対応する仮想物体が前記対象物の全体の動作に対応する動作を行う画像を含む、請求項１に記載の情報処理装置。
【請求項７】
前記対象物は、ユーザを含み、
前記出力情報は、前記ユーザに装着されたＶＲ（Virtual  Reality）機器により表示される、請求項６に記載の情報処理装置。
【請求項８】
前記対象物は、実物体であり、
前記計算部は、前記対象物に配置されたセンサ装置により測定されたセンサ情報に基づいて、前記センサ装置の位置情報の時系列変化を特定する、請求項１に記載の情報処理装置。
【請求項９】
前記計算部は、前記動作モデルが示す前記動作パターンに従った、前記ひとつ以上のセンサ装置の位置情報の時系列変化に対応する前記対象物の他の部位の位置情報の時系列変化を計算する、請求項８に記載の情報処理装置。
【請求項１０】
前記センサ装置は、予め定められた複数の関節のうちコンテキストに応じた関節に配置される、請求項８に記載の情報処理装置。
【請求項１１】
前記センサ装置は、前記コンテキストがゴルフクラブのスイング動作の場合、手及び膝の２カ所に配置される、請求項１０に記載の情報処理装置。
【請求項１２】
前記センサ装置は、慣性センサを含む、請求項８に記載の情報処理装置。
【請求項１３】
前記センサ装置は、前記対象物に前記センサ装置を固定するためのセンサ取付具に着脱可能に取り付けられる、請求項８に記載の情報処理装置。
【請求項１４】
前記対象物は、ユーザ及び前記ユーザに操作される物体を含む、請求項１に記載の情報処理装置。
【請求項１５】
前記計算部は、前記動作モデルを参照して、特定されたユーザの動作に基づいて前記ユーザに操作される物体の動作を計算する、請求項１４に記載の情報処理装置。
【請求項１６】
前記計算部は、ゴルフクラブのスイング動作に関する前記動作モデルを参照して、特定されたユーザのスイング動作に基づいて前記ユーザによりスイングされるゴルフクラブの動作を計算する、請求項１５に記載の情報処理装置。
【請求項１７】
前記対象物は、仮想物体であり、
前記計算部は、前記仮想物体へのユーザの操作情報に基づいて、前記仮想物体の一部の動作を特定する、請求項１に記載の情報処理装置。
【請求項１８】
前記対象物は、複数の関節を有する動物体を含み、
前記対象物の動作は、前記動物体の前記複数の関節の位置情報の時系列変化を含む、請求項１に記載の情報処理装置。
【請求項１９】
対象物に関する動作パターンを示す動作モデルを取得することと、
取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作をプロセッサにより計算することと、
計算された前記対象物の全体の動作を示す出力情報を出力することと、
を含む情報処理方法。
【請求項２０】
コンピュータを、
対象物に関する動作パターンを示す動作モデルを取得する取得部と、
前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、
前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、
として機能させるためのプログラムが記憶された記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及び記憶媒体に関する。
【背景技術】
【０００２】
近年、身体の動きを可視化（即ち、数値化）するための技術が盛んに開発されている。例えば、スポーツの分野においては、身体の至るところにセンサ装置を取り付けて、測定結果に基づいて身体の動きを可視化し、フォーム改善等に資するための技術が開発されている。【０００３】
例えば、下記特許文献１では、テニスにおけるサーブ及びスマッシュ等のモーションパターンの判定精度向上のために、ユーザ又はユーザが使用する用具に搭載されたセンサ装置からの出力データの解析区間を適切に設定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１０７１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１などで提案されている技術は、対象物の動作を可視化するための技術として十分であるとは言い難い。例えば、対象物の動作を可視化するために要される情報量の削減も、十分でない側面のひとつである。そこで、対象物の動作をより少ない情報から可視化することが可能な仕組みが提供されることが望ましい。
【課題を解決するための手段】
【０００６】
本開示によれば、対象物に関する動作パターンを示す動作モデルを取得する取得部と、前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、を備える情報処理装置が提供される。【０００７】
また、本開示によれば、対象物に関する動作パターンを示す動作モデルを取得することと、取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作をプロセッサにより計算することと、計算された前記対象物の全体の動作を示す出力情報を出力することと、
を含む情報処理方法が提供される。【０００８】
また、本開示によれば、コンピュータを、対象物に関する動作パターンを示す動作モデルを取得する取得部と、前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、として機能させるためのプログラムが記憶された記憶媒体が提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、対象物の動作をより少ない情報から可視化することが可能な仕組みが提供される。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係るシステムの概要を説明するための図である。
【図２】同実施形態に係るセンサ装置の構成の一例を示すブロック図である。
【図３】同実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図４】同実施形態に係るユーザ動作の可視化処理の一例を示す図である。
【図５】同実施形態に係るユーザ動作の可視化処理の一例を示す図である。
【図６】同実施形態に係るユーザ動作の可視化処理の一例を示す図である。
【図７】同実施形態に係る予測アルゴリズムの一例を説明するための図である。
【図８】同実施形態に係る次元圧縮された動作モデルの一例を示す図である。
【図９】同実施形態に係る予測アルゴリズムの一例を説明するための図である。
【図１０】同実施形態に係るＵＩの一例を説明するための図である。
【図１１】同実施形態に係る情報処理装置において実行される動作可視化処理の流れの一例を示すフローチャートである。
【図１２】第２の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図１３】同実施形態に係るＵＩの一例を示す図である。
【図１４】同実施形態に係る情報処理装置において実行される動作可視化処理の流れの一例を示すフローチャートである。
【図１５】各実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１２】
また、本明細書及び図面において、実質的に同一の機能構成を有する要素を、同一の符号の後に異なるアルファベットを付して区別する場合もある。例えば、実質的に同一の機能構成を有する複数の要素を、必要に応じてセンサ装置１０Ａ、１０Ｂ及び１０Ｃのように区別する。ただし、実質的に同一の機能構成を有する複数の要素の各々を特に区別する必要がない場合、同一符号のみを付する。例えば、センサ装置１０Ａ、１０Ｂ及び１０Ｃを特に区別する必要が無い場合には、単にセンサ装置１０と称する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．第１の実施形態
１．１．システムの概要
１．２．センサ装置の構成例
１．３．情報処理装置の構成例
１．４．技術的特徴
１．５．処理の流れ
２．第２の実施形態
２．１．情報処理装置の構成例
２．２．技術的特徴
２．３．処理の流れ
３．ハードウェア構成例
４．まとめ
【００１４】
＜＜１．第１の実施形態＞＞
本実施形態は、実物体の動作を可視化する形態である。
【００１５】
＜１．１．システムの概要＞
図１は、本実施形態に係るシステム１の概要を説明するための図である。図１に示すように、システム１は、センサ装着用装備２０に取り付けられた複数のセンサ装置１０（即ち、１０Ａ〜１０Ｃ）を含む。
【００１６】
センサ装置１０は、各種データを測定する装置である。センサ装置１０は、センサ装着用装備２０が有するセンサ取付具２１に取り付けられ、対象物の動きを対象とした測定を行う。対象物は、人間、犬、猫その他の生物であってもよいし、ロボット等の無生物であってもよい。図１に示した例では、対象物はユーザ（即ち、人間）である。また、対象物は、生物により使用される物体であってもよい。例えば、対象物は、ゴルフクラブやテニスラケット、ボール、スキー板、スキーブーツ、ゴール、バット等の競技のために使用される道具であってもよい。また、対象物は、義手や車椅子等の生活のために使用される道具であってもよい。また、対象物は、首輪や馬蹄等の動物に使用される装具であってもよい。
【００１７】
センサ装置１０は、測定結果を示す情報（以下、センサ情報とも称する）を、情報処理装置３０に送信する。この送信は、測定と並行してリアルタイムに行われてもよいし、記憶されて測定後の任意のタイミングで行われてもよい。
【００１８】
センサ装着用装備２０は、対象物にセンサ装置１０を固定するための装備である。図１に示すように、センサ装着用装備２０は、センサ装置１０を着脱可能に取り付けるための取り付け位置（センサ取付具２１）をひとつ以上備え、その一部又は全部にセンサ装置１０を取り付け可能である。センサ装着用装備２０は、ユーザの体幹や手足等の一部又は全部を覆う形状であってもよく、その場合はユーザの動きを妨げないために伸縮可能な素材により形成されることが望ましい。また、取り付けられたセンサ装置１０が対象物と離隔していてもよく、センサ装着用装備２０は、例えばヘルメットやプロテクター等のような厚みを持っていてもよい。他にも、センサ装着用装備２０は、ゴルフクラブやテニスラケット、スキー板等の物体に装着され、又は物体と一体的に形成されてもよい。ユーザは、測定したい部位に位置するセンサ取付具２１に、センサ装置１０を取り付けることができる。
【００１９】
情報処理装置３０は、センサ装置１０からセンサ情報を取得して、対象物の動作を可視化するための各種処理を行う。
【００２０】
＜１．２．センサ装置の構成例＞
図２は、本実施形態に係るセンサ装置１０の構成の一例を示すブロック図である。図２に示すように、本実施形態に係るセンサ装置１０は、慣性センサ１１０、通信部１２０、記憶部１３０及び制御部１４０を含む。
【００２１】
（１）慣性センサ１１０
慣性センサ１１０は、慣性を利用して測定を行う装置である。慣性センサ１１０は、加速度センサ、ジャイロセンサ、及び地磁気センサ等を含み、測定したセンサ情報（例えば、加速度及び角速度）を制御部１４０へ出力する。
【００２２】
（２）通信部１２０
通信部１２０は、有線／無線により情報処理装置３０との間でデータの送受信を行うための通信モジュールである。通信部１２０は、例えばＬＡＮ（Local  Area  Network）、無線ＬＡＮ、Ｗｉ−Ｆｉ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又は赤外線通信等の任意の通信方式に準拠した通信を行い得る。通信部１２０は、慣性センサ１１０により測定されたセンサ情報を、情報処理装置３０に送信する。
【００２３】
（３）記憶部１３０
記憶部１３０は、センサ装置１０の動作のためのプログラム及び様々なデータを一時的に又は恒久的に記憶する。例えば、記憶部１３０は、慣性センサ１１０により測定された情報を一時的に記憶する。
【００２４】
（４）制御部１４０
制御部１４０は、ＣＰＵ（Central  Processing  Unit）又はＤＳＰ（Digital  Signal  Processor）などに相当し、センサ装置１０の様々な機能を提供するための処理を行う。センサ装置１０は、制御部１４０による制御に基づき動作する。制御部１４０による制御に基づくセンサ装置１０の動作については、後に詳しく説明する。
【００２５】
＜１．３．情報処理装置の構成例＞
図３は、本実施形態に係る情報処理装置３０の構成の一例を示すブロック図である。図３に示すように、本実施形態に係る情報処理装置３０は、通信部３１０、入力部３２０、出力部３３０、記憶部３４０及び制御部３５０を含む。
【００２６】
（１）通信部３１０
通信部３１０は、有線／無線によりセンサ装置１０との間でデータの送受信を行うための通信モジュールである。通信部３１０は、例えばＬＡＮ、無線ＬＡＮ、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ又は赤外線通信等の任意の通信方式に準拠した通信を行い得る。通信部３１０は、センサ装置１０からセンサ情報を受信する。
【００２７】
（２）入力部３２０
入力部３２０は、情報の入力を受け付ける。例えば、入力部３２０は、ユーザからの情報の入力を受け付ける。入力部３２０は、入力された情報を制御部３５０に出力する。
【００２８】
（３）出力部３３０
出力部３３０は、情報の出力を行う。例えば、出力部３３０は、画像、音声、及び／又は振動等により情報を出力する。出力部３３０は、制御部３５０による制御に基づいて情報を出力する。
【００２９】
（４）記憶部３４０
記憶部３４０は、情報処理装置３０の動作のためのプログラム及び様々なデータを一時的に又は恒久的に記憶する。例えば、記憶部３４０は、後述する動作モデルを記憶する。
【００３０】
（５）制御部３５０
制御部３５０は、ＣＰＵ又はＤＳＰなどに相当し、情報処理装置３０の様々な機能を提供するための処理を行う。制御部３５０は、図３に開示された機能ユニットを実行可能に構成された少なくとも１つの電気回路としてみなされてよい。図３に示すように、制御部３５０は、モデル学習部３５１、モデル取得部３５２、第１の位置情報計算部３５３、第２の位置情報計算部３５４及び出力制御部３５５を含む。なお、制御部３５０は、これらの構成要素以外の他の構成要素をさらに含み得る。即ち、制御部３５０は、これらの構成要素の動作以外の動作も行い得る。これらの構成要素の動作については、後に詳しく説明する。
【００３１】
＜１．４．技術的特徴＞
（１）対象物
本実施形態では、対象物は実物体である。また、本実施形態における位置情報とは、実空間における三次元座標（即ち、Ｘ座標、Ｙ座標及びＺ座標）である。
【００３２】
例えば、対象物は、ひとつ以上の動物体を含む。即ち、対象物は単数であってもよいし複数であってもよい。例えば人間及び人間に操作される物体（例えば、道具）が対象物になり得る。対象物の動作は、対象物の姿勢の時系列変化によって表現される。
【００３３】
例えば、対象物は、複数の関節を有する動物体を含んでいてもよい。このような対象物としては、人間、及びロボット等が挙げられる。そして、対象物の動作は、動物体の複数の関節の位置情報の時系列変化を含んでいてもよい。即ち、情報処理装置３０は、関節の位置関係が変化する複雑な動作を可視化することが可能である。
【００３４】
本実施形態では、可視化される対象物は人間であるものとする。対象物である人間を、以下ではユーザとも称する。
【００３５】
センサ装置１０は、対象物の任意の部位に配置される。例えば、センサ装置１０は、ユーザの関節に配置されてもよい。その場合、センサ取付具２１は、ユーザの関節に配置される。センサ装置１０が配置される部位、例えば、センサ装置１０が取り付けられるセンサ取付具２１の位置を、第１のポイントとも称する。他方、センサ装置１０が配置されない部位、例えばセンサ装置１０が取り付けられないセンサ取付具２１の位置を、第２のポイントとも称する。
【００３６】
情報処理装置３０の操作者とユーザとは、同一人物であってもよいし、異なる人物であってもよい。以下では、一例として同一人物であるものとして説明する。
【００３７】
（２）センサ情報に基づく位置情報の計算
情報処理装置３０（例えば、第１の位置情報計算部３５３）は、対象物に配置されたひとつ以上のセンサ装置１０により測定されたセンサ情報に基づいて、当該ひとつ以上のセンサ装置１０の位置情報の時系列変化を特定する。より簡易には、情報処理装置３０は、センサ情報に基づいて第１のポイントの位置情報を計算する。例えば、情報処理装置３０は、慣性航法（ＩＮＳ：Inertial  Navigation  System）を用いて、センサ装置１０から取得したセンサ情報から第１のポイントの位置情報を計算する。
【００３８】
慣性航法は、角速度及び加速度を複数回積分することでセンサ位置を計算する技術であり、例えば船舶又は航空機等に採用される。慣性航法では、まず角速度を積分（１回目の積分）することで、センサ装置の姿勢（即ち、実空間における姿勢角度）が計算される。次いで、加速度を積分（２回目の積分）することで、センサ装置の速度（speed）が計算される。次に、速度を積分（３回目の積分）することで、センサ装置の移動距離が計算される。そして、移動距離と姿勢（即ち、移動方向）のベクトルを細分点ごとに合成していくことにより、初期位置を起点とした相対的な位置情報が計算される。初期位置が既知であれば、上記計算によりセンサ装置の絶対的な位置情報（即ち、実空間における三次元座標）を計算することができる。
【００３９】
例えば、ユーザがアイアンと呼ばれるゴルフクラブをスイングする様子を測定する例を想定する。一例として、首、腰、右膝、右足、左膝、左足、手及びアイアンのクラブヘッドにセンサ装置１０が取り付けられているものとする。この場合、情報処理装置３０は、各センサ装置１０の位置情報を計算することで、ユーザがアイアンをスイングする動作を可視化することが可能である。この可視化の例を、図４を参照して説明する。
【００４０】
図４は、本実施形態に係るユーザ動作の可視化処理の一例を示す図である。姿勢４０Ａ〜４０Ｆは、アイアンをスイングするユーザの各タイミングにおける姿勢（即ち、各センサ装置１０の位置情報）を示しており、姿勢４０Ａから姿勢４０Ｆへ順に時間が流れる。姿勢４０Ａは、アイアンを構えたタイミングの姿勢を示している。姿勢４０Ｂは、バックスイングのタイミングの姿勢を示している。姿勢４０Ｃは、バックスイングがトップに到達したタイミングの姿勢を示している。姿勢４０Ｄは、ダウンスィングのタイミングの姿勢を示している。姿勢４０Ｅは、フォロースルーのタイミングの姿勢を示している。姿勢４０Ｆは、フィニッシュのタイミングの姿勢を示している。各姿勢における各プロット４１は、センサ装置１０が取り付けられた位置を示している。プロット４１Ａは首に対応し、プロット４１Ｂは腰に対応し、プロット４１Ｃは右膝に対応し、プロット４１Ｄは右足に対応し、プロット４１Ｅは左膝に対応し、プロット４１Ｆは左足に対応し、プロット４１Ｇは手に対応し、プロット４１Ｈはアイアンのクラブヘッドに対応する。
【００４１】
情報処理装置３０は、慣性航法以外にも任意のアルゴリズムを用いて第１のポイントの位置情報を計算し得る。例えば、情報処理装置３０は、ユーザの一部の関節に設けられたマーカーの撮像画像を用いた光学式のモーションキャプチャー技術により、マーカーが付された関節の位置情報を計算してもよい。
【００４２】
（３）動作モデル
動作モデルは、対象物に関連するモデル化物体の動作パターンを示す情報である。
【００４３】
モデル化物体は、センサ装置１０が取り付けられる物体である。対象物とモデル化物体とは同一であってもよいし、異なっていてもよい。例えば、ユーザと、モデル化物体としてモデリングされた人とは、同一人物であってもよいし、異なる人物であってもよい。
【００４４】
動作モデルは、コンテキストに応じて異なり、コンテキストごとに記憶部３４０に記憶される。即ち、動作モデルは、第１のコンテキストに応じた第１の動作モデル及び第２のコンテキストに応じた第２の動作モデル等、コンテキストに応じた動作モデルを複数含み得る。動作モデルは、モデル化物体があるコンテキストにおいて動作する場合の、モデル化物体の各部位の位置情報の時系列変化を示す情報である。一例として、アイアンのスイング動作に関する動作モデルについて説明する。この場合、動作モデルは、例えば首、腰、右膝、右足、左膝、左足、手及びアイアンのクラブヘッドの各部位の位置情報の時系列変化を示す情報を含む。ここで、動作モデルに含まれる位置情報に対応する各部位は、センサ装置１０が配置される部位（即ち、センサ取付具２１が配置される位置）に対応する。
【００４５】
コンテキストは多様に考えられる。例えば、コンテキストは、モデル化物体の種別、モデル化物体が行う動作の種別、モデル化物体の属性情報及び状態を示す情報を含み得る。具体的には、例えば、モデル化物体が人である場合、コンテキストは、歩行、走行、ゴルフ及びテニス等の動作の種別、性別、年齢、身長及び体重等の属性情報、並びに健康状態及び動作のくせ等を示す情報等を含み得る。
【００４６】
例えば、動作モデルは、回帰モデルとして表現され得る。また、動作モデルは、多次元の情報を次元圧縮された形式で表現されてもよい。
【００４７】
また、情報処理装置３０（モデル学習部３５１）は、動作モデルを学習してもよい。例えば、アイアンのスイング動作に関しては、情報処理装置３０は、全てのセンサ取付具２１及びアイアンのクラブヘッドにセンサ装置１０を取り付けた状態でユーザがスイング動作を行った場合の、センサ情報に基づく位置情報の計算に基づいて動作モデルを生成する。
【００４８】
（４）動作モデルの選択
情報処理装置３０（例えば、モデル取得部３５２）は、対象物に関する少なくとも１つの動作モデルを取得する。詳しくは、情報処理装置３０は、記憶部３４０に記憶された動作モデルの中から、対象物のコンテキストに対応する動作モデルを取得する。例えば、アイアンのスイング動作に関しては、情報処理装置３０は、モデル化物体が人であり、動作の種別がゴルフである動作モデルを取得する。
【００４９】
例えば、情報処理装置３０は、ユーザ操作に基づいて動作モデルを取得してもよい。例えば、ユーザのコンテキストがユーザ自身により情報処理装置３０に入力され、入力されたコンテキストに応じた動作モデルが選択される。この場合、ユーザに指定されたコンテキストに対応する動作モデルを、正しく参照することが可能となる。なお、ユーザ操作とは、意図的に行われた操作（例えば、手動操作）と無意識に行われた操作（例えば、動作の画像認識）との双方が含まれる。
【００５０】
例えば、情報処理装置３０は、対象物の動作のうち特定された一部の動作に対応する動作モデルを取得してもよい。そのために、まず、情報処理装置３０は、ユーザに配置されたセンサ装置１０により測定されたセンサ情報により特定されたユーザの一部の動作に基づいてコンテキストを認識する。即ち、情報処理装置３０は、計算された第１のポイントの位置情報の時系列変化に基づいてユーザのコンテキストを認識する。次いで、情報処理装置３０は、認識したコンテキストに応じた動作モデルを記憶部３４０から自動的に取得する。例えば、情報処理装置３０は、認識したコンテキストに応じて、第１の動作モデル及び第２の動作モデルのうち一方を自動的に取得する。この場合、情報処理装置３０は、コンテテキスト入力の負担を軽減することが可能となる。
【００５１】
なお、情報処理装置３０は、第１の動作モデル及び第２の動作モデルの各々を、異なるタイミングで取得してもよい。その場合、情報処理装置３０は、ユーザのコンテキストの変化に応じて、参照する動作モデルを変化させることが可能である。また、情報処理装置３０は、第１の動作モデル及び第２の動作モデルを、同時に取得してもよい。その場合、情報処理装置３０は、複数の動作モデルを組み合わせて対象物の動作を計算することが可能となる。
【００５２】
（５）動作モデルに基づく位置情報の計算
情報処理装置３０（例えば、第２の位置情報計算部３５４）は、取得された動作モデルを参照して、対象物の動作のうち特定された一部の動作を含む全体の動作を計算する。情報処理装置３０は、対象物の動作の一部のみが特定される場合であっても全体の動作を計算可能であるので、対象物の動作をより少ない情報から可視化することが可能である。なお、第１のポイントが増加するほど、可視化の精度は向上する。
【００５３】
より詳しくは、情報処理装置３０は、動作モデルが示す動作パターンに従った、ひとつ以上のセンサ装置の位置情報の時系列変化に対応する対象物の他の部位の位置情報の時系列変化を計算する。即ち、情報処理装置３０は、動作モデルが示す動作パターンに従った、第１のポイントの位置情報の時系列変化に対応する第２のポイントの位置情報の時系列変化を計算する。これにより、情報処理装置３０は、第１のポイントの位置情報及び第２のポイントの位置情報の時系列変化から成る、ユーザの全体の動作を計算することが可能となる。なお、第２のポイントの位置情報を計算することを、以下では予測するとも称する。
【００５４】
例えば、情報処理装置３０は、動作モデルを参照して、ユーザの動作のうち特定された一部の動作に基づいて全体の動作を計算してもよい。対象物は複数物体であってもよく、情報処理装置３０は、動作モデルを参照して、特定されたユーザの一部又は全部の動作に基づいて、ユーザに操作される物体の動作を計算してもよい。例えば、情報処理装置３０は、ゴルフクラブのスイング動作に関する動作モデルを参照して、特定されたユーザのスイング動作に基づいてユーザによりスイングされるゴルフクラブの動作を計算する。これにより、ゴルフクラブにセンサ装置１０が取り付けられていなくても、ゴルフクラブの軌道を計算することが可能となる。
【００５５】
以下では、図４に示した例と同様に、ユーザがアイアンをスイングする様子を測定する例を想定する。ただし、図４に示した例とは異なり、右膝と手にのみセンサ装置１０が取り付けられているものとする。この可視化の例を、図５及び図６を参照して説明する。
【００５６】
図５は、本実施形態に係るユーザ動作の可視化処理の一例を示す図である。まず、情報処理装置３０（例えば、第１の位置情報計算部３５３）は、センサ装置１０が取り付けられた第１のポイント（即ち、右膝及び手）の位置情報を計算する。姿勢４２は、バックスイングのタイミングにおける、測定されたユーザの姿勢の一部を示しており、プロット４３Ｃは右膝に対応し、プロット４３Ｇは手に対応する。次いで、情報処理装置３０（例えば、モデル取得部３５２）は、ユーザのコンテキストに対応する動作モデルとして、歩行の動作モデル４４Ａ、ゴルフの動作モデル４４Ｂ及びテニスの動作モデル４４Ｃの中から、ゴルフの動作モデル４４Ｂを選択する。そして、情報処理装置３０（例えば、第２の位置情報計算部３５４）は、ゴルフの動作モデル４４Ｂを参照して、第１のポイントの位置情報から、第２のポイント（即ち、首、腰、右足、左膝、左足及びアイアンのクラブヘッド）の位置情報を予測する。姿勢４５は、バックスイングのタイミングにおける測定されたユーザの姿勢の一部に、その他の姿勢の予測結果を加えたものを示している。プロット４３Ａは首であり、プロット４３Ｂは腰であり、プロット４３Ｄは右足であり、プロット４３Ｅは左膝であり、プロット４３Ｆは左足であり、プロット４３Ｈはアイアンのクラブヘッドである。
【００５７】
情報処理装置３０は、上述した予測処理をスイングの各タイミングにおいて行うことで、図６に示すように、ユーザがアイアンをスイングする動作全体を可視化することが可能である。
【００５８】
図６は、本実施形態に係るユーザ動作の可視化処理の一例を示す図である。姿勢４６Ａ〜４６Ｆは、スイング動作を行うユーザの各タイミングにおける、センサ装置１０の位置（プロット４３Ｃ及び４３Ｇ）、及びその他の部位の位置の予測結果（プロット４３Ａ、４３Ｂ、４３Ｄ、４３Ｅ、４３Ｆ、及び４３Ｈ）を示している。姿勢４６Ａから姿勢４６Ｆへ順に時間が流れ、姿勢４６Ａから姿勢４６Ｆまでの各タイミングは、図４における姿勢４０Ａから姿勢４０Ｆまでの各タイミングと同様である。また、図５に示した姿勢４５は、図６における姿勢４６Ｂに相当する。
【００５９】
このように、情報処理装置３０は、センサ装置１０の位置情報からセンサ装置１０が取り付けられていない部位の位置情報を予測して、ユーザのスイング動作全体を可視化することが可能である。
【００６０】
ここで、センサ装置１０は、予め定められた複数の関節のうち、コンテキストに応じた関節に配置されることが望ましい。コンテキストによって、予測精度を担保可能な配置位置が異なり得るためである。より詳しくは、後述するように、各コンテキストにおける主成分結果が示す因子負荷量が多い因子に対応する関節に配置されることが望ましい。例えば、センサ装置１０は、コンテキストがゴルフクラブのスイング動作である場合、手及び膝（右利きの場合は右膝）の２カ所に配置されることが望ましい。これにより、スイング動作をより少ない数のセンサ装置１０で予測することが可能となる。
【００６１】
（６）予測アルゴリズム
第２のポイントの位置情報の予測アルゴリズムは、多様に考えられる。
【００６２】
・線形回帰
例えば、情報処理装置３０（例えば、第２の位置情報計算部３５４）は、線形回帰モデルを用いて、第１のポイントの位置情報を入力として、第２のポイントの位置情報を予測してもよい。この場合、動作モデルは、線形回帰モデルである。
【００６３】
図７は、本実施形態に係る予測アルゴリズムの一例を説明するための図である。図７では、右膝及び手の位置情報を回帰モデルに入力した場合に得られる、アイアン、左膝、左足、右足、首、及び腰の位置情報の時系列変化が表されている。図７に示した各グラフの横軸は時間であり、縦軸はＸ座標、Ｙ座標又はＺ座標である。また、各グラフにおける破線は学習時の位置情報の時系列変化を示し、実線は予測時の位置情報の時系列変化を示している。
【００６４】
なお、線形回帰モデルが確率モデルとして構築される場合、情報処理装置３０は、ベイズ推定により第２のポイントの位置情報を予測してもよい。線形回帰の手法は、ベイズ推定に限定されず、種々のモデルが用いられ得る。
【００６５】
・次元圧縮
例えば、情報処理装置３０（例えば、第２の位置情報計算部３５４）は、次元圧縮された動作モデルを用いて、第２のポイントの位置情報を予測してもよい。
【００６６】
例えば、上記説明したアイアンのスイング動作は、首、腰、右膝、右足、左膝、左足、手及びアイアンのクラブヘッドの８部位ごとのＸ座標、Ｙ座標及びＺ座標の３つの情報、即ち計２４次元の情報により表現される。次元圧縮された動作モデルは、この２４次元の情報を、２４未満の次元数の情報として表現する。次元圧縮には、例えば主成分分析（ＰＣＡ：Principal  Component  Analysis）が用いられ得る。
【００６７】
人の姿勢には強い高速条件があるため、多自由度の姿勢パラメータ（即ち、各関節の位置情報）により表現される多次元の空間を、より低次元の空間で表現可能なことが一般的に知られている。低次元の空間で人の姿勢を扱うことは、骨格モデルを潜在的に考慮していることに等しいと言える。
【００６８】
以下、図８を参照して、次元圧縮された動作モデルの一例を説明する。
【００６９】
図８は、本実施形態に係る次元圧縮された動作モデルの一例を示す図である。図８では、アイアンのクラブヘッド以外の７部位に関する２１次元の情報を、第１主成分（ＰＣ１）、第２主成分（ＰＣ２）及び第３主成分（ＰＣ３）の３次元に圧縮した動作モデルの一例が示されている。アイアンのクラブヘッドを除外したのは、予測精度の向上のためである。次元圧縮された動作モデルの空間における各プロットは、人のゴルフスイング時の各タイミングにおける姿勢に対応する。例えば、プロット５０Ａ〜５０Ｆは、それぞれ姿勢５１Ａ〜５１Ｆに対応する。
【００７０】
続いて、図９を参照して、次元圧縮された動作モデルを用いた予測アルゴリズムを説明する。
【００７１】
図９は、本実施形態に係る予測アルゴリズムの一例を説明するための図である。図９に示すように、情報処理装置３０は、第１のポイント（右膝及び手）の位置情報を計算する。次いで、情報処理装置３０は、第１のポイントの位置情報を再現する圧縮空間上の点を最急降下法により探索し（符号５２）、探索した１点からＰＣＡ逆写像により第１のポイント及び第２のポイントの位置情報を計算する（符号５３）。情報処理装置３０は、探索前後の第１のポイントの位置情報の差分が閾値を下回るまで、これらの計算を繰り返し行う（符号５４）。その後、情報処理装置３０は、第１のポイント及び第２のポイントの位置情報に基づいて、アイアンのクラブヘッドの位置情報を線形回帰により予測する（符号５５）。
【００７２】
情報処理装置３０は、上述した予測処理をスイングの各タイミングにおいて行うことで、図６に示したような、ユーザがアイアンをスイングする動作全体を可視化することが可能である。
【００７３】
なお、情報処理装置３０は、ＰＣＡの代わりの次元圧縮法として、例えばＧＰＬＶＭ（Gaussian  Process  Latent  Variable  Models）を用いてもよい。ＧＰＬＶＭは、非線形の圧縮手法であり、学習及び予測のコストはＰＣＡよりも高いが、より複雑な動作を予測することに適している。
【００７４】
（７）情報出力
情報処理装置３０（例えば、出力制御部３５５）は、計算された対象物の全体の動作を示す出力情報を出力する。この情報出力は、ユーザの動作と並行してリアルタイムに行われてもよいし、測定後の任意のタイミングで行われてもよい。
【００７５】
例えば、出力情報は、対象物に対応する仮想物体が対象物の全体の動作に対応する動作を行う画像（動画像又は静止画像）であってもよい。例えば、出力情報は、図６に示したような、ユーザの各ポイントの位置情報の時系列変化を示す画像であってもよい。他にも、出力情報は、ユーザに対応するアバターが、ユーザの動作に対応する動作を行う画像であってもよい。この場合のＵＩ（User  Interface）例を、図１０を参照して説明する。
【００７６】
図１０は、本実施形態に係るＵＩの一例を説明するための図である。図１０に示すように、ユーザは、センサ装置１０Ａ及び１０Ｂを含むゲーム用のコントローラ６０を持ち、ＶＲ（Virtual  Reality）機器６１を装着している。ユーザは、コントローラ６０の位置又は姿勢を変化させることで、ＶＲ機器６１に表示されるアバターを操作する。具体的には、センサ装置１０Ａ及び１０Ｂの位置情報の計算結果に基づいてユーザの姿勢全体が計算され、全体の姿勢の計算結果が、アバターの動きに反映される。例えば、図１０に示すように、ユーザがコントローラ６０を頭上に掲げてから振り下ろすと、ＶＲ機器６１には、アバターが剣を頭上に掲げた画像６２Ａ及び剣を振り下ろす画像６２Ｂが表示される。ここで、ユーザの足にはセンサ装置１０が配置されていないのにも関わらず、上記予測処理により、足の動きをアバターで再現することが可能である。
【００７７】
他にも、出力情報は、センサ装置１０の取り付け位置に関する指示であってもよい。例えば、情報処理装置３０は、ＰＣＡの分析結果に基づいて、最適なセンサ装置１０の取り付け位置を指示する情報を出力してもよい。下記の表１に、アイアンのスイング動作における各主成分の寄与率及び因子負荷量の一例を示す。
【００７８】
【表１】
2017217050.tif 000003
【００７９】
上記表１に示すように、第１主成分の寄与率は６５．８％であり、第１主成分と第２主成分の累積寄与率は９４％であり、第１〜第３主成分の累積寄与率は９９％である。また、上記表１では、各主成分の因子負荷量が多い順に因子が列挙されている。第１〜第３主成分における因子負荷量の和が多い因子に対応する部位にセンサ装置１０が取り付けられると、スイング動作をより少ない数のセンサ装置１０で予測することが可能となる。例えば、上記表１によれば、センサ装置１０が２つである場合、手と右膝にセンサ装置１０が取り付けられることが望ましい。そこで、情報処理装置３０は、スイング動作を行うユーザに対して、手と右膝にセンサ装置１０を取り付けることを指示する情報を出力する。
【００８０】
＜１．５．処理の流れ＞
続いて、図１１を参照して、本実施形態に係る情報処理装置３０において実行される動作可視化処理の流れの一例を説明する。図１１は、本実施形態に係る情報処理装置３０において実行される動作可視化処理の流れの一例を示すフローチャートである。
【００８１】
図１１に示すように、まず、情報処理装置３０は、コンテキストに対応する動作モデルを取得する（ステップＳ１０２）。例えば、情報処理装置３０は、ユーザ操作に基づいて、又は対象物の動作のうち特定された一部の動作に対応する、動作モデルを取得する。次いで、情報処理装置３０は、センサ装置１０により測定され送信されたセンサ情報を取得する（ステップＳ１０４）。次いで、情報処理装置３０は、センサ情報に基づいて第１のポイントの位置情報を計算する（ステップＳ１０６）。そして、情報処理装置３０は、第１のポイントの位置情報及び動作モデルに基づいて、第２のポイントの位置情報を計算する（ステップＳ１０８）。次に、情報処理装置３０は、出力情報を生成する（ステップＳ１１０）。例えば、情報処理装置３０は、第１のポイントの位置情報及び第２のポイントの位置情報に基づいて画像を生成したり、ＰＣＡの分析結果に基づいて最適なセンサ装置１０の取り付け位置を指示する情報を生成したりする。次いで、情報処理装置３０は、生成した出力情報を出力する（ステップＳ１１２）。
【００８２】
以上により、処理は終了する。
【００８３】
＜＜２．第２の実施形態＞＞
本実施形態は、仮想物体の動作を可視化する形態である。
【００８４】
本実施形態に係るシステム１は、情報処理装置３０を含む。以下、図１２を参照して、本実施形態に係る情報処理装置３０の構成例を説明する。
【００８５】
＜２．１．情報処理装置の構成例＞
図１２は、本実施形態に係る情報処理装置３０の構成の一例を示すブロック図である。図１２に示すように、本実施形態に係る情報処理装置３０は、入力部３２０、出力部３３０、記憶部３４０及び制御部３５０を含む。なお、入力部３２０、出力部３３０、及び記憶部３４０の機能は、第１の実施形態と同様であるため、ここでの説明は省略する。
【００８６】
制御部３５０は、ＣＰＵ又はＤＳＰなどに相当し、情報処理装置３０の様々な機能を提供するための処理を行う。制御部３５０は、図１２に開示された機能ユニットを実行可能に構成された少なくとも１つの電気回路としてみなされてよい。図１２に示すように、制御部３５０は、モデル取得部３５２、第１の位置情報計算部３５３、第２の位置情報計算部３５４、キーフレーム登録部３５６及び補完部３５７を含む。なお、制御部３５０は、これらの構成要素以外の他の構成要素をさらに含み得る。即ち、制御部３５０は、これらの構成要素の動作以外の動作も行い得る。これらの構成要素の動作については、後に詳しく説明する。
【００８７】
＜２．２．技術的特徴＞
（１）対象物
本実施形態では、対象物は仮想物体である。また、本実施形態における位置情報とは、仮想空間における三次元座標である。
【００８８】
例えば、対象物は、ひとつ以上の仮想的な動物体を含んでいてよい。
【００８９】
例えば、対象物は、複数の関節を有する仮想的な動物体を含んでいてもよい。そして、対象物の動作は、仮想的な動物体の複数の関節の位置情報の時系列変化を含んでいてもよい。
【００９０】
本実施形態では、可視化される対象物は仮想的な人間のアバターであるものとする。
【００９１】
情報処理装置３０の操作者を、以下ではユーザとも称する。
【００９２】
本実施形態では、仮想物体の各部位のうちユーザ操作がされた部位を第１のポイントとも称する。また、仮想物体の各部位のうち、ユーザ操作がされない部位を第２のポイントとも称する。
【００９３】
（２）ユーザ操作に基づく位置情報の計算
情報処理装置３０（例えば、第１の位置情報計算部３５３）は、仮想物体へのユーザの操作情報に基づいて、仮想物体の一部の動作を特定する。具体的には、情報処理装置３０は、仮想物体の一部分の動作を指示するユーザ操作を示す操作情報に基づいて第１のポイントの位置情報を計算する。例えば、情報処理装置３０は、アバターのひとつの関節をドラッグで移動させる操作を受け付けて、ドラッグ量及びドラッグ方向に基づいて移動後の当該関節の位置情報を計算する。
【００９４】
（３）動作モデルに基づく位置情報の計算
情報処理装置３０（例えば、第２の位置情報計算部３５４）は、動作モデルが示す動作パターンに従った、ひとつ以上の操作対象の部位の位置情報の時系列変化に対応する対象物の他の部位の位置情報の時系列変化を計算する。即ち、情報処理装置３０は、動作モデルが示す動作パターンに従った、第１のポイントの位置情報の時系列変化に対応する第２のポイントの位置情報の時系列変化を計算する。これにより、情報処理装置３０は、第１のポイントの位置情報及び第２のポイントの位置情報の時系列変化から成る、アバターの全体の動作を計算することが可能となる。
【００９５】
なお、動作モデル、動作モデルの選択及び予測アルゴリズムに関する技術的特徴は、対象物が仮想物体であること、及びセンサ情報に基づく位置情報の計算が操作情報に基づく位置情報の計算になること以外、第１の実施形態と同様である。
【００９６】
（４）情報出力
・ＵＩ例
典型的には、本実施形態に係る情報処理装置３０は、３Ｄアニメーションの制作支援のために利用される。３Ｄアニメーションの制作支援のためのＵＩの一例を、図１３を参照して説明する。
【００９７】
図１３は、本実施形態に係るＵＩの一例を示す図である。図１３に示すように、制作画面７０Ａには、アバター７１が表示されている。ユーザは、制作画面７０Ａにおいて、アバター７１の右手７２をポインタ７３により選択してドラッグする。すると、制作画面７０Ｂのように、ドラッグされた右手７２（即ち、第１のポイント）だけでなく、右手７２の動きに応じて左手及び両足等（即ち、第２のポイント）が動く。このように、ユーザは、アバター７１の全身の動きを各部位ごとの細かく指定せずとも、一部の部位の動きを指定するだけで、アバター７１に自然な動作を行わせることが可能である。従って、３Ｄアニメーションの制作負荷を軽減することが可能である。
【００９８】
・アニメーションの生成
情報処理装置３０は、例えばキーフレーム法を用いてアニメーションを生成する。キーフレーム法は、数フレームおきにキーフレームを配置し、キーフレーム間を補完することで動画を生成する技術である。
【００９９】
例えば、情報処理装置３０（例えば、キーフレーム登録部３５６）は、アニメーションのキーフレームを登録する。例えば、情報処理装置３０は、図１３に示したような制作画面においてユーザ操作されたアバター７１の姿勢を、キーフレームとして登録する。
【０１００】
次いで、情報処理装置３０（例えば、補完部３５７）は、キーフレーム間を補完することで、アニメーションを生成する。
【０１０１】
＜２．３．処理の流れ＞
続いて、図１４を参照して、本実施形態に係る情報処理装置３０において実行される動作可視化処理の流れの一例を説明する。図１４は、本実施形態に係る情報処理装置３０において実行される動作可視化処理の流れの一例を示すフローチャートである。
【０１０２】
図１４に示すように、まず、情報処理装置３０は、コンテキストに対応する動作モデルを取得する（ステップＳ２０２）。例えば、情報処理装置３０は、ユーザ操作に基づいて動作モデルを取得する。次いで、情報処理装置３０は、仮想物体の一部分の動作を指示するユーザ操作を示す操作情報を取得する（ステップＳ２０４）。次に、情報処理装置３０は、操作情報に基づいて第１のポイントの位置情報を計算する（ステップＳ２０６）。そして、情報処理装置３０は、第１のポイントの位置情報及び動作モデルに基づいて、第２のポイントの位置情報を計算する（ステップＳ２０８）。次に、情報処理装置３０は、アニメーションを生成する（ステップＳ２１０）。例えば、情報処理装置３０は、キーフレーム群を登録し、キーフレーム間を補完することで、アニメーションを生成する。次いで、情報処理装置３０は、生成したアニメーションを出力する（ステップＳ２１２）。
【０１０３】
以上により、処理は終了する。
【０１０４】
＜＜３．ハードウェア構成例＞＞
最後に、図１５を参照して、上記各実施形態に係る情報処理装置のハードウェア構成について説明する。図１５は、上記各実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。なお、図１５に示す情報処理装置９００は、例えば、図３又は図１２にそれぞれ示した情報処理装置３０を実現し得る。上記各実施形態に係る情報処理装置３０による情報処理は、ソフトウェアと、以下に説明するハードウェアとの協働により実現される。
【０１０５】
図１５に示すように、情報処理装置９００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３及びホストバス９０４ａを備える。また、情報処理装置９００は、ブリッジ９０４、外部バス９０４ｂ、インタフェース９０５、入力装置９０６、出力装置９０７、ストレージ装置９０８、ドライブ９０９、接続ポート９１１及び通信装置９１３を備える。情報処理装置９００は、ＣＰＵ９０１に代えて、又はこれとともに、ＤＳＰ若しくはＡＳＩＣ等の処理回路を有してもよい。
【０１０６】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置９００内の動作全般を制御する。また、ＣＰＵ９０１は、マイクロプロセッサであってもよい。ＲＯＭ９０２は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０３は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。ＣＰＵ９０１は、例えば、図３又は図１２に示す制御部３５０を形成し得る。
【０１０７】
ＣＰＵ９０１、ＲＯＭ９０２及びＲＡＭ９０３は、ＣＰＵバスなどを含むホストバス９０４ａにより相互に接続されている。ホストバス９０４ａは、ブリッジ９０４を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９０４ｂに接続されている。なお、必ずしもホストバス９０４ａ、ブリッジ９０４および外部バス９０４ｂを分離構成する必要はなく、１つのバスにこれらの機能を実装してもよい。
【０１０８】
入力装置９０６は、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバー等、ユーザによって情報が入力される装置によって実現される。また、入力装置９０６は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置９００の操作に対応した携帯電話やＰＤＡ等の外部接続機器であってもよい。さらに、入力装置９０６は、例えば、上記の入力手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などを含んでいてもよい。情報処理装置９００のユーザは、この入力装置９０６を操作することにより、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりすることができる。入力装置９０６は、例えば、図３又は図１２に示す入力部３２０を形成し得る。
【０１０９】
他にも、入力装置９０６は、ユーザに関する情報を検知する装置により形成され得る。例えば、入力装置９０６は、画像センサ（例えば、カメラ）、深度センサ（例えば、ステレオカメラ）、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサ、測距センサ、力センサ等の各種のセンサを含み得る。また、入力装置９０６は、情報処理装置９００の姿勢、移動速度等、情報処理装置９００自身の状態に関する情報や、情報処理装置９００の周辺の明るさや騒音等、情報処理装置９００の周辺環境に関する情報を取得してもよい。また、入力装置９０６は、ＧＮＳＳ（Global  Navigation  Satellite  System）衛星からのＧＮＳＳ信号（例えば、ＧＰＳ（Global  Positioning  System）衛星からのＧＰＳ信号）を受信して装置の緯度、経度及び高度を含む位置情報を測定するＧＮＳＳモジュールを含んでもよい。また、位置情報に関しては、入力装置９０６は、Ｗｉ−Ｆｉ（登録商標）、携帯電話・ＰＨＳ・スマートフォン等との送受信、または近距離通信等により位置を検知するものであってもよい。
【０１１０】
出力装置９０７は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で形成される。このような装置として、ＣＲＴディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ＥＬディスプレイ装置、レーザープロジェクタ、ＬＥＤプロジェクタ及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置９０７は、例えば、情報処理装置９００が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置９００が行った各種処理により得られた結果を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。上記表示装置及び上記音声出力装置は、例えば、図３又は図１２に示す出力部３３０を形成し得る。
【０１１１】
ストレージ装置９０８は、情報処理装置９００の記憶部の一例として形成されたデータ格納用の装置である。ストレージ装置９０８は、例えば、ＨＤＤ等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により実現される。ストレージ装置９０８は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置９０８は、ＣＰＵ９０１が実行するプログラムや各種データ及び外部から取得した各種のデータ等を格納する。ストレージ装置９０８は、例えば、図３又は図１２に示す記憶部３４０を形成し得る。
【０１１２】
ドライブ９０９は、記憶媒体用リーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９０９は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、ＲＡＭ９０３に出力する。また、ドライブ９０９は、リムーバブル記憶媒体に情報を書き込むこともできる。
【０１１３】
接続ポート９１１は、外部機器と接続されるインタフェースであって、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などによりデータ伝送可能な外部機器との接続口である。
【０１１４】
通信装置９１３は、例えば、ネットワーク９２０に接続するための通信デバイス等で形成された通信インタフェースである。通信装置９１３は、例えば、有線若しくは無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又はＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カード等である。また、通信装置９１３は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ又は各種通信用のモデム等であってもよい。この通信装置９１３は、例えば、インターネットや他の通信機器との間で、例えばＴＣＰ／ＩＰ等の所定のプロトコルに則して信号等を送受信することができる。通信装置９１３は、例えば、図３に示す通信部３１０を形成し得る。
【０１１５】
なお、ネットワーク９２０は、ネットワーク９２０に接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、ネットワーク９２０は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ｅｔｈｅｒｎｅｔ（登録商標）を含む各種のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを含んでもよい。また、ネットワーク９２０は、ＩＰ−ＶＰＮ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ−Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）などの専用回線網を含んでもよい。
【０１１６】
以上、上記各実施形態に係る情報処理装置９００の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて実現されていてもよいし、各構成要素の機能に特化したハードウェアにより実現されていてもよい。従って、上記各実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
【０１１７】
なお、上述のような上記各実施形態に係る情報処理装置９００の各機能を実現するためのコンピュータプログラムを作製し、ＰＣ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
【０１１８】
＜＜４．まとめ＞＞
以上、図１〜図１５を参照して、本開示の一実施形態について詳細に説明した。上記説明したように、本実施形態に係る情報処理装置３０は、対象物に関する動作パターンを示す動作モデルを取得し、取得した動作モデルを参照して、対象物の動作のうち特定された一部の動作から全体の動作を計算する。これにより、第１の実施形態においては、対象物の一部の部位に取り付けられたセンサ装置１０から得られたセンサ情報により、対象物の全体の部位の動作を予測することが可能となる。また、第２の実施形態においては、対象物の一部の部位を動作させるユーザ操作により、対象物の全体の部位を動作させたアニメーションを生成することが可能となる。このように、情報処理装置３０は、対象物の動作をより少ない情報から可視化することが可能である。なお、対象物としてユーザの腕、足、上半身、下半身といった特定区分のみを特定して動作情報が出力されても良い。すなわち、本明細書において、「対象物」とは、物理的あるいは仮想的に独立した対象物に限られない。
【０１１９】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１２０】
例えば、本開示の第１の実施形態および第２の実施形態は適宜組み合わせることが可能である。例えば、各タイミングにおけるユーザの動作に基づいてキーフレームが登録され、キーフレーム間が補完されてユーザ動作を示すアニメーションが生成されてもよい。
【０１２１】
例えば、本明細書において説明した各装置は、単独の装置として実現されてもよく、一部または全部が別々の装置として実現されても良い。例えば、図３又は図１２に示した情報処理装置３０の機能構成例のうち、記憶部３４０及び／又は制御部３５０が、入力部３２０及び出力部３３０とネットワーク等で接続されたサーバ等の装置に備えられていても良い。また、センサ装置１０と情報処理装置３０とが一体的に形成されてもよい。
【０１２２】
また、本明細書においてフローチャート及びシーケンス図を用いて説明した処理は、必ずしも図示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。
【０１２３】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０１２４】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
対象物に関する動作パターンを示す動作モデルを取得する取得部と、
前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、
前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、
を備える情報処理装置。
（２）
前記取得部は、前記対象物のコンテキストに対応する前記動作モデルを取得する、前記（１）に記載の情報処理装置。
（３）
前記取得部は、ユーザ操作に基づいて前記動作モデルを取得する、前記（２）に記載の情報処理装置。
（４）
前記取得部は、前記対象物の動作のうち特定された一部の動作に対応する前記動作モデルを取得する、前記（２）に記載の情報処理装置。
（５）
前記対象物は、ユーザを含み、
前記動作モデルは、第１の動作モデル及び第２の動作モデルを含み、
前記取得部は、前記ユーザに配置されたセンサ装置により測定されたセンサ情報により特定された前記ユーザの一部の動作に基づいて前記コンテキストを認識し、認識した前記コンテキストに応じて前記第１の動作モデル及び前記第２の動作モデルのうち一方を自動的に取得する、前記（３）又は（４）に記載の情報処理装置。
（６）
前記出力情報は、前記対象物に対応する仮想物体が前記対象物の全体の動作に対応する動作を行う画像を含む、前記（１）〜（５）のいずれか一項に記載の情報処理装置。
（７）
前記対象物は、ユーザを含み、
前記出力情報は、前記ユーザに装着されたＶＲ（Virtual  Reality）機器により表示される、前記（６）に記載の情報処理装置。
（８）
前記対象物は、実物体であり、
前記計算部は、前記対象物に配置されたセンサ装置により測定されたセンサ情報に基づいて、前記センサ装置の位置情報の時系列変化を特定する、前記（１）〜（７）のいずれか一項に記載の情報処理装置。
（９）
前記計算部は、前記動作モデルが示す前記動作パターンに従った、前記ひとつ以上のセンサ装置の位置情報の時系列変化に対応する前記対象物の他の部位の位置情報の時系列変化を計算する、前記（８）に記載の情報処理装置。
（１０）
前記センサ装置は、予め定められた複数の関節のうちコンテキストに応じた関節に配置される、前記（８）又は（９）に記載の情報処理装置。
（１１）
前記センサ装置は、前記コンテキストがゴルフクラブのスイング動作の場合、手及び膝の２カ所に配置される、前記（１０）に記載の情報処理装置。
（１２）
前記センサ装置は、慣性センサを含む、前記（８）〜（１１）のいずれか一項に記載の情報処理装置。
（１３）
前記センサ装置は、前記対象物に前記センサ装置を固定するためのセンサ取付具に着脱可能に取り付けられる、前記（８）〜（１２）のいずれか一項に記載の情報処理装置。
（１４）
前記対象物は、ユーザ及び前記ユーザに操作される物体を含む、前記（１）に記載の情報処理装置。
（１５）
前記計算部は、前記動作モデルを参照して、特定されたユーザの動作に基づいて前記ユーザに操作される物体の動作を計算する、前記（１４）に記載の情報処理装置。
（１６）
前記計算部は、ゴルフクラブのスイング動作に関する前記動作モデルを参照して、特定されたユーザのスイング動作に基づいて前記ユーザによりスイングされるゴルフクラブの動作を計算する、前記（１５）に記載の情報処理装置。
（１７）
前記対象物は、仮想物体であり、
前記計算部は、前記仮想物体へのユーザの操作情報に基づいて、前記仮想物体の一部の動作を特定する、前記（１）〜（７）のいずれか一項に記載の情報処理装置。
（１８）
前記対象物は、複数の関節を有する動物体を含み、
前記対象物の動作は、前記動物体の前記複数の関節の位置情報の時系列変化を含む、前記（１）〜（１７）のいずれか一項に記載の情報処理装置。
（１９）
対象物に関する動作パターンを示す動作モデルを取得することと、
取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作をプロセッサにより計算することと、
計算された前記対象物の全体の動作を示す出力情報を出力することと、
を含む情報処理方法。
（２０）
コンピュータを、
対象物に関する動作パターンを示す動作モデルを取得する取得部と、
前記取得部により取得された前記動作モデルを参照して、前記対象物の動作のうち特定された一部の動作を含む全体の動作を計算する計算部と、
前記計算部により計算された前記対象物の全体の動作を示す出力情報を出力する出力制御部と、
として機能させるためのプログラムが記憶された記憶媒体。
【符号の説明】
【０１２５】
１    システム
１０    センサ装置
１１０    慣性センサ
１２０    通信部
１３０    記憶部
１４０    制御部
２０    センサ装着用装備
２１    センサ取付具
３０    情報処理装置
３１０    通信部
３２０    入力部
３３０    出力部
３４０    記憶部
３５０    制御部
３５１    モデル学習部
３５２    モデル取得部
３５３    第１の位置情報計算部
３５４    第２の位置情報計算部
３５５    出力制御部
３５６    キーフレーム登録部
３５７    補完部
【図１】
2017217050.tif 000004
【図２】
2017217050.tif 000005
【図３】
2017217050.tif 000006
【図４】
2017217050.tif 000007
【図５】
2017217050.tif 000008
【図６】
2017217050.tif 000009
【図７】
2017217050.tif 000010
【図８】
2017217050.tif 000011
【図９】
2017217050.tif 000012
【図１０】
2017217050.tif 000013
【図１１】
2017217050.tif 000014
【図１２】
2017217050.tif 000015
【図１３】
2017217050.tif 000016
【図１４】
2017217050.tif 000017
【図１５】
2017217050.tif 000018
【国際調査報告】
2017217050.tif 000019
2017217050.tif 000020
2017217050.tif 000021
2017217050.tif 000022