(57)【要約】【課題】赤目現象の場合でも正確に瞼を検出できる装置を提供する。【解決手段】瞼検出装置１は、顔画像を取得するカメラ２及び画像入力部２１と、顔画像から虹彩部の空間的な明暗の変化を感知して赤目現象を検出する赤目検出部２５と、顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出する瞼候補検出部２３及び瞼判定部２７とを備え、赤目検出部２５で赤目現象を検出した場合に、赤目除外処理部２６は、赤目現象である瞳孔の上側エッジ又は下側エッジを下瞼又は上瞼から除外する。赤目検出部２５は、顔画像のうち所定の明暗画素パターン又はエッジパターンに合致する部分を赤目現象である瞳孔として検出する。所定の明暗画素パターンは、中心部の明領域とその周囲に配置された暗領域とから構成できる。赤目検出部２５は、顔画像のうち複数の異なる所定の明暗画素パターンのいずれかに合致する部分を、赤目現象である瞳孔として検出してもよい。【選択図】図２
2008158922.tif 000002
【特許請求の範囲】
【請求項１】
顔画像を取得する画像取得手段と、
前記顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出手段と、
前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出する瞼検出手段と、
を備え、
前記赤目検出手段で赤目現象を検出した場合に、前記瞼検出手段は、前記赤目現象である瞳孔のエッジを、上瞼及び下瞼から除外することを特徴とする瞼検出装置。
【請求項２】
前記瞼検出手段は、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔の上側エッジを下瞼から除外することを特徴とする請求項１に記載の瞼検出装置。
【請求項３】
前記瞼検出手段は、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔の下側エッジを、上瞼から除外することを特徴とする請求項１又は２に記載の瞼検出装置。
【請求項４】
前記赤目検出手段は、前記顔画像のうち所定の明暗画素パターンに合致する部分を前記赤目現象である瞳孔として検出することを特徴とする請求項１乃至３のいずれか１項に記載の瞼検出装置。
【請求項５】
前記赤目検出手段の所定の明暗画素パターンは、中心部の明領域とその周囲に配置された暗領域とから構成されることを特徴とする請求項４に記載の瞼検出装置。
【請求項６】
前記赤目検出手段は、前記顔画像のうち複数の異なる所定の明暗画素パターンのいずれかに合致する部分を、前記赤目現象である瞳孔として検出することを特徴とする請求項４に記載の瞼検出装置。
【請求項７】
前記赤目検出手段は、前記顔画像のうち明暗の境界であるエッジの形状が所定の条件に合致する部分を前記赤目現象である瞳孔として検出することを特徴とする請求項１乃至３のいずれか１項に記載の瞼検出装置。
【請求項８】
周囲の明るさを検知する照度検知手段と、
前記照度検知手段が検出する周囲の明るさに基づいて、前記赤目検出手段による前記赤目現象の検出を行うか否かを判断する赤目検出実行判定手段と、
をさらに備えることを特徴とする請求項１乃至７のいずれか１項に記載の瞼検出装置。
【請求項９】
前記赤目検出実行判定手段は、前記照度検知手段で検出する周囲の明るさが所定の値よりも明るい場合に、前記赤目検出手段による前記赤目現象の検出を行わないと判断することを特徴とする請求項８に記載の瞼検出装置。
【請求項１０】
前記赤目検出実行判定手段は、前記照度検知手段で検出する周囲の明るさが所定の値よりも暗い場合に、前記赤目検出手段による前記赤目現象の検出を行うと判断することを特徴とする請求項８に記載の瞼検出装置。
【請求項１１】
前記瞼検出手段は、
前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼の候補を検出する瞼候補検出手段を有し、
前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔のエッジを、上瞼及び下瞼の候補から除外する、
ことを特徴とする請求項１乃至１０のいずれか１項に記載の瞼検出装置。
【請求項１２】
顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出ステップと、
前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出する瞼検出ステップと、
前記赤目検出ステップで赤目現象を検出した場合に、前記瞼検出ステップで検出した上瞼及び下瞼から、前記赤目現象である瞳孔のエッジを除外する赤目瞳孔除外ステップと、
を備えることを特徴とする瞼検出方法。
【請求項１３】
コンピュータを、
顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出手段と、
前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出し、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔のエッジを上瞼及び下瞼から除外する瞼検出手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顔画像から上下の瞼を検出する瞼検出装置、瞼検出方法及びプログラム    に関する。
【背景技術】
【０００２】
顔画像に基づいて眼の状態を判定し、その人の視線の方向を計測したり、瞼の開閉度からその人の覚醒度を推定する方法がある。眼の状態を判定するためには、顔画像の眼部を正確に検出することが必要である。また、瞼の開閉度を検出するためには、瞼を正確に検出することが必要である。
【０００３】
例えば、特許文献１には、顔画像から虹彩部を検出して運転者の状態を判定する技術が記載されている。特許文献１の技術は、顔画像内で虹彩部を検出する領域を設定し、その領域内において暗領域の面積を検出するとともに、その面積に応じて候補点に統計的処理で重み付けして虹彩中心位置を検出する。
【特許文献１】特開平０３−２０２０４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
人物を写真等に撮影するときに、赤目現象が発生することが知られている。赤目現象とは、暗い中で大きく開いた瞳孔から光が入り、眼球内部の毛細血管が走る脈絡膜層で反射して、再び瞳孔から出た光が画像に映り込む現象である。フラッシュ等で照明した場合、瞳孔の収縮が遅れるので、赤目現象が発生する。連続して照明する場合は、瞳孔が収縮するので、赤目現象は解消する。
【０００５】
夜間、運転者の顔を撮像する場合、可視光で照明するのは運転の妨げになるので、例えば、近赤外光で照明する。近赤外光では瞳孔が収縮しないので、連続して赤目現象が発生することがある。
【０００６】
従来の技術では、赤目現象が発生した場合に瞳孔が明領域になるので、暗領域による虹彩部の検出ができない。赤目現象の瞳孔を検出した場合、瞳孔のエッジを瞼として誤って検出する場合がある。
【０００７】
本発明はこうした状況に鑑みてなされたものであり、その目的は、赤目現象の場合でも正確に瞼を検出できる装置を提供することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の第１の観点に係る瞼検出装置は、顔画像を取得する画像取得手段と、前記顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出手段と、前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出する瞼検出手段と、を備え、前記赤目検出手段で赤目現象を検出した場合に、前記瞼検出手段は、前記赤目現象である瞳孔のエッジを上瞼及び下瞼から除外することを特徴とする。
【０００９】
好ましくは、前記瞼検出手段は、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔の上側エッジを下瞼から除外することを特徴とする。
【００１０】
又は、前記瞼検出手段は、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔の下側エッジを、上瞼から除外することを特徴とする。
【００１１】
好ましくは、前記赤目検出手段は、前記顔画像のうち所定の明暗画素パターンに合致する部分を前記赤目現象である瞳孔として検出することを特徴とする。
【００１２】
好ましくは、前記赤目検出手段の所定の明暗画素パターンは、中心部の明領域とその周囲に配置された暗領域とから構成されることを特徴とする。
【００１３】
前記赤目検出手段は、前記顔画像のうち複数の異なる所定の明暗画素パターンのいずれかに合致する部分を、前記赤目現象である瞳孔として検出してもよい。
【００１４】
あるいは、前記赤目検出手段は、前記顔画像のうち明暗の境界であるエッジの形状が所定の条件に合致する部分を前記赤目現象である瞳孔として検出してもよい。
【００１５】
好ましくは、周囲の明るさを検知する照度検知手段と、前記照度検知手段が検出する周囲の明るさに基づいて、前記赤目検出手段による前記赤目現象の検出を行うか否かを判断する赤目検出実行判定手段と、をさらに備えることを特徴とする。
【００１６】
特に、前記赤目検出実行判定手段は、前記照度検知手段で検出する周囲の明るさが所定の値よりも明るい場合に、前記赤目検出手段による前記赤目現象の検出を行わないと判断する。
【００１７】
又は、前記赤目検出実行判定手段は、前記照度検知手段で検出する周囲の明るさが所定の値よりも暗い場合に、前記赤目検出手段による前記赤目現象の検出を行うと判断する。
【００１８】
好ましくは、前記瞼検出手段は、前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼の候補を検出する瞼候補検出手段を有し、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔のエッジを、上瞼及び下瞼の候補から除外する。
【００１９】
本発明の第２の観点に係る瞼検出方法は、顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出ステップと、前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出する瞼検出ステップと、前記赤目検出ステップで赤目現象を検出した場合に、前記瞼検出ステップで検出した上瞼及び下瞼から、前記赤目現象である瞳孔のエッジを除外する赤目瞳孔除外ステップと、を備えることを特徴とする。
【００２０】
本発明の第３の観点に係るプログラムは、コンピュータを、顔画像から虹彩部の空間的な明暗の変化を感知して、瞳孔から入射した光が反射して前記顔画像に映り込む赤目現象を検出する赤目検出手段と、前記顔画像から明暗の境界であるエッジに基づいて上瞼及び下瞼を検出し、前記赤目検出手段で赤目現象を検出した場合に、前記赤目現象である瞳孔のエッジを上瞼及び下瞼から除外する瞼検出手段、として機能させることを特徴とする。
【発明の効果】
【００２１】
本発明の瞼検出装置によれば、赤目現象が生じている場合でも、瞼を正確に検出することができる。
【発明を実施するための最良の形態】
【００２２】
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰り返さない。図１は、本発明の一実施の形態に係る瞼検出装置の構成を示すブロック図である。本実施形態の瞼検出装置１は、運転者の顔を撮影して顔画像を生成するカメラ２と、運転者の顔を照明する照明光源３と、照度センサ４と、運転者の眼部を検出するコンピュータ１０と、コンピュータ１０に接続された表示装置７とを備える。
【００２３】
カメラ２は撮像素子、例えば、ＣＣＤ（Charge Coupled Device：電荷結合素子）などでレンズの結像を電気信号に変換し、画素ごとにデジタル化した画像データを出力する。カメラ２は、例えば、運転者の顔の階調画像を取得する。カメラ２によって生成される画像データは、運転者の顔だけでなく、その背景なども含まれている。
【００２４】
照度センサ４は、例えば、フォトダイオード又は太陽電池などの光電変換素子から構成される。照度センサ４は、素子に当たる光を電圧又は電流に変換し、周囲の明るさを検知する。照度センサ４は、例えば、車両の外の明るさを検知する場所に設置される。
【００２５】
表示装置７は、ＬＣＤ（Liquid Crystal Display)又はＣＲＴ(Cathode Ray Tube)などから構成され、カメラ２で撮影された顔画像から生成された二値化画像などを表示する。
【００２６】
コンピュータ１０は、カメラ２により取得された画像データを処理して顔の左右両端位置、上下位置を検出する。この検出した左右両端位置、上下位置に基づいて、瞼を探索する領域（瞼探索領域）を設定する。そして、瞼探索領域において赤目現象と上下瞼を検出する。
【００２７】
図２は、本発明の一実施の形態である瞼検出装置１の論理的な構成を示すブロック図である。瞼検出装置１は、カメラ２、照度センサ４、画像入力部２１、瞼探索領域設定部２２、瞼候補検出部２３、赤目検出実行判定部２４、赤目検出部２５、赤目除外処理部２６、瞼判定部２７、表示処理部２８、データ保持部５、表示装置７などから構成される。データ保持部５には、顔画像データ５１、顔領域・瞼探索領域データ５２、瞼候補データ５３、赤目瞳孔データ５４、瞼データ５５が記憶保持される。瞼検出装置１は、顔画像から眼部の赤目現象と上下瞼のペアを検出する。
【００２８】
図３は、瞼検出装置１の物理的な構成の一例を示すブロック図である。コンピュータ１０は、図３に示すように、送受信部１６と、画像メモリ１２と、外部記憶部１３と、制御部１４と、主記憶部１５と、表示制御装置１７と、光源制御装置１８とを備える。画像メモリ１２、外部記憶部１３、主記憶部１５、送受信部１６、表示制御装置１７及び光源制御装置１８はいずれも内部バス１１を介して制御部１４に接続されている。
【００２９】
制御部１４はＣＰＵ（Central Processing Unit）等から構成され、外部記憶部１３に記憶されているプログラムに従って、画像入力部２１、瞼探索領域設定部２２、瞼候補検出部２３、赤目検出実行判定部２４、赤目検出部２５、赤目除外処理部２６、瞼判定部２７及び表示処理部２８の処理を実行する。画像入力部２１、瞼探索領域設定部２２、瞼候補検出部２３、赤目検出実行判定部２４、赤目検出部２５、赤目除外処理部２６、瞼判定部２７及び表示処理部２８は、制御部１４とその上で実行されるプログラムで実現される。
【００３０】
主記憶部１５はＲＡＭ（Random-Access Memory）等から構成され、制御部１４の作業領域として用いられる。データ保持部５は、画像メモリ１２及び主記憶部１５の一部に記憶領域の構造体として記憶保持される。
【００３１】
外部記憶部１３は、フラッシュメモリ、ハードディスク、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Digital Versatile Disc Random-Access Memory）、ＤＶＤ−ＲＷ（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成され、前記の処理を制御部１４に行わせるためのプログラムを予め記憶し、また、制御部１４の指示に従って、このプログラムのデータを制御部１４に供給し、制御部１４から供給されたデータを記憶する。なお、画像データは外部記憶部１３に格納されている場合がある。
【００３２】
送受信部１６は、モデム又は網終端装置、及びそれらと接続するシリアルインタフェース又はＬＡＮ（Local Area Network）インタフェースから構成されている。制御部１４は、送受信部１６を介して、カメラ２から画像データを入力する。画像メモリ１２は、カメラ２により生成され、送受信部１６を経由して入力された画像データを記憶する。送受信部１６とカメラ２とのインタフェースは、ＮＴＳＣ (national television system committee)方式等でもよい。ＮＴＳＣ方式の場合は、例えば、送受信部１６で画像信号をディジタルデータに変換する。送受信部１６は、また、照度センサ４から周囲の明るさに対応する信号を入力し、制御部１４に伝達する。
【００３３】
表示制御装置１７は、制御部１４の制御下に、表示装置７を制御する。
光源制御装置１８は、照明光源３の点灯・消灯を制御する。
【００３４】
制御部１４は、外部記憶部１３に格納されているプログラムを実行することにより、カメラ２により取得された画像データを処理して顔の両端位置、上下位置を検出し、この検出した両端位置、上下位置に基づいて、瞼探索領域における赤目現象と上下瞼の候補を検出し、その候補の中で最も上下瞼の条件に適合する候補を上下瞼対として選択する。
【００３５】
図２に戻って、瞼検出装置１の各部の作用を説明する。カメラ２は顔の画像を撮像する。画像入力部２１は、一定時間間隔でカメラ２から時系列の画像データを入力し、データ保持部５に顔画像データ５１として記憶する。  
【００３６】
瞼探索領域設定部２２は、顔画像データ５１から顔領域を抽出し、顔領域の中に瞼探索領域を設定する。顔の領域を抽出するには、例えば、顔画像から顔輪郭のエッジを算出する。あるいは、顔輪郭のパターンマッチングによって顔輪郭を抽出してもよい。顔輪郭の範囲で、上から眉のエッジを、下から口下のエッジを検出することによって、顔の領域を設定する。そして、例えば、統計的データに基づいた比率で、顔領域の中に瞼探索領域を設定する。図５は、顔領域Ｆと瞼探索領域Ｅの例を示す。瞼探索領域設定部２２は、設定した顔領域Ｆ及び瞼探索領域Ｅを、顔領域・瞼探索領域データ５２として、データ保持部５に記憶する。
【００３７】
なお、検出しやすい特徴的な部分、例えば鼻孔を検出し、鼻孔の位置に基づいて瞼探索領域Ｅを設定してもよい。例えば、鼻孔の上から眉までの距離に所定の比率を乗じた長さを眉からとり、顔輪郭の幅に所定の比率を乗じた長さを顔輪郭の中央にとって、瞼探索領域Ｅとすることができる。瞼探索領域Ｅを設定することによって、瞼検出の効率を向上できる。
【００３８】
図４Ａ乃至図４Ｄは、エッジ算出用の固定データの例を説明する図である。外部記憶部１３は、図４Ａ、図４Ｂに示すような、水平方向エッジ検出用と垂直方向エッジ検出用ソーベルフィルタのオペレータを格納する。本発明では、画像中で水平方向に輝度が明から暗、又は暗から明に変化する点の連なりを水平方向エッジという。水平方向エッジの点は概ね縦方向に連続するので、縦エッジともいう。また、垂直方向に輝度が明から暗、又は暗から明に変化する点の連なりを垂直方向エッジという。垂直方向エッジの点は概ね横方向に連続するので、横エッジともいう。
【００３９】
図４Ａに示す水平方向エッジ（縦エッジ）検出用ソーベルフィルタは、図４Ｃに示すような縦方向に連続する濃淡差の境界（エッジ）を抽出するためのオペレータである。図４Ｂに示す垂直方向エッジ（横エッジ）検出用のソーベルフィルタは、図４Ｄに示すような横方向に連続する濃淡差の境界（エッジ）を抽出するためのオペレータである。
【００４０】
また、外部記憶部１３は、図５に示すように、主記憶部１５に格納される顔画像のうち、顔の範囲Ｆを特定するデータ、及び、眼や眉の画像が存在すると想定される瞼探索領域Ｅを特定するデータを格納する。
【００４１】
瞼候補検出部２３は、瞼探索領域Ｅから、例えば図４Ａ及び図４Ｂに示すフィルタを用いて、水平方向エッジ及び垂直方向エッジを算出する。図６は、瞼探索領域Ｅの原画像の例を模式的に示す。図６では、画像の暗領域をハッチングを付して表している。図６には、瞼の垂直方向エッジが検出される位置を実線で表している。上瞼のエッジが検出される位置は実線Ｌｕ、下瞼のエッジが検出される位置は実線Ｌｌである。その他、垂直方向エッジとして、眉や虹彩のエッジが検出される。
【００４２】
垂直方向エッジのうち、上から下に向かって明から暗に変化するエッジを上瞼候補とする。垂直方向エッジのうち、上から下に向かって暗から明に変化するエッジを下瞼候補とする。瞼候補検出部２３は、上瞼候補及び下瞼候補を瞼候補データ５３として、データ保持部５に記憶する。
【００４３】
水平方向エッジと垂直方向エッジを組み合わせて、上瞼候補及び下瞼候補の確からしさを判断してもよい。例えば、上瞼は上に湾曲しているので、垂直方向エッジの両端に水平方向エッジが現れる。両側に水平方向エッジが存在する垂直方向エッジを、確からしい上瞼候補とすることができる。
【００４４】
図７は、赤目現象が生じている場合の瞼検索領域Ｅの画像を模式的に示す。図７では、図６と同様に、画像の暗領域をハッチングを付して表している。赤目現象の瞳孔（以下、赤目瞳孔と略すことがある）Ｐの上側では、上から下に向かって暗から明に輝度が変化する。従って、赤目瞳孔Ｐの上側に下瞼と同じ上から下に向かって暗から明に変化する垂直方向エッジが算出される。図７に、赤目瞳孔の上に算出される垂直方向エッジの位置を実線Ｌｆで示す。また、瞳孔の下側には上瞼と同じく、上から下に向かって明から暗に変化する垂直方向エッジが算出される。
【００４５】
赤目瞳孔Ｐに現れる垂直方向エッジは、上瞼及び下瞼の候補になる。赤目瞳孔Ｐによってできる上瞼候補又は下瞼候補を、瞼と判定する可能性がある。特に、赤目瞳孔Ｐの上側に現れる下瞼候補は、下瞼として判定されると、上瞼候補との位置関係により眼が閉じられていると判定されるおそれがある。
【００４６】
赤目検出実行判定部２４は、照度センサ４から周囲の明るさに対応する信号を入力する。周囲が明るい場合は、運転者の瞳孔は小さくなっているので、赤目現象は生じない。赤目現象が生じるのは、周囲が暗く運転者の瞳孔が大きく開かれている場合である。赤目検出実行判定部２４は、周囲の明るさが所定の値より暗い場合に、赤目検出部２５に対して赤目現象を検出する指令を出力する。また、周囲の明るさが所定の値より明るければ、赤目検出部２５に対して赤目現象の検出を行わないよう指令する。
【００４７】
照度センサ４及び赤目検出実行判定部２４を備えずに、常に赤目現象の検出を行ってもよい。赤目検出を実行するかどうか判定することによって、周囲が明るく赤目現象が生じない場合の瞼検出処理を効率よく行うことができる。
【００４８】
赤目検出部２５は、瞼探索領域Ｅから、赤目現象が生じている瞳孔を検出する。赤目現象の瞳孔を検出するには、所定の明暗画素パターンを用い、その明暗画素パターンに合致する部分を赤目瞳孔Ｐと判断する。
【００４９】
図８Ａ乃至図８Ｄは、赤目現象の瞳孔を検出する明暗画素パターンの例を示す。図８Ａ乃至図８Ｄにおいて、小さい正方形は１つの画素を表す。図８Ａと図８Ｂは９×９の画素配列、図８Ｃは６×６の画素配列、図８Ｄは７×７の画素配列である。
【００５０】
画素のうち、白抜きのものは輝度が所定のしきい値ａ以上の画素（白画素Ｃ）を、黒く塗りつぶしたものは輝度が所定のしきい値ｂ以下の画素（黒画素Ｂ）を表す。ハッチングを施した画素は明暗画素パターンと画像を比較するときに、考慮しない画素Ｄ（ドントケア）を表す。ここで、しきい値ａ及びｂは異なる値である。
【００５１】
明暗画素パターンを画像に重ねて、明暗画素パターンの白画素Ｃ及び黒画素Ｂにおいて重なる画素ごとに明暗画素パターンの画素と画像の画素を比較する。その画素ごとの明暗が全て一致した（論理積が全て真である）場合に、その画像の部分が明暗画素パターンに合致したと判断する。ここで、画素の明暗が一致するとは、白画素Ｃに対応する画素において輝度が所定のしきい値ａ以上であり、黒画素Ｂに対応する画素において輝度が所定のしきい値ｂ以下であることをいう。そして明暗画素パターンが合致した位置に、赤目瞳孔があると判断する。明暗画素パターンとの一致をみることによって、空間的に明暗が変化する赤目瞳孔を検出することができる。
【００５２】
図８Ａ乃至図８Ｄの例は、いずれも中心部に明領域の白画素Ｃがあり、その周囲に暗領域の黒画素Ｂが配置されている。赤目現象が生じたときに、瞳孔は輝度が明るくなる。瞳孔の周囲の虹彩は暗く映る。従って、図８Ａ乃至図８Ｄのように中心部の明領域とその周囲に配置された暗領域を有する明暗画素パターンで、赤目現象を検出することができる。
【００５３】
明暗画素パターンはカメラ２の解像度と顔画像の大きさに合わせて、赤目現象の瞳孔に適合するように設定する。例えば、解像度が高い画像では、図８Ａのように、中心部の明領域の画素数を多くする。解像度が低い画像では、図８Ｃのように、中心部の明領域の画素数を少なくする。また、明領域と暗領域の間に考慮しない画素Ｄを設けるのは、明領域又は暗領域の大きさが変わっても検出できるようにするためである。
【００５４】
さらに、複数の明暗画素パターンを用意しておいて、複数の明暗画素パターンのいずれかに合致する部分を赤目瞳孔と判定してもよい。顔の向きが異なる場合や眼の大きさなどに個人差があっても、赤目現象を検出する精度を向上できる。
【００５５】
赤目現象を検出するには、明暗画素パターンとの合致を判定する方法以外でもよい。例えば、明暗境界の形状から赤目現象の瞳孔を検出してもよい。図９は、赤目現象の場合の瞼探索領域Ｅの画像から明暗のエッジを検出した例を示す。赤目現象の瞳孔は明領域であり、その周囲の虹彩は暗領域になる。従って、赤目瞳孔Ｐの周囲に明暗のエッジが検出される。このエッジの形状が所定の条件に合致する部分を、赤目瞳孔Ｐとして検出することができる。具体的な方法の例を以下に記載する。
【００５６】
図１０は、図９の部分Ｒを拡大して示す図である。赤目瞳孔Ｐでは水平方向のエッジとして、顔画像に向かって瞳孔の左端に、左から右に向かって暗から明に変化するエッジ（縦プラスエッジという）Ｈｐが現れる。また、赤目瞳孔Ｐの右端に左から右に向かって明から暗に変化するエッジ（縦マイナスエッジという）Ｈｍが現れる。垂直方向のエッジとして、赤目瞳孔Ｐの上端に、上から下に向かって暗から明に変化するエッジ（横プラスエッジという）Ｖｐが現れる。そして赤目瞳孔Ｐの下端には、上から下に向かって明から暗に変化するエッジ（横マイナスエッジという）Ｖｍが現れる。
【００５７】
左が縦プラスエッジＨｐ、右が縦マイナスエッジＨｍ、上が横プラスエッジＶｐ、下が横マイナスエッジＶｍの４種類の明暗境界で囲まれ、その囲まれた領域の画素数が所定の範囲である部分を赤目瞳孔Ｐと判定できる。従って、それら条件で瞼検索領域Ｅを探索して赤目瞳孔Ｐを検出することができる。
【００５８】
あるいは、明暗のエッジパターンから赤目瞳孔Ｐを検出してもよい。図１２Ａ乃至図１２Ｄは、赤目現象を検出するエッジパターンの例を示す。ここで、塗りつぶされた領域はエッジであり、上に横プラスエッジＶｐ、下に横マイナスエッジＶｍ、左に縦プラスエッジＨｐ、右に縦マイナスエッジＨｍが配置されている。横エッジと縦エッジの双方に属する点をパターンに含めることもできる。例えば図１２Ｄに示すように、横プラスエッジＶｐと縦プラスエッジＨｐの共通点Ｋ１、横プラスエッジＶｐと縦マイナスエッジＨｍの共通点Ｋ２、横マイナスエッジＶｍと縦プラスエッジＨｐの共通点Ｋ３、横マイナスエッジＶｍと縦マイナスエッジＨｍの共通点Ｋ４を、赤目現象を検出するエッジパターンに含めてもよい。例えば、明暗のエッジを検出したのち、図１２Ａ乃至図１２Ｄに示すような所定のエッジパターンに一致する部分を赤目瞳孔Ｐとして検出する。又は、所定のエッジパターンと一致する率が所定の値以上である場合に、その部分を赤目瞳孔Ｐとして検出してもよい。
【００５９】
ここで、エッジパターンに一致するとは、例えば図１２Ａ〜図１２Ｃにおいて、横プラスエッジＶｐの領域ではエッジの強さを表す値（例えば、輝度の変化量、ソーベルフィルタの演算値等。以下、エッジ値という）が所定の閾値Ａよりも大きく、横マイナスエッジＶｍの領域では該エッジ値が所定の閾値Ｂよりも小さく、縦プラスエッジＨｐの領域ではエッジ値が所定の閾値Ｃよりも大きく、縦マイナスエッジＨｍの領域ではエッジ値が所定の閾値Ｄよりも小さい場合をいうものとする。
【００６０】
なお、ここでは例えば図４Ａ又は図４Ｂに示すようなエッジ検出用オペレータを用いるので、エッジ値は輝度が上から下又は左から右に向かって明から暗に変化する境界においてはプラスの値であり、輝度が暗から明に変化する境界においてはマイナスの値となる。さらに、閾値Ａ、Ｃは正の値であり、閾値Ｂ、Ｄは負の値である。閾値Ａ、Ｂ、Ｃ、Ｄは絶対値を同じとしてもよいし、それぞれ異なる絶対値を有するようにしてもよい。
【００６１】
また、図１２Ｄのように、縦エッジと横エッジの双方に属する点Ｋ１〜Ｋ４については、縦エッジ（水平方向エッジ）の値と横エッジ（垂直方向エッジ）の値の合成値で判定する。ある画素の水平方向エッジのソーベルフィルタ演算値をＨ、その画素の垂直方向エッジのソーベルフィルタ演算値をＶとして、例えば、図１２Ｄの共通点Ｋ１については、Ｈ＋Ｖが所定の閾値ｃより大きい場合にその点のエッジ値が強いと判定する。同様に、共通点Ｋ２では、対象となる画素について−Ｈ＋Ｖが所定の閾値ｄより大きい場合に、その点のエッジ値が強いと判定する。共通点Ｋ３では、Ｈ−Ｖを閾値ｅと、共通点Ｋ４では−Ｈ−Ｖを閾値ｆと比較して判定する。閾値ｃ、ｄ、ｅ、ｆは同じ値としてもよいし、それぞれ異なる値を有するようにしてもよい。
【００６２】
赤目検出部２５は、赤目現象を検出した場合、赤目瞳孔の位置などを赤目瞳孔データ５４としてデータ保持部５に記憶する。赤目現象を検出しなかった場合は、赤目現象がないことを記憶する。
【００６３】
赤目除外処理部２６は、赤目現象が検出された場合に、赤目瞳孔の上下に算出される垂直方向エッジを、下瞼候補及び上瞼候補から除外する。赤目瞳孔は、赤目現象を検出するための明暗画素パターンに合致している部分であるから、赤目瞳孔の上下に現れる垂直方向エッジの位置はわかっている。すなわち、赤目瞳孔の位置に置いた場合の明暗画素パターンの明領域と暗領域の境界にある瞼候補は、赤目瞳孔による垂直方向エッジとみなすことができる。
【００６４】
瞼判定部２７は、残った上瞼候補及び下瞼候補について、上下の瞼をペアとしたときの条件に最も適合する組合わせを上下の瞼とする。例えば、上瞼候補のエッジと下瞼候補のエッジの長さがそろっていること、エッジ重心の横方向の位置が上下瞼対でそろっていること、エッジ重心間の距離が所定の範囲内であることなどで判定する。
【００６５】
具体的には、例えば、上瞼候補のエッジの長さをＬｍ、下瞼候補のエッジの長さをＬｐ、しきい値をＬｔとして、
｜Ｌｍ−Ｌｐ｜＜Ｌｔ
の条件を満たす上瞼候補と下瞼候補の組み合わせを残す。
【００６６】
また、例えば、上瞼候補のエッジの重心Ｘ座標をＸｍ、下瞼候補のエッジの重心Ｘ座標をＸｐ、しきい値をＸｔとして、
｜Ｘｍ−Ｘｐ｜＜Ｘｔ
の条件を満たす上瞼候補と下瞼候補の組み合わせを残す。
【００６７】
さらに、上瞼候補のエッジの重心Ｙ座標をＹｍ、下瞼候補のエッジの重心Ｙ座標をＹｐ、しきい値をＤｔとして、
（Ｘｍ−Ｘｐ）２＋（Ｙｍ−Ｙｐ）２＜Ｄｔ
の条件を満たす上瞼候補と下瞼候補の組み合わせを残す。
【００６８】
そして、残った組み合わせのうち、例えば、左右の眼として妥当な組み合わせで、かつ最もエッジ重心の横方向の位置が近い組み合わせを上下瞼対として選択する。瞼判定部２７は、選択した上下瞼対を瞼データとしてデータ保持部５に記憶する。
【００６９】
表示処理部２８は、検出された結果の上下瞼を顔の輪郭等とともに表示装置７に表示する。上下瞼から眼の開閉度を判定してもよい。上下瞼の開閉度から運転者の覚醒度合いを推定し、居眠りと判定された場合に、表示装置７で警告を表示（音響等を含む）してもよい。また、視線の方向の推定に、上下瞼データを利用することもできる。なお、表示装置７は必須の構成要素ではなく、瞼検出装置１の構成として備えていなくてもよい。
【００７０】
つぎに、瞼検出装置１の動作について説明する。なお、瞼検出装置１の動作は、制御部１４がカメラ２、送受信部１６、画像メモリ１２、外部記憶部１３及び主記憶部１５と協働して行う。
【００７１】
図１１は、瞼検出装置１の動作の一例を示すフローチャートである。制御部１４は送受信部１６を介してカメラ２から顔画像を入力する（ステップＳ１）。そして、前述のとおり、顔領域を設定するが、ここでは、さらに顔向きの判定を行う（ステップＳ２）。顔の向きは、例えば、顔の輪郭の対称性、眉と口下の顔輪郭内の相対位置によって判定する。顔向き画像正面から所定の閾値以上横を向いている場合は（ステップＳ３；Ｎｏ）、瞼検出には適当でないので、次のフレームの顔画像入力に戻る（ステップＳ１）。
【００７２】
顔向きが画像正面から所定の閾値以内であれば（ステップＳ３；Ｙｅｓ）、鼻孔を探索する（ステップＳ４）。鼻孔が検出できなければ（ステップＳ５；Ｎｏ）、瞼検出には適当でないので、次のフレームの顔画像入力に戻る（ステップＳ１）。鼻孔が検出できた場合は（ステップＳ５；Ｙｅｓ）、顔領域の中に瞼探索領域を設定する（ステップＳ６）。
【００７３】
制御部１４は、設定された瞼探索領域内で水平方向エッジ及び垂直方向エッジを算出し、上下の瞼候補を検出する（ステップＳ７）。制御部１４は、算出した水平方向エッジ及び垂直方向エッジについてグループ化し、所定の長さ（連続点数）以下のエッジを削除するなどの処理を行う。また、その長さ、重心の位置を計算する。さらに、垂直方向エッジと水平方向エッジの形状と位置関係から、上瞼候補の確からしさを算出してもよい。
【００７４】
次に、周囲の明るさを照度センサ４から入力し（ステップＳ８）、周囲の明るさが所定の値以下であれば（ステップＳ９；Ｙｅｓ）、赤目現象の検出を行う（ステップＳ１０）。周囲の明るさが所定の値を超えていれば（ステップＳ９；Ｎｏ）、赤目現象の検出を行わず上瞼候補の対応づけ処理（ステップＳ１４）に進む。
【００７５】
ここでは、例えば明暗画素パターンを用いて赤目現象を検出する（ステップＳ１０）。複数の明暗画素パターンを用いて、いずれかの明暗画素パターンに合致する画像部分を赤目瞳孔としてもよい。赤目現象が検出された場合は（ステップＳ１１；Ｙｅｓ）、赤目瞳孔の上エッジを下瞼候補から除外する（ステップＳ１２）。また、赤目瞳孔の下エッジを上瞼候補から除外する（ステップＳ１３）。赤目現象が検出されない場合は（ステップＳ１１；Ｎｏ）、下瞼候補及び上瞼候補の除外処理は行わない。
【００７６】
前述のとおり、残った上瞼候補及び下瞼候補について、上下の瞼をペアとしたときの条件に最も適合する組合わせを上下の瞼とする（ステップＳ１４）。
【００７７】
ここではさらに、上下の瞼の対が３以上残った場合に備えて、瞬きによって瞼を判定する。上下の瞼候補対ごとに開いている度合いを計算する（ステップＳ１５）。開いている度合い（開度）は、例えば、上瞼の中心と下瞼の中心の距離である。
【００７８】
上下瞼候補対とその開度を時系列に対応づけて（ステップＳ１６）、開度の変化が瞬きと判定される場合（ステップＳ１７；Ｙｅｓ）、その瞬きした瞼候補を瞼と判定し、瞼データ５５として登録する（ステップＳ１８）。例えば、開度が所定の値以上の瞼候補が、所定のフレーム数の画像において、開度が小さくなり、再び開度が大きくなった場合に瞬きと判定する。
【００７９】
瞼候補に瞬きがない場合は（ステップＳ１７；Ｎｏ）、瞼候補を瞼と判定せず次の画像入力を行う（ステップＳ１）。瞼検出処理を繰り返すうちに、いずれ瞬きが発生するので、瞼を正しく判定することができる。上下の瞼候補対が２組しかなく、顔の中の位置、形状、上下関係などから確実に瞼と判断できる場合は、瞬きによる瞼判定を省略してもよい。
【００８０】
瞼の開度を他の処理に利用することができる。例えば、所定のフレーム数以上連続して、瞼の開度が小さくなった場合に、居眠りと判定することができる。
【００８１】
本発明の瞼検出装置１によれば、赤目現象が発生している場合でも、顔画像データから、精度よく瞼を検出することができる。
【００８２】
その他、前記のハードウエア構成やフローチャートは一例であり、任意に変更及び修正が可能である。
【００８３】
制御部１４、送受信部１６、画像メモリ１２、外部記憶部１３及び主記憶部１５などから構成される瞼検出装置１の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読みとり可能な記録媒体（フレキシブルディスク、CD-ROM、DVD-ROM等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行する瞼検出装置１を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで瞼検出装置１を構成してもよい。
【００８４】
また、瞼検出装置１の機能を、ＯＳ（オペレーティングシステム）とアプリケーションプログラムの分担、またはＯＳとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【００８５】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施形態に係る瞼検出装置のブロック図である。
【図２】本発明の一実施の形態である瞼検出装置の論理的な構成を示すブロック図である。
【図３】図１に示すコンピュータの構成を示すブロック図である。
【図４Ａ】縦エッジ検出用オペレータの例を示す図である。
【図４Ｂ】横エッジ検出用オペレータの例を示す図である。
【図４Ｃ】縦方向に連続する濃淡差の例を表す図である。
【図４Ｄ】横方向に連続する濃淡差の例を表す図である。
【図５】顔画像の領域を特定するデータの例を示す図である。
【図６】瞼探索領域の原画像の例を模式的に示す図である。
【図７】赤目現象の場合の画像の例を模式的に示す図である。
【図８Ａ】赤目現象を検出する明暗画素パターンの例を示す図である。
【図８Ｂ】赤目現象を検出する明暗画素パターンの例を示す図である。
【図８Ｃ】赤目現象を検出する明暗画素パターンの例を示す図である。
【図８Ｄ】赤目現象を検出する明暗画素パターンの例を示す図である。
【図９】赤目現象の場合の瞼探索領域の画像から明暗のエッジを検出した例を示す図である。
【図１０】図９の部分Ｒを拡大して示す図である。
【図１１】瞼検出装置の動作の一例を示すフローチャートである。
【図１２Ａ】赤目現象を検出するエッジパターンの例を示す図である。
【図１２Ｂ】赤目現象を検出するエッジパターンの例を示す図である。
【図１２Ｃ】赤目現象を検出するエッジパターンの例を示す図である。
【図１２Ｄ】赤目現象を検出するエッジパターンの例を示す図である。
【符号の説明】
【００８７】
１  瞼検出装置
２  カメラ（画像取得手段）
４  照度センサ（照度検知手段）
５  データ保持部
１０  コンピュータ
１２  画像メモリ
１３  外部記憶部
１４  制御部（画像取得手段、赤目検出実行判定手段、赤目検出手段、瞼検出手段）
１５  主記憶部
１６  送受信部（画像取得手段）
２１  画像入力部
２２  瞼探索領域設定部
２３  瞼候補検出部（瞼候補検出手段、瞼検出手段）
２４  赤目検出実行判定部（赤目検出実行判定手段）
２５  赤目検出部（赤目検出手段）
２６  赤目除外処理部（瞼検出手段）
２７  瞼判定部（瞼検出手段）
５１  顔画像データ
５２  顔領域・瞼探索領域データ
５３  瞼候補データ
５４  赤目瞳孔データ
５５  瞼データ
【図１】
2008158922.tif 000003
【図２】
2008158922.tif 000004
【図３】
2008158922.tif 000005
【図４Ａ】
2008158922.tif 000006
【図４Ｂ】
2008158922.tif 000007
【図４Ｃ】
2008158922.tif 000008
【図４Ｄ】
2008158922.tif 000009
【図５】
2008158922.tif 000010
【図６】
2008158922.tif 000011
【図７】
2008158922.tif 000012
【図８Ａ】
2008158922.tif 000013
【図８Ｂ】
2008158922.tif 000014
【図８Ｃ】
2008158922.tif 000015
【図８Ｄ】
2008158922.tif 000016
【図１１】
2008158922.tif 000017
【図１２Ａ】
2008158922.tif 000018
【図１２Ｂ】
2008158922.tif 000019
【図１２Ｃ】
2008158922.tif 000020
【図１２Ｄ】
2008158922.tif 000021
【図９】
2008158922.tif 000022
【図１０】
2008158922.tif 000023