以下、図を参照して、本発明の実施の形態について説明する。
図1は、本発明を適用した運転者モニタシステムの一実施の形態を示すブロック図である。図1の運転者モニタシステム1は、運転者モニタシステム1が設けられている車両(以下、自車とも称する)を運転する運転者の挙動を監視するシステムであり、撮像装置11、照明装置12、センサ部13、画像処理装置14、反射板15、および、発光素子16を含むように構成される。
撮像装置11は、例えば、CCD(Charge Coupled Device)撮像素子、CMOS(Complementary Metal Oxide Semiconductor)撮像素子、または、対数変換型撮像素子などを用いたカメラにより構成され、少なくとも可視光領域から近赤外光領域までの光に対して十分な感度を有している。
照明装置12は、例えば、近赤外光を発するLED(Light Emitting Diode)により構成される。
図2および図3は、撮像装置11および照明装置12の設置位置の例を示している。図2は、運転席を右から見た様子を模式的に表した図であり、図3は、図2のステアリングホイール51およびステアリングコラム52付近を拡大した図である。
撮像装置11は、例えば、ステアリングホイール51のステアリングスポークの間から、運転席53に座って運転している運転者54の顔をほぼ正面から撮影できるように、ステアリングコラム52の上面に設置される。図4は、撮像装置11により撮影される画像(以下、入力画像と称する)の一例を示しており、ステアリングホイール51の上部とステアリングコラム52の上部との間に、運転者54の顔54Aが写っている。
照明装置12は、ステアリングホイール51のステアリングスポークの間から運転席53に座って運転している運転者54の顔を含む領域に近赤外光を照射するように、撮像装置11の近傍(図2および図3においては、撮像装置11の上面)に設置される。また、照明装置12は、照明面が撮像装置11の撮影面とほぼ平行になるように設置される。
図1に戻り、撮像装置11は、撮影した画像(入力画像)を画像処理装置14の画像メモリ31に記憶させる。
センサ部13は、転舵角センサ21、車速センサ22、および、加速度センサ23を含むように構成される。
転舵角センサ21は、ステアリングホイール51の中立位置(ニュートラル位置)を基準にしてステアリングホイール51が回転した角度である転舵角を検出し、検出した転舵角を示す信号を画像処理装置14に供給する。
車速センサ22は、自車の速度を検出し、検出した自車の速度を示す信号を画像処理装置14に供給する。
加速度センサ23は、自車の加速度を検出し、検出した自車の加速度を示す信号を画像処理装置14に供給する。
画像処理装置14は、撮像装置11により撮影された入力画像に対して、所定の画像処理を施す。また、画像処理装置14は、撮像装置11および照明装置12の状態を診断することにより、撮像装置11および照明装置12の異常を検出する。画像処理装置14は、画像メモリ31、モニタ部32、診断処理部33、通知部34、および、操作部35を含むように構成される。
画像メモリ31は、例えば、ハードディスク、フラッシュメモリ、RAM(Random Access Memory)などの記憶装置により構成され、撮像装置11により撮影された入力画像を記憶する。
モニタ部32は、画像メモリ31に記憶されている入力画像を読み出し、入力画像に基づいて、運転者の状態を監視する。例えば、モニタ部32は、入力画像に基づいて、運転者の顔または視線の動きや、瞼の動きなどを検出し、脇見の有無や居眠りの有無など運転者の状態を監視する。モニタ部32は、必要に応じて、運転者の状態を示す情報を車両制御装置2または通知部34に供給する。また、モニタ部32は、運転者の顔の検出に失敗した場合、運転者の顔の検出に失敗したことを示す情報を診断処理部33に供給する。さらに、モニタ部32は、
診断処理部33は、図11などを参照して後述するように、撮像装置11および照明装置12の状態を診断する。診断処理部33は、診断結果を示す情報を通知部34に供給する。
通知部34は、必要に応じて、運転者への警告や撮像装置11または照明装置12の異常の発生の通知を行うように表示装置3および音声出力装置4を制御する。また、通知部34は、車両が盗難された可能性がある場合、通信装置5を介して、車両が盗難された可能性があることを車両の所有者などに通知する。
操作部35は、例えば、ボタンやスイッチなどにより構成され、モニタ部32または診断処理部33に指示や情報などを与えるときに操作される。
反射板15は、照明装置12から発せられる近赤外光を、例えば、約50%の反射率で反射する反射板により構成される。
発光素子16は、例えば、LED(Light Emitting Diode)により構成される。
図5は、反射板15と発光素子16の設置位置の例を示している。図5の左側の図は、ステアリングホイール51の裏面(運転者54に対向する面と反対の面)を示しており、右側の図は、ステアリングホイール51の下部のステアリングスポーク51Aの裏面を拡大した図である。
反射板15および発光素子16は、例えば、ステアリングホイール51のステアリングスポーク51Aの裏面に設置され、ステアリングホイール51の動きとともに移動する。また、反射板15および発光素子16は、ステアリングホイール51が所定の状態に動き(例えば、ステアリングホイール51が約180度回転し)、反射板15および発光素子16が、運転者54と撮像装置11の間において撮像装置11のフレーム内に入った場合に、反射板15の反射面および発光素子16の発光面が、撮像装置11の撮影面および照明装置12の照明面とほぼ平行になるように設置される。これにより、反射板15が撮像装置11のフレーム内に入ったとき、照明装置12によりほぼ均一の強さの近赤外光が反射板15の反射面に照射され、撮像装置11により撮影される入力画像において、反射板15が写っている領域の画素値はほぼ均一になる。
図1に戻り、車両制御装置2は、例えば、自車の動作の制御を行うECU(Electronic Control Unit)などにより構成される。
表示装置3は、例えば、LCD(Liquid Crystal Display)などにより構成される。
音声出力装置4は、例えば、スピーカ、サイレン、または、ブザーなどにより構成される。
通信装置5は、所定の方式の無線通信により、図示せぬ通信ネットワークなどに接続する通信装置により構成される。
図6は、診断処理部33の機能的構成の例を示すブロック図である。診断処理部33は、画像解析部101、ステアリングホイール状態検出部102、運転状態検出部103、運転許可者確認部104、診断部105、および、露光調整部106を含むように構成される。
画像解析部101は、診断部105からの指示の基に、画像メモリ31から入力画像を読み出し、入力画像の解析を行う。画像解析部101は、解析結果を示す情報を診断部105に供給する。
ステアリングホイール状態検出部102は、診断部105からの指示の基に、転舵角センサ21からの信号に基づいて、ステアリングホイール51の状態を検出する。ステアリングホイール状態検出部102は、検出結果を示す情報を診断部105に供給する。
運転状態検出部103は、診断部105からの指示の基に、転舵角センサ21、車速センサ22、および、加速度センサ23からの信号に基づいて、自車の運転者の運転状態を検出する。運転状態検出部103は、検出結果を診断部105に供給する。
運転許可者確認部104は、診断部105からの指示の基に、通知部34を介して、暗証番号の入力を促すメッセージを表示装置3に表示させたり、音声出力装置4から出力させ、操作部35を介して、運転者に入力された暗証番号を取得する。運転許可者確認部104は、取得した暗証番号に基づいて、自車を運転中の運転者が自車の運転を許可された者(以下、運転許可者と称する)であるかを判定し、判定結果を示す情報を診断部105に供給する。
診断部105は、モニタ部32が運転者の顔の検出に失敗した場合に出力する、運転者の顔の検出に失敗したことを示す情報をモニタ部32から取得する。診断部105は、モニタ部32、画像解析部101、ステアリングホイール状態検出部102、運転状態検出部103、および、運転許可者確認部104からの情報に基づいて、撮像装置11および照明装置12の状態を診断する。診断処理部33は、診断結果を示す情報を通知部34に供給する。
露光調整部106は、診断部105からの指示の基に、撮像装置11の露光量がほぼ所定の値となるように、撮像装置11の絞りやシャッタースピード、照明装置12の輝度を調整する。
次に、図7のフローチャートを参照して、運転者モニタシステム1により実行される運転者モニタ処理を説明する。なお、この処理は、例えば、ユーザにより、運転者モニタシステム1の操作部35を介して、運転者モニタ処理の開始の指令が入力されたとき開始される。
ステップS1において、運転者モニタシステム1は、撮影を開始する。具体的には、照明装置12は、近赤外光の照射を開始する。撮像装置11は、照明装置12により近赤外光が照射された運転者の撮影を開始し、その結果得られた入力画像を順次画像メモリ31に記憶させる。
ステップS2において、モニタ部32は、運転者の顔の検出に成功したかを判定する。具体的には、モニタ部32は、画像メモリ31から入力画像を読み出し、所定の手法を用いて、入力画像に写っている人の顔の検出を行う。モニタ部32は、運転者モニタ処理が開始されてから所定の期間内(または、所定の数のフレームの間)に、入力画像において人の顔を検出できなかった場合、運転者の顔の検出に失敗したと判定する。モニタ部32は、運転者の顔の検出に失敗したと判定した場合、運転者の顔の検出に失敗したことを示す情報を診断部105に供給し、処理はステップS3に進む。
ステップS3において、画像処理装置14は、初期異常対応処理を実行する。初期異常対応処理の詳細は、図8を参照して後述するが、この処理により、運転者の状態の監視を開始する前に運転者の顔の検出に失敗した原因が解析され、原因に応じた処理が実行される。
ステップS4において、モニタ部32は、エンジンが停止されたかを判定する。モニタ部32が、車両制御装置2からの情報に基づいて、自車のエンジンが停止されていないと判定した場合、処理はステップS2に戻り、ステップS2以降の処理が実行される。
一方、ステップS4において、自車のエンジンが停止されたと判定された場合、運転者モニタ処理は終了する。
また、ステップS2において、モニタ部32は、運転者モニタ処理が開始されてから所定の期間内(または、所定の数のフレームの間)に、入力画像において人の顔を検出できた場合、運転者の顔の検出に成功したと判定し、処理はステップS5に進む。
ステップS5において、モニタ部32は、運転者の状態の監視を開始する。具体的には、モニタ部32は、画像メモリ31に記憶されている入力画像を順次読み出し、所定の手法を用いて、入力画像に基づいて、運転者の顔または視線の動きや、瞼の動きなどを検出し、脇見の有無や居眠りの有無など運転者の状態を監視する処理を開始する。モニタ部32は、例えば、脇見や居眠りなどの運転者の危険な状態を検出した場合、通知部34を介して、表示装置3に警告画面を表示させたり、音声出力装置4から警告メッセージや警告音を出力させることにより、運転者の注意を喚起する。また、モニタ部32は、検出結果を示す情報を車両制御装置2に供給する。車両制御装置2は、検出結果に応じて、例えば、自車のステアリングホイール51を振動させたり、加速度を抑制したり、減速させるなど、自車の動作を制御する。
ステップS6において、モニタ部32は、運転者の顔の検出に失敗したかを判定する。モニタ部32は、所定の期間(または、所定の数のフレームの間)、入力画像において人の顔を検出できなかった場合、運転者の顔の検出に失敗したと判定し、運転者の顔の検出に失敗したことを示す情報を診断部105に供給し、処理はステップS7に進む。
ステップS7において、画像処理装置14は、非検出時処理を実行する。非検出時処理の詳細は図9を参照して後述するが、この処理により、運転者の状態の監視を開始した後に運転者の顔の検出に失敗した原因が解析され、原因に応じた処理が実行される。
一方、ステップS6において、運転者の顔の検出に失敗していないと判定された場合、ステップS7の処理はスキップされ、処理はステップS8に進む。
ステップS8において、ステップS4の処理と同様に、エンジンが停止されたかが判定される。エンジンが停止されていないと判定された場合、処理はステップS6に戻り、ステップS6以降の処理が実行される。
一方、ステップS8において、エンジンが停止されたと判定された場合、運転者モニタ処理は終了する。
次に、図8のフローチャートを参照して、図7のステップS3の初期異常対応処理の詳細について説明する。
ステップS21において、モニタ部32は、運転者の顔の検出に失敗したことを通知する。具体的には、モニタ部32は、通知部34を介して、表示装置3に警告画面を表示させたり、音声出力装置4から警告音や警告メッセージを出力させたりすることにより、運転者の顔の検出に失敗したことを通知する。
ステップS22において、運転状態検出部103は、運転中であるかを判定する。具体的には、診断部105は、運転状態検出部103に運転状態の検出を指示する。運転状態検出部103は、例えば、転舵角センサ21により検出された自車のステアリングホイール51の転舵角の推移、車速センサ22により検出された自車の車速の推移、および、加速度センサ23により検出された自車の加速度の推移などに基づいて、運転者が自車を運転中であるかを判定する。運転状態検出部103は、運転者が自車を運転中であると判定した場合、運転者が自車を運転中であることを示す情報を診断部105に供給し、処理はステップS23に進む。
ステップS23において、運転許可者確認部104は、運転許可者であるかを判定する。具体的には、診断部105は、現在運転中の運転者が運転許可者であるかの確認を運転許可者確認部104に指示する。運転許可者確認部104は、例えば、通知部34を介して、暗証番号の入力を促すメッセージを表示装置3に表示させたり、音声出力装置4から出力させる。運転者は、信号などで停車したときに、操作部35を介して暗証番号を入力し、運転許可者確認部104は、入力された暗証番号を取得する。運転許可者確認部104は、制限時間内に、制限された入力回数内で正しい暗証番号が入力された場合、運転者が運転許可者であると判定する。運転許可者確認部104は、運転者が運転許可者であると判定した場合、運転者が運転許可者であることを示す情報を診断部105に供給し、その後、処理はステップS24に進む。
なお、運転者が運転許可者であるかを確認する方法は、暗証番号を用いる方法に限定されるものではなく、例えば、指紋認証、静脈認証、虹彩認証などの生体情報を用いた個人認証を行うようにしてもよい。
ステップS24において、通知部34は、異常の発生を通知し、処理は上述した図7のステップS4に進まずに、運転者モニタ処理は終了する。具体的には、診断部105は、運転許可者が運転中であるにも関わらず、運転者の顔を検出できないのは、撮像装置11、照明装置12または画像処理装置14のうち少なくとも1つに異常が発生していると判定し、運転者モニタシステム1に異常が発生していることを示す情報を通知部34に供給する。通知部34は、表示装置3に警告画面を表示させたり、音声出力装置4から警告メッセージや警告音を出力させることにより、運転者モニタシステム1に異常が発生していることを通知する。
一方、ステップS23において、運転許可者でないと判定された場合、処理はステップS25に進む。
ステップS25において、通知部34は、警報および登録者への通知を行い、処理は上述した図7のステップS4に進まずに、運転者モニタ処理は終了する。具体的には、診断部105は、車両の盗難などにより運転許可者以外の人物が自車を運転しており、例えば、撮像装置11のレンズにカバーを被せるなどして、運転者の顔を撮影できないようにしている可能性が高いと判定し、運転者が運転許可者でないことを示す情報を通知部34に供給する。通知部34は、例えば、自車の外部に聞こえるような大音量で音声出力装置4から警報を出力させる。また、通知部34は、例えば、通信装置5を介して、予め登録されている自車の所有者の携帯電話機などにメールを送信するなどにより、自車が盗難された可能性があることを通知する。
一方、ステップS22において、運転中でないと判定された場合、運転者の顔が撮像装置11により撮影できない位置にある可能性が高いため、特別な対応を行うことなく、初期異常対応処理は終了し、処理は上述した図7のステップS4に進む。
次に、図9のフローチャートを参照して、図7のステップS7の非検出時処理の詳細について説明する。
ステップS41において、画像解析部101は、反射板15を検出できたかを判定する。具体的には、診断部105は、反射板15の検出を画像解析部101に指示する。画像解析部101は、画像メモリ31に記憶されている入力画像を読み出す。画像解析部101は、例えば、パターンマッチングの手法を用いて、読み出した入力画像において反射板15(より正確に言えば、反射板15により反射された光が写っている領域)の検出処理を行う。画像解析部101は、入力画像において反射板15の検出に成功し、反射板15を検出できたと判定した場合、反射板15を検出できたことを示す情報を診断部105に供給し、その後、処理はステップS42に進む。
なお、画像解析部101による反射板15の検出方法は、パターンマッチングの手法に限定されるものでなく、例えば、撮像装置11と反射板15との間の距離が近づくと、入力画像が明るくなる性質などを利用して、反射板15を検出するようにしてもよい。
ステップS42において、ステアリングホイール状態検出部102は、ステアリングホイール51の移動方向を検出する。具体的には、診断部105は、ステアリングホイール51の移動方向の検出をステアリングホイール状態検出部102に指示する。ステアリングホイール状態検出部102は、転舵角センサ21により検出された転舵角の遷移に基づいて、ステアリングホイール51の移動方向を検出する。
ステップS43において、診断処理部33は、自己診断処理を実行し、非検出時処理は終了する。自己診断処理の詳細は図11を参照して後述するが、この処理により、運転者の顔の検出に失敗した原因の自己診断が行われる。
一方、ステップS41において、反射板15を検出できなかったと判定された場合、処理はステップに進む。
ステップS44において、画像解析部101は、入力画像の画素値がほぼ均一であるかを判定する。具体的には、入力画像の画素値の分布の解析を画像解析部101に指示する。画像解析部101は、所定の統計手法を用いて、入力画像の画素値のバラツキを表す指標値(例えば、入力画像の画素値の分散など)を算出する。画像解析部101は、算出した指標値を所定の閾値と比較して、入力画像の画素値がほぼ均一であるか否かを判定する。画像解析部101は、入力画像の画素値がほぼ均一ではないと判定した場合、入力画像の画素値がほぼ均一ではないことを示す情報を診断部105に供給し、その後、処理はステップS45に進む。
ステップS45において、ステアリングホイール状態検出部102は、ステアリングホイール51が運転者の顔の撮影を遮っているかを判定する。具体的には、診断部105は、ステアリングホイール51が運転者の顔の撮影を遮っているか否かの検出をステアリングホイール状態検出部102に指示する。ステアリングホイール状態検出部102は、例えば、ステアリングホイール51の転舵角が、ステアリングホイール51のステアリングスポークを含まない図10の範囲R1内に現在の撮像装置11のフレームが収まる範囲内である場合、ステアリングホイール51が運転者の顔の撮影を遮っていないと判定する。ステアリングホイール状態検出部102は、ステアリングホイール51が運転者の顔の撮影を遮っていないと判定した場合、ステアリングホイール51が運転者の顔の撮影を遮っていないことを示す情報を診断部105に供給し、その後、処理はステップS46に進む。
ステップS46において、上述した図8のステップS22の処理と同様に、運転中であるかが判定される。運転中であると判定された場合、処理はステップS47に進む。
ステップS47において、通知部34は、運転姿勢を注意する。具体的には、診断部105は、ステアリングホイール51が運転者の顔を遮っていないのに運転者の顔を検出できず、かつ、入力画像の画素値がほぼ均一でない場合、撮像装置11のレンズが障害物などにより遮られてはいないが、運転者の姿勢が非常に悪いか、あるいは、運転者が顔を隠している可能性が高いと判定し、運転者の姿勢が悪いか、あるいは、運転者が顔を隠している可能性が高いことを示す情報を通知部34に供給する。通知部34は、運転者に姿勢を正し、顔を隠さないように促す警告画面を表示装置3に表示させたり、運転者に姿勢を正し、顔を隠さないように促す警告メッセージを音声出力装置4から出力させたりする。その後、処理はステップS50に進む。
一方、ステップS46において、運転中でないと判定された場合、非検出時処理は終了する。
また、ステップS45において、ステアリングホイール状態検出部102は、例えば、ステアリングホイール51の転舵角が、ステアリングホイール51のステアリングスポークを含む図10の範囲R2の一部または全部が現在の撮像装置11のフレームに含まれる範囲内である場合、ステアリングホイール51が運転者の顔の撮影を遮っていると判定する。ステアリングホイール状態検出部102は、ステアリングホイール51が運転者の顔の撮影を遮っていると判定した場合、ステアリングホイール51が運転者の顔の撮影を遮っていることを示す情報を診断部105に供給し、その後、処理はステップS48に進む。
ステップS48において、ステアリングホイール状態検出部102は、反射板15の検出が可能な状態であるかを判定する。具体的には、診断部105は、反射板15の検出が可能な状態であるか否かの検出をステアリングホイール状態検出部102に指示する。ステアリングホイール状態検出部102は、ステアリングホイール51の転舵角が、現在の撮像装置11のフレームに反射板15が含まれる範囲内でない場合、すなわち、反射板15の少なくとも一部が撮像装置11のフレーム内に入らない状態にステアリングホイール51が動いている場合、反射板15の検出が可能な状態でないと判定する。ステアリングホイール状態検出部102は、反射板15の検出が可能な状態でないと判定した場合、反射板15の検出が可能な状態でないことを示す情報を診断部105に供給し、非検出時処理は終了する。
一方、ステップS48において、ステアリングホイール状態検出部102は、ステアリングホイール51の転舵角が、現在の撮像装置11のフレームに反射板15が含まれる範囲内である場合、すなわち、反射板15の全てが撮像装置11のフレーム内に入る状態にステアリングホイール51が動いている場合、反射板15の検出が可能な状態であると判定する。ステアリングホイール状態検出部102は、反射板15の検出が可能な状態であると判定した場合、反射板15の検出が可能な状態であることを示す情報を診断部105に供給し、その後、処理はステップS49に進む。
また、ステップS44において、画像解析部101は、入力画像の画素値がほぼ均一であると判定した場合、入力画像の画素値がほぼ均一であることを示す情報を診断部105に供給し、その後、処理はステップS49に進む。
ステップS49において、通知部34は、障害物を取り除くように注意を促す。具体的には、診断部105は、入力画像の画素値がほぼ均一である場合、または、反射板15の検出が可能な状態にも関わらず、入力画像において反射板15が検出されていない場合、撮像装置11と運転者の間、または、撮像装置11と反射板15との間に障害物が存在し、運転者の顔または反射板15の撮影を妨げていると判断し、撮像装置11の前に障害物が存在することを示す情報を通知部34に供給する。通知部34は、撮像装置11の前の障害物を取り除くように喚起する警告画面を表示装置3に表示させたり、撮像装置11の前の障害物を取り除くように喚起する警告メッセージを音声出力装置4から出力させたりする。その後、処理はステップS50に進む。
ステップS50において、診断部105は、注意に従ったかを判定する。具体的には、診断部105は、モニタ部32から運転者の顔の検出結果を取得し、モニタ部32により所定の時間内に運転者の顔が検出されたことが通知された場合、運転者が注意に従ったと判定し、非検出時処理は終了する。
一方、ステップS50において、診断部105は、モニタ部32により所定の時間内に運転者の顔が検出されたことが通知されなかった場合、運転者が注意に従っていないと判定し、処理はステップS51に進む。
ステップS51において、上述した図8のステップS23の処理と同様に、運転許可者であるかが判定され、運転許可者であると判定された場合、処理はステップS52に進む。
ステップS52において、上述した図8のステップS24の処理と同様に、異常の発生が通知され、処理は上述した図7のステップS8に進まずに、運転者モニタ処理は終了する。
一方、ステップS51において、運転許可者でないと判定された場合、処理はステップS53に進み、ステップS53において、上述した図8のステップS25の処理と同様に、警報および登録者への通知が行われ、処理は上述した図7のステップS8に進まずに、運転者モニタ処理は終了する。
次に、図11のフローチャートを参照して、図9のステップS43の自己診断処理の詳細について説明する。
ステップS71において、露光調整部106は、露光を調整する。具体的には、診断部105は、露光の調整を露光調整部106に指示する。露光調整部106は、撮像装置11の露光量がほぼ所定の値となるように、撮像装置11の絞りやシャッタースピード、照明装置12の輝度を調整する。
ステップS72において、画像解析部101は、反射板15が写っている領域の画素値がほぼ均一であるかを判定する。具体的には、診断部105は、入力画像の反射板15が写っている領域の画素値の分布の解析を画像解析部101に指示する。画像解析部101は、露光の調整後に撮像装置11により撮影された入力画像を画像メモリ31から読み出し、上述した図9のステップS41の処理と同様に、入力画像内に写っている反射板15を検出する。画像解析部101は、所定の統計手法を用いて、入力画像の反射板15が写っている領域の画素値のバラツキを表す指標値(例えば、領域内の画素値の分散など)を算出する。画像解析部101は、算出した指標値を所定の閾値と比較して、反射板15が写っている領域の画素値がほぼ均一であるか否かを判定する。画像解析部101は、反射板15が写っている領域の画素値がほぼ均一ではないと判定した場合、反射板15が写っている領域の画素値がほぼ均一ではないことを示す情報を診断部105に供給し、その後、処理はステップS73に進む。
ステップS73において、診断部105は、撮像素子の故障が発生していると判定する。すなわち、上述したように、本来画素値がほぼ均一となる反射板15が写っている領域において、画素値のバラツキが発生していることにより、診断部105は、撮像装置11の撮像素子に故障が発生していると判定する。その後、処理はステップS81に進む。
なお、このとき、さらに、反射板15が写っている領域の画素値を詳細に解析することにより、撮像装置11の画素ごとの欠損を発見するようにすることも可能である。
また、例えば、反射板15に虫がとまるなどして、反射板15が写っている領域において一時的に画素値のバラツキが発生した場合に、撮像素子に故障が発生していると誤判定されないように、反射板15が写っている領域の画素値がほぼ均一ではない状態が所定の判定時間を超えて連続した場合に、撮像素子の故障が発生していると判定するようにすることが望ましい。
一方、ステップS72において、画像解析部101は、反射板15が写っている領域の画素値がほぼ均一であると判定した場合、反射板15が写っている領域の画素値がほぼ均一であることを示す情報を診断部105に供給し、その後、処理はステップS74に進む。
ステップS74において、診断部105は、反射板15が写っている領域の画素値の平均値が下限値以上であるかを判定する。具体的には、診断部105は、入力画像の反射板15が写っている領域の明るさを示す指標として、領域内の画素値の平均値の算出を画像解析部101に指示する。画像解析部101は、入力画像の反射板15が写っている領域の画素値の平均値を算出し、診断部105に供給する。診断部105が、入力画像の反射板15が写っている領域の画素値の平均値所定の下限値未満であると判定した場合、すなわち、入力画像の反射板15が写っている領域の明るさが所定の規定値未満である場合、処理はステップS75に進む。
なお、反射板15が写っている領域の明るさの判定に、画素値の平均値以外の値を用いるようにしてもよい。
ステップS75において、診断部105は、照明装置12の劣化またはレンズ透過率の低下が発生していると判定する。すなわち、診断部105は、露光を調整したにも関わらず、反射板15が写っている領域の画素値の平均値が所定の下限値未満となっていることにより、照明装置12が劣化し、反射板15への照度が低下しているか、または、劣化や汚れなどにより撮像装置11のレンズの透過率が低下していると判定する。
ステップS76において、診断部105は、入力画像において発光素子16の明るさが規定値以上であるかを判定する。具体的には、診断部105は、発光素子16が写っている領域の明るさを示す指標として、領域内の画素値の平均値の算出を画像解析部101に指示する。画像解析部101は、例えば、パターンマッチングの手法などを用いて、ステップS72において取得した入力画像内に写っている発光素子16を検出する。画像解析部101は、発光素子16が写っている領域内の画素値の平均値を算出し、診断部105に供給する。診断部105は、発光素子16が写っている領域内の画素値の平均値が所定の閾値未満である場合、入力画像において発光素子16の明るさが規定値未満であると判定し、処理はステップS77に進む。
なお、発光素子16が写っている領域の明るさの判定に、画素値の平均値以外の値を用いるようにしてもよい。
ステップS77において、診断部105は、レンズ透過率の低下が発生していると判定する。すなわち、入力画像における発光素子16の明るさは、照明装置12の輝度とは無関係であるので、診断部105は、入力画像における発光素子16の明るさが規定値未満であることにより、照明装置12の劣化ではなく、撮像装置11のレンズの透過率の低下が発生していると判定する。その後、処理はステップS81に進む。
一方、ステップS76において、診断部105は、発光素子16が写っている領域内の画素値の平均値が所定の閾値以上である場合、入力画像において発光素子16の明るさが規定値以上であると判定し、処理はステップS78に進む。
ステップS78において、診断部105は、照明装置12の劣化が発生していると判定する。すなわち、入力画像における発光素子16の明るさは、照明装置12の輝度とは無関係であるので、診断部105は、入力画像における発光素子16の明るさが規定値以上であることにより、撮像装置11のレンズの透過率の低下ではなく、照明装置12の劣化が発生していると判定する。その後、処理はステップS81に進む。
一方、ステップS74において、反射板15が写っている領域の画素値の平均値が下限値以上であると判定された場合、すなわち、入力画像の反射板15が写っている領域の明るさが所定の規定値以上である場合、処理はステップS79に進む。
ステップS79において、診断部105は、エッジ強度が規定値以上であるかを判定する。具体的には、診断部105は、入力画像のエッジ強度の検出を画像解析部101に指示する。画像解析部101は、所定の手法を用いて、ステップS72において取得した入力画像に対してエッジ抽出を行い、抽出したエッジ部分のエッジ強度を検出する。画像解析部101は、検出したエッジ強度を示す情報を診断部105に供給する。診断部105が、検出されたエッジ強度が所定の規定値未満であると判定した場合、処理はステップS80に進む。
ステップS80において、診断部105は、レンズの焦点のズレが発生していると判定する。すなわち、診断部105は、撮像装置11の撮像素子の故障およびレンズの透過率の低下、並びに、照明装置12の劣化が発生していないにも関わらず、入力画像のエッジ強度が規定値以下となっていることにより、撮像装置11のレンズの焦点が合っておらず、入力画像にボケが発生していると判定する。
ステップS81において、通知部34は、異常の発生を通知する。具体的には、診断部105は、検出した異常の内容を示す情報を通知部34に供給する。通知部34は、表示装置3に警告画面を表示させたり、音声出力装置4から警告メッセージや警告音を出力させることにより、運転者モニタシステム1に異常が発生したことを通知する。
なお、例えば、図12に示されるように、検出された異常の種類に応じてE1乃至E4のエラーコードを通知し、異常の内容を詳細に運転者に通知したり、さらに対処方法を通知するようにしてもよい。その後、処理は上述した図7のステップS8に進まずに、運転者モニタ処理は終了する。
一方、ステップS79において、検出されたエッジ強度が所定の規定値以上であると判定された場合、自己診断処理は終了する。
以上のようにして、撮像装置11および照明装置12の異常を、複雑な処理を行うことなく、簡単かつ確実に検出することができる。
また、単純な直線コースを進行する場合を除いて、ステアリングホイール51を切らずに出発地から目的地まで移動することはほぼ不可能であり、ほぼ確実に運転中にステアリングスポーク51Aが撮像装置11の前を横切るため、ほぼリアルタイムに撮像装置11および照明装置12の異常を検出することが可能である。
なお、外光(例えば、太陽光)がステアリングスポーク51Aの裏の反射板15に入射する場合、照明装置12が点灯した状態で撮影された入力画像と、消灯した状態で撮影された入力画像との差分をとることにより、その外光の影響を取り除いた差分画像を用いて、上述した処理を行うことで、自己診断処理の精度を向上させることができる。
また、入力画像の差分を取らずに、反射板15の明るさが所定の規定値以上である場合、外光が反射板15に入射したと判断し、自己診断処理をスキップするようにすることも可能である。
さらに、反射板15の代わりに鏡を取り付けることにより、撮像装置11の本体の外観検査や、撮像装置11の個々のLEDの放射強度の確認をすることが可能になる。
また、反射板15が撮像装置11の前を横切るときに、撮像装置11の全ての撮像素子に反射板15が映るように反射板15の形状や取り付け位置を工夫することで、全ての撮像素子の不良の有無の確認が可能になる。
さらに、ステアリングホイール51の左右のステアリングスポークの裏側に互いに形状の異なる反射板を設置することにより、どのスポークが撮像装置11を遮っているかを検出することが可能となる。さらに、停車中にステアリングホイール51を切ることにより、自己診断処理を開始させるトリガーとして反射板を使用することが可能になる。例えば、右、左、左の順にステアリングホイール51を切ったことが検出された場合に、自己診断処理を開始させることが可能になる。
また、ステアリングホイール51のステアリングスポークの裏側に、反射板15の他に、所定のテストパターンを設けるようにして、そのテストパターンを用いて、画像処理装置14の異常の有無を検出するようにしてもよい。なお、そのテストパターンを、反射版15の近傍に設置するようにしてもよいし、例えば、ステアリングホイール51の左右の一方のステアリングスポークの裏側に反射板15を設置し、もう一方のステアリングスポークの裏側にテストパターンを設置するようにしてもよい。
さらに、必ずしも、発光素子16を反射板15とともに移動させる必要はなく、発光素子16を常に撮像装置11のフレーム内に入る位置に設置するようにしてもよい。
なお、本発明は、上述した運転者モニタシステム以外にも、定期または不定期を問わず、必ず撮像装置のフレーム内に入ったり、横切ったりする可動物が存在するシステムに適用することが可能である。
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図13は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)301,ROM(Read Only Memory)302,RAM(Random Access Memory)303は、バス304により相互に接続されている。
バス304には、さらに、入出力インタフェース305が接続されている。入出力インタフェース305には、キーボード、マウス、マイクロホンなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307、ハードディスクや不揮発性のメモリなどよりなる記憶部308、ネットワークインタフェースなどよりなる通信部309、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア311を駆動するドライブ310が接続されている。
以上のように構成されるコンピュータでは、CPU301が、例えば、記憶部308に記憶されているプログラムを、入出力インタフェース305及びバス304を介して、RAM303にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU301)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
そして、プログラムは、リムーバブルメディア311をドライブ310に装着することにより、入出力インタフェース305を介して、記憶部308にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部309で受信し、記憶部308にインストールすることができる。その他、プログラムは、ROM302や記憶部308に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。