(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024102719
(43)【公開日】2024-07-31
(54)【発明の名称】計測装置、計測方法及び計測プログラム
(51)【国際特許分類】
G06M 3/00 20060101AFI20240724BHJP
A61B 5/11 20060101ALI20240724BHJP
【FI】
G06M3/00 L
A61B5/11 200
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023006795
(22)【出願日】2023-01-19
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110001254
【氏名又は名称】弁理士法人光陽国際特許事務所
(72)【発明者】
【氏名】松本 直也
【テーマコード(参考)】
4C038
【Fターム(参考)】
4C038VA04
4C038VA13
4C038VB11
4C038VC20
(57)【要約】
【課題】歩数を正しく計測する。
【解決手段】計測装置1は、ユーザが歩行又は走行している際の加速度波形のデータを取得し、取得された加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、のピーク時間長(時間幅)Tを特定し、上記の加速度波形に基づいて、歩数を計数する。また、計測装置1は、所定の条件を満たす場合、ピーク時間長Tがピーク時間閾値(所定の閾値)よりも大きいときに、歩行又は走行による歩数を2歩として計数し、ピーク時間長Tが当該ピーク時間閾値以下である場合、歩行又は走行による歩数を1歩として計数する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
ユーザが歩行又は走行している際の加速度波形のデータを取得する取得手段と、
前記取得手段により取得された前記加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、の時間幅を特定する特定手段と、
前記加速度波形に基づいて、歩数を計数する計数手段と、
を備え、
前記計数手段は、
所定の条件を満たす場合、前記加速度波形の前記時間幅が所定の閾値よりも大きいときに、前記歩行又は前記走行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記歩行又は前記走行による歩数を1歩として計数する、
ことを特徴とする計測装置。
【請求項2】
前記特定手段は、
前記取得手段により取得された前記加速度波形のデータに所定のフィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、前記時間幅を特定する、
ことを特徴とする請求項1に記載の計測装置。
【請求項3】
前記取得手段により取得された前記加速度波形のデータに基づいて、前記ユーザが歩行しているか走行しているかを判定する歩行走行判定手段を備え、
前記特定手段は、
前記歩行走行判定手段により前記ユーザが走行していると判定された場合、前記加速度波形のデータに所定の非線形フィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、前記時間幅を特定する、
ことを特徴とする請求項2に記載の計測装置。
【請求項4】
前記計数手段は、
前記歩行走行判定手段により前記ユーザが走行していると判定された場合であり、且つ、前記オフセット成分が除去された後の前記加速度波形が所定の形状をなしている場合、当該加速度波形の前記時間幅が走行時用の前記所定の閾値よりも大きいときに、前記走行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記走行による歩数を1歩として計数する、
ことを特徴とする請求項3に記載の計測装置。
【請求項5】
前記加速度波形が前記所定の形状をなしていることを判定する形状判定手段をさらに備え、
前記形状判定手段は、
前記加速度波形に含まれる極大値のうちの2つの極大値の比率と、前記加速度波形に含まれる極大値のうちの1つの極大値および前記加速度波形に含まれる極小値のうちの1つの極小値と、に基づいて、前記加速度波形の形状を判定する、
ことを特徴とする請求項4に記載の計測装置。
【請求項6】
前記計数手段は、
前記加速度波形が示す加速度の大きさに応じて、前記走行時用の前記所定の閾値を可変にする、
ことを特徴とする請求項4に記載の計測装置。
【請求項7】
前記取得手段により取得された前記加速度波形のデータに基づいて、前記ユーザが歩行しているか走行しているかを判定する歩行走行判定手段を備え、
前記特定手段は、
前記歩行走行判定手段により前記ユーザが歩行していると判定された場合、前記加速度波形のデータに所定の平均フィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、前記時間幅を特定する、
ことを特徴とする請求項2に記載の計測装置。
【請求項8】
前記計数手段は、
前記歩行走行判定手段により前記ユーザが歩行していると判定された場合、前記加速度波形の前記時間幅が歩行時用の前記所定の閾値よりも大きいときに、前記歩行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記歩行による歩数を1歩として計数する、
ことを特徴とする請求項7に記載の計測装置。
【請求項9】
前記計数手段は、
前記オフセット成分の大きさに応じて、前記歩行時用の前記所定の閾値を可変にする、
ことを特徴とする請求項8に記載の計測装置。
【請求項10】
前記特定手段により特定された前記時間幅が所定の範囲内に収まるか否かを判定する時間幅判定手段、をさらに備え、
前記計数手段は、
前記時間幅判定手段により前記時間幅が所定の範囲内に収まると判定された前記加速度波形に基づいて、歩数を計数する、
ことを特徴とする請求項1~9のいずれか一項に記載の計測装置。
【請求項11】
ユーザが歩行又は走行している際の加速度波形のデータを取得する取得工程と、
前記取得工程により取得された前記加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、の時間幅を特定する特定工程と、
前記加速度波形に基づいて、歩数を計数する計数工程と、
を含み、
前記計数工程では、
所定の条件を満たす場合、前記加速度波形の前記時間幅が所定の閾値よりも大きいときに、前記歩行又は前記走行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記歩行又は前記走行による歩数を1歩として計数する、
ことを特徴とする計測方法。
【請求項12】
コンピューターを、
ユーザが歩行又は走行している際の加速度波形のデータを取得する取得手段、
前記取得手段により取得された前記加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、の時間幅を特定する特定手段、
前記加速度波形に基づいて、歩数を計数する計数手段、
として機能させ、
前記計数手段は、
所定の条件を満たす場合、前記加速度波形の前記時間幅が所定の閾値よりも大きいときに、前記歩行又は前記走行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記歩行又は前記走行による歩数を1歩として計数する、
ことを特徴とする計測プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、計測装置、計測方法及び計測プログラムに関する。
【背景技術】
【0002】
従来、ユーザの腕や腰に装着され使用される歩数計が知られている。この歩数計に関して、例えば、正確な歩数計測を目的として、加速度センサから取得される加速度に基づいて、当該加速度の下弦ピーク値と上弦ピーク値を検出し、連続するそれらのピーク値の差分が閾値を超える場合に歩数をカウントする技術が開示されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記特許文献1に開示されている技術では、加速度のピークの高さに基づいて歩数をカウントしているので、本来2歩分に相当する各信号が混ざった信号を誤って1歩としてカウントしてしまうおそれがある。
【0005】
本発明は、このような問題に鑑みてなされたものであり、歩数を正しく計測することができる計測装置、計測方法及び計測プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明に係る計測装置は、
ユーザが歩行又は走行している際の加速度波形のデータを取得する取得手段と、
前記取得手段により取得された前記加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、の時間幅を特定する特定手段と、
前記加速度波形に基づいて、歩数を計数する計数手段と、
を備え、
前記計数手段は、
所定の条件を満たす場合、前記加速度波形の前記時間幅が所定の閾値よりも大きいときに、前記歩行又は前記走行による歩数を2歩として計数し、前記時間幅が当該閾値以下である場合、前記歩行又は前記走行による歩数を1歩として計数する、
ことを特徴とする。
【発明の効果】
【0007】
本発明によれば、歩数を正しく計測することができる。
【図面の簡単な説明】
【0008】
【
図1】本発明の実施の形態の計測装置の機能構成を示すブロック図である。
【
図3】ピーク強度閾値の決定方法を説明するための図である。
【
図4】歩数カウント処理を示すフローチャートである。
【
図5】(a)は負→正のゼロクロスを説明するためのグラフであり、(b)は正→負のゼロクロスを説明するためのグラフである。
【
図6】(a)はピーク時間長を説明するためのグラフであり、(b)はインパルス判定用閾値及びリセット閾値を説明するためのグラフであり、(c)はピーク強度閾値を説明するためのグラフである。
【
図7】極大極小値保存処理を示すフローチャートである。
【
図8】n歩/1ピーク判定処理を示すフローチャートである。
【
図9】ピーク時間閾値を説明するためのグラフである。
【
図10】(a)~(d)は2つの極大値と1つの極小値とを有する加速度波形の例を示すグラフである。
【
図11】15種のパターン(試技)のそれぞれにおいて57人の被験者が歩行又は走行したときの歩数計測の誤差率を示すグラフである。
【発明を実施するための形態】
【0009】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
【0010】
≪計測装置≫
まず、
図1を参照して、計測装置1の機能構成を説明する。
図1は、計測装置1の機能構成を示すブロック図である。ここで、計測装置1は、歩行又は走行を行うユーザに装着(例えば、腕に装着)されて、ユーザとともに移動する電子機器である。なお、以下では、計測装置1は、ユーザが歩行又は走行した際の歩数を取得(カウント)するための専用の電子機器であるものとして説明するが、これに限定されるものではなく、スマートフォン、携帯電話機、スマートウォッチ等であるものとしてもよい。
【0011】
計測装置1は、CPU(Central Processing Unit)11と、操作部12と、RAM(Random Access Memory)13と、センサ部14と、表示部15と、記憶部16と、通信部17と、を備えて構成される。計測装置1の各部は、バス18を介して接続されている。
【0012】
CPU(取得手段、特定手段、時間幅判定手段、計数手段、歩行走行判定手段、形状判定手段)11は、計測装置1の各部を制御する。CPU11は、記憶部16に記憶されているシステムプログラム及びアプリケーションプログラムのうち、指定されたプログラムを読み出してRAM13に展開し、当該プログラムとの協働で各種処理を実行する。
【0013】
操作部12は、例えば、タッチパネルを備え、ユーザからのタッチ入力を受け付け、その操作情報をCPU11に出力する。
タッチパネルは、表示部15と一体となって形成され、例えば、静電容量方式、抵抗膜方式、超音波表面弾性波方式等の各種方式により、ユーザによる表示部15上の接触位置のXY座標を検出する。そして、タッチパネルは、接触位置のXY座標に係る位置信号をCPU11に出力する。
【0014】
RAM13は、揮発性のメモリであり、各種のデータやプログラムを一時的に格納するワークエリアを形成する。
【0015】
センサ部14は、3軸加速度センサ、ジャイロセンサ、地磁気センサ等の計測装置1の動きを検出可能なモーションセンサや、計測装置1の位置情報を取得可能なGPS受信機などを備え、測定結果をCPU11に出力する。
【0016】
表示部15は、LCD(Liquid Crystal Display)、EL(Electro Luminescence)ディスプレイ等で構成され、CPU11から指示された表示情報に従い各種表示を行う。
【0017】
記憶部16は、例えば、フラッシュメモリ、EEPROM(Electrically Erasable Programmable ROM)、HDD(Hard Disk Drive)などにより構成される。記憶部16には、CPU11で実行されるシステムプログラムやアプリケーションプログラム、これらのプログラムの実行に必要なデータ等が記憶されている。
【0018】
通信部17は、例えば、Bluetooth(登録商標)などの無線規格を採用した通信部や、USB端子などの有線式の通信部である。
【0019】
≪歩数計測処理≫
次に、
図2を参照して、計測装置1で実行される歩数計測処理について説明する。
図2は、歩数計測処理を示すフローチャートである。歩数計測処理は、例えば、歩数計測の開始を指示する所定の操作が操作部12を介してなされたことを契機として開始される。
【0020】
歩数計測処理が開始されると、まず、計測装置1のCPU11は、センサ部14から3軸方向の各加速度データを取得する(ステップS1)。具体的には、CPU11は、歩数計測が開始された直後の1秒分の3軸方向の各加速度データを取得する。ここで、後述のステップS14の判定処理において歩数計測の終了を指示する所定の操作(終了操作)がなされていないと判定され(ステップS14;NO)、処理がステップS1に戻された場合、CPU11は、直近のステップS1の処理で取得された3軸方向の各加速度データに続く次の1秒分の3軸方向の各加速度データを取得する。
【0021】
次いで、CPU11は、ステップS1で取得された3軸方向の各加速度データを合成した合成加速度データを生成する(ステップS2)。
【0022】
次いで、CPU11は、計測装置1を装着しているユーザが走行しているか否かを判定する(ステップS3)。具体的には、CPU11は、ステップS2で生成された合成加速度データに基づいて、当該合成加速度データが示す合成加速度の最大値と最小値の差分が走行時と思われる大きさ(例えば、4GHz以上)であること、又は、当該差分が走行と歩行の中間程度の大きさ(例えば、1.5~4GHz)であり、且つ、合成加速度から1G(重力加速度)相当の振幅を減算した信号の負から正に切り替わる回数が3Hz相当以上であること、のいずれかの条件を満たす場合、上記ユーザが走行していると判定する。
【0023】
ステップS3において、計測装置1を装着しているユーザが走行していると判定された場合(ステップS3;YES)、CPU11は、走行フラグをONに設定する(ステップS4)。そして、CPU11は、処理をステップS5に進める。
【0024】
また、ステップS3において、計測装置1を装着しているユーザが走行していないと判定された場合(ステップS3;NO)、CPU11は、ステップS4をスキップして、処理をステップS5に進める。
【0025】
次いで、CPU11は、走行フラグがONに設定されているか否かを判定する(ステップS5)。
【0026】
ステップS5において、走行フラグがONに設定されていないと判定された場合(ステップS5;NO)、CPU11は、ステップS2で生成された合成加速度データに対して、歩行時用のフィルタ処理を施す(ステップS6)。具体的には、CPU11は、合成加速度データに対して所定のローパスフィルタをかけることにより、5Hz以上の信号を除去する。ここで、5Hz以上の信号を除去しているのは、人間の歩行時のピッチは理論的に5Hzが限界であるためである。
【0027】
次いで、CPU11は、ステップS6で歩行時用のフィルタ処理が施される前の合成加速度データに所定の平均フィルタをかけることにより、歩行時用の擬似オフセット成分を導出する(ステップS7)。そして、CPU11は、処理をステップS10に進める。
【0028】
また、ステップS5において、走行フラグがONに設定されていると判定された場合(ステップS5;YES)、CPU11は、ステップS2で生成された合成加速度データに対して、走行時用のフィルタ処理を施す(ステップS8)。具体的には、CPU11は、合成加速度データに対して、ステップS6の歩行時用のフィルタ処理で用いられるローパスフィルタよりも弱めのローパスフィルタをかけることにより、5Hz以上の信号を除去する。
【0029】
次いで、CPU11は、ステップS8で走行時用のフィルタ処理が施された後の合成加速度データに所定の非線形フィルタをかけることにより、走行時用の擬似オフセット成分を導出する(ステップS9)。そして、CPU11は、処理をステップS10に進める。ここで、上記の非線形フィルタは、所定の閾値以下のデータのみで平均値を導出するフィルタであり、当該閾値は、入力信号の1秒分の平均値としている。
【0030】
次いで、CPU11は、ステップS5において走行フラグがONに設定されていないと判定されている場合(ステップS5;NO)、ステップS6で歩行時用のフィルタ処理が施された後の合成加速度データと、ステップS7で導出された歩行時用の擬似オフセット成分との差分を表す差分信号(歩行によって生じる変動成分)を導出する(ステップS10)。ここで、上記差分信号の導出は、上記合成加速度データと上記擬似オフセット成分の互いの位相を揃えて行う。
【0031】
また、CPU11は、ステップS5において走行フラグがONに設定されていると判定されている場合(ステップS5;YES)、ステップS8で走行時用のフィルタ処理が施された後の合成加速度データと、ステップS9で導出された走行時用の擬似オフセット成分との差分を表す差分信号(走行によって生じる変動成分)を導出する(ステップS10)。ここで、上記差分信号の導出は、上記合成加速度データと上記擬似オフセット成分の互いの位相を揃えて行う。
【0032】
次いで、CPU11は、インパルス判定用閾値を決定する(ステップS11)。例えば、CPU11は、ステップS5において走行フラグがONに設定されていないと判定されている場合(ステップS5;NO)であり、且つ、ステップS10で導出された差分信号の最大値が所定の基準値未満の場合、インパルス判定用閾値を第1固定値(例えば、125ms)とする。また、CPU11は、ステップS5において走行フラグがONに設定されていないと判定されている場合(ステップS5;NO)であり、且つ、ステップS10で導出された差分信号の最大値が所定の基準値以上の場合、すなわち早歩きをしていると推定される場合、インパルス判定用閾値を第1固定値よりも小さい第2固定値(例えば、100ms)とする。また、CPU11は、ステップS5において走行フラグがONに設定されていると判定されている場合(ステップS5;YES)、インパルス判定用閾値を第2固定値よりも小さい第3固定値(例えば、63ms)とする。
【0033】
次いで、CPU11は、ピーク強度閾値を決定する(ステップS12)。例えば、CPU11は、
図3に示すように、ステップS10で導出された差分信号の最大値と最小値との差分RACC_F_max-minの値が第1基準値Sa未満の場合、加速度変化が殆ど無く歩行の可能性は低いと判定し、ピーク強度閾値を差分RACC_F_max-minの値に比例(右肩下がりに比例)した値とする。つまり、歩数の誤認識を軽減する目的で、差分RACC_F_max-minの値が小さくなればなるほど、ピーク強度閾値が大きくなるようにしている。また、CPU11は、差分RACC_F_max-minの値が第1基準値Sa以上、第2基準値Sb未満の場合、ゆっくりではあるが歩行していると判定し、ピーク強度閾値を第4固定値とする。つまり、歩数の見逃しを軽減する目的で、ピーク強度閾値を低く設定している。また、CPU11は、差分RACC_F_max-minの値が第2基準値Sb以上、第3基準値Sc未満の場合、少なくとも歩行をしていると判定し、ピーク強度閾値を差分RACC_F_max-minの値に比例(右肩上がりに比例)した値とする。また、CPU11は、差分RACC_F_max-minの値が第3基準値Sc以上の場合、走行していると判定し、ピーク強度閾値を第5固定値とする。
【0034】
次いで、CPU11は、ステップS10で導出された差分信号、ステップS11で決定されたインパルス判定用閾値、ステップS12で決定されたピーク強度閾値等に基づいて、歩数カウント処理を実行する(ステップS13)。なお、歩数カウント処理の詳細については後述する。
【0035】
次いで、CPU11は、操作部12を介して歩数計測の終了を指示する所定の操作(終了操作)がなされたか否かを判定する(ステップS14)。
【0036】
ステップS14において、操作部12を介して歩数計測の終了を指示する所定の操作がなされていないと判定された場合(ステップS14;NO)、CPU11は、処理をステップS1に戻し、それ以降の処理を繰り返し行う。
【0037】
また、ステップS14において、操作部12を介して歩数計測の終了を指示する所定の操作がなされたと判定された場合(ステップS14;YES)、CPU11は、歩数計測処理を終了する。
【0038】
≪歩数カウント処理≫
次に、
図4を参照して、計測装置1で実行される歩数カウント処理について説明する。
図4は、歩数カウント処理を示すフローチャートである。この歩数カウント処理では、ステップS10で導出された差分信号を時系列に沿って、すなわちサンプル番号t(1、2、3、…)の昇順で各サンプリングデータを参照して、以下に説明する処理を行う。
【0039】
歩数カウント処理が開始されると、まず、CPU11は、負→正のゼロクロスフラグがONに設定されているか否かを判定する(ステップS31)。ここで、負→正のゼロクロスフラグとは、
図5(a)に示すように、隣り合うサンプリングデータ間において、負→正のゼロクロス(ゼロ交差)が発生した場合、すなわちサンプル番号の若い方のサンプリングデータAcc(t-1)の値が0以下であり、当該サンプル番号の次のサンプル番号のサンプリングデータAcc(t)の値が0よりも大きいと判断された場合に設定されるフラグである。
【0040】
ステップS31において、負→正のゼロクロスフラグがONに設定されていないと判定された場合(ステップS31;NO)、CPU11は、参照中であるサンプル番号(t)の一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0以下であり、サンプル番号(t)のサンプリングデータAcc(t)の値が0よりも大きいか否かを判定する(ステップS32)。
【0041】
ステップS32おいて、参照中であるサンプル番号(t)の一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0以下であり、サンプル番号(t)のサンプリングデータAcc(t)の値が0よりも大きいという条件を満たしていないと判定された場合(ステップS32;NO)、CPU11は、処理をステップS44に進める。
【0042】
また、ステップS32おいて、参照中であるサンプル番号(t)の一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0以下であり、サンプル番号(t)のサンプリングデータAcc(t)の値が0よりも大きいと判定された場合(ステップS32;YES)、CPU11は、負→正のゼロクロスフラグをONに設定する(ステップS33)。そして、CPU11は、処理をステップS44に進める。
【0043】
また、ステップS31において、負→正のゼロクロスフラグがONに設定されていると判定された場合(ステップS31;YES)、CPU11は、ピーク時間長(時間幅)T(
図6(a)参照)をカウントアップする(ステップS34)。具体的には、それまでのピーク時間長T、すなわち負→正のゼロクロスがなされたサンプリングデータの抽出タイミングから参照中であるサンプル番号(t)の一つ前のサンプル番号(t-1)のサンプリングデータの抽出タイミングまでの経過時間を、負→正のゼロクロスがなされたサンプリングデータの抽出タイミングから参照中であるサンプル番号(t)のサンプリングデータの抽出タイミングまでの経過時間に更新する。
【0044】
次いで、CPU11は、極大極小値保存処理を実行する(ステップS35)。なお、極大極小値保存処理の詳細については後述する。
【0045】
次いで、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がピーク強度閾値(
図6(c)参照)よりも大きいか否かを判定する(ステップS36)。
【0046】
ステップS36において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がピーク強度閾値よりも大きいと判定された場合(ステップS36;YES)、CPU11は、強度フラグをONに設定する(ステップS37)。そして、CPU11は、処理をステップS38に進める。
【0047】
また、ステップS36において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がピーク強度閾値よりも大きくないと判定された場合(ステップS36;NO)、CPU11は、ステップS37をスキップして、処理をステップS38に進める。
【0048】
次いで、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が0以下であり、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0よりも大きいか否か、すなわち、
図5(b)に示すように、正→負のゼロクロスが発生したか否かを判定する(ステップS38)。
【0049】
ステップS38において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が0以下であり、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0よりも大きいという条件を満たしていないと判定された場合(ステップS38;NO)、CPU11は、ピーク時間長Tが所定のリセット閾値(
図6(b)参照)よりも大きいか否かを判定する(ステップS39)。
【0050】
ステップS39において、ピーク時間長Tが所定のリセット閾値よりも大きくないと判定された場合(ステップS39;NO)、CPU11は、処理をステップS44に進める。
【0051】
また、ステップS39において、ピーク時間長Tが所定のリセット閾値よりも大きいと判定された場合(ステップS39;YES)、CPU11は、各種フラグ(負→正のゼロクロスフラグ、強度フラグ)をリセットする(ステップS43)。そして、処理をステップS44に進める。
【0052】
また、ステップS38において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が0以下であり、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値が0よりも大きいと判定された場合(ステップS38;YES)、CPU11は、ピーク時間長Tがインパルス判定用閾値(
図6(b)参照)よりも大きく、且つ、強度フラグがONに設定されているか否かを判定する(ステップS40)。
【0053】
ステップS40において、ピーク時間長Tがインパルス判定用閾値よりも大きく、且つ、強度フラグがONに設定されているという条件を満たしていないと判定された場合(ステップS40;NO)、CPU11は、各種フラグ(負→正のゼロクロスフラグ、強度フラグ)をリセットする(ステップS43)。そして、処理をステップS44に進める。
【0054】
また、ステップS40において、ピーク時間長Tがインパルス判定用閾値よりも大きく、且つ、強度フラグがONに設定されていると判定された場合(ステップS40;YES)、CPU11は、n歩/1ピーク判定処理を実行する(ステップS41)。なお、n歩/1ピーク判定処理の詳細については後述する。
【0055】
次いで、CPU11は、後述するn歩/1ピーク判定処理(
図8参照)でカウントされた歩数(1or2歩)を出力歩数に加算する(ステップS42)。ここで、CPU11は、加算後の合計歩数を表示部15に表示する。そして、CPU11は、各種フラグ(負→正のゼロクロスフラグ、強度フラグ)をリセットする(ステップS43)。そして、処理をステップS44に進める。
【0056】
次いで、CPU11は、1秒分のサンプリングデータ(差分信号)を全て参照して処理したか否かを判定する(ステップS44)。
【0057】
ステップS44において、1秒分のサンプリングデータ(差分信号)を全て参照して処理していないと判定された場合(ステップS44;NO)、CPU11は、参照する対象を次のサンプル番号のサンプリングデータにシフトする(ステップS45)。そして、CPU11は、処理をステップS31に戻し、それ以降の処理を繰り返し行う。
【0058】
また、ステップS44において、1秒分のサンプリングデータ(差分信号)を全て参照して処理したと判定された場合(ステップS44;YES)、CPU11は、処理を歩数計測処理(
図2参照)に戻し、ステップS14以降の処理を行う。
【0059】
≪極大極小値処理≫
次に、
図7を参照して、計測装置1で実行される極大極小値保存処理について説明する。
図7は、極大極小値保存処理を示すフローチャートである。
【0060】
極大極小値保存処理が開始されると、まず、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以上であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも大きいか否かを判定する(ステップS51)。
【0061】
ステップS51において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以上であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも大きいという条件を満たしていないと判定された場合(ステップS51;NO)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも大きく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以上であるか否かを判定する(ステップS52)。
【0062】
ステップS52において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも大きく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以上であるという条件を満たしていないと判定された場合(ステップS52;NO)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以下であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも小さいか否かを判定する(ステップS53)。
【0063】
ステップS53において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以下であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも小さいという条件を満たしていないと判定された場合(ステップS53;NO)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも小さく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以下であるか否かを判定する(ステップS54)。
【0064】
ステップS54において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも小さく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以下であるという条件を満たしていないと判定された場合(ステップS54;NO)、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0065】
また、ステップS51において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以上であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも大きいと判定された場合(ステップS51;YES)、又は、ステップS52において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも大きく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以上であると判定された場合(ステップS52;YES)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極大値よりも大きいか否かを判定する(ステップS55)。ここで、RAM13に極大値が保存されていない場合は、所定のデフォルト値を当該極大値としてステップS55の判定処理を行う。
【0066】
ステップS55において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極大値よりも大きいと判定された場合(ステップS55;YES)、CPU11は、当該極大値を次点極大値としてRAM13に一時的に保存する(ステップS56)。
【0067】
次いで、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値を極大値としてRAM13に一時的に保存する(ステップS57)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0068】
また、ステップS55において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極大値よりも大きくないと判定された場合(ステップS55;NO)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている次点極大値よりも大きいか否かを判定する(ステップS58)。ここで、次点極大値とは、上記の極大値よりも値が小さい極大値を意味する。RAM13に次点極大値が保存されていない場合は、所定のデフォルト値を当該次点極大値としてステップS56の判定処理を行う。
【0069】
ステップS58において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている次点極大値よりも大きいと判定された場合(ステップS58;YES)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値を次点極大値としてRAM13に一時的に保存する(ステップS59)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0070】
また、ステップS58において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている次点極大値よりも大きくないと判定された場合(ステップS58;NO)、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0071】
また、ステップS53において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値以下であり、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値よりも小さいと判定された場合(ステップS53;YES)、又は、ステップS54において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値が、一つ前のサンプル番号(t-1)のサンプリングデータAcc(t-1)の値よりも小さく、且つ、一つ後のサンプル番号(t+1)のサンプリングデータAcc(t+1)の値以下であると判定された場合(ステップS54;YES)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極小値よりも小さいか否かを判定する(ステップS69)。ここで、RAM13に極小値が保存されていない場合は、所定のデフォルト値を当該極小値としてステップS60の判定処理を行う。
【0072】
ステップS60において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極小値よりも小さいと判定された場合(ステップS60;YES)、CPU11は、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値を極小値としてRAM13に一時的に保存する(ステップS61)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0073】
また、ステップS60において、参照中であるサンプル番号(t)のサンプリングデータAcc(t)の値がRAM13に一時的に保存されている極小値よりも小さくないと判定された場合(ステップS60;NO)、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS36以降の処理を行う。
【0074】
≪n歩/1ピーク判定処理≫
次に、
図8を参照して、計測装置1で実行されるn歩/1ピーク判定処理について説明する。
図8は、n歩/1ピーク判定処理を示すフローチャートである。
【0075】
n歩/1ピーク判定処理が開始されると、まず、CPU11は、走行フラグがONに設定されているか否かを判定する(ステップS71)。
【0076】
ステップS71において、走行フラグがONに設定されていないと判定された場合(ステップS71;NO)、CPU11は、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(大)よりも大きいか否かを判定する(ステップS72)。
【0077】
ステップS72において、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(大)よりも大きいと判定された場合(ステップS72;YES)、CPU11は、ピーク時間閾値(
図9参照)を「歩行_短」の閾値に設定する(ステップS76)。そして、CPU11は、処理をステップS77に進める。
【0078】
また、ステップS72において、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(大)よりも大きくないと判定された場合(ステップS72;NO)、CPU11は、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(小)よりも大きいか否かを判定する(ステップS73)。ここで、1or2歩閾値(小)は、上述の1or2歩閾値(大)よりも小さい値であるものとする。
【0079】
ステップS73において、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(小)よりも大きいと判定された場合(ステップS73;YES)、CPU11は、ピーク時間閾値(
図9参照)を「歩行_中」の閾値に設定する(ステップS75)。そして、CPU11は、処理をステップS77に進める。
【0080】
また、ステップS73において、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値が所定の1or2歩閾値(小)よりも大きくないと判定された場合(ステップS73;NO)、CPU11は、ピーク時間閾値(
図9参照)を「歩行_長」の閾値に設定する(ステップS74)。そして、CPU11は、処理をステップS77に進める。
【0081】
次いで、CPU11は、ピーク時間長T(
図6(a)参照)がピーク時間閾値(
図9参照)よりも大きいか否かを判定する(ステップS77)。
【0082】
ステップS77において、ピーク時間長Tがピーク時間閾値よりも大きいと判定された場合(ステップS77;YES)、CPU11は、
図9に示すように、当該ピーク時間長Tのピークを2歩としてカウントする(ステップS79)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0083】
また、ステップS77において、ピーク時間長Tがピーク時間閾値よりも大きくないと判定された場合(ステップS77;NO)、CPU11は、
図9に示すように、当該ピーク時間長Tのピークを1歩としてカウントする(ステップS78)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0084】
また、ステップS71において、走行フラグがONに設定されていると判定された場合(ステップS71;YES)、CPU11は、RAM13に極大値と極小値が保存されているか否かを判定する(ステップS80)。
【0085】
ステップS80において、RAM13に極大値と極小値が保存されていないと判定された場合(ステップS80;NO)、CPU11は、ピーク時間長Tのピークを1歩としてカウントする(ステップS89)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0086】
また、ステップS80において、RAM13に極大値と極小値が保存されていると判定された場合(ステップS80;YES)、CPU11は、次点極大値に対する極小値の比率A(極小値/次点極大値)を導出する(ステップS81)。
【0087】
次いで、CPU11は、RAM13に次点極大値が保存されているか否かを判定する(ステップS82)。
【0088】
ステップS82において、RAM13に次点極大値が保存されていないと判定された場合(ステップS82;NO)、CPU11は、ピーク時間長Tのピークを1歩としてカウントする(ステップS89)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0089】
また、ステップS82において、RAM13に次点極大値が保存されていると判定された場合(ステップS82;YES)、CPU11は、極大値に対する次点極大値の比率B(次点極大値/極大値)を導出する(ステップS83)。
【0090】
次いで、CPU11は、ステップS81で導出された比率Aが所定の比率A用閾値よりも小さく、且つ、ステップS83で導出された比率Bが所定の比率B用閾値よりも小さいか否かを判定する(ステップS84)。つまり、CPU11は、ステップS84の判定処理を行うことで、
図10(a)~
図10(c)に示すように、2つのピークが混ざった加速度波形(2歩分の加速度波形)と、
図10(d)に示すように、2つのピークが混ざったものではない加速度波形(1歩分の加速度波形)とを識別している。ここで、
図10(a)には、2つの極大値同士の差が小さく、且つ、当該2つの極大値のうちの大きい方の極大値と最小値との差が小さい加速度波形が示されている。また、同図(b)には、2つの極大値同士の差が小さく、且つ、当該2つの極大値のうちの大きい方の極大値と最小値との差が中くらいである加速度波形が示されている。また、同図(c)には、2つの極大値同士の差が中くらいであり、且つ、当該2つの極大値のうちの大きい方の極大値と最小値との差が中くらいである加速度波形が示されている。また、同図(d)には、2つの極大値同士の差が大きく、且つ、当該2つの極大値のうちの大きい方の極大値と最小値との差が大きい加速度波形が示されている。
【0091】
ステップS84において、比率Aが所定の比率A用閾値よりも小さく、且つ、比率Bが所定の比率B用閾値よりも小さいという条件を満たしていないと判定された場合(ステップS84;NO)、CPU11は、ピーク時間長Tのピークを1歩としてカウントする(ステップS89)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0092】
また、ステップS84において、比率Aが所定の比率A用閾値よりも小さく、且つ、比率Bが所定の比率B用閾値よりも小さいと判定された場合(ステップS84;YES)、CPU11は、参照中であるサンプル番号(t)までのサンプリングデータの最大値が所定の閾値以上であるか否かを判定する(ステップS85)。
【0093】
ステップS85において、参照中であるサンプル番号(t)までのサンプリングデータの最大値が所定の閾値以上であると判定された場合(ステップS85;YES)、CPU11は、ピーク時間閾値(
図9参照)を「走行_短」の閾値に設定する(ステップS87)。そして、CPU11は、処理をステップS88に進める。
【0094】
また、ステップS85において、参照中であるサンプル番号(t)までのサンプリングデータの最大値が所定の閾値以上ではないと判定された場合(ステップS85;NO)、CPU11は、ピーク時間閾値(
図9参照)を「走行_長」の閾値に設定する(ステップS86)。そして、CPU11は、処理をステップS88に進める。
【0095】
次いで、CPU11は、ピーク時間長T(
図10(a)~
図10(c)参照)がピーク時間閾値(
図9参照)よりも大きいか否かを判定する(ステップS88)。
【0096】
ステップS88において、ピーク時間長Tがピーク時間閾値よりも大きいと判定された場合(ステップS88;YES)、CPU11は、
図9に示すように、当該ピーク時間長Tのピークを2歩としてカウントする(ステップS90)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0097】
また、ステップS88において、ピーク時間長Tがピーク時間閾値よりも大きくないと判定された場合(ステップS88;NO)、CPU11は、
図9に示すように、当該ピーク時間長Tのピークを1歩としてカウントする(ステップS89)。そして、CPU11は、処理を歩数カウント処理(
図4参照)に戻し、ステップS42以降の処理を行う。
【0098】
≪歩数計測性能の評価≫
次に、歩数計測性能の評価について、
図11を用いて説明する。
図11は、15種のパターン(試技)のそれぞれにおいて57人の被験者が歩行又は走行したときの歩数計測の誤差率を示すグラフである。各パターンの上段に示されている誤差率は、本実施形態の計測装置1による歩数計測の誤差率である。一方、各パターンの下段に示されている誤差率は、特開2020-101849号公報に開示されている改良前の計測装置による歩数計測の誤差率である。
【0099】
ここで、「歩行普通」は何も持たずに歩行した状態を意味する。「歩行かばん」はかばんを持ったまま歩行した状態を意味する。「歩行やや遅め」は「歩行普通」よりも少し遅いペースで歩行した状態を意味する。「歩行やや速め」は「歩行普通」よりも少し速いペースであり、「早歩き」よりも遅いペースで歩行した状態を意味する。「早歩き」は「歩行やや速め」よりも速いペースであり、「走行」よりも遅いペースで歩行した状態を意味する。「歩行上り」は上り坂を歩行した状態を意味する。「歩行下り」は下り坂を歩行した状態を意味する。「走行上り」は上り坂を走行した状態を意味する。「走行下り」は下り坂を走行した状態を意味する。「階段歩行上り」は階段を歩行で上がった状態を意味する。「階段歩行下り」は階段を歩行で下った状態を意味する。「階段走行上り」は階段を走行で上がった状態を意味する。「階段走行下り」は階段を走行で下った状態を意味する。「スマホながら歩き平地」はスマホを見ながら平地を歩行した状態を意味する。
【0100】
図11に示すように、本実施形態の計測装置1と、改良前の計測装置と、を比較すると、全体の誤差率2.2±10.0%から誤差率0.6±8.6%と平均で1%以上の改善を確認できた。特に数え損ねがよく起きる階段走行時の改善が大きい。また、全体的に計測される歩数が多くなる傾向となっており、数え損ねを拾うという本発明の目的に沿った結果となっている。
【0101】
以上のように、本実施形態によれば、計測装置1は、ユーザが歩行又は走行している際の加速度波形のデータを取得し、取得された加速度波形のデータに基づいて、当該加速度波形が負の値から正の値に変化する第1タイミングと、当該加速度波形が正の値から負の値に変化する第2タイミングと、のピーク時間長(時間幅)Tを特定し、上記の加速度波形に基づいて、歩数を計数する。また、計測装置1は、所定の条件を満たす場合、ピーク時間長Tがピーク時間閾値(所定の閾値)よりも大きいときに、歩行又は走行による歩数を2歩として計数し、ピーク時間長Tが当該ピーク時間閾値以下である場合、歩行又は走行による歩数を1歩として計数する。
【0102】
したがって、計測装置1によれば、所定の条件を満たす場合、ピーク時間長Tがピーク時間閾値(所定の閾値)よりも大きいときに、歩行又は走行による歩数を2歩として計数し、ピーク時間長Tが当該ピーク時間閾値以下である場合、歩行又は走行による歩数を1歩として計数することで、本来2歩分に相当する各信号が混ざった信号を誤って1歩として計測してしまうことを抑制することができる。
【0103】
また、計測装置1は、取得された加速度波形のデータに所定のフィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、ピーク時間長Tを特定する。具体的には、計測装置1は、取得された加速度波形のデータに基づいて、ユーザが歩行しているか走行しているかを判定し、ユーザが走行していると判定された場合、加速度波形のデータに所定の非線形フィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、ピーク時間長Tを特定する。また、計測装置1は、取得された加速度波形のデータに基づいて、ユーザが歩行していると判定された場合、加速度波形のデータに所定の平均フィルタをかけることで得られるオフセット成分を除去した当該加速度波形のデータに基づいて、ピーク時間長Tを特定する。
したがって、計測装置1によれば、ピーク時間長Tの特定精度を向上させることができるので、この結果として歩行又は走行による歩数の計測精度を向上させることができる。
【0104】
また、計測装置1は、ユーザが走行していると判定された場合であり、且つ、オフセット成分が除去された後の加速度波形が所定の形状をなしている場合、当該加速度波形のピーク時間長Tが走行時用のピーク時間閾値(「走行_長」又は「走行_短」)よりも大きいときに、走行による歩数を2歩として計数し、ピーク時間長Tが当該ピーク時間閾値以下である場合、走行による歩数を1歩として計数する。
したがって、計測装置1によれば、走行時における歩数の数え損ねを好適に抑制することができる。
【0105】
また、計測装置1は、オフセット成分が除去された後の加速度波形に含まれる極大値のうちの2つの極大値の比率と、当該加速度波形に含まれる極大値のうちの1つの極大値および当該加速度波形に含まれる極小値のうちの1つの極小値と、に基づいて、当該加速度波形の形状を判定するので、当該判定を適切に行うことができる。
【0106】
また、計測装置1は、オフセット成分を除去した加速度波形が示す加速度の大きさに応じて、走行時用のピーク時間閾値(「走行_長」又は「走行_短」)を可変にするので、走行時における歩数の数え損ねをより好適に抑制することができる。
【0107】
また、計測装置1は、ユーザが歩行していると判定された場合、ピーク時間長Tが歩行時用のピーク時間閾値(「歩行_長」、「歩行_中」又は「歩行_短」)よりも大きいときに、歩行による歩数を2歩として計数し、ピーク時間長Tが当該ピーク時間閾値以下である場合、前記歩行による歩数を1歩として計数する。
したがって、計測装置1によれば、歩行時における歩数の数え損ねを好適に抑制することができる。
【0108】
また、計測装置1は、オフセット成分の大きさに応じて、歩行時用のピーク時間閾値(「歩行_長」、「歩行_中」又は「歩行_短」)を可変にするので、歩行時における歩数の数え損ねをより好適に抑制することができる。
【0109】
また、計測装置1は、ピーク時間長(時間幅)Tが所定の範囲内に収まるか否かを判定し、当該ピーク時間長Tが所定の範囲内に収まると判定された加速度波形に基づいて、歩数を計数する。
したがって、計測装置1によれば、ピーク時間長Tが狭いインパルス信号や当該ピーク時間長Tが広い他の動作に起因する信号を除外して、ピーク時間長Tが所定の範囲内に収まると判定された加速度波形、すなわちユーザの歩行又は走行由来の加速度波形のみを対象として歩数を計数するので、当該計数を適切に行うことができる。
【0110】
なお、以上本発明の実施形態について説明したが、本発明は、かかる実施形態に限定されず、その要旨を逸脱しない範囲で、種々変形が可能であることは言うまでもない。
【0111】
例えば、上記実施形態では、歩数計測処理(
図2参照)のステップS10で導出された差分信号の最大値に応じて、インパルス判定用閾値を決定するようにしたが、合成加速度の周波数特定や、センサ部14より取得されたセンシングデータに基づく行動推定の結果を利用してインパルス判定用閾値を決定するようにしてもよい。
【0112】
また、上記実施形態では、歩数カウント処理(
図4参照)のステップS39の判定処理で用いられるリセット閾値を可変としてよい。かかる場合、計測装置1のCPU11は、例えば、歩数計測処理(
図2参照)のステップS10で導出された差分信号の振幅とピーク時間長Tとに基づいて、ユーザが通常よりも遅い速度で歩行しているか否かを判定し、当該ユーザが通常よりも遅い速度で歩行していると判定された場合と、当該ユーザが通常よりも遅い速度で走行していないと判定された場合とで、リセット閾値を可変にする。より具体的には、計測装置1のCPU11は、ユーザが通常よりも遅い速度で歩行していると判定された場合のリセット閾値を、当該ユーザが通常よりも遅い速度で歩行していないと判定された場合のリセット閾値よりも大きくする。
【0113】
また、上記実施形態では、n歩/1ピーク判定処理(
図8参照)において、走行フラグがONに設定されていないと判定された場合(ステップS71;NO)、参照中であるサンプル番号(t)の擬似オフセット成分Ofst(t)の値に応じて、ピーク時間閾値を「歩行_長」、「歩行_中」又は「歩行_短」のいずれかに設定し、走行フラグがONに設定されていると判定された場合(ステップS71;YES)、参照中であるサンプル番号(t)までのサンプリングデータの最大値に応じて、ピーク時間閾値を「走行_長」又は「走行_短」のいずれかに設定するようにしているが、当該ピーク時間閾値を連続的に可変するようにしてもよい。
【0114】
また、上記実施形態では、設定されるピーク時間閾値は1つであるが(
図9参照)、例えば、設定されるピーク時間閾値を、ピーク時間閾値(大)とピーク時間閾値(小)の2つにしてもよい。かかる場合、ピーク時間長Tがピーク時間閾値(大)よりも大きい場合、当該ピーク時間長Tのピークを3歩としてカウントする。また、ピーク時間長Tがピーク時間閾値(大)以下であり、ピーク時間閾値(小)よりも大きい場合、当該ピーク時間長Tのピークを2歩としてカウントする。また、ピーク時間長Tがピーク時間閾値(小)以下である場合、当該ピーク時間長Tのピークを1歩としてカウントする。
【0115】
また、上記実施形態では、歩数カウント処理(
図4参照)のステップS40において、ピーク時間長Tがインパルス判定用閾値よりも大きく、且つ、強度フラグがONに設定されていると判定された場合(ステップS40;YES)、CPU11は、n歩/1ピーク判定処理を実行する(ステップS41)ようにしているが、強度フラグがONに設定されていることをステップS41への遷移条件に含めないようにしてもよい。つまり、ステップS40において、ピーク時間長Tがインパルス判定用閾値よりも大きいと判定された場合、CPU11は、n歩/1ピーク判定処理を実行するようにしてもよい。
【0116】
また、上記実施形態では、n歩/1ピーク判定処理(
図8参照)において、次点極大値に対する極小値の比率Aと極大値に対する次点極大値の比率Bを用いて加速度波形の形状を判定しているが、例えば、画像認識AI(Artificial Intelligence)エンジンを使用して当該加速度波形の形状を判定するようにしてもよい。
【0117】
また、上記実施形態では、計測装置1にセンサ部14を備える構成としたが、計測装置1はセンサ部14を備えず、計測装置1とは別体として構成したセンサ部が、ユーザが歩行又は走行を行っている際の加速度を検出及び記憶し、歩行又は走行の終了後に、計測装置1がセンサ部から記憶されている加速度を取得して、ユーザの歩行又は走行由来の加速度波形か否かを判断してもよい。
【0118】
以上、本発明の実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲をその均等の範囲を含む。
【符号の説明】
【0119】
1 計測装置
11 CPU
12 操作部
13 RAM
14 センサ部
15 表示部
16 記憶部
17 通信部