(57)【要約】【課題】簡便な方法で高精度にリンク長を推定する。【解決手段】モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定手段である。リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、前記マーカ位置情報と前記推定マーカ位置との誤差を表す目的関数を用意する。前記目的関数に、複数フレーム上のマーカ位置情報、及び、関節角を入力する手段と、前記目的関数を用いて前記誤差を最小にする最適化計算を行い、複数のフレームに共通の相対マーカ位置及びリンク長を推定し、推定されたリンク長を前記被験体に特有のリンク長とする手段と、を備えている。【選択図】なし【特許請求の範囲】
【請求項１】
モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定法であって、
リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、
前記マーカ位置情報は、複数フレーム上のマーカ位置情報であり、
前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算により、複数のフレームに共通のリンク長を推定することで、前記被験体に特有のリンク長を取得する、運動学パラメータの推定法。
【請求項２】
最適化計算により相対マーカ位置を推定することで、相対マーカ位置の補正を行うことを含む、請求項１に記載の運動学パラメータの推定法。
【請求項３】
関節角は、逆運動学計算を行うことで取得する、請求項１，２いずれかに記載の運動学パラメータの推定法。
【請求項４】
モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定法であって、
リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、
前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算によりリンク長及び相対マーカ位置を推定することで、前記被験体に特有のリンク長を取得する、運動学パラメータの推定法。
【請求項５】
前記マーカ位置情報は、複数フレーム上のマーカ位置情報であり、複数のフレームに共通のリンク長を推定する、請求項４に記載の運動学パラメータの推定法。
【請求項６】
関節角は、逆運動学計算を行うことで取得する、請求項４，５いずれかに記載の運動学パラメータの推定法。
【請求項７】
モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定法であって、
リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、
関節角を逆運動学計算で計算しながら、前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算によりリンク長を推定することで、前記被験体に特有のリンク長を取得する、運動学パラメータの推定法。
【請求項８】
前記マーカ位置情報は、複数フレーム上のマーカ位置情報であり、複数のフレームに共通のリンク長を推定する、請求項７に記載の運動学パラメータの推定法
【請求項９】
最適化計算により相対マーカ位置を推定することで、相対マーカ位置の補正を行うことを含む、請求項７，８いずれかに記載の運動学パラメータの推定法。
【請求項１０】
被験体の所定部位に複数のマーカを取り付け、モーションキャプチャを行ってマーカ位置情報を取得するステップを含む、請求項１乃至９いずれかに記載の運動学パラメータの推定法。
【請求項１１】
推定マーカ位置の初期値は、基準となるリンク機構モデルに基づいて設定される、請求項１乃至１０いずれかに記載の運動学パラメータの推定法。
【請求項１２】
最適化計算は、最急勾配法を用いて実行される、請求項１乃至１１いずれかに記載の運動学パラメータの推定法。
【請求項１３】
最適化計算は、共役勾配法を用いて実行される、請求項１乃至１１いずれかに記載の運動学パラメータの推定法。
【請求項１４】
モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定装置であって、
リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、前記マーカ位置情報と前記推定マーカ位置との誤差を表す目的関数を用意し、
前記目的関数に、マーカ位置情報、及び、関節角を入力する手段と、
前記目的関数を用いて前記誤差を最小にする最適化計算を行い、相対マーカ位置及びリンク長を推定し、推定されたリンク長を前記被験体に特有のリンク長とする手段と、
を備えた、
運動学パラメータの推定装置。
【請求項１５】
前記入力されるマーカ位置情報は、複数フレーム上のマーカ位置情報であり、複数のフレームに共通の相対マーカ位置及びリンク長を推定する、請求項１４に記載の運動学パラメータ推定装置。
【請求項１６】
前記装置は、逆運動学計算手段を有し、前記関節角は、逆運動学計算手段によって計算される、請求項１４，１５いずれかに記載の運動学パラメータ推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人体骨格モデルの運動学パラメータ推定に係り、詳しくは、モーションキャプチャデータを用いたリンクパラメータの推定法及び装置に関するものである。
【背景技術】
【０００２】
筋骨格モデルにおいて、計算機の発展に伴いより詳細なシミュレーションが行われるようになってきている。モデルが詳細になればなるほど、それを個人に適応し、逆運動学計算、逆動力学計算、筋力計算等を行う際に詳細なパラメータが求められる。
【０００３】
ヒト身体を表現するリンク機構の各リンクの長さパラメータを推定する簡便な方法としては、メジャーなどで計測することがよく行われる。しかしながら、外観から関節の回転中心の位置を正確に推測し、それらの間の距離を高精度に計測することは困難である。
【０００４】
一部のモーションキャプチャシステムでは、複数のマーカ位置を一定の割合で補間した位置を関節中心とみなし、それらの間の距離を計算することでリンク長を計算する機能を提供しているが、ノイズやマーカ取付位置のずれがそのまま誤差となるため高精度にデータを得ることは難しい。
【０００５】
CTやMRI画像から骨領域を抽出し、その３次元モデルに基づいてリンク長を計算することも可能であるが、回転中心の推測はやはり困難であり、また、データ取得・処理に膨大な時間と労力が必要であるため、多数の被験者に対して行うことは現実的でない。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
すなわち、高精度な運動解析のためには、個人の体格に合わせたモデルが必要となるが、現状では精度と簡便性とを備えた技術が無い。本発明は、簡便な方法で高精度にリンク長を推定することを目的とするものである。
【課題を解決するための手段】
【０００７】
本発明は、モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定法であって、リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算によりリンク長を推定することで、前記被験体に特有のリンク長を取得するものである。一つの好ましい態様では、リンク長は、任意に選択された基準モデルに対するリンクスケールとして取得される。本発明において、リンク機構モデルは、人体、動物、ロボット等のリンク機構モデルを広く含むが、一つの好ましい態様では、リンク機構モデルは、人体骨格モデルである。本発明は、バイオメカニクスなどにおける運動解析のために必要なヒト身体リンク機構モデルにおける各リンクの長さパラメータを推定する手段を提供する。
【０００８】
本発明が採用した第１の技術手段は、前記マーカ位置情報は、複数フレーム上のマーカ位置情報であり、前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算により、複数のフレームに共通のリンク長を推定することで、前記被験体に特有のリンク長を取得するものである。すなわち、最適化計算において、モーションキャプチャデータの複数フレームを用いて、一組のスケールパラメータを求めるものである。
【０００９】
本発明が採用した第２の技術手段は、前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算によりリンク長及び相対マーカ位置を推定することで、前記被験体に特有のリンク長を取得するものである。最適化計算により相対マーカ位置を推定することで、相対マーカ位置の補正を行うことを含む。マーカ配置時の誤差を軽減するために、相対マーカ位置も最適化することによって推定精度を上げることができる。この場合、評価関数において、モーションキャプチャにより計測されたマーカ位置、関節角が入力値となり、リンク長（リンクスケール）、相対マーカ位置が推定値となる。第１の技術手段、第３の技術手段においては、相対マーカ位置を推定値とすることは一つの実施態様にすぎないものであり、相対マーカ位置を入力値として扱っても良い。
【００１０】
本発明が採用した第３の技術手段は、関節角を逆運動学計算で計算しながら、前記マーカ位置情報と前記推定マーカ位置との誤差を最小にする最適化計算によりリンク長を推定することで、前記被験体に特有のリンク長を取得するものである。すなわち、最適化計算と逆運動学計算とを別に行い、交互に繰り返して収束させる。関節角の計算に最小二乗による最適化計算を行うと、初期姿勢をモーションキャプチャされたときの姿勢に近いものにしておかないとうまく収束しない場合があり、また、収束したとしても計算時間が長くなってしまう。
【００１１】
一つの態様では、本発明は、被験体の所定部位に複数のマーカを取り付け、モーションキャプチャを行ってマーカ位置情報を取得するステップを含む。また、本発明では、予め取得して格納されている被験体のマーカ位置情報を用いても良い。
【００１２】
一つの態様では、本発明は、被験体に装着された実際のマーカ位置に対応するように、リンク機構モデル上に相対マーカ位置を設定するステップを含む。より具体的な態様では、ディスプレイに表示したリンク機構モデル上に相対マーカ位置を、例えば、マウス等の入力手段を用いて設定したり、あるいは、相対マーカ位置を数値として、マウス、キーボード等の入力手段を用いて設定する。また、マーカの取付位置として、骨の上などの特徴的な部位を選択することで誤差を低減することができる。推定マーカ位置の初期値は、基準リンク機構モデルに基づいて設定される。より具体的には、推定マーカ位置を定義するパラメータであるリンクスケールの初期値を１とし、最適化計算によって推定される値が、被験体に特有のリンクスケールとなる。一つの態様では、最適化計算は、最急勾配法を用いて実行される。後述する実施形態では、最急勾配法を用いた最適化計算を説明するが、最適化計算は、最適化計算手法として知られるその他の勾配法、例えば、共役勾配法を用いて実行してもよい。
【００１３】
本発明が採用した第４の技術手段は、モーションキャプチャにより計測された被験体上のマーカ位置情報を用いた運動学パラメータの推定装置であって、リンク機構モデルのリンク上の相対マーカ位置、リンク長、関節角とから推定マーカ位置を定義し、前記マーカ位置情報と前記推定マーカ位置との誤差を表す目的関数を用意し、前記目的関数に、マーカ位置情報、及び、関節角を入力する手段と、前記目的関数を用いて前記誤差を最小にする最適化計算を行い、相対マーカ位置及びリンク長を推定し、推定されリンク長を前記被験体に特有のリンク長とする手段と、を備えた、運動学パラメータの推定装置である。一つの態様では、前記マーカ位置情報は、複数フレーム上のマーカ位置情報であり、複数のフレームに共通の相対マーカ位置及びリンク長を推定する。一つの態様では、前記装置は、逆運動学計算手段を有し、前記関節角は、逆運動学計算手段によって計算される。
【発明の効果】
【００１４】
本発明によれば、被験体の身体にマーカを取り付け、モーションキャプチャを行い、モーションキャプチャデータの複数フレームを用いて、一組のスケールパラメータを求めることで、精度の高いリンクパラメータを推定することができる。複数の姿勢のモーションキャプチャデータを用いることによって、様々な姿勢に応用できる運動学パラメータを推定できる。モーションキャプチャを用いることで、１つの姿勢ではなく複数の姿勢を考慮したリンク長を推定することができるため、ノイズの影響が小さい。また、人体等の被験体は複雑であるため姿勢によって回転中心が異なる関節が多いが、得られた値はさまざまな姿勢に対して平均的に有効である。また、相対マーカ位置も最適化することによって、マーカ配置時の誤差を軽減して推定精度を上げることができる。また、関節角を逆運動学計算で計算しながら、最適化計算を行うことで、最適化計算を良好に収束させることができる。
【発明を実施するための最良の形態】
【００１５】
本発明の好適な実施形態であるモーションキャプチャデータを用いた人体骨格モデルの運動学パラメータ推定方法について説明する。本発明で推定する運動学パラメータはリンクのスケールである。具体的には各リンクの、基準となるリンク機構モデル（人体骨格モデル）に対する倍率を推定する。ある被験者についてモーションキャプチャにより計測されたマーカ位置情報と、人体骨格モデルにおける推定マーカ位置と、の誤差を最小にする最適化計算を行うことで、リンクパラメータの推定を行う。
【００１６】
［Ａ］人体骨格モデル
推定に用いた人体骨格モデルはおよそ５０のリンクからなる。この人体骨格モデルは、鈴木、山根、多谷、栗原、中村：「高速動力学計算法を用いた詳細人体モデルに基づく人間の力学計算」、第２０回日本ロボット学会学術講演会予稿集、３Ｃ１４，２００２に記載されている筋骨格モデル（図１に示す）に基づいており、筋骨格モデルの詳細については当該論文を参照することができる。また、約５０のリンクの半数は背骨であるため、すべてのリンクに関して個別のスケールを推定する必要はない。必要のあるリンクを絞って運動学パラメータを推定することができる。
【００１７】
本発明に用いることができる人体のリンク機構モデル（人体骨格モデル）は、上述のものに限定されるものではなく、もっと単純なモデルやもっと複雑なモデルを使うことも可能である。収束計算で解を求めることができるように、何らかの初期値を与えることができる基準となる人体のリンク機構モデル (すべてのスケール値が1のモデル) が必要となる。
【００１８】
リンクのスケールについて説明する。人体骨格モデルのリンク構造はツリー構造で表され、例えば、図２で示すように、あるリンクのスケールはそのリンクよりもその下の階層にある全てのリンクに適用すると定義することができる。複数のスケールが適用されるリンクが存在するが、そのようなリンクの実際のスケールは影響を受けている全てのスケールの積とする。尚、あるリンクのスケールがそれ以下の階層のリンクすべてに影響するというモデルは必須ではなく、一つの実施形態にすぎない。他の形態では、例えば、すべてのリンクのスケールを独立に推定してもよく、また、スケールではなく長さそのものを推定してもよい。
【００１９】
［Ｂ］モーションキャプチャデータ
スケーリングパラメータの推定には数フレーム〜数十フレームのモーションキャプチャデータを用いる。通常モーションキャプチャデータのサンプリングタイムは数〜数十ミリ秒である。しかし、運動学パラメータ推定に用いるモーションキャプチャデータは様々な姿勢が含まれているのが望ましいので、数秒間隔もしくは任意にピックアップしたフレームを用いる。こうすることによって、様々な姿勢に幅広く対応できる運動学パラメータが求まる。1フレームでも計算は可能であるが、いろいろな関節を動かした運動を計測した時系列データを使うことによって、姿勢による関節中心の変化を平均化したモデルが得られるというメリットがある。肩や膝関節の回転中心は、関節が回転すると移動することが知られている。また、モーションキャプチャでは一般に毎秒30〜100フレームのデータが得られるが、時刻の近いフレームを使っても姿勢が似ているので、適当な間隔でフレームを間引いたり、異なる姿勢を選んだりすることで効率を上げることができる。
【００２０】
また、人体骨格モデル中の相対マーカ位置は手作業で与える。ディスプレイ中の3次元空間に基準となる人体骨格モデルを表示し、それに対してマウス操作でマーカを配置するという方法で相対マーカ位置を与える。この作業による誤差を軽減するために、マーカの取り付け位置は身体の特徴的な部分とする。また、相対マーカ位置を、数値として入力してもよい。
【００２１】
［Ｃ］最急勾配法による最適化計算
本実施形態において、評価関数はマーカ位置と推定マーカ位置の二乗誤差とする。ここで、身体の特徴的な部分にマーカを配置しても手作業で配置しているので誤差が生じる。この誤差の影響を軽減するために、相対マーカ位置も最適化する。評価関数Ｚを式(1)のように定める。
【数１】
2007315968.tif 000002
Ｎはフレーム数、
Ｍはマーカ数、
ｉはフレームのインデックス、
ｊはマーカのインデックス、
Ｐｉ，ｊ(hat)はモーションキャプチャにより計測されたマーカ位置、
Ｐｉ，ｊは推定マーカ位置、
ｍｊは相対マーカ位置、
ｍｊ(hat)は相対マーカ位置の初期値である。
【００２２】
また、推定マーカ位置Ｐｉ，ｊは、
【数２】
2007315968.tif 000003
で表される。θｉは関節値、ｓはスケールを表す。相対マーカ位置ｍｊは、マーカが取り付けられたリンクに対するマーカの相対位置である。各リンク長、リンクに対するマーカの位置と、各関節の角度を決めるとマーカの理論上の位置が計算できる。本発明では、リンク長やリンクに対するマーカ位置を推定で求めるので、「推定マーカ位置」と呼ぶ。尚、ロボットの順運動学計算については、内山，中村：「ロボットモーション」岩波講座 ロボット学2，岩波書店，2004 pp.80-87」を参照することができる。
【００２３】
評価関数において、入力値と推定値は以下のようにまとめられる。
【数３】
2007315968.tif 000004
ただし、関節値θｉはパラメータ推定計算とは別に逆運動学計算を行うことにより求める。関節角を逆運動学計算で求めることは既知であって、山根克, 中村仁彦: "ヒューマンフィギュアの全身運動生成のための協応構造化インターフェース,"
日本ロボット学会誌，Vol.20，No.3，pp.335-343，2002.、及び、特開２００３−５８９０７「木構造リンク系のポーズ及び動作を生成する方法」を参照することができる。
【００２４】
パラメータ推定計算と逆運動学計算を交互に行い、計算を収束させる。尚、式(1)の第2項は相対マーカ位置が初期値から離れすぎないように拘束するための項である。βを大きくすると拘束力が大きくなり、結果的にマーカ位置の修正量は小さくなる。
【００２５】
リアルタイム処理は必要ないので、最適化計算には最急勾配法を用いる。ｘ＝ｘ−△ｘとし、推定値xを式(2)のように定義し、更新量△xは式(3)で与えられる。
【数４】
2007315968.tif 000005
∂Ｚ／∂ｓは、は、以下のようにして求める。
1つのリンクｋと1つのマーカj に注目すると、リンクとマーカの位置関係は2通りに分けられる。それぞれ、マーカがリンクより下の階層に含まれる場合(case 1)、マーカがリンクよりも根元側にある場合(case 2) である。
【００２６】
リンクｋのスケールを微少変化させた様子を表したのが図３である。2通りのマーカの変化前・変化後の位置をそれぞれｐ１、ｐ２、ｐ´１、ｐ´２とし、リンクの始点の位置をｐｂで表した。変化前のスケールをｓｋ、変化後のスケールをｓｋ＋△ｓｋとすると、2通りのマーカ位置の変化量は式(4)で表現される。
【数５】
2007315968.tif 000006
よって、∂Ｐｉ，ｊ／∂ｓｋは、式(5)となる。ただし、ｋはリンクのインデックス、Ｐｂ，ｉ，ｋはリンクｋの始点の位置である。
【数６】
2007315968.tif 000007
【００２７】
また、∂Ｐｉ，ｊ／∂ｍｊは次のようにして求める。
Ｏを基準座標系(Ｐｉ，ｊの座標系)、Ｏ´をマーカｊが取り付けられているリンクの座標系、ｒをＯからＯ´への位置ベクトル、ＲをＯからＯ´への姿勢行列とすると、
Ｐｉ，ｊ＝ｒ＋Ｒｍｊであるので、∂Ｐｉ，ｊ／∂ｍｊ＝Ｒとなる。
【００２８】
［Ｄ］実験
［Ｄ−１］小型ヒューマノイドロボットを用いた実験
計算結果の評価を行うために、HOAP-1を用いてパラメータの推定を行った。HOAP-1のスケールパラメータは既知であるので、結果の定量的な評価が行うことが出来る。HOAP-1実機でモーションキャプチャを行い(図４)、スケールの推定を行った。
【表１】
2007315968.tif 000008
【００２９】
スケーリングパラメータを左腕、右腕、左もも、右もも、左ひざ下、右ひざ下の6つにグループ分けした。計算の初期値として、左もも、右もものスケールを実際のスケールの0.8倍したものを与えた。表１の中列がその結果である。表中の数値は実際のスケール、つまり、影響している全てのスケールの積である。最大で約3%の誤差が見られた。
【００３０】
また、スケールパラメータが既知であるモデルを用いることによって、相対マーカ位置の修正の計算のみを行うことが出来る。このようにして求められた信頼度の高い相対マーカ位置を用いて、上記のスケールパラメータの推定を行った結果が表1の右列である。この結果から、相対マーカ位置の精度が計算結果に大きく影響するということが読み取れる。
【００３１】
［Ｄ−２］人間による実験
実際にモーションキャプチャデータを用いて、人間のスケール推定を行った。推定に用いたキャプチャデータのうち一部のフレームを図５に載せた。マーカ位置は骨の先端等、出来るだけ皮膚の上からでも位置を特定できる場所を選んだ。基準となる人体骨格モデルは被験者と同じ身長にあわせてから詳細部の運動学パラメータ推定を行った。
【００３２】
［Ｄ−２−１］パラメータの推定結果
マーカ位置の最適化を行わない場合と行った場合の結果を表2に載せた。
【表２】
2007315968.tif 000009
【００３３】
結果は基準人体骨格モデルを1とした時の各リンクの相対スケールである。身長を合わせてあるので、スケールは1前後となっている。また、左右で近いスケールになっている傾向が見られる。マーカ位置の最適化をした場合としなかった場合を比較してみると、結果はほぼ一緒であるが、上体のスケールに差が見られる。これは上体でマーカ位置の誤差が目立ったためである。マーカ位置の修正値は最大で27mm 平均で12mm となったが、上体の一部である頭と肩のマーカで修正値20mmを超えた。上体ではマーカを取り付けるのに適した特徴的な部分が少なく、マーカ配置の際に誤差が出やすいことがわかる。
また、マーカ位置を最適化しない場合とした場合の評価関数の変化を以下のようになった。
【表３】
2007315968.tif 000010
ただし、 比較のため両者とも式(1)の第一項の値を示した。
【００３４】
［Ｄ−２−２］フレーム数とスケール推定精度の関係
単独のフレームを用いてパラメータ推定した結果4パターンと、3つのフレームを用いてパラメータ推定した結果4パターンを比較した。それぞれのパターン間でのばらつきを分散で表現したものが以下である。
【表４】
2007315968.tif 000011
上記の結果から、姿勢によって運動学パラメータが変化するということが読み取れる。多くのフレームを用いたほうが、多様な姿勢に対応できるより汎用的な運動学パラメータを求められるといえる。逆に、特定の姿勢でのシミュレーションに使用する場合はその姿勢でパラメータ推定した方がより正確な値を求められる。
【産業上の利用可能性】
【００３５】
本発明によれば個人差を反映した身体モデルを提供することができ、バイオメカニクスを初めとして医療・スポーツなどの分野における身体運動の解析に必要不可欠な技術である。より具体的な例を挙げると、特に、リハビリテーションなどの医療分野においてオーダーメイド医療と呼ばれる各個人の特性に合わせた効率のよい治療が求められるようになることから、個人モデルを作成できる本発明の利用価値は高い。
【図面の簡単な説明】
【００３６】
【図１】人の筋骨格モデルを示す図である。
【図２】リンク構造モデルの部分図である。
【図３】リンクのスケールを微小変化させた様子を表す図である。
【図４】モーションキャプチャ用のマーカを装着した小型ヒューマノイドロボットを示す図である。
【図５】リンクスケース推定に用いたモーションキャプチャデータの一部のフレームを示す図である。
【図１】
2007315968.tif 000012
【図２】
2007315968.tif 000013
【図３】
2007315968.tif 000014
【図４】
2007315968.tif 000015
【図５】
2007315968.tif 000016