(57)【要約】【課題】信頼性の高い脈波計測を行うことが可能な脈拍計のプログラムを提供する。【解決手段】実施形態によれば、プログラムは、第１信号データを複数回取得し、第２信号データを複数回取得する。このプログラムは、第１信号データの取得数および第２信号データの取得数が所定数に達すると、所定の頻度で、第１周波数スペクトルおよび第２周波数スペクトルを計算する。このプログラムは、第１周波数スペクトルと第２周波数スペクトルを計算する度に、第１周波数スペクトルまたは第３周波数スペクトルにおいて極大値をとる複数の周波数成分を脈波成分の複数の候補点として検出する。このプログラムは、第１周波数スペクトルまたは第３周波数スペクトルにおける極大値をとるスペクトル強度に基づいて検出回数をカウントする候補点を選定し、候補点毎の検出回数に対応するヒストグラムを計算し、そのヒストグラムに基づいて脈波成分を特定する。【選択図】図１
2017153595.tif 000002
【特許請求の範囲】
【請求項１】
脈波成分を含む第１信号データを複数回取得し、
加速度成分を含む第２信号データを複数回取得し、
前記第１信号データの取得数および前記第２信号データの取得数が所定数に達すると、所定の頻度で、取得した第１信号データに対して第１周波数スペクトルを計算するとともに取得した第２信号データに対して第２周波数スペクトルを計算し、
前記第１周波数スペクトルと前記第２周波数スペクトルを計算する度に、前記第１周波数スペクトルにおいて極大値をとる複数の周波数成分、または前記第１周波数スペクトルから前記第２周波数スペクトルを減算した第３周波数スペクトルにおいて前記極大値をとる複数の周波数成分を前記脈波成分の複数の候補点として検出し、
検出した複数の候補点の中から、前記第１周波数スペクトルまたは前記第３周波数スペクトルにおける前記極大値をとるスペクトル強度に基づいて検出回数をカウントする候補点を選定し、選定した候補点毎の検出回数に対応するヒストグラムを計算し、
前記ヒストグラムに基づいて、前記脈波成分を特定する、
処理をコンピュータに実行させるための脈拍計のプログラム。
【請求項２】
前記所定数の前記第２信号データに含まれた前記加速度成分の強度に応じて、前記脈波成分の候補点の検出方法を切り替える、請求項１に記載の脈拍計のプログラム。
【請求項３】
前記所定数の前記第２信号データをそれぞれ二乗して加算した値の平方根である実効値を前記加速度成分の前記強度として計算する、請求項２に記載の脈拍計のプログラム。
【請求項４】
前記実効値が基準値よりも小さい場合には、前記第１周波数スペクトルにおける前記極大値をとる複数の周波数成分を前記候補点として検出し、
前記実効値が前記基準値よりも大きい場合には、前記第３周波数スペクトルにおける前記極大値をとる複数の周波数成分を前記候補点として検出する、請求項３に記載の脈拍計のプログラム。
【請求項５】
前記ヒストグラムを計算するときに、前記スペクトル強度の順位に基づいて、前記検出回数をカウントする候補点を選定する、請求項１から４のいずれかに記載の脈拍計のプログラム。
【請求項６】
前記ヒストグラムに属する候補点の中から、前記検出回数がしきい値を超えている候補点を抽出し、前記脈波成分のｎ倍（ｎは２以上の自然数）の周波数成分に該当する候補点を除外し、前記第２信号データの周波数スペクトルの極大値に該当する候補点を除外し、かつ予め設定された探索範囲外の候補点を除外することによって、前記脈波成分を特定する、請求項１から５のいずれか１項に記載の脈拍計のプログラム。
【請求項７】
前記ヒストグラムから前記脈波成分を特定できなかった場合、
前記候補点を絞り込む周波数の範囲を規定した窓部を設定し、
前記スペクトル強度の順位に応じて特定の候補点に対して重要度を表す点数を加算し、
前記点数が最多で、かつ、前記窓部内に存在する候補点を前記脈波成分として特定する、請求項１から６のいずれかに記載の脈拍計のプログラム。
【請求項８】
脈波成分を含む第１信号データを計測する脈波センサと、
加速度成分を含む第２信号データを計測する加速度センサと、
前記脈波センサから前記第１信号データを複数回取得し、前記加速度センサから前記第２信号データを複数回取得し、前記第１信号データの取得数および前記第２信号データの取得数が所定数に達すると、所定の頻度で、取得した第１信号データに対して第１周波数スペクトルを計算するとともに取得した第２信号データに対して第２周波数スペクトルを計算し、前記第１周波数スペクトルと前記第２周波数スペクトルを計算する度に、前記第１周波数スペクトルにおいて極大値をとる複数の周波数成分、または前記第１周波数スペクトルから前記第２周波数スペクトルを減算した第３周波数スペクトルにおいて極大値をとる複数の周波数成分を前記脈波成分の複数の候補点として検出し、検出した複数の候補点のうち、前記第１周波数スペクトルまたは前記第３周波数スペクトルにおける前記極大値をとるスペクトル強度に基づいて検出回数をカウントする候補点を選定し、選定した候補点毎の検出回数に対応するヒストグラムを計算し、前記ヒストグラムに基づいて、前記脈波成分を特定する制御部と、
を備える脈拍計。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、脈拍計および脈拍計のプログラムに関する。
【背景技術】
【０００２】
ＰＰＧ(Photoplethysmogram)は、脈波の計測方法の一例として知られている。ＰＰＧは、人体に光を照射したときの反射光を受光し、反射光の光量変化を動脈血の脈動として計測する。しかし、計測値には、脈波成分だけでなく、体動等によって生じるノイズ成分も含まれている。そこで、脈波成分を検出する周波数範囲を絞り込むために、ウィンドウを設定する方法が提案されている。
【０００３】
ウィンドウを設定する方法には、計測値の変化に応じて、ウィンドウの範囲を補正する方法が提案されている。しかし、このような方法では、ウィンドウが、計測値に含まれているノイズ成分に追従することによって、信頼性を確保することが困難になる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３４２０４０９号公報
【特許文献２】特許第３６１０１４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施形態は、信頼性の高い脈波計測を行うことが可能な脈拍計、および脈拍計のプログラムを提供することである。
【課題を解決するための手段】
【０００６】
実施形態によれば、脈拍計のプログラムは、脈波成分を含む第１信号データを複数回取得し、加速度成分を含む第２信号データを複数回取得する。また、このプログラムは、第１信号データの取得数および第２信号データの取得数が所定数に達すると、所定の頻度で、取得した第１信号データに対して第１周波数スペクトルを計算するとともに取得した第２信号データに対して第２周波数スペクトルを計算する。また、このプログラムは、第１周波数スペクトルと第２周波数スペクトルを計算する度に、第１周波数スペクトルにおいて極大値をとる複数の周波数成分、または第１周波数スペクトルから第２周波数スペクトルを減算した第３周波数スペクトルにおいて極大値をとる複数の周波数成分を脈波成分の複数の候補点として検出する。また、このプログラムは、検出した複数の候補点の中から、第１周波数スペクトルまたは第３周波数スペクトルにおける極大値をとるスペクトル強度に基づいて検出回数をカウントする候補点を選定し、選定した候補点毎の検出回数に対応するヒストグラムを計算し、そのヒストグラムに基づいて、脈波成分を特定する。
【図面の簡単な説明】
【０００７】
【図１】本実施形態に係る脈拍計の構成を概略的に示すブロック図である。
【図２】制御部の全体的な処理内容の手順を示すフローチャートである。
【図３】サンプリング処理の手順を示すフローチャートである。
【図４】周波数分析処理の全体的な手順を示すフローチャートである。
【図５】（Ａ）は安静時の脈波スペクトルの一例を示す図であり、（Ｂ）は運動時の脈波スペクトルの一例を示す図である。
【図６】脈拍数計算処理の手順を示すフローチャートである。
【図７】加速度スペクトルの一例を示す図である。
【図８】図５（Ｂ）に示す運動時の脈波スペクトルから図７に示す加速度スペクトルを減算した後のスペクトルの一例を示す図である。
【図９】候補点ヒストグラム計算処理の手順を示すフローチャートである。
【図１０】候補点ヒストグラムの一例を示す図である。
【図１１】脈波成分を特定する処理の手順を示すフローチャートである。
【図１２】脈波成分を特定する別の処理の手順を示すフローチャートである。
【図１３】比較例の方法で脈拍数を計測した結果を示す図である。
【図１４】本実施形態の方法で脈拍数を計測した結果を示す図である。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
【０００９】
図１は、本実施形態に係る脈拍計の構成を概略的に示すブロック図である。図１に示すように、本実施形態に係る脈拍計１は、脈波センサ１０と、加速度センサ２０と、半導体装置３０と、を備える。
【００１０】
脈波センサ１０は、発光素子１１と、受光素子１２と、を有する。発光素子１１は、例えば、緑色光を生体内に向けて照射するＬＥＤ（Light Emitting Diode）で構成されている。
【００１１】
受光素子１２は、例えば、発光素子１１の光が生体内で反射した反射光を受光して反射光の光量に対応する信号を出力するフォトダイオードで構成されている。この出力信号は、脈波成分だけでなく、体動成分等のノイズ成分も含んでいる。また、この出力信号は、信号処理回路(不図示)によって増幅等の信号処理された後、脈波センサデータとして半導体装置３０に入力される。
【００１２】
加速度センサ２０は、互いに直交する３軸方向の加速度をそれぞれ検出し、各方向の加速度を示す信号を出力する。この出力信号は加速度成分を含み、この加速度成分は、体動成分に対応している。また、この出力信号も、信号処理回路(不図示)によって信号処理された後、加速度センサデータとして半導体装置３０に入力される。
【００１３】
半導体装置３０は、制御部３１と、記憶部３２と、を有する。制御部３１は、例えば、所定のプログラムに基づいて種々の処理を実行するＣＰＵ（Central Processing Unit）で構成されている。記憶部３２は、例えば、制御部３１の処理で用いられる種々のデータを格納する半導体メモリで構成されている。
【００１４】
図２は、制御部３１の全体的な処理内容の手順を示すフローチャートである。図２に示すように、制御部３１は、脈波センサ１０と加速度センサ２０でそれぞれ計測された信号データを取得するサンプリング処理（ステップＳ１）と、この信号データを用いて脈波成分を抽出する周波数分析処理（ステップＳ３）と、を実行する。本実施形態における脈波成分とは、脈拍数に対応する周波数成分である。例えば、脈拍数が６０ｂｐｍ（beat per minute）の場合、脈波センサの信号データには、６０ｂｐｍ÷６０秒＝１Ｈｚの周波数成分が含まれる。
【００１５】
本実施形態では、制御部３１は、連続した時系列データを取得するために、サンプリング処理（ステップＳ１）を常時実行する。サンプリング周波数は、３１．２５Ｈｚ（３２ｍｓ周期）である。次に、制御部３１は、前回の周波数分析処理からの時間が１秒を経過しているか否か判定し（ステップＳ２）、この時間が１秒を経過していない場合、制御部３１は、周波数分析処理を実行しない。その理由は、前回の周波数分析処理からの時間が１秒を経過する前に周波数分析処理を行っても信号変化が小さい、換言すると脈波の変化が小さい一方で、制御部３１の処理負荷が増えるからである。
【００１６】
図３は、サンプリング処理の手順を示すフローチャートである。まず、制御部３１は、脈波センサデータをサンプリングし(ステップＳ１１)、かつ加速度センサデータをサンプリングする（ステップＳ１２）。なお、ステップＳ１１、Ｓ１２の順番は入れ替わってもよい。
【００１７】
続いて、制御部３１は、下記の式（１）を用いて、３軸（ｘ軸、ｙ軸、およびｚ軸）方向の加速度センサデータから合成加速度ａｃｃを計算する（ステップＳ１３）。
【数１】
2017153595.tif 000003
【００１８】
続いて、制御部３１は、脈波センサデータと合成加速度データに対して、バンドパスフィルタ(ＢＰＦ：Band Pass Filter)を用いて所望の周波数成分を抽出する（ステップＳ１４、Ｓ１５）。ステップＳ１４、Ｓ１５では、バンドパスフィルタの通過帯域は、いずれも０．６６Ｈｚ（４０ｂｐｍ）〜３．６６Ｈｚ(２２０ｂｐｍ)である。なお、ステップＳ１４、Ｓ１５の順番は入れ替わってもよい。
【００１９】
続いて、制御部３１は、バンドパスフィルタを通過した脈波センサデータを第１信号データとして記憶部３２に一時的に格納する(ステップＳ１６)。同様に、制御部３１は、バンドパスフィルタを通過した合成加速度データを第２信号データとして記憶部３２に一時的に格納する（ステップＳ１７）。脈波センサデータおよび合成加速度データは、演算量を減らすために、データサンプル数を１／４に間引いて記憶部３２に格納される。ここで１／４に間引くとは、連続するデータ列において、４回に１回だけデータを記憶部３２に格納するという意味である。つまり、３１．２５Ｈｚでサンプリングされたデータは、１／４に間引くことで７．８１２５Ｈｚでサンプリングされたデータになる。これにより、後述する周波数分析処理における制御部３１の処理負荷が低減される。なお、ステップＳ１６、Ｓ１７の順番は入れ替わってもよい。
【００２０】
上述したステップＳ１１〜Ｓ１７の処理は、後述する周波数分析処理に必要なデータが記憶部３２に格納されまで実行される（ステップＳ１８）。例えば、脈波センサデータおよび合成加速度データについて、それぞれ６４サンプル分、換言すると約８秒分(６４[サンプル]÷７．８１２５[Ｈｚ]＝８．１９２[秒])のデータが記憶部３２に格納されたときに、このサンプリング処理は終了する。なお、初回は、約８秒分のデータが格納されるまでサンプリング処理を継続するが、それ以降は古いデータを記憶部３２から削除し、新しくサンプリングされたデータを記憶部３２に格納する。これによって、周波数分析処理に必要なデータが記憶部３２に格納された状態になる。
【００２１】
図４は、周波数分析処理の全体的な手順を示すフローチャートである。まず、制御部３１は、記憶部３２に格納されている脈波センサデータを高速フーリエ変換することによって、脈波スペクトルを計算する（ステップＳ２１）。この脈波スペクトルは、脈波センサデータの周波数スペクトル(第１周波数スペクトル)に相当する。
【００２２】
ステップＳ２１では、周波数分解能を上げるために、６４サンプルのデータに対して、その後ろに６４個のゼロを追加して、１２８点のデータとしてから高速フーリエ変換を行う。また、ステップＳ２１では、周波数分析をより容易にするために、高速フーリエ変換処理は、例えばハニング窓等の窓関数を脈波センサデータに乗じた後に実行される。高速フーリエ変換処理を行うと、１２８点からなる周波数スペクトルが得られるが、実数値に対する高速フーリエ変換処理ではナイキスト周波数を境に周波数スペクトルが左右対称になるため、ナイキスト周波数までの６４個の値を周波数データとして用いる。
【００２３】
図５（Ａ）は、安静時の脈波スペクトルの一例を示す図であり、図５（Ｂ）は、運動時の脈波スペクトルの一例を示す図である。図５（Ａ）および図５（Ｂ）では、対数に変換された脈波スペクトルのパワー(スペクトル強度)が、６４個の周波数データに１対１で対応して示されている。
【００２４】
最初の脈拍数である初期脈拍数が決定されていない場合(ステップＳ２２のＹＥＳ)、制御部３１は、上記ステップＳ２１で計算した脈波スペクトルに基づいて初期脈拍数を決定する(ステップＳ２３)。ここで、図５（Ａ）を参照してステップＳ２３について説明する。
【００２５】
ステップＳ２３では、制御部３１は、脈波スペクトルの極大値（ピーク値）の中で強度が最大のものを脈波成分とみなし、その周波数を初期脈拍数と決定する。例えば、図５（Ａ）では、初期脈拍数の周波数成分は、約１Ｈｚである。
【００２６】
再び図４に戻って、初期脈拍数が決定されている場合（ステップＳ２２のＮＯ）、制御部３１は脈拍数計算処理を実行する（ステップＳ２４）。ここで、図６を参照して脈拍数計算処理を説明する。
【００２７】
図６は、脈拍数計算処理の手順を示すフローチャートである。まず、制御部３１は、記憶部３２に格納されている合成加速度データを高速フーリエ変換することによって、加速度スペクトルを計算する（ステップＳ３１）。この加速度スペクトルは、合成加速度データの周波数スペクトル(第２周波数スペクトル)に相当する。
【００２８】
図７は、加速度スペクトルの一例を示す図である。加速度スペクトルは、上述した脈波スペクトルと同じ方法で計算される。そのため、図７では、図５と同様に、対数に変換された加速度スペクトルのパワー（スペクトル強度)が、６４個の周波数データに１対１で対応して示されている。
【００２９】
再び図６に戻って、制御部３１は、図５（Ｂ）に示す運動時の脈波スペクトルから加速度スペクトルを減算する処理、いわゆるスペクトルサブトラクションを実行する（ステップＳ３２）。ただし、本実施形態では、体動が小さい場合、制御部３１は、スペクトルサブトラクションを実行しない。具体的には、制御部３１は、下記の式（２）を用いて、合成加速度データの実効値ＲＭＳ（Root Mean Square）を計算する。
【数２】
2017153595.tif 000004
【００３０】
上記実効値ＲＭＳが、予め設定された基準値よりも小さい場合、制御部３１はスペクトルサブトラクションを実行しない。すなわち、実効値ＲＭＳが基準値よりも大きい場合に、制御部３１はスペクトルサブトラクションを実行する。本実施形態では、基準値＝０．０７である。
【００３１】
図８は、図５（Ｂ）に示す運動時の脈波スペクトルから図７に示す加速度スペクトルを減算した後のスペクトル(第３周波数スペクトル)の一例を示す図である。スペクトルサブトラクションが実行された場合、制御部３１は、図８に示すスペクトルに基づいて脈波成分の候補点を検出する（ステップＳ３３）。ステップＳ３３では、制御部３１は、図８に示すスペクトルから０．６６Ｈｚ(４０ｂｐｍ)〜３．６６Ｈｚ(２２０ｂｐｍ)の範囲内における極大値をとる全ての周波数成分を、脈波成分の候補点として検出する。
【００３２】
スペクトルサブトラクションが実行されなかった場合、制御部３１は、脈波スペクトルから上記範囲内における極大値をとる全ての周波数成分を、脈波成分の候補点として検出する。本実施形態では、実効値ＲＭＳに応じて、脈波成分の候補点の検出方法を切り替えている。しかし、体動の強度、換言すると加速度データに含まれた加速度成分の強度を示すパラメータであれば、実効値ＲＭＳ以外のパラメータ(例えば、加速度データの絶対値の平均値)であってもよい。
【００３３】
後述する候補点ヒストグラムを計算するために、制御部３１は、脈波センサデータ(第１信号データ)と合成加速度データ(第２信号データ)をそれぞれ複数回取得する。各データの取得数が所定数（本実施形態では８秒分）に達すると、制御部３１は、所定の頻度（本実施形態では１秒ごと）で脈波スペクトル、加速度スペクトル、およびサブストラクション後のスペクトルを計算し、これらのスペクトルに基づいて脈波成分の候補点を検出する。その後、制御部３１は、候補点ヒストグラム計算処理を実行する（ステップＳ３４）。この候補点ヒストグラムは、候補点毎の検出回数に対応するヒストグラムである。ここで、図９を参照して、この候補点ヒストグラムを計算する処理について説明する。
【００３４】
図９は、候補点ヒストグラム計算処理の手順を示すフローチャートである。制御部３１は、周波数スペクトルのパワーの順位に基づいて、今回計算した周波数スペクトル（脈波スペクトルまたはサブストラクション後のスペクトル）から検出した候補点の中で、検出回数をカウントする候補点を選定する。なお、制御部３１は、周波数スペクトルのパワーが、予め設定された規定値以上の候補点を、検出回数をカウントする候補点として選定してもよい。
【００３５】
ヒストグラムの計算では、ある範囲に分布するデータを複数のカテゴリ（ビン）に分割し、そのビンに含まれるデータの個数をカウントすることにより、データの分布を把握する。本実施形態では、周波数スペクトルの６４個の点をビンとして定義し、所定の時間範囲における候補点の検出回数の分布を把握することで、安定して検出されている候補点を抽出する。このような候補点は、脈波成分である可能性が高いため、脈波成分を特定する上で重要な手がかりとなる。例えば、制御部３１は、パワーが上位Ｎ番目までの候補点に対応する候補点ヒストグラムのビンと、周波数軸上でその候補点の前後に位置するビンの検出回数をインクリメントする(ステップＳ５１)。本実施形態では、Ｎ＝２である。このように候補点の前後のビンを一緒に検出回数としてカウントすることによって、候補点の周波数が少しだけ変化したときも、変化した周波数を脈波成分の候補点として扱うことができる。
【００３６】
また、制御部３１は、Ｍ回前に計算した周波数スペクトルから、パワーの大きさが上位Ｎ番目までの候補点に対応する候補点ヒストグラムのビンと、周波数軸上でその候補点の前後に位置するビンの検出回数をデクリメントする(ステップＳ５２)。本実施形態では、Ｍ＝１０、Ｎ＝２に予め設定されている。このようにデクリメントすることによって、候補点ヒストグラムから過去の古い候補点を削除することができる。
【００３７】
再び図６に戻って、上述した候補点ヒストグラム計算処理の後、制御部３１は、候補点ヒストグラムに基づいて、脈波成分を特定する処理を実行する（ステップＳ３５）。ここで、図１０および図１１を参照して、この処理について説明する。
【００３８】
図１０は、候補点ヒストグラムの一例を示す図である。図１１は、図１０に示す候補点ヒストグラムに基づいて、脈波成分を特定する処理の手順を示すフローチャートである。
【００３９】
まず、制御部３１は、候補点ヒストグラムにおいて、検出回数がしきい値を超えているビンを抽出する（ステップＳ６１）。本実施形態では、しきい値＝９である。
【００４０】
本実施形態では、候補点ヒストグラムの作成の際、上記ステップＳ５１にて、候補点だけでなく、その候補点の前後のビンの検出回数もインクリメントされている。そのため、作成された候補点ヒストグラムは、互いに隣接するビン同士の検出回数が同じになった幅広のヒストグラムになっている。そこで、制御部３１は、隣接するビンを１つにまとめる(ステップＳ６２)。ビンを１つにまとめる方法としては、隣接するビンの番号の平均値を計算し、平均値に最も近い番号を持つビンを選択する方法を用いる。例えば、２０番目のビンと２１番目のビンが存在する場合は、ビンの番号の平均値は（２０＋２１）÷２＝２０．５となるため、四捨五入して２１番目のビンを選択する。
【００４１】
次に、制御部３１は、互いに高調波の関係にあるビンを、脈波成分の候補から除外する(ステップＳ６３)。ステップＳ６３では、制御部３１は、対象となるビンのペアの全ての組み合わせについて、下記の式（３）または式（４）に該当するか否かチェックする。その結果、該当するビンのペアがあれば、制御部３１は、その両方のビンを脈波成分の候補から除外する。
【数３】
2017153595.tif 000005
【数４】
2017153595.tif 000006
【００４２】
式（３）、（４）において、ｆ１は、対象となるビンのペアのうち、周波数が低い方のビンの周波数を示し、ｆ２は、そのペアのうち、周波数が高い方のビンの周波数を示す。式（３）によって、２次高調波が除外され、式（４）によって、３次高調波が除外される。
【００４３】
また、制御部３１は、体動ノイズ成分を脈波成分として採用しないようにするために、加速度スペクトルにおいて極大値をとる周波数成分に対応するビンを脈波成分の候補から除外する(ステップＳ６４)。例えば、加速度スペクトルにおいて極大値をとる周波数成分のうち、パワーが上位４つの周波数成分について、下記の式（５）に該当するか否かチェックする。その結果、該当するビンがあれば、制御部３１は、そのビンを脈波成分の候補から除外する。式（５）において、ｆｂｉｎはビンの周波数を示し、ｆａｃｃは加速度スペクトルにおける極大値をとる周波数を示す。
【数５】
2017153595.tif 000007
【００４４】
さらに、制御部３１は、予め設定された探索範囲外のビンを脈波成分の候補から除外する(ステップＳ６５)。探索範囲の下限は、後述する安静時脈拍数の移動平均値にマージンを加えた値とする。このマージンは、例えば、−５ｐｐｍである。一方、探索範囲の上限は、１７０ｂｐｍに対応する値とする。
【００４５】
上述したステップＳ６１からステップＳ６４までの処理によって、ビンが、最終的に１つに絞り込まれたら、制御部３１は、そのビンを脈波成分と特定する(ステップＳ６６、Ｓ６７)。
【００４６】
再び図６に戻って、上述した脈波成分特定処理にて脈波成分が特定された場合、制御部３１は、脈拍検出に成功したと判定し（ステップＳ３６）、脈拍数を更新する（ステップＳ３７）。このとき、制御部３１は、過去の脈拍数の移動平均値を用いて脈拍数を平滑化する。例えば、過去８秒の脈拍数の平均値を用いる。また、合成加速度データの実効値ＲＭＳが所定値（０．０７）よりも小さい場合、制御部３１は、下記の式（６）により安静時脈拍数の移動平均値を更新する。
【数６】
2017153595.tif 000008
【００４７】
一方、上述したステップＳ６６において、脈波成分の最終候補が、複数のビンになった場合、または、当該最終候補となるビンが１つもなかった場合、制御部３１は、脈波成分の特定に失敗したと判定する。この場合、上述した候補点ヒストグラム計算処理とは別の脈波成分特定処理に向けて、候補点を絞り込む検出窓を設定する(ステップＳ３８)。制御部３１は、体動量、すなわち上述した合成加速度データの実効値ＲＭＳに応じて検出窓の範囲を設定する。
【００４８】
実効値ＲＭＳが所定値よりも小さい場合、制御部３１は、脈拍計１における現在の脈波数を基準にして±１０ｂｐｍの範囲に検出窓を設定する。本実施形態では、所定値＝０．０７である。
【００４９】
実効値ＲＭＳが、上記所定値以上である場合、初回については、制御部３１は、上述したステップＳ２３で決定した初期脈拍数を基準にして±２５ｂｐｍの範囲に検出窓を設定する。次回以降、前回の実効値ＲＭＳが、上記所定値以上である場合、制御部３１は、今回の実効値ＲＭＳから前回の実効値ＲＭＳを減算する。
【００５０】
実効値ＲＭＳの差が、第１のしきい値よりも大きい場合、体動量が増加している可能性が高い。そこで、制御部３１は、脈拍計１における現在の脈波数を基準にして−１０ｂｐｍ〜＋３５ｂｐｍの範囲に検出窓を設定することによって、検出窓を高周波数領域にシフトする。本実施形態では、第１のしきい値＝０．０６である。
【００５１】
実効値ＲＭＳの差が第２のしきい値よりも小さい場合、体動量が減少している可能性が高い。そこで、制御部３１は、脈拍計１における現在の脈波数を基準にして−３５ｂｐｍ〜＋１０ｂｐｍの範囲に検出窓を設定することによって、検出窓を低周波数領域にシフトする。本実施形態では、第２のしきい値＝−０．０６である。
【００５２】
検出窓の設定処理の後、制御部３１は、特定の候補点に対して候補点の重要度を表す点数を加算する加算処理を実行する（ステップＳ３９）。ステップＳ３９では、制御部３１は、下記の式（７）を用いてパワーの大きな候補点から順番に点数を加算する。下記の式（７）では、加算数は、パワーが大きくなるにつれて、換言すると順位が高くなるにつれて多くなっている。
【数７】
2017153595.tif 000009
【００５３】
また、制御部３１は、脈拍計１における現在の脈波数に対応する周波数と同等以上の候補点に対しても加算処理を実行する。加算対象となる候補点の下限値は、脈拍計１における現在の脈波数に対応する周波数に０．９５を乗算した値である。該当する候補点には、一律に１点加算される。
【００５４】
以上説明したステップＳ３９では、制御部３１は、脈波成分の可能性が高いと考えられる特定の候補点に対して加算処理を実行し、加算数は、その可能性の高さに応じて決まっている。
【００５５】
点数の加算処理の後、制御部３１は、上述した脈波成分特定処理とは別の脈波成分特定処理を実行する(ステップＳ４０)。ここで、図１２を参照して、この別の脈波成分特定処理について説明する。
【００５６】
図１２は、別の脈波成分特定処理の手順を示すフローチャートである。制御部３１は、ステップＳ３９で計算した点数が最も高い候補点(ビン)を検索する(ステップＳ７１)。続いて、制御部３１は、その候補点が、ステップＳ３８で設定した検出窓内に存在するか否か判定する（ステップＳ７２）。
【００５７】
候補点が、検出窓内に存在する場合（ステップＳ７２）、制御部３１は、その候補点を脈波成分として特定する(ステップＳ７３)。この場合、制御部３１は、脈拍検出に成功したと判定する（図６のステップＳ４１）。
【００５８】
反対に、候補点が検出窓内に存在しない場合、制御部３１は、以下のような例外処理を実行する。
【００５９】
合成加速度データの実効値ＲＭＳが所定値（０．０７）よりも小さい場合、制御部３１は、脈波スペクトルの極大値の中で、強度が最大のものを脈波成分として特定する。合成加速度データの実効値ＲＭＳが所定値以上の場合、制御部３１は、脈波成分の特定に失敗したと判定し、脈拍数を更新しない。
【００６０】
ここで、ウィンドウを補正して脈拍数を計測する比較例の脈波計測と、候補点ヒストグラムを用いて脈拍数を計測する本実施形態の脈波計測との、比較結果について説明する。
【００６１】
図１３は、比較例の方法で脈拍数を計測した結果を示す図である。図１４は、本実施形態の方法で脈拍数を計測した結果を示す図である。図１３は、脈拍数の実測値と、比較例の方法で算出された脈拍数の算出値と、この脈拍数の算出に用いたウィンドウと、を示す。図１４は、脈拍数の実測値と、本実施形態の方法で算出された脈拍数の算出値と、この脈拍数の算出に用いたウィンドウと、を示す。
【００６２】
図１３に示すように、比較例の方法は、ウィンドウを補正しているものの、補正後のウィンドウがノイズ成分の影響を受けている。そのため、ウィンドウの補正後、算出値が実測値から乖離している。
【００６３】
一方、本実施形態の方法は、安定して脈波成分が検出されている場合に、脈波成分に対応する周波数成分の検出回数が大きくなる性質を利用し、ウィンドウの範囲に関係なく、検出回数が高い周波数成分を脈波成分として採用している。そのため、図１４に示すように、本実施形態の方法は、算出値が実測値に近くなり、脈波計測の信頼性を高めることが可能となる。
【００６４】
なお、本実施形態による脈拍計におけるデータ処理方法の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、データ処理方法の少なくとも一部の機能を実現するプログラムをフレキシブルディスクや磁気ディスク、光ディスク等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００６５】
また、データ処理方法の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００６６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６７】
１  脈拍計、１０  脈波センサ、２０  加速度センサ、３１  制御部
【図１】
2017153595.tif 000010
【図２】
2017153595.tif 000011
【図３】
2017153595.tif 000012
【図４】
2017153595.tif 000013
【図５】
2017153595.tif 000014
【図６】
2017153595.tif 000015
【図７】
2017153595.tif 000016
【図８】
2017153595.tif 000017
【図９】
2017153595.tif 000018
【図１０】
2017153595.tif 000019
【図１１】
2017153595.tif 000020
【図１２】
2017153595.tif 000021
【図１３】
2017153595.tif 000022
【図１４】
2017153595.tif 000023