【AnyBody】筋骨格モデリング/バイオメカニクス解析ソフト

製品概要

AnyBody

AnyBody 概要 デンマーク・オールボー大学で開発され、世界中で広く使用される筋骨格メカニクス解析ソフトウェア。ヒト筋骨格モデルに動作を与えた際、人体各部に作用する力(筋活動量、筋力・拮抗筋力、腱の弾性エネルギ、関節力・関節モーメントなど)を逆動力学解析で算出します。検体解剖に基づく詳細な人体モデルが提供され、モデル拡大/縮小スケーリングのほか、 MRI/CTで測定した骨形状を用いた解析がおこなえ、CADデータをモデルに組み込んで工業製品や運動器具、義肢装具やインプラントの人体への影響が評価できます。動作は関節角度入力とモーションキャプチャ計測データに対応し、出力データが自在にカスタマイズできる自由度の高い解析ソフトウェアです。

人間工学に基づいた設計
人間の身体は、置かれた環境と連動して機能します。私たちを取り囲む道具、家具、自転車、職場、その他全ての品物の設計が人体の運動条件により定められており、人間工学と呼ばれています。 AnyBodyは、人体だけではなく人体と関わりを持つ対象物のモデリングもおこないます。例えば、自転車のシートとクランク機構、椅子の背もたれと足置き、 自動車のハンドルとシフトギアなどです。AnyBodyを利用することにより、以下のような設計パラメータの人間工学的な影響を詳細に研究することが可能 となります。
  • コンピュータのマウスを操作中の肘の力に、机の高さが与える影響の大きさ
  • 自転車を漕いでいるとき、ペダルアームの長さが代謝に与える影響の大きさ
AnyBodyのモデルは、パラメータ値で調整可能です。筋力、セグメント長、もしくは外部力の方向などを自由に変更できます。それだけでなく、このシステムはモデルを最適化し、与えられた目標値の実現に最も適したパラメータの組み合わせを自動的に算出します。例えば、筋肉疲労を最小にする自転車の寸法 を、乗る人の身体のサイズごとに割り出すことが可能です。

動作と姿勢の組み合わせ
AnyBodyによる解析は、人体の動作から始まりますが、全く未知の動作の場合、例えば恐竜がどのようにジャンプしていたかなどはシミュレーションできるのでしょうか。AnyBodyには、逆動力学が採用されています。これは、動作をパラメータ調整してシステムの最適化機能によって決定することができます。つまり、恐竜のジャンプがその体型に最適であったとすれば、その動きを再現する事が可能です。

AnyBodyの適用例
    1. 人工股関節にかかる負荷にねじれ角が与える影響
    2. 電子制御されたエアロバイクのペダル機構の設計
    3. 運転中の快適さを最大限にするためのシートデザイン
    4. レース用自転車に乗っているときの筋活動に上半身の姿勢が与える影響
    5. クロスカントリースキー競技で運動効率を高めるポールの設計

機能一覧

AnyBody 特徴
AnyBodyは、デンマークAnyBodyTechnorogy社が管理する、AnyBody Modelレポジトリ(AnyBody Managed Model Repository:AMMR)と、その実行ソルバーである AnyBody Modeling System(AMS)から構成されます。AMMRは、AMSですぐに使用できる筋骨格モデルとサンプルのオープンライブラリです。
AMMRは、次の2つの部分で構成されています:
ボディモデル:特定の筋骨格モデルを構築するためにカスタマイズおよびスケーリングできる人体モデル。
アプリケーション:特定のアプリケーション(車体の加速やブレーキペダルを押すなどの一般的な日常活動から労働環境固有のシナリオまで)でボディモデルが利用される場合のファイル。モデルは、学術機関の研究プロジェクトで、または学術機関と共同でAnyBody Technology社によって開発されています。 これらのモデルはAnyBody Technology社によって管理されており、AnyBodyは、さまざまな身体部位モデルをフルボディのスケーラブルな筋骨格モデルとして一緒に使用できるようにします。
ウェブ上では、AMSソルバを除き、AnyBodyチュートリアル、AMMRドキュメント、AMMRデータベースが公開されています。 以下のリンクからご覧になれます
・AnyBodyチュートリアル 原文リンク
日本語訳リンク ・AMMRドキュメンテーション 原文リンク

■ フルボディ
AnyBodyの人体モデルは剛体である骨、骨の接合部である関節、筋腱で構成されています。それらを組み合わせた全身のモデルが最初から用意されており、外部からの力や道具を自由に追加することができます。 ボディモデル(AMMRドキュメンテーション)リンク

■ 「筋力計算のできる筋肉辞典」…バイオメカ系学生・理学療法士の新しいツールとして
AnyBodyの人体モデルの各身体部分は、詳細な死体/解剖学研究からのデータを利用して実装されるため、高い精度と解剖学的忠実度が保証されます。もちろん任意動作・外部環境下における、筋発揮力、筋収縮速度などが算出できますが、あらゆる骨格筋について、丁寧かつ詳細に筋肉名称・起始・停止、経由・付着・巻付位置が作りこまれており、いわば、「筋力計算のできる筋肉辞典」の役割が担えます。つまり、学生がより、人体筋骨格への洞察を深めるためのツールとして、格好の学習教材になり得ます。
腰椎モデル 腰椎には5つの椎骨があり、間に3つのDoF球状関節があり、188個の筋束と腹腔内圧のモデルがあります。 腰椎モデルリンク
頸椎モデル 頸椎モデルには、T1からC2までの3つのDoF球形関節を備えた7つの椎骨が含まれています。 C2と頭蓋骨の間の1DoF関節と136個の筋束です。回転の中心はAmevoらに基づいています。 頸椎モデルリンク
手詳細モデル 詳細な手のモデルは、17自由度を持つ手根骨のモデルです。 モデルには筋肉はありませんが、関節には関節アクチュエータが装備されているため、モデルを動的解析に使用できます。 手詳細モデルリンク
上肢(shoulder-arm)モデル モデルは、VU研究の被験者2とMAYO研究の被験者2のデータを使用して構築されています。 前腕を含むファイルは、MAYOスタディのデータに基づいて構築されています 上肢モデルリンク
トウェンテ(Twente)下肢モデルv.2.2 Twente下肢モデルバージョン2(TLEM2)は、TLEMモデルの後継モデルです。6自由度と169の筋肉が含まれています。 下肢モデルリンク
足詳細モデル(グラスゴー・マーストリヒトの足(GM-FOOT)モデル) GITHUBから、以下の詳細モデルが参照できます。動作規定・スケーリングプロセスについて実装は進行中ですが、足詳細の筋および関節について詳細なモデリングが入手できます。 足詳細モデルリンク  
■ AnyBodyのインターフェース
AnyBodyの解析では基本的に複雑なアルゴリズムを作る必要はなく、動作と条件を設定するだけで半自動的に解析することができます。 それらの設定にはAnyScriptと呼ばれるスクリプト言語を使用します。 これは『Class』と呼ばれるユニットによる単純な定義、例えば、股関節を何度屈曲する、座標(x、y、z)に点を作る、などを組み合わせて、動きや条件を設定します。
『Class』はAnyBody特有のものですが、覚える必要は無く、AnyBody内で機能を調べたり、必要な機能を持つ『Class』を挿入することがいつでもできます。複雑なモデルや動作でも、『Class』による単純な定義を積み重ねることによって、簡単に構築して、再現することができます。 GUIはとてもシンプルで、AnyScriptと組み合わせることで、幅広い運用をすることができます。 右図はGUIのModel ViewとAnyScriptを組み合わせて、 「モデル」と「出力グラフ」、「力ベクトル」を同じ画面に表示したものです。 ユーザーインターフェース機能(ANYBODYチュートリアル)リンク

■ 多数の検証スタディ
AnyBody開発元は、解析結果の信頼性を評価するために、実測と比較した検証作業を定期的におこない、その論文を公開しています。 また、AnyBodyを用いたユーザが、2014年と2015年の”Grand Knee Challenge”というインビボでの膝関節負担結果と比較した、シミュレーション推定のコンペティションにおいて、受賞者となりました! AnyBodyをインストールすると、肩関節、脊椎、膝の人工関節等の検証で使用されたモデルが提供されます。

■ 人体モデルへのアクセスと編集
AnyBodyでは人体モデルを構成するすべてのデータにアクセスすることができます。それによって、どんな係数や計算によって、体型が決定されているのか、確認することができます。また、それらの数字は全て編集することができ、モデルの身長や体重、体脂肪率に加えて、足と胴、上腕と前腕など、各部位の比も自由に変えることができます。 さらに、データがあれば、既存のモデルを使うだけでなく、人種や性別、年齢などに応じた、新しい人体モデルを作成することもできます。 筋肉や骨のパラメータを変更し、モデルの編集を行うことで、筋肉の強い人や弱い人、片足の人や人工関節に置換した人など、特殊な身体の状態に合わせた解析をおこなうことができます。

■ クローズドチェインのシームレス対応
バイサイクリング、歩行、両手でモノをつかむこと等は、運動的に閉鎖しているシステムで、クローズドチェインと呼びます。バイオメカニックスには、クローズドチェインを含むモデルが非常に多いです。 AnyBodyは、オープンチェインの仮定に頼らず、モデルの全体的な位置解析をおこない、筋肉を含む平衡の冗長系を立て、筋動員アルゴリズムでモデルを解析します。ユーザはその過程をシームレスに実行できます。

■ 人体動作の入力
AnyBody Modeling Systemでは、 人体動作を規定する方法の一つとしてモーションキャプチャシステムを使う方法があります。その際のマーカセットの例として右図に、Vicon Plug–in-Gaitのマーカーセットを示します。 AnyBody Modeling Systemではモーションデータはc3d形式でのインポートに対応しております。 当社ではモーションキャプチャの測定を含め、AnyBodyを用いた運動中の筋活動などを解析、出力するサービスをおこなっております。詳細は以下のページをご確認ください。

■ 床反力の推定機能
AnyBodyには、反力の推定という機能があります。 これは、フォースプレートの設置が困難な場所やフォースプレートの無い場所での動作における反力を求めるのに大変役に立ちます。反力を推定したい部位に仮想筋と呼ばれるポイントを、フォースプレートの代わりに接触判定用のプレートを、それぞれ作成します。仮想筋とプレートの距離を条件にして、仮想筋の活動を制御するように設定し、仮想筋を含めた全身の筋肉に対して、筋活動の最適化をおこないます。そして、仮想筋の発揮する力から、反力を推定します。推定の際に設定するのは、接触判定用のプレートの範囲や摩擦係数などがあります。

■ 日本人の人体モデル
AnyBody Modeling Systemは、筋骨格モデリングシステムで、 剛体力学のアプローチで筋力や関節モーメントを計算します。そのため、結果の精度は、人体モデルの寸法に非常に依存すると考えられます。 デフォルトの人体モデルの寸法は、おおよそヨーロッパの欧米人の中央値に妥当します。しかし、日本人の人体寸法及び人体比率と異なる可能性がありますので、既存モデルを日本人の人体寸法に合わせるようにスケーリングする必要になります。 インターネット上や、研究機関からは体形データが提供されております。それらデータを含め、ユーザ様がお使いになりたい日本人の人体寸法データがある場合など、当社は、それらのデータを利用した人体モデルのスケーリング法を提供しています。

 
■ AnyScript AnyBodyでは、AnyScriptと呼ばれるスクリプト言語でモデルを構築します。モデルは、剛体とみなされているセグメント(骨)、セグメント間の接合部、そして生理学的特性を持つ筋腱から構成されています。ドライバにより動作を定義し、ユーザは外部力を加えることが可能です。システムは、この動作に伴う個々の筋力と関節力の変動を計算します。これらの情報から、腱の弾性エネルギー、代謝、筋肉活性化と拮抗筋活動などの特性が導き出されます。 AnyScriptは、AnyBodyを動かすオブジェクト指向のモデリング言語です。構文的にはJavaやC++と似ていて、JavaScriptに近い言語です。上記枠内のスクリプトは、簡単な筋の組み合わせをAnyScriptモデルで記述したプログラムの一部です。 AnyScriptはオブジェクト指向の言語のため、セグメント、関節、筋、力、そして動作などの新しい要素を容易に追加することができます。これらの要素は全て筋骨格モデルの定番パーツであり、AnyScriptではこの要素を表すクラスが事前に定義されています。 例えばセグメントを追加する場合など、AnyScriptモデルの中から相当するオブジェクトの定義をおこなうだけで実行できます。セグメントの重量など要素のプロパティは、オブジェクト定義を設定するだけで定義されます。
AnyScriptは、変数と数式によって動作するという意味で本質的にパラメトリックです。 この方法で、腕の長さを人体の身長の関数としたり、全体重に釣り合う筋力を作成したりすることが容易におこなえます。モデル寸法間の複雑な身体計測関係を、自由に定義することが可能です。 AnyFolder BodyParameters = { AnyVar BodyMass = 75; AnyVar Density = 1000; }; //Bodyparameters AnySeg Foot = { Mass = 0.0145*.BodyParameters.BodyMass; AnyVar Length = 0.24; AnyVar Radius= (Mass/(3.1416*Length*.BodyParameters.Density) )^0.5;

■ 要素の再利用 体内の多くの要素は、多くのものが類似しています。そのため、新しい要素をゼロから定義することはほとんどありません。欲しい要素は、他のモデルや現在使用しているモデル内の別の箇所から、類似するものをコピーして利用できます。コピーの方法は、オブジェクト定義を行っている行をテキストとしてコピーし、挿入したい箇所に貼り付けるだけです。

■ MatLab、Python等で操作
Anybodyではコンソール版が提供されており、MatLabのようなサードパーティのソフトから操作することができます。さらに、Pythonからですと、”AnyPyTools”というツールキットが提供され、多数AnyBody解析の自動化、結果取得と処理、及びパラメータ解析を効率的におこなうことができます。
 

その他

整形外科/臨床

剛体リンクモデル上の荷重サマリー出力ツールの紹介(固定インプラント評価用)

マーカーレス・モーションキャプチャ

物理エンジンMuJoCoによる順動力学シミュレーションとAnyBody筋骨格解析の連携事例

人間工学

Detailed Hand Modelによる異なる摩擦状態での物体把持

人間工学

異なるマグカップ把持姿勢における手指部に生じる力学的負荷の定量化

スポーツ

片側腹斜筋張力制限がスクワット動作における腰椎椎間関節圧縮力に与える影響

バーチャルEMGを用いた筋活動量フィードバック型アクティブアシストデバイスのモデル化

スポーツ

AnyBodyによる投球動作時の肩甲下筋張力推定

SPLYZA Motionのデータを使用したAnyBodyによる筋骨格モデル解析

Altair MotionSolveとAnyBodyを用いたトライク走行時の身体負荷解析

外骨格・アシストデバイス

アクティブ型のアシストデバイスの解析事例

お問い合わせ

お問い合わせ

DXソリューション導入のご相談他、サーバー や NAS製品についてもお気軽にお問い合わせください。
弊社のプロフェッショナルなスタッフがご相談にお答えいたします。