(57)【要約】【課題】環境光の変化による輝度の変化を分別して脈拍数を検出する。【解決手段】脈拍数検出装置１は、環境光の下、点滅するＬＥＤ９で照明しながら対象者１１の顔を動画撮影する。脈拍数検出装置１は、カメラ８のフレームレートに同期させてＬＥＤ９を点滅させ、これによって、ＬＥＤ９の点灯時のオンフレーム画像と消灯時のオフフレーム画像が交互に撮影された動画を生成する。脈拍数検出装置１は、オンフレーム画像の前後のオフフレーム画像の輝度と、各画像を撮影した撮影時刻による時間比に基づいて、オンフレーム画像撮影時に仮にＬＥＤ９を消灯していたら撮影されていたであろうと推測される推測上の補間フレーム画像を生成し、オンフレーム画像の輝度から補間フレーム画像の輝度を引くことにより、オンフレーム画像から環境光の輝度を除いた補正フレーム画像を生成する。【選択図】図２
2020162871.tif 000002
【特許請求の範囲】
【請求項１】
点滅する光源によって対象者の体表面を照明する照明手段と、
変動する環境光の下、前記照明された体表面を時系列的に連続する画像によって動画撮影する撮影手段と、
前記光源が点灯している時に撮影した点灯時の画像と、前記光源が消灯している時に撮影した消灯時の画像のうちの、一方の画像の撮影時における他方の画像を、当該一方の画像の前後に撮影した他方の画像から推測することで補間する補間手段と、
前記補間手段で補間した画像を用いて、前記一方の画像の撮影時における、点灯時の画像の輝度から消灯時の画像の輝度を画素ごとに減じることにより、前記点灯時の画像の輝度を補正する補正手段と、
時系列的に連続する前記補正した点灯時の画像の輝度の変化から前記対象者の脈拍数を取得する脈拍数取得手段と、
前記取得した脈拍数を出力する出力手段と、
を具備したことを特徴とする脈拍数検出装置。
【請求項２】
前記一方の画像は点灯時の画像であり、他方の画像は消灯時の画像であることを特徴とする請求項１に記載の脈拍数検出装置。
【請求項３】
前記照明手段は、前記光源が発する赤外線の点滅によって前記体表面を照明し、前記撮影手段は、前記体表面から反射した赤外線の画像によって動画撮影する、
ことを特徴とする請求項１、又は請求項２に記載の脈拍数検出装置。
【請求項４】
前記照明手段は、前記光源としてＬＥＤを点滅させる、
ことを特徴とする請求項２、又は請求項３に記載の脈拍数検出装置。
【請求項５】
前記補間手段は、前記前に撮影した他方の画像の撮影時刻Ｔ１から前記後に撮影した他方の画像の撮影時刻Ｔ３までの第１時間と、前記撮影時刻Ｔ１から前記一方の画像の撮影時刻Ｔ２までの第２時間との時間比に基づいて、前記画素ごとの輝度を推定することで補間する、
ことを特徴とする請求項１、請求項２、請求項３、又は請求項４に記載の脈拍数検出装置
【請求項６】
変動する環境光の下、点滅する光源によって照明された対象者の体表面を時系列的に連続する画像によって撮影した画像を取得する画像取得機能と、
前記光源が点灯している時に撮影した点灯時の画像と、前記光源が消灯している時に撮影した消灯時の画像のうちの、一方の画像の撮影時における他方の画像を、当該一方の画像の前後に撮影した他方の画像からすることで補間する補間機能と、
前記補間機能で補間した画像を用いて、前記一方の画像の撮影時における、点灯時の画像の輝度から消灯時の画像の輝度を画素ごとに減じることにより、前記点灯時の画像の輝度を補正する補正機能と、
時系列的に連続する前記補正した点灯時の画像の輝度の変化から前記対象者の脈拍数を取得する脈拍数取得機能と、
前記取得した脈拍数を出力する出力機能と、
をコンピュータで実現する脈拍数検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、脈拍数検出装置、及び脈拍数検出プログラムに関し、例えば、対象者の脈拍数を検出するものに関する。
【背景技術】
【０００２】
対象者の健康状態や生理的な状態を把握するためには、脈拍数の検出が重要である。通常、脈拍数は、対象者に器具を装着して検出するが、もっと手軽に検出したいとの要望が高く、非接触で対象者の脈拍数を検出する技術が盛んに研究されている。
これにより、例えば、車両の運転者の脈拍をモニタリングして、より交通安全を推進することができる。
【０００３】
このように、非接触で脈拍を検出する技術に非特許文献１の技術がある。この技術は、対象者の腕をカメラで撮影し、そのカメラ映像から脈拍を検出する。血流により体表面の輝度や色が変化するため、映像を画像処理することにより脈拍を検出することができる。
【０００４】
ところで、対象者の体表面を撮影しているときに環境光が変化すると体表面の輝度も変化してしまい、脈拍による輝度変化と環境光の変化による輝度変化が区別できないという問題があった。
特に、脈拍数検出装置を車両に搭載する場合、環境光が頻繁に変化するため、環境光の変化による光外乱を分別しないと脈拍数を検出することが困難である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】”Ｎｏｎ−ｃｏｎｔａｃｔ  ｍｏｎｉｔｏｒｉｎｇ  ｔｅｃｈｎｉｑｕｅｓ  −  Ｐｒｉｎｃｉｐｌｅｓ  ａｎｄ  ａｐｐｌｉｃａｔｉｏｎｓ，”  Ｄ．  Ｔｅｉｃｈｍａｎｎ，  Ｃ．  Ｂｒｕｓｅｒ，  Ｂ．  Ｅｉｌｅｂｒｅｃｈｔ，  Ａ．  Ａｂｂａｓ，  Ｎ．  Ｂｌａｎｉｋ，  ａｎｄ  Ｓ．  Ｌｅｏｎｈａｒｄｔ，  Ｃｏｎ．  Ｐｒｏｃ．  ＩＥＥＥ  Ｅｎｇ．，  Ｍｅｄ．  Ｂｉｏｌ．  Ｓｏｃ．  ３４ｔｈ  Ａｎｎ．  Ｉｎｔ．  Ｃｏｎｆ．，  Ｓａｎ  Ｄｉｅｇｏ，  ＣＡ，  ＵＳＡ，  ２０１２，  ｐｐ．  １３０２−１３０５．
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、環境光の変化による輝度の変化を分別して脈拍数を検出することを目的とする。
【課題を解決するための手段】
【０００７】
（１）本発明は、前記目的を達成するために、請求項１に記載の発明では、点滅する光源によって対象者の体表面を照明する照明手段と、変動する環境光の下、前記照明された体表面を時系列的に連続する画像によって動画撮影する撮影手段と、前記光源が点灯している時に撮影した点灯時の画像と、前記光源が消灯している時に撮影した消灯時の画像のうちの、一方の画像の撮影時における他方の画像を、当該一方の画像の前後に撮影した他方の画像から推測することで補間する補間手段と、前記補間手段で補間した画像を用いて、前記一方の画像の撮影時における、点灯時の画像の輝度から消灯時の画像の輝度を画素ごとに減じることにより、前記点灯時の画像の輝度を補正する補正手段と、時系列的に連続する前記補正した点灯時の画像の輝度の変化から前記対象者の脈拍数を取得する脈拍数取得手段と、前記取得した脈拍数を出力する出力手段と、を具備したことを特徴とする脈拍数検出装置を提供する。
（２）請求項２に記載の発明では、前記一方の画像は点灯時の画像であり、他方の画像は消灯時の画像であることを特徴とする請求項１に記載の脈拍数検出装置を提供する。
（３）請求項３に記載の発明では、前記照明手段は、前記光源が発する赤外線の点滅によって前記体表面を照明し、前記撮影手段は、前記体表面から反射した赤外線の画像によって動画撮影する、ことを特徴とする請求項１、又は請求項２に記載の脈拍数検出装置を提供する。
（４）請求項４に記載の発明では、前記照明手段は、前記光源としてＬＥＤを点滅させる、ことを特徴とする請求項２、又は請求項３に記載の脈拍数検出装置を提供する。
（５）請求項５に記載の発明では、前記補間手段は、前記前に撮影した他方の画像の撮影時刻Ｔ１から前記後に撮影した他方の画像の撮影時刻Ｔ３までの第１時間と、前記撮影時刻Ｔ１から前記一方の画像の撮影時刻Ｔ２までの第２時間との時間比に基づいて、前記画素ごとの輝度を推定することで補間する、ことを特徴とする請求項１、請求項２、請求項３、又は請求項４に記載の脈拍数検出装置を提供する。
（６）請求項６に記載の発明では、変動する環境光の下、点滅する光源によって照明された対象者の体表面を時系列的に連続する画像によって撮影した画像を取得する画像取得機能と、前記光源が点灯している時に撮影した点灯時の画像と、前記光源が消灯している時に撮影した消灯時の画像のうちの、一方の画像の撮影時における他方の画像を、当該一方の画像の前後に撮影した他方の画像からすることで補間する補間機能と、前記補間機能で補間した画像を用いて、前記一方の画像の撮影時における、点灯時の画像の輝度から消灯時の画像の輝度を画素ごとに減じることにより、前記点灯時の画像の輝度を補正する補正機能と、時系列的に連続する前記補正した点灯時の画像の輝度の変化から前記対象者の脈拍数を取得する脈拍数取得機能と、前記取得した脈拍数を出力する出力機能と、をコンピュータで実現する脈拍数検出プログラムを提供する。
【発明の効果】
【０００８】
本発明によれば、点滅光を用いて環境光による輝度を推測することにより、これを分別して脈拍数を検出することができる。
【図面の簡単な説明】
【０００９】
【図１】脈拍を検出する原理を説明するための図である。
【図２】脈拍数検出装置の構成を示した図である。
【図３】補間フレーム画像の作成方法を説明するための図である。
【図４】脈拍数検出処理の手順を説明するためのフローチャートである。
【図５】画像取得補正処理の概要について説明するための図である。
【図６】画像取得補正処理の手順を説明するためのフローチャートである。
【図７】データ取得処理の手順を説明するためのフローチャートである。
【図８】脈拍数検出処理の手順を説明するためのフローチャートである。
【図９】フローチャートを補足説明するための図である。
【図１０】輝度信号ＲとｓＲＯＩの関係式の算出方法を説明するための図である。
【図１１】輝度信号Ｒの補正式を説明するための図である。
【図１２】実験結果を説明するための図である。
【発明を実施するための形態】
【００１０】
（１）実施形態の概要
脈拍数検出装置１（図２）は、環境光の下、点滅するＬＥＤ９で照明しながら対象者１１の顔を動画撮影する。
脈拍数検出装置１は、カメラ８のフレームレートに同期させてＬＥＤ９を点滅させ、これによって、ＬＥＤ９の点灯時のフレーム画像（オンフレーム画像）と消灯時のフレーム画像（オフフレーム画像）が交互に撮影された動画を生成する。
【００１１】
オフフレーム画像の輝度は環境光によるものであり、オンフレーム画像の輝度は環境光によるものとＬＥＤ９によるものを合わせたものである。
ここで、オンフレーム画像から環境光による輝度を除けば、ＬＥＤ９だけによる外乱のない輝度が得られ、これから脈拍数を検出することができる。
【００１２】
そこで、脈拍数検出装置１は、オンフレーム画像の前後のオフフレーム画像を用いることで、オンフレーム画像の撮影時に対応するオフフレーム画像を推測して補間する。その具体的一例として本実施形態では、オンフレーム画像の撮影時刻をＴ２、オンフレーム画像の前のオフフレーム画像の撮影時刻をＴ１、オンフレーム画像の後のオフフレーム画像の撮影時刻をＴ３とした場合に、撮影時刻Ｔ１から撮影時刻Ｔ３までの第１時間と、撮影時刻Ｔ１から撮影時刻Ｔ２までの第２時間との時間比に基づいて、オンフレーム画像撮影時Ｔ２において仮にＬＥＤ９を消灯していたら撮影されていたであろうと推測される推測上の補間フレーム画像（２つのオフフレーム画像をオンフレーム画像撮影時点において補間する推測上のオフフレーム画像）を生成して補間する。
補間フレーム画像の輝度は、オンフレーム画像撮影時の環境光による輝度であると推測される。
【００１３】
そこで、脈拍数検出装置１は、オンフレーム画像の輝度から補間フレーム画像の輝度を引くことにより、オンフレーム画像から環境光の輝度を除いた補正フレーム画像を生成する。
そして、脈拍数検出装置１は、当該補正フレーム画像の輝度のフーリエ変換から脈拍数を検出する。
【００１４】
（２）実施形態の詳細
図１は、環境光の変化による外乱下で脈波（脈拍）を検出する原理を説明するための図である。
本実施の形態では、ＬＥＤ（ｌｉｇｈｔ  ｅｍｉｔｔｉｎｇ  ｄｉｏｄｅ）の照明は脈波信号を拡大するが、光外乱を拡大しないという原理原則に基づき、点滅するＬＥＤを用いることによって、脈波による輝度変化と環境光の変化による輝度変化を分別する。
【００１５】
図１（ａ）は、ＬＥＤ照明を用いずに、環境光だけで体表面を撮影した場合を示している。
体表面（皮膚表面１７と血管１８から構成される）に入射した環境光は、皮膚表面１７と血管１８で反射して、それぞれ皮膚反射光Ａと血管反射光Ｂを生じさせる。カメラが撮影するのは、これらを合成した体表面反射光Ｃである。
【００１６】
図１（ａ）のグラフは、これら反射光による輝度信号（輝度信号の振幅）の時間変化を示している。
グラフの皮膚表面輝度信号Ａ、血管輝度信号Ｂ、及び体表面輝度信号Ｃは、それぞれ、皮膚反射光Ａ、血管反射光Ｂ、体表面反射光Ｃによるものである。
皮膚輝度信号Ａは、環境光の変化に伴って変化し、血管輝度信号Ｂは、環境光の変化と脈拍に伴って変化する。
カメラで撮影した動画から得られるのは、これらの変化を合成した体表面輝度信号Ｃである。
【００１７】
図１（ｂ）は、環境光の下、ＬＥＤ光による照明を行いながら体表面を撮影した場合を示している。
体表面に入射したＬＥＤ光は、皮膚表面１７と血管１８で反射して、それぞれ皮膚反射光Ｄと血管反射光Ｅを生じさせる。カメラが撮影するのは、皮膚反射光Ａ、血管反射光Ｂ、皮膚反射光Ｄ、及び血管反射光Ｅを合成した体表面反射光Ｆである。
【００１８】
図１（ｂ）のグラフは、これらの反射光による輝度信号の時間変化を示している。
グラフの皮膚表面輝度信号Ａ、血管輝度信号Ｂ、皮膚表面輝度信号Ｄ、血管輝度信号Ｅ、及び体表面輝度信号Ｆは、それぞれ、皮膚反射光Ａ、血管反射光Ｂ、皮膚反射光Ｄ、血管反射光Ｅ、及び体表面反射光Ｆによるものである。
ＬＥＤ光の輝度は一定であるため、皮膚表面輝度信号Ｄは一定値をとり、血管輝度信号Ｅは脈拍に伴って変化する。
カメラで撮影した動画から得られるのは、皮膚表面輝度信号Ａ〜血管輝度信号Ｅを合成した体表面輝度信号Ｆである。
【００１９】
図１（ｃ）のグラフは、体表面輝度信号Ｆと体表面輝度信号Ｃの差分を示している。
体表面輝度信号Ｆから体表面輝度信号Ｃを引くと、環境光による光外乱（皮膚表面輝度信号Ａと血管輝度信号Ｂ）が消去されて、ＬＥＤ光による皮膚表面輝度信号Ｄと血管輝度信号Ｅの合計である体表面輝度信号Ｇが得られる。
体表面輝度信号Ｇには、皮膚表面輝度信号Ｄが含まれているが、これは一定であるため、体表面輝度信号Ｇの時間変化は血管輝度信号Ｅの時間変化を表し、これから脈拍数を検出することができる。
【００２０】
このように、ＬＥＤ点灯時の輝度信号とＬＥＤ消灯時の輝度信号の差分から脈拍数を検出することができるが、ＬＥＤが点灯した状態と、ＬＥＤが消灯した状態を同時に実現することはできないという問題がある。
【００２１】
そこで、本実施の形態では、ＬＥＤを動画のフレームごとに点滅させて、ＬＥＤをオンして点灯している状態のオンフレーム画像とＬＥＤをオフして消灯している状態のオフフレーム画像を交互に撮影する。そして、オンフレーム画像の前後のオフフレーム画像の輝度と、前のオフフレーム画像の撮影時刻Ｔ１から後のオフフレーム画像撮影時刻Ｔ３までの第１時間と、撮影時刻Ｔ１からオンフレーム画像の撮影時刻Ｔ２までの第２時間との時間比に基づいて、オンフレーム画像撮影時刻Ｔ２における補間フレーム画像（オンフレーム画像撮影時に仮想的に撮影されるオフフレーム画像）の輝度を推測する。
補間フレーム画像の輝度は、オンフレーム画像撮影時の環境光による輝度であると推測できるため、オンフレーム画像による輝度信号（体表面輝度信号Ｆ）と当該推測より得られる輝度信号（体表面輝度信号Ｃの推測値）の差分から脈拍数を検出する。
【００２２】
図２は、本実施の形態の脈拍数検出装置１の構成を示した図である。
脈拍数検出装置１は、例えば、車両に搭載され、搭乗者（ドライバや助手席の乗客などの対象者）の脈波（脈拍）を監視し、ドライバの体調、緊張状態などの生理的な状態を把握する。
また、医療現場や災害現場などで患者や被災者の脈拍数を検出・監視したり、家庭や商業施設に設置して、利用者が手軽に脈拍数を検出するのに利用することができる。
【００２３】
脈拍数検出装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４、表示部５、入力部６、出力部７、カメラ８、ＬＥＤ９、記憶部１０などから構成されており、対象者１１（脈拍数検出装置１の検出対象者）の脈拍数（脈波、脈拍）を検出する。
ＣＰＵ２は、記憶部１０やＲＯＭ３などに記憶されたプログラムに従って、各種の情報処理や制御を行う中央処理装置である。
本実施の形態では、カメラ８が撮影した動画を画像処理して対象者１１の脈拍数を検出する。
【００２４】
ＲＯＭ３は、読み取り専用メモリであって、脈拍数検出装置１を動作させるための基本的なプログラムやパラメータなどが記憶されている。
ＲＡＭ４は、読み書きが可能なメモリであって、ＣＰＵ２が動作する際のワーキングメモリを提供する。
本実施の形態では、動画を構成するフレーム画像（１コマの静止画像）を展開して記憶したり、計算結果を記憶したりすることにより、ＣＰＵ２が、フレーム画像に写った体表面から脈拍数を検出するのを支援する。
当該体表面は、顔や手足など体表面が露出しているところならよいが、本実施の形態では、一例として顔の表面（顔面）から脈拍数を検出する。
【００２５】
表示部５は、液晶画面などの表示デバイスを用いて構成されており、脈拍数検出装置１の操作画面や脈拍数の表示など、脈拍数検出装置１の運用に必要な情報を表示する。
入力部６は、表示デバイスに重畳して設置されたタッチパネルなどの入力デバイスを用いて構成されており、画面表示に対するタッチの有無などから各種の情報の入力を受け付ける。
【００２６】
出力部７は、各種の情報を外部装置に出力するインターフェースであり、例えば、検出した脈拍数を出力したり、あるいは、脈拍数に変化が現れた場合にアラームを出力することができる。
また出力部７は、車両を制御する制御装置などの他の制御機器に出力することができる。出力部７から脈拍数の出力を受けた制御機器では、例えば、ドライバの眠気や緊張状態等を判断し、ドライバに向けた制御、例えば、眠気を覚醒させるためにハンドルやシートを振動させる制御、警告音やメッセージの出力などを行うことができる。また、車両に対する制御として、脈拍数に基づいて判断したドライバの緊張状態に応じて、車間距離制御、車速制御、又はブレーキ制御の少なくとも１つを行うことも可能である。例えば、制御機器は、ドライバが所定値を超える高い緊張状態にあると判断した場合には、車間距離を基準値よりも大きくとるように制御し、車速を所定車速以下となるように制御し、所定車速以上であれば自動ブレーキ操作による減速処理等を行う。
表示部５や出力部７は、脈拍数を出力する出力手段として機能している。
【００２７】
カメラ８は、動画を撮影するためのカメラであって、レンズで構成された光学系と、これによって結像した像を電気信号に変換する赤外線イメージセンサを用いて構成されている。
カメラ８は、対象者１１の顔前方に設置されており、対象者１１の顔付近が撮影画面となるように設定されている。
そして、カメラ８は、対象者１１を所定のフレームレートにて撮影し、これら時系列的に連続するフレーム画像（静止画像）で構成された動画を出力する。
【００２８】
フレーム画像は、画像を構成する最小単位である画素（ピクセル）の配列により構成されており、各画素はＬＥＤ９が照射する周波数帯域の赤外線を検出する。
このように、カメラ８は、変動する環境光の下、ＬＥＤ９で照明された体表面を時系列的に連続する画像によって動画撮影する撮影手段として機能する。
【００２９】
ＬＥＤ９は、所定の周波数帯域の赤外線を対象に照射してこれを照明する照明装置であって、対象者１１の顔の前方に設置されており、対象者１１の顔を前方から照明する。
ＬＥＤ９は、点滅する光源が発する赤外線によって対象者の体表面を照明する照明手段として機能する。
ＬＥＤ９は、ＣＰＵ２によるオンオフ制御によって、点灯状態と消灯状態をフレームレート（本実施の形態では、一例として毎秒６０フレームとした）に同期して繰り返す。
ＬＥＤ９は、赤外線を発するため、対象者１１には見えず（そのため、まぶしくない）、また、この波長領域では、脈波の検出に良好な皮膚反射光Ｄと血管反射光Ｅを得ることができる。
【００３０】
なお、カメラ８とＬＥＤ９は、カメラ８とＬＥＤ９が一体となった、照明付きカメラとしてもよい。
また、脈拍数検出装置１は、赤外線により対象者１１の脈波を検出するが、可視光を用いるなど、他の周波数帯域における光を用いてもよい。この場合は、カメラ８とＬＥＤ９を当該光に適合したもので構成する。
【００３１】
なお、脈拍数検出装置１で、赤外線を用いたのは、昼夜の区別なく脈拍数の検出が可能であるためである。
但し、可視光による脈拍数の検出が可能な昼間は可視光による脈拍数の検出を行い、車内が所定の明るさ以下になった場合に、赤外線による脈拍数の検出に切り替えるという運用も可能である。また、車内が所定の明るさ以下になるまでの間は、可視光による脈拍数の検出と本実施形態による赤外線による脈拍数の検出の両者を使用し、所定の明るさ以下になった後は本実施形態だけを使用するようにしてもよい。この場合、何れか一方の出力を他方の出力の信頼度を推定するために使用してもよく、また、両出力の平均値を検出値として出力するようにしてもよい。なお、車内の明るさについては、例えば照度センサ等を使用して検出する。
【００３２】
記憶部１０は、ハードディスクやＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの記憶媒体を用いて構成されており、ＣＰＵ２が脈波を検出するための脈拍数検出プログラム１２やその他のプログラム、及びデータを記憶している。
ＣＰＵ２が脈拍数検出プログラム１２に従って検出した脈拍数は、ＲＡＭ４に一時保存され、必要に応じて外部に出力されたり、記憶部１０に保存される。
【００３３】
脈拍数検出プログラム１２は、ＣＰＵ２に脈波検出処理を行わせるプログラムである。
ＣＰＵ２は、脈拍数検出プログラム１２を実行することにより、動画撮影した対象者１１の顔から輝度の検出を行う。
【００３４】
図３は、補間フレーム画像の作成方法を説明するための図である。
図３において、オン、オフと記した菱形図形の列は、動画撮影されたフレーム画像を時系列的に並べたところを模式的に表しており（時間の経過方向は図に向かって右方向とする）、オンと記された菱形図形はオンフレーム画像を、オフと記された菱形図形はオフフレーム画像を表している。
【００３５】
脈拍数検出装置１は、ＬＥＤ９をフレームレートに同期して点滅させるため、・・・、オフフレーム画像２１、オンフレーム画像２２、オフフレーム画像２３、・・・といったように、オフフレーム画像とオンフレーム画像を交互に動画撮影するが、ここでは、一例として、オンフレーム画像２２を補正する場合について考える。
【００３６】
まず、脈拍数検出装置１は、オンフレーム画像２２の１コマ前（１フレーム前）のオフフレーム画像２１と、１コマ後（１フレーム後）のオフフレーム画像２３を特定する。
そして、オフフレーム画像２１とオフフレーム画像２３の輝度と、撮影時刻の時間比に基づいて、オンフレーム画像２２の撮影時点にて、オフフレーム画像２１とオフフレーム画像２３を補間する推定上のオフフレーム画像である補間フレーム画像２５を生成する。
先に述べたように、補間フレーム画像２５は、オンフレーム画像２２の撮影時における環境光の輝度を推測することで補間した画像である。
【００３７】
このように、脈拍数検出装置１は、光源が点灯している時に撮影した点灯時の画像（オンフレーム画像）と、前記光源が消灯している時に撮影した消灯時の画像（オフフレーム画像）のうちの、一方の画像の撮影時における他方の画像を、当該一方の画像の前後に撮影した他方の画像から推測することで補間する補間手段を備えている。
上の例では、一方の画像は点灯時の画像であり、他方の画像は消灯時の画像である。補間手段は、当該点灯時の画像の前の消灯時の画像の輝度と、当該点灯時の画像の後の消灯時の画像の輝度と、各画像撮影時の時間比に基づいて、当該点灯時の画像を撮影した時点における消灯時の画像の輝度を推測することにより環境光による輝度を推測している。
なお、当該一方の画像を消灯時の画像、他方の画像を点灯時の画像とすることも可能である。この場合、オフフレーム画像の前後のオンフレーム画像の輝度と、各画像の撮影時刻の時間比に基づいて、オンフレーム画像を補完する補間画像を作成する。
【００３８】
より詳細には、図のグラフに示したように、ｉをフレーム画像のインデックスとして、オフフレーム画像２１の撮影時刻Ｔ１をｔ（ｉ）、処理対象となる画素の輝度をＹ（ｉ）、オンフレーム画像２２の撮影時刻Ｔ２をｔ（ｉ＋１）、対応する画素の輝度をＹ（ｉ＋１）、オフフレーム画像２３の撮影時刻Ｔ３をｔ（ｉ＋２）、対応する画素の輝度をＹ（ｉ＋２）とする。
【００３９】
時刻Ｔ２＝ｔ（ｉ＋１）における補間フレーム画像２５の当該画素の輝度Ｙ（ｉ＋１）は、オフフレーム画像２１とオフフレーム画像２３の当該画素の両輝度と、Ｔ１、Ｔ２、Ｔ３の時間比に基づく式（１）（図３参照）によって計算される。
式（１）は、Ｙ（ｉ＋１）＝Ｙ（ｉ）＋[Ｙ（ｉ＋２）−Ｙ（ｉ）｝×｛ｔ（ｉ＋１）−ｔ（ｉ）｝÷｛ｔ（ｉ＋２）−ｔ（ｉ）｝によって定義されている。
このように、撮影時刻の時間間隔（第１時刻、第２時刻）を都度取得して、この時間比に基づいて、補間フレーム画像２５の当該画素の輝度Ｙ（ｉ＋１）を式（１）により算出しているため、フレーム画像を撮影する時刻がばらついていても、オンフレーム画像２２の撮影時点における補間フレーム画像の輝度を正しく計算することができる。
ここで、式（１）におけるｔ（ｉ＋２）−ｔ（ｉ）が第１時間、ｔ（ｉ＋１）−ｔ（ｉ）が第２時間である。
【００４０】
脈拍数検出装置１は、式（１）による計算をオフフレーム画像２１、２３の全ての画素の輝度について画素ごとに行う。
脈拍数検出装置１は、以上の処理によって、各オンフレーム画像に対応する補正フレーム画像をオンフレーム画像ごとに生成する。
このように、脈拍数検出装置１が備える補間手段は、前に撮影した他方の画像の撮影時刻Ｔ１から後に撮影した他方の画像の撮影時刻Ｔ３までの第１時間と、撮影時刻Ｔ１から一方の画像の撮影時刻Ｔ２までの第２時間との時間比に基づいて、画素ごとの輝度を推定することで補間している。
【００４１】
ところで、このようにオンフレーム画像の前後のオフフレーム画像を使用して補間フレーム画像を生成することにしたのは、本願発明者が、オンフレーム画像を、その前後の一方のオフフレーム画像で補正する実験を行ったところ、望ましい精度が得られなかったためである。
そこで、オンフレーム画像の前後のオフフレーム画像を用いて補間フレーム画像を生成し、生成した補間フレーム画像を用いてオンフレーム画像を補正してみたところ、著しい効果が得られたという背景がある。
【００４２】
以下、脈拍数検出装置１が行う脈波検出処理について説明する。
図４は、脈拍数検出装置１が行う脈拍数検出処理の手順を説明するためのフローチャートである。
以下の処理は、ＣＰＵ２が脈拍数検出プログラム１２に従って行うものである。
まず、ＣＰＵ２は、最低輝度基準と最高輝度基準、及び最低脈拍数基準と、最高脈拍数基準をＲＡＭ４に記憶することにより、輝度脈拍数基準を設定する（ステップ５）。
【００４３】
脈拍数検出装置１は、輝度を、例えば、０（最低輝度）から２５５（最高輝度）まで段階的に計測するが、ここでは、一例として最低輝度基準を６０とし最高輝度基準を２５５とした。
最低輝度基準と最高輝度基準は、フレーム画像から体表面に該当する画素を識別する際の基準となる輝度であって、最適値が予めパラメータとして脈拍数検出プログラム１２に設定されている。
これら顔の輝度を検出するのに適した輝度基準を用いることにより、顔の輝度の検出精度を高めることができる。
【００４４】
また、脈拍数検出装置１は、最低脈拍数を４０ｂｐｍとし、最高脈拍数を１５０ｂｐｍとしている。
脈拍数検出装置１は、最低・最高脈拍数によって常識的な心拍数の範囲を設定し、これから外れるものは光外乱であるとして検出結果から除外する。
これにより、例えば、前方車両の方向指示器の点滅や緊急車両の警告灯の点滅、あるいは、トンネル内の照明などによる脈拍数の誤検出を抑止することができる。
【００４５】
次に、ＣＰＵ２は、数理形態クロージング用の構成を定義するパラメータをＲＡＭ４に記憶することにより、当該数理形態クロージングの構成を定義する（ステップ１０）。
後述するように、最低輝度基準と最高輝度基準の範囲にある領域を顔領域として検出すると、一般にいびつな形となる。
これを脈拍数検出や顔の大きさを検出するのに適した形状に整形するのが数理形態クロージングである。
【００４６】
次に、ＣＰＵ２は、画像取得補正処理を行う（ステップ１５）。
ここで、画像取得補正処理の詳細な手順について説明するが、その前に、図５を用いて画像取得補正処理の概要について説明する。
脈拍数検出装置１は、補正前のフレーム画像をインデックスｉ（ｉ＝１、２、３、・・・）で表し、補正後のフレーム画像をインデックスｊ（ｊ＝１、２、３、・・・）で表す。
【００４７】
図５（ａ）に示したように、脈拍数検出装置１は、カメラ８から、補正前の元のフレーム画像Ｆ（ｉ）と、その撮影時刻ｔ＿ｆｒａｍｅ（ｉ）を取得する。
これにより、脈拍数検出装置１は、フレーム画像Ｆ（１）、Ｆ（２）、Ｆ（３）、・・・と、これらの撮影時刻ｔ＿ｆｒａｍｅ（１）、ｔ＿ｆｒａｍｅ（２）、ｔ＿ｆｒａｍｅ（３）、・・を取得する。
このように、脈拍数検出装置１は、フレーム画像と撮影時刻を取り込みながら、フレーム画像Ｆ（５）に達してから補正処理をスタートする。
【００４８】
まず、脈拍数検出装置１は、図５（ｂ）の式（２）に従って、補間フレーム画像Ｆ＿ｉｎｔ（ｊ）を作成する。
これにより、脈拍数検出装置１は、フレーム画像Ｆ（１）とフレーム画像Ｆ（３）から、フレーム画像Ｆ（２）に対応する補間フレーム画像Ｆ＿ｉｎｔ（１）を作成する。式（２）は、式（１）を脈拍数検出プログラム１２の計算アルゴリズムに適合する形にしたものであって、内容は同じである。
【００４９】
そして、脈拍数検出装置１は、図５（ｂ）の式（３）に従って、Ｆ（ｉ−３）−Ｆ＿ｉｎｔ（ｊ）なる差分により輝度を画素ごとに計算して補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）を生成する。
これにより、脈拍数検出装置１は、図５（ａ）に示したように、補正前のフレーム画像Ｆ（２）の輝度から補間フレーム画像Ｆ＿ｉｎｔ（１）の輝度を画素ごとに引いて、補正後のフレーム画像Ｆ＿ｃｏｒｒ（１）を生成する。
このように、脈拍数検出装置１は、推測した輝度（Ｆ＿ｉｎｔ（ｊ）の輝度）を減じることにより、一方の画像の撮影時における、点灯時の画像の輝度から消灯時の画像の輝度を画素ごとに減じることにより、点灯時の画像の輝度を補正する補正手段を備えている。
【００５０】
更に、脈拍数検出装置１は、ｔ（ｊ）＝ｔ＿ｆｒａｍｅ（ｉ−３）によって、補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）の撮影時刻を生成する。
これにより、補正後のフレーム画像Ｆ＿ｃｏｒｒ（１）の撮影時刻はｔ（１）＝ｔ＿ｆｒａｍｅ（２）となって、補正前のフレーム画像Ｆ（２）と同じになり、正しい撮影時刻を付与することができる。
【００５１】
脈拍数検出装置１は、以上の処理を、ｉとｊをインクリメントしながら行っていき、補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）と、その撮影時刻ｔ（ｊ）を順次作成していく。
このようにして、脈拍数検出装置１は、フレーム画像Ｆ＿ｃｏｒｒ（ｊ）（ｊ＝１、２、・・・）を撮影時刻ｔ（ｊ）（ｊ＝１、２、・・・）で並べた、補正後の動画を生成することができる。
【００５２】
図６は、ステップ１５の画像取得補正処理の手順を説明するためのフローチャートである。
まず、脈拍数検出装置１は、インデックスｉ、ｊを１に初期化してＲＡＭ４に記憶する（ステップ３０５）。
【００５３】
次に、脈拍数検出装置１は、ＬＥＤ９をオフにして消灯した後（ステップ３１０）、カメラ８で対象者１１の顔を撮影して、環境光だけで撮影した補正前のフレーム画像Ｆ（ｉ）を取得してＲＡＭ４に記憶する（ステップ３１５）。
更に、脈拍数検出装置１は、補正前のフレーム画像Ｆ（ｉ）の撮影時刻ｔ＿ｆｒａｍｅ（ｉ）をＲＡＭ４に記憶することにより記録する（ステップ３２０）。
【００５４】
次に、脈拍数検出装置１は、ＬＥＤ９をオンにして点灯し、対象者１１の顔をＬＥＤ９で照明する（ステップ３２５）。
そして、脈拍数検出装置１は、ＲＡＭ４に記憶してあるｉを１だけインクリメントして更新する（ステップ３３０）。
【００５５】
次に、脈拍数検出装置１は、カメラ８で対象者１１の顔を撮影して、環境光とＬＥＤ照明の下に撮影された補正前のフレーム画像Ｆ（ｉ）を取得してＲＡＭ４に記憶する（ステップ３３５）。
更に、脈拍数検出装置１は、補正前のフレーム画像Ｆ（ｉ）の撮影時刻ｔ＿ｆｒａｍｅ（ｉ）をＲＡＭ４に記憶することにより記録する（ステップ３４０）。
【００５６】
そして、脈拍数検出装置１は、ｉを１だけインクリメントして更新し（ステップ３４５）、ｉが３より大きいか否かを判断する（ステップ３５０）。
当該ループ処理の初回では、ｉ＝３であるので、ｉが３以下となり（ステップ３５０；Ｎ）、脈拍数検出装置１は、後述のステップ４０に移行して、データ取得期間が終了したか否かの判断を行う（ステップ４０）。
【００５７】
データ取得期間が終了していない場合（ステップ４０；Ｎ）、脈拍数検出装置１は、ステップ３１０に戻ってフレーム画像の取得を続行する。
一方、データ取得期間が終了している場合（ステップ４０；Ｙ）、脈拍数検出装置１は、後述のステップ４５に移行する。
【００５８】
当該ループ処理の２回目以降では、ｉが５となって３より大きくなり（ステップ３５０；Ｙ）、脈拍数検出装置１は、式（２）に従って補間フレーム画像Ｆ＿ｉｎｔ（ｊ）を作成してＲＡＭ４に記憶する（ステップ３５５）。
そして、脈拍数検出装置１は、式（３）に従って補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）を作成してＲＡＭ４に記憶すると共に（ステップ３６０）、当該補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）の撮影時刻ｔ（ｊ）＝ｔ＿ｆｒａｍｅ（ｉ−３）を作成し、これを補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）と対応させて（紐付けて）ＲＡＭ４に記憶する（ステップ３７０）。
このようにして、脈拍数検出装置１は、補正後のフレーム画像と、当該フレーム画像の撮影時刻を作成すると、メインルーチンにリターンする。
【００５９】
以下、図４の続きの処理について説明するが、以下の処理では、補正後のフレーム画像Ｆ＿ｃｏｒｒ（ｊ）と、当該フレーム画像の撮影時刻ｔ（ｊ）を用いて処理を行う。
図４に戻り、ＣＰＵ２は、ＲＡＭ４に記憶したフレーム画像において顔を検出して、検出した顔の位置と大きさをＲＡＭ４に記憶する（ステップ２５）。
より詳細には、図９のフレーム画像３１に示したように、ＣＰＵ２は、矩形３２によって顔を検出する。顔の検出アルゴリズムは、顔検出技術で一般的に用いられているものを使用する。
【００６０】
図４に戻り、次に、ＣＰＵ２は、顔を検出できたか否かを判断する（ステップ３０）。
顔を検出できた場合（ステップ３０；Ｙ）、ＣＰＵ２は、脈拍数の検出に必要なデータを取得する後述のデータ取得処理を行う（ステップ３５）。
一方、顔を検出できなかった場合（ステップ３０；Ｎ）、ＣＰＵ２は、例えば、顔を検出できなかった旨を示すフラグをＲＡＭ４に立てるなどして顔を検出できなかった状況を記録する（ステップ６０）。
【００６１】
ＣＰＵ２は、データ取得処理を行った後（ステップ３５）、ＲＡＭ４に記憶したインデックスｊを１だけインクリメントし（ステップ３７）、その後、データを取得するデータ取得期間が終了したか否かを判断する（ステップ４０）。
データ取得期間は、脈拍数検出に用いる動画の長さを規定する期間であり、本実施の形態では、一例として、３０秒間の動画から脈拍数を検出する。
【００６２】
データ取得期間が終了していない場合（ステップ４０；Ｎ）、ＣＰＵ２は、ステップ１５に戻って、画像取得補正処理を続行する。
一方、データ取得期間が終了した場合（ステップ４０；Ｙ）、又は顔を検出できなかった状況を記録した後（ステップ６０）、ＣＰＵ２は、ＲＡＭ４にアクセスしてステップ３５で取得したデータがあるか否かを判断する（ステップ４５）。
より詳細には、ＣＰＵ２は、ＲＡＭ４にアクセスして、ステップ３５で取得した輝度信号があるか否かを確認することにより当該判断を行う。
【００６３】
ＲＡＭ４にデータがない場合（ステップ４５；Ｎ）、これはステップ３０で顔が検出できなかった場合であり、ＣＰＵ２は、ＲＡＭ４から顔を検出できなかった状況の記録を読み取って不測定情報（測定が失敗した旨を示す情報）を作成し、これを表示部５や出力部７に出力して（ステップ６５）、処理を終了する。
【００６４】
一方、ＲＡＭ４にデータがある場合（ステップ４５；Ｙ）、ＣＰＵ２は、後述の脈拍数検出処理を行って、当該検出した脈拍数をＲＡＭ４に記憶する（ステップ５０）。
そして、ＣＰＵ２はＲＡＭ４に記憶した脈拍数がＲＡＭ４に設定した最低・最高脈拍数の範囲内にある場合、これを表示部５や出力部７に出力して（ステップ５５）、処理を終了する。
【００６５】
図７は、図４のステップ３５で示したデータ取得処理の手順を説明するためのフローチャートである。
まず、ＣＰＵ２は、図４のステップ２５で検出した顔のうち、最も大きい顔を処理対象として選択し、選択結果（即ち、選択した顔を他の顔から識別する情報）をＲＡＭ４に記憶する（ステップ１０５）。
【００６６】
これは、対象者１１の周囲に第三者が存在して、これら第三者の顔も認識してしまった場合に対象者１１の顔（カメラ８の前に位置するため最も大きい）を選択するものである。
特に、脈拍数検出装置１を車両の運転者に対して使用する場合、運転席に座っている人物の顔が最も大きく写るため、この処理によって運転者の顔を選択することができる。
【００６７】
次に、ＣＰＵ２は、選択した顔に対して楕円マスクを作成して、当該楕円マスクを特定するデータをＲＡＭ４に記憶する（ステップ１１０）。
ここで、当該楕円マスクを特定するデータは、楕円マスクの形状やフレーム画像における楕円マスクの位置などを特定する座標値などのパラメータで構成されている。
以下では、このような処理を、楕円マスクをＲＡＭ４に記憶するなどと略記することにする。
【００６８】
図９のフレーム画像３５は、矩形３２によって認識した対象者１１の顔に対して楕円マスク３６を作成したところを示している。
このように、ＣＰＵ２は、対象者１１の顔を内部に包含するように、当該顔を含む楕円領域を設定することにより楕円マスク３６を設定する。
なお、本実施の形態では、一例として楕円マスクを用いたが、矩形などの他の形状のマスクを用いることも可能である。
【００６９】
ＣＰＵ２は、設定した楕円マスク３６の内部にて顔の領域を特定し、当該領域の輝度から脈拍数を検出する。この楕円マスク３６によって脈拍数を検出する領域を限定すると、良好に脈拍数検出が行えることは本願発明者が試行錯誤の末発見したものである。
【００７０】
図７に戻り、次に、ＣＰＵ２は、フレーム画像から輝度マスクを作成してＲＡＭ４に記憶する（ステップ１１５）。
輝度マスクは、フレーム画像において、画素輝度が最低輝度基準以上かつ最高輝度基準以下となる画素で構成された領域であり、ＣＰＵ２は、フレーム画像の各画素の輝度を調べて輝度マスクを作成する。
【００７１】
次には、ＣＰＵ２は、ＲＡＭ４に記憶した楕円マスクと輝度マスクを用いて合計マスクを取得し、当該合計マスクをＲＡＭ４に記憶する（ステップ１２０）。
合計マスクは、輝度マスクのうち、楕円マスクに含まれている部分であり、ＣＰＵ２は、楕円マスクと輝度マスクの論理積をとってその値が真となる画素によって合計マスクを作成する。
【００７２】
次に、ＣＰＵ２は、合計マスクを塊にまとめ（ステップ１２５）、まとめた塊のうち、最も大きい塊を選択し、最も大きい塊を新たな合計マスクとしてＲＡＭ４に記憶する（ステップ１３０）。
例えば、楕円マスクの位置には、分断された顔が写っている場合や、別のものが写っている場合がある。即ち、顔の中心部分に対して耳や額などの一部が髪の毛で分断されて写っている場合や、少し離れた位置に手が写っている場合などが存在する。このような場合、顔の中心部分、耳、額、手などが別々の合計マスクとして認識されてしまう。
そこで、各合計マスクの周縁相互の距離が所定閾値以下である一群の合計マスクを、１つの合計マスクとして扱うためにステップ１２５で塊にまとめている。
【００７３】
その一方で、顔から少し離れた位置に存在する手の合計マスクの塊を除外して、顔の合計マスクの塊を使用するために、ステップ１３０で最も大きい塊を選択している。
このようにＣＰＵ２は、合計マスクを塊にまとめてグループ化することにより顔や手などの部位ごとの塊にまとめ、最も大きい塊が顔である可能性が高いので、最も大きい合計マスクを選択している。
【００７４】
なお、手などの顔以外の体表面からも脈拍数は検出できるが、脈拍数検出装置１は、顔の大きさによって照明と顔との距離を間接的に計測して輝度を補正するため、顔に他の部位が混入すると、顔の大きさが実際より大きくなって輝度補正が困難となる。
そこで、最も大きい合計マスクを選択することにより、このような問題を回避することができる。
【００７５】
次に、ＣＰＵ２は、ＲＡＭ４に記憶した最も大きい合計マスクからＢｌｏｂマスクを作成してＲＡＭ４に記憶し（ステップ１３５）、更にＢｌｏｂマスクからＢｌｏｂＦｉｌｌを作成してＲＡＭ４に記憶する（ステップ１４０）。
ＢｌｏｂマスクとＢｌｏｂＦｉｌｌの内容は、以下の通りである。
【００７６】
図９に示した合計マスク４１は、ステップ１３０でＣＰＵ２がＲＡＭ４に記憶した最も大きい合計マスクである。一般に合計マスクはいびつな形をしている。
そこで、ＣＰＵ２は、ステップ１０（図４）で記憶した数理形態クロージング用の構成を定義するパラメータをＲＡＭ４から読み出し、これに基づいて合計マスク４１を脈拍数検出に適したなめらかな形状４２に整形してＢｌｏｂマスク４４を作成する。ＣＰＵ２は、Ｂｌｏｂマスク４４を脈拍数の検出に用いる。
【００７７】
また、Ｂｌｏｂマスク４４では、目や口などの部分でＢｌｏｂマスク４４に含まれない閉領域が形成される場合がある。
これら閉領域は、顔の面積に含まれるため、ＣＰＵ２は、これらの閉領域をマスクに含めたＢｌｏｂＦｉｌｌ４５を作成し、これを顔の大きさの判定に用いる。
ＣＰＵ２は、脈拍数の検出にはＢｌｏｂマスク４４を用い、顔の大きさの検出にはＢｌｏｂＦｉｌｌ４５を用いる。
【００７８】
図７に戻り、ＣＰＵ２は、Ｂｌｏｂマスク（ステップ１３５）とＢｌｏｂＦｉｌｌ（ステップ１４０）を作成した後、評価画像を作成してＲＡＭ４に記憶する（ステップ１４５）。
評価画像は、フレーム画像のうち、脈拍数の検出に用いる部分の領域を構成する画像であって、ＣＰＵ２は、フレーム画像からＢｌｏｂマスク４４に該当する領域をフレーム画像から抜き出すことにより評価画像を作成する。
【００７９】
より具体的には、ＣＰＵ２は、Ｂｌｏｂマスクとフレーム画像によって論理積を計算し、真となる部分の画素を抽出することによりフレーム画像からＢｌｏｂマスクに該当する部分を取り出して評価画像とする。
このように、Ｂｌｏｂマスクは、フレーム画像から評価画像を抜き出す抜き型のような働きをしており、ＣＰＵ２は、評価画像を構成する画素の輝度から脈拍数を検出する。
【００８０】
次に、ＣＰＵ２は、ＲＡＭ４に記憶した評価画像を構成する各画素の輝度の値を合計し、当該輝度の合計値をＲＡＭ４に記憶し（ステップ１５０）、更に、ＲＡＭ４に記憶してあるＢｌｏｂマスクの画素数を取得する（ステップ１５５）。
そして、ＣＰＵ２は、ＲＡＭ４に記憶した輝度の合計値をＲＡＭ４に記憶したＢｌｏｂマスクの画素数で割って、評価画像の輝度の平均値を計算することにより補正前（顔がＬＥＤ９に対して前後移動することによる輝度の変化の輝度補正）の輝度信号Ｒを算出してＲＡＭ４に記憶する（ステップ１６０）。
【００８１】
次に、ＣＰＵ２は、ｓＲＯＩ（ｓｉｚｅ  ｏｆ  Ｒｅｇｉｏｎ  ｏｆ  Ｉｎｔｅｒｅｓｔ）を算出してＲＡＭ４に記憶し（ステップ１６５）、メインルーチンにリターンする。
ｓＲＯＩは、フレーム画像に対する測定領域（顔の大きさ）の割合であって、ＣＰＵ２は、ＢｌｏｂＦｉｌｌの画素数をフレーム画像の画素数で除することによりｓＲＯＩを計算する。
【００８２】
ｓＲＯＩは、フレーム画像における顔の大きさの割合を％で表しており、対象者１１の顔の前後位置を表している（ｓＲＯＩが大きいほどカメラ８とＬＥＤ９から顔までの距離が近い）。
後述するように、ＣＰＵ２は、ｓＲＯＩの値によって補正前の輝度信号Ｒを補正し（上記の輝度補正）、補正後の輝度信号Ｒ′を生成する。
なお、ｓＲＯＩは、フレーム画像に対する測定領域の割合であるところ、フレーム画像の画素数は固定されているため、評価画像の画素数をｓＲＯＩとすることもできる。
【００８３】
図８は、図４のステップ５０で示した脈拍数検出処理の手順を説明するためのフローチャートである。
まず、ＣＰＵ２は、ＲＡＭ４からデータ取得期間（３０秒間）の間に取得した補正前の輝度信号ＲとｓＲＯＩを読み出す。
そして、ＣＰＵ２は、後述するように最小二乗法を用いて輝度信号ＲとｓＲＯＩの関係式を算出してＲＡＭ４に記憶する（ステップ２０５）。
【００８４】
次に、ＣＰＵ２は、ｓＲＯＩを当該関係式に適用して輝度信号Ｒを補正することにより補正後の輝度信号Ｒ′を算出して、当該輝度信号Ｒ′をＲＡＭ４に記憶する（ステップ２１０）。
そして、ＣＰＵ２は、輝度信号Ｒ′をフーリエ変換して輝度信号Ｒ′の周波数成分を算出し、これをＲＡＭ４に記憶する（ステップ２１５）。
【００８５】
次に、ＣＰＵ２は、ＲＡＭ４に記憶した輝度信号Ｒ′の周波数成分において最大ピークを特定する（ステップ２２０）。
そして、ＣＰＵ２は、当該最大ピークの周波数ｆを特定し、これを対象者１１の脈拍数としてＲＡＭ４に記憶して（ステップ２２５）、メインルーチンにリターンする。
【００８６】
このように、脈拍数検出装置１は、時系列的に連続する、環境光の光外乱を補正した点灯時の画像（オンフレーム画像）の輝度の変化から対象者の脈拍数（最大ピークの周波数）を取得する脈拍数取得手段を備えている。
【００８７】
図１０は、図８のステップ２０５に係る輝度信号ＲとｓＲＯＩの関係式の算出方法を説明するための図である。
ＲＡＭ４は、３０秒分の輝度信号Ｒを記憶しており、これを時間の順にＲ（１）、Ｒ（２）、Ｒ（３）、・・・、Ｒ（ｉ）、・・・とする。
同様にＲＡＭ４が記憶するｓＲＯＩも時間の順に、ｓＲＯＩ（１）、ｓＲＯＩ（２）、ｓＲＯＩ（３）、・・・、ｓＲＯＩ（ｉ）、・・・とする。
輝度信号Ｒ（ｉ）とｓＲＯＩ（ｉ）は、同じフレーム画像から取得するため、時間的に対応しており、同時刻での値である。
【００８８】
ここで、図１０（ａ）の式（１１）と式（１２）で示したようにｙｉ＝Ｒ（ｉ）、ｘｉ＝ｓＲＯＩ（ｉ）とおいて、式（１３）で示したｙｉ＝β０＋β１×ｘｉなる線形の関係が成り立つと仮定すると、式（１４）が成立する。求めたいのはβ０とβ１であり、式（１４）は、最小二乗法の行列表現となっている。
【００８９】
式（１４）を式（１５）のようにＹ＝Ｘ×Ｂとおくと、式（１６）によってＢについて解くことができる。式中の上付き文字で表したＴと−１は、それぞれ転置行列と逆行列を意味する。
ＣＰＵ２は、ＲＡＭ４に記憶した輝度信号ＲとｓＲＯＩからＸ、Ｙを生成し、式（１６）を計算することにより、β０とβ１を算出する。これによって、輝度信号ＲとｓＲＯＩの関係式ｙｉ＝β０＋β１×ｘｉが定まる（式（１３））。
【００９０】
図１０（ｂ）の散布図５１は、ｘ軸（横軸）をｓＲＯＩ、ｙ軸（縦軸）を輝度信号Ｒとし、（ｘｉ、ｙｉ）をプロットした図である。
これらのデータを式（１３）によって直線近似した直線５２（回帰直線）がＲとｓＲＯＩの関係式を規定しており、直線５２のｙ切片がβ０、傾きがβ１となる。
【００９１】
図１１は、図８のステップ２１０に係る輝度信号Ｒの補正式を説明するための図である。
ｙｉとｘｉは、図１０と同じである。ここで、式（１７）に示したように、補正後の輝度信号であるＲ（１）′、Ｒ（２）′、・・・、Ｒ（ｉ）′、・・・をｙｉ′と表すと、式（１８）が成立し、これが輝度信号Ｒの補正式である。これを行列で表すと式（１９）となり、これにｙｉとｘｉを代入するとｙｉ′、即ち、補正後の輝度信号Ｒ′を計算することができる。
この式は、ｓＲＯＩ（フレーム画像に写った顔の大きさ）によって顔の前後位置を推測し、これによって顔の前後移動による輝度の変化を補正するものである。
【００９２】
図１２は、実験結果を説明するための図である。
図１２（ａ）は、ＬＥＤ９の点滅による補正がない場合の輝度（輝度信号Ｒ′）の３０秒間の時間変化を示している。
図１２（ｂ）は、これをＦＦＴにて周波数領域に変換したものである。本来なら、７０［ｂｐｍ］付近に脈拍によるピークが現れるはずであるが、ノイズに埋もれていて検出することができない。
【００９３】
図１２（ｃ）は、ＬＥＤ９を点滅させて輝度を補正した場合の輝度（輝度信号Ｒ′）の３０秒間の時間変化を示している。
図１２（ｄ）は、これをＦＦＴにて周波数領域に変換したものである。７０［ｂｐｍ］付近に、脈波による脈拍数ピーク５５が明確に現れている。
このように、ＬＥＤ９を点滅させて、環境光による光外乱を低減すると、光外乱によるノイズに埋もれていた脈波を検出して、これから脈拍数を計算することができる。
【００９４】
以上に説明した実施の形態によれば、次のような効果を得ることができる。
（１）環境光による体表面の輝度の変化をキャンセルして、脈波による輝度変化を取得することができる。
（２）環境光による光外乱を低減して、体表面の輝度変化から脈拍数を検出することができる。
（３）ＬＥＤ９を点滅させることにより、ＬＥＤ９の消灯時のフレーム画像からＬＥＤ９の点灯時における環境光の輝度を推測することができる。
（４）更に、顔の前後移動による輝度の変化を補正することができる。
【符号の説明】
【００９５】
１  脈拍数検出装置
２  ＣＰＵ
３  ＲＯＭ
４  ＲＡＭ
５  表示部
６  入力部
７  出力部
８  カメラ
９  ＬＥＤ
１０  記憶部
１１  対象者
１２  脈拍数検出プログラム
１７  皮膚表面
１８  血管
２１、２３  オフフレーム画像
２２  オンフレーム画像
２５  補間フレーム画像
３１、３５  フレーム画像
３２  矩形
３６  楕円マスク
４１  合計マスク
４２  形状
４４  Ｂｌｏｂマスク
４５  ＢｌｏｂＦｉｌｌ
５１  散布図
５２  直線
５５  脈拍数ピーク
【図１】
2020162871.tif 000003
【図２】
2020162871.tif 000004
【図３】
2020162871.tif 000005
【図４】
2020162871.tif 000006
【図５】
2020162871.tif 000007
【図６】
2020162871.tif 000008
【図７】
2020162871.tif 000009
【図８】
2020162871.tif 000010
【図９】
2020162871.tif 000011
【図１０】
2020162871.tif 000012
【図１１】
2020162871.tif 000013
【図１２】
2020162871.tif 000014