以下に、図面を参照して、本発明にかかる情報処理装置、情報処理システム、および情報処理方法の実施の形態を詳細に説明する。
(実施の形態にかかる情報処理方法の一実施例)
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。情報処理装置100は、計測対象によって歩行が行われた歩行期間を特定するコンピュータである。計測対象は、生体または人工物である。生体は、人間であってもよいし、人間以外の動物であってもよい。生体は、例えば、医療機関による検査対象になる対象者である。生体は、具体的には、医師などの医療関係者による診断や治療、経過観察、または健康管理などを受ける患者である。人工物とは、例えば二足歩行ロボットである。
生体は、具体的には、医師などの医療関係者によるリハビリ指導などを受ける患者であってもよい。また、生体は、具体的には、スポーツインストラクターによる歩行指導を受ける被指導者であってもよい。生体は、例えば、自ら健康管理を行う個人であってもよい。生体は、動物であってもよい。以下の説明では、主として、計測対象を「患者」とする場合について説明する。
本実施の形態では、患者によって歩行運動が行われた場合に患者の部位の動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを評価することにより、歩行期間を特定する精度の向上を図ることができる情報処理方法について説明する。
(1−1)情報処理装置100は、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得する。患者の複数の部位は、例えば、患者の左脚と右脚との2つの部位である。患者の複数の部位は、具体的には、患者の左脚の下腿と右脚の下腿との2つの部位である。患者の部位の動きに関する計測情報は、例えば、その部位に装着された計測機の角速度センサが計測した角速度を、時系列に並べた時系列データである。時系列データは、例えば、センサデータである。
情報処理装置100は、例えば、患者の左脚の下腿に装着された計測機から、患者の左脚の下腿の角速度のセンサデータ101を受信し、患者の右脚の下腿に装着された計測機から、患者の右脚の下腿の角速度のセンサデータ102を受信する。これにより、情報処理装置100は、センサデータを、患者の歩行期間を特定するために用いることができる。
(1−2)情報処理装置100は、取得した計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。歩行運動動作の一部は、例えば、歩行運動の1歩である。歩行運動動作の一部は、例えば、歩行運動中の支持脚の静止、歩行運動中の両足が地面についた時の両足微動などであってもよい。
歩行運動動作の一部に対応する特徴は、例えば、歩行運動の1歩に対応する特徴である。歩行運動の1歩に対応する特徴は、例えば、角速度が閾値を超えて極大値になったことである。部位の動作は、患者の左脚または右脚が1歩分前に動く動作である。歩行運動動作の一部に対応する特徴は、例えば、歩行運動中の両足が地面についた時の両足微動に対応する特徴である。両足微動に対応する特徴は、例えば、角速度が閾値以下、かつ、振動が閾値以上であることである。
以下の説明では、1歩分前に動く動作を「ステップ動作」と表記する場合がある。ステップ動作は、脚が地面から離れた時点から、脚がスイングした後、脚が着地した時点までの動作である。脚が地面から離れた時点が、ステップ動作の開始時刻である。脚が着地した時点が、ステップ動作の終了時刻である。動作群は、例えば、ステップ動作群である。
情報処理装置100は、例えば、対象期間において、患者の左脚の下腿の角速度のセンサデータ101において、その角速度が閾値を超えて極大値になったことを検知し、左脚のステップ動作があったことを検知する。情報処理装置100は、左脚のステップ動作があったことを検知すると、そのステップ動作があった動作点を記憶する。
情報処理装置100は、例えば、対象期間において、患者の右脚の下腿の角速度のセンサデータ102において、その角速度が閾値を超えて極大値になったことを検知し、右脚のステップ動作があったことを検知する。情報処理装置100は、右脚のステップ動作があったことを検知すると、そのステップ動作があった動作点を記憶する。これにより、情報処理装置100は、各脚のステップ動作を含むステップ動作群を検知することができ、患者の歩行期間を特定するために用いることができる。
(1−3)情報処理装置100は、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。複数の関係性は、例えば、左脚のステップ動作と右脚のステップ動作が交互であるという第1の関係性を含む。複数の関係性は、例えば、一方の脚のステップ動作が終了してから、他方の脚のステップ動作が開始するという第2の関係性を含む。
複数の関係性は、例えば、一方の脚のステップ動作の最中は、他方の脚は支持脚になり他方の脚の動作量は所定の微小値より小さいという第3の関係性を含む。動作量は、例えば、角速度である。複数の関係性は、例えば、一方の脚の異なるステップ動作の特徴量が類似するという第4の関係性を含む。複数の関係性の具体例は、図7〜図16を用いて後述する。これにより、情報処理装置100は、様々な観点から、患者によって歩行運動が行われた歩行期間としての尤もらしさを評価することができる。
(1−4)情報処理装置100は、それぞれの関係性について算出した評価値に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定する。情報処理装置100は、例えば、それぞれの関係性について算出した評価値が、判定基準になる閾値を超えた場合に、対象期間が患者によって歩行運動が行われた歩行期間であると判定する。
これにより、情報処理装置100は、様々な観点から歩行期間としての尤もらしさを評価するため、歩行期間を精度よく特定しやすくすることができる。情報処理装置100は、例えば、患者が歩行と類似する非歩行運動、例えば、自転車をこぐ運動を行っていて、第1の関係性が現れた場合でも、第2の関係性や第3の関係性について算出した評価値も用いるため、この運動を行った期間は歩行期間ではないと判定することができ、歩行期間を特定する精度の向上を図ることができる。一方、情報処理装置100は、例えば、患者が脚を引きずって歩いた場合や、極端に低速で歩いた場合においても、第1〜第10の関係性の評価値のいずれも高いため、これらの運動を行った期間は歩行期間であると判定することができ、歩行期間を特定する精度の向上を図ることができる。
さらに、情報処理装置100は、特定した歩行期間における所定の特徴量を算出し、その特徴量を出力することができ、医師などの医療関係者に、患者の歩き方を把握する際に用いられる客観的な指標を与えることができる。情報処理装置100は、例えば、特定した歩行期間の長さや、その歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値などを出力することができる。このため、情報処理装置100は、医師などの医療関係者が、患者の歩き方を把握しやすくし、患者に対する診断や治療、経過観察、または健康管理などを効率よく行うことができるようにすることができる。
また、情報処理装置100は、医師などの医療関係者に対し、例えば、病院外も含む患者の日常における歩行期間の長さや、歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値なども同様に出力することができる。このため、情報処理装置100は、医師などの医療関係者が、日常における患者の歩き方を把握したり、日常の患者の運動量を把握しやすくし、患者に対する診断や治療、経過観察、または健康管理などを詳細かつ正確に行うことができるようにすることができる。
ここでは、計測機が、患者の左脚と右脚とに装着される場合について説明したが、これに限らない。例えば、計測機が、患者の片脚と腰とに装着される場合があってもよい。また、例えば、計測機が、患者の左脚と右脚と腰とに装着される場合があってもよい。この場合、情報処理装置100は、患者の歩行期間を特定するために、各脚のステップ動作に対応する腰の体幹前進動作を検知することができる。腰の体幹前進動作は、ステップ動作の前後で体幹を動かす動作である。この場合、動作群は、腰の体幹前進動作を含んでもよい。また、患者の腕や頭に装着される計測機があってもよい。
ここで、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、患者の歩き方が異なり、具体的には、患者の各脚のステップ動作の周期が異なる場合や、足を地面に引きずったときにセンサデータにノイズ信号が含まれる場合がある。また、患者ごとに、患者の各脚のステップ動作の周期が異なる場合がある。このため、情報処理装置100は、(1−2)で動作群を検知するに当って、患者の部位の動きに関する計測情報に対して、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用することにより、さらに歩行期間を特定する精度の向上を図ることができる。
例えば、情報処理装置100は、患者の部位の動きに関する計測情報に対して、それぞれの帯域通過フィルタを適用した場合について、ステップ動作群を検知する。そして、情報処理装置100は、検知したステップ動作群ごとに、それぞれの関係性が現れた度合いを示す評価値を算出し、対象期間が歩行期間であるか否かを判定する。情報処理装置100が複数の帯域通過フィルタを用いる具体例は、図6〜図26を用いて後述する。
また、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、患者の歩き方が異なり、具体的には、患者の各脚のステップ動作の時間長が異なる場合がある。また、患者ごとに、患者の各脚のステップ動作の時間長が異なる場合がある。このため、情報処理装置100は、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定することにより、さらに歩行期間を特定する精度の向上を図ることができる。
例えば、情報処理装置100は、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出し、対象期間が歩行期間であるか否かを判定する。情報処理装置100が複数の時間長上限の候補を用いる具体例は、図6〜図26を用いて後述する。
また、対象期間は、患者によって歩行運動が行われた歩行期間と、患者によって歩行運動が行われていない非歩行期間とを、両方とも含んでいることが考えられる。このため、情報処理装置100は、それぞれの関係性について算出した評価値に基づいて、対象期間のいずれの部分期間が、歩行期間であるかを判定するようにしてもよい。情報処理装置100が対象期間のいずれの部分期間が歩行期間であるかを判定する具体例は、図27〜図33を用いて後述する。
(情報処理システム200の一例)
次に、図2を用いて、図1に示した情報処理装置100を適用した、情報処理システム200の一例について説明する。
図2は、情報処理システム200の一例を示す説明図である。図2において、情報処理システム200は、情報処理装置100と、1以上の計測機201とを含む。情報処理システム200において、情報処理装置100と計測機201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
情報処理装置100は、1以上の計測機201から、計測対象uとなる患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得し、患者によって歩行運動が行われた歩行期間を特定するコンピュータである。情報処理装置100は、例えば、サーバ、PC(Personal Computer)、ノートPC、タブレット端末、スマートフォン、ウェアラブル端末などである。
計測機201は、計測対象uとなる患者に装着されるコンピュータである。計測機201は、計測情報を生成し、情報処理装置100に送信する。計測機201は、例えば、図4に示すセンサ部を有し、そのセンサ部の計測値と、そのセンサ部の計測値が得られた計測時刻とを対応付けた時系列データを生成し、計測情報として情報処理装置100に送信する。計測機201は、例えば、センサ装置である。センサ装置は、具体的には、モーションセンサと呼ばれる装置である。計測機201は、例えば、スマートフォン、ウェアラブル端末などであってもよい。
ここでは、計測機201が、時系列データを作成する場合について説明したが、これに限らない。例えば、情報処理装置100が、計測機201から、計測機201のセンサ部の計測値と、そのセンサ部の計測値が得られた計測時刻とを対応付けた対応情報を順次受信し、その対応情報をまとめた時系列データを作成する場合があってもよい。ここでは、情報処理装置100と計測機201とが異なる装置である場合について説明したが、これに限らない。例えば、情報処理装置100が、計測機201と一体である場合があってもよい。
ここでは、計測機201が、自装置が装着された患者の部位の動きに関する計測情報を生成する場合について説明したが、これに限らない。例えば、計測機201が、患者の腰に装着されても、加速度センサの計測値を解析することによって、患者の左脚と右脚との動きに対応する加速度を取得可能であり、患者の左脚と右脚との動きに関する計測情報を生成する場合があってもよい。この場合、情報処理システム200は、患者ごとに1つの計測機201しか用いなくても実現することができる。
情報処理システム200は、さらに、表示装置を有する場合があってもよい。この場合、情報処理装置100は、歩行期間を特定した結果、歩行期間に関する所定の特徴量などを、表示装置を介して表示する。表示装置は、例えば、PC、ノートPC、タブレット端末、スマートフォンなどである。
情報処理システム200は、例えば、医療機関の医療システムに適用されたり、患者の状態を把握する見守りサービスを実現する場合に適用されたり、PHR(Personal Health Record)向けのサービスを実現する場合に適用されたりする。
(情報処理装置100のハードウェア構成例)
次に、図3を用いて、図2に示した情報処理システム200に含まれる情報処理装置100のハードウェア構成例について説明する。
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
記録媒体I/F304は、CPU301の制御にしたがって記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
情報処理装置100は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカー、タッチパネルなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
(計測機201のハードウェア構成例)
次に、図4を用いて、図2に示した情報処理システム200に含まれる計測機201のハードウェア構成例について説明する。
図4は、計測機201のハードウェア構成例を示すブロック図である。図4において、計測機201は、CPU401と、メモリ402と、ネットワークI/F403と、センサ部404と、タイマー部405とを有する。また、各構成部は、バス400によってそれぞれ接続される。
ここで、CPU401は、計測機201の全体の制御を司る。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
ネットワークI/F403は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F403は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F403は、例えば、Wi−Fi(登録商標)に対応する通信回路、Bluetooth(登録商標)に対応する通信回路などである。ネットワークI/F403は、例えば、3G(3rd Generation)に対応する通信回路であってもよい。
センサ部404は、計測機201の状態を計測する。センサ部404は、例えば、計測機201の位置、動き、および向きのうち少なくともいずれかを計測する。センサ部404は、具体的には、加速度センサ、角速度センサ、地磁気センサ、光センサ、振動センサなどの少なくともいずれかを有する。また、センサ部404は、GPS(Global Positioning Systems)受信機を有し、計測機201のGPS座標を検出してもよい。タイマー部405は、現在の時刻を計測する。
計測機201は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカー、タッチパネルなどを有してもよい。また、計測機201は、上述した構成部のほか、記録媒体I/Fや記録媒体を有してもよい。この記録媒体は、計測機201から着脱可能であってもよい。
(情報処理装置100の機能的構成例)
次に、図5を用いて、情報処理装置100の機能的構成例について説明する。
図5は、情報処理装置100の機能的構成例を示すブロック図である。情報処理装置100は、記憶部500と、取得部501と、検知部502と、評価部503と、判定部504と、算出部505と、出力部506とを含む。
記憶部500は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。取得部501〜出力部506は、制御部となる機能である。取得部501〜出力部506は、具体的には、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
記憶部500は、計測対象の複数の部位のそれぞれの部位の動きに関する計測情報を記憶する。計測対象は、例えば、患者である。複数の部位は、例えば、左脚と右脚とである。複数の部位は、腰を含んでもよい。記憶部500は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けて、時系列に並べたセンサデータを記憶する。
計測値は、例えば、矢状面の角速度、横断面の角速度、冠状面の角速度の少なくともいずれかを含む。計測値は、例えば、上下方向の加速度、左右方向の加速度、前後方向の加速度の少なくともいずれかを含んでもよい。以下の説明では、上下加速度、左右加速度、前後加速度のそれぞれを「上下加速度」、「左右加速度」、「前後加速度」と表記する場合がある。計測値は、例えば、振動の大きさ、位置などを含んでもよい。これにより、記憶部500は、センサデータを検知部502が参照可能にすることができる。なお、矢状面、横断面、冠状面の定義は図19に、上下方向、左右方向、前後方向の定義は図20に示す通りである。
記憶部500は、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを特定する情報を記憶する。記憶部500は、複数の帯域通過フィルタのそれぞれの帯域通過フィルタが抽出する周波数成分を示す第1パラメータを記憶する。これにより、記憶部500は、検知部502が第1パラメータを参照可能にし、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを利用可能にすることができる。
記憶部500は、ステップ動作の時間長上限に対する複数の時間長上限の候補のそれぞれの候補を記憶する。記憶部500は、複数の時間長上限の候補のそれぞれの候補を示す第2のパラメータを記憶する。第2パラメータは、ステップ動作の時間長上限を示す。これにより、記憶部500は、検知部502が第2のパラメータを参照可能にし、ステップ動作の時間長上限に、複数の時間長上限の候補のそれぞれの候補を設定可能にすることができる。
記憶部500は、複数の関係性のそれぞれの関係性について評価値を算出する算出式のパラメータ群を記憶する。複数の関係性は、それぞれ、患者によって歩行運動が行われた場合に動作間に生じる可能性が大きい関係性である。複数の関係性は、例えば、図7〜図16に後述する第1の関係性〜第10の関係性である。複数の関係性は、図7〜図16に後述する第1の関係性〜第10の関係性の少なくとも2つであってもよい。これにより、記憶部500は、評価部503が算出式のパラメータ群を参照可能にすることができる。
取得部501は、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得する。取得部501は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けて、時系列に並べたセンサデータを、計測機201から受信し、記憶部500に記憶する。取得部501は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けた対応情報を計測機201から順次受信し、その対応情報をまとめたセンサデータを作成して記憶部500に記憶してもよい。これにより、取得部501は、検知部502や評価部503などが患者のそれぞれの部位についてのセンサデータを参照可能なようにすることができる。
検知部502は、歩行期間であるか否かを判定する対象になる対象期間を設定する。検知部502は、所定の期間を、対象期間に設定する。検知部502は、利用者の操作入力に基づく期間を、対象期間に設定してもよい。検知部502は、取得した計測情報に基づいて、患者が静止状態ではない動作期間を特定し、対象期間に設定してもよい。
検知部502は、取得した計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。歩行運動動作の一部は、例えば、歩行運動の1歩である。歩行運動動作の一部は、例えば、歩行運動中の支持脚の静止、歩行運動中の両足が地面についた時の両足微動などであってもよい。歩行運動動作の一部に対応する特徴は、例えば、歩行運動の1歩に対応する特徴である。歩行運動の1歩に対応する特徴は、例えば、各脚の角速度が閾値を超えて極大値になったことである。
歩行運動動作の一部に対応する特徴は、例えば、歩行運動中の両足が地面についた時の両足微動に対応する特徴であってもよい。両足微動に対応する特徴は、例えば、角速度が閾値以下、かつ、振動が閾値以上であることである。動作は、例えば、ステップ動作である。左脚または右脚のステップ動作は、左脚または右脚が1歩分前に動く動作である。検知部502は、検知したステップ動作を、そのステップ動作に付与した通し番号と、そのステップ動作があった動作点とを用いて記憶する。
検知部502は、左脚についてのセンサデータにおいて、左脚の角速度が閾値を超えて極大値になったことを検知し、左脚の角速度が閾値を超えて極大値になったことを左脚のステップ動作として検知する。検知部502は、同様に、右脚のステップ動作を検知する。そして、検知部502は、左脚のステップ動作と、右脚のステップ動作とを含むステップ動作群を、動作群として検知する。これにより、検知部502は、歩行運動を判定する際に用いられる動作群を、評価部503が参照可能なようにすることができる。
検知部502は、さらに、腰についてのセンサデータに基づいて、ステップ動作の前後における腰の体幹前進動作を検知してもよい。腰の体幹前進動作は、左脚または右脚が1歩分前に動いたことに応じて体幹を動かす動作であり、ステップ動作の前後で発生する。検知部502は、評価値を算出するために腰の体幹前進動作を用いる場合には、ステップ動作群を検知した後、ステップ動作群のそれぞれのステップ動作に対応する腰の体幹前進動作を検知し、ステップ動作群と体幹前進動作群とを含む動作群を検知する。これにより、検知部502は、歩行運動を判定する際に用いられる動作群を、評価部503が参照可能なようにすることができる。
検知部502は、例えば、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。検知部502は、例えば、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動の1歩に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。検知部502は、具体的には、記憶部500の複数の第1パラメータのそれぞれの第1パラメータを用いて、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。これにより、検知部502は、患者ごとに歩き方が異なり、患者ごとに各脚のステップ動作の周期が異なる場合、および、センサデータにノイズ信号が含まれる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
評価部503は、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。評価値は、例えば、関係性が現れたか否かを示す2値の真理値であってもよい。評価値は、具体的には、1であれば、真であることを示し、関係性が現れたことを示す。これにより、評価部503は、対象期間の歩行期間らしさを示す指標を取得することができる。
評価部503は、検知部502が複数の動作群を検知した場合、動作群ごとに、それぞれの関係性が表れた度合いを示す評価値を算出してもよい。これにより、評価部503は、患者ごとの歩き方の違いに対応し、対象期間の歩行期間らしさを示す指標を取得することができる。
評価部503は、動作群において、それぞれのステップ動作の時間長上限を複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出してもよい。評価部503は、例えば、記憶部500の複数の第2パラメータのそれぞれの第2パラメータを用いて、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出する。これにより、評価部503は、患者ごとの歩き方の違いに対応し、対象期間の歩行期間らしさを示す指標を取得することができる。
判定部504は、それぞれの関係性について算出した評価値に基づいて、対象期間が歩行期間であるか否かを判定する。判定部504は、例えば、それぞれの関係性について算出した評価値が閾値以上である場合に、対象期間が歩行期間であると判定する。これにより、判定部504は、歩行期間を特定する精度の向上を図ることができる。
判定部504は、例えば、評価値を用いた論理演算の結果に基づいて、対象期間が歩行期間であるか否かを判定してもよい。判定部504は、具体的には、評価値が2値の真理値であれば、論理積が1である場合に対象期間が歩行期間であると判定する。これにより、判定部504は、判定にかかる処理量の低減化を図ることができる。また、評価値が取り得る値の範囲が極めて限定されるため、判定部504は、後述する状態遷移モデルの観測確率パラメータを人手で設定しやすくすることもできる。
判定部504は、例えば、それぞれの関係性について算出した評価値に基づいて、対象期間のうち歩行期間の候補期間を特定し、特定した候補期間の長さに応じた歩行期間としての尤度を算出し、尤度に基づいて、候補期間が歩行期間であるか否かを判定してもよい。これにより、判定部504は、対象期間に歩行期間と非歩行期間とが含まれる場合であっても、歩行期間を特定する精度の向上を図ることができる。
判定部504は、例えば、評価値を用いた論理演算の結果に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定してもよい。これにより、判定部504は、判定にかかる処理量の低減化を図ることができる。
算出部505は、判定部504が歩行期間であると判定した対象期間における所定の特徴量を算出する。所定の特徴量は、歩行期間に関する特徴量や歩行期間における患者の動きに関する特徴量などである。所定の特徴量は、例えば、歩行期間の長さや、歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値などである。
出力部506は、算出部505が算出した所定の特徴量を出力する。出力部506は、歩行期間における、各ステップ動作の開始時刻および終了時刻などの所定の特徴量を出力してもよい。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。
(情報処理装置100の動作の流れの一例)
次に、図6〜図17を用いて、情報処理装置100の動作の流れの一例について説明する。
図6は、情報処理装置100の動作の流れの一例を示す説明図である。図6において、情報処理装置100は、患者の腰の角速度や加速度を時系列に並べたセンサデータ、患者の左脚の角速度や加速度を時系列に並べたセンサデータ、患者の右脚の角速度や加速度を時系列に並べたセンサデータなどを、計測機201から受信する。
以下の説明では、加速度を時系列に並べたセンサデータを「加速度データ」と表記し、角速度を時系列に並べたセンサデータを「ジャイロデータ」と表記する場合がある。そして、情報処理装置100は、受信したセンサデータに基づいて、患者が静止状態ではない動作期間を特定し、歩行期間であるか否かを判定する対象になる対象期間に設定する。
情報処理装置100は、例えば、センサデータとして、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータを受信する。情報処理装置100は、例えば、センサデータとして、上下方向の加速度データ、左右方向の加速度データ、前後方向の加速度データを受信する。
次に、情報処理装置100は、対象期間におけるセンサデータに対して、複数の第1パラメータを用いて、検知器になる複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。第1パラメータは、減衰する周波数帯域と通過する周波数帯域とを特定する。そして、情報処理装置100は、それぞれの帯域通過フィルタを適用した場合について、患者の腰と左脚と右脚とのステップ動作を含むステップ動作群を検知する。
帯域通過フィルタを適用し、ステップ動作を検知するために用いられるジャイロデータは、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータのいずれか一つであってよい。ステップ動作を検知するために用いなかったジャイロデータも、評価値を算出するために用いられる。
また、帯域通過フィルタを適用し、ステップ動作を検知するために用いられるジャイロデータは、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータを統合したジャイロデータであってもよい。
次に、情報処理装置100は、検知したステップ動作群ごとに、第2パラメータを用いて、ステップ動作の時間長上限を設定し、各ステップ動作の開始時刻および終了時刻を特定し、動作間の複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。この場合、複数の関係性は、図7〜図12に後述する第1の関係性〜第6の関係性である。そして、情報処理装置100は、評価値に基づいて、対象期間が歩行期間であるか否かを判定する。
また、情報処理装置100は、さらに、検知したステップ動作群ごとに、腰のセンサデータに基づいて、それぞれのステップ動作に対応する体幹前進動作を検知してもよい。そして、情報処理装置100は、検知したステップ動作群と体幹前進動作群とを含む動作群ごとに、動作間の複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出し、その評価値に基づいて、対象期間が歩行期間であるか否かを判定する。この場合、複数の関係性は、図7〜図16に後述する第1の関係性〜第10の関係性である。
次に、図7〜図16を用いて、情報処理装置100が用いる、動作間の第1の関係性〜第10の関係性の一例について説明する。まず、図7を用いて、動作間の第1の関係性の一例について説明する。
図7は、動作間の第1の関係性の一例を示す説明図である。ここで、患者が歩く際には、左脚のステップ動作と、右脚のステップ動作とは1つずつ交互に発生するという性質がある。図7の例では、左脚のステップ動作711〜714と、右脚のステップ動作721〜724とは1つずつ交互に発生している。
そこで、情報処理装置100は、第1の関係性として、患者の各脚のステップ動作が交互に発生するという「左右交互性」を用いる。情報処理装置100は、第1の関係性の評価値を算出する算出式として、下記式(1)を用いる。
ここで、xi (1)は、第1の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。Siは、i番目のステップ動作が左脚によるものか、または右脚によるものか、を表す変数である。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(1)において[…]の中身の条件は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが異なることを示す。
このため、上記式(1)は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが異なるとxi (1)=1になる。上記式(1)は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが同一であるとxi (1)=0になる。また、情報処理装置100は、上記式(1)の代わりに、下記式(2)を用いる場合があってもよい。
ここで、xi (1)は、第1の関係性の評価値である。Siは、i番目のステップ動作が左脚によるものか、または右脚によるものか、を表す変数である。次に、図8の説明に移行し、動作間の第2の関係性の一例について説明する。
図8は、動作間の第2の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚が着地してから所定時間内に、患者の他方の脚が地面を離れるという性質がある。図8の例では、左脚のステップ動作811が終了して左脚が着地してから、所定時間801内に、右脚のステップ動作821が開始して右脚が地面を離れている。同様に、右脚のステップ動作821が終了して右脚が着地してから、所定時間802内に、左脚のステップ動作812が開始して左脚が地面を離れている。
そこで、情報処理装置100は、第2の関係性として、患者の一方の脚のステップ動作が終了してから所定時間内に、患者の他方の脚のステップ動作が開始するという「左右順序性」を用いる。情報処理装置100は、第2の関係性の評価値を算出する算出式として、下記式(3)を用いる。
ここで、xi (2)は、第2の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(3)において[…]の中身の条件は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻があることを示す。
このため、上記式(3)は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻があるとxi (2)=1になる。上記式(3)は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻がなければxi (2)=0になる。
図9は、動作間の第3の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚がスイングしている最中は、患者の他方の脚は地面に着いたまま静止状態で患者の体重を支持しているため、その脚の角速度は小さいという性質がある。図9の例では、左脚のステップ動作の最中であり左脚がスイングしている最中は、右脚の角速度901は閾値以下である。左脚の角速度902や右脚の角速度903も同様である。
そこで、情報処理装置100は、第3の関係性として、患者の一方の脚のステップ動作の最中は、患者の他方の脚のステップ動作の角速度が所定範囲内であるという「左右支持性」を用いる。情報処理装置100は、第3の関係性の評価値を算出する算出式として、下記式(4)を用いる。
ここで、xi (3)は、第3の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。ωinvは、i番目のステップ動作の脚ではなく、ステップ動作していない脚のセンサデータであり、ジャイロデータを表す。tは、時刻を表す変数である。α、βは、脚の静止状態を表す角速度の範囲を表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(4)において[…]の中身の条件は、i番目のステップ動作の脚ではない脚の角速度の最大値が所定範囲内であり、その脚が静止状態であることを示す。
このため、上記式(4)は、i番目のステップ動作の脚ではない脚の角速度のT(TC)〜T(IC)の最大値が所定範囲α〜β内であり、その脚が静止状態であるとxi (3)=1になる。上記式(4)は、i番目のステップ動作の脚ではない脚の角速度のT(TC)〜T(IC)の最大値が所定範囲α〜β内ではなく、その脚が静止状態ではないとxi (3)=0になる。
図10は、動作間の第4の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚のステップ動作の角速度は一定である傾向があるという性質がある。図10の例では、左脚のステップ動作の角速度のピーク振幅1001〜1004は一定である。また、ピーク振幅のほか、ピーク時間が一定である場合がある。ピーク時間は、ステップ動作の前後で、角速度が極小値になった時点から、極大値になった時点を挟んで極小値になった時点までの時間である。
そこで、情報処理装置100は、第4の関係性として、患者の一方の脚の複数のステップ動作の特徴量が類似するという「片側類似性」を用いる。情報処理装置100は、第4の関係性の評価値を算出する算出式として、下記式(5)と下記式(6)とを用いる。
ここで、xi (4A)は、第4の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。pは、ステップ動作のピーク振幅を表す。pの上部にバーを付した記号は、ステップ動作群における、ステップ動作のピーク振幅の平均を表す。ωは、i番目のステップ動作の脚のセンサデータであり、ジャイロデータを表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。
このため、上記式(5)は、患者の一方の脚のi番目のステップ動作のピーク振幅と、その脚の他のステップ動作のピーク振幅とが類似するとxi (4A)は小さい値をとる。上記式(5)は、患者の一方の脚のi番目のステップ動作のピーク振幅と、その脚の他のステップ動作のピーク振幅とが類似しないとxi (4A)は大きい値をとる。
ここで、xi (4B)は、第4の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。qは、ステップ動作のピーク時間を表す。qの上部にバーを付した記号は、ステップ動作群における、ステップ動作のピーク時間の平均値を表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。
このため、上記式(6)は、患者の一方の脚のi番目のステップ動作のピーク時間と、その脚の他のステップ動作のピーク時間とが類似するとxi (4B)は小さい値をとる。上記式(6)は、患者の一方の脚のi番目のステップ動作のピーク時間と、その脚の他のステップ動作のピーク時間とが類似しないとxi (4B)は大きい値をとる。
また、情報処理装置100は、ピーク振幅pとして、ステップ動作の開始時刻の角速度、または、ステップ動作の終了時刻の角速度を用いてもよい。情報処理装置100は、ピーク時間qとして、ステップ動作の開始時刻から角速度が極大になった時点までの時間、または、ステップ動作の角速度が極大になった時点から終了時刻までの時間を用いてもよい。また、情報処理装置100は、ピーク時間qとして、ステップ動作の終了時刻から次のステップ動作の開始時刻までの時間を用いてもよい。
図11は、動作間の第5の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の左右の脚のステップ動作の特徴量の比率は一定である傾向があるという性質がある。図11の例では、左脚のステップ動作の角速度のピーク振幅1111〜1114と、右脚のステップ動作の角速度のピーク振幅1121〜1124との比率が一定である。また、ピーク振幅のほかピーク時間の比率が一定である場合がある。
そこで、情報処理装置100は、第5の関係性として、患者の各脚のステップ動作の特徴量が類似するという「両側類似性」を用いる。情報処理装置100は、第5の関係性の評価値を算出する算出式として、下記式(7)と下記式(8)とを用いる。
ここで、xi (5A)は、第5の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。pは、ステップ動作のピーク振幅を表す。riは、左右の脚の連続するステップ動作のピーク振幅の比率を表す。riの上部にバーを付した記号は、ステップ動作群における、左右の脚のステップ動作のピーク振幅の比率の平均値を表す。fL(a,b)は、aとbのうち、左脚に関する特徴量、例えば、左脚のピーク振幅を選択する関数である。fR(a,b)は、aとbのうち、右脚に関する特徴量、例えば、右脚のピーク振幅を選択する関数である。
このため、上記式(7)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作とのピーク振幅の比率と、左右の脚のステップ動作のピーク振幅の比率の平均値とが類似するとxi (5A)は小さい値をとる。上記式(7)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作とのピーク振幅の比率と、左右の脚のステップ動作のピーク振幅の比率の平均値とが類似しないとxi (5A)は大きい値をとる。
ここで、xi (5B)は、第5の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。qは、ステップ動作のピーク時間を表す。siは、左右の脚のステップ動作のピーク時間の比率を表す。riの上部にバーを付した記号は、ステップ動作群における、左右の脚のステップ動作のピーク時間の比率の平均値を表す。fL(a,b)は、aとbのうち、左脚に関する特徴量、例えば、左脚のピーク時間を選択する関数である。fR(a,b)は、aとbのうち、右脚に関する特徴量、例えば、右脚のピーク時間を選択する関数である。
このため、上記式(8)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作との長さの比率と、左右の脚のステップ動作のピーク時間の比率の平均値とが類似するとxi (5B)は小さい値をとる。上記式(8)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作との長さの比率と、左右の脚のステップ動作のピーク時間の比率の平均値とが類似しないとxi (5B)は大きい値をとる。
図12は、動作間の第6の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の左脚のステップ動作の回転方向と、患者の右脚のステップ動作の回転方向とが一致するという性質がある。図12の例では、各脚の横断面のジャイロデータを示す。また、図中の左右方向への回転角とは、横断面の角速度を時間方向に積分することで算出された値である。図12の例では、右脚における左右方向への回転角1201は右回転を示し、同様に、左脚における左右方向への回転角1202は右回転を示しており、回転方向が一致する。
そこで、情報処理装置100は、第6の関係性として、患者の各脚のステップ動作の回転方向が同一であるという「左右回転性」を用いる。情報処理装置100は、第6の関係性の評価値を算出する算出式として、下記式(9)を用いる。
ここで、xi (6)は、第6の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。Riは、i番目のステップ動作の回転量を表す。回転量は、例えば、角速度の積分値である。sgn(…)は符号関数であり、(…)の中身が0以上なら「1」、(…)の中身が0以下なら「−1」を返す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(9)において[…]の中身の条件は、i番目のステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一であることを示す。
このため、上記式(9)は、i番目のステップ動作の回転量が閾値を超え、かつ、そのステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一であるとxi (6)=1になる。上記式(9)は、i番目のステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一ではないとxi (6)=0になる。
図13は、動作間の第7の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚が着地する前後に、患者の腰にも大きな上下加速度が生じるという性質がある。図13の例では、右脚のステップ動作1301,1302の直後に、体幹前進動作として腰の上下動作1311,1313が生じている。
このほか、患者の各脚が地面を離れる前後に、患者の腰にも大きな上下加速度が生じるという性質がある。図13の例では、右脚のステップ動作1302の直前に、体幹前進動作として腰の上下動作1312が生じている。
そこで、情報処理装置100は、第7の関係性として、患者の各脚のステップ動作が終了する前後の所定時間の範囲に、患者の体幹の上下方向のステップ動作が発生するという「上下交互性」を用いる。情報処理装置100は、第7の関係性の評価値を算出する算出式として、下記式(10)を用いる。
ここで、xi (7)は、第7の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。acczは、患者の腰の上下加速度データを表す。γは、閾値である。T(IC)は、ステップ動作の終了時刻を表す。τは、終了時刻の前後所定範囲を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(10)において[…]の中身の条件は、i番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上であることを示す。
このため、上記式(10)は、患者の脚のi番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上であるとxi (7)=1になる。上記式(10)は、患者の脚のi番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上ではないとxi (7)=0になる。
図14は、動作間の第8の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚が進んだ場合、同様に患者の腰も進むという性質がある。図14の例では、右脚のステップ動作1401,1402の直後、体幹前進動作として腰の前後動作1411,1412が発生し、腰の前後加速度の積分値が閾値以上になっている。
そこで、情報処理装置100は、第8の関係性として、患者の各脚のステップ動作の最中は、患者の体幹の前進方向のステップ動作が発生するという「上下並進性」を用いる。情報処理装置100は、第8の関係性の評価値を算出する算出式として、下記式(11)を用いる。
ここで、xi (8)は、第8の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。accXは、患者の腰の前後加速度データを表す。TsとTeとは、腰が前に進んでいる期間を決定する時間パラメータである。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(11)において[…]の中身の条件は、患者の両脚のステップ動作のうちi番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きいことを示す。
このため、上記式(11)は、i番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きいとxi (8)=1になる。上記式(11)は、i番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きくないとxi (8)=0になる。
図15は、動作間の第9の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚の回転方向と、患者の腰の回転方向とは一致するという性質がある。図15の例では、右脚と腰との横断面のジャイロデータを示す。図15の例では、右脚のステップ動作1501における回転方向と、腰の体幹前進動作1511における回転方向とが一致する。
そこで、情報処理装置100は、第9の関係性として、患者の各脚のステップ動作の回転方向と、患者の各脚のステップ動作が終了した後の患者の体幹のステップ動作の回転方向が同一であるという「上下回転性」を用いる。情報処理装置100は、第9の関係性の評価値を算出する算出式として、下記式(12)を用いる。
ここで、xi (9)は、第9の関係性の評価値である。Ri legは、右脚または左脚の回転量を表す。Ri waistは、腰の回転量を表す。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。ωY waistは、腰の横断面のジャイロデータを表す。ωY legは、右脚または左脚の横断面のジャイロデータを表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。TsとTeは、上半身が前進するタイミングを決定する時間パラメータである。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(12)において[…]の中身の条件は、i番目のステップ動作の腰の回転方向と足の回転方向が一致することを示す。
このため、上記式(12)は、i番目のステップ動作の腰の回転方向と足の回転方向が一致するとxi (9)=1になる。上記式(12)は、i番目のステップ動作の腰の回転方向と足の回転方向が一致しないとxi (9)=0になる。
図16は、動作間の第10の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の脚の移動量と、患者の腰の移動量とが類似するという性質がある。図16の例では、右脚のステップ動作1601,1602の移動量と、腰の体幹前進動作1611,1612の移動量とが類似する。
そこで、情報処理装置100は、第10の関係性として、患者の各脚のステップ動作が示す移動量と、患者の体幹のステップ動作が示す移動量とが類似するという「上下移動性」を用いる。情報処理装置100は、第10の関係性の評価値を算出する算出式として、下記式(13)を用いる。
ここで、xi (10)は、第10の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。vは、ステップ動作における足の移動量を表す。uは、体幹前進動作における腰の移動量を表す。ηminとηmaxとは、患者の脚の移動量と患者の腰の移動量の比率の範囲を表す定数である。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(13)において[…]の中身の条件は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲内であることを示す。
このため、上記式(13)は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲内であるとxi (10)=1になる。上記式(13)は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲外であるとxi (10)=0になる。
図17は、情報処理装置100が歩行期間であるか否かを判定する一例を示す説明図である。図17において、情報処理装置100は、ステップ動作群ごとに、上記式(1)〜上記式(13)などを用いて算出した第1の関係性〜第10の関係性の平均値などを、第1の関係性〜第10の関係性の確信度として算出する。情報処理装置100は、算出した確信度を乗算し、対象期間の歩行期間らしさを示す総評価値を算出する。情報処理装置100は、確信度や総評価値を、結果管理テーブル1700を用いて記憶する。
次に、情報処理装置100は、それぞれのステップ動作群について算出した総評価値のうち最大値を特定する。そして、情報処理装置100は、特定した最大値が閾値以上であるか否かを判定する。ここで、情報処理装置100は、最大値が閾値以上であれば、対象期間を歩行期間であると判定する。一方で、情報処理装置100は、最大値が閾値未満であれば、対象期間を歩行期間ではないと判定する。情報処理装置100は、判定した結果を、結果管理テーブル1700を用いて記憶する。
情報処理装置100は、対象期間を歩行期間であると判定した場合、最大値が算出されたステップ動作群を、最も患者の歩き方を反映しているステップ動作群として用いてもよい。そして、情報処理装置100は、最も患者の歩き方を反映しているステップ動作群を用いて、対象期間における所定の特徴量を算出して出力する。
(情報処理装置100が歩行期間を特定する第1の具体例)
次に、図18〜図26を用いて、情報処理装置100が歩行期間を特定する第1の具体例について説明する。
図18〜図26は、情報処理装置100が歩行期間を特定する第1の具体例を示す説明図である。図18において、患者は、右脚と左脚と腰とに計測機201を装着する。計測機201は、患者の装着した部位において角速度や加速度を計測し、計測値と計測時刻とを対応付けてセンサデータ1801,1802などを生成する。情報処理装置100は、計測機201が生成したセンサデータ1801,1802などを受信する。次に、図19および図20の説明に移行し、計測機201が計測する内容について説明する。
図19に示すように、計測機201は、角速度を計測する場合、例えば、矢状面における角速度、横断面における角速度、冠状面における角速度を計測する。これにより、計測機201は、例えば、センサデータとして、矢状面における角速度を時系列に並べたジャイロデータ、横断面における角速度を時系列に並べたジャイロデータ、冠状面における角速度を時系列に並べたジャイロデータを生成する。
図20に示すように、計測機201は、加速度を計測する場合、例えば、上下加速度、左右加速度、前後加速度を計測する。これにより、計測機201は、例えば、センサデータとして、上下加速度を時系列に並べた加速度データ、左右加速度を時系列に並べた加速度データ、前後加速度を時系列に並べた加速度データを生成する。次に、図21の説明に移行する。
図21において、情報処理装置100は、受信したジャイロデータや加速度データを用いて、歩行期間であるか否かを判定する対象になる対象期間として、患者が静止状態ではない非静止期間を特定する。
情報処理装置100は対象期間の特定に当って、例えば、左脚のジャイロデータと右脚のジャイロデータとに対して、それぞれ同じ時点から窓幅Wをもつ窓をずらし幅(W/2)でずらしていく。窓は、所定の長さの期間を示す。情報処理装置100は、窓をずらすごとに、左脚のジャイロデータと右脚のジャイロデータとのうち、その窓に対応するセグメントデータを特定する。
情報処理装置100は対象期間の特定に当って、窓をずらすごとに、その窓に対応するセグメントデータにおいて、角速度の平均値Mgと分散Vgとが、それぞれ所定値TH_MgとTH_Vgとを超えるか否かを判定する。情報処理装置100は、ある窓に対応するセグメントデータについて超えると判定した場合に、その窓が示す期間を、患者が静止状態ではない非静止期間として特定する。
情報処理装置100は対象期間の特定に当って、特定した非静止期間のうち、連続する2以上の非静止期間があれば、その2以上の非静止期間を統合して、1つの非静止期間として特定する。情報処理装置100は、特定した非静止期間を、対象期間として設定する。次に、図22Aおよび図22Bの説明に移行する。
図22Aにおいて、情報処理装置100は、対象期間におけるセンサデータに対して、N個の第1パラメータを用いて、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。第1パラメータは、帯域通過フィルタが通過させる周波数帯域を定義し、例えば、どんな周波数成分を減衰するかを示すカットオフ周波数によって表現される。これにより、情報処理装置100は、患者ごとに歩き方が異なり、患者ごとに各脚のステップ動作の周期が異なる場合、および、センサデータにノイズ信号が含まれる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
次に、情報処理装置100は、それぞれの帯域通過フィルタを適用した場合について、患者の各脚のステップ動作を含むステップ動作群を検知する。情報処理装置100は、例えば、それぞれの帯域通過フィルタを適用した場合について、左脚の角速度が閾値を超えて極大値になったことを検知し、左脚のステップ動作を検知する。また、情報処理装置100は、例えば、それぞれの帯域通過フィルタを適用した場合について、右脚の角速度が閾値を超えて極大値になったことを検知し、右脚のステップ動作を検知する。次に、図22Bの説明に移行し、情報処理装置100がステップ動作を検知しやすいようにする一例について説明する。
図22Bにおいて、情報処理装置100は、第3パラメータとして、極大値を検知する際に用いる閾値に設定可能な、複数の閾値を用意している。情報処理装置100は、センサデータまたはセンサデータに帯域フィルタを適用した結果に対して、極大値を検知するにあたって、複数の閾値のぞれぞれの閾値を適用することにより、複数のステップ動作群を検知してもよい。これにより、情報処理装置100は、患者ごとに歩き方が異なり、患者ごとにステップ動作のスイングの速さが異なる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
情報処理装置100は、各脚のステップ動作の動作点として、各脚の角速度が極大値になった時点を記憶し、各脚のステップ動作を動作点によって記憶しておく。情報処理装置100は、検知した各脚のステップ動作を含むステップ動作群を検知する。また、情報処理装置100は、各脚のステップ動作に対応する腰の体幹前進動作を検知しておいてもよい。次に、図23の説明に移行する。
図23において、情報処理装置100は、検知したステップ動作群ごとに、M個の第2パラメータを用いて、ステップ動作の時間長上限を設定し、複数の関係性の評価値を算出するために用いられる、ステップ動作の開始時刻と終了時刻とを特定する。この開始時刻は、例えば、踵または爪先または足裏が地面から離れたタイミングであり、終了時刻は、例えば、踵または爪先または足裏が地面に着地したタイミングである。第2パラメータは、ステップ動作の時間長上限を示し、動作点よりマージンタイム分前の時点から、動作点よりマージンタイム分後の時点までの長さを示す。
情報処理装置100は、例えば、ステップ動作の動作点から、第2パラメータ分前までの間で、角速度が最小値になった時点を、開始時刻として特定する。情報処理装置100は、例えば、ステップ動作の動作点から、第2パラメータ分後までの間で、角速度が最小値になった時点を、終了時刻として特定する。次に、図24の説明に移行する。
図24において、情報処理装置100は、ステップ動作の検知においてN個の帯域通過フィルタを用い、ステップ動作の開始時刻と終了時刻の特定においてM個のステップ動作の時間長上限を用いることにより、N×M個のステップ動作群を検知している。情報処理装置100は、それぞれのステップ動作群について、そのステップ動作群に含まれる各脚のステップ動作について、出現順に動作番号を割り当てる。
そして、情報処理装置100は、各脚のステップ動作について、動作番号と、動作点と、開始時刻と、終了時刻と、どちらの脚のステップ動作かを対応付けて、脚動作管理テーブル2400を用いて記憶する。情報処理装置100は、各脚のステップ動作に対応する腰の体幹前進動作について、体幹前進動作管理テーブルを用いて記憶してもよい。次に、図25の説明に移行する。
図25において、情報処理装置100は、ステップ動作群に基づいて、ステップ動作ごとに、第1の関係性〜第10の関係性の評価値を算出する。情報処理装置100は、ステップ動作ごとに算出した第1の関係性〜第10の関係性の評価値を、そのステップ動作の動作番号に対応付けて、評価値管理テーブル2500を用いて記憶する。次に、図26の説明に移行する。
図26において、情報処理装置100は、第1の関係性〜第10の関係性の評価値を、統一した基準で算出し直す。例えば、第2の関係性の評価値は、2値であり、1であれば歩行運動らしく、0であれば歩行運動らしくないことを示す。一方で、第3の関係性の評価値は、連続値であり、0に近いほど歩行運動らしく、値が大きいほど歩行運動らしくないことを示す。
このため、情報処理装置100は、第3の関係性の評価値を、2値であり、1であれば歩行運動らしく、0であれば歩行運動らしくないことを示す評価値に変換する。情報処理装置100は、例えば、第3の関係性の評価値が閾値未満であれば評価値を1に変換し、閾値以上であれば評価値を0に変換する。
そして、情報処理装置100は、第1の関係性〜第10の関係性の評価値を足し合わせ、総評価値を算出する。情報処理装置100は、算出した総評価値が閾値以上であれば、対象期間が歩行期間であると判定する。これにより、情報処理装置100は、歩行期間を特定する精度の向上を図ることができる。
(情報処理装置100が歩行期間を特定する第2の具体例)
次に、図27〜図33を用いて、情報処理装置100が歩行期間を特定する第2の具体例について説明する。
図27〜図33は、情報処理装置100が歩行期間を特定する第2の具体例を示す説明図である。ここで、対象期間は、患者によって歩行運動が行われた歩行期間と、患者によって歩行運動が行われていない非歩行期間とを、両方とも含んでいることが考えられる。このため、情報処理装置100は、第1の関係性〜第10の関係性について算出した評価値に基づいて、対象期間のいずれの部分期間が、歩行期間であるかを判定する。
図27に示すように、情報処理装置100は、歩行期間と非歩行期間を区別するために、それぞれのステップ動作の状態を「歩行」または「非歩行」とラベリングする隠れマルコフモデル(HMM:Hidden Markov Model)を適用する。
HMMは、観測される特徴量が、隠れ状態の状態固有の確率分布に基づいて生成されること、および、前の隠れ状態と、次に遷移する隠れ状態との間に依存関係があることを仮定した状態遷移モデルである。隠れ状態は、直接観測しない状態であり、例えば、ステップ動作の状態であり、歩行状態または非歩行状態である。
情報処理装置100は、例えば、第1の関係性〜第10の関係性について算出した評価値に基づいて、それぞれのステップ動作の状態を「歩行」または「非歩行」とラベリングする。そして、情報処理装置100は、対象期間のうち、「歩行」とラベリングされたステップ動作に対応する部分期間に対して、HMMの尤度を算出し、歩行期間としての尤度とする。
図27の例では、ステップ動作の隠れ状態として、単純に「歩行」と「非歩行」との状態だけでなく、歩行のダイナミクスをより正確に捉えるため、歩行状態を「初期歩行状態」、「中間歩行状態」、「末期歩行状態」の3つに細分化した状態が仮定されている。さらに、患者の歩き方が左脚と右脚で異なる場合に対応して、これら3つの状態を、右脚と左脚で区別し、さらに歩行状態が細分化される。なお、中間歩行状態は、複数あってもよい。
これにより、情報処理装置100は、「歩行中」の歩行状態に比べて半歩しか進まない傾向がある「初期歩行状態(例えば、1歩目)」と「末期歩行状態(例えば、最終歩)」との歩行状態を区別することが可能になり、したがって「歩行」と「非歩行」の境界を正確に検出することが可能になる。また、情報処理装置100は、患者が片足を怪我している場合などに対応するように、左脚と右脚との歩行状態を区別するようにする。次に、図28の説明に移行する。
図28において、情報処理装置100は、第1の関係性〜第10の関係性について算出した評価値系列Xに対して、上記7つの状態の中から尤もらしい状態を割り当てる。情報処理装置100は、例えば、下記式(14)で表現される、評価値系列Xと動作状態系列Yとについての同時確率p(X,Y)が最大になるように、Viterbiアルゴリズムを用いて、動作状態系列Yを求める。
ここで、p(xi|yi)は、観測確率を表す。観測確率は、例えば、図30を用いて後述する。p(yi|yi-1)は、状態遷移確率を表す。状態遷移確率は、例えば、図29を用いて後述する。次に、図29の説明に移行する。
図29に示すように、状態遷移確率は、表2900によって表現される。ここで、状態は、右脚の歩行状態と左脚の歩行状態とに、交互に遷移する性質がある。このため、状態遷移確率p(yi|yi-1)について、歩行状態を細分化した、左脚に関する歩行状態と右脚に関する歩行状態とは、交互に発生するように状態遷移確率が設定される。例えば、前の状態がS3であれば、次に遷移する状態はS4またはS6のいずれかになるように、状態遷移確率が設定される。
また、歩行開始時の1歩目の状態S1の後は歩行中の状態S4に遷移し、歩行開始時の1歩目の状態S2の後は歩行中の状態S3に遷移するように、状態遷移確率が設定される。また、最終歩の状態S5において歩行終了した後は非歩行の状態S7に遷移し、最終歩の状態S6において歩行終了した後は非歩行の状態S7に遷移するように、状態遷移確率が設定される。次に、図30の説明に移行する。
図30に示すように、観測確率は、表3000,3010によって表現される。観測確率p(xi|yi)については、歩行状態と非歩行状態とのそれぞれの状態において、それぞれの評価値がとる値が特定可能であるため、ヒューリスティックに確率分布が設定される。確率分布の形状は、無相関な多次元正規分布を用いて、正規分布の平均パラメータと分散パラメータを表3000,3010のように設定して、決定される。
例えば、歩行状態S1,S2,S3,S4,S5,S6においては、評価値x(2)、評価値x(3)の平均パラメータが1、評価値x(4A)、評価値x(4B)の平均パラメータが0と設定される。一方で、非歩行状態s7においては、評価値x(2)、評価値x(3)の平均パラメータが0、評価値x(4A)、評価値x(4B)の平均パラメータが1と設定される。
また、右脚のステップ動作に対応する歩行状態S1、S3、S5では、評価値x(1)の平均パラメータが1、左脚のステップ動作に対応する歩行状態S2、S4、S6では、評価値x(1)の平均パラメータが0と設定される。歩行開始時の1歩目に対応する状態S1、S2および歩行終了時の最終歩に対応する状態S5、S6では、角速度が小さくなりやすいため、歩行中の状態S3、S4と比べて、各分散パラメータが大きく設定される。次に、図31の説明に移行する。
図31において、情報処理装置100は、状態観測確率と観測確率を用いて、Viterbiアルゴリズムを適用することにより動作状態系列を特定する。情報処理装置100は、例えば、動作状態系列を特定し、動作番号にさらに動作状態を対応付けて、評価値管理テーブル3100を用いて記憶する。
情報処理装置100は、1歩目の歩行状態から最終歩の歩行状態までの期間を特定する。情報処理装置100は、特定した期間が、所定の歩数より多い歩数に対応する期間であれば、特定した期間を、歩行期間の候補期間として特定する。所定の歩数は、例えば、4歩である。
図31の例では、情報処理装置100は、動作番号1が開始時刻であり、動作番号10が終了時刻である期間を特定する。情報処理装置100は、特定した期間の歩数は10歩であるため、特定した期間を歩行期間の候補期間と特定する。情報処理装置100は、特定した候補期間における評価値を、評価値系列X*に設定する。
そして、情報処理装置100は、下記式(15)を用いて、特定した候補期間について算出された同時確率p(X*、Y*)の尤度を、歩行期間としての尤度として算出する。
ここで、式(15)によると、候補期間における歩数が少なく、ステップ動作の数が少ないほど、確率値が大きくなるため、尤度が大きくなってしまう傾向がある。このため、情報処理装置100は、さらに、下記式(16)を用いて、上記式(15)の対数値を候補期間の歩数Kで平均化した指標値を、尤度として算出してもよい。次に、図32の説明に移行する。
図32において、情報処理装置100は、それぞれのステップ動作群について尤度を算出しているとする。情報処理装置100は、算出した尤度を、尤度管理テーブル3200を用いて記憶する。情報処理装置100は、尤度の最大値が閾値を超えているか否かを判定する。
情報処理装置100は、尤度が閾値を超えて最大値になったステップ動作群を、患者の歩行期間に対応するステップ動作群として尤もらしいステップ動作群として選択する。そして、情報処理装置100は、例えば、患者の歩行期間の開始時刻と終了時刻とを特定する。次に、図33の説明に移行する。
図33において、情報処理装置100は、それぞれの対象期間について、同様に、歩行期間であるか否かを判定し、歩行期間の開始時刻と終了時刻とを特定したとする。情報処理装置100は、判定した結果および特定した歩行期間の開始時刻と終了時刻とを、結果管理テーブル3300を用いて記憶する。
(情報処理装置100が所定の特徴量を出力する一例)
次に、図34を用いて、情報処理装置100が所定の特徴量を出力する一例について説明する。
図34は、情報処理装置100が所定の特徴量を出力する一例を示す説明図である。図34において、情報処理装置100は、特定した歩行期間、および、特定した歩行期間におけるステップ動作の開始時刻と終了時刻とを用いて、それぞれの歩行期間における所定の特徴量を算出する。所定の特徴量は、例えば、患者の歩幅、移動速度、移動時間、歩行のケーデンス、各脚の着地時の衝撃、各脚の接地時間などである。また、所定の特徴量は、歩行期間における、各ステップ動作の開始時刻および終了時刻であってもよい。情報処理装置100は、例えば、算出した特徴量をさらに対応付けて結果管理テーブル3400や脚動作管理テーブル2400を用いて記憶する。
(複数の帯域通過フィルタを適用する動作の別の例)
次に、図35および図36を用いて、複数の帯域通過フィルタを適用する動作の別の例について説明する。
図35および図36は、複数の帯域通過フィルタを適用する動作の別の例を示す説明図である。図35および図36に示すように、情報処理装置100は、複数の帯域通過フィルタを適用する際に、予め複数の第1パラメータを用意しておかなくてもよい。
図35において、情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果が単ピーク性を有するように、カットオフ周波数を設定する。単ピーク性は、一方の脚の角速度が極大値になった後、他方の脚の角速度が極大値になる前に、一方の脚の角速度が再び極大値になることがない性質である。単ピーク性は、例えば、一方の脚のステップ動作の後、同じ脚のステップ動作が所定時間以内に2つ以上発生しない性質である。情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、単ピーク性が現れなければ、その帯域通過フィルタよりも周波数帯域が広い帯域通過フィルタを適用する。次に、図36の説明に移行する。
図36において、情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、極大値が閾値以上になるように、カットオフ周波数を設定する。情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、極大値が閾値以上にならなければ、その帯域通過フィルタよりも周波数帯域が広い帯域通過フィルタを適用する。
これにより、情報処理装置100は、センサデータに複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した結果のいずれかを、対象期間が歩行期間であるか否かを判定するために用いなくてもよい。このため、情報処理装置100は、対象期間が歩行期間であるか否かを判定する処理量の増大化を抑制することができる。
(ステップ動作の時間長上限に複数の時間長上限の候補を設定する動作の別の例)
次に、図37を用いて、ステップ動作の時間長に複数の時間長上限の候補を設定する動作の別の例について説明する。
図37は、ステップ動作の時間長上限に複数の時間長上限の候補を設定する動作の別の例を示す説明図である。図37に示すように、情報処理装置100は、予め複数の第2パラメータを用意しておかなくてもよい。情報処理装置100は、例えば、ステップ動作の時間長上限の候補となる第2パラメータを、適用した帯域通過フィルタの周波数帯域に応じて設定する。情報処理装置100は、例えば、周波数帯域が狭いほど第2パラメータを大きくし、周波数帯域が広いほど第2パラメータを小さくする。情報処理装置100は、例えば、関数3700によって、周波数帯域が広いほど第2パラメータを小さく設定する。
これにより、情報処理装置100は、ステップ動作の時間長上限に複数の時間長上限の候補を設定しなくてよく、ステップ動作の時間長上限に比較的好ましい候補を設定することができる。このため、情報処理装置100は、対象期間が歩行期間であるか否かを判定する処理量の増大化を抑制することができる。
(全体処理手順の一例)
次に、図38を用いて、情報処理装置100が実行する全体処理手順の一例について説明する。
図38は、全体処理手順の一例を示すフローチャートである。図38において、まず、情報処理装置100は、一定期間のセンサデータを計測機201から受信する(ステップS3801)。次に、情報処理装置100は、センサデータに基づいて、一定期間のうち対象期間を抽出する(ステップS3802)。
そして、情報処理装置100は、いずれかの対象期間を選択する(ステップS3803)。次に、情報処理装置100は、選択した対象期間について、図39に後述する歩行期間判定処理を実行する(ステップS3804)。そして、情報処理装置100は、歩行特徴量を抽出する(ステップS3805)。
次に、情報処理装置100は、抽出した対象期間をすべて選択したか否かを判定する(ステップS3806)。ここで、選択していない場合(ステップS3806:No)、情報処理装置100は、ステップS3803の処理に戻る。
一方で、選択している場合(ステップS3806:Yes)、情報処理装置100は、歩行期間および歩行特徴量を出力する(ステップS3807)。そして、情報処理装置100は、全体処理を終了する。
(歩行期間特定手順の一例)
次に、図39を用いて、情報処理装置100が実行する歩行期間特定手順の一例について説明する。
図39は、歩行期間特定手順の一例を示すフローチャートである。図39において、まず、情報処理装置100は、複数の第1パラメータと、複数の第2パラメータとに基づいて、第1パラメータと第2パラメータの組み合わせを選択する(ステップS3901)。
次に、情報処理装置100は、選択した第1パラメータを用いて、センサデータに対して帯域通過フィルタを適用し、ステップ動作群を検知する(ステップS3902)。そして、情報処理装置100は、選択した第2パラメータを用いて、ステップ動作群を構成する各ステップ動作の開始時刻および終了時刻を特定する(ステップS3903)。
次に、情報処理装置100は、図40に後述する評価値算出処理を実行する(ステップS3904)。そして、情報処理装置100は、図41に後述する尤度算出処理を実行する(ステップS3905)。次に、情報処理装置100は、第1パラメータと第2パラメータの組み合わせをすべて選択したか否かを判定する(ステップS3906)。ここで、選択していない場合(ステップS3906:No)、情報処理装置100は、ステップS3901の処理に戻る。
一方で、選択している場合(ステップS3906:Yes)、情報処理装置100は、歩行期間を特定し、歩行期間における所定の特徴量を算出し、歩行期間における所定の特徴量を出力する(ステップS3907)。そして、情報処理装置100は、歩行期間特定処理を終了する。
(評価値算出処理手順の一例)
次に、図40を用いて、情報処理装置100が実行する評価値算出処理手順の一例について説明する。
図40は、評価値算出処理手順の一例を示すフローチャートである。図40において、まず、情報処理装置100は、いずれかのステップ動作を選択する(ステップS4001)。
次に、情報処理装置100は、第1の関係性について評価値を算出する(ステップS4002)。また、情報処理装置100は、第2の関係性について評価値を算出する(ステップS4003)。また、情報処理装置100は、第3の関係性について評価値を算出する(ステップS4004)。また、情報処理装置100は、第4の関係性について評価値を算出する(ステップS4005)。また、情報処理装置100は、第5の関係性について評価値を算出する(ステップS4006)。また、情報処理装置100は、第6の関係性について評価値を算出する(ステップS4007)。
そして、情報処理装置100は、腰に関するセンサデータがあるか否かを判定する(ステップS4008)。ここで、センサデータがない場合(ステップS4008:No)、情報処理装置100は、ステップS4013の処理に移行する。
一方で、センサデータがある場合(ステップS4008:Yes)、情報処理装置100は、第7の関係性について評価値を算出する(ステップS4009)。また、情報処理装置100は、第8の関係性について評価値を算出する(ステップS4010)。また、情報処理装置100は、第9の関係性について評価値を算出する(ステップS4011)。また、情報処理装置100は、第10の関係性について評価値を算出する(ステップS4012)。
そして、情報処理装置100は、ステップ動作をすべて選択したか否かを判定する(ステップS4013)。ここで、選択していない場合(ステップS4013:No)、情報処理装置100は、ステップS4001の処理に戻る。
一方で、選択している場合(ステップS4013:Yes)、情報処理装置100は、評価値算出処理を終了する。
(尤度算出処理手順の一例)
次に、図41を用いて、情報処理装置100が実行する尤度算出処理手順の一例について説明する。
図41は、尤度算出処理手順の一例を示すフローチャートである。図41において、まず、情報処理装置100は、状態遷移確率を算出する(ステップS4101)。次に、情報処理装置100は、観測確率を設定する(ステップS4102)。そして、情報処理装置100は、動作状態系列を設定する(ステップS4103)。
次に、情報処理装置100は、歩行期間の候補期間を特定する(ステップS4104)。そして、情報処理装置100は、歩行期間の候補期間について歩行期間としての尤度を算出する(ステップS4105)。その後、情報処理装置100は、尤度算出処理を終了する。
以上説明したように、情報処理装置100によれば、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得することができる。情報処理装置100によれば、計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知することができる。情報処理装置100によれば、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出することができる。情報処理装置100によれば、それぞれの関係性について算出した評価値に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、計測情報に対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知することができる。情報処理装置100によれば、検知した動作群ごとに、それぞれの関係性が表れた度合いを示す評価値を算出することができる。これにより、情報処理装置100は、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、または、患者ごとに、患者の各脚のステップ動作の周期が異なる場合でも、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、動作群において、それぞれの動作の時間長上限を複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出することができる。これにより、情報処理装置100は、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、または、患者ごとに、患者の各脚のステップ動作の時間長が異なる場合でも、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、歩行期間であると判定した対象期間における所定の特徴量を出力することができる。これにより、情報処理装置100は、患者の状態を把握するために、利用者に所定の特徴量を通知することができる。
情報処理装置100によれば、取得した計測情報に基づいて、患者が静止状態ではない動作期間を特定し、対象期間に設定することができる。これにより、情報処理装置100は、歩行期間か否かを判定する対象となる対象期間の数の低減化を図り、処理量の低減化を図ることができる。
情報処理装置100によれば、それぞれの関係性について算出した評価値に基づいて、対象期間のうち歩行期間の候補期間を特定し、特定した候補期間の長さに応じた歩行期間としての尤度を算出することができる。情報処理装置100によれば、算出した尤度に基づいて、候補期間が歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、対象期間を、さらに、歩行期間と非歩行期間とに分けて、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、評価値が、関係性が現れたか否かを示す2値の真理値であれば、評価値を用いた論理演算の結果に基づいて、対象期間が歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、処理量の低減化を図ることができる。
情報処理装置100によれば、複数の関係性に、患者の脚の動作に関する第1の関係性〜第6の関係性を用いることができる。これにより、情報処理装置100は、患者の脚の動作について複数の観点から歩行運動らしさを評価し、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、患者の脚および患者の体幹の動作に関する第7の関係性〜第10の関係性を用いることができる。これにより、情報処理装置100は、患者の脚および患者の体幹の動作について複数の観点から歩行運動らしさを評価し、歩行期間を特定する精度の向上を図ることができる。
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本実施の形態で説明した情報処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実施の形態で説明した情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
以下に、図面を参照して、本発明にかかる情報処理装置、情報処理システム、および情報処理方法の実施の形態を詳細に説明する。
(実施の形態にかかる情報処理方法の一実施例)
図1は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。情報処理装置100は、計測対象によって歩行が行われた歩行期間を特定するコンピュータである。計測対象は、生体または人工物である。生体は、人間であってもよいし、人間以外の動物であってもよい。生体は、例えば、医療機関による検査対象になる対象者である。生体は、具体的には、医師などの医療関係者による診断や治療、経過観察、または健康管理などを受ける患者である。人工物とは、例えば二足歩行ロボットである。
生体は、具体的には、医師などの医療関係者によるリハビリ指導などを受ける患者であってもよい。また、生体は、具体的には、スポーツインストラクターによる歩行指導を受ける被指導者であってもよい。生体は、例えば、自ら健康管理を行う個人であってもよい。生体は、動物であってもよい。以下の説明では、主として、計測対象を「患者」とする場合について説明する。
本実施の形態では、患者によって歩行運動が行われた場合に患者の部位の動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを評価することにより、歩行期間を特定する精度の向上を図ることができる情報処理方法について説明する。
(1−1)情報処理装置100は、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得する。患者の複数の部位は、例えば、患者の左脚と右脚との2つの部位である。患者の複数の部位は、具体的には、患者の左脚の下腿と右脚の下腿との2つの部位である。患者の部位の動きに関する計測情報は、例えば、その部位に装着された計測機の角速度センサが計測した角速度を、時系列に並べた時系列データである。時系列データは、例えば、センサデータである。
情報処理装置100は、例えば、患者の左脚の下腿に装着された計測機から、患者の左脚の下腿の角速度のセンサデータ101を受信し、患者の右脚の下腿に装着された計測機から、患者の右脚の下腿の角速度のセンサデータ102を受信する。これにより、情報処理装置100は、センサデータを、患者の歩行期間を特定するために用いることができる。
(1−2)情報処理装置100は、取得した計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。歩行運動動作の一部は、例えば、歩行運動の1歩である。歩行運動動作の一部は、例えば、歩行運動中の支持脚の静止、歩行運動中の両足が地面についた時の両足微動などであってもよい。
歩行運動動作の一部に対応する特徴は、例えば、歩行運動の1歩に対応する特徴である。歩行運動の1歩に対応する特徴は、例えば、角速度が閾値を超えて極大値になったことである。部位の動作は、患者の左脚または右脚が1歩分前に動く動作である。歩行運動動作の一部に対応する特徴は、例えば、歩行運動中の両足が地面についた時の両足微動に対応する特徴である。両足微動に対応する特徴は、例えば、角速度が閾値以下、かつ、振動が閾値以上であることである。
以下の説明では、1歩分前に動く動作を「ステップ動作」と表記する場合がある。ステップ動作は、脚が地面から離れた時点から、脚がスイングした後、脚が着地した時点までの動作である。脚が地面から離れた時点が、ステップ動作の開始時刻である。脚が着地した時点が、ステップ動作の終了時刻である。動作群は、例えば、ステップ動作群である。
情報処理装置100は、例えば、対象期間において、患者の左脚の下腿の角速度のセンサデータ101において、その角速度が閾値を超えて極大値になったことを検知し、左脚のステップ動作があったことを検知する。情報処理装置100は、左脚のステップ動作があったことを検知すると、そのステップ動作があった動作点を記憶する。
情報処理装置100は、例えば、対象期間において、患者の右脚の下腿の角速度のセンサデータ102において、その角速度が閾値を超えて極大値になったことを検知し、右脚のステップ動作があったことを検知する。情報処理装置100は、右脚のステップ動作があったことを検知すると、そのステップ動作があった動作点を記憶する。これにより、情報処理装置100は、各脚のステップ動作を含むステップ動作群を検知することができ、患者の歩行期間を特定するために用いることができる。
(1−3)情報処理装置100は、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。複数の関係性は、例えば、左脚のステップ動作と右脚のステップ動作が交互であるという第1の関係性を含む。複数の関係性は、例えば、一方の脚のステップ動作が終了してから、他方の脚のステップ動作が開始するという第2の関係性を含む。
複数の関係性は、例えば、一方の脚のステップ動作の最中は、他方の脚は支持脚になり他方の脚の動作量は所定の微小値より小さいという第3の関係性を含む。動作量は、例えば、角速度である。複数の関係性は、例えば、一方の脚の異なるステップ動作の特徴量が類似するという第4の関係性を含む。複数の関係性の具体例は、図7〜図16を用いて後述する。これにより、情報処理装置100は、様々な観点から、患者によって歩行運動が行われた歩行期間としての尤もらしさを評価することができる。
(1−4)情報処理装置100は、それぞれの関係性について算出した評価値に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定する。情報処理装置100は、例えば、それぞれの関係性について算出した評価値が、判定基準になる閾値を超えた場合に、対象期間が患者によって歩行運動が行われた歩行期間であると判定する。
これにより、情報処理装置100は、様々な観点から歩行期間としての尤もらしさを評価するため、歩行期間を精度よく特定しやすくすることができる。情報処理装置100は、例えば、患者が歩行と類似する非歩行運動、例えば、自転車をこぐ運動を行っていて、第1の関係性が現れた場合でも、第2の関係性や第3の関係性について算出した評価値も用いるため、この運動を行った期間は歩行期間ではないと判定することができ、歩行期間を特定する精度の向上を図ることができる。一方、情報処理装置100は、例えば、患者が脚を引きずって歩いた場合や、極端に低速で歩いた場合においても、第1〜第10の関係性の評価値のいずれも高いため、これらの運動を行った期間は歩行期間であると判定することができ、歩行期間を特定する精度の向上を図ることができる。
さらに、情報処理装置100は、特定した歩行期間における所定の特徴量を算出し、その特徴量を出力することができ、医師などの医療関係者に、患者の歩き方を把握する際に用いられる客観的な指標を与えることができる。情報処理装置100は、例えば、特定した歩行期間の長さや、その歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値などを出力することができる。このため、情報処理装置100は、医師などの医療関係者が、患者の歩き方を把握しやすくし、患者に対する診断や治療、経過観察、または健康管理などを効率よく行うことができるようにすることができる。
また、情報処理装置100は、医師などの医療関係者に対し、例えば、病院外も含む患者の日常における歩行期間の長さや、歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値なども同様に出力することができる。このため、情報処理装置100は、医師などの医療関係者が、日常における患者の歩き方を把握したり、日常の患者の運動量を把握しやすくし、患者に対する診断や治療、経過観察、または健康管理などを詳細かつ正確に行うことができるようにすることができる。
ここでは、計測機が、患者の左脚と右脚とに装着される場合について説明したが、これに限らない。例えば、計測機が、患者の片脚と腰とに装着される場合があってもよい。また、例えば、計測機が、患者の左脚と右脚と腰とに装着される場合があってもよい。この場合、情報処理装置100は、患者の歩行期間を特定するために、各脚のステップ動作に対応する腰の体幹前進動作を検知することができる。腰の体幹前進動作は、ステップ動作の前後で体幹を動かす動作である。この場合、動作群は、腰の体幹前進動作を含んでもよい。また、患者の腕や頭に装着される計測機があってもよい。
ここで、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、患者の歩き方が異なり、具体的には、患者の各脚のステップ動作の周期が異なる場合や、足を地面に引きずったときにセンサデータにノイズ信号が含まれる場合がある。また、患者ごとに、患者の各脚のステップ動作の周期が異なる場合がある。このため、情報処理装置100は、(1−2)で動作群を検知するに当って、患者の部位の動きに関する計測情報に対して、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用することにより、さらに歩行期間を特定する精度の向上を図ることができる。
例えば、情報処理装置100は、患者の部位の動きに関する計測情報に対して、それぞれの帯域通過フィルタを適用した場合について、ステップ動作群を検知する。そして、情報処理装置100は、検知したステップ動作群ごとに、それぞれの関係性が現れた度合いを示す評価値を算出し、対象期間が歩行期間であるか否かを判定する。情報処理装置100が複数の帯域通過フィルタを用いる具体例は、図6〜図26を用いて後述する。
また、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、患者の歩き方が異なり、具体的には、患者の各脚のステップ動作の時間長が異なる場合がある。また、患者ごとに、患者の各脚のステップ動作の時間長が異なる場合がある。このため、情報処理装置100は、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定することにより、さらに歩行期間を特定する精度の向上を図ることができる。
例えば、情報処理装置100は、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出し、対象期間が歩行期間であるか否かを判定する。情報処理装置100が複数の時間長上限の候補を用いる具体例は、図6〜図26を用いて後述する。
また、対象期間は、患者によって歩行運動が行われた歩行期間と、患者によって歩行運動が行われていない非歩行期間とを、両方とも含んでいることが考えられる。このため、情報処理装置100は、それぞれの関係性について算出した評価値に基づいて、対象期間のいずれの部分期間が、歩行期間であるかを判定するようにしてもよい。情報処理装置100が対象期間のいずれの部分期間が歩行期間であるかを判定する具体例は、図27〜図33を用いて後述する。
(情報処理システム200の一例)
次に、図2を用いて、図1に示した情報処理装置100を適用した、情報処理システム200の一例について説明する。
図2は、情報処理システム200の一例を示す説明図である。図2において、情報処理システム200は、情報処理装置100と、1以上の計測機201とを含む。情報処理システム200において、情報処理装置100と計測機201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
情報処理装置100は、1以上の計測機201から、計測対象uとなる患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得し、患者によって歩行運動が行われた歩行期間を特定するコンピュータである。情報処理装置100は、例えば、サーバ、PC(Personal Computer)、ノートPC、タブレット端末、スマートフォン、ウェアラブル端末などである。
計測機201は、計測対象uとなる患者に装着されるコンピュータである。計測機201は、計測情報を生成し、情報処理装置100に送信する。計測機201は、例えば、図4に示すセンサ部を有し、そのセンサ部の計測値と、そのセンサ部の計測値が得られた計測時刻とを対応付けた時系列データを生成し、計測情報として情報処理装置100に送信する。計測機201は、例えば、センサ装置である。センサ装置は、具体的には、モーションセンサと呼ばれる装置である。計測機201は、例えば、スマートフォン、ウェアラブル端末などであってもよい。
ここでは、計測機201が、時系列データを作成する場合について説明したが、これに限らない。例えば、情報処理装置100が、計測機201から、計測機201のセンサ部の計測値と、そのセンサ部の計測値が得られた計測時刻とを対応付けた対応情報を順次受信し、その対応情報をまとめた時系列データを作成する場合があってもよい。ここでは、情報処理装置100と計測機201とが異なる装置である場合について説明したが、これに限らない。例えば、情報処理装置100が、計測機201と一体である場合があってもよい。
ここでは、計測機201が、自装置が装着された患者の部位の動きに関する計測情報を生成する場合について説明したが、これに限らない。例えば、計測機201が、患者の腰に装着されても、加速度センサの計測値を解析することによって、患者の左脚と右脚との動きに対応する加速度を取得可能であり、患者の左脚と右脚との動きに関する計測情報を生成する場合があってもよい。この場合、情報処理システム200は、患者ごとに1つの計測機201しか用いなくても実現することができる。
情報処理システム200は、さらに、表示装置を有する場合があってもよい。この場合、情報処理装置100は、歩行期間を特定した結果、歩行期間に関する所定の特徴量などを、表示装置を介して表示する。表示装置は、例えば、PC、ノートPC、タブレット端末、スマートフォンなどである。
情報処理システム200は、例えば、医療機関の医療システムに適用されたり、患者の状態を把握する見守りサービスを実現する場合に適用されたり、PHR(Personal Health Record)向けのサービスを実現する場合に適用されたりする。
(情報処理装置100のハードウェア構成例)
次に、図3を用いて、図2に示した情報処理システム200に含まれる情報処理装置100のハードウェア構成例について説明する。
図3は、情報処理装置100のハードウェア構成例を示すブロック図である。図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
記録媒体I/F304は、CPU301の制御にしたがって記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
情報処理装置100は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカー、タッチパネルなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
(計測機201のハードウェア構成例)
次に、図4を用いて、図2に示した情報処理システム200に含まれる計測機201のハードウェア構成例について説明する。
図4は、計測機201のハードウェア構成例を示すブロック図である。図4において、計測機201は、CPU401と、メモリ402と、ネットワークI/F403と、センサ部404と、タイマー部405とを有する。また、各構成部は、バス400によってそれぞれ接続される。
ここで、CPU401は、計測機201の全体の制御を司る。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
ネットワークI/F403は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F403は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F403は、例えば、Wi−Fi(登録商標)に対応する通信回路、Bluetooth(登録商標)に対応する通信回路などである。ネットワークI/F403は、例えば、3G(3rd Generation)に対応する通信回路であってもよい。
センサ部404は、計測機201の状態を計測する。センサ部404は、例えば、計測機201の位置、動き、および向きのうち少なくともいずれかを計測する。センサ部404は、具体的には、加速度センサ、角速度センサ、地磁気センサ、光センサ、振動センサなどの少なくともいずれかを有する。また、センサ部404は、GPS(Global Positioning Systems)受信機を有し、計測機201のGPS座標を検出してもよい。タイマー部405は、現在の時刻を計測する。
計測機201は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカー、タッチパネルなどを有してもよい。また、計測機201は、上述した構成部のほか、記録媒体I/Fや記録媒体を有してもよい。この記録媒体は、計測機201から着脱可能であってもよい。
(情報処理装置100の機能的構成例)
次に、図5を用いて、情報処理装置100の機能的構成例について説明する。
図5は、情報処理装置100の機能的構成例を示すブロック図である。情報処理装置100は、記憶部500と、取得部501と、検知部502と、評価部503と、判定部504と、算出部505と、出力部506とを含む。
記憶部500は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。取得部501〜出力部506は、制御部となる機能である。取得部501〜出力部506は、具体的には、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
記憶部500は、計測対象の複数の部位のそれぞれの部位の動きに関する計測情報を記憶する。計測対象は、例えば、患者である。複数の部位は、例えば、左脚と右脚とである。複数の部位は、腰を含んでもよい。記憶部500は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けて、時系列に並べたセンサデータを記憶する。
計測値は、例えば、矢状面の角速度、横断面の角速度、冠状面の角速度の少なくともいずれかを含む。計測値は、例えば、上下方向の加速度、左右方向の加速度、前後方向の加速度の少なくともいずれかを含んでもよい。以下の説明では、上下加速度、左右加速度、前後加速度のそれぞれを「上下加速度」、「左右加速度」、「前後加速度」と表記する場合がある。計測値は、例えば、振動の大きさ、位置などを含んでもよい。これにより、記憶部500は、センサデータを検知部502が参照可能にすることができる。なお、矢状面、横断面、冠状面の定義は図19に、上下方向、左右方向、前後方向の定義は図20に示す通りである。
記憶部500は、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを特定する情報を記憶する。記憶部500は、複数の帯域通過フィルタのそれぞれの帯域通過フィルタが抽出する周波数成分を示す第1パラメータを記憶する。これにより、記憶部500は、検知部502が第1パラメータを参照可能にし、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを利用可能にすることができる。
記憶部500は、ステップ動作の時間長上限に対する複数の時間長上限の候補のそれぞれの候補を記憶する。記憶部500は、複数の時間長上限の候補のそれぞれの候補を示す第2のパラメータを記憶する。第2パラメータは、ステップ動作の時間長上限を示す。これにより、記憶部500は、検知部502が第2のパラメータを参照可能にし、ステップ動作の時間長上限に、複数の時間長上限の候補のそれぞれの候補を設定可能にすることができる。
記憶部500は、複数の関係性のそれぞれの関係性について評価値を算出する算出式のパラメータ群を記憶する。複数の関係性は、それぞれ、患者によって歩行運動が行われた場合に動作間に生じる可能性が大きい関係性である。複数の関係性は、例えば、図7〜図16に後述する第1の関係性〜第10の関係性である。複数の関係性は、図7〜図16に後述する第1の関係性〜第10の関係性の少なくとも2つであってもよい。これにより、記憶部500は、評価部503が算出式のパラメータ群を参照可能にすることができる。
取得部501は、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得する。取得部501は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けて、時系列に並べたセンサデータを、計測機201から受信し、記憶部500に記憶する。取得部501は、例えば、計測機201のセンサ部の計測値と、その計測値が得られた計測時刻とを対応付けた対応情報を計測機201から順次受信し、その対応情報をまとめたセンサデータを作成して記憶部500に記憶してもよい。これにより、取得部501は、検知部502や評価部503などが患者のそれぞれの部位についてのセンサデータを参照可能なようにすることができる。
検知部502は、歩行期間であるか否かを判定する対象になる対象期間を設定する。検知部502は、所定の期間を、対象期間に設定する。検知部502は、利用者の操作入力に基づく期間を、対象期間に設定してもよい。検知部502は、取得した計測情報に基づいて、患者が静止状態ではない動作期間を特定し、対象期間に設定してもよい。
検知部502は、取得した計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。歩行運動動作の一部は、例えば、歩行運動の1歩である。歩行運動動作の一部は、例えば、歩行運動中の支持脚の静止、歩行運動中の両足が地面についた時の両足微動などであってもよい。歩行運動動作の一部に対応する特徴は、例えば、歩行運動の1歩に対応する特徴である。歩行運動の1歩に対応する特徴は、例えば、各脚の角速度が閾値を超えて極大値になったことである。
歩行運動動作の一部に対応する特徴は、例えば、歩行運動中の両足が地面についた時の両足微動に対応する特徴であってもよい。両足微動に対応する特徴は、例えば、角速度が閾値以下、かつ、振動が閾値以上であることである。動作は、例えば、ステップ動作である。左脚または右脚のステップ動作は、左脚または右脚が1歩分前に動く動作である。検知部502は、検知したステップ動作を、そのステップ動作に付与した通し番号と、そのステップ動作があった動作点とを用いて記憶する。
検知部502は、左脚についてのセンサデータにおいて、左脚の角速度が閾値を超えて極大値になったことを検知し、左脚の角速度が閾値を超えて極大値になったことを左脚のステップ動作として検知する。検知部502は、同様に、右脚のステップ動作を検知する。そして、検知部502は、左脚のステップ動作と、右脚のステップ動作とを含むステップ動作群を、動作群として検知する。これにより、検知部502は、歩行運動を判定する際に用いられる動作群を、評価部503が参照可能なようにすることができる。
検知部502は、さらに、腰についてのセンサデータに基づいて、ステップ動作の前後における腰の体幹前進動作を検知してもよい。腰の体幹前進動作は、左脚または右脚が1歩分前に動いたことに応じて体幹を動かす動作であり、ステップ動作の前後で発生する。検知部502は、評価値を算出するために腰の体幹前進動作を用いる場合には、ステップ動作群を検知した後、ステップ動作群のそれぞれのステップ動作に対応する腰の体幹前進動作を検知し、ステップ動作群と体幹前進動作群とを含む動作群を検知する。これにより、検知部502は、歩行運動を判定する際に用いられる動作群を、評価部503が参照可能なようにすることができる。
検知部502は、例えば、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。検知部502は、例えば、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動の1歩に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知する。検知部502は、具体的には、記憶部500の複数の第1パラメータのそれぞれの第1パラメータを用いて、センサデータに対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。これにより、検知部502は、患者ごとに歩き方が異なり、患者ごとに各脚のステップ動作の周期が異なる場合、および、センサデータにノイズ信号が含まれる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
評価部503は、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。評価値は、例えば、関係性が現れたか否かを示す2値の真理値であってもよい。評価値は、具体的には、1であれば、真であることを示し、関係性が現れたことを示す。これにより、評価部503は、対象期間の歩行期間らしさを示す指標を取得することができる。
評価部503は、検知部502が複数の動作群を検知した場合、動作群ごとに、それぞれの関係性が表れた度合いを示す評価値を算出してもよい。これにより、評価部503は、患者ごとの歩き方の違いに対応し、対象期間の歩行期間らしさを示す指標を取得することができる。
評価部503は、動作群において、それぞれのステップ動作の時間長上限を複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出してもよい。評価部503は、例えば、記憶部500の複数の第2パラメータのそれぞれの第2パラメータを用いて、ステップ動作の時間長上限を、複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出する。これにより、評価部503は、患者ごとの歩き方の違いに対応し、対象期間の歩行期間らしさを示す指標を取得することができる。
判定部504は、それぞれの関係性について算出した評価値に基づいて、対象期間が歩行期間であるか否かを判定する。判定部504は、例えば、それぞれの関係性について算出した評価値が閾値以上である場合に、対象期間が歩行期間であると判定する。これにより、判定部504は、歩行期間を特定する精度の向上を図ることができる。
判定部504は、例えば、評価値を用いた論理演算の結果に基づいて、対象期間が歩行期間であるか否かを判定してもよい。判定部504は、具体的には、評価値が2値の真理値であれば、論理積が1である場合に対象期間が歩行期間であると判定する。これにより、判定部504は、判定にかかる処理量の低減化を図ることができる。また、評価値が取り得る値の範囲が極めて限定されるため、判定部504は、後述する状態遷移モデルの観測確率パラメータを人手で設定しやすくすることもできる。
判定部504は、例えば、それぞれの関係性について算出した評価値に基づいて、対象期間のうち歩行期間の候補期間を特定し、特定した候補期間の長さに応じた歩行期間としての尤度を算出し、尤度に基づいて、候補期間が歩行期間であるか否かを判定してもよい。これにより、判定部504は、対象期間に歩行期間と非歩行期間とが含まれる場合であっても、歩行期間を特定する精度の向上を図ることができる。
判定部504は、例えば、評価値を用いた論理演算の結果に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定してもよい。これにより、判定部504は、判定にかかる処理量の低減化を図ることができる。
算出部505は、判定部504が歩行期間であると判定した対象期間における所定の特徴量を算出する。所定の特徴量は、歩行期間に関する特徴量や歩行期間における患者の動きに関する特徴量などである。所定の特徴量は、例えば、歩行期間の長さや、歩行期間における患者の歩数、歩幅の平均値、移動速度の平均値などである。
出力部506は、算出部505が算出した所定の特徴量を出力する。出力部506は、歩行期間における、各ステップ動作の開始時刻および終了時刻などの所定の特徴量を出力してもよい。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。
(情報処理装置100の動作の流れの一例)
次に、図6〜図17を用いて、情報処理装置100の動作の流れの一例について説明する。
図6は、情報処理装置100の動作の流れの一例を示す説明図である。図6において、情報処理装置100は、患者の腰の角速度や加速度を時系列に並べたセンサデータ、患者の左脚の角速度や加速度を時系列に並べたセンサデータ、患者の右脚の角速度や加速度を時系列に並べたセンサデータなどを、計測機201から受信する。
以下の説明では、加速度を時系列に並べたセンサデータを「加速度データ」と表記し、角速度を時系列に並べたセンサデータを「ジャイロデータ」と表記する場合がある。そして、情報処理装置100は、受信したセンサデータに基づいて、患者が静止状態ではない動作期間を特定し、歩行期間であるか否かを判定する対象になる対象期間に設定する。
情報処理装置100は、例えば、センサデータとして、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータを受信する。情報処理装置100は、例えば、センサデータとして、上下方向の加速度データ、左右方向の加速度データ、前後方向の加速度データを受信する。
次に、情報処理装置100は、対象期間におけるセンサデータに対して、複数の第1パラメータを用いて、検知器になる複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。第1パラメータは、減衰する周波数帯域と通過する周波数帯域とを特定する。そして、情報処理装置100は、それぞれの帯域通過フィルタを適用した場合について、患者の腰と左脚と右脚とのステップ動作を含むステップ動作群を検知する。
帯域通過フィルタを適用し、ステップ動作を検知するために用いられるジャイロデータは、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータのいずれか一つであってよい。ステップ動作を検知するために用いなかったジャイロデータも、評価値を算出するために用いられる。
また、帯域通過フィルタを適用し、ステップ動作を検知するために用いられるジャイロデータは、矢状面のジャイロデータ、横断面のジャイロデータ、冠状面のジャイロデータを統合したジャイロデータであってもよい。
次に、情報処理装置100は、検知したステップ動作群ごとに、第2パラメータを用いて、ステップ動作の時間長上限を設定し、各ステップ動作の開始時刻および終了時刻を特定し、動作間の複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出する。この場合、複数の関係性は、図7〜図12に後述する第1の関係性〜第6の関係性である。そして、情報処理装置100は、評価値に基づいて、対象期間が歩行期間であるか否かを判定する。
また、情報処理装置100は、さらに、検知したステップ動作群ごとに、腰のセンサデータに基づいて、それぞれのステップ動作に対応する体幹前進動作を検知してもよい。そして、情報処理装置100は、検知したステップ動作群と体幹前進動作群とを含む動作群ごとに、動作間の複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出し、その評価値に基づいて、対象期間が歩行期間であるか否かを判定する。この場合、複数の関係性は、図7〜図16に後述する第1の関係性〜第10の関係性である。
次に、図7〜図16を用いて、情報処理装置100が用いる、動作間の第1の関係性〜第10の関係性の一例について説明する。まず、図7を用いて、動作間の第1の関係性の一例について説明する。
図7は、動作間の第1の関係性の一例を示す説明図である。ここで、患者が歩く際には、左脚のステップ動作と、右脚のステップ動作とは1つずつ交互に発生するという性質がある。図7の例では、左脚のステップ動作711〜714と、右脚のステップ動作721〜724とは1つずつ交互に発生している。
そこで、情報処理装置100は、第1の関係性として、患者の各脚のステップ動作が交互に発生するという「左右交互性」を用いる。情報処理装置100は、第1の関係性の評価値を算出する算出式として、下記式(1)を用いる。
ここで、xi (1)は、第1の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。Siは、i番目のステップ動作が左脚によるものか、または右脚によるものか、を表す変数である。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(1)において[…]の中身の条件は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが異なることを示す。
このため、上記式(1)は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが異なるとxi (1)=1になる。上記式(1)は、i番目のステップ動作の脚と、そのステップ動作の直後のi+1番目のステップ動作の脚とが同一であるとxi (1)=0になる。また、情報処理装置100は、上記式(1)の代わりに、下記式(2)を用いる場合があってもよい。
ここで、xi (1)は、第1の関係性の評価値である。Siは、i番目のステップ動作が左脚によるものか、または右脚によるものか、を表す変数である。次に、図8の説明に移行し、動作間の第2の関係性の一例について説明する。
図8は、動作間の第2の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚が着地してから所定時間内に、患者の他方の脚が地面を離れるという性質がある。図8の例では、左脚のステップ動作811が終了して左脚が着地してから、所定時間801内に、右脚のステップ動作821が開始して右脚が地面を離れている。同様に、右脚のステップ動作821が終了して右脚が着地してから、所定時間802内に、左脚のステップ動作812が開始して左脚が地面を離れている。
そこで、情報処理装置100は、第2の関係性として、患者の一方の脚のステップ動作が終了してから所定時間内に、患者の他方の脚のステップ動作が開始するという「左右順序性」を用いる。情報処理装置100は、第2の関係性の評価値を算出する算出式として、下記式(3)を用いる。
ここで、xi (2)は、第2の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(3)において[…]の中身の条件は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻があることを示す。
このため、上記式(3)は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻があるとxi (2)=1になる。上記式(3)は、i番目のステップ動作の終了時刻の後に、そのステップ動作の直後のi+1番目のステップ動作の開始時刻がなければxi (2)=0になる。
図9は、動作間の第3の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚がスイングしている最中は、患者の他方の脚は地面に着いたまま静止状態で患者の体重を支持しているため、その脚の角速度は小さいという性質がある。図9の例では、左脚のステップ動作の最中であり左脚がスイングしている最中は、右脚の角速度901は閾値以下である。左脚の角速度902や右脚の角速度903も同様である。
そこで、情報処理装置100は、第3の関係性として、患者の一方の脚のステップ動作の最中は、患者の他方の脚のステップ動作の角速度が所定範囲内であるという「左右支持性」を用いる。情報処理装置100は、第3の関係性の評価値を算出する算出式として、下記式(4)を用いる。
ここで、xi (3)は、第3の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。ωinvは、i番目のステップ動作の脚ではなく、ステップ動作していない脚のセンサデータであり、ジャイロデータを表す。tは、時刻を表す変数である。α、βは、脚の静止状態を表す角速度の範囲を表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(4)において[…]の中身の条件は、i番目のステップ動作の脚ではない脚の角速度の最大値が所定範囲内であり、その脚が静止状態であることを示す。
このため、上記式(4)は、i番目のステップ動作の脚ではない脚の角速度のT(TC)〜T(IC)の最大値が所定範囲α〜β内であり、その脚が静止状態であるとxi (3)=1になる。上記式(4)は、i番目のステップ動作の脚ではない脚の角速度のT(TC)〜T(IC)の最大値が所定範囲α〜β内ではなく、その脚が静止状態ではないとxi (3)=0になる。
図10は、動作間の第4の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の一方の脚のステップ動作の角速度は一定である傾向があるという性質がある。図10の例では、左脚のステップ動作の角速度のピーク振幅1001〜1004は一定である。また、ピーク振幅のほか、ピーク時間が一定である場合がある。ピーク時間は、ステップ動作の前後で、角速度が極小値になった時点から、極大値になった時点を挟んで極小値になった時点までの時間である。
そこで、情報処理装置100は、第4の関係性として、患者の一方の脚の複数のステップ動作の特徴量が類似するという「片側類似性」を用いる。情報処理装置100は、第4の関係性の評価値を算出する算出式として、下記式(5)と下記式(6)とを用いる。
ここで、xi (4A)は、第4の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。pは、ステップ動作のピーク振幅を表す。pの上部にバーを付した記号は、ステップ動作群における、ステップ動作のピーク振幅の平均を表す。ωは、i番目のステップ動作の脚のセンサデータであり、ジャイロデータを表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。
このため、上記式(5)は、患者の一方の脚のi番目のステップ動作のピーク振幅と、その脚の他のステップ動作のピーク振幅とが類似するとxi (4A)は小さい値をとる。上記式(5)は、患者の一方の脚のi番目のステップ動作のピーク振幅と、その脚の他のステップ動作のピーク振幅とが類似しないとxi (4A)は大きい値をとる。
ここで、xi (4B)は、第4の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。qは、ステップ動作のピーク時間を表す。qの上部にバーを付した記号は、ステップ動作群における、ステップ動作のピーク時間の平均値を表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。
このため、上記式(6)は、患者の一方の脚のi番目のステップ動作のピーク時間と、その脚の他のステップ動作のピーク時間とが類似するとxi (4B)は小さい値をとる。上記式(6)は、患者の一方の脚のi番目のステップ動作のピーク時間と、その脚の他のステップ動作のピーク時間とが類似しないとxi (4B)は大きい値をとる。
また、情報処理装置100は、ピーク振幅pとして、ステップ動作の開始時刻の角速度、または、ステップ動作の終了時刻の角速度を用いてもよい。情報処理装置100は、ピーク時間qとして、ステップ動作の開始時刻から角速度が極大になった時点までの時間、または、ステップ動作の角速度が極大になった時点から終了時刻までの時間を用いてもよい。また、情報処理装置100は、ピーク時間qとして、ステップ動作の終了時刻から次のステップ動作の開始時刻までの時間を用いてもよい。
図11は、動作間の第5の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の左右の脚のステップ動作の特徴量の比率は一定である傾向があるという性質がある。図11の例では、左脚のステップ動作の角速度のピーク振幅1111〜1114と、右脚のステップ動作の角速度のピーク振幅1121〜1124との比率が一定である。また、ピーク振幅のほかピーク時間の比率が一定である場合がある。
そこで、情報処理装置100は、第5の関係性として、患者の各脚のステップ動作の特徴量が類似するという「両側類似性」を用いる。情報処理装置100は、第5の関係性の評価値を算出する算出式として、下記式(7)と下記式(8)とを用いる。
ここで、xi (5A)は、第5の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。pは、ステップ動作のピーク振幅を表す。riは、左右の脚の連続するステップ動作のピーク振幅の比率を表す。riの上部にバーを付した記号は、ステップ動作群における、左右の脚のステップ動作のピーク振幅の比率の平均値を表す。fL(a,b)は、aとbのうち、左脚に関する特徴量、例えば、左脚のピーク振幅を選択する関数である。fR(a,b)は、aとbのうち、右脚に関する特徴量、例えば、右脚のピーク振幅を選択する関数である。
このため、上記式(7)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作とのピーク振幅の比率と、左右の脚のステップ動作のピーク振幅の比率の平均値とが類似するとxi (5A)は小さい値をとる。上記式(7)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作とのピーク振幅の比率と、左右の脚のステップ動作のピーク振幅の比率の平均値とが類似しないとxi (5A)は大きい値をとる。
ここで、xi (5B)は、第5の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。qは、ステップ動作のピーク時間を表す。siは、左右の脚のステップ動作のピーク時間の比率を表す。riの上部にバーを付した記号は、ステップ動作群における、左右の脚のステップ動作のピーク時間の比率の平均値を表す。fL(a,b)は、aとbのうち、左脚に関する特徴量、例えば、左脚のピーク時間を選択する関数である。fR(a,b)は、aとbのうち、右脚に関する特徴量、例えば、右脚のピーク時間を選択する関数である。
このため、上記式(8)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作との長さの比率と、左右の脚のステップ動作のピーク時間の比率の平均値とが類似するとxi (5B)は小さい値をとる。上記式(8)は、左右の脚のステップ動作であるi番目のステップ動作とi+1番目のステップ動作との長さの比率と、左右の脚のステップ動作のピーク時間の比率の平均値とが類似しないとxi (5B)は大きい値をとる。
図12は、動作間の第6の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の左脚のステップ動作の回転方向と、患者の右脚のステップ動作の回転方向とが一致するという性質がある。図12の例では、各脚の横断面のジャイロデータを示す。また、図中の左右方向への回転角とは、横断面の角速度を時間方向に積分することで算出された値である。図12の例では、右脚における左右方向への回転角1201は右回転を示し、同様に、左脚における左右方向への回転角1202は右回転を示しており、回転方向が一致する。
そこで、情報処理装置100は、第6の関係性として、患者の各脚のステップ動作の回転方向が同一であるという「左右回転性」を用いる。情報処理装置100は、第6の関係性の評価値を算出する算出式として、下記式(9)を用いる。
ここで、xi (6)は、第6の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。Riは、i番目のステップ動作の回転量を表す。回転量は、例えば、角速度の積分値である。sgn(…)は符号関数であり、(…)の中身が0以上なら「1」、(…)の中身が0以下なら「−1」を返す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(9)において[…]の中身の条件は、i番目のステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一であることを示す。
このため、上記式(9)は、i番目のステップ動作の回転量が閾値を超え、かつ、そのステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一であるとxi (6)=1になる。上記式(9)は、i番目のステップ動作の回転方向が、直後のi+1番目のステップ動作または直前のi−1番目のステップ動作の回転方向と同一ではないとxi (6)=0になる。
図13は、動作間の第7の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚が着地する前後に、患者の腰にも大きな上下加速度が生じるという性質がある。図13の例では、右脚のステップ動作1301,1302の直後に、体幹前進動作として腰の上下動作1311,1313が生じている。
このほか、患者の各脚が地面を離れる前後に、患者の腰にも大きな上下加速度が生じるという性質がある。図13の例では、右脚のステップ動作1302の直前に、体幹前進動作として腰の上下動作1312が生じている。
そこで、情報処理装置100は、第7の関係性として、患者の各脚のステップ動作が終了する前後の所定時間の範囲に、患者の体幹の上下方向のステップ動作が発生するという「上下交互性」を用いる。情報処理装置100は、第7の関係性の評価値を算出する算出式として、下記式(10)を用いる。
ここで、xi (7)は、第7の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。acczは、患者の腰の上下加速度データを表す。γは、閾値である。T(IC)は、ステップ動作の終了時刻を表す。τは、終了時刻の前後所定範囲を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(10)において[…]の中身の条件は、i番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上であることを示す。
このため、上記式(10)は、患者の脚のi番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上であるとxi (7)=1になる。上記式(10)は、患者の脚のi番目のステップ動作の終了時刻の付近で、その患者の腰の上下加速度の変化が閾値以上ではないとxi (7)=0になる。
図14は、動作間の第8の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚が進んだ場合、同様に患者の腰も進むという性質がある。図14の例では、右脚のステップ動作1401,1402の直後、体幹前進動作として腰の前後動作1411,1412が発生し、腰の前後加速度の積分値が閾値以上になっている。
そこで、情報処理装置100は、第8の関係性として、患者の各脚のステップ動作の最中は、患者の体幹の前進方向のステップ動作が発生するという「上下並進性」を用いる。情報処理装置100は、第8の関係性の評価値を算出する算出式として、下記式(11)を用いる。
ここで、xi (8)は、第8の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。accXは、患者の腰の前後加速度データを表す。TsとTeとは、腰が前に進んでいる期間を決定する時間パラメータである。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(11)において[…]の中身の条件は、患者の両脚のステップ動作のうちi番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きいことを示す。
このため、上記式(11)は、i番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きいとxi (8)=1になる。上記式(11)は、i番目のステップ動作の終了時刻のTs前〜Te後までの範囲で、患者の腰の前後加速度の積分値が閾値より大きくないとxi (8)=0になる。
図15は、動作間の第9の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の各脚の回転方向と、患者の腰の回転方向とは一致するという性質がある。図15の例では、右脚と腰との横断面のジャイロデータを示す。図15の例では、右脚のステップ動作1501における回転方向と、腰の体幹前進動作1511における回転方向とが一致する。
そこで、情報処理装置100は、第9の関係性として、患者の各脚のステップ動作の回転方向と、患者の各脚のステップ動作が終了した後の患者の体幹のステップ動作の回転方向が同一であるという「上下回転性」を用いる。情報処理装置100は、第9の関係性の評価値を算出する算出式として、下記式(12)を用いる。
ここで、xi (9)は、第9の関係性の評価値である。Ri legは、右脚または左脚の回転量を表す。Ri waistは、腰の回転量を表す。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。ωY waistは、腰の横断面のジャイロデータを表す。ωY legは、右脚または左脚の横断面のジャイロデータを表す。T(TC)、T(IC)は、それぞれ、ステップ動作の開始時刻と終了時刻を表す。TsとTeは、上半身が前進するタイミングを決定する時間パラメータである。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(12)において[…]の中身の条件は、i番目のステップ動作の腰の回転方向と足の回転方向が一致することを示す。
このため、上記式(12)は、i番目のステップ動作の腰の回転方向と足の回転方向が一致するとxi (9)=1になる。上記式(12)は、i番目のステップ動作の腰の回転方向と足の回転方向が一致しないとxi (9)=0になる。
図16は、動作間の第10の関係性の一例を示す説明図である。ここで、患者が歩く際には、患者の脚の移動量と、患者の腰の移動量とが類似するという性質がある。図16の例では、右脚のステップ動作1601,1602の移動量と、腰の体幹前進動作1611,1612の移動量とが類似する。
そこで、情報処理装置100は、第10の関係性として、患者の各脚のステップ動作が示す移動量と、患者の体幹のステップ動作が示す移動量とが類似するという「上下移動性」を用いる。情報処理装置100は、第10の関係性の評価値を算出する算出式として、下記式(13)を用いる。
ここで、xi (10)は、第10の関係性の評価値である。iは、ステップ動作群のうち、患者の両脚のステップ動作に対して出現順に割り当てられた番号であり、自然数である。vは、ステップ動作における足の移動量を表す。uは、体幹前進動作における腰の移動量を表す。ηminとηmaxとは、患者の脚の移動量と患者の腰の移動量の比率の範囲を表す定数である。I[…]は、指示関数であり、[…]の中身の条件が真であると1を返し、偽であると0を返す。上記式(13)において[…]の中身の条件は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲内であることを示す。
このため、上記式(13)は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲内であるとxi (10)=1になる。上記式(13)は、i番目のステップ動作の患者の脚の移動量と、患者の腰の移動量との比率が、閾値範囲外であるとxi (10)=0になる。
図17は、情報処理装置100が歩行期間であるか否かを判定する一例を示す説明図である。図17において、情報処理装置100は、ステップ動作群ごとに、上記式(1)〜上記式(13)などを用いて算出した第1の関係性〜第10の関係性の平均値などを、第1の関係性〜第10の関係性の確信度として算出する。情報処理装置100は、算出した確信度を乗算し、対象期間の歩行期間らしさを示す総評価値を算出する。情報処理装置100は、確信度や総評価値を、結果管理テーブル1700を用いて記憶する。
次に、情報処理装置100は、それぞれのステップ動作群について算出した総評価値のうち最大値を特定する。そして、情報処理装置100は、特定した最大値が閾値以上であるか否かを判定する。ここで、情報処理装置100は、最大値が閾値以上であれば、対象期間を歩行期間であると判定する。一方で、情報処理装置100は、最大値が閾値未満であれば、対象期間を歩行期間ではないと判定する。情報処理装置100は、判定した結果を、結果管理テーブル1700を用いて記憶する。
情報処理装置100は、対象期間を歩行期間であると判定した場合、最大値が算出されたステップ動作群を、最も患者の歩き方を反映しているステップ動作群として用いてもよい。そして、情報処理装置100は、最も患者の歩き方を反映しているステップ動作群を用いて、対象期間における所定の特徴量を算出して出力する。
(情報処理装置100が歩行期間を特定する第1の具体例)
次に、図18〜図26を用いて、情報処理装置100が歩行期間を特定する第1の具体例について説明する。
図18〜図26は、情報処理装置100が歩行期間を特定する第1の具体例を示す説明図である。図18において、患者は、右脚と左脚と腰とに計測機201を装着する。計測機201は、患者の装着した部位において角速度や加速度を計測し、計測値と計測時刻とを対応付けてセンサデータ1801,1802などを生成する。情報処理装置100は、計測機201が生成したセンサデータ1801,1802などを受信する。次に、図19および図20の説明に移行し、計測機201が計測する内容について説明する。
図19に示すように、計測機201は、角速度を計測する場合、例えば、矢状面における角速度、横断面における角速度、冠状面における角速度を計測する。これにより、計測機201は、例えば、センサデータとして、矢状面における角速度を時系列に並べたジャイロデータ、横断面における角速度を時系列に並べたジャイロデータ、冠状面における角速度を時系列に並べたジャイロデータを生成する。
図20に示すように、計測機201は、加速度を計測する場合、例えば、上下加速度、左右加速度、前後加速度を計測する。これにより、計測機201は、例えば、センサデータとして、上下加速度を時系列に並べた加速度データ、左右加速度を時系列に並べた加速度データ、前後加速度を時系列に並べた加速度データを生成する。次に、図21の説明に移行する。
図21において、情報処理装置100は、受信したジャイロデータや加速度データを用いて、歩行期間であるか否かを判定する対象になる対象期間として、患者が静止状態ではない非静止期間を特定する。
情報処理装置100は対象期間の特定に当って、例えば、左脚のジャイロデータと右脚のジャイロデータとに対して、それぞれ同じ時点から窓幅Wをもつ窓をずらし幅(W/2)でずらしていく。窓は、所定の長さの期間を示す。情報処理装置100は、窓をずらすごとに、左脚のジャイロデータと右脚のジャイロデータとのうち、その窓に対応するセグメントデータを特定する。
情報処理装置100は対象期間の特定に当って、窓をずらすごとに、その窓に対応するセグメントデータにおいて、角速度の平均値Mgと分散Vgとが、それぞれ所定値TH_MgとTH_Vgとを超えるか否かを判定する。情報処理装置100は、ある窓に対応するセグメントデータについて超えると判定した場合に、その窓が示す期間を、患者が静止状態ではない非静止期間として特定する。
情報処理装置100は対象期間の特定に当って、特定した非静止期間のうち、連続する2以上の非静止期間があれば、その2以上の非静止期間を統合して、1つの非静止期間として特定する。情報処理装置100は、特定した非静止期間を、対象期間として設定する。次に、図22Aおよび図22Bの説明に移行する。
図22Aにおいて、情報処理装置100は、対象期間におけるセンサデータに対して、N個の第1パラメータを用いて、複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用する。第1パラメータは、帯域通過フィルタが通過させる周波数帯域を定義し、例えば、どんな周波数成分を減衰するかを示すカットオフ周波数によって表現される。これにより、情報処理装置100は、患者ごとに歩き方が異なり、患者ごとに各脚のステップ動作の周期が異なる場合、および、センサデータにノイズ信号が含まれる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
次に、情報処理装置100は、それぞれの帯域通過フィルタを適用した場合について、患者の各脚のステップ動作を含むステップ動作群を検知する。情報処理装置100は、例えば、それぞれの帯域通過フィルタを適用した場合について、左脚の角速度が閾値を超えて極大値になったことを検知し、左脚のステップ動作を検知する。また、情報処理装置100は、例えば、それぞれの帯域通過フィルタを適用した場合について、右脚の角速度が閾値を超えて極大値になったことを検知し、右脚のステップ動作を検知する。次に、図22Bの説明に移行し、情報処理装置100がステップ動作を検知しやすいようにする一例について説明する。
図22Bにおいて、情報処理装置100は、第3パラメータとして、極大値を検知する際に用いる閾値に設定可能な、複数の閾値を用意している。情報処理装置100は、センサデータまたはセンサデータに帯域フィルタを適用した結果に対して、極大値を検知するにあたって、複数の閾値のぞれぞれの閾値を適用することにより、複数のステップ動作群を検知してもよい。これにより、情報処理装置100は、患者ごとに歩き方が異なり、患者ごとにステップ動作のスイングの速さが異なる場合に対応し、各脚のステップ動作を検知しやすいようにすることができる。
情報処理装置100は、各脚のステップ動作の動作点として、各脚の角速度が極大値になった時点を記憶し、各脚のステップ動作を動作点によって記憶しておく。情報処理装置100は、検知した各脚のステップ動作を含むステップ動作群を検知する。また、情報処理装置100は、各脚のステップ動作に対応する腰の体幹前進動作を検知しておいてもよい。次に、図23の説明に移行する。
図23において、情報処理装置100は、検知したステップ動作群ごとに、M個の第2パラメータを用いて、ステップ動作の時間長上限を設定し、複数の関係性の評価値を算出するために用いられる、ステップ動作の開始時刻と終了時刻とを特定する。この開始時刻は、例えば、踵または爪先または足裏が地面から離れたタイミングであり、終了時刻は、例えば、踵または爪先または足裏が地面に着地したタイミングである。第2パラメータは、ステップ動作の時間長上限を示し、動作点よりマージンタイム分前の時点から、動作点よりマージンタイム分後の時点までの長さを示す。
情報処理装置100は、例えば、ステップ動作の動作点から、第2パラメータ分前までの間で、角速度が最小値になった時点を、開始時刻として特定する。情報処理装置100は、例えば、ステップ動作の動作点から、第2パラメータ分後までの間で、角速度が最小値になった時点を、終了時刻として特定する。次に、図24の説明に移行する。
図24において、情報処理装置100は、ステップ動作の検知においてN個の帯域通過フィルタを用い、ステップ動作の開始時刻と終了時刻の特定においてM個のステップ動作の時間長上限を用いることにより、N×M個のステップ動作群を検知している。情報処理装置100は、それぞれのステップ動作群について、そのステップ動作群に含まれる各脚のステップ動作について、出現順に動作番号を割り当てる。
そして、情報処理装置100は、各脚のステップ動作について、動作番号と、動作点と、開始時刻と、終了時刻と、どちらの脚のステップ動作かを対応付けて、脚動作管理テーブル2400を用いて記憶する。情報処理装置100は、各脚のステップ動作に対応する腰の体幹前進動作について、体幹前進動作管理テーブルを用いて記憶してもよい。次に、図25の説明に移行する。
図25において、情報処理装置100は、ステップ動作群に基づいて、ステップ動作ごとに、第1の関係性〜第10の関係性の評価値を算出する。情報処理装置100は、ステップ動作ごとに算出した第1の関係性〜第10の関係性の評価値を、そのステップ動作の動作番号に対応付けて、評価値管理テーブル2500を用いて記憶する。次に、図26の説明に移行する。
図26において、情報処理装置100は、第1の関係性〜第10の関係性の評価値を、統一した基準で算出し直す。例えば、第2の関係性の評価値は、2値であり、1であれば歩行運動らしく、0であれば歩行運動らしくないことを示す。一方で、第3の関係性の評価値は、連続値であり、0に近いほど歩行運動らしく、値が大きいほど歩行運動らしくないことを示す。
このため、情報処理装置100は、第3の関係性の評価値を、2値であり、1であれば歩行運動らしく、0であれば歩行運動らしくないことを示す評価値に変換する。情報処理装置100は、例えば、第3の関係性の評価値が閾値未満であれば評価値を1に変換し、閾値以上であれば評価値を0に変換する。
そして、情報処理装置100は、第1の関係性〜第10の関係性の評価値を足し合わせ、総評価値を算出する。情報処理装置100は、算出した総評価値が閾値以上であれば、対象期間が歩行期間であると判定する。これにより、情報処理装置100は、歩行期間を特定する精度の向上を図ることができる。
(情報処理装置100が歩行期間を特定する第2の具体例)
次に、図27〜図33を用いて、情報処理装置100が歩行期間を特定する第2の具体例について説明する。
図27〜図33は、情報処理装置100が歩行期間を特定する第2の具体例を示す説明図である。ここで、対象期間は、患者によって歩行運動が行われた歩行期間と、患者によって歩行運動が行われていない非歩行期間とを、両方とも含んでいることが考えられる。このため、情報処理装置100は、第1の関係性〜第10の関係性について算出した評価値に基づいて、対象期間のいずれの部分期間が、歩行期間であるかを判定する。
図27に示すように、情報処理装置100は、歩行期間と非歩行期間を区別するために、それぞれのステップ動作の状態を「歩行」または「非歩行」とラベリングする隠れマルコフモデル(HMM:Hidden Markov Model)を適用する。
HMMは、観測される特徴量が、隠れ状態の状態固有の確率分布に基づいて生成されること、および、前の隠れ状態と、次に遷移する隠れ状態との間に依存関係があることを仮定した状態遷移モデルである。隠れ状態は、直接観測しない状態であり、例えば、ステップ動作の状態であり、歩行状態または非歩行状態である。
情報処理装置100は、例えば、第1の関係性〜第10の関係性について算出した評価値に基づいて、それぞれのステップ動作の状態を「歩行」または「非歩行」とラベリングする。そして、情報処理装置100は、対象期間のうち、「歩行」とラベリングされたステップ動作に対応する部分期間に対して、HMMの尤度を算出し、歩行期間としての尤度とする。
図27の例では、ステップ動作の隠れ状態として、単純に「歩行」と「非歩行」との状態だけでなく、歩行のダイナミクスをより正確に捉えるため、歩行状態を「初期歩行状態」、「中間歩行状態」、「末期歩行状態」の3つに細分化した状態が仮定されている。さらに、患者の歩き方が左脚と右脚で異なる場合に対応して、これら3つの状態を、右脚と左脚で区別し、さらに歩行状態が細分化される。なお、中間歩行状態は、複数あってもよい。
これにより、情報処理装置100は、「歩行中」の歩行状態に比べて半歩しか進まない傾向がある「初期歩行状態(例えば、1歩目)」と「末期歩行状態(例えば、最終歩)」との歩行状態を区別することが可能になり、したがって「歩行」と「非歩行」の境界を正確に検出することが可能になる。また、情報処理装置100は、患者が片足を怪我している場合などに対応するように、左脚と右脚との歩行状態を区別するようにする。次に、図28の説明に移行する。
図28において、情報処理装置100は、第1の関係性〜第10の関係性について算出した評価値系列Xに対して、上記7つの状態の中から尤もらしい状態を割り当てる。情報処理装置100は、例えば、下記式(14)で表現される、評価値系列Xと動作状態系列Yとについての同時確率p(X,Y)が最大になるように、Viterbiアルゴリズムを用いて、動作状態系列Yを求める。
ここで、p(xi|yi)は、観測確率を表す。観測確率は、例えば、図30を用いて後述する。p(yi|yi-1)は、状態遷移確率を表す。状態遷移確率は、例えば、図29を用いて後述する。次に、図29の説明に移行する。
図29に示すように、状態遷移確率は、表2900によって表現される。ここで、状態は、右脚の歩行状態と左脚の歩行状態とに、交互に遷移する性質がある。このため、状態遷移確率p(yi|yi-1)について、歩行状態を細分化した、左脚に関する歩行状態と右脚に関する歩行状態とは、交互に発生するように状態遷移確率が設定される。例えば、前の状態がS3であれば、次に遷移する状態はS4またはS6のいずれかになるように、状態遷移確率が設定される。
また、歩行開始時の1歩目の状態S1の後は歩行中の状態S4に遷移し、歩行開始時の1歩目の状態S2の後は歩行中の状態S3に遷移するように、状態遷移確率が設定される。また、最終歩の状態S5において歩行終了した後は非歩行の状態S7に遷移し、最終歩の状態S6において歩行終了した後は非歩行の状態S7に遷移するように、状態遷移確率が設定される。次に、図30の説明に移行する。
図30に示すように、観測確率は、表3000,3010によって表現される。観測確率p(xi|yi)については、歩行状態と非歩行状態とのそれぞれの状態において、それぞれの評価値がとる値が特定可能であるため、ヒューリスティックに確率分布が設定される。確率分布の形状は、無相関な多次元正規分布を用いて、正規分布の平均パラメータと分散パラメータを表3000,3010のように設定して、決定される。
例えば、歩行状態S1,S2,S3,S4,S5,S6においては、評価値x(2)、評価値x(3)の平均パラメータが1、評価値x(4A)、評価値x(4B)の平均パラメータが0と設定される。一方で、非歩行状態s7においては、評価値x(2)、評価値x(3)の平均パラメータが0、評価値x(4A)、評価値x(4B)の平均パラメータが1と設定される。
また、右脚のステップ動作に対応する歩行状態S1、S3、S5では、評価値x(1)の平均パラメータが1、左脚のステップ動作に対応する歩行状態S2、S4、S6では、評価値x(1)の平均パラメータが0と設定される。歩行開始時の1歩目に対応する状態S1、S2および歩行終了時の最終歩に対応する状態S5、S6では、角速度が小さくなりやすいため、歩行中の状態S3、S4と比べて、各分散パラメータが大きく設定される。次に、図31の説明に移行する。
図31において、情報処理装置100は、状態観測確率と観測確率を用いて、Viterbiアルゴリズムを適用することにより動作状態系列を特定する。情報処理装置100は、例えば、動作状態系列を特定し、動作番号にさらに動作状態を対応付けて、評価値管理テーブル3100を用いて記憶する。
情報処理装置100は、1歩目の歩行状態から最終歩の歩行状態までの期間を特定する。情報処理装置100は、特定した期間が、所定の歩数より多い歩数に対応する期間であれば、特定した期間を、歩行期間の候補期間として特定する。所定の歩数は、例えば、4歩である。
図31の例では、情報処理装置100は、動作番号1が開始時刻であり、動作番号10が終了時刻である期間を特定する。情報処理装置100は、特定した期間の歩数は10歩であるため、特定した期間を歩行期間の候補期間と特定する。情報処理装置100は、特定した候補期間における評価値を、評価値系列X*に設定する。
そして、情報処理装置100は、下記式(15)を用いて、特定した候補期間について算出された同時確率p(X*、Y*)の尤度を、歩行期間としての尤度として算出する。
ここで、式(15)によると、候補期間における歩数が少なく、ステップ動作の数が少ないほど、確率値が大きくなるため、尤度が大きくなってしまう傾向がある。このため、情報処理装置100は、さらに、下記式(16)を用いて、上記式(15)の対数値を候補期間の歩数Kで平均化した指標値を、尤度として算出してもよい。次に、図32の説明に移行する。
図32において、情報処理装置100は、それぞれのステップ動作群について尤度を算出しているとする。情報処理装置100は、算出した尤度を、尤度管理テーブル3200を用いて記憶する。情報処理装置100は、尤度の最大値が閾値を超えているか否かを判定する。
情報処理装置100は、尤度が閾値を超えて最大値になったステップ動作群を、患者の歩行期間に対応するステップ動作群として尤もらしいステップ動作群として選択する。そして、情報処理装置100は、例えば、患者の歩行期間の開始時刻と終了時刻とを特定する。次に、図33の説明に移行する。
図33において、情報処理装置100は、それぞれの対象期間について、同様に、歩行期間であるか否かを判定し、歩行期間の開始時刻と終了時刻とを特定したとする。情報処理装置100は、判定した結果および特定した歩行期間の開始時刻と終了時刻とを、結果管理テーブル3300を用いて記憶する。
(情報処理装置100が所定の特徴量を出力する一例)
次に、図34を用いて、情報処理装置100が所定の特徴量を出力する一例について説明する。
図34は、情報処理装置100が所定の特徴量を出力する一例を示す説明図である。図34において、情報処理装置100は、特定した歩行期間、および、特定した歩行期間におけるステップ動作の開始時刻と終了時刻とを用いて、それぞれの歩行期間における所定の特徴量を算出する。所定の特徴量は、例えば、患者の歩幅、移動速度、移動時間、歩行のケーデンス、各脚の着地時の衝撃、各脚の接地時間などである。また、所定の特徴量は、歩行期間における、各ステップ動作の開始時刻および終了時刻であってもよい。情報処理装置100は、例えば、算出した特徴量をさらに対応付けて結果管理テーブル3400や脚動作管理テーブル2400を用いて記憶する。
(複数の帯域通過フィルタを適用する動作の別の例)
次に、図35および図36を用いて、複数の帯域通過フィルタを適用する動作の別の例について説明する。
図35および図36は、複数の帯域通過フィルタを適用する動作の別の例を示す説明図である。図35および図36に示すように、情報処理装置100は、複数の帯域通過フィルタを適用する際に、予め複数の第1パラメータを用意しておかなくてもよい。
図35において、情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果が単ピーク性を有するように、カットオフ周波数を設定する。単ピーク性は、一方の脚の角速度が極大値になった後、他方の脚の角速度が極大値になる前に、一方の脚の角速度が再び極大値になることがない性質である。単ピーク性は、例えば、一方の脚のステップ動作の後、同じ脚のステップ動作が所定時間以内に2つ以上発生しない性質である。情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、単ピーク性が現れなければ、その帯域通過フィルタよりも周波数帯域が広い帯域通過フィルタを適用する。次に、図36の説明に移行する。
図36において、情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、極大値が閾値以上になるように、カットオフ周波数を設定する。情報処理装置100は、例えば、ある帯域通過フィルタを適用した結果、極大値が閾値以上にならなければ、その帯域通過フィルタよりも周波数帯域が広い帯域通過フィルタを適用する。
これにより、情報処理装置100は、センサデータに複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した結果のいずれかを、対象期間が歩行期間であるか否かを判定するために用いなくてもよい。このため、情報処理装置100は、対象期間が歩行期間であるか否かを判定する処理量の増大化を抑制することができる。
(ステップ動作の時間長上限に複数の時間長上限の候補を設定する動作の別の例)
次に、図37を用いて、ステップ動作の時間長に複数の時間長上限の候補を設定する動作の別の例について説明する。
図37は、ステップ動作の時間長上限に複数の時間長上限の候補を設定する動作の別の例を示す説明図である。図37に示すように、情報処理装置100は、予め複数の第2パラメータを用意しておかなくてもよい。情報処理装置100は、例えば、ステップ動作の時間長上限の候補となる第2パラメータを、適用した帯域通過フィルタの周波数帯域に応じて設定する。情報処理装置100は、例えば、周波数帯域が狭いほど第2パラメータを大きくし、周波数帯域が広いほど第2パラメータを小さくする。情報処理装置100は、例えば、関数3700によって、周波数帯域が広いほど第2パラメータを小さく設定する。
これにより、情報処理装置100は、ステップ動作の時間長上限に複数の時間長上限の候補を設定しなくてよく、ステップ動作の時間長上限に比較的好ましい候補を設定することができる。このため、情報処理装置100は、対象期間が歩行期間であるか否かを判定する処理量の増大化を抑制することができる。
(全体処理手順の一例)
次に、図38を用いて、情報処理装置100が実行する全体処理手順の一例について説明する。
図38は、全体処理手順の一例を示すフローチャートである。図38において、まず、情報処理装置100は、一定期間のセンサデータを計測機201から受信する(ステップS3801)。次に、情報処理装置100は、センサデータに基づいて、一定期間のうち対象期間を抽出する(ステップS3802)。
そして、情報処理装置100は、いずれかの対象期間を選択する(ステップS3803)。次に、情報処理装置100は、選択した対象期間について、図39に後述する歩行期間判定処理を実行する(ステップS3804)。そして、情報処理装置100は、歩行特徴量を抽出する(ステップS3805)。
次に、情報処理装置100は、抽出した対象期間をすべて選択したか否かを判定する(ステップS3806)。ここで、選択していない場合(ステップS3806:No)、情報処理装置100は、ステップS3803の処理に戻る。
一方で、選択している場合(ステップS3806:Yes)、情報処理装置100は、歩行期間および歩行特徴量を出力する(ステップS3807)。そして、情報処理装置100は、全体処理を終了する。
(歩行期間特定手順の一例)
次に、図39を用いて、情報処理装置100が実行する歩行期間特定手順の一例について説明する。
図39は、歩行期間特定手順の一例を示すフローチャートである。図39において、まず、情報処理装置100は、複数の第1パラメータと、複数の第2パラメータとに基づいて、第1パラメータと第2パラメータの組み合わせを選択する(ステップS3901)。
次に、情報処理装置100は、選択した第1パラメータを用いて、センサデータに対して帯域通過フィルタを適用し、ステップ動作群を検知する(ステップS3902)。そして、情報処理装置100は、選択した第2パラメータを用いて、ステップ動作群を構成する各ステップ動作の開始時刻および終了時刻を特定する(ステップS3903)。
次に、情報処理装置100は、図40に後述する評価値算出処理を実行する(ステップS3904)。そして、情報処理装置100は、図41に後述する尤度算出処理を実行する(ステップS3905)。次に、情報処理装置100は、第1パラメータと第2パラメータの組み合わせをすべて選択したか否かを判定する(ステップS3906)。ここで、選択していない場合(ステップS3906:No)、情報処理装置100は、ステップS3901の処理に戻る。
一方で、選択している場合(ステップS3906:Yes)、情報処理装置100は、歩行期間を特定し、歩行期間における所定の特徴量を算出し、歩行期間における所定の特徴量を出力する(ステップS3907)。そして、情報処理装置100は、歩行期間特定処理を終了する。
(評価値算出処理手順の一例)
次に、図40を用いて、情報処理装置100が実行する評価値算出処理手順の一例について説明する。
図40は、評価値算出処理手順の一例を示すフローチャートである。図40において、まず、情報処理装置100は、いずれかのステップ動作を選択する(ステップS4001)。
次に、情報処理装置100は、第1の関係性について評価値を算出する(ステップS4002)。また、情報処理装置100は、第2の関係性について評価値を算出する(ステップS4003)。また、情報処理装置100は、第3の関係性について評価値を算出する(ステップS4004)。また、情報処理装置100は、第4の関係性について評価値を算出する(ステップS4005)。また、情報処理装置100は、第5の関係性について評価値を算出する(ステップS4006)。また、情報処理装置100は、第6の関係性について評価値を算出する(ステップS4007)。
そして、情報処理装置100は、腰に関するセンサデータがあるか否かを判定する(ステップS4008)。ここで、センサデータがない場合(ステップS4008:No)、情報処理装置100は、ステップS4013の処理に移行する。
一方で、センサデータがある場合(ステップS4008:Yes)、情報処理装置100は、第7の関係性について評価値を算出する(ステップS4009)。また、情報処理装置100は、第8の関係性について評価値を算出する(ステップS4010)。また、情報処理装置100は、第9の関係性について評価値を算出する(ステップS4011)。また、情報処理装置100は、第10の関係性について評価値を算出する(ステップS4012)。
そして、情報処理装置100は、ステップ動作をすべて選択したか否かを判定する(ステップS4013)。ここで、選択していない場合(ステップS4013:No)、情報処理装置100は、ステップS4001の処理に戻る。
一方で、選択している場合(ステップS4013:Yes)、情報処理装置100は、評価値算出処理を終了する。
(尤度算出処理手順の一例)
次に、図41を用いて、情報処理装置100が実行する尤度算出処理手順の一例について説明する。
図41は、尤度算出処理手順の一例を示すフローチャートである。図41において、まず、情報処理装置100は、状態遷移確率を算出する(ステップS4101)。次に、情報処理装置100は、観測確率を設定する(ステップS4102)。そして、情報処理装置100は、動作状態系列を設定する(ステップS4103)。
次に、情報処理装置100は、歩行期間の候補期間を特定する(ステップS4104)。そして、情報処理装置100は、歩行期間の候補期間について歩行期間としての尤度を算出する(ステップS4105)。その後、情報処理装置100は、尤度算出処理を終了する。
以上説明したように、情報処理装置100によれば、患者の複数の部位のそれぞれの部位の動きに関する計測情報を取得することができる。情報処理装置100によれば、計測情報に基づいて、対象期間において、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知することができる。情報処理装置100によれば、検知した動作群において、患者によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出することができる。情報処理装置100によれば、それぞれの関係性について算出した評価値に基づいて、対象期間が患者によって歩行運動が行われた歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、計測情報に対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、患者の歩行運動動作の一部に対応する特徴が現れたそれぞれの部位の動作を含む動作群を検知することができる。情報処理装置100によれば、検知した動作群ごとに、それぞれの関係性が表れた度合いを示す評価値を算出することができる。これにより、情報処理装置100は、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、または、患者ごとに、患者の各脚のステップ動作の周期が異なる場合でも、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、動作群において、それぞれの動作の時間長上限を複数の時間長上限の候補のそれぞれの候補に設定した場合について、それぞれの関係性が現れた度合いを示す評価値を算出することができる。これにより、情報処理装置100は、患者が歩く場所、患者が歩くときの周囲の環境、患者の状態などにより、または、患者ごとに、患者の各脚のステップ動作の時間長が異なる場合でも、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、歩行期間であると判定した対象期間における所定の特徴量を出力することができる。これにより、情報処理装置100は、患者の状態を把握するために、利用者に所定の特徴量を通知することができる。
情報処理装置100によれば、取得した計測情報に基づいて、患者が静止状態ではない動作期間を特定し、対象期間に設定することができる。これにより、情報処理装置100は、歩行期間か否かを判定する対象となる対象期間の数の低減化を図り、処理量の低減化を図ることができる。
情報処理装置100によれば、それぞれの関係性について算出した評価値に基づいて、対象期間のうち歩行期間の候補期間を特定し、特定した候補期間の長さに応じた歩行期間としての尤度を算出することができる。情報処理装置100によれば、算出した尤度に基づいて、候補期間が歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、対象期間を、さらに、歩行期間と非歩行期間とに分けて、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、評価値が、関係性が現れたか否かを示す2値の真理値であれば、評価値を用いた論理演算の結果に基づいて、対象期間が歩行期間であるか否かを判定することができる。これにより、情報処理装置100は、処理量の低減化を図ることができる。
情報処理装置100によれば、複数の関係性に、患者の脚の動作に関する第1の関係性〜第6の関係性を用いることができる。これにより、情報処理装置100は、患者の脚の動作について複数の観点から歩行運動らしさを評価し、歩行期間を特定する精度の向上を図ることができる。
情報処理装置100によれば、患者の脚および患者の体幹の動作に関する第7の関係性〜第10の関係性を用いることができる。これにより、情報処理装置100は、患者の脚および患者の体幹の動作について複数の観点から歩行運動らしさを評価し、歩行期間を特定する精度の向上を図ることができる。
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本実施の形態で説明した情報処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実施の形態で説明した情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)計測対象の複数の部位のそれぞれの部位の動きに関する計測情報を取得し、
取得した前記計測情報に基づいて、対象期間において、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知し、
検知した前記動作群において、前記計測対象によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出し、
前記それぞれの関係性について算出した前記評価値に基づいて、前記対象期間が前記計測対象によって歩行運動が行われた歩行期間であるか否かを判定する、
制御部を有することを特徴とする情報処理装置。
(付記2)前記制御部は、
前記計測情報に対して複数の帯域通過フィルタのそれぞれの帯域通過フィルタを適用した場合について、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知し、
検知した前記動作群ごとに、前記それぞれの関係性が表れた度合いを示す評価値を算出する、ことを特徴とする付記1に記載の情報処理装置。
(付記3)前記制御部は、
前記計測情報に対して所定の帯域通過フィルタを適用した場合について、前記所定の帯域通過フィルタを適用した結果が単ピーク性を有し、かつ、ピーク値が閾値以上になるように、前記所定の帯域通過フィルタにおける通過帯域を設定し、
前記計測情報に対して前記所定の帯域通過フィルタを適用した場合について、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知する、ことを特徴とする付記1または2に記載の情報処理装置。
(付記4)前記制御部は、
前記計測情報または前記計測情報に所定の帯域通過フィルタを適用した結果に対して、複数の閾値のそれぞれの閾値を用いて極大値を検知した場合について、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知し、
検知した前記動作群ごとに、前記それぞれの関係性が表れた度合いを示す評価値を算出する、ことを特徴とする付記1〜3のいずれか一つに記載の情報処理装置。
(付記5)前記制御部は、
前記動作群において、それぞれの動作の時間長上限を複数の時間長上限の候補のそれぞれの候補に設定した場合について、前記計測情報からそれぞれの動作の動作開始および動作終了を表す時点を検知し、検知した結果に基づいて前記それぞれの関係性が現れた度合いを示す評価値を算出する、ことを特徴とする付記1または2に記載の情報処理装置。
(付記6)前記制御部は、
前記動作群において、設定した前記通過帯域が低いほど、それぞれの動作の時間長上限が大きくなるように設定し、前記計測情報からそれぞれの動作の動作開始および動作終了を表す時点を検知し、検知した結果に基づいて前記それぞれの関係性が現れた度合いを示す評価値を算出する、ことを特徴とする付記3に記載の情報処理装置。
(付記7)前記制御部は、
前記歩行期間であると判定した前記対象期間における所定の特徴量を出力する、ことを特徴とする付記1〜3のいずれか一つに記載の情報処理装置。
(付記8)前記制御部は、
取得した前記計測情報に基づいて、前記計測対象が静止状態ではない動作期間を特定し、前記対象期間に設定する、ことを特徴とする付記1〜4のいずれか一つに記載の情報処理装置。
(付記9)前記制御部は、
前記それぞれの関係性について算出した前記評価値に基づいて、前記対象期間のうち前記歩行期間の候補期間を特定し、特定した前記候補期間の長さに応じた前記歩行期間としての尤度を算出し、
算出した前記尤度に基づいて、前記候補期間が前記歩行期間であるか否かを判定する、ことを特徴とする付記1〜5のいずれか一つに記載の情報処理装置。
(付記10)前記制御部は、
前記対象期間において、前記動作群のそれぞれの動作に対して、前記それぞれの関係性について算出した前記評価値を用いて歩行状態または非歩行状態を割り当て、
前記歩行状態または前記非歩行状態を割り当てた結果に基づいて、前記対象期間のうち前記歩行期間の候補期間を特定する、ことを特徴とする付記9に記載の情報処理装置。
(付記11)前記制御部は、
前記動作に対して、前記歩行状態として、歩行開始を表す初期状態と、歩行終了を表す末期状態とを含む、少なくとも2以上の状態のいずれかを割り当てる、ことを特徴とする付記10に記載の情報処理装置。
(付記12)前記制御部は、
前記動作に対して、前記歩行状態として、左脚に関する歩行状態と、右脚に関する歩行状態とを含む、少なくとも2以上の状態のいずれかを割り当てる、ことを特徴とする付記10または11に記載の情報処理装置。
(付記13)前記制御部は、
前記歩行状態および前記非歩行状態における、現在の状態と次に遷移する状態との間に定義された状態間遷移確率に基づいて、前記それぞれの動作に対して、前記歩行状態または前記非歩行状態を割り当てる、ことを特徴とする付記10〜12のいずれか一つに記載の情報処理装置。
(付記14)前記評価値は、前記関係性が現れたか否かを示す2値の真理値であり、
前記制御部は、
前記評価値を用いた論理演算の結果に基づいて、前記対象期間が前記歩行期間であるか否かを判定する、ことを特徴とする付記1〜6のいずれか一つに記載の情報処理装置。
(付記15)前記動作は、前記計測対象の脚の動作を含み、
前記複数の関係性は、
前記計測対象の各脚の動作が交互に発生する第1の関係性と、
前記計測対象の一方の脚の動作が終了してから所定時間内に、前記計測対象の他方の脚の動作が開始する第2の関係性と、
前記計測対象の一方の脚の動作の最中は、前記計測対象の他方の脚の動作の動作量が所定範囲内である第3の関係性と、
前記計測対象の一方の脚の複数の動作の特徴量が類似する第4の関係性と、
前記計測対象の各脚の動作の特徴量が類似する第5の関係性と、
前記計測対象の各脚の動作の回転方向が同一である第6の関係性との少なくともいずれかを含む、ことを特徴とする付記1〜7のいずれか一つに記載の情報処理装置。
(付記16)前記動作は、前記計測対象の脚および前記計測対象の体幹の動作を含み、
前記複数の関係性は、
前記計測対象の各脚の動作が終了する前後の所定時間の範囲に、前記計測対象の体幹の上下方向の動作が発生する第7の関係性と、
前記計測対象の各脚の動作の最中は、前記計測対象の体幹の前進方向の動作が発生する第8の関係性と、
前記計測対象の各脚の動作の回転方向と、前記計測対象の各脚の動作が終了した後の前記計測対象の体幹の動作の回転方向が同一である第9の関係性と、
前記計測対象の各脚の動作が示す移動量と、前記計測対象の体幹の動作が示す移動量とが類似する第10の関係性との少なくともいずれかを含む、ことを特徴とする付記1〜4のいずれか一つに記載の情報処理装置。
(付記17)前記歩行運動動作の一部は、歩行運動の1歩である、ことを特徴とする付記1〜16のいずれか一つに記載の情報処理装置。
(付記18)計測機と、前記計測機と通信可能な情報処理装置とを含む情報処理システムであって、
前記計測機は、
計測対象の複数の部位のそれぞれの部位の動きに関する計測情報を生成し、
前記情報処理装置は、
前記計測機から前記計測情報を取得し、
取得した前記計測情報に基づいて、対象期間において、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知し、
検知した前記動作群において、前記計測対象によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出し、
前記それぞれの関係性について算出した前記評価値に基づいて、前記対象期間が前記計測対象によって歩行運動が行われた歩行期間であるか否かを判定する、
ことを特徴とする情報処理システム。
(付記19)コンピュータが、
計測対象の複数の部位のそれぞれの部位の動きに関する計測情報を取得し、
取得した前記計測情報に基づいて、対象期間において、前記計測対象の歩行運動動作の一部に対応する特徴が現れた前記それぞれの部位の動作を含む動作群を検知し、
検知した前記動作群において、前記計測対象によって歩行運動が行われた場合に動作間に生じる複数の関係性のそれぞれの関係性が現れた度合いを示す評価値を算出し、
前記それぞれの関係性について算出した前記評価値に基づいて、前記対象期間が前記計測対象によって歩行運動が行われた歩行期間であるか否かを判定する、
処理を実行することを特徴とする情報処理方法。