(57)【要約】【課題】ドライバの状態を正確に判定する。【解決手段】ドライバがイグニッションスイッチをオンにすると、ドライバに対して眼の開閉動作が指示される（ステップＳ２０１）。この指示に基づいて、ドライバが眼の開閉動作を行った場合には、撮影装置から出力される画像Ｐから生成される差分画像には、ドライバの眼の部分にのみ画像が現れる。このため、画像からドライバの顔画像を特定するためのテンプレートや、顔画像に写る眼を特定するためのテンプレートを、精度よく設定することができる。したがって、画像に写るドライバの顔や眼を精度よく検出することができ、結果的にドライバの覚醒度を正確に判定することができる。【選択図】図４
2014071519.tif 000002
【特許請求の範囲】
【請求項１】
ドライバの顔の画像を撮影する撮影手段と、
前記ドライバが所定の動作をしているときに、前記撮影手段に撮影された前記画像に基づいて、前記ドライバの顔の基本情報を予め取得する基本情報取得手段と、
前記基本情報取得手段によって前記基本情報が取得された後に、前記撮影手段によって撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する判定手段と、
を備える状態判定装置。
【請求項２】
前記所定の動作は眼の開閉動作である請求項１に記載の状態判定装置。
【請求項３】
前記ドライバに前記所定の動作の実行を指示する指示手段を備える請求項１又は２に記載の状態判定装置。
【請求項４】
前記指示手段は、前記ドライバが眼を閉じるタイミングと、眼を開くタイミングを指示する請求項３に記載の状態判定装置。
【請求項５】
前記判定手段は、
前記基本情報から求めた前記ドライバが開眼したときの眼の開度と、前記撮影手段によって撮影された画像から求めた前記ドライバの眼の開度と、を比較することにより前記ドライバの状態を判定する請求項３又は４に記載の状態判定装置。
【請求項６】
前記判定手段は、
前記ドライバが開眼したときの眼の開度から閾値を設定し、
前記撮影手段によって撮影された画像から求めた前記ドライバの眼の開度と、前記閾値とを比較することにより前記ドライバの状態を判定する請求項５に記載の状態判定装置。
【請求項７】
前記所定の動作は口の開閉動作である請求項１又は２に記載の状態判定装置。
【請求項８】
前記基本情報から、前記ドライバの顔のテンプレートを生成するテンプレート生成手段と、
前記テンプレートを用いて、前記撮影手段によって撮影された前記画像に写る前記ドライバの顔を検出する顔画像検出手段と、
を備える請求項１乃至７のいずれか一項に記載の状態判定装置。
【請求項９】
前記基本情報を取得した場合に、前記基本情報の取得を前記ドライバに報知する報知手段を備える請求項１乃至８のいずれか一項に記載の状態判定装置。
【請求項１０】
前記ドライバの状態が運転に適していないと判定された場合に、前記ドライバに警報を発令する警報発令手段を備える請求項１乃至９のいずれか一項に記載の状態判定装置。
【請求項１１】
請求項１乃至１０のいずれか一項に記載の状態判定装置と、
前記状態判定装置によって、前記ドライバの状態が運転に適していないと判定された場合に、前記ドライバが運転する車両を自動制御する制御手段と、
を備える運転支援システム。
【請求項１２】
ドライバが所定の動作をしているときに撮影された前記ドライバの画像に基づいて、前記ドライバの顔の基本情報を予め取得する工程と、
前記基本情報が取得された後に撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する工程と、
を含む状態判定方法。
【請求項１３】
コンピュータに、
ドライバが所定の動作をしているときに撮影された前記ドライバの画像に基づいて、前記ドライバの顔の基本情報を予め取得する手順と、
前記基本情報が取得された後に撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、状態判定装置、運転支援システム、状態判定方法及びプログラムに関し、更に詳しくは、車両を運転するドライバの状態を判定する状態判定装置、ドライバの運転を支援する運転支援システム、車両を運転するドライバの状態を判定するための状態判定方法及びプログラムに関する。
【背景技術】
【０００２】
近年、交通事故の死者数は減少傾向にあるものの、事故の発生件数自体は依然として高い水準で推移している。事故の原因は様々であるが、ドライバが漫然な状態で車両の運転（漫然運転）を行うことも、事故を誘発する原因の１つである。漫然な状態は、運転中の会話や、携帯電話の使用など、ドライバが運転以外の行動を行うことにより、運転に対する注意力が散漫になる状態と、疲労や眠気などによってドライバの注意力が低下する状態に概ね２分される。
【０００３】
疲労や眠気を原因とする漫然運転については、ドライバ自身での予防が困難である。そこで、居眠り等を要因とする覚醒度低下を検出する装置が種々提案されている（例えば特許文献１及び２参照）。
【０００４】
特許文献１に開示された装置は、ドライバの画像から予め基準画像を取得する。そして、この基準画像上の特徴点と、運転中に逐次撮影される画像上の特徴点との変化量を比較した結果に基づいて、ドライバの状態を判定する。この装置では、ドライバごとにカスタマイズされた基準画像に基づいて、各ドライバの状態が判定されるので、正確にドライバの状態を判定することができる。
【０００５】
特許文献２に開示された装置は、車両を運転するドライバの顔画像から、ドライバの上瞼と下瞼の距離を計測する。そして、計測した距離が閾値以下である場合には、ドライバが眼を閉じていると判定する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１２８９６６号公報
【特許文献２】特開２００９−１６９７４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に開示された装置は、ドライバの状態を、ドライバごとに正確に判定することができる。しかしながら、ドライバが漫然とした状態のときに撮影された画像が基準画像になったときや、ドライバが眼鏡をかけていたり、マスクを着用しているときには、基準画像から正確に特徴点を検出することができなくなることが考えられる。この場合には、ドライバの状態を正確に判定することができなくなる。
【０００８】
特許文献２に開示された装置は、上瞼と下瞼の距離と閾値を、単純に比較するだけなので、眼の形状や大きさの個人差により、判定結果にばらつきが生じるおそれがある。また、ドライバが眼鏡をかけている場合には、瞼のエッジを検出するのが困難になる。この場合には、誤った判定がなされるおそれがある。
【０００９】
本発明は、上述の事情の下になされたもので、ドライバの状態を正確に判定することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の第１の観点に係る状態判定装置は、
ドライバの顔の画像を撮影する撮影手段と、
前記ドライバが所定の動作をしているときに、前記撮影手段に撮影された前記画像に基づいて、前記ドライバの顔の基本情報を予め取得する基本情報取得手段と、
前記基本情報取得手段によって前記基本情報が取得された後に、前記撮影手段によって撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する判定手段と、
を備える。
【００１１】
本発明の第２の観点に係る運転支援システムは、
本発明の状態判定装置と、
前記状態判定装置によって、前記ドライバの状態が運転に適していないと判定された場合に、前記ドライバが運転する車両を自動制御する制御手段と、
を備える。
【００１２】
本発明の第３の観点に係る状態判定方法は、
ドライバが所定の動作をしているときに撮影された前記ドライバの画像に基づいて、前記ドライバの顔の基本情報を予め取得する工程と、
前記基本情報が取得された後に撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する工程と、
を含む。
【００１３】
本発明の第４の観点に係るプログラムは、
コンピュータに、
ドライバが所定の動作をしているときに撮影された前記ドライバの画像に基づいて、前記ドライバの顔の基本情報を予め取得する手順と、
前記基本情報が取得された後に撮影された画像から取得した前記ドライバの顔の情報と前記基本情報とに基づいて、前記ドライバの状態を判定する手順と、
を実行させる。
【発明の効果】
【００１４】
本発明によれば、運転前にドライバが所定の動作を行っているときに撮影された画像に基づいて、ドライバの状態を判定するために用いられる基本情報が取得される。このため、取得された情報とドライバの状態のミスマッチがなくなり、ドライバの状態を正確に判定することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係る運転支援システムのブロック図である。
【図２】撮影装置の配置を示す図である。
【図３】撮影装置によって撮影される画像を示す図である。
【図４】ＣＰＵによって実行される一連処理を示すフローチャートである。
【図５】基本情報を模式的に示す図である。
【図６】差分画像を示す図である。
【図７】眼領域を示す図である。
【図８】眼の検出に用いられるテンプレートを示す図である。
【図９】顔画像の検出に用いられるテンプレートを設定するための処理を説明するための図である。
【図１０】顔画像の検出に用いられるテンプレートを示す図である。
【図１１】状態判定処理のサブルーチンで実行される一連の処理を示すフローチャートである。
【図１２】顔画像を抽出するための手順を説明するための図である。
【図１３】眼の位置を特定するための手順を説明するための図である。
【図１４】眼の開度と比較するための閾値を設定する手順を説明するための図である。
【図１５】運転支援システムの変形例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態を、図面を参照しつつ説明する。図１は本実施形態に係る運転支援システム１０のブロック図である。運転支援システム１０は、車両を運転するドライバの覚醒度が低下した場合に、当該車両を安全に停止させるための装置である。この運転支援システム１０は、図１に示されるように、制御装置２０、撮影装置３１、音声出力装置３２、制動装置３３を有している。
【００１７】
撮影装置３１は、ＣＣＤ（Charge Coupled Device）カメラを有している。この撮影装置３１は、図２に示されるように、例えばハンドルコラムに設置されている。図３は、撮影装置３１によって撮影された画像Ｐを示す図である。図３を参照するとわかるように、撮影装置３１は、シート６１に着座するドライバ６０の顔が、視野中心に位置するように、視野角及び姿勢が調整されている。この撮影装置３１は、ドライバ６０の顔を順次撮影し、撮影により得た画像Ｐについての画像情報ＰＤを順次出力する。
【００１８】
図１に戻り、音声出力装置３２は、制御装置２０からの指示に基づいて、ドライバ６０に対して音声を出力する。この音声出力装置３２は、音声を出力するための増幅器やスピーカを有している。
【００１９】
制動装置３３は、ドライバ６０が運転する車両を停止させるための装置である。この制動装置３３は、制御装置２０の指示に基づいて、車両に装備されたブレーキを動作させて当該車両を減速し停止させる。
【００２０】
制御装置２０は、ＣＰＵ（Central Processing Unit）２１、主記憶部２２、補助記憶部２３、表示部２４、入力部２５、及びインタフェース部２６を有するコンピュータである。
【００２１】
ＣＰＵ２１は、補助記憶部２３に記憶されているプログラムに従って、後述する処理を実行する。
【００２２】
主記憶部２２は、ＲＡＭ（Random Access Memory）等を有している。主記憶部２２は、ＣＰＵ２１の作業領域として用いられる。
【００２３】
補助記憶部２３は、ＲＯＭ（Read Only Memory）、磁気ディスク、半導体メモリ等の不揮発性メモリを有している。補助記憶部２３は、ＣＰＵ２１が実行するプログラム、及び各種パラメータなどを記憶している。また、撮影装置３１から出力される画像情報ＰＤ、及びＣＰＵ２１による処理結果などを順次記憶する。
【００２４】
表示部２４は、ＬＣＤ（Liquid Crystal Display）などの表示ユニットを有している。表示部２４は、ＣＰＵ２１の処理結果等を表示する。
【００２５】
入力部２５は、入力キーや、タッチパネル等のポインティングデバイスを有している。オペレータの指示は、入力部２５を介して入力され、システムバス２７を経由してＣＰＵ２１に通知される。
【００２６】
インタフェース部２６は、シリアルインタフェースや、パラレルインタフェースを有している。撮影装置３１、音声出力装置３２、制動装置３３は、インタフェース部２６を介して、システムバス２７に接続される。
【００２７】
上述のように構成された制御装置２０は、ドライバ６０を監視し、ドライバ６０の覚醒度が低下していると判定した場合には、当該ドライバ６０が運転する車両を停止させる。以下、本実施形態に係る運転支援システム１０の動作について、図面を参照しつつ説明する。
【００２８】
図４のフローチャートは、ＣＰＵ２１によって実行されるプログラムの一連の処理アルゴリズムに対応している。図４のフローチャートに示される一連の処理は、例えば車両のイグニッションスイッチがオンになると実行される。
【００２９】
まず、最初のステップＳ２０１では、ＣＰＵ２１は、外部から車両に乗車し、シート６１に着座したドライバ６０に、眼の開閉動作を指示する。眼の開閉動作の指示は、ドライバ６０が運転を開始する前の、車両が停止しているときに発令される。
【００３０】
ＣＰＵ２１は、音声出力装置３２を介して、ドライバ６０に眼を開眼させるための開眼指示と、眼を閉眼させるための閉眼指示を出力する。例えば、開眼指示は、音声出力装置３２から、「ＯＰＥＮ」や、「眼を開いて下さい」という内容の音声を出力することで実現される。また、閉眼指示は、音声出力装置３２から、「ＣＬＯＳＥ」や、「眼を閉じて下さい」という内容の音声を出力することで実現される。上述の開眼指示及び閉眼指示は、例えば、約１秒間隔で２〜３回ずつ出力される。
【００３１】
ＣＰＵ２１は、ドライバ６０に眼の開閉動作を指示している間に、撮影装置３１から出力される画像Ｐに関する画像情報ＰＤを、当該画像Ｐが撮影された時刻ｔと関連づける。そして、基本情報（ＰＤ，ｔ）として、主記憶部２２に順次保存する。
【００３２】
図５は、基本情報（ＰＤ，ｔ）を模式的に示す図である。上述したＣＰＵ２１の動作により、図５に示されるように、基本情報（ＰｄＮ，ｔＮ）が時系列的に保存される。
【００３３】
次のステップＳ２０２では、ＣＰＵ２１は、画像Ｐに対して、ドライバ６０の眼が写る眼領域ＥＡ１，ＥＡ２の特定を試みる。
【００３４】
具体的には、ＣＰＵ２１は、まず、基本情報（ＰＤＭ，ｔＭ）を構成する画像情報ＰＤＭと基本情報（ＰＤＭ＋１，ｔＭ＋１）を構成する画像情報ＰＤＭ＋１から、画像ＰＭと画像ＰＭ＋１との差分画像ＤＩＦＭを順次生成する。なお、Ｍは１からＮ−１までの整数である。
【００３５】
差分画像ＤＩＦＭは、画像ＰＭと同じサイズである。そして、差分画像ＤＩＦＭの画素それぞれの輝度は、相互に対応する画像ＰＭの画素の輝度と、画像ＰＭ＋１の画素の輝度との差分に等しい。したがって、差分画像ＤＩＦＭには、画像ＰＭと画像ＰＭ＋１とを比較したときに、相互に相違している部分が現れる。
【００３６】
例えば、図６は、基本情報（ＰＤ１，ｔ１）と基本情報（ＰＤ２，ｔ２）から生成される差分画像ＤＩＦ１を模式的に示す図である。ドライバ６０が、眼の開閉動作を実行すると、基本的には、ドライバ６０の瞼や眼球のみが動く。このため、図６に示されるように、差分画像ＤＩＦ１には、主として瞼や眼球など、眼についての画像のみが現れる。
【００３７】
そこで、ＣＰＵ２１は、差分画像ＤＩＦ１に現れる画像を検出する。そして、これらの画像を含む、最も小さい矩形状の領域Ａ１，Ａ２を特定する。この領域Ａ１，Ａ２は、例えば中心の座標と、縦と横の大きさによって規定される。
【００３８】
ＣＰＵ２１は、差分画像ＤＩＦ１上で領域Ａ１，Ａ２を特定すると、図７に示されるように、領域Ａ１，Ａ２に対応する画像Ｐ１上の領域をドライバ６０の眼が写る眼領域ＥＡ１，ＥＡ２と特定する。ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２を特定すると、次のステップＳ２０３へ移行する。
【００３９】
なお、ステップＳ２０１で、眼の開閉動作が指示されたにもかかわらず、ドライバ６０が眼の開閉動作を行わなかったときには、差分画像ＤＩＦ上に、領域Ａ１，Ａ２を特定するのに十分な画像が現れないことがある。この場合、ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２を特定することなく、次のステップＳ２０３へ移行する。
【００４０】
ステップＳ２０３では、ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２の特定が完了したか否かを判定する。ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２を特定できなかったと判定した場合には（ステップＳ２０３：Ｎｏ）、ステップＳ２０１へ戻る。そして、ステップＳ２０３での判定が肯定されるまで、ステップＳ２０１〜Ｓ２０３の処理を繰り返し実行する。
【００４１】
一方、ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２を特定できたと判定した場合には（ステップＳ２０３：Ｙｅｓ）、ステップＳ２０４へ移行する。
【００４２】
ステップＳ２０４では、ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２の特定が完了したことを、ドライバ６０に報知する。この報知は、ドライバ６０に対して、音声を出力することにより行われる。
【００４３】
次のステップＳ２０５では、ＣＰＵ２１は、ドライバ６０の眼のテンプレートを作成する。ＣＰＵ２１は、画像Ｐ１から、図７に示される眼領域ＥＡ１，ＥＡ２に含まれる画像を抽出する。そして、図８に示されるように、抽出した画像を、眼を検出するのに用いるテンプレートＥＴ１，ＥＴ２に設定する。以降、画像ＰＭからドライバ６０の眼を検出する際には、テンプレートＥＴ１，ＥＴ２が用いられる。
【００４４】
次のステップＳ２０６では、ＣＰＵ２１は、画像Ｐに対して、ドライバ６０の顔が写る顔領域ＦＡを特定する。
【００４５】
具体的には、ＣＰＵ２１は、画像Ｐに対して、ソーベルフィルタを用いた画像処理を実行し、画像Ｐに含まれるエッジの検出を試みる。次に、検出したエッジの中から、ドライバ６０の顔の輪郭を示すエッジを特定する。
【００４６】
顔の輪郭を示すエッジの特定には、先に特定した眼領域ＥＡ１，ＥＡ２の位置を考慮する。例えば、顔の輪郭と眼の位置関係は、個人間で著しく異なるものではない。したがって、ドライバ６０の眼の位置がわかっていれば、画像Ｐからある程度正確にドライバ６０の顔領域を特定することができる。
【００４７】
そこで、ＣＰＵ２１は、眼領域ＥＡ１，ＥＡ２の周囲に位置するエッジのうち、眼領域ＥＡ１，ＥＡ２を囲むにように配置されたエッジを顔の輪郭を示すエッジとして抽出する。これにより、一例として図９に示されるように、ドライバ６０の顔の輪郭に一致するエッジＥＧ１〜ＥＧ３が抽出される。
【００４８】
ＣＰＵ２１は、エッジＥＧ１〜ＥＧ３を抽出すると、これらのエッジＥＧ１〜ＥＧ３からドライバ６０の顔の輪郭を予測して、図９に示されるように、ドライバ６０の顔を含む最も小さい矩形状の領域を顔領域ＦＡとして特定する。
【００４９】
次のステップＳ２０７では、ＣＰＵ２１は、ドライバ６０の顔のテンプレートを作成する。ＣＰＵ２１は、画像Ｐ１から、顔領域ＦＡに含まれる画像を抽出する。そして、図１０に示されるように、抽出した画像を、ドライバ６０の顔画像を検出するのに用いるテンプレートＦＴに設定する。以降、画像ＰＭからドライバ６０の顔画像を検出する際には、テンプレートＦＴが用いられる。
【００５０】
次のステップＳ２０８では、ＣＰＵ２１は、車両を運転するドライバ６０の覚醒度を判定するための判定処理を実行する。この判定処理は、図１１に示されるサブルーチン３００を実行することにより実現する。
【００５１】
図１１に示されるように、最初のステップＳ３０１では、ＣＰＵ２１は、内蔵するカウンタのカウンタ値ｉを零にリセットする。
【００５２】
次のステップＳ３０２では、ＣＰＵ２１は、撮影装置３１から出力される最新の画像Ｐについての画像情報ＰＤを取得する。
【００５３】
次のステップＳ３０３では、ＣＰＵ２１は、ステップＳ２０７で作成したテンプレートＦＴを用いたマッチング処理を行い、画像Ｐからドライバ６０の顔画像を抽出する。具体的には、ＣＰＵ２１は、テンプレートＦＴを画像Ｐ上で移動させながら、相関値を算出する。そして、相関値が最大となったときに、テンプレートＦＴと重なる部分を、ドライバ６０の顔画像ＦＰとして抽出する。相関値が最大となる場合には、図１２に示されるように、テンプレートＦＴは、画像Ｐに写るドライバ６０の顔と重なる。したがって、ステップＳ３０３の処理により、画像Ｐからドライバ６０の顔画像ＦＰを精度よく抽出することができる。
【００５４】
次のステップＳ３０４では、ＣＰＵ２１は、ステップＳ２０５で作成したテンプレートＥＴ１，ＥＴ２を用いたマッチング処理を行うことで、顔画像ＦＰからドライバ６０の眼を特定する。具体的には、ＣＰＵ２１は、テンプレートＥＴ１，ＥＴ２を顔画像ＦＰ上で移動させながら、相関値を算出する。そして、相関値が最大となったときに、図１３に示されるように、テンプレートＥＴ１，ＥＴ２と重なる領域ＤＡ１，ＤＡ２にドライバ６０の眼が位置すると特定する。
【００５５】
次のステップＳ３０５では、ＣＰＵ２１は、顔画像ＦＰから瞼のエッジを特定する。具体的には、ＣＰＵ２１は、顔画像ＦＰに対して、例えばソーベルフィルタを用いた画像処理を実行し、画像に含まれるエッジを抽出する。次に、ＣＰＵ２１は、抽出したエッジの中から、ステップＳ３０４で検出した領域ＤＡ１に含まれ、横方向に長いエッジを左眼の上瞼及び下瞼のエッジとして特定する。また、ＣＰＵ２１は、抽出したエッジの中から、ステップＳ３０４で検出した領域ＤＡ２に含まれ、横方向に長いエッジを右眼の上瞼及び下瞼のエッジとして特定する。上述の上瞼及び下瞼のエッジを検出する手法については、種々の公知技術が知られている。
【００５６】
次のステップＳ３０６では、ＣＰＵ２１は、左右の眼の上瞼から下瞼までの距離を、ドライバ６０の眼の開度として算出する。例えば、ＣＰＵ２１は、上瞼の重心と下瞼の重心との距離や、上瞼の中心と下瞼の中心との距離を開度として算出する。
【００５７】
次のステップＳ３０７では、ＣＰＵ２１は、ステップＳ３０６で算出した開度と比較するための閾値Ｔｈを算出する。例えば、図５を参照するとわかるように、眼の開閉動作の指示に基づいて、ドライバ６０が眼の開閉動作を行った場合には、眼の開度は図１４のグラフに示されるように、概ね周期的に変化する。そこで、ＣＰＵ２１は、図５に示される基本情報（ＰＤ，ｔ）に基づいて、図４に示されるグラフを生成し、眼の開度の最大値を求める。そして、求めた最大値に係数（例えば０．７）を乗じた値を閾値Ｔｈとして設定する。
【００５８】
次のステップＳ３０８では、ステップＳ３０６で算出した開度と、ステップＳ３０７で算出した閾値Ｔｈとを比較する。そして、ドライバ６０の眼の開度が閾値よりも大きい場合には（ステップＳ３０８：Ｙｅｓ）、ＣＰＵ２１は、ドライバ６０は開眼しており、覚醒度が比較的高いと判定し、ステップＳ３０１へ移行する。以降、ＣＰＵ２１は、ステップＳ３０８での判定が否定されるまで、ステップＳ３０１〜Ｓ３０８の処理を繰り返し実行する。
【００５９】
一方、ドライバ６０の眼の開度が、閾値以下である場合には（ステップＳ３０８：Ｎ０）、ＣＰＵ２１は、ドライバ６０が閉眼しており、覚醒度が比較的低いと判定して、ステップＳ３０９へ移行する。
【００６０】
ステップＳ３０９では、ＣＰＵ２１は、カウンタ値ｉをインクリメントする。
【００６１】
次のステップＳ３１０では、ＣＰＵ２１は、ドライバ６０の覚醒度が低下しているか否かを判定する。この判定は、ドライバ６０の眼の開度が閾値Ｔｈ以下になった回数（カウンタ値ｉ）が、基準値を超えたか否かにより行う。
【００６２】
カウンタ値ｉが基準値以上でない場合は（ステップＳ３１０：Ｎｏ）、ＣＰＵ２１は、ドライバ６０の覚醒度が低下していないと判定し、ステップＳ３０２へ戻る。以降ステップＳ３０２〜Ｓ３１０の処理を繰り返し実行する。一方、カウンタ値ｉが基準値以上である場合は（ステップＳ３１０：Ｙｅｓ）、ＣＰＵ２１は、ドライバ６０の覚醒度が低下していると判定して、サブルーチン３００を終了する。そして、ステップＳ２０９へ移行する。
【００６３】
ステップＳ２０９では、ＣＰＵ２１は、音声出力装置３２に対して、警報発令指示を出力する。これにより、音声出力装置３２から、ドライバ６０に対して警報音が出力される。
【００６４】
次のステップＳ２１０では、ＣＰＵ２１は、制動装置３３へ、停止指示を出力する。これにより、ドライバ６０が運転する車両のブレーキが動作し、車両が停止する。ＣＰＵ２１は、ステップＳ２１０の処理を終了すると、一連の処理を終了する。
【００６５】
以上説明したように、本実施形態では、ドライバ６０が、眼の開閉動作を行ったときに取得された情報に基づいて、当該ドライバ６０の顔や、眼を特定するための、テンプレートＦＴ，ＥＴ１，ＥＴ２が設定される。このため、テンプレートＦＴ，ＥＴ１，ＥＴ２が、ドライバ６０が横を向いていたときに撮影された画像や、覚醒度が低下しているときの画像に基づいて、生成されることがなくなる。つまり、テンプレートＦＴ，ＥＴ１，ＥＴ２を、ドライバ６０が眼を通常の状態に開眼しているときの画像Ｐから生成することができる。したがって、ドライバ６０の顔等を正確に検出することが可能となり、結果的にドライバ６０の覚醒度を正確に判定することができる。
【００６６】
本実施形態では、ドライバ６０が車両のイグニッションスイッチをオンにすると、当該車両に乗り込んだドライバ６０に対して、眼の開閉動作が指示される。そして、ドライバ６０が、眼の開閉動作を行ったときに取得された情報に基づいて、当該ドライバ６０の顔や、眼を特定するための、テンプレートＦＴ，ＥＴ１，ＥＴ２が設定される。
【００６７】
つまり、本実施形態では、ドライバ６０が車両に乗り込むごとに、当該ドライバ６０の顔を検出するためのテンプレートＦＴ，ＥＴ１，ＥＴ２が生成される。このため、ドライバ６０が、髪型を変えたり、眼鏡や身につける装飾品を変えたり、マスクを着用した場合などにも、運転時のドライバの髪型等に合ったテンプレートＦＴ，ＥＴ１，ＥＴ２が生成される。このため、精度よくドライバ６０の顔や、眼を特定することができる。
【００６８】
したがって、ドライバ６０の顔や眼の検出に一般式や、予め設定された万人に共通のテンプレートを用いて、ドライバ６０の顔や眼を検出し、ドライバ６０の状態を判定する場合に比較して、ドライバ６０の状態を精度よく判定することが可能となる。
【００６９】
同様に、本実施形態では、ドライバ６０が車両に乗り込むごとに、眼の開閉動作を行ったときに取得された情報に基づいて、当該ドライバ６０の覚醒状態を判定するための閾値Ｔｈが設定される（ステップＳ３０７）。このため、車両のドライバが変わったとしても、その都度、車両を運転するドライバごとに閾値が設定されるので、ドライバ６０の覚醒度を、ドライバごとに正確に判定することができる。
【００７０】
以上のように、本実施形態では、覚醒度を判定するためのテンプレートや、閾値がドライバごとに設定されるので、不特定多数のドライバが運転するレンタカーや、営業車等を運転しているドライバの覚醒度を精度よく検出することができる。
【００７１】
本実施形態では、眼の開閉指示に基づいて、ドライバ６０が眼の開閉動作を行った場合には、撮影装置３１から出力される画像Ｐから生成される差分画像ＤＩＦに、ドライバ６０の眼の部分にのみ画像が現れる。このため、眼の位置を正確に検出することができるので、ドライバ６０の顔画像ＦＰを特定するためのテンプレートＦＴや、顔画像ＦＰに写る眼を特定するためのテンプレートＥＴ１，ＥＴ２を、精度よく設定することができる。したがって、画像Ｐに写るドライバ６０の顔や眼を精度よく検出することが可能となり、結果的にドライバ６０の覚醒度を正確に判定することができる。
【００７２】
本実施形態では、ドライバ６０が開閉動作を行っているときに撮影された画像に基づいて、テンプレートＦＴ，ＥＴ１，ＥＴ２が設定される。このため、ドライバ６０の覚醒度が低下したときの画像に基づいて、種々のテンプレートが設定されることがない。したがって、ドライバ６０の覚醒度の判定を精度よく行うことができる。
【００７３】
本実施形態では、ドライバ６０の覚醒度が低下していると判定された場合に、ドライバ６０が運転する車両を速やかに停止させる（ステップＳ２１０）。これにより、ドライバの覚醒度の低化に起因する交通事故を未然に防止することができる。
【００７４】
本実施形態では、眼の開閉動作を指示されたドライバ６０が、眼の開閉動作を行ったことにより、眼領域ＥＡ１，ＥＡ２を特定できたときは、眼領域ＥＡ１，ＥＡ２の特定が完了したことが報知される（ステップＳ２０４）。これにより、ドライバ６０は、状態の認識が正確に行われることが可能となったことを認識することができる。
【００７５】
以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。例えば、上記実施形態では、制御装置２０は、ドライバ６０に眼の開閉動作を指示することとした（ステップＳ２０１）。これに限らず、制御装置２０は、ドライバ６０に口の開閉動作を指示することとしてもよい。
【００７６】
ドライバ６０が口の開閉動作を行った場合には、撮影装置３１から出力される画像Ｐから生成される差分画像ＤＩＦには、ドライバ６０の口の部分にのみ画像が現れる。このため、画像Ｐに写るドライバ６０の口の位置を基準に、ドライバ６０の顔画像ＦＰを特定するためのテンプレートＦＴを精度よく設定することができる。したがって、画像Ｐに写るドライバ６０の顔を精度よく検出することができ、結果的にドライバ６０の覚醒度を正確に判定することができる。
【００７７】
上記実施形態では、差分画像ＤＩＦに現れる眼の画像を含む、最も小さい矩形状の領域Ａ１，Ａ２を特定した。これに限らず、ドライバ６０が眼の開閉動作を行ったときに順次撮影された画像Ｐについてのオプティカルフローを求め、当該オプティカルフローが現れる領域を、ドライバ６０の眼が写る眼領域ＥＡ１、ＥＡ２として特定することとしてもよい。
【００７８】
上記実施形態では、ドライバ６０に対する眼の開閉動作の指示が、音声で行われることとした（ステップＳ２０１）。これに限らず、ドライバ６０に対する眼の開閉動作の指示は、アラームを音を出力させることによって行ってもよい。
【００７９】
上記実施形態では、眼の開閉のタイミングを指示することにより、ドライバ６０に眼の開閉動作を実行させることとした。これに限らず、眼の開閉タイミングの指示に代えて、眼の開閉動作の開始を指示することとしてもよい。また、ドライバ自身が、予め眼の開閉動作を行うことを把握している場合には、ドライバに開閉動作の実行を指示しなくてもよい。
【００８０】
上記実施形態では、眼領域ＥＡ１，ＥＡ２を特定できたときは、眼領域ＥＡ１，ＥＡ２の特定が完了したことが報知される（ステップＳ２０４）。これに対して、眼領域ＥＡ１，ＥＡ２が特定できないときは、眼領域ＥＡ１，ＥＡ２の特定に失敗したことが報知されることとしてもよい。また、眼領域ＥＡ１，ＥＡ２が特定できないときは、「ゆっくり力を抜いて開閉して下さい。」等のアナウンスを出力することとしてもよい。
【００８１】
上記実施形態では、図７に示される眼領域ＥＡ１，ＥＡ２が特定された後に、テンプレートＥＴ１，ＥＴ２を作成し、当該テンプレートＥＴ１，ＥＴ２を用いてドライバの眼の位置を特定した。これに限らず、差分画像ＤＩＦに現れる画像に基づいて領域Ａ１，Ａ２を特定した後は、領域Ａ１，Ａ２に対応する画像Ｐ上の領域に眼が位置するものとして、瞼のエッジの検出処理を行うこととしてもよい。この場合には、テンプレートを用いたマッチング処理が不要となる。したがって、ドライバ６０の状態を判定するための処理を短時間に行うことができる。
【００８２】
上記実施形態では、制御装置２０が所定のソフトウエアを実行するコンピュータである場合について説明した。これに限らず、制御装置２０は、専用のハードウエアによっても実現することができる。例えば、図１５には、基本情報取得部２８と、状態判定部２９を備える制御装置２０が示されている。
【００８３】
基本情報取得部２８は、図４におけるステップＳ２０１〜Ｓ２０７までの処理を実行する。そして、状態判定部２９は、図４におけるステップＳ２０８〜Ｓ２０９の処理を実行する。
【００８４】
上記実施形態において、制御装置２０の補助記憶部２３に記憶されているプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータで読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理を実行する装置を構成することとしてもよい。
【００８５】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。
【産業上の利用可能性】
【００８６】
本発明の状態判定装置、状態判定方法及びプログラムは、車両を運転するドライバの状態の判定に適している。また、本発明の運転支援システムは、ドライバの運転の支援に適している。
【符号の説明】
【００８７】
１０  運転支援システム
２０  制御装置
２１  ＣＰＵ
２２  主記憶部
２３  補助記憶部
２４  表示部
２５  入力部
２６  インタフェース部
２７  システムバス
２８  基本情報取得部
２９  状態判定部
３１  撮影装置
３２  音声出力装置
３３  制動装置
６０  ドライバ
６１  シート
３００  サブルーチン
Ａ１，Ａ２，ＤＡ１，ＤＡ２  領域
ＤＩＦ  差分画像
ＥＡ１，ＥＡ２  眼領域
ＥＴ１，ＥＴ２  テンプレート
ＥＧ１〜ＥＧ３  エッジ
ＦＡ  顔領域
ＦＰ  顔画像
ＦＴ  テンプレート
Ｐ  画像
ＰＤ  画像情報
【図１】
2014071519.tif 000003
【図２】
2014071519.tif 000004
【図３】
2014071519.tif 000005
【図４】
2014071519.tif 000006
【図５】
2014071519.tif 000007
【図６】
2014071519.tif 000008
【図７】
2014071519.tif 000009
【図８】
2014071519.tif 000010
【図９】
2014071519.tif 000011
【図１０】
2014071519.tif 000012
【図１１】
2014071519.tif 000013
【図１２】
2014071519.tif 000014
【図１３】
2014071519.tif 000015
【図１４】
2014071519.tif 000016
【図１５】
2014071519.tif 000017