(57)【要約】【課題】運転者がサングラス等の眼鏡を装着しているかどうかに関わらずに運転者の脇見を検出することのできる運転者の顔状態検出装置を提供する。【解決手段】画像撮像手段１０１にて撮像された画像を、所定のサンプリング時間で時系列的に取得し、取得した画像を記憶する画像記憶手段１０２と、時系列的に得られる今回の画像と、前回の画像との差分を演算して、２つの画像間の濃度差を求める差分演算手段１０３と、差分演算手段１０３より得られる濃度差が生じる領域の、時系列的な変化に基づいて、運転者の顔の移動方向を検出する顔の移動方向検出手段１０６と、を具備する。【選択図】　　　図１
2004070512.tif 000002
【特許請求の範囲】
【請求項１】
運転者の顔を撮像する撮像手段を具備し、該撮像手段にて撮像された顔画像に基づいて、運転者の顔状態を検出する顔状態検出装置において、
前記撮像手段にて撮像された画像を、所定のサンプリング時間で時系列的に取得し、取得した画像を記憶する画像記憶手段と、
前記時系列的に得られる今回の画像と、前回の画像との差分を演算して、２つの画像間の濃度差を求める差分演算手段と、
前記差分演算手段より得られる濃度差が生じる領域の、時系列的な変化に基づいて、運転者の顔の移動方向を検出する顔の移動方向検出手段と、
を具備したことを特徴とする運転者の顔状態検出装置。
【請求項２】
前記顔の移動方向検出手段は、前記濃度差が生じる領域の、時系列的な変化に基づいて、運転者の顔の移動方向を求めることを特徴とする請求項１に記載の運転者の顔状態検出装置。
【請求項３】
前記顔の移動方向検出手段は、前記顔画像が取得される毎に、前記差分演算手段より得られる濃度差に基づいて、濃度差が生じた領域を示す差分画像を生成し、この差分画像に含まれる前記濃度差が生じた複数の領域の変位を検出し、検出された変位に基づいて、運転者の顔の移動方向を求めることを特徴とする請求項１に記載の運転者の顔状態検出装置。
【請求項４】
前記顔の移動方向検出手段は、前記顔画像が取得される毎に、前記差分演算手段より得られる濃度差に基づいて、濃度差が生じた領域を示す差分画像を作成し、
この差分画像に含まれる前記濃度差が生じた領域から、唯一の領域を選定し、当該選定した領域の変位方向を検出して、運転者の顔の移動方向を求めることを特徴とする請求項１に記載の運転者の顔状態検出装置。
【請求項５】
前記顔の移動方向検出手段は、前記顔画像が取得される毎に、前記差分演算手段より得られる濃度差に基づいて、濃度差が生じた領域を示す差分画像を生成し、且つ、前回の処理で得られた濃度差が生じた領域と、今回の処理で得られた濃度差の生じた領域と、の変化分に応じて、濃度差が生じた領域の変位方向を検出し、この検出結果に基づいて運転者の顔の移動方向を検出することを特徴とする請求項１に記載の運転者の顔状態検出装置。
【請求項６】
濃度差が生じた領域を示す差分画像から、顔の移動速度を検出する顔の移動速度検出手段を具備したことを特徴とする請求項３〜請求項５のいずれか１項に記載の運転者の顔状態検出装置。
【請求項７】
前記顔の移動速度検出手段は、顔画像において濃度差が生じた面積を検出し、その面積の検出結果に基づいて、運転者の顔の移動速度を検出することを特徴とする請求項６に記載の運転者の顔状態検出装置。
【請求項８】
前記顔の移動速度検出手段による濃度差が生じた面積の検出は、顔画像において濃度差が生じた画素数を検出することにより、求めることを特徴とする請求項７に記載の運転者の顔状態検出装置。
【請求項９】
前記差分演算手段にて求められた差分演算結果を蓄積する差分演算結果記憶手段を具備し、
前記顔の移動方向検出手段は、前記差分演算結果蓄積手段に蓄積した差分演算結果に基づいて、前記濃度差が生じた領域の変位方向の検出を行うことを特徴とする請求項１〜請求項８のいずれか１項に記載の運転者の顔状態検出装置。
【請求項１０】
前記差分演算結果蓄積手段は、差分演算結果を蓄積する数を、前記サンプリング時間に応じて設定することを特徴とする請求項９に記載の運転者の顔状態検出装置。
【請求項１１】
前記差分演算結果蓄積手段は、差分演算結果を蓄積する個数を、顔画像全体の明るさに応じて設定することを特徴とする請求項９に記載の運転者の顔状態検出装置。
【請求項１２】
前記差分演算結果蓄積手段は、差分演算結果を蓄積する個数を、車両が走行している環境に応じて設定することを特徴とする請求項９に記載の運転者の顔状態検出装置。
【請求項１３】
車両の走行状態を検出する車両走行状態検出手段と、前記差分演算手段にて求められる差分値の最大値を記憶する最大差分値記憶手段と、運転者の顔の移動方向を検出する手法を変更する移動方向検出手段と、を具備したことを特徴とする請求項１〜請求項１２のいずれかに記載の運転者の顔状態検出装置。
【請求項１４】
前記撮像手段により撮像された映像を検出するサンプリング時間を調整可能としたことを特徴とする請求項１〜請求項１３のいずれか１項に記載の運転者の顔状態検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、車両の運転者の顔状態を検出する顔状態検出装置に関する。
【０００２】
【従来の技術】
従来におけるドライバの顔状態検出装置として、例えば、特開平７−６９１３９号公報に記載された「わき見運転防止装置」（以下、従来例という）に記載されたものが知られている。
【０００３】
該従来例では、撮影陽のカメラからの顔画像を検査画像として取り込み、検査画像に基づいて運転者の左右の眼画像の座標（ＸＬ，Ｙｉ）、（ＸＲ，Ｙｉ）を求める。そして、この眼画像の座標に基づいて、左右の眼の距離を演算し、眼距離データを所定回数取り込むことによって、基準眼距離を演算し、基準眼距離と今回得られた眼距離とから、正面に顔が存在しないことを検出する方式を採用している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上述した従来例では、脇見を検出する対象者が眼鏡を掛けている場合には、光環境の影響で眼鏡のレンズ部に写り込みが生じることにより、顔画像から眼を検出できなくなり、脇見状態を検出できなくなることがある。また、対象者がサングラスを掛けている場合には、眼を全く検出できなくなり、脇見の検出が全くできなくなってしまう。
【０００５】
この発明は、このような従来の課題を解決するためになされたものであり、その目的とするところは、運転者がサングラスなどの眼鏡を装着しているかどうかに関わらずに運転者の脇見を検出できる運転者の顔状態検出装置を提供することにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、本願請求項１に記載の発明は、運転者の顔を撮像する撮像手段を具備し、該撮像手段にて撮像された顔画像に基づいて、運転者の顔状態を検出する顔状態検出装置において、前記撮像手段にて撮像された画像を、所定のサンプリング時間で時系列的に取得し、取得した画像を記憶する画像記憶手段と、前記時系列的に得られる今回の画像と、前回の画像との差分を演算して、２つの画像間の濃度差を求める差分演算手段と、前記差分演算手段より得られる濃度差が生じる領域の、時系列的な変化に基づいて、運転者の顔の移動方向を検出する顔の移動方向検出手段と、を具備したことを特徴とする。
【０００７】
【発明の効果】
請求項１の発明では、運転中のドライバの顔の動きの特徴量を精度良く捕らえることができるので、顔の向き変化を伴う脇見や、安全確認の施行の有無などのドライバの状態検出を、簡単な構成で、且つ高精度に検出することができる。
【０００８】
【発明の実施の形態】
以下、本発明の実施形態を図面に基づいて説明する。図１，図２は、本発明の第１の実施形態に係る顔状態検出装置の構成を示すブロック図である。同図に示すように、該顔状態検出装置は、ドライバの顔近傍の映像を撮像する画像撮像手段１０１と、この画像撮像手段１０１にて撮像された画像を、所定のサンプリング時間で取り込み、記憶保存する画像記憶手段１０２と、今回のサンプリング時に取り込まれた画像と、前回のサンプリング時に取り込まれた画像との差分を求める差分演算手段１０３と、を有している。
【０００９】
更に、差分演算手段１０３にて得られた差分結果を記憶保存する差分演算結果記憶手段１０４と、この差分演算結果記憶手段１０４に記憶されたデータに基づいて、ドライバの顔画像を再作成する顔画像再作成手段１０５と、再作成された顔画像のデータに基づいて、ドライバの顔の移動方向を検出する顔の移動方向検出手段１０６と、を具備している。
【００１０】
また、必要に応じて、図２に示すように、顔の移動速度検出手段２０７を備える構成とすることもできる。即ち、図２に示す構成では、画像撮像手段２０１と、画像記憶手段２０２と、差分演算手段２０３と、差分演算結果記憶手段２０４と、顔画像再作成手段２０５と、顔の移動方向検出手段２０６と、顔の移動速度検出手段２０７と、を備えている。
【００１１】
顔の移動速度検出手段２０７は、顔画像において濃度差が生じた面積を検出し、その面積の検出結果に基づいて、運転者の顔の移動速度を検出する。この際、顔画像において濃度差が生じた画素数を検出することにより、濃度差が生じた面積を求めるようにすることもできる。
【００１２】
そして、本実施形態に係る顔状態検出装置では、時系列的に撮像される顔画像を対象として差分処理を行うことによって、簡単な構成で、且つ精度良くドライバの状態を検出するドライバモニター装置として使用することができる。
【００１３】
次に、上述のように構成された本実施形態の動作を、図３〜図６に示すフローチャート、及び図７〜図９に示す説明図を用いて説明する。
【００１４】
まず、図３のステップ３０１で画像入力を行い、ステップ３０２で画像メモリＩＭＡＧＥ＿ＮＥＷに画像データを記憶する。次に、ステップ３０３に移行し、画像メモリＩＭＡＧＥ＿ＯＬＤに画像データが記憶されているかどうかを確認する。本処理の起動直後であれば、画像メモリＩＭＡＧＥ＿ＯＬＤには画像データが記憶されていないので、図６のステップ５０９に移行する。
【００１５】
ステップ５０９では画像メモリＩＭＡＧＥ＿ＮＥＷの画像データを画像メモリＩＭＡＧＥ＿ＯＬＤに代入して、図３のステップ３０１に戻り、次の画像入力を行う。ステップ３０２では、新たに取り込んだ画像データを画像メモリＩＭＡＧＥ＿ＮＥＷに記憶する。
【００１６】
前述した処理ループを一度回った後は画像メモリＩＭＡＧＥ＿ＯＬＤに画像データが記憶されているので、ステップ３０３からステップ３０４に移行して、画像メモリＩＭＡＧＥ＿ＮＥＷとＩＭＡＧＥ＿ＯＬＤとの濃度差分値の演算を行う。
【００１７】
ステップ３０５では、ステップ３０４で演算した画像メモリＩＭＡＧＥ＿ＮＥＷとＩＭＡＧＥ＿ＯＬＤの各画素単位で濃度差分値が所定階調以上あるかどうかを判定し、所定値以上である画素を特定する。
【００１８】
ここまでの具体的な処理内容を、ドライバが左方向に視線をそらして行く場面（図７，図８）で説明する。最初に取り込まれる画像データを▲１▼とすると、▲１▼の画像データが画像メモリＩＭＡＧＥ＿ＮＥＷに一旦記憶され、その後、画像メモリＩＭＡＧＥ＿ＯＬＤに代入される。
【００１９】
次に、取り込まれた▲２▼の画像データが新たに画像メモリＩＭＡＧＥ＿ＮＥＷに記憶される。この後、ステップ３０４で濃度差分値の演算を行い、ステップ３０５で各画素単位で所定階調以上の濃度差があった画素を特定して表示させたものが、図７の“Ｉ”に示す画像である。各画素の濃度値は２５６階調の濃淡で記憶されており、０を黒、２５５を白としている。
【００２０】
撮像画像の検出タクトとなる▲１▼と▲２▼の画像メモリの濃度差分値の演算時間（サンプリング時間）は、一般的なＴＶカメラの画像の取り込みタイミングが３３［ｍｓｅｃ］／フレームであることから、差分演算を画像データの取り込み中の裏処理として行うことを想定すると、この３３［ｍｓｅｃ］となる。また、差分演算の裏処理を行わない場合は３３［ｍｓｅｃ］＋αの演算時間となり、この場合処理する領域の大きさによって演算時間は異なってくる。
【００２１】
よって、差分演算を裏処理で行う場合の検出タクトの固定値は、３３［ｍｓｅｃ］となり、差分演算を裏処理で行わない場合の検出タクトの固定値は、処理面積の大きさに比例した処理時間をプラスしたものになる。差分演算の裏処理を行えないハード構成で、且つ全画面を対象とした処理を行う場合、固定される検出タクトがドライバの速い動きを検出するには長すぎるという時の対応策としては、対象とする領域を顔幅や眼が存在する箇所に限定して処理することによって検出タクト（サンプリング時間）を短めに変更する方法がある。
【００２２】
図３のステップ３０４、ステップ３０５では、図７，図８に示すように新たな画像が取り込まれる毎に、画像メモリＩＭＡＧＥ＿ＮＥＷと一つ前の画像メモリＩＭＡＧＥ＿ＯＬＤの濃度差分値の演算を行い、各画素単位で所定階調以上の濃度差があるもの特定し、▲３▼−▲２▼、▲４▼−▲３▼、・・・と演算を繰り返して行く。
【００２３】
この後、図３のステップ３０６で差分画像メモリＤＩＦＦ＿ＩＭＡＧＥ１〜５に画像データが代入されているかどうかを判定する。初期状態ではＤＩＦＦ＿ＩＭＡＧＥに画像データは代入されていないので、ステップ３０７でステップ３０５で特定した画素を対象として差分画像メモリ１〜５に順次代入して行く。
【００２４】
この処理内容を具体的に説明すると、最初の処理ではＤＩＦＦ＿ＩＭＡＧＥ１に、図７に示す▲２▼−▲１▼の濃度差分値で特定された画素からなる画像データ“Ｉ”、それ以降の処理ではＤＩＦＦ＿ＩＭＡＧＥ２に▲３▼−▲２▼の濃度差分値で特定された画素からなる画像データ“ＩＩ”、ＤＩＦＦ＿ＩＭＡＧＥ３に▲４▼−▲３▼の濃度差分値で特定された画素からなる画像データ“ＩＩＩ”、ＤＩＦＦ＿ＩＭＡＧＥ４に▲５▼−▲４▼の濃度差分値で特定された画素からなる画像データ“ＩＶ”、ＤＩＦＦ＿ＩＭＡＧＥ５に▲６▼−▲５▼の濃度差分値で特定された画素からなる画像データ“Ｖ”が各々代入される。
【００２５】
本実施形態においては、時系列的に記憶する差分画像ＤＩＦＦ＿ＩＭＡＧＥを５つに固定して説明しているが、検出タクトの長さや、画像の濃度状態（画像全体の明るさ）や、車両が走行している環境に応じて可変させることも考えられる。
【００２６】
ステップ３０６で、差分画像メモリＤＩＦＦ＿ＩＭＡＧＥ１〜５に画像データが代入されていることが確認されるまでは、図６のステップ５０９で、画像メモリＩＭＡＧＥ＿ＯＬＤを順次更新し、図３のステップ３０２で新たに取り込まれる画像データをＩＭＡＧＥ＿ＮＥＷにメモリするフローを流れ、全ての差分画像メモリＤＩＦＦ＿ＩＭＡＧＥ１〜５に画像データが代入されたら、ステップ３０６からステップ３０８へと移行する。
【００２７】
ステップ３０８では、ＤＩＦＦ＿ＩＭＡＧＥ２に代入されている“ＩＩ”のデータをＤＩＦＦ＿ＩＭＡＧＥ１へ、ＤＩＦＦ＿ＩＭＡＧＥ３に代入されている“ＩＩＩ”のデータをＤＩＦＦ＿ＩＭＡＧＥ２へ、と順次更新して行き、最新の濃度差分値で特定された画素からなる画像データ“ＶＩ”をＤＩＦＦ＿ＩＭＡＧＥ５に代入する。
【００２８】
この処理内容を図９を用いて説明する。図３のステップ３０６の条件を初めて満たした時は、ＤＩＦＦ＿ＩＭＡＧＥの１〜５には、図９の差分画像“Ｉ”〜“Ｖ”が各々メモリされており、ステップ３０５で演算される最新の差分画像データは、“ＶＩ”になる。
【００２９】
この処理は５つのＤＩＦＦ＿ＩＭＡＧＥに一つずつ新しいデータを取り込みながら古いデータを吐き出していくものである。本実施形態で差分画像“Ｉ”のデータを実際の判定処理に用いていないのは、プログラムの構造をよりシンプルにすることを優先させたためである。よって、ステップ３０８を通るフローに移行後１回目の処理では、ＤＩＦＦ＿ＩＭＡＧＥの１〜５に差分画像“ＩＩ”〜“ＶＩ”が各々メモリされており、２回目の処理では、“ＩＩＩ”〜“ＶＩＩ”へと順次更新していく。図３のステップ３０９では、各ＤＩＦＦ＿ＩＭＡＧＥ１〜５毎に、ステップ３０５で特定された画素の総和を演算する。
【００３０】
図９の面積値（画素）の欄に、その演算によって得られる具体的な値を示している。ステップ３１０では、各ＤＩＦＦ＿ＩＭＡＧＥ毎に、ステップ３０５で特定された画素毎の座標データを縦成分、横成分に分けて、そのトータル値を構成画素数で除することによって、顔の動きの方向と速さを判定するための値を演算する。この手法には、全画素を対象とする以外に、図７，図８に示すような“Ｉ”〜“ＶＩ”画像データに対し、画素の集合体を判定するラベリング処理を行うことにより、大きな面積を有するもの１つに限定しての前記座標演算を行うこともできる。
【００３１】
このラベリング処理を行うメリットは、顔の動きを表している大きな面積の差分領域だけに限定することができるので、より精度の高い座標データを演算することができる。ステップ３１０の座標データの演算後は、図４のステップ４０１に移行する。図４に示す各ステップの判定は、ドライバの顔の動き変化があったことが確認されてからのものとなるので、ステップ４０１、図５のステップ４１１で共にＮＯとなり、図６のステップ５０１に移行する。
【００３２】
ステップ５０１では、図３のステップ３１０で演算した座標データが、差分画像メモリＤＩＦＦ＿ＩＭＡＧＥ１〜５で右方向に連続性があると判定された場合は、ステップ５０２に移行して、右向きフラグをＯＮにする。つまり、差分演算結果蓄積手段１０４に蓄積した差分演算結果に基づいて、濃度差が生じた領域の方向にドライバの顔が移動したものと判断する。また、差分演算結果蓄積手段１０４は、差分演算結果を蓄積する個数を、サンプリング周期に応じて変更するように構成することも可能である。
【００３３】
このステップ５０１での判定は、所定数にわたって時系列的に記憶した差分演算結果の履歴を用いているので、顔の動きを時間変化パターンで認識でき、より精度の高い判定が可能となる。
【００３４】
その後、ステップ５０３に移行し、座標データ変化が右方向の安全確認パターンになっているかどうかを判定する。この判定は、ドライバが右方向を見る場合、その動作が安全確認に相当する場合は、右ドアミラーや、右後方など見る位置に一貫性があり、またその時の顔の動く速度のばらつきも小さいという特徴を捕らえることにより行われる。
【００３５】
ステップ５０３で安全確認であると判定された場合は、ステップ５０４に移行して右安全確認フラグをＯＮにする。ステップ５０５から、ステップ５０８は、左方向への顔の動きに適用させたものであり、処理内容としては同一であるため各ステップの説明を省略する。
【００３６】
ドライバの顔の動きの判定が行われた後は、ステップ５０９で画像メモリＩＭＡＧＥ＿ＯＬＤのデータ更新後、図３のステップ３０１に戻り、新たな画像データの入力を行う。
【００３７】
次いで、図６のステップ５０２で右向きフラグがＯＮになった場合と、ステップ５０４で右安全確認フラグがＯＮになった場合の脇見検出方法について、図４，図５の各ステップを用いて説明する。ステップ４０１で右向きフラグがＯＮであることが認識された場合は、ステップ４０２に移行し、ステップ３０９で演算した各ＤＩＦＦ＿ＩＭＡＧＥの画素の総和が所定値以下になったかどうかを確認する。
【００３８】
各ＤＩＦＦ＿ＩＭＡＧＥの画素の総和が所定値以下になったと判定された場合は、ドライバが右方向を見て、且つその動きが止まったと判定し、その静止時間を判定することによって脇見警報を出力する。その動作を、これ以降のステップで説明する。
【００３９】
ステップ４０３では、既に右向きタイマーが作動状態にあるか否かを判定しており、作動していない場合は、ステップ４０４に移行して右向きタイマーをスタートさせる。ステップ４０５では、右向きタイマーが脇見許容時間を意味する所定時間１を超えたかどうかを判定し、まだ超えていない場合は、図３のステップ３０１に戻り、顔の動きが図４のステップ４０２で認識されるまでは、同一のフローを流れる。
【００４０】
ステップ４０５で右向きタイマーが所定時間１を超えたと判定された場合は、ステップ４０６に移行して右安全確認フラグがＯＦＦかどうかを確認し、ＯＦＦである場合はステップ４０８に移行して脇見警報１を出力させて、右向きタイマーをリセットする。
【００４１】
ステップ４０６で右安全確認フラグがＯＦＦでない場合は、ステップ４０７に移行して右向きタイマーが所定時間２を超えたかどうかを判定する。
【００４２】
ステップ４０７で右向きタイマーが所定時間２を超えていない場合は、所定時間１の場合と同様に顔の動きがステップ４０２で認識されるまでは、同一のフローを流れる。ステップ４０７で、右向きタイマーが所定時間２を超えたと判定された場合は、ステップ４０９に移行して、脇見警報２を出力させて右向きタイマーをリセットする。
【００４３】
このフローでの所定時間１と所定時間２の使い分けは、ドライバの顔の動きを伴う脇見が安全確認か否かを判定することによって、脇見許容時間を変えることにある。顔の動きの特徴から、図６のステップ５０３で安全確認である確立が高いと判定された場合は、一般的な安全確認にかかる時間より長めに設定した所定時間２を用い、安全確認と考えられない場合は、安全確認にかかる時間より短めに設定した所定時間１を用いるように設定している。
【００４４】
次に、ステップ４０２でステップ３０９で演算した各ＤＩＦＦ＿ＩＭＡＧＥの画素の総和が所定値を超えていると判定された場合の処理について説明する。
【００４５】
この所定値を超えていると判定される場合には二通りある。その一つは、ドライバの顔は、一旦右方向を見たものの、すぐに元の車両前方を見たとされる場合で、ステップ４１０では、右向きフラグをＯＦＦとし、右安全確認フラグもＯＮである場合はＯＦＦ、タイマーをリセットすることによって、現状の右向き検出については判定をクローズさせ、新たな脇見検出に移る。
【００４６】
この判定において、ドライバの注視方向が右方向から車両前方に戻らず、いきなり左方向まで行ってしまう場合も考えられるが、このような顔の動きは、一旦停止しての左右の安全確認の場面ぐらいであり、この安全確認は、車両が停止状態、または極低速状態のある場合なので、車両信号の判定を用いれば、その判断は容易に行える。
【００４７】
ステップ４０２で、ステップ３０９にて演算した各ＤＩＦＦ＿ＩＭＡＧＥの画素の総和が所定値を超えていると判定される場合のもう一つは、右向きフラグがＯＮになった後も、ドライバの顔が更に同じ方向に動き続けている時である。
【００４８】
この場合、ステップ４１０でフラグとタイマーのリセットが行われるものの、図６のステップ５０２にて、再セットされることになる。図５のステップ４１１から、ステップ４１８は、左方向への脇見検出に適用させたものであり、処理内容としては同一であるため各ステップの説明は省略する。
【００４９】
このようにして、本実施形態に係る顔状態検出装置では、運転中のドライバの顔の動きの特徴量を精度良く捉えることができるので、顔の向きの変化を伴う脇見や、安全確認の施行の有無等のドライバの状態検出を、容易、且つ高精度に行うことができる（請求項１の効果）。
【００５０】
また、今回サンプリングされた画像を、前回サンプリングされた画像との間の、差分を演算することにより得られる濃度差領域の、時系列的な変化に基づいて、顔の動きを捉えるようにするので、より高精度な検出が可能となる（請求項２の効果）。
【００５１】
更に、顔画像が取得される毎に、濃度差が生じた領域の変位を検出する構成とすることにより、顔の動きをより高精度に検出することができる（請求項３の効果）。
【００５２】
また、濃度差の生じる範囲のラベリング処理を行うことにより、高精度な検出が可能となる（請求項４の効果）。
【００５３】
更に、濃度差が生じた領域を示す差分画像から、顔の移動速度を求めるようにしているので、顔の移動速度を高精度に求めることができる。これにより、顔の向きの変化が脇見によるものか、或いは安全確認によるものかを推定することができる。（請求項６の効果）。
【００５４】
また、濃度差が生じた面積に応じて顔の移動速度を求めるようにすれば、顔の移動速度をより一層高精度に検出することができる（請求項７の効果）。
【００５５】
更に、濃度差が生じた領域の画素数に基づいて、顔の移動速度を求めるようにすれば、検出精度を向上させることができる（請求項８の効果）。
【００５６】
また、差分演算結果蓄積手段に蓄積された差分演算結果に基づいて、濃度差が生じた領域の変位の方向を検出するように構成することにより、変位の方向、即ち、ドライバが顔を移動した方向を高精度に検出することができる（請求項９の効果）。
【００５７】
更に、サンプリング時間に応じて、差分演算結果を差分演算結果蓄積手段に蓄積する数を変更することにより、サンプリング時間に応じた好適な顔の向きの検出処理を行うことができる（請求項１０の効果）。
【００５８】
また、画像の明るさに応じて、差分演算結果を差分演算結果蓄積手段に蓄積する数を変更することにより、画像の明るさに応じた好適な顔の向きの検出処理を行うことができる（請求項１１の効果）。
【００５９】
更に、車両の走行環境に応じて、差分演算結果を差分演算結果蓄積手段に蓄積する数を変更することにより、走行環境に応じた好適な顔の向きの検出処理を行うことができる（請求項１２の効果）。
【００６０】
また、サンプリング時間を調整可能とすることにより、好適なサンプリング時間を設定することができ、周囲の状況に応じた処理が可能となる（請求項１４の効果）。
【００６１】
次に、本発明に係る顔状態検出装置の第２の実施形態を、図１０〜図１３を用いて説明する。
【００６２】
本実施形態は、前述した第１の実施形態の図３のステップ３０９、及びステップ３１０で行っている画素の総和の演算と、座標データの演算方法を変更したものである。第１の実施形態では、図７，図８に示したように、過去の履歴として記憶保存された画素全てを対象として演算を行っていた。本実施形態では、新しい差分結果で、古い差分結果の面積を更新することにより、より一層、顔の向き判定精度を向上させることを目的としている。その内容を、図１０を用いて説明する。
【００６３】
図１０の、塗りつぶされた箇所は、現在の差分結果で、枠線で示している箇所は一つ前の差分結果を表している。本実施形態では、枠線で囲まれている面積に対して塗りつぶされている箇所が重なっている部分は、新しいデータで更新する処理を行う。この処理を図７，図８と同一の６つの画像データで表してみると、図１１，図１２のようになる。
【００６４】
このように、新しい差分結果で古い差分結果を上書きしていくことにより、第１の実施形態の、図６のステップ５０１やステップ５０５の判定を行う際に、図１１，図１２に示す変化面積が何パターンあるか、またそのパターン変化の順序性はあるか等の判定を行うことができる。この内容を具体例で説明すると、一方向に顔が動いているときは、図１１，図１２に示すように、順序良く各パターンで上書きされていくのに対し、顔が、狭い範囲で行き来している時は、図１３に示すようになる。
【００６５】
よって、図１２の（ｅ），（ｆ）の２つの図に示すように、５つの差分結果を１つの差分結果として置き換えることによって、より精度の高いドライバの顔の向き判定ができる。
【００６６】
このようにして、本実施形態に係る顔状態検出装置では、前述した第１の実施形態にて示した効果に加え、前回の処理で得られた濃度差が生じた領域と、今回の処理で得られた濃度差が生じた領域との間の変化分に応じて、運転者の顔の移動方向を検出するので、検出精度を向上させることができる（請求項５の効果）。
【００６７】
次に、本発明に係る顔状態検出装置の、第３の実施形態について、図１４に示す構成図、及び図１５，図１６に示すフローチャートを用いて説明する。
【００６８】
本実施形態は、車両情報を用いることにより、ドライバの動きによる差分画素の発生限界をメモリすることによって、ハレーション等によって起こる差分処理への悪影響を防止することを目的としている。
【００６９】
図１４に示すように、本実施形態に係る顔状態検出装置は、画像撮像手段１１０１と、画像記憶手段１１０２と、差分演算手段１１０３と、差分演算結果記憶手段１１０４と、顔画像再作成手段１１０５と、顔の移動方向検出手段１１０６と、車両走行状態検出手段１１０７と、最大差分値記憶手段１１０８と、顔の移動方向検出方法変更手段１１０９と、を具備している。
【００７０】
次に、図１５，１６に示すフローチャートを参照しながら、本実施形態の動作について説明する。
【００７１】
図１５のフローチャートの、ステップ１２１０の処理後に、図１６のフローチャートに移行し、エンジンが始動状態であり、且つ車両が停止しているという条件下で、ドライバの動きのみに差分値の最大発生量を記憶する処理を行う。尚、図１５のフローチャートの各ステップの処理は、前述した第１の実施形態で示した図３の処理と同一であるため、処理内容の説明は省略する。
【００７２】
これより、図１６のフローチャートの各ステップ毎の処理内容について説明する。ステップ１３０１、ステップ１３０２で、エンジン始動中で且つ車両停止状態かどうかを確認し、ステップ１３０３で、そのときのドライバの動きによる差分値の最大発生値を更新しながらメモリする。
【００７３】
その更新がステップ１３０４で、所定回数行われたか否かを判定し、所定回数、画素の総和の更新が行われていない場合は、ステップ１３０６に直接移行し、ステップ１３０４で所定回数、画素の更新が行われたと判定された場合は、ステップ１３０５を経由して顔の動きによる最大差分値の決定後、ステップ１３０６に移行する。ステップ１３０６では顔の動きによる最大差分値が決定されているか否かを判定し、決定されていない場合は、第１の実施形態で示した図４の、ステップ４０１に移行する。
【００７４】
本実施形態の、これ以降の処理は第１実施形態の、図４〜図６のフローチャートと同一である。ステップ１３０６で顔の動きによる最大差分値が決定されており、ステップ１３０７で、図１５のステップ１２０９で演算される各ＤＩＦＦ＿ＩＭＡＧＥの画素の総和がメモリした値を超えたかどうかを判定する。この判定によってステップ１３０８で全フラグとタイマーリセットし、外乱光によって生じた差分値の悪影響を防止する。
【００７５】
また、最大差分値を超える値が出力していることを表示することによって、本装置が作動限界を超えていることを、ドライバに通知することもできる。ステップ１３０５で、一旦顔の動きによる最大差分値を決定したことを判定して、ステップ１３０１〜１３０４の処理をスルーさせるフローチャートも考えられるが、本実施形態では、ステップ１３０４で、所定回数の更新が行われる時間を待ち時間として、順次顔の動きによる最大差分値を更新する構成としている。
【００７６】
この更新処理は、時系列的に最新の顔の動きによる最大差分値を記憶できるのでドライバの運転が長時間に及ぶ場合は、ドライバの疲労に伴う顔の動きの違いなどを記憶する値に反映することができる。
【００７７】
このようにして、第３の実施形態に係る顔状態検出装置では、最大差分値記憶手段１１０８に最大差分値を記憶し、この記憶内容に基づいて、顔の移動方向の検出方法を変更するようにしているので、より運転状況に合致した処理が可能となる。
【００７８】
即ち、車両停止状態であるときに、ドライバの動きだけによる差分値の発生状態を学習することができるので、車両走行中に発生する外乱光の大きな変化による差分値の発生をノイズであると判定して除去することができ、ドライバ状態検出の対応力を、更に向上させることができる（請求項１３の効果）。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る顔状態検出装置の、第１の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係る顔状態検出装置の、第２の構成を示すブロック図である。
【図３】第１の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第１の分図である。
【図４】第１の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第２の分図である。
【図５】第１の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第３の分図である。
【図６】第１の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第４の分図である。
【図７】差分演算により得られる濃度差のデータを示す説明図の、第１の分図である。
【図８】差分演算により得られる濃度差のデータを示す説明図の、第２の分図である。
【図９】濃度差のデータを５回分加算する様子を示す説明図である。
【図１０】前回（ｎ−１）の処理で得られた濃度差データと、今回（ｎ）の処理で得られた濃度差データの変位の状態を示す説明図である。
【図１１】差分演算により得られた濃度差データを順次加算する様子を示す説明図の、第１の分図である。
【図１２】差分演算により得られた濃度差データを順次加算する様子を示す説明図の、第２の分図である。
【図１３】ドライバの顔が狭い範囲で動作しているときの、濃度差が発生する領域を示す説明図である。
【図１４】本発明の第３の実施形態に係る顔状態検出装置の構成を示すブロック図である。
【図１５】第３の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第１の分図である。
【図１６】第３の実施形態に係る顔状態検出装置の動作を示すフローチャートの、第２の分図である。
【符号の説明】
１０１，２０１，１１０１　画像撮像手段
１０２，２０２，１１０２　画像記憶手段
１０３，２０３，１１０３　差分演算手段
１０４，２０４，１１０４　差分演算結果記憶手段
１０５，２０５，１１０５　顔画像再作成手段
１０６，２０６，１１０６　顔の移動方向検出手段
２０７　顔の移動速度検出手段
１１０７　車両走行状態検出手段
１１０８　最大差分値記憶手段
１１０９　顔の移動方向の検出方法変更手段
【図１】
2004070512.tif 000003
【図２】
2004070512.tif 000004
【図３】
2004070512.tif 000005
【図４】
2004070512.tif 000006
【図５】
2004070512.tif 000007
【図６】
2004070512.tif 000008
【図７】
2004070512.tif 000009
【図８】
2004070512.tif 000010
【図９】
2004070512.tif 000011
【図１０】
2004070512.tif 000012
【図１１】
2004070512.tif 000013
【図１２】
2004070512.tif 000014
【図１３】
2004070512.tif 000015
【図１４】
2004070512.tif 000016
【図１５】
2004070512.tif 000017
【図１６】
2004070512.tif 000018