(57)【要約】      （修正有）【課題】被検出者が運動中であっても正確に心拍数を推定することのできる心拍数推定方法を提供する。【解決手段】周波数解析部１１は、被検出部位に光を照射したときに得られる光量信号をフレーム毎に周波数変換して、輝度データを生成する。輝度データは、光量信号の周波数スペクトルの複数のピーク値をフレーム毎に表す。スコア化部１２は、予め設定された周波数帯域に対して、輝度データが表す複数のピーク値のうちの上位Ｍ個（Ｍは３以上）のピーク値をフレーム毎に抽出する。スコア化部は、抽出したピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値としたスコア化データを生成する。追跡部１３および推定部１４は、スコア化データに基づいて、被検出者の心拍数を推定する。【選択図】図２
2018138138.tif 000002
【特許請求の範囲】
【請求項１】
被検出者の被検出部位に装着されるデバイスが、
前記被検出部位に光を照射したときに得られる光量信号をフレーム毎に周波数変換して、前記光量信号の周波数スペクトルの複数のピーク値をフレーム毎に表す輝度データを生成し、
予め設定された周波数帯域に対して、前記輝度データが表す複数のピーク値のうちの上位Ｍ個（Ｍは３以上）のピーク値を前記フレーム毎に抽出し、
前記抽出したピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値としたスコア化データを生成し、
前記スコア化データに基づいて、前記被検出者の心拍数を推定する
処理を実行することを特徴とする心拍数推定方法。
【請求項２】
前記上位Ｍ個のピーク値を抽出する処理は、
前記被検出者の運動状態を検出しない場合、第１の周波数帯域を強調して、前記輝度データから前記上位Ｍ個のピーク値を前記フレーム毎に抽出し、
前記被検出者の運動状態を検出した場合、前記第１の周波数帯域よりも高い第２の周波数帯域を強調して、前記輝度データから前記上位Ｍ個のピーク値を前記フレーム毎に抽出する、
ことを特徴とする請求項１に記載の心拍数推定方法。
【請求項３】
前記輝度データを生成する処理は、
前記被検出者が運動状態であるときの振動成分を表す振動成分信号を前記フレーム毎に周波数変換して、前記振動成分信号の周波数スペクトルの複数のピーク値と時間との関係を前記フレーム毎に表す振動成分データを生成し、
前記輝度データである第１の輝度データと前記振動成分データとに基づいて、前記被検出者の体動ノイズが低減された第２の輝度データを生成し、
前記上位Ｍ個のピーク値を抽出する処理は、
前記第２の輝度データから前記上位Ｍ個のピーク値を前記フレーム毎に抽出する、
ことを特徴とする請求項１または２に記載の心拍数推定方法。
【請求項４】
前記輝度データを生成する処理は、
前記振動成分データである第１の振動成分データが表す複数のピーク値に対して上限を設けたリミット処理を施し、前記リミット処理を施した第１の振動成分データを第２の振動成分データとして生成し、
前記第１の輝度データから前記第２の振動成分データを減算して前記第２の輝度データを生成する、
ことを特徴とする請求項３に記載の心拍数推定方法。
【請求項５】
前記被検出者の心拍数を推定する処理は、
前記スコア化データが表す各周波数のうち、閾値以上のスコア値を示す周波数を前記フレーム毎に追跡して、前記被検出者の心拍数を推定する、
ことを特徴とする請求項１から４のいずれか一項に記載の心拍数推定方法。
【請求項６】
前記被検出者の心拍数を推定する処理は、
前記閾値以上のスコア値を示す周波数と、前記閾値以上のスコア値を示す周波数を追跡したときの追跡時間とに基づいて、前記被検出者の心拍数を推定する、
ことを特徴とする請求項５に記載の心拍数推定方法。
【請求項７】
被検出者の被検出部位に装着される心拍数推定装置であって、
前記被検出部位に光を照射したときに得られる光量信号をフレーム毎に周波数変換して、前記光量信号の周波数スペクトルの複数のピーク値をフレーム毎に表す輝度データを生成する周波数解析部と、
予め設定された周波数帯域に対して、前記輝度データが表す複数のピーク値のうちの上位Ｍ個（Ｍは３以上）のピーク値を前記フレーム毎に抽出し、前記抽出したピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値としたスコア化データを生成するスコア化部と、
前記スコア化データに基づいて、前記被検出者の心拍数を推定する推定部と、
を有することを特徴とする心拍数推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、心拍数推定方法および心拍数推定装置に関する。
【背景技術】
【０００２】
スマートフォンや、ＩｏＴ（Internet  of  Things）デバイス向けに、「この時間にここへ行った」等の行動ログの管理や、高齢者の見守り等のサービスが検討されている。ユーザの見守り等を目的とした代表的な機能の一つとして、心拍数の測定機能が挙げられる。
【０００３】
従来、心拍数を推定するにあたり、代表的なセンサとしては、心電センサ、ドップラーセンサ、光学センサなどが挙げられる。心電センサを用いる方式では、高精度での心拍数の測定が可能である。しかし、心電センサを用いる方式は、被検出者の胸などに電極を貼り付ける方式である上に、機器が高価である。そこで、ドップラーセンサを用いる方式も増えてきた。ドップラーセンサを用いる方式では、マイクロ波等を利用してドップラーセンサで血流速度を計ることにより、心拍数を推定する。一方、光学センサを用いる方式も、ヘルスケアなどの市場で注目を集めている。光学センサを用いる方式では、被検出部位（例えば被検出者の肌）に向けて所定の発光強度で光を照射し、被検出部位からの反射光または透過光を受光することにより、心拍数を推定する。
【０００４】
光学センサを用いる方式において、被検出者が安静状態であるときの心拍数の推定原理は、以下のようになる。
【０００５】
まず、光学センサを用いる方式では、被検出者の肌に、可視光、特に緑色の光を当てる。このとき、ヘモグロビンの酸素濃度に応じて光が減衰して反射する。光学センサを用いる多くの方式では、この特徴を利用する。図２０は、光量信号および周波数スペクトルの一例を示す説明図である。光学センサを用いる方式では、被検出部位に向けて所定の発光強度で光を照射し、被検出部位からの反射光または透過光を受光することにより、受光した光量（輝度）を表す光量信号を生成する。次に、光学センサを用いる方式では、光量信号に対して高速フーリエ変換等の周波数変換を施すことにより、スペクトル強度と周波数との関係を表す周波数スペクトルを生成する。そこで、光学センサを用いる方式では、従来、特徴的な周波数スペクトルのピークを検出することにより、心拍数を推定する。
【０００６】
被検出者が安静状態であるときの心拍数は６０〜８０ｂｐｍ（ｂｐｍは一分間の心拍数であり、１〜１．３３Ｈｚに相当）付近であることがよく知られている。このため、ノイズの小さな場合には、光学センサを用いる方式は、心拍数に相当する周波数スペクトルのピークを検出することにより、心拍数を容易に推測することができる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】国際公開第２０１４／０４１９３９号
【特許文献２】国際公開第２０１６／１８５８１０号
【特許文献３】特開２０１７−０００６２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、光学センサを用いる多くの方式では、被検出者が安静状態であることを原則としており、またクリップで挟み込むことで高い密着性の得られる指先を、被検出部位（この場合、センサ取付け部位）としてきた。つまり、被検出者が運動している際に光量信号に重畳する大きなノイズの影響を排除することができず、これらの外乱要因を可能な限り排除できるシチュエーションに用途を限っていた。同様の理由で、密着性の低い手首部位での心拍数の推定も避けられてきた。図２１は、ノイズが重畳したときの光量信号および周波数スペクトルの一例を示す説明図である。光量信号に大きなノイズが重畳した場合、ノイズの影響により、心拍数に相当する周波数スペクトルのピークを検出することができなくなる。
【０００９】
従来、運動時のノイズの要因については明らかであった。一つは、体動によって生じる血流の乱れであり、もう一つはセンサが肌から離れることによる外乱光である。原因が明らかであるにも関わらず、有効な解決策が提示されてこなかった理由は、ただ単に、これらのノイズが心拍数に近い周波数で、かつ脈拍による周波数成分よりも強いスペクトルで重畳するといった厄介な性質を持っているからである。
【００１０】
ウェアラブルデバイスやＩｏＴデバイスの出現とともに業務管理やヘルスケアを目的とした心拍数推定技術の価値が向上しても、日常において頻出する体動ノイズについて対策している技術は多くない。すなわち、従来の光学センサを用いる方式では、閾値を設けておき、周波数スペクトルと閾値との比較結果に基づいて安静状態と判定する技術が主であり、被検出者が運動中である場合は、正確に心拍数を推定することができない。
【００１１】
本願に開示の技術は、被検出者が運動中であっても正確に心拍数を推定する。
【課題を解決するための手段】
【００１２】
１つの態様では、心拍数推定方法は、被検出者の被検出部位に装着されるデバイスが、被検出部位に光を照射したときに得られる光量信号をフレーム毎に周波数変換して、輝度データを生成する。輝度データは、光量信号の周波数スペクトルの複数のピーク値をフレーム毎に表す。次に、心拍数推定方法は、予め設定された周波数帯域に対して、輝度データが表す複数のピーク値のうちの上位Ｍ個（Ｍは３以上）のピーク値をフレーム毎に抽出する。次に、心拍数推定方法は、抽出したピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値としたスコア化データを生成する。次に、心拍数推定方法は、スコア化データに基づいて、被検出者の心拍数を推定する。
【発明の効果】
【００１３】
１つの側面では、被検出者が運動中であっても正確に心拍数を推定することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本実施例の心拍数推定装置のハードウェア構成の一例を示す図である。
【図２】図２は、本実施例の心拍数推定装置内のプロセッサの機能構成の一例を示すブロック図である。
【図３】図３は、本実施例の心拍数推定装置の動作の一例を示すフローチャートである。
【図４】図４は、本実施例の心拍数推定装置の動作における周波数解析処理の一例を示す説明図である。
【図５】図５は、周波数解析処理における判定不能部分の一例を示す説明図である。
【図６】図６は、ウィンドウ関数の一例を示す説明図である。
【図７】図７は、本実施例の心拍数推定装置の動作におけるスコア化処理の一例を示す説明図である。
【図８】図８は、本実施例の心拍数推定装置の動作におけるスコア化処理の一例を示す説明図である。
【図９】図９は、本実施例の心拍数推定装置の動作におけるスコア化処理の一例を示す説明図である。
【図１０】図１０は、パーティクル間の斥力の一例を示す説明図である。
【図１１】図１１は、本実施例の心拍数推定装置の動作における追跡処理の一例を示す説明図である。
【図１２】図１２は、本実施例の心拍数推定装置の動作における推定処理の一例を示す説明図である。
【図１３】図１３は、本実施例の心拍数推定装置の動作における推定処理の一例を示す説明図である。
【図１４】図１４は、本実施例の心拍数推定装置の動作における推定処理の一例を示す説明図である。
【図１５】図１５は、本実施例の心拍数推定装置の動作における推定処理の一例を示す説明図である。
【図１６】図１６は、輝度ＦＦＴデータの一例を示す説明図である。
【図１７】図１７は、実際の心拍数の軌跡の一例を示す説明図である。
【図１８】図１８は、既存のアルゴリズムを用いた場合の心拍数推定結果の一例を示す説明図である。
【図１９】図１９は、本実施例のアルゴリズム（心拍数推定方法）を用いた場合の心拍数推定結果の一例を示す説明図である。
【図２０】図２０は、光量信号および周波数スペクトルの一例を示す説明図である。
【図２１】図２１は、ノイズが重畳したときの光量信号および周波数スペクトルの一例を示す説明図である。
【発明を実施するための形態】
【００１５】
以下、図面に基づいて、本願の開示する心拍数推定方法および心拍数推定装置の実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。
【００１６】
図１は、本実施例の心拍数推定装置１のハードウェア構成の一例を示す図である。心拍数推定装置１は、プロセッサ１０と、メモリ２０と、無線部３０と、光学センサ４０と、運動検出部５０とを有する。本実施例の心拍数推定装置１は、例えば腕時計型のＩｏＴ（Internet of Things）デバイスとして使用される。この場合、本実施例の心拍数推定装置１は、被検出者の被検出部位として、例えば手首に装着される。
【００１７】
無線部３０は、例えば、通常の無線通信や近距離無線通信等の通信を司るインタフェースである。
【００１８】
光学センサ４０は、発光部４１と、受光部４２とを有する。発光部４１は、被検出部位（被検出者の肌）に向けて所定の発光強度で光を照射する。受光部４２は、被検出部位からの反射光または透過光を受光し、受光した光量（輝度）を表す光量信号を生成する。
【００１９】
運動検出部５０は、被検出者の運動状態を検出し、被検出者が運動状態であるときの振動成分を表す振動成分信号を出力する。運動検出部５０の一例としては、加速度センサ５１、ジャイロセンサ５２、地磁気センサ５３、または、これらの組み合わせ等が挙げられる。例えば、運動検出部５０が加速度センサ５１である場合、加速度センサ５１は、被検出者の加速度を検出し、被検出者が運動状態であるときの加速度を表す加速度信号を生成する。
【００２０】
メモリ２０の一例としては、ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）等のＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ等が挙げられる。メモリ２０は、プログラム等の各種情報を記憶する。
【００２１】
プロセッサ１０の一例としては、ＣＰＵ、ＤＳＰ（Digital  Signal  Processor）、ＦＰＧＡ（Field  Programmable  Gate  Array）等が挙げられる。プロセッサ１０は、心拍数推定装置１全体を制御する。プロセッサ１０は、メモリ２０に格納されたプログラムを実行する。
【００２２】
図２は、本実施例の心拍数推定装置１内のプロセッサ１０の機能構成の一例を示すブロック図である。プロセッサ１０には、周波数解析部１１、スコア化部１２、追跡部１３、推定部１４が設けられている。
【００２３】
図３は、本実施例の心拍数推定装置１の動作の一例を示すフローチャートである。心拍数推定装置１は、周波数解析処理（ステップＳ１）、スコア化処理（ステップＳ２）、追跡処理（ステップＳ３）、推定処理（ステップＳ４）を実行する。周波数解析処理、スコア化処理、追跡処理、推定処理は、それぞれ、周波数解析部１１、スコア化部１２、追跡部１３、推定部１４により実行される。以下、これらの処理について詳細に説明する。
【００２４】
［周波数解析処理］
図４は、本実施例の心拍数推定装置１の動作における周波数解析処理の一例を示す説明図である。図５は、周波数解析処理における判定不能部分の一例を示す説明図である。
【００２５】
周波数解析部１１は、ＬＰＦ（Low-Pass  Filter）１１０、内積部１１１、ＦＦＴ（Fast  Fourier  Transform）部１１２、１１３、リミッタ部１１４、合成器１１５を有する。
【００２６】
ＬＰＦ１１０は、運動検出部５０（加速度センサ５１）から出力された振動成分信号（加速度信号Ｓａ１）に対して、遮断周波数より低い周波数成分の信号を通過させ、それ以外の周波数帯域の信号を減衰させる。ＬＰＦ１１０を通過した信号は内積部１１１に出力される。
【００２７】
内積部１１１は、加速度センサ５１から出力された加速度信号Ｓａ１と、ＬＰＦ１１０から出力された信号との内積値をとり、その結果を加速度信号Ｓａ２としてＦＦＴ１１２に出力する。
【００２８】
ＦＦＴ１１２は、内積部１１１から出力された加速度信号Ｓａ２に対して高速フーリエ変換（ＦＦＴ）等の周波数変換をフレーム毎（一定時間毎）に施すことにより、振動成分ＦＦＴ信号（加速度ＦＦＴデータＤａ１）を生成する。加速度ＦＦＴデータＤａ１は、加速度信号Ｓａ２の周波数スペクトルの複数のピーク値をフレーム毎に表している。例えば、ピーク値の出力形態が色である場合、ピーク値が大きいほど、濃い色で表される。ＦＦＴ１１２は、加速度ＦＦＴデータＤａ１をリミッタ部１１４に出力する。
【００２９】
リミッタ部１１４は、ＦＦＴ１１２から出力された加速度ＦＦＴデータＤａ１を受け取り、リミット処理を実施する。リミッタ部１１４は、リミット処理として、加速度ＦＦＴデータＤａ１が表す複数のピーク値のうち、第１設定値以下の値を除外する。また、リミッタ部１１４は、リミット処理として、加速度ＦＦＴデータＤａ１が表す複数のピーク値のうち、第１設定値よりも大きい第２設定値を超える値については、全て第２設定値とする。
【００３０】
リミット処理を行なう理由として、後述の輝度ＦＦＴデータＤｂ１における心拍数に相当する周波数スペクトルと、加速度ＦＦＴデータＤａ１における体動ノイズに相当する周波数スペクトルとが同フレーム毎に重なる場合を考える。この場合、後述の輝度ＦＦＴデータＤｂ１から加速度ＦＦＴデータＤａ１を除算することにより、心拍数に相当する周波数スペクトルが全て除去されてしまっては誤検出となってしまうからである。したがって、リミッタ部１１４は、加速度ＦＦＴデータＤａ１が表す複数のピーク値に対して上限を設けたリミット処理を施し、リミット処理を施した加速度ＦＦＴデータＤａ１を加速度ＦＦＴデータＤａ２として合成器１１５に出力する。
【００３１】
ＦＦＴ１１３は、光学センサ４０から出力された光量信号Ｓｂに対して高速フーリエ変換（ＦＦＴ）等の周波数変換をフレーム毎に施すことにより、輝度ＦＦＴデータＤｂ１を生成する。輝度ＦＦＴデータＤｂ１は、光量信号Ｓｂの周波数スペクトルの複数のピーク値をフレーム毎に表している。例えば、ピーク値の出力形態が色である場合、ピーク値が大きいほど、濃い色で表される。ＦＦＴ１１３は、輝度ＦＦＴデータＤｂ１を合成器１１５に出力する。
【００３２】
合成器１１５は、ＦＦＴ１１３から出力された輝度ＦＦＴデータＤｂ１と、リミッタ部１１４から出力された加速度ＦＦＴデータＤａ２とを受け取る。そして、合成器１１５は、輝度ＦＦＴデータＤｂ１から加速度ＦＦＴデータＤａ２を減算して、被検出者の体動ノイズが低減された輝度ＦＦＴデータＤｂ２を生成する。合成器１１５は、輝度ＦＦＴデータＤｂ２をスコア化部１２に出力する。
【００３３】
ここで、被検出部位（例えば被検出者の肌）からセンサ（光学センサ４０）が離れてしまうと、外乱光により正常な処理を行なうことができない。このため、図５に示すように、周波数スペクトルのピーク値が設定上限値を超えるフレーム（時間）が存在する場合、そのフレームは判定不能部分として処理される。
【００３４】
［スコア化処理］
図６は、ウィンドウ関数の一例を示す説明図である。図７〜９は、本実施例の心拍数推定装置１の動作におけるスコア化処理の一例を示す説明図である。
【００３５】
スコア化部１２は、周波数解析部１１から出力された輝度ＦＦＴデータＤｂ２（図７を参照）を受け取る。
【００３６】
ここで、スコア化部１２は、運動検出部５０（加速度センサ５１）が被検出者の運動状態を検出しない場合には、注目周波数Ｎを８０ｂｐｍとしたウィンドウ関数を用いる（図６を参照）。安静状態である周波数帯域は、例えば４０〜１２０ｂｐｍに設定される。例えば、周波数が４０ｂｐｍ未満、または、１２０ｂｐｍを超える場合のゲインは「１」に設定され、周波数が８０ｂｐｍの場合のゲインは「２」に設定されているものとする。また、周波数が４０ｂｐｍから８０ｂｐｍまでのゲインは「１」から「２」に徐々に上がるように設定され、周波数が８０ｂｐｍから１２０ｂｐｍまでのゲインは「２」から「１」に徐々に下がるように設定されているものとする。この場合、スコア化部１２は、４０〜１２０ｂｐｍに設定された第１の周波数帯域（図７中の領域１２１を参照）を強調して、輝度ＦＦＴデータＤｂ２が表す複数のピーク値の中から上位３つのピーク値を、ポテンシャル場の値として抽出する。
【００３７】
一方、スコア化部１２は、運動検出部５０（加速度センサ５１）が被検出者の運動状態（図７中の白線部分の時間）を検出した場合には、注目周波数Ｎを１６０ｂｐｍとしたウィンドウ関数を用いる（図６を参照）。運動状態である周波数帯域は、例えば１２０〜２００ｂｐｍに設定される。例えば、周波数が１２０ｂｐｍ未満、または、２００ｂｐｍを超える場合のゲインは「１」に設定され、周波数が１６０ｂｐｍの場合のゲインは「２」に設定されているものとする。また、周波数が１２０ｂｐｍから１６０ｂｐｍまでのゲインは「１」から「２」に徐々に上がるように設定され、周波数が１６０ｂｐｍから２００ｂｐｍまでのゲインは「２」から「１」に徐々に下がるように設定されているものとする。この場合、スコア化部１２は、１２０〜２００ｂｐｍに設定された第２の周波数帯域（図７中の領域１２０を参照）を強調して、輝度ＦＦＴデータＤｂ２が表す複数のピーク値の中から上位３つのピーク値を、ポテンシャル場の値として抽出する。
【００３８】
スコア化部１２は、フレーム毎に上位３つのピーク値を抽出したデータを、図８に示すような抽出データＰａとして生成する。抽出データＰａは、上位３つのピーク値を示す周波数をフレーム毎に表している。例えば、ピーク値を示す周波数の出力形態が色である場合、ピーク値が大きいほど、濃い色で表される。
【００３９】
上位３つのピーク値としては、代表的な以下の３つのピークが挙げられる。
（Ｐ１）  脈拍によるピーク値
（Ｐ２）  運動などの体動ノイズによるピーク値
（Ｐ３）  体動ノイズの高周波成分あるいは低周波成分のノイズによるピーク値
【００４０】
なお、スコア化処理では３つ以上抽出できれば、実質的に問題はなく、例えば上位５つのピーク値を抽出してもよい。
【００４１】
スコア化部１２は、生成した抽出データＰａの上位３つのピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値とするスコア化を行なう。スコア化を行なう方法としては、例えば、以下の２つの方法が考えられる。
【００４２】
（方法１）
例えば、周波数を仮想的にブロック単位に分け、あるフレームの注目周波数に対してピーク値が存在している場合、追跡部１３は、上記フレームの注目周波数に対してスコア値を「１」とする。ここで、過去のデータの注目周波数に対してピーク値が存在し、そのピーク値が過去２回抽出されている。この場合、追跡部１３は、追跡部１３は、上記フレームの注目周波数に対するスコア値である「１」に、過去抽出回数に基づく「２」を加算して、上記フレームの注目周波数に対するスコア値を「３」とする。
【００４３】
（方法２）
例えば、周波数を仮想的にブロック単位に分け、第１フレーム（一定時間）の第１周波数に対してピーク値が存在している場合、追跡部１３は、第１のフレームの第１周波数に対してスコア値を「１」とする。第２フレーム（次の一定時間）の第１周波数および第１周波数に隣接する第２周波数に対してピーク値が存在している場合、追跡部１３は、第２のフレームの第１周波数および第２周波数に対してスコア値を「２」とする。すなわち、追跡部１３は、第１のフレームの第１周波数に対するスコア値である「１」に、「１」を加算して、第２のフレームの第１周波数および第２周波数に対するスコア値を「２」とする。第３フレーム（更に次の一定時間）の第２周波数に隣接する第３周波数に対してピーク値が存在している場合、追跡部１３は、第３のフレームの第３周波数に対してスコア値を「３」とする。すなわち、追跡部１３は、第２のフレームの第２周波数に対するスコア値である「２」に、「１」を加算して、第３のフレームの第３周波数に対するスコア値を「３」とする。
【００４４】
スコア化部１２は、例えば上述の方法２により、抽出データＰａの上位３つのピーク値に基づいて、各周波数に対するピーク値の存在確率をスコア値とし、図９に示すようなスコア化データＰｂを生成する。スコア化データＰｂは、スコア値を表す周波数をフレーム毎に表している。例えば、スコア値の出力形態が色である場合、スコア値が大きいほど、濃い色で表される。スコア化部１２は、スコア化データＰｂを追跡部１３に出力する。
【００４５】
［追跡処理］
図１０は、パーティクル間の斥力の一例を示す説明図である。図１１は、本実施例の心拍数推定装置１の動作における追跡処理の一例を示す説明図である。
【００４６】
追跡部１３は、スコア化部１２から出力されたスコア化データＰｂを受け取る。追跡部１３は、スコア化データＰｂが表す周波数をフレーム毎に追跡する。追跡する方法としては、例えば、以下の２つの方法が考えられる。
【００４７】
（方法１）
まず、追跡部１３は、ラベリング処理などの画像処理のように、スコア化データＰｂが表す各周波数のスコア値を閾値で２値化した２値化データをフレーム毎に生成する。次に、追跡部１３は、前フレームの２値化データに最も近い２値化データを示す周波数をフレーム毎に追跡する。
【００４８】
（方法２）
または、追跡部１３は、パーティクルフィルタなどのアルゴリズムを用いて、スコア化データＰｂが表す各周波数のうち、閾値以上のスコア値を示す周波数をフレーム毎に追跡する。この方法では、数個のパーティクルを動かして、閾値以上のスコア値を示す周波数を追跡する。
【００４９】
パーティクルは、以下の３つの特徴を持った動きをする。
（Ａ）  図１０に示すように、上または下のパーティクルと接近すると一定の距離まで離れようとする。
（Ｂ）  パーティクルは、近くにスコア値の大きな領域に近づこうとする。
（Ｃ）  パーティクルは、スコア値が存在する領域にいる場合は自身の確度を上げる。一方、パーティクルは、スコア値が存在しない領域にいる場合は確度を下げる。
【００５０】
追跡部１３は、例えば上述の方法２により、パーティクルの確度に基づいて、スコア化データＰｂが表す各周波数のうち、ノイズによるスコア値を示す周波数を除外し、心拍数に相当するスコア値を示す周波数の候補を絞り込む。
【００５１】
そこで、追跡部１３は、スコア化データＰｂが表す各周波数のうち、閾値以上のスコア値を示す周波数をフレーム毎に追跡する。そして、追跡部１３は、追跡した周波数に対してパーティクルの確度を設定して、図１１に示すような複数の追跡データＰｃ（例えば４つの追跡データＰｃ）を生成する。複数の追跡データＰｃの各々は、パーティクルの確度が設定された周波数をフレーム毎に表している。例えば、確度の出力形態が色である場合、確度が大きいほど、濃い色で表される。追跡部１３は、複数の追跡データＰｃを推定部１４に出力する。
【００５２】
［推定処理］
図１２〜１５は、本実施例の心拍数推定装置１の動作における推定処理の一例を示す説明図である。
【００５３】
推定部１４は、追跡部１３から出力された複数の追跡データＰｃを受け取る。推定部１４は、複数の追跡データＰｃの中から、心拍数を表す１つの追跡データＰｃを絞り込む。すなわち、推定部１４は、被検出者の心拍数に相当する周波数スペクトルのピーク値の時系列データを絞り込む。
【００５４】
そこで、図１２に示すように、推定部１４は、複数の追跡データＰｃ（例えば４つの追跡データＰｃ）のうち、追跡が途切れている追跡データＰｃを除外する。すなわち、推定部１４は、４つの追跡データＰｃのうち、パーティクルの確度を基に周波数を追跡したときの追跡時間が設定時間以下である追跡データＰｃを除外する。残り３つの追跡データＰｃのうち、２つの追跡データＰｃは分岐している。この場合、図１２に示すように、推定部１４は、分岐している２つの追跡データＰｃのうち、パーティクルの確度が小さい追跡データＰｃを除外する。そして、図１３に示すように、推定部１４は、残りの２つの追跡データＰｃのうち、パーティクルの確度が最も大きい追跡データＰｃを選択する。
【００５５】
また、図１４に示すように、追跡データＰｃが途切れていて（追跡時間が短く）、かつ、パーティクルの確度が一定値を超える場合には、推定部１４は、ジャンプ処理として、パーティクルの確度が大きい追跡データＰｃを選択する。また、図１５に示すように、追跡データＰｃが途切れていて（追跡時間が短く）、その追跡データＰｃにおけるパーティクルの確度が小さい場合は、推定部１４は、ジャンプ処理を行なわず、パーティクルの確度が最も大きい追跡データＰｃを選択する。
【００５６】
推定部１４は、選択した追跡データＰｃを、被検出者の心拍数に相当する周波数スペクトルのピーク値の時系列データとして推定する。すなわち、推定部１４は、被検出者の心拍数を推定する。
【００５７】
［心拍数推定結果］
図１６は、輝度ＦＦＴデータの一例を示す説明図である。図１７は、実際の心拍数の軌跡の一例を示す説明図である。図１８は、既存のアルゴリズムを用いた場合の心拍数推定結果の一例を示す説明図である。図１９は、本実施例のアルゴリズム（心拍数推定方法）を用いた場合の心拍数推定結果の一例を示す説明図である。
【００５８】
図１６、１７に示すように、被検出者がジョギングを開始した場合、急激に心拍数が上がる。図１８に示すように、既存のアルゴリズムを用いた場合では、被検出者がジョギングを開始したときに、被検出者の運動状態の心拍数を追跡できず、誤追跡している。したがって、既存のアルゴリズムを用いた場合では、誤追跡した状態から心拍数が途切れて、後に心拍数を発見した場合、心拍数の急上昇による誤警報などの問題が発生する。一方、本実施例のアルゴリズム（心拍数推定方法）を用いた場合では、被検出者がジョギングを開始したときに、被検出者の運動状態の心拍数を追跡している。このため、本実施例のアルゴリズム（心拍数推定方法）を用いた場合では、図１７に示すような実際の心拍数の軌跡とほぼ一致している。
【００５９】
以上の説明により、本実施例の心拍数推定装置１は、被検出者の被検出部位に装着されるデバイスである。本実施例の心拍数推定装置１では、周波数解析部１１は、被検出部位に光を照射したときに得られる光量信号Ｓｂをフレーム毎に周波数変換して（ＦＦＴを施して）、輝度データ（輝度ＦＦＴデータＤｂ１）を生成する。輝度データ（輝度ＦＦＴデータＤｂ１）は、光量信号Ｓｂの周波数スペクトルの複数のピーク値と時間とを表す。スコア化部１２は、予め設定された周波数帯域（６０〜２００ｂｐｍ）に対して、輝度データ（輝度ＦＦＴデータＤｂ２）が表す複数のピーク値のうちの上位Ｍ個（Ｍは３以上）のピーク値をフレーム毎に抽出する。そして、スコア化部１２は、抽出したピーク値と時間とに基づいて、各周波数に対するピーク値の存在確率をスコア値としたスコア化データＰｂを生成する。推定部１４は、スコア化データＰｂに基づいて、被検出者の心拍数（心拍数に相当する周波数スペクトルのピーク値の時系列データ）を推定する。これにより、本実施例の心拍数推定装置１では、時間経過によって大きく変化する輝度全体の振幅の変化や、低周波成分などのノイズの影響を除外することができる。したがって、本実施例の心拍数推定装置１は、被検出者が運動中であっても正確に心拍数を推定することができる。
【００６０】
また、本実施例の心拍数推定装置１では、スコア化部１２は、被検出者の運動状態を検出しない場合、第１の周波数帯域（４０〜１２０ｂｐｍ）を強調して、輝度データＤｂ２から上位Ｍ個のピーク値をフレーム毎に抽出する。一方、スコア化部１２は、被検出者の運動状態を検出した場合、第１の周波数帯域よりも高い第２の周波数帯域（１２０〜２００ｂｐｍ）を強調して、輝度データＤｂ２から上位Ｍ個のピーク値をフレーム毎に抽出する。これにより、本実施例の心拍数推定装置１では、被検出者が安静状態である場合には高周波成分のノイズを拾うことを避け、また、被検出者が運動状態である場合には心拍による周波数スペクトルのピーク検出の精度を向上することができる。
【００６１】
また、本実施例の心拍数推定装置１では、周波数解析部１１は、被検出者が運動状態であるときの振動成分を表す振動成分信号（この場合、加速度信号Ｓａ１）を受け取る。この場合、周波数解析部１１は、フレーム毎に周波数変換して（ＦＦＴを施して）、第１の振動成分データ（加速度ＦＦＴデータＤａ１）を生成する。第１の振動成分データ（加速度ＦＦＴデータＤａ１）は、振動成分データ（加速度信号Ｓａ１）の周波数スペクトルの複数のピーク値と時間との関係をフレーム毎に表す。また、周波数解析部１１は、第１の振動成分データ（加速度ＦＦＴデータＤａ１）が表す複数のピーク値に対して上限を設けたリミット処理を施す。この場合、周波数解析部１１は、リミット処理を施した第１の振動成分データ（加速度ＦＦＴデータＤａ１）を第２の振動成分データ（加速度ＦＦＴデータＤａ２）として生成する。そして、周波数解析部１１は、輝度データである第１の輝度データ（輝度ＦＦＴデータＤｂ１）から第２の振動成分データ（加速度ＦＦＴデータＤａ２）を減算する。その結果、被検出者の体動ノイズが低減された第２の輝度データ（輝度ＦＦＴデータＤｂ２）が生成される。スコア化部１２は、第２の輝度データ（輝度ＦＦＴデータＤｂ２）から上位Ｍ個のピーク値をフレーム毎に抽出する。これにより、本実施例の心拍数推定装置１では、体動ノイズの影響を低減することができ、運動時の脈拍数（心拍数）の推定の精度を向上することができる。
【００６２】
また、本実施例の心拍数推定装置１では、追跡部１３および推定部１４は、スコア化データＰｂが表す各周波数のうち、閾値以上のスコア値を示す周波数をフレーム毎に追跡して、被検出者の心拍数を推定する。具体的には、推定部１４は、上記閾値以上のスコア値を示す周波数と、上記閾値以上のスコア値を示す周波数を追跡したときの追跡時間とに基づいて、被検出者の心拍数（心拍数に相当する周波数スペクトルのピーク値の時系列データ）を推定する。これにより、本実施例の心拍数推定装置１では、閾値以上のスコア値を示す周波数の他に、追跡時間をパラメータに加えることで、例えば強い周波数スペクトルが突発的に出現するときのピーク値よりも、周波数スペクトルが安定しているピーク値を優先することにより、被検出者の心拍数を正確に推定することができる。
【００６３】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【００６４】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）（又はＭＰＵ（Micro  Processing  Unit）、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良い。
【符号の説明】
【００６５】
１  心拍数推定装置
１０  プロセッサ
１１  周波数解析部
１２  スコア化部
１３  追跡部
１４  推定部
２０  メモリ
３０  無線部
４０  光学センサ
４１  発光部
４２  受光部
５０  運動検出部
５１  加速度センサ
５２  ジャイロセンサ
５３  地磁気センサ
１１０  ＬＰＦ
１１１  内積部
１１２、１１３  ＦＦＴ部
１１４  リミッタ部
１１５  合成器
１２０、１２１  領域
Ｄａ１、Ｄａ２  加速度ＦＦＴデータ
Ｄｂ１、Ｄｂ２  輝度ＦＦＴデータ
Ｓａ１、Ｓａ２  加速度信号
Ｓｂ  光量信号
Ｐａ  抽出データ
Ｐｂ  スコア化データ
Ｐｃ  追跡データ
【図１】
2018138138.tif 000003
【図２】
2018138138.tif 000004
【図３】
2018138138.tif 000005
【図４】
2018138138.tif 000006
【図５】
2018138138.tif 000007
【図６】
2018138138.tif 000008
【図７】
2018138138.tif 000009
【図８】
2018138138.tif 000010
【図９】
2018138138.tif 000011
【図１０】
2018138138.tif 000012
【図１１】
2018138138.tif 000013
【図１２】
2018138138.tif 000014
【図１３】
2018138138.tif 000015
【図１４】
2018138138.tif 000016
【図１５】
2018138138.tif 000017
【図１６】
2018138138.tif 000018
【図１７】
2018138138.tif 000019
【図１８】
2018138138.tif 000020
【図１９】
2018138138.tif 000021
【図２０】
2018138138.tif 000022
【図２１】
2018138138.tif 000023