(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023131271
(43)【公開日】2023-09-22
(54)【発明の名称】非接触脈拍推定装置、非接触脈拍推定方法及びプログラム
(51)【国際特許分類】
A61B 5/02 20060101AFI20230914BHJP
【FI】
A61B5/02 310Z
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022035911
(22)【出願日】2022-03-09
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 第24回情報論的学習理論ワークショップ、令和3年11月12日
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成30年度、国立研究開発法人科学技術振興機構事業の研究領域「計測技術と高度情報処理の融合によるインテリジェント計測・解析手法の開発と応用」における研究題目「学習型動態モーフィングによる神経間シグナル伝達特性の解明」に係る委託事業、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
(74)【代理人】
【識別番号】100180921
【弁理士】
【氏名又は名称】峰 雅紀
(72)【発明者】
【氏名】徳永 旭将
(72)【発明者】
【氏名】野見山 陸
【テーマコード(参考)】
4C017
【Fターム(参考)】
4C017AA09
4C017AA10
4C017AB06
4C017AC13
4C017BC08
4C017BC16
4C017CC03
4C017FF05
(57)【要約】
【課題】 本発明は、従来よりも高精度なサーマルカメラによる非接触脈拍推定装置等を提供することを目的とする。
【解決手段】 サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置であって、前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析部と、前記周波数解析部が出力した周波数成分のうち、脈拍成分である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する脈拍成分決定部とを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置であって、
前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析部と、
前記周波数解析部が出力した周波数成分のうち、脈拍成分である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する脈拍成分決定部とを備える、非接触脈拍推定装置。
【請求項2】
前記周波数成分のうち、前記脈拍周波数範囲における最大の振幅と、前記脈拍周波数範囲から外れる周波数成分の振幅の和又は積分との比であるパルスSNRを算出するパルスSNR算出部をさらに備え、
前記脈拍成分決定部は、前記パルスSNRが最大となる周波数成分を脈拍成分として決定する、請求項1記載の非接触脈拍推定装置。
【請求項3】
前記パルスSNR算出部は、式(1)に基づいて前記パルスSNRを算出する、請求項2記載の非接触脈拍推定装置。
【数1】
【請求項4】
前記映像データから脈拍の推定に使用する関心領域を決定する関心領域決定部をさらに備え、
前記関心領域決定部は、顔領域を前記関心領域として決定する、請求項1から3のいずれかに記載の非接触脈拍推定装置。
【請求項5】
前記関心領域決定部は、前記映像データに二値化処理を行い、高い輝度で最大の面積を有する領域を前記顔領域として決定する、請求項4記載の非接触脈拍推定装置。
【請求項6】
前記顔領域のうち、顎位置を決定する顎位置決定部と、
映像データから抽出された画像データと当該映像データにおける顎位置とを教師データとして用いるものであり、入力を映像データから抽出された画像データとし、出力を当該映像データにおける顎位置とする判定モデルを生成するモデル生成部とをさらに備え、
前記顎位置決定部は、前記判定モデルを用いて前記顎位置を決定する、請求項4又は5記載の非接触脈拍推定装置。
【請求項7】
前記顔領域のうち、肌領域を決定する肌領域決定部をさらに備え、
前記肌領域決定部は、肌を表す輝度値の閾値である第1閾値を動的に決定する、請求項4から6のいずれかに記載の非接触脈拍推定装置。
【請求項8】
前記顔領域内の肌ピクセルの比率をフレーム毎に算出する肌比率算出部をさらに備え、
前記肌領域決定部は、前記比率を一定に保つように前記第1閾値を更新する、請求項7記載の非接触脈拍推定装置。
【請求項9】
脈拍成分を抽出する領域を決定する脈拍領域決定部をさらに備え、
前記脈拍領域決定部は、前記比率が第2閾値以上の領域の中からのみ脈拍成分を抽出する領域を決定する、請求項8記載の非接触脈拍推定装置。
【請求項10】
前記映像データからフレーム毎に抽出された画像データを低解像度化して低解像画像を出力する低解像度化部と、
前記脈拍成分決定部が決定した脈拍成分に対応するフレームにおいて、前記低解像画像を前記画像データと関連付ける処理を行う脈波可視化部とをさらに備える、請求項1から9のいずれかに記載の非接触脈拍推定装置。
【請求項11】
サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置を用いた非接触脈拍推定方法であって、
前記非接触脈拍推定装置は、
前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析部と、
前記周波数解析部が出力した周波数成分のうち、脈拍成分を決定する脈拍成分決定部とを備え、
前記周波数解析部が、前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析ステップと、
前記脈拍成分決定部が、前記周波数解析部が出力した周波数成分のうち、脈拍成分である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する脈拍成分決定ステップとを含む、非接触脈拍推定方法。
【請求項12】
コンピュータに、請求項11記載の非接触脈拍推定方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、非接触脈拍推定装置、非接触脈拍推定方法及びプログラムに関し、特に、サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置等に関するものである。
【背景技術】
【0002】
カメラベースの非接触脈拍推定において、脈拍による血管の容積変化を血管からの反射光の強度により測定するPPG(光電脈波;Photoplethysmography)技術が知られている。通常は接触に近い形で計測が行われている。確実性は高いが、高価なセンサである。
【0003】
PPGのうち、RGBカメラなど非接触で測定するrPPGは、数十cm程度離れた場所から非接触/非侵襲であり、特殊な器具が不要というメリットがある。
【0004】
他方、ROI(関心領域;Region Of Interest)の大きさによってはROI内で照明の当たり具合が異なることがある。これにより、顔の半分が影になったりしていた場合に明るい方を選択するのか、暗い方を選択するのか、またぐように選択するのかによって結果が変わる。また、信号に照明成分が含まれることがある他、濃い肌の色の場合は、ヘモグロビンの量の経時変化がメラニン色素の影響で見えづらくなるため、分析が困難となる。
【0005】
サーマルカメラによる非接触バイタルセンシングの特長として、以下のようなことが挙げられる。(1)夜間での測定を可能にする。(2)信号に照明成分は含まれない。(3)濃い肌の色であってもメラニン色素の影響を受けない。(4)プライバシーに関する懸念を軽減できる。
【0006】
ただし、RGBカメラに基づく技術ほど研究が盛んではない。なお、サーマルカメラによる非接触バイタルセンシングに関して、独自に収集したデータで検証がされているということが知られている(非特許文献1,2参照)。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】S. Cosar, Z. Yan, F. Zhao, T. Lambrou, S. Yue and N. Bellotto, “Thermal Camera Based Physiological Monitoring with an Assistive Robot,” 2018 40th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2018, pp. 5010-5013, doi: 10.1109/EMBC.2018.8513201.
【非特許文献2】Mayank Kumar, Ashok Veeraraghavan and Ashutosh Sabharwal, “DistancePPG: Robust non-contact vital signs monitoring using a camera”, Biomedical Optics Express Vol.6, Issue 5, pp.1565-1588, 2015.
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、カメラベースのバイタル推定技術の共通の課題として、脈波の信号強度が低い、動きや周囲の環境変化に起因するノイズが重畳する。また、非生理的なノイズが生理信号と同じ周波数帯に含まれることが挙げられる。
【0009】
また、LWIR (長波長赤外線;Long Wave Infrared)を用いる通常のサーマルカメラの課題として、RGB画像と比べ空間解像度が低く、顔パーツの位置や詳細な特徴が得られない。
【0010】
加えて、サーマルカメラによる非接触バイタルセンシングについては、独自に収集したデータでの検証に留まるため、これまでに提案されてきた手法の性能が公正に評価されていない。
【0011】
そこで、本発明は、従来よりも高精度なサーマルカメラによる非接触脈拍推定装置等を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の第1の観点は、サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置であって、前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析部と、前記周波数解析部が出力した周波数成分のうち、脈拍の周波数である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する脈拍成分決定部とを備える、非接触脈拍推定装置である。
【0013】
本発明の第2の観点は、第1の観点の非接触脈拍推定装置であって、前記周波数成分のうち、前記脈拍周波数範囲における最大の振幅と、前記脈拍周波数範囲から外れる周波数成分の振幅の和又は積分との比であるパルスSNRを算出するパルスSNR算出部をさらに備え、前記脈拍成分決定部は、前記パルスSNRが最大となる周波数成分を脈拍成分として決定する。
【0014】
本発明の第3の観点は、第2の観点の非接触脈拍推定装置であって、前記パルスSNR算出部は、式(1)に基づいて前記パルスSNRを算出する。
【0015】
【0016】
本発明の第4の観点は、第1から第3のいずれかの観点の非接触脈拍推定装置であって、前記映像データから脈拍の推定に使用する関心領域を決定する関心領域決定部をさらに備え、前記関心領域決定部は、顔領域を前記関心領域として決定する。
【0017】
本発明の第5の観点は、第4の観点の非接触脈拍推定装置であって、前記関心領域決定部は、前記映像データに二値化処理を行い、高い輝度で最大の面積を有する領域を前記顔領域として決定する。
【0018】
本発明の第6の観点は、第4又は第5の観点の非接触脈拍推定装置であって、前記顔領域のうち、顎位置を決定する顎位置決定部と、映像データから抽出された画像データと当該映像データにおける顎位置とを教師データとして用いるものであり、入力を映像データから抽出された画像データとし、出力を当該映像データにおける顎位置とする判定モデルを生成するモデル生成部とをさらに備え、前記顎位置決定部は、前記判定モデルを用いて前記顎位置を決定する。
【0019】
本発明の第7の観点は、第4から第6のいずれかの観点の非接触脈拍推定装置であって、前記顔領域のうち、肌領域を決定する肌領域決定部をさらに備え、前記肌領域決定部は、肌を表す輝度値の閾値である第1閾値を動的に決定する。
【0020】
本発明の第8の観点は、第7の観点の非接触脈拍推定装置であって、前記顔領域内の肌ピクセルの比率をフレーム毎に算出する肌比率算出部をさらに備え、前記肌領域決定部は、前記比率を一定に保つように前記第1閾値を更新する。
【0021】
本発明の第9の観点は、第8の観点の非接触脈拍推定装置であって、脈拍成分を抽出する領域を決定する脈拍領域決定部をさらに備え、前記脈拍領域決定部は、前記比率が第2閾値以上の領域の中からのみ脈拍成分を抽出する領域を決定する。
【0022】
本発明の第10の観点は、第1から第9のいずれかの観点の非接触脈拍推定装置であって、前記映像データからフレーム毎に抽出された画像データを低解像度化して低解像画像を出力する低解像度化部と、前記脈拍成分決定部が決定した脈拍の周波数成分に対応するフレームにおいて、前記低解像画像を前記画像データと関連付ける処理を行う脈波可視化部とをさらに備える。
【0023】
本発明の第11の観点は、サーマルカメラにより取得した映像データから脈拍を推定する非接触脈拍推定装置を用いた非接触脈拍推定方法であって、前記非接触脈拍推定装置は、前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析部と、前記周波数解析部が出力した周波数成分のうち、脈拍の周波数成分を決定する脈拍成分決定部とを備え、前記周波数解析部が、前記映像データから抽出された複数の脈波信号に周波数解析を行う周波数解析ステップと、前記脈拍成分決定部が、前記周波数解析部が出力した周波数成分のうち、脈拍の周波数である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する脈拍成分決定ステップとを含む、非接触脈拍推定方法である。
【0024】
本発明の第12の観点は、コンピュータに、第11の観点の非接触脈拍推定方法を実行させるためのプログラムである。
【発明の効果】
【0025】
本発明の各観点によれば、従来よりも高精度なサーマルカメラによる非接触脈拍推定装置等を提供することが可能となる。
【0026】
また、本発明の第2又は第3の観点によれば、本発明者らが発明したパルスSNRという指標を用いることにより、客観的に従来より精度よく脈拍を推定することがさらに容易となる。
【0027】
また、本発明の第4又は第5の観点によれば、サーマルカメラから得られた映像データから顔領域を自動的に抽出し、非接触脈拍推定装置等を実施することがさらに容易となる。
【0028】
さらに、本発明の第6の観点によれば、顎位置を精度よく検出することが可能となる。そのため、安定して精度よく顔領域を抽出することがさらに容易となる。
【0029】
さらに、本発明の第7の観点によれば、抽出された顔領域のうち、脈波信号を検出すべき肌領域を特定することが容易となる。
【0030】
さらに、本発明の第8の観点によれば、時間経過に伴って映像全体の明度が徐々に変化する傾向があるサーマル映像においても、安定して肌領域を特定することがさらに容易となる。
【0031】
さらに、本発明の第9の観点によれば、脈拍信号を抽出するために適切な領域を決定することがさらに容易となる。
【0032】
さらに、本発明の第10の観点によれば、サーマル映像から抽出された脈波信号を可視化した映像データを得ることが可能となる。
【図面の簡単な説明】
【0033】
【
図1】本実施例に係る非接触脈拍推定装置1の概要を示すブロック図である。
【
図2】本実施例に係る非接触脈拍推定方法の概要を示すフロー図である。
【
図4】本実施例の手法による顔検出の有効性を例示する図である。
【
図7】本実施例における5人の被験者のサーマル画像を例示する図である。
【
図8】被験者について、パルスオキシメータにより測定された基準値の経時的な推移(実線)と、使用する映像と同期するように切り出した期間(破線)を例示する図である。
【
図9】各手法により推定された脈拍数について、基準値との絶対誤差が特定のbpm以下であるデータの数をヒストグラムで示したものである。
【
図10】各手法とPPG基準値との一致度を示した図である。
【
図11】本実施例により抽出された脈波を可視化する流れを示した図である。
【
図12】本実施例に係る脈波の可視化方法により再構成された映像データの時間方向に連続する複数のフレームを例示する図である。
【発明を実施するための形態】
【0034】
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、本発明の実施例は、以下に記載する内容に限定されるものではない。
【実施例0035】
図1は、本実施例に係る非接触脈拍推定装置1の概要を示すブロック図である。非接触脈拍推定装置1は、関心領域決定部3と、顎位置決定部5と、モデル生成部7と、肌領域決定部9と、肌比率算出部11と、脈拍領域決定部13と、周波数解析部15と、脈拍成分決定部17と、パルスSNR算出部19と、低解像度化部21と、脈波可視化部23とを備える。
【0036】
非接触脈拍推定装置1は、サーマルカメラにより取得した映像データから脈拍を推定する。関心領域決定部3は、映像データに含まれる顔の領域(以下、「顔領域」と表記)を脈拍の推定に使用する関心領域として決定する。また、関心領域決定部3は、映像データから抽出された画像データに二値化処理を行い、高い輝度で最大の面積を有する領域を顔領域として決定する。以下、関心領域をROIとも表記することがある。
【0037】
顎位置決定部5は、映像データにおける顎の位置(以下、「顎位置」と表記)を決定する。モデル生成部7は、映像データから抽出された画像データと当該映像データにおける顎の位置とを教師データとして用いるものであり、入力を映像データから抽出された画像データとし、出力を当該映像データにおける顎の位置とする判定モデルを生成する。
【0038】
肌領域決定部9は、顔領域のうち、肌領域を決定する。また、肌領域決定部9は、肌を表す輝度値の第1閾値を動的に決定する。肌比率算出部11は、顔領域内の肌ピクセルの比率をフレーム毎に算出する。肌領域決定部9は、この肌ピクセルの比率を一定に保つように第1閾値を更新する。
【0039】
脈拍領域決定部13は、肌ピクセルの比率が第2閾値以上の領域の中からのみ脈拍成分を抽出する領域を決定する。
【0040】
周波数解析部15は、映像データから抽出された複数の脈波信号に周波数解析を行う。脈拍成分決定部17は、周波数解析部15が出力した周波数成分のうち、脈拍成分である可能性がある周波数範囲である脈拍周波数範囲における最大の振幅を有する周波数成分を脈拍成分として決定する。パルスSNR算出部19は、周波数成分のうち、脈拍周波数範囲における最大の振幅と、脈拍周波数範囲から外れる周波数成分の振幅の和又は積分との比であるパルスSNRを算出する。
【0041】
低解像度化部21は、フレーム毎に前記映像データを低解像度化して低解像映像を出力する。脈波可視化部は、脈拍成分決定部17が決定した脈拍成分に対応するフレームにおいて、低解像度化部21が出力した低解像映像を映像データと関連付ける処理を行う。
【0042】
以下、
図2を参照して、本実施例に係る非接触脈拍推定方法の概要について述べる。
図2は、本実施例に係る非接触脈拍推定方法の概要を示すフロー図である。
【0043】
本実施例に係る非接触脈拍推定方法は、複数のROIの選択(ステージ1)、脈波信号の抽出(ステージ2)、BSS(ブラインド信号源分離;Blind Source Separation)の適用(ステージ3)の3つの段階で構成される。以下、各段階の処理の詳細について述べる。
【0044】
図3を参照して、ステージ1について述べる。
図3は、ステージ1の概要を示すフロー図である。ステージ1は、脈拍推定を行うROIの選択である。この段階は、顔検出工程、肌検出工程、ROIの分割及び選択工程の3つの工程に分かれている。
図3には、それぞれの工程で必要となるパラメータも示されている。
【0045】
カメラを用いた脈拍推定において、安定的なROIの選択は、最初の重要なステップである。まずROIの選択にあたり、サーマル画像から被験者の顔領域を抽出する。
【0046】
本発明者は、サーマル映像に適した顔検出技術としてGoogle Researchより提案された機械学習モデルの1つであるBlazeFaceがサーマル画像に対しても顔検出器として機能することを確認した。BlazeFaceは、RGB画像のデータセットを用いて学習された、顔の位置と顔のキーポイントを高速に検出する深層学習モデルである。
【0047】
ただし、BlazeFaceは、顔が正面を向いている画像に比べて顔を傾けた画像では各進度が低いことも確認された。また、連続的に撮影されたサーマル映像に対して顔検出を行った際に、フレーム毎に検出される顔領域の位置に若干のばらつきがある様子が見られた。rPPGによる脈拍推定では、定常的に同じ領域をROIとして選択し続ける必要があるため、このような検出結果は好ましくない。
【0048】
そこで、本実施例では、BlazeFaceによる顔検出に加え、人間の肌がサーマル映像中に高い輝度値で表示される性質を利用した閾値処理による顔検出手法を使用する。輝度値を基準にすることで顔領域内の背景の映り込みを少なくし安定した領域選択が期待される。
【0049】
閾値処理の手段として、まず映像中の肌部分のみを正確に検出するため各フレームにおいてコントラスト強調を行い、被験者の肌と服や背景などの輝度値の差を大きくする。その後コントラスト強調後の画像に二値化を行い、検出された面積の最も大きな領域を顔領域とする。
【0050】
ただし、サーマル画像において被験者の肌が首元まで写っている場合、閾値処理による顔検出では被験者の顎位置を決定することが難しいため、顎位置のみBlazeFaceにより補完した。
【0051】
図4は、本実施例の手法による顔検出の有効性を例示する図である。
図4には、サーマル映像の各フレームにおいて、BlazeFaceによる顔検出の結果(
図4(a))と、BlazeFaceと閾値処理を併用した手法による顔検出の結果(
図4(b))の比較結果が示されている。
【0052】
図4(a)に示すBlazeFaceでは、左から右に時間が経過すると共に、検出される顔領域が異なっている。他方、
図4(b)に示すBlazeFaceと閾値処理を併用した手法では、経時的により安定した顔領域が得られている。
【0053】
続いて、Stage1の肌検出工程について述べる。この工程では、顔検出工程で検出された顔領域から肌ピクセルのみを抽出する。ROIには、髭や眉、背景など、脈拍とは無関係なピクセルが含まれている。これらの領域が存在することで、定量化される脈波信号に対するノイズ源となり得る。
【0054】
そのため、本実施例では、顔検出と同様の閾値処理により、脈波信号に寄与しない肌以外のピクセルをROIから除外する。ただし、背景と顔を分ける処理とは異なり、肌と毛髪は、比較的近い輝度値を有する。
【0055】
人物の違いや体調によって肌を表す輝度値は異なるため、k-means++(非階層型クラスタリング)により動的に閾値を決定する。k-meansは、クラスタ中心を見つけるアルゴリズムである。k-means++は、データを指定した数のクラスタにランダムに分けた後、各データとクラスタ重心の距離が最小となるように、クラスタの割り当てを最適化するクラスタリング手法である。k-means++により、データ毎に異なる輝度値を有している肌を自動的に検出できると考えられる。
【0056】
サーマル映像では、時間経過に伴って映像全体が徐々に明るく、又は、暗くなるようなトレンドが見られる場合もある。そのため、閾値はフレーム毎に更新する必要がある。
【0057】
閾値の更新方法としては、k-means++をフレーム毎に実行する方法も考えられる。しかし、k-means++は、設定される初期値によってクラスタリング結果が異なる場合がある。この場合、決定される閾値や抽出される脈波信号に影響が及びかねない。
【0058】
そこで、閾値の更新方法として、顔領域内の肌ピクセルの比率をフレーム毎に算出し、比率を一定に保つように閾値を更新する方法を採用する。
【0059】
まず、最初のフレームで、k-means++により肌検出の閾値Bskinを決定する。その閾値により、二値化されたマスク画像における肌と非肌のピクセル数の比率を取る。これを基準肌比率rbaseとする。以降のフレームでは、前のフレームで決定した閾値Bskinで肌検出を行った後、現在のフレームにおける肌比率rを算出し、式(2.1)に示す更新則に従い肌検出の閾値Bskinを更新する。
【0060】
【0061】
ここで、zは、肌比率の一定性を評価するパラメータである。式(2.1)に示す更新則では、フレーム毎の肌比率の変化量がzを超えた場合に、肌検出の閾値Bskinを更新するものとする。
【0062】
本実施例に係る手法は、適応的な肌ピクセル閾値の決定により、脈波信号を抽出する領域をより定常的なものにするものと仮定している。
【0063】
続いて、ステージ1のROIの分割及び選択工程について述べる。ROI選択の最後の処理として、複数の脈波信号を抽出するために、顔領域を縦横に等分することで複数のROIに分割する。
【0064】
皮膚領域が異なると、表皮の厚さ、毛細血管の密度、顔の特徴などが異なるため、異なる品質の脈波信号が得られることとなる。
【0065】
本実施例では、ROIの数を複数に設定することで、候補となる脈波信号の数を増やし、後の処理により共通する脈拍成分とその他の非生理的なノイズに分離する。
【0066】
ROIの分割数は、使用したカメラの解像度や、カメラと被写体との距離に依存する。例えば、4×4ピクセル程度の小さなROIや複数の顔のパーツを含んでいるような大きなROIは、適切ではない可能性があることが知られている。また、分割されたROIには、背景や毛髪を多く含むものもある。そのため、本実施例では、ROI内の肌ピクセルの割合が閾値v未満のものは脈波信号を抽出する領域から除外した。
【0067】
次に、ステージ2の脈波信号の抽出と有効な信号の選択の段階について述べる。
図5は、ステージ2の概要を示すフロー図である。ステージ1の段階により、脈波を抽出するための複数のROIが得られた。ステージ2では、各ROIから信号の抽出を行う。
【0068】
カメラ映像から脈波を抽出する手法では、RGBカメラであるかサーマルカメラであるかに関わらず、ROI内の平均輝度値をフレーム毎に計算して脈波とすることが一般的である。これは、平均を取ることでカメラノイズが提言され、脈波信号のSNR(信号対雑音比:Single-to-Noise-Ratio)を向上させるのに役立つためとされている。
【0069】
本実施例では、ステージ1の肌検出工程により、ROI内に含まれる肌以外のピクセルはマスクされている。そのため、肌ピクセルのみで平均値を取る。
【0070】
各ROIから抽出された信号は、以下の2つの条件により、いくつかの信号に絞られる。
【0071】
まず、鼻孔付近のROIから呼吸成分を多く含む信号が得られることを避けることが望ましい。そのため、各ROIで抽出した信号の周波数スペクトル解析を行い、呼吸周波数である[blow, bhigh]Hzの範囲に最大のスペクトルピークを持つ信号を除外した。
【0072】
また、各信号において連続する2フレーム間の値の差を全てのフレームに渡って計算し、信号毎に最大の差となる値を算出した。連続するフレーム間で値の大きな変動がある場合は、被験者の動きによる変動が含まれていると考えられる。このため、最大の差が閾値dを超える信号も除外した。
【0073】
そして、
図6を参照して、ステージ3のBSSによる脈拍成分の分離と脈拍数の推定の段階について述べる。
図6は、ステージ3の概要を示すフロー図である。
【0074】
ステージ3では、複数の信号を活用して脈拍数の推定を行う。映像から抽出された脈波信号には多様な非生理的なノイズが混合しており、脈拍成分の信号強度は小さい。rPPGにおいて信号のSNRを向上させる方法として、固定のカットオフ周波数を持つバンドパスフィルタリングが使用される。しかし、通常、非生理的なノイズは、脈拍成分と同じ周波数帯域内に存在するため、不十分であるとされている。
【0075】
そこで、異なるROIから抽出した複数の脈波信号に対してBSSを適用し、信号に含まれる成分の分離を行う。1チャンネルのサーマル映像にBSSを適用する手法は、本発明において提案するものである。
【0076】
本実施例では、BSS技術の中でも特に独立成分分析に焦点を当てる。分割したROIから得られる信号をx(t)=[x1(t), x2(t),…,xn(t)]T (t=0,1,2,…)とすると、観測信号x(t)には、脈波やその他の非生理的な信号など様々な成分が含まれていると考えられる。ここで、観測信号に含まれる信号源をs(t)=[s1(t), s2(t),…,sm(t)]Tとするとき、x(t)とs(t)の間に、式(2.2)であらわされる線形の関係を仮定する。
【0077】
【0078】
ただし、Tは転置、nとmは、それぞれ観測信号及び信号源の個数(n>=m)、Aは未知のn×mの混合行列であるとする。独立成分分析は、式(2.2)により信号源s(t)を推定するために、s(t)の各成分同士が互いに独立であるという仮定をする。
【0079】
本実施例では、独立成分分析のアルゴリズムに、FastICAを使用した。FastICAは、逐次的に独立成分を推定していく手法であり、収束が早いという特徴がある。また、前処理として主成分分析による白色化と次元縮約を行うこととする。
【0080】
独立成分分析により得られた信号源s(t)の内、どの成分が脈波信号に相当するかは不明であり、何らかの指標により脈波信号の特定を行う必要がある。
【0081】
そこで、本発明者は、新たにパルスSNRという指標を提案する。パルスSNRは、式(2.3)で定義される。
【0082】
【0083】
脈拍成分の選択及び脈拍数の推定は、以下の処理により行われる。分離された各信号は、生体信号解析に使用されるトレンド除去処理を適用された後、高速フーリエ変換(FFT)によって周波数領域に変換され、周波数スペクトルS(f)が得られる。ここで、式(2.3)のfはHz単位の周波数であり、Nはサンプリング周波数を2で除算した値とする。
【0084】
パルスSNRは、周波数スペクトルS(f)について、[Plow, Phigh]Hzの脈拍周波数帯域における最大の振幅と、関心周波数帯域以外の振幅の和で比を取った値である。パルスSNRは、ピーク周波数がどの程度支配的であるかを示す指標である。
【0085】
パルスSNRの値が大きければ、脈拍成分を含むことがより確信的であるものと仮定し、パルスSNRが最大となる分離成分を脈波信号として選択する。
【0086】
最後に、選択された信号の周波数スペクトルを解析し、[Plow, Phigh]Hzの周波数帯域で最大の振幅を持つ周波数を求める。得られた周波数はHz単位であるため、60を乗算して1分間当たりの脈拍数とした。
【0087】
以下、サーマル映像及びサーマル画像を用いた脈拍推定についての実験について述べる。本実験では、本実施例の手法によりサーマル映像から脈拍数を推定した。
【0088】
まず、本実験で用いたデータについて述べる。本実施例では、イギリスのリンカーン大学にあるLincoln Centre for Autonomous Systems Research (L-CAS)により収集された、サーマルカメラによる生理学的モニタリング用のデータセットを使用する。データセットにはサーマル映像と、基準値としてパルスオキシメータにより撮影と同時に測定された脈拍数の数値データが含まれる。
【0089】
使用されたカメラは、解像度382×288ピクセル、フレームレート27fps、波長域8-14マイクロメートルで、カメラと被験者の距離は、約1.5メートルである。
【0090】
映像及び数値データは、5人の被験者を対象に記録され、被験者毎に約2分間ずつ測定された。被験者は、前半の1分間は静止し、後半は頭を上下、左右に傾け、それぞれ10秒間維持するように指示された。
【0091】
本実験では、被験者にそれぞれA,B,C,D,EのIDを付けた。
図7は、本データセットの5人の被験者のサーマル画像を例示する図である。被験者は、カメラに対して体を正面に向けて撮影された。映像データは約2分間ずつ撮影されているが、本実験では静止している前半1分間のデータを解析した。
【0092】
また、Eの被験者は、他の被験者と比較して肌の輝度値が低く、基準とするPPGにより測定された脈拍数が平均して20以上高かったため、本実験で使用するデータから除外した。
【0093】
さらに、それぞれの被験者毎に撮影された映像データには途切れがあり、連続性が損なわれている部分があった。本実験では、10秒以上の連続した映像データを解析することとし、映像の途切れている部分を除き、全被験者合計で12個の映像に分割した。表1に本実験で使用する分割した映像データのフレーム数を示す。
【0094】
【0095】
パルスオキシメータにより測定された基準値は、約0.1秒間隔で約2分間にわたり記録された。単位はbpm(1分間の脈拍数;Beats Per Minute)であり、1分間当たりの脈拍数を示す。映像と記録された数値とを同期させるため、離散的な数値データを3次スプライン補完により多項式で近似し、1/27秒間隔でリサンプリングした。
【0096】
図8は、被験者Aについて、パルスオキシメータにより測定された基準値の経時的な推移(実線)と、使用する映像と同期するように切り出した期間(破線)を示す図である。切り出したそれぞれの期間における基準値の平均値を、本実験における脈拍数の基準値とした。
【0097】
次に、比較手法とパラメータ設定について述べる。本実験では、サーマル映像を用いた3つの脈拍推定手法をベースラインとして実験を行った。以下、3つの手法を、WeightedMean、WeightedMax、FaceMeanと呼ぶこととする。
【0098】
WeightedMeanは、分割された各ROIの信号に重み付けをし、その加重平均より脈波を抽出する。WeightedMeanでは、重みとなる指標にパルスSNRを使用し、ROIの数だけ算出されたパルスSNRを最小値0、最大値1になるように正規化して加重平均を取ることとする。
【0099】
WeightedMaxは、パルスSNRで付けられた重みが最大となったROIを一つだけ用いて脈波を抽出する手法である。
【0100】
FaceMeanは、ROIを分割せず顔全体を一つのROIとして脈波を抽出する手法である。
【0101】
それぞれの手法において、信号は肌検出後の肌ピクセルのみから抽出された。抽出された信号には後処理として、トレンド除去及び通過周波数帯域を0.90-1.65Hzに設定したバンドパスフィルターを適用した。その後、各信号はFFTにより周波数領域に変換され、最大の振幅を持つ周波数に60を乗算して推定された脈拍数とした。
【0102】
本発明のアプローチでは、いくつかのパラメータを設定する必要がある。これらのパラメータの多くは、実験的に決定された。本実験で用いたデータ以外で検証を行う場合は、パラメータの調整が必要な可能性がある。表2に各処理において設定したパラメータの値を示す。表2中の括弧内には、使用したPython(登録商標)のライブラリを示している。また、k-means++による肌検出では、クラスタ数を4に設定してクラスタリングを行った後、得られた4つのクラスタ重心の最大値と2番目に大きい値の平均値を肌検出の閾値Bskinとした。
【0103】
【0104】
以下、表3、
図9及び
図10を参照して、本発明の手法及び比較手法による実験結果を示す。表3には、式(3.1)で定義されるMean Absolute Error(MAE;平均絶対誤差)による基準値と推定値の絶対誤差の平均値を用いた各手法の性能評価を示す。表3中の括弧内には、絶対誤差の標準偏差を示す。
【0105】
【0106】
【0107】
ここで、i = 1, 2, …, nである。また、nをデータ数(n=12)とするとき、HRiは各データにおいて推定された脈拍数を表し、GTiは各データにおいてPPGにより測定された基準値を表すものとする。表3中の数値の単位は、1分間当たりの脈拍数を表すbpmである。
【0108】
図9は、各手法により推定された脈拍数について、基準値との絶対誤差が特定のbpm以下であるデータの数をヒストグラムで示したものである。横軸には階級として3bpm毎の絶対誤差を設定し、縦軸は各階級に該当するデータの数とした。なお、各階級共に、左から順にWeightedMean、WeightedMax、FaceMean、Proposed(提案手法)を表している。ただし、Proposedは、誤差15以上の階級には分布しなかった。また、誤差27及び誤差30の階級には、それぞれFaceMean、WeightedMaxの手法のみが分布した。
【0109】
図10は、Bland-Altman分析(ブランド-アルトマン分析)により各手法とPPG基準値との一致度を示した図である。Bland-Altman分析は、系統誤差を確認する方法である。系統誤差は、固定誤差と比例誤差に分けられる。固定誤差とは、真の値に関わらず、特定方向に一定の幅で生じる乖離のことである。比例誤差とは、真の値に比例して増減する、特定方向に生じる誤差のことである。
図10の各グラフには12個全てのデータがプロットされている。グラフの横軸は基準値と各手法による推定値の平均値、縦軸は基準値と各手法による推定値の誤差となっている。
【0110】
また、
図10において、実線は誤差の平均値を示し、破線は95%の信頼区間を示している。95%の信頼区間は、誤差の平均値±1.96×誤差の標準偏差で定義されている。
【0111】
表3に示すように、本実施例に係る提案手法による推定結果はMAEが5.65bpmであり、他手法に比べて基準値との誤差が最も小さかった。
【0112】
また、
図9よりデータ毎の推定値についてみると、12個のデータの内9bpm以下の誤差に収まっているデータの割合は、WeightedMean、WeightedMax、FaceMeanが58%であるのに対して、提案手法は91%であった。このような誤差範囲の狭さは、
図10のBland-Altman分析からも読み取ることができる。提案手法の95%信頼区間は、-13.51-10.19bpmであり、最も狭い範囲であった。
【0113】
以下、画像ピラミッドを用いた脈波の可視化について述べる。本実施例に係る手法により抽出された脈波を可視化するため、使用した映像データに画像ピラミッドを応用した。画像ピラミッドとは、画像を徐々に低解像度化していくことで、複数の異なる解像度の画像を得る画像処理技術である。
【0114】
図11は、本実施例により抽出された脈波を可視化する流れを示した図である。本実施例に係る可視化手法では、映像の各フレームで画像ピラミッドを最大まで低解像度化することで得られる時系列信号を、本実施例の提案手法により抽出された脈波に置き換えて画像ピラミッドを再構成することで、脈波を目に見える形で映像化する。
【0115】
以下、具体的な手順について説明する。まず、本実施例に係るStage1、Stage2、そしてStage3の独立成分分析までの処理を行う。ここで、観測信号をx(t)=[x1(t), x2(t),…,xn(t)]T (t=0,1,2,…L)、混合行列をA、独立成分をs(t)=[s1(t), s2(t),…,sm(t)]Tとし、Tは転置、Lはフレーム数、nとmはそれぞれROIの数及び独立成分の数(n≧m)、Aはn×mの行列であるとする。
【0116】
このとき、本実施例に係るパルスSNRにより選択された成分を独立成分のu(1≦u≦m)番目の信号とすると、u行u列に一つだけ1を持ち、それ以外は0で構成されるm次正方行列Uを用いて、式(3.2)と表せる。
【0117】
【0118】
A+は、Aの疑似逆行列であり、式(3.2)により選択された独立成分だけを用いて信号x'(t)=[x'1(t), x'2(t),…,x'n(t)]T が再構成される。
【0119】
信号x'(t)には、0.75-2.00Hzのバンドパスフィルターと振幅を1.1倍に強調する後処理が加えられ、各ROIに対応する画像ピラミッドの時系列信号に置き換えられる。その後、ROI毎及びフレーム毎にピラミッドは再構成され、脈波を可視化した映像データが得られる。
【0120】
図12は、本実施例に係る脈波の可視化方法により再構成された映像データの時間方向に連続する12フレームを例示する図である。本実施例に係る手法で使用されたROIが再構成され、脈波として得られた波形が明滅となって表されている様子が見られる。
1;非接触脈拍推定装置、3;関心領域決定部、5;顎位置決定部、7;モデル生成部、9;肌領域決定部、11;肌比率算出部、13;脈拍領域決定部、15;周波数解析部、17;脈拍成分決定部、19;パルスSNR算出部、21;低解像度化部、23;脈波可視化部