JP2015195913A - Posture estimation method, posture estimation program and posture estimation device - Google Patents
Posture estimation method, posture estimation program and posture estimation device Download PDFInfo
- Publication number
- JP2015195913A JP2015195913A JP2014074895A JP2014074895A JP2015195913A JP 2015195913 A JP2015195913 A JP 2015195913A JP 2014074895 A JP2014074895 A JP 2014074895A JP 2014074895 A JP2014074895 A JP 2014074895A JP 2015195913 A JP2015195913 A JP 2015195913A
- Authority
- JP
- Japan
- Prior art keywords
- angle
- posture estimation
- spine
- calculation unit
- posture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、姿勢推定方法、姿勢推定プログラム及び姿勢推定装置に関する。 The present invention relates to a posture estimation method, a posture estimation program, and a posture estimation device.
人体の姿勢の一例として、背中表面の形状(以下、背骨形状)を計測する試みがなされている。かかる背骨形状の計測には、一例として、モーションキャプチャが用いられる場合がある。例えば、光学式のモーションキャプチャの場合、人体に取り付けられたマーカを複数のカメラで撮影し、各カメラによって撮像される画像の視差を利用して測定されたマーカの位置が記録される。これらのマーカが背骨に沿って取り付けられる場合、各マーカの位置が背骨形状として得られる。 As an example of the posture of the human body, attempts have been made to measure the shape of the back surface (hereinafter referred to as the spine shape). For example, motion capture may be used for measuring the spine shape. For example, in the case of optical motion capture, a marker attached to a human body is photographed by a plurality of cameras, and the position of the marker measured using the parallax of an image captured by each camera is recorded. When these markers are attached along the spine, the position of each marker is obtained as a spine shape.
また、複数の加速度センサを用いて、背骨形状を可視化する提案もなされている。この場合、背骨に沿って取り付けられた3軸の加速度センサの各々の出力から各センサの重力加速度に対する傾きを算出することによって背骨形状を計測することを目指す。かかる加速度センサの出力には、センサの傾斜によって発生する重力加速度の成分の他にも、センサの加減速によって発生する運動加速度の成分が含まれる。運動成分を除去するために、ハードウェア的には角速度センサを用いた方法、ソフトウェア的にはローパスフィルタを通し高周波数を除去するやカルマンフィルタを用いる方法が報告されている。 In addition, proposals have been made to visualize the spine shape using a plurality of acceleration sensors. In this case, it aims to measure the spine shape by calculating the inclination of each sensor with respect to the gravitational acceleration from the output of each of the three-axis acceleration sensors attached along the spine. The output of the acceleration sensor includes a component of motion acceleration generated by acceleration / deceleration of the sensor in addition to a component of gravitational acceleration generated by the inclination of the sensor. In order to remove the motion component, a method using an angular velocity sensor in terms of hardware and a method using a Kalman filter for removing high frequencies through a low-pass filter have been reported in terms of software.
しかしながら、上記の技術には、次に説明するように、汎用性に欠ける一面がある。 However, the above technique has one aspect lacking in versatility, as will be described below.
例えば、上記の光学式のモーションキャプチャシステムを用いる場合、複数のカメラがマーカを撮像範囲に収める状況でしか背骨形状を計測できないので、その適用範囲がカメラの撮像範囲に限定されるという制約がある。このため、光学式のモーションキャプチャシステムを用いて、日常的に姿勢をモニタリングするのは困難であり、その汎用性に限界がある。 For example, when the above-described optical motion capture system is used, the spine shape can be measured only in a situation where a plurality of cameras can fit the marker within the imaging range, so that the application range is limited to the imaging range of the camera. . Therefore, it is difficult to monitor the posture on a daily basis using an optical motion capture system, and its versatility is limited.
また、加速度センサを用いる場合、走行中等の激しい運動が行われている動的な状況下で背骨形状を計測することができない。かかる動的な状況下にある場合、高周波成分を除去するだけでは、運動加速度の成分と重力加速度の成分とを分離することができず、背骨の構造上あり得ない(想定できない)曲線が背骨形状として出力されるケースもある。このように、加速度センサを用いる場合にも、動的状況下で計測が困難であるという制約があるので、その汎用性に限界がある。角速度センサを用いる場合は、消費電力が大きくなり連続稼働時間が加速度センサのみを用いた場合よりも少なくなってしまう。カルマンフィルタを適用する場合、forward mapping functionが必要であるが、日常生活のあらゆる動きから得るのは極めて困難である。更に、莫大な処理時間を要する。 In addition, when using an acceleration sensor, the spine shape cannot be measured under a dynamic situation in which intense exercise such as running is performed. In such a dynamic situation, the motion acceleration component and the gravitational acceleration component cannot be separated only by removing the high-frequency component, and a curve that cannot be assumed in the structure of the spine (which cannot be assumed) is a spine. In some cases, it is output as a shape. Thus, even when using an acceleration sensor, there is a limitation that measurement is difficult under dynamic conditions, so that its versatility is limited. When the angular velocity sensor is used, the power consumption increases, and the continuous operation time becomes shorter than when only the acceleration sensor is used. When applying the Kalman filter, a forward mapping function is necessary, but it is extremely difficult to obtain from every movement of daily life. Furthermore, enormous processing time is required.
1つの側面では、本発明は、姿勢推定の汎用性を向上させることができる姿勢推定方法、姿勢推定プログラム及び姿勢推定装置を提供することを目的とする。 In one aspect, an object of the present invention is to provide a posture estimation method, a posture estimation program, and a posture estimation device that can improve the versatility of posture estimation.
一態様の姿勢推定方法は、コンピュータが、加速度センサの値から第1の角度を算出し、背骨において互いに接続する骨同士を滑らかに接続させるモデルと、背骨に含まれる骨の可動範囲とにしたがって第2の角度を算出し、前記第1の角度及び前記第2の角度を合成することによって第3の角度を算出する処理を実行する。 According to one aspect of the posture estimation method, the computer calculates the first angle from the value of the acceleration sensor and smoothly connects the bones connected to each other in the spine, and the range of motion of the bones included in the spine. A process of calculating a third angle by calculating a second angle and combining the first angle and the second angle is executed.
姿勢推定の汎用性を向上させることができる。 The versatility of posture estimation can be improved.
以下に添付図面を参照して本願に係る姿勢推定方法、姿勢推定プログラム及び姿勢推定装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 A posture estimation method, a posture estimation program, and a posture estimation device according to the present application will be described below with reference to the accompanying drawings. Note that this embodiment does not limit the disclosed technology. Each embodiment can be appropriately combined within a range in which processing contents are not contradictory.
[姿勢推定装置の構成]
まず、本実施例に係る姿勢推定装置の機能的構成について説明する。図1は、実施例1に係る姿勢推定装置の機能的構成を示すブロック図である。図1に示す姿勢推定装置100は、人体の姿勢を推定するものであり、一例として、人体の背中に取り付けられた複数のセンサ1〜Sを用いて、人体の背中表面の形状、すなわち背骨形状を推定する姿勢推定処理を実行する。
[Configuration of posture estimation device]
First, the functional configuration of the posture estimation apparatus according to the present embodiment will be described. FIG. 1 is a block diagram illustrating a functional configuration of the posture estimation apparatus according to the first embodiment. The
かかる姿勢推定装置100は、一態様として、上記の姿勢推定処理がパッケージソフトウェア、オンラインソフトウェアあるいはアプリケーションプログラムとして実現される姿勢推定プログラムを所望のコンピュータにインストールさせることによって実装できる。
As an aspect, the
ここで、上記の姿勢推定プログラムは、プロセッサ及びメモリを搭載するコンピュータであれば任意の装置にインストールできるが、一例として、スマートフォン、携帯電話機やPHS(Personal Handyphone System)などの移動体通信端末にインストールさせることができる。この他、上記の姿勢推定プログラムは、移動体通信端末のみならず、タブレット端末やスレート端末を含む携帯端末装置全般にインストールさせることができる。このように、上記の姿勢推定プログラムが携帯端末装置にインストールされる場合には、携帯端末装置を姿勢推定装置100として機能させることができる。なお、上記の姿勢推定プログラムは、携帯端末装置に限定されず、デスクトップ型及びノート型のパーソナルコンピュータなどの情報処理装置全般にインストールさせることもできる。
Here, the above attitude estimation program can be installed in any device as long as it is a computer equipped with a processor and memory, but as an example, it is installed in a mobile communication terminal such as a smartphone, a mobile phone, or a PHS (Personal Handyphone System). Can be made. In addition, the posture estimation program can be installed not only on mobile communication terminals but also on all mobile terminal devices including tablet terminals and slate terminals. As described above, when the posture estimation program is installed in the mobile terminal device, the mobile terminal device can function as the
図1に示すように、姿勢推定装置100は、取得部110と、第1算出部120と、パラメータ記憶部130と、パラメータ登録部140と、パラメータ設定部150と、第2算出部160と、第3算出部170と、形状可視化部180と、負荷算出部190とを有する。
As illustrated in FIG. 1, the
かかる姿勢推定装置100は、図1に示した機能部以外にも既知のコンピュータが有する各種の機能部を有することとしてもかまわない。例えば、姿勢推定装置100が据置き端末として実装される場合には、キーボードやマウスなどの入力デバイスをさらに有することとしてもよい。また、姿勢推定装置100が移動体通信端末として実装される場合には、アンテナ、移動体通信網に接続する無線通信部、GPS(Global Positioning System)受信機などの機能部をさらに有していてもかまわない。
The
取得部110は、複数のセンサ1〜Sによって出力されたセンサ値を取得する処理部である。
The
一実施形態として、取得部110は、複数の3軸加速度センサ1〜SからX軸、Y軸、Z軸の各成分のセンサ値を取得する。ここで、3軸加速度センサ1〜Sが3軸の加速度を計測するサンプリング周期には任意の周期を採用することができ、また、3軸加速度センサ1〜Sから取得部110へ3軸の加速度の時系列データがアップロードされる周期にも任意の周期を採用することができる。
As an embodiment, the
図2は、センサの取付例を示す図である。図2には、矢状面から視た場合のセンサの取付例が示されている。図2の例では、人体の背中に10個の3軸加速度センサ1〜10が装着される場合が例示されているが、実施形態はこれに限定されず、背中に取り付けられるセンサの数は1つであっても10個以外の複数の数であってもかまわない。また、図2には、背骨上にセンサ1〜10を取り付ける模式図が図示されているが、実際には背中の表面にセンサ1〜10が取り付けられる。
FIG. 2 is a diagram illustrating an example of sensor attachment. FIG. 2 shows an example of sensor attachment when viewed from the sagittal plane. In the example of FIG. 2, a case where ten three-
図2に示すように、背骨、いわゆる脊柱には、頸椎(cervical)、胸椎(thoracic)や腰椎(lumbar)などを始め、仙骨や尾骨が含まれる。このうち、頸椎は、一般に、第1頸椎C1から第7頸椎C7までの7つの骨を含んで構成される。また、胸椎は、第1胸椎Th1から第12胸椎Th12までの12個の骨を含んで構成される。また、腰椎は、第1腰椎L1から第5腰椎L5までの5つの骨を含んで構成される。 As shown in FIG. 2, the spine, the so-called spinal column, includes the cervical, thoracic, and lumbar, as well as the sacrum and coccyx. Of these, the cervical vertebra generally includes seven bones from the first cervical vertebra C1 to the seventh cervical vertebra C7. The thoracic vertebra includes 12 bones from the first thoracic vertebra Th1 to the twelfth thoracic vertebra Th12. The lumbar vertebra includes five bones from the first lumbar vertebra L1 to the fifth lumbar vertebra L5.
図2に示す例では、センサ1が頸椎、例えばC7に取り付けられる。また、センサ2〜7の6つが胸椎、例えばTh2、Th4、Th6、Th8、Th10及びTh12に取り付けられる。さらに、センサ8〜10の3つが腰椎、例えばL2、L4及びL5に取り付けられる。以下では、j番目に装着されたセンサから時刻tに取得されたセンサ値のことを「qj(t)」と記載する場合がある。かかるqj(t)には、X、Y、Z軸の各成分の加速度の値が含まれる。この場合、時刻tに各センサ1〜Sから取得されるセンサ値Q(t)は、{q1(t),・・・,qS(t)}と表すことができる。
In the example shown in FIG. 2, the
第1算出部120は、取得部110によって取得される各センサ1〜Sのセンサ値から重力加速度に対する傾斜角を算出する処理部である。
The
一実施形態として、第1算出部120は、取得部110によって各センサ1〜Sのセンサ値が取得される度に、矢状面上の傾斜角a1と、前額面上の傾斜角a2とをセンサごとに算出する。図3は、矢状面及び前額面の一例を示す図である。図3に示すように、前額面とは、人体を腹側と背側、すなわち前側と後側に分割する平面を指す。一方、矢状面とは、人体を左右に分ける面を指す。これら前額面及び矢状面は、互いに直交する。つまり、矢状面状の傾斜角a1を求めることは、前屈または後屈の度合いを求めることとなる一方で、前額面上の傾斜角a2を求めることは、左右の側屈の度合いを求めることとなる。このうち、矢状面上の傾斜角a1は、下記の式(1)によって計算することができる。これによって、センサ1〜Sごとの矢状面状の傾斜角a1,j(t)が得られる。また、前額面上の傾斜角a2は、下記の式(2)によって計算することができる。これによって、センサ1〜Sごとの前額面状の傾斜角a2,j(t)が得られる。下記の式(1)及び式(2)における「x」は、X軸方向の加速度を指し、「y」は、Y軸方向の加速度を指し、また、「z」は、Z軸方向の加速度を指す。なお、下記の式(1)及び式(2)によって単位が[rad]である矢状面上の傾斜角a1及び前額面上の傾斜角a2が算出される。
As one embodiment, the
このようにセンサごとに傾斜角a1,j(t)及び傾斜角a2,j(t)が求められた後、第1算出部120は、各センサ1〜Sの取り付け時の回転を補正することができる。すなわち、センサ1〜Sは、前額面上で背骨の正中に沿ってまっすぐに取り付けることができるとは限らず、正中よりも左右に回転して取り付けられる場合もある。かかる取り付け時に左右に回転して取り付けられた分をオフセットとして補正することもできる。具体的には、上記の式(2)に示すように、前額面上の傾斜角a2は、Y−Z平面上の成分と、X成分との比を用いて計算される。ここで、基準姿勢、例えば直立姿勢における傾斜角を(a01,a02)、任意の姿勢における傾斜角を(a1,a2)とし、下記の式(3)で任意の姿勢における傾斜角を再定義する。下記の式(3)では、センサ平面と前額面が平行であると仮定している。かかる仮定によって、X軸は、前額面の法線方向成分と一致するので、矢状面上の傾斜角(a1)には任意の姿勢における傾斜角a1がそのまま採用される。
As described above, after the inclination angle a 1, j (t) and the inclination angle a 2, j (t) are obtained for each sensor, the
(a1,a2):=(a1,a2−a02)・・・(3) (A 1 , a 2 ): = (a 1 , a 2 −a 02 ) (3)
上記の補正によって、補正後の各センサ1〜Sの傾斜角A(t)が矢状面及び前額面ごとに得られる。すなわち、A(t)は、下記の式(4)に示すように、各センサ1〜Sの矢状面上の傾斜角a1,1(t)〜a1,S(t)と、各センサ1〜Sの前額面上の傾斜角a2,1(t)〜a2,S(t)とが含まれる。
By the above correction, the corrected tilt angles A (t) of the
ここで、センサ1〜Sが背骨に含まれる各骨に対応して装着されていない場合、言い換えればセンサ数S>背骨の数Mである場合、第1算出部120は、下記の式(5)に示すように、行列における行の要素数を背骨の数Mに合わせる。例えば、第1算出部120は、センサとセンサの間に存在する骨の要素における傾斜角を線形補間によって算出し、行の要素数をセンサの数Sから背骨の数Mに補間する。以下では、センサ1〜Sによって測定された加速度から求められた背骨の各骨1〜Mの傾斜角のことを「測定角度」と記載する場合がある。
Here, when the
以降の機能部では、矢状面と前額面の各々に対し、個別に処理が実行されるが、矢状面と前額面の間で実行される処理内容は同一であるので、以下では、代表して、矢状面における処理に絞って説明を行うこととする。 In the subsequent functional units, processing is executed individually for each of the sagittal plane and the front face value, but the processing content executed between the sagittal plane and the front face value is the same. The description will be made focusing on the processing in the sagittal plane.
パラメータ記憶部130は、姿勢推定に用いる各種のパラメータを記憶する記憶部である。
The
例えば、パラメータ記憶部130は、後述の第2算出部160によるモデル角度の計算に用いられる背骨形状の拘束条件の一例として、各骨の可動範囲Σ1を記憶する。ここで言う「モデル角度」とは、上記の測定角度と同様に各骨の角度を指すが、測定角度がセンサ1〜Sのセンサ値から算出されるものであるのに対し、モデル角度は、パラメータ設定部150が設定する初期値の下、背骨において互いに隣接する骨同士を滑らかに接続させるモデルにしたがって計算される各骨の角度を指す。上記の「各骨の可動範囲Σ1」は、前屈時及び後屈時の骨の角度によって定めることができるが、前屈時または後屈時のいずれかの一方の骨の角度を採取し、一方の骨の角度から他方の骨の角度を推定することによって定義することもできる。かかる「各骨の可動範囲Σ1」は、(σ1,1,・・・,σ1,M)と表すことができる。
For example, the
また、パラメータ記憶部130は、第2算出部150によるモデル角度の計算で用いる初期値の一例として、直立姿勢における各骨の角度Θ1を記憶する。かかる「直立時の角度Θ1」は、直立姿勢時に測定されたセンサ1〜SのX、Y、Z軸の各成分の加速度から各骨1〜Mの角度を求めることができる。かかる直立時の角度Θ1は、(θ1,1,・・・,θ1,M)と表すことができる。
In addition, the
さらに、パラメータ記憶部130は、背骨形状の可視化に用いるパラメータの一例として、骨間の距離Lを記憶する。かかる「骨間の距離L」には、背中の湾曲がない姿勢、例えば伏臥位で骨ごとに測定された距離を採用できる。かかる「骨間の距離L」は、(L1,・・・,LM)と表すことができる。
Further, the
パラメータ登録部140は、上記のパラメータ記憶部130にパラメータを登録する処理部である。ここで、上記の各骨の可動範囲Σ1、直立時の角度Θ1及び骨間の距離Lは、予め計測しておくこともできるし、人体がセンサ1〜Sを装着している場合に上記の直立、前屈、後屈や伏臥位などの姿勢が推定された時点のセンサ値から算出することもできる。
The
一実施形態として、パラメータ登録部140は、センサ1〜Sからセンサ値Q(t)が取得されると、上記の第1算出部120と同様に、上記の式(1)及び式(2)にしたがって矢状面上の傾斜角a1と、前額面上の傾斜角a2とをセンサごとに算出する。そして、パラメータ登録部140は、上記の式(3)にしたがって各センサ1〜Sの取り付け時の回転を補正する。その上で、パラメータ登録部140は、各センサ間に存在する骨の要素における傾斜角を線形補間によって算出し、行の要素数をセンサの数Sから背骨の数Mに補間する。その後、パラメータ登録部140は、このようにして得た測定角度A(t)を図示しない内部メモリに保存する。続いて、パラメータ登録部140は、直立、前屈、後屈や伏臥位などの姿勢ごとに当該姿勢で算出され得る各骨1〜Mの傾斜角が対応付けられた対応表と、内部メモリに記憶された測定角度A(t)とを比較する。このとき、パラメータ登録部140は、測定角度A(t)が上記の対応表にある姿勢の測定角度から所定の範囲内である場合、パラメータ記憶部130に記憶されたパラメータのうち当該姿勢に対応するパラメータを測定角度A(t)に上書きして更新する。このような処理によって、日常生活でユーザが上記の姿勢をとった特定の瞬間の測定角度を切り取ってパラメータとして登録することができる。
As one embodiment, when the sensor value Q (t) is acquired from the
パラメータ設定部150は、モデル角度や推定角度の計算に用いるパラメータを設定する処理部である。ここで言う「推定角度」は、上記の測定角度および上記のモデル角度を合成することによって推定される骨の角度を指す。これらモデル角度及び推定角度は、詳細は後述するが、各骨1〜Mのモデル角度及び推定角度が反復演算される。このため、その反復回数を「k」として以下の説明を行う。
The
一実施形態として、パラメータ設定部150は、後述の第2算出部150がモデル角度の計算に用いる拘束条件を設定する。具体的には、パラメータ設定部150は、センサ1〜Sから取得されたセンサ値Q(t)が特定の動作パターンに該当するか否かを判定する。かかる動作パターンの一例としては、走行やリハビリなどの動作と当該動作に対応するセンサ値とが定義されたデータを採用できる。そして、パラメータ設定部150は、センサ値Q(t)が走行やリハビリなどの動作に該当しない場合、パラメータ記憶部130に記憶された各骨の可動範囲Σ1を拘束条件として設定する。一方、パラメータ設定部150は、センサ値Q(t)が走行やリハビリなどの動作に該当する場合、当該動作に対応する可動範囲を設定する。例えば、パラメータ設定部150は、走行時は停止時よりも背骨の可動範囲が狭くなると推定できるので、パラメータ記憶部130に記憶された可動範囲Σ1に1未満の係数、例えば1/2を乗算することによって走行時に対応する可動範囲を設定する。また、パラメータ設定部150は、リハビリ時は他の状態よりも可動範囲が広くなると推定できるので、パラメータ記憶部130に記憶された可動範囲Σ1に1以上の係数、例えば1.2を乗算することによってリハビリ時に対応する可動範囲を設定する。以下では、パラメータ設定部150によって拘束条件として設定された可動範囲のことを「可動範囲Σ2」と記載する場合がある。この可動範囲Σ2は、(σ2,1,・・・,σ2,M)と表される。
As an embodiment, the
他の実施形態として、パラメータ設定部150は、上記のモデル角度、さらには、後述の第3算出部170が測定角度及びモデル角度を合成する場合に用いる重み係数の計算に用いるパラメータの初期値として、骨の角度の初期値を設定する。例えば、パラメータ設定部150は、短時間でかつ正確に各骨の角度を推定できるように、初期値に1時刻前の骨の角度を使用させる。これは、骨の角度変化は滑らかであり、角速度はそれほど大きくないとすると、時刻(t)の推定角度Φ2(t)は時刻(t−1)の推定角度Φ2(t−1)に近い値と期待できるからである。このことから、パラメータ設定部150は、時刻(t)が最初の1時刻目よりも後である場合、すなわち時刻t>1である場合、1時刻前の推定角度Φ2(t−1)を角度の初期値Φ2(t)(0)として設定する。一方、姿勢推定装置100を起動してから最初の1時刻目である場合、すなわち時刻t=1である場合には、1時刻前に推定角度が推定されてない。この場合、パラメータ設定部150は、パラメータ記憶部130に記憶された直立時の角度Θ1を角度の初期値Φ2(t)(0)として設定する。また、パラメータ設定部150は、反復演算の実行時、すなわち反復回数kが1回以上である場合には、反復回数kがインクリメントされる度に、反復回数1回前に推定された推定角度Φ2(t)(K−1)を角度の初期値Φ2(t)(0)の代わりにΦ2(t)(K)として設定する。
As another embodiment, the
第2算出部160は、パラメータ設定部150が設定する初期値の下、背骨において互いに隣接する骨同士を滑らかに接続させるモデルと、パラメータ設定部150によって設定された可動範囲とにしたがってモデル角度を算出する処理部である。
The
一実施形態として、第2算出部160は、上記のモデルが実現された下記の式(6)を用いて、モデル角度Φ1,n(t)(k)を背骨の骨ごとに算出する。すなわち、背骨の構造上、背骨に含まれる骨の各々が可動できる範囲は制限される。このため、下記の式(6)では、隣接する骨との相対角度を用いることによって背骨の構造上有り得ない(想定できない)角度を修正できるようにモデルを構築した。下記の式(6)における「Δθ1,n」は、「θ1,n−θ1,n−1」であることとする。なお、ここでは、一例として、隣接する骨との相対角度をモデルに採用する場合を例示したが、実施形態はこれに限定されない。例えば、相対角度の代わりに相対角速度または角速度を採用することもできるし、相対角度、相対角速度及び角速度を全て採用することもできる。
As one embodiment, the
第3算出部170は、第1算出部120によって算出される測定角度と、第2算出部160によって算出されるモデル角度とを合成することによって推定角度を算出する処理部である。
The
一実施形態として、第3算出部170は、測定角度A(t)及びモデル角度Φ1,n(t)(k)の重みを決定する係数、すなわち下記の式(7)における重み係数ηn (k)を骨1〜Mごとに求める。このとき、第3算出部170は、第1算出部120によって算出された測定角度A(t)と、パラメータ設定部150によって設定された可動範囲Σ2とを用いて、上記の重み係数ηn (k)を決定する。このとき、第3算出部170は、反復演算が実行される度に、反復回数1回前に推定された各骨の相対角度と、パラメータ設定部150によって設定された可動範囲Σ2とを用いて、上記の重み係数ηn (k)を計算し直す。例えば、第3算出部170は、下記の式(8)を満たすか否かによって重み係数ηn (k)を決定する。例えば、第3算出部170は、下記の式(8)を満たす場合には、重み係数ηn (k)に「1」を設定する一方で、下記の式(8)を満たさない場合には、重み係数ηn (k)に「0」を設定する。なお、ここでは、重み係数に「1」または「0」を設定することによって測定角度またはモデル角度のいずれか一方を採用する場合を例示したが、必ずしも重み係数は「1」または「0」のいずれか一方を択一的に選択せずともよい。人間の骨の可動範囲は、日々の変化によって異なることから、可動範囲の境目はあやふやである。このため、上記の重みηをステップ関数、すなわち「1」か「0」で決定するのではなく、ガウス関数などを用いて重み係数を決定してもよい。また、可動範囲Σ2からの乖離度が大きいほど小さい値を重みηに設定することもできる。
As one embodiment, the
かかる重み係数ηn (k)の決定後、第3算出部170は、下記の式(9)の関数Lを最小にする推定角度φ2,n(t)(k)を骨1〜Mごとに求める。かかる式(9)では、上記の式(7)における「P」の対数をとって符号を反転させることによって「P」を最大にする問題を「L」を最小にする問題に置換している。これは、一例として、最急降下法という反復解法を用いて、下記の式(9)における「L」を最小にするΦ2,n(t)(k)を求めることができる。なお、下記の式(9)における「λ」は、任意の定数である。ここでは「λn」に同じ定数値を設定したが、各計測角度の信頼度に応じてλnの値を決定しても良い。すなわち、第3算出部170は、下記の式(10)で算出される更新量(δL/δφ2,n(t)(k))を下記の式(11)に代入することによってφ2,n(t)(k)を更新する。かかる式(11)における「β」も任意の定数である。このようなφ2,n(t)(k)の更新を骨の数nをインクリメントしながら全ての骨1〜Mごとに繰り返し実行することによって、Φ2(t)(k)(=φ2,1(t)(k),・・・,φ2,M(t)(k))が得られる。その後、第3算出部170は、下記の式(10)で算出される更新量(δL/δφ2,n(t)(k))が反復回数1回前に計算された更新量(δL/δφ2,n(t)(k−1))よりも大きくなるか、あるいは更新量(δL/δφ2,n(t)(k))が所定の閾値、例えば1.0−10よりも小さくなるまで、φ2,n(t)(k)の更新を繰り返し実行する。なお、ここでは、更新量の多寡を更新の終了条件に用いる場合を例示したが、一定の回数、例えば1000回にわたって更新を繰り返し実行することとしてもかまわない。
After determining the weight coefficient η n (k) , the
このように推定角度Φ2(t)(k)の更新を反復する場合には、第3算出部170は、反復回数kをインクリメントする。これに伴って、パラメータ設定部150は、上記の角度の初期値の代わりに、反復回数1回前のΦ2(t)(k−1)をモデル角度や重み係数の計算に用いる値Φ2(t)(k)として設定する。
When the update of the estimated angle Φ 2 (t) (k) is repeated in this way, the
なお、上記の式(7)では、Φ1は形の滑らかさを考慮しているが、下記の式(12)に示すように、3項目(Φ3)に隣接しない任意の骨の関係を考慮する項を追加し、4項目(Φ4)に時間的な滑らかさを考慮する項を追加することによってより正確な角度を推定することもできる。 In the above equation (7), Φ 1 considers the smoothness of the shape, but as shown in the following equation (12), the relationship between any bones not adjacent to the three items (Φ 3 ) It is also possible to estimate a more accurate angle by adding a term to be considered and adding a term that takes temporal smoothness into four items (Φ 4 ).
P=η1φ1+η2φ2+η3φ3+η4φ4・・・(12) P = η 1 φ 1 + η 2 φ 2 + η 3 φ 3 + η 4 φ 4 (12)
形状可視化部180は、第3算出部170によって算出された推定角度を用いて、背骨形状を可視化する処理部である。
The
一実施形態として、形状可視化部180は、第3算出部170によって算出された推定角度Φ2(t)と、パラメータ記憶部130に記憶された骨間の距離Lとを用いて、各骨の座標を算出し、各骨の座標を折れ線や曲線などによって接続する。これによって、背骨の高次曲線を近似して可視化することができる。
As one embodiment, the
図4は、曲線可視化の一例を示す図である。図4に示す縦軸及び横軸の単位は、[cm]である。図4には、センサ1〜Sを装着するユーザが走行している場合の背骨形状を表す6つのグラフが図示されている。図4に示された6つのグラフのうち、左側の3つのグラフには、センサ1〜Sのセンサ値から求められた傾斜角α1〜αSと各センサ間の距離d1〜dSとを用いて各センサの座標がプロットされた上で各センサの座標が曲線で接続されて図示されている。一方、右側の3つのグラフには、骨1〜Mの推定角度φ1〜φMと骨間の距離L1〜LMとを用いて各骨1〜Mの座標がプロットされた上で各骨1〜Mの座標が曲線で接続されて図示されている。また、図4の例では、左右に並ぶグラフは、互いに同一の時刻のものであり、上段の2つのグラフ、中段の2つのグラフ、下段の2つのグラフの順に時刻が経過していることとする。
FIG. 4 is a diagram illustrating an example of curve visualization. The unit of the vertical axis and the horizontal axis shown in FIG. 4 is [cm]. FIG. 4 shows six graphs representing the spine shape when the user wearing the
図4に示すように、上段の左右のグラフには、いずれも正常な背骨形状、すなわちS字型の背骨が示されているものの、そこから時間が経過した中段の左右のグラフでは、右側のグラフには正常な背骨形状が示されている一方で、左側のグラフには、背骨の構造上有り得ない(想定できない)形状が出力されている。同様に、さらに時間が経過した下段の左右のグラフにおいても、右側のグラフには正常な背骨形状が示されている一方で、左側のグラフには、背骨の構造上有り得ない(想定できない)形状が出力されている。これらのことから、センサ1〜Sのセンサ値から求めた重力加速度に対する傾斜角をそのまま用いた場合、走行中等の激しい運動が行われている動的な状況下で背骨形状を推定することができないことがわかる。一方、上記の第3算出部170で求めた推定角度を用いた場合には、走行中等の激しい運動が行われている動的な状況下であっても背骨形状を推定できていることがわかる。
As shown in FIG. 4, the upper left and right graphs each show a normal spine shape, that is, an S-shaped spine. While the normal spine shape is shown in the graph, the left graph outputs a shape that is impossible (cannot be assumed) due to the structure of the spine. Similarly, in the lower left and right graphs after more time, the right graph shows the normal spine shape, while the left graph shows a shape that is impossible (unthinkable) due to the structure of the spine. Is output. From these facts, when the inclination angle with respect to the gravitational acceleration obtained from the sensor values of the
負荷算出部190は、第3算出部170によって算出された推定角度を用いて、腰椎もしくは背骨の特定箇所に加わる負荷に関する指標を算出する処理部である。
The
一実施形態として、負荷算出部190は、所定の期間、例えば5時刻前までの期間にわたる推定角度Φ2(t−5)〜Φ2(t)の分散値が所定の閾値以上であるか否かを判定する。このとき、分散値が閾値未満である場合には、動的な状況下ではない、すなわち静的な状況下であると判断される。一方、分散値が閾値以上である場合には、動的な状況下であると判断される。
As one embodiment, the
静的な状況下である場合、負荷算出部190は、第3算出部170によって算出された骨1〜Mの推定角度のうち第1腰椎L1〜第5腰椎L5に対応する各骨の推定角度から腰椎の角度を求める。そして、負荷算出部190は、腰椎の角度と負荷との対応関係が規定された負荷データから先に求めた腰椎の角度に対応する負荷を検索した上で所定の出力先へ出力する。かかる負荷データには、各姿勢の腰椎の角度ごとに直立時を基準とする椎間板内圧の変化が規定されたデータを採用できる。図5は、負荷データの一例を示す図である。図5には、静的な姿勢の変化によって椎間板内圧が変化する様が示されている。さらに、図5には、体重70kgの実験参加者を対象とし、直立時を「1」とする椎間板内圧の変化が示されており、塗りつぶし有りのグラフが「Wilkeら」の研究結果を指し、塗りつぶし無しのグラフが「Nachemson」の研究結果を指す。図5に示す「Wilkeら」の研究結果を負荷データとして用いる場合、腰椎の角度が直立時に対応する場合には負荷「1」が出力される一方で、腰椎の角度が仰臥位に対応する場合には負荷「0.2」が出力され、腰椎の角度が横臥位に対応する場合には負荷「0.25」が出力され、腰椎の角度が20°の前屈に対応する場合には負荷「2.25」が出力される。また、図5に示す「Nachemson」の研究結果を負荷データとして用いる場合、腰椎の角度が直立時に対応する場合には負荷「1」が出力される一方で、腰椎の角度が仰臥位に対応する場合には負荷「0.25」が出力され、腰椎の角度が横臥位に対応する場合には負荷「0.8」が出力され、腰椎の角度が20°の前屈に対応する場合には負荷「1.5」が出力される。
In a static situation, the
動的な状況下である場合、負荷算出部190は、骨1〜Mごとに測定角度A(t)及び推定角度Φ2(t)の差を算出する。その上で、負荷算出部190は、測定角度A(t)及び推定角度Φ2(t)の差が所定の閾値以上である箇所を所定の出力先に出力する。すなわち、特定箇所において、大きな加速度が非常に短い時間に検知された場合、その箇所に衝撃が加わったということが分かる。この時、その箇所への負荷が大きいと推定することができる。このように、背骨の構造を考慮して修正した角度と、修正前の角度との差を比較することで、どの箇所に負荷がかかっているかを推定することができる。
In a dynamic situation, the
これら情報には、姿勢推定装置100が有する図示しない表示部を始め、任意の出力先へ出力することができる。例えば、背骨形状から各種の診断を実行する診断プログラムが姿勢推定装置100にインストールされている場合には、診断プログラムを出力先とすることができる。また、診断プログラムをWebサービスとして提供するサーバ装置などを出力先とすることもできる。さらに、姿勢推定装置100を利用する利用者の関係者、例えば介護士や医者などの医療関係者が使用する端末装置を出力先とすることもできる。これによって、院外、例えば在宅や在席のモニタリングサービスも可能になる。なお、診断プログラムの診断結果も、姿勢推定装置100の表示部を始め、関係者の端末装置に表示させることができるのも言うまでもない。
These pieces of information can be output to an arbitrary output destination including a display unit (not shown) included in the
なお、図1に示した各機能部は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などに姿勢推定プログラムを実行させることによって実現できる。また、上記の各機能部は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。上記の機能部には、取得部110、第1算出部120、パラメータ登録部140、パラメータ設定部150、第2算出部160、第3算出部170、形状可視化部180及び負荷算出部190などが含まれる。
1 can be realized by causing a CPU (Central Processing Unit) or MPU (Micro Processing Unit) to execute an attitude estimation program. Each functional unit described above can also be realized by a hard wired logic such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). The functional units include the
また、上記のパラメータ記憶部130や内部メモリには、一例として、半導体メモリ素子を採用できる。例えば、半導体メモリ素子の一例としては、VRAM(Video Random Access Memory)、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)やフラッシュメモリ(flash memory)などが挙げられる。また、半導体メモリ素子等のメモリ装置の代わりに、ハードディスク、光ディスクなどの補助記憶装置を代用することとしてもよい。
Further, as an example, a semiconductor memory element can be adopted for the
[処理の流れ]
続いて、本実施例に係る姿勢推定装置の処理の流れについて説明する。なお、ここでは、姿勢推定装置100によって実行される(1)パラメータ登録処理を説明した後に、(2)姿勢推定処理を説明し、その後、(3)負荷算出処理について説明することとする。
[Process flow]
Subsequently, the flow of processing of the posture estimation apparatus according to the present embodiment will be described. Here, after describing (1) parameter registration processing executed by
(1)パラメータ登録処理
図6は、実施例1に係るパラメータ登録処理の手順を示すフローチャートである。このパラメータ登録処理は、姿勢推定処理を実行する前段階に予め実行することもできるし、姿勢推定処理と並行に実行することもできる。なお、パラメータ登録処理は、センサ1〜Sからセンサ値が取得される限り、繰り返し実行することができる。
(1) Parameter Registration Processing FIG. 6 is a flowchart illustrating the procedure of parameter registration processing according to the first embodiment. This parameter registration processing can be executed in advance before the posture estimation processing is executed, or can be executed in parallel with the posture estimation processing. The parameter registration process can be repeatedly executed as long as sensor values are acquired from the
図6に示すように、センサ1〜Sからセンサ値Q(t)が取得されると(ステップS101)、パラメータ登録部140は、上記の式(1)及び式(2)にしたがって矢状面上の傾斜角a1と、前額面上の傾斜角a2とをセンサごとに算出する(ステップS102)。そして、パラメータ登録部140は、上記の式(3)にしたがって各センサ1〜Sの取り付け時の回転を補正する(ステップS103)。
As shown in FIG. 6, when the sensor value Q (t) is acquired from the
ここで、センサ数S<背骨の数Mである場合(ステップS104Yes)、パラメータ登録部140は、各センサ間に存在する骨の要素における傾斜角を線形補間することによって背1〜Mの測定角度A(t)を算出する(ステップS105)。なお、センサ数S=背骨の数Mである場合には(ステップS104No)、各センサ1〜Sの傾斜角をそのまま骨1〜Mの測定角度とし、上記のステップS106の処理へ移行する。
Here, when the number of sensors S <the number M of the spines (step S104 Yes), the
その後、パラメータ登録部140は、直立、前屈、後屈や伏臥位などの姿勢ごとに当該姿勢で算出され得る各骨1〜Mの傾斜角が対応付けられた対応表と、ステップS105で算出された測定角度A(t)とを比較する(ステップS106)。
After that, the
このとき、測定角度A(t)が上記の対応表にある姿勢の傾斜角から所定の範囲内である場合(ステップS107Yes)、パラメータ登録部140は、パラメータ記憶部130に記憶されたパラメータのうち当該姿勢に対応するパラメータを測定角度A(t)に上書きして更新し(ステップS108)、処理を終了する。
At this time, when the measurement angle A (t) is within a predetermined range from the inclination angle of the posture in the correspondence table (Yes in step S107), the
(2)姿勢推定処理
図7は、実施例1に係る姿勢推定処理の手順を示すフローチャートである。この姿勢推定処理は、センサ1〜Sからセンサ値が取得され続ける限り、繰り返し実行することができる。
(2) Posture Estimation Processing FIG. 7 is a flowchart illustrating the procedure of posture estimation processing according to the first embodiment. This posture estimation process can be repeatedly executed as long as sensor values are continuously acquired from the
図7に示すように、センサ1〜Sからセンサ値Q(t)が取得されると(ステップS301)、第1算出部120は、上記の式(1)及び式(2)にしたがって矢状面上の傾斜角a1と、前額面上の傾斜角a2とをセンサごとに算出する(ステップS302)。そして、第1算出部120は、上記の式(3)にしたがって各センサ1〜Sの取り付け時の回転を補正する(ステップS303)。
As shown in FIG. 7, when the sensor value Q (t) is acquired from the
ここで、センサ数S<背骨の数Mである場合(ステップS304Yes)、第1算出部120は、各センサ間に存在する骨の要素における傾斜角を線形補間することによって背1〜Mの測定角度A(t)を算出する(ステップS305)。なお、センサ数S=背骨の数Mである場合には(ステップS304No)、各センサ1〜Sの傾斜角をそのまま骨1〜Mの測定角度とし、上記のステップS306の処理へ移行する。
Here, when the number of sensors S <the number of spines M (step S304 Yes), the
そして、パラメータ設定部150は、モデル角度の計算に用いる拘束条件として可動範囲を設定したり、重み係数の計算に用いる骨の角度の初期値を設定したりする(ステップS306)。続いて、パラメータ設定部150は、骨の数をカウントするカウンタn及び反復回数をカウントするカウンタkの値を初期値、例えばゼロに設定する(ステップS307)。その後、パラメータ設定部150は、骨の数のカウンタnを1つインクリメントする(ステップS308)。
Then, the
続いて、第2算出部160は、ステップS306で設定された初期値もしくは反復時に設定された反復回数1回前の推定角度の下、背骨において互いに隣接する骨同士を滑らかに接続させるモデルと、ステップS306で設定された可動範囲とにしたがってモデル角度を算出する(ステップS309)。
Subsequently, the
そして、第3算出部170は、ステップS305で算出された測定角度A(t)と、ステップS306で設定された可動範囲Σ2とを用いて、重み係数ηn (k)を決定する(ステップS310)。
Then, the
その後、第3算出部170は、ステップS305で算出された測定角度と、ステップS309で算出されたモデル角度とを合成することによって推定角度を算出する(ステップS311)。
Thereafter, the
このとき、骨の数のカウンタnの値が骨の数Mよりも小さい場合(ステップS312Yes)には、上記のステップS308の処理に戻り、次の骨に対し、上記のステップS309〜ステップS311の処理を実行する。 At this time, when the value of the bone number counter n is smaller than the number of bones M (step S312 Yes), the processing returns to the above step S308, and the above steps S309 to S311 are performed for the next bone. Execute the process.
一方、骨の数のカウンタnの値が骨の数Mと等しい場合(ステップS312No)には、第3算出部170は、下記の式(10)で算出される更新量が所定の終了条件を満たすか否かを判定する(ステップS313)。例えば、第3算出部170は、更新量が反復回数1回前に計算された更新量よりも大きくなるか、あるいは更新量が所定の閾値、例えば1.0−10よりも小さいかのいずれかに該当するかを判定する。
On the other hand, when the value of the bone number counter n is equal to the bone number M (No in step S312), the
そして、更新量が所定の終了条件を満たさない場合(ステップS313No)には、第3算出部170は、反復回数のカウンタkを1つインクリメントし(ステップS314)、パラメータ設定部315は、反復回数1回前の推定角度を初期値の代わりに設定するとともに、骨の数のカウンタnに初期値を設定し(ステップS315)、上記のステップS308の処理に戻る。
If the update amount does not satisfy the predetermined end condition (No in step S313), the
一方、更新量が所定の終了条件を満たす場合(ステップS313Yes)には、形状可視化部180は、ステップS311で算出された推定角度Φ2(t)と、パラメータ記憶部130に記憶された骨間の距離Lとを用いて、各骨の座標を算出し、各骨の座標を折れ線や曲線などによって接続する(ステップS316)。これによって、背骨の高次曲線を近似して可視化する。その後、負荷算出部190は、ステップS311で算出された推定角度を用いて、腰椎もしくは背骨の特定箇所に加わる負荷に関する指標を算出する負荷算出処理を実行する(ステップS317)。
On the other hand, when the update amount satisfies the predetermined end condition (step S313 Yes), the
そして、時刻tが1つインクリメントされた後(ステップS318)、ステップS301の処理に戻り、その後、姿勢推定装置100は、上記のステップS301〜ステップS317までの処理を繰り返し実行する。
Then, after the time t is incremented by one (step S318), the process returns to step S301, and then the
(3)負荷算出処理
図8は、実施例1に係る負荷算出処理の手順を示すフローチャートである。この負荷算出処理は、図7に示したステップS317に対応する処理であり、ステップS313Yesの後であれば任意のタイミングに処理を起動できる。
(3) Load Calculation Process FIG. 8 is a flowchart illustrating the procedure of the load calculation process according to the first embodiment. This load calculation process is a process corresponding to step S317 shown in FIG. 7, and can be started at an arbitrary timing after step S313 Yes.
図8に示すように、負荷算出部190は、所定の期間、例えば5時刻前までの期間にわたる推定角度Φ2(t−5)〜Φ2(t)の分散値が所定の閾値以上であるか否かを判定する(ステップS501)。
As shown in FIG. 8, the
このとき、分散値が閾値未満である場合(ステップS501No)には、動的な状況下ではない、すなわち静的な状況下であると判断される。この場合、負荷算出部190は、第3算出部170によって算出された骨1〜Mの推定角度のうち第1腰椎L1〜第5腰椎L5に対応する各骨の推定角度から腰椎の角度を求める(ステップS502)。
At this time, if the variance value is less than the threshold (No in step S501), it is determined that the situation is not a dynamic situation, that is, a static situation. In this case, the
そして、負荷算出部190は、腰椎の角度と負荷との対応関係が規定された負荷データから先に求めた腰椎の角度に対応する負荷を検索した上で所定の出力先へ出力し(ステップS503及びステップS504)、処理を終了する。
Then, the
一方、分散値が閾値以上である場合(ステップS501Yes)には、動的な状況下であると判断される。この場合、負荷算出部190は、骨1〜Mごとに測定角度A(t)及び推定角度Φ2(t)の差を算出する(ステップS505)。その上で、負荷算出部190は、測定角度A(t)及び推定角度Φ2(t)の差が所定の閾値以上である箇所を所定の出力先に出力し(ステップS506)、処理を終了する。
On the other hand, if the variance value is greater than or equal to the threshold value (step S501 Yes), it is determined that the situation is dynamic. In this case, the
[実施例1の効果]
上述してきたように、本実施例に係る姿勢推定装置100は、加速度センサのセンサ値から算出される姿勢成分と、背骨の構造と運動学的特徴から算出される姿勢成分とを合成することによって背骨形状を算出する。このため、上記の光学式のモーションキャプチャシステムのように、適用場面が特定の場面に制限されない。また、動的状況下でも、背骨の構造上あり得ない(想定できない)曲線が背骨形状として出力されるケースを抑制できる。したがって、本実施例に係る姿勢推定装置100によれば、姿勢推定の汎用性を向上させることができる。
[Effect of Example 1]
As described above, the
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。 Although the embodiments related to the disclosed apparatus have been described above, the present invention may be implemented in various different forms other than the above-described embodiments. Therefore, another embodiment included in the present invention will be described below.
[適用範囲]
上記の実施例1では、センサの数S<骨の数Mの場合、各センサの傾斜角を線形補間することによって各骨の測定角度を算出する場合を例示したが、必ずしも各骨ごとに推定角度を算出せずともよく、各センサの傾斜角を測定角度とし、センサごとに推定角度を算出することとしてもよい。
[Scope of application]
In the first embodiment, the case where the measurement angle of each bone is calculated by linearly interpolating the inclination angle of each sensor when the number of sensors S <the number M of bones is illustrated, but the estimation is not necessarily performed for each bone. The angle may not be calculated, and the estimated angle may be calculated for each sensor by using the inclination angle of each sensor as the measurement angle.
[歩行観察]
図9は、前屈中の背骨形状の推定結果の一例を示す図である。図10は、歩行周期の背骨形状の一例を示す図である。姿勢推定装置10は、図9及び図10に示す背骨形状の歩行観察を行うことによって歩行時における過度な前傾などを報知できる。例えば、図10に示す歩行周期で推定される背骨形状と、図9に示した前屈中の背骨形状との類似度が所定値以上である場合には、前傾姿勢で歩行が行われており、背骨に過度な負荷がかかっているおそれが高い。この場合、姿勢推定装置10は、その旨を報知することができる。
[Walking observation]
FIG. 9 is a diagram illustrating an example of an estimation result of a spine shape during forward bending. FIG. 10 is a diagram illustrating an example of a spine shape in a walking cycle. The
[背骨形状の数値化]
例えば、姿勢推定装置10は、背骨形状の可視化、負荷の計算などと同様に、背骨形状を数値化することも出来る。具体的には、姿勢推定装置10は、時刻tにおける全推定角度を足し合わることで、背骨形状を数値化することが出来る。図11は、背骨形状の数値化の一例を示す図である。図11に示すグラフの縦軸は、推定角度の合計値を指し、図11に示すグラフの横軸は、時間を指す。図11に示すように、C字カーブの際は、全推定角度を足し合わせると値が大きくなり、S字カーブは相殺されて0に近づく。尚、グラフ下に載せた3つの曲線は、各3状態(C字、過渡状態、S字)の代表的な曲線である。例えば、姿勢推定装置10は、C字の屈曲度、過渡状態の滑らかさ、S字の湾曲度を理想の値と比較することで、理想的な荷物の持ち上げなどを指導することが出来る。
[Numericalization of spine shape]
For example, the
[他の実装例]
上記の実施例1では、姿勢推定装置100が上記の姿勢推定処理をスタンドアローンで実行する場合を例示したが、クライアントサーバシステムとして実装することもできる。例えば、姿勢推定装置100は、姿勢推定サービスを提供するWebサーバとして実装することとしてもよいし、アウトソーシングによって姿勢推定サービスを提供するクラウドとして実装することとしてもかまわない。このように、姿勢推定装置100がサーバ装置として動作する場合には、スマートフォンや携帯電話機等の携帯端末装置やパーソナルコンピュータ等の情報処理装置をクライアント端末として収容することができる。これらクライアント端末からネットワークを介してセンサ1〜Sのセンサ値が取得された場合に上記のパラメータ登録処理、姿勢推定処理や負荷算出処理などの各処理を実行し、姿勢の推定結果や推定結果を用いて診断がなされた診断結果をクライアント端末へ応答することによって姿勢推定サービスを提供することもできる。
[Other implementation examples]
In the first embodiment, the case where the
[姿勢推定プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図12を用いて、上記の実施例と同様の機能を有する姿勢推定プログラムを実行するコンピュータの一例について説明する。
[Attitude estimation program]
The various processes described in the above embodiments can be realized by executing a prepared program on a computer such as a personal computer or a workstation. In the following, an example of a computer that executes a posture estimation program having the same function as that of the above-described embodiment will be described with reference to FIG.
図12は、実施例1及び実施例2に係る姿勢推定プログラムを実行するコンピュータの一例について説明するための図である。図12に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110〜180の各部はバス140を介して接続される。
FIG. 12 is a schematic diagram illustrating an example of a computer that executes a posture estimation program according to the first and second embodiments. As illustrated in FIG. 12, the
HDD170には、図12に示すように、上記の実施例1で示した取得部110、第1算出部120、パラメータ登録部140、パラメータ設定部150、第2算出部160、第3算出部170、形状可視化部180及び負荷算出部190と同様の機能を発揮する姿勢推定プログラム170aが予め記憶される。この姿勢推定プログラム170aについては、図1に示した各々の取得部110、第1算出部120、パラメータ登録部140、パラメータ設定部150、第2算出部160、第3算出部170、形状可視化部180及び負荷算出部190の各構成要素と同様、適宜統合又は分離しても良い。すなわち、HDD170に格納される各データは、常に全てのデータがHDD170に格納される必要はなく、処理に必要なデータのみがHDD170に格納されれば良い。
As shown in FIG. 12, the
そして、CPU150が、姿勢推定プログラム170aをHDD170から読み出してRAM180に展開する。これによって、図12に示すように、姿勢推定プログラム170aは、姿勢推定プロセス180aとして機能する。この姿勢推定プロセス180aは、HDD170から読み出した各種データを適宜RAM180上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、姿勢推定プロセス180aは、図1に示した取得部110、第1算出部120、パラメータ登録部140、パラメータ設定部150、第2算出部160、第3算出部170、形状可視化部180及び負荷算出部190にて実行される処理、例えば図6〜図8に示す処理を含む。また、CPU150上で仮想的に実現される各処理部は、常に全ての処理部がCPU150上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されれば良い。
Then, the
なお、上記の姿勢推定プログラム170aについては、必ずしも最初からHDD170やROM160に記憶させておく必要はない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。
Note that the
1,2,・・・,S センサ
100 姿勢推定装置
110 取得部
120 第1算出部
130 パラメータ記憶部
140 パラメータ登録部
150 パラメータ設定部
160 第2算出部
170 第3算出部
180 形状可視化部
190 負荷算出部
1, 2,...,
Claims (9)
加速度センサのセンサ値から第1の角度を算出し、
背骨において互いに接続する骨同士を滑らかに接続させるモデルと、背骨に含まれる骨の可動範囲とにしたがって第2の角度を算出し、
前記第1の角度及び前記第2の角度を合成することによって第3の角度を算出する
処理を実行することを特徴とする姿勢推定方法。 Computer
The first angle is calculated from the sensor value of the acceleration sensor,
Calculating a second angle according to a model that smoothly connects bones connected to each other in the spine and a range of motion of the bones included in the spine;
A posture estimation method comprising: executing a process of calculating a third angle by combining the first angle and the second angle.
前記第1の角度及び前記第2の角度を合成する重み係数を、前記第1及び前記第2の角度差の絶対値に基づいて決定することを特徴とする請求項1または2に記載の姿勢推定方法。 The process of calculating the third angle includes
The posture according to claim 1 or 2, wherein a weighting factor for combining the first angle and the second angle is determined based on an absolute value of the first and second angle differences. Estimation method.
前記第1の角度が所定の姿勢に該当する場合に、当該第1の角度を用いて前記可動範囲を更新することを特徴とする請求項1、2または3に記載の姿勢推定方法。 The computer is
4. The posture estimation method according to claim 1, wherein the movable range is updated using the first angle when the first angle corresponds to a predetermined posture. 5.
前記センサ値が特定の動作パターンに該当する場合に、当該特定の動作パターンに対応する可動範囲を設定する処理をさらに実行することを特徴とする請求項1〜4のいずれか1つに記載の姿勢推定方法。 The computer is
5. The process according to claim 1, further comprising: setting a movable range corresponding to the specific operation pattern when the sensor value corresponds to the specific operation pattern. 6. Posture estimation method.
前記第3の角度を用いて、前記背骨の形状を可視化する処理をさらに実行することを特徴とする請求項1〜5のいずれか1つに記載の姿勢推定方法。 The computer is
The posture estimation method according to claim 1, further comprising executing a process of visualizing a shape of the spine using the third angle.
前記第3の角度を用いて、腰椎もしくは背骨の特定箇所に加わる負荷に関する指標を算出する処理をさらに実行することを特徴とする請求項1〜5のいずれか1つに記載の姿勢推定方法。 The computer is
The posture estimation method according to any one of claims 1 to 5, further comprising a step of calculating an index relating to a load applied to a specific portion of the lumbar spine or the spine using the third angle.
加速度センサのセンサ値から第1の角度を算出し、
背骨において互いに接続する骨同士を滑らかに接続させるモデルと、背骨に含まれる骨の可動範囲とにしたがって第2の角度を算出し、
前記第1の角度及び前記第2の角度を合成することによって第3の角度を算出する
処理を実行させることを特徴とする姿勢推定プログラム。 On the computer,
The first angle is calculated from the sensor value of the acceleration sensor,
Calculating a second angle according to a model that smoothly connects bones connected to each other in the spine and a range of motion of the bones included in the spine;
A posture estimation program for executing a process of calculating a third angle by combining the first angle and the second angle.
背骨において互いに接続する骨同士を滑らかに接続させるモデルと、背骨に含まれる骨の可動範囲とにしたがって第2の角度を算出する第2算出部と、
前記第1の角度及び前記第2の角度を合成することによって第3の角度を算出する第3算出部と
を有することを特徴とする姿勢推定装置。 A first calculation unit for calculating a first angle from a sensor value of the acceleration sensor;
A second calculation unit that calculates a second angle according to a model that smoothly connects bones connected to each other in the spine, and a movable range of bones included in the spine;
And a third calculation unit that calculates a third angle by combining the first angle and the second angle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014074895A JP2015195913A (en) | 2014-03-31 | 2014-03-31 | Posture estimation method, posture estimation program and posture estimation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014074895A JP2015195913A (en) | 2014-03-31 | 2014-03-31 | Posture estimation method, posture estimation program and posture estimation device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015195913A true JP2015195913A (en) | 2015-11-09 |
Family
ID=54546029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014074895A Pending JP2015195913A (en) | 2014-03-31 | 2014-03-31 | Posture estimation method, posture estimation program and posture estimation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015195913A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017144148A (en) * | 2016-02-19 | 2017-08-24 | 中村 正一 | Body distortion detection system |
JP2020124464A (en) * | 2019-02-04 | 2020-08-20 | 株式会社ニコン | Load measuring apparatus, load measuring system, load measuring method, and program |
WO2022219905A1 (en) * | 2021-04-13 | 2022-10-20 | 日本電気株式会社 | Measurement device, measurement system, measurement method, and recording medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010214098A (en) * | 2009-02-23 | 2010-09-30 | Kochi Univ Of Technology | Measuring instrument and measuring method of load on intervertebral disk |
-
2014
- 2014-03-31 JP JP2014074895A patent/JP2015195913A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010214098A (en) * | 2009-02-23 | 2010-09-30 | Kochi Univ Of Technology | Measuring instrument and measuring method of load on intervertebral disk |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017144148A (en) * | 2016-02-19 | 2017-08-24 | 中村 正一 | Body distortion detection system |
JP2020124464A (en) * | 2019-02-04 | 2020-08-20 | 株式会社ニコン | Load measuring apparatus, load measuring system, load measuring method, and program |
WO2022219905A1 (en) * | 2021-04-13 | 2022-10-20 | 日本電気株式会社 | Measurement device, measurement system, measurement method, and recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Goodvin et al. | Development of a real-time three-dimensional spinal motion measurement system for clinical practice | |
JP5388473B2 (en) | System and method for motion tracking using a calibration unit | |
JP2006175206A (en) | Apparatus, method and program for detecting physical condition | |
JP7215965B2 (en) | Posture Estimation Apparatus, Posture Estimation Method, and Posture Estimation Program | |
US20130173240A1 (en) | Method and device for dynamically determining the position and orientation of the bone elements of the spine | |
KR101438714B1 (en) | Spine posture evaluation system and method for generating evaluation data | |
JP2016096889A (en) | Image analysis apparatus, image analysis method and program | |
JP6741305B2 (en) | Vertebral posture estimation device | |
US20130166484A1 (en) | Systems, methods, and apparatus for 3-d surface mapping, compliance mapping, and spatial registration with an array of cantilevered tactile hair or whisker sensors | |
Koning et al. | Driving a musculoskeletal model with inertial and magnetic measurement units | |
JP2015195913A (en) | Posture estimation method, posture estimation program and posture estimation device | |
JP5071822B2 (en) | Physical state detection device, detection method thereof, and detection program | |
CN113673492A (en) | Human body posture evaluation method, electronic device and storage medium | |
Zhang et al. | Human back movement analysis using bsn | |
Hong et al. | Measurement of covered curvature based on a tape of integrated accelerometers | |
CN115908717A (en) | Method and system for 3D modeling of spine | |
Douglas et al. | Role of depth in eye distance measurements: Comparison of single and stereo‐photogrammetry | |
Crabolu et al. | Functional estimation of bony segment lengths using magneto-inertial sensing: Application to the humerus | |
KR101083936B1 (en) | Apparatus and method for processing ultrasound data | |
WO2023135625A1 (en) | Evaluation device, evaluation method, and recording medium | |
US11694360B2 (en) | Calibrating 3D motion capture system for skeletal alignment using x-ray data | |
JP2021173724A (en) | Analysis device, analysis method, program, and calibration method | |
EP2189812A1 (en) | Providing volume information on a periodically moving target object in an ultrasound system | |
JP5424224B2 (en) | Relative angle estimation system | |
Ma et al. | A new method for determining lumbar spine motion using Bayesian belief network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170920 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180522 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180723 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20181225 |