見出し画像

私の幻の博士論文 第3回 身体の動きを記述する方法:モーションキャプチャ―から全身の加速度算出まで

前回


1. はじめに

 前回まで、バイオメカニクス的動作解析研究における標準的(基本的)研究手法とは、動作を記録し、そこから全身の筋が発揮している力を推定するというものであるということについて、ところどころで言及してきました。しかし、その実態については特に紹介することなく話を進めてきました。スポーツバイオメカニクスについて専門的に学んでいる方々にとってはそれでも問題ないかもしれませんが、それ以外の読者の方々にとっては、今後の議論を円滑に進める上でも、このあたりで一旦、私が標準的研究手法と呼んでいるアプローチの概略について整理しておく必要がありそうです。

これまでの回で私が「バイオメカニクス的動作解析における標準的研究手法」という表現によって想定していた研究手法は、さらに二つの段階に分けてとらえることが可能です。一つめの段階とは、関心を持った身体動作を計測し、そこから全身の大まかな部位・パーツ(大腿、下腿、上腕、前腕、体幹など)ごとの、時々刻々における加速度を算出するというものです。二つめの段階とは、算出された加速度についての情報を活用して、全身の筋が発揮している力(次回詳しくお話ししますが、正確には「関節トルク」と呼ばれるもの)を推定するというものです。

今回は、一段階目の作業が具体的にはどのようなものであるかということについて、その基本的考え方を紹介したいと思います。元々は二段階目の作業まで含めて、今回一気に取り扱う計画だったのですが、原稿を書き始めてみると、分量があまりにも多くなりすぎることが分かったので、小分けにすることにしました。

2. マーカーから反射される光の記録

 身体運動中に全身の筋が発揮している力を推定するための最初のステップは、分析対象としたい身体動作を動作解析専用のカメラによって記録することです。これが、モーションキャプチャ―と呼ばれている作業です。スポーツ選手が全身に小さな球形の物体をつけて、多数のカメラに囲まれて計測を行っている様子をテレビ番組などで見たことがあるという方も多いのではないかと思います。このとき取得されている情報とはどのようなものなのかということからまずはお話ししたいと思います。

全身につけられた球形の物体は、球形に成形されたゴムなどの表面に、赤外線を反射する素材を貼りつけたものであり、「赤外線反射マーカー」などと呼ばれています(以下では単に「マーカー」と呼びます)。モーションキャプチャ―に用いるカメラは、赤外線を発するとともに、赤外線をとらえることができるようになっています。そのため、カメラから出された赤外線がマーカーによって反射される様子を記録することができます。

最近では、マーカーを使用せずに、身体動作を記録する方法の開発が活発に行われていますが、今回はこの点については触れずに、マーカーを使用した方法について紹介したいと思います。これは、一つには、私自身がマーカーを使用しない方法にそれほど詳しくないということがあります。しかし、それに加えて、動作を記録しそこから全身で発揮されている力を推定するという、バイオメカニクス的動作解析における標準的研究手法の基本的原理を理解する上では、マーカーを使用した方法を例として説明した方が分かりやすいと考えたからでもあります。

 モーションキャプチャ―用のカメラによって記録されるのは、基本的にマーカーが反射する光のみです。したがって、図1のように下腿部の両端にマーカーをつけておくと、下腿部全体が記録されるのではなく、下腿部に取りつけられたマーカーのみが記録されることになります。私の在籍していた研究室では、基本的に1秒間に200回(0.005秒)というフレームレート(200FPS [Frames per Second] )で撮影を行っていました。したがって、1秒間の動作を記録すると、マーカーの位置を記録した撮影データが200フレーム(コマ)得られることになります。

図1 モーションキャプチャ―用のカメラはマーカーの位置のみを捕捉する

ちなみに、取得された点(マーカー位置)の羅列について、隣接する点同士を線で結んでやって、パラパラ漫画のように表示してやると、スティックピクチャーと呼ばれる、棒人間が動いているような描画をコンピュータ上で表現することができます。この様子もバイオメカニクス的動作解析の実践例として、テレビ番組や動画サイトなどで見たことがあるという方も多いのではないかと思います。

3. マーカーの存在位置を数字で表現する

 カメラによって記録されるのは、あくまでも「そのカメラから見たときに、どのような位置にマーカーがあるように見えるのか」ということです。実は、一台のカメラからマーカーがどのように見えているのかという情報のみでは、そのマーカー(マーカーが貼りつけられた身体部分)が、三次元空間上のどの位置に存在しているのかを確定することはできません。マーカーが存在している三次元空間上における位置を特定するためには、少なくとも二台のカメラによってマーカーが撮影されている必要があります。

例えば、図2のように、カメラAから見たときに、左下にマーカーが映っていた場合、カメラの比較的近くの場所にマーカーが存在する可能性もあれば、遠くに存在する可能性もあります。

図2 一台のカメラから得られる情報のみでは、マーカーの存在位置を特定することができない

ここでもう一台のカメラBが図3のように別の角度からマーカーを撮影しているとしましょう。この場合、カメラAから見て手前寄りの位置にマーカーが存在している場合には、カメラBの視点からは右の方にマーカーが存在しているように見えるはずです。一方で、カメラAから見て奥の方にマーカーが存在している場合には、カメラBの視点からは左の方にマーカーが存在しているように見えるはずです。

図3 二台のカメラで複数の角度から撮影することでマーカーの存在位置を特定することができる

このように、複数台のカメラ位置からどのように見えているのかについての情報を統合することによって、身体に貼りつけられた一つ一つのマーカーについて、それぞれのマーカーが三次元空間上のどの位置に存在しているのかを特定することができます。

全身の三次元的動きを記録したい場合、身体にはおよそ50個程度のマーカーを貼りつけて計測を行います。そして、原則的にはすべての撮影フレームにおいて、すべてのマーカーを二台以上のカメラによって撮影する必要があります。図2や図3で示した場合のように、空間上にマーカーが単独で存在しているような場合には、この条件を充足するのはそれほど難しくないでしょうが、身体動作を記録する際には、マーカーを取りつけられた人自身の体の影にマーカーが隠れてしまい、カメラがマーカーの位置を捕捉することができないという事態が多発します。特に肘や膝の内側に取りつけられたマーカーを撮影できる視点は、図4のように非常に限定されます。

図4 体の内側につけられたマーカーは、身体の向きが少し変わるだけで体の影に隠れてしまうので、多数のカメラで担当する角度を分担する必要がある

モーションキャプチャ―をしている光景を見たことがある方の中には、狭い範囲で実施される動作を記録する場合であっても、かなり多くの台数のカメラが、マーカーが取りつけられた人を取り囲むように配置された状態で撮影が行われていることが気になった人もいるかもしれません。撮影に多くの台数のカメラが用いられているのは、上のような必要性があるからなのです。

 マーカーが三次元空間上のどこに存在しているのかが特定できたら、その位置を数字で表現することが、この後に続く力学的な分析を行う上で必要になります。そこで、三次元的な位置を数字で表現するための座標系を設定します。これは端的に言ってしまえば、空間に対して、前後、左右、上下の三方向についての目盛りを設定するという作業になります。図5のように目盛りを設定した場合、例えば、(x,y,z)=(3,4,5)という表記によって、原点からX軸方向(右)に+3進み、そこからY軸方向(奥)に+4進み、さらにそこからZ軸方向(上)に+5進んだ位置を指定したことになります。ちなみに、原点の位置は、計算の途中で勝手に原点の位置を変えるといったことをしなければ、どこに設定しても問題ありません。実験室で計測を行う場合などは、基本的に実験室の中心付近に原点を設定しておきます。

図5 三次元空間上の位置を数字で指定できるように座標系(目盛り)を設定する

4. 三次元解析と二次元解析

 ところで、バイオメカニクス的動作解析研究の標準的手法には、大きく分けて三次元解析と二次元解析の二つが存在します。三次元解析では、三次元空間で行われている身体運動をそのまま三次元的な動きとして記述・分析することが試みられます。それに対して、二次元解析では、三次元空間を形成する三つの座標軸のうち、一つの軸によって表現される情報を考慮しないで(捨象して)身体運動を記述・分析することが試みられます。

分析対象となる身体運動は三次元空間上において生じる現象・出来事であるのだから、常に三次元解析を行えばよく、なぜ二次元解析などというある意味で不自然な研究手法が存在するのか不思議に思われた方もいるかもしれません。この点については、後ほどもう少し詳しく紹介するように、二次元解析には三次元解析と比較して簡便さという観点からメリットがあるため、ときに重宝されてきたという経緯があります。

 身体運動を二次元的に捉えることの例として、図6のような歩行動作の表現の仕方を考えてみましょう。

図6 歩行動作の二次元的な表現

身体運動を二次元的に記述・分析するということは、空間を形成する三つの軸のうち、一つの軸によって表現される情報を、残りの二つの軸によって形成される平面に圧縮してしまうということだと言い換えることもできます。図6のように歩行動作を横からの視点で平面的に捉えたケースにおいては、図7のように、前後の位置を記述するための座標軸と上下の位置を記述するための座標軸によって形成される平面へと、左右方向の空間を圧縮しているということになります。

図7 三次元空間を二次元空間に圧縮する

歩行動作の場合は、図6が歩行動作を表現したものであることが容易に読み取れることからも、空間が左右方向の広がりを持つ(身体が横幅を持つ)という事実を切り捨ててしまっても、部分的とはいえ、歩行動作についての何がしかを記述・表現できていると言えそうです。

しかし、このような記述・表現の仕方では、歩行動作を上からの視点で見たときに存在している骨盤の回旋運動や、前後から見たときに存在していることのある、片脚支持局面において上半身が左右に傾いてしまう不良動作(トレンデンブルグ歩行やデュシャンヌ歩行)などを記述・表現することはできません。このように、やはり二次元解析には、三次元空間で行われている身体運動を歪めて表現することによって、情報の損失を起こしているという側面があることは否定できません。

 二次元解析を採用することの一つのメリットとして、身体に貼りつけるマーカーの数を少なくできるということが挙げられます。例えば、全身の三次元解析では、膝や肘の内側と外側にマーカーを貼りつける必要がありますが、二次元解析では、外側のみに貼りつければ良くなります。先ほど、身体に貼りつけられたマーカーの位置をカメラで捕捉するのは、なかなか大変な作業なのだという話をしました。したがって、例えば、使用できるカメラの台数が少ない(=多くのマーカーの位置を捕捉しきるのが難しい)場合などは、二次元解析で事足りるのであれば、二次元解析で済ませてしまいたいという事情が存在するということになります。

以上を踏まえると、三次元解析を行うか二次元解析を行うかは、三次元空間での出来事を二次元平面へと圧縮して(歪めて)表現することによる情報の損失というデメリットと、二次元解析の簡便性というメリットを比較することを通じて選択される(べきだ)と言えるでしょう。上で歩行を例にして少し考察したように、ある動作類型のどのような側面に注目するか次第という側面はあるものの、大まかな傾向としては、歩行やその場での垂直跳びなど、基本的に一つの平面上での動作とみなすことができる動作類型は、比較的二次元解析と相性が良い、つまり空間の三次元性のうち、一つの次元を無視するような考え方をしても、動作の実態を歪めて記述するような害が(まったくないわけではないが)比較的少ないと言えそうです。例えば、垂直跳びを行うときに発揮されている膝を伸展させる力(関節トルク)などは、二次元解析によっても三次元解析によっても大きく異なる値が算出されるわけではありません。それに対して、複雑な三次元的な動きをしている球技における投動作や打動作などは、二次元解析をすることの害が相対的に大きいと言えるでしょう。

 三次元解析と二次元解析の違いとして、もう一つ、二次元解析の方が計算式を立てるのが簡単になる(立てる必要のある計算式の数が少なり、かつ一つ一つの計算式も相対的にシンプルなものになる)ということもあります。そのため、二次元解析の手続きの方が三次元解析の手続きよりも簡潔に紹介しやすいです。

また、この連載全体を通して私が展開したい議論との関係でも、三次元解析固有の問題に言及する必要は今のところなさそうだと考えています。つまり、この連載全体の私の議論内容を把握するための補助という観点からは、読者の皆様は二次元解析の手続きが概ねどのようなものなのかということを理解していれば問題ないだろうということです。そのため、三次元解析に固有のトピックに言及する必要がある場合は、適宜その場で必要な事柄について紹介することとし、以下では、二次元解析に絞って、その手続きの概略を紹介させていただこうと思います。

5. 身体を複数の剛体セグメントが連結したものとみなす

 前々節では、ある一つの身体部位(これを「セグメント」と呼びます)の両端に取りつけられたマーカーが存在する位置を複数の座標値によって表現することができるというところまでお話ししました。本節から9節では、このセグメントの両端の位置についての情報を使って、次回紹介する、身体動作中に全身の筋が発揮している力(関節トルク)を計算するプロセスの中で必要となる、セグメント端点の位置とは別の情報を算出するという作業について、その概略を紹介したいと思います。

以下では、図8のように、前後(地面と水平)方向をx軸、上下方向をy軸とした座標系を設定し、この平面上に下腿セグメントが存在しているという状況について考えることにします。下腿セグメントの上端と下端には、マーカーが貼りつけられているとします。図8においては、下腿上端のマーカー位置座標は(6,5)、下端のマーカー位置座標は(3,4)というように、その位置を数字の組み合わせによって表現することができます。

図8 下腿セグメントの上下両端につけられたマーカーの二次元平面上の位置

 このセグメント両端がどの位置に存在しているのかについての情報を基にして、そのセグメントの両端意外の箇所がどこにあるのかを知ることができます。しかし、そのようなことが可能になるためには、対象となるセグメントがある性質を有している必要があります。それは、そのセグメントは「変形しない」という性質です。このような性質を有している物体のことを「剛体」と言います。

マーカーを取りつけた物体が剛体であるならば、剛体の形状についての情報と、二次元平面の場合は二つのマーカー位置についての情報を基にして、剛体全外が平面上に占めている位置を完全に特定することができます。例えば、図9のように、下腿セグメントのマーカーが取りつけられていない箇所であるP1の位置を知りたいとしましょう。上端下端の位置が分かっていれば、後は、「P1は、下端から上端の方向に向かってaという距離だけ進んだ後に、右に90°向きを変えた後にbという距離だけ進んだ位置にある」という知識さえあれば、両端の位置が平面上のどこにあったとしても、必ずP1の位置を特定することができます。

図9 下腿セグメントがどのように傾いていても、
二つのマーカーからのP1の相対的位置は変化しない

反対に、セグメントが剛体であるという条件が満たされていなければ、二つのマーカーの位置情報のみから、セグメント全体の位置的状態を特定することはできません。例えば、マーカーをつけたのが、ヘビの頭と尻尾ならば、両端点の位置を特定できたからといって、ヘビがどのような姿勢をとっているか(空間上のどのような位置を占めているか)を特定できないということが容易に想像できると思います。

ちなみに、剛体が二次元平面上に占める位置を特定するために必要なマーカーの数は二つですが、三次元空間内に占める位置を特定するためには、三つのマーカー位置情報が必要になります。それは、図10のように、仮に二つのマーカー位置が特定されたとしても、三つめのマーカー位置が特定されていないかぎり、複数の位置的状態をとることが可能だから(=一つの位置的状態のみを特定することができないから)です。三次元解析においては、セグメント(関節)の内側と外側にマーカーを貼る必要があるということを話しましたが、それは、このようにセグメント全体の三次元的位置状態を特定するために必要だからなのです。

図10 剛体の三次元空間上における存在位置を完全に特定するためにはマーカーが三つ必要

 バイオメカニクス的動作解析における標準的な研究手法においては、人間の身体は複数の剛体セグメントが連結した機構とみなして分析が行われます。身体の変形を考慮した手法を用いた研究も存在しますが、そうした手法を用いるには、非常に煩雑な作業が必要になります。セグメントを剛体とみなすことができれば、ごく少数の(とはいえ、既に述べたようにそれなりの数にはなりますが)マーカーをセグメントに取りつけることによって、時々刻々においてセグメント全体が占める位置の全貌をつかむことができますが、セグメントが変形してしまう場合にはそうはいかなくなります。

このように、一つ一つのセグメントを剛体とみなすことができるということは、身体が空間や平面内においてどのようにふるまっているのかを安定して把握する上で非常に重要な前提条件となるのです。これが、バイオメカニクス的動作解析研究においては、個々のセグメントを剛体とみなす分析手法が広く普及している一方で、セグメントの変形を考慮するような手法の整備は相対的に立ち遅れている背景事情なのではないかと思います。

身体を複数の剛体セグメントが連結したものとして考えるのは、例えば、大腿部と下腿部をまとめて一つの剛体として考えるというようなことをしてしまうと、さすがにあまりにも実態からかけ離れた運動の記述になってしまうからです。そのため、概ね変形せずに一体となって動いていると考えても良さそうな所で、身体を分節化して捉えるということをすることになります。

もっとも、例えば何百とある全身の骨ごとにセグメントを分節化するというようなことは、膨大な数のマーカーを身体に貼りつけることが必要になってしまうため非現実的です。そのため、例えば体幹部などは、脊椎の一つ一つごとに個別のセグメントとして考えるのではなく、二つ(脊椎部+骨盤部)あるいは三つの剛体セグメント(胸椎部+腰椎部+骨盤部)が組み合わさったものとみなして分析を行うのが通常です。他にも、足部なども、多数の骨の組み合わせによって構成されており、厳密に考えるならば複雑に変形するわけですが、ごく一部の足部の細かな挙動を専門に研究する人たち以外は、一つの剛体とみなすか、せいぜいが二つの剛体が組み合わさったものとみなして分析を行っています。

前節において、三次元解析を行うか二次元解析を行うかという問題は、二次元解析に伴う情報の歪みの程度と、その簡便性の両方を考慮して、問題に応じて決定されるということをお話ししました。実際の身体組織は剛体ではなく変形体ですので、身体を複数の剛体セグメントの連結したシステムとみなして分析を行うということには、二次元解析を行う場合と同様、現実に起きている出来事の実態を歪ませて記述・表現しているという側面があると言えます。

そして、これも二次元解析の場合と同様に、動作類型によっては、その歪みは許容しがたいほど大きなものとなるでしょうし(例えば、人と人が激しく衝突するような場合は、衝突部分を剛体とみなして解析を行うのには慎重になった方が良いでしょう)、それほど大きな歪みは生じず、個々のセグメントを剛体とみなすことで得られる諸々の簡便性との比較衡量によって、多少の歪みの発生は許容されるという場合もあると考えられます。

 二次元解析について紹介するという限定に加えて、以下で紹介する動作解析の流れは、セグメントを剛体とみなした場合についてのものです。私自身は、衝突が重要な要素となるスポーツに携わっているので、将来的には変形体を対象とした力学的解析の技術・知識は是非とも身につけたいところなのですが、残念ながらこの点については、現状まったく手をつけることができていません。もっとも、この連載の主目的である、スポーツ動作や技術の目的論的解釈を行う枠組みを検討するという観点からは、細かな現象記述の方法について深入りするよりは、まずは身体を剛体セグメントが連結したものと仮定した上で、そのふるまいについての意味理解を深めるためには、どうしたら良いのだろうかということを考えた方が生産的なのではないかと私は考えています。

6. セグメントの重心位置の推定

 セグメントを剛体とみなすことができると、両端点に貼りつけたマーカーの位置情報を使って、セグメントの重心位置姿勢角を特定することができます。

まずは、重心とは何かということについて簡単に触れておこうと思います。あるセグメントの総質量は、そのセグメントを構成している全ての組織の質量をすべて足し合わせたものです。例えば、図11のように、一つのセグメントを15分割してみると、その一つ一つの小部分ごとに質量があり、それらの合計がセグメントの総質量ということになります。

図11 セグメント全体の質量は、小部分ごとの質量を足し合わせたものになる

剛体を対象とした力学計算においては、これら小さな部分ごとの質量をばらばらに考えるのではなく、ある特定の一点に、そのセグメントの質量全部が存在しているとみなして計算を行っても、剛体のふるまいについての力学計算をしたときに、正しい計算結果を得ることができる箇所があります。その場所こそがセグメントの重心ということになります。

具体的な重心位置は、小部分ごとの質量とそれが存在する位置によって決まります。図12のように、質量を持つ二つの点(これを「質点」と呼びます)の重心位置について考えてみましょう。二つの質点の質量が同じ場合は、重心位置はその中間地点になります。二つの質点の質量が異なる場合は、中間地点よりも重い質点側に偏った位置が重心になります。

図12 複数の物体を合わせたときの重心位置は大きな質量の物体よりの位置になる

具体的な計算方法としては、図13のように、一つ一つの質点(小部分)の位置と質量を掛け算したものをすべて足し合わせた上で、全ての質点(小部分)の質量を足し合わせた総質量で割り算するということを、X軸、Y軸の双方に分けて実行することで、複数の質点(小部分)の集まり全体の重心位置を算出することができます。

図13 重心位置の具体的計算

 では、下腿セグメントの重心位置はどのあたりにあるでしょうか。下腿セグメントは上部(膝側)の方が下部(足首側)よりも太いので、細い部分が太い部分と比べて重たい物質で構成されているというようなことがない限り、両端点を結んだ線分の中点よりは、膝よりの位置に重心がありそうです。実際のところは、図14で示したような位置あたりが下腿セグメントの重心位置のようです。

図14 下腿セグメントの重心位置

何を根拠にこんなことを言っているのかというと、阿江通良・藤井範久『バイオメカニクス20講』の41ページに載っている資料を見ています。セグメントの重心位置については、人間の身体各セグメントについて、大体どのあたりに重心があるのかを推定した研究論文がいろいろと存在しているので、それらのうちのどれかを参考にして、セグメントの重心位置を推定します。私が上で参照した値もそうした研究結果の一つです。

図13までで紹介したセグメントの重心位置の計算方法はあくまでも原理的な考え方を説明したものです。実際の動作解析研究の場面では、このようなセグメントごとの重心位置について検討している研究論文を根拠として、セグメントのどのあたりに重心があるのかを推測するということをしています。

もちろん、セグメントの重心位置がどのあたりかは、厳密には個人ごとに微妙に違いがあると考えられます。したがって、この方法によって推定されたセグメント重心位置は、あくまでもおおまかなものであり、厳密には正しい重心位置からずれていると考えられます。ちなみに、MRIなどを用いて身体組成データを取得することで、個人ごとのより正確な重心位置を推定できるのではないかといったことも考えられていますが、広く普及するには至っていません。ここでもまた、実態からの逸脱と手続きの簡便性との間でのバランスというものが存在していると言えそうです。

7. セグメントの姿勢角の推定

 先ほど、二次元平面で動く剛体(セグメント)全体の位置的状態を特定するためには、二つのマーカーの位置情報のみをモーションキャプチャ―によって取得すれば十分であるという話をしました。実は、剛体(セグメント)全体の位置的状態を特定するための情報として別の組み合わせも考えられます。それが、前節において取り上げたセグメント重心位置と、本節において取り上げるセグメントの姿勢角の組み合わせです。

二次元平面での動きのみを考える場合、剛体セグメントの重心位置は、x軸の座標値とy軸の座標値の二つを指定してやることで特定できます。しかし、この情報だけでは、その剛体セグメントが平面上に占める位置を確定することはできません。何故なら、図15のように、重心の位置としては同じでありながら、異なる複数の位置的状態が実現されうるからです。

図15 どちらも重心位置は同じだが、完全に同じ位置的状態にあるとは言えない

ここで、図16のように、セグメントの長軸(両端のマーカーを結んだ直線)と、x軸(地面)とのなす角度を指定してやることで、剛体の二次元平面上での位置的状態を一意に特定することができます。この角度のことを剛体の姿勢角と言います。

図16 角度についての情報を追加することで、二つの状態の違いを表現できる

 このように、二次元平面上を動く剛体は、重心位置を表現するための二つの情報(x座標値、y座標値)と、その姿勢角についての情報という計三つの情報を特定してやることで、その剛体の二次元平面上における位置的状態を完全に特定・表現することができます。ちなみに、三次元空間上を動く剛体については、重心位置を表現するための三つの情報(x座標値、y座標値、z座標値)と、剛体の向き(姿勢角)を表現するための情報として三つの情報(これは、例えば股関節には、屈曲/伸展、内転/外転、内旋/外旋の三つの軸まわりの回転が存在することと対応しています)を特定してやることで、その位置的状態を完全に特定することができます。

次回でてくる、力と加速度の関係性を表す式である運動方程式は、このそれぞれの情報ごとに式を立てる必要があります。つまり一つの剛体の二次元平面上での運動を表現するためには、三本の運動方程式を立てる必要があり、三次元空間上での運動を表現するためには、六本の運動方程式を立てる必要があるということになります。別の見方をするならば、運動方程式の中に、重心位置や姿勢角と関係する変数が含まれているからこそ、これらの値を算出しておくということが、運動方程式を解いて、セグメントに作用している力や関節トルクを推定する上での準備段階として必要になるのです。

8. セグメント同士の連結点(関節中心)の推定

 剛体に作用する力とそれによって生じる動き(加速度)の関係性を記述する運動方程式を立てるためには、さらに、隣接するセグメント同士がどこで接触しているのかについての情報も必要になります。言い換えるならば、二つのセグメントを連結している関節の位置を決めておく必要があるということです。

三次元解析、二次元解析の双方において、基本的には、セグメント同士の連結は特定の一点でなされているとみなして計算を行います。そして、このセグメント同士の連結ポイントである一点のことを、「関節中心」と呼んだりもします。セグメント同士の連結ポイント=関節中心を決めておく必要があるのは、その位置をセグメント同士が接触することで相互に押し合ったり引き合ったりすることによって生じる力の作用点とみなすからです。もちろん、実際の身体においては、二つのセグメントは、点ではなく面で接しています。しかし、重心の一点にセグメント全体の質量が集約されていると計算上はみなしても問題ないのと似たような原理により、セグメントの接触面に作用している力を、関節中心の一点に集約して考えることができるのです。

二次元解析における二つのセグメントの連結ポイントの決定の仕方の一例として大腿セグメントと下腿セグメントの連結ポイント、つまり膝関節中心位置の決め方について紹介してみたいと思います。膝の外側あたりの場所を手で触って探すと、大腿骨と脛骨(すねの骨)が接触している部分の窪みを見つけることができます。私の在籍していた研究室では、その場所にマーカーを貼ることで、その位置を大腿セグメントの下端かつ下腿セグメントの上端、つまり大腿セグメントと下腿セグメントの連結点(=膝関節中心の位置)とみなしていました。

余談ですが、三次元解析の場合は、関節中心は、身体の表面よりも内側にあると考える必要があるため、図17のように、膝の内側と外側に貼られたマーカーの中間地点を膝関節中心とみなすことにしていました。肘や足首などは、同じような発想で、関節の内側と外側にマーカーを貼り、その中間地点を関節中心として推定するということをしていました。

図17 三次元解析における関節中心の推定方法の一例

また、股関節や肩関節(肩甲上腕関節)といった関節の中心位置は、体表に露出した解剖学的特徴点(皮膚上から触って判別できる骨のでっぱりやくぼみ)の位置と、体の内部にある関節中心位置との関係が、上で挙げたような関節ほどは単純ではないため、もう少しややこしい計算処理を行う必要があります。もっとも、このような点についての認識を持っていなくても、この後の話を読み進めていく上で全く支障はないので、今回はこれ以上深入りしません。

9. 微分計算によるセグメントの速度、加速度、角速度、角加速度の算出

 ここまで紹介してきた計算処理を、撮影したすべてのフレームについて行うことで、分析を開始する動作局面から終了する局面にいたるまでの時々刻々において、身体各セグメントが二次元平面上に占めている位置的状態を数字で表現・記述することができます。本節では、このうちセグメントの重心位置と姿勢角についての情報を使用して、各セグメントの①速度②加速度③角速度④角加速度、の四つの数値を算出するという作業について紹介します。

何故これらの情報を特定する必要があるのかというと、次回紹介する運動方程式を用いて力や関節トルクを算出するという段階において必要となるからです。このうち、直接的に必要となる情報は、セグメントの加速度と角加速度です。これらの情報が必要になるのは、運動方程式の中に変数として直接含まれているからです。速度および角速度は運動方程式の中には直接含まれていませんが、速度は加速度を、角速度は角加速度を算出するための前段階として算出する必要があります。

これら四つの値を算出する上では、微分計算という作業を行う必要があります。微分という作業の基本的な発想は、ある数値で表現された状態について、ある時間あたりの変化量を数値で表現するというものです。図18のように、ある時点のセグメント重心がx=3という位置にあり、0.5秒後の時点においてはx=8という位置にあるとします。そうすると、この0.5秒のあいだにセグメントのx軸方向の重心位置は+5だけ変化したことになります。1秒あたりに変換すると、+10という変化量となります。つまり、この0.5秒間において、セグメント重心はx軸方向に秒速+10という速度を持っていたということになります。

図18 時間あたりの位置の変化量が速度

 微分という操作は、原理的にはこれと同じことを、もっと短い時間間隔において考えるというものです。数学的には、時間をどんどん短く切り刻んでいき、瞬間とほぼ同一視することが可能なような極限まで小さな時間区切りにおける、ある物体の(重心)位置の変化量のことを速度と言います。それに対して、図18において算出したのは、瞬間瞬間の速度ではなく、0.5秒間における平均速度です。

もっとも、実際のバイオメカニクス的動作解析研究においては、時間を無限に小さく切り刻んでいく(=無限に大きなフレームレートで身体運動を撮影する)ということはできません。そこで、撮影したフレームとフレームの時間間隔(200FPSの場合は1÷200=0.005秒)を、時間を切り刻む上での基本単位として、瞬間瞬間の速度の近似値として0.005秒の間の平均速度を算出するということをしています。

 ここで、速度を算出したい対象の位置情報を取得する時間間隔が長すぎるとどういう問題が生じるのか、ということについて確認しておこうと思います。問題は、ある程度細かな時間幅で対象の位置情報を捕捉しなければ、対象のふるまいの実態をとらえそこなう恐れがあるということです。図19のように、12時に自宅にいた人が、3時間後の15時に10km東の地点にいたとします。この場合、東方向を+とすると、3時間の平均時速は+3.3km/hとなりますが、この情報だけでは、この人が3時間の間にどのように行動したのかについて見当はずれの認識をもってしまう可能性があります。

図19 3時間おきに人の現在位置が捕捉されるという状況

例えば、図20のように、瞬間時速+3.3km/hで3時間ずっと東に向かって歩きつづけたという可能性(Aパターン)もあれば、最初の1時間は瞬間時速-2km/hで西に歩き、残りの2時間を瞬間時速+6kmで東に向かって歩いたという可能性(Bパターン)もあります。

図20 どちらのケースでも平均時速は等しくなる

12時と15時の二回だけ位置情報を取得する場合、どちらの行動パターンであっても同じ観測結果が得られます。つまり、3時間ごとにこの人がいる位置を捕捉するというだけでは、この二つの異なる行動パターンを区別することができないのです。そして、この3時間トータルでの「平均」時速は、どちらの場合も+3.3km/hで同じになります。

ここで、3時間おきではなく、1時間おきに位置情報を取得するというように変更した場合について考えてみましょう。そうすると、Aパターンでは、どの1時間についても平均時速+3.3km/hという結果が得られますし、Bパターンでは、最初の1時間は平均時速-2km/h、残りの2時間は平均時速+6km/hという計算結果を得ることができます。

もう一つ注目すべき点として、Aパターンの場合は、3時間おきに捕捉した位置情報を基にして算出した平均時速と、それぞれの時点における瞬間時速が同じになり、Bパターンの場合でも、3時間おきでは駄目だけれども、1時間おきに位置情報を捕捉すれば、1時間おきに捕捉された位置情報を基に算出した平均時速と実際の瞬間時速が同じになるということです。つまり、それ以上位置情報を取得する時間間隔を短くしても、速度計算の結果は変化しません。言い換えるならば、それ以上細かな時間間隔で位置情報を捕捉したとしても、粗すぎる時間区切りの仕方をすることによってとらえそこなっていた細かな行動(移動)パターンが新たに浮かび上がってくるということはないということです。

 以上の考察を踏まえて、身体動作解析の文脈に立ち戻ることにしましょう。先ほど200FPSで身体運動中のマーカー位置を記録する場合は、0.005秒を基本単位として、瞬間の速度の近似値を算出するということをお話ししました。瞬間速度の近似であるというのは、ここでは結局のところ、徒歩の例において3時間や1時間における平均速度を算出したのと同じように、0.005秒の間における平均速度を算出しているからです。

つまり、徒歩の例で考察したのと同じように、この0.005秒の間(フレームとフレームの間)に、一旦反対方向に動いてから平均速度よりも速い速度で次のフレームによって捕捉された位置まで動いたといった可能性もあるということです。徒歩の例においてした考察を踏まえると、フレームレートの値が小さすぎる、つまりフレームとフレームとの間の時間が長すぎると、マーカー位置を記録できていないフレームとフレームの間の時間中に、マーカーが様々な挙動をする(様々な動作が実行される)余地があることになります。

他方で、無限とまでいかなくても、ある程度大きなフレームレートで撮影を行っておけば、図21のように、フレームとフレームの間の時間におけるマーカーの動きは、前のフレームの地点から次のフレームの地点へのほぼ直線的な動きになることが想像できるかと思います。これが、動作解析において、撮影する時間幅を無限に小さくしなくてもそこまで大きな問題がないことが多い理由と考えられます。

図21 動きの軌跡をある程度細かな区間に分ければ、
一つ一つの区間における挙動は単純に(直線に近く)なる

ここまでの話を読んで、やはりできるだけ短い時間幅で動作中のマーカー位置を記録した方がより正確に身体の動きの実態を記録することができるのではないかと思われた方もいると思います。しかし、大きなFPSで撮影を行う場合、身体の影になっていないマーカーであっても記録するのが難しくなってしまうという事情があるため、むやみやたらに大きなFPSで撮影を行うわけにはいかないという事情があります。これは、図22のように、1台のカメラが捕捉できるマーカーの範囲が、撮影するFPSを大きくしていくことで狭まってしまうということによって生じる制約です。

図22 フレームレートを上げると、
カメラがマーカーの位置を捕捉できる範囲が小さくなってしまう

どれくらいのフレームレートで撮影を行うかということもまた、このような撮影機材の性能・性質上の制約と、物体・マーカーの動きの実態をできるだけ正確に把握するという要請との間でのバランスによって決定されることになります。現状においては200FPSという値が、多くの動作類型についてこの二つのバランスがそこそこ取れたフレームレートということになるのだろうと思います。もちろん、例えば、投動作や打動作のような末端部を急激に加速させるような動作について、その末端部分の細かな動きを記録したいといった場合には、より大きなFPSで撮影を行う必要がありますが、そのためには非常に手間のかかる作業が必要になります。

私も以前、他の人の研究の手伝いで1000FPSでの撮影に参加したことがありますが、普段行っている200FPSでの撮影と比べて、撮影機材のセッティング(カメラをどこに設置するかとか、1台1台のカメラごとのピントの設定など)の決定に何倍も時間がかかりました(普段の撮影では前日に数時間の準備をすれば良いのですが、この時は、本番の撮影を行えるようになるまでのテストの時間も含めると20倍くらいは準備時間がかかりました)。繰り返しになりますが、このような事情があるために、あえて必要もないのに高FPSで撮影を行うというわけにはいかないのです。

 実際の微分計算においては、三点微分法と呼ばれる、もう少し細かな計算処理を行う必要があるのですが、速度を算出する際の基本的な考え方は以上のようなものと思っておけば良いと思います。動作解析の対象とするすべてのフレームごとに、すべてのセグメント重心位置のx座標とy座標のそれぞれについて微分計算を行うことで、時々刻々における各セグメント重心の移動速度(水平方向速度と上下方向速度)を算出することができます。さらに、セグメント重心の速度を算出することができたら、図23のように、同じような計算処理を、今度は位置ではなく、時々刻々の速度についての情報に対して行うことで、各フレームにおける、「ある瞬間における速度の変化量」である加速度を算出することができます。

図23 位置の変化量が速度、速度の変化量が加速度

ここまで、物体(剛体セグメント)の重心の上下左右の動き(これを並進と言います)についての速度(短い時間における位置の変化)、加速度(短い時間における速度の変化)の算出についてお話してきました。これに加えて、姿勢角の変化についても同じような作業を行う必要があります。短い時間における姿勢角の変化量のことを物体の持っている角速度、角速度の変化量のことを角加速度と言います。例えば、0.005秒の間に1°姿勢角が変化したら、1秒あたりに換算すると、200°/sという角速度を持っていることになります。角速度についても、速度をもう一度微分することで加速度を算出するのと同じように、もう一度微分することで角加速度を算出することができます。

10. おわりに

 今回は、バイオメカニクス的動作解析における標準的研究手法の流れである、

①身体動作中のマーカー位置を記録し、その情報を基にしてセグメントごとの加速度、角加速度を算出する
②①で算出した情報を基にして、全身の筋が発揮している力(正確には関節トルク)を推定する

という二段階のうち、①についてお話ししました。

次回は、今回の内容を踏まえつつ②の作業について紹介していきたいと思います。


次回

この記事が気に入ったらサポートをしてみませんか?