(57)【特許請求の範囲】
【請求項１】
撮像画像から目尻および目頭を顔特徴点として検出する顔特徴点検出部と、
前記顔特徴点に基づいて前記撮像画像から上瞼領域および眼領域を含む眼部領域を検出する眼部領域検出部と、
前記眼部領域を複数の領域に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、前記分割領域ごとに検出した前記境界をつなげて上瞼とする上瞼検出部とを備え、
前記上瞼検出部は、１つの前記分割領域において、第一の閾値および前記第一の閾値より値が大きい第二の閾値を用いて、前記第一の閾値以上かつ前記第二の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターンを前記上瞼領域とし、前記第一の閾値未満の輝度値をもつ画素と前記第二の閾値以上の輝度値をもつ画素とが連続して並ぶか、前記第一の閾値未満の輝度値をもつ画素が連続して並ぶか、前記第二の閾値以上の輝度値をもつ画素が連続して並ぶ配置パターンを前記眼領域とする瞼検出装置。
【請求項２】
撮像画像から目尻および目頭を顔特徴点として検出する顔特徴点検出部と、
前記顔特徴点に基づいて前記撮像画像から上瞼領域および眼領域を含む眼部領域を検出する眼部領域検出部と、
前記眼部領域を複数の領域に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、前記分割領域ごとに検出した前記境界をつなげて上瞼とする上瞼検出部と、
前記顔特徴点に基づいて前記眼部領域から仮の上瞼と下瞼とを検出する上下瞼検出部とを備え、
前記上瞼検出部は、前記上下瞼検出部により検出された前記仮の上瞼と前記下瞼とが一致しない場合、前記上瞼検出部が検出した前記上瞼を真の上瞼に決定する瞼検出装置。
【請求項３】
前記上瞼検出部により検出された前記真の上瞼、および前記上下瞼検出部により検出された前記下瞼を用いて開眼度を算出する開眼度算出部を備える請求項２記載の瞼検出装置。
【請求項４】
前記分割領域は、前記眼部領域の一端から反対側の一端までを結ぶ領域であることを特徴とする請求項１から請求項３のうちいずれか１項に記載の瞼検出装置。
【請求項５】
前記上瞼検出部により複数の上瞼が検出された場合、前記複数の上瞼それぞれの輝度値の変化度合を検出するエッジ強度検出部を備え、
前記上瞼検出部は、前記複数の上瞼のうち、前記エッジ強度検出部により検出された輝度値の変化度合が最も大きい上瞼を真の上瞼に決定することを特徴とする請求項１から請求項４のうちいずれか１項に記載の瞼検出装置。
【請求項６】
請求項３記載の瞼検出装置と、
前記瞼検出装置により算出された開眼度に基づいて居眠り状態を判定する居眠り判定部とを備える居眠り判定装置。
【請求項７】
顔特徴点検出部が、撮像画像から目尻および目頭を顔特徴点として検出するステップと、
眼部領域検出部が、前記顔特徴点に基づいて前記撮像画像から上瞼領域および眼領域を含む眼部領域を検出するステップと、
上瞼検出部が、前記眼部領域を複数の領域に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、前記分割領域ごとに検出した前記境界をつなげて上瞼とするステップと、
前記上瞼検出部が、１つの前記分割領域において、第一の閾値および前記第一の閾値より値が大きい第二の閾値を用いて、前記第一の閾値以上かつ前記第二の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターンを前記上瞼領域とし、前記第一の閾値未満の輝度値をもつ画素と前記第二の閾値以上の輝度値をもつ画素とが連続して並ぶか、前記第一の閾値未満の輝度値をもつ画素が連続して並ぶか、前記第二の閾値以上の輝度値をもつ画素が連続して並ぶ配置パターンを前記眼領域とするステップとを備える瞼検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、瞼を検出する瞼検出装置および瞼検出方法、ならびに検出した瞼をもとに居眠りを判定する居眠り判定装置に関するものである。
【背景技術】
【０００２】
車両運転者の眼の開き度合（以下、「開眼度」と称する）を検出するドライバモニタリング装置がある。従来のドライバモニタリング装置は、運転者の顔を撮像した画像から眼部領域を抽出し、眼部領域の画像に対してエッジ検出および曲線検出を実施することで、上下瞼を検出していた（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１３７７９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のドライバモニタリング装置は以上のように構成されているので、太いアイラインまたは濃いアイシャドウなど、瞼に濃い化粧を施している運転者を撮像した画像から、化粧領域と非化粧領域との境界を検出し、この境界を上瞼と誤検出してしまうという課題があった。
また、ドライバモニタリング装置は、顔の彫が深く目元に影ができやすい運転者を撮像した画像から、影領域と非影領域との境界を検出し、この境界を上瞼と誤検出してしまうという課題があった。
上瞼を誤検出した場合、ドライバモニタリング装置は運転者が閉眼中であっても開眼と誤判定し、正しい開眼度を算出できず、居眠り判定処理が正常に動作しない。【０００５】
この発明は、上記のような課題を解決するためになされたもので、目元に化粧または影がある人物の上瞼を精度よく検出することを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係る瞼検出装置は、撮像画像から目尻および目頭を顔特徴点として検出する顔特徴点検出部と、顔特徴点に基づいて撮像画像から上瞼領域および眼領域を含む眼部領域を検出する眼部領域検出部と、眼部領域を複数に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、分割領域ごとに検出した境界をつなげて上瞼とする上瞼検出部とを備え、上瞼検出部は、１つの分割領域において、第一の閾値および第一の閾値より値が大きい第二の閾値を用いて、第一の閾値以上かつ第二の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターンを上瞼領域とし、第一の閾値未満の輝度値をもつ画素と第二の閾値以上の輝度値をもつ画素とが連続して並ぶか、第一の閾値未満の輝度値をもつ画素が連続して並ぶか、第二の閾値以上の輝度値をもつ画素が連続して並ぶ配置パターンを眼領域とするものである。
【発明の効果】
【０００７】
この発明によれば、眼部領域を複数に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、分割領域ごとに検出した境界をつなげて上瞼とするようにしたので、目元に化粧または影がある人物の上瞼を精度よく検出することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１に係る瞼検出装置の構成例を示すブロック図である。
【図２】図２Ａおよび図２Ｂは、この発明の実施の形態１に係る瞼検出装置のハードウェア構成例を示す図である。
【図３】この発明の実施の形態１に係る瞼検出装置の動作例を示すフローチャートである。
【図４】図３のステップＳＴ１５における処理の詳細なフローチャートである。
【図５】この発明の実施の形態１に係る瞼検出装置の眼部領域検出部により検出された眼部領域の画像例である。
【図６】図６Ａおよび図６Ｂは、この発明の実施の形態１に係る瞼検出装置の上瞼検出部による配置パターンの判定方法を説明する図である。
【図７】図７Ａ、図７Ｂおよび図７Ｃは、この発明の実施の形態１に係る瞼検出装置の上瞼検出部による上瞼領域と眼領域との境界検出方法を説明する図である。
【図８】図５の眼部領域における配置パターンおよび境界を示す図である。
【図９】図５の眼部領域における上瞼を示す図である。
【図１０】この発明の実施の形態２に係る瞼検出装置の構成例を示すブロック図である。
【図１１】この発明の実施の形態２に係る瞼検出装置の動作例を示すフローチャートである。
【図１２】図１２Ａ、図１２Ｂおよび図１２Ｃは、この発明の実施の形態２に係る瞼検出装置による上瞼検出方法を説明する図である。
【図１３】この発明の実施の形態３に係る瞼検出装置の構成例を示すブロック図である。
【図１４】この発明の実施の形態３に係る瞼検出装置の動作例を示すフローチャートである。
【図１５】この発明の実施の形態３に係る瞼検出装置の上下瞼検出部による上下瞼検出方法を説明する図である。
【図１６】図１６Ａ、図１６Ｂおよび図１６Ｃは、この発明の実施の形態３に係る瞼検出装置の開眼度算出部による開眼度算出方法を説明する図である。
【図１７】この発明の実施の形態４に係る居眠り判定装置の構成例を示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１は、この発明の実施の形態１に係る瞼検出装置１０の構成例を示すブロック図である。図１に示す瞼検出装置１０は、画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６を備える。また、瞼検出装置１０は、撮像部１と接続される。以下では、瞼検出装置１０が車両に搭載され、運転者の瞼を検出する場合を例示する。瞼検出装置１０は、瞼に濃い化粧を施している運転者、および顔の彫が深く目元に影ができやすい運転者の上瞼を高精度に検出するものである。
【００１０】
撮像部１は、車室内に設置された単数または複数のカメラを備える。撮像部１には、可視光領域の感度を持つカメラを用いてもよいし、赤外線カメラなどの非可視光領域の感度を持つカメラを用いてもよい。撮像部１が赤外線カメラなどを用いる場合、赤外線などの非可視光を照射するＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）などの照明装置を、車室内に設置して運転者に照射する。この撮像部１は、制御部１６の制御下で運転者の顔を撮像し、撮像画像を画像取得部１１へ出力する。
【００１１】
画像取得部１１は、撮像部１から撮像画像を取得し、制御部１６へ出力する。
【００１２】
顔検出部１２は、画像取得部１１が撮像部１から取得した撮像画像を、制御部１６から受け取る。顔検出部１２は、撮像画像から運転者の顔を検出し、顔検出結果を制御部１６へ出力する。
顔検出部１２は、例えば、Ｈａａｒ−ｌｉｋｅ検出器と、ＡｄａｂｏｏｓｔおよびＣａｓｃａｄｅを組み合わせた一般的なアルゴリズムとを用いて作成した識別器である。なお、瞼検出装置１０が顔検出部１２を備える構成ではなく、撮像部１などの外部装置が顔検出部１２を備える構成であってもよい。外部装置が顔検出部１２を備える構成である場合、画像取得部１１は、外部装置の顔検出部１２から撮像画像と顔検出結果とを取得して制御部１６へ出力する。
【００１３】
顔特徴点検出部１３は、画像取得部１１が撮像部１から取得した撮像画像と、顔検出部１２が検出した顔検出結果とを、制御部１６から受け取る。顔特徴点検出部１３は、顔検出結果に基づいて、撮像画像上の顔の位置から目尻および目頭を顔特徴点として検出し、顔特徴点検出結果を制御部１６へ出力する。
顔特徴点検出部１３は、例えば、モデルフィッティングまたはＥｌａｓｔｉｃ  Ｂｕｎｃｈ  Ｇｒａｐｈ  Ｍａｔｃｈｉｎｇと呼ばれる手法など、一般的なアルゴリズムを用いて作成した検出器である。なお、瞼検出装置１０が顔特徴点検出部１３を備える構成ではなく、撮像部１などの外部装置が顔特徴点検出部１３を備える構成であってもよい。外部装置が顔特徴点検出部１３を備える構成である場合、画像取得部１１は、外部装置の顔特徴点検出部１３から撮像画像と顔特徴点検出結果とを取得して制御部１６へ出力する。
【００１４】
眼部領域検出部１４は、画像取得部１１が撮像部１から取得した撮像画像と、顔特徴点検出部１３が検出した顔特徴点検出結果とを、制御部１６から受け取る。眼部領域検出部１４は、顔特徴点検出結果の目尻および目頭の位置に基づいて、撮像画像から眼部領域を検出し、眼部領域画像を制御部１６へ出力する。眼部領域は、上瞼領域および眼領域を含む。眼領域は、白目および黒目の領域を含む。目尻および目頭の位置に基づく眼部領域の検出方法には周知の技術を用いればよいため、説明は省略する。
【００１５】
上瞼検出部１５は、眼部領域検出部１４が検出した眼部領域の画像を、制御部１６から受け取る。上瞼検出部１５は、眼部領域を複数の領域に分割し、分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出する。そして、上瞼検出部１５は、分割領域ごとに検出した境界をつなげて上瞼のラインとし、制御部１６へ出力する。
【００１６】
制御部１６は、撮像部１および瞼検出装置１０の動作を制御する。具体的には、制御部１６は、撮像部１に指示して運転者を撮像させる。また、制御部１６は、瞼検出装置１０における画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、および上瞼検出部１５に指示して動作のタイミングを制御したり、情報の授受を制御したりする。
【００１７】
図２Ａおよび図２Ｂは、この発明の実施の形態１に係る瞼検出装置１０のハードウェア構成例を示す図である。撮像部１はカメラ１００である。瞼検出装置１０における画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６の各機能は、処理回路により実現される。即ち、瞼検出装置１０は、上記各機能を実現するための処理回路を備える。処理回路は、専用のハードウェアとしての処理回路１０１であってもよいし、メモリ１０３に格納されるプログラムを実行するプロセッサ１０２であってもよい。
【００１８】
図２Ａに示すように、処理回路が専用のハードウェアである場合、処理回路１０１は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、またはこれらを組み合わせたものが該当する。画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６の機能を複数の処理回路１０１で実現してもよいし、各部の機能をまとめて１つの処理回路１０１で実現してもよい。
カメラ１００および処理回路１０１は、バス等により接続され、情報の授受が可能である。
【００１９】
図２Ｂに示すように、処理回路がプロセッサ１０２である場合、画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６の各機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ１０３に格納される。プロセッサ１０２は、メモリ１０３に格納されたプログラムを読みだして実行することにより、各部の機能を実現する。即ち、瞼検出装置１０は、プロセッサ１０２により実行されるときに、後述する図３等のフローチャートで示されるステップが結果的に実行されることになるプログラムを格納するためのメモリ１０３を備える。また、このプログラムは、画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６の手順または方法をコンピュータに実行させるものであるとも言える。
【００２０】
ここで、プロセッサ１０２とは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、処理装置、演算装置、マイクロプロセッサ、またはマイクロコンピュータ等のことである。
メモリ１０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＦＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、またはフラッシュメモリ等の不揮発性もしくは揮発性の半導体メモリであってもよいし、ハードディスクまたはフレキシブルディスク等の磁気ディスクであってもよいし、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）またはＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の光ディスクであってもよい。
カメラ１００、プロセッサ１０２およびメモリ１０３は、バス等により接続され、情報の授受が可能である。
【００２１】
なお、画像取得部１１、顔検出部１２、顔特徴点検出部１３、眼部領域検出部１４、上瞼検出部１５、および制御部１６の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、瞼検出装置１０における処理回路は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【００２２】
図３は、この発明の実施の形態１に係る瞼検出装置１０の動作例を示すフローチャートである。瞼検出装置１０は、図３に示されるフローチャートの処理を繰り返し実施する。なお、以下の説明では、制御部１６の動作の説明を省略する。
【００２３】
ステップＳＴ１１において、画像取得部１１は、撮像部１によって撮像された車両の運転者の撮像画像を取得する。
ステップＳＴ１２において、顔検出部１２は、撮像画像から顔の位置を検出する。
ステップＳＴ１３において、顔特徴点検出部１３は、撮像画像上の顔検出位置から、目尻および目頭の位置を検出する。
ステップＳＴ１４において、眼部領域検出部１４は、目尻および目頭の位置に基づいて、撮像画像から上瞼領域および眼領域を含む眼部領域を検出する。
ステップＳＴ１５において、上瞼検出部１５は、眼部領域の中から上瞼領域と眼領域との境界である上瞼を検出する。
ただし、上述のように外部装置が顔検出部１２および顔特徴点検出部１３を備える場合、ステップＳＴ１１〜ＳＴ１３は不要である。
【００２４】
図４は、図３のステップＳＴ１５における処理の詳細なフローチャートである。
ステップＳＴ１５１において、上瞼検出部１５は、眼部領域を複数の分割領域に分割する。そして、上瞼検出部１５は、眼部領域内の全ての画素の輝度値を探索する。
図５は、眼部領域検出部１４により検出された眼部領域２０１の画像例である。この例では、上瞼検出部１５は、眼部領域２０１の一番上かつ一番左の画素を輝度値探索開始位置２０２とし、輝度値探索開始位置２０２から水平方向へ、各画素の輝度値を探索する。その後、上瞼検出部１５は、一列下の一番左の輝度値探索開始位置２０３から水平方向へ、各画素の輝度値を検索する。このようにして、上瞼検出部１５は、眼部領域２０１のすべての列のすべての画素について輝度値を探索する。ここでは、輝度値探索開始位置２０２を含む水平方向一列の画素が１つの分割領域であり、輝度値探索開始位置２０３を含む水平方向一列の画素が１つの分割領域である。
なお、上瞼検出部１５は、眼部領域２０１を水平方向に分割したが、これに限定されるものではなく、垂直方向または円弧方向などに分割してもよい。例えば眼部領域２０１が水平方向に沿って分割された場合、１つの分割領域は、眼部領域２０１の右端の画素から左端の画素までを結ぶ水平方向の領域である。また、例えば眼部領域２０１が垂直方向に沿って分割された場合、１つの分割領域は、眼部領域２０１の上端の画素から下端の画素までを結ぶ垂直方向の領域である。また、例えば眼部領域２０１が上に凸の円弧方向に沿って分割された場合、１つの分割領域は、眼部領域２０１の右端の画素から左端の画素までを結ぶ円弧方向の領域である。このように、分割領域は、眼部領域２０１の一端から反対側の一端までを結ぶ領域である。
【００２５】
ステップＳＴ１５２において、上瞼検出部１５は、各画素の輝度値を、水平方向において隣接する画素の輝度値と比較し、輝度値の配置パターンを判定する。上瞼検出部１５は、配置パターンの判定に、第一の閾値および第二の閾値を用いる。
例えば、瞼検出装置１０が自身のキャリブレーション中にＨｏｕｇｈ変換などの一般的なアルゴリズムを用いて撮像画像から黒目を検出し、黒目の画素の輝度値に基づいて第一の閾値および第二の閾値を設定する。第一の閾値は黒目を判定するための値であり、第一の閾値未満の輝度値をもつ画素は黒目である可能性が高い。第二の閾値は白目を判定するための値であり、第二の閾値以上の輝度値をもつ画素は白目である可能性が高い。第一の閾値以上かつ第二の閾値未満の輝度値をもつ画素は、黒目および白目ではなく、化粧または影である可能性が高い。第二の閾値は、第一の閾値より大きい値である。
瞼検出装置１０がキャリブレーションを実施するタイミングは問わない。瞼検出装置１０は、例えば、車両のエンジンが始動した直後の、運転者が座席に座って顔を特定の方向に向けている数秒間に、キャリブレーションを実施する。このタイミングでキャリブレーションを実施することで、通常状態の運転者の目の情報を取得できる。
【００２６】
図６Ａおよび図６Ｂは、上瞼検出部１５による配置パターンａ，ｂの判定方法を説明する図である。配置パターンａは、第一の閾値以上かつ第二の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターンである。この配置パターンａは、眼部領域２０１内の上瞼領域を判定するためのものである。
配置パターンｂは、第一の閾値未満の輝度値をもつ画素と第二の閾値以上の輝度値をもつ画素とが連続して並ぶ配置パターン、第一の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターン、および、第二の閾値以上の輝度値をもつ画素が連続して並ぶ配置パターンである。配置パターンｂは、眼部領域２０１内の眼領域を判定するためのものである。
【００２７】
図６Ａの紙面左側において、３つ連続して並ぶ画素は、輝度値が「５３」、「５２」、「５６」であり、全ての輝度値は第一の閾値以上かつ第二の閾値未満である。そのため、上瞼検出部１５は、これら３つの画素を配置パターンａと判定する。
同様に、図６Ａの紙面右側において、３つ連続して並ぶ画素は、輝度値が「４６」、「４３」、「４９」であり、全ての輝度値は第一の閾値以上かつ第二の閾値未満である。そのため、上瞼検出部１５は、これら３つの画素を配置パターンａと判定する。
【００２８】
図６Ｂの紙面左側において、３つ連続して並ぶ画素は、輝度値が「２５４」、「２」、「１」であり、輝度値「２５４」は第二の閾値以上であり、輝度値「２」と「１」は第一の閾値未満である。そのため、上瞼検出部１５は、これら３つの画素を配置パターンｂと判定する。
図６Ｂの紙面中央において、３つ連続して並ぶ画素は、輝度値が「０」、「１」、「３」であり、全ての輝度値は第一の閾値未満である。そのため、上瞼検出部１５は、これら３つの画素を配置パターンｂと判定する。
図６Ｂの紙面右側において、３つ連続して並ぶ画素は、輝度値が「２５４」、「２５５」、「２５３」であり、全ての輝度値は第二の閾値以上である。そのため、上瞼検出部１５は、これら３つの画素を配置パターンｂと判定する。
【００２９】
なお、上瞼検出部１５は、眼部領域２０１を水平方向に分割したので水平方向の配置パターンを判定するが、水平方向以外の方向に分割した場合には分割した方向の配置パターンを判定すればよい。また、上瞼検出部１５は、水平方向に隣接して並ぶ３画素を対象にして配置パターンａ，ｂを判定したが、対象とする画素数はこれに限定されるものではなく、４画素以上に増やしてもよい。
【００３０】
ステップＳＴ１５３において、上瞼検出部１５は、眼部領域２０１内の全ての画素について輝度値の探索と配置パターンの判定とを終えた場合（ステップＳＴ１５３“ＹＥＳ”）、ステップＳＴ１５４へ進む。一方、上瞼検出部１５は、輝度値の探索と配置パターンの判定とを終えていない画素が残っている場合（ステップＳＴ１５３“ＮＯ”）、ステップＳＴ１５１へ戻る。
【００３１】
ステップＳＴ１５４において、上瞼検出部１５は、分割領域ごとに、分割領域内の配置パターンに基づいて上瞼領域と眼領域との境界を検出する。
図７Ａ、図７Ｂおよび図７Ｃは、上瞼検出部１５による上瞼領域と眼領域との境界検出方法を説明する図である。上瞼検出部１５は、各分割領域を、分割領域Ａ，Ｂ，Ｃに分類する。分割領域Ａには、図７Ａのように配置パターンａのみが存在する。分割領域Ｂには、図７Ｂのように配置パターンｂのみが存在する。分割領域Ｃには、図７Ｃのように配置パターンａと配置パターンｂとが混在する。続いて、上瞼検出部１５は、分割領域Ｃにおいて配置パターンａと配置パターンｂとの境界２０４，２０５を検出する。配置パターンａと配置パターンｂとの境界２０４，２０５は、上瞼領域と眼領域との境界である。他方、分割領域Ａ，Ｂには境界がないため、上瞼検出部１５は分割領域Ａ，Ｂの境界検出処理を行わない。
【００３２】
図８は、図５の眼部領域２０１における配置パターンａ，ｂおよび境界２３１〜２３６を示す図である。眼部領域２０１を水平方向に分割した分割領域２１１〜２２４のうちの分割領域２１５〜２１７は、配置パターンａ，ｂが混在する分割領域Ｃである。上瞼検出部１５は、分割領域２１５〜２１７から境界２３１〜２３６を検出する。
【００３３】
ステップＴ１５５において、上瞼検出部１５は、全ての分割領域について境界の検出を終えた場合（ステップＳＴ１５５“ＹＥＳ”）、ステップＳＴ１５６へ進む。一方、上瞼検出部１５は、境界の検出を終えていない分割領域が残っている場合（ステップＳＴ１５５“ＮＯ”）、ステップＳＴ１５４へ戻る。
【００３４】
ステップＳＴ１５６において、上瞼検出部１５は、分割領域ごとに検出した境界をつなげて上瞼を決定する。
図９は、図５の眼部領域２０１における上瞼２４１を示す図である。上瞼検出部１５は、図８の分割領域２１５〜２１７から検出した境界２３１〜２３６をつなげて上瞼２４１にする。その際、上瞼検出部１５は、例えば、境界２３１〜２３６の位置と、顔特徴点検出部１３が検出した目尻および目頭の位置とを用いたカーブフィッティングにより上瞼２４１のラインを決定する。ちなみに、上瞼２４１のラインより上の領域、つまり図８における分割領域Ａは、化粧または影である。先に説明した従来技術では二重線で示すライン、つまり化粧または影の上側ラインを上瞼２４２として誤検出してしまうが、実施の形態１では化粧または影の上側ラインを上瞼として誤検出することはない。
【００３５】
以上のように、実施の形態１に係る瞼検出装置１０は、撮像画像から目尻および目頭を顔特徴点として検出する顔特徴点検出部１３と、顔特徴点に基づいて撮像画像から上瞼領域および眼領域を含む眼部領域を検出する眼部領域検出部１４と、眼部領域を複数の領域に分割した分割領域ごとに、分割領域内に並ぶ画素の輝度値の配置パターンに基づいて上瞼領域と眼領域との境界を検出し、分割領域ごとに検出した上瞼領域と眼領域との境界をつなげて上瞼とする上瞼検出部１５とを備える構成である。これにより、目元に化粧または影がある人物の上瞼を精度よく検出することができる。
【００３６】
また、実施の形態１の上瞼検出部１５は、１つの分割領域において、第一の閾値および第一の閾値より値が大きい第二の閾値を用いて、第一の閾値以上かつ第二の閾値未満の輝度値をもつ画素が連続して並ぶ配置パターンａを上瞼領域とし、第一の閾値未満の輝度値をもつ画素と第二の閾値以上の輝度値をもつ画素とが連続して並ぶか、第一の閾値未満の輝度値をもつ画素が連続して並ぶか、第二の閾値以上の輝度値をもつ画素が連続して並ぶ配置パターンｂを眼領域とする構成である。これにより、上瞼を簡素かつ精度よく検出できる。
【００３７】
実施の形態２．
上記実施の形態１では、上瞼検出部１５によって検出される上瞼は１つであることが前提であった。しかし、瞼上にアイシャドウが濃淡がはっきりわかるように施されている場合、アイラインが複数施されている場合、または目元に複数の影が入る場合、実施の形態１の方式では上瞼のラインが複数検出される可能性がある。これに対し、実施の形態２では、上瞼検出部１５は、複数の上瞼を検出した場合に、複数の上瞼のうち、輝度値の変化度合が最も大きい上瞼を、真の上瞼と決定する。以下では、上瞼の輝度値の変化度合を、エッジ強度と称する。
【００３８】
図１０は、この発明の実施の形態２に係る瞼検出装置１０の構成例を示すフローチャートである。実施の形態２に係る瞼検出装置１０は、図１に示した実施の形態１の瞼検出装置１０に対してエッジ強度検出部２１が追加された構成である。図１０において図１と同一または相当する部分は、同一の符号を付し説明を省略する。
エッジ強度検出部２１は、図２Ａに示した処理回路１０１により実現される。または、エッジ強度検出部２１は、図２Ｂに示したプロセッサ１０２がメモリ１０３に格納されているプログラムを実行することにより実現される。
【００３９】
図１１は、この発明の実施の形態２に係る瞼検出装置１０の動作例を示すフローチャートである。図１１のステップＳＴ１５１〜ＳＴ１５６の処理は、図４のステップＳＴ１５１〜ＳＴ１５６の処理と同様であるため、説明を省略する。
【００４０】
ステップＳＴ２１において、上瞼検出部１５は、複数の上瞼を検出した場合（ステップＳＴ２１“ＹＥＳ”）、制御部１６を介してエッジ強度検出部２１へ上瞼の検出結果を出力し、ステップＳＴ２２へ進む。一方、上瞼検出部１５は、１つの上瞼を検出した場合（ステップＳＴ２１“ＮＯ”）、ステップＳＴ１５６へ進む。
【００４１】
ステップＳＴ２２において、エッジ強度検出部２１は、制御部１６を介して、上瞼検出部１５から上瞼の検出結果を受け取る。エッジ強度検出部２１は、複数の上瞼のそれぞれについてエッジ強度を検出する。エッジ強度検出部２１は、制御部１６を介して上瞼検出部１５へエッジ強度の検出結果を出力する。
【００４２】
ステップＳＴ２２に続くステップＳＴ１５６において、上瞼検出部１５は、制御部１６を介して、エッジ強度検出部２１からエッジ強度の検出結果を受け取る。アイシャドウもしくはアイラインなどの化粧、または目元の影によって発生するエッジに比べて、上瞼のエッジの方がエッジ強度が強くなる。そのため、上瞼検出部１５は、エッジ強度の検出結果に基づいて、複数の上瞼のうち、エッジ強度が一番強い上瞼を真の上瞼に決定する。
【００４３】
図１２Ａ、図１２Ｂおよび図１２Ｃは、この発明の実施の形態２に係る瞼検出装置１０による上瞼検出方法を説明する図である。図１２Ａに示す眼部領域２５０の画像例では、上瞼に、濃淡のはっきりしたアイシャドウが施されている。図１２Ｂに示すように、上瞼検出部１５は、眼部領域２５０から２つの上瞼２５１，２５２を検出する。エッジ強度検出部２１は、上瞼２５１とその周辺の各画素の輝度値に基づいてエッジ強度を検出する。同様に、エッジ強度検出部２１は、上瞼２５２とその周辺の各画素の輝度値に基づいてエッジ強度を検出する。上瞼２５１のエッジ強度に比べて、上瞼２５２のエッジ強度の方が強い。そのため、図１２Ｃに示すように、上瞼検出部１５は、上瞼２５２を真の上瞼に決定する。
【００４４】
以上のように、実施の形態２に係る瞼検出装置１０は、上瞼検出部１５により複数の上瞼が検出された場合、複数の上瞼それぞれの輝度値の変化度合を検出するエッジ強度検出部２１を備える構成である。上瞼検出部１５は、複数の上瞼のうち、エッジ強度検出部２１により検出された輝度値の変化度合が最も大きい上瞼を真の上瞼に決定する構成である。この構成により、濃淡のはっきりしたアイシャドウもしくは複数のアイラインといった特殊な化粧を施した人物、または目元に複数の影がある人物の上瞼をさらに精度よく検出することができる。
【００４５】
実施の形態３．
実施の形態３では、瞼検出装置１０が上瞼に加えて下瞼も検出する。また、瞼検出装置１０が開眼度を算出する。
【００４６】
図１３は、この発明の実施の形態３に係る瞼検出装置１０の構成例を示すブロック図である。実施の形態３に係る瞼検出装置１０は、図１に示した実施の形態１の瞼検出装置１０に対して上下瞼検出部３１および開眼度算出部３２が追加された構成である。図１３において図１と同一または相当する部分は、同一の符号を付し説明を省略する。
上下瞼検出部３１および開眼度算出部３２は、図２Ａに示した処理回路１０１により実現される。または、上下瞼検出部３１および開眼度算出部３２は、図２Ｂに示したプロセッサ１０２がメモリ１０３に格納されているプログラムを実行することにより実現される。
【００４７】
図１４は、この発明の実施の形態３に係る瞼検出装置１０の動作例を示すフローチャートである。図１４のステップＳＴ１１〜ＳＴ１５の処理は、図３のステップＳＴ１１〜ＳＴ１５の処理と同様であるため、説明を省略する。
【００４８】
ステップＳＴ３１において、上下瞼検出部３１は、顔特徴点検出部１３が検出した顔特徴点検出結果と、眼部領域検出部１４が検出した眼部領域の画像とを、制御部１６から受け取る。上下瞼検出部３１は、顔特徴点検出結果の目尻および目頭の位置に基づいて、眼部領域から仮の上瞼と下瞼を検出する。上下瞼検出部３１は、仮の上瞼と下瞼の検出結果を制御部１６へ出力する。
【００４９】
上下瞼検出部３１は、例えば、ＳｏｂｅｌフィルタまたはＬａｐｌａｃｉａｎフィルタといった一般的な画像処理フィルタを用いて、眼部領域からエッジを検出する。続いて、上下瞼検出部３１は、目尻および目頭の位置と、エッジ検出の結果とを用いて、曲線を検出する。検出された曲線２本が、仮の上瞼と下瞼のラインとなる。曲線検出には、Ｈｏｕｇｈ変換などの一般的なアルゴリズムを用いる。
【００５０】
ステップＳＴ３２において、開眼度算出部３２は、上下瞼検出部３１による仮の上瞼と下瞼の検出結果を、制御部１６から受け取る。開眼度算出部３２は、仮の上瞼と下瞼とが一致する場合（ステップＳＴ３２“ＹＥＳ”）、ステップＳＴ３３へ進む。一方、開眼度算出部３２は、仮の上瞼と下瞼とが一致しない場合（ステップＳＴ３２“ＮＯ”）、その旨を制御部１６に通知する。制御部１６は、その通知を受け取るとステップＳＴ１５およびステップＳＴ３４へ進む。
【００５１】
ステップＳＴ３３において、開眼度算出部３２は、上下瞼検出部３１が検出した仮の上瞼と下瞼とが一致しているため、運転者が閉眼していると判定する。開眼度算出部３２は、開眼度を０％と算出する。
ちなみに、仮の上瞼と下瞼とが一致している場合、眼部領域内に図７Ａで示した分割領域Ａのみが存在する。
【００５２】
ステップＳＴ１５に続くステップＳＴ３４において、開眼度算出部３２は、上下瞼検出部３１が検出した仮の上瞼と下瞼とが一致していないため、運転者が開眼していると判定し、開眼度を算出する。開眼度算出時、開眼度算出部３２は、運転者の目元に濃い化粧が施されている場合または影がある場合を想定して、ステップＳＴ１５で検出された上瞼を用いる。
【００５３】
図１５は、上下瞼検出部３１による上下瞼検出方法を説明する図である。図１５に示す眼部領域２６０の画像例では、真の上瞼２６３および下瞼２６２が検出対象である。しかし、真の上瞼２６３より上に化粧または影の領域がある。そのため、上下瞼検出部３１がエッジ検出と曲線検出とを実施した場合、化粧または影の領域のエッジを仮の上瞼２６１として誤検出してしまう。そこで、開眼度算出部３２は、上下瞼検出部３１が検出した仮の上瞼２６１ではなく、上瞼検出部１５が検出した真の上瞼２６３を用いて開眼度を算出する。
【００５４】
例えば、開眼度算出部３２は、瞼検出装置１０が自身のキャリブレーション中に取得した通常状態の運転者の目の情報を用いて、通常状態の眼領域の縦方向の距離を算出し、この距離を開眼度１００％の基準距離とする。
開眼度算出部３２は、上下瞼検出部３１による下瞼の検出結果と、上瞼検出部１５による上瞼の検出結果とを、制御部１６を介して受け取る。開眼度算出部３２は、下瞼と上瞼との間の距離を算出し、算出した距離と基準距離とを比較して開眼度を算出する。ステップＳＴ３４では、開眼度算出部３２が１％〜１００％の開眼度を算出するものとする。
ちなみに、開眼度が１％〜９９％である場合、眼部領域内に図７Ａ、図７Ｂおよび図７Ｃで示した分割領域Ａ，Ｂ，Ｃのすべてが存在する。他方、開眼度が１００％である場合、眼部領域内に図７Ｂで示した分割領域Ｂのみが存在する。
【００５５】
図１６Ａ、図１６Ｂおよび図１６Ｃは、開眼度算出部３２による開眼度算出方法を説明する図である。図１６Ａのように、眼部領域２６０に図７Ａ、図７Ｂおよび図７Ｃで示した分割領域Ａ，Ｂ，Ｃのすべてが存在する場合、上瞼検出部１５は、分割領域Ｂの配置パターンａ，ｂの境界を真の上瞼２６３として検出する。開眼度算出部３２は、基準距離Ｈと、真の上瞼２６３および下瞼２６２間の距離とに基づいて開眼度を算出する。図１６Ａでは開眼度は６５％である。
図１６Ｂのように、基準距離Ｈと、真の上瞼２６３および下瞼２６２間の距離とが等しい場合、開眼度算出部３２は、開眼度を１００％と算出する。なお、開眼度算出部３２は、基準距離Ｈと真の上瞼２６３および下瞼２６２間の距離とが等しい場合に開眼度を１００％と算出する代わりに、眼部領域２６０に分割領域Ｂのみが存在する場合に開眼度を１００％と算出してもよい。
図１６Ｃのように、仮の上瞼２６１と下瞼２６２とが一致する場合、開眼度算出部３２は、開眼度を０％と算出する。なお、開眼度算出部３２は、仮の上瞼２６１と下瞼２６２とが一致する場合に開眼度を０％と算出する代わりに、眼部領域２６０に分割領域Ａのみが存在する場合に開眼度を０％と算出してもよい。
【００５６】
以上のように、実施の形態３に係る瞼検出装置１０は、顔特徴点に基づいて眼部領域から仮の上瞼と下瞼とを検出する上下瞼検出部３１を備える構成である。上瞼検出部１５は、上下瞼検出部３１により検出された仮の上瞼と下瞼とが一致しない場合、上瞼検出部１５が検出した上瞼を真の上瞼に決定する構成である。これにより、通常の目元の人物は勿論、目元に化粧または影がある人物についても、上瞼を精度よく検出することができる。
【００５７】
また、実施の形態３に係る瞼検出装置１０は、上瞼検出部１５により検出された真の上瞼、および上下瞼検出部３１により検出された下瞼を用いて開眼度を算出する開眼度算出部３２を備える構成である。これにより、目元に化粧または影がある人物の上瞼を精度よく検出できるので、当該人物の開眼度も精度よく算出することができる。
【００５８】
なお、実施の形態３に係る瞼検出装置１０は、実施の形態２におけるエッジ強度検出部２１を備えてもよい。この構成により、通常の目元の人物は勿論、濃淡のはっきりしたアイシャドウもしくは複数のアイラインといった特殊な化粧を施した人物、または目元に複数の影がある人物についても、上瞼を精度よく検出することができる。また、当該人物の開眼度も精度よく算出することができる。
【００５９】
実施の形態４．
実施の形態４では、開眼度の算出結果を用いて居眠りを判定する。
【００６０】
図１７は、この発明の実施の形態４に係る居眠り判定装置４０の構成例を示すブロック図である。図１７に示す居眠り判定装置４０は、実施の形態３に係る瞼検出装置１０と、居眠り判定部４１とを備える。
居眠り判定部４１は、図２Ａに示した処理回路１０１により実現される。または、居眠り判定部４１は、図２Ｂに示したプロセッサ１０２がメモリ１０３に格納されているプログラムを実行することにより実現される。
【００６１】
居眠り判定部４１は、実施の形態３に係る瞼検出装置１０の開眼度算出部３２から、開眼度算出結果を受け取る。居眠り判定部４１は、開眼度算出結果に基づいて運転者が居眠りしているか否かを判定する。居眠り判定部４１は、例えば、閉眼状態が予め定められた期間（例えば、数秒）連続した場合に運転者が居眠りしていると判定する。
【００６２】
以上のように、実施の形態４に係る居眠り判定装置４０は、実施の形態３の瞼検出装置１０と、瞼検出装置１０により算出された開眼度に基づいて居眠り状態を判定する居眠り判定部４１とを備える構成である。この構成により、目元に化粧または影がある人物の上瞼および開眼度を精度よく検出できるので、当該人物の居眠りを精度よく判定することができる。
【００６３】
上記実施の形態１〜４では、撮像部１、瞼検出装置１０および居眠り判定装置４０が車両に搭載される例を示したが、これに限定されるものではなく、例えば撮像部１のみ車両に搭載され、瞼検出装置１０および居眠り判定装置４０が車両外に設けられてもよい。その場合、例えば、車内の撮像部１と車外の瞼検出装置１０および居眠り判定装置４０とは無線通信により情報を授受可能である。瞼検出装置１０および居眠り判定装置４０は、撮像部１が撮像した画像を無線通信により受信し、上瞼を検出したり、開眼度を算出したり、居眠りを判定したりし、その結果を無線通信によりドライバモニタリング装置などの車載装置へ送信する。
【００６４】
なお、この発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
【００６５】
また、この発明の各実施の形態において説明した瞼検出装置１０および居眠り判定装置４０が対象とする人物は、車両の運転者に限定されるものではなく、鉄道、船舶または航空機等を含む移動体の運転者であってもよい。瞼検出装置１０および居眠り判定装置４０をドライバモニタリング装置に適用することで、性別および人種といった運転者の多彩なユースケースに対してドライバモニタリング装置の正常な動作が期待できる。
【産業上の利用可能性】
【００６６】
この発明に係る瞼検出装置および居眠り判定装置は、上瞼を精度よく検出するようにしたので、運転者の状態を監視するドライバモニタリング装置などに用いるのに適している。
【符号の説明】
【００６７】
１  撮像部、１０  瞼検出装置、１１  画像取得部、１２  顔検出部、１３  顔特徴点検出部、１４  眼部領域検出部、１５  上瞼検出部、１６  制御部、２１  エッジ強度検出部、３１  上下瞼検出部、３２  開眼度算出部、４０  居眠り判定装置、４１  居眠り判定部、１００  カメラ、１０１  処理回路、１０２  プロセッサ、１０３  メモリ、２０１，２５０，２６０  眼部領域、２０２，２０３  輝度値探索開始位置、２０４，２０５，２３１〜２３６  境界、２１１〜２２４  分割領域、２４１，２５１，２５２  上瞼、２４２  誤検出された上瞼、２６１  仮の上瞼、２６２  下瞼、２６３  真の上瞼。
【図１】
0006482746.tif 000002
【図２】
0006482746.tif 000003
【図３】
0006482746.tif 000004
【図４】
0006482746.tif 000005
【図５】
0006482746.tif 000006
【図６】
0006482746.tif 000007
【図７】
0006482746.tif 000008
【図８】
0006482746.tif 000009
【図９】
0006482746.tif 000010
【図１０】
0006482746.tif 000011
【図１１】
0006482746.tif 000012
【図１２】
0006482746.tif 000013
【図１３】
0006482746.tif 000014
【図１４】
0006482746.tif 000015
【図１５】
0006482746.tif 000016
【図１６】
0006482746.tif 000017
【図１７】
0006482746.tif 000018