(57)【特許請求の範囲】
【請求項１】
被検体の拍動に由来する拍動信号を検出する拍動検出部と、
前記拍動信号に基づいて、所定時間毎に脈拍値を算出する脈拍値算出部と、
算出された脈拍値を記憶するメモリー部と、
前記メモリー部から出力される、最新の脈拍値である第１脈拍値から最古の脈拍値である第ｍ（ｍは３以上の整数）脈拍値までのｍ個の脈拍値に対して重み付け処理を施した後、重み付け処理後の脈拍値を用いて加重移動平均値を算出する加重移動平均算出部と、を有し、
前記第１脈拍値〜前記第ｍ脈拍値の各々に対応する重み係数からなる、複数の重み係数の配列を重み係数配列とし、
前記重み係数配列として、第１重み係数配列と第２重み係数配列とを使用し、
第１重み係数配列と第２重み係数配列における、前記第１脈拍値〜前記第ｍ脈拍値における第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）に対する前記重み係数を第ｋ重み係数とし、
かつ、前記ｋが１からｍまで順に変化した場合における、前記第ｋ重み係数の値の変化の程度は、前記第２重み係数配列の方が、前記第１重み係数配列よりも緩やかであるとしたとき、
前記加重移動平均算出部は、前記ｍ個の脈拍値のうちの前記第１脈拍値が有効である場
合には、前記第１重み配列を用いて前記重み付け処理を実行し、前記ｍ個の脈拍値のうちの前記第１脈拍値が無効である場合には、前記第２重み配列を用いて前記重み付け処理を実行することを特徴とする拍動検出装置。
【請求項２】
請求項１記載の拍動検出装置であって、
前記加重移動平均算出部は、前記ｍ個の脈拍値に対して前記重み付け処理を行うとき、前記第１脈拍値に対する重み係数を、前記第１脈拍値とは異なる他の脈拍値に対する重み係数の値よりも大きくすることを特徴とする拍動検出装置。
【請求項３】
請求項１記載の拍動検出装置であって、
前記ｍ個の脈拍値のうちの前記第１脈拍値に対する重み係数を第１重み係数、第２脈拍値に対する重み係数を第２重み係数、第３脈拍値に対する重み係数を第３重み係数とし、また、前記ｍ個の脈拍値の各々に対する重み係数の値の合計値を重み合計値としたとき、
前記加重移動平均算出部は、前記ｍ個の脈拍値に対して前記重み付け処理を行うとき、前記第１重み係数の値を前記重み合計値の１／２以上とし、前記第２重み係数の値を前記重み合計値の１／２未満とし、前記第３重み係数の値を前記第２重み係数の値よりも小さくすることを特徴とする拍動検出装置。
【請求項４】
請求項１記載の拍動検出装置であって、
前記ｍ個の脈拍値のうちの第ｍ脈拍値に対する重み係数を第ｍ重み係数とし、第（ｍ−１）の脈拍値に対する重み係数を第（ｍ−１）重み係数としたとき、
前記第２重み係数配列における、前記第ｍ重み係数の値と前記第（ｍ−１）重み係数の値との差は、前記第１重み係数配列における、前記第ｍ重み係数の値と前記第（ｍ−１）重み係数の値との差よりも小さいことを特徴とする拍動検出装置。
【請求項５】
請求項１記載の拍動検出装置であって、
前記加重移動平均算出部は、前記ｍ個の脈拍値に無効な脈拍値が含まれるとき、無効の脈拍値に対応する前記重み係数の値を０として、前記加重移動平均値を算出することを特徴とする拍動検出装置。
【請求項６】
請求項１記載の拍動検出装置であって、
前記第１脈拍値〜前記第ｍ脈拍値の各々に対応する重み係数からなる、複数の重み係数の配列を重み係数配列とし、
前記重み係数配列として、第１重み係数配列と第２重み係数配列を使用し、
前記第１重み係数配列と前記第２重み係数配列における、前記第１脈拍値〜前記第ｍ脈拍値における第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）に対する前記重み係数を第ｋ重み係数とし、かつ、前記ｍを５とした場合に、
前記第１重み係数配列において、前記ｋが１から５まで順に変化したとき、前記第ｋ重み係数の値は、３４、８、４、３、１と変化し、
前記第２重み係数配列において、前記ｋが１から５まで順に変化したとき、前記第ｋ重み係数の値は、０、３、１、１、１と変化する、
ことを特徴とする拍動検出装置。
【請求項７】
請求項１記載の拍動検出装置であって、
前記加重移動平均算出部は、前記メモリー部に記憶されている前記第１脈拍値〜前記第ｍ脈拍値のすべてが無効であるときは、加重移動平均値を０とすることを特徴とする拍動検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、拍動検出装置等に関する。
【背景技術】
【０００２】
拍動検出装置は、人体の心拍に由来する拍動を検出するための装置であって、例えば、腕、手のひら、手指などに装着される脈波センサーからの信号（脈波信号）から、人体の体動の影響により発生する信号成分（体動影響信号）を雑音として除去し、心拍に由来する信号（拍動信号）を検出する装置である。
【０００３】
人の指や手首に装着するタイプの脈拍計は、例えば、特許文献１〜特許文献３に記載されている。
【０００４】
また、特許文献４には、心拍数の算出に際して移動平均を利用する、移動平均心拍数算出方法が開示されている。移動平均は、時系列データを平滑化する手法であり、誤差の分散等に有効である。移動平均処理は、電気分野では、有限インパルス応答に対するローパスフィルター処理（デジタルフィルター処理）の一種とみることができ、移動積分と呼ばれることもある。
【０００５】
一般に、移動平均というときは、単純移動平均を意味する。特許文献４でも、移動平均として単純移動平均が使用されている。単純移動平均値は、例えば、ｑ個（ｑは２以上の整数）の時系列データを合計した後、合計値をｑで除算して算出される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１９８８２９号公報
【特許文献２】特開２００７−５４４７１号公報
【特許文献３】特開２００５−１３１４２６号公報
【特許文献４】特開平１０−２９５６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
複数の脈拍値の移動平均を算出して脈拍数を求める場合を想定する。この場合、移動平均処理は、例えば、脈拍値の補間処理として有効である。例えば、移動平均の算出を行わず、所定時間毎に取得した５点の脈拍値をそのまま表示する場合を考える。このとき、５点の脈拍値の中で、仮に１点のデータが無効であるとする。つまり、その１点のデータの取得に失敗して脈拍値が０となったとする。この１点については、脈拍値０と表示するしかない。但し、このような場合でも、５点の脈拍値データに基づく移動平均処理を実行すれば、脈拍値の取得に失敗した１点についても、有効な脈拍値を算出して表示することができる。
【０００８】
但し、算出の基礎となった各脈拍値の、時間軸上での推移を示す第１特性線と、移動平均によって算出された脈拍数の、時間軸上での推移を示す第２特性線とは、その形状が異なる。上述のとおり、移動平均処理は、ローパスフィルター処理の一種と考えられる。第１特性線を一つの波形と考えると、その波形が、ローパスフィルター処理によって第２特性線で示される波形に変化したことになる。つまり、第１特性線で示される波形が、時間軸上で遅延して、第２特性線で示される波形になったとみることができる。
【０００９】
脈拍数の即時検出を重視する場合には、上述の遅延を低減することが好ましい。すなわち、複数の脈拍値の移動平均を算出して脈拍数を得るとき、移動平均算出の入力としたもとの脈拍値の時間推移に対する、移動平均して算出した脈拍値の時間推移の時間差（つまり、算出された脈拍数の遅延）を低減することが好ましい。
【００１０】
本発明の少なくとも一つの態様によれば、例えば、移動平均処理を脈拍数の算出に適用する場合に、算出された脈拍数の遅延を低減することができる。
【課題を解決するための手段】
【００１１】
（１）本発明の拍動検出装置の一態様は、被検体の拍動に由来する拍動信号を検出する拍動検出部と、前記拍動信号に基づいて、所定時間毎に脈拍値を算出する脈拍値算出部と、算出された脈拍値を記憶するメモリー部と、前記メモリー部から出力される、最新の脈拍値である第１脈拍値から最古の脈拍値である第ｍ（ｍは３以上の整数）脈拍値までのｍ個の脈拍値に対して重み付け処理を施した後、重み付け処理後の脈拍値を用いて加重移動平均値を算出する、加重移動平均算出部と、を有する。
【００１２】
本実施形態では、脈拍数算出のための移動平均として、加重移動平均を使用する。加重移動平均は、算出の基礎となる個々の脈拍値に重み付けして平均を算出する方法である。重み係数（重みを示す係数）を適切な値とすることによって、算出された脈拍数の、基礎となる脈拍値に対する遅延を低減することができる。
【００１３】
（２）本発明の拍動検出装置の他の態様では、前記加重移動平均算出部は、前記ｍ個の脈拍値に対して前記重み付け処理を行うとき、前記第１脈拍値に対する重み係数を、前記第１脈拍値とは異なる他の脈拍値に対する重み係数の値よりも大きくする。
【００１４】
本態様では、最新の脈拍値である第１脈拍値に対する重み係数の値を、第１脈拍値とは異なる他の脈拍値に対する重み係数の値よりも大きく設定する。「最新の脈拍値」とは、脈拍値が取得された時点が、移動平均の算出時点から最も近い脈拍値のことである。
【００１５】
算出の基礎となるｍ個の脈拍値のうちで、最新の脈拍値を最も重視して移動平均処理を実行することによって、算出された脈拍数の遅延を低減する効果が得られる。
【００１６】
（３）本発明の拍動検出装置の他の態様では、前記ｍ個の脈拍値のうちの前記第１脈拍値に対する重み係数を第１重み係数、第２脈拍値に対する重み係数を第２重み係数、第３脈拍値に対する重み係数を第３重み係数とし、また、前記ｍ個の脈拍値の各々に対する重み係数の値の合計値を重み合計値としたとき、前記加重移動平均算出部は、前記ｍ個の脈拍値に対して前記重み付け処理を行うとき、前記第１重み係数の値を前記重み合計値の１／２以上とし、前記第２重み係数の値を前記重み合計値の１／２未満とし、前記第３重み係数の値を前記第２重み係数の値よりも小さくする。
【００１７】
本態様では、最新の脈拍値に対する第１重み係数を、重み合計値の１／２以上に設定する。重み合計値とは、算出の基礎となるｍ個の脈拍値の各々に対する重み係数の値の合計値である。
【００１８】
また、第２脈拍値（新しさが２番目の脈拍値：脈拍値が取得された時点が、移動平均の算出時点から２番目に近い脈拍値）に対する第２重み係数を重み合計値の１／２未満に設定する。また、第３脈拍値（新しさが３番目の脈拍値：脈拍値が取得された時点が、移動平均の算出時点から３番目に近い脈拍値）に対する第３重み係数の値を、第２重み係数の値よりも小さく設定する。
【００１９】
重み係数の値を、重み合計値で除算して得られる割合は、その脈拍値の評価の程度を表しており、割合が高いほど評価が高い。
【００２０】
本態様では、最新の脈拍値（第１脈拍値）を最重視して高い評価を与え、新しさが２番目の脈拍値（第２脈拍値）には２番目に高い評価を与え、新しさが３番目の脈拍値（第３脈拍値）の評価は、第２脈拍値の評価よりも下げている。つまり、脈拍値の新しさに応じて、重み係数の値に傾斜をもたせている。これによって、算出された脈拍数の遅延を低減する効果を高めることができる。
【００２１】
（４）本発明の拍動検出装置の他の態様では、前記第１脈拍値〜前記第ｍ脈拍値の各々に対応する重み係数からなる、複数の重み係数の配列を重み係数配列とし、前記重み係数配列として、第１重み係数配列と第２重み係数配列とを使用し、第１重み係数配列と第２重み係数配列における、前記第１脈拍値〜前記第ｍ脈拍値における第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）に対する前記重み係数を第ｋ重み係数とし、かつ、前記ｋが１からｍまで順に変化した場合における、前記第ｋ重み係数の値の変化の程度は、前記第２重み係数配列の方が、前記第１重み係数配列よりも緩やかであるとしたとき、前記加重移動平均算出部は、前記ｍ個の脈拍値のうちの前記第１脈拍値が有効である場合には、前記第１重み配列を用いて前記重み付け処理を実行し、前記ｍ個の脈拍値のうちの前記第１脈拍値が無効である場合には、前記第２重み配列を用いて前記重み付け処理を実行する。
【００２２】
本態様では、加重移動平均算出部は、最新の脈拍値（第１脈拍値）の有効／無効に応じて、使用する重み係数配列を切り替える。最新の脈拍値である第１脈拍値の取得に失敗した場合は、脈波センサーから出力される脈波信号の乱れが大きく、過去に取得した脈拍値にも無視できないノイズが含まれている可能性が高い。このような場合は、平滑化の度合いを強めた移動平均処理を実行して、算出される脈拍数を安定化させるのが好ましい。そこで、本態様では、加重移動平均算出部は、最新の脈拍値（第１脈拍値）が有効であるとき（つまり、第１脈拍値の取得に成功しているとき）は、第１重み係数配列を使用し、最新の脈拍値（第１脈拍値）が無効であるとき（つまり、第１脈拍値の取得に失敗しているとき）は、第２重み係数配列を使用する。
【００２３】
第２重み係数配列を使用して移動平均処理を実行した場合の、脈拍値の平滑化（あるいは脈拍値の誤差分散）の効果は、第１重み係数配列を使用した場合よりも高い。すなわち、第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）におけるパラメーターｋを１からｍまで順に変化させた場合、第ｋ重み係数の値の変化の程度は、第２重み係数配列の方が、第１重み係数配列よりも緩やかである。よって、例えば、脈波信号に含まれるノイズが多い場合に、第２重み係数配列を用いた移動平均処理に切り替えることによって、例えば、脈拍数の乱れ（乱高下の程度）を抑制することができる。
【００２４】
（５）本発明の拍動検出装置の他の態様では、前記ｍ個の脈拍値のうちの第ｍ脈拍値に対する重み係数を第ｍ重み係数とし、第（ｍ−１）の脈拍値に対する重み係数を第（ｍ−１）重み係数としたとき、前記第２重み係数配列における、前記第ｍ重み係数の値と前記第（ｍ−１）重み係数の値との差は、前記第１重み係数配列における、前記第ｍ重み係数の値と前記第（ｍ−１）重み係数の値との差よりも小さい。
【００２５】
本態様では、「第ｋ重み係数の値の変化の程度を、より緩やかにする」場合の、重み係数配列の一例を示す。
【００２６】
本態様では、取得された時点が最も古い第ｍ脈拍値に対応する第ｍ重み係数の値と、２番目に古い第（ｍ−１）脈拍値に対応する第（ｍ−１）重み係数の値との差を、より小さくすることによって、上述の「第ｋ重み係数の値の変化の程度をより緩やかにする」ことを実現することができる。このことは、第２重み係数配列では、最古の第ｍ脈拍値に対する評価を第１重み係数配列よりも高めたことを意味する。
【００２７】
（６）本発明の拍動検出装置の他の態様では、前記加重移動平均算出部は、前記ｍ個の脈拍値に無効な脈拍値が含まれるとき、無効の脈拍値に対応する前記重み係数の値を０として、前記加重移動平均値を算出する。
【００２８】
加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ（ｋ）｝／Σｔ（ｋ）によって表すことができる。但し、ｋは１≦ｋ≦ｍを満足する整数であり、ｐ（ｋ）は第ｋ脈拍値であり、ｔ（ｋ）は第ｋ重み係数である。
【００２９】
ここで、例えば、第３脈拍値ｐ（３）が無効（＝０）であったとする。このとき、上記の演算式の分子の計算において、ｐ（３）・ｔ（３）＝０であり、したがって、第３重み係数ｔ（３）は無効である。ここで、第３重み係数ｔ（３）を０にしておかないと、分母に無効な第３重み係数ｔ（３）が加えられてしまい、重み合計値に誤差が生じる。そこで、本態様では、無効の脈拍値に対応する前記重み係数の値を０として、加重移動平均値を算出することとした。
【００３０】
これによって、加重移動平均を算出する演算式の分母に、無効な重み係数の値が含まれないようにすることができる。
【００３１】
（７）本発明の拍動検出装置の他の態様では、前記第１脈拍値〜前記第ｍ脈拍値の各々に対応する重み係数からなる、複数の重み係数の配列を重み係数配列とし、前記重み係数配列として、第１重み係数配列と第２重み係数配列を使用し、前記第１重み係数配列と前記第２重み係数配列における、前記第１脈拍値〜前記第ｍ脈拍値における第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）に対する前記重み係数を第ｋ重み係数とし、かつ、前記ｍを５とした場合に、前記第１重み係数配列において、前記ｋが１から５まで順に変化したとき、前記第ｋ重み係数の値は、３４、８、４、３、１と変化し、前記第２重み係数配列において、前記ｋが１から５まで順に変化したとき、前記第ｋ重み係数の値は、０、３、１、１、１と変化する。
【００３２】
本態様では、所定時間毎に取得された５点の脈拍値を使用する場合における、第１重み係数配列と第２重み係数配列の好ましい例を明確化した。
【００３３】
（８）本発明の拍動検出装置の他の態様では、前記加重移動平均算出部は、前記メモリー部に記憶されている前記第１脈拍値〜前記第ｍ脈拍値のすべてが無効であるときは、加重移動平均値を０とする。
【００３４】
これによって、加重移動平均算出部は、基礎となるすべての脈拍値が無効の場合に、例えば、加重移動平均値の算出に失敗したことを示す情報を出力することができる。
【００３５】
このように、本発明の少なくとも一つの態様によれば、例えば、複数の脈拍値の移動平均を算出して脈拍数を得るとき、算出された脈拍数の経過時間に対する変化と、算出の基礎となった脈拍値の変化との差（つまり、算出された脈拍数の遅延）を低減することができる。
【図面の簡単な説明】
【００３６】
【図１】拍動検出装置の一例の構成を示す図
【図２】４秒毎に算出された５点の脈拍値を配列番号に対応させて示した図
【図３】第１重み係数配列と第２重み係数配列を示す図
【図４】加重移動平均処理の第１処理例を示す図
【図５】加重移動平均処理の第２処理例を示す図
【図６】加重移動平均処理の第３処理例を示す図
【図７】加重移動平均処理の第４処理例を示す図
【図８】加重移動平均処理の第５処理例を示す図
【図９】加重移動平均処理の第６処理例を示す図
【図１０】加重移動平均処理の第７処理例を示す図
【図１１】加重移動平均処理の第８処理例を示す図
【図１２】図１に示される拍動検出装置の動作手順の一例を示すフローチャート
【図１３】１時間程度の脈拍計測を実施した場合における、加重移動平均値ならびに単純移動平均値の経過時間に対する推移の例を示す図
【図１４】１時間程度の脈拍計測を実施した場合における、移動平均処理なしの場合の脈拍値の、経過時間に対する推移の例を示す図
【図１５】図１５（Ａ）および図１５（Ｂ）は、拍動検出装置の、被検体への装着例を示す図
【図１６】図１６（Ａ）および図１６（Ｂ）は、単純移動平均による脈拍数の遅れについて説明するための図
【発明を実施するための形態】
【００３７】
以下、図面を参照して、具体的に説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３８】
（第１実施形態）
図１は、拍動検出装置の一例の構成を示す図である。図１に示される拍動検出装置１００は、被検体（人や動物を含む）の拍動に由来する拍動信号、拍動信号に対応する心拍等の生体情報等を検出するセンサー装置の一種である。
【００３９】
ここで、拍動とは、医学的には心臓のみならず内臓一般の周期的な収縮、弛緩が繰り返された場合に起こる運動のことをいう。ここでは、心臓が周期的に血液を送るポンプとしての動きを拍動と呼ぶ。なお、心拍数とは、１分間の心臓の拍動の数をいう。また、脈拍数は、末梢血管における脈動の数をいう。心臓が血液を送り出す際に、動脈に脈動が生じるので、この回数を数えたものを脈拍数あるいは単に脈拍と呼ぶ。腕で脈を計測する限りは、医学的には心拍数とは呼ばずに脈拍数と呼ぶのが通常である。また、以下の説明では、体動という用語が使用される。体動とは、広い意味では、体を動かすことすべてを意味する（広義の体動）。また、定常的（周期的）な体動を、狭義の体動といってもよい。狭義の体動は、例えば、歩行・ジョギングなどに伴う周期的、つまり定常的な腕（例えば拍動検出装置の本体の近辺）の動きである。
【００４０】
（全体構成）
図１に示される拍動検出装置１００は、時系列に取得された複数の脈拍値に基づく加重移動平均処理によって、脈拍数を算出する。拍動検出装置１００は、拍動信号を含む可能性がある脈波信号ｄを出力する脈波センサー１０と、ゲイン調整部６と、脈波信号蓄積部（４秒分の脈波信号ｄのデータを蓄積する第１バッファメモリー１３および１６秒分の脈波信号ｄのデータを蓄積する第２バッファメモリー１５を有する）１２と、体動センサー（加速度センサーやジャイロセンサー等）２０と、体動信号蓄積部２２と、適応フィルター３２および体動成分除去フィルター３４を含むフィルター部３０と、周波数解析部５０と、第１メモリー部７０と、第２メモリー部７４と、加重移動平均算出部７２と、加重移動平均処理に使用される重み係数を格納している重み係数格納部７６と、脈拍値算出部９０と、表示処理部９２と、表示部９４と、を有する。
【００４１】
周波数解析部５０は、信号分配部３９と、周波数分解部４０（第１周波数分解部４０ａ、第２周波数分解部４０ｂ、第３周波数分解部４０ｃ）と、周波数傾向情報４４ならびに周波数解析結果情報４５を蓄積している脈波信号解析部４２と、後処理部６０（ピーク順ソート部６２、相関判定部６４、拍動／体動分離部６６、拍動呈示スペクトル特定部６８とを含む）と、拍動呈示スペクトル捕捉処理部８０と、を有する。
【００４２】
脈波センサー１０は、光電脈波センサー及びその原理に基づく脈波センサーである。脈波センサー１０は、拍動信号を含む可能性がある脈波信号ｄを出力する。脈波センサー１０は、ＬＥＤ等の発光部１と、発光部１の出力光が、被検体２の血管で反射して生じる反射光を受光して電気信号に変換する受光部３と、受光部３の出力信号を増幅する可変ゲインアンプ４と、サンプリング部としてのＡ／Ｄ変換部５と、を有する。可変ゲインアンプ４のゲインＧＮは、ゲイン調整部（ＡＧＣ回路）６によって調整される。
【００４３】
また、体動センサー２０は、被検体の体動を検出し、体動に由来する体動信号ｆを出力する。
【００４４】
また、脈波センサー１０から出力される脈波信号ｄの４秒分の信号が、第１バッファメモリー１３に蓄積される。４秒分の脈波信号ｄは、４秒周期で、第２バッファメモリー１５に転送される。第２バッファメモリー１５はＦＩＦＯ（ファーストイン・ファーストアウト）メモリーであり、１６秒分の脈波信号は４秒分ずつ更新される。１６秒分の脈波信号を蓄積するのは、周波数解析によって拍動成分を特定するとき、ある程度の時間幅で信号の推移を観測し、相関の有無等を慎重に検討する必要があるからである。
【００４５】
フィルター部３０は、入力信号に含まれるノイズを最小化する。また、体動成分除去フィルター３４によって、例えば、脈波信号ｄに含まれる体動信号成分が最小化される。
【００４６】
周波数解析部５０は、脈波信号ｄ、または、脈波信号ｄに、脈波信号に含まれるノイズを抑制するフィルタリング（フィルター部３０による）を施して得られるフィルタリング後信号ｅに基づいて、所定時間毎（例えば４秒毎）に周波数解析を実行して、拍動信号を示す拍動呈示スペクトルを特定することができる。
【００４７】
信号分配部３９は、フィルター後信号ｅを第１周波数分解部（高速フーリエ変換部：ＦＦＴ）４０ａに供給し、フィルター前の脈波信号ｄを第３周波数分解部４０ｃに供給する。また、体動信号ｆは第２周波数分解部４０ｂに供給される。
【００４８】
拍動検出部としての後処理部６０は、周波数スペクトルをスペクトル値の大きい順にソーティングするピーク順ソート部６２と、ピーク順が上位の主要なスペクトルが、直近の過去（例えば４秒前）の拍動信号のスペクトルとの相関判定を実行する相関判定部６４と、相関判定の結果を利用して拍動信号とノイズ成分とを分離する拍動／ノイズ分離部と６６と、拍動／ノイズ分離処理によってノイズから分離された拍動成分のスペクトルを、拍動呈示スペクトルとして特定する拍動呈示スペクトル特定部６８と、を有する。
【００４９】
また、拍動呈示スペクトル捕捉処理部８０は、例えば、拍動呈示スペクトル特定部６８が、フィルター後信号ｅに基づく拍動呈示スペクトルの特定に失敗したときに動作を開始する。拍動呈示スペクトル捕捉処理部８０は、フィルタリング前の脈波信号ｄ（フィルタリングによる信号の減衰が生じないため、フィルター後信号よりも大きな信号値をもつ）に基づいて、例えば、過去の拍動信号の周波数傾向に基づく相関判定によって、拍動呈示スペクトルの捕捉を試みる。
【００５０】
拍動呈示スペクトルの特定や捕捉に成功すると、脈拍値算出部９０は、例えば拍動呈示スペクトルの周波数に基づいて、例えば４秒毎に脈拍値を算出する。
【００５１】
算出された脈拍値は、第１メモリー部７０に記憶される。第１メモリー部７０には、例えば、少なくとも最近の５回分の脈拍値が記憶される。なお、第１メモリー部７０には、拍動呈示スペクトル特定処理ならびに拍動呈示スペクトルの捕捉処理によって得られた情報や、脈波信号ｄの周波数解析に基づく周波数傾向情報４４や周波数解析結果情報４５も蓄積される。
【００５２】
加重移動平均算出部７２は、例えば、第１メモリー部７０から出力される、最新の脈拍値である第１脈拍値から最古の脈拍値である第ｍ（ｍは３以上の整数）脈拍値までのｍ個の脈拍値に対して重み付け処理を施した後、重み付け処理後のｍ個の脈拍値を用いて加重移動平均値を算出する。ここでは、ｍ＝５として説明する。この加重移動平均値が、加重移動平均処理によって算出された脈拍数である。
【００５３】
算出された加重移動平均による脈拍数は、第２メモリー部７４に記憶され、また、表示処理部９２に供給される。脈拍数の情報は、例えば、表示部９４に表示される。なお、脈拍数ではなく、検出した脈の、時間軸上における変化を信号波形やグラフの形式で表示（広義には報知）してもよい。
【００５４】
（単純移動平均による脈拍数の遅れについて）
ここで、図１６（Ａ）および図１６（Ｂ）を参照して、単純移動平均による脈拍数の遅れについて説明する。図１６（Ａ）および図１６（Ｂ）は、単純移動平均による脈拍数の遅れについて説明するための図である。
【００５５】
図１６（Ａ）は、４秒毎に脈拍値を算出することによって得られた、６０秒分の脈拍値のデータの一例を示す。計測開始時点からの経過時間に対して、移動平均なしの脈拍値と、５点の脈拍値に基づく単純移動平均によって算出された脈拍数とが示されている。例えば、経過時点３２秒の移動平均後の脈拍値は約８３（≒（７５＋７８＋８５＋９０＋８８）／５）となる。
【００５６】
図１６（Ｂ）は、算出の基礎となった各脈拍値（つまり移動平均なしの脈拍値）の、時間軸上での推移を示す第１特性線Ｚ１と、単純移動平均によって算出された脈拍数の、時間軸上での推移を示す第２特性線Ｚ２とを示す図である。図１６（Ｂ）から明らかなように、特性線Ｚ１と特性線Ｚ２とでは、明らかに形状が異なる。
【００５７】
第１特性線（移動平均なしの脈拍値の推移を示す特性線）Ｚ１の場合、２８秒経過付近で脈拍値が極大となっている。これに対して、第２特性線（５点の単純移動平均によって算出された脈拍数の推移を示す特性線）Ｚ２では、３８秒経過付近で脈拍数が極大となっている。これは、この単純移動平均処理には、最近の２０秒間の脈拍値の平均であることから、結果的に、期待値として現時点から１０秒前の脈拍数を計算していることになるためである。
【００５８】
上述のとおり、移動平均処理は、ローパスフィルター処理の一種と考えられる。第１特性線Ｚ１を一つの波形と考えると、その波形が、ローパスフィルター処理によって第２特性線Ｚ２で示される波形に変化したことになる。つまり、第１特性線Ｚ１で示される波形が、時間軸上で遅延して、第２特性線Ｚ２で示される波形になったとみることができる。
【００５９】
脈拍数の即時の検出を重視する場合には、上述の遅延を低減することが好ましい。すなわち、複数の脈拍値の移動平均を算出して脈拍数を得るとき、算出された脈拍数の経過時間に対する変化と、算出の基礎となった脈拍値の変化との差（つまり、算出された脈拍数の遅延）を低減することが好ましい。
【００６０】
そこで、本実施形態では、加重移動平均処理を採用する。加重移動平均は、算出の基礎となる個々の脈拍値に重み付けして平均を算出する方法である。すなわち、最新の脈拍値である第１脈拍値から最古の脈拍値である第ｍ（ｍは３以上の整数）脈拍値までのｍ個の脈拍値に対して重み付け処理を施した後、重み付け処理後の脈拍値を用いて加重移動平均値を算出する。ここで、重み係数（重みを示す係数）を適切な値とすることによって、算出された脈拍数の、基礎となる脈拍値に対する遅延を低減することができる。
【００６１】
（重み係数配列の例ならびに加重移動平均の計算例）
以下、図２〜図５を用いて、重み係数配列の例ならびに加重移動平均の計算例について説明する。なお、第１脈拍値〜第ｍ脈拍値のｍ個の脈拍値は、配列番号ｋをパラメーターとして、第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）と表現することができる。図２〜図５の例では、５点の脈拍値を使用することからｍ＝５である。但し、これに限定されるものではなく、例えば、ｍの値を増大させることもできる。なお、ｍの値が大きくなれば、脈拍値を平滑化する効果（あるいは誤差を分散する効果）が高まる。
【００６２】
図２は、４秒毎に算出された５点の脈拍値ｐ（ｋ）を、配列番号ｋに対応させて示した図である。ｋ＝１の脈拍値が第１脈拍値ｐ（１）であり、最新の脈拍値である。ｋの値が大きくなるほど、脈拍値は古くなる。ｋ＝５の脈拍値ｐ（５）が最古の脈拍値である。なお、「最新の脈拍値」とは、脈拍値が取得された時点が、移動平均の算出時点から最も近い脈拍値（最も直近の脈拍値）のことである。
【００６３】
図２の例では、ｐ（１）は９３であり、ｐ（２）は９１であり、ｐ（３）は８８であり、ｐ（４）は８７であり、ｐ（５）は８８である。
【００６４】
図３は、第１重み係数配列と第２重み係数配列を示す図である。第１脈拍値〜第ｍ脈拍値の各々に対応する重み係数からなる、複数の重み係数の配列を「重み係数配列」とする。図３の例では、重み係数配列として、２系統の重み係数配列が使用されている。すなわち、第１重み係数配列ｔ１（ｋ）、ならびに第２重み係数配列ｔ２（ｋ））が使用されている。
【００６５】
通常の加重平均処理では、第１重み係数配列ｔ１（ｋ）が使用されるが、第１脈拍値（ｐ（１））が無効のとき（つまり、ｐ（１）＝０のとき）は、第２重み係数配列ｔ２（ｋ）が使用される。
【００６６】
（第１重み係数配列について）
第１重み係数配列ｔ１（ｋ）において、第１重み係数ｔ１（１）は３４、第２重み係数ｔ１（２）は８、第３重み係数ｔ１（３）は４、第４重み係数ｔ１（４）は３、第５重み係数ｔ１（５）は１である。各重み係数値の合計値（重み合計値）は、５０（＝３４＋８＋４＋３＋１）である。
【００６７】
第１重み係数配列ｔ１（ｋ）においては、最新の脈拍値（第１脈拍値ｐ（１））に対する第１重み係数ｔ１（１）の値（＝３４）が、他の脈拍値に対する他の重み係数の値（＝８，４，３，１）よりも大きく設定されている。これは、算出の基礎となるｍ個（ここでは、ｍ＝５）の脈拍値のうちで、最新の脈拍値（第１脈拍値ｐ（１））を最も重視して移動平均処理を実行することによって、算出された脈拍数の遅延を低減する効果が得られるからである。
【００６８】
また、第１重み係数配列ｔ１（ｋ）においては、第１重み係数ｔ１（１）の値（＝３４）を、重み合計値（＝５０）の１／２（＝２５）以上となるように設定している。重み合計値とは、上述のとおり、算出の基礎となるｍ個（ここではｍ＝５）の脈拍値の各々に対する重み係数（第１重み係数〜第ｍ重み係数）の各値の合計値である。
【００６９】
また、第１重み係数配列ｔ１（ｋ）においては、第２脈拍値ｐ（２）（新しさが２番目の脈拍値：脈拍値が取得された時点が、移動平均の算出時点から２番目に近い脈拍値）に対する第２重み係数ｔ１（２）の値（＝８）を、重み合計値（＝５０）の１／２（＝２５）未満に設定している。
【００７０】
また、第１重み係数配列ｔ１（ｋ）においては、第３脈拍値ｐ（３）（新しさが３番目の脈拍値：脈拍値が取得された時点が、移動平均の算出時点から３番目に近い脈拍値）に対する第３重み係数ｔ１（３）の値（＝４）を、第２重み係数ｔ１（２）の値（＝８）よりも小さく設定している。
【００７１】
第１重み係数ｔ１（１）〜第３重み係数ｔ１（３）の各値（＝３４，８，４）を、重み合計値（＝５０）で除算して得られる割合は、対応する脈拍値の評価の程度を表しており、この割合が高いほど評価が高い。
【００７２】
図２の例では、第１重み係数配列ｔ１（ｋ）において、最新の脈拍値（第１脈拍値ｐ（１））を最重視して高い評価を与え、新しさが２番目の脈拍値（第２脈拍値ｐ（２））には２番目に高い評価を与え、新しさが３番目の脈拍値（第３脈拍値ｐ（３））の評価は、第２脈拍値（ｐ（２））の評価よりも下げている。つまり、脈拍値の新しさに応じて、重み係数の値に傾斜をもたせている。これによって、算出された脈拍数の遅延を低減する効果を高めることができる。
【００７３】
（第２重み係数配列ｔ２（ｋ）について）
第２重み係数配列ｔ２（ｋ）においては、第１重み係数ｔ２（１）は０、第２重み係数ｔ２（２）は３、第３重み係数ｔ２（３）は１、第４重み係数ｔ１（４）は３、第５重み係数ｔ１（５）は１である。各重み係数値の合計値（重み合計値）は、６（＝０＋３＋１＋１＋１）である。
【００７４】
第２重み係数配列ｔ２（ｋ）においては、最新の脈拍値ｐ（１）に対する第１重み係数ｔ２（１）の値を“０”としている。これは、第２重み係数配列ｔ２（ｋ）は、ｐ（１）が無効（ｐ（１）＝０）のときに使用されるからである。
【００７５】
すなわち、加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ２（ｋ）｝／Σｔ２（ｋ）によって表すことができる。但し、ｋは１≦ｋ≦ｍを満足する整数であり、ｐ（ｋ）は第ｋ脈拍値であり、ｔ２（ｋ）は、第２重み係数配列における第ｋ重み係数である。
【００７６】
ここで、第１脈拍値ｐ（１）が無効（＝０）であったとする。このとき、上記の演算式の分子の計算において、ｐ（１）・ｔ２（１）＝０であり、したがって、第１重み係数ｔ２（１）は無効である。ここで、第１重み係数ｔ２（１）の値を０にしておかないと、分母に無効な第１重み係数ｔ２（１）が加えられてしまい、重み合計値に誤差が生じる。そこで、図２の例では、第２重み係数配列ｔ２（ｋ）において、第１脈拍値ｐ（１）（＝０）に対応する第１重み係数ｔ２（１）の値を０として、分母に誤差が生じないようにして、加重移動平均値を算出することとしている。
【００７７】
また、ｋが１からｍ（ここではｍ＝５）まで順に変化した場合における、第ｋ重み係数の値の変化の程度は、第２重み係数配列ｔ２（ｋ）の方が、第１重み係数配列ｔ１（ｋ）よりも緩やかである。
【００７８】
第１重み係数配列ｔ１（ｋ）では、重み係数の値は、３４、８、４、３、１と変化する。一方、第２重み係数配列ｔ２（ｋ）では、０（この値は無視する）、３、１、１，１と変化する。第２重み係数配列ｔ２（ｋ）の方が、数値が減少していく程度が小さく、第ｋ重み係数の値の変化の程度が緩やかである。
【００７９】
具体的には、第１重み係数配列ｔ１（ｋ）では、第４重み係数ｔ１（４）が“３”であり、第５重み係数ｔ１（５）が“１”であり、その差は“２”である。一方、第２重み係数配列ｔ２（ｋ）では、第４重み係数ｔ２（４）が“１”であり、第５重み係数ｔ２（５）が“１”であり、その差は“０”である。
【００８０】
このように、取得された時点が最も古い第ｍ（ここではｍ＝５）脈拍値に対応する第ｍ重み係数の値と、２番目に古い第（ｍ−１）脈拍値に対応する第（ｍ−１）重み係数の値との差を、より小さくすることによって、上述の「第ｋ重み係数の値の変化の程度をより緩やかにする」ことを実現することができる。このことは、最古の第ｍ（ここではｍ＝５）脈拍値に対する評価をより高めたことを意味する。
【００８１】
（第１重み係数配列ｔ１（ｋ）と第２重み係数配列ｔ２（ｋ）の切り替えについて）
上述のとおり、加重移動平均算出部７２は、最新の脈拍値（第１脈拍値ｐ（１））の有効／無効に応じて、使用する重み係数配列を切り替える。つまり、図１に示される加重移動平均算出部７２は、最新の脈拍値である第１脈拍値ｐ（１）が有効であるとき、つまり、第１脈拍値の取得に成功してｐ（１）≠０のとき、第１重み係数配列ｔ１（ｋ）を使用し、第１脈拍値ｐ（１）が無効であるとき、つまり、第１脈拍値ｐ（１）の取得に失敗してｐ（１）＝０であるときは、第２重み係数配列ｔ２（ｋ）を使用する。
【００８２】
第１重み係数配列と、第２重み係数配列とを切り替えるのは、以下の理由による。すなわち、最新の脈拍値である第１脈拍値ｐ（１）の取得に成功した場合（ｐ（１）≠０のとき）は、算出の基礎となるｍ個の脈拍値のうちで、新しい脈拍値ほど高い評価を与えて（例えば、最新の脈拍値ｐ（１）を最も重視して）、加重移動平均処理を実行することによって、算出された脈拍数の時間的な遅延を低減する効果が得られる。
【００８３】
一方、最新の脈拍値である第１脈拍値（ｐ（１））の取得に失敗した場合（ｐ（１）＝０のとき）は、脈波センサー１０から出力される脈波信号ｄの乱れが大きく、過去に取得した脈拍値にも無視できないノイズが含まれている可能性が高い。このような場合は、平滑化の度合いを強めた移動平均処理を実行して、算出される脈拍数を安定化させるのが好ましい。
【００８４】
そこで、本実施形態では、加重移動平均算出部７２は、最新の脈拍値である第１脈拍値ｐ（１）が有効であるときは、第１重み係数配列ｔ１（ｋ）を使用し、最新の脈拍値（第１脈拍値）が無効であるとき（つまり、第１脈拍値の取得に失敗しているとき）は、平滑化の程度を高めるために、第２重み係数配列ｔ２（ｋ）を使用するようにしている。
【００８５】
上述のとおり、第２重み係数配列ｔ１（ｋ）を使用して移動平均処理を実行した場合の、脈拍値の平滑化（あるいは脈拍値の誤差分散）の効果は、第１重み係数配列を使用した場合よりも高い。すなわち、第ｋ脈拍値（ｋは１≦ｋ≦ｍを満足する整数）におけるパラメーターｋを１からｍ（ここではｍ＝５）まで順に変化させた場合、第ｋ重み係数の値の変化の程度は、第２重み係数配列ｔ２（ｋ）の方が、第１重み係数配列ｔ１（ｋ）よりも緩やかである。よって、例えば、脈波信号ｄに含まれるノイズが多い場合に、第２重み係数配列ｔ２（ｋ）を用いた移動平均処理に切り替えることによって、例えば、脈拍数の乱れ（乱高下の程度）を抑制することができる。
【００８６】
（第１処理例）
図４は、加重移動平均処理の第１処理例を示す図である。図４の例では、５点の脈拍値（ｐ（１）〜ｐ（５））は、いずれも有効である。つまり、加重移動平均の基礎となる５点の脈拍値の取得に成功している。この場合には、第１重み係数配列ｔ１（ｋ）が使用される。
【００８７】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ１（ｋ）｝／Σｔ１（ｋ）によって表される。すなわち、（９３×３４＋９１×８＋８８×４＋８５×３＋８０×１）／（３４＋８＋４＋３＋１）＝９１．５４≒９２となる。この９２が、加重移動平均処理によって算出された脈拍数である。
【００８８】
（第２処理例）
図５は、加重移動平均処理の第２処理例を示す図である。図５の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、最新の脈拍値である第１脈拍値ｐ（１）が無効（＝０）である。この場合には、第２重み係数配列ｔ２（ｋ）が使用される。
【００８９】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ２（ｋ）｝／Σｔ２（ｋ）によって表される。すなわち、（０×０＋９１×３＋８８×１＋８５×１＋８０×１）／（０＋３＋１＋１＋１）＝８７．６７≒８８となる。この８８が、加重移動平均処理によって算出された脈拍数である。
【００９０】
（第３処理例）
図６は、加重移動平均処理の第３処理例を示す図である。図６の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、最新の脈拍値である第１脈拍値ｐ（１）と、新しさが２番目の第２脈拍値ｐ（２）が共に零である。
【００９１】
ここでは、第１脈拍値ｐ（１）が無効（＝０）であることから、第２重み係数配列ｔ２（ｋ）が使用される。但し、第２脈拍値ｐ（２）も０であることから、第２重み係数ｔ２（２）も“０”として取り扱う必要がある。つまり、第２重み係数ｔ２（２）は“３”であるが、このままでは、無効な値“３”が、演算式の分母に加算されてしまい、分母に誤差が生じる。そこで、加重移動平均処理に際しては、ｔ２（２）を０として計算する。
【００９２】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ２（ｋ）｝／Σｔ２（ｋ）（但しｔ２（２）＝０とする）によって表される。すなわち、（０×０＋０×０＋８８×１＋８５×１＋８０×１）／（０＋０＋１＋１＋１）＝８４．３３≒８４となる。この８４が、加重移動平均処理によって算出された脈拍数である。
【００９３】
（第４処理例）
図７は、加重移動平均処理の第４処理例を示す図である。図７の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、最新の脈拍値である第１脈拍値ｐ（１）と、新しさが２番目の第２脈拍値ｐ（２）と、新しさが３番目の第３脈拍値ｐ（３）とが零である。
【００９４】
ここでは、第１脈拍値ｐ（１）が無効（＝０）であることから、第２重み係数配列ｔ２（ｋ）が使用される。但し、第２脈拍値ｐ（２），第３脈拍値ｐ（３）が０であることから、第２重み係数ｔ２（２），第３重み係数ｔ２（３）も“０”として取り扱う必要がある。上述のとおり、無効な重み係数の値が演算式の分母に加算されてしまい、分母に誤差が生じるのを防止するためである。そこで、加重移動平均処理に際しては、ｔ２（２），ｔ２（３）を０として計算する。
【００９５】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ２（ｋ）｝／Σｔ２（ｋ）（但しｔ２（２）＝０，ｔ２（３）＝０とする）によって表される。すなわち、（０×０＋０×０＋０×０＋８５×１＋８０×１）／（０＋０＋０＋１＋１）＝８２．５≒８３となる。この８３が、加重移動平均処理によって算出された脈拍数である。
【００９６】
（第５処理例）
図８は、加重移動平均処理の第５処理例を示す図である。図８の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、最古の脈拍値ｐ（５）を除いて、他の脈拍値はすべて零である。ここでは、第１脈拍値ｐ（１）が無効（＝０）であることから、第２重み係数配列ｔ２（ｋ）が使用される。但し、第２脈拍値ｐ（２），第３脈拍値ｐ（３），第４脈拍値ｐ（４）が０であることから、第２重み係数ｔ２（２），ｔ２（３），ｔ２（４）も“０”として取り扱う必要がある。上述のとおり、無効な重み係数の値が演算式の分母に加算されてしまい、分母に誤差が生じるのを防止するためである。そこで、加重移動平均処理に際しては、ｔ２（２），ｔ２（３），ｔ２（４）を０として計算する。
【００９７】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ２（ｋ）｝／Σｔ２（ｋ）（但しｔ２（２）＝０，ｔ２（３）＝０，ｔ２（４）＝０とする）によって表される。すなわち、（０×０＋０×０＋０×０＋０×０＋８０×１）／（０＋０＋０＋０＋１）＝８０となる。この８０が、加重移動平均処理によって算出された脈拍数である。
【００９８】
（第６処理例）
図９は、加重移動平均処理の第６処理例を示す図である。図９の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、第２脈拍値ｐ（２）が零である。ここでは、第１脈拍値ｐ（１）が有効であることから、第１重み係数配列ｔ１（ｋ）が使用される。但し、第２脈拍値ｐ（２）が０であることから、第２重み係数ｔ２（２）を“０”として取り扱う必要がある。上述のとおり、無効な重み係数の値が演算式の分母に加算されてしまい、分母に誤差が生じるのを防止するためである。そこで、加重移動平均処理に際しては、ｔ１（２）を０として計算する。
【００９９】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ１（ｋ）｝／Σｔ１（ｋ）（但しｔ１（２）＝０とする）によって表される。すなわち、（９３×３４＋０×０＋８８×４＋８７×３＋８８×１）／（３４＋０＋４＋３＋１）＝９１．９８≒９２となる。この９２が、加重移動平均処理によって算出された脈拍数である。
【０１００】
（第７処理例）
図１０は、加重移動平均処理の第７処理例を示す図である。図１０の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のうち、第１脈拍値ｐ（１）を除いて、他の脈拍値がすべて零である。ここでは、第１脈拍値ｐ（１）が有効であることから、第１重み係数配列ｔ１（ｋ）が使用される。但し、第２脈拍値ｐ（２）〜第５脈拍値ｐ（５）がすべて０であることから、第２重み係数ｔ１（２）〜第５重み係数ｔ１（５）をすべて“０”として取り扱う必要がある。上述のとおり、無効な重み係数の値が演算式の分母に加算されてしまい、分母に誤差が生じるのを防止するためである。そこで、加重移動平均処理に際しては、ｔ１（２）〜ｔ１（５）をすべて０として計算する。
【０１０１】
この場合の加重移動平均処理は、演算式Σ（ｐ（ｋ）・ｔ１（ｋ）｝／Σｔ１（ｋ）（但しｔ１（２）＝０，ｔ１（３）＝０，ｔ１（４）＝０，ｔ１（５）＝０とする）によって表される。すなわち、（９３×３４＋０×０＋０×０＋０×０＋０×０）／（３４＋０＋０＋０＋０）＝９３≒９３となる。この９３が、加重移動平均処理によって算出された脈拍数である。
【０１０２】
（第８処理例）
図１１は、加重移動平均処理の第８処理例を示す図である。図１１の例では、５点の脈拍値（ｐ（１）〜ｐ（５））のすべてが零である。つまり、図１の第１メモリー部７０に記憶されている第１脈拍値〜第ｍ脈拍値（ここではｍ＝５）のすべてが無効である。この例では、第１脈拍値ｐ（１）が無効（＝０）であることから、第２重み係数配列ｔ２（ｋ）が使用される。但し、第１脈拍値ｐ（１）〜第５脈拍値ｐ（５）がすべて０であることから、脈拍値は０であるとして無効値化する。
【０１０３】
この例では、有効なデータがないことから、脈拍数は０となり、この０が脈拍数として出力される。これによって、加重移動平均算出部７２は、基礎となるすべての脈拍値が無効の場合に、加重移動平均値の算出に失敗したことを示す情報（つまり脈拍数が０）を出力することができる。
【０１０４】
図１２は、図１に示される拍動検出装置１００の動作手順の一例を示すフローチャートである。まず、脈波信号ｄのデータが取得される（ステップＳＴ１）。次に、フィルター処理が実行される（ステップＳＴ２）。次に、脈波信号ｄの周波数解析処理が実行されて、所定時間毎（例えば４秒毎）に脈拍値が算出される（ステップＳＴ３）。算出された脈拍値は、第１メモリー部７０に記憶される（ステップＳＴ４）。次に、最新の脈拍値（つまり第１脈拍値ｐ（１））が有効であるか否かが、加重移動平均算出部７２によって判断される（ステップＳＴ５）。
【０１０５】
ステップＳＴ５においてＹのときは、第１重み係数配列ｔ１（ｋ）が選択される（ステップＳＴ６）。また、ステップＳＴ５においてＮのときは、算出の基礎となる脈拍値がすべて無効であるかが判断される（ステップＳＴ７）。ステップＳＴ７でＮのときは、第２重み係数配列ｔ２（ｋ）が選択される（ステップＳＴ９）。ステップＳＴ７でＹのときは、加重移動平均値（算出された脈拍数）を無効値化する（ステップＳＴ８）。例えば、脈拍数を零とする。
【０１０６】
次に、ステップＳＴ６、またはステップＳＴ９で選択された重み係数配列を用いて、加重移動平均算出部７２が、記憶部に記憶されている脈拍値の加重移動平均値を算出する（ステップＳＴ１０）。その後、必要に応じて、消費カロリー等の付随的な情報の算出処理が実行される（ステップＳＴ１１）。このステップＳＴ１１は省略することができる。ステップＳＴ１２では、計測を継続するか否かが判断される（ステップＳＴ１２）。ステップＳＴ１２でＮのときは、処理を終了する。ステップＳＴ１２でＹのときは、ステップＳＴ１に戻って処理が継続される。
【０１０７】
次に、図１３および図１４を参照して、１時間程度の脈拍計測を実施した場合における、加重移動平均値、単純移動平均値ならびに移動平均処理なしの場合の脈拍値の、経過時間に対する推移の例を説明する。
【０１０８】
図１３は、一定時間連続して脈拍計測を実施した場合における、加重移動平均値ならびに単純移動平均値の経過時間に対する推移の例を示す図である。また、図１４は、一定時間連続して脈拍計測を実施した場合における、移動平均処理なしの場合の脈拍値の、経過時間に対する推移の例を示す図である。
【０１０９】
図１３において、加重移動平均値（算出された脈拍数）の推移は実線で示されており、単純移動平均値（算出された脈拍数）の推移は破線で示されている。単純移動平均値の時間遅れに比べて、加重移動平均値の時間遅れが小さいのは明らかである。また、図１４の例では、移動平均処理なしの場合の脈拍値が０である点が、複数、存在している。脈拍数が０であるということは、脈拍数の取得に失敗したことを意味する。図１３に示される、加重移動平均値によって算出される脈拍数は、０となっている点が一つもなく、安定した脈拍数の取得が実現されている。
【０１１０】
このように、本実施形態によれば、例えば、最新の脈拍値を重視した重み付けをすることによって、算出した脈拍値の時間遅れ（脈拍値の推移を示す特性線の位相遅れとみることもできる）遅れを軽減しつつ、移動平均処理による脈拍値の平滑化や誤差分散といった効果を得ることができる。
【０１１１】
また、第１重み係数配列および第２重み係数配列（これらは重み付けテーブルということもできる）を切り替えることによって、最新の脈拍値が計測できたときは、最新の脈拍値を重要視した加重移動平均処理を実施することができ、一方、最新の脈拍値が計測できなかったときは、平滑化の度合いを強めた加重移動平均処理を実施することができる。上述のとおり、脈拍値を検出できなかったということは、脈波信号に何らかのノイズが過分に含まれていた可能性が高く、過去に求めた脈拍値についても誤差が含まれる可能性がある。このような状況においては、平滑化の度合いを強める方が好ましい。
【０１１２】
なお、平滑化の度合いを強めた重み係数配列（上述の例では第２重み係数配列ｔ２（ｋ））を生成する場合に、重み係数の値を、例えば、２次関数的、あるいは指数関数的（非１次関数的）に変化させてもよい。
【０１１３】
また、例えば、最新の脈拍値以外の脈拍値が計測不可であった場合でも、その無効の脈拍値を無視して、加重移動平均処理を実施することができる。すなわち、加重移動平均の基礎となる複数の脈拍値の中に無効の脈拍値が含まれているときでも、加重移動平均処理による効果を得ることができる。
【０１１４】
また、加重移動平均の基礎となる複数の脈拍値がすべて無効であった場合には、脈拍数を零（つまり計測不可）として、記録したり表示したりすることができる。
【０１１５】
図１５（Ａ）および図１５（Ｂ）は、拍動検出装置の、被検体への装着例を示す図である。
【０１１６】
図１５（Ａ）の例は、腕時計型の拍動検出装置の例である。脈波センサー１０および表示部９４を含むベース部４００は、リストバンド３００によって、被検体（ユーザー）の左手首２００に装着されている。
【０１１７】
図１５（Ｂ）の例は、指装着型の拍動検出装置の例である。被検体の指先に挿入するためのリング状のガイド３０２の底部に、脈波センサー１０が設けられている。
【０１１８】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。また、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。
【符号の説明】
【０１１９】
１  発光部、２  被検体、３  発光部、４  可変ゲインアンプ、
５  Ａ／Ｄ変換部、６  ゲイン調整部、１０  脈波センサー、
２０  体動センサー（加速度センサーやジャイロセンサー等）、
１２  脈波信号蓄積部、３０  フィルター部、３４  体動成分除去フィルター、
４０（４０ａ〜４０ｃ）  周波数分解部、４２  脈波信号解析部、
４４  周波数傾向情報、４５  周波数解析結果情報、５０  周波数解析部、
６０  後処理部（拍動検出部）、６２  ピーク順ソート部、６４  相関判定部、
６６  拍動／体動分離部、６８  拍動呈示スペクトル特定部、
７０  第１メモリー部、７２  加重移動平均算出部、７４  第２メモリー部、
７６  重み係数格納部、８０  拍動呈示スペクトル捕捉処理部、
９０  脈拍値算出部、９２  表示処理部、９４  表示部、１００  拍動検出装置
【図１】
0005682383.tif 000002
【図２】
0005682383.tif 000003
【図３】
0005682383.tif 000004
【図４】
0005682383.tif 000005
【図５】
0005682383.tif 000006
【図６】
0005682383.tif 000007
【図７】
0005682383.tif 000008
【図８】
0005682383.tif 000009
【図９】
0005682383.tif 000010
【図１０】
0005682383.tif 000011
【図１１】
0005682383.tif 000012
【図１２】
0005682383.tif 000013
【図１３】
0005682383.tif 000014
【図１４】
0005682383.tif 000015
【図１５】
0005682383.tif 000016
【図１６】
0005682383.tif 000017