(57)【特許請求の範囲】
【請求項１】
歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度とを検出する検出手段と、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段と、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出手段と、
前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別する歩き方判別手段と、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出手段によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、右方向のスコアを大きくするポイント加算処理をおこなう方向算出手段と、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段と、
前記方向判別手段によって判別された方向とともに、前記歩き方判別手段の判別結果に応じて前記歩行体が蟹歩き歩行中である旨の情報を出力する出力手段と、
を備えることを特徴とする移動方向算出装置。
【請求項２】
歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度とを検出する検出手段と、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段と、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出手段と、
前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別する歩き方判別手段と、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出手段によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、左方向ポイントを大きくするポイント加算処理をおこなう方向算出手段と、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段と、
前記方向判別手段によって判別された方向とともに、前記歩き方判別手段の判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力する出力手段と、
を備えることを特徴とする移動方向算出装置。
【請求項３】
前記歩行間隔特定手段は、前記Ｚ軸方向の加速度曲線の振幅がしきい値以上となるピーク間隔を前記歩行体の歩行間隔として特定することを特徴とする請求項１または２に記載の移動方向算出装置。
【請求項４】
前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度曲線のピーク数が所定以上であった場合、前記歩行体が忍び足歩行していると判別する歩き方判別手段を備え、
前記出力手段は、前記歩き方判別手段の判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力することを特徴とする請求項３に記載の移動方向算出装置。
【請求項５】
前記方向判別手段は、前記歩き方判別手段によって前記歩行体が駆け足歩行していると判別された場合に、前記方向算出手段によって算出されたスコアが最も大きい方向の逆方向を前記歩行体の移動方向と判別するとともに、前記歩き方判別手段の判別結果に応じて前記歩行体が駆け足歩行中である旨の情報を出力することを特徴とする請求項１〜４のいずれか一つに記載の移動方向算出装置。
【請求項６】
歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付けるコンピュータを、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出手段、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出手段、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出手段によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、右方向のスコアを大きくするポイント加算処理をおこなう方向算出手段、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段、
前記方向判別手段によって判別された方向とともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別した判別結果に応じて前記歩行体が蟹歩き歩行中である旨の情報を出力する出力手段、
として機能させることを特徴とする移動方向算出プログラム。
【請求項７】
歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付けるコンピュータを、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出手段、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出手段、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出手段によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、左方向ポイントを大きくするポイント加算処理をおこなう方向算出手段、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段、
前記方向判別手段によって判別された方向とともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別した判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力する出力手段、
として機能させることを特徴とする移動方向算出プログラム。
【請求項８】
歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付ける装置が、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出工程と、
前記検出工程によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定工程と、
前記歩行間隔特定工程によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出工程と、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出工程によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、右方向のスコアを大きくするポイント加算処理をおこなう方向算出工程と、
前記８方向のうち、前記方向算出工程によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別工程と、
前記方向判別工程によって判別された方向とともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別した判別結果に応じて前記歩行体が蟹歩き歩行中である旨の情報を出力する出力工程と、
を含むことを特徴とする移動方向算出方法。
【請求項９】
歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付ける装置が、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出工程と、
前記検出工程によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定工程と、
前記歩行間隔特定工程によって特定された歩行間隔における前記各軸方向の加速度曲線から、前記各軸方向の加速度曲線を特徴付ける値を抽出する抽出工程と、
前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動していると判断する一以上の条件のうち、前記抽出工程によって抽出された値が満たす条件の数を、各方向に移動している可能性を表すスコアとして算出するとともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、左方向ポイントを大きくするポイント加算処理をおこなう方向算出工程と、
前記８方向のうち、前記方向算出工程によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別工程と、
前記方向判別工程によって判別された方向とともに、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別した判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力する出力工程と、
を含むことを特徴とする移動方向算出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、歩行体に装着して歩行体の移動方向を算出する移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法に関する。
【背景技術】
【０００２】
従来より、ＧＰＳ信号などの外部からの測定信号を使用することなく自律的に歩行体自身の体の移動方向を算出する技術は多数提供されている。移動方向を検出するには、通常、磁気センサおよびジャイロセンサを利用し、それぞれのセンサから得られる情報を使用して体の向きを検出し、その体の向きに対して必ず進んでいるとするか、あらかじめどの方向に進むかを人が設定して位置を算出していた。
【０００３】
具体的には、たとえば、Ｘ軸、Ｙ軸およびＺ軸の加速度センサを用いてＺ軸加速度の正の値のピークから負の値のピークの間で、Ｘ軸とＹ軸の加速度の合成値を求め、この合成値が正の値のピークの時のＸ軸とＹ軸の加速度から移動角度を求める技術が開示されている（たとえば、下記特許文献１、２参照。）。
【０００４】
【特許文献１】特開２００３−３０２４１９号公報
【特許文献２】特開２００７−３２５７２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したような従来の自律型位置検出装置では、まず、磁気センサやジャイロセンサを用いて利用者の体の向きを算出し、その後、算出した向きに必ず進んでいるか、否かを判定して移動方向を算出していた。この算出した向きに必ず進んでいるか、否かの判定基準は、あらかじめ設定した方向や、限定した方向に進んでいるかなど、あらかじめ利用者などによって設定されたものである。しかしながら、通常人の移動は前進のみならず後進や左右の横歩き、斜め方向への移動など多種の移動が組み合わされており、移動方向を前進などに固定されていては、正確な位置の検出が難しいという問題があった。
【０００６】
また、上記特許文献１の技術では、移動方向はある程度算出できるものの、平方根や三角関数の多大な演算が必要となる。移動方向を算出する装置という目的上、装置本体は人が装着可能な形状かつ重量の携帯機器でなければならない。しかしながら、このような携帯機器によって算出するには上記の技術の場合、処理負荷が重く、さらに、人の体の揺れなどによる誤差要因を含んでいた。したがって、多大な計算量にも関わらず、高精度な移動方向の算出は期待できないという問題があった。
【０００７】
また、上記特許文献２の技術では、前後左右の４方向の分解能しか備えていない。したがって、特定の施設内にいる場合や、歩行者が特定の競技下である場合以外では、正確な移動方向を把握できないという問題があった。
【０００８】
この発明は、上述した従来技術による問題点を解消するため、処理負担が軽く、かつ、高精度に歩行体の移動方向を算出可能な移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するため、この移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法は、歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度とを検出する検出手段を歩行体に装着し、検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する処理と、特定された歩行間隔における前記各軸方向の加速度曲線を用いて、前記歩行体が前後、左右、右斜め前後、左斜め前後の８方向の各方向に移動しているかの可能性をポイント化したスコアを算出する処理と、前記８方向のうち、算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する処理と、判別された移動方向を出力する処理とを備えることを要件とする。
【００１０】
この移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法によれば、検出手段によって検出された３軸の加速度曲線を用いて前後、左右、右斜め前後、左斜め前後の８方向それぞれについて、歩行体が移動している可能性をスコアとして表現することができる。したがって、このスコアを参照することによって、歩行体の移動方向を容易に判別することができる。
【発明の効果】
【００１１】
この移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法によれば、処理負担が軽く、かつ、高精度に歩行体の移動方向算出を実現することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
以下に添付図面を参照して、この移動方向算出装置、移動方向算出プログラムおよび移動方向算出方法の好適な実施の形態を詳細に説明する。
【００１３】
（移動方向算出処理の概要）
まず、本実施の形態にかかる移動方向算出処理の概要について説明する。図１は、移動方向算出処理の概要を示す説明図である。
【００１４】
図１のように、本実施の形態では、歩行体１００に移動方向算出装置１１０を装着させる。移動方向算出装置１１０は、検出部１１１と、歩行間隔特定部１１２と、方向算出部１１３と、判別部１１４とを含んでいる。
【００１５】
検出部１１１は、図１に示したように、歩行体１００の正面方向となるＸ軸と、正面方向に対して直角に交わる歩行体１００の左右方向となるＹ軸と、歩行体１００の垂直方向となるＺ軸との３軸方向の加速度とを検出する。なお、本実施の形態では、便宜上図１に示した方向にＸ、Ｙ、Ｚの名称を付けて説明するが、これら３方向の加速度を検出することができれば、特に名称は限定されない。
【００１６】
歩行間隔特定部１１２は、検出部１１１によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を歩行体１００の歩行間隔として特定する。Ｚ軸方向の加速度曲線は、ｓｉｎカーブを描く。したがって、ピーク間隔とは、Ｚ軸方向の加速度曲線の正の値の最大振幅が出現する間隔もしくは、負の値の最大振幅が出現する間隔をあらわす。
【００１７】
さらに、歩行間隔特定部１１２は、厳密に歩行間隔を特定するために、しきい値を設定してもよい。すなわち、ｓｉｎカーブが示すピークを一様に検出するのではなく、最大値ピークの場合も最小値ピークの場合もあらかじめ定めたしきい値幅以上になった場合にのみピークとみなすことによって、歩行体１００の体の揺れなどによって発生したＺ軸方向の加速度曲線の細かなピークを一歩と誤検出してしまうような事態を避けることができる。
【００１８】
方向算出部１１３は、歩行間隔特定部１１２によって特定された歩行間隔におけるＸ、Ｙ、Ｚの各軸方向の加速度曲線を用いて、歩行体１００が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動しているかの可能性をポイント化したスコアを算出する。
【００１９】
ここでスコアの算出についてさらに説明する。本実施の形態の場合、各軸の加速度曲線から歩行間隔特定部１１２によって特定された一歩の歩行間隔における各軸方向の加速度曲線から下記のような値を取得する。
【００２０】
・各軸方向の加速度曲線の振幅値
・Ｘ軸、Ｙ軸方向の加速度曲線が最大値および最小値となる時間
・Ｘ軸、Ｙ軸方向の加速度曲線の絶対値の積分値
・Ｚ軸方向の加速度曲線の値が最小となる時のＸ軸、Ｙ軸方向の加速度曲線の傾斜
・Ｚ軸方向の加速度曲線の頂点数
・Ｚ軸方向の加速度曲線の２つ目の頂点におけるＸ軸、Ｙ軸方向の加速度
【００２１】
これらの値を用いて下記に示す可能性判断をおこなう。この判断結果に応じて、８方向のうち移動している可能性が高い方向のスコアにポイントを加算していく。そして、すべての判断が終わった時点でのポイントの累積が、各方向のスコアとなる。
【００２２】
（１）「前後」または「左右」のどちらに移動しているかの可能性判断
（２）「前」または「後」のどちらに移動しているかの可能性判断
（３）「右」または「左」のどちらに移動しているかの可能性判断
（４）「前後」、「左右」、「斜め」のいずれかに移動しているかの可能性判断
【００２３】
判別部１１４は、上述した８方向のうち、方向算出部１１３によって算出されたスコアが最も大きい方向を歩行体１００の移動方向と判別する。また、判別部１１４は、上述したような方向スコアの算出に加え、歩行体１００の歩き方を判別する機能を備えている。移動方向算出装置１１０では、歩行体１００が通常歩行、駆け足、忍び足、蟹歩きのいずれの歩き方をしているかを判別することができる。
【００２４】
なお、判別部１１４によって、歩き方の判別も併せておこなわれた場合には、方向判別は、歩き方判別結果に連動して変化する。具体的には、歩行体１００が駆け足歩行の場合には、歩行体１００が飛び上がるため、Ｚ軸方向の加速度の位相が反転した波形が検出されてしまう。したがって、歩行体１００が駆け足歩行であると判定された場合には、方向スコアは実際の移動方向の可能性と反対の結果が出力されてしまう。したがって、判別部１１４は、歩行対１００が駆け足歩行と判別された場合には、方向算出部１１３によって算出されたスコアが最も大きい方向と１８０度反対の方向を移動方向として出力する。
【００２５】
判別部１１４によって判別された歩行体１００の移動方向は、出力手段（不図示）によって一意的に外部に出力される。また、判別部１１４によって歩き方が判別された場合には、判別された歩き方も併せて出力する。なお、出力手段による出力先は任意に設定できる。たとえば、移動方向算出装置１１０に表示部（不図示）を取り付けて歩行体１００自身に算出結果を表示してもよいし、通信Ｉ／Ｆ（インターフェース）を介して他の装置に送信してもよい。
【００２６】
このように、本実施の形態では、３軸の加速度という限られた検出値を利用して、８方向の分解能と、歩き方判別とを備えた高精度な移動方向算出処理を実現することができる。
【００２７】
（移動方向算出装置のハードウェア構成）
まず、本実施の形態にかかる移動方向算出装置のハードウェア構成について説明する。図２は、移動方向算出装置のハードウェア構成を示すブロック図である。図１にあらわしたように移動方向算出装置１１０は、たばこ箱サイズの小型装置である。また、移動方向算出装置１１０は、たとえば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）やＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などの既存の端末に以下で説明するハードウェア構成を追加したものでもよいし、専用の筐体からなる装置であってもよい。
【００２８】
さらに移動方向算出装置１１０の内部は、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、ＨＤＤ（ハードディスクドライブ）２０４と、ＨＤ（ハードディスク）２０５と、メモリドライブ２０６と、着脱可能な記録媒体としてリムーバブルメモリ２０７と、ディスプレイ２０８と、入力Ｉ／Ｆ（インターフェース）２０９と、各種センサ２１０と、ネットワークＩ／Ｆ２１１を備えている。また、各構成部はバス２２０によってそれぞれ接続されている。
【００２９】
ここで、ＣＰＵ２０１は、移動方向算出装置１１０の全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。ＨＤＤ２０４は、ＣＰＵ２０１の制御にしたがってＨＤ２０５に対するデータのリード／ライトを制御する。ＨＤ２０５は、ＨＤＤ２０４の制御で書き込まれたデータを記憶する。
【００３０】
メモリドライブ２０６は、ＣＰＵ２０１の制御にしたがってリムーバブルメモリ２０７に対するデータのリード／ライトを制御する。リムーバブルメモリ２０７は、メモリドライブ２０６の制御で書き込まれたデータを記憶したり、リムーバブルメモリ２０７に記憶されたデータをＣＰＵ２０１の制御に応じてメモリドライブ２０６に読み取らせたりする。
【００３１】
ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像によって移動方向算出結果に関するデータを表示する。このディスプレイ２０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３２】
入力Ｉ／Ｆ２０９は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。また、入力Ｉ／Ｆ２０９の入力手段は、タッチパネルやトラックボールなどのポインティングデバイスであってもよい。
【００３３】
各種センサ２１０は、移動方向を算出するための情報を測定するための異なる機能のセンサから構成されている。具体的には、歩行体１００の歩行間隔を検出するための加速度センサと、歩行体１００の移動方向を算出するための磁気センサとジャイロセンサとが搭載されている。なお、本実施の形態にかかる移動方向算出装置１１０の場合、加速度センサは必須の構成となるが、他のセンサは任意である。
【００３４】
ネットワークＩ／Ｆ２１１は、有線無線を問わずに通信回線２１２を通じてインターネットなどのネットワーク２３０に接続し、このネットワーク２３０を介して移動方向算出装置１１０を他の装置に接続させる。そして、ネットワークＩ／Ｆ２１１は、ネットワーク２３０と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。ネットワークＩ／Ｆ２１１には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３５】
（移動方向算出装置の機能的構成）
つぎに、本実施の形態にかかる移動方向算出装置の機能的構成について説明する。図３は、移動方向算出装置の機能的構成を示すブロック図である。図３のように、移動方向算出装置１１０は、センサ部３１０と、演算処理部３２０と、記憶部３３０と、表示部３４０と、通信部３５０とから構成されている。
【００３６】
センサ部３１０は、加速度センサ３１１と、磁気センサ３１２と、ジャイロセンサ３１３との３種類のセンサを備えている。これらのセンサから歩行体１００の移動に伴う動作内容を所定の間隔ごとに連続して検出する。このセンサ部３１０は、たとえば、図２にて説明した各種センサ２１０によって実現される。また、上述したように、加速度センサ３１１以外のセンサを搭載するかは任意である。
【００３７】
演算処理部３２０は、センサ部３１０から取得した検出値を用いて歩行体１００の移動方向を算出する機能部である。この演算処理部３２０は、たとえば、図２にて説明したＣＰＵ２０１、ＲＯＭ２０２およびＲＡＭ２０３によって実現される。
【００３８】
記憶部３３０は、ＣＰＵ２０１の制御に応じて所定の情報を保存する記憶領域である。この記憶部３３０に保存されている情報としては、入力情報３３１、出力情報３３２、演算処理に必要な設定パラメータ３３３、判定処理内容と判定基準が設定された判定テーブル３３４、演算処理に用いる演算アルゴリズム３３５がある。この記憶部３３０は、たとえば、図２にて説明したＨＤＤ２０４、ＨＤ２０５、メモリドライブ２０６およびリムーバブルメモリ２０７によって実現される。
【００３９】
表示部３４０および通信部３５０は、演算処理部３２０によって演算された歩行体１００の移動方向算出結果の出力手段として機能する。表示部３４０では、液晶ディスプレイなどの表示デバイスによって移動方向算出結果を歩行体１００自身に移動方向を報知することができる。また、通信部３５０は、移動方向算出結果を他の装置や所定のアドレスに送信することができるため、他者に対して歩行体１００の移動方向を報知することができる。
【００４０】
なお、通信部３５０は、移動方向算出結果の他に、外部の装置との通信によって、演算処理部３２０における演算に必要な設定パラメータ３３３、判定テーブル３３４および演算アルゴリズム３３５を外部から取得することができる。この表示部３４０は、たとえば、図２のディスプレイ２０８によって実現される。また、通信部３５０は、たとえば、図２のネットワークＩ／Ｆ２１１によって実現される。
【００４１】
（加速度センサによる検出値の扱い）
つぎに、加速度センサ３１１による検出値の扱いについて説明する。図１の概要にて説明したように、本実施の形態では、加速度センサ３１１の検出値から歩行体１００が前後左右斜めの８方向のいずれかに進行しているか、そして、いかなる種類の歩行をおこなっているかを算出する。この算出をおこなうには、加速度センサ３１１による検出値から各種値を検出する必要がある。したがって、以下に、本実施の形態において、移動方向算出に利用する各種値の検出内容について説明する。
【００４２】
・歩行間隔の検出
まず、歩行体１００の一歩ごとの歩行間隔について説明する。図４は、一歩の歩行間隔の検出処理を示す説明図である。図４の曲線４００は、加速度センサによって検出されたＺ軸方向の加速度の連続値を示している。この曲線４００からピークを検出し、ｔ１とｔ２とにおける２つのピークの間隔ＡＺＭａｘＴを歩行体の一歩の間隔として検出する。なお、図４では、最大値側の２ピークを検出しているが、最小値側の２ピークを算出してもよい。最大値側、最小値側のいずれのピークを検出する場合も、あらかじめ設定したしきい値範囲（ここでは、一例として、３５〜−４０の範囲）を超えた値を検出することによって、誤検出を防ぐことができる。
【００４３】
・加速度の振幅とピーク間隔検出
つぎに、Ｘ軸方向、Ｙ軸方向の加速度曲線の振幅とピーク間隔検出について説明する。図５−１は、Ｘ軸加速度の振幅の最大値と最小値との時差を示す説明図である。また、図５−２は、Ｙ軸加速度の振幅の最大値と最小値との時差を示す説明図である。
【００４４】
図５−１の曲線５１０は、加速度センサによって検出されたＸ軸方向の加速度の連続値を示している。また、図５−２の曲線５２０は、加速度センサによって検出されたＹ軸方向の加速度の連続値を示している。曲線５１０も、曲線５２０も、曲線４００の周期に基づいて、各種値が検出される。
【００４５】
具体的に説明すると、図５−１では、曲線４００の最大振幅ＡＺＰｐと、曲線５１０の最大振幅ＡＸＰｐとの時間が検出される。このとき、正の最大振幅ＡＺＰｐを基準とした場合の、曲線５１０の正の最大振幅ＡＸＰｐまでの時間をΔＴ１、負の最大振幅ＡＸＰｐまでの時間をΔＴ２とする。同様に、図５−２の場合も、正の最大振幅ＡＺＰｐを基準とした場合の、曲線５２０の正の最大振幅ＡＹＰｐまでの時間をΔＴ３、負の最大振幅ＡＹＰｐまでの時間をΔＴ４とする。
【００４６】
・加速度の絶対値の和検出
つぎに、Ｘ軸方向、Ｙ軸方向の加速度曲線の絶対値の和検出について説明する。図６−１は、Ｘ軸加速度の絶対値の和を示す説明図である。また、図６−２は、Ｙ軸加速度の絶対値の和を示す説明図である。図６−１に示すように、Ｘ軸加速度の絶対値の和として検出されるのは曲線５１０のＡＸＳｕｍＭである。また、図６−２に示すように、Ｙ軸加速度の絶対値の和として検出されるのは曲線５２０のＡＹＳｕｍＭである。なお、正確には、図６−１の場合も、図６−２の場合も、絶対値の和は、曲線４００のピーク間隔に限定して検出される。
【００４７】
・加速度の変化率検出
つぎに、Ｘ軸方向、Ｙ軸方向の加速度曲線の変化率検出について説明する。図７は、加速度の変化率検出を示す説明図である。図７では、Ｚ軸方向の加速度を示す曲線４００の値が最小になる時間ｔｍｉｎにおける他の軸の加速度を示す曲線５１０もしくは曲線５２０の変化率ΔＭＬを検出する。また、Ｚ軸方向の加速度を示す曲線４００の値が０になる時間ｔ０における他の軸の加速度を示す曲線５１０もしくは曲線５２０の変化率ΔＭ０も検出する。
【００４８】
・ピーク検出
つぎに、Ｘ軸方向、Ｙ軸方向の加速度曲線のピーク検出について説明する。図８は、一周期内の各軸のピークを示す説明図である。図８の曲線８００は、歩行体１００が忍び足歩行をした場合のＺ軸方向の加速度の一例をあらわしている。曲線８００のように、忍び足の場合は、一周期（しきい値範囲を超えたピーク間隔）の間に複数のピークが出現する。したがって、各ピークは出現順にＰ１、Ｐ２、…、Ｐｎとして検出される。さらに、Ｐ２における他の軸の曲線５１０、５２０の加速度を特にｐｅａｋ２ＡＸ（Ｘ軸方向の場合）、ｐｅａｋ２ＡＹ（Ｙ軸方向の場合）として検出する。
【００４９】
・蟹歩き検出
つぎに、蟹歩き検出について説明する。本実施の形態の場合、Ｙ軸方向の加速度曲線が所定の振る舞いを示した場合に、歩行体１００による蟹歩き歩行を判別することができる。図９−１は、左方向の蟹歩き判定を示す説明図である。また、図９−２は、右方向の蟹歩き判定を示す説明図である。
【００５０】
図９−１のＰ９１０のように、曲線５２０によってあらわされたＹ軸方向の加速度の中で、最大値側のピークにおいて歩行間隔の開始時刻との差（曲線４００の値との差）がない場合には、つぎの一周期ｔ９１１は左方向に蟹歩き歩行中であると判別される。なお、つぎのＹ軸方向の加速度の最小値側のピークと歩行間隔の開始時刻とには差があるため、一周期ｔ９１２は通常歩行中であると判断される。
【００５１】
図９−２のＰ９２０も同様に、曲線５２０によってあらわされたＹ軸方向の加速度の中で、最小値側のピークにおいて歩行間隔の開始時刻との差（曲線４００の値との差）がない場合には、つぎの一周期ｔ９２１は右方向に蟹歩き歩行中であると判別される。ここでも、つぎのＹ軸方向の加速度の最大値側のピークと歩行間隔の開始時刻とには差があるため、一周期ｔ９２２は通常歩行中であると判断される。
【００５２】
以上説明した各検出値は、歩行体１００が移動している可能性をポイントしたスコアを算出する際に利用される。また、上述の検出処理に登場したしきい値などの設定値は、あらかじめ設定パラメータ３３３に記録された値を利用することができる。また、検出された値が具体的にどのように利用され、どのような判断によって方向スコアにポイントが加算されるかを、移動算出処理の手順に沿って説明する。
【００５３】
（移動方向算出処理の手順）
つぎに、上述した加速度センサの検出値を用いた移動方向算出処理の手順について説明する。図１０〜図１３は、進行方向算出処理の手順を示すフローチャートである。図１０のフローチャートにおいて、まず、Ｚ軸方向の加速度曲線の最大値（＋）ピークから次の最大値（＋）ピークまでを一歩の歩行間隔をあらわす一周期に設定する（ステップＳ１００１）。以下、この一周期における各軸方向の加速度曲線の検出値を利用した処理をおこなう。
【００５４】
つぎに、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の面積よりも大きいか否かを判断する（ステップＳ１００２）。このＸ軸方向の加速度曲線の面積やＹ軸方向の加速度曲線の面積を求めるには、図６−１、図６−２にて説明したＡＸＳｕｍＭやＡＹＳｕｍＭを参照すればよい。
【００５５】
ステップＳ１００２において、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の面積よりも大きいと判断された場合（ステップＳ１００２：Ｙｅｓ）、前スコア、後スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後スコア、左斜め前スコアに１ポイント加算する（ステップＳ１００３）。一方、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の面積と等しいまたは小さいと判断された場合（ステップＳ１００２：Ｎｏ）、右スコア、左スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後、左斜め前スコアに１ポイント加算する（ステップＳ１００４）。
【００５６】
ここで、図１４−１は、前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積差を示す図表である。また、図１４−２は、左方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積差を示す図表である。図１４−１のように、歩行体１００が前方向に歩くとＸ軸方向の加速度曲線の面積とＹ軸方向の加速度曲線の面積との差分は正の値として出力される。したがって、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の面積よりも大きい場合は、前後方向に歩いている可能性が高いため、前後スコアに高ポイントを加算する。
【００５７】
一方、図１４−２のように、歩行体１００が左方向に歩くとＸ軸方向の加速度曲線の面積とＹ軸方向の加速度曲線の面積との差分は負の値として出力される。したがって、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の面積よりも等しいか小さい場合は、左右方向に歩いている可能性が高いため、左右スコアに高ポイントを加算する。
【００５８】
図１０のフローチャートに戻り、つぎに、Ｘ軸方向の加速度曲線の振幅がＹ軸方向の加速度曲線の振幅よりも大きいか否かを判断する（ステップＳ１００５）。Ｘ軸方向の加速度曲線の振幅やＹ軸方向の加速度曲線の振幅を求めるには、図５−１、図５−２にて説明した最大振幅ＡＸＰｐや最大振幅ＡＹＰｐを参照すればよい。
【００５９】
ステップＳ１００５において、Ｘ軸方向の加速度曲線の振幅がＹ軸方向の加速度曲線の振幅よりも大きいと判断された場合（ステップＳ１００５：Ｙｅｓ）、前スコア、後スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後スコア、左斜め前スコアに１ポイント加算する（ステップＳ１００６）。一方、Ｘ軸方向の加速度曲線の振幅がＹ軸方向の加速度曲線の振幅と等しいまたは小さいと判断された場合（ステップＳ１００５：Ｎｏ）、右スコア、左スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後スコア、左斜め前スコアに１ポイント加算する（ステップＳ１００７）。
【００６０】
ここで、図１５−１は、前方向に歩いた場合のＸ軸加速度とＹ軸加速度との振幅差を示す図表である。また、図１５−２は、左方向に歩いた場合のＸ軸加速度とＹ軸加速度との振幅差を示す図表である。図１５−１のように、歩行体１００が前方向に歩くとＸ軸方向の加速度曲線の振幅とＹ軸方向の加速度曲線の振幅との差分は正の値として出力される。したがって、Ｘ軸方向の加速度曲線の振幅がＹ軸方向の加速度曲線の振幅よりも大きい場合は、前後方向に歩いている可能性が高いため、前後スコアに高ポイントを加算する。
【００６１】
一方、図１５−２のように、歩行体１００が左方向に歩くとＸ軸方向の加速度曲線の振幅とＹ軸方向の加速度曲線の振幅との差分は負の値として出力される。したがって、Ｘ軸方向の加速度曲線の面積がＹ軸方向の加速度曲線の振幅よりも等しいか小さい場合は、左右方向に歩いている可能性が高いため、左右スコアに高ポイントを加算する。
【００６２】
図１０のフローチャートに戻り、続いて、Ｚ軸方向の加速度曲線が最小値（負の値のピーク）の時のＸ軸方向の加速度曲線の傾きがＹ軸方向の加速度曲線の傾きよりも大きいか否かを判断する（ステップＳ１００８）。このステップＳ１００８における加速度曲線の傾きは、図７に示したようなｔｍｉｎにおける変化率ΔＭＬを参照すればよい。
【００６３】
ステップＳ１００８において、Ｚ軸方向の加速度曲線が最小値（負の値のピーク）の時のＸ軸方向の加速度曲線の傾きがＹ軸方向の加速度曲線の傾きよりも大きい場合（ステップＳ１００８：Ｙｅｓ）、前スコア、後スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後スコア、左斜め前スコアに１ポイント加算する（ステップＳ１００９）。一方、Ｚ軸方向の加速度曲線が最小値（負の値のピーク）の時のＸ軸方向の加速度曲線の傾きがＹ軸方向の加速度曲線の傾きと等しいまたは小さいと判断された場合（ステップＳ１００８：Ｎｏ）、右スコア、左スコアに２ポイント加算し、右斜め前スコア、右斜め後スコア、左斜め後スコア、左斜め前スコアに１ポイント加算する（ステップＳ１０１０）。
【００６４】
ここで、図１６−１は、前方向に歩いた場合のＸ軸加速度とＹ軸加速度との傾斜平方差を示す図表である。また、図１６−２は、左方向に歩いた場合のＸ軸加速度とＹ軸加速度との傾斜平方差を示す図表である。ここでは、傾斜を絶対値化するため平方値にして差分を求めている。
【００６５】
図１６−１のように、歩行体１００が前方向に歩くと、Ｘ軸加速度とＹ軸加速度との傾斜平方差が正の値となる。したがって、Ｚ軸方向の加速度曲線が最小値（負の値のピーク）の時のＸ軸方向の加速度曲線の傾きがＹ軸方向の加速度曲線の傾きよりも大きい場合は、前後方向に歩いている可能性が高いため、前後スコアに高ポイントを加算する。
【００６６】
一方、図１６−２のように、歩行体１００が左方向に歩くとＸ軸加速度とＹ軸加速度との傾斜平方差が負の値となる。したがって、Ｚ軸方向の加速度曲線が最小値（負の値のピーク）の時のＸ軸方向の加速度曲線の傾きがＹ軸方向の加速度曲線の傾き以下の場合は、左右方向に歩いている可能性が高いため、左右スコアに高ポイントを加算する。
【００６７】
つぎに、図１１のフローチャートを用いてステップＳ１１０１以降の手順について説明する。図１１のフローチャートでは、まず、一周期におけるＺ軸方向の加速度の頂点数が６以上であるか否かを判断する（ステップＳ１１０１）。このステップＳ１１０１は、歩行体１００が忍び足をしているか否かを判断する処理である。したがって、一周期におけるＺ軸方向の加速度の頂点数が６未満である場合は（ステップＳ１１０１：Ｎｏ）、忍び足歩行中ではないと判別され、つぎに、Ｘ軸方向の加速度曲線の最大振幅時間が、最小振幅時間よりも長いか否かを判断する（ステップＳ１１０２）。
【００６８】
ステップＳ１１０２の判断は、図５−１の正の最大振幅ＡＸＰｐまでの時間であるΔＴ１と、負の最大振幅ＡＸＰｐまでの時間であるΔＴ２とを参照して比較すればよい。ここで、Ｘ軸方向の加速度曲線の最大振幅時間が、最小振幅時間よりも長い場合（ステップＳ１１０２：Ｙｅｓ）、前スコア、右斜め前スコア、左斜め前スコアに１ポイント加算する（ステップＳ１１０３）。一方、Ｘ軸方向の加速度曲線の最大振幅時間が、最小振幅時間と等しいか短い場合（ステップＳ１１０２：Ｎｏ）、後スコア、右斜め後スコア、左斜め後スコアに１ポイント加算する（ステップＳ１１０４）。
【００６９】
図１７−１は、通常歩行時のＺ軸加速度の頂点数を示す図表である。また、図１７−２は、忍び足歩行時のＺ軸加速度の頂点数を示す図表である。図１７−１と図１７−２との比較から明かであるように、忍び足歩行中は、振幅の小さなピークが多数出現する。なお、頂点数６の設定は一例であり、歩行体１００の歩行特徴や癖に応じて、調整してもよい。
【００７０】
図１１のフローチャートに戻り、続いて、Ｚ軸方向の加速度が最小の時のＸ軸方向の加速度曲線の傾きが０以上か否かを判断する（ステップＳ１１０５）。このステップＳ１１０５の判断は図７のΔＭＬを参照すればよい。Ｚ軸方向の加速度が最小の時のＸ軸方向の加速度曲線の傾きが０以上であると判断された場合（ステップＳ１１０５：Ｙｅｓ）、前スコア、右斜め前スコア、左斜め前スコアに１ポイント加算する（ステップＳ１１０６）。一方、Ｚ軸方向の加速度が最小の時のＸ軸方向の加速度曲線の傾きが０未満であると判断された場合（ステップＳ１１０５：Ｎｏ）、後スコア、右斜め後スコア、左斜め後スコアに１ポイント加算する（ステップＳ１１０７）。
【００７１】
ここで、図１８−１は、前方向に歩きかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。また、図１８−２は、後方向に歩きかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。図１８−１のように、歩行体１００が前方向に歩きかつＺ軸加速度最小の場合は、傾斜値は正の値となる。したがって、Ｚ軸方向の加速度が最小の時のＸ軸方向の加速度曲線の傾きが０以上の場合は、前方向に歩いている可能性が高いため前スコアに高ポイントを加算する。
【００７２】
一方、図１８−２のように、歩行体１００が後方向に歩きかつＺ軸加速度最小の場合は、傾斜値は負の値となる。したがって、Ｚ軸方向の加速度が最小の時のＸ軸方向の加速度曲線の傾きが０未満の場合は、後方向に歩いている可能性が高いため後スコアに高ポイントを加算する。
【００７３】
図１１のフローチャートに戻り、つぎに、Ｚ軸方向の加速度が最初に０になる時のＸ軸方向の加速度曲線の傾きが０以下か否かを判断する（ステップＳ１１０８）。このステップＳ１１０８の判断は図７のΔＭ０を参照すればよい。Ｚ軸方向の加速度が最初に０になる時のＸ軸方向の加速度曲線の傾きが０以下であると判断された場合（ステップＳ１１０８：Ｙｅｓ）、前スコア、右斜め前スコア、左斜め前スコアに１ポイント加算する（ステップＳ１１０９）。一方、Ｚ軸方向の加速度が最初に０になる時のＸ軸方向の加速度曲線の傾きが０より大きいと判断された場合（ステップＳ１１０８：Ｎｏ）、後スコア、右斜め後スコア、左斜め後スコアに１ポイント加算する（ステップＳ１１１０）。
【００７４】
ここで、図１９−１は、前方向に歩きかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。また、図１９−２は、後方向に歩きかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。図１９−１のように、歩行体１００が前方向に歩きかつＺ軸加速度＝０の場合は、傾斜値は負の値となる。したがって、Ｘ軸方向の加速度曲線の傾きが０以下の場合は、前方向に歩いている可能性が高いため前スコアに高ポイントを加算する。
【００７５】
一方、図１９−２のように、後方向に歩きかつＺ軸加速度＝０の場合は、傾斜値は正の値をとる可能性が高い。したがって、Ｘ軸方向の加速度曲線の傾きが０よりも大きい場合は、後方向に歩いている可能性が高いため後スコアに高ポイントを加算する。
【００７６】
図１１のフローチャートに戻り、ステップＳ１１０１において、一周期におけるＺ軸方向の加速度の頂点数が６以上である場合は（ステップＳ１１０１：Ｙｅｓ）、歩行体１００は忍び足歩行中であると判別され、つぎに、Ｚ軸の２つ目の頂点におけるＸ軸方向の加速度が０以上か否かを判断する（ステップＳ１１１１）。
【００７７】
ステップＳ１１１１において、Ｘ軸方向の加速度が０以上であると判断された場合（ステップＳ１１１１：Ｙｅｓ）、前スコア、右斜め前スコア、左斜め前スコアに３ポイント加算する（ステップＳ１１１２）。一方、Ｘ軸方向の加速度が０未満であると判断された場合（ステップＳ１１１１：Ｎｏ）、後スコア、右斜め後スコア、左斜め後スコアに３ポイント加算する（ステップＳ１１１３）。
【００７８】
ここで、図２０−１は、前方向に忍び足歩行した場合のＸ軸加速度を示す図表である。また、図２０−２は、後方向に忍び足歩行した場合のＸ軸加速度を示す図表である。図２０−１のように、前方向に忍び足歩行した場合は、正の値の出力となる可能性が高い。したがって、Ｘ軸方向の加速度が０以上であると判断された場合は、前方向に移動している可能性が高いため前スコアに高ポイントを加算する。一方、図２０−２のように、後方向に忍び足歩行した場合は、負の値の出力となる可能性が高い。したがって、Ｘ軸方向の加速度が０未満であると判断された場合は、後方向に移動している可能性が高いため後スコアに高ポイントを加算する。
【００７９】
つぎに、図１２のフローチャートを用いてステップＳ１２０１以降の処理を説明する。図１２のフローチャートにおいて、まず、歩行体１００の一歩の開始時点がＹ軸方向の加速度曲線の最大振幅か否かを判断する（ステップＳ１２０１）。一歩の開始時点がＹ軸方向の加速度曲線の最大振幅でないと判断された場合（ステップＳ１２０１：Ｎｏ）、反対に一歩の開始時点がＹ軸方向の加速度曲線の最小振幅か否かを判断する（ステップＳ１２０３）。このステップＳ１２０１、Ｓ１２０３の判断は、図５−２のＹ軸方向の加速度曲線の振幅ＡＹＰｐを参照すればよい。
【００８０】
ステップＳ１２０１において、一歩の開始時点がＹ軸方向の加速度曲線の最大振幅であると判断された場合（ステップＳ１２０１：Ｙｅｓ）、歩行体１００は右方向に蟹歩き歩行中であると判別され、右スコア、右斜め前スコア、右斜め後スコアに３ポイント加算され（ステップＳ１２０２）、ステップＳ１３０１（図１３参照）の処理に移行する。また、ステップＳ１２０３において、一歩の開始時点がＹ軸方向の加速度曲線の最小振幅であると判断された場合（ステップＳ１２０３：Ｙｅｓ）、歩行体１００は左方向に蟹歩き歩行中であると判別され、左スコア、左斜め前スコア、左斜め後スコアに３ポイント加算され（ステップＳ１２０４）、ステップＳ１３０１（図１３参照）の処理に移行する。
【００８１】
ここで、図２１は、右方向に蟹歩きした場合のＹ軸加速度最大値の出力時間を示す図表である。また、図２２は、左方向に蟹歩きした場合のＹ軸加速度最大値の出力時間を示す図表である。図２１、図２２のように、最大値をとる時間と最小値をとる時間とは近いレベルに集中していることがわかる。
【００８２】
図１２のフローチャートに戻り、一歩の開始時点がＹ軸方向の加速度曲線の最大振幅でも、最小振幅でもなかった場合（ステップＳ１２０３）、つぎに、Ｚ軸方向の加速度の頂点数が６以上か否かを判断する（ステップＳ１２０５）。このステップＳ１２０５はステップＳ１１０１と同様に、歩行体１００が忍び足歩行中か否かを判断する処理である。
【００８３】
ステップＳ１２０５において、Ｚ軸方向の加速度の頂点数が６未満であると判断された場合（ステップＳ１２０５：Ｎｏ）、Ｙ軸方向の加速度曲線の最大振幅時間が最小振幅時間よりも長いか否かを判断する（ステップＳ１２０６）。ステップＳ１２０６の判断は、図５−２の正の最大振幅ＡＹＰｐまでの時間であるΔＴ３と、負の最大振幅ＡＹＰｐまでの時間であるΔＴ４とを参照して比較すればよい。
【００８４】
ステップＳ１２０６において、Ｙ軸方向の加速度曲線の最大振幅時間が、最小振幅時間よりも長い場合（ステップＳ１２０６：Ｙｅｓ）、右スコア、右斜め前スコア、右斜め後スコアに１ポイント加算する（ステップＳ１２０７）。一方、Ｙ軸方向の加速度曲線の最大振幅時間が、最小振幅時間と等しいか短い場合（ステップＳ１２０６：Ｎｏ）、左スコア、左斜め前スコア、左斜め後スコアに１ポイント加算する（ステップＳ１２０８）。
【００８５】
続いて、Ｚ軸方向の加速度が最小の時のＹ軸方向の加速度曲線の傾きが０以上か否かを判断する（ステップＳ１２０９）。このステップＳ１２０９の判断は、図７のΔＭＬを参照すればよい。Ｚ軸方向の加速度が最小の時のＹ軸方向の加速度曲線の傾きが０以上であると判断された場合（ステップＳ１２０９：Ｙｅｓ）、右スコア、右斜め前スコア、右斜め後スコアに１ポイント加算する（ステップＳ１２１０）。一方、Ｚ軸方向の加速度が最小の時のＹ軸方向の加速度曲線の傾きが０未満であると判断された場合（ステップＳ１２０９：Ｎｏ）、左スコア、左斜め前スコア、左斜め後スコアに１ポイント加算する（ステップＳ１２１１）。
【００８６】
ここで、図２３−１は、右方向に歩きかつＺ軸加速度最小の場合のＹ軸加速度の傾斜を示す図表である。また、図２３−２は、左方向に歩きかつＺ軸加速度最小の場合のＹ軸加速度の傾斜を示す図表である。図２３−１のように、歩行体１００が右方向に歩きかつＺ軸加速度最小の場合は、傾斜値は正の値となる。したがって、Ｚ軸方向の加速度が最小の時のＹ軸方向の加速度曲線の傾きが０以上の場合は、右方向に歩いている可能性が高いため右スコアに高ポイントを加算する。
【００８７】
一方、図２３−２のように、歩行体１００が左方向に歩きかつＺ軸加速度最小の場合は、傾斜値は負の値となる。したがって、Ｚ軸方向の加速度が最小の時のＹ軸方向の加速度曲線の傾きが０未満の場合は、左方向に歩いている可能性が高いため左スコアに高ポイントを加算する。
【００８８】
図１２のフローチャートに戻り、つぎに、Ｚ軸方向の加速度が最初に０になる時のＹ軸方向の加速度曲線の傾きが０以下か否かを判断する（ステップＳ１２１２）。このステップＳ１２１２の判断は図７のΔＭ０を参照すればよい。Ｚ軸方向の加速度が０の時のＹ軸方向の加速度曲線の傾きが０以下であると判断された場合（ステップＳ１２１２：Ｙｅｓ）、右スコア、右斜め前スコア、右斜め後スコアに１ポイント加算する（ステップＳ１２１３）。一方、Ｚ軸方向の加速度が最初に０になる時のＹ軸方向の加速度曲線の傾きが０より大きいと判断された場合（ステップＳ１２１２：Ｎｏ）、左スコア、左斜め前スコア、左斜め後スコアに１ポイント加算する（ステップＳ１２１４）。
【００８９】
ここで、図２４−１は、右方向に歩きかつＺ軸加速度＝０の場合のＹ軸加速度の傾斜を示す図表である。また、図２４−２は、左方向に歩きかつＺ軸加速度＝０の場合のＹ軸加速度の傾斜を示す図表である。図２４−１のように、歩行体１００が右方向に歩きかつＺ軸加速度＝０の場合は、傾斜値は負の値となる可能性が高い。したがって、Ｙ軸方向の加速度曲線の傾きが０以下の場合は、右方向に歩いている可能性が高いため右スコアに高ポイントを加算する。
【００９０】
一方、図２４−２のように、左方向に歩きかつＺ軸加速度＝０の場合は、傾斜値は正の値をとる可能性が高い。したがって、Ｙ軸方向の加速度曲線の傾きが０よりも大きい場合は、左方向に歩いている可能性が高いため左スコアに高ポイントを加算する。
【００９１】
図１２のフローチャートに戻り、ステップＳ１２０５において、Ｚ軸方向の加速度の頂点数が６以上であると判断された場合（ステップＳ１２０５：Ｙｅｓ）、歩行体１００は忍び足歩行中であると判別され、つぎに、Ｚ軸の２つ目の頂点におけるＹ軸方向の加速度が０以上か否かを判断する（ステップＳ１２１５）。
【００９２】
ステップＳ１２１５において、Ｙ軸方向の加速度が０以上であると判断された場合（ステップＳ１２１５：Ｙｅｓ）、右スコア、右斜め前スコア、右斜め後スコアに３ポイント加算する（ステップＳ１２１６）。一方、Ｙ軸方向の加速度が０未満であると判断された場合（ステップＳ１２１５：Ｎｏ）、左スコア、左斜め前スコア、左斜め後スコアに３ポイント加算する（ステップＳ１２１７）。
【００９３】
ここで、図２５−１は、右方向に忍び足歩行した場合のＹ軸加速度を示す図表である。また、図２５−２は、左方向に忍び足歩行した場合のＹ軸加速度を示す図表である。図２５−１のように、右方向に忍び足歩行した場合は、正の値の出力となる可能性が高い。したがって、Ｙ軸方向の加速度が０以上であると判断された場合は、右方向に移動している可能性が高いため右スコアに高ポイントを加算する。一方、図２５−２のように、左方向に忍び足歩行した場合は、負の値の出力となる可能性が高い。したがって、Ｙ軸方向の加速度が０未満であると判断された場合は、左方向に移動している可能性が高いため左スコアに高ポイントを加算する。
【００９４】
つぎに、図１３のフローチャートを用いてステップＳ１３０１以降の処理を説明する。図１３のフローチャートにおいて、まず、Ｙ軸方向の加速度曲線の振幅が０か否かを判断する（ステップＳ１３０１）。ここで、Ｙ軸方向の加速度の振幅が０ではないと判断された場合（ステップＳ１３０１：Ｎｏ）、Ｘ軸方向の加速度曲線の振幅とＹ軸方向の加速度曲線の振幅との振幅比を算出する（ステップＳ１３０２）。そして、算出された振幅比の大きさを判別する（ステップＳ１３０３）。
【００９５】
つぎに、ステップＳ１３０３によって判別された振幅比に応じて各方向スコアに１ポイントを加算する（ステップＳ１３０４）。具体的には、下記のようにポイントが加算される。また、図２６は、斜め移動方向の判定しきい値テーブルの一例を示すデータ列である。下記のしきい値は図２６を参照する。
【００９６】
・振幅比＞しきい値１Ａの場合：前スコア、後スコアにポイント加算
・振幅比＜しきい値１Ａかつ振幅比＞しきい値１Ｂ：右斜め前スコア、右斜め後スコア、左斜め前スコア、左斜め後スコアにポイント加算
・振幅比＜しきい値１Ｂの場合：右スコア、左スコアにポイント加算
【００９７】
ステップＳ１３０４によってポイント加算されると、ステップＳ１３０６の処理に移行する。また、ステップＳ１３０１において、Ｙ軸方向の加速度曲線の振幅が０であると判断された場合（ステップＳ１３０１：Ｙｅｓ）、前スコア、後スコアに１ポイント加算して（ステップＳ１３０５）、ステップＳ１３０６の処理に移行する。
【００９８】
そして、つぎに、Ｙ軸方向の加速度曲線の面積が０か否かを判断する（ステップＳ１３０６）。ここで、Ｙ軸方向の加速度曲線の面積が０でないと判断された場合（ステップＳ１３０６：Ｎｏ）、Ｘ軸方向の加速度曲線の面積とＹ軸方向の加速度曲線の面積との面積比を算出する（ステップＳ１３０７）。そして、算出された面積比の大きさを判別する（ステップＳ１３０８）。
【００９９】
つぎに、ステップＳ１３０８によって判別された面積比に応じて各方向スコアに１ポイントを加算する（ステップＳ１３０９）。具体的には、下記のようにポイントが加算される。ここでも下記のしきい値は図２６を参照する。
【０１００】
・面積比＞しきい値２Ａの場合：前スコア、後スコアにポイント加算
・面積比＜しきい値２Ａかつ面積比＞しきい値２Ｂ：右斜め前スコア、右斜め後スコア、左斜め前スコア、左斜め後スコアにポイント加算
・面積比＜しきい値２Ｂの場合：右スコア、左スコアにポイント加算
【０１０１】
ステップＳ１３０９によってポイント加算されると、ステップＳ１３１１の処理に移行する。また、ステップＳ１３０６において、Ｙ軸方向の加速度曲線の面積が０であると判断された場合（ステップＳ１３０６：Ｙｅｓ）、前スコア、後スコアに１ポイント加算して（ステップＳ１３１０）、ステップＳ１３１１の処理に移行する。
【０１０２】
なお、図２７は、進行方向判別しきい値の一例を示す説明図である。図２７のように。Ｘ軸方向の加速度曲線から検出した値（振幅や面積）に基づいて、理論値を求め、実際の振る舞いをフィードバックさせてしきい値を設定する。
【０１０３】
また、図２８−１は、前方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。そして、図２８−２は、右斜め前方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。さらに、図２８−３は、左方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。図２８−１〜図２８−３から明かであるように、Ｘ軸加速度とＹ軸加速度の振幅比は、前方向に歩いた場合、右斜め前方向に歩いた場合および左方向に歩いた場合によってそれぞれ明確に異なる領域に出力値を出現する。したがって、ステップＳ１３０４のように、振幅比に応じた方向スコアにポイントを加算することができる。
【０１０４】
さらに、図２９−１は、前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。また、図２９−２は、右斜め前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。そして、図２９−３は、左方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。図２９−１〜図２９−３においても、Ｘ軸加速度とＹ軸加速度の面積比は、前方向に歩いた場合、右斜め前方向に歩いた場合および左方向に歩いた場合によってそれぞれ明確に異なる領域に出力値を出現する。したがって、ステップＳ１３０９のように、面積比に応じた方向スコアにポイントを加算することができる。
【０１０５】
図１３のフローチャートに戻り、つぎに、前、後、右、左、右斜め前、右斜め後、左斜め前、左斜め後の各スコアを比較し、最大スコア値をもつ方向を歩行体の移動歩行とする（ステップＳ１３１１）。図３０は、各方向のスコア算出結果の出力例を示す説明図である。図３０のように、各ステップによって加算されたポイントが累積されスコアとして算出される。なお、図３０の例では、右斜め前が最大スコア値となるため、歩行体１００は、右斜め前方向に移動していると判断される。
【０１０６】
図１３のフローチャートに戻り、つぎに、歩行体１００が駆け足歩行中か否かを判断する（ステップＳ１３１２）。ここで、図３１−１は、前方向に駆け足しかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。また、図３１−２は、前方向に駆け足しかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。通常であれば、前方向に駆け足歩行しかつＺ軸加速度最小の場合のＸ軸加速度の傾斜は、図１８のように正の値として出力される。しかしながら、図３１−１では、駆け足歩行中であるため、位相が逆転して負の値として出力される。
【０１０７】
また、前方向に歩きかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜は図１９−１のように、負の値として出力される。しかしながら、図３１−２では、駆け足歩行中であるため、このような場合も、位相が逆転して正の値として出力される。すなわち、歩行体１００は駆け足歩行中であると判別された場合には、出力値が反転していることを考慮して処理しなければならない。
【０１０８】
したがって、ステップＳ１３１２において、歩行体１００が駆け足歩行中であると判断された場合（ステップＳ１３１２：Ｙｅｓ）、ステップＳ１３１１によって算出された移動方向を１８０°反転する（ステップＳ１３１３）。そして、歩行体１００の体の向き情報に移動方向の情報を加えて移動方位を算出して（ステップＳ１３１４）、一連の処理を終了する。
【０１０９】
上述の歩行体１００の体の向き情報は、磁気センサ３１２、ジャイロセンサ３１３が搭載されている場合には、これらのセンサの検出値から求めることができる。また、磁気センサ３１２、ジャイロセンサ３１３が搭載されていない場合には、歩行体１００がみずから体の向き情報を入力してもよい。
【０１１０】
なお、ステップＳ１３１２では、歩行体１００が駆け足歩行中であると判断された場合は、（ステップＳ１３１２：Ｙｅｓ）、反転された移動方向が利用され、歩行体１００が駆け足歩行中でないと判断された場合は、（ステップＳ１３１２：Ｎｏ）、算出したそのままの移動方向が利用される。
【０１１１】
なお、上述したポイント加算の値は、前、後、右、左、右斜め前、右斜め後、左斜め前及び左斜め後の各スコアに一律でもよいが、環境や歩行体１００に応じて各判定条件に重みを付けたポイントを加算してもよい。
【０１１２】
以上説明したように、本実施の形態の移動方向算出装置１１０では、加速度センサ３１１は、外部から３軸の加速度のみ検出すればよい。そして、この３軸の加速度の連続値である加速度曲線から所定値の抽出と、抽出した値の比較処理という負荷の少ない処理のみにより前後、左右、右斜め前後、左斜め前後の８方向それぞれについて、歩行体が移動している可能性をスコアとして表現することができる。そして、このスコアを参照することによって、歩行体の移動方向を容易に判別することができる。このように、本実施の形態では、処理負担が軽く、かつ、高精度に歩行体の移動方向算出を実現することができる。
【０１１３】
なお、本実施の形態で説明した移動方向算出方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な媒体であってもよい。
【０１１４】
また、本実施の形態で説明した移動方向算出装置１１０は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述した移動方向算出装置１１０の機能（１１１〜１１４）をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、移動方向算出装置１１０を製造することができる。
【０１１５】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１１６】
（付記１）歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度とを検出する検出手段と、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段と、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線を用いて、前記歩行体が前後、左右、右斜め前後、左斜め前後８方向の各方向に移動しているかの可能性をポイント化したスコアを算出する方向算出手段と、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段と、
前記方向判別手段によって判別された方向を出力する出力手段と、
を備えることを特徴とする移動方向算出装置。
【０１１７】
（付記２）前記歩行間隔特定手段は、前記Ｚ軸方向の加速度曲線の振幅がしきい値以上となるピーク間隔を前記歩行体の歩行間隔として特定することを特徴とする付記１に記載の移動方向算出装置。
【０１１８】
（付記３）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｘ軸方向の加速度曲線の絶対値の積分値と、前記Ｙ軸方向の加速度曲線の絶対値の積分値との差分に応じて、前後方向のスコアと、左右方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１または２に記載の移動方向算出装置。
【０１１９】
（付記４）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｘ軸方向の加速度曲線の振幅と、前記Ｙ軸方向の加速度曲線の振幅との差分に応じて、前後方向のスコアと、左右方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜３のいずれか一つに記載の移動方向算出装置。
【０１２０】
（付記５）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度が最小となる際の、前記Ｘ軸方向の加速度曲線の傾斜の平方値と、前記Ｙ軸方向の加速度曲線の傾斜の平方値との差分に応じて、前後方向のスコアと、左右方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜４のいずれか一つに記載の移動方向算出装置。
【０１２１】
（付記６）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置から前記Ｘ軸方向の加速度曲線の最大値側のピーク位置までの時間と、前記歩行間隔の開始位置から前記Ｘ軸方向の加速度曲線の最小値側のピーク位置までの時間との差分に応じて、前方向のスコアと、後方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜５のいずれか一つに記載の移動方向算出装置。
【０１２２】
（付記７）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度が最小となる際の、前記Ｘ軸方向の加速度曲線の傾斜が正の値か負の値かに応じて、前方向のスコアと、後方向とのスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜６のいずれか一つに記載の移動方向算出装置。
【０１２３】
（付記８）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度が最初に０となる際の、前記Ｘ軸方向の加速度曲線の傾斜が正の値か負の値かに応じて、前方向のスコアと、後方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜７のいずれか一つに記載の移動方向算出装置。
【０１２４】
（付記９）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置から前記Ｙ軸方向の加速度曲線の最大値側のピーク位置までの時間と、前記歩行間隔の開始位置から前記Ｙ軸方向の加速度曲線の最小値側のピーク位置までの時間との差分に応じて、右方向ポイントのスコアと、左方向のスコアととのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜８のいずれか一つに記載の移動方向算出装置。
【０１２５】
（付記１０）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度が最小となる際の、前記Ｙ軸方向の加速度曲線の傾斜が正の値か負の値かに応じて、右方向のスコアと、左方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜９のいずれか一つに記載の移動方向算出装置。
【０１２６】
（付記１１）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度が最初に０となる際の、前記Ｙ軸方向の加速度曲線の傾斜が負の値か正の値に応じて、右方向のスコアと、左方向のスコアとのいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜１０のいずれか一つに記載の移動方向算出装置。
【０１２７】
（付記１２）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｘ軸方向の加速度曲線の振幅と、前記Ｙ軸方向の加速度曲線の振幅との比率に応じて前後方向、左右方向および斜め方向のいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜１１のいずれか一つに記載の移動方向算出装置。
【０１２８】
（付記１３）前記方向算出手段は、前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｘ軸方向の加速度曲線の絶対値の積分値と、前記Ｙ軸方向の加速度曲線の加速度曲線の絶対値の積分値との比率に応じて前後方向、左右方向および斜め方向のいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１〜１２のいずれか一つに記載の移動方向算出装置。
【０１２９】
（付記１４）前記歩行間隔特定手段によって特定された歩行間隔において、前記Ｚ軸方向の加速度曲線のピーク数が所定以上であった場合、前記歩行体が忍び足歩行していると判別する歩き方判別手段を備え、
前記出力手段は、前記判別手段の判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力することを特徴とする付記１〜１３のいずれか一つに記載の移動方向算出装置。
【０１３０】
（付記１５）前記方向算出手段は、前記歩き方判別手段によって、前記歩行体が忍び足歩行をしていると判別された場合、前記ポイント加算処理に替わって、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置のつぎに出現したピークに応じて前後方向、左右方向および斜め方向のいずれかの方向のスコアを大きくするためのポイント加算処理をおこなうことを特徴とする付記１４に記載の移動方向算出装置。
【０１３１】
（付記１６）前記方向算出手段は、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、右方向のスコアを大きくするポイント加算処理をおこない、
前記方向判別手段は、前記方向算出手段によるポイント加算処理において、最も大きいスコアとなる方向を前記歩行体の移動方向と判別し、
前記歩き方判別手段は、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最大値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別し、
前記出力手段は、前記方向判別手段によって判別された方向とともに、前記歩き方判別手段の判別結果に応じて前記歩行体が蟹歩き歩行中である旨の情報を出力することを特徴とすることを特徴とする付記１４または１５に記載の移動方向算出装置。
【０１３２】
（付記１７）
前記方向算出手段は、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、左方向ポイントを大きくするポイント加算処理をおこない、
前記方向判別手段は、前記方向算出手段によるポイント加算処理において、最も大きいスコアとなる方向を前記歩行体の移動方向と判別し、
前記歩き方判別手段は、前記Ｚ軸方向の加速度曲線の前記歩行間隔の開始位置が前記Ｙ軸方向の加速度曲線の最小値側のピークとなる場合、前記歩行体が蟹歩き歩行をしていると判別し、
前記出力手段は、前記方向判別手段によって判別された方向とともに、前記歩き方判別手段の判別結果に応じて前記歩行体が忍び足歩行中である旨の情報を出力することを特徴とする付記１４〜１６のいずれか一つに記載の移動方向算出装置。
【０１３３】
（付記１８）前記方向判別手段は、前記歩き方別手段によって前記歩行体が駆け足歩行していると判別された場合に、前記方向算出手段によって算出されたスコアが最も大きい方向の逆方向を前記歩行体の移動方向と判別するとともに、前記判別手段の判別結果に応じて前記歩行体が駆け足歩行中である旨の情報ことを特徴とする付記１４〜１７のいずれか一つに記載の移動方向算出装置。
【０１３４】
（付記１９）歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付けるコンピュータを、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出手段、
前記検出手段によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定手段、
前記歩行間隔特定手段によって特定された歩行間隔における前記各軸方向の加速度曲線を用いて、前記歩行体が前後、左右、右斜め前後、左斜め前後の８方向の各方向に移動しているかの可能性をポイント化したスコアを算出する方向算出手段、
前記８方向のうち、前記方向算出手段によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別手段、
前記方向判別手段によって判別された方向を出力する出力手段、
として機能させることを特徴とする移動方向算出プログラム。
【０１３５】
（付記２０）歩行体に装着された加速度センサに装着された加速度センサからの出力を受け付ける装置が、
前記歩行体の正面方向となるＸ軸と、前記正面方向に対して直角に交わる当該歩行体の左右方向となるＹ軸と、当該歩行体の垂直方向となるＺ軸との３軸方向の加速度を検出する検出工程と、
前記検出工程によって検出されたＺ軸方向の加速度の連続値をあらわす加速度曲線のピーク間隔を前記歩行体の歩行間隔として特定する歩行間隔特定工程と、
前記歩行間隔特定工程によって特定された歩行間隔における前記各軸方向の加速度曲線を用いて、前記歩行体が前後、左右、右斜め前後、左斜め前後の８方向の各方向に移動しているかの可能性をポイント化したスコアを算出する方向算出工程と、
前記８方向のうち、前記方向算出工程によって算出されたスコアが最も大きい方向を前記歩行体の移動方向と判別する方向判別工程と、
前記方向判別工程によって判別された方向を出力する出力工程と、
を含むことを特徴とする移動方向算出方法。
【図面の簡単な説明】
【０１３６】
【図１】移動方向算出処理の概要を示す説明図である。
【図２】移動方向算出装置のハードウェア構成を示すブロック図である。
【図３】移動方向算出装置の機能的構成を示すブロック図である。
【図４】一歩の歩行間隔の検出処理を示す説明図である。
【図５−１】Ｘ軸加速度の振幅の最大値と最小値との時差を示す説明図である。
【図５−２】Ｙ軸加速度の振幅の最大値と最小値との時差を示す説明図である。
【図６−１】Ｘ軸加速度の絶対値の和を示す説明図である。
【図６−２】Ｙ軸加速度の絶対値の和を示す説明図である。
【図７】加速度の変化率検出を示す説明図である。
【図８】一周期内の各軸のピークを示す説明図である。
【図９−１】左方向の蟹歩き判定を示す説明図である。
【図９−２】右方向の蟹歩き判定を示す説明図である。
【図１０】進行方向算出処理の手順を示すフローチャート（その１）である。
【図１１】進行方向算出処理の手順を示すフローチャート（その２）である。
【図１２】進行方向算出処理の手順を示すフローチャート（その３）である。
【図１３】進行方向算出処理の手順を示すフローチャート（その４）である。
【図１４−１】前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積差を示す図表である。
【図１４−２】左方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積差を示す図表である。
【図１５−１】前方向に歩いた場合のＸ軸加速度とＹ軸加速度との振幅差を示す図表である。
【図１５−２】左方向に歩いた場合のＸ軸加速度とＹ軸加速度との振幅差を示す図表である。
【図１６−１】前方向に歩いた場合のＸ軸加速度とＹ軸加速度との傾斜平方差を示す図表である。
【図１６−２】左方向に歩いた場合のＸ軸加速度とＹ軸加速度との傾斜平方差を示す図表である。
【図１７−１】通常歩行時のＺ軸加速度の頂点数を示す図表である。
【図１７−２】忍び足歩行時のＺ軸加速度の頂点数を示す図表である。
【図１８−１】前方向に歩きかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。
【図１８−２】後方向に歩きかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。
【図１９−１】前方向に歩きかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。
【図１９−２】後方向に歩きかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。
【図２０−１】前方向に忍び足歩行した場合のＸ軸加速度を示す図表である。
【図２０−２】後方向に忍び足歩行した場合のＸ軸加速度を示す図表である。
【図２１】右方向に蟹歩きした場合のＹ軸加速度最大値の出力時間を示す図表である。
【図２２】左方向に蟹歩きした場合のＹ軸加速度最大値の出力時間を示す図表である。
【図２３−１】右方向に歩きかつＺ軸加速度最小の場合のＹ軸加速度の傾斜を示す図表である。
【図２３−２】左方向に歩きかつＺ軸加速度最小の場合のＹ軸加速度の傾斜を示す図表である。
【図２４−１】右方向に歩きかつＺ軸加速度＝０の場合のＹ軸加速度の傾斜を示す図表である。
【図２４−２】左方向に歩きかつＺ軸加速度＝０の場合のＹ軸加速度の傾斜を示す図表である。
【図２５−１】右方向に忍び足歩行した場合のＹ軸加速度を示す図表である。
【図２５−２】左方向に忍び足歩行した場合のＹ軸加速度を示す図表である。
【図２６】斜め移動方向の判定しきい値テーブルの一例を示すデータ列である。
【図２７】進行方向判別しきい値の一例を示す説明図である。
【図２８−１】前方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。
【図２８−２】右斜め前方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。
【図２８−３】左方向に歩いた場合のＸ軸加速度とＹ軸加速度の振幅比を示す説明図である。
【図２９−１】前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。
【図２９−２】右斜め前方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。
【図２９−３】左方向に歩いた場合のＸ軸加速度とＹ軸加速度との面積比を示す図表である。
【図３０】各方向のスコア算出結果の出力例を示す説明図である。
【図３１−１】前方向に駆け足しかつＺ軸加速度最小の場合のＸ軸加速度の傾斜を示す図表である。
【図３１−２】前方向に駆け足しかつＺ軸加速度＝０の場合のＸ軸加速度の傾斜を示す図表である。
【符号の説明】
【０１３７】
１００  歩行体
１１０  移動方向算出装置
１１１  検出部
１１２  歩行間隔特定部
１１３  方向算出部
１１４  判別部
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  ＨＤＤ
２０５  ＨＤ
２０６  メモリドライブ
２０７  リムーバブルメモリ
２０８  ディスプレイ
２０９  入力Ｉ／Ｆ
２１０  各種センサ
２１１  ネットワークＩ／Ｆ
２２０  バス
２３０  ネットワーク（ＮＥＴ）
３１０  センサ部
３１１  加速度センサ
３１２  磁気センサ
３１３  ジャイロセンサ
３２０  演算処理部
３３０  記憶部
３３１  入力情報
３３２  出力情報
３３３  設定パラメータ
３３４  判定テーブル
３３５  演算アルゴリズム
３４０  表示部
３５０  通信部
【図１】
0005608958.tif 000002
【図２】
0005608958.tif 000003
【図３】
0005608958.tif 000004
【図４】
0005608958.tif 000005
【図５−１】
0005608958.tif 000006
【図５−２】
0005608958.tif 000007
【図６−１】
0005608958.tif 000008
【図６−２】
0005608958.tif 000009
【図７】
0005608958.tif 000010
【図８】
0005608958.tif 000011
【図９−１】
0005608958.tif 000012
【図９−２】
0005608958.tif 000013
【図１０】
0005608958.tif 000014
【図１１】
0005608958.tif 000015
【図１２】
0005608958.tif 000016
【図１３】
0005608958.tif 000017
【図１４−１】
0005608958.tif 000018
【図１４−２】
0005608958.tif 000019
【図１５−１】
0005608958.tif 000020
【図１５−２】
0005608958.tif 000021
【図１６−１】
0005608958.tif 000022
【図１６−２】
0005608958.tif 000023
【図１７−１】
0005608958.tif 000024
【図１７−２】
0005608958.tif 000025
【図１８−１】
0005608958.tif 000026
【図１８−２】
0005608958.tif 000027
【図１９−１】
0005608958.tif 000028
【図１９−２】
0005608958.tif 000029
【図２０−１】
0005608958.tif 000030
【図２０−２】
0005608958.tif 000031
【図２１】
0005608958.tif 000032
【図２２】
0005608958.tif 000033
【図２３−１】
0005608958.tif 000034
【図２３−２】
0005608958.tif 000035
【図２４−１】
0005608958.tif 000036
【図２４−２】
0005608958.tif 000037
【図２５−１】
0005608958.tif 000038
【図２５−２】
0005608958.tif 000039
【図２６】
0005608958.tif 000040
【図２７】
0005608958.tif 000041
【図２８−１】
0005608958.tif 000042
【図２８−２】
0005608958.tif 000043
【図２８−３】
0005608958.tif 000044
【図２９−１】
0005608958.tif 000045
【図２９−２】
0005608958.tif 000046
【図２９−３】
0005608958.tif 000047
【図３０】
0005608958.tif 000048
【図３１−１】
0005608958.tif 000049
【図３１−２】
0005608958.tif 000050