(57)【要約】【課題】内界式のモーションセンサを用いた手の動作計測装置を提供する。【解決手段】３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、初期姿勢台に手を固定した状態を計測開始姿勢として、各姿勢センサモジュールの計測データを用いて各姿勢センサモジュールの姿勢を推定する姿勢推定手段と、を備えた手の動作計測装置。【選択図】図１
2014054483.tif 000002
【特許請求の範囲】
【請求項１】
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、
複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、
初期姿勢台に手を固定した状態を計測開始姿勢として、各姿勢センサモジュールの計測データを用いて各姿勢センサモジュールの姿勢を推定する姿勢推定手段と、
を備えた手の動作計測装置。
【請求項２】
計測開始姿勢及び計測終了姿勢が、前記初期姿勢台に手を固定した状態である、請求項１に記載の手の動作計測装置。
【請求項３】
前記姿勢推定手段は、
各姿勢センサモジュールの計測データを時系列で記憶する手段と、
計測データを用いて開始姿勢から時系列方向の順方向姿勢推定値を取得する手段と、
計測データを用いて終了姿勢から時系列と反対方向の逆方向姿勢推定値を取得する手段と、
前記順方向姿勢推定値と前記逆方向姿勢推定値とを、時刻に応じて重み付けして用いることで姿勢推定値を取得する手段と、
を備えている、請求項２に記載の手の動作計測装置。
【請求項４】
前記姿勢推定手段は、終了時刻から逆向きに姿勢推定計算を行う逆方向カルマンフィルタによる姿勢推定結果を、計測開始時刻から順方向に姿勢推定を行う際の観測値に重み付きで与えるゼロドリフト姿勢計算手段を、備えている、請求項３に記載の手の動作計測装置。
【請求項５】
前記ゼロドリフト姿勢計算手段は、観測値として、計測されていない地磁気ベクトルを与える場合において、地磁気ベクトルとして、順方向カルマンフィルタに計算された地磁気ベクトルと、逆方向カルマンフィルタに計算された地磁気ベクトルとを推定時刻に応じて重み付けした値を用いる、請求項４に記載の手の動作計測装置。
【請求項６】
前記初期姿勢台は、第１姿勢と、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢と、を取ることが可能であり、
第１姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて取得した第１データと、
第２姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて取得した第２データと、
第１姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの既知の第１姿勢データと、
第２姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの既知の第２姿勢データと、
から、各姿勢センサモジュールの取付姿勢を計算するキャリブレーション手段を備えており、
前記キャリブレーション手段によって、初期姿勢台に基準座標系が設定される、
請求項１〜５いずれか１項に記載の手の動作計測装置。
【請求項７】
前記装置は、前記複数の姿勢センサモジュールが装着される手に対応して手の関節リンクモデルを格納していると共に、手の関節リンクモデルを表示する表示部を備えており、
初期姿勢台に固定された状態の手の姿勢に一致させて前記関節リンクモデルの初期姿勢が設定される、請求項１〜７いずれか１項に記載の手の動作計測装置。
【請求項８】
前記姿勢推定手段によって、各時刻において各リンクの姿勢、角速度ベクトルが得られており、
手の関節モデルにおいて親リンク、子リンクが規定されており、
親リンクの座標系における子リンクの相対角速度ベクトルを主成分分析することで各関節の回転軸を得る、請求項７に記載の手の動作計測装置。
【請求項９】
前記姿勢推定手段は、カルマンフィルタを用いるものであり、
関節に設定した回転軸回り以外の回転がないという拘束条件をカルマンフィルタの観測方程式に加える、請求項８に記載の手の動作計測装置。
【請求項１０】
前記装置は、前記姿勢センサモジュールによる計測と同時にリンク位置を計測するリンク位置計測手段を備えており、計測されるリンクに対応する指を動かして、当該リンクの姿勢情報と位置情報を同時取得できるようになっており、
前記姿勢センサモジュールにより得られた姿勢情報と、前記リンク位置計測手段により得られた位置情報と、前記回転軸と、から、リンクパラメータを取得する手段、をさらに備えている、請求項８、９いずれか１項に記載の手の動作計測装置。
【請求項１１】
前記初期姿勢台に固定した手の関節リンクモデル上の初期関節角度が予め設定されており、
前記初期姿勢台に固定された手の各関節位置を、前記初期関節角度と前記リンクパラメータとによって推定する手段を備え、推定された各関節位置によって、前記関節リンクモデルの初期姿勢が設定される、
請求項１０に記載の手の動作計測装置。
【請求項１２】
前記姿勢センサモジュールは、五指の各リンクに各1個、手の甲に1個以上装着される、請求項  １〜１１いずれか１項に記載の手の動作計測装置。
【請求項１３】
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、
複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、
を用い、初期姿勢台に手を固定した状態を計測開始姿勢及び計測終了姿勢とした手の動作計測方法であって、
各姿勢センサモジュールの計測データを時系列で記憶するステップと、
計測データを用いて開始姿勢から時系列方向の順方向姿勢推定値を取得するステップと、
計測データを用いて終了姿勢から時系列と反対方向の逆方向姿勢推定値を取得するステップと、
前記順方向姿勢推定値と前記逆方向姿勢推定値とを、時刻に応じて重み付けして用いることで姿勢推定値を取得するステップと、
を備えている、手の動作計測方法。
【請求項１４】
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、
複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、
を用い、初期姿勢台に手を固定した状態を計測開始姿勢及び計測終了姿勢とした手の動作計測方法であって、
各姿勢センサモジュールの計測データを時系列で記憶するステップと、
計測データを用いて終了姿勢から時系列と反対方向の逆方向姿勢推定値を取得するステップと、
計測データを用いて開始姿勢から時系列方向の順方向姿勢推定値を取得する際に、前記逆方向姿勢推定値を時刻に応じて重み付けして用いるステップと、
を備えている、手の動作計測方法。
【請求項１５】
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールを用いた手の動作計測方法における姿勢センサモジュールの取付キャリブレーション方法であって、
当該方法は、複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台を用いるものであり、
前記初期姿勢台は、第１姿勢と、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢と、を取ることが可能であり、
前記第１姿勢及び前記第２姿勢は既知であり、第１姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの第１姿勢データ、第２姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの第２姿勢データ、が設定されており、
第１姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて第１データを取得するステップと、
前記初期姿勢台を、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢として、第２姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて第２データを取得するステップと、
前記第１データと前記第２データ、前記第１姿勢データ、前記第２姿勢データと、から、各姿勢センサモジュールの取付姿勢を計算するステップと、
を備えている、手の動作計測方法における姿勢センサモジュールの取付キャリブレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は手の動作計測装置に係り、詳しくは、内界式のモーションセンサを用いた手の動作計測装置に関するものである。
【背景技術】
【０００２】
人の手の動作の計測を行う方法として、カメラを用いる方式、磁気を用いる磁気方式、曲げセンサを用いる方式が知られている（非特許文献１）。しかし、カメラ方式や磁気方式のような、外界センサを用いた方式は、環境に固定された装置を必要とする方式であるため測定環境が制限され、ごく狭い領域しか動くことができないという問題がある。また、外界センサを用いた方式では、物体操作時の計測が隠れやその他干渉によって困難となる場合があり、特に、カメラを用いた光学式は隠れに弱いという本質的問題から、接触を前提とした動作計測には適していない。曲げセンサ方式の場合、曲げセンサの取り付けに厚いグローブが必要となるため、細かな作業や、道具の使用が強く制限される。
【０００３】
本発明者等は全身の運動計測でよく用いられている慣性センサを用いた小型姿勢センサによる運動計測システムを開発しており（非特許文献２）、指サイズにおさめるために地磁気センサと加速度センサを用いた小型の姿勢センサを試作したが、ジャイロセンサを内蔵することができず、早く動いている時の動きは計測することができなかった。
【０００４】
このように、従来の方法では、手による物体操作、道具使用の計測が強く制限され、部分的にしか可能でなかった。内界式のモーションキャプチャは、全身の動作計測に広く使われているが、小型化の問題、精度の問題から手の計測には一般には使われていない。
【非特許文献１】David J. Stuman: “A Survey of Glove-based Input”, IEEE ComputerGraphics & Applications, pp.30‐39, 1994.
【非特許文献２】鷺坂隆志, 大村吉幸, 藤森祐樹, 原田達也, 國吉康夫: 「手の接触運動キャプチャのための小型姿勢角センサモジュール」, 第14 回ロボティクスシンポジア, pp.102‐107, 2009.
【非特許文献３】L. Y. Chang, N. S. Pollard: “Method fordetermining kinematic parameters of the in vivo thumb carpometacarpal joint”,IEEE Trans. on Biomedical Engineering, Vol.55, No.7, 2008.
【非特許文献４】大村吉幸, 藤森祐樹, 原田達也, 國吉康夫, 「人の接触運動を計測するための触覚センサモジュールの姿勢推定」第14 回ロボティクスシンポジア, pp.471-478, 2009.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、内界式のモーションセンサを用いた手の動作計測装置を提供することを目的とするものである。
本発明は、地磁気センサを用いない姿勢センサを採用することに起因する不具合を解決することを目的とするものである。
本発明のより具体的な目的は、本明細書の記載から明らかとなる。
【課題を解決するための手段】
【０００６】
本発明が採用した技術手段は、
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、
複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、
初期姿勢台に手を固定した状態を計測開始姿勢として、各姿勢センサモジュールの計測データを用いて各姿勢センサモジュールの姿勢を推定する姿勢推定手段と、
を備えた手の動作計測装置、である。
１つの態様では、前記姿勢センサモジュールは、五指の各リンクに各1個、手の甲に1個以上装着される。
【０００７】
１つの態様では、前記小型姿勢センサモジュールは、地磁気センサを含まない。
多くの慣性センサでは地磁気センサにより得られる地磁気方向の情報を活用することで、重力方向と合せて姿勢センサモジュールの姿勢を一意に定めている。しかし、地磁気センサは金属の影響などで磁場が乱れることがあり、姿勢推定に悪影響を与えるおそれがある。地磁気センサの誤差を補償する方法もあるが、道具の使用やテーブルでの動作など磁場の乱れの影響が極めて大きい場合が想定されるため、手の姿勢推定においては地磁気センサに依存しないことが望ましい。
【０００８】
１つの態様では、
前記初期姿勢台は、第１姿勢と、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢と、を取ることが可能であり、
第１姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて取得した第１データと、
第２姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて取得した第２データと、
第１姿勢にある初期姿勢台に固定した手の骨格モデルの各リンクの既知の第１姿勢データと、
第２姿勢にある初期姿勢台に固定した手の骨格モデルの各リンクの既知の第２姿勢データと、
から、各姿勢センサモジュールの取付姿勢を計算するキャリブレーション手段を備えている。
各リンクの第１姿勢データ、第２姿勢データは、コンピュータの記憶部に設定されている。
姿勢センサモジュールの位置・姿勢は、装着ごとに変化するため、取付け姿勢のキャリブレーションが必要となる。
地磁気センサを用いずに、３軸加速度センサ及び３軸ジャイロセンサのみを用いる計測システムでは、基準座標系は初期姿勢台に対して設定する。
１つの態様では、Z軸を重力方向とし、手のメス型が上面にあるときを基準姿勢とし、初期姿勢台の立方体の重力軸に直交する辺に平行な軸をそれぞれ、X軸、Y軸に設定する。基準姿勢において手を装着したときの各リンクの姿勢を姿勢１（簡単のため単位行列）とすると、姿勢２は、単位行列（姿勢１）を、X軸またはY軸回りに90度回転した姿勢として計算できる。この２姿勢において、各姿勢センサモジュールの加速度センサの計測値を用いて、初期姿勢台に設定された基準座標系に対する相対姿勢として、各姿勢センサモジュールの取付け姿勢を計算する。このように、実際のキャリブレーションに用いる２つの姿勢間の相対姿勢と、コンピュータ上の各リンクの（キャリブレーショに用いる）２つの姿勢間の相対姿勢が等しければ、コンピュータ上の各リンクの姿勢は任意に選ぶことができ、例えば、初期状態に単位行列を用いることができる。
上記キャリブレーション手段によって、初期姿勢台に基準座標系が設定される。各姿勢センサモジュールは各センサ座標系を有しており、地磁気方向が取得できる場合には、地磁気方向をX軸、重力方向をZ軸とする基準座標系が一般的である。しかしながら、地磁気方向を判定できない姿勢センサモジュールを採用する場合には、例えば、立方体の初期姿勢台の重力方向に直交する辺をX軸、もう一辺をY軸として座標軸を設定し、各姿勢センサモジュールの取り付け姿勢を計算する。
キャリブレーションは、既知の２姿勢のみならず、既知の３姿勢以上に基づいて行ってもよい。
【０００９】
１つの態様では、計測開始姿勢及び計測終了姿勢が、前記初期姿勢台に手を固定した状態である。
【００１０】
地磁気センサを用いずに、３軸加速度センサ及び３軸ジャイロセンサのみを用いる計測システムでは、重力軸回りの回転はジャイロセンサによる角速度の積分のみによって計算するため、姿勢推定結果が積分誤差によるドリフトの影響を受けるという課題がある。
この課題を解決するべく、１つの態様では、前記姿勢推定手段は、
各姿勢センサモジュールの計測データを時系列で記憶する手段と、
計測データを用いて開始姿勢から時系列方向の順方向姿勢推定値を取得する手段と、
計測データを用いて終了姿勢から時系列と反対方向の逆方向姿勢推定値を取得する手段と、
前記順方向姿勢推定値と前記逆方向姿勢推定値とを、時刻に応じて重み付けして用いることで姿勢推定値を取得する手段と、
を備えている。
計測開始時刻に近いときには、順方向姿勢推定値と近く、終了時刻に近いときには逆方向姿勢推定値と近い値となるように姿勢推定値を計算する。
終了姿勢から逆向きに積分した姿勢データと、開始姿勢から順方向に積分した姿勢データの重みづけ平均をとることで、オフライン姿勢推定を行う。
【００１１】
１つの態様では、前記姿勢推定手段は、終了時刻から逆向きに姿勢推定計算を行う逆方向カルマンフィルタによる姿勢推定結果を、計測開始時刻から順方向に姿勢推定を行う際の観測値に重み付きで与えるゼロドリフト姿勢計算手段を、備えている。
【００１２】
１つの態様では、前記ゼロドリフト姿勢計算手段は、観測値として、計測されていない地磁気ベクトルを与える場合において、地磁気ベクトルとして、順方向カルマンフィルタに計算された地磁気ベクトルと、逆方向カルマンフィルタに計算された地磁気ベクトルとを推定時刻に応じて重み付けした値を用いる。
計測開始時刻の姿勢と終了時刻の姿勢が一致するという条件で、終了時刻から逆向きに姿勢推定を行い、その結果得られる仮想地磁気ベクトルを用いることで、開始時刻における姿勢と終了時刻の姿勢を一致させることでゼロドリフトを実現する。
【００１３】
１つの態様では、前記装置は、前記複数の姿勢センサモジュールが装着される手に対応して手の関節リンクモデルを格納していると共に、手の関節リンクモデルを表示する表示部を備えており、
初期姿勢台に固定された状態の手の姿勢に一致させて前記関節リンクモデルの初期姿勢が設定される。
【００１４】
前記姿勢推定手段によって、各時刻において各リンクの姿勢、角速度ベクトルが得られており、
手の関節モデルにおいて親リンク、子リンクが規定されており、
親リンクの座標系における子リンクの相対角速度ベクトルを主成分分析することで各関節の回転軸を得る。
１つの態様では、前記姿勢推定手段は、カルマンフィルタを用いるものであり、
関節に設定した回転軸回り以外の回転がないという拘束条件をカルマンフィルタの観測方程式に加える。
【００１５】
１つの態様では、前記装置は、前記姿勢センサモジュールによる計測と同時にリンク位置を計測するリンク位置計測手段を備えており、計測されるリンクに対応する指を動かして、当該リンクの姿勢情報と位置情報を同時取得できるようになっており、
前記姿勢センサモジュールにより得られた姿勢情報と、前記リンク位置計測手段により得られた位置情報と、前記回転軸とから、リンクパラメータを取得する手段、をさらに備えている。
１つの態様では、前記初期姿勢台に固定した手の関節リンクモデル上の初期関節角度（典型的には、0度）が予め設定されており、
前記初期姿勢台に固定された手の各関節位置を、前記初期関節角度と前記リンクパラメータとによって推定する手段を備え、推定された各関節位置によって、前記関節リンクモデルの初期姿勢が設定される。
手の動作計測時に、姿勢センサモジュールと、リンク位置計測手段として例示する光学式モーションキャプチャと、によって、各リンク上のマーカ位置と姿勢とを同時に計測する。この時、指に様々な動き方をさせ、可能な限りすべての方向に動かして、回転軸回りにマーカを回転運動させる。マーカの回転運動の軌跡と回転角度（姿勢センサモジュールによって得られる）を用いることで、回転軸の位置を取得することができる。
動作計測中は、回転軸の位置は手の移動に伴って動く。リンクパラメータ（各リンクの位置、姿勢を一意に決めるための固定パラメータ）が決まると、関節角度に応じた位置姿勢を運動学計算によって求めることができる。初期姿勢台に手を固定したときの関節位置は、例えば関節角度がすべて0度（初期条件）を入力した時の運動学計算の結果として得ることができる。
ここで、例えば、人差し指を何度曲げた状態を0度とするかは、任意に決めることができる。初期姿勢台を用いることによって、初期姿勢台に手を嵌めたときの関節角度はすべて0度であると各リンク座標の姿勢が等しい（典型的には単位行列）とすることで決めることができる。また、初期姿勢台に手を嵌めたときの回転軸ベクトルがジャイロセンサデータを主成分分析することで得られているので、リンクの位置が計算できる。
【００１６】
本発明が採用した他の技術手段は、
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールと、
複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台と、
を用い、初期姿勢台に手を固定した状態を計測開始姿勢及び計測終了姿勢とした手の動作計測方法であって、
各姿勢センサモジュールの計測データを時系列で記憶するステップと、
計測データを用いて開始姿勢から時系列方向の順方向姿勢推定値を取得するステップと、
計測データを用いて終了姿勢から時系列と反対方向の逆方向姿勢推定値を取得するステップと、
前記順方向姿勢推定値と前記逆方向姿勢推定値とを、時刻に応じて重み付けして用いることで姿勢推定値を取得するステップと、
を備えている、手の動作計測方法、である。
順方向姿勢推定値を取得するステップ、逆方向姿勢推定値を取得するステップが実行される時間的な順序は問わない。１つの態様では、先に逆方向のステップを行い、その後順方向姿勢推定を行う際に、前記逆方向姿勢推定値を、時刻に応じて重み付けして用いる。
【００１７】
本発明が採用した他の技術手段は、
３軸加速度センサ及び３軸ジャイロセンサを備え、手の所定部位にそれぞれ装着される複数の姿勢センサモジュールを用いた手の動作計測方法における姿勢センサモジュールの取付キャリブレーション方法であって、
当該方法は、複数の姿勢センサモジュールが装着された手を固定することで、当該手の姿勢を特定できる初期姿勢台を用いるものであり、
前記初期姿勢台は、第１姿勢と、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢と、を取ることが可能であり、
前記第１姿勢及び前記第２姿勢は既知であり、第１姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの第１姿勢データ、第２姿勢にある初期姿勢台に固定した手の関節リンクモデルの各リンクの第２姿勢データ、が設定されており、
第１姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて第１データを取得するステップと、
前記初期姿勢台を、当該第１姿勢に対して重力軸回り以外の回転を含む第２姿勢として、第２姿勢にある初期姿勢台に手を固定した状態で、前記小型姿勢センサモジュールの加速度センサを用いて第２データを取得するステップと、
前記第１データと前記第２データ、前記第１姿勢データ、前記第２姿勢データと、から、各姿勢センサモジュールの取付姿勢を計算するステップと、
を備えている、手の動作計測方法における姿勢センサモジュールの取付キャリブレーション方法、である。
【発明の効果】
【００１８】
本発明では、内界式のモーションセンサを用いた手の動作計測装置において、初期姿勢台を用いることで、各姿勢センサの取り付け姿勢を計算することができる。計測開始姿勢及び計測終了姿勢を、前記初期姿勢台に手を固定した状態とすることで、計測初期姿勢と終了姿勢が既知であることを利用して、ジャイロセンサの積分による角度のドリフトの影響を削除することができ、高精度でドリフトのない姿勢計測を行うことができる。
【００１９】
本発明では、初期姿勢台に固定した状態の手の初期姿勢を、コンピュータ内の関節リンクモデル（骨格モデル）とマッチさせることができ、人の手の運動計測システムを実現する。
【００２０】
従来、道具を使用する際の人の手の動きの計測については、隠れに弱く、計測が困難であったが、本発明では、人が手で物体操作、道具を使用する際の動作を計測することができ、従来不自然であったアニメーションにおける手の動きの改善や、ユーザビリティ評価などの産業応用が可能となる。また、従来のマーカを用いた光学式モーションキャプチャや磁気式では、マーカの数が多くなるほど計測が困難となり、
手と全身とを同時計測することは困難であったが、本発明に係る動作計測は、手と全身との同時計測が可能である。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係る分布姿勢センサシステムの概略図である。
【図２】本実施形態に係る手の運動計測の手順を示す図である。
【図３】初期姿勢台を用いたキャリブレーションを説明する図である。
【図４】ゼロドリフトの効果を示す図である。
【図５】拘束条件を加えることの効果を示す図である。
【図６】実施例で用いた開発した小型姿勢センサを示す図である。
【図７】実施例で用いた開発したシステムの概要を示す図である。
【図８】複数の姿勢センサを装着した手を示す図である。
【図９】姿勢センサモジュールのＩＤとリンクモデルを示す図である。
【図９Ａ】人の手の骨格図である。
【図９Ｂ】手のリンクモデルを示す。→は回転関節を示している。
【図９Ｃ】光学式マーカと姿勢センサの取付けを示す概略図である。
【図１０】計測結果を示す図であり、上から順に、グー、チョキ、パーの手の姿勢を示している。
【図１１】計測結果を示す図であり、ボトルのふた開け時の手の姿勢を示している。
【図１２】計測結果を示す図であり、はさみの使用時の手の姿勢を示している。
【発明を実施するための形態】
【００２２】
［１］システム構成
本実施形態に係るシステムは、小型姿勢センサモジュールと
、データ取得用通信機と 、姿勢センサのセンサデータを取得し蓄積するためのデータ蓄積・計算用コンピュータと、 初期姿勢台と、から構成される。１つの態様では、姿勢センサモジュールは、図１、図８、図９に示すように、五指の各リンクに１個ずつ、手の甲に３個装着される合計１８個の姿勢センサが用いられ、１８個の姿勢センサからの加速度データ、角速度データは、各姿勢センサモジュールが持つ通信機能を介してコンピュータにおいて同時計測される。コンピュータは、１つの態様ではオフラインで、計測データを解析し運動を再構成する。１つの態様では、姿勢センサモジュールは、直接手に装着されるが、薄手のグローブ上にセンサを装着してもよい。
【００２３】
小型姿勢センサモジュールは、3軸の加速度センサおよび3軸のジャイロおよび通信機能を有し、固有の通信IDを持つものとする。慣性センサを用いた従来の姿勢センサでは、3軸加速度センサ、3軸ジャイロ、3軸地磁気センサを用いる構成が一般的であるが、本実施形態に係るシステムでは地磁気センサを用いない。理由は、地磁気センサが金属の近くで誤動作すること、小型・省電力の実現のためである。地磁気センサを用いないことによる不具合は、姿勢センサの初期姿勢が一意に決らない、重力軸回りの回転角がジャイロセンサの積分に依存するためにドリフトすることであるが、これらについては後述する運動計測手順によって軽減することができる。
【００２４】
データ取得用通信機は、複数の小型姿勢センサモジュールと通信する機能を有し、姿勢センサモジュールの加速度およびジャイロセンサ等の情報を、データ蓄積・計算用コンピュータに伝達する機能を有する。
【００２５】
データ蓄積・計算用コンピュータは、データ取得用通信機より得たセンサデータを保存し、後述の姿勢計算アルゴリズムにより、手の姿勢を再構成する機能を有する。データ蓄積・計算用コンピュータは複数台から構成されてもよい。データ蓄積・計算用コンピュータは、入力部、出力部、演算部、記憶部、表示部等を備える汎用コンピュータから構成することができる。入力部から入力されたセンサデータは記憶部に記憶され、演算部によって所定の計算が実行されて、計算結果は記憶部に記憶されると共に、出力部から出力、あるいは／および表示部で表示される。
【００２６】
初期姿勢台は、手を固定する治具であり、手を固定したときに姿勢が一意に決まるものとする。また、初期姿勢台は、重力軸回り以外の方向に回転させ、姿勢を変化させることができるものとする。例えば、直方体の上面に人の手形（メス型)を接着したものが例示される（図２参照）。１つの態様では、１つの初期姿勢台を用いることで、計測開始時刻と計測終了時刻の姿勢を同じとする。運動計測時には、開始と終了時の手の姿勢を一致させるために、人の手形（メス型）からなる初期姿勢台に手を嵌めた状態を初期姿勢および終了姿勢とする。なお、各姿勢台により決定される姿勢間の姿勢変化が既知である複数の初期姿勢台、例えば、第１姿勢台、第２姿勢台、を用いることで、開始時刻と終了時刻の姿勢を異ならしめてもよい。
【００２７】
本システムの要旨を(i)(ii)(iii)に示す。
（i）取付キャリブレーション（姿勢センサモジュールの取り付け姿勢の計算）：初期姿勢台に手を嵌めた状態で、重力軸回り以外の方向に回転させた既知の２姿勢において、加速度センサのデータを計測する。この２姿勢の計測データを用いて、取り付け姿勢を計算する。
【００２８】
（ii）ドリフトの削除：ジャイロセンサのデータを積分する際に、ドリフトをゼロとすることは困難である。本発明における姿勢計測システムは、「初期姿勢と終了姿勢が等しい」、「姿勢計算をオフラインで行うこと」を特徴とすることで、蓄積したセンサデータから、ドリフトの影響を除去することが可能となる。具体的には、終了姿勢から逆向きに積分した姿勢データと、初期姿勢から順方向に積分した姿勢データの重みづけ平均をとることで、姿勢推定を行う。この際、開始時刻に近いときには、順方向姿勢推定値と近く、終了時刻に近いときには逆方向姿勢推定値と近い値となるように計算することでドリフトの影響を除去する。
【００２９】
（iii）骨格モデル：計測時の初期姿勢を毎回同じとすることで、コンピュータ上の骨格モデルの初期姿勢も毎回同じ姿勢となる。そのため、初期姿勢台における手の形をコンピュータに取り込むことができれば、そこからの姿勢変化として手の姿勢を計測することができる。さらに、この骨格モデルを用いて、姿勢センサデータの修復をすることができる。
【００３０】
図２に動作計測の手順を示す。計測プロトコールとして、取付キャリブレーション、ジャイロゼロオフセットキャリブレーション、初期姿勢、計測、が規定されている。手のモデルとして、リンク位置・リンク姿勢の同時計測、関節軸の決定、関節の回転中心（関節位置）及びリンク長の推定、が規定されている。
【００３１】
［２］初期姿勢台の作製
初期姿勢台は、姿勢を変化させるための立体部（基台）と、手の姿勢を固定するための固定部からなる。初期姿勢台は以下のように製作する。まず、アルジネート印象材を用いて、手のメス型を製作する。続いてそのメス型に石膏を流し込み、石膏のオス型を製作する。次に石膏に剥離材を成膜し、シリコンゴムによってメス型をつくる。このシリコンによるメス型を固定部として、直方体の箱からなる基台に接着することで初期姿勢台とする。粘土樹脂でメス型を製作したり、指の位置を固定する治具によって手の姿勢が一意に決るようにして固定部を作成してもよい。
【００３２】
［３］計測手順
計測手順は、（i）取付け姿勢キャリブレーション、（ii）計測データ取得、（iii）オフライン姿勢計算、を含む。
「取付けキャリブレーション」は
、各小型姿勢センサモジュールの取付け姿勢および 、基準座標系を設定する工程である。基準座標は、初期姿勢台に対して設定される。
「計測データ取得」は、手に装着した小型姿勢センサモジュールのセンサデータを時刻と共にコンピュータに蓄積する工程である。
「オフライン姿勢計算」は、蓄積したセンサデータを用いて、手の姿勢を再構成する計算である。
オンラインの姿勢計算機能をコンピュータ内に含むことは排除しない。以下にオフライン計算法を記載する。
【００３３】
［４］取付けキャリブレーション
取付けキャリブレーションは、初期姿勢台に手を装着した状態での加速度センサデータを、重力軸以外の回転を含む2姿勢以上において計測した複数のデータを用いて計算する（以下2姿勢として記載する)。前記2姿勢における初期姿勢台上の手の、各リンクのコンピュータ内の姿勢と計測された加速度センサデータとから、小型姿勢センサモジュールの取付け姿勢を計算する方法について以下に示す。
【００３４】
実際の小型姿勢センサモジュールの取付け姿勢をlRsとする。各小型姿勢センサモジュールごとの回転行列lRsを計算することが取付けキャリブレーションである。
【００３５】
姿勢1において静止状態で計測した加速度ベクトルの平均を
2014054483.tif 000003
とする。
姿勢2において静止状態で計測した加速度ベクトルの平均を
2014054483.tif 000004
とする。
また、姿勢1において、コンピュータモデルにおける小型姿勢センサモジュールsの観測されるべき重力ベクトルをgsref1とする。姿勢2において、コンピュータモデルにおける小型姿勢センサモジュールsの観測されるべき重力ベクトルをgsref2 とする。
【００３６】
姿勢 1と姿勢 2における重力ベクトルが直交しない場合は、
2014054483.tif 000005
とする。
【００３７】
ここで、上記ベクトルを単位ベクトルとし以下のように外積を計算する。
2014054483.tif 000006
としたとき、取付け姿勢 lRsは、
2014054483.tif 000007
と計算される。このとき、初期姿勢台に、すべての小型姿勢センサモジュールの基準座標系 (姿勢)が設定される。
【００３８】
例えば、図３のように直方体の基台に固定部を接着した構成の初期姿勢台を考える。左図のように固定部が上を向くように置いた状態を姿勢1とし、重力ベクトルと直交する辺回りに90度回転した状態を姿勢2とする。
【００３９】
ここで、gsref1=(0  0  1)T、gsref2=(0  1  0)Tとする。この条件でlRsを計算すると、初期姿勢台を姿勢1から姿勢2へ変化させたときの回転軸とした辺が基準座標系のX軸となり、重力方向がZ軸となる。このように、初期姿勢台に対して基準座標系を設定し、その相対姿勢として各小型姿勢センサモジュールの取付け姿勢を計算することができる。
【００４０】
本実施形態に係るシステムでは、地磁気センサを含まないため、地磁気ベクトルと重力ベクトルからなる座標系を絶対座標としたときの、小型姿勢センサモジュールの姿勢は決らない。初期姿勢台に対する相対姿勢が決定されるのみである。そのため、以下のすべての計算方法が初期姿勢台を前提としたものとなっている。
【００４１】
［５］オフライン姿勢計算
オフライン姿勢計算法は以下の条件に基づいて行われる。
（i）初期姿勢台に手を装着したとき、手の姿勢は一意に決る。
（ii）計測開始時刻および終了時刻の姿勢は、初期姿勢台によって、一意に決る。運動計測において、初期姿勢台は環境に固定して移動しないものとし、計測開始時と終了時に初期姿勢台に手を装着する(複数の初期姿勢台を用いることで、開始時刻と終了時刻の姿勢が異なることを認める。しかし、この場合複数の初期姿勢台間の姿勢変化は既知である必要がある。)。
【００４２】
［５−１］カルマンフィルタ
カルマンフィルタについて説明する。カルマンフィルタは、誤差のある観測値を用いて、動的システムの状態を推定する手法である。動的システムの状態遷移は、線型な状態方程式として与えられるものとする。
2014054483.tif 000008
状態をxとし、wkを時間遷移に関する雑音とし、平均0、共分散行列Qkの多変数正規分布に従うものとする。
【００４３】
また、誤差を含む観測値は状態を用いて以下の観測方程式に従って得られるものとする。
2014054483.tif 000009
ここで観測値 zkとし、vkを平均 0で共分散行列Rkの正規分布に従う観測ノイズとする。
【００４４】
この条件で、センサの観測値と初期状態x0から、状態xkを推定する。
【００４５】
本発明においては、以下に述べる状態方程式と、観測方程式と、をベースとする。
2014054483.tif 000010
ここで、ωkを各小型姿勢センサモジュールの各リンク座標系における角速度ベクトル、gkTを各小型姿勢センサモジュールの各リンク座標系における重力ベクトル、hkTを各小型姿勢センサモジュールの各リンク座標系における地磁気ベクトルとする。各小型姿勢センサモジュールの姿勢は、地磁気ベクトルと重力ベクトルによって一意に決る。
【００４６】
ここで、状態遷移行列は、以下の式で表すことができる。Pは与えられた角速度において 、一定時刻dtの間に生じる姿勢変化を表す。
2014054483.tif 000011
ここで、
2014054483.tif 000012
とし、 
2014054483.tif 000013
とする。dtをサンプルkの時刻tkとサンプルk-1の時刻tk-1との差とする。ここで、ωは状態変数の推定値を用いる。
【００４７】
また、観測方程式は、観測ベクトル
2014054483.tif 000014
としたとき、観測行列は取付け姿勢lRsおよび単位行列 Eを用いて、
2014054483.tif 000015
とする。ここで、sRlは、lRsの逆行列であり、リンク座標系における状態を各小型姿勢センサモジュールのセンサ座標系に変換する姿勢変換行列である。
【００４８】
このとき、存在しない地磁気ベクトルの観測値を以下のように決める。
2014054483.tif 000016
すなわち一時刻前の状態を、角速度ベクトルに従って回転させたものを観測値として用いる。
【００４９】
観測行列に以下を加えることで、重力ベクトルと地磁気ベクトルが直交するように拘束してもよい。
2014054483.tif 000017
【００５０】
また、観測した加速度ベクトル
2014054483.tif 000018
から、重力ベクトルの観測値
2014054483.tif 000019
を以下のように決める。
2014054483.tif 000020
すなわち、前時刻の状態ベクトルを角速度ベクトルに従って回転させたものと、観測された加速度ベクトルとの重み付け平均とする。
このとき、αは、ノルムが1のときに1となり、1から離れる程0に近くなる関数とする。例えば、 
2014054483.tif 000021
のようにする。ここで、σを正の値とする。
【００５１】
［５−２］逆方向カルマンフィルタとゼロドリフト姿勢計算法
例えば、上記のカルマンフィルタを想定した場合、地磁気ベクトルの推定値は、地磁気方向を観測することができないために、観測された角速度の積分によって決定される。そのため、時間経過に従って、ジャイロセンサの温度ドリフト、ジャイロのゼロ点オフセット、ジャイロのゲイン誤差、その他センサの誤差などによって、ドリフトが発生し、しばしば内界センサを用いた姿勢センサシステムの姿勢推定を困難とする。そこで、本発明では、以下のオフラインの姿勢推定計算を用いることでゼロドリフトを実現する。
【００５２】
逆方向カルマンフィルタ
開始時刻0、終了時刻Tとして、各々の地磁気ベクトルの方向が、h0、hTと与えられるとする。これらは初期姿勢台に依存して決る。開始時と終了時に固定された同じ初期姿勢台を用いた場合には、h0=hTとなる。逆方向カルマンフィルタは、カルマンフィルタの初期値にhTを用いて、時間を時刻Tから逆向きに辿って上記カルマンフィルタによって姿勢推定を行う。このとき、dt<0となる。得られた地磁気ベクトルの各時刻の推定値をhikとする。
【００５３】
ゼロドリフト姿勢計算法
前記逆方向カルマンフィルタの結果を順方向のカルマンフィルタの観測値に以下のように加えることでゼロドリフトを実現する。カルマンフィルタの観測値として
2014054483.tif 000022
を与える。
ここで、重みβは時刻0で1、時刻Tで0を取る単調減少関数とする。たとえば、時刻tを用いて、β=(T−t)/Tのようにする。観測値に重み付けを与えることで、初期姿勢と終了姿勢が既知の姿勢と一致するような姿勢推定が可能となり、ドリフトをキャンセルすることが可能となる。
重みβの他の決め方としてジャイロセンサの観測値のゲインによってドリフトが変化することを考慮に入れるために、角速度ベクトルの重力方向成分を用いて、
2014054483.tif 000023
のようにしてもよい。εは実数である。
【００５４】
図４にゼロドリフト姿勢計算法を用いて推定した地磁気ベクトルの1成分を、横軸を時間としてプロットした。通常のカルマンフィルタを用いた場合、初期姿勢と終了姿勢が等しい条件においても、0.2[rad]程度のドリフトが生じている。ところが、ゼロドリフト姿勢計算法を用いることで、ドリフトの影響を除去している。
【００５５】
［５−３］手の回転軸モデルを用いた姿勢計算法
手の各関節を1軸ないし2軸の関節リンクモデルとしてモデル化する。このとき、各回転軸は、親リンクの姿勢Rp,k、子リンクの姿勢Rc,k、親リンクの角速度ベクトルpωk、子リンクの角速度ベクトルcωkとしたとき、
2014054483.tif 000024
をすべての時間ステップに対して計算し、これらデータを用いて主成分分析(PCA)することによって、固有ベクトルと固有値を求めることで、各関節の主軸を計算することができる。手指の各関節を動かしたときに前記ゼロドリフト姿勢推定の結果の状態推定値を用いて計算する。
【００５６】
親指、人差指、中指、薬指、小指のIP関節を1軸としてモデル化し、親指、人差指、中指、薬指、小指のMP関節を2軸としてモデル化した場合、固有値の大きい方から順に1ないしは2つの固有ベクトルを各関節の回転軸とする。
【００５７】
この回転軸は、初期姿勢台に設定された基準座標および初期姿勢によって決るものである。初期姿勢台ごとに、関節軸を計算する必要がある。
【００５８】
カルマンフィルタにおいて、関節に設定した関節軸回り以外の回転を０であるという拘束条件を加えることで、例えば、通信エラーでセンサ値が一定期間不正な値が入るなどの場合に、データを修復する姿勢推定計算法を示す。
【００５９】
まずは、すべてのリンクの状態を縦に並べたものを新たに状態ベクトルとし、状態遷移方程式および観測方程式をたてる。次に、手のリンク構造と回転軸を考慮し、以下の拘束条件を観測方程式に加える。
2014054483.tif 000025
【００６０】
親リンクから見た関節の回転軸をpbiとしたとき、基準座標からみた回転軸は、
2014054483.tif 000026
として与えられる。
親リンクと子リンクの角速度ベクトルは、Rp pωp、Rc cωc
として与えられ、
2014054483.tif 000027
が成り立つ。
例えば、上記拘束条件を
2014054483.tif 000028
としたとき、 観測行列に
2014054483.tif 000029
のように拘束条件を加える。
ここで、拘束条件に対する観測値を0 とすることで、センサ異常時でも、モデルと著しく異なる挙動を示す場合にはデータを補正することが可能となる。
【００６１】
図５にジャイロセンサに異常があった場合に、拘束条件を加えることで、推定された角速度ベクトルが異常の影響を受け難いことを示す。
【００６２】
［５−４］手の骨格モデルの作成
手の骨格モデルは、初期姿勢台の固定部の手のメス型において、各長さを測定する方法もあるが、精度を高めるために以下の方法を用いる。
【００６３】
手の骨格を関節リンクモデルとして表現する。すべてのIP関節を1軸、すべてのMP関節を2軸、親指CM関節を2軸、手の甲1軸とモデル化する。1軸関節については、前記関節軸推定値を関節軸と一致すると考えてもよいが、MP関節やCM関節では、2軸が直交しない場合やオフセットがある場合もあるため、軸の向きを補正する必要がある。
【００６４】
軸の向きを入力として、評価値を最大にするように探索的に最適解を求める。手の骨格モデルを作成するときは、光学式モーションキャプチャなどの他の位置がわかるモーションキャプチャシステムを併用する。光学式モーションキャプチャにより、各指の各リンクに取り付けたマーカの位置が取得される。このとき、初期姿勢台に設定された基準座標系を位置計測用モーションキャプチャの座標系に変換するために、
例えば、光学式であれば、初期姿勢台にマーカを貼る。
【００６５】
前記姿勢推定値と前記リンクモデルから、逆運動学計算によって、すべてのリンクの姿勢を計算する。この計算結果は、入力である軸の向きに依存する。この姿勢行列と、同時計測した位置情報とを用いて、各リンクパラメータを最小二乗法によって計算する。ここでの各リンクパラメータは、親リンクに固定されたマーカ位置を原点とした、関節の位置、その関節位置からみた子リンクに固定されたマーカの位置である。
【００６６】
このリンクパラメータを用いたときの評価値を以下のように計算する。
2014054483.tif 000030
2014054483.tif 000031
を時刻kのマーカの計測位置、pkを関節リンクモデルと前記姿勢推定値から得られた推定位置、
2014054483.tif 000032
を距離の平均とする。
2014054483.tif 000033
を前記カルマンフィルタによる姿勢推定値、
2014054483.tif 000034
を逆運動学計算によって得られた姿勢行列とする。
評価値は、求める関節位置の子リンクあるいは孫リンクの位置の平均誤差と、求める関節の逆運動学計算による姿勢誤差、および子リンク、孫リンクの逆運動学計算による姿勢誤差の重み付き平均とする。
１つの態様では、MP関節、親指CM関節のリンクパラメータを推定するときに、指先のマーカ位置をより高い精度で推定できるリンクパラメータを探索する。
より具体的には、MP関節のリンクパラメータ（関節の位置）を推定する際に、IP関節をまたいで指先までの位置と、姿勢推定結果を用いて推定した位置との平均誤差が最小となるように、各関節軸の方向を探索することで関節軸および関節位置の最適化計算を行う。
親指CM関節の位置を推定する際に、親指MP、IP関節をまたいで指先までの位置と、姿勢推定結果を用いて推定した位置との平均誤差が最小となるように、CM関節軸の方向を探索することで、関節軸および関節位置の最適化計算を行う。
【００６７】
関節リンクモデルについてさらに補足説明を行う。関節リンクモデルは、各リンクの姿勢を与えたときに各関節の位置を計算してディスプレイ上に描画するために必要となる。手の場合、関節はすべて回転関節と考えることができ、IP関節は1自由度の回転関節、MP関節は2自由度の回転関節、親指CM関節は直交しない2自由度回転関節とする（図９Ｂ参照）。関節はそれぞれ回転関節であるので回転角を変化させることができる。一方で各関節の位置は長さ一定のリンクでモデル化する。リンクパラメータは、すべての関節角度が0のときの関節位置を決めることで決定できる。関節位置が決ればリンクの長さを決定できる。本実施形態に係るシステムでは関節角度が0の姿勢を初期姿勢台に手を入れたときとしている。そのため、手を初期姿勢台に装着したときの関節位置を求めればよい。
【００６８】
光学式マーカを併用してリンクパラメータを推定する。図９Ｃに示すように、光学式マーカの位置を関節の回転中心とすることはできない。そこで、手のリンクの任意の位置に付けたマーカの軌跡とそのときの関節角度を用いて、リンクパラメータを推定する必要がある。この計算には一般に最小二乗法を用いる。このようにしてリンクの長さを計算することは当業者に良く知られている。
【００６９】
関節位置の推定計算について説明する。リンクパラメータを計算するときに初期姿勢におけるパラメータを計算して、関節角度を変化させたときには運動学計算を用いてリンクの位置変化を計算することができる。１自由度の関節の場合、親リンクのマーカ位置ppおよび子リンクのマーカ位置pc、および親リンクの姿勢Rp、子リンクRcが与えられる。初期姿勢における関節の回転軸をpaz0とする。関節軸は運動と共に、az=Rppaz0と向きを変化させる。子リンクの姿勢の親リンクからの相対運動は常にaz回りの回転しか生じない。az軸回りにどれだけ回転したかがこの関節の回転角で、一般に逆運動学計算によって計算される。この逆運動学計算によって、関節角度の時系列が得られる。これは初期姿勢における関節軸paz0に依存する。関節角度が計算されれば、回転軸回り以外の回転成分を除去した子リンクの姿勢R´cが得られる。初期姿勢台に取付けた光学式マーカを原点とする。親リンクの座標系からみた関節軸の位置ppa、子リンクの座標系から子リンクのマーカ位置cpcとすると、以下の式が成り立つ。なお、親リンク座標系は原点を親リンクにつけたマーカ位置とし、姿勢はRpとする。子リンク座標系の原点は関節位置とし、姿勢をRcとする。
2014054483.tif 000035
ここで未知の変数は、cpcとppaであり6次元となっており、上記の式は3次元なので、複数のサンプルデータを用いて最小二乗法によって、前記6変数を推定する。この推定計算ができれば、運動学計算によって関節角度がすべて0のときの関節位置が計算できる。
【００７０】
上記計算では、関節軸ベクトルpaz0を与えていた。この与えるベクトルに依存して、最小二乗誤差が変化する。関節軸ベクトルは、拘束を加えたカルマンフィルタに用いた関節軸推定(PCAを用いたもの）を用いることで計算できるが、さらにその近傍で関節軸ベクトルを微小変化させたときに、より最小二乗誤差を小くするようなものを探索することで最適化する。この最適化の際に用いる評価関数として、探索している関節軸ベクトルに接続される親リンク、子リンクのマーカだけではなく、RcとR´cとの誤差、孫リンク以降のマーカの推定誤差を用いることで回転軸ベクトルの推定をより正確にすることができる。
【００７１】
関節リンクモデルと初期姿勢台との関係について説明する。最適化しているpaz0は初期姿勢台に手を装着したときの関節軸方向である。すべての関節角を0としたとき、すなわちすべてのリンクの姿勢を単位行列Iとしたとき、関節軸の位置は、
2014054483.tif 000036
として与えられる。pp0は初期姿勢におけるマーカの位置である。リンク長は手に不変だが、関節角度0のときの関節位置は初期姿勢台に依存する。また、手のモーションキャプチャではマーカの数を増やすと計測がより困難となるが、手に姿勢センサを装着することで、マーカ数を減らすことができる。また、手全体を同時に計測するのでなく、部分ごとに分けて計測を行うことでマーカ数を減らすことができる。このとき、それぞれの計測データの位置合わせのためにも初期姿勢台に取り付けたマーカが用いられる。
【実施例】
【００７２】
実施例では、3軸の加速度センサと3軸のジャイロセンサを内蔵した18個の超小型姿勢センサモジュールを手の各リンクに固定し、手の運動計測を行う。人の手の骨は、5個の末節骨、4個の中節骨 (親指にはない)、5個の基節骨、5個の中手骨、8個の手根骨からなる（図９Ａ参照）。指の動きは、末節骨、中節骨、基節骨から捉えることができ、手の平の動きは中手骨の動きから捉えることができることから、19個の姿勢センサによって手の動きを捉えることができると考えられる。本実施例では、人差指、中指の中手骨の動きは小さいので18個の姿勢センサで十分と考え、片手最低18個の姿勢センサを実装することで手の動作計測を行う。地磁気センサがないことで、初期姿勢が一意に決らないという問題を以下のように解決する。
【００７３】
既知の異なる２姿勢(重力軸以外の回転を含む)における重力ベクトルを計測することで、姿勢センサモジュールの取付姿勢を計算する。このとき、既知の姿勢を実現する方法として、手のメス型からなる初期姿勢台を用いる。初期姿勢台は、人ごとに異なる手のメス型であり、手を入れると毎回同じ姿勢となるものとする。この初期姿勢台に手を装着した状態で、異なる2姿勢における加速度センサの値を計測することで、各姿勢センサモジュールの取付姿勢を計算することができる。この初期姿勢台に手を入れた状態の各リンクの姿勢をモデル化することで、計測開始時の手の姿勢とコンピュータ上の手のモデルの姿勢を一致させることができる。
【００７４】
また、この取付キャリブレーション時には手を静止させる必要があるが、同時にジャイロセンサのゼロ点キャリブレーションも行う。ジャイロセンサのゼロ点は温度によって変化するので、温度センサの値とジャイロセンサの値を同時計測することで、両者の関係を計算する。
【００７５】
コンピュータ上の手のモデルについては、光学式モーションキャプチャと本姿勢センサシステムを併用して製作する。各リンクの位置を光学式モーションキャプチャによって計測し、同時に各リンクの姿勢を本提案システムを用いて計測する。関節リンクモデルと位置、姿勢情報から運動学パラメータ（リンクパラメータ）を計算する方法については、非特許文献３の方法を用いる。回転軸を入力パラメータとして、位置と姿勢情報の時系列から関節位置、リンク長を最小二乗法を用いて最適化し、その誤差を最小化する回転軸の局所最適解をNelder-Meadシンプレックス法を用いて計算する。
【００７６】
コンピュータ上の手のモデルと計測開始時の手の姿勢を一致させることで、ジャイロセンサの計測データの積分情報から手の姿勢変化を逐次計算することができる。加速度センサおよびジャイロセンサの計測値から姿勢推定する方法については、上述のゼロドリフトカルマンフィルタによる方法を用いる。
【００７７】
図７に実施例に係るシステムの概要を示す。18個のセンサを接続可能な通信機能を備えた小型の姿勢センサモジュールを独自に開発した。各姿勢センサモジュールは、センサと通信機能のみを持ち、姿勢計算は行わない。各センサ情報をリアルタイムで通信取得することが困難であるため、各モジュール内で姿勢推定を行うのが一般的であるが、この場合、計算用のCPUが各モジュールごとに必要となり、消費電力、サイズの観点から不利である。また、すべてのセンサ情報を同期して計測することができれば、カルマンフィルタまたはゼロカルマンフィルタに、各関節の回転軸以外の回転が0であるという拘束条件を観測方程式に加えることで、姿勢センサの推定精度を向上させることができる。リアルタイム通信システムのスレーブに各姿勢センサモジュールをシリアルバスで接続することで、複数の姿勢センサモジュールの情報を同期計測可能とする。リアルタイム通信のホスト機器とポータブルPCとの間の通信にはUSBを用いることで、計測PCを持ち運び可能とし、計測場所に制限のない姿勢センサシステムとする。
【００７８】
図６に開発した小型の姿勢センサモジュールを示す。サイズは、7.6mm×8.4mm×2.6mmであり、3軸ジャイロ、3軸加速度センサ、MCU（Microcontrollers）2個、レギュレータからなる。よりサイズが小型となるように以下を選定した。ジャイロセンサには、InvenSense社のIMU-3000(4mm×4mm×0.9mm)、加速度センサにはBosch社のBMA-250(2mm×2mm×0.82mm)、MCUには、C8051T600(2mm×2mm×0.75mm×)を用いた。各センサ情報は、デジタル出力であり、加速度センサ10bit×3、ジャイロセンサ16bit×3、ジャイロ温度センサ16bit×1のデータが出力される。
【００７９】
2つのMCUは、複数の姿勢センサモジュールを同一のシリアルバスに接続することができるようにするために用いる。MCU1はジャイロセンサおよび加速度センサとSMBusにより通信し、センサ情報の取得および感度変更をする。MCU2はMCU1からセンサ情報をUARTによって取得し、シリアルバスを介してリアルタイムネットワークのスレーブに伝達する。シリアルバスには、C8051T600で使用可能なSMBusを用いる。
【００８０】
シリアルバス
各姿勢センサモジュールは7bitのアドレスを有し、1つのSMBusには最大128個の姿勢センサを接続可能である。SMBusの通信速度は、400kbpsであり、1回の通信で32bitのデータを送信する。SMBusの1回の通信は、0.2msec以内に終るように設計した。1個の姿勢センサモジュールは、3回のSMBus通信で加速度センサ、ジャイロセンサ、内蔵の温度センサの情報を送信する。SMBusに接続した姿勢センサの数をNとしたとき、最大サンプリングレートは、0.6N[msec]の時間がかかる。
【００８１】
リアルタイム通信システム
リアルタイム通信システムは、非特許文献４でも使用しているリング型のトポロジーをもつ20Mbpsの全二重通信である。新たにUSB2.0を用いたホストデバイスを開発した。PCからバルク転送によって、リアルタイム通信用のパケットをUSBのFIFOにためる。ホストデバイスでは、リアルタイム通信用のパケットを7[usec]ごとに処理する。7[usec]でスレーブに対してパケット送受信を行い、データの交換を行う。各スレーブは、SMBusのホスト機能を持ち、パケットを受信するたびに1回のSMBus通信を行う。リアルタイム通信システムは前記シリアルバスに比較して、28.5倍高速であるため、複数のスレーブを用いることで、シリアルバスを並列動作させることができる。今回開発したシステムでは、6個のシリアルバスを並列動作させ、各3個の姿勢センサを接続する。そのため、仕様上は、1.8[msec]で18個の姿勢センサモジュールすべてと通信することができる。
【００８２】
初期姿勢台は、手を入れたときに毎回同じ姿勢となることが重要である。このため、個人ごとに異なる台を製作する必要があり、手との間に隙間が生じないようにしなければならない。台にはシリコンゴムを用いた。型をとるために紙粘土や樹脂粘土なども考えられるが、収縮するために使用が困難である。シリコンゴムは硬化に時間がかかるために直接メス型を作ることはできない。そこで、まずは手の立体石膏型（オス型）を製作する。これには、市販の石膏製作セットなどが利用できる。これをオス型にしてシリコンゴムのメス型を作る。
【００８３】
図８に開発した姿勢センサシステムを実装した様子を示す。装着するごとに取付けキャリブレーションを行うので、取付け姿勢については注意する必要がない。しかし、固定については、取付け姿勢が動作中に変化すると姿勢推定誤差となるので非常に重要である。姿勢センサは、医療用の接着材を用いて皮膚に直接固定し、その上を超薄型のウレタンシールで覆う。
【００８４】
関節軸の推定とリンクモデルについて説明する。図９において、１８個の姿勢センサモジュールID（0〜17）が割り当てられており、図中、DIPは、遠位指節間関節（distal  interphalangeal  joint）、PIPは、近位指節間関節（proximal  interphalangeal  joint）、MPは、中手指節間関節（metacarpophalangeal  joint）、IPは、指節間関節（interphalangeal  joint）、CMは、手根中手関節（carpometacarpal  joint）、である。関節の番号は、親指から順に0から4をふった。例えば、MP3は薬指のMP関節を意味する。図９の各姿勢センサを結ぶ線に示すように、各姿勢センサモジュール間のリンク構造を定義する。各関節の親リンクと小リンクとの間の相対運動をジャイロセンサのデータを基準座標系へ座標変換し、主成分分析によって固有ベクトルを計算することで、各関節の軸を推定する。IP関節は、固定した1軸とモデル化し、最大固有値を持つ固有ベクトルを関節軸とみなす。MP関節は2軸とし、親指 CM関節は、非特許文献３と同じ2自由度のリンクモデルとみなす。リンクパラメータは、光学式モーションキャプチャによって各リンクの位置を計測し、リンクモデルによって推定される位置との二乗誤差が最小となるように計算した。さらに、関節軸推定の誤差を考慮して、Nelder-Meadシンプレックス法によって局所最適化を行う。姿勢センサとVICONとの間の座標系変換のために、初期姿勢台にもマーカを固定した。
【００８５】
取付けキャリブレーション誤差
取付けキャリブレーション誤差試験について説明する。初期姿勢台を用いた取付けキャリブレーションの評価および姿勢センサモジュールの固定の評価を行う。本システムでは、初期姿勢台に手を載せたときに、（i）手が同じ姿勢となること、（ii）姿勢センサモジュールが同じ姿勢をとることを要求している。そこで、手に姿勢センサモジュールを装着した状態で、繰り返し取付けキャリブレーションを行い、得られた姿勢行列間の距離を計算することで、上記の要求がどの程度満されているかを評価する。
【００８６】
取付けキャリブレーションの際、加速度センサの測定範囲は±2g、ジャイロセンサの測定範囲は±2000[deg/sec]と設定した。結果は表1に示す。9回の試行について平均誤差と標準偏差を示したもので、結果の悪いものから順に示した。最大で、0.061[rad]であり、手の甲や薬指、小指は親指や人指し指と比較して結果が悪いという傾向が見られた。手の甲が変形しやすいことが原因と考えられる。
2014054483.tif 000037
【００８７】
動作計測試験について説明する。手のモデル化のために、光学式モーションキャプチャとしてVICON624を用いた。手の運動計測用には精度が不十分であるため、各指リンクに1個以上のマーカを取付けて姿勢センサシステムと同時計測を行い、リンクモデルを製作した。
【００８８】
動作計測
動作計測実験として、グーチョキパー、はさみの使用、ボトルのふた開けの３つについて、結果を図１０〜図１２に示した。定性的には、動作の計測ができていることが確認できる。ボトルのふた開けについて見ると、人差指が中指とボトルによって隠れているが、慣性センサを用いているので計測が可能となっている。日常的に行う動作について、自然に行うことを考えた場合、物体やデスクや手自身によって隠れが生じることから、手の動作の計測には内界式が適していると考えられる。また、非常に薄型のセンサを用いているため、はさみを使うということも問題なく行うことができる。これは、小型・薄型のセンサを手に直接貼り付けて実装していることで実現が可能となった。
【００８９】
本実施例に係る人の手指の動作を計測するためのシステムでは、小型のMEMSセンサと通信機能を組合せることで、人の手に18個の姿勢センサを装着し、手指の運動を2[msec]周期で計測可能となった。手指を固定するための初期姿勢台を構成し、位置キャリブレーションを行うことで、初期姿勢をコンピュータ上のモデルと合せることができる。初期姿勢の再現性は高く、取付けキャリブレーションは、3.49[deg]以内の誤差で推定できた。この初期姿勢台の再現性を利用して、各関節軸の方向を推定し、ハンドモデルを製作した。そして、幾つかの動作について計測を行い、その動作を確認した。
【産業上の利用可能性】
【００９０】
本発明は、人の手の動作を計測するモーションキャプチャシステムとして、バーチャルリアリティ、入力インタフェース、アニメーション等に広く利用し得る。手の動作の計測に関する需要は高い。特に道具の使いやすさの定量化、アニメーションにおいて、人の動きを計測したいという要望は高い。人が手で物体操作、道具を使用する際の動作を計測することで、従来不自然であったアニメーションにおける手の動きの改善や、ユーザビリティ評価などの産業応用が可能である。
【図３】
2014054483.tif 000038
【図９Ｃ】
2014054483.tif 000039
【図１】
2014054483.tif 000040
【図２】
2014054483.tif 000041
【図４】
2014054483.tif 000042
【図５】
2014054483.tif 000043
【図６】
2014054483.tif 000044
【図７】
2014054483.tif 000045
【図８】
2014054483.tif 000046
【図９】
2014054483.tif 000047
【図９Ａ】
2014054483.tif 000048
【図９Ｂ】
2014054483.tif 000049
【図１０】
2014054483.tif 000050
【図１１】
2014054483.tif 000051
【図１２】
2014054483.tif 000052