(57)【要約】【課題】３次元センサの画角に占める対象物の割合が高い状態で３次元データの取得を継続する。【解決手段】取得部１１が、３Ｄセンサ３１により検出された、対象物上の各点の３次元位置を示す３次元データを取得し、認識部１２が、３次元データに基づいて、対象物の位置及び姿勢を認識し、推定部１３が、同一の姿勢を含む関連する複数の動作を示し、かつ対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターンＤＢ２３を参照して、受け付けた演技予定リスト２１と、認識部１２により認識された対象物の姿勢とに基づいて、時刻Ｔｎ＋１の対象物の姿勢を推定すると共に、推定した姿勢と、対象物の位置の変化とに基づいて、時刻Ｔｎ＋１の対象物の位置を推定し、制御部１７が、推定された対象物の姿勢及び位置に基づいて、３Ｄセンサ３１の向き及び画角を制御する。【選択図】図１
2018142815.tif 000002
【特許請求の範囲】
【請求項１】
３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得する取得部と、
前記取得部により取得された３次元データに基づいて、前記対象物の位置及び姿勢を認識する認識部と、
同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照して、受け付けた前記対象物が実施する予定の動作の情報と、前記認識部により認識された前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定すると共に、推定した姿勢と、前記認識部により認識された前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定する推定部と、
前記推定部で推定された前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する制御部と、
を含む３次元データ取得装置。
【請求項２】
前記動作パターンは、前記同一の姿勢を含む関連する複数の動作として、基準の技を示す動作と、前記基準の技の実施中における対象物の姿勢から遷移可能な他の技を示す動作と、前記基準の技及び前記他の技が不成立又は失敗した場合の動作とを含む対象物の動作を示す動作パターンであり、
前記推定部は、前記対象物が実施する予定の動作の情報として、前記対象物が実施予定の技のリストを参照する
請求項１記載の３次元データ取得装置。
【請求項３】
前記推定部は、前記認識部により認識された前記対象物の姿勢に対応する状態を含んで定義された動作パターンにおいて、前記対応する状態から遷移可能な状態が示す姿勢を、前記次のタイミングにおける前記対象物の姿勢として推定する請求項１又は請求項２に記載の３次元データ取得装置。
【請求項４】
前記認識部は、前記取得部により取得された３次元データに基づいて、前記対象物の各部位の座標値の集合で表される人体モデルを認識し、
前記動作パターンは、前記対象物の各部位の座標値の集合で表された前記対象物の姿勢を示す状態の遷移で定義され、
前記推定部は、前記対象物の各部位の相対座標系、グローバル座標系、及び前記動作パターンが示す動作の進行方向を基準とした座標系の少なくとも１つの座標系において、前記認識部により認識された前記人体モデルを表す座標値の集合との差が所定の範囲内となる座標値の集合で表された前記動作パターンの状態を、前記認識部により認識された前記対象物の姿勢に対応する状態として判定する
請求項３に記載の３次元データ取得装置。
【請求項５】
前記推定部は、前記対応する状態から遷移可能な状態を、状態間の遷移確率に基づいて推定する請求項３又は請求項４に記載の３次元データ取得装置。
【請求項６】
前記遷移確率は、動作の難易度、対象物の特性、対象物の姿勢の変化の速度、現在の対象物の姿勢と対応する状態が示す姿勢との逸脱度のいずれかを含む請求項５に記載の３次元データ取得装置。
【請求項７】
前記動作パターン記憶部に、技と技との間の動作を示すつなぎ動作パターンがさらに記憶され、
前記推定部は、前記実施予定の技のリストにしたがって、次に実施する予定の技を含む動作パターンと、直前に終了した技と次に実施する予定の技との間の動作を示すつなぎ動作パターンとを参照する
請求項２〜請求項６のいずれか１項記載の３次元データ取得装置。
【請求項８】
３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得し、
取得した３次元データに基づいて、前記対象物の位置及び姿勢を認識し、
同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照して、受け付けた前記対象物が実施する予定の動作の情報と、認識した前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定すると共に、推定した姿勢と、認識した前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定し、
推定した前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する
ことを含む処理をコンピュータが実行する３次元データ取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、３次元データ取得装置、及び３次元データ取得に関する。
【背景技術】
【０００２】
従来、対象物の３次元位置座標を示す３次元データを取得可能な３次元センサにより対象物を追跡する技術が存在する。
【０００３】
例えば、広域における動体検出と解像度の高い動体の画像の出力とを同時に実現する動体検出装置が提案されている。この装置は、広角画像を撮影する第１の撮影部と、広角画像よりも狭い画角の狭角画像を撮影する第２の撮影部とを備える。また、この装置は、広角画像中における動体の位置を検出し、動体の位置に基づいて、広角画像から動体を含む動体画像を切り出し、動体画像から動体の特徴を示す特徴画像情報を作成し、特徴画像情報と狭角画像とを照合する。また、この装置は、検出された動体の位置に基づいて、所定時間後における広角画像中の動体の移動位置を予測し、予測された動体の位置の情報に基づいて、第２の撮影部が動体を視野に捉えるように、第２の撮影部の位置又は方向を移動させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−７２８４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術では、動体が移動履歴の延長線上を移動する場合には、動体の移動先を予測して追跡することが可能である。しかし、従来技術の手法では、例えば体操選手などのように、動作方向が急変する対象物の場合には、次のタイミングにおける対象物の移動先を適切に予測することができず、対象物の追跡精度が低下する。
【０００６】
また、対象物の詳細な動作を把握したい場合などには、３次元センサの画角に占める対象物の割合が高い状態で３次元データの取得を継続できることが望ましい。
【０００７】
開示の技術は、一つの側面として、３次元センサの画角に占める対象物の割合が高い状態で３次元データの取得を継続することを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様として、３次元データ取得装置は、３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得する取得部と、前記取得部により取得された３次元データに基づいて、前記対象物の位置及び姿勢を認識する認識部とを備える。また、３次元データ取得装置は、同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照する推定部を備える。推定部は、受け付けた前記対象物が実施する予定の動作の情報と、前記認識部により認識された前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定する。また、推定部は、推定した姿勢と、前記認識部により認識された前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定する。また、３次元データ取得装置は、前記推定部で推定された前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する制御部を備える。
【発明の効果】
【０００９】
一つの側面として、３次元センサの画角に占める対象物の割合が高い状態で３次元データの取得を継続することができる。
【図面の簡単な説明】
【００１０】
【図１】第１及び第２実施形態に係る３次元データ取得装置の機能ブロック図である。
【図２】演技予定リストの一例を示す図である。
【図３】履歴データベース（ＤＢ）の一例を示す図である。
【図４】動作パターンＤＢの一例を示す図である。
【図５】動作の進行方向を軸にしたローカル座標系を説明するための図である。
【図６】センサ座標系を説明するための図である。
【図７】現在の姿勢と状態候補が示す姿勢との差分に応じた遷移確率の算出を説明するための図である。
【図８】３Ｄセンサの向き及び画角の算出を説明するための図である。
【図９】第１及び第２実施形態に係る３次元データ取得装置として機能するコンピュータの概略構成を示すブロック図である。
【図１０】第１及び第２実施形態における３次元データ取得処理の一例を示すフローチャートである。
【図１１】状態判定処理の一例を示すフローチャートである。
【図１２】状態推定処理の一例を示すフローチャートである。
【図１３】つなぎ動作テーブルの一例を示す図である。
【図１４】人体モデルのサイズの正規化及び補正を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して開示の技術に係る実施形態の一例を詳細に説明する。なお、以下の各実施形態では、追跡対象の対象物を、演技を実施する体操選手とする場合について説明する。
【００１２】
＜第１実施形態＞
図１に示すように、第１実施形態に係る３次元データ取得装置１０は、３次元センサ（以下、「３Ｄセンサ」と表記する）３１と接続される。
【００１３】
３Ｄセンサ３１は、例えば、ＴＯＦ（Time Of Flight）方式により、対象物までの距離及び方向を所定の解像度で検出し、対象物上の各点の３次元位置座標を示す３次元データを出力する。３Ｄセンサ３１は、水平方向及び垂直方向の検出範囲を示す画角、及び検出範囲の中心と３Ｄセンサ３１とを結ぶ中心線の向きが変更可能であり、設定された制御値が示す画角及び向きとなるように、駆動部３２により駆動される。
【００１４】
３次元データ取得装置１０は、３Ｄセンサ３１により、３Ｄセンサ３１の画角に占める対象物の割合が高い状態で３次元データの取得を継続することができるように、３Ｄセンサ３１の画角及び向きを制御する。
【００１５】
ここで、３Ｄセンサ３１の画角に占める対象物の割合が高い状態で３次元データを取得する理由について説明する。
【００１６】
例えば、ＴＯＦ方式の３Ｄセンサは、対象物に照射したレーザー光の反射を受光して、レーザー光の照射から反射までの経過時間から、対象物上の各点までの距離を測定する。対象物と３Ｄセンサとの距離が１ｍの場合、レーザー光が往復するのにかかる時間は６．７ｎｓである。また、照射光は対象物までの距離の２乗で減衰するため、受光時には非常に弱いレーザー光を受光する必要がある。
【００１７】
対象物までの距離と、得られる３次元データの高精細化とを両立するには、照射光の強度向上の点から２Ｄスキャン式のＴＯＦが有利であるが、２Ｄスキャン式の場合、対象物までの最大距離×（６．７ｎｓ＋判別マージン）×１フレームの測距点数×フレームレートが１秒以下という原理上の制約が生じる。対象物までの最大距離を１０ｍとした場合、３０ｆｐｓで取得しようとすると、１フレームの測距点数は、判別のための時間マージンを無視しても５０万点弱（約８００×６００画素）となる。つまり、通常の可視カメラと比べると、３Ｄセンサでは高速かつ高解像度での撮影が困難である。
【００１８】
例えば、３２０×２４０（ＱＶＧＡ）の解像度の３Ｄセンサで、体操選手を対象物として３次元データを取得する場合を考える。移動していない状態の選手の全身をカバーする検出範囲を３ｍ×３ｍ程度とすると、１画素間が約１ｃｍ未満で測定可能である。しかし、選手の移動時を想定して１０ｍ×６ｍ程度を検出範囲とすると、１画素間は約２〜３ｃｍとなる。この場合、３Ｄセンサに対する選手の体の向きにもよるが、例えば、選手の手足の先など、３次元データを検出できない部分が生じ、体のラインや手足の真っ直ぐさなどを詳細に分析可能な３次元データが取得できない可能性がある。
【００１９】
したがって、解像度が比較的低い３Ｄセンサであっても、３Ｄセンサの画角内に対象物の全身いっぱいを収めるように３次元データを取得することで、対象物の細部の３次元データの取得も可能となるように、３Ｄセンサにより対象物を追跡する必要がある。
【００２０】
図１に示すように、３次元データ取得装置１０は、取得部１１と、認識部１２と、状態判定部１４、状態推定部１５、及び位置推定部１６を含む推定部１３と、制御部１７とを含む。また、３次元データ取得装置１０の所定の記憶領域には、演技予定リスト２１と、履歴データベース（ＤＢ）２２と、動作パターンＤＢ２３とが記憶される。
【００２１】
演技予定リスト２１は、対象物である体操選手が実施予定の技を時系列に記述したリストである。図２に、演技予定リスト２１の一例を示す。図２では、演技の開始（Ｓｔａｒｔ）から終了（ｅｎｄ）までに含まれる実施予定の技の識別情報である技番号が、実施予定順に記述された例を示している。演技予定リスト２１は、対象物である体操選手が演技を開始する前に３次元データ取得装置１０に入力され、所定の記憶領域に記憶される。
【００２２】
履歴ＤＢ２２には、３Ｄセンサ３１から取得された３次元データに基づいて認識された人体モデルや、判定された状態及び実施された技の履歴が記憶される。図３に、履歴ＤＢ２２の一例を示す。図３の例では、履歴ＤＢ２２には、人体モデル履歴テーブル２２Ａと、状態履歴テーブル２２Ｂと、技実施履歴テーブル２２Ｃとが含まれる。
【００２３】
人体モデル履歴テーブル２２Ａには、認識部１２により認識された人体モデルを構成する人体の各部位の座標値群が時系列に記憶される。人体モデルを構成する各部位は、対象物の姿勢を特定するための特徴点となる関節などの人体の部位である。例えば、各部位は、頭、肩の中心、右肩、右肘、右手首、右手、左肩、左肘、左手首、左手、背骨、臀部の中心、右臀部、右膝、右足首、右足、左臀部、左膝、左足首、左足等である。各部位の座標値としては、各部位の軸方向を示すベクトル及び回転を表すクォータニオンを用いることができる。図３の例では、各部位のインデックスに各部位の座標値を対応付けて記憶した例を示している。
【００２４】
状態履歴テーブル２２Ｂには、状態判定部１４で判定された対象物の状態（詳細は後述）が時系列に記憶される。図３の例では、状態履歴テーブル２２Ｂには、時刻に対応付けて、判定された状態の識別情報である状態番号が記憶されている。
【００２５】
技実施履歴テーブル２２Ｃには、状態判定部１４で実施の完了が判定された技の技番号が時系列に記憶される。図３の例では、技実施履歴テーブル２２Ｃのデータ構造は、図２に示す演技予定リスト２１のデータ構造と同様である。
【００２６】
動作パターンＤＢ２３には、同一の姿勢を含む関連する複数の動作を示し、かつ対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶される。具体的には、動作パターンは、同一の姿勢を含む関連する複数の動作として、基準の技を示す動作と、基準の技の実施中における対象物の姿勢から遷移可能な他の技を示す動作と、基準の技及び他の技の実施が不成立又は失敗した場合の動作とを含む。
【００２７】
図４に、動作パターンＤＢ２３の一例を示す。図４に示すように、本実施形態では、各動作パターンを、その動作パターンに含まれる各姿勢を示す状態に対応したノードと、遷移可能な状態間に対応するノード間を接続したエッジとを含む木構造で表現される。図４において、内部に数字を記したノードは、技の途中の姿勢を示す状態に対応したノードであり、数字は、各ノードに対応した状態の状態番号である。また、網掛けのノードは、技の区切りを示す姿勢（例えば、直立姿勢、手を挙げた姿勢、鉄棒や吊り輪にぶら下がった姿勢など）を示す状態に対応したノードである。また、二重丸のノードは、転倒や落下などの失敗時の姿勢を示す状態に対応したノードである。
【００２８】
図４の例で、動作パターンの識別情報である動作パターン番号が１の動作パターンを示す木構造を例に、より詳細に動作パターンについて説明する。なお、以下では、動作パターン番号がｉの動作パターンを「パターンｉ」、状態番号がｊの状態を「状態ｊ」、技番号がｋの技を「技ｋ」、パターンｉに含まれる状態ｊを、「パターンｉ：状態ｊ」と表記する。
【００２９】
パターン１の１段目の部分は、技の区切りを示す姿勢から始まり、状態１、状態２、・・・、状態７の各状態が示す途中の姿勢を経て、技の区切りの姿勢を示す状態に達すると、技１が成立する場合の姿勢の変化を表している。また、技１の実施途中で選手が意図して異なる技の実施に変更したり、選手が意図せず途中でバランスを崩すなどして、結果的に技１より下位の技になってしまったり、下位の技も成立しなかったり、失敗して終わったりする場合がある。
【００３０】
状態５から分岐して技２へ至る経路、及び状態４から分岐して技３へ至る経路は、下位の技になってしまう場合の姿勢の変化を表している。なお、下位の技になってしまう例としては、３回ひねりが２回ひねりや１回ひねりになってしまう場合がある。また、状態３から分岐して、状態１１、状態１２、及び状態１３を経て技不成立へ至る経路は、転倒や落下等には至らないまでも、回転不足や大きく姿勢が乱れるなどして、いずれの技も成立しない場合の姿勢の変化を表している。また、状態１１から分岐して、状態１４を経て失敗に至る経路は、技１、技２、又は技３の実施に失敗する場合の姿勢の変化を表している。
【００３１】
また、動作パターンＤＢ２３には、動作パターンに含まれる各状態が示す姿勢を定義した状態情報も記憶される。状態情報は、基準の座標系、基準の座標系における人体の各部位の座標値群、及び許容誤差範囲の情報を含む。人体の各部位の座標値群は、上述した人体モデル履歴テーブル２２Ａに記憶される人体モデルを構成する各部位の座標値群と同様である。なお、動作パターンＤＢ２３に記憶される各状態の状態情報に含まれる各部位の座標値群は、標準的な人体のサイズを想定した基準のサイズの人体モデルを構成する各部位の座標値群である。
【００３２】
基準の座標系としては、例えば、人体の所定部位の座標値を基準とした相対座標系、あん馬などの器具や、床の演技エリアなどを基準として設定されるグローバル座標系、演技の進行方向を軸にしたローカル座標系などを定義することができる。演技の進行方向を軸にしたローカル座標系は、床で実施される技など、グローバル座標に依存しない技の姿勢を示す状態についての状態情報に用いる座標系である。
【００３３】
許容誤差範囲は、人体の各部位の座標値群が示す基準の姿勢からの許容誤差範囲を示す情報である。許容誤差範囲は、例えば、図４に示すように、両足のなす角の範囲のように相対座標系で定義したり、器具を基準に設定した軸からの角度範囲のようにグローバル座標系で定義したりすることができる。また、例えば、図５に示すように、踏み切り時の足の方向を軸とするローカル座標系を人体に設定し、踏み切り時の足の方向と、着地時の足の方向とのなす角の範囲で定義してもよい。
【００３４】
次に、３次元データ取得装置１０の各機能部について説明する。
【００３５】
取得部１１は、３Ｄセンサ３１により検出された、対象物上の各点の３次元位置を示す３次元データを取得する。３次元データは、図６に示すように、時刻Ｔｎ毎に３Ｄセンサ３１で検出される対象物上の点群に含まれる各点の３次元座標値をセンサ座標系で表したデータである。時刻Ｔｎにおける点Ｐの３次元座標値をＰＴｎ（Ｘｓｎ，Ｙｓｎ，Ｚｓｎ）とする。取得部１１は、取得した３次元データ群を認識部１２へ受け渡す。
【００３６】
また、取得部１１は、３次元データと共に、時刻Ｔｎにおける３Ｄセンサ３１の向き及び画角の情報を取得し、推定部１３へ受け渡す。時刻Ｔｎにおける３Ｄセンサ３１の向きは、パン角θｐａｎ、チルト角θｔｉｌｔ、及びロール角θｒｏｌｌを用いて、θＴｎ（θｐａｎ＿ｎ，θｔｉｌｔ＿ｎ，θｒｏｌｌ＿ｎ）と表す。また、時刻Ｔｎにおける３Ｄセンサ３１の画角は、センサ座標系における水平方向の画角φｘｓ及び垂直方向の画角φｙｓを用いて、φＴｎ（φｘｓ＿ｎ，φｙｓ＿ｎ）と表す。なお、グローバル座標系における３Ｄセンサ３１の位置が変動する場合には、取得部１１は、時刻Ｔｎにおける３Ｄセンサ３１のグローバル座標系での位置情報も３Ｄセンサ３１から取得して、推定部１３へ受け渡す。
【００３７】
また、取得部１１は、入力された演技予定リスト２１を取得し、所定の記憶領域に記憶する。
【００３８】
認識部１２は、取得部１１から受け渡された３次元データ群に基づいて、センサ座標系における対象物の位置及び姿勢を示す人体モデルを認識する。具体的には、認識部１２は、３次元データ群から、上述した人体の各部位についての座標値（例えば、クォータニオン表現のベクトル値）を算出する。３次元データ群から人体各部位の座標値を算出する方法は、従来技術を適用することができるため、ここでは詳細な説明を省略する。認識部１２は、対象物である選手毎の体格差を考慮して、算出した各部位の座標値を、基準となる人体モデルのサイズに正規化する。
【００３９】
認識部１２は、算出した各部位の座標値群で表される人体モデルを、３次元データの取得時刻Ｔｎ、及び各部位のインデックスと対応付けて、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａに記憶する。例えば、このインデックス（ｂｏｄｙ  ｉｎｄｅｘ）を用いて、時刻Ｔｎにおける人体モデルを構成する各部位のセンサ座標系における座標値は、ｂｏｄｙ  ｉｎｄｅｘ＿Ｔｎ（ｘｓ，ｙｓ，ｚｓ，ｗｓ）と表すことができる。
【００４０】
推定部１３は、次のタイミング（時刻Ｔｎ＋１）における対象物の位置及び姿勢を推定する。上述したように、推定部１３は、状態判定部１４と、状態推定部１５と、位置推定部１６とを含む。
【００４１】
状態判定部１４は、演技予定リスト２１及び動作パターンＤＢ２３を参照して、認識部１２により認識された対象物の人体モデルが示す姿勢が、どの動作パターンに含まれるどの状態かを判定する。
【００４２】
具体的には、状態判定部１４は、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａに記憶された時刻Ｔｎにおけるセンサ座標系の座標値群を、取得部１１から受け渡された３Ｄセンサ３１の向き及び画角の情報を用いて、グローバル座標系の座標値群に変換する。状態判定部１４は、人体モデル履歴テーブル２２Ａに記憶された時刻Ｔｎにおける座標値を、グローバル座標系に変換した座標値に更新する。
【００４３】
また、状態判定部１４は、履歴ＤＢ２２の状態履歴テーブル２２Ｂを参照して、時刻Ｔｎ−１の状態が技の区切りの姿勢を示す状態である場合、演技予定リスト２１及び履歴ＤＢ２２の技実施履歴テーブル２２Ｃを参照して、終了した技の次の技を特定する。そして、状態判定部１４は、特定した技を含む動作パターンを動作パターンＤＢ２３から取得し、取得した動作パターンの各々において、最初の姿勢を示す状態（技の区切りの姿勢を示す状態の次の状態）を、時刻Ｔｎの状態候補として抽出する。例えば、次の技が技１の場合、図４に示す動作パターンＤＢ２３から、パターン１が取得され、パターン１：状態１が、時刻Ｔｎの状態候補として抽出される。動作パターンＤＢ２３に技１を含む動作パターンが他にも存在する場合には、その動作パターンからも状態候補が抽出される。
【００４４】
また、状態判定部１４は、時刻Ｔｎ−１の状態が技の途中の姿勢を示す状態である場合、時刻Ｔｎ−１の状態を含む動作パターンにおいて、時刻Ｔｎ−１の状態から遷移可能な状態を、時刻Ｔｎの状態候補として抽出する。例えば、時刻Ｔｎ−１の状態が、図４に示すパターン１の状態３の場合、パターン１：状態３、パターン１：状態４、及びパターン１：状態１１が、時刻Ｔｎの状態候補として抽出される。なお、状態候補「パターン１：状態３」は、時刻Ｔｎ−１から状態が遷移していない場合である。
【００４５】
状態判定部１４は、抽出した状態候補の各々の状態情報と、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａに記憶された人体モデルとを比較し、時刻Ｔｎにおける状態を判定する。例えば、状態判定部１４は、状態情報に含まれる座標値群と、人体モデルに含まれる座標値群とのユークリッド距離を、対応する部位同士で算出し、各部位のユークリッド距離の総和が最も小さい状態候補を、時刻Ｔｎにおける状態を判定することができる。なお、本実施形態では、人体モデル履歴テーブル２２Ａに記憶する人体モデルを基準のサイズに正規化しているため、動作パターンＤＢ２３に記憶された各状態の状態情報との比較が容易となる。
【００４６】
状態判定部１４は、判定した状態の状態番号を、その状態を含む動作パターンのパターン番号と共に、時刻Ｔｎと対応付けて、履歴ＤＢ２２の状態履歴テーブル２２Ｂに記憶する。
【００４７】
状態推定部１５は、状態判定部１４により判定された時刻Ｔｎの状態から遷移可能な状態を、時刻Ｔｎ＋１における状態候補として抽出する。状態候補の抽出方法は、状態判定部１４が時刻ｔｎにおける状態候補を抽出する場合と同様である。
【００４８】
状態推定部１５は、抽出した状態候補の各々について、時刻Ｔｎの状態からの遷移確率を算出する。例えば、各動作パターンの状態間に、その状態間の遷移を経て実施される技の難易度に応じた遷移確率を予め与えておく。例えば、図４のパターン１で、技２より技１の難易度の方が高い場合には、状態５から状態６への遷移よりも、状態５から状態８への遷移の方が遷移確率が高くなるように各状態間に遷移確率を与えておく。技の難易度は、採点基準に定められた難易度や価値点を用いることができる。
【００４９】
また、選手のレベルに応じて、遷移確率を変更するようにしてもよい。例えば、実施予定の技が技１の場合、レベルの高い選手ほど、技１に至る経路に含まれる状態間の遷移確率を高くし、レベルの低い選手ほど、技１よりも下位の技、技不成立、又は失敗に至る経路に含まれる状態間の遷移確率を高くすることができる。なお、選手のレベルは、例えば、世界ランキングや、直近数試合での得点などから決定することができる。状態推定部１５は、このように、予め状態間に与えられた遷移確率を、時刻Ｔｎの状態から各状態候補への遷移確率とすることができる。
【００５０】
また、動作パターンに含まれる各状態について、その状態が示す姿勢が維持される標準時間を定義しておき、状態推定部１５は、状態履歴テーブル２２Ｂを参照して、標準時間に対する対象物である選手の実際の実施時間の比率を求める。そして、状態推定部１５は、求めた比率に応じて、現在の状態が維持される場合の遷移確率、及び次の状態へ遷移する場合の遷移確率を算出してもよい。
【００５１】
また、状態推定部１５は、図７に示すように、状態候補のうち、各状態候補が示す姿勢と、認識部１２で認識された時刻Ｔｎの人体モデルが示す姿勢との差分に応じた遷移確率を算出してもよい。例えば、以下の式で、時刻Ｔｎの状態から状態候補ｉへの遷移確率を算出することができる。なお、姿勢の差分は、各部位の座標値のユークリッド距離の総和として算出することができる。
【００５２】
状態候補ｉへの遷移確率＝
１−（状態候補ｉとの差分）／（Σｉ状態候補ｉとの差分）
なお、上記式における「状態候補ｉとの差分」とは、時刻Ｔｎの人体モデルが示す姿勢と、状態候補ｉの状態情報に含まれる座標値群が示す姿勢との差分を意味する。
【００５３】
また、状態推定部１５は、状態履歴テーブル２２Ｂに記憶された各時刻の状態について動作パターンＤＢ２３に記憶された状態情報が示す姿勢と、対応する時刻における認識部１２で認識された人体モデルが示す姿勢との差分の時間変化を算出する。そして、状態推定部１５は、算出した時間変化に応じて、現在の状態が維持される場合の遷移確率、及び次の状態へ遷移する場合の遷移確率を算出してもよい。
【００５４】
また、状態推定部１５は、人体モデル履歴テーブル２２Ａに記憶された各時刻の各部位の座標値について曲線近似を行い、近似曲線の延長線上の座標値から、時刻Ｔｎ＋１の人体モデルを推定する。そして、状態推定部１５は、推定した人体モデルが示す姿勢と、各状態候補の状態情報が示す姿勢との類似度に基づいて、各状態候補への遷移確率を算出してもよい。
【００５５】
状態推定部１５は、状態候補のうち、時刻Ｔｎにおける状態からの遷移確率が最も高い状態候補を、時刻Ｔｎ＋１における状態として推定する。例えば、状態候補として、状態３、状態４、及び状態１１が抽出され、各状態候補について、以下のように遷移確率が算出された場合、状態推定部１５は、状態３を時刻Ｔｎ＋１における状態として推定する。
【００５６】
状態候補  ３：遷移確率＝０．６
状態候補  ４：遷移確率＝０．３
状態候補１１：遷移確率＝０．１
【００５７】
状態推定部１５は、推定した状態の状態情報を制御部１７へ受け渡す。
【００５８】
位置推定部１６は、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａを参照して、対象物の位置の変化に基づいて、次のタイミングに対象物が存在する位置を推定する。例えば、位置推定部１６は、人体の所定部位の座標値について曲線近似を行い、近似曲線の延長線上で、かつ座標値の履歴が示す所定部位の移動速度に応じた座標値を、時刻Ｔｎ＋１における対象物の位置として推定する。なお、人体の所定部位としては、１部位でもよいし、複数部位の平均を用いてもよい。また、実施中の技に応じた所定部位を決定してもよい。さらに、実施中の技に応じて、時刻Ｔｎ＋１における対象物の位置となり得る領域を制限してもよい。位置推定部１６は、推定した時刻Ｔｎ＋１における対象物の位置の情報を、制御部１７へ受け渡す。
【００５９】
制御部１７は、推定部１３で推定された対象物の姿勢及び位置に基づいて、次のタイミングにおける３Ｄセンサ３１の向き及び画角の制御値を算出し、駆動部３２へ出力する。具体的には、制御部１７は、位置推定部１６で推定された時刻Ｔｎ＋１における対象物の位置に、状態推定部１５で推定された時刻Ｔｎ＋１における状態が示す姿勢の人体モデルを展開し、対象物である選手の体格に応じて、人体モデルのサイズを補正する。制御部１７は、補正した人体モデルを示す各部位の座標値群の各々を、グローバル座標系からセンサ座標系に変換する。制御部１７は、図８に示すように、センサ座標系の座標値に変換された人体モデルを包含し、かつ３Ｄセンサ３１に正対する最小の直方体領域を算出し、この直方体領域を包含する３Ｄセンサ３１の向き及び画角を算出する。具体的には、制御部１７は、時刻Ｔｎ＋１における３Ｄセンサ３１の向きθＴｎ＋１（θｐａｎ＿ｎ＋１，θｔｉｌｔ＿ｎ＋１，θｒｏｌｌ＿ｎ＋１）、及び画角φＴｎ＋１（φｘｓ＿ｎ＋１，φｙｓ＿ｎ＋１）を制御値として算出する。
【００６０】
この制御値に基づいて駆動部３２が３Ｄセンサ３１を駆動することにより、３Ｄセンサ３１の画角に占める対象物の割合が高い状態で、時刻Ｔｎ＋１における３次元データを取得できる可能性が高まる。
【００６１】
３次元データ取得装置１０は、例えば図９に示すコンピュータ４０で実現することができる。コンピュータ４０は、Central Processing Unit（ＣＰＵ）４１と、一時記憶領域としてのメモリ４２と、不揮発性の記憶部４３とを備える。また、コンピュータ４０は、表示部及び入力部を含む入出力装置４４と、記憶媒体４９に対するデータの読み込み及び書き込みを制御するRead/Write（Ｒ／Ｗ）部４５とを備える。また、コンピュータ４０は、インターネット等のネットワークに接続される通信インターフェース（Ｉ／Ｆ）４６を備える。ＣＰＵ４１、メモリ４２、記憶部４３、入出力装置４４、Ｒ／Ｗ部４５、及び通信Ｉ／Ｆ４６は、バス４７を介して互いに接続される。
【００６２】
記憶部４３は、Hard Disk Drive（ＨＤＤ）、Solid State Drive（ＳＳＤ）、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部４３には、コンピュータ４０を３次元データ取得装置１０として機能させるための３次元データ取得プログラム５０が記憶される。３次元データ取得プログラム５０は、取得プロセス５１と、認識プロセス５２と、推定プロセス５３と、制御プロセス５７とを有する。また、記憶部４３は、動作パターンＤＢ２３を構成する情報が記憶される情報記憶領域６０を有する。
【００６３】
ＣＰＵ４１は、３次元データ取得プログラム５０を記憶部４３から読み出してメモリ４２に展開し、３次元データ取得プログラム５０が有するプロセスを順次実行する。ＣＰＵ４１は、取得プロセス５１を実行することで、図１に示す取得部１１として動作する。また、ＣＰＵ４１は、認識プロセス５２を実行することで、図１に示す認識部１２として動作する。また、ＣＰＵ４１は、推定プロセス５３を実行することで、図１に示す推定部１３として動作する。また、ＣＰＵ４１は、制御プロセス５７を実行することで、図１に示す制御部１７として動作する。また、ＣＰＵ４１は、情報記憶領域６０から情報を読み出して、メモリ４２に動作パターンＤＢ２３を展開する。また、ＣＰＵ４１は、入力された演技予定リスト２１をメモリ４２に記憶する。また、ＣＰＵ４１は、認識プロセス５２及び推定プロセス５３を実行する際、メモリ４２上に履歴ＤＢ２２を作成する。これにより、３次元データ取得プログラム５０を実行したコンピュータ４０が、３次元データ取得装置１０として機能する。なお、プログラムを実行するＣＰＵ４１はハードウェアである。
【００６４】
なお、３次元データ取得プログラム５０により実現される機能は、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit（ＡＳＩＣ）等で実現することも可能である。
【００６５】
次に、第１実施形態に係る３次元データ取得装置１０の作用について説明する。
【００６６】
３次元データ取得装置１０に事前に入力された演技予定リスト２１を取得部１１が取得し、所定の記憶領域に記憶する。演技予定リスト２１が記憶された状態で、対象物である選手の演技の開始に合わせて、３次元データの取得開始が指示されると、３次元データ取得装置１０において、図１０に示す３次元データ取得処理が実行される。
【００６７】
ステップＳ１１で、取得部１１が、時刻に対応する変数ｎを初期値の０に設定する。
【００６８】
次に、ステップＳ１２で、取得部１１が、演技予定リスト２１、及び履歴ＤＢ２２の技実施履歴テーブル２２Ｃを参照して、演技が終了しているか否かを判定する。まだ演技が終了していない場合には、処理はステップＳ１３へ移行し、取得部１１が、３Ｄセンサ３１から、時刻Ｔｎにおける３次元データ群ＰＴｎ（Ｘｓｎ，Ｙｓｎ，Ｚｓｎ）を取得する。取得部１１は、取得した３次元データ群を認識部１２へ受け渡す。また、取得部１１は、３次元データと共に、時刻Ｔｎにおける３Ｄセンサ３１の向きθＴｎ（θｐａｎ＿ｎ，θｔｉｌｔ＿ｎ，θｒｏｌｌ＿ｎ）、及び画角φＴｎ（φｘｓ＿ｎ，φｙｓ＿ｎ）を取得し、推定部１３へ受け渡す。
【００６９】
次に、ステップＳ１４で、認識部１２が、取得部１１から受け渡された３次元データ群に基づいて、センサ座標系における対象物の位置及び姿勢を示す人体モデル認識し、基準となる人体モデルのサイズに正規化する。認識部１２は、時刻Ｔｎにおける人体モデルを構成する各部位のセンサ座標系における座標値ｂｏｄｙ  ｉｎｄｅｘ＿Ｔｎ（ｘｓ，ｙｓ，ｚｓ，ｗｓ）を、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａに記憶する。
【００７０】
次に、ステップＳ２０で、状態判定処理が実行される。ここで、図１１を参照して、状態判定処理について説明する。
【００７１】
ステップＳ２１で、状態判定部１４が、人体モデル履歴テーブル２２Ａに記憶された時刻Ｔｎにおけるセンサ座標系の座標値群を、取得部１１から受け渡された３Ｄセンサ３１の向き及び画角の情報を用いて、グローバル座標系の座標値群に変換する。状態判定部１４は、人体モデル履歴テーブル２２Ａに記憶された時刻Ｔｎにおける座標値を、グローバル座標系に変換した座標値に更新する。
【００７２】
次に、ステップＳ２２で、状態判定部１４が、状態履歴テーブル２２Ｂを参照して、時刻Ｔｎ−１の状態が技の区切りの姿勢を示す状態であるか否かを判定する。技の区切りの姿勢を示す状態の場合には、処理はステップＳ２３へ移行し、技の途中の姿勢を示す状態の場合には、処理はステップＳ２４へ移行する。
【００７３】
ステップＳ２３では、状態判定部１４が、演技予定リスト２１及び技実施履歴テーブル２２Ｃを参照して、終了した技の次の技を特定する。そして、状態判定部１４は、特定した技を含む動作パターンを動作パターンＤＢ２３から取得し、取得した動作パターンの各々において、最初の姿勢を示す状態（技の区切りの姿勢を示す状態の次の状態）を、時刻Ｔｎの状態候補として抽出する。
【００７４】
一方、ステップＳ２４では、状態判定部１４が、時刻Ｔｎ−１の状態を含む動作パターンにおいて、時刻Ｔｎ−１の状態から遷移可能な状態を、時刻Ｔｎの状態候補として抽出する。
【００７５】
次に、ステップＳ２５で、状態判定部１４が、抽出した状態候補の各々の状態情報のうち、人体モデル履歴テーブル２２Ａに記憶された人体モデルの姿勢と最も類似する姿勢を示す状態候補を、時刻Ｔｎにおける状態として判定する。状態判定部１４は、判定した状態の状態番号を、その状態を含む動作パターンのパターン番号と共に、時刻Ｔｎと対応付けて、状態履歴テーブル２２Ｂに記憶する。そして、処理は図１０に示す３次元データ取得処理に戻る。
【００７６】
次に、ステップＳ３０で、状態推定処理が実行される。ここで、図１２を参照して、状態推定処理について説明する。
【００７７】
ステップＳ３１〜Ｓ３３で、状態推定部１５が、状態判定処理（図１１）のステップＳ２２〜Ｓ２４の処理と同様の処理であって、時刻Ｔｎ−１を時刻Ｔｎ、時刻Ｔｎを時刻Ｔｎ＋１と読み替えた処理を実行して、時刻Ｔｎ＋１の状態候補を抽出する。
【００７８】
次に、ステップＳ３４で、状態推定部１５が、抽出した状態候補の各々について、時刻Ｔｎの状態からの遷移確率を算出する。状態推定部１５は、状態候補のうち、時刻Ｔｎにおける状態からの遷移確率が最も高い状態候補を、時刻Ｔｎ＋１における状態として推定する。状態推定部１５は、推定した状態の状態情報を制御部１７へ受け渡す。そして、処理は図１０に示す３次元データ取得処理に戻る。
【００７９】
次に、ステップＳ４１で、位置推定部１６が、履歴ＤＢ２２の人体モデル履歴テーブル２２Ａを参照して、対象物の位置の変化に基づいて、時刻Ｔｎ＋１に対象物が存在する位置を推定する。位置推定部１６は、推定した時刻Ｔｎ＋１における対象物の位置の情報を、制御部１７へ受け渡す。
【００８０】
次に、ステップＳ４２で、制御部１７が、位置推定部１６で推定された時刻Ｔｎ＋１における対象物の位置に、状態推定部１５で推定された時刻Ｔｎ＋１における状態が示す姿勢の人体モデルを展開する。そして、制御部１７は、対象物である選手の体格に応じて、人体モデルのサイズを補正する。次に、ステップＳ４３で、制御部１７が、補正した人体モデルを示す各部位の座標値群の各々を、グローバル座標系からセンサ座標系に変換する。
【００８１】
次に、ステップＳ４４で、制御部１７が、センサ座標系の座標値に変換された人体モデルを包含し、かつ３Ｄセンサ３１に正対する最小の直方体領域を算出する。次に、ステップＳ４５で、制御部１７が、この直方体領域を包含する３Ｄセンサ３１の向きθＴｎ＋１（θｐａｎ＿ｎ＋１，θｔｉｌｔ＿ｎ＋１，θｒｏｌｌ＿ｎ＋１）、及び画角Ｔｎ＋１（φｘｓ＿ｎ＋１，φｙｓ＿ｎ＋１）を制御値として算出する。制御部１７は、算出した時刻Ｔｎ＋１における３Ｄセンサ３１の向き及び画角の制御値を駆動部３２へ出力する。
【００８２】
次にステップＳ４６で、取得部１１が、変数ｎを１インクリメントして、処理はステップＳ１２に戻る。ステップＳ１２で、演技が終了したと判定された場合には、３次元データ取得処理は終了する。
【００８３】
以上説明したように、第１実施形態に係る３次元データ取得装置１０は、事前に入力された演技予定リストと、姿勢の遷移を表現した動作パターンと、現在の対象物の位置及び姿勢とに基づいて、次のタイミングにおける対象物の位置及び姿勢を推定する。そして、３次元データ取得装置１０は、推定した位置及び姿勢の対象物を画角いっぱいに収めるように３Ｄセンサの画角及び向きを制御する。これにより、動作方向が急変する対象物であっても、３Ｄセンサの画角に占める対象物の割合が高い状態で３次元データの取得を継続することができる。
【００８４】
また、３次元データ取得装置１０は、次のタイミングにおける状態を推定する際に、同じ姿勢を含む複数の動作を、各姿勢を１つの状態に対応させ、遷移可能な状態間を接続した１つの木構造で表した動作パターンを用いる。同じ姿勢を含む複数の動作としては、基準の技を示す動作、基準の技の下位の技を示す動作、基準の技及び下位の技が不成立や失敗となる場合の動作が挙げられる。これにより、対象物である選手の動作が予定外の動作となった場合でも、次のタイミングにおける対象物の姿勢を精度良く推定することができ、３Ｄセンサの画角に占める対象物の割合が高い状態で３次元データの取得を継続することができる。
【００８５】
また、動作パターンに含まれる状態のうち、遷移可能な状態であって、遷移確率が最も高い状態が示す姿勢を、次のタイミングにおける対象物の姿勢として推定することで、より精度良く次のタイミングにおける対象物の姿勢を推定することができる。
【００８６】
＜第２実施形態＞
次に、第２実施形態について説明する。なお、第２実施形態に係る３次元データ取得装置において、第１実施形態に係る３次元データ取得装置１０と同様の部分については、同一符号を付して詳細な説明を省略する。
【００８７】
図１に示すように、３次元データ取得装置２１０は、取得部１１と、認識部１２と、推定部２１３と、制御部１７とを含む。また、３次元データ取得装置２１０の所定の記憶領域には、演技予定リスト２１と、履歴ＤＢ２２と、動作パターンＤＢ２２３とが記憶される。
【００８８】
動作パターンＤＢ２２３には、第１実施形態に係る動作パターンＤＢ２３に含まれる動作パターンを表現した木構造、及び各状態の状態情報に加え、図１３に示すような、つなぎ動作テーブル２２３Ａが含まれる。先行の技が終了して後続の技の実施に移る場合に、歩いたり、ステップしたり、ポーズをとったり、前転等の難易度の低い技を実施したりなど、演技予定リスト２１に含まれない動作が実施される場合がある。このようなつなぎ動作は、先行の技を接続元の技、後続の技を接続先の技とした場合、その接続される技の種類によって、ある程度決まったパターンの動作が実施される傾向がある。そこで、つなぎ動作テーブル２２３Ａには、つなぎ動作のパターンを、接続元の技と接続先の技と対応付けて記憶しておく。
【００８９】
例えば、図１３の例では、つなぎ動作パターンＩＤ＝１のつなぎ動作パターンは、技４と技６との間には、つなぎ動作として技５が実施されることを表している。つなぎ動作パターンは、つなぎ動作パターンＩＤ＝３、４、５のつなぎ動作パターンのように、複数のつなぎ動作を含む場合もある。また、図１３の例で、「つなぎ動作パターン」の欄が空欄のつなぎ動作パターンは、「接続元技」及び「接続先技」欄の動作を複数回繰り返すことを表している。例えば、技６と技１との間のつなぎ動作パターンとして、つなぎ動作パターンＩＤ＝３及び６が実施される場合、技６→つなぎ動作Ａ→つなぎ動作Ａ→つなぎ動作Ｂ→技１となる。
【００９０】
また、動作パターンＤＢ２２３に記憶される動作パターンには、つなぎ動作の動作パターンも含まれる。
【００９１】
推定部２１３は、状態判定部２１４と、状態推定部２１５と、位置推定部１６とを含む。
【００９２】
状態判定部２１４は、第１実施形態の状態判定部１４と同様に、認識部１２により認識された対象物の人体モデルが示す姿勢が、どの動作パターンに含まれるどの状態かを判定する。時刻Ｔｎ−１の状態が技の区切りの姿勢を示す状態である場合、状態判定部２１４は、終了した技の次の技を含む動作パターンから時刻Ｔｎの状態候補を抽出する。この際、状態判定部２１４は、次の技として、演技予定リスト２１から得られる次の技だけでなく、つなぎ動作テーブル２２３Ａを参照して、時刻Ｔｎ−１で終了した技と、次の技との間のつなぎ動作も対象とする。
【００９３】
例えば、図２に示す演技予定リスト２１にしたがって、時刻Ｔｎ−１で、演技予定リストの２番目の技６が終了している場合、状態判定部２１４は、次の技１を示す動作パターン（例えば、図４のパターン１）から状態候補を抽出する。さらに、状態判定部２１４は、例えば図１３に示すつなぎ動作テーブル２２３Ａを参照して、技６と技１とのつなぎ動作パターンに含まれるつなぎ動作Ａの動作パターンからも状態候補を抽出する。
【００９４】
状態推定部２１５は、時刻Ｔｎ＋１の状態候補を抽出する際に、状態判定部２１４と同様に、つなぎ動作テーブル２２３Ａも参照する点が、第１実施形態の状態推定部１５と異なる。
【００９５】
３次元データ取得装置２１０は、例えば図９に示すコンピュータ４０で実現することができる。コンピュータ４０の記憶部４３には、コンピュータ４０を３次元データ取得装置２１０として機能させるための３次元データ取得プログラム２５０が記憶される。３次元データ取得プログラム２５０は、取得プロセス５１と、認識プロセス５２と、推定プロセス２５３と、制御プロセス５７とを有する。また、記憶部４３は、動作パターンＤＢ２２３を構成する情報が記憶される情報記憶領域６０を有する。
【００９６】
ＣＰＵ４１は、３次元データ取得プログラム２５０を記憶部４３から読み出してメモリ４２に展開し、３次元データ取得プログラム２５０が有するプロセスを順次実行する。ＣＰＵ４１は、推定プロセス２５３を実行することで、図１に示す推定部２１３として動作する。他のプロセスについては、第１実施形態における３次元データ取得プログラム５０と同様である。これにより、３次元データ取得プログラム２５０を実行したコンピュータ４０が、３次元データ取得装置２１０として機能する。
【００９７】
なお、３次元データ取得プログラム２５０により実現される機能は、例えば半導体集積回路、より詳しくはＡＳＩＣ等で実現することも可能である。
【００９８】
次に、第２実施形態に係る３次元データ取得装置２１０の作用について説明する。第２実施形態においても、図１０に示す３次元データ取得処理が実行されるが、以下の点が、第１実施形態における３次元データ取得処理と異なる。１つ目は、図１１に示す状態判定処理のステップＳ２３で、時刻Ｔｎの状態候補を抽出する際に、つなぎ動作テーブル２２３Ａも参照する点である。２つ目は、図１２に示す状態推定処理のステップＳ３２で、事項Ｔｎ＋１の状態候補を抽出する際に、つなぎ動作テーブル２２３Ａも参照する点である。他の点については、第１実施形態における３次元データ取得処理と同様の処理が実行されるため、詳細な説明を省略する。
【００９９】
以上説明したように、第２実施形態に係る３次元データ取得装置２１０は、次の技に移行するタイミングにおける時刻Ｔｎの状態を判定する際、及び時刻Ｔｎ＋１の状態を推定する際に、技と技との間のつなぎの動作も考慮する。これにより、演技予定リストに記述されていない動作が技と技との間に実施された場合でも、３次元センサの画角に占める対象物の割合が高い状態で３次元データの取得を継続することができる。
【０１００】
なお、上記各実施形態では、演技を実施する体操選手を対象物とする場合について説明したが、これに限定されない。事前のプランに従った動作を行う対象物、例えば、フィギュアスケート、スケートボードやスノーボードなどのハーフパイプ、モーグル、水泳飛込み、演武、ダンスなどの競技者を対象物として適用することも可能である。
【０１０１】
また、上記各実施形態では、認識部で認識した人体モデルのサイズを正規化した上で、動作パターンＤＢに記憶された状態の状態情報（姿勢を示す各部位の座標群）と比較する場合について説明したが、これに限定されない。例えば、動作パターンＤＢに記憶された状態の状態情報が示す人体モデルを、実際の選手のサイズに対応したサイズに補正した上で、認識部で認識されたサイズを正規化していない人体モデルと比較するようにしてもよい。図１４に示すように、人体モデルのサイズを正規化したり補正したりすることにより、様々なサイズに適用するために、１つの状態について複数の状態情報を動作パターンＤＢに記憶しておく必要がない。
【０１０２】
また、上記各実施形態では、時刻Ｔｎ＋１の状態候補のうち、時刻Ｔｎの状態からの遷移確率が最も高い状態候補を時刻Ｔｎ＋１の状態として推定する場合について説明したが、これに限定されない。抽出された状態候補の全て、又は遷移確率が所定値以上の状態候補などのように、複数の状態候補を時刻Ｔｎ＋１の状態として採用してもよい。この場合、採用した状態の各々が示す姿勢の全てを包含する領域を、時刻Ｔｎ＋１における対象物が占める領域として算出することができる。
【０１０３】
また、上記各実施形態では、時刻Ｔｎ＋１における対象物の位置を推定する際に、人体モデルを構成する各部位の座標値の履歴を参照する場合について説明したが、これに限定されない。例えば、推定された時刻Ｔｎ＋１の状態が示す姿勢が、人体の所定部位が固定地点にある姿勢の場合は、その部位を基準とした位置を推定してもよい。人体の所定部位とは、例えば、あん馬の場合は体を支持している手、床の場合は地面に着いている手や足、人体が空中にある場合は背骨などの重心である。
【０１０４】
また、上記では、３次元データ取得プログラム５０、２５０が記憶部４３に予め記憶（インストール）されている態様を説明したが、これに限定されない。プログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の記憶媒体に記憶された形態で提供することも可能である。
【０１０５】
以上の各実施形態に関し、更に以下の付記を開示する。
【０１０６】
（付記１）
３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得する取得部と、
前記取得部により取得された３次元データに基づいて、前記対象物の位置及び姿勢を認識する認識部と、
同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照して、受け付けた前記対象物が実施する予定の動作の情報と、前記認識部により認識された前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定すると共に、推定した姿勢と、前記認識部により認識された前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定する推定部と、
前記推定部で推定された前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する制御部と、
を含む３次元データ取得装置。
【０１０７】
（付記２）
前記動作パターンは、前記同一の姿勢を含む関連する複数の動作として、基準の技を示す動作と、前記基準の技の実施中における対象物の姿勢から遷移可能な他の技を示す動作と、前記基準の技及び前記他の技が不成立又は失敗した場合の動作とを含む対象物の動作を示す動作パターンであり、
前記推定部は、前記対象物が実施する予定の動作の情報として、前記対象物が実施予定の技のリストを参照する
付記１記載の３次元データ取得装置。
【０１０８】
（付記３）
前記推定部は、前記認識部により認識された前記対象物の姿勢に対応する状態を含んで定義された動作パターンにおいて、前記対応する状態から遷移可能な状態が示す姿勢を、前記次のタイミングにおける前記対象物の姿勢として推定する付記１又は付記２に記載の３次元データ取得装置。
【０１０９】
（付記４）
前記認識部は、前記取得部により取得された３次元データに基づいて、前記対象物の各部位の座標値の集合で表される人体モデルを認識し、
前記動作パターンは、前記対象物の各部位の座標値の集合で表された前記対象物の姿勢を示す状態の遷移で定義され、
前記推定部は、前記対象物の各部位の相対座標系、グローバル座標系、及び前記動作パターンが示す動作の進行方向を基準とした座標系の少なくとも１つの座標系において、前記認識部により認識された前記人体モデルを表す座標値の集合との差が所定の範囲内となる座標値の集合で表された前記動作パターンの状態を、前記認識部により認識された前記対象物の姿勢に対応する状態として判定する
付記３に記載の３次元データ取得装置。
【０１１０】
（付記５）
前記推定部は、前記対応する状態から遷移可能な状態を、状態間の遷移確率に基づいて推定する付記３又は付記４に記載の３次元データ取得装置。
【０１１１】
（付記６）
前記遷移確率は、動作の難易度、対象物の特性、対象物の姿勢の変化の速度、現在の対象物の姿勢と対応する状態が示す姿勢との逸脱度のいずれかを含む付記５に記載の３次元データ取得装置。
【０１１２】
（付記７）
前記動作パターン記憶部に、技と技との間の動作を示すつなぎ動作パターンがさらに記憶され、
前記推定部は、前記実施予定の技のリストにしたがって、次に実施する予定の技を含む動作パターンと、直前に終了した技と次に実施する予定の技との間の動作を示すつなぎ動作パターンとを参照する
付記２〜付記６のいずれか１項記載の３次元データ取得装置。
【０１１３】
（付記８）
３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得し、
取得した３次元データに基づいて、前記対象物の位置及び姿勢を認識し、
同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照して、受け付けた前記対象物が実施する予定の動作の情報と、認識した前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定すると共に、推定した姿勢と、認識した前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定し、
推定した前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する
ことを含む処理をコンピュータが実行する３次元データ取得方法。
【０１１４】
（付記９）
前記動作パターンは、前記同一の姿勢を含む関連する複数の動作として、基準の技を示す動作と、前記基準の技の実施中における対象物の姿勢から遷移可能な他の技を示す動作と、前記基準の技及び前記他の技が不成立又は失敗した場合の動作とを含む対象物の動作を示す動作パターンであり、
前記対象物が実施する予定の動作の情報として、前記対象物が実施予定の技のリストを参照する
付記８記載の３次元データ取得方法。
【０１１５】
（付記１０）
認識した前記対象物の姿勢に対応する状態を含んで定義された動作パターンにおいて、前記対応する状態から遷移可能な状態が示す姿勢を、前記次のタイミングにおける前記対象物の姿勢として推定する付記８又は付記９に記載の３次元データ取得方法。
【０１１６】
（付記１１）
取得した３次元データに基づいて、前記対象物の各部位の座標値の集合で表される人体モデルを認識し、
前記動作パターンは、前記対象物の各部位の座標値の集合で表された前記対象物の姿勢を示す状態の遷移で定義され、
前記対象物の各部位の相対座標系、グローバル座標系、及び前記動作パターンが示す動作の進行方向を基準とした座標系の少なくとも１つの座標系において、認識した前記人体モデルを表す座標値の集合との差が所定の範囲内となる座標値の集合で表された前記動作パターンの状態を、認識した前記対象物の姿勢に対応する状態として判定する
付記１０に記載の３次元データ取得方法。
【０１１７】
（付記１２）
前記対応する状態から遷移可能な状態を、状態間の遷移確率に基づいて推定する付記１０又は付記１１に記載の３次元データ取得方法。
【０１１８】
（付記１３）
前記遷移確率は、動作の難易度、対象物の特性、対象物の姿勢の変化の速度、現在の対象物の姿勢と対応する状態が示す姿勢との逸脱度のいずれかを含む付記１２に記載の３次元データ取得方法。
【０１１９】
（付記１４）
前記動作パターン記憶部に、技と技との間の動作を示すつなぎ動作パターンがさらに記憶され、
前記実施予定の技のリストにしたがって、次に実施する予定の技を含む動作パターンと、直前に終了した技と次に実施する予定の技との間の動作を示すつなぎ動作パターンとを参照する
付記９〜付記１３のいずれか１項記載の３次元データ取得方法。
【０１２０】
（付記１５）
３次元センサにより検出された、対象物上の各点の３次元位置を示す３次元データを取得し、
取得した３次元データに基づいて、前記対象物の位置及び姿勢を認識し、
同一の姿勢を含む関連する複数の動作を示し、かつ前記対象物の姿勢を示す状態の遷移で定義された動作パターンが複数記憶された動作パターン記憶部を参照して、受け付けた前記対象物が実施する予定の動作の情報と、認識した前記対象物の姿勢とに基づいて、次のタイミングにおける前記対象物の姿勢を推定すると共に、推定した姿勢と、認識した前記対象物の位置の変化とに基づいて、前記次のタイミングに前記対象物が存在する位置を推定し、
推定した前記対象物の姿勢及び位置に基づいて、前記３次元センサの向き及び画角を制御する
ことを含む処理をコンピュータに実行させる３次元データ取得プログラム。
【０１２１】
（付記１６）
前記動作パターンは、前記同一の姿勢を含む関連する複数の動作として、基準の技を示す動作と、前記基準の技の実施中における対象物の姿勢から遷移可能な他の技を示す動作と、前記基準の技及び前記他の技が不成立又は失敗した場合の動作とを含む対象物の動作を示す動作パターンであり、
前記対象物が実施する予定の動作の情報として、前記対象物が実施予定の技のリストを参照する
付記１５記載の３次元データ取得プログラム。
【０１２２】
（付記１７）
認識した前記対象物の姿勢に対応する状態を含んで定義された動作パターンにおいて、前記対応する状態から遷移可能な状態が示す姿勢を、前記次のタイミングにおける前記対象物の姿勢として推定する付記１５又は付記１６に記載の３次元データ取得プログラム。
【０１２３】
（付記１８）
取得した３次元データに基づいて、前記対象物の各部位の座標値の集合で表される人体モデルを認識し、
前記動作パターンは、前記対象物の各部位の座標値の集合で表された前記対象物の姿勢を示す状態の遷移で定義され、
前記対象物の各部位の相対座標系、グローバル座標系、及び前記動作パターンが示す動作の進行方向を基準とした座標系の少なくとも１つの座標系において、認識した前記人体モデルを表す座標値の集合との差が所定の範囲内となる座標値の集合で表された前記動作パターンの状態を、認識した前記対象物の姿勢に対応する状態として判定する
付記１７に記載の３次元データ取得プログラム。
【０１２４】
（付記１９）
前記対応する状態から遷移可能な状態を、状態間の遷移確率に基づいて推定する付記１７又は付記１８に記載の３次元データ取得プログラム。
【０１２５】
（付記２０）
前記遷移確率は、動作の難易度、対象物の特性、対象物の姿勢の変化の速度、現在の対象物の姿勢と対応する状態が示す姿勢との逸脱度のいずれかを含む付記１９に記載の３次元データ取得プログラム。
【符号の説明】
【０１２６】
１０、２１０  ３次元データ取得装置
１１   取得部
１２   認識部
１３、２１３  推定部
１４、２１４  状態判定部
１５、２１５  状態推定部
１６   位置推定部
１７   制御部
２１   演技予定リスト
２２   履歴ＤＢ
２２Ａ 人体モデル履歴テーブル
２２Ｂ 状態履歴テーブル
２２Ｃ 技実施履歴テーブル
２３、２２３  動作パターンＤＢ
２２３Ａ      つなぎ動作テーブル
３１   ３Ｄセンサ
３２   駆動部
４０   コンピュータ
４１   ＣＰＵ
４２   メモリ
４３   記憶部
４９   記憶媒体
５０、２５０  ３次元データ取得プログラム
【図１】
2018142815.tif 000003
【図２】
2018142815.tif 000004
【図３】
2018142815.tif 000005
【図４】
2018142815.tif 000006
【図５】
2018142815.tif 000007
【図６】
2018142815.tif 000008
【図７】
2018142815.tif 000009
【図８】
2018142815.tif 000010
【図９】
2018142815.tif 000011
【図１０】
2018142815.tif 000012
【図１１】
2018142815.tif 000013
【図１２】
2018142815.tif 000014
【図１３】
2018142815.tif 000015
【図１４】
2018142815.tif 000016