(57)【要約】【課題】観測データと教師データとを比較することによって、両者のカテゴリが同一かどうかを高速に判定する。【解決手段】姿勢検出装置が開示される。姿勢検出装置は、第１の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、第１の回転モーメント行列とを用いて得られる行列から、複数の教師データと観測データとの間の第１の類似度を求め、第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、第１の類似度とを比較することによって、第１の姿勢が複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する。【選択図】図１
2015111332.tif 000002
【特許請求の範囲】
【請求項１】
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求める類似度算出部と、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する類似姿勢判定部と
を含む姿勢検出装置。
【請求項２】
前記観測データが第１の観測データと第２の観測データを含むとき、前記第１の観測データから得られる前記第１の回転モーメント行列を第１観測行列、前記第２の観測データから得られる前記第１の回転モーメント行列を第２観測行列とすると
さらに、
前記第２観測行列と前記第１観測行列との差分を計算する差分類似度算出部を含み、
前記類似度算出部は、前記差分、前記左特異ベクトル、前記右特異ベクトルを用いて得られる行列から第２の類似度を求める、請求項１に記載の姿勢検出装置。
【請求項３】
前記第２の類似度Ｒｐは、前記特異値行列をＳ＝｛ｓｉｊ｝（１≦ｌ＜≦ｋ）として、
【数３９】
2015111332.tif 000041
である請求項１または２に記載の姿勢検出装置。
【請求項４】
前記第１の類似度は、前記第１の回転モーメント行列をＭ’、前記左特異ベクトルをＶ、右特異ベクトルをＵとして、
【数４０】
2015111332.tif 000042
で表される行列Ｔの要素を用いて定義される請求項１乃至３のいずれか一項に記載の姿勢検出装置。
【請求項５】
前記第１の類似度Ｒは、前記行列Ｔの要素ｔｉｊ（１≦ｌ＜≦ｋ）を用いて、
【数４１】
2015111332.tif 000043
である請求項４に記載の姿勢検出装置。
【請求項６】
コンピュータによって実行される姿勢検出方法であって、
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求めるとと、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定することと
を含む姿勢検出方法。
【請求項７】
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求め、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する
処理をコンピュータに実行させることを特徴とする姿勢検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、姿勢検出装置、姿勢検出方法および姿勢検出プログラムに関するものである。
【背景技術】
【０００２】
様々な分野でユーザにサービスを提供するにあたり，ユーザに応じて，またはユーザ状況に応じて適切なサービス内容を選択して提供することが求められている．これに伴い、ユーザの状態を知るためのセンシング技術の重要性がこれまで以上に大きくなってきている。
【０００３】
一方、ユーザの姿勢を検出するためのデバイスとしては、モーションキャプチャにかわり、人の代表的な位置の座標をセンシングすることのできるデバイス（たとえば、Ｋｉｎｅｃｔ（登録商標））も登場している。
【０００４】
このようなデバイスを用いることにより、容易にユーザの骨格モデルの三次元座標（以後、単に姿勢と呼ぶこともある）を観測できるようになった。これらのデバイスを用いることにより、ユーザの状態を得るために有効な情報として姿勢のデータを手軽に得ることができるようになった。
【０００５】
デバイスによって取得された姿勢のデータ（測定データ、観測データと呼ぶことがある）が、どのような姿勢であると同定する手法については、観測データを予め取得された教師データと比較し、観測データが、どの姿勢に対応する教師データと一致するかを判定する手法が一般的である。このような手法として、たとえば、相互部分空間法を用いた競合学習により姿勢の判定を含むパターン認識手法が知られている（たとえば、非特許文献１、特許文献１）。この手法では、観測データの基底ベクトルの張る部分空間と、教師データの基底ベクトルの張る部分空間の正準角をもとに、類似度を判定する。
【０００６】
また、部分空間法において、辞書生成用特徴パターン群から、多項式ニューラルネットワークにより二次関数を学習し、二次関数の主要成分を保存する部分空間を選択することによって、特徴空間の次元を削減する方法が知られている（たとえば、特許文献２）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１８１５６８号公報
【特許文献２】特開２０１０−３９７７８号公報
【非特許文献】
【０００８】
【非特許文献１】黒澤典義、金谷健一、「部分空間分離法とモデル選択による運動物体の分離」情報処理学会研究報告ＣＶＩＭ［コンピュータビジョンとイメージメディア］１２４−４（２０００年１１月２１日）２０００(１０６)、ｐｐ．２５−３２
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、一般的に、観測データと教師データとを比較することによって、観測データが示すカテゴリ（たとえば、それらのデータが示す姿勢）と教師データが示すカテゴリが同一かどうかを判定する方法は反復計算を伴うため、処理時間が大きいという問題がある。
【００１０】
よって、一つの側面として、本発明は、観測データと教師データとを比較することによって、観測データが示すカテゴリが、教師データが示すカテゴリと同一かどうかを高速に判定する姿勢検出装置、姿勢検出方法および姿勢検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
姿勢検出装置が開示される。姿勢検出装置は、物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求める類似度算出部と、前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する類似姿勢判定部とを含むことを特徴とする。
【発明の効果】
【００１２】
観測データと教師データとを比較することによって、観測データが示すカテゴリが、教師データが示すカテゴリと同一かどうかを高速に判定することができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態の姿勢検出装置の機能ブロックの例を示す図である。
【図２】実施形態の姿勢検出装置の構成の例を示す図である。
【図３】事前処理の流れの例を示す図である。
【図４】実施形態の姿勢検出方法の処理の流れの例を示す図である。
【図５】行動パターン分析への適用例での定式化の例を説明する図である。
【図６】行動パターン分析への適用例での定式化の例を説明する図である。
【発明を実施するための形態】
【００１４】
以下では、人物の各部位の座標を観測し、その観測の結果に基づいて、人物がどのような姿勢（ポーズ）にあるのかを判定する姿勢検出装置、姿勢検出方法および姿勢検出プログラムについて説明するが、人物の姿勢の検出以外の判定にも適用可能である。たとえば、人物以外の動物の他、静物、ロボット、ロケット、自動車、飛行機、船などの機械など任意の物体にも適用可能である。ここで、人物の姿勢は、複数のカテゴリに分類されていても良い。また、実施例として、姿勢検出装置で用いられるアルゴリズムが、人の行動予測にも適用できる例を説明する。実施例についても、行動予測は人のものには限定されない。人物以外の動物であってもよい。
【００１５】
まず、ユーザの複数の部位の座標をカメラ等のセンサで観測し、その観測結果を教師データと比較することによって、ユーザの姿勢を検出する姿勢検出装置を説明する。
【００１６】
＜姿勢検出の比較例＞
まずは、姿勢検出の比較例について説明する。
【００１７】
ユーザのｎ個の部位の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜ｎ）を観測する。ｎは１０程度の整数でも良いし、それ以上でも以下でも良い。各部位は３次元空間中の座標として表される。ｎ個の座標（ｘｉ、ｙｉ、ｚｉ）から次のようなパラメータ行列Ｘを生成する。
【００１８】
【数１】
2015111332.tif 000003
【００１９】
つまり、パラメータ行列Ｘは、ｉ番目の部位の座標（ｘｉ、ｙｉ、ｚｉ）を縦ベクトルで表し、ｎ個の縦ベクトルを横に並べて得られる行列である。パラメータ行列Ｘは、ランク３の３×ｎ行列である。
【００２０】
ただし、このパラメータ行列Ｘは、センサの位置による回転、並進、拡大等の影響を受けている。そこで、パラメータ行列Ｘから、分散共分散行列Ｍを求める。分散共分散行列Ｍは、回転、並進の下で不変である。
【００２１】
座標ｘａｖ、ｙａｖ、ｚａｖをそれぞれ、座標ｘｉ、ｙｉ、ｚｉ（ｉ＝１〜ｎ）の平均とする。すなわち、（ｘａｖ、ｙａｖ、ｚａｖ）は、ｎ個の座標（ｘｉ、ｙｉ、ｚｉ）の重心である。行列Ｘ’を、
【数２】
2015111332.tif 000004
によって定義すると、分散共分散行列Ｍは、
【数３】
2015111332.tif 000005
である。分散共分散行列Ｍは、ランク３のｎ×ｎ行列である。以下でＴは行列の転置を表すことがある。
【００２２】
この分散共分散行列Ｍを固有値分解（または特異値分解）し、固有ベクトル（特異ベクトル）の張る部分空間を求める。上の例では、パラメータ行列Ｘのランクが３であるため、分散共分散行列Ｍのランクも３である。そして、分散共分散行列Ｍを固有値分解（または特異値分解）することによって３つの固有ベクトル（特異ベクトル）の張る部分空間が得られる。つまり、ユーザのｎ個の部位の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜ｎ）に対して、部分空間が一意に決まる。
【００２３】
この部分空間は、ユーザのｎ個の部位の座標（ｘｉ、ｙｉ、ｚｉ）に関する情報を含んでいる。３つの固有ベクトルの張る部分空間と、ユーザの姿勢の関係について説明する。
【００２４】
分散共分散行列Ｍの３つの固有ベクトルをａ１＝（ａ１１、ａ１２、・・・、ａ１ｎ）、ａ２＝（ａ２１、ａ２２、・・・、ａ２ｎ）、ａ３＝（ａ３１、ａ３２、・・・、ａ３ｎ）とする。これらの３つの固有ベクトルを並べて得られる行列をＡとする。すなわち、
【数４】
2015111332.tif 000006
とする。定義より、行列Λを特異値行列（固有値行列）として、
【数５】
2015111332.tif 000007
である。さらに、
【数６】
2015111332.tif 000008
【００２５】
によって行列Ａ’を導入すると、分散共分散行列Ｍは、
【数７】
2015111332.tif 000009
と書くことができる。つまり、行列Ａ’は回転、並進の自由度を除いて行列Ｘ’に相当する。実際には、行列Ａ’は行列Ｘ’に３次元の回転を作用させることによって得られることがある。このように、行列Ａ’は、回転の自由度を除き、ユーザのｎ個の部位の座標（ｘｉ、ｙｉ、ｚｉ）を一意に表現する行列である。
【００２６】
したがって、たとえば２つのｎ個の部位の座標に対して得られる２つの部分空間がどれだけ類似しているかを数値化することは、その２つのｎ個の部位の座標で表される２つの姿勢がどれだけ類似しているかを表す類似度を得ることと同義である。
【００２７】
これまでにも類似度の定義はいくつか提案されている。
たとえば、２つのｎ個の部位の座標を観測データと教師データと呼ぶことにする。そして、観測データと教師データを加算し、得られた行列の「ランク３らしさ」を類似度とすることが提案されている。
【００２８】
観測データから得られる分散共分散行列をＰとし、教師データから得られる分散共分散行列をＰ’とする。両者を加算して行列Ｑ＝Ｐ＋Ｐ’を得る。この行列Ｑのランクを求める。行列Ｐも行列Ｐ’もランク３の行列である。もし、行列Ｐと行列Ｐ’になんら関係性がなければ、行列Ｑのランクは６となる。また、回転と拡大の自由度を除いて、行列Ｐと行列Ｐ’が同一であれば、行列Ｑのランクは３である。よって、行列Ｒのランクが３にどれだけ近いかを数値化できれば、それは類似度となり得る。
【００２９】
しかし、実際には、量子化誤差や計算誤差のため、行列Ｒのランクを厳密に求めると６となってしまう。
【００３０】
また、行列Ｑの固有値（特異値）の値を用いて「ランク３らしさ」とすることが提案されている。
【００３１】
また、観測データから得られる分散共分散行列をＰと、教師データら得られる分散共分散行列をＰ’とし、それらから得られる２つの部分空間Ａ、Ａ’の第１正準角を類似度とすることも提案されている。第１正準角とは、次のように定義される。一方の部分空間Ａ上の単位ベクトルのうち、他方の部分空間Ａ’への射影長が最大となるベクトルｖ１を選び、それを他方の部分空間Ａ’に射影したベクトルをｖ２とする。ベクトルｖ１とベクトルｖ２のなす角が第１正準角である。第１正準角は、２つの部分空間Ａ、Ａ’が最も近くなる角度である。この場合、第１正準角をθとして、類似度Ｒを、
【数８】
2015111332.tif 000010
と定義する。
【００３２】
上記のように定義された類似度Ｒを計算するには、固有値分解（特異値分解）のような反復計算を伴うため、処理時間が大きいという問題がある。
【００３３】
＜姿勢検出装置＞
以下で図面を参照して、実施形態に係る姿勢検出装置について説明する。
【００３４】
姿勢検出システム１０は、ユーザの複数の部位の座標を検出するセンサ２１と、姿勢検出装置２０と、ディスプレイ、プリンタ等の出力装置３０を含んでいる。
【００３５】
また、姿勢検出装置２０には、予め用意された教師データ２２が入力される。
以下で説明する姿勢検出装置２０は、物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、第１の回転モーメント行列とを用いて得られる行列から、複数の教師データと観測データとの間の第１の類似度を求め、第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、複数の教師データ間の第２の類似度と、第１の類似度とを比較することによって、第１の姿勢が複数の教師データで表される姿勢のカテゴリに属するかどうかを判定することができる。
【００３６】
姿勢検出装置２０は、教師データ入力部２０２、教師データ特徴量算出部２０４、教師データ特徴量記憶部２０６、類似度閾値判定部２０８、姿勢データ入力部２１０、差分類似度算出部２１２、類似度算出部２１４、類似度記憶部２１６、類似姿勢判定部２１８、および出力部２１０を含む。
【００３７】
しかしながら、事前処理を行う教師データ入力部２０２、教師データ特徴量算出部２０４、教師データ特徴量記憶部２０６を含む装置は、外部デバイスとして設けられていても良い。この場合、姿勢検出装置２０は、類似度閾値判定部２０８、姿勢データ入力部２１０、差分類似度算出部２１２、類似度算出部２１４、類似度記憶部２１６、類似姿勢判定部２１８、および出力部２１０を含む。
【００３８】
教師データ特徴量算出部２０４は教師データ特徴量を算出し、教師データ特徴量は教師データ特徴量記憶部２０６に格納され得る。類似度算出部２１４は類似度を算出し、類似度は類似度記憶部２１６に格納され得る。
【００３９】
姿勢検出装置２０の出力部２２０は、類似姿勢判定部２１８での判定結果を出力装置３０に出力する。
【００４０】
姿勢のあるカテゴリに関する教師データ２２が姿勢検出装置２０の教師データ入力部２０２に入力される。教師データ入力部２０２、教師データ特徴量算出部２０４、および類似度閾値判定部２０８は、センサ２１からユーザの複数の部位の座標に関するデータが姿勢データ入力部２１０に入力される以前に、教師データ２２を処理することが好ましい。
【００４１】
教師データ２２は、センサ２１で観測されたユーザの複数の部位の座標から、ユーザがどの姿勢であるかを判定する際に参照するデータ（類似度）を生成するために姿勢検出装置２０に入力される。
【００４２】
教師データ２２は、姿勢の所定のカテゴリｐに対応する座標ｘｐｋ（ｋ＝１、２、３、・・・）であり得る。たとえば、座標ｘｐｋは１０個の座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜１０）を含んでも良い。姿勢の所定のカテゴリｐとしては、たとえば、右手を挙げている姿勢、正座、起立などが含まれる。
【００４３】
姿勢検出装置２０の教師データ特徴量算出部２０４では、以下のような処理を行う。
まず姿勢検出装置２０の教師データ特徴量算出部２０４は、姿勢の所定のカテゴリｐに属する教師データに含まれる座標ｘｐｋ（ｋ＝１、２、３、・・・）と、複数個の座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜ｎ）の重心を（ｘｐｍ、ｙｐｍ、ｚｐｍ）として、各座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜ｎ）の重心（ｘｐｍ、ｙｐｍ、ｚｐｍ）からの相対ベクトルを横に並べた行列Ｘｐを定義する。たとえば、座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）の数が１０個である場合、Ｘｐは、
【数９】
2015111332.tif 000011
となる。
【００４４】
次に姿勢検出装置２０の教師データ特徴量算出部２０４は、行列Ｘｐを用いて分散共分散行列Ｍｐを求める。行列Ｍｐを回転モーメント行列と呼ぶことがある。行列Ｍｐは、
【数１０】
2015111332.tif 000012
で定義される。行列Ｘｐが１０個の座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜１０）を含むとき、行列Ｍｐは、１０×１０行列である。
【００４５】
一般に、姿勢の所定のカテゴリｐにカテゴライズされる姿勢の教師データは、複数のサンプルを含んでいる。そこで、それらのサンプルについて平均を取ったものを姿勢ｐの回転モーメント行列Ｍｓｕｍ（ｐ）とする。
【００４６】
【数１１】
2015111332.tif 000013
ここで、｜＃ｓａｍｐｌｅ｜はサンプル数であり、和は全てのサンプルについて取るものとする。
【００４７】
姿勢検出装置２０の教師データ特徴量算出部２０４は、この姿勢の所定のカテゴリｐの回転モーメント行列Ｍｓｕｍ（ｐ）を特異値分解する。すなわち、回転モーメント行列Ｍｓｕｍ（ｐ）を、
【数１２】
2015111332.tif 000014
のように分解し、左特異ベクトルＵｐと、右特異ベクトルＶｐ、特異値行列Ｓを得る。これら左特異ベクトルＵｐと、右特異ベクトルＶｐ、特異値行列Ｓの全てまたは一部は、教師データ特徴量２０６に含まれ得る。
【００４８】
上記のように姿勢の所定のカテゴリｐに対する回転モーメント行列Ｍｓｕｍ（ｐ）を、複数のサンプルから計算するとき、姿勢の所定のカテゴリｐに対するサンプル間の差異、座標の観測誤差、途中の計算や通信、入力の際の量子化誤差などの誤差が生じ、蓄積され得る。
【００４９】
そこで姿勢検出装置２０の類似度閾値判定部２０８では、複数のサンプルの各教師データの回転モーメント行列Ｍｐについて類似度Ｒｐを計算する。
【００５０】
固有値（特異値）の大きさは、分解前の行列Ｑに対する、観測データと教師データに関する固有ベクトルの寄与率である。そこで、固有値（特異値）を大きい順に並べた上位３つを加えた値と、それ以外の固有値の和の比を「ランク３らしさ」としても良い。つまり、ｉ番目の固有値をｓｉｉとすると、
【数１３】
2015111332.tif 000015
と類似度Ｒｐを定義する。
【００５１】
類似度Ｒｐは、特異値行列をＳ＝｛ｓｉｊ｝（１≦ｌ＜≦ｋ）として、
【数１４】
2015111332.tif 000016
によって定義しても良い。この類似度Ｒｐは、姿勢検出の際、観測データから得られた類似度Ｒと比較される。たとえば類似度Ｒが、複数のサンプルの各教師データの回転モーメント行列Ｍｐの類似度Ｒｐの最小値以下の場合、観測データに対応する姿勢は、教師データに対応する姿勢のカテゴリに属すると判定しても良い。
【００５２】
センサ２１は、ユーザの複数の部位の座標を観測する。もし、１０箇所の部位の座標を観測するなら、センサ２１は姿勢データとして、１０個の３次元座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜１０）を得る。そして、センサ２１は観測データに関する情報を姿勢検出装置２０の姿勢データ入力部２１０に送る。姿勢データとはセンサ２１で得られる観測データ（測定データ）である。
【００５３】
姿勢検出装置２０の姿勢データ入力部２１０は、センサ２１から送られた姿勢データに関する情報を差分類似度算出部２１２に送る。
【００５４】
差分類似度計算部２１２は、センサ２１からの姿勢データが時々刻々変化するとき、またはセンサ２１からの姿勢データの差分が疎行列である場合に、逐次処理を行うことによって高速化する処理を行う。したがって、このような処理を行わない場合には、差分類似度計算部２１２は姿勢データを類似度計算部２１４に送るだけであっても良い。
【００５５】
姿勢検出装置２０の類似度計算部２１４では、教師データと同様に姿勢データについても、１０個の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜１０）の重心を（ｘｍ、ｙｍ、ｚｍ）として、行列Ｙを
【数１５】
2015111332.tif 000017
とする。
【００５６】
次に姿勢検出装置２０の類似度計算部２１４は、行列Ｙを用いて分散共分散行列Ｍ’を求める。行列Ｍ’も回転モーメント行列と呼ぶことがある。行列Ｍ’は、
【数１６】
2015111332.tif 000018
で定義される。行列Ｙが１０個の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜１０）を含むとき、行列Ｍは、１０×１０行列である。
【００５７】
姿勢検出装置２０の類似度計算部２１４では、姿勢のカテゴリｐに対応する教師データ特徴量に含まれる左特異ベクトルＵｐと、右特異ベクトルＶｐを用いて、回転モーメント行列Ｍ’から特異値行列Ｓを計算する。特異値行列Ｓｐは、
【数１７】
2015111332.tif 000019
と定義される。これは、姿勢のカテゴリｐに対する左特異ベクトルＵｐと、右特異ベクトルＶｐを用いて計算された特異値行列である。もし、姿勢がｎ種類、つまり姿勢にはｎ個のカテゴリがあるとすると、特異値行列もｎ個計算される。上記の計算には、特異値分解のように、計算時間およびコストが掛かる反復計算は含まれていない。
【００５８】
類似度計算部２１４では、上記の行列Ｓｐの要素から、姿勢データと姿勢のカテゴリｐに対する教師データの類似度Ｒを、
【数１８】
2015111332.tif 000020
によって計算する。ここで｜ｓｉｊ｜は、行列Ｓｐのｉ行ｊ列要素のノルムである。類似度計算部２１４は、カテゴリｐに対応する右特異ベクトルＵｐと左特異ベクトルＶｐを用いて特異値行列Ｓｐを得て、その特異値行列Ｓｐから類似度Ｒを求める。つまり、カテゴリｐの種類の数だけ類似度が求められる。これらの類似度のうち最大のものを類似度Ｒとして出力しても良い。類似度は類似度記憶部２１６に格納され得る。
【００５９】
類似姿勢判定部２１８では、観測データから求められた類似度Ｒと類似度閾値判定部２０８で得られた類似度Ｒｐが比較される。たとえば、観測データから求められた類似度Ｒが、カテゴリｐに属する複数のサンプルの各教師データの回転モーメント行列Ｍｐの類似度Ｒｐの最小値以下の場合、観測データに対する姿勢は、姿勢のカテゴリｐに属すると判定しても良い。
【００６０】
類似姿勢判定部２１８での判定結果は、出力部２２０に送られる。
出力部２２０では、判定結果を出力装置３０に送る。
【００６１】
出力装置３０では、ディスプレイに表示する、紙に印刷するなどの方法で、判定結果をユーザ等に示す。
【００６２】
差分類似度算出部２１２では、逐次処理を行うことによって、処理の高速化を図る。
ここでは、姿勢データが時々刻々と変化する場合について説明する。
【００６３】
ｔ番目の観測時刻における姿勢データから得られる回転モーメント行列をＭ（ｔ）とする。すると、
【数１９】
2015111332.tif 000021
となる。ここで、ｄＭ＝Ｍ（ｔ＋１）−Ｍ（ｔ）である。このように差分類似度算出部２１２は、類似度記憶部２１６に格納されている前回観測された姿勢データとの差分のみを計算することによって、処理の逐次化を行う。そして、処理を逐次化することによって、観測ごとの差分が小さい（たとえば、ｄＭが疎行列である）場合、逐次化を行うことによって、姿勢データが時々刻々と変化する場合に、計算の高速化を図ることができる。
【００６４】
このように、姿勢検出装置２０は、複数の座標を含む観測データで表される物体の姿勢が、各々が複数の座標を含む複数の教師データで表される姿勢のカテゴリに属するかどうかを、複数の教師データの各々に対して分散共分散行列を求め、分散共分散行列を複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して、左特異ベクトル、右特異ベクトル、および特異値行列を得て、特異値行列の行列要素を用いて得られる前記複数の教師データ間の類似度を表す第２の類似度を、複数の教師データと観測データの類似を表す第１の類似度と比較することによって判定する。
【００６５】
たとえば、姿勢検出装置２０の教師データ特徴量算出部２０４は、姿勢のあるカテゴリｐに属する複数の教師データの各々に対して分散共分散行列Ｍ＝Ｘ’ＴＸ’を求め、分散共分散行列Ｍ＝Ｘ’ＴＸ’を複数の教師データにわたって加算して得られる第２の回転モーメント行列Ｍｎを特異値分解Ｍｎ＝ＵＳＶＴして、左特異ベクトルＶ、右特異ベクトルＵ、および特異値行列Ｓ＝｛ｓｉｊ｝を求め、特異値行列Ｓの行列要素を用いて複数の教師データ間の第２の類似度Ｒｐを求める。
【００６６】
姿勢検出装置２０の類似度算出部２１４は、観測データから得られる行列Ｙ’から分散共分散行列である第１の回転モーメント行列Ｍ’＝Ｙ’ＴＹ’を求め、第１の回転モーメント行列Ｍ’＝Ｘ’ＴＸ’、左特異ベクトルＶ、右特異ベクトルＵを用いて得られる行列
【数２０】
2015111332.tif 000022
から複数の教師データと観測データの類似を表す第１の類似度を求める。
【００６７】
姿勢検出装置２０の類似姿勢判定部２１８は、第１の類似度と第２の類似度を比較することによって、物体の姿勢が教師データが定めるカテゴリに属するかどうかを判定する。
【００６８】
たとえば、類似姿勢判定部２１８は、姿勢のカテゴリｐに対する教師データから得られた第２の類似度と、姿勢のカテゴリｐに対する教師データから得られた左特異ベクトルと右特異ベクトルを姿勢データ（観測データ）から得られる分散共分散行列（回転モーメント行列）に作用させて得られる行列から算出される第１の類似度を、姿勢のカテゴリｐに対する教師データから得られる第２の類似度と比較する。第１の類似度が、姿勢のカテゴリｐに対する教師データから得られる第２の類似度より小さければ、姿勢データが対応する姿勢は、姿勢のカテゴリｐに属すると判定しても良い。
【００６９】
また姿勢検出装置２０は、差分類似度算出部２１２を含む。
観測データが第１の観測データと第２の観測データを含むとき、第１の観測データから得られる第１の回転モーメント行列を第１観測行列、第２の観測データから得られる第１の回転モーメント行列を第２観測行列とすると、差分類似度算出部２１２は、第２観測行列と第１観測行列との差分を計算する。また、類似度算出部２１４は、差分、左特異ベクトル、右特異ベクトルを用いて得られる行列から第１の類似度を求め得る。
【００７０】
このように姿勢検出装置２０は、類似度算出部２１４において、物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、第１の回転モーメント行列とを用いて得られる行列から、複数の教師データと観測データとの間の第１の類似度を求め、類似姿勢判定部２１８において、第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、複数の教師データ間の第２の類似度と、第１の類似度とを比較することによって、姿勢が複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する。
【００７１】
姿勢検出装置２０は、観測データと教師データとを比較する際に、特異値分解のように、計算時間およびコストが掛かる反復計算は含まれていないので、観測データが示すカテゴリが教師データが示すカテゴリと同一かどうかを高速に判定することができる。
【００７２】
図２は実施形態の姿勢検出装置の構成の例を示す図である。
このコンピュータ１００は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）１０２、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０４、及びＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０６を備えている。コンピュータ５００は、さらに、ハードディスク装置１０８、入力装置１１０、表示装置１１２、インタフェース装置１１４、及び記録媒体駆動装置１１６を備えている。なお、これらの構成要素はバスライン１２０を介して接続されており、ＣＰＵ１０２の管理の下で各種のデータを相互に授受することができる。
【００７３】
Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）１０２は、このコンピュータ１００全体の動作を制御する演算処理装置であり、コンピュータ１００の制御処理部として機能する。
【００７４】
Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１０４は、所定の基本制御プログラムが予め記録されている読み出し専用半導体メモリである。ＣＰＵ１０２は、この基本制御プログラムをコンピュータ１００の起動時に読み出して実行することにより、このコンピュータ１００の各構成要素の動作制御が可能になる。
【００７５】
Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１０６は、ＣＰＵ１０２が各種の制御プログラムを実行する際に、必要に応じて作業用記憶領域として使用する、随時書き込み読み出し可能な半導体メモリである。
【００７６】
ハードディスク装置１０８は、ＣＰＵ１０２によって実行される各種の制御プログラムや各種のデータを記憶しておく記憶装置である。ＭＰＵ５０２は、ハードディスク装置１０８に記憶されている所定の制御プログラムを読み出して実行することにより、後述する各種の制御処理を行えるようになる。
【００７７】
入力装置１１０は、例えばマウス装置やキーボード装置であり、情報処理装置のユーザにより操作されると、その操作内容に対応付けられている各種情報の入力を取得し、取得した入力情報をＣＰＵ１０２に送付する。
【００７８】
表示装置５１２は例えば液晶ディスプレイであり、ＭＰＵ５０２から送付される表示データに応じて各種のテキストや画像を表示する。
【００７９】
インタフェース装置１１４は、このコンピュータ１００に接続される各種機器との間での各種情報の授受の管理を行う。
【００８０】
記録媒体駆動装置１１６は、可搬型記録媒体１１８に記録されている各種の制御プログラムやデータの読み出しを行う装置である。ＣＰＵ１０２は、可搬型記録媒体１１８に記録されている所定の制御プログラムを、記録媒体駆動装置１１６を介して読み出して実行することによって、後述する各種の制御処理を行うようにすることもできる。なお、可搬型記録媒体１１８としては、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格のコネクタが備えられているフラッシュメモリ、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などがある。
【００８１】
このようなコンピュータ１００を用いて姿勢検出装置を構成するには、例えば、上述の各処理部における処理をＣＰＵ１０２に行わせるための制御プログラムを作成する。作成された制御プログラムはハードディスク装置１０８若しくは可搬型記録媒体１１８に予め格納しておく。そして、ＣＰＵ１０２に所定の指示を与えてこの制御プログラムを読み出させて実行させる。こうすることで、姿勢検出装置が備えている機能がＣＰＵ１０２により提供される。
【００８２】
＜姿勢検出処理＞
図３、４を参照して、姿勢検出装置１０における処理について説明する。
【００８３】
また、姿勢検出装置１０が図２に示されているような汎用コンピュータ１００である場合には、下記の説明は、そのような処理を行う制御プログラムを定義する。すなわち、以下では、下記に説明する処理を汎用コンピュータに行わせる制御プログラムの説明でもある。
【００８４】
図３は、事前処理の流れの例を示す図である。事前処理は、センサ２１からユーザの複数の部位の座標に関するデータが姿勢データ入力部２１０に入力される以前に、処理されることが好ましい。
【００８５】
処理が開始されるとＳ１００で姿勢検出装置２０の教師データ特徴量算出部２０４は、姿勢の所定のカテゴリｐに対応するユーザの部位の座標をｘｐｋ（ｋ＝１、２、３、・・・）とする。たとえば姿勢の所定のカテゴリｐに対応する教師データが１０個あり、それらの座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜１０）の重心を（ｘｐｍ、ｙｐｍ、ｚｐｍ）とすると、教師データ特徴量算出部２０４は行列Ｘｐを
【数２１】
2015111332.tif 000023
のように定義する。
【００８６】
Ｓ１００で姿勢検出装置２０の教師データ特徴量算出部２０４は、行列Ｘｐを用いて回転モーメント行列Ｍｐを求める。行列Ｍｐは、
【数２２】
2015111332.tif 000024
で定義される。たとえば行列Ｘｐが１０個の座標（ｘｐｉ、ｙｐｉ、ｚｐｉ）（ｉ＝１〜１０）を含むとき、行列Ｍｐは、１０×１０行列である。
【００８７】
一般に、所定の姿勢のカテゴリｐとカテゴライズされる姿勢の学習データは、複数のサンプルを含んでいる。そこで、それらのサンプルについて平均を取ったものを姿勢のカテゴリｐの回転モーメント行列Ｍｓｕｍ（ｐ）とする。
【００８８】
【数２３】
2015111332.tif 000025
ここで、｜＃ｓａｍｐｌｅ｜はサンプル数であり、和は全てのサンプルについて取るものとする。
【００８９】
次のＳ１０２で姿勢検出装置２０の教師データ特徴量算出部２０４は、この姿勢のカテゴリｐの回転モーメント行列Ｍｓｕｍ（ｐ）を特異値分解する。すなわち、回転モーメント行列Ｍｓｕｍ（ｐ）を
【数２４】
2015111332.tif 000026
のように左特異ベクトルＵｐと、右特異ベクトルＶｐ、特異値行列Ｓを用いて分解する。Ｓ１０２で姿勢検出装置２０の教師データ特徴量算出部２０４は、算出された左特異ベクトルＵｐと、右特異ベクトルＶｐ、特異値行列Ｓを教師データ特徴量記憶部２０６に格納しても良い。またＳ１０２で姿勢検出装置２０の教師データ特徴量算出部２０４は、算出された左特異ベクトルＵｐと、右特異ベクトルＶｐのみを教師データ特徴量記憶部２０６に格納しても良い。
【００９０】
次のＳ１０４で姿勢検出装置２０の類似度閾値判定部２０８は、複数のサンプルの各教師データの回転モーメント行列Ｍｐから、姿勢のカテゴリｐに対する類似度Ｒｐを算出する。
【００９１】
Ｓ１０４では、算出された姿勢のカテゴリｐに対する類似度Ｒｐを教師データ特徴量記憶部２０６に格納しても良い。
【００９２】
以上が事前処理の流れの例である。
図４は、実施形態の姿勢検出方法の処理の流れの例を示す図である。
【００９３】
図４に示されている処理は、時々刻々、ユーザの姿勢が変化する場合の処理に関するものであるが、ユーザの姿勢が変化しない場合の処理は、逐次処理を省略すればよい。また、図４に示されている処理の前提として、図３に示されている事前処理が終了しているものとする。
【００９４】
Ｓ２００で姿勢検出装置２０の類似度計算部２１４では、教師データと同様に姿勢データについても、１０個の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜１０）の重心を（ｘｍ、ｙｍ、ｚｍ）として、行列Ｙを
【数２５】
2015111332.tif 000027
とする。
【００９５】
また、Ｓ２００で姿勢検出装置２０の類似度計算部２１４は、行列Ｙを用いて回転モーメント行列Ｍを求める。行列Ｍは、
【数２６】
2015111332.tif 000028
で定義される。行列Ｘが１０個の座標（ｘｉ、ｙｉ、ｚｉ）（ｉ＝１〜１０）を含むとき、行列Ｍは、１０×１０行列である。
【００９６】
次のＳ２０２で姿勢検出装置２０の類似度計算部２１４は、姿勢のカテゴリｐに対する教師データ特徴量に含まれる左特異ベクトルＵｐと、右特異ベクトルＶｐを用いて、回転モーメント行列Ｍ’から特異値行列Ｓを計算する。特異値行列Ｓｐは、
【数２７】
2015111332.tif 000029
と定義される。これは、姿勢のカテゴリｐに対する左特異ベクトルＵｐと、右特異ベクトルＶｐを用いて計算された特異値行列である。もし、姿勢がｎ種類あるとすると、特異値行列もｎ個計算される。上記の計算には、特異値分解のように、計算時間およびコストが掛かる反復計算は含まれていない。
【００９７】
また、Ｓ２０２で類似度計算部２１４は、上記の行列Ｓｐの要素から、姿勢データ（観測データ）と姿勢のカテゴリｐに対応する教師データの類似度Ｒを、
【数２８】
2015111332.tif 000030
によって計算する。ここで｜ｓｉｊ｜は、行列Ｓｐのｉ行ｊ列要素のノルムである。類似度Ｒは、姿勢のカテゴリがｋ種類あるとすると、ｋ個算出され得る。類似度計算部２１４は、このようなｋ個の類似度Ｒの最小のものを類似度として出力しても良い。得られた類似度は類似度記憶部２１６に格納され得る。
【００９８】
Ｓ２０４で差分類似度算出部２１２は、ｔ番目の観測時刻における姿勢データから得られる回転モーメント行列をＭ（ｔ）とすると、ｄＭ＝Ｍ（ｔ＋１）−Ｍ（ｔ）を計算する。
【００９９】
次のＳ２０６で差分類似度算出部２１２は、
【数２９】
2015111332.tif 000031
を計算する。
【０１００】
そして、Ｓ２０６で類似度計算部２１４は、行列Ｓｐ（ｔ）＋ＵｐＴｄＭＶｐの要素から、姿勢データ（観測データ）と姿勢のカテゴリｐに対応する教師データの類似度Ｒを計算する。
【０１０１】
また、Ｓ２０６で類似姿勢判定部２１８は、類似度ＲとＳ１０４で類似度閾値判定部２０８によって得られた類似度Ｒｐを比較して、姿勢データで表される姿勢が、姿勢のどのカテゴリに対応するかどうかを判定する。たとえば、類似度が複数のサンプルの各教師データの回転モーメント行列Ｍｐの類似度Ｒｐの最小値以下の場合、同一の姿勢のカテゴリに属すると判定しても良い。本ステップの処理が終了すると、Ｓ２０８に進む。
【０１０２】
Ｓ２０８で類似姿勢判定部２１８は、姿勢検出処理を終了するか否かを判定する。この判定はたとえば、観測回数が所定の値に達したか否か、つまり計測をはじめてから所定の時間が経過したか否かに基づいて判定しても良い。また、ｄＭ＝Ｍ（ｔ＋１）−Ｍ（ｔ）が所定の値より小さいか否かに基づいて判定しても良い。この判定の結果が“Ｙｅｓ”、すなわち姿勢検出処理を終了すると判断する場合には、処理を終了する。またこの判定の結果が“Ｎｏ”、すなわち姿勢検出処理を終了しないと判断する場合には、Ｓ２０４に戻る。
【０１０３】
このような処理を行うことによって、観測データと教師データとを比較することによって、それらのデータが示すカテゴリが同一かどうかを高速に判定することができる。
【０１０４】
＜実施例＞
上記のような姿勢検出装置、姿勢検出方法は、ユーザの行動予測にも応用することができる。
【０１０５】
ユーザとのインタラクションを行うシステムが知られている。そのようなシステムでは、ユーザの余計な手間を省くことで使い勝手を良くしたいという要望が存在する。インターネット上のショッピングサイトでの、商品のリコメンドなどもこの例に含まれ得る。インターネット上のショッピングサイトでは、購入履歴からユーザの欲しがっていそうなものをお薦めするが、ここでは過去のユーザの行動パターンから、次何をしそうか、という予測をすることで、多数ある機能へのアクセス手順の簡略化（例えば、予測した機能へのショートカットを動的に提示するなど）を行うことができる。
【０１０６】
以下では、どこも様々なセンサから得られる入力情報（イベントとも呼ぶ）からユーザの状態、たとえば何をしようとしている途中なのか、の推測を行う例について説明する。
【０１０７】
「イベント」とは、センサから得られたユーザ（や、その周辺機器）に関する情報を指しても良い。例えば、人の顔検出、視線や正面顔検出、視線やジェスチャ検出、姿勢検出（ポーズなど）、タッチセンサ反応、音声反応などが挙げられる。これらのイベントは、多くは時系列で蓄積されていき、また情報の重要性や（人間の認識する）意味合い等の分類等がされていないことが多い。
【０１０８】
「ユーザの行動」とは、実際にユーザの行った行動ではなく、インタラクションのゴールになるようなイベント情報（情報にアクセスした、ログアウトした、何か要求を行った等）を指しても良い。何らかのセンサやインタラクション対象の機器からの情報が入力される事象を「ユーザの行動」と呼ぶことがある。
【０１０９】
また、行動パターンとして処理するデータは、ユーザの行動を最後の要素として持つような、イベントの時系列情報を指す。たとえば、ユーザの行動としてＡ１、Ａ２、Ａ３があり、それ以外のイベントとして、Ｂ１、Ｂ２、Ｂ３、Ｂ４が存在するシステムを考える。行動パターンとしては、たとえば、「Ｂ１−Ｂ３−Ｂ４−Ｂ２−Ｂ３−Ａ１」、「Ｂ１−Ｂ２−Ｂ３−Ｂ２−Ｂ４−Ａ２」、「Ｂ１−Ｂ２−Ｂ３−Ｂ２−Ｂ３−Ａ３」、「Ｂ１−Ｂ３−Ｂ２−Ｂ３−Ａ３」などが考えられる。上記の例では行動パターン内にユーザの行動が一つずつしか含まれていないが、この限りではない。また、人の行動は一定期間を記録すれば良いというものではないため、行動パターン自体は可変長をとるものとする。
【０１１０】
可変長の行動パターンの定型化の例に、リカレンスプロットがある。これは、カオス時系列の統計的解析等に用いられる可視化技法で、変数ｕを現在の状態、変数ｖを＝一つ前の状態と定義してｕｖ平面上へプロットする。
【０１１１】
ここで、リカレンスプロットの技法を用いて行動パターンをｕ、ｖ軸ともにＡ１、Ａ２、Ａ３，Ｂ１、Ｂ２、Ｂ３、Ｂ４の７状態を持つ二次元平面へプロットすると、どんな長さのデータであっても、７×７の行列データへと変換できる。例として一つ定型化を行うと、行動パターン「Ｂ１−Ｂ２−Ｂ３−Ｂ４−Ｂ２−Ａ２」は、図５に示されているような行列Ｘとなる。
【０１１２】
あるユーザの行動がどのパターンに分類されるのかを判定するためには、教師データによって、行動パターンを予めカテゴライズしておく必要がある。例えば、上のようにＡ２で終わる行動パターンを収集した場合でも、人の行動には気まぐれが混入するため、全く同じデータが取れるとは限らない。例えば、１００件のデータを取った際に、Ｘの累計は図６に示されているＸｔｏｔａｌのようになるとする。
【０１１３】
ある時のユーザの行動パターンと、教師データの記述形式（行列の大きさ、要素の順序）が同じとなり、本質的に「行列の類似度算出」と同様の方法で、行動パターンの分析を行うことができる。
【０１１４】
上では、人の行動予測を説明したが、人以外の任意の物体でも良い。
【０１１５】
以上の実施形態および実施例に関し、さらに以下の付記を開示する。
（付記１）
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求める類似度算出部と、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する類似姿勢判定部と
を含む姿勢検出装置。
（付記２）
前記観測データが第１の観測データと第２の観測データを含むとき、前記第１の観測データから得られる前記第１の回転モーメント行列を第１観測行列、前記第２の観測データから得られる前記第１の回転モーメント行列を第２観測行列とすると、
さらに、
前記第２観測行列と前記第１観測行列との差分を計算する差分類似度算出部を含み、
前記類似度算出部は、前記差分、前記左特異ベクトル、前記右特異ベクトルを用いて得られる行列から前記第１の類似度を求める、付記１に記載の姿勢検出装置。
（付記３）
前記第２の類似度Ｒｐは、前記特異値行列をＳ＝｛ｓｉｊ｝（１≦ｌ＜≦ｋ）として、
【数３０】
2015111332.tif 000032
である付記１または２に記載の姿勢検出装置。
（付記４）
前記第１の類似度は、前記第１の回転モーメント行列をＭ’、前記左特異ベクトルをＶ、右特異ベクトルをＵとして、
【数３１】
2015111332.tif 000033
で表される行列Ｔの要素を用いて定義される付記１乃至３のいずれか一項に記載の姿勢検出装置。
（付記５）
前記第１の類似度Ｒは、前記行列Ｔの要素ｔｉｊ（１≦ｌ＜≦ｋ）を用いて、
【数３２】
2015111332.tif 000034
である付記４に記載の姿勢検出装置。
（付記６）
コンピュータによって実行される姿勢検出方法であって、
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求めるとと、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定することと
を含む姿勢検出方法。
（付記７）
前記観測データが第１の観測データと第２の観測データを含むとき、前記第１の観測データから得られる前記第１の回転モーメント行列を第１観測行列、前記第２の観測データから得られる前記第１の回転モーメント行列を第２観測行列とすると、
さらに、
前記第２観測行列と前記第１観測行列との差分を計算することと、
前記差分、前記左特異ベクトル、前記右特異ベクトルを用いて得られる行列から第１の類似度を求めることと
を含む、付記６に記載の姿勢検出方法。
（付記８）
前記第２の類似度Ｒｐは、前記特異値行列をＳ＝｛ｓｉｊ｝（１≦ｌ＜≦ｋ）として、
【数３３】
2015111332.tif 000035
である付記６または７に記載の姿勢検出方法。
（付記９）
前記第１の類似度は、前記第１の回転モーメント行列をＭ’、前記左特異ベクトルをＶ、右特異ベクトルをＵとして、
【数３４】
2015111332.tif 000036
で表される行列Ｔの要素を用いて定義される付記６乃至８のいずれか一項に記載の姿勢検出方法。
（付記１０）
前記第１の類似度Ｒは、前記行列Ｔの要素ｔｉｊ（１≦ｌ＜≦ｋ）を用いて、
【数３５】
2015111332.tif 000037
である付記９に記載の姿勢検出方法。
（付記１１）
物体の姿勢を表す観測データから得られる行列から分散共分散行列である第１の回転モーメント行列を求め、複数の教師データの各々に対する分散共分散行列を前記複数の教師データにわたって加算して得られる第２の回転モーメント行列を特異値分解して得られる左特異ベクトルと右特異ベクトルと、前記第１の回転モーメント行列とを用いて得られる行列から、前記複数の教師データと前記観測データとの間の第１の類似度を求め、
前記第２の回転モーメント行列を特異値分解して得られる特異値行列の行列要素を用いて得られる、前記複数の教師データ間の第２の類似度と、前記第１の類似度とを比較することによって、前記姿勢が前記複数の教師データで表される姿勢のカテゴリに属するかどうかを判定する
処理をコンピュータに実行させることを特徴とする姿勢検出プログラム。
（付記１２）
前記観測データが第１の観測データと第２の観測データを含むとき、前記第１の観測データから得られる前記第１の回転モーメント行列を第１観測行列、前記第２の観測データから得られる前記第１の回転モーメント行列を第２観測行列とすると、
さらに、
前記第２観測行列と前記第１観測行列との差分を計算することと、
前記差分、前記左特異ベクトル、前記右特異ベクトルを用いて得られる行列から第１の類似度を求める
処理をコンピュータに実行させることを特徴とする付記１１に記載の姿勢検出プログラム。
（付記１３）
前記第２の類似度Ｒｐは、前記特異値行列をＳ＝｛ｓｉｊ｝（１≦ｌ＜≦ｋ）として、
【数３６】
2015111332.tif 000038
である付記１１または１２に記載の姿勢検出プログラム。
（付記１４）
前記第１の類似度は、前記第１の回転モーメント行列をＭ’、前記左特異ベクトルをＶ、右特異ベクトルをＵとして、
【数３７】
2015111332.tif 000039
で表される行列Ｔの要素を用いて定義される付記１１乃至１３のいずれか一項に記載の姿勢検出プログラム。
（付記１５）
前記第１の類似度Ｒは、前記行列Ｔの要素ｔｉｊ（１≦ｌ＜≦ｋ）を用いて、
【数３８】
2015111332.tif 000040
である付記１４に記載の姿勢検出プログラム。
【符号の説明】
【０１１６】
２０  姿勢検出装置
２１  センサ
２２  教師データ
２０２  教師データ入力部
２０４  教師データ特徴量算出部
２０６  教師データ特徴量記憶部
２０８  類似度閾値判定部
２１０  姿勢データ入力部
２１２  差分類似度算出部
２１４  類似度算出部
２１６  類似度記憶部
２１８  類似姿勢判定部
２２０  出力部
３０出力装置
【図１】
2015111332.tif 000044
【図２】
2015111332.tif 000045
【図３】
2015111332.tif 000046
【図４】
2015111332.tif 000047
【図５】
2015111332.tif 000048
【図６】
2015111332.tif 000049