(57)【要約】【課題】歩行者の歩行状態を高精度に推定することを課題とする。【解決手段】移動体端末は、時系列な変化を示す加速度データを入力し、入力した前記加速度データと記憶部に予め記憶された歩行状態ごとの係数とに基づいて、歩行状態ごとに第１の重心加速度を算出し、ローパスフィルタまたはバンドパスフィルタを用いて、入力した加速度データから第２の重心加速度を算出し、歩行状態ごとの第１の重心加速度のうち、第２の重心加速度に対応する第１の重心加速度を特定することにより歩行者の歩行状態を推定する。【選択図】図３
2018079102.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
時系列な変化を示す加速度データを入力し、
入力した前記加速度データと記憶部に予め記憶された歩行状態ごとの係数とに基づいて、歩行状態ごとに第１の重心加速度を算出し、
ローパスフィルタまたはバンドパスフィルタを用いて、入力した前記加速度データから第２の重心加速度を算出し、
歩行状態ごとの前記第１の重心加速度のうち、前記第２の重心加速度に対応する前記第１の重心加速度を特定することにより歩行者の歩行状態を推定する処理を実行することを特徴とする歩行状態推定方法。
【請求項２】
前記加速度データは、３軸加速度時系列データであり、
前記係数は、前記歩行者の３軸加速度時系列データを身体重心加速度の重力方向成分、歩行進行成分、または左右成分を算出する変換行列であり、
前記推定する処理は、第１の重心加速度と第２の重心加速度の値の差が最も小さくなる第１の重心加速度を特定し、当該第１の重心加速度に対応する前記変換行列を選択することにより、歩行状態を推定することを特徴とする請求項１に記載の歩行状態推定方法。
【請求項３】
前記変換行列は、前記３軸加速度時系列データを離散フーリエ変換して得られる離散フーリエ係数を、前記歩行者の身体重心加速度の重力方向成分、歩行進行成分、または左右成分の離散フーリエ係数へと変換することを特徴とする請求項２に記載の歩行状態推定方法。
【請求項４】
前記歩行状態ごとの複数の前記加速度データから前記係数を学習することをさらに含み、
前記歩行状態は、歩行周期を含み、
前記学習の処理では、前記加速度データの収集の際に歩数を計数することにより、前記加速度データから、一定の歩行周期で歩行している区間を抽出することを特徴とする請求項１〜３のいずれか一つに記載の歩行状態推定方法。
【請求項５】
前記歩行者の前記加速度データにおける２歩１周期に相当する時間長の上限および下限の範囲は予め設定されており、
前記歩行状態を推定する処理は、前記範囲内で、前記第１の重心加速度の時系列データの波形のうち、前記第２の重心加速度の時系列データの波形と最も近似する区間を、前記歩行者の２歩１周期の時間長と推定し、
当該推定の処理を繰り返すことにより、前記歩行者の歩行状態を２歩１周期ごとに推定することを特徴とする請求項１〜４のいずれか一つに記載の歩行状態推定方法。
【請求項６】
コンピュータに、
時系列な変化を示す加速度データを入力し、
入力した前記加速度データと記憶部に予め記憶された歩行状態ごとの係数とに基づいて、歩行状態ごとに第１の重心加速度を算出し、
ローパスフィルタまたはバンドパスフィルタを用いて、取得した前記加速度データから第２の重心加速度を算出し、
歩行状態ごとの第１の重心加速度のうち、算出した第２の重心加速度に対応する第１の重心加速度を特定することにより歩行者の歩行状態を推定する
処理を実行させることを特徴とする歩行状態推定プログラム。
【請求項７】
時系列な変化を示す加速度データを入力する入力部と、
入力した前記加速度データと記憶部に予め記憶された歩行状態ごとの係数とに基づいて、歩行状態ごとに第１の重心加速度を算出する第１の算出部と、
ローパスフィルタまたはバンドパスフィルタを用いて、取得した前記加速度データから第２の重心加速度を算出する第２の算出部と、
歩行状態ごとの第１の重心加速度のうち、算出した第２の重心加速度に対応する第１の重心加速度を特定することにより歩行者の歩行状態を推定する推定部と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、歩行状態推定方法、歩行状態推定プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
従来、加速度センサが測定した３軸加速度時系列データから歩行者の歩数や歩容を推定する技術がある。例えば、３軸加速度時系列データの波形の振幅や周期に複数の閾値を設定して歩数を推定する技術がある。また、３軸加速度時系列データの値の符号が同じ間は値を加算していき、符号が反転した時点で加算してきた値が所定の閾値を超えた場合に歩数をカウントアップする、という技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２２３７４４号公報
【特許文献２】特開２０１３−５０３０８号公報
【特許文献３】特開２０１１−１５２３６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術は、歩数等を推定するための閾値等を経験則によって設定するため、歩数等の検出の精度を高めるためには、加速度センサ等のデバイスや歩行時の加速度等の波形の性質に対する多くのノウハウに依存する。また、加速度センサの揺れや、ノイズ等によって、高精度に歩数等を推定することが困難な場合がある。
【０００５】
一つの側面では、歩行者の歩行状態を高精度に推定することができる歩行状態推定方法、歩行状態推定プログラムおよび情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
第１の案では、コンピュータが、時系列な変化を示す加速度データを入力し、入力した前記加速度データと記憶部に予め記憶された歩行状態ごとの係数とに基づいて、歩行状態ごとに第１の重心加速度を算出する。コンピュータが、ローパスフィルタまたはバンドパスフィルタを用いて、入力した前記加速度データから第２の重心加速度を算出する。コンピュータが、歩行状態ごとの前記第１の重心加速度のうち、前記第２の重心加速度に対応する前記第１の重心加速度を特定することにより歩行者の歩行状態を推定する。
【発明の効果】
【０００７】
一実施形態によれば、歩行者の歩行状態を高精度に推定することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施例にかかる移動体端末を説明する図である。
【図２】図２は、実施例にかかる全体構成を説明する図である。
【図３】図３は、実施例にかかる移動体端末のハードウェア構成例を示す図である。
【図４】図４は、実施例にかかる移動体端末の機能構成を示す機能ブロック図である。
【図５】図５は、実施例にかかる身体重心加速度の重力方向成分の波形の一例を示す図である。
【図６】図６は、実施例にかかる歩行の種類の例を示す図である。
【図７】図７は、実施例にかかる歩行周期の例を示す図である。
【図８】図８は、実施例にかかる歩行周期１．７Ｈｚで平地歩行をした場合の三軸加速度時系列データを示す図である。
【図９】図９は、実施例にかかるフィルタの適用によって算出された重力加速度を示す図である。
【図１０】図１０は、実施例にかかるフィルタの適用によって算出された身体重心加速度を示す図である。
【図１１】図１１は、実施例にかかる身体重心加速度の重力方向成分を表す時系列データを示す図である。
【図１２】図１２は、実施例にかかる学習データの一例を示す図である。
【図１３】図１３は、実施例にかかる２歩１周期がサンプル数“２９”となる学習データの例を示す図である。
【図１４】図１４は、実施例にかかる２歩１周期がサンプル数“２８”となる学習データの例を示す図である。
【図１５】図１５は、実施例にかかる２歩１周期がサンプル数“３０”となる学習データの例を示す図である。
【図１６】図１６は、実施例にかかる学習フェーズの処理の流れを示すフローチャートである。
【図１７】図１７は、実施例にかかる推定フェーズの処理の流れを示すフローチャートである。
【図１８】図１８は、移動体端末の携帯について説明する図である。
【図１９】図１９は、身体重心加速度の重力方向成分を表す時系列データの他の一例を示す図である。
【図２０】図２０は、変形例１にかかる連続する歩行周期の長さの推定を説明する図である。
【図２１】図２１は、変形例２にかかる歩行状態推定システムの全体構成を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本願の開示する歩行状態推定方法、歩行状態推定プログラムおよび情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【００１０】
図１は、本実施例にかかる移動体端末１０を説明する図である。移動体端末１０は、スマートフォン等の情報処理装置である。この移動体端末１０は、３軸加速度センサを搭載し、計測した時系列の３軸加速度データ（以下、３軸加速度時系列データ）を用いて、ユーザの歩行状態を推定する。
【００１１】
歩行状態は、歩行者の歩行の状態であり、歩行周期と歩行の種類とを含む。移動体端末１０は、歩行状態を推定することで、歩数および歩容を推定することができる。歩行状態についての詳細は、後述する。図１に示すように、移動体端末１０は、複数の歩行条件における３軸加速度データから、各歩行条件における歩行状態を表す「歩行状態表現係数」を学習する。そして、移動体端末１０は、学習済みの歩行状態表現係数を用いて、歩行状態を推定する対象の歩行者の歩行状態を推定する。以下、移動体端末１０が歩行状態表現係数を学習するフェーズを、学習フェーズ、対象の歩行者の歩行状態を推定するフェーズを推定フェーズとする。
【００１２】
学習フェーズと推定フェーズの概要を説明する。図２は、本実施例にかかる全体構成を説明する図である。図２に示すように、学習フェーズでは、移動体端末１０は複数の歩行条件で計測した３軸加速度時系列データから、各歩行条件における歩行状態を表す歩行状態表現係数を学習する。例えば、ｎ種類の歩行条件１〜ｎ（ｎは１以上の自然数）ごとに、複数の３軸加速度時系列データからなるデータセットを入力し、歩行条件１〜ｎに紐付く歩行状態を表す歩行状態表現係数Ｃｑ，ｑ´を学習する。図２における“Ｃｏｎｄｉｔｉｏｎ１〜ｉ，ｎ”は、歩行条件１〜ｎに紐付く歩行状態の例示である（ｉは１以上ｎ以下の自然数）。
【００１３】
また、図２に示すように、推定フェーズでは、移動体端末１０は歩行者の３軸加速度時系列データと学習済みの歩行状態表現係数とから歩行状態ごとの複数の重心加速度を算出する。また、推定フェーズにおいて、移動体端末１０は歩行者の３軸加速度時系列データから、歩行状態表現係数Ｃｑ，ｑ´を使用せずに上下、前後または左右方向の身体重心加速度を算出する。そして、歩行状態ごとの複数の重心加速度のうち、歩行状態表現係数Ｃｑ，ｑ´を使用せずに算出した身体重心加速度と、時系列の波形が最も近いものを選択する。移動体端末１０は、選択された身体重心加速度の算出に使用された歩行状態表現係数Ｃｑ，ｑ´に対応する歩行状態を、歩行者の歩行状態として推定する。
【００１４】
次に、移動体端末１０のハードウェア構成について説明する。図３は、本実施例にかかる移動体端末１０のハードウェア構成例を示す図である。図３に示すように、移動体端末１０は、無線部１、３軸加速度センサ２、記憶装置３、プロセッサ４を有する。なお、ここで図示したハードウェアは一例であり、例えばＧＰＳ（Global  Positioning  System）受信器や表示装置等の他のハードウェアを有していてもよい。
【００１５】
無線部１は、アンテナ１ａを介して、他の端末とデータの送受信を実行する。３軸加速度センサ２は、移動体端末１０の加速度を測定してプロセッサ４に出力するセンサであり、ｘｙｚ軸の３方向の加速度を測定する３軸の加速度センサである。記憶装置３は、プログラムやデータを記憶する記憶装置であり、例えばメモリやハードディスク等である。記憶装置３は、本実施形態における記憶部の一例である。
【００１６】
プロセッサ４は、ＣＰＵ（Central  Processing  Unit）等であり、後述する各種処理の内容が規定されるプログラムを記憶装置３から読み出して実行し、歩行状態推定に関する各種処理、すなわち歩行状態推定プログラムを実行する。
【００１７】
図４は、本実施例にかかる移動体端末１０の機能構成を示す機能ブロック図である。例えば、移動体端末１０は、歩行状態推定プログラムを実行することで、図４に示す各処理部として機能する。図４に示すように、移動体端末１０は、入力部１１、抽出部１２、学習部１３、第１の算出部１４、第２の算出部１５、推定部１６、記憶部２０を有する。
【００１８】
入力部１１は、３軸加速度センサ２が計測した時系列の加速度データ、すなわち３軸加速度時系列データを入力する。例えば、入力部１１は、学習フェーズや推定フェーズにおいて入力した３軸加速度時系列データを抽出部１２、第１の算出部１４、第２の算出部１５に送出する。また、入力部１１は、歩行者の靴底に設置された圧電センサ（不図示）から、歩行者が１歩を踏み出したタイミングを示す信号を取得する構成を採用しても良い。当該構成を採用する場合、入力部１１は、取得した信号を３軸加速度時系列データと共に抽出部１２に送出する。
【００１９】
学習部１３は、学習フェーズにおいて、歩行状態ごとの複数の３軸加速度時系列データから、歩行状態表現係数を学習する。より詳細には、学習部１３は、入力部１１が入力した３軸加速度時系列データのうち、一定の歩行周期で歩行している区間から歩行状態表現係数を学習する。一定の歩行周期で歩行している区間は、抽出部１２が抽出する。抽出処理の詳細については後述する。また、学習部１３が学習用に利用する３軸加速度時系列データは、後述の推定フェーズにおける歩行状態の推定対象となる歩行者のデータに限らず、多数の歩行者から測定しても良い。
【００２０】
図５は、本実施例にかかる身体重心加速度の重力方向成分の波形の一例を示す図である。図５に示すように、一般に歩行者の重心は腰付近にあり、歩行運動によって、身体重心加速度は重力方向、前後方向、左右方向の加速度が周期的に変化する。また、重力加速度と、身体重心加速度の波形の内積をとることにより、身体重心加速度の重力方向成分を算出することができる。図５に示すように、歩行者が歩行すると、歩行者の重心の移動により、身体重心加速度の重力方向成分の時系列のデータは周期性のある波形となる。身体重心加速度の重力方向成分の算出の詳細については後述する。また、図５では、３軸加速度時系列データのうち重力方向成分の波形を例として示しているが、歩行者の前後や左右方向の加速度の時系列データも、周期性のある波形となる。
【００２１】
３軸加速度時系列データの波形は、歩行者の歩行周期と歩行の種類によってそれぞれ異なる。本実施例における歩行の種類とは、歩行者が歩行する際の動作の分類である。図６は、本実施例にかかる歩行の種類の例を示す図である。図６に示すように、歩行の種類には、例えば、平坦な場所を歩行する「平地歩行」、上り階段を歩行する「階段上り」がある。歩行者が移動体端末１０を携帯して平地歩行や階段上りを行うと、３軸加速度センサ２はそれぞれの３軸加速度時系列データを測定する。図６に示すように、歩行の種類によって３軸加速度時系列データの波形は異なる。
【００２２】
また、図７は本実施例にかかる歩行周期の例を示す図である。図７に示すように、歩行の種類が同じ「平地歩行」であっても、歩行周期が１．７Ｈｚの場合と２．０Ｈｚの場合とでは移動体端末１０の３軸加速度センサ２が計測する３軸加速度時系列データの波形は異なる。本実施例では、学習部１３は、歩行の種類と歩行周期とを組み合わせた歩行条件ごとの３軸加速度時系列データから、各歩行条件に対応する歩行状態を表す歩行状態表現係数を学習する。また、歩行条件は、さらに、歩行者が移動体端末１０がどのように携帯しているか、例えば腰に装着しているか、ポケットに入れているか等を分類する構成を採用しても良い。
【００２３】
例えば、学習部１３が、歩行の種類が平地歩行、歩行周期が１．７Ｈｚの３軸加速度時系列データから学習をする場合を例として、学習フェーズの詳細を説明する。図８は、本実施例にかかる歩行周期１．７Ｈｚで平地歩行をした場合の三軸加速度時系列データを示す図である。図８に示すデータは移動平均等を適用する前の状態であるので、以下「元データ」という。
【００２４】
学習部１３は、図８に示す３軸加速度時系列データのＸ、Ｙ、Ｚ軸加速度をそれぞれ離散フーリエ変換（Discrete  Fourier  Transform、ＤＦＴ）し、ＤＦＴ係数Ｘｑ、Ｙｑ、およびＺｑを算出する。ＤＦＴ係数Ｘｑ、Ｙｑ、およびＺｑは、下記の式（１−１）〜（１−４）によって求めることができる。
【数１】
2018079102.tif 000003
【００２５】
式（１−１）〜（１−４）において、ｔは時間である。ｘ（ｔ）は、ｘ軸の加速度の時系列データを示す関数である。ｙ（ｔ）は、ｙ軸の加速度の時系列データを示す関数である。ｚ（ｔ）は、ｚ軸の加速度の時系列データを示す関数である。ｎは３軸加速度時系列データのサンプル数（計測数）を示す１以上の自然数である。また、ｑ＝−ｎ，・・・，ｎとする。λは、式（１−４）で示される。
【００２６】
また、図８に示したように、３軸加速度センサ２が計測した３軸加速度時系列データの波形は、通常、ノイズ等によって不規則な要素を含む。そこで、ローパスフィルタ（Low-pass  Filter）とバントパスフィルタ（Band-Pass  Filter）とを使用して、ノイズを除去するとともに、歩行者の身体重心加速度の重力方向（上下方向、鉛直方向）成分、左右成分、前後方向成分（歩行進行成分）を抽出する。
【００２７】
図９は、本実施例にかかるフィルタの適用によって算出された重力加速度を示す図である。図９では学習部１３が、移動平均フィルタを適用することでローパスフィルタと同様の結果を得ているが、ローパスフィルタを適用しても良い。学習部１３が移動平均フィルタを適用する場合、移動平均を算出する対象のサンプル数（波形の長さ）ｎが増加するに従って、３軸加速度センサ２のノイズの影響は小さくなる。また、学習部１３が移動平均を算出するサンプル数ｎをさらに増加させると、歩行運動による加速度の周期的な波形の変化が消え、３軸加速度時系列データのＤＣ成分に相当する重力加速度成分の値を推定することができる。図９に示す例では、学習部１３は、移動平均を算出するサンプル数ｎを“１３”にすることで、重力加速度成分の時系列データを推定する。この重力加速度成分の推定値は、３軸加速度センサ２の向きに依存した値となる。
【００２８】
また、図１０は、本実施例にかかるフィルタの適用によって算出された身体重心加速度を示す図である。学習部１３は、３軸加速度センサ２が計測した３軸加速度時系列データから、そのＤＣ成分に相当する重力加速度を減算し、さらにその移動平均を算出することによって歩行運動の身体重心加速度を推定することができる。図１０に示す波形のデータは、学習部１３が、図８に示した３軸加速度時系列データからサンプル数ｎを“６”として移動平均を算出した波形に対して、さらにサンプル数ｎを“４”として移動平均を算出することでノイズを除去した波形である。このように学習部１３が移動平均を算出することにより、図１０の３軸加速度時系列データは、図８の３軸加速度時系列データに対してバンドパスフィルタでフィルタリングした状態となる。
【００２９】
学習部１３は、図１０に示す身体重心加速度の３軸方向成分を表す時系列データと、図９に示した重力加速度との内積を算出することによって、歩行加速の重力方向成分を表す時系列データを算出する。図１１は、本実施例にかかる身体重心加速度の重力方向成分を表す時系列データを示す図である。図１１の系列１の波形は図９と図１０に示したデータから算出された、歩行における身体重心加速度の重力方向成分である。また、系列２および系列３は、系列１の波形を修正した波形である。例えば、系列２は、系列１の波形から、元データに対してサンプル数ｎが“１４”の移動平均フィルタを適用したデータを引いたものである。系列３は、系列２のデータの絶対値を制限したデータである。図８に示すように、系列１〜３の波形はほぼ同じ波形となる。
【００３０】
図１１に示す波形のように、歩行者が移動体端末１０を携帯して歩行する場合に、３軸加速度センサ２が計測した３軸加速度時系列データから学習部１３が算出した身体重心加速度の重力方向成分は、歩行と同じリズムで変化する周期波形となる。歩行者が規則的なリズムで歩行する場合、歩行運動の身体重心加速度は、重力方向、左右方向、前後方向に対し、２歩１周期で変化する。
【００３１】
学習部１３は、図１１に示す身体重心加速度の重力方向成分を表す時系列データを離散フーリエ変換し、ＤＦＴ係数Ｐｑを算出する。ＤＦＴ係数Ｐｑは、下記の式（２）によって求めることができる。
【数２】
2018079102.tif 000004
【００３２】
式（２）において、ｔは時間である。ｐ（ｔ）は、身体重心加速度の重力方向成分を表す時系列データを示す関数である。ｎは３軸加速度時系列データのサンプル数を示す１以上の自然数である。また、ｑ＝−ｎ，・・・，ｎとする。λは上述の式（１−４）で示される。
【００３３】
学習部１３は、複数の歩行条件で測定された３軸加速度時系列データから、ＤＦＴ係数Ｘｑ、Ｙｑ、ＺｑおよびＰｑを複数セット算出する。各歩行条件につき、それぞれ複数の３軸加速度時系列データが用意されることが望ましい。学習部１３は、算出したＤＦＴ係数Ｘｑ、Ｙｑ、ＺｑおよびＰｑのセットを下記の式（３）に代入して、正規方程式を解法することにより歩行状態表現係数Ｃｑ，ｑ´を算出する。
【数３】
2018079102.tif 000005
【００３４】
式（３）において、ｔは時間である。ｎは３軸加速度時系列データのサンプル数を示す１以上の自然数である。また、ｑ＝−ｎ，・・・，ｎ、ｑ´＝−ｎ，・・・，ｎ、ｑ≦ｑ´とする。λは上述の式（１−４）で示される。
【００３５】
このようにして、学習部１３は、各歩行条件における歩行状態を表す歩行状態表現係数Ｃｑ，ｑ´を学習する。式（３）で示すように、歩行状態表現係数Ｃｑ，ｑ´は、学習部１３が式（３）の左辺に代入したＤＦＴ係数Ｘｑ、ＹｑおよびＺｑ（入力のＤＦＴ係数）を、右辺に代入したＤＦＴ係数Ｐｑ（出力のＤＦＴ係数）に変換するための係数である。言い換えれば、本実施例において、歩行状態表現係数Ｃｑ，ｑ´は、３軸加速度時系列データを身体重心加速度の重力方向成分を表す時系列データに変換する変換行列である。これは一例であり、歩行状態表現係数は、変換係数や変換関数であっても良い。学習部１３は、歩行状態表現係数Ｃｑ，ｑ´を、歩行条件と対応付けて記憶部２０に送出する。記憶部２０は、複数の歩行状態表現係数Ｃｑ，ｑ´を、歩行条件と対応付けて記憶する。
【００３６】
ここで、学習部１３が学習に用いる３軸加速度時系列データの計測の際は、歩行者は、予め定めたある一定の歩行周期で歩行する。しかしながら、計測時間内において常に歩行者が一定の歩行周期を保って歩行できるとは限らず、歩行中に歩行周期が変動する場合がある。そこで、抽出部１２は、計測された３軸加速度時系列データから、一定の歩行周期の部分区間を抽出する。
【００３７】
抽出部１２は、３軸加速度センサ２が学習用に計測した３軸加速度時系列データと、当該３軸加速度時系列データの計測時に歩行者が１歩を踏み込んだタイミングから歩行周期を推定する。例えば、上述の入力部１１が、歩行者の靴底の圧電センサ（不図示）から信号を入力することで、歩行者が１歩を踏み込んだタイミングを取得する構成を採用しても良い。または、図１１で説明した身体重心加速度の重力方向成分を表す時系列データを、抽出部１２が算出する構成を採用し、身体重心加速度の重力方向成分の値から歩行者が１歩を踏み込んだタイミングを取得する構成を採用しても良い。
【００３８】
図１２は、本実施例にかかる学習データの一例を示す図である。図１２の１列目の値は、３軸加速度センサ２が計測した３軸加速度データの時系列の番号である。本実施例では、３軸加速度センサ２は４０ｍｓ間隔で３軸加速度を計測する。図１２の２列目から４列目の値は、３軸加速度の各軸の時系列データである。５列目の値は、図１１に示した、身体重心加速度の重力方向成分を表す時系列データである。６列目の値は、歩数がカウントアップされるタイミングを示す。６列目の値は、例えば、歩数がカウントアップされる時に“１”、それ以外の時には“０”となる。歩行者が足を踏み込み、身体を押し上げる時に身体重心加速度の重力方向成分は極大値をとる。このため、図１２に示す例では、５列目の身体重心加速度の重力方向成分の値が極大値をとる時点を、歩数カウントアップのタイミングとした。
【００３９】
抽出部１２が、「歩行の種類が平地歩行、かつ、歩行周期が２．０Ｈｚ」と、「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件の３軸加速度データをそれぞれ抽出する場合を例として、具体的に説明する。
【００４０】
１歩２．０Ｈｚの歩行周期で歩行者が２歩歩くのに要する時間は１０００．０ｍｓ（１０００／２．０×２歩＝１０００．０ｍｓ）となる。ここで、抽出部１２は、歩行者の歩行周期長を２ｎ＋１（ｎは１以上の自然数）として、奇数のサンプル数ごとに所要時間を算出する。例えば、図１２のように、３軸加速度センサ２が４０ｍｓ間隔で３軸加速度データを計測する場合、計測されたデータのサンプル数が“２５”となる時間が１０００．０ｍｓとなる。抽出部１２は、歩数カウントアップの値が示す２歩分の時間が、２５個分のサンプル数と一致する区間を、「歩行の種類が平地歩行、かつ、歩行周期が２．０Ｈｚ」の歩行条件を満たす３軸加速度データとして抽出する。
【００４１】
また、１歩１．７Ｈｚの歩行周期で歩行者が２歩歩くのに要する時間は約１１７６．５ｍｓ（１０００／１．７×２歩≒１１７６．５ｍｓ）となる。３軸加速度センサ２が４０ｍｓ間隔で３軸加速度データを計測する場合、計測されたデータのサンプル数“２７”ごとの時間が１０８０ｍｓ、サンプル数が“２９”ごとの時間が１１６０ｍｓ、サンプル数“３１”ごとの時間が１２４０ｍｓとなる。すなわち、サンプル数が“２９”の場合の時間が最も１１７６．５ｍｓと近似する。そこで、抽出部１２は、歩数カウントアップの値が示す２歩分の時間が２９個分のサンプル数と一致する区間を「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件を満たす３軸加速度データとして抽出する。
【００４２】
図１３は、本実施例にかかる２歩１周期がサンプル数“２９”となる学習データの例を示す図である。図１３に示すように、データ番号１５３３〜１５６１の区間では、歩数カウントアップが“１”となる最新の時点から２歩分遡った時点と、サンプル数が“２９”となる時点が一致する。この場合、抽出部１２は、データ番号１５３３〜１５６１の区間を、「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件を満たす３軸加速度データとして抽出する。
【００４３】
上述の説明では、歩行周期の長さを奇数（２ｎ＋１）のサンプル数として対象のデータの区間を算出したが、これに限らない。例えば、抽出部１２が歩行周期の長さを偶数（２ｎ）のサンプル数として同様の演算をする構成を採用することも可能である。当該構成を採用した場合、奇数のサンプル数だけでなく、偶数のサンプル数も選択可能とすることにより、１サンプル単位で最適な歩行周期の長さを推定することができる。
【００４４】
ここで、計測した３軸加速度データの量によっては、２歩１周期の長さが２５または２９サンプル数分の歩行時間と一致する区間のみを学習用のデータとして抽出すると、データ数が不足する場合がある。このような場合は、抽出対象のサンプル数の範囲を広げることで、データ数を確保しても良い。例えば、「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件の３軸加速度データを抽出する場合に、２歩１周期に相当するサンプル数が“２９”となる区間だけでなく、“２８”または“３０”となる区間を抽出しても良い。
【００４５】
例えば、図１４は、本実施例にかかる２歩１周期がサンプル数“２８”となる学習データの例を示す図である。図１４に示すように、最新の歩数カウントアップが“１”となる最新の時点から２９サンプル数分遡ったデータ番号“１５３２”の時点では、歩数カウントアップのタイミングと一致しない。しかし、サンプル数が“２８”となるデータ番号“１５３３”の時点は、最新のカウントアップから２歩分遡った歩数カウントアップのタイミングと一致する。この場合、抽出部１２は、データ番号１５３４〜１５６１の区間を、「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件を満たす３軸加速度データとして抽出する。
【００４６】
また、図１５は、本実施例にかかる２歩１周期がサンプル数“３０”となる学習データの例を示す図である。図１５に示すデータの例では、サンプル数が“３０”となるデータ番号“１５３１”の時点が、最新のカウントアップから２歩分遡った歩数カウントアップのタイミングと一致する。この場合、抽出部１２は、データ番号１５３２〜１５６１の区間を、「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件を満たす３軸加速度データとして抽出する。
【００４７】
抽出部１２は、抽出した３軸加速度データを、歩行条件と対応付けて学習部１３に送出する。
【００４８】
次に、推定フェーズにおける各機能部の機能について説明する。第１の算出部１４は、入力部１１から取得した歩行者の３軸加速度時系列データと、記憶部２０に予め記憶された歩行状態ごとの歩行状態表現係数Ｃｑ，ｑ´から、歩行状態ごとに重心加速度を算出する。
【００４９】
具体的には、第１の算出部１４は、歩行者の２歩分と仮定した３軸加速度時系列データと歩行状態表現係数Ｃｑ，ｑ´から、歩行運動の身体重心加速度の重力方向成分の時系列データを算出する。２歩分の時系列データを算出するのは、歩行者の身体加速度が２歩１周期で変化するためである。歩行者の最新の２歩分のデータの抽出の一例として、予め設定された歩行者の２歩分に相当する時系列データの計測サンプル数の上限と下限の範囲に含まれるサンプル数ごとに、身体重心加速度の重力方向成分を表す時系列データを算出する。
【００５０】
例えば、歩行者が２歩歩くのに要する時間が８４０ｍｓ〜１６４０ｍｓである場合、３軸加速度センサ２が４０ｍｓごとに計測をすると、２歩分に相当するサンプル数の下限は“２１”、上限は“４１”となる。サンプル数が“２１”の場合は、１番目から２１番目のサンプルまでが２歩分のデータとなる。また、サンプル数が“４１”の場合は、１番目から４１番目のサンプルまでが２歩分のデータとなる。第１の算出部１４は、サンプル数２ｎ＋１ごとに演算をする場合、サンプル数が“２１，２３，・・・，３９，４１”のそれぞれの範囲で身体重心加速度の重力方向成分を表す時系列データを算出する。
【００５１】
身体重心加速度の重力方向成分を表す時系列データを算出するために、第１の算出部１４は、下記の式（４）によって、歩行状態ごとのＤＦＴ係数Ｐｑをそれぞれ求める。
【数４】
2018079102.tif 000006
【００５２】
式（４）において、ｎは１以上の自然数であり、サンプル数を表す。また、ｑ＝−ｎ，・・・，ｎ、ｑ´＝−ｎ，・・・，ｎ、ｑ≦ｑ´とする。また、式（４）において、Ｃｑ，ｑ´は歩行状態表現係数、Ｘｑ、Ｘｑ´、Ｙｑ、Ｙｑ´、Ｚｑ、Ｚｑ´、はＤＦＴ係数である。
【００５３】
第１の算出部１４は、式（４）で求めたＤＦＴ係数Ｐｑを、上述の式（４）に代入して逆離散フーリエ変換（Inverse  Discrete  Fourier  Transform，ＩＤＥＦＴ）することにより、身体重心加速度の重力方向成分を表す時系列データを算出する。第１の算出部１４が算出する身体重心加速度の重力方向成分を表す時系列データを、第１の重心加速度の一例とする。第１の算出部１４は、仮定した２歩１周期で算出した身体重心加速度の重力方向成分を表す時系列データを、歩行状態表現係数Ｃｑ，ｑ´と対応付けて推定部１６に送出する。
【００５４】
第２の算出部１５は、第１の算出部１４と同様に、入力部１１から取得した３軸加速度時系列データから歩行者の２歩分と仮定した区間を抽出する。第２の算出部１５は、３軸加速度時系列データの歩行者の２歩分と仮定した区間に対して、ローパスフィルタまたは移動平均フィルタを適用して、重力加速度を算出する。また、第２の算出部１５は、３軸加速度時系列データの歩行者の２歩分と仮定した区間に対して、バンドパスフィルタまたは移動平均フィルタを適用して、身体重心加速度の３軸方向成分を表す時系列データを算出する。フィルタの適用による重力加速度および身体重心加速度の３軸方向成分を表す時系列データの算出は、図９、図１０で説明した学習部１３と同様である。
【００５５】
そして、第２の算出部１５は、図１１で説明した学習部１３と同様に、算出した身体重心加速度の３軸方向成分を表す時系列データと、重力方向成分との内積をとることによって、歩行加速の重力方向成分を表す時系列データを算出する。第２の算出部１５は、算出した身体重心加速度の重力方向成分を表す時系列データを、推定部１６に送出する。第２の算出部１５が算出する身体重心加速度の重力方向成分を表す時系列データを、第２の重心加速度の一例とする。２歩分と仮定した各サンプル数に対応する第１の重心加速度は歩行状態表現係数Ｃｑ，ｑ´ごとに複数算出されるのに対して、第２の重心加速度は入力部１１から取得したデータのみから算出されるため、１種類となる。
【００５６】
推定部１６は、第１の算出部１４が算出した歩行状態ごとの第１の重心加速度のうち、第２の算出部１５が算出した第２の重心加速度との値の差が最も小さくなるものを特定する。推定部１６は、特定した身体重心加速度の重力方向成分を表す時系列データと対応づけられた歩行状態表現係数Ｃｑ，ｑ´を、推定対象の歩行者の歩行状態として推定する。例えば、歩行状態表現係数Ｃｑ，ｑ´が「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行条件における歩行者の歩行状態を示すものであれば、推定部１６は、歩行者は「歩行の種類が平地歩行、かつ、歩行周期が１．７Ｈｚ」の歩行をしたと推定する。
【００５７】
第１の重心加速度と第２の重心加速度の近さの判定には、推定部１６は、例えば、波形の近さの評価値を用いる。具体的には、推定部１６は、第１の重心加速度と第２の重心加速度の波形の評価値ｒを、下記の式（５）を用いて算出する。
【数５】
2018079102.tif 000007
【００５８】
式（５）における“ｙ［ｔ＋ｋ］”は第２の算出部１５が算出した身体重心加速度の重力方向成分を表す時系列データの波形、“〜ｙ［ｔ＋ｋ］”は、第１の算出部１４が算出した歩行状態ごとの身体重心加速度の重力方向成分を表す時系列データの波形を示す。ｎはサンプル数を示す１以上の自然数である。２ｎ＋１は２歩１周期に相当するサンプル数を示す。２ｎ＋１の値は、奇数の数列“２ｎ＋１＝・・・，２５，２７，２９，・・・”となる。
【００５９】
推定部１６は、評価値ｒを最小化する第１の重心加速度を特定する。例えば、２歩１周期のサンプル数（２ｎ＋１）の範囲が「２１≦２ｎ＋１≦４１」である場合、推定部１６は“２ｎ＋１＝２１”から“２ｎ＋１＝４１”までのｒの値を算出する。推定部１６は、各歩行状態ごとにｒの値が最小となる２ｎ＋１の値を求め、２歩分の歩行周期に該当する区間と、当該区間における歩行者の歩行状態とを推定する。推定部１６は、推定対象の歩行者の３軸加速度時系列データに対して、２歩１周期の単位で、上述の歩行状態の推定処理を繰り返す。また、推定部１６は、歩行周期を特定することで、計測時間内の歩行者の歩数を計数することができる。推定部１６は、特定した歩行状態と歩数とを不図示の表示装置等に表示させて歩行者に通知する構成を採用しても良い。
【００６０】
次に、以上のように構成された本実施例の処理の流れについて説明する。図１６は、本実施例にかかる学習フェーズの処理の流れを示すフローチャートである。まず、入力部１１は、歩行状態ごとの複数セットの３軸加速度時系列データを３軸加速度センサ２から入力する（Ｓ１）。また、入力部１１は、圧電センサ（不図示）から、歩行状態ごとの３軸加速度時系列データと同時に計測した歩数カウントアップデータを入力する構成を採用しても良い。入力部１１は、入力した歩行状態ごとの３軸加速度時系列データおよび歩数カウントアップデータを、抽出部１２に送出する。
【００６１】
抽出部１２は、入力部１１から取得した３軸加速度時系列データおよび歩数カウントアップデータから、歩行者が一定の歩行周期で歩行している複数の部分区間を抽出する（Ｓ２）。抽出部１２は、圧電センサ（不図示）から入力した信号の代わりに、図１１で説明した身体重心加速度の重力方向成分を表す時系列データを求め、身体重心加速度の重力方向成分の値が極大値をとる時点を、歩数カウントアップのタイミングとしても良い。抽出部１２は、抽出した３軸加速度データを、歩行条件と対応付けて学習部１３に送出する。
【００６２】
学習部１３は、抽出部１２が抽出した３軸加速度時系列データの部分区間ごとのＸ、Ｙ、Ｚ軸加速度を式（１−１）〜（１−４）によってそれぞれ離散フーリエ変換し、ＤＦＴ係数Ｘｑ、Ｙｑ、およびＺｑを算出する（Ｓ３）。
【００６３】
また、学習部１３は、抽出部１２が抽出した３軸加速度時系列データの部分区間ごとに、ローパスフィルタまたは移動平均フィルタによって重力加速度を算出する。また、学習部１３は、抽出部１２が抽出した３軸加速度時系列データの部分区間ごとに、バンドパスフィルタまたは移動平均フィルタによって身体重心加速度を算出する。学習部１３は、算出した重力加速度と身体重心加速度の内積をとり、身体重心加速度の重力方向成分の時系列データを算出する（Ｓ４）。
【００６４】
学習部１３は、Ｓ４で算出した身体重心加速度の重力方向成分の時系列データを式（２）によって離散フーリエ変換し、ＤＦＴ係数Ｐｑを算出する（Ｓ５）。
【００６５】
学習部１３は、歩行状態ごとに複数のデータセットから算出したＤＦＴ係数Ｘｑ、Ｙｑ、ＺｑおよびＰｑを式（３）に代入して、正規方程式を解法することにより歩行状態表現係数Ｃｑ，ｑ´を算出する。学習部１３は、算出した歩行状態表現係数Ｃｑ，ｑ´を、歩行条件と対応付けて記憶部２０に保存する（Ｓ６）。
【００６６】
次に、本実施例における推定フェーズの処理の流れを説明する。図１７は、本実施例にかかる推定フェーズの処理の流れを示すフローチャートである。入力部１１は、３軸加速度センサ２が計測した歩行状態推定対象の歩行者の３軸加速度時系列データを入力する（Ｓ１１）。入力部１１は、３軸加速度時系列データを第１の算出部１４および第２の算出部１５に送出する。
【００６７】
第１の算出部１４は、入力部１１から取得した歩行者の３軸加速度時系列データと、学習済みの歩行状態ごとの歩行状態表現係数Ｃｑ，ｑ´から、歩行状態ごとに重心加速度を算出する（Ｓ１２）。具体的には、第１の算出部１４は、入力部１１から取得した歩行者の３軸加速度時系列データから２歩１周期分と仮定したサンプル数ごとに、式（４）を用いて歩行状態表現係数Ｃｑ，ｑ´ごとのＤＦＴ係数Ｐｑを算出する。そして、第１の算出部１４は、式（４）で求めたＤＦＴ係数Ｐｑを、上述の式（２）に代入して逆離散フーリエ変換することにより、身体重心加速度の重力方向成分を表す時系列データ（ｐ（ｔ））を算出する。第１の算出部１４は、算出した複数の身体重心加速度の重力方向成分を表す時系列データ、すなわち第１の加速度を、それぞれ歩行状態表現係数Ｃｑ，ｑ´と対応付けて推定部１６に送信する。
【００６８】
第２の算出部１５は、入力部１１から取得した３軸加速度時系列データからローパスフィルタとバンドパスフィルタによって、歩行者の身体重心加速度を算出する（Ｓ１３）。具体的には、第２の算出部１５は、入力部１１から取得した歩行者の３軸加速度時系列データの２歩分と仮定した区間に対して、ローパスフィルタまたは移動平均フィルタを適用して、重力加速度を算出する。また、第２の算出部１５は、３軸加速度時系列データの２歩分と仮定した区間に対して、バンドパスフィルタまたは移動平均フィルタを適用して、身体重心加速度の３軸方向成分を表す時系列データを算出する。第２の算出部１５は、算出した身体重心加速度の３軸方向成分を表す時系列データと、重力方向成分との内積をとることによって、歩行加速の重力方向成分を表す時系列データを算出する。第２の算出部１５は、算出した身体重心加速度の重力方向成分を表す時系列データ、すなわち第２の加速度を、推定部１６に送出する。
【００６９】
推定部１６は、第１の加速度のうち、第２の加速度と時系列の波形が最も一致するものを選択する（Ｓ１４）。具体的には、推定部１６は、２歩１周期のサンプル数２ｎ＋１の値ごとに、第１の重心加速度と第２の重心加速度の波形の評価値ｒを、上述の式（５）を用いて算出する。推定部１６は、第１の加速度のうち、第２の加速度の波形の差異の評価値ｒの値が最小となる２ｎ＋１の値を求め、２歩分の歩行周期に該当する区間を特定する。また、推定部１６は、評価値ｒの値が最小となった第１の加速度を選択する。
【００７０】
推定部１６は、選択した第１の加速度に対応付けられた歩行状態表現係数Ｃｑ，ｑ´が表す歩行状態を、当該２歩分の区間における歩行者の歩行状態として推定する（Ｓ１５）。
【００７１】
推定部１６は、推定対象の歩行者の３軸加速度時系列データが終了するまで、２歩１周期の単位で、上述の歩行状態の推定処理を繰り返す（Ｓ１６“Ｎｏ”）。推定部１６は、入力部１１が入力した全ての３軸加速度時系列データに対して歩行状態の推定を行った場合、歩行状態の推定処理を終了する（Ｓ１６“Ｙｅｓ”）。
【００７２】
このように、本実施例における移動体端末１０は、第１の算出部１４が歩行状態表現係数Ｃｑ，ｑ´を用いて歩行状態ごとに算出した第１の重心加速度のうち、第２の算出部１５が算出した第２の重心加速度に対応するものを特定することにより歩行状態を推定する。このため、本実施例における移動体端末１０によれば、歩行状態ごとの歩行状態表現係数Ｃｑ，ｑ´を用いて、歩行者の歩行状態を高精度に推定することができる。また、本実施例における移動体端末１０によれば、歩行周期を特定することで３軸加速度時系列データの計測時間内の歩行者の歩数を高精度に計数することができる。
【００７３】
従来、波形の振幅や周期に複数の閾値を設定することにより、歩行者の歩数や歩容を推定する技術においては、加速度センサ等のデバイスや歩行時の加速度等の波形の性質に対する多くのノウハウに依存している。これに対して、本実施例における移動体端末１０は、学習済みの歩行状態表現係数Ｃｑ，ｑ´を用いることにより、ノウハウに寄らずに高精度に歩行状態を推定することができる。また、従来技術では、多数の３軸加速度時系列データを収集しても歩行状態の推定の精度を効率良く高めることは困難であるが、本実施例の移動体端末１０によれば、収集したデータを利用して学習することにより推定の精度を効率よく高めることができる。
【００７４】
また、従来は、加速度センサの揺れや、ノイズ等によって歩行状態を高精度に検出することが困難な場合があった。例えば、加速度センサを歩行者の身体のどの位置に設置するかによって、３軸加速度時系列データの波形が異なり、歩数や歩容を高精度に推定することが困難な場合があった。本実施例における移動体端末１０によれば、歩行者がどのように移動体端末１０を携帯する場合であっても、高精度に歩行状態を推定することができる。
【００７５】
図１８は、移動体端末１０の携帯について説明する図である。本実施例では移動体端末１０をスマートフォンとした例を説明したが、移動体端末１０を歩数計や腕時計等のウェアラブルな装置とする構成を採用しても良い。図１８に示すように、歩行者は、移動体端末１０を腰に固定したり、リストに装着したりすることにより、携帯する。
【００７６】
また、歩行者は、移動体端末１０をズボンのポケットに入れて携帯しても良い。図５に示したように、歩行者の重心は腰付近にあるため、移動体端末１０を腰に固定した場合は、３軸加速度時系列データの波形は歩行運動と一致する。このような３軸加速度時系列データから算出された歩行加速度の重力方向成分を表す時系列データは、図１１のように明確な周期性をもつ。一方、歩行者が移動体端末１０をズボンのポケットに入れて携帯した場合は、３軸加速度時系列データの波形は、歩行運動による加速度の他に、ポケットの揺れの影響を受ける。図１９は、身体重心加速度の重力方向成分を表す時系列データの他の一例を示す図である。図１９に示す身体重心加速度の重力方向成分を表す時系列データは、移動体端末１０が歩行者のズボンのポケットの中にある場合に計測した３軸加速度時系列データから、学習部１３が算出したものである。図１９に示すように、身体重心加速度の重力方向成分を表す時系列データの波形がいびつな山形となっている。従来技術においては、このようないびつな波形から歩数を高精度に推定することが困難であった。
【００７７】
しかしながら、図１９に示す波形も、２歩１周期で周期的に変化している。本実施例の移動体端末１０では、加速度の値が閾値を超えたか否かではなく、３軸加速度時系列データの波形の周期によって歩行状態を推定するため、波形の形状がいびつであっても、高精度に歩行状態を推定することができる。
【００７８】
また、本実施例における移動体端末１０は、歩行者の３軸加速度時系列データから、身体重心加速度の重力方向成分、左右成分、または前後成分を算出する歩行状態表現係数Ｃｑ，ｑ´を算出する。歩行状態表現係数Ｃｑ，ｑ´の一例は変換行列である。このため、移動体端末１０は、１の３軸加速度時系列データから、学習済みの歩行状態表現係数Ｃｑ，ｑ´（変換行列）ごとの複数の第１の加速度を算出することができ、高精度に歩行状態を推定することができる。
【００７９】
また、本実施例における移動体端末１０の学習部１３は、３軸加速度時系列データを離散フーリエ変換して得られるＤＦＴ係数Ｘｑ、ＹｑおよびＺｑを、身体重心加速度の重力方向成分のＤＦＴ係数Ｐｑへと変換する歩行状態表現係数Ｃｑ，ｑ´（変換行列）を算出する。このため、推定フェーズにおいて、歩行状態表現係数Ｃｑ，ｑ´（変換行列）から求めたＤＦＴ係数Ｐｑを逆離散フーリエ変換することにより、身体重心加速度の重力方向成分を表す時系列データを算出することができる。また、データ間の周期が一致すると波形が一致するという離散フーリエ変換の特性を利用することにより、学習に用いた３軸加速度時系列データと、歩行状態を推定する対象の歩行者の３軸加速度時系列データの周期性を高精度に比較することができる。
【００８０】
また、本実施例における移動体端末１０によれば、歩行状態ごとの複数の３軸加速度時系列データを収集する際に歩数を計数（カウントアップ）することにより、抽出部１２が一定の歩行周期で歩行している区間を抽出する。このため、学習部１３が、歩行状態ごと歩行状態表現係数Ｃｑ，ｑ´算出するにあたり、所定の歩行条件に一致した学習データを使用することにより、学習の精度を高めることができる。
【００８１】
また、本実施例における移動体端末１０は、予め設定された２歩１周期に相当する時間長の上限および下限の範囲内で、第１の重心加速度の波形と、第２の重心加速度の波形とが最も近似する区間を、歩行者の２歩１周期の時間長と推定する。また、推定部１６が当該推定の処理を繰り返すことにより、歩行者の歩行状態を２歩１周期ごとに推定する。このように歩行者の歩行周期を仮定して、第１の重心加速度の波形と、第２の重心加速度の波形とを比較することにより、効率的に歩行状態を推定することができる。
【００８２】
本実施例では、身体重心加速度の重力方向成分の時系列データを用いて歩行周期の推定を行ったが、これに限らない。歩行者が規則的なリズムで歩行している場合、歩行運動の加速度は、重力方向だけでなく、左右方向、前後方向にも周期的に変化する。このため、身体重心加速度の左右方向成分、または前後方向成分の時系列データを用いて歩行周期の推定を行う構成を採用しても良い。
【００８３】
また、本実施例ではローパスフィルタとバンドパスフィルタの両方を適用して身体重心加速度の重力方向成分を表す時系列データを算出しているが、いずれか一方のフィルタによって算出する構成を採用しても良い。
【００８４】
また、本実施例では第１の算出部１４および第２の算出部１５は、奇数のサンプル数２ｎ＋１ごとに歩数の演算をするとして説明したが、これは一例であり、２ｎ等の偶数のサンプル数を演算対象としても良い。また、本実施例では第１の算出部１４および第２の算出部１５が、歩行者の３軸加速度時系列データから、２歩分に相当する区間を仮定する構成を採用したが、推定部１６が２歩分に相当する区間を仮定する構成を採用しても良い。
【００８５】
また、本実施例では歩行者が２歩歩くのに要する時間は８４０ｍｓ〜１６４０ｍｓとして２歩１周期に相当するサンプル数の範囲を設定したが、これに限らない。例えば、歩行者が２歩歩くのに要する時間は７００ｍｓ〜１４００ｍｓとしても良い。
【００８６】
また、本実施例では、第１の算出部１４および第２の算出部１５は、２歩１周期分と仮定したサンプル数ごとに第１の加速度および第２の加速度を算出して推定部１６に送出しているが、これに限らない。例えば、第１の算出部１４および第２の算出部１５は２歩１周期ごとに区切らずに、入力部１１から取得した全サンプルを対象として第１の加速度および第２の加速度を算出して推定部１６に送出する構成を採用しても良い。当該構成を採用する場合、推定部１６は取得した第１の加速度および第２の加速度を２歩１周期分または６歩１周期分と仮定したサンプル数ごとに区切って評価値ｒを算出することで、上述した歩行状態の推定を行う構成を採用しても良い。
【００８７】
また、本実施例では、推定部１６は、計測時刻の早いデータから時系列に歩行状態を推定するように説明したが、これに限らない。例えば、３軸加速度センサ２が計測した３軸加速度時系列データを記憶部２０が記憶し、計測終了後に最新の２歩分から推定部１６が歩行状態を推定する構成を採用しても良い。当該構成を採用する場合、第１の算出部１４および第２の算出部１５は最新の計測データから、計測時刻がより過去のデータへ遡って、２歩１周期分ずつの第１の加速度および第２の加速度を算出する構成を採用しても良い。
【００８８】
（変形例１）
上述の実施例では、推定フェーズにおいて、２歩１周期ごとに第１の加速度と第２の加速度とを比較することにより歩行周期を２歩１周期ずつ順に確定したが、これに限らない。本変形例では、歩行周期の確定を先送りすることにより、より高精度に歩行周期を推定する。
【００８９】
図２０は、本変形例にかかる連続する歩行周期の長さの推定を説明する図である。図２０のｔ１、ｔ２、ｔ３は、それぞれ２歩１周期の歩行周期の長さを示す。また、ｔ１、ｔ２、ｔ３にかかる歩行周期は連続するものとする。言い換えれば、ｔ１、ｔ２、ｔ３は、歩行者が連続する６歩（２歩１周期×３セット）を歩く際に要する時間の長さである。また、系列１〜８は、歩行周期の組み合わせのパターンを示す。図２０において、ｎはサンプル数を表す１以上の自然数である。２ｎ＋１は、２歩１周期に相当するサンプル数を示す。
【００９０】
第１の算出部１４および第２の算出部１５は、６歩３周期分と仮定したサンプル数の３軸加速度データから、歩行周期の組み合わせのパターンごとの第１の加速度を第２の加速度とを算出する。例えば、図２０の系列１は、６歩３周期中の最初の２歩１周期に相当する時間長ｔ１と、２番目の２歩１周期に相当する時間長ｔ２と、３番目の２歩１周期に相当する時間長ｔ３に含まれるサンプル数がそれぞれ“２５”である組み合わせである。これに対して系列２は、ｔ１とｔ２に含まれるサンプル数はそれぞれ“２５”であるが、ｔ３に含まれるサンプル数は“２９”である組み合わせである。言い換えれば、系列１では歩行者はｔ１〜ｔ３の間、２．０Ｈｚの歩行周期で歩行しているのに対し、系列２では歩行者はｔ３から歩行周期を１．７Ｈｚに変化させている。
【００９１】
第１の算出部１４は、２歩１周期３セット分の組み合わせのパターンごとの第１の加速度を、歩行状態表現係数Ｃｑ，ｑ´とそれぞれ対応付けて推定部１６に送出する。また、第２の算出部１５は、２歩１周期３セット分の組み合わせのパターンごとの第２の加速度を、推定部１６に送出する。
【００９２】
図２０では、２歩１周期に相当するサンプル数２ｎ＋１が“２５”または“２９”のいずれかである場合を例として系列１〜８の８つの組み合わせパターンを示したが、これに限らない。例えば、歩行者が２歩歩くのに要する時間が８４０ｍｓ〜１６４０ｍｓである場合、３軸加速度センサ２が４０ｍｓごとに計測をすると、２歩分に相当するサンプル数の下限は“２１”、上限は“４１”となる。この場合、２歩１周期に相当するサンプル数２ｎ＋１は“２１，２３，・・・，３９，４１”となる。この場合、サンプル数の種類は１１種類となるので、２歩１周期３セット分の組み合わせは１６５パターンとなる。
【００９３】
推定部１６は、上述の式（５）を用いて、２歩１周期３セット（６歩）分の第１の加速度と第２の加速度の時系列の波形の差を算出し、その差が最小となる組み合わせパターンを選択する。推定部１６は、選択した組み合わせパターンのｔ１のサンプル数を、当該６歩中の最初の２歩１周期の周期長として推定する。例えば、系列２の組み合わせにおいて、第１の加速度と第２の加速度の時系列の波形の差が最小となる場合、推定部１６は、最初の２歩１周期の周期長を１０００．０ｍｓ（４０ｍｓ×２５サンプル数）と推定する。また、推定部１６は、選択した第１の加速度に対応付けられた歩行状態表現係数Ｃｑ，ｑ´を、最初の２歩１周期の歩行状態として推定する。
【００９４】
ｔ１のサンプル数が確定すると、第１の算出部１４および第２の算出部１５は、ｔ１の次のサンプルデータから、２歩１周期３セット分の組み合わせのパターンごとの第１の加速度および第２の加速度を算出する。例えば、推定部１６がｔ１に相当するサンプル数２ｎ＋１が“２５”と推定し、データ範囲がサンプルの１番目から２５番目（１≦ｎ≦２５）であるとする。この場合、第１の算出部１４および第２の算出部１５は、２６番目のサンプルデータから開始する６歩３周期を対象として、第１の加速度および第２の加速度を算出する。第１の算出部１４および第２の算出部１５は、２６番目以降のサンプルデータから算出した、２歩１周期３セット分の組み合わせのパターンごとの第１の加速度および第２の加速度を、推定部１６に送出する。
【００９５】
推定部１６は、上述のように、第１の加速度と第２の加速度の時系列の波形の差が最小となる組み合わせパターンを選択することによって、取得した２歩１周期３セット分の第１の加速度および第２の加速度のうち、最初の２歩１周期の周期長を推定する。第１の算出部１４、第２の算出部１５および推定部１６は、入力部１１が入力する３軸加速度データが終了するまで、上述の処理を繰り返して、歩行者の歩行状態を推定する。
【００９６】
本変形例の推定部１６は２歩１周期３セット分の組み合わせのパターンごとの第１の加速度および第２の加速度を比較した結果から、最初の２歩１周期の歩行周期長を推定する。言い換えれば、本変形例の推定部１６は、第１の算出部１４および第２の算出部１５が３セット分の第１の加速度および第２の加速度を算出するまで歩行周期の確定を先送りする。
【００９７】
このように、本変形例における移動体端末１０によれば、連続する複数周期の歩行周期長の組み合わせを考慮して歩行周期を推定するため、より高精度に歩行周期を推定することができる。
【００９８】
なお、本変形例では推定部１６は２歩１周期３セット（６歩３周期）ごとに第１の加速度と第２の加速度とを比較するとしたが、６歩３周期に限らず、複数周期分であれば良い。
【００９９】
（変形例２）
上述の実施例では、歩行状態の推定を、歩行者が携帯する移動体端末１０が行う構成を採用したが、これに限らない。例えば、移動体端末１０の３軸加速度センサ２が計測した３軸加速度時系列データを、サーバ等の外部の情報処理装置が受信して歩行者の歩行状態を推定する構成を採用しても良い。
【０１００】
図２１は、本変形例にかかる歩行状態推定システム２００の全体構成を示す図である。図２１に示すように、本変形例にかかる歩行状態推定システム２００は、移動体端末１０とサーバ１００からなる。移動体端末１０のハードウェア構成は、図３で説明した実施例と同様である。サーバ１００は、ＣＰＵ、メモリ、ハードウェア等の一般的なハードウェア構成を備える情報処理装置である。サーバ１００は、ネットワークＮを介して移動体端末１０と相互に接続する。ネットワークＮは、有線や無線を問わず、例えば、インターネットなどのＷＡＮ（Wide  Area  Network）である。図２１では１台のサーバ１００に対して１台の移動体端末１０が接続する例を示すが、１台のサーバ１００に対して複数の移動体端末１０が接続する構成を採用しても良い。
【０１０１】
サーバ１００は、図４で説明した実施例の移動体端末１０の各機能部（入力部１１、抽出部１２、学習部１３、第１の算出部１４、第２の算出部１５、推定部１６、記憶部２０）を備える。サーバ１００の入力部１１は、移動体端末１０の３軸加速度センサ２が計測した歩行者の３軸加速度時系列データを、ネットワークＮを介して受信する。サーバ１００の各機能部（入力部１１、抽出部１２、学習部１３、第１の算出部１４、第２の算出部１５、推定部１６、記憶部２０）は図１６のフローチャートで説明した学習フェーズの処理および図１７のフローチャートで説明した推定フェーズの処理を行い、歩行者の歩行状態を推定する。
【０１０２】
当該構成を採用した場合、歩行者の歩行状態の推定結果をサーバ１００で集中管理することができる。サーバ１００が歩行者の歩行状態の推定結果を集中管理することで、例えば、移動体端末１０を携帯した作業者の歩行状態をサーバ１００で監視して、作業者の体調等の管理をすることができる。
【０１０３】
あるいは、学習フェーズと推定フェーズとをそれぞれ異なる装置で行う構成を採用しても良い。例えば、サーバ１００は、図１６のフローチャートで説明した学習フェーズの処理を行う。そして、サーバ１００は、算出した学習結果である、歩行状態表現係数Ｃｑ，ｑ´を、歩行条件と対応付けて、ネットワークＮを介して移動体端末１０に送信する。移動体端末１０は、図１７のフローチャートで説明した推定フェーズの処理を行い、歩行者の歩行状態を推定する。当該構成を採用する場合、例えばサーバ１００は入力部１１、抽出部１２および学習部１３を備える構成を採用しても良い。また、移動体端末１０は、入力部１１、第１の算出部１４、第２の算出部１５、推定部１６、記憶部２０を備える構成を採用しても良い。
【０１０４】
当該構成を採用する場合、学習用の多数の３軸加速度時系列データから歩行状態表現係数Ｃｑ，ｑ´を算出する学習フェーズの処理をサーバ１００等の計算資源の豊富なコンピュータで実行することにより、より多くのデータを用いて学習することができる。このため、当該構成の歩行状態推定システム２００によれば、より高精度に歩行者の歩行状態を推定することができる。また、当該構成を採用する場合、サーバ１００が算出した歩行状態表現係数Ｃｑ，ｑ´を複数の移動体端末１０に送信して推定処理に用いることができるため、より効率的に学習結果を活用することができる。
【０１０５】
また、サーバ１００の学習結果を移動体端末１０に入力した後は、サーバ１００と移動体端末１０とはネットワークＮによる接続を解消する構成を採用しても良い。また、装置同士がネットワークＮで接続するのではなく、サーバ１００が算出した学習結果を移動体端末１０の生産前に記憶装置３に予め保存する構成を採用しても良い。
【０１０６】
また、図３に示した各装置の各構成は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、任意の単位で分散または統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１０７】
また、実施例および変形例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【符号の説明】
【０１０８】
１  無線部
１ａ  アンテナ
２  ３軸加速度センサ
３  記憶装置
４  プロセッサ
１０  移動体端末
１１  入力部
１２  抽出部
１３  学習部
１４  第１の算出部
１５  第２の算出部
１６  推定部
２０  記憶部
１００  サーバ
２００  歩行状態推定システム
Ｎ  ネットワーク
【図１】
2018079102.tif 000008
【図２】
2018079102.tif 000009
【図３】
2018079102.tif 000010
【図４】
2018079102.tif 000011
【図５】
2018079102.tif 000012
【図６】
2018079102.tif 000013
【図７】
2018079102.tif 000014
【図８】
2018079102.tif 000015
【図９】
2018079102.tif 000016
【図１０】
2018079102.tif 000017
【図１１】
2018079102.tif 000018
【図１２】
2018079102.tif 000019
【図１３】
2018079102.tif 000020
【図１４】
2018079102.tif 000021
【図１５】
2018079102.tif 000022
【図１６】
2018079102.tif 000023
【図１７】
2018079102.tif 000024
【図１８】
2018079102.tif 000025
【図１９】
2018079102.tif 000026
【図２０】
2018079102.tif 000027
【図２１】
2018079102.tif 000028