(57)【要約】  解析に適した脈波を連続的に得る。脈波算出装置（１０）は、センサ（１１）によって取得される身体の複数の領域における時系列のデータから、複数の領域のそれぞれに対応する脈波波形を抽出する。また、脈波算出装置（１０）は、時系列の区間ごとに、脈波波形のそれぞれの自己相関係数を算出する。また、脈波算出装置（１０）は、脈波波形のそれぞれの、基準の波形との差分を算出する。また、脈波算出装置１０は、区間ごとに、脈波波形から、自己相関係数が閾値以上である脈波波形のいずれかを選択する。また、脈波算出装置（１０）は、選択した脈波波形を、差分を用いて補正する。
2020070808.tif 000002
【特許請求の範囲】
【請求項１】
センサによって取得される身体の複数の領域における時系列のデータから、前記複数の領域のそれぞれに対応する脈波波形を抽出する抽出部と、
時系列の区間ごとに、前記脈波波形のそれぞれの自己相関係数を算出する相関算出部と、
前記脈波波形のそれぞれの、基準の波形との差分を算出する差分算出部と、
前記区間ごとに、前記脈波波形から、前記自己相関係数が閾値以上である脈波波形のいずれかを選択する選択部と、
前記選択部によって選択された脈波波形を、前記差分を用いて補正する補正部と、
を有することを特徴とする脈波算出装置。
【請求項２】
前記抽出部は、カメラによって撮影された前記身体の動画像のデータから前記脈波波形を抽出することを特徴とする請求項１に記載の脈波算出装置。
【請求項３】
前記抽出部は、前記データに対し、波長成分別の輝度の統計処理、及び脈波が取り得る周波数バンドを指定したバンドパスフィルタリング処理のうちの少なくともいずれかを行うことで前記脈波波形を抽出することを特徴とする請求項２に記載の脈波算出装置。
【請求項４】
前記相関算出部は、前記脈波波形のゼロクロス点、極大点及び極小点に対応する時刻を開始時刻及び終了時刻とする区間ごとに前記自己相関係数を算出することを特徴とする請求項１に記載の脈波算出装置。
【請求項５】
前記差分算出部は、前記脈波波形の基準の波形との位相差及び振幅比率を算出し、
前記補正部は、前記位相差及び前記振幅率を基に、前記選択部によって選択された脈波波形の位相及び振幅を補正することを特徴とする請求項１に記載の脈波算出装置。
【請求項６】
前記選択部は、前記自己相関係数が閾値以上である脈波波形のうち、前記領域のそれぞれにあらかじめ指定された順位が最も高い領域に対応する脈波波形を選択することを特徴とする請求項１に記載の脈波算出装置。
【請求項７】
コンピュータが、
センサによって取得される身体の複数の領域における時系列のデータから、身体の複数の領域のそれぞれに対応する脈波波形を抽出し、
時系列の区間ごとに、前記脈波波形のそれぞれの自己相関係数を算出し、
前記脈波波形のそれぞれの、基準の波形との差分を算出し、
前記区間ごとに、前記脈波波形から、前記自己相関係数が閾値以上である脈波波形のいずれかを選択し、
前記選択する処理によって選択された脈波波形を、前記差分を用いて補正する、
処理を実行することを特徴とする脈波算出方法。
【請求項８】
コンピュータに、
センサによって取得される身体の複数の領域における時系列のデータから、前記複数の領域のそれぞれに対応する脈波波形を抽出し、
時系列の区間ごとに、前記脈波波形のそれぞれの自己相関係数を算出し、
前記脈波波形のそれぞれの、基準の波形との差分を算出し、
前記区間ごとに、前記脈波波形から、前記自己相関係数が閾値以上である脈波波形のいずれかを選択し、
前記選択する処理によって選択された脈波波形を、前記差分を用いて補正する、
処理を実行させることを特徴とする脈波算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、脈波算出装置、脈波算出方法及び脈波算出プログラムに関する。
【背景技術】
【０００２】
従来、所定のセンサによって得られた身体に関する信号から、解析に用いる脈波を取得する技術が知られている。ここで、脈波とは、心臓の拍動に伴って血管に生じる体積等の変動である。また、脈波からは、脈拍間隔、波形及び伝播速度等の情報が導出される。さらに、脈波から導出された情報を解析することで、ストレス指標、血管年齢及び血圧等を把握することができる。【０００３】
また、所定の対象区間の信号の波形と他の区間の信号の波形との相関係数を算出し、相関係数の大きさが一定値以上であるか否かによって、当該対象区間の信号が脈波の解析に適したものであるか否かを判断する方法が知られている。また、カメラで撮影した身体の特定部位の動画像における、輝度信号の変化を基に脈波を算出する方法が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０７３１５９号公報
【特許文献２】特開２０１４−１７６５８４号公報
【特許文献３】特開２０１７−０００６１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の技術では、信号にノイズが混入することや、脈波の算出が困難な欠損区間が発生することにより、解析に適した脈波を連続的に得ることが難しい場合がある。【０００６】
例えば、対象区間の信号の波形との相関係数が一定値以上である波形が、他の区間のいずれにも存在しない場合、当該対象区間は欠損区間となる。また、カメラで撮像した特定部位の動画像に映った背景や影は、脈波を算出する際にノイズを発生させる場合がある。【０００７】
一つの側面では、解析に適した脈波を連続的に得ることができる脈波算出装置、脈波算出方法及び脈波算出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様において、脈波算出装置は、センサによって取得される身体の複数の領域における時系列のデータから、前記複数の領域のそれぞれに対応する脈波波形を抽出する。脈波算出装置は、時系列の区間ごとに、脈波波形のそれぞれの自己相関係数を算出する。脈波算出装置は、脈波波形のそれぞれの、基準の波形との差分を算出する。脈波算出装置は、区間ごとに、脈波波形から、自己相関係数が閾値以上である脈波波形のいずれかを選択する。脈波算出装置は、選択部によって選択された脈波波形を、差分を用いて補正する。
【発明の効果】
【０００９】
一つの態様によれば、解析に適した脈波を連続的に得ることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１に係る脈波算出装置の利用シーンの一例を示す図である。
【図２】図２は、実施例１に係る脈波算出装置の機能的構成の一例を示すブロック図である。
【図３】図３は、実施例１に係る差分情報のデータ構造の一例を示す図である。
【図４】図４は、実施例１に係る脈波算出処理の全体の流れの一例を示す図である。
【図５】図５は、実施例１に係る脈波波形の抽出処理及び区間の設定処理の一例を示す図である。
【図６】図６は、線形補完処理の一例を示す図である。
【図７】図７は、波長成分別の統計処理の一例を示す図である。
【図８】図８は、ゼロクロス点について説明するための図である。
【図９】図９は、実施例１に係る相関の算出処理の一例を示す図である。
【図１０】図１０は、実施例１に係る差分の算出処理の一例を示す図である。
【図１１】図１１は、実施例１に係る脈波波形の選択処理及び補正処理の一例を示す図である。
【図１２】図１２は、波形特徴の一例を示す図である。
【図１３】図１３は、実施例１に係る脈波算出処理の一例を示すフローチャートである。
【図１４】図１４は、実施例１に係る脈波波形抽出用データの取得処理の一例を示すフローチャートである。
【図１５】図１５は、実施例１に係る脈波波形の抽出処理の一例を示すフローチャートである。
【図１６】図１６は、実施例１に係る区間の設定処理の一例を示すフローチャートである。
【図１７】図１７は、実施例１に係る相関の算出処理の一例を示すフローチャートである。
【図１８】図１８は、実施例１に係る差分の算出処理の一例を示すフローチャートである。
【図１９】図１９は、実施例１に係る脈波波形の選択処理及び補正処理の一例を示すフローチャートである。
【図２０】図２０は、他の実施例に係る脈波算出装置の利用シーンの一例を示す図である。
【図２１】図２１は、脈波算出プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する脈波算出装置、脈波算出方法及び脈波算出プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせられてもよい。
【実施例１】
【００１２】
［全体構成及び利用シーン］
実施例１に係る脈波算出装置１０は、所定のセンサから取得したデータを基に、ノイズの少ない脈波を算出し、算出した脈波をユーザに提供することができる。具体的には、脈波算出装置１０は、脈波波形又は脈波波形の特徴を算出する。また、例えば、脈波算出装置１０は、光電脈波センサ又はカメラからデータを取得する。【００１３】
光電脈波センサは、ユーザの指等に装着され、末梢血管に照射した赤外線等の反射光の時系列の変動を信号として取得する。脈波算出装置１０は、光電脈波センサから取得した信号を基に、脈波を算出することができる。【００１４】
また、カメラは、ユーザの身体の特定部位の動画像を撮影し、動画像データを取得する。ここで、カメラによって取得される動画像データは、時系列のフレームごとの各画素の輝度信号である。このため、脈波算出装置１０は、輝度信号の変化を基に脈波を算出することができる。【００１５】
ここで、本実施例の脈波算出装置１０は、従来の手法と異なり、センサから身体の複数の領域における時系列のデータを取得する。例えば、脈波算出装置１０は、身体の複数の異なる部位に装着された光電脈波センサのそれぞれから信号を取得することができる。また、例えば、脈波算出装置１０は、カメラによって撮影された画像から身体の複数の部位に対応する領域を特定し、特定した領域のそれぞれから輝度信号を取得することができる。また、脈波算出装置１０は、複数のカメラによって撮影された身体の異なる部位の画像のそれぞれから輝度信号を取得してもよい。【００１６】
図１を用いて、本実施例の脈波算出装置１０の利用シーンについて説明する。図１は、実施例１に係る脈波算出装置の利用シーンの一例を示す図である。図１の例では、脈波算出装置１０は、スマートフォンである。また、図１の例では、スマートフォンに備えられたカメラがセンサ１１として機能する。また、図１の例では、スマートフォンに備えられたタッチパネルディスプレイが出力部１４として機能する。【００１７】
ユーザは、脈波算出装置１０のセンサ１１で測定対象（例えば、自身）を撮影する。そして、脈波算出装置１０は、撮影された画像を基に脈波を算出し、算出した脈波及び脈波に関する情報を画像として出力部１４に出力する。図１の例では、脈波算出装置１０は、心拍数及び脈波波形を出力する。また、脈波算出装置１０は、ユーザによって撮影された測定対象の画像に、脈波算出のために特定した領域を示すマーカを重畳させた画像を出力部１４に出力する。図１の例では、脈波算出装置１０は、測定対象のユーザの眉間、首もと及び手のひらの領域を特定している。この他にも、脈波算出装置１０は、測定対象のユーザの耳たぶ、頬、額等の領域を特定してもよい。【００１８】
［機能的構成］
図２を用いて、脈波算出装置１０の機能的構成について説明する。図２は、実施例１に係る脈波算出装置の機能的構成の一例を示すブロック図である。図２に示すように、脈波算出装置１０は、センサ１１、記憶部１２、制御部１３及び出力部１４を有する。【００１９】
センサ１１は、ユーザの身体に関する信号を取得する。例えば、センサ１１は、光電脈波センサ又は動画像を撮影可能なカメラである。また、脈波算出装置１０は、複数のセンサ１１を備えていてもよい。本実施例では、センサ１１を内蔵する形を取っているが、外付け又は、計測結果のみを入力する形でもよい。【００２０】
記憶部１２は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、ハードディスクや光ディスク等の記憶装置によって実現される。記憶部１２は、差分情報１２１を有する。また、記憶部１２は、制御部１３での処理に用いる情報を記憶する。【００２１】
差分情報１２１は、身体の部位間の脈波波形の差分を示す情報である。なお、身体の部位間の脈波波形は、後述する抽出処理において得られる。図３は、実施例１に係る差分情報のデータ構造の一例を示す図である。図３に示すように、差分情報１２１には、所定の部位を基準とした場合の、各部位の位相差及び振幅比率が含まれる。例えば、図３は、部位Ｂの脈波波形の、部位Ａの脈波波形に対する位相差が−１１ｍｓｅｃであり、振幅比率が０．９１であることを示している。なお、位相差及び振幅比率の差分は、身体の各部位の心臓からの距離及び取得可能な信号の強度等の違いに起因する。【００２２】
図２の説明に戻って、制御部１３は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、内部の記憶装置に記憶されているプログラムがＲＡＭを作業領域として実行されることにより実現される。また、制御部１３は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現されるようにしてもよい。制御部１３は、取得部１３１、抽出部１３２、設定部１３３、相関算出部１３４、差分算出部１３５、選択部１３６、補正部１３７、及び出力制御部１３８を有し、以下に説明する情報処理の機能や作用を実現又は実行する。なお、制御部１３の内部構成は、図１に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。【００２３】
ここで、図４を用いて、脈波算出装置１０の処理の全体の流れとともに、制御部１３に含まれる各部の処理の詳細を説明する。図４は、実施例１に係る脈波算出処理の全体の流れの一例を示す図である。また、図４の矢印は、データの流れを表している。【００２４】
取得部１３１は、センサ１１によって取得された信号であって、身体の各部位の時系列の信号のデータを取得する。取得部１３１は、各部位の信号を、それぞれ個別のデータとして取得してもよいし、１つのデータとして取得してもよい。例えば、取得部１３１は、身体の各部位を撮影した複数の異なる動画像データを取得してもよいし、身体の各部位を含む領域を撮影した１つの動画像データを取得してもよい。また、取得部１３１は、一定時間分の信号をまとめて取得してもよいし、信号をリアルタイムに連続的に取得してもよい。【００２５】
センサ１１が光電脈波センサである場合、取得部１３１は、所定のサンプリングレート（例えば、１２８Ｈｚ（hertz））で取得された脈波を示す信号を取得する。一方、センサ１１がカメラである場合、取得部１３１は、時系列の所定のフレームごと（例えば、３０Ｈｚ）の各画素の輝度信号を取得する。【００２６】
ここで、センサ１１がカメラである場合、取得部１３１は、図５のグラフ１１Ｇ及びグラフ２１Ｇに示すようなデータを取得することができる。図５は、実施例１に係る脈波波形の抽出処理及び区間の設定処理の一例を示す図である。グラフ１１Ｇ及びグラフ２１Ｇは、Ｂ（Ｂｌｕｅ）、Ｇ（Ｇｒｅｅｎ）、Ｒ（Ｒｅｄ）の波長帯ごとの輝度信号の変化を示している。なお、図５の各グラフの横軸は時刻を表すものとする。また、図５の各グラフの縦軸は、信号の強度を表すものとする。ただし、本実施例では、図５の各グラフの横軸の単位を秒とする。また、図５の各グラフの縦軸の単位は、各グラフで共通の任意単位であってよい。【００２７】
また、取得部１３１は、動画像データから身体の各部位を検出し、検出した部位の領域を特定した上で、各領域の撮像時系列データを得る。例えば、取得部１３１は、顔、頬、手のひら、耳たぶ、首もと等を部位として検出し、検出した各部位の画像上の領域を特定することができる。【００２８】
図４の説明に戻って、抽出部１３２は、センサ１１によって取得される身体の複数の領域における時系列のデータから、複数の領域のそれぞれに対応する脈波波形を抽出する。ここで、抽出部１３２は、センサ１１によって取得される身体の複数の領域における時系列データを、取得部１３１から受け取る。また、抽出部１３２は、図５のグラフ１２Ｇ及びグラフ２２Ｇに示すような脈波波形を抽出する。【００２９】
センサ１１が光電脈波センサである場合、抽出部１３２は、光電脈波センサによって取得された時系列の波形データに対し、脈波の取り得る周波数バンド（例えば、４０−２４０ｂｐｍ（beats  per  minute））を指定したバンドパスフィルタ処理を行うことで脈波波形を抽出することができる。なお、ｂｐｍは１分間当たりの心拍数であり、１Ｈｚ＝６０ｂｐｍが成り立つ。【００３０】
一方、センサ１１がカメラである場合、抽出部１３２は、カメラによって撮影された身体の動画像のデータから脈波波形を抽出する。この場合、抽出部１３２は、データに対し、波長成分別の輝度の統計処理、及び脈波が取り得る周波数バンドを指定したバンドパスフィルタリング処理のうちの少なくともいずれかを行うことで脈波波形を抽出する。【００３１】
まず、波長成分別の輝度の統計処理について説明する。抽出部１３２は、取得部１３１によって取得された撮像時系列データに、線形補完処理を行うことができる。なお、線形補完処理は、統計処理の一例である。図６は、線形補完処理の一例を示す図である。図６に示すように、取得部１３１によって取得された撮像時系列データでは、波長帯別の輝度信号Ｒｅｄ、Ｂｌｕｅ及びＧｒｅｅｎの時系列の間隔が一定でない。【００３２】
ここで、抽出部１３２は、撮像時系列データに線形補完、又はスプライン補完を行い、時系列を一定にした波長帯別の輝度信号Ｒｅｄ２、Ｇｒｅｅｎ２及びＢｌｕｅ２を算出する。さらに、抽出部１３２は、後述するフィルタ処理のためのデータとして、ｄｂＧｒｅｅｎ及びｄｂＲｅｄを算出する。なお、ｄｂＧｒｅｅｎは、Ｇｒｅｅｎ２そのものである。また、ｄｂＲｅｄは、（Ｒｅｄ２＋Ｂｌｕｅ２）／２により算出される。【００３３】
さらに、抽出部１３２は、ｄｂＧｒｅｅｎ及びｄｂＲｅｄに対し、波長成分別の統計処理を行うことにより脈波波形を抽出する。図７は、波長成分別の統計処理の一例を示す図である。図７に示すように、抽出部１３２は、ノイズ領域抽出部１３２ａ及び脈波領域抽出部１３２ｂを有する。【００３４】
ノイズ領域抽出部１３２ａは、入力されたｄｂＧｒｅｅｎ及びｄｂＲｅｄから、バンドパスフィルタ処理及びローパスフィルタ処理により、ノイズ領域の信号データを抽出する。また、脈波領域抽出部１３２ｂは、入力されたｄｂＧｒｅｅｎ及びｄｂＲｅｄから、バンドパスフィルタ処理により、脈波領域の信号データの候補を抽出する。さらに、脈波領域抽出部１３２ｂは、抽出した信号データの候補から、ノイズ領域抽出部１３２ａによって抽出された信号データを用いてノイズを除去した信号データを、脈波波形として出力する。【００３５】
ここで、図７のノイズ領域抽出部１３２ａ及び脈波領域抽出部１３２ｂの処理について説明する。まず、ＢＰＦ（Band-pass  filter）１３２１ａは、ｄｂＧｒｅｅｎ及びｄｂＲｅｄから、例えば１２−１８ｂｐｍの周波数帯の信号データを抽出する。なお、１２−１８ｂｐｍは、呼吸によるノイズが現れやすい周波数帯の例である。次に、ＡＢＳ（absolute  value）１３２２ａは、入力された信号データを絶対値に変換する。そして、ＬＰＦ（Low-pass  filter）１３２３ａは平滑化処理を行う。ＬＰＦ１３２３ａは、、例えば０．０１５Ｈｚ（０．９ｂｐｍ）以下の周波数帯の信号データを抽出する。除算部１３２４ａは、ｋ＝Ｒｅｄ／Ｇｒｅｅｎを計算する。ここでのＲｅｄ及びＧｒｅｅｎは、ＬＰＦ１３２３ａによって抽出された信号データである。【００３６】
ＢＰＦ１３２１ｂは、ｄｂＧｒｅｅｎ及びｄｂＲｅｄから、例えば４２−１５０ｂｐｍの周波数帯の信号データを抽出する。４２−１５０ｂｐｍは、脈波が取り得る周波数帯の例である。次に、除算部１３２２ｂは、Ｒｅｄ´＝Ｒｅｄ／ｋを計算する。ここでのＲｅｄは、ＢＰＦ１３２１ｂによって抽出された信号データである。また、ｋは、除算部１３２４ａによって計算される値である。そして、減算部１３２３ｂは、Ｇｒｅｅｎ−Ｒｅｄ´を計算する。ここでのＧｒｅｅｎは、ＢＰＦ１３２１ｂによって抽出された信号データである。ここで、ＢＦＰ１３２４ｂは、Ｇｒｅｅｎ−Ｒｅｄ´から、例えば４２−１５０ｂｐｍの周波数帯の信号データを抽出する。【００３７】
次に、脈波が取り得る周波数バンドを指定したバンドパスフィルタリング処理を行う場合について説明する。この場合、抽出部１３２は、輝度信号Ｇｒｅｅｎに対し、脈波が取り得る周波数バンドとして、例えば４２−２１０ｂｐｍを通過するフィルタを使用し、脈波波形を抽出する。【００３８】
図４の説明に戻って、設定部１３３は、抽出部１３２によって抽出された脈波波形に対応する期間の、時系列の区間を設定する。図５のグラフ１３Ｇ及びグラフ２３Ｇに示すように、設定部１３３は、所定の時刻から、例えば２秒間ごとの区間を設定していってもよい。図５の例では、設定部１３３は、時刻２７を開始時刻とし、時刻２７から時刻２９までの区間、時刻２９から時刻３１までの区間、及び時刻３１から時刻３３までの区間を設定する。【００３９】
また、設定部１３３は、脈波波形のゼロクロス点、極大点及び極小点に対応する時刻を開始時刻及び終了時刻とする区間を設定してもよい。図８は、ゼロクロス点について説明するための図である。図８の例では、設定部１３３は、１個目のゼロクロス点を開始時刻とし、５個目のゼロクロス点を終了時刻とする区間を設定している。また、ゼロクロス点とは、０又は閾値を表すゼロ値線と、波形を表す曲線の交点である。また、設定部１３３は、極大値及び極小値を用いて区間を設定してもよい。【００４０】
相関算出部１３４は、時系列の区間ごとに、脈波波形のそれぞれの自己相関係数を算出する。ここで、自己相関係数は、抽出部１３２によって脈波波形として抽出された波形の、脈波らしさを表す指標である。また、例えば、相関算出部１３４は、特許文献２に記載された方法によって自己相関係数を算出することができる。【００４１】
図９に示すように、相関算出部１３４は、グラフごとかつ区間ごとに自己相関を算出する。図９は、実施例１に係る相関の算出処理の一例を示す図である。また、グラフは部位ごとの脈波波形を表しているので、相関算出部１３４は、部位ごとかつ区間ごとの自己相関係数を算出することになる。【００４２】
自己相関係数は、脈波波形と当該脈波波形を所定周期分だけずらした脈波波形との相関の度合いを示す。このため、自己相関係数は、脈波波形の周期及び振幅の変化が小さいほど大きくなる。また、センサ１１による信号取得時のノイズが少ないほど脈波波形が安定し、自己相関係数が大きくなる。逆に、センサ１１による信号取得時のノイズが多いほど、脈波波形が不安定になり自己相関係数が小さくなる。【００４３】
例えば、相関算出部１３４は、グラフ１３Ｇの時刻２７から時刻２９の区間の自己相関係数を０．８と算出する。また、例えば、相関算出部１３４は、グラフ１３Ｇの時刻２９から時刻３１の区間の自己相関係数を０．２と算出する。例えば、相関算出部１３４は、グラフ１３Ｇの時刻３１から時刻３３の区間の自己相関係数を０．８と算出する。このように、同じ部位の脈波波形であっても、区間によって自己相関係数が大きく変化する場合がある。【００４４】
図４の説明に戻って、差分算出部１３５は、脈波波形のそれぞれの、基準の波形との差分を算出する。具体的には、差分算出部１３５は、脈波波形の基準の波形との位相差及び振幅比率を算出する。また、差分算出部１３５は、算出した差分を差分情報１２１として記憶部１２に格納する。【００４５】
図１０を用いて、差分算出部１３５による差分の算出方法について説明する。図１０は、実施例１に係る差分の算出処理の一例を示す図である。図１０例では、脈波波形１ｗの振幅はＳ１である。また、脈波波形１ｗのゼロクロス点の時刻はｔ１である。また、脈波波形１ｗの振幅はＳ２である。また、脈波波形２ｗのゼロクロス点の時刻はｔ２である。【００４６】
このとき、差分算出部１３５は、脈波波形１ｗを基準としたときの、脈波波形２ｗの脈波波形１ｗに対する位相差をｔ２−ｔ１と算出する。また、差分算出部１３５は、脈波波形１ｗを基準としたときの、脈波波形２ｗの脈波波形１ｗに対する振幅比率を、Ｓ２／Ｓ１と算出する。なお、基準の決め方によっては、差分算出部１３５が位相差として負の値を算出することもあり得る。【００４７】
ここで、脈波の元になった心臓の拍動が共通していたとしても、当該拍動による血管の収縮が伝わる時刻は、部位ごとにずれることが考えられる。このため、設定部１３３が脈波波形のゼロクロス点や極値を基に区間を設定した場合、血管の収縮が各部位に伝わるまでの時間差が、すなわち遅延時間を生じさせることになる。そして、この遅延時間が脈波波形間の位相差に現れる。【００４８】
図４の説明に戻って、選択部１３６は、区間ごとに、脈波波形から、自己相関係数が閾値以上である脈波波形のいずれかを選択する。また、補正部１３７は、選択部１３６によって選択された脈波波形を、差分を用いて補正する。【００４９】
図１１を用いて、脈波波形の選択処理及び補正処理について説明する。図１１は、実施例１に係る脈波波形の選択処理及び補正処理の一例を示す図である。図１１に示すように、選択部１３６は、各区間で、グラフ１３Ｇの脈波波形及びグラフ２３Ｇの脈波波形のうちのいずれかを選択する。また、ここでは、例として閾値を０．６とする。【００５０】
図１１の例では、時刻２７から時刻２９の区間において、いずれの脈波波形でも自己相関係数が閾値を超えている。このような場合、選択部１３６は、自己相関係数が閾値以上である脈波波形のうち、領域のそれぞれにあらかじめ指定された順位が最も高い領域に対応する脈波波形を選択するようにしてもよい。ここでは、選択部１３６は、グラフ１３Ｇの脈波波形を選択するものとする。なお、選択部１３６は、自己相関係数が最も大きい脈波波形を選択するようにしてもよい。【００５１】
時刻２９から時刻３１の区間では、グラフ１３Ｇの脈波波形の自己相関係数が閾値以下であり、グラフ２３Ｇの脈波波形の自己相関係数が閾値を超えている。このため、選択部１３６は、グラフ２３Ｇの脈波波形を選択する。【００５２】
また、補正部１３７は、位相差及び振幅率を基に、選択部１３６によって選択された脈波波形の位相及び振幅を補正する。例えば、図３に示すように、部位Ｂの脈波波形の、部位Ａの脈波波形に対する位相差は−１１ｍｓｅｃであり、振幅比率は０．９１である。ここで、部位Ｂの脈波波形が選択部１３６によって選択された場合、補正部１３７は、選択された脈波波形を１１ｍｓｅｃだけ時系列の進行方向へずらし、振幅に１／０．９１を掛けることで補正を行う。【００５３】
また、補正部１３７は、補正した脈波波形を合成し、解析用脈波波形を生成する。つまり、補正部１３７は、区間ごとに各部位から選択された脈波波形を補正した上でつなぎ合わせた脈波波形を、解析用脈波波形として生成する。なお、補正部１３７は、補正を行わずに解析用脈波波形を生成してもよいし、位相差のみを補正した脈波波形をつなぎ合わせて解析用脈波波形を生成してもよい。【００５４】
図４の説明に戻って、出力制御部１３８は、出力部１４に、解析用脈波波形又は解析用脈波波形の特徴を出力させる。例えば、出力制御部１３８は、図１１のグラフ３０Ｇを出力部１４に出力させる。また、出力制御部１３８は、出力部１４に波形特徴を出力させてもよい。【００５５】
図１２を用いて、波形特徴について説明する。図１２は、波形特徴の一例を示す図である。図１２に示すように、波形特徴には、ピーク点間の幅、振幅、トップライン及びベースライン等がある。また、出力制御部１３８は、脈波波形の一階微分又は二階微分の波形特徴を出力させてもよい。【００５６】
［処理の流れ］
図１３から図１９を用いて、本実施例の脈波算出処理の流れについて説明する。図１３は、実施例１に係る脈波算出処理の一例を示すフローチャートである。図１３に示すように、まず、脈波算出装置１０は、センサ１１の信号から脈波波形を抽出するためのデータを取得する（ステップＳ１）。次に、取得したデータから複数の部位の脈波波形を抽出する（ステップＳ２）。【００５７】
ここで、脈波算出装置１０は、抽出した脈波波形に区間を設定する（ステップＳ３）。そして、脈波算出装置１０は、部位ごとに各区間の脈波波形の自己相関係数を算出する（ステップＳ４）。【００５８】
次に、脈波算出装置１０は、部位間の位相及び振幅の差分を算出する（ステップＳ５）。そして、脈波算出装置１０は、各区間の解析用脈波波形を生成する（ステップＳ６）。その後、脈波算出装置１０は、解析用脈波波形又は解析用脈波波形の特徴を出力する（ステップＳ７）。【００５９】
図１４を用いて、脈波算出装置１０がデータを取得する処理（ステップＳ１）の詳細を説明する。図１４は、実施例１に係る脈波波形抽出用データの取得処理の一例を示すフローチャートである。なお、図１４に示す処理は、センサ１１がカメラである場合のものである。センサ１１が光電脈波センサである場合、脈波算出装置１０は、センサ１１から取得したデータそのものを、脈波波形のデータを抽出するためのデータとして取得することができる。【００６０】
図１４に示すように、まず、脈波算出装置１０は、カメラの画像を取得する（ステップＳ１０１）。次に、脈波算出装置１０は、取得した画像から各部位を検出する（ステップＳ１０２）。ここで、脈波算出装置１０は、検出した部位の領域を特定する（ステップＳ１０３）。そして、脈波算出装置１０は、特定した領域の輝度の領域平均を算出する（ステップＳ１０４）。【００６１】
ここで、脈波算出装置１０は、未処理の部位があるか否かを判定する（ステップＳ１０５）。未処理の部位がある場合（ステップＳ１０５、Ｙｅｓ）、脈波算出装置１０は、ステップＳ１０３に戻り、当該未処理の部位を対象として処理を繰り返す。【００６２】
一方、未処理の部位がない場合（ステップＳ１０５、Ｎｏ）、脈波算出装置１０は、ステップＳ１０６へ進む。そして、脈波算出装置１０は、未処理の画像があるか否かを判定する（ステップＳ１０６）。未処理の画像がある場合（ステップＳ１０６、Ｙｅｓ）、脈波算出装置１０は、ステップＳ１０１へ戻り、当該未処理の画像を対象として処理を繰り返す。一方、未処理の画像がない場合（ステップＳ１０６、Ｎｏ）、領域平均から輝度波形を生成する（ステップＳ１０７）。【００６３】
ここで、ステップＳ１０６における未処理の画像とは、例えば時系列で取得した動画像における未処理のフレームの画像である。つまり、脈波算出装置１０は、所定期間の動画像の各フレームの画像について、ステップＳ１０１からＳ１０６までの処理を繰り返す。【００６４】
次に、図１５を用いて、脈波算出装置１０が脈波波形を抽出する処理（ステップＳ２）の詳細を説明する。図１５は、実施例１に係る脈波波形の抽出処理の一例を示すフローチャートである。なお、図１５に示す処理は、センサ１１がカメラである場合のものである。ただし、センサ１１が光電脈波センサである場合であっても、脈波算出装置１０は、ステップＳ２においてノイズフィルタ処理等を行うことができる。【００６５】
図１５に示すように、まず、脈波算出装置１０は、輝度波形のノイズ領域を抽出する（ステップＳ２０１）。次に、脈波算出装置１０は、輝度波形の脈波領域を抽出する（ステップＳ２０２）。そして、脈波算出装置１０は、脈波領域からノイズ領域を除去し、脈波波形を抽出する（ステップＳ２０３）。【００６６】
次に、図１６を用いて、脈波算出装置１０が区間を設定する処理（ステップＳ３）の詳細を説明する。図１６は、実施例１に係る区間の設定処理の一例を示すフローチャートである。図１６に示すように、脈波算出装置１０は、脈波波形の開始点を決定する（ステップＳ３０１）。次に、脈波算出装置１０は、脈波波形の終了点を決定する（ステップＳ３０２）。そして、脈波算出装置１０は、開始点及び終了点を基に区間を設定する。ここで、開始点及び終了点は、あらかじめ定められた所定の時刻であってもよいし、脈波波形のゼロクロス点及び極値に対応する時刻であってもよい。【００６７】
次に、図１７を用いて、相関を算出する処理（ステップＳ４）の詳細を説明する。図１７は、実施例１に係る相関の算出処理の一例を示すフローチャートである。図１７に示すように、まず、脈波算出装置１０は、区間を選択する（ステップＳ４０１）。次に、脈波算出装置１０は、部位を選択する（ステップＳ４０２）。ここで、脈波算出装置１０は、選択した部位の脈波波形の選択した区間における自己相関係数を算出する（ステップＳ４０３）。【００６８】
ここで、脈波算出装置１０は、未処理の部位があるか否かを判定する（ステップＳ４０４）。未処理の部位がある場合（ステップＳ４０４、Ｙｅｓ）、脈波算出装置１０は、ステップＳ４０２に戻り、当該未処理の部位を選択して処理を繰り返す。【００６９】
一方、未処理の部位がない場合（ステップＳ４０４、Ｎｏ）、脈波算出装置１０は、ステップＳ４０５へ進む。そして、脈波算出装置１０は、未処理の区間があるか否かを判定する（ステップＳ４０５）。未処理の区間がある場合（ステップＳ４０５、Ｙｅｓ）、脈波算出装置１０は、ステップＳ４０１へ戻り、当該未処理の区間を選択して処理を繰り返す。一方、未処理の区間がない場合（ステップＳ４０５、Ｎｏ）、脈波算出装置１０は、相関を算出する処理を終了する。【００７０】
次に、図１８を用いて、脈波算出装置１０が差分を算出する処理（ステップＳ５）の詳細を説明する。図１８は、実施例１に係る差分の算出処理の一例を示すフローチャートである。図１８に示すように、まず、脈波算出装置１０は、部位を選択する（ステップＳ５０１）。次に、脈波算出装置１０は、選択した部位の脈波波形の各区間における自己相関係数の最大値が、閾値より大きいか否かを判定する（ステップＳ５０２）。自己相関係数の最大値が閾値より大きい場合（ステップＳ５０２、Ｙｅｓ）、脈波算出装置１０は、選択した部位の基準部位との間の位相差及び振幅比率を算出する（ステップＳ５０３）。一方、自己相関係数の最大値が閾値以下である場合（ステップＳ５０２、Ｎｏ）、脈波算出装置１０は、位相差及び振幅比率を算出せずにステップＳ５０４へ進む。【００７１】
ここで、脈波算出装置１０は、未処理の部位があるか否かを判定する（ステップＳ５０４）。未処理の部位がある場合（ステップＳ５０４、Ｙｅｓ）、脈波算出装置１０は、ステップＳ５０１に戻り、当該未処理の部位を選択して処理を繰り返す。一方、未処理の部位がない場合（ステップＳ５０４、Ｎｏ）、脈波算出装置１０は、差分を算出する処理を終了する。【００７２】
次に、図１９を用いて、解析用脈波波形を生成する処理（ステップＳ６）の詳細を説明する。まず、図１９に示すように、脈波算出装置１０は、区間を選択する（ステップＳ６０１）。次に、脈波算出装置１０は、優先度順に部位を選択する（ステップＳ６０２）。つまり、ステップＳ６０２において、脈波算出装置１０は、未選択の部位のうち、あらかじめ定められた優先度が最も大きい部位を選択する。【００７３】
ここで、脈波算出装置１０は、選択した区間における、選択した部位に対応する脈波波形の自己相関係数が閾値より大きいか否かを判定する（ステップＳ６０３）。自己相関係数が閾値より大きい場合（ステップＳ６０３、Ｙｅｓ）、選択した区間における、選択した部位に対応する脈波波形を選択し保持し（ステップＳ６０４）、ステップＳ６０７へ進む。【００７４】
一方、自己相関係数が閾値以下である場合（ステップＳ６０３、Ｎｏ）、脈波算出装置１０は、未処理の部位があるか否かを判定する（ステップＳ６０５）。未処理の部位がある場合（ステップＳ６０５、Ｙｅｓ）、脈波算出装置１０は、ステップＳ６０２へ戻り、当該未処理の部位を優先度順に選択し、処理を繰り返す。【００７５】
一方、未処理の部位がない場合（ステップＳ６０５、Ｎｏ）、脈波算出装置１０は、選択した区間を欠損区間とする（ステップＳ６０６）。そして、脈波算出装置１０は、未処理の区間があるか否かを判定する（ステップＳ６０７）。未処理の区間がある場合（ステップＳ６０７、Ｙｅｓ）、脈波算出装置１０は、ステップＳ６０１へ戻り、当該未処理の区間を選択して処理を繰り返す。【００７６】
一方、未処理の区間がない場合（ステップＳ６０７、Ｎｏ）、脈波算出装置１０は、保持している脈波波形を補正し、合成する（ステップＳ６０８）。ここで、脈波算出装置１０は、補正は、ステップＳ５で算出した差分を用いて補正を行う。【００７７】
［効果］
これまで説明したように、脈波算出装置１０は、センサ１１によって取得される身体の複数の領域における時系列のデータから、複数の領域のそれぞれに対応する脈波波形を抽出する。また、脈波算出装置１０は、時系列の区間ごとに、脈波波形のそれぞれの自己相関係数を算出する。また、脈波算出装置１０は、脈波波形のそれぞれの、基準の波形との差分を算出する。また、脈波算出装置１０は、区間ごとに、脈波波形から、自己相関係数が閾値以上である脈波波形のいずれかを選択する。また、脈波算出装置１０は、選択した脈波波形を、差分を用いて補正する。このように、脈波算出装置１０は、複数の時系列のデータを基に脈波を算出することができる。このため、脈波算出装置１０は、仮に複数のデータのうち一部のデータにノイズが多く発生している区間があったとしても、他のデータで当該区間の脈波を補うことができる。このため、脈波算出装置１０は、解析に適した脈波を連続的に得ることができる。【００７８】
また、脈波算出装置１０は、カメラによって撮影された身体の動画像のデータから脈波波形を抽出する。これにより、脈波算出装置１０は、光電脈波センサを使うことが困難な状況であっても、解析に適した脈波を得ることができる。【００７９】
また、脈波算出装置１０は、抽出部１３２は、カメラによって撮影された身体の動画像のデータから脈波波形を抽出する。また、脈波算出装置１０は、データに対し、波長成分別の輝度の統計処理、及び脈波が取り得る周波数バンドを指定したバンドパスフィルタリング処理のうちの少なくともいずれかを行うことで脈波波形を抽出する。これにより、脈波算出装置１０は、カメラで撮影した画像に発生するノイズを除去し、精度良く脈波を算出することができる。【００８０】
また、脈波算出装置１０は、脈波波形のゼロクロス点、極大点及び極小点に対応する時刻を開始時刻及び終了時刻とする区間ごとに自己相関係数を算出する。これにより、脈波算出装置１０は、区間を容易に設定することができる。【００８１】
また、脈波算出装置１０は、脈波波形の基準の波形との位相差及び振幅比率を算出する。また、脈波算出装置１０は、位相差及び振幅率を基に、選択した脈波波形の位相及び振幅を補正する。これにより、脈波算出装置１０は、複数の部位の脈波波形に遅延や強度の差分が生じていたとしても、当該差分を補正して解析用の脈波波形を生成することができる。【００８２】
また、脈波算出装置１０は、自己相関係数が閾値以上である脈波波形のうち、領域のそれぞれにあらかじめ指定された順位が最も高い領域に対応する脈波波形を選択する。これにより、脈波算出装置１０は、基準として望ましい部位がある場合、当該部位の脈波波形を選択しやすくなる。【００８３】
［他の実施例］
これまで、図１に示すように、脈波算出装置１０がセンサ１１及び出力部１４を備える場合の例について説明した。一方で、本発明の脈波算出装置は、図２０に示すような他の構成によって実現されてもよい。図２０は、他の実施例に係る脈波算出装置の利用シーンの一例を示す図である。図２０に示すように、脈波算出装置１０ａは、ネットワークＮに接続されたサーバである。また、ネットワークＮには、撮影装置２０及び出力装置３０が接続されている。例えば、撮影装置２０は、スマートフォン及びＷｅｂカメラ等である。また、出力装置３０は、スマートフォン及びパーソナルコンピュータ等である。【００８４】
また、脈波算出装置１０ａは、実施例１の脈波算出装置１０と同等の機能を有する。ただし、脈波算出装置１０ａは、撮影装置２０によって取得された動画像データをネットワークＮを介して取得する。また、脈波算出装置１０ａは、動画像データを基に算出した脈波波形等を、ネットワークＮを介して出力装置３０に送信する。そして、出力装置３０は、脈波波形等を出力する。【００８５】
［システム］
また、各実施例において説明した各処理のうち、自動的に行なわれるものとして説明した処理の一部を手動的に行うこともできる。あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。【００８６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、図２に示す相関算出部１３４と差分算出部１３５とを統合してもよい。また、図２に示す抽出部１３２を、ノイズ領域抽出部１３２ａ及び脈波領域抽出部１３２ｂに分散してもよい。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、プロセッサ及び当該プロセッサにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。【００８７】
上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図２１は、脈波算出プログラムを実行するコンピュータの一例を示す図である。【００８８】
コンピュータ１００は、操作部１１０ａと、センサ１１０ｂと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、プロセッサ１５０と、ＲＯＭ（Read  Only  Memory）１６０と、外部記憶装置１７０と、ＲＡＭ（Random  Access  Memory）１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。【００８９】
ＲＡＭ１８０の一例としては、ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）、フラッシュメモリ等のメモリが挙げられる。プロセッサ１５０の一例としては、ＣＰＵ（Central  Processing  Unit）、ＤＳＰ（Digital  Signal  Processor）、ＦＰＧＡ（Field  Programmable  Gate  Array）、ＰＬＤ（Programmable  Logic  Device）等が挙げられる。【００９０】
外部記憶装置１７０には、図２１に示すように、上記の実施例で示した各機能部と同様の機能を発揮する脈波算出プログラム１７０ａがあらかじめ記憶される。この脈波算出プログラム１７０ａについては、図２に示した各々の構成要素と同様、適宜統合又は分離しても良い。すなわち、外部記憶装置１７０に格納される各データは、常に全てのデータが外部記憶装置１７０に格納される必要はなく、処理に必要なデータのみが外部記憶装置１７０に格納されればよい。【００９１】
そして、プロセッサ１５０が、脈波算出プログラム１７０ａを外部記憶装置１７０から読み出してＲＡＭ１８０に展開する。これによって、図２１に示すように、脈波算出プログラム１７０ａは、脈波算出プロセス１８０ａとして機能する。この脈波算出プロセス１８０ａは、外部記憶装置１７０から読み出した各種データを適宜ＲＡＭ１８０上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、脈波算出プロセス１８０ａは、図２に示した各機能部にて実行される処理、例えば図１３から図１９に示す処理を含む。また、プロセッサ１５０上で仮想的に実現される各処理部は、常に全ての処理部がプロセッサ１５０上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されればよい。【００９２】
なお、上記の脈波算出プログラム１７０ａについては、必ずしも最初から外部記憶装置１７０やＲＯＭ１６０に記憶させておく必要はない。例えば、コンピュータ１００に挿入される「可搬用の物理媒体」に各プログラムを記憶させることができる。可搬用の物理媒体は、フレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ（Compact  Disc  Read  Only  Memory）、ＤＶＤ（Digital  Versatile  Disc）、光磁気ディスク、ＩＣ（Integrated  Circuit）カード等の任意の媒体を採用できる。そして、コンピュータ１００がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮ等を介してコンピュータ１００に接続される他のコンピュータ又はサーバ装置等に各プログラムを記憶させておき、コンピュータ１００がこれらから各プログラムを取得して実行するようにしてもよい。
【符号の説明】
【００９３】
１０、１０ａ  脈波算出装置
１１  センサ
１２  記憶部
１３  制御部
１４  出力部
２０  撮影装置
３０  出力装置
１２１  差分情報
１３１  取得部
１３２  抽出部
１３３  設定部
１３４  相関算出部
１３５  差分算出部
１３６  選択部
１３７  補正部
１３８  出力制御部
【図１】
2020070808.tif 000003
【図２】
2020070808.tif 000004
【図３】
2020070808.tif 000005
【図４】
2020070808.tif 000006
【図５】
2020070808.tif 000007
【図６】
2020070808.tif 000008
【図７】
2020070808.tif 000009
【図８】
2020070808.tif 000010
【図９】
2020070808.tif 000011
【図１０】
2020070808.tif 000012
【図１１】
2020070808.tif 000013
【図１２】
2020070808.tif 000014
【図１３】
2020070808.tif 000015
【図１４】
2020070808.tif 000016
【図１５】
2020070808.tif 000017
【図１６】
2020070808.tif 000018
【図１７】
2020070808.tif 000019
【図１８】
2020070808.tif 000020
【図１９】
2020070808.tif 000021
【図２０】
2020070808.tif 000022
【図２１】
2020070808.tif 000023
【国際調査報告】
2020070808.tif 000024
2020070808.tif 000025
2020070808.tif 000026
2020070808.tif 000027