(57)【特許請求の範囲】
【請求項１】
脈波を計測した結果であって、脈動に応じた振幅値を持つ入力信号を受け付ける入力部と、
前記入力信号に含まれる振幅ピークの時間方向の間隔値につき間隔値毎の出現頻度を求めた第１のヒストグラムをスムージングして第２のヒストグラムを生成し、該第２のヒストグラムにおいて出現頻度が最大である間隔値を特定し、該特定した最大である間隔値に対応するフィルタを求め、該求めたフィルタで該第１のヒストグラムをスムージングして第３のヒストグラムを生成し、該第３のヒストグラムにおいて出現頻度が最大である第一の間隔値を決定し、該第一の間隔値に対応する脈拍数計算幅を決定する決定部と、
前記決定部により決定された前記第一の間隔値と、該第一の間隔値に対応する脈拍数計算幅とに基づいて、脈拍を算出する脈拍算出部と、
前記脈拍算出部により算出された脈拍数を出力する出力部と、
を有することを特徴とする脈拍計測装置。
【請求項２】
前記入力信号は、撮像手段が有する画像取得部に人体の一部を接触させた状態で取得された画像であって、
前記入力信号に含まれる振幅は、前記画像の輝度値の振幅であることを特徴とする請求項１に記載の脈拍計測装置。
【請求項３】
脈波を計測した結果であって、脈動に応じた振幅値を持つ入力信号を受け付ける入力手順と、
前記入力信号に含まれる振幅ピークの時間方向の間隔値につき間隔値毎の出現頻度を求めた第１のヒストグラムをスムージングして第２のヒストグラムを生成し、該第２のヒストグラムにおいて出現頻度が最大である間隔値を特定し、該特定した最大である間隔値に対応するフィルタを求め、該求めたフィルタで該第１のヒストグラムをスムージングして第３のヒストグラムを生成し、該第３のヒストグラムにおいて出現頻度が最大である第一の間隔値を決定し、該第一の間隔値に対応する脈拍数計算幅を決定する決定手順と、
前記決定手順により決定された前記第一の間隔値と、該第一の間隔値に対応する脈拍数計算幅とに基づいて、脈拍を算出する脈拍算出手順と、
前記脈拍算出手順により算出された脈拍数を出力する出力手順と、
をコンピュータに実行させることを特徴とする脈拍計測プログラム。
【請求項４】
脈波を計測した結果であって、脈動に応じた振幅値を持つ入力信号を受け付ける入力工程と、
前記入力信号に含まれる振幅ピークの時間方向の間隔値につき間隔値毎の出現頻度を求めた第１のヒストグラムをスムージングして第２のヒストグラムを生成し、該第２のヒストグラムにおいて出現頻度が最大である間隔値を特定し、該特定した最大である間隔値に対応するフィルタを求め、該求めたフィルタで該第１のヒストグラムをスムージングして第３のヒストグラムを生成し、該第３のヒストグラムにおいて出現頻度が最大である第一の間隔値を決定し、該第一の間隔値に対応する脈拍数計算幅を決定する決定工程と、
前記決定工程により決定された前記第一の間隔値と、該第一の間隔値に対応する脈拍数計算幅とに基づいて、脈拍を算出する脈拍算出工程と、
前記脈拍算出工程により算出された脈拍数を出力する出力工程と、
を含んだことを特徴とする脈拍計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、脈拍計測装置、脈拍計測プログラムおよび脈拍計測方法に関する。
【背景技術】
【０００２】
近年、健康管理のための器具に興味を持つ人が増えており、体脂肪計や脈波計だけでなく、簡易に心電を計測できる心電計測器など、個人で所有できる様々な健康管理器具が増えている。例えば、脈波計としては、指や耳たぶなどに挟んで計測するクリップ式のセンサなどがある。
【０００３】
また、脈拍を測定する一般的な医療機器として血圧計（血圧と脈拍とを測定可能）がある。血圧計の技術としては、被測定者が体を動かしたり呼吸をしたりする際に発生するノイズによって、血圧測定誤差が生じ易くなっている場合に、当該血圧測定誤差が生じ易くなっていることを被測定者に認識させる振動法による電子血圧計が開示されている（特許文献１参照）。
【０００４】
【特許文献１】特開平１−１９０３３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来技術では、高精度に安定して脈拍を計測することができないという課題があった。具体的には、上記従来技術は、ノイズが検出された場合に、当該ノイズが検出されたことを被測定者に通知したり、再測定したりすることを目的としている。つまり、上記従来技術は、ノイズが検出されたとしても、当該ノイズを抑制することはなく、再測定する必要があるために、高精度に安定して脈拍を測定することができない。
【０００６】
また、指や耳たぶなどに挟んで計測するクリップ式のセンサや指を受光・発光素子部に押し当てるタイプなどの脈波計では、二峰性を有する波形（本来はピークが現れないはずの位置にノイズなどにより生じる小さなピークを含んだ波形）として検出されてしまう場合に、正確な脈拍を出力することが困難であった。なお、二峰性を有する波形が現れる場合としては、上記脈波計だけでなく、例えば、保護カバー付きカメラなどで指先の画像を取得する場合などがあり、指圧が高くなることによって二峰性を有する波形が現れる。
【０００７】
そこで、本発明は、上述した従来技術の課題を解決するためになされたものであり、高精度に安定して脈拍を計測することが可能である脈拍計測装置、脈拍計測プログラムおよび脈拍計測方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するため、本願の開示する脈拍計測装置は、脈波を計測した結果であって、脈動に応じた振幅値を持つ入力信号を受け付ける入力部と、前記入力信号に含まれる振幅ピークの時間方向の間隔値につき間隔値毎の出現頻度を求め、該出現頻度が最大である間隔値を特定し、該特定した最大である間隔値に基づいて、前記入力信号に含まれる振幅の時間方向の間隔値を特定し、該特定した間隔値に基づいて第一の間隔値を決定する決定部と、前記決定部により決定された前記第一の間隔値に基づいて、脈拍を算出する脈拍算出部と、前記脈拍算出部により算出された脈拍数を出力する出力部と、を有することを要件とする。
【発明の効果】
【０００９】
本願の開示する脈拍計測装置、脈拍計測プログラムおよび脈拍計測方法によれば、高精度に安定して脈拍を計測することが可能であるという効果を奏する。
【発明を実施するための最良の形態】
【００１０】
以下に添付図面を参照して、本発明に係る脈拍計測装置の実施例を詳細に説明する。
【実施例１】
【００１１】
［脈拍計測装置の概要］
最初に、実施例１に係る脈拍計測装置の概要を説明する。本願の開示する脈拍計測装置は、例えば、接続される装置によって計測された脈波に応じた信号に基づいて脈拍数を計測するものであり、特に、ノイズを含んだ入力信号である場合でも、高精度に安定して脈拍を計測することができる。
【００１２】
また、例えば、脈拍計測装置は、カメラなどの撮像手段と接続されており、当該撮像手段が有する画像取得部（例えば、レンズや、レンズを保護するためにレンズ外部に設けられている光透過性のある保護カバー部など）に、人体の一部（例えば、指など）を押し当てた状態で撮影された画像を入力信号とする。そして、このようにして取得された画像は、脈動に応じて輝度値が変化するため、当該輝度値の変動を時系列に記録することで、脈動に応じた振幅を持つ入力信号となり得る。
【００１３】
なお、利用されるデータは、脈波を捉えられるものであれば、輝度成分に限られるものではなく、例えば、ＲＧＢ（Red‐Green‐Blue）のＲ成分やＹＵＶ（輝度信号：Ｙ、輝度信号と青色成分との差：Ｕ、輝度信号と赤色成分との差：Ｖ）のＶ成分などでもよい。
【００１４】
上述した構成において、脈拍計測装置は、脈動に応じた振幅値を持つ脈波を計測した結果である入力信号を受け付ける。そして、脈拍計測装置は、入力信号に含まれる振幅ピークの時間方向の間隔値につき間隔値毎の出現頻度を求め、該出現頻度が最大である間隔値を特定し、該特定した最大である間隔値に基づいて、入力信号に含まれる振幅の時間方向の間隔値を特定し、該特定した間隔値に基づいて第一の間隔値を決定する。続いて、脈拍計測装置は、決定された第一の間隔値に基づいて、脈拍を算出する。その後、脈拍計測装置は、算出された脈拍数を出力する。
【００１５】
具体的には、脈拍計測装置は、接続される装置によって計測された脈波に応じた入力信号を受け付ける。そして、脈拍計測装置は、受け付けた入力信号に含まれる振幅ピーク値と振幅ピークの時間方向の間隔とに基づいて、ノイズとなる脈波ピークを除去し、除去できなかったノイズを含む脈波間隔から正常なデータを抽出する。
【００１６】
上述したように、脈拍計測装置は、ノイズを含んだ入力信号である場合でも、当該ノイズを除去する、および／または、正常なデータを抽出することができる結果、高精度に安定して脈拍を計測することが可能である。
【００１７】
［脈拍計測装置の構成］
次に、図１を用いて、実施例１に係る脈拍計測装置の構成を説明する。図１は、実施例１に係る脈拍計測装置の構成例を示す図である。
【００１８】
図１に示すように、脈拍計測装置１０は、出力部２０と、記憶部３０と、制御部４０とを有し、例えば、接続される装置によって計測された脈波に応じた信号に基づいて脈拍数を計測する。
【００１９】
出力部２０は、モニタ（若しくはディスプレイ、タッチパネルなど）やスピーカを有し、各種の情報を出力するとともに、特に、脈拍数表示部２１と、ファイル２２と、脈動表示部２３と、エラー表示部２４とを有する。例えば、出力部２０は、制御部４０による各種処理結果をユーザに表示・通知したり、制御部４０による各種処理から得られるデータをファイルとして出力したりする。
【００２０】
脈拍数表示部２１は、後述する脈拍数計算部４２ｂによって算出された脈拍数を表示する。また、ファイル２２は、後述する脈拍数計算部４２ｂによって算出された脈拍数のデータをファイルとして出力する。また、脈動表示部２３は、後述するピーク検出部４２ａによって検出された脈動を表示する。また、エラー表示部２４は、後述するピーク検出部４２ａによる検出エラーや後述するエラー判定部４２ｃによるエラー内容などを表示する。
【００２１】
記憶部３０は、制御部４０による各種処理に必要なデータや、制御部４０による各種処理結果を記憶するとともに、特に、輝度情報記憶部３１と、エラー情報記憶部３２と、ピーク情報記憶部３３とを有する。例えば、記憶部３０は、後述する画像処理部４１によって処理された画像一枚ごとの画像処理結果を記憶したり、後述する波形処理部４２によって処理された波形データやエラー情報などを記憶したりする。
【００２２】
輝度情報記憶部３１は、後述する画像処理部４１によって算出された入力画像の輝度情報を記憶する。また、エラー情報記憶部３２は、後述する画像処理部４１によって画像処理された際のエラー情報を記憶する。また、ピーク情報記憶部３３は、後述するピーク検出部４２ａによって検出された入力画像に基づいた脈波情報を記憶する。
【００２３】
制御部４０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するとともに、特に、画像処理部４１と、波形処理部４２とを有し、これらによって種々の処理を実行する。
【００２４】
画像処理部４１は、入力される画像一枚ごとに画像処理を実施する。例えば、画像処理部４１は、入力画像を受け付けて、受け付けた画像から輝度成分を抽出したり、受け付けた画像を縮小したりするなどして画像データを生成する。そして、画像処理部４１は、生成された画像データの輝度平均を算出して、輝度情報記憶部３１に格納する。
【００２５】
また、画像処理部４１は、生成された画像データのエッジ量の総和を算出したり、輝度分布の評価値を算出したり、重心位置の評価値を算出したりして、画像データの各特性から評価点を決定して、エラー情報記憶部３２に格納する。
【００２６】
波形処理部４２は、エラー情報や波形データなどを処理し、特に、ピーク検出部４２ａと、脈拍数計算部４２ｂと、エラー判定部４２ｃとを有する。
【００２７】
波形処理部４２に入力される波形は、例えば、図２−１に示すように、正常な極大と極小との間に小さな極大と極小が出現する二峰性を有するものも含まれる。なお、図２−１は、二峰性を持つ波形例を示す図であり、縦軸は輝度値、横軸は入力信号として取得した画像フレームのフレーム番号（即ち、横軸は時間方向を表す軸）を示している。例えば、横軸３６０付近で現れている小さなピークは、正常な極大と極小との間に現れた小さな極大と極小である。
【００２８】
ピーク検出部４２ａは、輝度情報記憶部３１に記憶された画像データの輝度情報から、当該画像データの波形におけるピークを検出する。例えば、ピーク検出部４２ａは、輝度情報記憶部３１に記憶された画像データの時系列の輝度情報から、極大値と極小値とを算出して、当該画像データの波形におけるピーク（ピーク間隔）を検出してピーク情報記憶部３３に格納したり、脈動表示部２３に出力したりする。
【００２９】
また、ピーク検出部４２ａは、二峰性を有する波形（図２−１参照）をスムージング処理して、図２−２に示すような波形を出力する。そして、ピーク検出部４２ａは、図２−２に示すようなスムージング処理後においても見られ、ノイズとなる二峰性を検出して、当該ノイズを除去する。なお、図２−２は、二峰性を持つ波形をスムージングした場合の波形例を示す図であり、縦軸、横軸は図２−１と同様に、輝度値とフレーム番号とを示している。例えば、図２−１の横軸３６０付近で現れている小さなピークは、スムージング後の図２−２でも小さなピークとして残っており、当該小さなピークがノイズとなるピークである。
【００３０】
脈拍数計算部４２ｂは、ピーク情報記憶部３３に記憶されたピーク間隔（ピーク間の時間方向の間隔）に基づいて、脈拍数を算出する。例えば、脈拍数計算部４２ｂは、ピーク情報記憶部３３に記憶されたピーク間隔のヒストグラム「Ｈ０」を作成する。そして、脈拍数計算部４２ｂは、作成されたヒストグラム「Ｈ０」をスムージングしてヒストグラム「Ｈ１」を作成する。
【００３１】
続いて、脈拍数計算部４２ｂは、ヒストグラム「Ｈ１」の最頻値「Ｍ１」を求めて、当該「Ｍ１」に対応するフィルタ「Ｆ１」を求める。その後、脈拍数計算部４２ｂは、ヒストグラム「Ｈ０」をフィルタ「Ｆ１」でスムージングしてヒストグラム「Ｈ２」を作成する。そして、脈拍数計算部４２ｂは、ヒストグラム「Ｈ２」の最頻値「Ｍ２」を求めて、当該「Ｍ２」に対応する脈拍数計算幅「Ｗ」を算出する。続いて、脈拍数計算部４２ｂは、ヒストグラム「Ｈ０」から脈拍数を算出して、脈拍数表示部２１やファイル２２などに出力する。
【００３２】
エラー判定部４２ｃは、エラー情報記憶部３２に記憶された輝度、エッジ量および重心のいずれか、または、複数が所定の状態であるかを判定する。例えば、エラー判定部４２ｃは、画像処理部４１によって算出された輝度、エッジ量および重心などの各特性と所定閾値とを比較して、入力画像に対して評価点を決定する。
【００３３】
［ピーク検出処理］
次に、図３〜図７を用いて、実施例１に係るピーク検出処理を説明する。まず、図３を用いて、実施例１に係るピーク検出処理の前処理を説明する。図３は、実施例１に係るピーク検出処理の前処理を示すフローチャートである。
【００３４】
（ピーク検出処理の前処理）
図３に示す「ｏｒｇＳｉｇ」は、生波形（オリジナル脈波）を表しており、既定の長さ「Ｎ１」の保存領域がある。また、「ｆｉｌｔＳｉｇ」は、フィルタリング後の脈波を現しており、既定の長さ「Ｍ」の保存領域がある。また、「ｆｉｌｔＣ」は、既定の長さ「Ｎ２」のフィルタ係数を表しており、Ｎ１≧Ｎ２である。
【００３５】
また、「ｄｉｆｆＳｉｇ」は、フィルタリング後の脈波の差分データを表しており、既定の長さ「Ｌ」の保存領域がある。また、Ｍ＞Ｋ２、Ｌ＞Ｋ２である。
【００３６】
さて、以降は、以下のデータ領域における添え字が「０」から開始されることとして説明するが、当該添え字の開始は「０」に限られるものではない。また、データは、添え字が小さい方を新しいデータとして記載するが、逆順であってもよい。
【００３７】
図３に示すように、ピーク検出部４２ａは、生波形「ｏｒｇＳｉｇ」と、フィルタリング後の脈波「ｆｉｌｔＳｉｇ」と、差分情報「ｄｉｆｆＳｉｇ」とを更新するために、データ列をシフトして最も古いデータを捨てる（ステップＳ１０１、ステップＳ１０３、ステップＳ１０５）。
【００３８】
そして、ピーク検出部４２ａは、画像処理部４１によって算出された輝度平均「ｍｅａｎＹ」を最新データとして「ｏｒｇＳｉｇ（０）」に保存する（ステップＳ１０２）。続いて、ピーク検出部４２ａは、生波形「ｏｒｇＳｉｇ」の最新データを含み、最近のＮ２個のデータと、フィルタ係数「ｆｉｌｔＣ」とから最新のフィルタリング後の脈波を計算して「ｆｉｌｔＳｉｇ（０）」に保存する（ステップＳ１０４）。
【００３９】
その後、ピーク検出部４２ａは、最新のフィルタリング後の脈波「ｆｉｌｔＳｉｇ（０）」と、当該最新のフィルタリング後の脈波「ｆｉｌｔＳｉｇ（０）」のＫ１個前のデータ「ｆｉｌｔＳｉｇ（Ｋ１）」との差分を最新の差分情報「ｄｉｆｆＳｉｇ（０）」に保存する（ステップＳ１０６）。なお、ピーク検出部４２ａによる前処理において実施されるフィルタリングは、スムージングするとともに、デトレンドすることが望ましい。
【００４０】
また、上記ピーク検出部４２ａによる前処理では、実際にデータをコピーしているように記載したが、リングバッファを用いることとしてもよい。また、生波形「ｏｒｇＳｉｇ」、フィルタリング後の脈波「ｆｉｌｔＳｉｇ」、差分情報「ｄｉｆｆＳｉｇ」の更新前のシフト処理は、最新データを保存する前であればどこにおいてもよい。
【００４１】
（ピーク検出処理）
次に、図４を用いてピーク検出処理を説明する。図４は、実施例１に係るピーク検出処理を示すフローチャートである。
【００４２】
図４に示すように、ピーク検出部４２ａは、上記前処理を実施して（ステップＳ２０１）、最新の差分情報「ｄｉｆｆＳｉｇ（０）」が０よりも大きい、および、Ｋ２個前の差分情報「ｄｉｆｆＳｉｇ（Ｋ２）」が０以下である場合に（ステップＳ２０２肯定）、極小値処理を実施する（ステップＳ２０５）。
【００４３】
また、ピーク検出部４２ａは、上記前処理を実施して（ステップＳ２０１）、最新の差分情報「ｄｉｆｆＳｉｇ（０）」が０よりも小さい、および、Ｋ２個前の差分情報「ｄｉｆｆＳｉｇ（Ｋ２）」が０以上である場合に（ステップＳ２０３肯定）、極大値処理を実施する（ステップＳ２０４）。
【００４４】
つまり、ピーク検出部４２ａは、最新の差分情報と既定個前の差分情報との符号から、極大または極小であるか否かの判定を行ない、極大値である場合に極大値処理、極小値である場合に極小値処理を実施する。
【００４５】
（極大値処理）
次に、図５を用いて極大値処理を説明する。図５は、実施例１に係る極大値処理を示すフローチャートである。
【００４６】
図５に示すように、ピーク検出部４２ａは、一つ前で検出された極小値と極大値との差の絶対値が規定値以上である場合に（ステップＳ３０１肯定）、当該極小値と極大値との間隔が規定値以上であるか否かを判定する（ステップＳ３０２）。そして、ピーク検出部４２ａは、極小値と極大値との間隔が規定値以上である場合に（ステップＳ３０２肯定）、検出された極大値情報が正しいとみなして極大値情報を更新する（ステップＳ３０３）。
【００４７】
（極小値処理）
次に、図６を用いて極小値処理を説明する。図６は、実施例１に係る極小値処理を示すフローチャートである。
【００４８】
図６に示すように、ピーク検出部４２ａは、一つ前で検出された極大値と極小値との差の絶対値が規定値以上である場合に（ステップＳ４０１肯定）、当該極大値と極小値との間隔が規定値以上であるか否かを判定する（ステップＳ４０２）。
【００４９】
そして、ピーク検出部４２ａは、極大値と極小値との間隔が規定値以上である場合に（ステップＳ４０２肯定）、前回の極大・極小間の振幅が期待する規定値倍以上であるか否かを判定する（ステップＳ４０３）。
【００５０】
続いて、ピーク検出部４２ａは、前回の極大・極小間の振幅が期待する規定値倍以下である場合に（ステップＳ４０３否定）、前回の極大・極小情報を削除して（ステップＳ４０４）、検出された極小値情報を正しいとみなして極小値情報を更新する（ステップＳ４０５）。
【００５１】
なお、ピーク検出部４２ａは、前回の極大・極小間の振幅が期待の規定倍以上である場合に（ステップＳ４０３肯定）、検出された極小値情報を正しいとみなして極小値情報を更新する（ステップＳ４０５）。
【００５２】
（極小値処理時の振幅計算処理）
次に、図７を用いて極小値処理時の振幅計算処理を説明する。図７は、実施例１に係る極小値処理時の振幅計算を説明するための図である。なお、図７においては、縦軸を輝度値、横軸を時間（横軸の数値は、フレーム番号を表す）とする。
【００５３】
図７に示すように、ピーク検出部４２ａは、前回の極大が現れた時間において、今回検出された極小と、前々回の極小とを結ぶ直線上での輝度平均を期待する前回の極小値とみなして処理する。また、ピーク検出部４２ａは、前回の極大が現れた時間において、今回検出された極大と前々回の極大とを結ぶ直線上での輝度平均を期待する前回の極大値とみなして処理する。
【００５４】
また、期待する振幅は、期待する極大値と期待する極小値との差とする。なお、期待する振幅は、前回の極小が現れた時間、若しくは、前回の極大が現れた時間ではなく、今回と前々回との極値をとった時間の中間としてもよい。
【００５５】
［脈拍数算出処理］
次に、図８を用いて、実施例１に係る脈拍数算出処理を説明する。図８は、実施例１に係る脈拍数算出処理を示すフローチャートである。
【００５６】
図８に示すように、脈拍数計算部４２ｂは、検出されたピーク間隔のデータ数が規定値以上である場合に（ステップＳ５０１肯定）、図９−１に示すようなピーク間隔のヒストグラム「Ｈ０」を作成する（ステップＳ５０２）。なお、図９−１は、実施例１に係る脈拍数算出処理時に利用されるピーク間隔のヒストグラムを示す図である。なお、図９−１に示すデータは、携帯端末に搭載されているカメラの画像を入力として、輝度平均を図３に示す「ｏｒｇＳｉｇ」としたものである。また、縦軸は、出現頻度数を表しており、横軸は、ピーク間隔（振幅の極大間若しくは極小間のいずれかまたは両方のフレーム数）を表している。
【００５７】
そして、脈拍数計算部４２ｂは、作成されたヒストグラム「Ｈ０」をスムージングして、図９−２に示すようなヒストグラム「Ｈ１」を作成する（ステップＳ５０３）。なお、図９−２は、実施例１に係る脈拍数算出処理時に利用されるスムージングしたピーク間隔のヒストグラムを示す図である。
【００５８】
続いて、脈拍数計算部４２ｂは、作成されたヒストグラム「Ｈ１」の最頻値「Ｍ１」を求めて（ステップＳ５０４）、当該最頻値「Ｍ１」に対応するフィルタ「Ｆ１」を求める（ステップＳ５０５）。その後、脈拍数計算部４２ｂは、作成されたヒストグラム「Ｈ０」をフィルタ「Ｆ１」でスムージングして、図９−３に示すようなヒストグラム「Ｈ２」を作成する（ステップＳ５０６）。なお、図９−３は、実施例１に係る脈拍数算出処理時に利用されるスムージングしたピーク間隔のヒストグラムを示す図である。
【００５９】
そして、脈拍数計算部４２ｂは、作成されたヒストグラム「Ｈ２」の最頻値「Ｍ２」を求めて（ステップＳ５０７）、当該最頻値「Ｍ２」に対応する脈拍数計算幅「Ｗ」を求め（ステップＳ５０８）、ヒストグラム「Ｈ０」から脈拍数を算出する（ステップＳ５０９）。
【００６０】
例えば、脈拍数計算部４２ａは、図９−３に示すヒストグラム「Ｈ２」において、「Ｍ２」が９、「Ｗ」が５と計算された結果を利用し、図９−１のヒストグラム「Ｈ０」から、「Ｍ２」の値であるピーク間隔フレーム数「９」を中心として、「Ｗ」の値である「５」個分のピーク間隔フレームに相当するピーク間隔フレーム数７〜１１の頻度値を参照し、頻度４、７、１２、１６、６を抽出する。
【００６１】
そして、脈拍数計算部４２ａは、例えば、フレームレートが１５ＦＰＳ（Frame  Per  Second）である場合に、脈拍数Ｒ＝６０×１５×（４＋７＋１２＋１６＋６）÷（４×７＋７×８＋１２×９＋１６×１０＋６×１１）＝「９７拍／分」を算出する。また、脈拍数算出に用いるデータ数は、下限値を設定することが望ましい。
【００６２】
なお、上記スムージング処理を複数回行う理由は、二峰性を有するノイズ部分（図２−１、図２−２参照）を除去するためであるのと、サンプリングの間隔が粗いことによりピーク位置がずれている可能性があるためである。
【００６３】
また、スムージングの幅は、例えば、ヒストグラム「Ｈ０」からヒストグラム「Ｈ１」の場合に「２」とし、ヒストグラム「Ｈ０」からヒストグラム「Ｈ２」の場合に「３」などとする。スムージングの幅は、例えば、図１０に示すようなピーク間隔と脈拍数との関係（１５ＦＰＳ（Frame  Per  Second））であるため、ピーク間隔が小さい場合にスムージング幅を小さくして、ピーク間隔が大きい場合にスムージング幅を大きくする必要がある。なお、図１０は、実施例１に係るピーク間隔と脈拍数との関係を示す図である。
【００６４】
［実施例１による効果］
上述したように、実施例１に係る脈拍計測装置１０は、ノイズを有する入力信号（入力画像）であっても、当該ノイズを除去、および／または、ノイズを有していても正常な脈拍数出力するので、高精度に安定して脈拍を計測することが可能である。
【００６５】
例えば、脈拍計測装置１０は、脈動に応じた振幅値を持つ入力画像を受け付ける。そして、脈拍計測装置１０は、受け付けた入力画像に含まれる振幅における輝度値の極大と極小とのそれぞれの間隔毎の出現頻度を求める。続いて、脈拍計測装置１０は、求められた出現頻度が最大である間隔値を特定し、特定された最大である間隔値に基づいて振幅の時間方向の間隔値を決定する。その後、脈拍計測装置１０は、決定された間隔値に基づいて、脈拍を算出して出力する。この結果、脈拍計測装置１０は、高精度に安定して脈拍を計測することが可能である。
【実施例２】
【００６６】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも
種々の異なる形態にて実施されてよいものである。そこで、（１）脈拍計測装置の構成、（２）プログラム、において異なる実施例を説明する。
【００６７】
（１）脈拍計測装置の構成
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報（例えば、図１に示した「エラー情報記憶部３２」などに記憶される情報）については、特記する場合を除いて任意に変更することができる。
【００６８】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、例えば、エラー判定部４２ｃを有する波形処理部４２として記載したが、当該エラー判定部４２ｃを画像処理部４１に組み込んだり、当該エラー判定部４２ｃを「エラー処理部」として独立させたりするなど、その全部または一部を、各種の負担や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６９】
（２）プログラム
ところで、上記実施例では、ハードウェアロジックによって各種の処理を実現する場合を説明したが、本発明はこれに限定されるものではなく、あらかじめ用意されたプログラムをコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図１１を用いて、上記実施例に示した脈拍計測装置１０と同様の機能を有する脈拍計測プログラムを実行するコンピュータの一例を説明する。図１１は、脈拍計測プログラムを実行するコンピュータを示す図である。
【００７０】
図１１に示すように、脈拍計測装置としてのコンピュータ１１０は、ＨＤＤ１３０、ＣＰＵ１４０、ＲＯＭ１５０およびＲＡＭ１６０をバス１８０などで接続される。
【００７１】
ＲＯＭ１５０には、上記実施例１に示した脈拍計測装置１０と同様の機能を発揮する脈拍計測プログラム、つまり、図１１に示すように入力プログラム１５０ａと、決定プログラム１５０ｂと、脈拍算出プログラム１５０ｃと、出力プログラム１５０ｄとが、あらかじめ記憶されている。なお、これらのプログラム１５０ａ〜プログラム１５０ｄについては、図１に示した脈拍計測装置１０の各構成要素と同様、適宜統合または、分散してもよい。
【００７２】
そして、ＣＰＵ１４０がこれらのプログラム１５０ａ〜プログラム１５０ｄをＲＯＭ１５０から読み出して実行することで、図１１に示すように、プログラム１５０ａ〜プログラム１５０ｄは、入力プロセス１４０ａと、決定プロセス１４０ｂと、脈拍算出プロセス１４０ｃと、出力プロセス１４０ｄとして機能するようになる。なお、プロセス１４０ａ〜プロセス１４０ｄは、図１に示した、画像処理部４１と、ピーク検出部４２ａと、脈拍数計算部４２ｂと、出力部２０とに対応する。
【００７３】
そして、ＣＰＵ１４０はＲＡＭ１６０に記録されたデータに基づいて脈拍計測プログラムを実行する。
【００７４】
なお、上記各プログラム１５０ａ〜プログラム１５０ｄについては、必ずしも最初からＲＯＭ１５０に記憶させておく必要はなく、例えば、コンピュータ１１０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、またはコンピュータ１１０の内外に備えられるＨＤＤなどの「固定用の物理媒体」、さらには公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１１０に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ１１０がこれから各プログラムを読み出して実行するようにしてもよい。
【図面の簡単な説明】
【００７５】
【図１】実施例１に係る脈拍計測装置の構成例を示す図である。
【図２−１】二峰性を持つ波形例を示す図である。
【図２−２】二峰性を持つ波形をスムージングした場合の波形例を示す図である。
【図３】実施例１に係るピーク検出処理の前処理を示すフローチャートである。
【図４】実施例１に係るピーク検出処理を示すフローチャートである。
【図５】実施例１に係る極大値処理を示すフローチャートである。
【図６】実施例１に係る極小値処理を示すフローチャートである。
【図７】実施例１に係る極小値処理時の振幅計算を説明するための図である。
【図８】実施例１に係る脈拍数算出処理を示すフローチャートである。
【図９−１】実施例１に係る脈拍数算出処理時に利用されるピーク間隔のヒストグラムを示す図である。
【図９−２】実施例１に係る脈拍数算出処理時に利用されるスムージングしたピーク間隔のヒストグラムを示す図である。
【図９−３】実施例１に係る脈拍数算出処理時に利用されるスムージングしたピーク間隔のヒストグラムを示す図である。
【図１０】実施例１に係るピーク間隔と脈拍数との関係を示す図である。
【図１１】脈拍計測プログラムを実行するコンピュータを示す図である。
【符号の説明】
【００７６】
１０  脈拍計測装置
２０  出力部
２１  脈拍数表示部
２２  ファイル
２３  脈動表示部
２４  エラー表示部
３０  記憶部
３１  輝度情報記憶部
３２  エラー情報記憶部
３３  ピーク情報記憶部
４０  制御部
４１  画像処理部
４２  波形処理部
４２ａ  ピーク検出部
４２ｂ  脈拍数計算部
４２ｃ  エラー判定部
【図１】
0005320837.tif 000002
【図２−１】
0005320837.tif 000003
【図２−２】
0005320837.tif 000004
【図３】
0005320837.tif 000005
【図４】
0005320837.tif 000006
【図５】
0005320837.tif 000007
【図６】
0005320837.tif 000008
【図７】
0005320837.tif 000009
【図８】
0005320837.tif 000010
【図９−１】
0005320837.tif 000011
【図９−２】
0005320837.tif 000012
【図９−３】
0005320837.tif 000013
【図１０】
0005320837.tif 000014
【図１１】
0005320837.tif 000015