(57)【特許請求の範囲】
【請求項１】
生体の心電図波形のサンプリングデータ列からサンプリングデータの時間差分値をサンプリング時刻ごとに算出する第１のステップと、
この第１のステップで算出した時間差分値を基に、心拍検出のための指標値を算出する第２のステップと、
現在の閾値を超える前記指標値のピークを検出できたかどうかを判定し、所定個数以上のピークを連続して検出できた場合に、これらのピークのうち最新の所定個数のピークの平均値に基づいて閾値の候補を算出する第３のステップと、
この第３のステップで算出した閾値の候補を、生体の心電図波形の時間差分値として尤もらしいと言える差分限界値に基づく閾値限界値と比較し、前記閾値の候補が前記閾値限界値を上回るときは閾値を更新せず、前記閾値の候補が前記閾値限界値以下のときは前記閾値の候補を新たな閾値とする第４のステップと、
前記閾値を超える前記指標値のピークを検出したときに、このピークのサンプリング時刻を心拍時刻とする第５のステップとを含み、
前記第２のステップは、指標算出対象の時点よりも前の一定の時間領域の時間差分値および指標算出対象の時点よりも後の一定の時間領域の時間差分値のうちの最小値を、指標算出対象の時点の時間差分値から引いた減算結果の正負を反転させた値を前記指標値として、この指標値をサンプリング時刻ごとに算出するステップを含むことを特徴とする心拍検出方法。
【請求項２】
請求項１記載の心拍検出方法において、
初期設定期間の前記指標値の最大値に基づく値を初期の前記閾値とする第６のステップと、
前記閾値を初期設定した後または前記閾値を更新した後に、前記閾値を超える前記指標値のピークを所定時間検出できなかった場合に、初期設定期間に戻して前記閾値の設定をやり直す第７のステップとをさらに含むことを特徴とする心拍検出方法。
【請求項３】
請求項１または２記載の心拍検出方法において、
前記第４のステップは、前記閾値を更新する際に、前記閾値の候補をそのまま新たな閾値とする代わりに、現在の閾値と前記閾値の候補との平均化された値を新たな閾値とするステップを含むことを特徴とする心拍検出方法。
【請求項４】
請求項１乃至３のいずれか１項に記載の心拍検出方法において、
前記第５のステップは、前記閾値を超える前記指標値のピークを検出したときに、このピークの値を、指標値として尤もらしいと言える指標限界値と比較し、ピーク値が指標限界値を上回るときは、ピークを心拍として検出せず、ピーク値が指標限界値以下のときは、このピークのサンプリング時刻を心拍時刻とするステップを含むことを特徴とする心拍検出方法。
【請求項５】
生体の心電図波形のサンプリングデータ列からサンプリングデータの時間差分値をサンプリング時刻ごとに算出するように構成された時間差分値算出部と、
この時間差分値算出部が算出した時間差分値を基に、心拍検出のための指標値を算出するように構成された指標値算出部と、
現在の閾値を超える前記指標値のピークを検出できたかどうかを判定し、所定個数以上のピークを連続して検出できた場合に、これらのピークのうち最新の所定個数のピークの平均値に基づいて閾値の候補を算出し、この閾値の候補が、生体の心電図波形の時間差分値として尤もらしいと言える差分限界値に基づく閾値限界値を上回るときは閾値を更新せず、前記閾値の候補が前記閾値限界値以下のときは前記閾値の候補を新たな閾値とするように構成された閾値設定部と、
前記閾値を超える前記指標値のピークを検出したときに、このピークのサンプリング時刻を心拍時刻とするように構成された心拍時刻決定部とを備え、
前記指標値算出部は、指標算出対象の時点よりも前の一定の時間領域の時間差分値および指標算出対象の時点よりも後の一定の時間領域の時間差分値のうちの最小値を、指標算出対象の時点の時間差分値から引いた減算結果の正負を反転させた値を前記指標値として、この指標値をサンプリング時刻ごとに算出することを特徴とする心拍検出装置。
【請求項６】
請求項５記載の心拍検出装置において、
前記閾値設定部は、前記閾値を更新する際に、前記閾値の候補をそのまま新たな閾値とする代わりに、現在の閾値と前記閾値の候補との平均化された値を新たな閾値とすることを特徴とする心拍検出装置。
【請求項７】
請求項５または６記載の心拍検出装置において、
前記心拍時刻決定部は、前記閾値を超える前記指標値のピークを検出したときに、このピークの値を、指標値として尤もらしいと言える指標限界値と比較し、ピーク値が指標限界値を上回るときは、ピークを心拍として検出せず、ピーク値が指標限界値以下のときは、このピークのサンプリング時刻を心拍時刻とすることを特徴とする心拍検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、心電図波形から心拍間隔（Ｒ−Ｒ間隔）などの生体情報を抽出するための技術に係り、特に心電図波形をリアルタイムに取得しながら心拍を検出するための心拍検出方法および心拍検出装置に関するものである。
【背景技術】
【０００２】
ＥＣＧ（Electrocardiogram、心電図）波形を計測できるデバイスを体に装着して心拍を測定することは、スポーツ時においては負荷強度のコントロール、また日常時においては自律神経機能の評価などに活用でき、有用である。昨今では、シャツに電極を仕込んだタイプのデバイスが開発され、さまざまなシーンでの心拍モニタリングが手軽に行われるようになっている。【０００３】
ＥＣＧ波形から心拍（Ｒ波）を検出する方法としては、時系列におけるピークを検出する方法が簡便である。すなわち、ＥＣＧ波形のサンプリングデータの時系列に対して、ある閾値を設定し、サンプリングデータが閾値を超えたことをもってＲ波を検出する。【０００４】
また、ＥＣＧ波形そのものではなく、ＥＣＧ波形を時間差分したデータ列に基づいてＲ波検出を行うと、（I）基線の搖動がキャンセルされる、（II）個人差等によりＲ波よりもＳ波が大きい場合にもピークを検出することができる、といった利点がある。
さらに、Ｑ波、Ｒ波、Ｓ波由来のピークの幅は個人差がなくほぼ一定であることに着目して、ピーク前後のクリアランスを考慮した指標を算出し、その指標の時系列を用いると、より精度良くＲ波の検出を行うことができる。【０００５】
閾値を使ったＲ波検出を行う場合、例えば、初めの２秒間のデータ列の最大値を基に閾値を設定し、その後は５拍毎のピーク値の平均値を基に閾値を更新する、といった方法が提案されている（例えば非特許文献１参照）。この方法によれば、信号レベルのトレンドを閾値に反映させることができる。【０００６】
しかしながら、ＥＣＧ波形を取得する際、波形にノイズが加わることがある。特に、被験者の身体に装着する、ウエアラブルなデバイスでは、ＥＣＧ波形の乱れが起こり易い。特に、電極の浮き等により、人の心電位に由来するものとしてはあり得ないような、非常に大きな振幅のノイズがＥＣＧ波形に混入してしまうことがある。このような大きなノイズが加わった場合、その影響により閾値が跳ね上がってしまい、その後のＲ波が検出されなくなる場合がある。
これに対して、特許文献１には、ＥＣＧ波形のノイズを考慮して閾値を最適化する構成が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平０７−０６７８４４号公報
【非特許文献】
【０００８】
【非特許文献１】“ECG Implementation on the TMS320C5515 DSP Medical Development Kit (MDK) with the ADS1298 ECG-FE”，Texas Instruments Incorporated，＜http://www.ti.com/lit/an/sprabj1/sprabj1.pdf＞，2011
【発明の概要】
【発明が解決しようとする課題】
【０００９】
以上のように、従来の心拍検出方法では、ＥＣＧ波形に大きなノイズが加わった場合に、その影響により閾値が跳ね上がってしまい、その後のＲ波が検出されなくなる場合があった。これに対して、特許文献１には、閾値を最適化する構成が開示されている。【００１０】
しかしながら、特許文献１では、閾値レベルが妥当なレベルか否かを判定するための検出結果情報についての詳細が開示されておらず、大きなノイズの混入により閾値が跳ね上がってしまった場合に閾値を最適化できない可能性があった。【００１１】
本発明は、上記課題を解決するためになされたもので、心電図波形にノイズが重畳していても適切に心拍を検出することができる心拍検出方法および心拍検出装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の心拍検出方法は、生体の心電図波形のサンプリングデータ列からサンプリングデータの時間差分値をサンプリング時刻ごとに算出する第１のステップと、この第１のステップで算出した時間差分値を基に、心拍検出のための指標値を算出する第２のステップと、現在の閾値を超える前記指標値のピークを検出できたかどうかを判定し、所定個数以上のピークを連続して検出できた場合に、これらのピークのうち最新の所定個数のピークの平均値に基づいて閾値の候補を算出する第３のステップと、この第３のステップで算出した閾値の候補を、生体の心電図波形の時間差分値として尤もらしいと言える差分限界値に基づく閾値限界値と比較し、前記閾値の候補が前記閾値限界値を上回るときは閾値を更新せず、前記閾値の候補が前記閾値限界値以下のときは前記閾値の候補を新たな閾値とする第４のステップと、前記閾値を超える前記指標値のピークを検出したときに、このピークのサンプリング時刻を心拍時刻とする第５のステップとを含み、前記第２のステップは、指標算出対象の時点よりも前の一定の時間領域の時間差分値および指標算出対象の時点よりも後の一定の時間領域の時間差分値のうちの最小値を、指標算出対象の時点の時間差分値から引いた減算結果の正負を反転させた値を前記指標値として、この指標値をサンプリング時刻ごとに算出するステップを含むことを特徴とするものである。
【００１３】
また、本発明の心拍検出装置は、生体の心電図波形のサンプリングデータ列からサンプリングデータの時間差分値をサンプリング時刻ごとに算出するように構成された時間差分値算出部と、この時間差分値算出部が算出した時間差分値を基に、心拍検出のための指標値を算出するように構成された指標値算出部と、現在の閾値を超える前記指標値のピークを検出できたかどうかを判定し、所定個数以上のピークを連続して検出できた場合に、これらのピークのうち最新の所定個数のピークの平均値に基づいて閾値の候補を算出し、この閾値の候補が、生体の心電図波形の時間差分値として尤もらしいと言える差分限界値に基づく閾値限界値を上回るときは閾値を更新せず、前記閾値の候補が前記閾値限界値以下のときは前記閾値の候補を新たな閾値とするように構成された閾値設定部と、前記閾値を超える前記指標値のピークを検出したときに、このピークのサンプリング時刻を心拍時刻とするように構成された心拍時刻決定部とを備え、前記指標値算出部は、指標算出対象の時点よりも前の一定の時間領域の時間差分値および指標算出対象の時点よりも後の一定の時間領域の時間差分値のうちの最小値を、指標算出対象の時点の時間差分値から引いた減算結果の正負を反転させた値を前記指標値として、この指標値をサンプリング時刻ごとに算出することを特徴とするものである。
【発明の効果】
【００１４】
本発明によれば、生体の心電図波形のサンプリングデータ列から時間差分値を算出し、時間差分値を基に、心拍検出のための指標値を算出し、現在の閾値を超える指標値のピークのうち最新の所定個数のピークの平均値に基づいて閾値の候補を算出し、閾値の候補を、生体の心電図波形の時間差分値として尤もらしいと言える差分限界値に基づく閾値限界値と比較して、閾値の候補が閾値限界値を上回るときは閾値を更新せず、閾値の候補が閾値限界値以下のときは閾値の候補を新たな閾値とするようにしたので、心電図波形に大きなノイズが混入した場合にも心拍検出のための閾値が跳ね上がることを防ぐことができる。その結果、本発明では、心電図波形にノイズが重畳していても適切に心拍を検出することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の第１の実施例に係る心拍検出装置の構成を示すブロック図である。
【図２】図２は、本発明の第１の実施例に係る心拍検出方法を説明するフローチャートである。
【図３】図３は、心電図波形の例を示す図である。
【図４】図４は、図３の心電図波形の時間差分値を示す図である。
【図５】図５は、図４に示した心電図波形の時間差分値から算出した指標値を示す図である。
【図６】図６は、本発明の第１の実施例に係る心拍検出装置の閾値設定手段の動作の詳細を説明するフローチャートである。
【図７】図７は、図５を拡大した図である。
【図８】図８は、本発明の第１の実施例に係る心拍検出方法の結果を示す図である。
【図９】図９は、本発明の第２の実施例に係る心拍検出装置の構成を示すブロック図である。
【図１０】図１０は、心電図波形の別の例を示す図である。
【図１１】図１１は、図１０に示した心電図波形から算出した指標値を示す図である。
【図１２】図１２は、図１１を拡大した図である。
【図１３】図１３は、本発明の第２の実施例に係る心拍検出方法の結果を示す図である。
【図１４】図１４は、本発明の第３の実施例に係る心拍検出装置の構成を示すブロック図である。
【図１５】図１５は、本発明の第３の実施例に係る心拍検出方法を説明するフローチャートである。
【図１６】図１６は、本発明の第３の実施例に係る心拍検出方法の結果を示す図である。
【図１７】図１７は、本発明の第１〜第３の実施例に係る心拍検出装置を実現するコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
［第１の実施例］
以下、本発明の実施例について図面を参照して説明する。図１は本発明の第１の実施例に係る心拍検出装置の構成を示すブロック図、図２は本発明の第１の実施例に係る心拍検出方法を説明するフローチャートである。心拍検出装置は、ＥＣＧ波形のサンプリングデータ列を出力する心電計１と、ＥＣＧ波形のサンプリングデータ列とサンプリング時刻の情報とを記憶する記憶部２と、ＥＣＧ波形のサンプリングデータ列からサンプリングデータの時間差分値をサンプリング時刻ごとに算出する時間差分値算出部３と、時間差分値算出部３が算出した時間差分値を基に、心拍検出のための指標値を算出する指標値算出部４と、指標値と比較する閾値を設定する閾値設定部５と、閾値を超える指標値のピークを検出したときに、このピークのサンプリング時刻を心拍時刻とする心拍時刻決定部６とを備えている。
【００１７】
以下、本実施例の心拍検出方法を説明する。本実施例では、ＥＣＧ波形をサンプリングしたデータ列をｘ（ｎ）とする。ｎ（ｎ＝１，２，…）は１サンプリングのデータに付与される番号である。番号ｎが大きくなる程、サンプリング時刻が後になることは言うまでもない。
【００１８】
心電計１は、図示しない生体（人体）のＥＣＧ波形を測定し、ＥＣＧ波形のサンプリングデータ列ｘ（ｎ）を出力する。このとき、心電計１は、各サンプリングデータにサンプリング時刻の情報を付加して出力する。なお、ＥＣＧ波形の具体的な測定方法は周知の技術であるので、詳細な説明は省略する。
記憶部２は、心電計１から出力されたＥＣＧ波形のサンプリングデータ列ｘ（ｎ）とサンプリング時刻の情報とを記憶する。
【００１９】
時間差分値算出部３は、サンプリングデータｘ（ｎ）の時間差分値ｙ（ｎ）を算出するため、サンプリングデータｘ（ｎ）の１サンプリング後のデータｘ（ｎ＋１）と１サンプリング前のデータｘ（ｎ−１）とを記憶部２から取得する（図２ステップＳ１）。そして、時間差分値算出部３は、サンプリングデータｘ（ｎ）の時間差分値ｙ（ｎ）を次式のようにサンプリング時刻ごとに算出する（図２ステップＳ２）。
ｙ（ｎ）＝ｘ（ｎ＋１）−ｘ（ｎ−１）        ・・・（１）
【００２０】
図３はＥＣＧ波形の例を示す図であり、図中の「Ｒ」は心拍として検出されるべきＲ波を示している。図３の横軸は時間、縦軸は心電位［μＶ］である。図３の例では、「Ｎ」の位置で大きく波形が乱れている。人のＥＣＧ波形においては、Ｑ波、Ｒ波、Ｓ波の振幅は、誘導にもよるが、大きくとも２５００〜３０００μＶ程度であり、例えば、３．６ｍＶ（心電図記録紙上で３６mm）を超えるものは異常とみなされる（文献「山澤著，“よくわかる心電図  十二誘導心電図から心臓病を解き明かす”，エルゼビア・ジャパン、２００３年」参照）。「Ｎ」の位置の波形の乱れは、＋２００００〜−１５，０００μＶもの振幅があり、心電位によるものではなく、ノイズであることは明らかである。
【００２１】
図４は、図３のＥＣＧ波形の時間差分値ｙを示す図であり、横軸は時間、縦軸は心電位の差分値［μＶ］である。図３、図４におけるサンプリング周期は５ｍｓである。ＥＣＧ波形の時間差分をとることで、図４中の「Ｒ」の位置に、Ｒ波〜Ｓ波の急峻な心電位の低下に伴う下向きのピークが、心拍のリズムに沿って出現しているのが見て取れる。また、「Ｎ」で示す位置には、ノイズに由来するピークも現れている。
【００２２】
指標値算出部４は、時間差分値算出部３が算出した時間差分値ｙを基に、心拍検出のための指標値を算出する（図２ステップＳ３）。具体的には、指標値算出部４は、算出対象の時点Ｔよりも前の一定の時間領域（Ｔ−Δｔ２）〜（Ｔ−Δｔ１）の時間差分値ｙおよび算出対象の時点Ｔよりも後の一定の時間領域（Ｔ＋Δｔ１）〜（Ｔ＋Δｔ２）の時間差分値ｙのうちの最小値を、算出対象の時点Ｔの時間差分値ｙから引いた減算結果の正負を反転させた値を指標値として、この指標値をサンプリング時刻ごとに算出する。
【００２３】
すなわち、算出対象の時点Ｔにおける時間差分値をｙＴ、算出対象の時点Ｔよりも前の一定の時間領域の時間差分値および算出対象の時点Ｔよりも後の一定の時間領域の時間差分値のうちの最小値をｙｍｉｎとすると、算出対象の時点Ｔにおける指標値Ｉは次式のようになる。
Ｉ＝−（ｙＴ−ｙｍｉｎ）                          ・・・（２）
【００２４】
本実施例では、Δｔ２＞Δｔ１であり、Δｔ１＝２５ｍｓ、Δｔ２＝１５０ｍｓとしている。なお、減算結果の正負を反転させる理由は、Ｒ波由来のピークが正の値になるようにするためである。
【００２５】
図５は、図４に示したＥＣＧ波形の時間差分値から算出した指標値Ｉを示す図である。図３、図４と同じく、縦軸の単位は電位［μＶ］である。指標値Ｉは、Ｒ波由来のピークに対して、その周辺の時間領域の時間差分値のクリアランスの高さを表しており、Ｒ波由来のピークが強調されるようになっている。したがって、指標値Ｉのデータ列に、閾値を使ったピーク探索を適用することで、Ｒ波を検出することができる。ただし、「Ｎ」で示すノイズ由来のピークも、同様に強調されてしまっており、その値は約２００００μＶになっている。したがって、以下のように閾値設定部５で閾値を設定する際にノイズ由来のピークに注意する必要がある。
【００２６】
図６は、閾値設定部５の動作（図２ステップＳ４）の詳細を説明するフローチャートである。まず、閾値設定部５は、閾値の初期設定期間の場合（図６ステップＳ１０においてｙｅｓ）、この初期設定期間の指標値Ｉのデータを用いて、その最大値Ｉｍａｘを求め、その最大値Ｉｍａｘに所定の係数α（例えばα＝０．４）を乗じた値を初期の閾値Ｔｈとする（図６ステップＳ１１）。
Ｔｈ＝α×Ｉｍａｘ                                ・・・（３）
【００２７】
なお、初期設定期間とは、心拍の計測開始時点から２秒間の期間、あるいは後述のようにピーク探索の動作がリセットされた時点から２秒間の期間のことを言う。
次に、閾値設定部５は、現在の閾値Ｔｈを超える指標値Ｉのピークを検出できたかどうかを判定し（図６ステップＳ１２）、所定個数Ｖ（本実施例ではＶ＝５個）以上のピークを連続して検出できた場合には（図６ステップＳ１３においてｙｅｓ）、これらのピークのうち最新の所定個数Ｖのピークの平均値Ｉａｖｅを求め、この平均値Ｉａｖｅに所定の係数β（例えばβ＝０．４）を乗じた値を閾値の候補Ｔｈｃとする（図６ステップＳ１４）。
Ｔｈｃ＝β×Ｉａｖｅ                              ・・・（４）
【００２８】
閾値設定部５は、算出した閾値の候補Ｔｈｃを、人のＥＣＧ波形の時間差分値として尤もらしいと言える差分限界値と現在の閾値Ｔｈとに基づく閾値限界値Ｌと比較し、閾値の候補Ｔｈｃが閾値限界値Ｌを上回るときは閾値Ｔｈを更新せず（図６ステップＳ１５においてｙｅｓ）、閾値の候補Ｔｈｃが閾値限界値Ｌ以下のときは（ステップＳ１５においてｎｏ）、候補Ｔｈｃを新たな閾値Ｔｈとする（図６ステップＳ１６）。閾値限界値Ｌについては後述する。
【００２９】
閾値設定部５は以上のような処理をサンプリング時刻ごとに行う。閾値Ｔｈを超える指標値Ｉのピークが継続して検出される場合には、ステップＳ１４の処理が繰り返し実行されることにより、閾値の候補Ｔｈｃが逐次算出され、閾値の候補Ｔｈｃが閾値限界値Ｌ以下であれば、閾値Ｔｈが更新されることになる。
【００３０】
ここで、閾値設定部５は、閾値Ｔｈを初期設定した後または閾値Ｔｈを更新した後に、閾値Ｔｈを超える指標値Ｉのピークを３秒間検出できなかった場合（図６ステップＳ１７においてｙｅｓ）、ピーク探索の動作をリセットし、初期設定期間に戻して閾値Ｔｈの設定をやり直す（図６ステップＳ１８）。
【００３１】
次に、心拍時刻決定部６は、閾値Ｔｈを超える指標値Ｉのピークを検出したとき（図２ステップＳ５においてｙｅｓ）、このピークのサンプリング時刻を心拍時刻とする（図２ステップＳ６）。サンプリング時刻の情報は記憶部２から取得することが可能である。
こうして、ステップＳ１〜Ｓ６の処理をサンプリング時刻ごとに繰り返すことで、心拍時刻の時系列データが得られる。
【００３２】
図７は、図５の、縦軸が０〜３０００μＶの範囲を拡大して表示したものである。破線で示すラインは、その時刻に設定されている閾値Ｔｈを表している。ただし、ここでの閾値Ｔｈは、図６で説明した閾値設定部５の処理のうち、ステップＳ１５，Ｓ１６の処理を実施せずに、閾値の候補Ｔｈｃをそのまま新たな閾値Ｔｈとする場合の値を示している。○印７０は、図７で示す閾値Ｔｈを基に心拍時刻決定部６が決定した心拍時刻から計算されるＲ−Ｒ間隔［ｍｓ］を示している。なお、図７のグラフは連続するデータ列の一部を切り出して表示したものであり、Ｒ波検出自体は、このグラフに示されている時刻よりも以前から実行されている。
【００３３】
図７の例では、時刻ｔ１において指標値ＩのＲ波由来のピークが閾値Ｔｈを超えた後、時刻ｔ２において指標値Ｉのノイズ由来のピークが閾値Ｔｈを超え、このピークが心拍と認識されたためＲ−Ｒ間隔の値が出力されているが、このときのＲ−Ｒ間隔（時刻ｔ１とｔ２の間隔）の値は６００ｍｓ程度であり、本来のものよりも小さい値になってしまっている。その後、時刻ｔ３において指標値ＩのＲ波由来のピークが閾値Ｔｈを超えているが、時刻ｔ２のピークを心拍として検出してしまったために、このときのＲ−Ｒ間隔（時刻ｔ２とｔ３の間隔）の値もまた小さくなってしまっている。
【００３４】
また、閾値設定部５の処理により、時刻ｔ４において閾値Ｔｈの更新が行われているが、指標値Ｉのノイズ由来のピークの値が取り込まれているために、閾値Ｔｈが、４４８μＶから２０７５μＶへと跳ね上がっている。閾値Ｔｈが跳ね上がってしまったために、その後に続く時刻ｔ５，ｔ６，ｔ７，ｔ９，ｔ１０のＲ波由来のピークは、閾値Ｔｈを下回り、心拍として検出されなくなってしまう。
【００３５】
そして、閾値Ｔｈを更新した後に、閾値Ｔｈを超える指標値Ｉのピークを３秒間検出できなかったため、時刻ｔ８において閾値設定部５がピーク探索の動作をリセットし、さらにその後２秒間は初期閾値設定に費やされる。時刻ｔ１１において新たな閾値Ｔｈが設定され、時刻ｔ１２において指標値ＩのＲ波由来のピークが閾値Ｔｈを超え、このピークが心拍として検出される。続いて、時刻ｔ１３において指標値ＩのＲ波由来のピークが心拍として検出され、Ｒ−Ｒ間隔の値が出力される。この時刻ｔ１３でようやく、Ｒ−Ｒ間隔の値が１０００ｍｓ付近の正常な値に戻っている。つまり、図７の例では、大きなノイズの混入のために、心拍検出が５秒間以上にわたって機能しなくなるという事態に陥っている。
【００３６】
ここで、人のＥＣＧ波形の時間差分は最大どれくらいになるのか、逆に言うと、どれくらいの値であれば人のＥＣＧ波形の時間差分として尤もらしくないか、について考える。ＱＲＳ間隔（Ｑ波の始まりからＳ波の終りまで）は、０．０６〜０．１ｓである（文献「山澤著，“よくわかる心電図  十二誘導心電図から心臓病を解き明かす”，エルゼビア・ジャパン、２００３年」参照）。
【００３７】
Ｒ波の最高値からＳ波の最低値までの時間は、ＱＲＳ間隔の１／４として、１５〜２５ｍｓ程度と考えることができる。さらに、Ｒ波の最高値からＳ波の最低値の中でも、その中央付近が最も急峻に変化する。その時間範囲を、Ｒ波の最高値からＳ波の最低値までの概ね半分とすると、７．５〜１２．５ｍｓ程度と見積もれる。この時間内に、仮にＱＲＳ振幅に相当する心電位の変化があるとすると、その心電位の変化率は、最大で３５０μＶ／ｍｓ程度になると考えられる。この心電位の変化率を式（１）で求められる時間差分値に直すと、サンプリング間隔が１ｍｓの場合は７００μＶとなり、さらに余裕をみて１０００μＶと大きく丸める。
【００３８】
以上から、サンプリング間隔が１ｍｓの場合、時間差分値が１０００μＶを超えるものは、人のＥＣＧ波形の時間差分として尤もらしくないと言える。この目安は、サンプリング間隔が５ｍｓの場合には、５０００μＶとなる。すなわち、サンプリング間隔をｄＴとすれば、人のＥＣＧ波形の時間差分値として尤もらしいと言える差分限界値Ｘは以下のように表現できる。
Ｘ＝ｄＴ［ｍｓ］×１０００［μＶ］                ・・・（５）
【００３９】
前述のとおり、図５に示した指標値Ｉは、Ｒ波由来のピークに対して、その周辺の時間領域の時間差分値のクリアランスの高さを表しており、ＥＣＧ波形の時間差分値に大きなノイズが含まれていて、そのノイズが鋭い単峰性のピークを呈するときには、最悪の場合そのままの値が指標値Ｉに反映される。
【００４０】
現在の閾値Ｔｈを超える所定個数Ｖ（本実施例ではＶ＝５個）のピークの平均値Ｉａｖｅに係数β＝０．４を乗じた値を新たな閾値Ｔｈ’とする場合、標準的な指標値Ｉのピーク値をｐとすると、正常時の更新後の閾値Ｔｈ’は、およそＴｈ’＝ｐ×β＝ｐ×０．４となる。ピーク値がＸの異常ノイズが１回発生したとすると、次の閾値Ｔｈ’は、（Ｘ−ｐ）÷５×０．４＝０．０８Ｘ−０．２Ｔｈ分上昇する。Ｘ＝５０００μＶであれば、４００−０．２Ｔｈ［μＶ］となる。つまり、サンプリング間隔が５ｍｓの場合、現在の閾値Ｔｈに対する次の閾値Ｔｈ’の上げ幅が４００−０．２Ｔｈ［μＶ］を上回るときは、ノイズの影響を受けている蓋然性が高い。
【００４１】
そこで、本実施例においては、現在の閾値Ｔｈに対して、ステップＳ１４で算出する閾値の候補Ｔｈｃが閾値限界値Ｌ＝４００＋０．８Ｔｈ［μＶ］（＝Ｔｈ＋４００−０．２Ｔｈ）を上回るときは（ステップＳ１５においてｙｅｓ）、閾値Ｔｈを更新しないようにすればよい。なお、閾値限界値Ｌの一般式は以下のようになる。
Ｌ＝Ｔｈ＋（β／Ｖ）Ｘ−（１／Ｖ）Ｔｈ            ・・・（６）
【００４２】
図８は、図５の、縦軸が０〜３０００μＶの範囲を拡大して表示したものであるが、図７の場合と異なり、図６で説明したステップＳ１５，Ｓ１６の処理を実施するようにした結果を示している。○印８０は、図８で示す閾値Ｔｈを基に心拍時刻決定部６が決定した心拍時刻から計算されるＲ−Ｒ間隔［ｍｓ］を示している。
【００４３】
時刻ｔ１時点での閾値Ｔｈは４４８μＶである。時刻ｔ１において指標値ＩのＲ波由来のピークが閾値Ｔｈを超えた後、時刻ｔ２において指標値Ｉのノイズ由来のピークが閾値Ｔｈを超えるため、このピークの値に基づいて閾値の候補Ｔｈｃ＝２０７５μＶが算出される。このとき、閾値限界値Ｌ＝４００＋０．８Ｔｈ＝７５８．４μＶとなる。閾値の候補Ｔｈｃ＝２０７５μＶが閾値限界値Ｌを上回るため、ステップＳ１５の処理により閾値Ｔｈの更新は行われず、これまでの閾値Ｔｈ＝４４８μＶが継続して用いられる。その結果、本実施例によれば、図７の場合と異なり、時刻ｔ５，ｔ６，ｔ７，ｔ９，ｔ１０のＲ波由来のピークが適切に検出されていることが分かる。
【００４４】
以上のように、本実施例では、ＥＣＧ波形にノイズが重畳していても適切に心拍を検出することができる。
【００４５】
［第２の実施例］
次に、本発明の第２の実施例について説明する。図９は本発明の第２の実施例に係る心拍検出装置の構成を示すブロック図であり、図１と同一の構成には同一の符号を付してある。本実施例の心拍検出装置は、心電計１と、記憶部２と、時間差分値算出部３と、指標値算出部４と、閾値設定部５ａと、心拍時刻決定部６とを備えている。
【００４６】
本実施例と第１の実施例との違いは閾値設定部５ａの動作なので、閾値設定部５ａの動作について図６を参照して説明する。図６のステップＳ１０〜Ｓ１５，Ｓ１７，Ｓ１８の処理は、第１の実施例の閾値設定部５と同じである。
【００４７】
本実施例の閾値設定部５ａは、ステップＳ１６において閾値Ｔｈを更新する際に、現在の閾値Ｔｈ（ｉ−１）とステップＳ１４で算出した閾値の候補Ｔｈｃ（ｉ）との平均化された値を用いるようにする。つまり、更新後の閾値をＴｈ（ｉ）とすると、閾値設定部５ａは、次式により閾値Ｔｈ（ｉ）を算出する。
Ｔｈ（ｉ）＝ｒ×Ｔｈｃ（ｉ）＋（１−ｒ）×Ｔｈ（ｉ−１）・・・（７）
【００４８】
式（７）におけるｒは所定の係数（例えばｒ＝０．１）である。こうして、閾値Ｔｈを更新する際に、現在の閾値Ｔｈと閾値の候補Ｔｈｃとの平均化を行うことにより、閾値Ｔｈの急激な変動を抑えることができ、安定化させることができる。その他の構成は第１の実施例で説明したとおりである。
【００４９】
図１０はＥＣＧ波形の別の例を示す図である。図３と同様に、図中の「Ｒ」は心拍として検出されるべきＲ波を示している。図１０の例では、ＥＣＧ波形の基線が搖動しているのに加え、「Ｎ」の位置で大きく波形が乱れている。「Ｎ」の位置の電位は８０００μＶに達し、この波形の乱れが心電位によるものではなく、ノイズであることは明らかである。
【００５０】
図１１は、図１０に示したＥＣＧ波形から第１の実施例と同様に算出した指標値Ｉを示す図である。図５の場合と同様に、「Ｎ」で示すノイズ由来のピークが強調されるために、このピークの値が約４０００μＶに達している。
【００５１】
図１２は、図１１の、縦軸が０〜３０００μＶの範囲を拡大して表示したものである。破線で示すラインは、その時刻に設定されている閾値Ｔｈを表している。ただし、ここでの閾値Ｔｈは、本実施例で説明した閾値設定部５ａの代わりに、第１の実施例の閾値設定部５を用いた場合の値を示している。○印１２０は、図１１で示す閾値Ｔｈを基に心拍時刻決定部６が決定した心拍時刻から計算されるＲ−Ｒ間隔［ｍｓ］を示している。なお、図１１のグラフは連続するデータ列の一部を切り出して表示したものであり、Ｒ波検出自体は、このグラフに示されている時刻よりも以前から実行されている。
【００５２】
図１２の例では、時刻ｔ２１において指標値Ｉのノイズ由来のピークが閾値Ｔｈを超えた後に、時刻ｔ２２において閾値Ｔｈが更新されるが、閾値の候補Ｔｈｃ＝５３１μＶが閾値限界値Ｌ＝４００＋０．８Ｔｈ＝５７８μＶ以下のために閾値の候補Ｔｈｃが閾値Ｔｈとしてそのまま採用され、閾値Ｔｈが２２２μＶから５３１μＶに上がっている。閾値の候補Ｔｈｃが閾値限界値Ｌを超えない理由は、図３、図５の場合よりもノイズ由来のピークの値が若干低いためである。閾値Ｔｈが上がってしまったために、その後に続く時刻ｔ２３，ｔ２４，ｔ２５，ｔ２６，ｔ２７のＲ波由来のピークは、閾値Ｔｈを下回り、心拍として検出されなくなってしまう。
【００５３】
図１３は、図１１の、縦軸が０〜３０００μＶの範囲を拡大して表示したものであるが、図１２の場合と異なり、本実施例の閾値設定部５ａを用いた結果を示している。○印１３０は、図１３で示す閾値Ｔｈを基に心拍時刻決定部６が決定した心拍時刻から計算されるＲ−Ｒ間隔［ｍｓ］を示している。
【００５４】
時刻ｔ２０時点での閾値Ｔｈは上記のとおり２２２μＶである。時刻ｔ２１において指標値Ｉのノイズ由来のピークが閾値Ｔｈを超えた後に、時刻ｔ２２において閾値Ｔｈが更新される際に、閾値の候補Ｔｈｃ＝５３１μＶは上記のとおり閾値限界値Ｌ＝５７８μＶ以下であるが、閾値設定部５ａが閾値Ｔｈ＝２２２μＶと閾値の候補Ｔｈｃ＝５３１μＶとの平均化された値を新たな閾値Ｔｈとするため、更新後の閾値Ｔｈは２５０μＶ程度となり、閾値Ｔｈの上昇が抑制される。その結果、本実施例によれば、図１２の場合と異なり、時刻ｔ２３，ｔ２４，ｔ２５，ｔ２６，ｔ２７のＲ波由来のピークが適切に検出されている。
【００５５】
以上のように、本実施例では、第１の実施例で排除できないようなノイズの影響を排除することができ、適切に心拍を検出することができる。
【００５６】
［第３の実施例］
次に、本発明の第３の実施例について説明する。図１４は本発明の第３の実施例に係る心拍検出装置の構成を示すブロック図であり、図１と同一の構成には同一の符号を付してある。本実施例の心拍検出装置は、心電計１と、記憶部２と、時間差分値算出部３と、指標値算出部４と、閾値設定部５と、心拍時刻決定部６ａとを備えている。
【００５７】
本実施例と第１の実施例との違いは心拍時刻決定部６ａの動作なので、心拍時刻決定部６ａの動作について説明する。図１５は本実施例の心拍検出方法を説明するフローチャートである。
本実施例の心拍時刻決定部６ａは、閾値Ｔｈを超える指標値Ｉのピークを検出したとき（図１５ステップＳ５においてｙｅｓ）、このピーク値を、指標値Ｉとして尤もらしいと言える指標限界値Ｚと比較し、ピーク値が指標限界値Ｚを上回るときは（図１５ステップＳ７においてｙｅｓ）、ピークを心拍として検出せず、ピーク値が指標限界値Ｚ以下のときは（ステップＳ７においてｎｏ）、このピークのサンプリング時刻を心拍時刻とする（図１５ステップＳ８）。人のＥＣＧ波形由来の指標値として尤もらしいと言える限界値Ｚは、例えば５０００μＶ（サンプリング間隔５ｍｓの場合）である。
【００５８】
図１６は本実施例の結果を示す図であり、図８と同様に、図５の縦軸が０〜３０００μＶの範囲を拡大して、閾値Ｔｈを重ねて表示したものである。○印１６０は、図１６で示す閾値Ｔｈを基に心拍時刻決定部６ａが決定した心拍時刻から計算されるＲ−Ｒ間隔［ｍｓ］を示している。
【００５９】
第１の実施例の図８の例では、時刻ｔ２において指標値Ｉのノイズ由来のピークが閾値Ｔｈを超え、このピークが心拍と認識されたためＲ−Ｒ間隔の値が出力されているが、このときのＲ−Ｒ間隔（時刻ｔ１とｔ２の間隔）の値は６００ｍｓ程度であり、本来のものよりも小さい値になってしまっている。
【００６０】
これに対して、本実施例では、閾値Ｔｈは第１の実施例と同じであるが、時刻ｔ２における指標値Ｉのピーク値が指標限界値Ｚを超えたために、心拍時刻決定部６ａは、このピークを心拍として検出しない。その結果、時刻ｔ３において検出される心拍から算出されるＲ−Ｒ間隔（時刻ｔ１とｔ３の間隔）は、１０００ｍｓ付近の正しい値となる。
【００６１】
こうして、本実施例では、第１の実施例と比較して、より適切に心拍を検出することができる。
なお、本実施例では、心拍時刻決定部６ａを第１の実施例に適用する場合で説明しているが、第２の実施例に適用してもよいことは言うまでもない。
【００６２】
第１〜第３の実施例で説明した記憶部２と時間差分値算出部３と指標値算出部４と閾値設定部５，５ａと心拍時刻決定部６，６ａとは、ＣＰＵ（Central Processing Unit）、記憶装置及びインタフェースを備えたコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することができる。このコンピュータの構成例を図１７に示す。コンピュータは、ＣＰＵ１００と、記憶装置１０１と、インターフェース装置（以下、Ｉ／Ｆと略する）１０２とを備えている。Ｉ／Ｆ１０２には、心電計１などが接続される。このようなコンピュータにおいて、本発明の心拍検出方法を実現させるためのプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリカードなどの記録媒体に記録された状態で提供され、記憶装置１０１に格納される。ＣＰＵ１００は、記憶装置１０１に格納されたプログラムに従って第１〜第３の実施例で説明した処理を実行する。
【産業上の利用可能性】
【００６３】
本発明は、生体の心拍を検出する技術に適用することができる。
【符号の説明】
【００６４】
１…心電計、２…記憶部、３…時間差分値算出部、４…指標値算出部、５，５ａ…閾値設定部、６，６ａ…心拍時刻決定部。
【図１】
0006652655.tif 000002
【図２】
0006652655.tif 000003
【図３】
0006652655.tif 000004
【図４】
0006652655.tif 000005
【図５】
0006652655.tif 000006
【図６】
0006652655.tif 000007
【図７】
0006652655.tif 000008
【図８】
0006652655.tif 000009
【図９】
0006652655.tif 000010
【図１０】
0006652655.tif 000011
【図１１】
0006652655.tif 000012
【図１２】
0006652655.tif 000013
【図１３】
0006652655.tif 000014
【図１４】
0006652655.tif 000015
【図１５】
0006652655.tif 000016
【図１６】
0006652655.tif 000017
【図１７】
0006652655.tif 000018