説明

異常検出装置および方法、記録媒体、並びに、プログラム

【課題】人の顔の向きを推定する推定手段の異常を簡単かつ正確に検出できるようにするものである。
【解決手段】信頼度検出部51は、顔向き推定部32によるドライバの顔の特徴の検出結果またはカメラ31により撮影された入力画像の特徴に基づいて、顔向き推定装置12によるドライバの顔向きの推定結果の信頼度を検出する。信頼度の低下が検出された場合、表示制御部53は、表示装置14を制御して、ドライバに診断方向を見させる指示を通知する。異常診断部52は、指示された方向を見た場合に推定されたドライバの顔の向きと実際の顔の向きとを比較することにより、顔向き推定装置12の異常を検出する。本発明は、ドライバの顔の向きに応じて車両を制御する車両制御装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異常検出装置および方法、記録媒体、並びに、プログラムに関し、特に、人の顔の向きを推定する推定手段の異常を、簡単かつ正確に検出できるようにした異常検出装置および方法、記録媒体、並びに、プログラムに関する。
【背景技術】
【0002】
近年、ドライバが安全に運転できるように支援する技術の開発が盛んであり、その中の一つに、ドライバの顔の向きを推定し、推定結果に基づいて、ドライバの脇見を検出する装置がある(例えば、特許文献1参照)。そのような装置においては、ドライバの顔を撮影するカメラの故障などにより、ドライバの顔の向きを正確に推定できなくなり、脇見が誤検出される場合が想定されるため、カメラなどの故障を自動で検出することが行われる場合がある。
【0003】
一方、カメラの故障を検出する方法として、監視領域が重なるように複数の監視カメラを配置し、複数のカメラにより撮影された、重なった領域に対応する画像の差分値を閾値と比較することにより、監視カメラの故障を検出することが提案されている(例えば、特許文献2参照)。
【0004】
また、車両が所定の運転状態である場合、アイリスを制御する前に車両用カメラにより撮像された画面の平均輝度、アイリスを全開にして撮像した画面の平均輝度、および、アイリスを閉じて撮像した画面の平均輝度を比較することにより、車両用カメラのアイリスの異常を検出したり、シャッタースピードを制御する前に車両用カメラにより撮像された画面の平均輝度、シャッタースピードを最長にして撮像した画面の平均輝度、および、シャッタースピードを最短にして撮像した画面の平均輝度を比較することにより、車両用カメラのシャッタースピードの異常を検出することが提案されている(例えば、特許文献3参照)。
【0005】
【特許文献1】特開平3−167698号公報
【特許文献2】特開2002−369224号公報
【特許文献3】特開2005−73296号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献2に記載の発明では、監視カメラの故障を検出するために、複数の監視カメラを配置し、複数台のカメラにより撮影された画像を比較する必要があり、装置の構成および処理が複雑になってしまう。
【0007】
また、特許文献3に記載の発明では、アイリスまたはシャッタースピードの異常のみしか検出できない。さらに、特許文献3に記載の発明では、レンズに虫が停まったり、カメラの前に障害物が短時間現れるなどの一時的な現象により、車両用カメラが故障していると誤検出されてしまう場合がある。
【0008】
本発明は、このような状況に鑑みてなされたものであり、人の顔の向きを推定する推定手段の異常を、簡単かつ正確に検出できるようにするものである。
【課題を解決するための手段】
【0009】
本発明の一側面の異常検出装置は、カメラにより撮影された画像に基づいて、人の顔の向きを推定する推定手段の異常を検出する異常検出装置であって、人の顔の向きの推定結果の信頼度の低下が検出された場合、人に所定の方向を見させる指示の通知を制御する通知制御手段と、人が所定の方向を見た場合に撮影された画像に基づいて推定手段により推定された人の顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較することにより、推定手段の異常を検出する異常検出手段とを備える。
【0010】
本発明の一側面の異常検出装置においては、人の顔の向きの推定結果の信頼度の低下が検出された場合、人に所定の方向を見させる指示の通知が制御され、人が所定の方向を見た場合に撮影された画像に基づいて推定手段により推定された人の顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較することにより、推定手段の異常が検出される。
【0011】
従って、人の顔の向きを推定する推定手段の異常を、簡単かつ正確に検出することができる。
【0012】
この推定手段、通知制御手段、異常検出手段は、例えば、CPU(Central Processing Unit)により構成される。また、この推定手段は、例えば、顔の向きを推定する専用の装置により構成するようにすることもできる。
【0013】
この異常検出装置は、推定手段による人の顔の特徴の検出結果に基づいて、信頼度を検出する信頼度検出手段をさらに設けることができる。
【0014】
これにより、推定手段による人の顔の特徴の検出結果に基づいて自分で検出した信頼度に基づいて、推定手段の異常を検出することができる。
【0015】
この信頼度検出手段は、例えば、CPUにより構成される。
【0016】
この信頼度検出手段には、推定手段によるドライバの顔または顔の各器官の検出の可否に基づいて、信頼度を検出させることができる。
【0017】
これにより、推定手段によるドライバの顔または顔の各器官の検出の可否に基づいて、推定手段の異常を検出することができる。
【0018】
この信頼度検出手段には、推定手段により抽出された人の顔の特徴点の位置と、所定のモデルにおける特徴点の位置との差に基づいて、信頼度を検出させるようにすることができる。
【0019】
これにより、推定手段により抽出された人の顔の特徴点の位置と、所定のモデルにおける特徴点の位置との差に基づいて、推定手段の異常を検出することができる。
【0020】
この異常検出装置は、画像の特徴に基づいて、信頼度を検出する信頼度検出手段をさらに設けることができる。
【0021】
これにより、画像の特徴に基づいて自分で検出した信頼度に基づいて、推定手段の異常を検出することができる。
【0022】
この信頼度検出手段は、例えば、CPUにより構成される。
【0023】
この信頼度検出手段には、画像内の輝度の差に基づいて、信頼度を検出させるようにすることができる。
【0024】
これにより、画像内の輝度の差に基づいて、推定手段の異常を検出することができる。
【0025】
この信頼度検出手段には、画像のエッジ成分の量に基づいて、信頼度を検出させるようにすることができる。
【0026】
この信頼度検出手段には、信頼度の低下を検出した場合、推定手段により推定されるドライバの顔の向きに基づいて車両を制御する車両制御手段に信頼度の低下を通知することにより、車両の制御を停止させるようにすることができる。
【0027】
これにより、ドライバの顔向きの推定の誤りにより、誤った車両の制御が行われることが防止され、ドライバの安全性を向上させることができる。
【0028】
これにより、画像のエッジ成分の量に基づいて、推定手段の異常を検出することができる。
【0029】
本発明の一側面の異常検出方法、プログラム、または、記録媒体に記録されているプログラムは、人の顔の向きの推定結果の信頼度の低下が検出された場合、人に所定の方向を見させる指示の通知を制御する通知制御ステップと、人が所定の方向を見た場合に撮影された画像に基づいて推定手段により推定された人の顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較することにより、推定手段の異常を検出する異常検出ステップを含む。
【0030】
本発明の一側面の異常検出方法、プログラム、または、記録媒体に記録されているプログラムにおいては、人の顔の向きの推定結果の信頼度の低下が検出された場合、人に所定の方向を見させる指示の通知が制御され、人が所定の方向を見た場合に撮影された画像に基づいて推定手段により推定された人の顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較することにより、推定手段の異常が検出される。
【0031】
従って、人の顔の向きを推定する推定手段の異常を、簡単かつ正確に検出することができる。
【0032】
この通知制御ステップは、例えば、人の顔の向きの推定結果の信頼度の低下が検出された場合、人に所定の方向を見させる指示の通知を、CPUにより制御する通知制御ステップにより構成され、この異常検出ステップは、例えば、人が所定の方向を見た場合に撮影された画像に基づいて推定手段により推定された人の顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較することにより、推定手段の異常をCPUにより検出する異常検出ステップにより構成される。
【発明の効果】
【0033】
以上のように、本発明の一側面によれば、人の顔の向きを推定する推定手段の異常を、簡単かつ正確に検出することができる。
【発明を実施するための最良の形態】
【0034】
以下、図を参照して、本発明の実施の形態について説明する。
【0035】
図1は、本発明を適用した車両制御システムの一実施の形態を示すブロック図である。車両制御システム1は、車両制御システム1が設けられた車両の各部(例えば、エンジン、サスペンション、トランスミッション、ブレーキなど)の動作を制御する装置(例えば、ECU(Electric Computer Unit)など)である制御装置2を、車両およびドライバの状態に基づいて制御することにより、ドライバの運転を支援したり、安全運転を行うようにドライバの注意を喚起したりする。例えば、車両制御システム1の制御の基に、車間距離、車両の進行方向などが自動的に制御される。車両制御システム1は、車両制御装置11、顔向き推定装置12、異常検出装置13、および、表示装置14を含むように構成される。
【0036】
車両制御装置11は、車両の自動制御を行ったり、安全運転を行うようにドライバの注意を喚起したりするように、制御装置2を制御する装置である。車両制御装置11は、車両状態検出部21および車両制御部22を含むように構成される。
【0037】
車両状態検出部21は、制御装置2からの情報に基づいて、車両の状態(例えば、エンジンの始動および停止、車速など)を検出し、検出した状態を示す情報を車両制御部22に供給する。
【0038】
車両制御部22は、車両制御システム1が設けられた車両を運転するドライバの顔の向きの推定結果を示す情報を顔向き推定装置12から取得する。車両制御部22は、車両の状態およびドライバの顔の向きに応じて、車両を制御するための情報を制御装置2に供給することにより、車両の制御を行う。また、車両制御部22は、車両制御装置11の状態を示す情報を表示装置14に供給し、供給した情報を表示装置14に表示させる。
【0039】
顔向き推定装置12は、ドライバの顔の向きを推定する装置である。顔向き推定装置12は、カメラ31、および、顔向き推定部32を含むように構成される。
【0040】
カメラ31は、ドライバの顔を撮影できる位置に設置され、ドライバの顔を撮影する。カメラ31は、撮影した画像(以下、入力画像と称する)を顔向き推定部32に供給する。
【0041】
顔向き推定部32は、入力画像に基づいて、ドライバの顔の向きを推定する。顔向き推定部32は、トラッキング部41、および、推定部42を含むように構成される。
【0042】
トラッキング部41は、所定の手法を用いて、入力画像におけるドライバの顔をトラッキングする(ドライバの顔および顔の特徴(例えば、顔および顔の各器官の位置、形状など)を検出する)。トラッキング部41は、トラッキング結果を示す情報を推定部42、および、異常検出装置13の信頼度検出部51に供給する。なお、トラッキング部41が顔をトラッキングする手法は、特定の手法に限定されるものではなく、より迅速かつ正確に顔をトラッキングできる手法が望ましい。
【0043】
推定部42は、所定の手法を用いて、トラッキング部41によるトラッキング結果に基づいて、ドライバの顔の向きを推定する。推定部42は、推定結果を示す情報を、車両制御装置11の車両制御部22、並びに、異常検出装置13の信頼度検出部51および異常診断部52に供給する。また、推定部42は、顔向き推定装置12の動作モードの設定を行う。
【0044】
なお、推定部42が顔の向きを推定する手法は、特定の手法に限定されるものではなく、顔の向きをより迅速かつ正確に推定できる手法が望ましい。例えば、顔向きを推定する手法の詳細については、特許2982204号公報などに、その詳細が開示されている。
【0045】
異常検出装置13は、顔向き推定装置12の異常を検出する装置である。異常検出部13は、信頼度検出部51、異常診断部52、表示制御部53、および、通信部54を含むように構成される。
【0046】
信頼度検出部51は、トラッキング部41によるトラッキング結果、および、推定部42による推定結果に基づいて、ドライバの顔の向きの推定結果の信頼度を検出し、検出結果を示す情報を、車両制御部22、異常診断部52および表示制御部53に供給する。
【0047】
異常診断部52は、信頼度検出部51により、ドライバの顔の向きの推定結果の信頼度の低下が検出された場合、図11を参照して後述する異常診断処理を実行する。また、異常診断部52は、異常診断処理の実行を通知する情報を、顔向き推定装置12の推定部42に供給する。さらに、異常診断部52は、表示制御部53を制御することにより、異常診断処理の実行画面を表示装置14に表示させ、顔向き推定装置12の異常を診断するための対応をドライバに実行させる。また、異常診断部52は、診断結果を示す情報を、車両制御部22、推定部42、および、表示制御部53に供給する。さらに、異常診断部52は、診断結果を示す情報を、例えば、通信部54、および、図示せぬネットワークを介して、車両のディーラーや整備会社などに送信する。
【0048】
表示制御部53は、異常診断処理の実行画面を表示させるための情報を表示装置14に供給し、表示装置14に実行画面を表示させる。また、表示制御部53は、検出された顔向き推定装置12の状態を示す情報を表示装置14に供給し、表示装置14にその情報を表示させる。
【0049】
通信部54は、例えば、無線通信により、図示せぬネットワークに接続して、ネットワークに接続されている情報処理装置と通信を行う。通信装置54の通信には、例えば、IEEE(Institute of Electrical and Electronic Engineers)802.11(802.11a,802.11b,802.11gなど)により規定される無線LAN(Local Area Network)の規格、W-CDMA(Wideband Code Division Multiple Access)、PIAFS(Personal Handyphone System Internet Access Forum Standard)などの携帯電話やPHS(Personal Handyphone System)の通信規格、Bluetooth(商標)などの規格を適用することができる。
【0050】
表示装置14は、車両制御装置11または異常検出装置13から供給される情報に基づく表示を行う。表示装置14は、例えば、カーナビゲーションシステムのモニタ、または、自動車のフロントガラスに無限遠の点に結像する画像を投影するヘッドアップディスプレイシステムにより構成される。なお、表示装置14を車両制御システム1の専用の装置として設けるようにしてもよいし、他のシステムと共用する装置として設けるようにしてもよい。
【0051】
次に、図2乃至図14を参照して、車両制御システム1の処理を説明する。
【0052】
まず、図2のフローチャートを参照して、車両制御システム1により実行される車両制御処理を説明する。なお、この処理は、例えば、車両制御システム1が設けられている車両のエンジンが始動されたとき開始される。また、この処理は、車両のエンジンの停止に伴い終了される。
【0053】
ステップS1において、車両制御部22は、車両制御をONにする。これにより、車両制御装置11による車両の自動制御が開始される。また、カメラ31によりドライバの顔の撮影が開始される。
【0054】
ステップS2において、表示装置14は、車両制御ONの表示を行う。具体的には、車両制御部22は、車両制御がONされたことを通知する情報を表示装置14に供給する。表示装置14は、取得した情報に基づいて、車両制御がONされたことを通知する表示を行う。
【0055】
ステップS3において、車両制御システム1は、顔向き推定処理を行う。顔向き推定処理の詳細は、図3を参照して後述するが、この処理により、ドライバの顔の向きが推定され、推定結果に基づいて、車両の制御が行われる。また、推定結果の信頼度が検出される。
【0056】
ステップS4において、信頼度検出部51は、推定結果の信頼度が低下しているか否かを判定する。信頼度検出部51は、顔向き推定装置12によるドライバの顔の向きの推定結果の信頼度が所定の閾値より低い状態が所定の時間継続しておらず、かつ、推定結果の信頼度が所定の閾値より低くなる頻度が所定の閾値未満である場合、推定結果の信頼度は低下していないと判定し、処理はステップS3に戻る。その後、ステップS4において、推定結果の信頼度が低下していると判定されるまで、ステップS3およびS4の処理が繰返し実行され、ドライバの顔の向きに応じて、車両の制御が行われる。
【0057】
一方、ステップS4において、信頼度検出部51は、推定結果の信頼度が所定の閾値より低い状態が所定の時間以上継続している場合、または、推定結果の信頼度が所定の閾値より低くなる頻度が所定の閾値以上である場合、推定結果の信頼度が低下していると判定し、処理はステップS5に進む。
【0058】
ステップS5において、表示装置14は、警告表示を行う。具体的には、信頼度検出部51は、顔向きの推定結果の信頼度が低下していることを示す情報を、異常診断部52および表示制御部53に供給する。表示制御部53は、顔向きの推定結果の信頼度の低下を通知する情報を表示装置14に供給する。表示装置14は、取得した情報に基づいて、顔向きの推定結果の信頼度が低下していることを警告する画面を表示する。これにより、ドライバは、顔向き推定装置12による顔向きの推定結果の信頼度が低下していることを知ることができる。
【0059】
ステップS6において、車両制御部22は、車両制御をOFFにする。具体的には、信頼度検出部51は、顔向きの推定結果の信頼度の低下を示す情報を車両制御部22に供給する。車両制御部22は、車両制御をOFFする。すなわち、信頼度の低下が通知されることにより、車両の制御が停止され、ドライバの顔向きの推定の誤りにより、誤った車両の制御が行われることが防止される。
【0060】
ステップS7において、表示装置14は、車両制御OFFの表示を行う。具体的には、車両制御部22は、車両制御をOFFしたことを通知する情報を表示装置14に供給する。表示装置14は、取得した情報に基づいて、車両制御のOFFを通知するための表示を行う。これにより、ドライバは、車両制御装置11による車両の制御が停止されたことを知ることができる。
【0061】
ステップS8において、異常検出装置13は、異常診断処理を行う。異常診断処理の詳細は、図1を参照して後述するが、この処理により、顔向きの推定結果の信頼度の低下が顔向き推定装置12の異常に起因するものか否かが診断され、診断結果が、異常診断部52から車両制御部22および推定部42に供給される。
【0062】
ステップS9において、車両制御部22は、異常診断部52による診断結果に基づいて、顔向き推定装置12に異常が発生しているか否かを判定する。顔向き推定処理に異常が発生していないと判定された場合、処理はステップS1に戻り、ステップS1以降の処理が実行される。すなわち、車両制御装置11による車両の制御が再開される。
【0063】
ステップS9において、顔向き推定装置12に異常が発生していると判定された場合、車両制御処理は終了する。
【0064】
次に、図3のフローチャートを参照して、図2のステップS3の顔向き推定処理の詳細を説明する。
【0065】
ステップS21において、トラッキング部41は、カメラ31により撮影された入力画像を取得する。
【0066】
ステップS22において、トラッキング部41は、所定の手法を用いて、ドライバの顔をトラッキングする。トラッキング部41は、入力画像におけるドライバの顔をトラッキングすることにより、例えば、ドライバの顔の位置および形状、並びに、顔の各器官の位置および形状などを検出する。さらに、トラッキング部41は、ドライバの顔の特徴点、例えば、目頭、目尻、目の上端および下端、鼻先、鼻翼、口角、人中の両端、下唇の傾きが大きく変化する点などを検出する。トラッキング部41は、トラッキング結果を示す情報を推定部42に供給する。
【0067】
ステップS23において、推定部42は、ドライバの顔の向きを推定する。例えば、推定部42は、検出されたドライバの顔の特徴点の位置と、予め学習処理により学習されている、顔の向きを検出するために用いる学習モデルにおける特徴点の位置とを比較することにより(あるいは、特徴点を結ぶことにより形成される図形の形状を比較することにより)、ドライバの顔の向きを検出する。
【0068】
図4および図5は、学習モデルの例を示している。図4は、ドライバの顔が右に向いている場合の学習モデルの例を示し、図5は、ドライバの顔が左を向いている場合の学習モデルの例を示す。また、図4および図5内の円形の印は、学習モデルにおける特徴点を示し、図4および図5においては、目頭、目尻、目の上端および下端、鼻先、鼻翼、口角、人中の両端、下唇の傾きが大きく変化する点の両端を特徴点とする場合の例を示している。
【0069】
例えば、推定部42は、パターンマッチングなどの手法を用いて、複数の顔の向き(角度)に対応する学習モデルの中から、特徴点の位置がトラッキング部41により検出されたドライバの顔の特徴点の位置が最も近い学習モデルを検出し、その学習モデルに対応する顔の向きを、ドライバの顔の向きとする。あるいは、例えば、推定部42は、各学習モデルにおける特徴点の位置、および、トラッキング部41により検出された顔の特徴点の位置に基づいて、ドライバの顔の向きを算出することにより、ドライバの顔の向きを推定する。
【0070】
ステップS24において、車両制御部22は、推定結果に基づいて、車両を制御する。具体的には、推定部42は、ドライバの顔の向きの推定結果を示す情報を、車両制御部22に供給する。車両制御部22は、取得した推定結果および車両状態検出部21により検出される車両の状態に基づいて、車両を制御する。例えば、ドライバの脇見が検出された場合、車両制御部22は、車速が所定の速度未満になるように指示する情報を制御装置2に供給することにより、車両の速度を減速させたり、ドライバの注意を喚起するように指示する情報を制御装置2に供給することにより、ドライバの注意を喚起する音声メッセージや警告音を出力させたりする。
【0071】
ステップS25において、信頼度検出部51は、推定結果の信頼度を検出する。ここで、推定結果の信頼度を検出する方法について説明する。
【0072】
例えば、カメラ31の故障、レンズの汚れまたは曇り、もしくは、ピントのズレ、または、図示せぬ照明の故障などにより、図6に模式的に示されるように、カメラ31により撮影された入力画像がぼけたり、入力画像においてノイズが多発している場合、トラッキング部41が、入力画像からドライバの顔または顔の各器官を検出できなかったり、または、図7に示されるように、トラッキング部41により検出された、円形の印で示される顔の特徴点の誤差が大きく、検出した各特徴点の位置と、各学習モデルにおける各特徴点の位置との差の大きさを示す類似度(以下、学習モデルとの類似度と称する)が低くなる(検出した各特徴点の位置と学習モデルにおける各特徴点の位置とがかけ離れている)ときがある。そして、顔の向きを検出できなかったり、顔の向きの推定結果の誤差が大きくなったりする。すなわち、顔向きの推定結果の信頼度が低下する。
【0073】
また、図6の画像は、エッジ成分(高周波成分)が少なく、画像内の輝度値の差が小さいという特徴を持つ。例えば、図8乃至図10は、それぞれ、図4、図5および図7の各特徴点における輝度を比較するためのグラフであり、各特徴点における輝度が横方向に並べられている。図10においては、図8および図9と比べて、特徴点における輝度の差が小さいことが分かる。従って、顔向き推定装置12またはカメラ周辺の環境に異常が発生していない場合に撮影された画像と比較して、入力画像のエッジ成分の量が少なかったり、入力画像内の輝度の差が小さい場合、顔向きの推定結果の信頼度が低下する。
【0074】
トラッキング部41は、ドライバの顔および顔の各器官の検出結果を示す情報、並びに、ドライバの顔をトラッキングする際に検出される、入力画像のエッジ成分の量および入力画像内の輝度の差を示す情報を信頼度検出部51に供給する。推定部42は、学習モデルとの類似度を示す情報を信頼度検出部51に供給する。信頼度検出部51は、ドライバの顔の特徴の検出結果(ドライバの顔または顔の各器官の検出の可否、学習モデルとの類似度)、並びに、入力画像の特徴(入力画像のエッジ成分の量および入力画像内の輝度の差)に基づいて、顔向きの推定結果の信頼度を検出する。例えば、信頼度は、0から1000までの値により表され、ドライバの顔または顔の各器官が検出できなかったり、学習モデルとの類似度が低かったり、入力画像のエッジ成分の量が少なかったり、入力画像内の輝度の差が小さい場合、信頼度は低い値に設定される。
【0075】
なお、ドライバの顔または顔の各器官の検出結果、学習モデルとの類似度、入力画像のエッジの量および入力画像内の輝度の差の全てに基づいて、信頼度を検出するようにしてもよいし、それらのうちのいくつかを選択して、選択した情報に基づいて、信頼度を検出するようにしてもよい。
【0076】
ステップS26において、信頼度検出部51は、信頼度が所定の閾値未満であるか否かを判定する。ステップS25において検出された信頼度が所定の閾値未満であると判定された場合、処理はステップS27に進む。なお、この閾値は、例えば、過去に顔向き推定装置12に異常が発生していない場合に検出された信頼度の平均値とされる。
【0077】
ステップS27において、信頼度検出部51は、推定結果を保存し、顔向き推定処理は終了する。具体的には、信頼度検出部51は、ドライバの顔の向きの推定結果、すなわち、信頼度が所定の閾値未満となった場合の推定結果を示す情報を推定部42から取得し、取得した情報を、図示せぬ記憶手段に記憶させる。
【0078】
ステップS26において、信頼度が所定の閾値以上であると判定された場合、顔向き推定処理は終了する。
【0079】
次に、図11のフローチャートを参照して、図2のステップS8の異常診断処理の詳細を説明する。
【0080】
ステップS51において、顔向き推定装置12は、異常診断モードに遷移する。具体的には、異常診断部52は、異常診断処理の実行を通知する情報を推定部42に供給する。推定部42は、顔向き推定装置12の動作モードを異常診断モードに設定する。
【0081】
ステップS52において、異常検出装置13は、ドライバに所定の方向を見るように指示する。具体的には、異常診断部52は、異常診断を行うためにドライバに見るように指示する所定の複数の方向(以下、診断方向と称する)のうち、まだ指示を出していない診断方向を1つ選択する。異常診断部52は、選択した診断方向を示す情報を表示制御部53に供給する。表示制御部53は、選択された診断方向をドライバに見させる指示の表示を指示する情報を、表示装置14に供給する。表示装置14は、取得した情報に基づいて、選択された診断方向を見るように指示するメッセージを表示する。すなわち、表示制御部53は、ドライバに選択された診断方向を見させる指示の表示装置14による通知を制御する。
【0082】
図12は、このとき表示装置14の画面51に表示されるメッセージの一例を示しており、この例においては、診断方向の一つである車両の右サイドミラーを見るように指示するメッセージが画面51に表示されている。なお、メッセージを表示する代わりに、音声によりドライバに診断方向を見るように指示するようにしてもよい。
【0083】
ステップS53において、トラッキング部41は、ドライバが指示された方向(診断方向)を見たときに撮影された画像をカメラ31から取得する。
【0084】
ステップS54において、上述した図3のステップS22の処理と同様に、ドライバの顔がトラッキングされ、ステップS55において、ドライバの顔の向きが推定される。すなわち、指示された診断方向を見たときのドライバの顔の向きが推定される。
【0085】
ステップS56において、推定部42は、推定結果を異常診断部52に供給する。
【0086】
ステップS57において、表示装置14は、推定結果を表示する。具体的には、異常診断部52は、取得した推定結果を示す情報を表示制御部53に供給する。表示制御部53は、顔向きの推定結果、および、指示された診断方向を示す情報を表示装置14に供給する。表示装置14は、取得した情報に基づいて、推定結果を表示する。
【0087】
図13および図14は、推定結果の表示の一例を示している。図13および図14の例においては、ドライバの顔の向きを、縦3方向×横3方向に分類して表示するための9個の領域からなる格子状の枠61が画面51に表示される。また、9つの領域のうち、指示された診断方向を示す領域の色が変わり(ただし、図13および図14では、網掛けにより示されている)、推定されたドライバの顔の向きを示す領域が太枠で囲まれる。なお、図13には、指示された診断方向(網掛けの領域)と、推定されたドライバの顔の向き(太枠で囲まれた領域)とが一致している場合、すなわち、推定結果が正しい場合の例が示されており、図14には、指示された診断方向(網掛けの領域)と、推定されたドライバの顔の向き(太枠で囲まれた領域)とが一致しない場合、すなわち、推定結果が誤っている場合の例が示されている。
【0088】
ステップS58において、異常診断部52は、推定結果が正しいか否かを判定する。異常診断部52は、推定されたドライバの顔の向きと、予め設定されている、指示された診断方向を見たときの実際の顔の向きとを比較する。すなわち、異常診断部52は、ドライバが所定の方向(指示された診断方向)を見た場合に撮影された画像に基づいて顔向き推定装置12により推定されたドライバの顔の向きと、予め設定されている、所定の方向を見たときの実際の顔の向きとを比較する。異常診断部52は、推定されたドライバの顔の向きと、指示された診断方向を見たときの実際の顔の向きとが一致する場合、推定結果が正しいと判定し、処理はステップS59に進む。
【0089】
ステップS59において、異常診断部52は、全ての診断方向について診断したか否かを判定する。具体的には、異常診断部52は、まだ診断を行っていない診断方向が残っている場合、まだ全ての診断方向について診断していないと判定し、処理はステップS52に戻る。その後、ステップS58において、推定結果が誤っていると判定されるか、ステップS59において、全ての診断方向について診断したと判定されるまで、ステップS52乃至S59の処理が繰返し実行される。
【0090】
ステップS59において、全ての診断方向について診断されたと判定された場合、すなわち、全ての診断方向に対して、ドライバの顔の向きが正しく推定された場合、処理はステップS60に進む。
【0091】
ステップS60において、異常診断部52は、異常の未発生を通知し、異常診断処理は終了する。具体的には、異常診断部52は、顔向き推定装置12に異常が発止していないことを示す情報を、車両制御部22および推定部42に供給する。推定部42は、顔向き推定装置12の動作モードを異常診断モードから通常モードに変更する。
【0092】
ステップS58において、異常診断部52は、推定されたドライバの顔の向きと、指示された診断方向を見たときの実際の顔の向きとが一致しない場合、推定結果が誤っていると判定し、処理はステップS61に進む。
【0093】
ステップS61において、異常診断部52は、異常の発生を通知し、異常診断処理は終了する。具体的には、異常診断部52は、顔向き推定装置12に異常が発生していることを示す情報を、車両制御部22および推定部42に供給する。また、異常診断部52は、顔向き推定装置12に異常が発生していることを示す情報を、通信部54、および、図示せぬネットワークを介して、例えば、車両のディーラーまたは整備会社のサーバに送信する。
【0094】
以上のように、顔向き推定装置12の異常を簡単かつ正確に検出することができる。すなわち、レンズに虫が停まったり、カメラの前に障害物が短時間現れるなどの一時的な現象に起因して、ドライバの顔の向きの推定結果の信頼度が低下した場合に、顔向き推定装置12に異常が発生していると誤検出されることが防止される。また、カメラを複数台設けたり、複数の画像を比較したり、顔向き推定処理における画像処理以外の画像処理を行ったりすることなしに、顔向き推定装置12の異常を検出することができる。
【0095】
また、顔向きの推定結果の信頼度が低下したり、顔向き推定装置12の異常が検出された場合、その状態を通知するための情報が表示装置14に表示されるので、顔向きの推定が正常に行われているか否かをドライバが確認することができる。
【0096】
なお、以上の説明では、顔向きの推定結果の信頼度の低下が検出された場合、車両制御装置11による車両の制御を自動的に停止させるようにしたが、例えば、信頼度の低下をドライバに通知するのみにして、車両制御装置11による車両の制御をドライバの操作により停止させるようにしてもよい。
【0097】
また、顔向きの推定結果の信頼度の低下が検出された場合、例えば、異常検出装置13の図示せぬ操作部を操作することにより、ドライバの指示により異常診断処理を開始するようにしてもよい。
【0098】
さらに、顔向き推定装置12と異常検出装置13を1つの装置により構成するようにしてもよい。
【0099】
また、信頼度検出部51を、顔向き推定装置12に設けるようにしてもよい。
【0100】
なお、本発明は、上述したドライバの顔の向きを推定する推定手段の異常の検出に限定されるものではなく、画像を用いて人の顔の向きを推定する推定手段の異常の検出全般に適用することができる。
【0101】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0102】
図15は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータ900の構成の例を示すブロック図である。CPU(Central Processing Unit)901は、ROM(Read Only Memory)902、または記録部908に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)903には、CPU901が実行するプログラムやデータなどが適宜記憶される。これらのCPU901、ROM902、およびRAM903は、バス904により相互に接続されている。
【0103】
CPU901にはまた、バス904を介して入出力インタフェース905が接続されている。入出力インタフェース905には、キーボード、マウス、マイクロホンなどよりなる入力部906、ディスプレイ、スピーカなどよりなる出力部907が接続されている。CPU901は、入力部906から入力される指令に対応して各種の処理を実行する。そして、CPU901は、処理の結果を出力部907に出力する。
【0104】
入出力インタフェース905に接続されている記録部908は、例えばハードディスクからなり、CPU901が実行するプログラムや各種のデータを記憶する。通信部909は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【0105】
また、通信部909を介してプログラムを取得し、記録部908に記憶してもよい。
【0106】
入出力インタフェース905に接続されているドライブ910は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア911が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部908に転送され、記憶される。
【0107】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図15に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア911、または、プログラムが一時的もしくは永続的に格納されるROM902や、記録部908を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部909を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【0108】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0109】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0110】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【0111】
【図1】本発明を適用した車両制御システムの一実施の形態を示すブロック図である。
【図2】図1の車両制御システムにより実行される車両制御処理を説明するためのフローチャートである。
【図3】図2のステップS3の顔向き推定処理の詳細を説明するためのフローチャートである。
【図4】顔の向きの推定に用いる学習モデルの例を示す図である。
【図5】顔の向きの推定に用いる学習モデルの他の例を示す図である。
【図6】入力画像の例を示す図である。
【図7】図6の入力画像において検出された顔の特徴点の例を示す図である。
【図8】図4の学習モデルの特徴点における輝度の分布を示す図である。
【図9】図5の学習モデルの特徴点における輝度の分布を示す図である。
【図10】図7の特徴点における輝度の分布を示す図である。
【図11】図2のステップS8の異常診断処理の詳細を説明するためのフローチャートである。
【図12】異常診断処理において、ドライバへの指示を行うための表示の例を示す図である。
【図13】異常診断処理の診断結果の表示の例を示す図である。
【図14】異常診断処理の診断結果の表示の他の例を示す図である。
【図15】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【0112】
1 車両制御システム
2 制御装置
11 車両制御装置
12 顔向き推定装置
13 異常検出装置
14 表示装置
21 車両状態検出部
22 車両制御部
31 カメラ
32 顔向き推定部
41 トラッキング部
42 推定部
51 信頼度検出部
52 異常診断部
53 表示制御部
901 CPU
902 ROM
903 RAM
908 記録部
910 ドライブ
911 リムーバブルメディア

【特許請求の範囲】
【請求項1】
カメラにより撮影された画像に基づいて、人の顔の向きを推定する推定手段の異常を検出する異常検出装置において、
前記人の顔の向きの推定結果の信頼度の低下が検出された場合、前記人に所定の方向を見させる指示の通知を制御する通知制御手段と、
前記人が前記所定の方向を見た場合に撮影された画像に基づいて前記推定手段により推定された前記人の顔の向きと、予め設定されている、前記所定の方向を見たときの実際の顔の向きとを比較することにより、前記推定手段の異常を検出する異常検出手段を
含む異常検出装置。
【請求項2】
前記推定手段による前記人の顔の特徴の検出結果に基づいて、前記信頼度を検出する信頼度検出手段を
さらに含む請求項1に記載の異常検出装置。
【請求項3】
前記信頼度検出手段は、前記推定手段による前記人の顔または顔の各器官の検出の可否に基づいて、前記信頼度を検出する
請求項2に記載の異常検出装置。
【請求項4】
前記信頼度検出手段は、前記推定手段により抽出された前記人の顔の特徴点の位置と、所定のモデルにおける特徴点の位置との差に基づいて、前記信頼度を検出する
請求項2に記載の異常検出装置。
【請求項5】
前記画像の特徴に基づいて、前記信頼度を検出する信頼度検出手段を
さらに含む請求項1に記載の異常検出装置。
【請求項6】
前記信頼度検出手段は、前記画像内の輝度の差に基づいて、前記信頼度を検出する
請求項5に記載の異常検出装置。
【請求項7】
前記信頼度検出手段は、前記画像のエッジ成分の量に基づいて、前記信頼度を検出する
請求項5に記載の異常検出装置。
【請求項8】
前記信頼度検出手段は、前記信頼度の低下を検出した場合、前記推定手段により推定されるドライバの顔の向きに基づいて車両を制御する車両制御手段に前記信頼度の低下を通知することにより、前記車両の制御を停止させる
請求項2乃至7のいずれかに記載の異常検出装置。
【請求項9】
カメラにより撮影された画像に基づいて、人の顔の向きを推定する推定手段の異常を検出する異常検出方法において、
前記人の顔の向きの推定結果の信頼度の低下が検出された場合、前記人に所定の方向を見させる指示の通知を制御する通知制御ステップと、
前記人が前記所定の方向を見た場合に撮影された画像に基づいて前記推定手段により推定された前記人の顔の向きと、予め設定されている、前記所定の方向を見たときの実際の顔の向きとを比較することにより、前記推定手段の異常を検出する異常検出ステップを
含む異常検出方法。
【請求項10】
カメラにより撮影された画像に基づいて、人の顔の向きを推定する推定手段の異常を検出する異常検出処理を、コンピュータに実行させるプログラムにおいて、
前記人の顔の向きの推定結果の信頼度の低下が検出された場合、前記人に所定の方向を見させる指示の通知を制御する通知制御ステップと、
前記人が前記所定の方向を見た場合に撮影された画像に基づいて前記推定手段により推定された前記人の顔の向きと、予め設定されている、前記所定の方向を見たときの実際の顔の向きとを比較することにより、前記推定手段の異常を検出する異常検出ステップを
含むプログラム。
【請求項11】
請求項10に記載のプログラムを記録した記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2007−219578(P2007−219578A)
【公開日】平成19年8月30日(2007.8.30)
【国際特許分類】
【出願番号】特願2006−36000(P2006−36000)
【出願日】平成18年2月14日(2006.2.14)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】