JP4471607B2 - 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム - Google Patents

眼の追跡装置、眼の状態判定装置及びコンピュータプログラム Download PDF

Info

Publication number
JP4471607B2
JP4471607B2 JP2003307133A JP2003307133A JP4471607B2 JP 4471607 B2 JP4471607 B2 JP 4471607B2 JP 2003307133 A JP2003307133 A JP 2003307133A JP 2003307133 A JP2003307133 A JP 2003307133A JP 4471607 B2 JP4471607 B2 JP 4471607B2
Authority
JP
Japan
Prior art keywords
eye
face
detected
posture
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003307133A
Other languages
English (en)
Other versions
JP2005078311A (ja
Inventor
明義 田福
幸三 馬場
寿雄 伊藤
知信 ▲高▼島
卓 片桐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003307133A priority Critical patent/JP4471607B2/ja
Publication of JP2005078311A publication Critical patent/JP2005078311A/ja
Application granted granted Critical
Publication of JP4471607B2 publication Critical patent/JP4471607B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、顔を撮像して得られる画像データ中のを検出し、検出したを追跡するの追跡装置及びコンピュータプログラム、また、検出した眼の開閉状態を判定する眼の状態判定装置に関するものである。
自動車等の車両の運転を支援するシステムとして、例えば、特許文献1、特願2003−22498号公報及び特願2003−24288号公報等で提案されているような、運転者の顔が撮像できる位置に設置した車載カメラで運転者の顔を撮像し、得られた画像データから運転者の眼の位置を検出し、検出した眼の動きを追跡する装置がある。
特開2000−163564号公報
上述のシステムでは、予め運転者の顔を撮像し、得られた画像データから、運転者の眼の領域を検出し、検出した眼の領域の特徴情報を標準テンプレートとして記憶しておく。そして、車両の走行時に車載カメラが撮像した画像データを、標準テンプレートが示す情報と比較することにより、画像データ中の眼の領域を検出し、検出した眼の領域の特徴情報を抽出する。また、抽出した特徴情報を追跡テンプレートとして記憶しておき、車載カメラが順次撮像する画像データを、追跡テンプレートが示す情報と比較することにより、画像データ中の眼の領域を順次検出し、また、検出した眼の追跡処理を行なうように構成してある。尚、複数の運転者の顔を撮像して得られた画像データから夫々検出した眼の領域の平均的な特徴情報を標準テンプレートとすることもできる。
ここで、標準テンプレートは、運転者の最頻姿勢である運転姿勢での運転者を撮像した画像データのみに基づいて生成される場合が多く、この標準テンプレートに基づいて画像データから抽出される追跡テンプレートによっては、運転者の姿勢の変化による運転者の顔の位置及び向きの相違を考慮した眼の検出処理及び追跡処理を実行することはできない。従って、上述した標準テンプレート及び追跡テンプレートに基づく眼の検出処理では、運転者の姿勢が変化した場合に、運転者の眼の位置を誤検出し、又は眼を検出できないおそれがあるという問題がある。また、運転者の眼の開閉状態での形状は、運転者の姿勢によって変化するものであり、上述したように、所定の姿勢で撮像した画像データに基づく標準テンプレート及び追跡テンプレートを用いた眼の検出処理に基づいて、眼の開閉形状を検出する場合には誤判定するおそれがあり、眼の開閉判定の精度が低下するという問題がある。
一方、運転者の姿勢を考慮し、夫々の姿勢での運転者の顔を撮像した画像データに基づいて生成した標準テンプレートを用いて眼の追跡処理を行なうシステムもある。しかし、このシステムでは、車載カメラが順次撮像する画像データを、夫々の姿勢毎に生成された標準テンプレートと順次比較することで、相関がより高い標準テンプレートを選択し、選択した標準テンプレートに基づいて眼の検出処理を行なうため、処理が煩雑となり処理時間が長くなるという問題がある。
本発明は斯かる事情に鑑みてなされたものであり、車両の運転者の顔を撮像して得られた画像データ中のを特定する際に、撮像された顔の姿勢に対応するの特徴情報をテンプレートとして用いることで、運転者の運転姿勢の変化による顔の位置及び向きの相違を考慮したの特定処理が可能なの追跡装置及びコンピュータプログラムを提供することを目的とする。
また、本発明の他の目的は、画像データから検出した顔部位の候補の特徴情報を、画像データから検出した顔の姿勢に対応させて記憶することで、予め用意されていない特徴情報に基づくの特定処理を実行するの追跡装置を提供することにある。同様に、画像データから特定されたの位置情報を、当該顔の姿勢に対応させて記憶することで、運転者の顔の姿勢に基づいての位置情報の推測が可能となるの追跡装置を提供することにある。
更に、本発明の他の目的は、顔を撮像して得られた画像データ中の眼の開閉状態を、当該顔の姿勢に対応する瞼の形状情報に基づいて判定することで、車両の運転者の姿勢の変化による顔の位置及び向きの相違を考慮した眼の開閉判定が可能な眼の状態判定装置を提供することにある。
本発明に係る眼の追跡装置は、顔を撮像して得られる画像データ中の眼を検出し、検出後の眼の動きを追跡する装置において、眼を検出した場合、画像データ中の鼻を検出する手段と、前記画像データに基づいて顔の位置を検出する手段、及び検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出する手段を有し、検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出する姿勢検出手段と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶する記憶手段と、検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補を検出する候補検出手段と、該候補検出手段が検出した眼の候補と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、前記姿勢検出手段が検出した姿勢に対応する眼の特徴情報に基づいて、前記眼を特定する特定手段とを備えることを特徴とする。
本発明に係るの追跡装置は、前記姿勢検出手段が検出した顔の姿勢に対応するの特徴情報が前記記憶手段に記憶ていない場合、前記候補検出手段が検出したの候補の特徴情報を抽出する抽出手段を備え、前記記憶手段は、前記抽出手段が抽出した特徴情報を、前記姿勢検出手段が検出した顔の姿勢に対応させて記憶するように構成してあることを特徴とする。
本発明に係るの追跡装置は、前記特定手段が特定した眼の位置情報を、前記姿勢検出手段が検出した姿勢に対応させて記憶する位置記憶手段を備えることを特徴とする。
本発明に係るコンピュータプログラムは、コンピュータに、顔を撮像して得られる画像データ中の眼を検出させ、検出後の眼の動きを追跡させるコンピュータプログラムにおいて、前記コンピュータに、眼を検出した場合、画像データ中の鼻を検出させる手順と、前記画像データに基づいて顔の位置を検出させる手順と、検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出させる手順と、検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出させる手順と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶させる手順と、検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補を検出させる手順と、検出した眼の候補、及び前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、検出した前記位置及び向きを含む姿勢に対応する眼の特徴情報に基づいて、前記眼を特定させる手順とを実行させることを特徴とする。
本発明に係る眼の状態判定装置は、顔を撮像して得られる画像データ中の眼を検出し、検出後の眼の開閉状態を判定する装置において、眼を検出した場合、画像データ中の鼻を検出する手段と、前記画像データに基づいて顔の位置を検出する手段、及び検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出する手段を有し、検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出する姿勢検出手段と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する瞼の形状情報を記憶する瞼情報記憶手段と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶する記憶手段と、検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補領域を検出する候補検出手段と、該候補検出手段が検出した眼の候補と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、前記姿勢検出手段が検出した姿勢に対応する眼の特徴情報とに基づいて、前記眼特定する特定手段と、該特定手段が特定した眼の領域からエッジ抽出処理により瞼の形状を検出する瞼検出手段と、該瞼検出手段が検出した瞼の形状、及び前記姿勢検出手段が検出した姿勢に対応する瞼の形状情報に基づいて、前記眼の開閉状態を判定する判定手段とを備えることを特徴とする。
本発明による場合は、顔を撮像して得られる画像データ中の顔部位の候補を検出し、検出した顔部位の候補と、前記画像データに基づいて検出した前記顔の姿勢に対応する顔部位の特徴情報とに基づいて、前記画像データ中の顔部位を特定する。また、顔の姿勢として、顔の向き、基準位置に対する横方向位置及び上下方向位置等を検出する。更に、画像データ中の顔部位を特定する際に、検出した顔部位の候補と、検出した顔の姿勢に対応する顔部位の特徴情報との相関値を算出し、算出した相関値が所定の閾値よりも大きい場合に、検出した顔部位の候補を、顔部位であると特定する。
本発明による場合は、画像データから検出した顔の姿勢に対応する顔部位の特徴情報が予め用意されていない場合に、画像データから検出した顔部位の候補の特徴情報を、画像データから検出した顔の姿勢に対応させて記憶させる。また、本発明による場合は、特定した画像データ中の顔部位の位置情報を、画像データから検出した顔の姿勢に対応させて記憶させる。
本発明による場合は、顔を撮像して得られる画像データ中の瞼の形状を検出し、検出した瞼の形状と、前記画像データに基づいて検出した顔の姿勢に対応する瞼の形状情報とに基づいて、前記眼の開閉状態を判定する。また、瞼の形状を近似関数にて示し、この近似関数に係る情報と、検出した顔の姿勢に対応する瞼の形状を示す関数に係る情報とに基づいて、前記眼の開閉状態を判定する。
本発明によれば、顔を撮像して得られた画像データ中の顔部位を、当該顔の姿勢に対応する顔部位の特徴情報に基づいて特定することで、例えば、車両の運転者の姿勢の変化による顔の位置及び向きの相違を考慮した顔部位の特定処理を実行することが可能となり、運転者の姿勢の変化に関わらず、顔部位を精度よく特定することができる。また、取得した画像データ中の顔部位の候補と、画像データから検出した顔の姿勢により一意に決定されるテンプレートとの比較に基づいて画像データ中の顔部位を特定することで、比較処理が簡略化され、顔部位の特定処理にかかる処理時間を短縮することができる。
また、従来から行なわれている処理を用いて、例えば、画像データ中の顔の向き、及び基準位置に対する横方向位置及び/又は上下方向位置を検出することで、運転者の姿勢を精度よく検出することができ、検出した姿勢に基づく顔部位の特定処理及び追跡処理を実行することができる。更に、画像データから検出した顔部位の候補と、画像データから検出した姿勢に対応する顔部位の特徴情報との相関値に基づき、検出した候補を顔部位であると特定することで、従来から行なわれているテンプレートマッチング法にて容易に顔部位を特定することができる。
本発明によれば、画像データから検出した顔部位の候補の特徴情報を、画像データから検出した顔の姿勢に対応させて記憶させることで、予め用意していない特徴情報に基づく顔部位の特定処理を実行することができる。また、出現頻度の少ない姿勢に対応する顔部位の特徴情報を予め用意しないことにより、顔部位の特徴情報を記憶しておくメモリ領域を削減することができる。更に、画像データから特定した顔部位の位置情報を、当該顔の姿勢に対応させて記憶させることにより、顔部位を検出できない場合に、画像フレーム中の顔部位の位置情報を精度よく推測することができる。
本発明によれば、顔を撮像して得られた画像データ中の瞼の形状と、前記画像データに基づいて検出した顔の姿勢に対応する瞼の形状情報とに基づいて、眼の開閉状態を判定することで、例えば、車両の運転者の姿勢の変化による顔の位置及び向きの相違を考慮した瞼の状態判定処理を実行することが可能となり、運転者の姿勢の変化に関わらず、瞼の開閉状態を精度よく判定することができる。また、瞼の形状を示す近似関数に係る情報と、予め用意してある夫々の姿勢に対応する瞼の形状を示す関数に係る情報とに基づいて眼の開閉状態を判定することで、例えば、算出した近似関数の係数部分に基づいて、眼の開閉状態を精度よく判定することができる。
以下に、本発明に係る顔部位の追跡装置及び眼の状態判定装置をその実施の形態を示す図面に基づいて具体的に説明する。本実施の形態では、例えば、自動車等の車両に乗車する運転者の顔を撮像できる位置に設置したカメラで撮像した画像データに基づいて、運転者の顔の顔部位として眼を検出し、検出した眼の動きを追跡する眼の追跡装置、及び、眼を追跡することで眼の開閉状態を判定する眼の状態判定装置について説明する。尚、カメラは、例えば、ミラー又はハンドルの配置位置近傍に設置することができ、1秒当たり30枚の画像フレーム(画像データ)を取得する。
図1は本発明に係る眼の追跡装置及び眼の状態判定装置の構成例を示すブロック図である。図中1は本発明に係る眼の追跡装置及び眼の状態判定装置であるコンピュータを示しており、コンピュータ1は、ケーブルCを介してカメラ2と接続されている。尚、カメラ2とコンピュータ1とは、専用のケーブルCで接続されるだけでなく、車載LAN(Local Area Network)等のネットワークを介して接続することも可能である。
カメラ2は、MPU(Micro Processor Unit)20、MPU20が実行する制御プログラムを記憶したROM21、MPU20による制御動作中に発生する種々のデータを一時的に記憶するRAM22、CCD(Charge Couple Device)等により構成された撮像部23、撮像部23により取得して得られたアナログの画像フレームをデジタルの画像フレームに変換するA/D(アナログ/デジタル)変換器24、DRAMにより構成され、A/D変換器24により変換されたデジタルの画像フレームを一時的に記憶するフレームメモリ25、ケーブルCを介してデータ伝送を行なうためのインタフェース26等を備えており、夫々はバス27を介して相互に接続されている。
MPU20は、自身が備える時計手段(図示せず)により所定のタイミングを計時しながらバス27を介して上述したハードウェア各部を制御するとともに、ROM21が記憶するカメラ2の動作に必要な種々の制御プログラムを順次実行する。また、本実施の形態におけるA/D変換器24は、撮像部23から順次入力されるアナログの画像フレームを、例えば各画素を256階調(1Byte)の画素データ(輝度値)で示すデジタルの画像フレームに変換する。
上述した構成のカメラ2は、MPU20の指示に従って所定のタイミングで撮像部23が画像フレームを取り込み、得られたアナログの画像フレームをA/D変換器24がデジタルの画像フレームに変換してフレームメモリ25に記憶させる。また、フレームメモリ25に記憶してある画像フレームはインタフェース26を介してコンピュータ1に伝送される。
一方、コンピュータ1は、制御中枢としてのCPU(Central Processing Unit)10、CPU10が実行する制御プログラムを記憶したハードディスク(以下、HDという)11、CPU10による制御動作中に発生する種々のデータを一時的に記憶するRAM12、DRAMにより構成され、ケーブルCを介して取得した画像フレームを一時的に記憶するフレームメモリ13、ケーブルCを介してデータ伝送を行うためのインタフェース14、CD−ROMドライブ等の外部記憶装置15等を備えている。
CPU10は、時計手段(図示せず)を備えており、所定のタイミングを計時しながら、バス16を介して接続される上述したハードウェア各部を制御するとともに、HD11に記憶してある制御プログラムを順次実行する。また、CPU10は、自身が行なう眼の検出処理により眼の位置が検出できなかった場合にオンにされる眼検出不可フラグレジスタ、及び鼻の検出処理により鼻の位置が検出できなかった場合にオンにされる鼻検出不可フラグレジスタを備えている。
HD11は、CPU10による各処理で用いられる各種の閾値、例えば、眼を特定する際の所定の第1閾値、第2閾値及び第3閾値、瞼の形状を検出する際の所定の範囲を示す各値、また、所定の画素数、所定の距離、顔の向き検出処理で用いられる特徴テーブル等を記憶する。尚、コンピュータ1は、CD−ROM等の記録媒体17に記憶してある本発明の姿勢検出処理プログラム、候補検出処理プログラム及び眼特定処理プログラム等を外部記憶装置15にて読み取り、読み取ったコンピュータプログラムをHD11に記憶する。従って、CPU10は、HD11に予め記憶してある制御プログラムと同様に、外部記憶装置15を介してHD11に読み取ったコンピュータプログラムも、RAM12に読み出して順次実行する。
上述した構成のコンピュータ1が眼の追跡装置として動作する場合、CPU10は、ケーブルCを介して順次カメラ2から取得し、フレームメモリ13が記憶する画像フレームに対して、HD11の姿勢検出処理プログラムをRAM12に読み出して順次実行する。これにより、CPU10は、カメラ2が撮像した画像フレームに基づいて、撮像された運転者の顔における姿勢を検出する姿勢検出手段として動作する。本実施の形態では、CPU10は、顔の姿勢として、運転者の顔の向きと、運転者の顔の基準位置に対する横方向位置を検出する。従って、CPU10は、顔の向きを検出する向き検出手段、及び顔の位置を検出する位置検出手段として動作する。尚、本実施の形態では、横方向位置として、正面を向いた運転姿勢(基準位置)に対して、カメラ2から運転者の顔までの距離の変化に基づく前後位置を検出する。また、顔の位置は、基準位置に対する前後位置だけでなく、カメラ2に対して左右位置や上下方向位置も検出し、夫々検出した位置にて顔の位置を特定することにより、より細かく顔の位置を特定することができる。
図2は姿勢情報の割当テーブルを示す図であり、CPU10は、上述のように画像フレームに基づいて検出した運転者の顔の向き及び位置に対応する姿勢を示す姿勢情報を割当テーブルから特定する。例えば、CPU10が、顔向きを左向きに、顔の位置を前位置に検出した場合には、姿勢10で示す姿勢情報を特定する。また、図2に示すように、本実施の形態では、顔の向きについて、正面、右向き、左向き、下向き、上向き、右傾き及び左傾きを考慮しており、顔の位置について、基準位置、基準位置に対して前位置及び後位置を考慮しているが、運転者の癖及び習慣、また、本発明の装置を利用する状況等に応じて、検出姿勢の数を適宜変更することもできる。
また、CPU10は、カメラ2が撮像する画像フレームに対して、HD11の候補検出処理プログラムをRAM12に読み出して順次実行し、画像フレームに含まれる運転者の眼の候補領域を検出する候補検出手段として動作する。具体的には、CPU10は、車両の走行中にカメラ2が順次撮像する画像フレームについて、時系列的に先の画像フレームにおいて特定された眼の位置に基づいて眼の候補領域を検出する。更に、CPU10は、HD11の眼特定処理プログラムをRAM12に読み出して順次実行し、検出した眼の候補領域と、予めテンプレートとして用意してある眼の特徴情報とに基づいて、眼の候補領域が眼であると特定する特定手段として動作する。
本実施の形態では、眼の特徴情報によるテンプレートを、運転者の顔の姿勢に対応してHD(記憶手段)11の適宜の領域に設定してある眼の特徴情報データベース(以下、眼の特徴情報DBという)に登録してある。従って、CPU10は、カメラ2が撮像した画像フレームから、上述のように検出した運転者の顔の向き及び位置が示す姿勢に対応するテンプレートをHD11の眼の特徴情報DBから選択し、選択したテンプレートと、画像フレームから検出した眼の候補領域における特徴情報とに基づいて眼を特定する。具体的には、選択したテンプレートと、画像フレームから検出した眼の候補領域における特徴情報との相関値を、例えば次式を用いて算出する算出手段として動作し、算出した相関値が、予めHD11に記憶する所定の閾値よりも大きい場合に、検出した候補領域が眼を示す領域であると特定する。
Figure 0004471607
ここで、本実施の形態では、テンプレートとして、初期テンプレートと追跡テンプレートとを用いており、初期テンプレートは、予めHD11の眼の特徴情報DBに記憶してあるテンプレートであり、追跡テンプレートは、眼の追跡処理において順次更新されるテンプレートである。尚、追跡テンプレートは、HD11の眼の特徴情報DBに記憶してあるテンプレートと同様に、対応する顔の姿勢情報とともにRAM12に記憶される。
図3はテンプレートを説明するための図であり、本実施の形態におけるテンプレートは、画像フレームから検出した眼の領域Rと、眉毛部分の領域Rとについて、図中Xで示す水平方向に棒状の領域であるXテンプレート、及び図中Yで示す垂直方向に2つの棒状の領域であるYテンプレート1及びYテンプレート2を含んでおり、これらのテンプレートにより眼の特徴を示している。尚、テンプレートは、図に示すような3つの棒状の領域に限定されるものではないが、眉毛の領域及び瞳の領域を含むようにテンプレートを設定することにより、少ない情報量のテンプレートでより正確に眼を特定することができる。
本実施の形態では、画像フレーム中の眼を特定する際に用いる、運転者の顔の姿勢に対応するテンプレートが、HD11の眼の特徴情報DBに用意されていない場合、CPU10は、画像フレームから検出した眼の候補領域におけるテンプレート(眼の特徴情報)を抽出する抽出手段として動作する。また、CPU10は、抽出したテンプレートを、当該顔の姿勢に対応してHD11の眼の特徴情報DBに記憶させる。これにより、例えば、出現頻度が少ない姿勢に対応するテンプレートを用いて、眼の特定処理及び追跡処理を実行することができる。
更に、CPU10は、顔の姿勢に対応するテンプレートを用いて特定した眼の位置情報を、当該顔の姿勢に対応させてHD(位置記憶手段)11の眼の位置情報DBに記憶させる。これにより、上述したような眼の特定処理の実行中に、眼を誤検出し、また、眼が検出できなかった場合であっても、画像フレームから検出する姿勢に基づいて眼の位置を推測することができ、眼の特定処理を続行することが可能となる。
一方、上述した構成のコンピュータ1が眼の状態判定装置として動作する場合、CPU10は、眼の追跡装置として動作する場合と同様に、カメラ2が撮像した画像フレームに基づいて、撮像された運転者の顔における姿勢を検出する。また、カメラ2から取得した画像フレームに含まれる運転者の眼を、例えば、上述したような眼の特定処理により特定する。更に、CPU10は、特定した眼の瞼の形状を検出する瞼検出手段として動作し、検出した瞼の形状と、予め眼の開閉状態に対応して用意してある瞼の形状情報とに基づいて眼の開閉状態を判定する判定手段として動作する。
本実施の形態では、眼の開閉判定に用いる瞼の形状情報を、運転者の顔の姿勢に対応してHD(瞼情報記憶手段)11の適宜の領域に設定してある瞼の形状情報データベース(以下、瞼の形状情報DBという)に登録してある。従って、CPU10は、カメラ2が撮像した画像フレームから検出した運転者の顔の姿勢に対応する瞼の形状情報をHD11の瞼の形状情報DBから選択し、選択した瞼の形状情報と、画像フレームから検出した瞼の形状とに基づいて眼の開閉判定を行なう。
図4は瞼の形状を検出する際に行なうエッジ抽出処理を説明するための模式図であり、図4(a)は、CPU10が特定した、カメラ2から取得した画像フレームに含まれる運転者の眼の領域Rを示している。領域Rは、水平方向X及び垂直方向Yに夫々配列された画素データを有しており、CPU10は、図4(a)に破線で示すように垂直方向Yの各画素データを走査しながら、例えば図4(b)に示す3×3の行列を用いたフィルタ処理を行ない、輝度の高い領域から輝度の低い領域へのエッジを強調する。また、CPU10は、フィルタ処理を行なった各画素データにおいて、垂直方向Yの最大輝度値を有する画素データの位置をエッジ抽出点として抽出する。
図4(c)は、抽出したエッジ抽出点の位置を示しており、CPU10は、抽出したエッジ抽出点を示す近似関数を算出する関数算出手段として動作し、図4(d)で示すように、例えば2次関数にて補間する。上瞼は、図4(e)に示すような眼の開状態から、図4(f)に示すような眼の閉状態まで変化する可能性があり、算出した2次関数の係数は、所定の範囲をとることができる。従って、HD11の瞼の形状情報DBには、瞼の形状情報として、顔の姿勢に対応して、2次関数の係数(関数に係る情報)が記憶してあり、CPU10は、画像フレームから検出した姿勢情報に対応する係数と、上瞼の形状を近似した2次関数の係数とを比較し、当該眼の開閉状態を判定する。
以下に、上述の構成のコンピュータ1が、カメラ2で撮像した画像フレームに基づいて、撮像された運転者の顔の基準位置に対する前後位置を検出する顔の位置検出処理について説明する。図5はコンピュータ1による顔の位置検出処理手順を示すフローチャートであり、CPU10は、HD11の姿勢検出処理プログラムを実行し、フレームメモリ13が記憶する画像フレームの垂直方向に隣合って配列される各画素データを加算する(S1)。図6はコンピュータ1による顔の位置検出処理を説明するための図であり、図6(a)はカメラ2から取得した画像フレームの例を示している。図6(a)においてXは画像フレームにおける水平方向を、Yは画像フレームにおける垂直方向を夫々示しており、画像フレームは水平方向X及び垂直方向Y夫々に複数の画素データが配列してある。
CPU10は、画像フレームの垂直方向Yに配列される画素データを順次加算することにより、図6(b)に示すようなグラフを算出する。図6(b)のグラフにおいては、横軸に水平方向Xを、縦軸に算出された加算値、具体的には輝度和を夫々示している。ここで、顔の領域は、髪の領域及び背景領域と比較して明るく撮像される傾向にあり、上述のように算出した輝度和に基づき顔の領域を特定することができる。
従って、本実施の形態におけるCPU10は、HD11に予め設定された閾値としての所定の輝度値を用い、上述のように算出された輝度和が所定の輝度値よりも大きい場合に、当該輝度和に算出された画素データは、顔の領域内の画像データであると判断し、顔の水平方向における領域F1を特定する(S2)。尚、図6(c)では、F1aは顔の領域の左端位置を、F1bは顔の領域の右端位置を夫々示している。
また、画像フレームの水平方向Xの画素データの変化は、背景の領域から顔の領域へ、及び顔の領域から背景の領域へ変化する箇所が、他の箇所と比較して大きい傾向にあり、上述のように算出した輝度和の変化量に基づいても顔の領域を特定することができる。従って、CPU10は、上述のように算出した輝度和について、水平方向Xの各位置において、各位置の輝度和を中心として、水平方向Xの左右に所定数の画素間での変化量を算出し、夫々算出された変化量が大きい位置、例えば、図6(d)中にF2aで示す位置を、水平方向Xにおける顔の領域であると特定する(S3)。
尚、図6(d)においては、変化量に基づく顔の領域の特定処理によっては、顔の領域F2の右端位置は特定されず、この場合には、CPU10は、図6(c)に示すように、所定の輝度値に基づき特定された右端位置F1bを、顔の領域F2の右端位置として、特定した顔の領域F2をRAM12に記憶する(S4)。また、CPU10は、特定した顔の領域F2における横幅を示す画素数を計数し(S5)、計数した画素数に基づいて、画像フレームに撮像された運転者の顔の、基準位置に対する前後位置を検出する(S6)。
図7は顔の横幅に基づいて顔の位置を検出する処理を説明するための図であり、図7(a)のグラフは、横軸に顔の横幅を示す画素数を、縦軸に各画素数の出現頻度を夫々示している。図7(b)は基準位置(正面を向いた運転姿勢)での顔を撮像した場合の画像フレームの例を示しており、図7(c)は基準位置よりもカメラ2との距離が近い前位置での顔を撮像した場合の画像フレームの例を示しており、図7(d)は基準位置よりもカメラ2との距離が遠い後位置での顔を撮像した場合の画像フレームの例を示している。図7(b),(c),(d)で示すように、基準位置に対してカメラ2との距離が近い前位置での顔を撮像した場合、画像フレーム中の顔領域の横幅hが広くなり、基準位置に対してカメラ2との距離が遠い後位置での顔を撮像した場合、画像フレーム中の顔領域の横幅hが狭くなる。
従って、CPU10は、図7(a)に示すように、横幅h1 と横幅h2 とを閾値として、画像フレーム中の顔領域の横幅hが横幅h1 よりも狭い場合には、撮像された顔が基準位置に対して後位置にあると特定し、画像フレーム中の顔領域の横幅hが横幅h2 よりも広い場合には、撮像された顔が基準位置に対して前位置にあると特定する。また、同様の処理により、画像フレーム中の顔領域の縦幅に基づいても顔の位置を特定することができる。尚、運転者の顔の基準位置に対する位置の検出方法は、上述したように、画像フレームに基づいて検出する方法に限られるものではなく、また、画像フレームに基づく検出方法は、上述した方法には限られない。
以下に、上述の構成のコンピュータ1が、カメラ2が撮像した画像フレームに基づいて、撮像された運転者の顔の向きを検出する顔の向き検出処理について説明する。本実施の形態では、コンピュータ1は、カメラ2が撮像した画像フレームに基づいて、撮像された運転者の眼の位置を検出する眼の検出処理と、鼻の位置を検出する鼻の検出処理とを行なっており、夫々検出した眼の位置及び鼻の位置に基づいて、顔の向きを検出する。従って、まず、CPU10が行なう眼の検出処理について説明する。図8はコンピュータ1による眼の検出処理手順を示すフローチャートであり、CPU10は、フレームメモリ13に記憶する画像フレームの水平方向に隣合って配列される画素データを加算する(S11)。
図9はコンピュータ1による眼の検出処理を説明するための図であり、図9(a)は、図6(a)と同様に、カメラ2から取得した画像フレームの例を示している。CPU10は、画像フレームの水平方向Xに配列される画素データを順次加算して、図9(b)に示すようなグラフを算出する。図9(b)のグラフにおいては、縦軸に垂直方向Yを、横軸に算出された輝度和を夫々示している。CPU10は、上述のように算出した輝度和において最大値を特定する(S12)。ここで、顔の領域においては頬の部分が最も明るく撮像される傾向にあるため、最大値であると特定される輝度和は頬の位置の画素データの加算値であると判断することができ、図9(c)のグラフにおいて垂直方向YのMaxで示す位置を、上述のように頬の位置と特定することができる。
CPU10は、上述のように算出した輝度和において極小値を特定し、ステップS12で最大値であると特定した輝度和の位置の上方にある極小値となる輝度和の位置を選択し、このような輝度和を選択できたか否かを判断する(S13)。眼の領域は、肌の領域と比較して暗く撮像されるため、上述のように最大値である輝度和の位置が示す頬の位置よりも上方にあり、極小値であると特定された輝度和は眼の位置の画素データの加算値である可能性が高く、このように選択された、図9(c)中にMinで示す位置を眼の位置の候補とすることができる。
上述したように、最大値である輝度和の位置の上方の、極小値となる輝度和が選択できたと判断した場合(S13:YES)、CPU10は、画像フレームの上方から順次極小値となる輝度和を検出し、上方から2番目の位置で極小値となる輝度和を選択し、このような輝度和を選択できたか否かを判断する(S14)。眼の領域と同様に、眉毛の領域も肌の領域と比較して暗く撮像されるため、上述のように特定された極小値において、図9(d)中の位置Min1 は、画像データの上方から1番目の極小値の位置を示しており、この極小値は眉毛の位置の画素データの加算値であると判断でき、また、上方から2番目の極小値の位置は、眼の位置の画素データの加算値であると判断でき、この2番目の極小値の位置Min2 を眼の位置の候補とすることができる。
CPU10は、上方から2番目の位置にある輝度和が選択できたと判断した場合(S14:YES)、上述のようにステップS13及びS14にて選択した極小値の位置を比較することにより、両極小値の位置Min,Min2 が略一致するか否かを判断し(S15)、略一致したと判断した場合(S15:YES)、選択した極小値の位置を眼の位置であると特定してRAM12に記憶する(S16)。一方、ステップS13又はS14において、対応する極小値が選択されないと判断した場合(S13:NO,S14:NO)、及びステップS15において、選択した2つの極小値の位置Min,Min2 が一致しないと判断した場合(S15:NO)、CPU10は、自身が備える眼検出不可フラグレジスタをオンにして(S17)、眼検出処理を終了する。
次に、CPU10が行なう鼻の検出処理について説明する。尚、本実施の形態では、上述した眼の検出処理により眼の位置を検出できた場合にのみ、以下の鼻の検出処理が可能である。図10はコンピュータ1による鼻の検出処理手順を示すフローチャートであり、図11はコンピュータ1による鼻の検出処理を説明するための図である。CPU10は、上述した眼の検出処理により検出した眼の位置Eから、予めHD11に記憶してある所定の画素数だけ下方の領域Rにおいて、垂直方向Yに隣合って配列される画素データを加算し(S21)、図11(b)に示すようなグラフを算出する。尚、図11(a)は、図6(a)と同様に、カメラ2から取得した画像フレームの例を示しており、図11(b)のグラフにおいては、横軸に水平方向Xを、縦軸に算出された輝度和を夫々示している。
次にCPU10は、上述のように算出した輝度和における極小値を特定する(S22)。ここで、鼻の輪郭部分は顔の領域において暗く撮像される傾向にあるため、このように極小値であると特定される輝度和は、鼻の輪郭部分の画像データの加算値であると特定することができ、図11(b)のグラフにおいて水平方向XのMin3 ,Min4 で示す極小値の位置を鼻の左右の輪郭位置と特定することができる。図11(c)は、図11(b)において水平方向Xにおける位置Min3 の近傍の拡大図であり、図に示すように、水平方向Xの注目位置Min3 の輝度和が、水平方向Xに左右の夫々所定数の画素間において最小値となる輝度和を極小値としている。
CPU10は、上述のように特定した極小値が複数あるか否かを判断し(S23)、極小値が複数あると判断した場合(S23:YES)、2つの極小値の位置において水平方向Xにおける距離を算出し(S24)、算出した距離が予めHD11に記憶してある所定の距離よりも短いか否かを判断する(S25)。このように算出した、鼻の輪郭位置であると特定された極小値の位置Min3 ,Min4 における水平方向Xの距離は鼻の横幅を示しており、この横幅が所定の距離よりも長いと判断した場合(S25:NO)、CPU10は、鼻の位置が検出できなかったとして自身が備える鼻検出不可フラグレジスタをオンにして(S26)、鼻検出処理を終了する。
また、2つの極小値の水平方向Xの距離が所定距離よりも短いと判断した場合(S25:YES)、CPU10は、当該距離を隔てる極小値Min3 ,Min4 を、鼻の輪郭位置の画素データの加算値であると判断し、この極小値Min3 ,Min4 の中央位置を算出して(S27)、算出された中央位置を鼻の位置と特定してRAM12に記憶する(S28)。
一方、ステップS23において、特定された極小値が複数ないと判断した場合(S23:NO)、即ち、鼻の左右の輪郭部分が正確に画像フレームに含まれなかった場合は、CPU10は、ステップS22において極小値であると特定された輝度和の水平方向Xにおける位置を鼻の位置と特定してRAM12に記憶する(S29)。
図12は鼻の輪郭部分が正確に撮像されなかった場合の、コンピュータ1による鼻の検出処理を説明するための図であり、図12(a)に示すように、撮像対象の運転者の顔の向きによっては、鼻の左右の輪郭部分を正確に撮像できない場合がある。このような場合には、上述したステップS22において特定された1つの極小値である輝度和の水平方向Xにおける位置Min5 を鼻の位置と特定する。
以下に、上述したような眼の検出処理及び鼻の検出処理を行なうコンピュータ1が、カメラ2にて撮像した画像フレームに基づいて、撮像された運転者の顔の向きを検出する顔の向き検出処理について説明する。図13はコンピュータ1による顔の向き検出処理手順を示すフローチャートであり、CPU10は、フレームメモリ13が記憶する画像フレームに対して、図8のフローチャートにより説明した眼の検出処理を実行する(S31)。尚、本実施の形態における眼の検出処理では、上述したように、カメラ2が撮像した画像フレームによっては、眼の位置を検出できない場合があり、CPU10は、自身の眼検出不可フラグレジスタがオフであるか否かに基づき、上述した眼の検出処理により眼の位置を検出できたか否かを判断する(S32)。
図14は眼の位置を検出できない画像フレームに対する顔の向き検出処理を説明するための図であり、図14(a)は、図6(a)と同様に、カメラ2から取得した画像フレームの例を示している。尚、眼の位置を検出できない画像フレームとしては、図14(b)に示すように、上述した眼の検出処理において算出される、画像フレームの水平方向Xに配列される画素データの加算値である輝度和において、極小値が特定できないものが挙げられる。
このように、眼の位置を検出できないと判断した場合(S32:NO)、CPU10は、図5のフローチャートにより説明した顔の位置検出処理において算出した、画像フレームの垂直方向Yに配列される画素データの加算値である輝度和から、特徴データを抽出する(S33)。ここで、図14(c)は画像フレームの垂直方向Yに配列される画素データの輝度和のグラフを示しており、ここでの特徴データとは、例えば、水平方向Xの左端から位置Xまでの範囲に示すように、各輝度和がなだらかに上昇する特徴を示すデータである。尚、本実施の形態では、顔の各向きに対応して、各向きで撮像した画像フレームにおいて抽出される上述のような各特徴を示すデータを特徴テーブルとしてHD11に記憶してある。
具体的に、図14(c)においては、上述したように水平方向Xにおいて、各輝度和がなだらかに上昇し、輝度和の変化が少なく、このような画像フレームは、長い髪の領域である場合が多く、このような特徴データは、特徴テーブルにおいて、右向きに対応して記憶してある。従って、CPU10は、抽出した特徴データに基づいて、HD11の特徴テーブルから前記顔の向きを右向きであると検出する(S34)。尚、このような特徴テーブルに記憶してある特徴データは、予めHD11に記憶してあってもよいが、ユーザが設定することにより適宜追加することも可能である。
一方、ステップS32において、眼の位置が検出されたと判断した場合(S32:YES)、CPU10は、図10のフローチャートにより説明した鼻の検出処理を実行し(S35)、自身の鼻検出不可フラグレジスタがオフであるか否かに基づき、鼻の位置を検出できたか否かを判断する(S36)。図15は鼻の位置を検出できない画像フレームに対する顔の向き検出処理を説明するための図であり、図15(a)は、図6(a)と同様に、カメラ2から取得した画像フレームの例を示している。尚、鼻の位置を検出できない画像フレームとしては、図15(b)に示すように、上述した鼻の検出処理において算出される、眼の位置から所定画素数だけ下方の領域Rにおいて、垂直方向Yに配列される画素データの加算値である輝度和において、極小値が特定できないものが挙げられる。
このように、鼻の位置を検出できないと判断した場合(S36:NO)、CPU10は、ステップS31における眼の検出処理により算出した眼の位置に基づき、図15(c)にERで示す眼の近傍領域において、垂直方向Yに配列される画素データを加算し(S37)、加算値である輝度和を算出する。図15(d)は領域ERにおいて垂直方向Yの画素データの輝度和のグラフを示しており、CPU10は、ステップS33と同様に、このように算出された輝度和おける特徴データを抽出し(S38)、抽出した特徴データに基づきHD11の特徴テーブルから顔の向きを検出する(S39)。
尚、ここでの特徴データは、水平方向Xの左端から位置Xまでの範囲に示すように、各輝度和が激しく変動する特徴等を示すデータであり、このように輝度和が激しく変動する領域は、短い髪の領域である場合が多く、このような特徴データは、特徴テーブルにおいて右向きに対応して記憶してあり、CPU10は、ステップS39において運転者の顔は右を向いていると検出することができる。一方、ステップS36において、鼻の位置が検出されたと判断した場合(S36:YES)、CPU10は、図5のフローチャートにより説明した顔の位置検出処理において特定した、画像フレーム中の顔の領域、及びステップS35で検出した鼻の位置に基づいて、顔の向きを検出する(S40)。
上述したように、画像フレームから検出した眼の位置及び鼻の位置に基づいて、撮像された顔の向きを検出することにより、精度よく顔の向きを検出することが可能であり、また、画像フレームから眼の位置又は鼻の位置を検出できない場合であっても、画像フレームにおいて、垂直方向Yに配列される画素データの輝度和が示す特徴データに基づいて、精度よく顔の向きを検出することができる。尚、画像フレーム中の顔の向きを検出する方法は、上述したように、眼の位置及び鼻の位置に基づく方法には限られない。
以下に、上述したような顔の位置検出処理及び顔の向き検出処理を行なうコンピュータ1が、カメラ2から取得した画像フレームに基づいて、撮像される運転者の眼を検出し、検出した眼の動きを追跡する処理について説明する。図16及び図17はコンピュータ1による眼の追跡処理手順を示すフローチャートであり、CPU10は、カメラ2が撮像した画像フレームを取得し(S41)、フレームメモリ23に記憶させる。次に、CPU10は、HD11の姿勢検出処理プログラムに従って、図5のフローチャートで説明した顔の位置検出処理を実行し(S42)、フレームメモリ23が記憶する画像フレームに基づいて、被写体である運転者の顔の位置を検出する。また、CPU10は、図13のフローチャートで説明した顔の向き検出処理を実行し(S43)、運転者の顔の向きを検出する。
CPU10は、夫々検出した顔の位置及び顔の向きに対応する姿勢情報を、HD11の姿勢情報割当テーブルから特定し(S44)、RAM12に記憶する。尚、RAM12に記憶する姿勢情報は、カメラ2から順次取得する画像フレームに基づいて逐次更新される。また、CPU10は、順次更新してRAM12に記憶してある追跡テンプレートに基づいて、カメラ2から取得した画像フレーム中の眼の領域を検出し(S45)、検出した眼の領域について、該領域の特徴情報であるテンプレートを抽出する(S46)。
CPU10は、ステップS44で特定した姿勢情報に対応する追跡テンプレートがRAM12に記憶してあるか否かを判断し(S47)、RAM12に記憶していないと判断した場合(S47:NO)、特定した姿勢情報に対応するテンプレートがHD11の眼の特徴情報DBに記憶してあるか否かを判断する(S48)。また、CPU10は、テンプレートが眼の特徴情報DBに記憶していないと判断した場合(S48:NO)、ステップS44で特定した姿勢情報と、ステップS46で抽出したテンプレートとを対応させて、HD11の眼の特徴情報DBに追加する(S49)。また、CPU10は、ステップS45で検出した領域を示す眼の中央位置をRAM12に記憶する(S54)。
一方、ステップS47で、姿勢情報に対応する追跡テンプレートがRAM12に記憶してあると判断した場合(S47:YES)、CPU10は、ステップS46で抽出したテンプレートと、RAM12に記憶してある追跡テンプレートとの相関値を所定の式を用いて算出する(S50)。尚、ステップS48で、テンプレートが眼の特徴情報DBに記憶してあると判断した場合(S48:YES)、CPU10は、眼の特徴情報DBのテンプレートを追跡テンプレートとしてRAM12に記憶し、ステップS46で抽出したテンプレートと、RAM12に記憶させた追跡テンプレートとの相関値を所定の式を用いて算出する(S50)。
次にCPU10は、算出した相関値とHD11に予め記憶してある第1閾値とを比較し、算出した相関値が第1閾値よりも大きいか否かを判断する(S51)。CPU10は、算出した相関値が第1閾値よりも大きいと判断した場合(S51:YES)、ステップS46で抽出したテンプレートをRAM12の追跡テンプレートに更新する(S52)。一方、算出した相関値が第1閾値よりも小さいと判断した場合(S51:NO)、CPU10は、ステップS52の処理をスキップして、算出した相関値が、HD11に予め記憶したる第2閾値よりも大きいか否かを判断する(S53)。
ここで、ステップS51の処理は、ステップS45で検出した領域が、眼の追跡処理に用いる追跡テンプレートに利用できるか否かの判断を行なっており、この領域が追跡テンプレートに利用できない場合であっても、この領域中に眼を検出できる場合等があり、ステップS53の処理は、この領域中に眼を検出できるか否かの判断を行なっている。従って、算出した相関値が第2閾値よりも大きいと判断した場合は(S53:YES)、CPU10は、ステップS45で検出した領域を示す眼の中央位置をRAM12に記憶する(S54)。
一方、前記相関値が第2閾値よりも小さいと判断した場合(S53:NO)、即ち、前記領域内で眼を検出することができなかった場合、CPU10は、当該画像フレームにおいて、先立って行なわれた処理において蓄積された出現頻度の高い位置に基づく眼の領域を新たに検出し(S55)、検出した領域のテンプレートと、ステップS44で特定した姿勢情報に対応してRAM12に記憶してある追跡テンプレート、又は、追跡テンプレートがない場合には、HD11の眼の特徴情報DBのテンプレートとの相関値を、ステップS50の処理と同様に算出する(S56)。また、CPU10は、算出した相関値がHD11に予め記憶してある第3閾値よりも大きいか否かを判断し(S57)、算出した相関値が第3閾値よりも大きいと判断した場合(S57:YES)、ステップS55で検出した領域を示す眼の中央位置を記憶する(S54)。尚、算出した相関値が第3閾値よりも小さいと判断した場合(S57:NO)、即ち、前記領域内に追跡すべき眼を検出できかった場合、CPU10は、ステップS41の処理に戻り、次の画像フレームにおいて眼の追跡処理を行なう。
次にCPU10は、ステップS54でRAM12に記憶させた眼の位置に基づいて、図4の模式図で説明したエッジ抽出処理を実行することにより、当該眼の領域内の上瞼の形状を近似した2次関数を算出する(S58)。CPU10は、算出した2次関数における係数を所定の範囲を示す各値と比較して、算出した2次関数における係数が所定の範囲内にあるか否かを判断し(S59)、所定の範囲内にあると判断した場合(S59:YES)、算出した瞼の形状を示す関数をRAM12記憶する(S60)。一方、算出した2次関数の係数が所定の範囲内にないと判断した場合(S59:NO)、当該眼の領域は眼ではないと判断されるため、CPU10は、ステップS41の処理に戻り、次の画像フレームにおいて眼の追跡処理を行なう。
上述したように、カメラ2が撮像した画像フレームに基づいて検出した顔の姿勢に対応するテンプレートを用いて、画像フレーム中の眼の追跡処理を行なうことにより、運転者の運転姿勢の変化に影響されず、運転者の運転姿勢の変化による顔の姿勢の変化を考慮した眼の追跡処理が可能となる。また、HD11の眼の特徴情報DBにテンプレートが用意されていない姿勢においては、新たにテンプレートを生成することで、その後に行なう眼の追跡処理に利用することができる。
以下に、上述したような顔の位置検出処理、顔の向き検出処理及び眼の追跡処理を行なうコンピュータ1が、カメラ2にて撮像した画像フレームに基づいて、撮像される運転者の眼の開閉状態を判定する眼の状態判定処理について説明する。図18はコンピュータ1による眼の状態判定処理手順を示すフローチャートであり、CPU10は、上述した眼の追跡処理により算出された上瞼の形状を示す関数に基づき、当該運転者の眼の開閉を判定する開閉閾値を、運転者の顔の姿勢に対応して決定する(S61)。図19は開閉閾値の決定処理を説明するための図であり、横軸に算出された上瞼を示す2次関数の係数を、縦軸に各係数の出現頻度を夫々示しており、グラフの分布に基づいて開閉閾値を決定する。尚、図19で示すグラフは、顔の姿勢情報に対応して複数生成してあり、夫々のグラフに基づいて、開閉閾値を決定する。
次にCPU10は、順次取得する画像フレームに基づいて、画像フレーム中の運転者の右眼について、上述した眼の追跡処理を実行し(S62)、右眼の上瞼の形状を示す関数を算出する。また、CPU10は、算出した2次関数の係数が、ステップS61で顔の姿勢情報に対応して決定された開閉閾値よりも大きいか否かを判断し(S63)、算出した係数が開閉閾値よりも大きいと判断した場合(S63:YES)、当該右眼が開状態であると判定し(S64)、前記係数が開閉閾値よりも小さいと判断した場合(S63:NO)、当該右眼が閉状態であると判定する(S65)。
同様に、CPU10は、画像フレーム中の運転者の左眼について、上述した眼の追跡処理を実行し(S66)、左眼の上瞼の形状を示す関数を算出し、算出した2次関数の係数が、顔の姿勢情報に対応して決定された開閉閾値よりも大きいか否かを判断する(S67)。また、算出した係数が開閉閾値よりも大きいと判断した場合(S67:YES)、CPU10は、当該左眼が開状態であると判定し(S68)、前記係数が開閉閾値よりも小さいと判断した場合(S67:NO)、当該左眼が閉状態であると判定する(S69)。
次にCPU10は、上述のように判定された左右の眼の開閉状態が一致するか否かを判断しており(S70)、一致すると判断した場合(S70:YES)、上述した判定結果に決定し(S71)、一致しないと判断した場合(S70:NO)、算出された左右の眼の上瞼の形状を示す関数の係数が、より開閉閾値に近い判定結果の開閉状態を、当該運転者の眼の開閉状態に決定する(S72)。瞬き動作は左右の眼で同時に行なわれる傾向にあるため、判定された左右の眼の状態に基づき、総合的に眼の開閉状態を判定することで、正確に眼の開閉状態を判定することができる。
また、コンピュータ1は、上述した眼の追跡処理を実行することで特定する、カメラ2から取得する画像フレーム中の眼の位置情報を、各画像フレームから特定した姿勢情報に対応してHD11の眼の位置情報DBに逐次登録する。図20は眼の位置情報を説明するための図であり、例えば、眼の位置情報として、左右眼夫々の中心位置、図20(a)で示す、左右眼の水平方向X及び垂直方向Yの差を示す画素数、図20(b)で示す左右眼の中心位置等を、夫々の出現頻度とともに眼の位置情報DBに蓄積する。
図21は眼の位置情報DBに蓄積された眼の位置情報を示すグラフであり、図21(a)のグラフにおいては、横軸に左眼の水平方向Xにおける位置を、縦軸に夫々の位置の出現頻度を示している。同様に、図21(b)のグラフにおいては、横軸に左眼の垂直方向Yにおける位置を、縦軸に夫々の位置の出現頻度を示している。従って、これらのグラフにおいて、横軸の適宜の値を閾値とすることで、上述した眼の追跡処理等において特定した眼の位置の明らかな誤認識を防止することができる。
以上詳述した本発明の眼の追跡処理及び眼の状態判定処理は、車両の運転者だけに適用されるわけではなく、顔を撮像して得られる各画像フレームに適用することができ、また、眼の追跡処理だけでなく、顔における各部位の動きに対する追跡処理にも適用することができる。更に、コンピュータ1のHD11が記憶する眼の特徴情報DB、眼の位置情報DB、瞼の形状情報DB、及び各処理にて用いる所定の閾値は、姿勢情報に対応して設定されているが、更に運転者毎に設定することで、運転者個人の癖に対応した眼の追跡処理及び眼の状態判定処理の実現が可能となる。
(付記1) 顔を撮像して得られる画像データ中の顔部位を検出し、検出した顔部位を追跡する装置において、
前記画像データに基づいて、前記顔の姿勢を検出する姿勢検出手段と、
顔の姿勢に対応する顔部位の特徴情報を記憶する記憶手段と、
前記画像データ中の顔部位の候補を検出する候補検出手段と、
該候補検出手段が検出した顔部位の候補、及び前記姿勢検出手段が検出した姿勢に対応する顔部位の特徴情報に基づいて、前記顔部位を特定する特定手段と
を備えることを特徴とする顔部位の追跡装置。
(付記2) 前記姿勢検出手段は、
前記画像データに基づいて、前記顔の向きを検出する向き検出手段を備えることを特徴とする付記1に記載の顔部位の追跡装置。
(付記3) 前記姿勢検出手段は、
前記画像データに基づいて、前記顔の、基準位置に対する横方向位置及び/又は上下方向位置を検出する位置検出手段を備えることを特徴とする付記1又は2に記載の顔部位の追跡装置。
(付記4) 前記特定手段は、
前記候補検出手段が検出した顔部位の候補と、前記姿勢検出手段が検出した姿勢に対応する顔部位の特徴情報との相関値を算出する算出手段を備え、
該算出手段が算出した相関値が所定の閾値よりも大きい場合に、前記候補を顔部位であると特定するように構成してあることを特徴とする付記1乃至3のいずれかひとつに記載の顔部位の追跡装置。
(付記5) 前記姿勢検出手段が検出した姿勢に対応する顔部位の特徴情報が前記記憶手段に記憶していない場合、前記候補検出手段が検出した顔部位の候補の特徴情報を抽出する抽出手段を備え、
前記記憶手段は、
前記抽出手段が抽出した特徴情報を、前記姿勢検出手段が検出した姿勢に対応させて記憶するように構成してあることを特徴とする付記1乃至4のいずれかひとつに記載の顔部位の追跡装置。
(付記6) 前記特定手段が特定した顔部位の位置情報を、前記姿勢検出手段が検出した姿勢に対応させて記憶する位置記憶手段を備えることを特徴とする付記1乃至5のいずれかひとつに記載の顔部位の追跡装置。
(付記7) コンピュータに、顔を撮像して得られる画像データ中の顔部位を検出させ、検出した顔部位を追跡させるコンピュータプログラムにおいて、
前記コンピュータに、
前記画像データに基づいて、前記顔の姿勢を検出させる手順と、
顔の姿勢に対応する顔部位の特徴情報を記憶させる手順と、
前記画像データ中の顔部位の候補を検出させる手順と、
検出した顔部位の候補、及び検出した姿勢に対応する顔部位の特徴情報に基づいて、前記顔部位を特定させる手順と
を実行させることを特徴とするコンピュータプログラム。
(付記8) 顔を撮像して得られる画像データ中の眼を検出し、検出した眼の開閉状態を判定する装置において、
前記画像データに基づいて、前記顔の姿勢を検出する姿勢検出手段と、
顔の姿勢に対応する瞼の形状情報を記憶する瞼情報記憶手段と、
前記画像データ中の眼を特定する特定手段と、
該特定手段が特定した眼の瞼の形状を検出する瞼検出手段と、
該瞼検出手段が検出した瞼の形状、及び前記姿勢検出手段が検出した姿勢に対応する瞼の形状情報に基づいて、前記眼の開閉状態を判定する判定手段と
を備えることを特徴とする眼の状態判定装置。
(付記9) 前記瞼検出手段は、前記瞼の形状を示す関数を算出する関数算出手段を備え、
前記瞼情報記憶手段は、顔の姿勢に対応させて瞼の形状を示す関数に係る情報を記憶しており、
前記判定手段は、前記関数算出手段が算出した関数に係る情報と、前記瞼情報記憶手段に記憶してある瞼の形状を示す関数に係る情報とに基づいて、前記眼の開閉状態を判定するように構成してあることを特徴とする付記8に記載の眼の状態判定装置。
(付記10) コンピュータに、顔を撮像して得られる画像データ中の眼を検出させ、検出した眼の開閉状態を判定させるコンピュータプログラムにおいて、
前記コンピュータに、
前記画像データに基づいて、前記顔の姿勢を検出させる手順と、
顔の姿勢に対応する瞼の形状情報を記憶させる手順と、
前記画像データ中の眼を特定させる手順と、
特定した眼の瞼の形状を検出させる手順と、
検出した瞼の形状、及び検出した姿勢に対応する瞼の形状情報に基づいて、前記眼の開閉状態を判定させる手順と
を実行させることを特徴とするコンピュータプログラム。
本発明に係る眼の追跡装置及び眼の状態判定装置の構成例を示すブロック図である。 姿勢情報の割当テーブルを示す図である。 テンプレートを説明するための図である。 エッジ抽出処理を説明するための模式図である。 コンピュータによる顔の位置検出処理手順を示すフローチャートである。 コンピュータによる顔の位置検出処理を説明するための図である。 顔の位置を検出する処理を説明するための図である。 コンピュータによる眼の検出処理手順を示すフローチャートである。 コンピュータによる眼の検出処理を説明するための図である。 コンピュータによる鼻の検出処理手順を示すフローチャートである。 コンピュータによる鼻の検出処理を説明するための図である。 コンピュータによる鼻の検出処理を説明するための図である。 コンピュータによる顔の向き検出処理手順を示すフローチャートである。 顔の向き検出処理を説明するための図である。 顔の向き検出処理を説明するための図である。 コンピュータによる眼の追跡処理手順を示すフローチャートである。 コンピュータによる眼の追跡処理手順を示すフローチャートである。 コンピュータによる眼の状態判定処理手順を示すフローチャートである。 開閉閾値の決定処理を説明するための図である。 眼の位置情報を説明するための図である。 眼の位置情報DBに蓄積された眼の位置情報を示すグラフである。
符号の説明
1 コンピュータ(顔部位の追跡装置、眼の状態判定装置)
10 CPU(姿勢検出手段、候補検出手段、特定手段、抽出手段、瞼検出手段、判定手段)
11 HD(記憶手段、位置記憶手段、瞼情報記憶手段)
15 外部記憶装置
17 記録媒体
2 カメラ

Claims (5)

  1. 顔を撮像して得られる画像データ中の眼を検出し、検出後の眼の動きを追跡する装置において、
    眼を検出した場合、画像データ中の鼻を検出する手段と、
    前記画像データに基づいて顔の位置を検出する手段、及び検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出する手段を有し、検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出する姿勢検出手段と、
    前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶する記憶手段と、
    検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補を検出する候補検出手段と、
    該候補検出手段が検出した眼の候補と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、前記姿勢検出手段が検出した姿勢に対応する眼の特徴情報に基づいて、前記眼を特定する特定手段と
    を備えることを特徴とする眼の追跡装置。
  2. 前記姿勢検出手段が検出した顔の姿勢に対応する眼の特徴情報が前記記憶手段に記憶していない場合、前記候補検出手段が検出した眼の候補の特徴情報を抽出する抽出手段を備え、
    前記記憶手段は、
    前記抽出手段が抽出した特徴情報を、前記姿勢検出手段が検出した顔の姿勢に対応させて記憶するように構成してあることを特徴とする請求項1に記載の眼の追跡装置。
  3. 前記特定手段が特定した眼の位置情報を、前記姿勢検出手段が検出した姿勢に対応させて記憶する位置記憶手段を備えることを特徴とする請求項1又は2に記載の眼の追跡装置。
  4. コンピュータに、顔を撮像して得られる画像データ中の眼を検出させ、検出後の眼の動きを追跡させるコンピュータプログラムにおいて、
    前記コンピュータに、
    眼を検出した場合、画像データ中の鼻を検出させる手順と、
    前記画像データに基づいて顔の位置を検出させる手順と、
    検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出させる手順と、
    検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出させる手順と、
    前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶させる手順と、
    検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補を検出させる手順と、
    検出した眼の候補、及び前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、検出した前記位置及び向きを含む姿勢に対応する眼の特徴情報に基づいて、前記眼を特定させる手順と
    を実行させることを特徴とするコンピュータプログラム。
  5. 顔を撮像して得られる画像データ中の眼を検出し、検出後の眼の開閉状態を判定する装置において、
    眼を検出した場合、画像データ中の鼻を検出する手段と、
    前記画像データに基づいて顔の位置を検出する手段、及び検出した前記画像データ中の眼及び鼻の位置に基づいて顔の向きを検出する手段を有し、検出した顔の位置及び向きに基づいて、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢を検出する姿勢検出手段と、
    前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する瞼の形状情報を記憶する瞼情報記憶手段と、
    前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢に対応する眼の特徴情報を記憶する記憶手段と、
    検出した眼の位置に基づいて、前記画像データ中の検出後の眼の候補領域を検出する候補検出手段と、
    該候補検出手段が検出した眼の候補領域と、前記画像データ中での前記顔の横方向及び上下方向の位置、及び向きを含む姿勢毎に準備された複数の眼の特徴情報のうち、前記姿勢検出手段が検出した姿勢に対応する眼の特徴情報に基づいて、前記眼特定する特定手段と、
    該特定手段が特定した眼の領域からエッジ抽出処理により瞼の形状を検出する瞼検出手段と、
    該瞼検出手段が検出した瞼の形状、及び前記姿勢検出手段が検出した姿勢に対応する瞼の形状情報に基づいて、前記眼の開閉状態を判定する判定手段と
    を備えることを特徴とする眼の状態判定装置。
JP2003307133A 2003-08-29 2003-08-29 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム Expired - Lifetime JP4471607B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003307133A JP4471607B2 (ja) 2003-08-29 2003-08-29 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003307133A JP4471607B2 (ja) 2003-08-29 2003-08-29 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2005078311A JP2005078311A (ja) 2005-03-24
JP4471607B2 true JP4471607B2 (ja) 2010-06-02

Family

ID=34410017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003307133A Expired - Lifetime JP4471607B2 (ja) 2003-08-29 2003-08-29 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP4471607B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007125794A1 (ja) * 2006-04-27 2007-11-08 Konica Minolta Holdings, Inc. データ測定装置及びデータ測定方法
JP4775957B2 (ja) * 2006-07-28 2011-09-21 Kddi株式会社 顔検出装置
JP4781467B2 (ja) * 2007-04-16 2011-09-28 富士通株式会社 画像処理方法、画像処理装置、画像処理システム及びコンピュータプログラム
JP2009237618A (ja) * 2008-03-25 2009-10-15 Seiko Epson Corp 画像における顔領域の検出
JP5111321B2 (ja) * 2008-10-06 2013-01-09 株式会社豊田中央研究所 瞼尤度演算装置、及びプログラム
DE112011105441B4 (de) 2011-07-11 2019-11-14 Toyota Jidosha Kabushiki Kaisha Augenliderfassungsvorrichtung

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3084996B2 (ja) * 1993-02-15 2000-09-04 三菱電機株式会社 脇見判定装置
JPH079300A (ja) * 1993-06-25 1995-01-13 Hitachi Seiki Co Ltd 工作機械主軸の冷却装置
JP3422183B2 (ja) * 1996-08-22 2003-06-30 トヨタ自動車株式会社 顔画像における目の検出方法
JP3414331B2 (ja) * 1998-10-19 2003-06-09 株式会社豊田中央研究所 眼の位置検出装置
JP2000163564A (ja) * 1998-12-01 2000-06-16 Fujitsu Ltd 目の追跡装置および瞬き検出装置
JP2001043382A (ja) * 1999-07-27 2001-02-16 Fujitsu Ltd 目追跡装置
JP3858570B2 (ja) * 2000-06-29 2006-12-13 日産自動車株式会社 脇見状態検出装置
WO2002007096A1 (fr) * 2000-07-17 2002-01-24 Mitsubishi Denki Kabushiki Kaisha Dispositif de recherche d'un point caracteristique sur un visage
JP4898026B2 (ja) * 2001-06-29 2012-03-14 本田技研工業株式会社 ステレオカメラを使用した顔・視線認識装置
JP2003123075A (ja) * 2001-10-16 2003-04-25 Nissan Motor Co Ltd 顔部位追跡装置
JP2003196655A (ja) * 2001-12-25 2003-07-11 Toyota Motor Corp 目画像検出装置
JP2003150306A (ja) * 2002-11-14 2003-05-23 Toshiba Corp 情報表示装置とその方法
JP4204336B2 (ja) * 2003-01-30 2009-01-07 富士通株式会社 顔の向き検出装置、顔の向き検出方法及びコンピュータプログラム
JP4162503B2 (ja) * 2003-01-31 2008-10-08 富士通株式会社 眼の状態判定装置、眼の状態判定方法及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2005078311A (ja) 2005-03-24

Similar Documents

Publication Publication Date Title
JP4204336B2 (ja) 顔の向き検出装置、顔の向き検出方法及びコンピュータプログラム
JP4162503B2 (ja) 眼の状態判定装置、眼の状態判定方法及びコンピュータプログラム
KR101381439B1 (ko) 얼굴 인식 장치 및 얼굴 인식 방법
JP5247480B2 (ja) オブジェクト識別装置及びオブジェクト識別方法
US8055016B2 (en) Apparatus and method for normalizing face image used for detecting drowsy driving
EP1727087A1 (en) Object posture estimation/correlation system, object posture estimation/correlation method, and program for the same
US8571322B2 (en) Image processing method, image processing apparatus, image processing system and computer for recognizing shape change of a facial part
KR100730500B1 (ko) 화상 처리 장치와 화상 처리 방법 및 기록 매체
US7853052B2 (en) Face identification device
JP5766564B2 (ja) 顔認証装置及び顔認証方法
JP4624889B2 (ja) 顔検出方法および装置並びにプログラム
US20110158540A1 (en) Pattern recognition method and pattern recognition apparatus
US20070189584A1 (en) Specific expression face detection method, and imaging control method, apparatus and program
CN102857693B (zh) 图像处理设备及其控制方法
JP2003196661A (ja) 視覚型動き解析及び視覚型追跡のためのアピアランスモデル
JP2009087232A (ja) 人物認証装置および人物認証方法
CN108337429A (zh) 图像处理设备和图像处理方法
WO2018078857A1 (ja) 視線推定装置、視線推定方法及びプログラム記録媒体
JP4860289B2 (ja) ロボット装置
JP2012190159A (ja) 情報処理装置、情報処理方法及びプログラム
US20220366570A1 (en) Object tracking device and object tracking method
JP4776581B2 (ja) 入眠状態検知方法、入眠状態検知装置、入眠状態検知システム及びコンピュータプログラム
JP2007067559A (ja) 画像処理方法、画像処理装置、及び撮像装置の制御方法
JP3823760B2 (ja) ロボット装置
JP4471607B2 (ja) 眼の追跡装置、眼の状態判定装置及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090911

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091223

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100302

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100302

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4471607

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140312

Year of fee payment: 4

EXPY Cancellation because of completion of term