(57)【特許請求の範囲】
【請求項１】
加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、
前記加速度センサーからの前記検出加速度に基づいて合成加速度情報を算出する合成加速度算出部と、
前記検出加速度の前記水平方向成分、及び前記合成加速度算出部で算出された前記合成加速度情報に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、
前記フィルター処理後の前記合成加速度情報に基づいて、歩行又は走行のステップを検出するステップ検出部と、
前記ステップ検出部での検出結果に基づいて設定された期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部と、
を含むことを特徴とする状態検出装置。
【請求項２】
加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、
前記加速度センサーからの前記検出加速度に基づいて合成加速度情報を算出する合成加速度算出部と、
前記検出加速度の前記水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、
前記合成加速度算出部で算出された前記合成加速度情報の第１のピークと、前記第１のピークとは加速度方向が異なる第２のピークを検出することで、歩行又は走行のステップを検出するステップ検出部と、
前記第１のピークの検出タイミングから、前記第２のピークの前記検出タイミングまでの期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部と、
を含むことを特徴とする状態検出装置。
【請求項３】
請求項１又は２において、
前記合成加速度算出部は、
前記検出加速度のべき乗和に基づいて前記合成加速度情報を算出し、
前記ステップ検出部は、
前記べき乗和に基づいて算出された前記合成加速度情報に基づいて、前記ステップを検出することを特徴とする状態検出装置。
【請求項４】
請求項１において、
前記ステップ検出部は、
前記合成加速度情報のピークを求めることで前記ステップを検出することを特徴とする状態検出装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記進行方向算出部は、
前記水平方向成分の積算処理として、第１の座標成分の積算処理と、前記第１の座標成分とは異なる第２の座標成分の積算処理とを行って、前記進行方向を算出することを特徴とする状態検出装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記水平方向成分抽出部は、
前記加速度センサーが取り付けられる機器の姿勢情報に基づいて、前記検出加速度の前記水平方向成分を求めることを特徴とする状態検出装置。
【請求項７】
請求項１乃至６のいずれかに記載の状態検出装置を含むことを特徴とする電子機器。
【請求項８】
加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、
前記加速度センサーからの前記検出加速度に基づいて合成加速度情報を算出する合成加速度算出部と、
前記検出加速度の前記水平方向成分、及び前記合成加速度算出部で算出された前記合成加速度情報に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、
前記フィルター処理後の前記合成加速度情報に基づいて、歩行又は走行のステップを検出するステップ検出部と、
前記ステップ検出部での検出結果に基づいて設定された期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部として、
コンピューターを機能させることを特徴とするプログラム。
【請求項９】
加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、
前記加速度センサーからの前記検出加速度に基づいて合成加速度情報を算出する合成加速度算出部と、
前記検出加速度の前記水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、
前記合成加速度算出部で算出された前記合成加速度情報の第１のピークと、前記第１のピークとは加速度方向が異なる第２のピークを検出することで、歩行又は走行のステップを検出するステップ検出部と、
前記第１のピークの検出タイミングから、前記第２のピークの前記検出タイミングまでの期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部として、
コンピューターを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、状態検出装置、電子機器及びプログラム等に関する。
【背景技術】
【０００２】
近年、歩行する人や走行する車両、飛行する航空機等の位置及び軌跡を推定する手法としてデッドレコニング（ＤＲ）が用いられている。これは、ＧＰＳ等のように絶対的な位置情報を取得する手法とは異なり、既知の初期値に対する変動（移動量）を推定する相対的な位置推定手法である。
【０００３】
歩行する人を対象としてデッドレコニングを行う場合には、その人の所与の部位に加速度センサーを装着し、当該加速度センサーのセンサー情報に基づいて変動を推定することが考えられる。ただしデッドレコニングを行うためには、移動した距離だけではなく、進行方向も推定する必要がある。
【０００４】
人の歩行は、長いスパンで見ればあたかも等速運動に近いものと捉えられるが、１歩１歩を短いスパンで見れば加速と減速を繰り返す運動となっている。よって、その加減速の変化を捉えれば進行方向を推定することができ、例えば特許文献１には水平方向成分（人の前後左右）の加速度パワーのピークを検出し、ピーク時の水平方向成分加速度値を用いることで、進行方向を推定する手法が開示されている。なお、水平方向成分の加速度は例えばＮＥＤ座標を基準としたものであり、これにより北方向を基準とした進行方向を推定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３０２４１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
歩行による進行方向の加速度の変化は非常に小さく、左右へのふらつきなどによる加速度と区別することが難しい。そのため、特許文献１のように加速度パワーのピークを利用する手法では、本来検出したいピークが、ノイズ等によるピークに埋もれてしまう可能性があり、正確なピーク検出が難しい。また、ピーク検出が正常に行えたとしても、ピーク時の水平方向成分加速度値そのものにノイズがのっている可能性もあり、その場合には正確な進行方向の推定が難しくなる。
【０００７】
また、従来の手法では、例えば加速度センサーが搭載された端末を手に持って、決められた軸を進行方向に向ける等、端末の装着手法（保持手法）が限定されており、ユーザーにとって利便性の面で課題があった。
【０００８】
本発明の幾つかの態様によれば、加速度センサーの装着姿勢に関する自由度を高くしつつ、当該加速度センサーからのセンサー情報に基づいて精度の高い進行方向推定を行う状態検出装置、電子機器及びプログラム等を提供することができる。
【課題を解決するための手段】
【０００９】
本発明の一態様は、加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、前記検出加速度の前記水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部と、を含む状態検出装置に関係する。
【００１０】
本発明の一態様では、検出加速度から抽出した水平方向成分に対してＤＣ成分を除去するフィルター処理を行ったうえで、フィルター処理後の水平方向成分の積算処理を行なって進行方向を算出する。よって、信号値の小さい水平方向成分においてピーク検出等を行う必要がないため、容易な処理により精度の高い進行方向推定等が可能になる。
【００１１】
また、本発明の一態様では、歩行又は走行のステップを検出するステップ検出部を含み、前記進行方向算出部は、前記ステップ検出部での検出結果に基づいて設定された期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って前記進行方向を算出してもよい。
【００１２】
これにより、積算処理を行う期間をステップに基づいて決定すること等が可能になる。
【００１３】
また、本発明の一態様では、前記加速度センサーからの前記検出加速度に基づいて合成加速度情報を算出する合成加速度算出部を含み、前記ステップ検出部は、前記合成加速度算出部で算出された前記合成加速度情報に基づいて、前記ステップを検出してもよい。
【００１４】
これにより、合成加速度情報を用いたステップ検出が可能になる。
【００１５】
また、本発明の一態様では、前記合成加速度算出部は、前記検出加速度のべき乗和に基づいて前記合成加速度情報を算出し、前記ステップ検出部は、前記べき乗和に基づいて算出された前記合成加速度情報に基づいて、前記ステップを検出してもよい。
【００１６】
これにより、検出加速度のべき乗和に基づいて合成加速度情報を求めることが可能になる。
【００１７】
また、本発明の一態様では、前記フィルター処理部は、前記合成加速度算出部で算出された前記合成加速度情報に対して、ＤＣ成分を除去する前記フィルター処理を行い、前記ステップ検出部は、前記フィルター処理後の前記合成加速度情報に基づいて、前記ステップを検出してもよい。
【００１８】
これにより、合成加速度情報に対してもＤＣ成分の除去処理を行うことができるため、ステップ検出における精度向上等が可能になる。
【００１９】
また、本発明の一態様では、前記ステップ検出部は、前記合成加速度情報のピークを求めることで前記ステップを検出してもよい。
【００２０】
これにより、ステップ検出としてピーク検出を行うことが可能になる。
【００２１】
また、本発明の一態様では、前記ステップ検出部は、前記合成加速度情報の前記ピークとして、第１のピークと、前記第１のピークとは加速度方向が異なる第２のピークを検出し、前記進行方向算出部は、前記第１のピークの検出タイミングから、前記第２のピークの前記検出タイミングまでの期間において、前記フィルター処理後の前記水平方向成分の積算処理を行って前記進行方向を算出してもよい。
【００２２】
これにより、ピークとして加速度方向の異なる２つのピークを検出し、それらのピークの間で積算処理を行うことが可能になる。
【００２３】
また、本発明の一態様では、前記進行方向算出部は、前記水平方向成分の積算処理として、第１の座標成分の積算処理と、前記第１の座標成分とは異なる第２の座標成分の積算処理とを行って、前記進行方向を算出してもよい。
【００２４】
これにより、水平方向成分として２つの成分を用いた場合等にも、積算処理及び進行方向推定処理を行うことが可能になる。
【００２５】
また、本発明の一態様では、前記水平方向成分抽出部は、前記加速度センサーが取り付けられる機器の姿勢情報に基づいて、前記検出加速度の前記水平方向成分を求めてもよい。
【００２６】
これにより、機器の姿勢情報に基づいて、水平方向成分を求めること等が可能になる。
【００２７】
また、本発明の他の態様は、上記の状態検出装置を含む電子機器に関係する。
【００２８】
また、本発明の他の態様は、加速度センサーからの検出加速度の水平方向成分を求める水平方向成分抽出部と、前記検出加速度の前記水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部と、前記フィルター処理後の前記水平方向成分の積算処理を行って進行方向を算出する進行方向算出部として、コンピューターを機能させるプログラムに関係する。
【図面の簡単な説明】
【００２９】
【図１】本実施形態にかかる状態検出装置のシステム構成例。
【図２】フィルター処理部で用いられるフィルターの例。
【図３】フィルター処理前後の合成加速度情報の例。
【図４】図４（Ａ）、図４（Ｂ）はフィルター処理前後の水平方向成分の例。
【図５】ピーク検出処理を説明する図。
【図６】ステップ検出処理を説明するためのフローチャート。
【図７】合成加速度情報と水平方向成分の関係を説明する図。
【図８】水平方向成分と進行方向との関係を説明する図。
【図９】合成加速度情報に基づく積算期間の設定手法を説明する図。
【図１０】積算処理を説明するためのフローチャート。
【図１１】平均化処理を説明する図。
【図１２】平均化処理を説明するためのフローチャート。
【図１３】図１３（Ａ）、図１３（Ｂ）はＤＣ成分抽出処理及びパラメーターの調整処理を説明する図。
【図１４】ＤＣ成分抽出フィルターの例。
【図１５】姿勢情報（Ｙａｗ角）の平均化処理を説明する図。
【図１６】姿勢情報（Ｙａｗ角）の平均化処理を説明する図。
【図１７】ＤＣ成分抽出処理及びパラメーターの調整処理を説明するフローチャート。
【図１８】水平方向成分から進行方向を推定する手法を説明する図。
【図１９】本実施形態にかかる電子機器の構成例。
【図２０】本実施形態にかかるプログラムが記憶される情報記憶媒体を含むシステムの構成例。
【発明を実施するための形態】
【００３０】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３１】
１．本実施形態の手法
まず本実施形態の手法について説明する。従来、加速度センサーが検出した加速度の値を用いて、歩行中のユーザーの進行方向を推定する手法が提案されており、提案手法により推定された進行方向はデッドレコニング等に利用されている。
【００３２】
特許文献１に開示された手法のように、加速度センサーを用いた進行方向推定では、加速度の水平方向成分（例えば重力方向に直交する平面に含まれる成分であり、北方向を表すＮ成分と東方向を表すＥ成分等）を用いることが考えられる。しかし、従来手法では加速度の水平方向成分を取得するために、加速度センサーを搭載した端末の装着位置や姿勢に制約があった。例えば、３軸加速度センサーの１つの軸を重力方向と一致させ、残り２軸により表される平面が水平面と一致する状態を維持する等の制約である。従来手法であれば加速度センサーのセンサー情報そのままで、或いは単純な座標変換を行うだけで、水平方向成分を取得できるため処理は容易だが、ユーザーは端末の姿勢等を常に考慮せねばならず、利便性等の面で問題があった。
【００３３】
そこで本出願人は、端末の姿勢等に関して自由度を高めることを前提とする。具体的には、クォータニオン等を用いて、端末姿勢に応じた座標変換行列を求め、座標変換後の値から水平方向成分を求める。このようにすることで端末の装着部位は、胸ポケット、ズボンのポケット、トートバッグやウエストバッグ、腰等、多くの箇所から自由に選択可能であり、その際の姿勢も問わない。また、体幹に対してある程度固定されていればよいため、状況によっては手で把持していてもよい。具体的には、端末（携帯電話等）の表示部を見ている状態で安定していれば当該端末を手で把持していても問題がない。
【００３４】
しかし、水平方向成分の抽出が可能であっても、そこから求められる進行方向の推定精度には問題が残る。なぜなら、歩行による加速度は、鉛直方向（重力方向）に大きく現れ、水平方向成分の値は非常に小さいからである。よって本来検出したい信号が、ユーザーの横揺れ（加速度センサーの装着部位に対応する揺れであり、体全体の揺れであってもよいし、端末を手に持った場合は手の揺れであってもよい）による信号等、ノイズ成分と区別できない可能性がある。
【００３５】
そこで本出願人は、進行方向の推定精度を向上させる手法を３つ提案する。第１に、進行方向を求めるための情報（以下、進行方向情報）を検出加速度の積算値から求める。特許文献１等では水平方向成分のピーク値を進行方向情報としていたが、ノイズの影響が大きい状況ではピークの検出自体が困難であった。その点、積算処理を行えばピーク検出を厳密に行う必要がなくなるため、処理が容易になり、ピーク検出の誤差による精度の低下を考慮する必要がなくなる。なお、積算処理を行う場合、オフセット等のＤＣ成分まで積算されるため、状況によっては進行方向の推定に影響を与える。よって、本実施形態では積算処理の前段階において、水平方向成分からＤＣ成分を除去（低減を含む）するフィルター処理を行うものとする。
【００３６】
第２に、求めた進行方向情報の平均化処理を行う。本実施形態で問題としているのは人の歩行又は走行である。人は体の構成上、右足を踏み出したときと左足を踏み出したときとで、腰の回転方向が異なる。具体的には、右足を踏み出したときには腰は反時計回りに回転するし、左足を踏み出したときには時計回りに回転する。よって、長いスパンで見たときの進行方向に対して、右足踏み出し時の進行方向は左方向にずれ、左足踏み出し時の進行方向は右にずれることになる。このような短いスパンにおける進行方向のばらつきは好ましくないため、右足踏み出し時と左足踏み出し時とで進行方向情報の平均化処理を行い、ばらつきを解消する。なお、腰から離れた部位に端末を装着することで、ばらつきを抑えることが可能であるが、上述したように本実施形態では装着に関する制約を緩和することを前提としているため、平均化処理を考慮する必要性は高いといえる。
【００３７】
第３に、求めた進行方向情報に対してＤＣ成分の抽出処理を行う。仮に第１、第２の手法を用いたとしても、横揺れ等の影響により推定した進行方向が不安定になる可能性がある。特に端末を手で把持した場合には、体幹に対する手の相対位置を一定に保つことは難しく、横揺れの影響は大きい。よって、ＤＣ成分を抽出するフィルター処理を行って、進行方向が不安定になることを抑制する。ただし、単純にＤＣ成分を抽出するだけではユーザーが方向転換をした場合等の進行方向の変化まで抑制してしまい好ましくない。よって、変化の抑制度合いに対応するパラメーター（例えばフィルターのゲイン）を適切に調整する必要がある。
【００３８】
以下、システム構成例について説明した後、処理の前提となるステップ検出手法について説明する。その後、進行方向情報の算出処理として、上述した第１〜第３の手法について説明する。最後に進行方向情報に基づいた進行方向の算出処理について述べる。
【００３９】
２．システム構成例
図１を用いて本実施形態の状態検出装置の構成例を説明する。図１に示したように、状態検出装置は水平方向成分抽出部１００と、合成加速度算出部１１０と、フィルター処理部２００と、ステップ検出部３００と、進行方向算出部４００と、変化情報取得部５００を含む。また、状態検出装置は加速度センサー１０と、出力部２０を含んでもよい。ただし、状態検出装置は図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００４０】
加速度センサー１０は例えば３軸加速度センサーである。上述したように、本実施形態では加速度センサーの装着位置や姿勢に関する自由度が高いことを前提とするため、加速度センサーの座標系と、処理に用いる座標系（例えば重力方向、北方向、東方向を軸とするＮＥＤ座標系）とは異なることが一般的である。
【００４１】
水平方向成分抽出部１００は、加速度センサーの検出加速度から水平方向成分を抽出する。具体的には加速度センサーの座標系から、処理に用いる座標系への変換を行う座標変換行列を求め、当該座標変換行列に基づく変換を行えばよい。座標変換行列は基準姿勢に対する加速度センサー（或いは加速度センサーを搭載した端末）の姿勢に基づいて求められる。姿勢に関する情報は、クォータニオンから求めればよく、クォータニオンは加速度センサーのセンサー情報から求めればよい。なお、クォータニオンを求める際に他のセンサー（例えば地磁気センサーやジャイロセンサー等）のセンサー情報を用いてもよい。また、センサー情報をそのまま用いるのではなく、デッドレコニング等の処理に用いられるカルマンフィルターの出力等を利用することで、より精度の高いクォータニオンを算出することも可能である。
【００４２】
合成加速度算出部１１０は、加速度センサーの検出加速度から合成加速度情報を算出する。合成加速度の算出手法は任意であるが、例えば３軸の検出加速度ｘ，ｙ，ｚから下式（１）を用いて合成加速度Ｐｏｗｅｒを求めればよい。
【００４３】
【数１】
0005935365.tif 000002
【００４４】
フィルター処理部２００は、水平方向成分抽出部１００から出力された水平方向成分、及び合成加速度算出部１１０から出力された合成加速度に対してフィルター処理を行う。ここでのフィルター処理はＤＣ成分を除去するフィルター処理であり、詳細は後述する。
【００４５】
ステップ検出部３００は、フィルター処理後の合成加速度に基づいてステップを検出する。ステップは狭義にはユーザーの歩行又は走行における一歩に相当するものである。詳細については後述する。
【００４６】
進行方向算出部４００は、進行方向を算出する。進行方向算出部４００は、積算処理部４１０と、平均化処理部４３０と、ＤＣ成分抽出フィルター処理部４５０と、角度算出部４７０とを含む。ただし、進行方向算出部４００は図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００４７】
積算処理部４１０は、フィルター処理部２００から出力されたフィルター処理後の水平方向成分の積算処理を行い、進行方向情報を算出する。なお、積算処理の開始タイミングと終了タイミングは、ステップ検出部３００から出力される情報（ステップ情報）に基づいて決定されてもよい。この場合には、積算処理部４１０からはステップに対応したタイミング（例えば１ステップに１回）で情報が出力される。ただし、ステップ情報以外の情報に基づいて、積算処理の開始、終了タイミングが決定されてもよい。
【００４８】
平均化処理部４３０は、進行方向情報（例えば積算処理部４１０の出力）に対して平均化処理を行う。ＤＣ成分抽出フィルター処理部４５０は、進行方向情報（例えば平均化処理部４３０の出力）に対してフィルター処理を行う。ＤＣ成分抽出フィルター処理部で用いられるフィルターに関するパラメーターは、変化情報取得部５００からの変化情報に基づいて決められてもよい。なお、ＤＣ成分抽出フィルター処理部４５０で行われるフィルター処理は、進行方向情報のＤＣ成分抽出処理であり、検出加速度のＤＣ成分除去処理であるフィルター処理部２００でのフィルター処理とは異なる。
【００４９】
角度算出部４７０は、最終的な進行方向情報（例えばＤＣ成分抽出フィルター処理部４５０の出力）に基づいて進行方向を表す角度情報を算出する。角度情報は基準方向（例えば北方向）に対する角度である。なお、進行方向算出部４００の各部における処理の詳細については後述する。
【００５０】
変化情報取得部５００は、進行方向の変化を表す変化情報を取得する。変化情報は狭義には端末の姿勢の変化であってもよい。
【００５１】
出力部２０は、算出した進行方向等の情報を出力する。出力部２０は例えば、液晶ディスプレイや有機ＥＬディスプレイなどにより実現される表示部であってもよい。
【００５２】
３．移動平均及びＤＣ成分除去
水平方向成分抽出部１００で抽出された水平方向成分、及び合成加速度算出部１１０で算出された合成加速度に対して行われる前処理について説明する。具体的には、移動平均を取ることで簡易的なノイズ除去を行い、その後ＤＣ成分を除去するフィルター処理を行う。
【００５３】
移動平均は例えば８サンプルを用いた移動平均を求めればよく、これによりステップ検出（ピーク検出）や、進行方向推定の精度向上が期待できる。
【００５４】
それとともにＤＣ成分を除去する処理を行う。具体的には図２に示したフィルターを用いればよい。図２の点線に囲まれた部分は、図１４を用いて後述するようにＤＣ成分を抽出するフィルターに相当する。図２のフィルター全体では、入力値と点線部分の出力（つまりＤＣ成分）の差分を取ることになるため、結果としてＤＣ成分を除去することができる。
【００５５】
なお、ＤＣ成分の除去は水平方向成分と合成加速度の両方に対して行われるが、水平方向成分については後の積算処理においてオフセット（バイアス）まで積算されることを抑止するためのものである。それに対して、合成加速度についてはステップ検出の精度向上のために用いている。
【００５６】
図２のゲインについては固定値でよく、例えば０．９等を設定すればよい。移動平均及びＤＣ成分除去処理について、処理前と処理後の信号を表したものが図３である。図３は合成加速度の変化であるが、処理前に比べＤＣ成分がカットされ、さらに波形もなめらかなものになっている。図４（Ａ）、図４（Ｂ）は水平方向成分（Ｎ成分とＥ成分）の変化を示したものであり、合成加速度と同様に波形がなめらかになっていることがわかる。
【００５７】
以下の各処理においては、基本的には移動平均を取り、且つＤＣ成分除去処理が行われた後の信号を用いているものとするが、場合によっては必ずしもこれらの処理が行われるとは限らない。
【００５８】
４．ステップ検出
次にステップ検出部３００でのステップ検出処理について説明する。本実施形態ではステップとして信号値のピーク（上ピーク及び下ピーク）を検出する。そして、ピーク検出の精度を向上させるため、信号値の小さい水平方向成分ではなく、比較的信号値の大きい合成加速度を用いるものとする。
【００５９】
ピーク値の検出手法は任意であるが、例えば図５に示した手法を用いればよい。ステップ検出部３００への入力は、加速度センサーでのセンサー情報取得レート（例えば１６Ｈｚ）に対応するタイミングで行われることが想定され、図５のＴ０，Ｔ１等は１つ１つの入力値に相当する。ここでは判定対象となる入力値と、その前後３サンプルの値を比較してピーク検出を行う。上ピークの検出であれば、判定対象が前後３サンプルよりも大きく、且つ判定対象の値が所与の閾値（例えば０．４等）より大きい場合に、当該判定対象のサンプルを上ピークとして認識する。下ピークは逆に、判定対象が前後３サンプルよりも小さく、且つ判定対象の値が所与の閾値（例えば０．４等）より小さい場合に、当該判定対象のサンプルを下ピークとして認識すればよい。
【００６０】
なお、下ピークの検出後、上ピークが検出されずに下ピークが再度検出される（つまり下ピークが連続する）場合等には、何らかの例外処理が必要な状況（例えば典型的な歩行運動とは異なる運動が行われている、センサー情報の検出が正常に行われていない等）である可能性があるため、下ピークの検出条件として、上述のものに加えて対応する上ピークが検出済みであることを考慮してもよい。このようにすると、下ピークが検出されたことをもって、ユーザーの運動或いはセンサー情報の取得等がある程度正常に行われていることが担保できるため、その後の処理における例外処理をなくす、或いは簡易的なものにすることが可能になる。
【００６１】
ステップ検出部３００は上述の処理により検出した上ピークとしたピークに関する情報をステップ情報として出力する。ステップ情報は、例えば上ピークの検出タイミング及び下ピークの検出タイミングに対応して出力されるパルス信号であってもよいし、ピーク検出タイミングに対応するタイムスタンプを含むデータであってもよい。また、処理によってはピーク検出タイミングにおける合成加速度の値等を含んでもよい。
【００６２】
なお、ステップとはユーザーの歩行走行の１歩１歩に相当するものであるから、ステップの検出だけであれば上ピークと下ピークの一方だけを出力すればよく、例えば変化情報取得部５００では上ピークと下ピークの一方のみを処理に用いる。よって、出力先によってはステップ情報を簡素化することも可能であり、ステップ情報は多様な形態により実現できる。
【００６３】
以上のステップ検出処理の詳細を図６のフローチャートを用いて説明する。この処理が開始されると、まず加速度センサーからの検出加速度を取得する（Ｓ１０１）。３軸加速度であれば、各軸の値（ｘ，ｙ，ｚ）を取得することになる。そして、検出加速度に基づいて、合成加速度を算出する。合成の手法は任意であるが、ここでは最新の合成加速度Ｐ０として各軸の値の二乗和の平方根を用いている。以上の処理は合成加速度算出部１１０で行われ、この処理結果がステップ検出部３００に出力される。なお、図６のフローチャートには不図示であるが、算出した合成加速度に対してフィルター処理部２００でフィルター処理を行ってもよい。
【００６４】
次に、取得した最新の合成加速度の値と、過去のタイミングでの合成加速度の値を用いてピークを検出する。具体的には、ｎタイミング前の合成加速度をＰｎとした場合に、Ｐ０〜Ｐ６の値を用いて、Ｐ３と他の値の比較、及びＰ３と所与の閾値との比較を行う。これはＰ３を基準として考えれば、前後３サンプルの値との比較処理に他ならない。
【００６５】
Ｐ３がＰ０〜Ｐ２の各値、及びＰ４〜Ｐ６の各値よりも大きく、且つ所与の閾値（ここでは０．４）よりも大きいかの判定を行い（Ｓ１０３）、条件を満たす場合にはＰ３を上ピークとして検出する（Ｓ１０４）。Ｓ１０３でＮｏの場合には、Ｐ３がＰ０〜Ｐ２の各値、及びＰ４〜Ｐ６の各値よりも小さく、且つ所与の閾値（ここでは０．４）よりも小さいかの判定を行い（Ｓ１０５）、条件を満たす場合にはＰ３を下ピークとして検出する（Ｓ１０６）。Ｓ１０５でＮｏの場合には、上ピークも下ピークも検出されなかったものとする。
【００６６】
その後Ｓ１０７で次のタイミングでの処理に備える。なお、比較処理に必要となる過去の合成加速度の情報を保持しておけばよく（ここでは過去６サンプル分を保持）、Ｓ１０７での処理は図６に示したように、変数Ｐｎの更新処理として行われるものに限定されない。
【００６７】
５．進行方向情報算出
次に進行方向情報の算出処理について説明する。なお、ここでの進行方向情報は進行方向の算出に用いられる情報である。よって、進行方向を算出できるのであれば、進行方向情報が加速度センサーのセンサー情報そのものであることを妨げるものではないが、進行方向算出の精度向上を考えれば、当該センサー情報に対して取捨選択や加工等が行われているものであることが望ましい。例えば、後述する積算処理により得られた情報が進行方向情報である。また、後述する平均化処理、ＤＣ成分抽出処理は進行方向情報に対する補正処理（加工処理）に相当し、それらの処理後の情報も進行方向情報に含まれるものとする。
【００６８】
５．１  積算処理
まず、積算処理により進行方向情報を算出する手法について説明する。図７に歩行時における合成加速度と、加速度の水平方向成分の関係を示す。図７は北向きに歩行したときの、合成加速度Ｐｏｗｅｒと、ＮＥＤ座標系に分解した水平方向成分の理想的な関係を示したものである。進行方向が北向きであるためほとんどの水平方向成分がＮ成分に現れて、Ｅ成分はほぼゼロになる。
【００６９】
図７において、Ａ１はユーザーの足が最も上がったときに対応し、Ａ２は着地のときに対応する。ステップ検出に対応させれば、Ａ１が上ピークであり、Ａ２が下ピークとなる。また、Ａ１の直前に水平方向成分（ここではＮ成分）に進行方向の最大加速度であるＡ３が現れ、Ａ２の直前に最大減速度（負の最大加速度）であるＡ４が現れることがわかっている。
【００７０】
特許文献１等に開示されているように、Ａ３、Ａ４等に対応する水平方向成分の最大加速度を検出すれば進行方向を推定することができる。本実施形態の用語を用いれば、水平方向成分のピーク値を進行方向情報とすることになる。このような手法により、例えば図７の例であれば、最大加速度及び最大減速度は図８に示したようになるため、進行方向が北であることがわかる。進行方向が真北、真南でない場合にはＥ成分にも進行方向に応じた加速度、減速度が現れることになるが、何らかの手法によりＮ成分とＥ成分を合成することで進行方向は算出できる。
【００７１】
しかし、水平方向成分の信号値は非常に小さいものであるため、Ａ３やＡ４等のピークを検出することが難しい。合成加速度のピーク検出タイミング（Ａ１、Ａ２）で代用することも考えられるが、図７に示したようにＡ１とＡ３、Ａ２とＡ４は一致しない可能性がある。水平方向成分の信号値が小さく、ノイズの影響を受けやすい以上、少しでも信号値が大きくなるピーク値（Ａ３，Ａ４）を用いることが望ましいため、Ａ１とＡ３との間にタイミング差が生じる場合には、合成加速度のピーク検出タイミングを代用とすることには大きな問題がある。
【００７２】
よってここでは、合成加速度のピーク（Ａ１，Ａ２）に基づいて決定された期間において、水平方向成分を積算することで進行方向情報を算出する。具体例を図９に示す。図９のＢ１、Ｂ２は、図８のＡ１，Ａ２に対応するものであり、それぞれ合成加速度の上ピークと下ピークになる。Ｂ３はＢ２の１周期前の下ピークに対応する。この際、Ｂ３からＢ１までの期間を考えると、合成加速度と水平方向成分のピーク検出タイミングの差に起因して、当該期間での水平方向成分は加速（正の値）が支配的となる。逆にＢ１からＢ２の期間での水平方向成分は減速（負の値）が支配的となる。そのため、Ｂ３からＢ１を加速区間、Ｂ１からＢ２を減速区間とした場合、加速区間での水平方向成分の積算値は、進行方向を算出可能な程度の大きさ（絶対値）を持つ正の値となり、減速区間での水平方向成分の積算値は進行方向を算出可能な程度の大きさを持つ負の値となる。
【００７３】
本実施形態では、加速区間での積算値及び減速区間での積算値の少なくとも一方を進行方向情報とする。以下の説明では、具体例として減速区間での積算値を用いるものとするが、加速区間での積算値であってもよいし、両方を用いて（例えば絶対値の和や平均等の形で）もよい。
【００７４】
水平方向成分がＮ成分とＥ成分であれば、Ｎ成分の積算値Ａｎ＿ｓｕｍとＥ成分の積算値Ａｅ＿ｓｕｍを進行方向情報とする。なお、積算処理は対象期間に入力された水平方向成分の値を対象として行われ、その手法は単純加算であってもよいし重み付け加算であってもよいし、他の積算手法であってもよい。
【００７５】
減速区間での積算値を用いる場合を例にとって、積算処理の詳細を図１０のフローチャートを用いて説明する。この処理が開始されると、まず加速度センサーからの検出加速度を取得する（Ｓ２０１）。３軸加速度であれば、各軸の値（ｘ，ｙ，ｚ）を取得することになる。そして、検出加速度に基づいて、水平方向成分を抽出する（Ｓ２０２）。ここではＮＥＤ座標系におけるＮ成分とＥ成分を抽出する。以上の処理は水平方向成分抽出部１００で行われる。そして抽出された水平方向成分に対して、フィルター処理部２００においてＤＣ成分を除去するフィルター処理を行う（Ｓ２０３）。上述したように、積算処理を行うことで、オフセット等の処理に用いることが望ましくない成分まで積算されてしまい、精度が落ちる可能性があるため、そのような成分を除去（或いは低減）することで影響を抑止する。
【００７６】
次に、処理対象タイミングにおいて上ピークが検出されたか否かの判定を行う（Ｓ２０４）。実際の判定処理は図６に示したフローチャート等に従って、ステップ検出部３００で行われるものであり、積算処理部４１０はステップ検出部３００からのステップ情報を取得すればよい。上ピークが検出された場合には、減速区間が開始されたものとして、新たに積算を開始する。具体的には、Ａｎ＿ｓｕｍとＡｅ＿ｓｕｍを初期化し（Ｓ２０５）、上ピークが検出済であることを示すフラグを１に設定する（Ｓ２０６）。そして、Ｓ２０３でのＤＣ成分除去後のＮ成分の値をＡｎ＿ｓｕｍに加算するとともに、Ｅ成分の値をＡｅ＿ｓｕｍに加算する（Ｓ２０９）。Ｓ２０９のあとはＳ２０１に戻り次の検出加速度に基づく処理を行う。
【００７７】
Ｓ２０４でＮｏの場合には、フラグの判定を行う（Ｓ２０７）。フラグが０である場合（Ｓ２０７でＮｏの場合）には、上ピークが検出済みではない状態であるため、処理対象タイミングは減速期間に含まれないものとして、積算処理等を行うことなくＳ２０１に戻る。フラグが１である場合（Ｓ２０７でＹｅｓの場合）には、上ピークが検出済みであるため、処理対象タイミングが減速期間に含まれるものとして、下ピークの判定に移行する。
【００７８】
そして、処理対象タイミングで下ピークが検出されたかの判定を行い（Ｓ２０８）、下ピークが検出されない場合には、まだ減速区間の途中のタイミングであると考えられるため、Ｓ２０９でＮ成分の値をＡｎ＿ｓｕｍに加算するとともに、Ｅ成分の値をＡｅ＿ｓｕｍに加算し、Ｓ２０１に戻る。
【００７９】
Ｓ２０８で下ピークが検出された場合には、処理対象タイミングは図９におけるＢ２のタイミングであると考えられることから、積算処理を終了し、この時点での積算値Ａｎ＿ｓｕｍとＡｅ＿ｓｕｍを進行方向情報として出力する（Ｓ２１０）。それとともに、上ピークが検出済みであることを示すフラグを０に設定し、次にステップでの上ピーク検出に備え（Ｓ２１１）、Ｓ２０１に戻る。
【００８０】
５．２  平均化処理
次に進行方向情報の平均化処理について説明する。上述したように、長いスパンにおいて人が一定の方向に歩行している場合であっても、１歩ごとという短いスパンで見れば進行方向にはブレが生じる。なぜなら、人の歩行は右足の踏み出しと左足の踏み出しに分けられ、それぞれの足の踏み出し運動は、踏み出し足によって方向が異なる腰の回転を伴うからである。
【００８１】
そのため、加速度センサーを搭載した端末を腰に装着した場合等では、センサーが腰の回転を検出してしまうことになる。この結果例えば、図１１の１歩毎θに示したように、踏み出し足によって推定した進行方向が大きく異なってしまう。よって、ユーザーはまっすぐ歩いているにもかかわらず、デッドレコニングにより描いた軌跡が三角波のような形状になる等の影響が考えられ好ましくない。
【００８２】
よってここでは、２歩の平均値を求めて進行方向情報とする。例えば処理対象ステップでの進行方向情報と、１つ前のステップでの進行方向情報の平均化処理を行えばよい。このようにすることで、図１１の２歩平均θに示したように推定した進行方向を安定させることができる。ただし、平均化処理の手法はこれに限定されるものではなく、過去１ステップだけではなく、過去ｎステップの進行方向情報も用いて平均値を求めてもよいし、その際には単純平均だけではなく重み付け平均であってもよい。ただし、ここでの平均化処理は右足と左足との違いを問題としている以上、右足踏み出し時の進行方向情報同士で平均化処理を行っても効果は得られない。つまり、右足踏み出し時の進行方向情報と左足踏み出し時の進行方向情報を少なくとも１つずつ用いる必要がある。
【００８３】
以下、平均化処理の詳細を図１２のフローチャートを用いて説明する。なお、ここでの処理は例えば積算処理等により進行方向情報Ａｎ＿ｓｕｍとＡｅ＿ｓｕｍが算出されていることを前提としている。よって図１２の処理は、進行方向情報の算出レートに対応したタイミングにつき１回行われるものであり、狭義には１ステップに１回行われる。
【００８４】
この処理が開始されると、まず進行方向情報Ａｎ＿ｓｕｍとＡｅ＿ｓｕｍを取得する（Ｓ３０１）。そして、１ステップ前で取得した進行方向情報Ａｎ＿ｓｕｍ＿ｏｌｄとＡｅ＿ｓｕｍ＿ｏｌｄ（平均化処理前の値）を用いて平均化処理を行って平均化処理後の進行方向情報として出力する（Ｓ３０２）。なお、Ｓ３０２ではそれぞれを２で除算せずに単純な和を求めているが、進行方向の推定にはＮ成分とＥ成分の比が保たれていればよいため、特に問題はない。当然、それぞれを２で除算したものを平均化処理後の進行方向情報としてもよい。
【００８５】
そして、Ｓ３０３において次のステップの処理に備える。この例であれば１ステップ前の進行方向情報を保持しておけば充分であるが、平均化処理の内容によってはｎステップ前までのデータを保持しておいてもよい。
【００８６】
５．３  ＤＣ成分抽出処理
次にＤＣ成分抽出処理について説明する。本実施形態では端末の装着部位、姿勢の自由度を高めている。よって、腰や胸ポケットに装着するように、端末姿勢が比較的安定し、水平方向における進行方向以外の加速度の検出を抑えることができるケースがある一方で、手で把持するように端末姿勢が不安定となるケースもある。例えば手で把持した場合には、手の横揺れ等により推定された進行方向が全く安定しない。具体例を図１３（Ａ）のｏｒｉｇｉｎａｌに示す。なお、図１３（Ａ）、図１３（Ｂ）の縦軸は角度（radian）であり、本実施形態の角度範囲は−π〜πである。よって、＋πと−πは同じ方向を表すものであり、＋３付近から−３付近へと大きく値が変動していたとしても、実際の推定進行方向の変化は大きいとは限らず、本実施形態で問題としている進行方向の不安定さとは関係ないものである。
【００８７】
図１３（Ａ）、図１３（Ｂ）は時刻０から、θ＝３（ｒａｄ）で表される方向へ歩行し、時刻３５付近でθ＝−２（ｒａｄ）で表される方向へ進路を変えて歩行した場合の推定進行方向の変動を表したものである。実際の運動は安定していたにも関わらず、図１３（Ａ）のｏｒｉｇｉｎａｌに示したように、横揺れ等の影響で推定した進行方向は不安定になっている。
【００８８】
よって本実施形態では推定した進行方向を安定させるために、変動を抑制するＤＣ成分抽出フィルターを用いる。具体的にはＤＣ成分抽出フィルター処理部４５０でのフィルター処理となる。ここで用いられるフィルターは図１４に示したものである。図１４のフィルターは出力値に１タイミングの遅延をかけて（つまり１タイミング前の出力値を用いて）、入力値との差分を取り、差分値にゲインをかける。そしてゲインをかけた値と入力値との差分を出力値とするものである。ゲインをかける対象は、１タイミング前の出力と、現在の入力との差分であるから、値の変動に相当するものである。よって、ゲインを１とすれば、入力値から変動値を引く処理になるため、出力値は変動が除去されたものとなる。つまり、このフィルターのゲインは変動の抑制度合いを表すものであり、１に近いほど変動を抑制し、値が小さいほど変動を容認するものになる。
【００８９】
推定した進行方向を安定させるために、ゲインを０．９に固定した場合の出力値が図１３（Ａ）のＤＣ成分抽出である。ｏｒｉｇｉｎａｌに比べて不安定さは解消されているが、新たな問題も生じている。この運動は時刻３５付近で高速で方向転換を行ったものであるのに、ＤＣ成分抽出時の値は時刻３５〜６０付近にかけて緩やかに変動している。これはユーザーの運動において進行方向が変化した場合や、端末の姿勢が変化した場合等、出力値に反映させるべき変化まで抑制してしまったことによる。これでは、道路の曲がり角で９０度に近い角度で方向転換した場合であっても、緩やかなカーブを曲がったものと認識されてしまうため、デッドレコニングで描く軌跡が運動状態を反映しないものとなってしまい好ましくない。
【００９０】
そこで本実施形態では、ＤＣ成分抽出フィルター処理部４５０で用いられるフィルターのゲインを適応的に調整する。具体的には、進行方向が大きく変化する状況ではゲインを小さくして変動を容認する方向にシフトする。逆に進行方向の変化が小さい状況ではゲインを大きくし変動を抑制する。
【００９１】
進行方向の変化度合いは過去の出力値に基づいて求めてもよい（例えば１ステップ前の出力値と２ステップ前の出力値の差分等を用いてもよい）が、これでは実際の処理タイミングと、進行方向の変動タイミングとが一致しない。そもそも出力値は本実施形態のフィルター処理後の値である以上、過去の出力値からでは変化度合いの正確な算出が難しいことも考えられる。
【００９２】
そこで本実施形態では、進行方向の変化度合いを端末姿勢の変化に基づいて求める。ユーザーの体に対する端末の相対的な姿勢の変動が大きくないのであれば、端末姿勢の（絶対的な）変動は、進行方向の変動に対応するものと考えられるからである。端末姿勢については、検出加速度の水平方向成分の抽出処理において、座標変換行列を求めるために用いたものをそのまま用いればよく、例えばクォータニオン等から求められる。
【００９３】
姿勢情報（例えばＹａｗ角）の変動（例えばΔＹａｗ）が大きいほど、ゲインの値を小さくする。一例としては、ΔＹａｗ＞２０°の場合にゲイン＝０．４、ΔＹａｗ＞１０°の場合にゲイン＝０．７、それ以外の場合にゲイン＝０．９とすればよい。またΔＹａｗが算出できない歩行の１歩目及び２歩目については別途ゲインを設定してもよい。例えば、歩行の１歩目ではフィルターの蓄積データがないためゲインを０に設定する。２歩目では、１歩目のデータの信頼性が低くなる傾向にあるため、ゲインを０．７に設定する。このようなゲイン調整処理を加えた場合の値が図１３（Ｂ）のカーブ対応である。図１３（Ｂ）から明らかなように、時刻３５付近での急激な方向転換に対応できている。
【００９４】
なお、上述の平均化処理において、右足踏み出し時と左足踏み出し時で進行方向（或いは進行方向情報）が異なってしまうことを説明したが、図１５に示したように姿勢情報についても同様のことが言える。つまり、一定方向への歩行であっても、右足踏み出し時と左足踏み出し時でＹａｗ角の値は異なることになり、ΔＹａｗの正確な算出ができない。よって、姿勢情報についても平均化処理を行い、平均化処理後の姿勢情報の変化に基づいてゲインを決定してもよい。
【００９５】
なお、過去のＹａｗ角をＹａｗ＿ｏｌｄとした場合に、平均化処理後のＹａｗ角を、Ｙａｗ＿ａｖｅ＝（Ｙａｗ＋Ｙａｗ＿ｏｌｄ）／２としてもよいが、上述したように本実施形態の角度に関する情報は＋πと−πが同じ方向を表すという周期境界条件を有する。よって、上述の計算の結果が境界付近にあると予期せぬ結果が得られてしまう可能性もある。そこで、Ｙａｗ角の平均化処理は図１６に示した手法を取る。具体的には、Ｙａｗを表すベクトルをＮ方向とＥ方向に分解するとともに、Ｙａｗ＿ｏｌｄについてもＮ方向とＥ方向に分解する。そして、Ｎ方向での合成ベクトルｎと、Ｅ方向での合成ベクトルｅを求め、ｎとｅの合成ベクトルの方向（具体的にはｅ／ｎのａｔａｎ）により表される角度をＹａｗ＿ａｖｅとする。
【００９６】
以下、ＤＣ成分抽出処理（及びゲイン調整処理）の詳細を図１７のフローチャートを用いて説明する。この処理が開始されると、まずＤＣ成分抽出フィルター処理部４５０は、進行方向情報を取得する（Ｓ４０１）。例えば平均化処理後の進行方向情報であるＡｎ＿ｓｕｍ＋Ａｎ＿ｓｕｍ＿ｏｌｄと、Ａｅ＿ｓｕｍ＋Ａｅ＿ｓｕｍ＿ｏｌｄを取得する。そして変化情報取得部５００は、姿勢情報としてＹａｗ角の値を取得する（Ｓ４０２）。次にＹａｗ角の平均化処理を行って、平均化処理後のＹａｗ角であるＹａｗ＿ａｖｅを求める（Ｓ４０３）。
【００９７】
そして、Ｙａｗ＿ａｖｅと、過去（狭義には１ステップ前）のＹａｗ＿ａｖｅ＿ｏｌｄとの差分値ΔＹａｗを求め、ΔＹａｗに基づいてフィルターのゲインを設定する（Ｓ４０４）。設定後のゲインを用いてＤＣ成分の抽出処理を行い、結果を出力する（Ｓ４０５）。その後、次のステップの処理に備える（Ｓ４０６）。具体的には、Ｙａｗ角の値、及び平均化処理後のＹａｗ角の値について、必要なステップ分だけ保持しておくことになる。
【００９８】
６．進行方向算出処理
最後に進行方向情報に基づいて進行方向を算出する処理について説明する。本実施形態の手法では、Ｎ成分とＥ成分の値として進行方向情報が取得される。よって、図１８に示したように、Ｎ成分のベクトルとＥ成分のベクトルの合成ベクトルにより表される方向が、進行方向となる。図１においては、角度算出部４７０においてこの処理が行われるものとする。
【００９９】
７．実施形態の具体例
状態検出装置で行われる各処理について詳細に説明したが、上述した全ての処理が必ずしも実行されるとは限らない。例えば、図１に示した各部のうちの一部から状態検出装置等が構成されてもよい。以下、第１〜第３の実施形態として具体例を示す。
【０１００】
７．１  第１の実施形態
状態検出装置は図１に示したように、加速度センサー１０からの検出加速度の水平方向成分を求める水平方向成分抽出部１００と、水平方向成分に対してＤＣ成分を除去するフィルター処理を行うフィルター処理部２００と、フィルター処理後の水平方向成分の積算処理を行って進行方向を算出する進行方向算出部４００を含んでもよい。なお、積算処理は進行方向算出部４００に含まれる積算処理部４１０で行われることが想定される。
【０１０１】
ここで、水平方向成分とは重力方向を基準とした場合の水平方向の成分である。狭義には重力方向に直交する平面を水平面とした場合に、当該水平面に含まれる検出加速度の成分が水平方向成分となる。しかし、水平方向成分は必ずしも重力方向に直交する平面内の成分には限定されず、９０°とは異なる角度で重力方向と交差する平面内の成分であってもよい。また、ＤＣ成分（直流成分）とは信号波形において振幅の中心となる値を表すものであり、例えば図３のｏｒｉｇｉｎａｌの波形（合成加速度の信号値の時間変化を表す波形）であれば、ＤＣ成分は＋１（Ｇ）程度の値を持つことになる。
【０１０２】
また、ここでのＤＣ成分の除去とは、ＤＣ成分をゼロにするものに限定されず、その値を小さくする低減処理を含むものとする。
【０１０３】
これにより、検出加速度の水平方向成分の積算値に基づいて、進行方向を算出することが可能になる。人の歩行、走行では加速度センサーの信号値は主に重力方向に現れ、水平方向成分の信号値は小さい。よって、水平方向成分はノイズの影響を受けやすく、特許文献１等のように水平方向成分のピーク値から進行方向を算出しようとしても、そもそもどこがピークに相当するタイミングであるかの判定が困難であった。本実施形態の手法では、複数の水平方向成分の積算処理を行うため、水平方向成分のピーク値を検出する必要がなく、容易に進行方向情報を算出でき、且つピーク検出に関する誤差の推定進行方向への影響等を考慮せずともよい。
【０１０４】
また、状態検出装置は図１に示したように、歩行又は走行のステップを検出するステップ検出部３００を含んでもよい。そして進行方向算出部４００は、ステップ検出部３００での検出結果に基づいて設定された期間において、フィルター処理後の水平方向成分の積算処理を行って進行方向を算出する。
【０１０５】
ここで、ステップとは加速度センサー１０の装着対象の一単位の運動に対応するものである。人の歩行走行を考えるのであれば、当該歩行走行の一歩に対応する。なお、車等が対象となるのであれば、その車の推進機構の一単位の動作を考えればよく、例えばタービンエンジンにおけるタービンの１回の回転に相当する。なお、歩行走行のステップは、１ステップが１歩に対応すればよく、ステップの開始終了のタイミングは限定されない。例えば、足の着地の瞬間から次の着地の直前までを１ステップとしてもよいし、足が最高点に達した瞬間から次の最高点への到達直前までを１ステップとしてもよいし、他のタイミングを開始終了に用いてもよい。
【０１０６】
これにより、ステップを検出し、当該ステップに基づいて積算処理を行う期間を設定することが可能になる。ステップを上述したように運動の一単位とすると、検出加速度の信号波形は１ステップを単位として周期性を持つことが想定される。よって信号波形の変化は１ステップ内で充分現れることになるため、ステップに基づいて（狭義には１ステップの中で）積算期間を決定することで、進行方向を算出するに足る進行方向情報を求めることができる。なお、１ステップに１回の割合で進行方向情報を求めることで、進行方向の推定レートが高く設定できるため、デッドレコニング等の処理の正確性の向上が期待できるが、積算期間が複数のステップにまたがることを妨げるものではない。
【０１０７】
また、状態検出装置は図１に示したように、加速度センサー１０からの検出加速度に基づいて合成加速度情報を算出する合成加速度算出部１１０を含んでもよい。そして、ステップ検出部３００は、合成加速度算出部１１０で算出された合成加速度情報に基づいて、ステップを検出する。なお、合成加速度情報は、検出加速度のべき乗和に基づいて算出してもよい。
【０１０８】
ここで、加速度センサー１０は複数の軸を有するセンサーであることが想定され、任意の装着姿勢において実空間での進行方向を算出する必要から、狭義には３軸加速度センサーであると考えられる。つまり、加速度センサー１０は、所与のセンサー情報出力タイミングで軸の数に相当する数の値を出力することになる。本実施形態の合成加速度とは、それら複数の値に基づいて算出される値であり、例えば複数の値の二乗和の平方根である。ただし、合成加速度の算出手法は任意であり、他の手法であっても良い。なお、ある値（例えばｘ）が正の値であり、他の値（例えばｙ）が負の値であるとすると、ｘ＋ｙやｘ３＋ｙ３等の値を用いたのでは、正の値と負の値の加算となり値（絶対値）が小さくなってしまう。ステップ検出においては、信号値は大きいことが望ましいため、べき乗和を用いるのであれば偶数乗にする等、合成処理において各軸の値が打ち消し合わないようにするべきである。
【０１０９】
これにより、合成加速度情報に基づいたステップ検出が可能になる。本実施形態では、検出加速度の積算処理を行うため水平方向成分のピーク値を用いなくてもよいことは説明したが、積算処理後の情報の有効性を担保するためには積算期間の設定を適切に行う必要がある。そのためには、上述したようにステップ検出等が必要となるが、そのためには結局信号波形の変化等を解析することが求められる。ただし、ここで必要なのは１歩に相当するステップの検出であり、水平方向成分のピークではない。よってステップの検出は、合成加速度情報を用いるものとする。合成加速度情報は水平方向成分に比べて大きな信号値を得られることが想定されるため、合成加速度情報に基づくステップの検出は、水平方向成分のピーク検出に比べて容易に実現できる。
【０１１０】
また、フィルター処理部２００は、合成加速度算出部１１０で算出された合成加速度情報に対して、ＤＣ成分を除去するフィルター処理を行ってもよい。そして、ステップ検出部３００は、フィルター処理後の合成加速度情報に基づいて、ステップを検出する。
【０１１１】
これにより、合成加速度情報に対してＤＣ成分の除去処理を行ったうえで、ステップ検出を行うことが可能になる。ステップを検出するためには、例えば特徴的な点（ピークやゼロ点等）を検出することが求められるが、図３のｏｒｉｇｉｎａｌに示したように、算出した合成加速度そのものではノイズ等によるばらつきが大きく、正確なステップ検出ができない。その点、ＤＣ成分を除去することで図３のｆｉｌｔｅｒ後のようになめらかな波形が得られるため、ステップ検出処理が容易になる。
【０１１２】
また、ステップ検出部３００は、合成加速度情報のピークを求めることでステップを検出してもよい。
【０１１３】
これにより、ピークを求めることでステップを検出することが可能になる。ピークとは図５に示したように上ピークであってもよいし下ピークであってもよいし、その両方であってもよい。ピークは図５を用いて上述したように、対象となるサンプルの値とその前後のサンプルの値との比較処理、或いは所与の閾値との比較処理という容易な処理により求めることができる。よって、例えばＦＦＴ等の周波数解析により信号の周期（周波数）を求め、その周期等に基づいてステップを求める処理等に比べて、処理負荷を軽くすることができる。
【０１１４】
また、ステップ検出部３００は、合成加速度情報のピークとして、第１のピークと、第１のピークとは加速度方向が異なる第２のピークを検出してもよい。そして、進行方向算出部４００は、第１のピークの検出タイミングから、第２のピークの検出タイミングまでの期間において、フィルター処理後の水平方向成分の積算処理を行って進行方向を算出してもよい。
【０１１５】
ここで、加速度方向とは、合成加速度情報がベクトル（大きさだけでなく方向も持つ）であれば、そのベクトルにより表される方向であり、加速度方向が異なるとは、２つのベクトルのなす角度が所与の閾値以上の場合等であることが考えられる。しかし典型的には、合成加速度情報はべき乗和等のスカラーであるため、加速度方向とは平均値（ＤＣ成分）に対して大きいものか小さいものかを表すものである。さらに言えば、合成加速度情報に対してＤＣ成分除去フィルターを施すため、平均値は０に近いと考えられることから、加速度方向とは正方向と負方向に２つであることが想定される。
【０１１６】
これにより、加速度方向が異なる２つのピークを検出し、その一方のピーク検出タイミングから他方のピーク検出タイミングまでの期間において積算処理を行うことが可能になる。ステップの開始タイミングを検出し、１ステップの全期間で積算処理を行ったとしても、水平方向成分は図４（Ａ）のように正の値の期間と負の値の期間の両方があるため、互いに打ち消し合ってしまう。水平方向成分の信号値が元々小さく、ノイズの影響を受けやすい以上、積算値の絶対値は大きいことが望ましいため、１ステップの全期間ではなく、一部期間での積算を行う必要がある。その点、上ピークと下ピークを用いれば、ピークの検出が容易であり、且つ一方のピークから他方のピークまでは正の値或いは負の値の一方が支配的であるため、効果的な積算処理が可能になる。なお、下ピークから上ピークまでの加速期間（正の値が支配的）を用いてもよいし、上ピークから下ピークまでの減速期間（負の値が支配的）を用いてもよい。なお、所与のユーザーデータでは足をあげる期間（加速期間に対応）と足を下ろす期間（減速期間に対応）を比べた場合、足を下ろす期間の方が時間的に短くなる傾向が見られる場合もある。その他、ユーザーの個人差や運動状態の違い等から、加速期間と減速期間の一方に比べて他方が長い可能性が高いという状況は考えられるそのような場合には、積算処理によるノイズの蓄積を抑止することを考慮して、加速期間と減速期間のうち短い方を用いることが望ましい。
【０１１７】
また、進行方向算出部４００は、水平方向成分の積算処理として、第１の座標成分の積算処理と、第１の座標成分とは異なる第２の座標成分の積算処理とを行って、進行方向を算出してもよい。
【０１１８】
これにより、水平方向に含まれる２つの成分について、それぞれ積算処理を行い、当該積算処理の結果に基づいて進行方向を算出することが可能になる。本実施形態では、加速度センサーの装着姿勢の自由度を高めているため、センサーの１つの軸を必ず進行方向に向ける等の設定はできない。よって、水平方向成分として、所与の２成分（例えば北方向のＮ成分と、東方向のＥ成分）を用いて図１８のように進行方向を算出することになる。
【０１１９】
また、水平方向成分抽出部１００は、加速度センサーが取り付けられる機器の姿勢情報に基づいて、検出加速度の水平方向成分を求めてもよい。
【０１２０】
これにより、姿勢情報に基づいて水平方向成分を抽出することが可能になる。抽出処理は例えば座標変換行列による変換処理であってもよい。姿勢情報は例えば、クォータニオン等であり、加速度センサーのセンサー情報から求めることができる。また、加速度センサーだけでなく、地磁気センサーを用いることで絶対的な方位を取得してもよいし、ジャイロセンサー等を追加してもよい。また、過去のセンサー情報等を参照して求めてもよく、例えばカルマンフィルター等の出力を利用してもよい。なお、進行方向の算出とは別に歩数計測等の処理を行う場合には、それらの処理にカルマンフィルターが用いられることが考えられるため、当該カルマンフィルターを姿勢情報の算出に流用することができる。
【０１２１】
７．２  第２の実施形態
また、状態検出装置は図１に示したように、加速度センサー１０からの検出加速度に基づいて、歩行又は走行の進行方向を算出する進行方向算出部４００と、歩行又は走行のステップを検出するステップ検出部３００とを含んでもよい。そして、進行方向算出部４００（狭義には進行方向算出部４００に含まれる平均化処理部４３０）は、第１のステップに対応する進行方向情報と、第１のステップとは異なる第２のステップに対応する進行方向情報との平均化処理を行って、第１のステップでの進行方向を算出する。
【０１２２】
ここで、進行方向情報は狭義には積算処理部４１０による積算処理が行われた情報であるが、これに限定されるものではない。例えば従来手法のように水平方向成分のピーク値を進行方向情報としてもよい。なお、本実施形態の平均化処理を行った後の情報も進行方向情報に含まれるものとしてもよい。
【０１２３】
これにより、所与のステップの進行方向情報と、他のステップの進行方向情報の平均化処理を行って進行方向を算出することが可能になる。人の歩行又は走行では、右足踏み出し時と左足踏み出し時とで体の運動が異なる。例えば腰に着目すれば、足の踏み出し時には、腰のうち踏み出した足の側が、反対側に比べて相対的に前方に出ることになる。よって、加速度センサーを腰に装着する等、所与の条件下ではステップごとに推定した進行方向がばらつくことになる。本実施形態の平均化処理を行うことで、そのようなばらつきを抑え、図１１に示したように適切な進行方向推定が可能になる。
【０１２４】
また、第１のステップは右足及び左足の一方に対応するステップであり、第２のステップは右足及び左足のうち、第１のステップとは異なる足に対応するステップであってもよい。
【０１２５】
これにより、右足踏み出し時の進行方向情報と、左足踏み出し時の進行方向情報の平均化処理が可能になる。上述したように、本実施形態の平均化処理は左右の足による運動の違いに起因するばらつきを低減するものであるから、同じ運動状態から算出された進行方向情報同士の平均化は効果的ではない。よって、右足と左足による平均化処理が必要となる。なお、平均化処理は対象となるステップと、１つ前のステップについて行われるものに限定されず、例えば３つ前のステップとの平均化処理であってもよい。また、対象となるステップとその前３ステップを用いる等、３つ以上の進行方向情報の平均化処理であってもよい。なお、運動時にリアルタイムで進行方向を推定する必要がない場合（例えばセンサー情報を蓄積しておき、当該センサー情報に対する処理は後で行われる場合等）であれば、処理対象となるステップとの平均化処理は、当該処理対象ステップの過去のものに限定されない。例えば、所与のタイミングでのステップに対して、当該ステップよりも後のタイミングでのステップでの進行方向情報を用いて平均化処理を行ってもよい。
【０１２６】
また、状態検出装置は図１に示したように、加速度センサー１０からの検出加速度の水平方向成分を求める水平方向成分抽出部１００を含んでもよい。そして、進行方向算出部４００は、水平方向成分に基づいて進行方向情報を求める。
【０１２７】
これにより、加速度センサー１０の検出加速度から水平方向成分を抽出することが可能になるため、加速度センサー１０の軸と水平方向とを考慮せずに装着姿勢を決定すること等が可能になる。また、図１８に示したように、水平方向成分に基づいて進行方向情報を算出することが可能になる。
【０１２８】
また、水平方向成分抽出部１００は、水平方向成分として、第１座標軸成分と、第１座標軸成分とは異なる第２座標軸成分とを抽出してもよい。そして、進行方向算出部４００は、第１のステップにおける第１座標軸成分から求めた進行方向情報と、第２のステップにおける第１座標軸成分から求めた進行方向情報との平均化処理を行って、平均化処理後の第１座標軸成分を求める。それとともに、第１のステップにおける第２座標軸成分から求めた進行方向情報と、第２のステップにおける第２座標軸成分から求めた進行方向情報との平均化処理を行って、平均化処理後の第２座標軸成分を求める。さらに、平均化処理後の第１座標軸成分と、平均化処理後の第２座標軸成分に基づいて、進行方向を算出する。
【０１２９】
これにより、水平方向成分として２つの成分を用いた場合にも平均化処理を行うことが可能になる。水平方向成分をＮ成分とＥ成分とすると、第１のステップでは進行方向情報として２つの値が得られ（例えばＡｎ＿ｓｕｍとＡｅ＿ｓｕｍ）、第２のステップでも同様となる（例えばＡｎ＿ｓｕｍ＿ｏｌｄとＡｅ＿ｓｕｍ＿ｏｌｄ）。この場合には、平均化処理は各軸について行えばよく、例えばＡｎ＿ｓｕｍ＋Ａｎ＿ｓｕｍ＿ｏｌｄと、Ａｅ＿ｓｕｍ＋Ａｅ＿ｓｕｍ＿ｏｌｄとを求める処理となる。
【０１３０】
また、状態検出装置は図１に示したように、検出加速度の水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部２００を含んでもよい。そして、進行方向算出部４００（狭義には進行方向算出部４００に含まれる積算処理部４１０）は、フィルター処理後の水平方向成分の積算処理を行って、１のステップに対応する進行方向情報、及び第２のステップに対応する進行方向情報を求める。
【０１３１】
これにより、進行方向情報として上述した積算処理後の値を用いることが可能になる。積算処理を行うことによる利点については上述したとおりである。
【０１３２】
また、状態検出装置は図１に示したように、検出加速度のべき乗和に基づいて、合成加速度情報を算出する合成加速度算出部１１０を含んでもよい。そして、フィルター処理部２００は、合成加速度情報に対して、ＤＣ成分を除去するフィルター処理を行う。また、ステップ検出部３００は、フィルター処理後の合成加速度情報に基づいて、ステップを検出する。
【０１３３】
これにより、検出加速度から合成加速度情報を求め、当該合成加速度情報に対してフィルター処理を行なってステップを検出することが可能になる。本実施形態では、右足と左足との違いによるばらつきを解消するために、歩行走行の１歩１歩としてステップを検出する。つまり、ステップの検出を適切に行うことが必要であり、そのために合成加速度情報の算出とフィルター処理を行うことになる。これらの処理によりステップ検出が適切に行える理由については上述したとおりである。
【０１３４】
７．３  第３の実施形態
また、状態検出装置は図１に示したように、加速度センサー１０からの検出加速度の水平方向成分を求める水平方向成分抽出部１００と、水平方向成分に基づいて進行方向を算出する進行方向算出部４００とを含んでもよい。そして、進行方向算出部４００（狭義には進行方向算出部４００に含まれるＤＣ成分抽出フィルター処理部４５０）は、水平方向成分に基づいて求められた進行方向情報に対して、ＤＣ成分の抽出処理を行って進行方向を算出する。
【０１３５】
ここで、進行方向情報は狭義には積算処理部４１０による積算処理が行われた後、平均化処理部４３０での平均化処理が行われた情報であるが、これに限定されるものではない。例えば従来手法のように水平方向成分のピーク値を進行方向情報としてもよいし、積算処理は行うが平均化処理は行われない情報を進行方向情報としてもよい。なお、本実施形態のＤＣ成分抽出処理を行った後の情報も進行方向情報に含まれるものとしてもよい。
【０１３６】
これにより、進行方向情報に対してＤＣ成分の抽出処理を行うことが可能になる。図１３（Ａ）に示したように、推定された進行方向は横揺れ等（特に手で把持した場合の手の横揺れで顕著となる）の影響により値がばらつくことになる。そこで、進行方向情報に対してＤＣ成分の抽出処理を行なうことで変動を抑制し、ばらつきを抑える。
【０１３７】
また、状態検出装置は図１に示したように、進行方向の変化を表す変化情報を取得する変化情報取得部５００を含んでもよい。そして、進行方向算出部４００は、変化情報に基づいて、抽出処理で用いられるパラメーターを調整する。
【０１３８】
これにより、変化情報に基づいて抽出処理のパラメーターを調整することが可能になる。上述したように、ＤＣ成分の抽出処理により変動が抑制されるため、本来結果に反映させるべき進行方向の変動まで抑制してしまうおそれがある。例えば図１３（Ａ）に示したように、運動自体は時刻３５付近で切り替わっているのに、ＤＣ抽出処理を施すことで時刻３５〜６０程度にかけて緩やかに変化することになってしまう。よって、進行方向が変化しようとしているのであれば、当該変化を受け入れるように変動の抑制度合いを小さくするパラメーター調整を行う必要がある。逆に、進行方向の変化が小さいのであれば、変動の抑制度合いを大きくするパラメーター調整を行う。
【０１３９】
また、進行方向算出部４００は、ＤＣ成分を抽出するフィルター処理を行うＤＣ成分抽出フィルター処理部４５０を含んでもよい。そして、進行方向算出部４００は、抽出処理で用いられるパラメーターとして、ＤＣ成分抽出フィルター処理部で用いられるフィルターのゲインを調整する。
【０１４０】
ここで、ＤＣ成分抽出フィルター処理部４５０は図１４に示したように、所与のタイミングにおける入力値と、１つ前のタイミングでの出力値との差分に対してゲインに基づいた処理を行うことで中間値を求め、当該中間値と、前記所与のタイミングにおける入力値との差分を出力値とすることで、ＤＣ成分の抽出処理を行ってもよい。
【０１４１】
これにより、抽出処理のパラメーターとして、ＤＣ成分抽出フィルターのフィルターゲインを調整することが可能になる。ゲインとは例えば図１４に示したとおりである。
【０１４２】
また、進行方向算出部４００は、変化情報により表される進行方向の変化が大きいほど、ゲインの値を小さくしてもよい。
【０１４３】
これにより、変化情報に基づいてゲインを適切に設定することが可能になる。特に図１４に示したフィルターであれば、ゲインを乗ずる対象は入力値と１つ前の出力値の差分（つまり変動値）であるから、ゲインが１であれば（フィルターが理想的に動作する条件下では）変動を完全に除去するフィルターとなる。進行方向の変化が大きければ、変動の抑制度合いを小さくしたいのであるからゲインを小さくすることになる。
【０１４４】
また、変化情報取得部５００は、加速度センサー１０が取り付けられる機器の回転角度の変化を、変化情報として取得してもよい。
【０１４５】
これにより、回転角度（或いは姿勢情報）に基づいて変化情報を取得することが可能になる。原理的には、上述したように進行方向の変化の度合いに基づいて変化情報を取得するべきであるが、処理タイミングにおける進行方向の変化の度合いは、当該タイミングでの進行方向を推定しなければ求められない。よって、例えば過去の推定進行方向に基づいて進行方向の変化を算出することになり、タイミングにずれが生じる等の問題がある。よって本実施形態では、機器の姿勢から変化情報を取得する。体幹に対する機器の相対的な姿勢は安定していることを前提にしているため、機器の姿勢の変化は進行方向の変化に対応付けることができるからである。
【０１４６】
また、状態検出装置は図１に示したように、歩行又は走行のステップとして第１〜第Ｎ（Ｎは２以上の整数）のステップを検出するステップ検出部３００を含んでもよい。そして、変化情報取得部５００は、右足及び左足の一方に対応する第ｉ（１≦ｉ≦Ｎ）のステップでの変化情報と、右足及び左足のうち第ｉのステップとは異なる足に対応する第ｊ（１≦ｊ≦Ｎ、ｉ≠ｊ）のステップでの変化情報との平均化処理を行い、平均化処理後の変化情報を出力してもよい。
【０１４７】
これにより、左右の足による姿勢情報のばらつきを解消することが可能になる。進行方向情報が左右の足の違いによりばらつくように、姿勢情報（例えばＹａｗ角）も図１５に示したようにばらつくことになる。よって、平均化処理を行うことでばらつきを抑え、適切なパラメーター（狭義にはフィルターゲイン）の調整が可能になる。
【０１４８】
また、進行方向算出部４００は、右足及び左足の一方に対応する第ｍ（１≦ｍ≦Ｎ）のステップでの進行方向情報と、右足及び左足のうち第ｍのステップとは異なる足に対応する第ｎ（１≦ｎ≦Ｎ、ｍ≠ｎ）のステップでの進行方向情報との平均化処理を行い、平均化処理後の情報に対してＤＣ成分の抽出処理を行って進行方向を算出してもよい。
【０１４９】
これにより、進行方向情報に対しても平均化処理を行うことが可能になる。利点については上述したとおりである。
【０１５０】
また、水平方向成分抽出部１００は、水平方向成分として第１座標軸成分と、第１座標軸成分とは異なる第２座標軸成分とを抽出してもよい。そして、進行方向算出部４００は、第１座標軸成分に基づいて求められた第１の進行方向情報に対してＤＣ成分の抽出処理を行うとともに、第２座標軸成分に基づいて求められた第２の進行方向情報に対してＤＣ成分の抽出処理を行う。さらに、抽出処理後の第１の進行方向情報及び抽出処理後の第２の進行方向情報に基づいて、進行方向を算出する。
【０１５１】
これにより、水平方向成分として２つの成分を用いた場合にも、ＤＣ成分の抽出処理を行うことが可能になる。具体的には、第１の座標軸成分と第２の座標軸成分のそれぞれについてＤＣ成分抽出処理を行えばよい。
【０１５２】
また、状態検出装置は図１に示したように、検出加速度の水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部２００を含んでもよい。そして、進行方向算出部４００は、フィルター処理後の水平方向成分に基づいて求められた進行方向情報に対して、ＤＣ成分の前記抽出処理を行って進行方向を算出する。
【０１５３】
これにより、フィルター処理後の水平方向成分に基づいて進行方向情報を算出することが可能になる。オフセット等の影響を抑止できるため、進行方向情報の適切な算出が期待できる。特に積算処理を行う場合には、オフセット等のノイズまで積算されることを抑止できるため効果的である。
【０１５４】
７．４  状態検出装置以外の実施形態
また、以上の本実施形態は、上述してきた状態検出装置を含む電子機器にも適用できる。
【０１５５】
例えば図１９に示したように、加速度センサー１０と、出力部２０と、記憶部３０と、通信部４０と、操作部５０と、状態検出装置６０を含む電子機器が考えられる。なお、電子機器は図１９の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。また、図１９では状態検出装置は加速度センサー１０と出力部２０を含まない（図１からこれらを除いた各部から構成される）ものとしたが、これに限定されるものではない。
【０１５６】
記憶部３０は、各部のワーク領域となるもので、その機能はＲＡＭ等のメモリーやＨＤＤ（ハードディスクドライブ）などにより実現できる。通信部４０は、外部機器等との通信を行うものであり、無線により実現されてもよいし有線により実現されてもよい。操作部５０は、ユーザーが電子機器の各種操作を行うためのものであり、各種ボタンやＧＵＩ等により実現できる。
【０１５７】
電子機器は、腕時計型のデバイスであってもよいし、スマートフォン等のデバイスであってもよい。また、図１９に示された各部が一体として形成される必要はなく、例えば、加速度センサー１０を別体としてもよい。そのようにすれば、出力部２０（狭義には表示部）を有する部分はユーザーからの視認が容易な箇所に設けることができ、且つ加速度センサー１０は装着の利便性或いは取得信号の正確性等を考慮して装着することが可能になる。
【０１５８】
また、以上の本実施形態はプログラムにも適用できる。
【０１５９】
例えば、加速度センサー１０からの検出加速度の水平方向成分を求める水平方向成分抽出部１００と、検出加速度の水平方向成分に対して、ＤＣ成分を除去するフィルター処理を行うフィルター処理部２００と、フィルター処理後の水平方向成分の積算処理を行って進行方向を算出する進行方向算出部４００としてコンピューターを機能させるプログラムであってもよい。
【０１６０】
また、加速度センサー１０からの検出加速度に基づいて、歩行又は走行の進行方向を算出する進行方向算出部４００と、歩行又は走行のステップを検出するステップ検出部３００としてコンピューターを機能させるプログラムであってもよい。そして、進行方向算出部４００は、第１のステップに対応する進行方向情報と、第１のステップとは異なる第２のステップに対応する進行方向情報との平均化処理を行って、第１のステップでの進行方向を算出する。
【０１６１】
また、加速度センサー１０からの検出加速度の水平方向成分を求める水平方向成分抽出部１００と、水平方向成分に基づいて進行方向を算出する進行方向算出部４００としてコンピューターを機能させるプログラムであってもよい。そして、進行方向算出部４００は、水平方向成分に基づいて求められた進行方向情報に対して、ＤＣ成分の抽出処理を行って進行方向を算出する。
【０１６２】
そして、上記プログラムは、情報記憶媒体に記録される。ここで、情報記録媒体としては、ＤＶＤやＣＤ等の光ディスク、光磁気ディスク、ハードディスク（ＨＤＤ）、不揮発性メモリーやＲＡＭ等のメモリーなど、システムによって読み取り可能な種々の記録媒体を想定できる。
【０１６３】
例えば、図２０に示したように、加速度センサー１０と、出力部２０と、記憶部３０と、通信部４０と、操作部５０と、処理部７０と、情報記憶媒体８０を含むシステムにおいて、上記プログラムは情報記憶媒体８０に記憶される。そして、情報記憶媒体８０に記憶されたプログラムは処理部７０（例えばＣＰＵ等）に読み出され、当該プログラムにより指示される処理が行われる。図２０のシステムとしては例えばスマートフォン等が考えられる。本実施形態にかかるプログラムは、スマートフォンの情報記憶媒体に記憶され、当該スマートフォンのＣＰＵ等により実行されることになる。
【０１６４】
なお、以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また状態検出装置、電子機器の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１６５】
１０  加速度センサー、２０  出力部、３０  記憶部、４０  通信部、５０  操作部、
６０  状態検出装置、７０  処理部、８０  情報記憶媒体、
１００  水平方向成分抽出部、１１０  合成加速度算出部、
２００  フィルター処理部、３００  ステップ検出部、４００  進行方向算出部、
４１０  積算処理部、４３０  平均化処理部、
４５０  ＤＣ成分抽出フィルター処理部、４７０  角度算出部、
５００  変化情報取得部
【図１】
0005935365.tif 000003
【図２】
0005935365.tif 000004
【図３】
0005935365.tif 000005
【図４】
0005935365.tif 000006
【図５】
0005935365.tif 000007
【図６】
0005935365.tif 000008
【図７】
0005935365.tif 000009
【図８】
0005935365.tif 000010
【図９】
0005935365.tif 000011
【図１０】
0005935365.tif 000012
【図１１】
0005935365.tif 000013
【図１２】
0005935365.tif 000014
【図１３】
0005935365.tif 000015
【図１４】
0005935365.tif 000016
【図１５】
0005935365.tif 000017
【図１６】
0005935365.tif 000018
【図１７】
0005935365.tif 000019
【図１８】
0005935365.tif 000020
【図１９】
0005935365.tif 000021
【図２０】
0005935365.tif 000022