(57)【要約】【課題】歩数の計数精度を向上させる。【解決手段】加速度ベクトル取得部１０は、歩行体の加速度ベクトルを取得する。加速度ベクトル分離部２０は、この加速度ベクトルを、重力加速度ベクトルと、歩行体の歩行により生じている歩行加速度ベクトルとに分離する。内積計算部３０は、加速度ベクトル分離部２０により分離された重力加速度ベクトルと歩行加速度ベクトルとの内積値を算出する。歩数計数部４０は、内積計算部３０により算出された内積値の時間変化に基づいて歩数の計数を行う。【選択図】図１
2010257395.tif 000002
【特許請求の範囲】
【請求項１】
歩行体の加速度ベクトルを取得する加速度ベクトル取得手段と、
該加速度ベクトルを、重力加速度ベクトルと該歩行体の歩行により生じている歩行加速度ベクトルとに分離する加速度ベクトル分離手段と、
該重力加速度ベクトルと該歩行加速度ベクトルとの内積値を算出する内積計算手段と、
該内積値の時間変化に基づいて歩数の計数を行う歩数計数手段と、
を有することを特徴とする歩数計。
【請求項２】
該加速度ベクトル分離手段は、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも低い成分を通過させるローパスフィルタを含み、該ローパスフィルタを通過した成分を該重力加速度ベクトルとすることを特徴とする請求項１に記載の歩数計。
【請求項３】
該ローパスフィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力するデジタルフィルタであることを特徴とする請求項２に記載の歩数計。
【請求項４】
該加速度ベクトル分離手段は、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも低い成分を減衰させるハイパスフィルタを含み、該ハイパスフィルタを通過した成分を該歩行加速度ベクトルとすることを特徴とする請求項１に記載の歩数計。
【請求項５】
該ハイパスフィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を、最直近の成分値から減算した結果を出力するデジタルフィルタであることを特徴とする請求項４に記載の歩数計。
【請求項６】
該加速度ベクトル分離手段は、更に、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも高い成分を、ノイズ成分とみなして減衰させるローパスフィルタであるノイズ除去フィルタを含み、該ハイパスフィルタ及び該ノイズ除去フィルタの両者を通過した成分を、該歩行加速度ベクトルとすることを特徴とする請求項４に記載の歩数計。
【請求項７】
該ノイズ除去フィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力するデジタルフィルタであることを特徴とする請求項６に記載の歩数計。
【請求項８】
該歩数計数手段は、
該内積値の符号の反転を検出する反転検出手段と、
該反転検出手段が該内積値の符号の反転を一旦検出してから該反転検出手段が該内積値の該反転前の符号への反転を次に検出するまでの期間における該内積値の積分値を、該期間毎に算出する積分計算手段と、
該期間毎の積分値のうち所定の閾値以上であるものの数から、該歩数を算出する歩数算出手段と、
を有することを特徴とする請求項１に記載の歩数計。
【請求項９】
該歩数算出手段は、該期間毎の積分値のうち所定の閾値以上であるものの数の１／２を該歩数の算出結果とすることを特徴とする請求項８に記載の歩数計。
【請求項１０】
歩数計の有する加速度ベクトル取得手段が、歩行体の加速度ベクトルを取得し、
該歩数計の有する加速度ベクトル分離手段が、該加速度ベクトルを、重力加速度ベクトルと該歩行体の歩行により生じている歩行加速度ベクトルとに分離し、
該歩数計の有する内積計算手段が、該重力加速度ベクトルと該歩行加速度ベクトルとの内積値を算出し、
該歩数計の有する歩数計数手段が、該内積値の時間変化に基づいて歩数の計数を行う、
ことを特徴とする歩数計数方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で述べる実施態様は、人間等の、歩行を行う歩行体が歩行したときの歩数を計数する歩数計の技術に関するものである。
【背景技術】
【０００２】
歩行体が歩行したときの歩数を計数する歩数計が広く知られている。この歩数の計数について、幾つかの技術が知られている。
この技術のひとつに、鉛直線方向の振動を検出するセンサの検出結果に基づいて歩数を計数するというものがある。この技術では、歩行体へ取り付けるセンサの向きを、様々な手法を用いて制限することで、センサが検出する振動が鉛直線方向のものとなるようにしている。
【０００３】
また、この技術の別のひとつに、Ｘ、Ｙ、Ｚ方向の加速度を検出する三軸加速度センサにより検出された加速度データを処理して歩数を計数するようにして、センサの歩行体への取り付けの自由度を向上させるというものがある。
【０００４】
また、この技術の更に別のひとつに、加速度センサで検出した加速度の指標値を積分して算出した歩行エネルギーと、所定の閾値との比較結果に基づいて歩数を計数するというものがある。この技術では、瞬間的な振動と歩行による振動とを区別できるので、歩数の計数精度が向上する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１５６３６１号公報
【特許文献２】特開２００３−３０８５１１号公報
【特許文献３】特開２００３−２４２４７７号公報
【特許文献４】特開２００８−１７１３４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
三軸加速度センサにより検出される３方向の加速度成分から得られる加速度ベクトルには、縦方向の加速度成分と横方向の加速度成分とを含んでいる。このうちの縦方向の加速度成分は、歩行による縦方向（鉛直線方向）の振動によって生じるものであり、横方向の加速度成分は、歩行による横方向（歩行の進行方向に対する前後左右各方向）の振動によって生じるものである。この加速度ベクトルに基づいて歩数の計数を行う場合、この横方向の振動に起因する加速度成分の存在は、歩行の計数誤差を生じさせる要因となる。
【０００７】
また、昨今は、歩数計の機能を装備した、携帯電話機や腕時計などの電子機器が市販されている。このような電子機器では、専用の歩数計よりも一般的には自重が大きいため、上述した歩行による横方向の振動の振幅を更に増大させる結果、歩行の計数誤差を拡大させる。
【０００８】
本発明は上述した問題に鑑みてなされたものであり、その目的は、歩数の計数精度を向上させることである。
【課題を解決するための手段】
【０００９】
本明細書で後述する歩数計のひとつには、加速度ベクトル取得手段と、加速度ベクトル分離手段と、内積値算出手段と、歩数計数手段と、を有するというものがある。
ここで、加速度ベクトル取得手段は、歩行体の加速度ベクトルを取得する。加速度ベクトル分離手段は、この加速度ベクトルを、重力加速度ベクトルと当該歩行体の歩行により生じている歩行加速度ベクトルとに分離する。内積値算出手段は、加速度ベクトル分解手段が分解した重力加速度ベクトルと歩行加速度ベクトルとの内積値を算出する。そして、歩数計数手段は、この内積値の時間変化に基づいて歩数の計数を行う。
【００１０】
重力加速度ベクトルと歩行加速度ベクトルとの内積値は、歩行によって歩行体に生じる鉛直線方向の振動における鉛直線方向の加速度を表す指標値と見ることができる。従って、この内積値の時間変化から、歩数の計数を行うことができる。また、このようにして歩数の計数を行う場合には、横方向の振動に起因する加速度成分は、歩数の計数において無視される。従って、高い計数精度での歩行の計数が可能となる。また、この歩数計では、歩数計の自重により横方向の振動の振幅が増大しても、この横方向の振動に起因する加速度成分が歩数の計数において以上のようにして無視されるので、歩行の計数誤差の拡大が抑制される。
【発明の効果】
【００１１】
本発明で後述する歩数計は、高い歩数の計数精度を提供するという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】歩数計の全体構成図である。
【図２】歩数計のハードウェア構成図である。
【図３】制御処理の処理内容を示すフローチャートである。
【発明を実施するための形態】
【００１３】
まず図１について説明する。図１は、歩数計１の機能構成が図解されている。この歩数計１は、加速度ベクトル取得部１０と、加速度ベクトル分離部２０と、内積計算部３０と、歩数計数部４０とを有している。
【００１４】
図１において、加速度ベクトル取得部１０は、この歩数計１による歩数計数の対象である歩行体の加速度ベクトルを取得する。この加速度ベクトル取得部１０は、本実施形態では、三軸加速度センサ１１を有している。
【００１５】
三軸加速度センサ１１は、互いに異なる方向を向く３つの軸の各々の加速度成分を検出する。本実施形態では、加速度ベクトル取得部１０は、この三軸加速度センサ１１による歩行体についての上記の各加速度成分の検出結果を加速度ベクトルとして取得する。
【００１６】
なお、加速度ベクトル取得部１０は、他のセンサを用いて歩行体の加速度ベクトルを取得するようしてもよい。
以下、加速度ベクトル取得部１０が取得した歩行体の加速度ベクトルを、単に「加速度ベクトル」と称することとする。
【００１７】
加速度ベクトル分離部２０は、加速度ベクトルを、重力加速度ベクトルと、歩行体の歩行により生じている歩行加速度ベクトルとに分離する。この加速度ベクトル分離部２０は、本実施形態では、ローパスフィルタ２１、ハイパスフィルタ２２、及びノイズ除去フィルタ２３を有している。
【００１８】
ローパスフィルタ２１は、加速度ベクトルの周波数成分のうち、歩行による歩行体の鉛直線方向の振動（「歩行振動」と称することとする。）の周波数成分よりも低い成分を通過させる。なお、例えば、歩行体が人間である場合における歩行振動は、１ヘルツ（［Ｈｚ］）〜３ヘルツ程度の周波数成分を有している。従って、この場合、ローパスフィルタ２１の遮断周波数は１ヘルツ程度に設定される。
【００１９】
このローパスフィルタ２１を通過する成分は、その振幅がほぼ一定の成分（直流成分）である。ところで、加速度ベクトルにおいて、振幅が一定の成分とは、重力加速度ベクトルであることは明らかである。従って、加速度ベクトル分離部２０は、加速度ベクトルのうち、このローパスフィルタ２１を通過した成分を、当該加速度ベクトルから分離された重力加速度ベクトルとする。
【００２０】
ハイパスフィルタ２２は、加速度ベクトルの周波数成分のうち、前述した歩行振動の周波数成分よりも低い成分を減衰させて、その残りの成分を通過させる。例えば、歩行体が人間である場合における歩行振動は前述した周波数成分を有しているので、この場合、ハイパスフィルタ２２の遮断周波数は１ヘルツ程度に設定される。
【００２１】
このように、ハイパスフィルタ２２は、加速度ベクトルの周波数成分のうち、ローパスフィルタ２１が通過させる成分を減衰させ、ローパスフィルタ２１が減衰させる成分を通過させる。従って、このハイパスフィルタ２２を通過する成分は、加速度ベクトルの周波数成分のうちの重力加速度ベクトル以外の成分であり、これはすなわち、歩行体の歩行により生じている歩行加速度ベクトルである。従って、加速度ベクトル分離部２０は、加速度ベクトルのうち、このハイパスフィルタ２２を通過した成分を、当該加速度ベクトルから分離された歩行加速度ベクトルとする。
【００２２】
なお、加速度ベクトル分離部２０は、加速度ベクトルからの重力加速度ベクトルと歩行加速度ベクトルとの分離を、他の構成により行うようにしてもよい。
ノイズ除去フィルタ２３は、加速度ベクトルの周波数成分のうち、前述した歩行振動の周波数成分よりも高い成分を、ノイズ成分とみなして減衰させるローパスフィルタである。例えば、歩行体が人間である場合における歩行振動は前述した周波数成分を有しているので、この場合、ノイズ除去フィルタ２３であるローパスフィルタの遮断周波数は３ヘルツ程度に設定される。
【００２３】
加速度ベクトル分離部２０は、このノイズ除去フィルタ２３を備えなくてもよいが、ノイズ除去フィルタ２３を備えて上記のノイズ成分を除去することで、当該ノイズ成分に起因する歩数の誤計数が抑制されるので、歩数の計数精度が向上する。なお、ノイズ除去フィルタ２３を備える場合には、加速度ベクトル分離部２０は、加速度ベクトルのうち、ハイパスフィルタ２２及びノイズ除去フィルタ２３の両者を通過した成分を、当該加速度ベクトルから分離された歩行加速度ベクトルとする。
【００２４】
内積計算部３０は、加速度ベクトルから加速度ベクトル分離部２０により分離された重力加速度ベクトルと歩行加速度ベクトルとの内積値を算出する。ここで、重力加速度ベクトルは、歩行体の歩行する範囲においては向きも大きさも一定と見れば、この内積値は、歩行振動における鉛直線方向の加速度を表す指標値と見ることができる。
【００２５】
歩数計数部４０は、内積計算部３０が算出した内積値の時間変化に基づいて歩数の計数を行う。この歩数計数部４０は、本実施形態では、反転検出部４１、積分計算部４２、及び歩数算出部４３を有している。
【００２６】
反転検出部４１は、内積計算部３０が算出した内積値の符号の反転、すなわち、歩行振動における鉛直線方向の加速度の符号の反転を検出する。
積分計算部４２は、反転検出部４１が内積値の符号の反転を一旦検出してから当該反転検出部４１が当該内積値の当該反転前の符号への反転を次に検出するまでの期間における当該内積値の積分値を、当該該期間毎に算出する。つまり、積分計算部４２は、歩行振動における鉛直線方向の加速度の符号の反転を反転検出部４１が一旦検出してから、当該加速度の当該反転前の符号への反転を次に検出するまでの期間における当該加速度の積分値を、当該該期間毎に算出する。
【００２７】
歩数算出部４３は、上記の期間毎の積分値のうち所定の閾値以上であるものの数から、歩行体の歩数を算出する。
一般に、物体の運動エネルギーは、速度の二乗に比例定数（物体の質量×１／２）を乗じたものである。従って、物体の質量が不変であれば、その運動エネルギーは、速度の二乗値により表すことができる。ここで、速度は、加速度を時間積分したものであるので、運動エネルギーは、加速度の二乗を、所定時間積分したものにより表すこともできる。更に、運動エネルギーと所定のエネルギー値との大小判定を行うのみであれば、加速度が余り大きく変化しないのであれば、加速度を所定時間積分したものと所定値との比較によって近似的に当該判定を下すことが可能である。
【００２８】
積分計算部４２は、歩行振動における加速度の符号が同一の期間における当該加速度の積分値を算出し、歩数算出部４３は、この積分値が所定の閾値以上である場合の数を計数する。従って、閾値を適切な値としておくことで、例えば歩数計１を落下させてしまった場合のような瞬間的な加速度の変化が発生しても、この変化を歩数として誤計数することがないので、精度良く歩数を計数することができる。
【００２９】
なお、歩行体による歩行において、１歩の歩行は歩行振動の１周期に対応する。この１周期において、歩行振動における鉛直線方向の加速度の符号は２回反転して元の符号に戻る。つまり、積分計算部４２が積分値の計算を行う期間は、１歩の歩行について２つ発生する。従って、歩数算出部４３は、上記の期間毎の積分値のうち所定の閾値以上であるものの数の１／２を、歩行体の歩数の算出結果とする。ここで、この歩数の算出結果が整数とならない場合には、小数点以下を切り上げ若しくは切り捨てて、整数値としてもよい。
【００３０】
なお、歩数計数部４０は、内積計算部３０が算出した内積値の時間変化に基づいた歩数の計数、すなわち、歩行振動における鉛直線方向の加速度の時間変化に基づいた歩数の計数を、他の構成により行うようにしてもよい。
【００３１】
次に図２について説明する。図２は、歩数計１のハードウェア構成図である。この図２の構成は、図１に提示した歩数計１の各構成要素が有している機能を、ＭＰＵ５１が提供するようにして構成した一例である。
【００３２】
図２において、この歩数計１は、ＭＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、入力部５４、表示部５５、及びインタフェース部５６を備えている。これらはバス５７に接続されており、ＭＰＵ５１の管理の下で各種のデータを相互に授受することができる。また、前述した三軸加速度センサ１１がインタフェース部５６に接続されている。
【００３３】
ＭＰＵ（Micro Processing Unit）５１は、この歩数計１全体の動作を制御する演算処理装置である。
ＲＯＭ（Read Only Memory）５２は、所定の制御プログラムが予め記録されている読み出し専用半導体メモリである。この制御プログラムは、後述する制御処理の処理内容をＭＰＵ５１に行わせるためのものである。ＭＰＵ５１は、この制御プログラムを歩数計１の起動時に読み出して実行することにより、この歩数計１の各構成要素の動作制御が可能になる。その結果、加速度ベクトル取得部１０、加速度ベクトル分離部２０、内積計算部３０、及び歩数計数部４０が有している各機能を、ＭＰＵ５１が提供できるようになる。
【００３４】
ＲＡＭ（Random Access Memory）５３は、ＭＰＵ５１が各種の制御プログラムを実行する際に、必要に応じて作業用記憶領域として使用する、随時書き込み読み出し可能な半導体メモリである。
【００３５】
入力部５４は、例えば歩数計時リセットスイッチ等の操作子であり、歩数計１の使用者により操作されると、その操作内容に対応付けられている使用者からの各種情報の入力を取得し、取得した入力情報をＭＰＵ５１に送付する。
【００３６】
表示部５５は例えば液晶ディスプレイであり、ＭＰＵ５１から送付される表示データに応じ、歩数の計数結果等の各種のテキストや画像を表示する。
インタフェース部５６は、例えばアナログ−デジタル変換器（ＡＤ変換器）であり、三軸加速度センサ１１により検出された各加速度成分の検出結果を示すアナログ電気信号を、当該検出結果を示すデジタルデータに変換してＭＰＵ５１に送付する。なお、ＭＰＵ５１自身がＡＤ変換機能を備えている場合には、三軸加速度センサ１１が出力する上記のアナログ電気信号を、ＭＰＵ５１が直接受け取ってデジタルデータに変換するようにしてもよい。
【００３７】
次に図３について説明する。図３は、ＭＰＵ５１によって行われる制御処理の処理内容を示すフローチャートである。ＭＰＵ５１は、この処理を繰り返し実行する。
図３において、まず、Ｓ１０１において、ＭＰＵ５１は、インタフェース部５６を制御して、三軸加速度センサ１１の検出結果である３方向の加速度成分データを、歩行体の加速度ベクトルとして取得する処理を行う。このＳ１０１の処理を行うことで、ＭＰＵ５１は、加速度ベクトル取得部１０の機能を提供する。
【００３８】
次に、Ｓ１０２において、ＭＰＵ５１は、Ｓ１０１の処理で取得した加速度ベクトルから、重力加速度ベクトルを算出する処理を行う。そして、続くＳ１０３において、ＭＰＵ５１は、Ｓ１０１の処理で取得した加速度ベクトルから、前述した歩行加速度ベクトルを算出する処理を行う。このＳ１０２及びＳ１０３の処理を行うことで、ＭＰＵ５１は、加速度ベクトル分離部２０の機能を提供する。
【００３９】
このＳ１０２及びＳ１０３の処理について、更に説明する。
Ｓ１０２の処理では、ＭＰＵ５１は、Ｓ１０１の処理で取得した加速度ベクトルのベクトル成分に対し、歩行振動の周波数成分よりも低い成分を通過させるローパスフィルタ２１の特性を有するデジタルフィルタ演算を実行する。また、Ｓ１０３の処理では、ＭＰＵ５１は、Ｓ１０１の処理で取得した加速度ベクトルのベクトル成分に対し、歩行振動の周波数成分よりも低い成分を減衰させるハイパスフィルタ２２の特性を有するデジタルフィルタ演算を実行する。このＳ１０２及びＳ１０３のデジタルフィルタ演算では、例えば、下記の式の値を、ベクトル成分毎に算出するようにする。
【数１】
2010257395.tif 000003
【００４０】
この［数１］式において、ｙn はn番目のフィルタ出力値であり、ｘj はｊ番目のフィルタ入力値であり、ａj は定数（フィルタ係数）であり、ｍ（＞０）は、このフィルタ演算に使用するフィルタ入力値の個数（「窓幅」などとも称される）である。なお、この［数１］式は、一般的なＦＩＲフィルタ（有限インパルス応答フィルタ）を表している。この式におけるａj 及びｍの値を適切な値に予め設定しておくことで、上述したローパスフィルタ２１やハイパイフィルタ２２の特性を有するデジタルフィルタをＭＰＵ５１で構成することができる。
【００４１】
なお、フィルタの特性の精度が許容できる場合には、［数１］式の値を算出する代わりに、式の形が［数１］式に類似している、下記の式の値をＭＰＵ５１が算出するようにしてもよい。
【数２】
2010257395.tif 000004
【数３】
2010257395.tif 000005
【００４２】
上記の式のうち、［数２］式は、加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力することを表現しており、ローパスフィルタ２１の特性を有するデジタルフィルタをＭＰＵ５１で構成する場合の計算式である。また、［数３］式は、加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を、最直近の成分値から減算した結果を出力することを表現しており、ハイパスフィルタ２２の特性を有するデジタルフィルタをＭＰＵ５１で構成する場合の計算式である。
【００４３】
なお、上記の［数２］式及び［数３］式において、ｙn はn番目のフィルタ出力値であり、ｘj はｊ番目のフィルタ入力値であり、ｍ（＞０）は、このフィルタ演算に使用するフィルタ入力値の個数である。
【００４４】
［数１］式におけるａj は、その多くが１未満の値となる。このため、例えばＭＰＵ５１が整数演算しか扱えないような場合であると、［数１］式を適用することは難しく、また、適用した場合の計算量も膨大なものになる。これに対し、デジタルフィルタを［数２］式や［数３］式を用いて構成するのであれば、２バイト整数演算をサポートする程度のＭＰＵ５１であっても、これらの式の適用は容易である。また、加速度ベクトル分離部２０としての用途であれば、［数２］式や［数３］式を用いて構成するデジタルフィルタであっても、ｍの値を吟味して適切な値に予め設定しておくことで、上述したフィルタ特性を十分な精度で提供することができる。
【００４５】
なお、Ｓ１０３の処理において、ハイパスフィルタ２２の特性を有するデジタルフィルタ演算を実行し、続いて、ノイズ除去フィルタ２３の特性を有するデジタルフィルタ演算の実行も行うようにしてもよい。この場合のフィルタ演算も、例えば、前掲した［数１］式のａj 及びｍの値を適切な値に予め設定しておき、この式の値を算出するようにするようにすればよい。また、前述したように、ノイズ除去フィルタ２３は、加速度ベクトルの周波数成分のうち、歩行振動の周波数成分よりも高い成分を、ノイズ成分とみなして減衰させるローパスフィルタである。従って、加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力することを表現している式である、前掲した［数２］式のｍの値を吟味して適切な値に予め設定しておく。そして、ＭＰＵ５１が、この式の値を算出するようにして、ノイズ除去フィルタ２３の機能を提供するようにしてもよい。
【００４６】
次に、Ｓ１０４において、ＭＰＵ５１は、Ｓ１０２の処理により算出された重力加速度ベクトルと、Ｓ１０３の処理により算出された歩行加速度ベクトルとの内積値を算出する処理を行う。このＳ１０４の処理を行うことで、ＭＰＵ５１は、内積計算部３０の機能を提供する。
【００４７】
次に、Ｓ１０５において、ＭＰＵ５１は、内積値の零点を通過したか否か、すなわち、直近のＳ１０４の処理により算出された内積値の符号が、図３の制御処理の前回の実行時に算出されたものから反転したか否かを判定する処理を行う。ここで、内積値の符号が反転したと判定したとき（判定結果がＹｅｓのとき）には、ＭＰＵ５１は、Ｓ１０７に処理を進める。一方、内積値の符号が反転していないと判定したとき（判定結果がＮｏのとき）には、ＭＰＵ５１は、Ｓ１０６に処理を進める。ＭＰＵ５１は、このＳ１０５の処理を行うことで、反転検出部４１の機能を提供する。
【００４８】
Ｓ１０６において、ＭＰＵ５１は、Ｓ１０４の処理の実行の度に算出された内積値を累積加算して、その結果の値を所定の格納場所（ＭＰＵ５１内の所定のレジスタ若しくはＲＡＭ５３の所定の格納位置）に格納しておく処理を行う。そして、この処理後、ＭＰＵ５１は、三軸加速度センサ１１の検出結果を直近に取得してから所定の時間が経過したときに、Ｓ１０１以降の処理の実行を改めて開始する。この処理の繰り返しにより、ＭＰＵ５１は、内積値の積分値の計算を行い、積分計算部４２の機能を提供する。
【００４９】
一方、Ｓ１０７では、ＭＰＵ５１は、Ｓ１０６の処理による累積加算の結果、すなわち、内積値の積分値を、前述した所定の格納場所から取得する処理を行う。この積分値は、Ｓ１０５の処理によってＭＰＵ５１が内積値の符号の反転を一旦検出してから当該反転前の符号への反転を次に検出するまでの期間における内積値の積分値である。
【００５０】
次に、Ｓ１０８において、ＭＰＵ５１は、この積分値が所定の閾値以上の値であるか否かを判定する処理を行う。ここで、積分値が所定の値以上であると判定した場合（判定結果がＹｅｓのとき）には、ＭＰＵ５１は、Ｓ１０９において、歩数係数用のカウンタの値を「１」だけカウントアップする処理を行い、その後はＳ１１０に処理を進める。一方、ここで、積分値が所定の値未満であると判定した場合（判定結果かＮｏのとき）には、ＭＰＵ５１は、Ｓ１０９の処理を行わずに、Ｓ１１０に処理を進める。この歩数係数用のカウンタは、例えば、ＭＰＵ５１内の所定のレジスタを利用する。
【００５１】
次に、Ｓ１１０では、ＭＰＵ５１は、上述したカウンタの値を１／２倍して歩数を算出し、算出された歩数を、表示部５５に表示して出力する処理を行う。
ＭＰＵ５１は、以上のＳ１０７からＳ１１０にかけての処理を行うことで、歩数算出部４３の機能を提供する。従って、反転検出部４１、積分計算部４２、及び歩数算出部４３の各機能をこのように提供することで、ＭＰＵ５１は、重力加速度ベクトルと歩行加速度ベクトル内積値の時間変化に基づいて歩数の計数を行う歩数計数部４０の機能を提供する。
【００５２】
上述したＳ１１０の処理を終えると、ＭＰＵ５１は、図３の制御処理を一旦終了する。その後、ＭＰＵ５１は、三軸加速度センサ１１の検出結果を直近に取得してから所定の時間が経過したときに、前述した所定の格納場所に格納されている内積値の積分値を「０」に初期化した上で、Ｓ１０１以降の処理の実行を改めて開始する。
【００５３】
以上のように、図３に提示した制御処理をＭＰＵ５１が行うことで、図２に提示した構成の歩数計１による歩行体の歩数の係数が可能になる。
なお、本発明は、これまでに説明した実施の形態に限定されるものではなく、実施段階では、その要旨を変更しない範囲で種々変形することが可能である。
【００５４】
なお、以上までに説明した実施形態に関し、更に以下の付記を開示する。
（付記１）
歩行体の加速度ベクトルを取得する加速度ベクトル取得手段と、
該加速度ベクトルを、重力加速度ベクトルと該歩行体の歩行により生じている歩行加速度ベクトルとに分離する加速度ベクトル分離手段と、
該重力加速度ベクトルと該歩行加速度ベクトルとの内積値を算出する内積計算手段と、
該内積値の時間変化に基づいて歩数の計数を行う歩数計数手段と、
を有することを特徴とする歩数計。
（付記２）
該加速度ベクトル分離手段は、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも低い成分を通過させるローパスフィルタを含み、該ローパスフィルタを通過した成分を該重力加速度ベクトルとすることを特徴とする請求項１に記載の歩数計。
（付記３）
該ローパスフィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力するデジタルフィルタであることを特徴とする請求項２に記載の歩数計。
（付記４）
該加速度ベクトル分離手段は、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも低い成分を減衰させるハイパスフィルタを含み、該ハイパスフィルタを通過した成分を該歩行加速度ベクトルとすることを特徴とする請求項１に記載の歩数計。
（付記５）
該ハイパスフィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を、最直近の成分値から減算した結果を出力するデジタルフィルタであることを特徴とする請求項４に記載の歩数計。
（付記６）
該加速度ベクトル分離手段は、更に、該加速度ベクトルの周波数成分のうち、歩行による該歩行体の鉛直線方向の振動である歩行振動の周波数成分よりも高い成分を、ノイズ成分とみなして減衰させるローパスフィルタであるノイズ除去フィルタを含み、該ハイパスフィルタ及び該ノイズ除去フィルタの両者を通過した成分を、該歩行加速度ベクトルとすることを特徴とする請求項４に記載の歩数計。
（付記７）
該ノイズ除去フィルタは、該加速度ベクトルの成分毎に、直近の複数個の成分値の加算平均値を算出して出力するデジタルフィルタであることを特徴とする請求項６に記載の歩数計。
（付記８）
該歩数計数手段は、
該内積値の符号の反転を検出する反転検出手段と、
該反転検出手段が該内積値の符号の反転を一旦検出してから該反転検出手段が該内積値の該反転前の符号への反転を次に検出するまでの期間における該内積値の積分値を、該期間毎に算出する積分計算手段と、
該期間毎の積分値のうち所定の閾値以上であるものの数から、該歩数を算出する歩数算出手段と、
を有することを特徴とする請求項１に記載の歩数計。
（付記９）
該歩数算出手段は、該期間毎の積分値のうち所定の閾値以上であるものの数の１／２を該歩数の算出結果とすることを特徴とする請求項８に記載の歩数計。
（付記１０）
該加速度ベクトル取得手段は、互いに異なる方向を向く３つの軸の各々の加速度成分を検出する三軸加速度センサを含み、該三軸加速度センサによる該歩行体についての検出結果を該加速度ベクトルとして取得することを特徴とする請求項１に記載の歩数計。
（付記１１）
歩数計の有する加速度ベクトル取得手段が、歩行体の加速度ベクトルを取得し、
該歩数計の有する加速度ベクトル分離手段が、該加速度ベクトルを、重力加速度ベクトルと該歩行体の歩行により生じている歩行加速度ベクトルとに分離し、
該歩数計の有する内積計算手段が、該重力加速度ベクトルと該歩行加速度ベクトルとの内積値を算出し、
該歩数計の有する歩数計数手段が、該内積値の時間変化に基づいて歩数の計数を行う、
ことを特徴とする歩数計数方法。
（付記１２）
互いに異なる方向を向く３つの軸の各々の加速度成分を検出する三軸加速度センサの検出結果を、歩行体の加速度ベクトルとして取得する加速度ベクトル取得処理と、
該加速度ベクトルを、重力加速度ベクトルと該歩行体の歩行により生じている歩行加速度ベクトルとに分離する加速度ベクトル分離処理と、
該重力加速度ベクトルと該歩行加速度ベクトルとの内積値を算出する内積計算処理と、
該内積値の時間変化に基づいて歩数の計数を行う歩数計数処理と、
を演算処理装置に行わせるためのプログラム。
【符号の説明】
【００５５】
１      歩数計
１０      加速度ベクトル取得部
１１      三軸加速度センサ
２０      加速度ベクトル分離部
２１      ローパスフィルタ
２２      ハイパスフィルタ
２３      ノイズ除去フィルタ
３０      内積計算部
４０      歩数計数部
４１      反転検出部
４２      積分計算部
４３      歩数算出部
５１      ＭＰＵ
５２      ＲＯＭ
５３      ＲＡＭ
５４      入力部
５５      表示部
５６      インタフェース部
５７      バス
【図１】
2010257395.tif 000006
【図２】
2010257395.tif 000007
【図３】
2010257395.tif 000008