(57)【要約】【課題】的確に運転者の行動を推定することが可能な運転者行動推定装置を提供する。【解決手段】画像処理部２２は、運転者の頭部を含む顔画像から動きベクトルを求める。そして、動き検出部２３は、この動きベクトルに基づいて、顔画像上に設定された領域グループ毎に代表ベクトルを求める。その後、運転者行動推定部２４は、求めた代表ベクトルの向き、及び大きさに基づいて、運転者の行動及び運転者以外のものの行動の少なくとも一方を推定する。【選択図】      図２
2005018655.tif 000002
【特許請求の範囲】
【請求項１】
撮像された運転者の顔の画像を取得する顔画像取得手段と、
前記顔画像取得手段により取得された２枚以上の連続する顔画像から１つ以上の動きベクトルを求める画像処理手段と、
前記画像処理手段により求められた前記動きベクトルが１つ以上属する領域グループそれぞれから、代表となる動きベクトルを検出する動き検出手段と、
前記動き検出手段により検出された前記領域グループ毎の代表となる動きベクトルの向き及び大きさに基づいて、運転者の行動及び運転者以外のものの行動のうち、少なくとも一方を推定する運転者行動推定手段と、
前記運転者行動推定手段にて推定された行動に従って報知信号を出力する信号出力手段と、
を備えることを特徴とする運転者行動推定装置。
【請求項２】
動きベクトルは、顔画像上に設定された少なくとも２つの演算領域それぞれから前記画像処理手段により検出され、
この演算領域それぞれは、前記顔画像取得手段により取得される顔画像のサイズに基づいて、予め顔部位程度の大きさで設定される
ことを特徴とする請求項１に記載の運転者行動推定装置。
【請求項３】
前記運転者行動推定手段は、前記領域グループ毎の代表となる動きベクトルの向き及び大きさに加え、前記領域グループ毎の動きベクトルの数に基づいて、運転者の行動及び運転者以外のものの行動のうち、少なくとも一方を推定することを特徴とする請求項１又は請求項２のいずれかに記載の運転者行動推定装置。
【請求項４】
前記画像処理手段は、顔画像上に設定された演算領域から動きベクトルを求めると共に、演算領域にて算出された特徴量の変化量と予め設定される閾値とを比較することにより、求めた動きベクトルが有効なものであるか否かを判断し、
前記運転者行動推定手段は、前記領域グループそれぞれの動きベクトルの数として、有効であると判断された動きベクトルの数を用いる
ことを特徴とする請求項３に記載の運転者行動推定装置。
【請求項５】
前記運転者行動推定手段は、前記領域グループ毎の代表となる動きベクトルの向き及び大きさ、並びに前記領域グループ毎の動きベクトルの数のそれぞれと、予め設定される上限値及び下限値との比較により、運転者が画角内に入ってくる行動、運転者が画角外に出ていく行動、正常な運転姿勢から逸脱した状態を継続する行動のうち、少なくとも１つを推定することを特徴とする請求項３又は請求項４のいずれかに記載の運転者行動推定装置。
【請求項６】
前記運転者行動推定手段は、前記領域グループ毎の代表となる動きベクトルの向き及び大きさと、予め設定される上限値及び下限値との比較により、運転者以外のものが画角内に入ってくる行動、運転者以外のものが画角外に出ていく行動のうち、少なくとも１つを推定することを特徴とする請求項１又は請求項２のいずれかに記載の運転者行動推定装置。
【請求項７】
前記運転者行動推定手段は、車両の状態を検出する車両状態検出手段からの信号と、車両の周囲環境を検出する環境情報検出手段からの信号との少なくとも一方に基づいて、推定すべき行動を変更することを特徴とする請求項１〜請求項６のいずれか１項に記載の運転者行動推定装置。
【請求項８】
前記運転者行動推定手段は、前記領域グループ毎の代表となる動きベクトルの向き及び大きさに加え、前記領域グループ毎の代表となる動きベクトルの位置に基づいて、運転者の行動及び運転者以外のものの行動のうち、少なくとも一方を推定することを特徴とする請求項１〜請求項７のいずれか１項に記載の運転者行動推定装置。
【請求項９】
前記運転者行動推定手段は、運転者の行動及び運転者以外のものの行動の双方を推定することを特徴とする請求項１〜請求項８のいずれか１項に記載の運転者行動推定装置。
【請求項１０】
撮像された運転者の顔の画像を連続して２枚以上取得し、この連続する顔画像から少なくとも１つ以上の動きベクトルを求め、求めた動きベクトルが少なくとも１つ以上属する領域グループそれぞれから、代表となる動きベクトルを検出し、前記領域グループ毎の代表となる動きベクトルの向き及び大きさに基づいて、運転者の行動及び運転者以外のものの行動のうち、少なくとも一方を推定することを特徴とする運転者行動推定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、運転者行動推定装置に関する。
【０００２】
【従来の技術】
従来、運転者の行動を推定する装置の１つとして、顔の画像を動画像として撮影し、画像処理にて眼の座標を順次検出し、眼の動きから脇見を推定する装置が知られている（特許文献１参照）。また、運転者の視線方向を検出する方法（特許文献２参照）に眼の瞳孔の反射を利用し、眼の座標を検出して脇見を推定する装置が知られている（特許文献３参照）。
【０００３】
このように、上記装置では、眼という特定の顔部位を顔画像中から検出して運転者の脇見行為を推定するようにしている。
【０００４】
【特許文献１】
特開平０６−２６２９５９号公報
【０００５】
【特許文献２】
特開２００２−８３４００号公報
【０００６】
【特許文献３】
特開平０７−６１２５７号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、運転者は、交差点等の確認動作をする際、顔を速く動かして確認動作をする傾向にある。特に車両の運転中では、運転者は素早く確認動作を行うことから、顔を速く動かしやすい傾向がある。そして、このように顔を速く動かした場合、従来装置では、追跡精度の限界を超え、顔の特定部位を追跡しきれずに、顔の向き等を検出できなくなってしまう可能性がある。
【０００８】
また、従来装置は、運転者が助手席に身を乗り出すなど、運転者の顔部位を含む顔画像が得られない場合、顔の向き等を検出できなくなってしまう。そして、上記のように顔の向き等が検出できなくなった場合には、運転者の脇見を推定することができなくなってしまう。
【０００９】
なお、これは、運転者の脇見に限らず、運転者の行動を推定する他の装置において共通する問題点である。
【００１０】
【課題を解決するための手段】
本発明によれば、顔画像取得手段は、撮像された運転者の顔の画像を取得し、画像処理手段は、顔画像取得手段により取得された２枚以上の連続する顔画像から１つ以上の動きベクトルを求め、動き検出手段は、画像処理手段により求められた動きベクトルが１つ以上属する領域グループそれぞれから、代表となる動きベクトルを検出し、運転者行動推定手段は、動き検出手段により検出された領域グループ毎の代表となる動きベクトルの向き及び大きさに基づいて、運転者の行動及び運転者以外のものの行動のうち、少なくとも一方を推定し、信号出力手段は、運転者行動推定手段にて推定された行動に従って報知信号を出力する。
【００１１】
【発明の効果】
本発明によれば、領域グループそれぞれから得られる代表となる動きベクトルの向き及び大きさに基づいて、運転者の行動を推定している。この代表となる動きベクトルは、画像中における物体等の動きを表すものであり、特定の部位を追跡するものではない。このため、例えば運転者が顔を速く動かした場合であっても、すなわち、特定の顔部位を追跡できない状況下にあっても、顔の動きを捕らえることができる。さらには、運転者の顔が画角外に出てしまっても、画角外に出ていく行動を画像中における動きから得ることができる。このように、動きを捕らえることができるため、この動きに基づいて、運転者行動の推定を容易にすることができる。従って、的確に運転者の行動を推定することができる。
【００１２】
また、運転者以外のものの行動を推定対象としている場合には、同様に、的確に運転者以外のものの行動を推定することができる。
【００１３】
【発明の実施の形態】
以下、本発明の好適な実施形態を図面に基づいて説明する。図１は、本発明の第１実施形態に係る運転者行動推定装置を含む運転者行動推定システムの構成を示すブロック図である。同図に示すように、運転者行動推定システム１は、運転者の行動を推定して、報知動作等を行うものであって、撮像装置１０と運転者行動推定装置２０と報知装置３０とを備えている。さらに、本システム１は、車両状態検出手段４０と環境情報検出手段５０とを備えている。
【００１４】
撮像装置１０は、運転者の顔を含んだ撮像範囲を時系列的に撮像するものである。具体的に撮像装置１０は、可視光を撮像するためのカメラ、近赤外光にて撮像するカメラ、及び人等の発する熱を遠赤外にて撮像するカメラ等の光学的受光素子を有するカメラのうち少なくとも１つから構成されている。
【００１５】
また、撮像装置１０は、例えば運転者の正面下方に設置され、運転者の顔を含む画像（以下顔画像という）を取得し、得られた顔画像のデータをビデオ信号Ｓａとして運転者行動推定装置２０に送出するものである。なお、撮像装置１０は、運転者の正面下方に設置される場合に限らず、運転者の頭部を撮像範囲に含む位置であれば、他の位置に設置されてもよい。
【００１６】
運転者行動推定装置２０は、撮像装置１０からのビデオ信号Ｓａに基づいて、所定の処理を実行し、運転者の行動を推定するものである。ここで、運転者の行動としては、運転者が下を覗き込んだり、窓から身を乗り出したりする異常行動などである。さらに、運転者が運転席に着座しているかなどの運転者の有無に関するものや、運転者が正常な姿勢で運転しているなども運転者の行動として含まれる。さらには、居眠や脇見などに関する行動も含まれる。
【００１７】
報知装置３０は、運転者行動推定装置２０にて推定された行動に従って、報知動作を行うものである。具体的に報知装置３０は、運転者行動推定装置２０にて運転者の異常行動が検出された場合に、音、光及び振動のいずれか１つ以上を用いて運転者に注意喚起するものである。
【００１８】
また、報知装置３０は、他の機器等を制御する機能を有している。すなわち、報知装置３０は、報知動作を行うと共に、例えば、車速制御や、ブレーキ制動による緊急制御などの車両制御に介入する動作を行うものである。また、報知装置３０は、車両制御に限らず、シートベルトの巻上制御を行ったり、アクセル開度に対する燃料の供給量を示すマップを変更したりしてもよい。
【００１９】
車両状態検出手段４０は、車両の状態を検出するものであって、具体的に、車速や、ブレーキスイッチのオン／オフ情報、アクセルスイッチのオン／オフ情報、操舵角、シフトレンジ情報等の車両に関する状態を１つ以上検出するものである。また、車両状態検出手段４０は、ウインカースイッチのオン／オフ情報を検出するものであってもよい。
【００２０】
環境情報検出手段５０は、車両の周囲環境を検出するものであって、ＧＰＳやジャイロを利用したナビゲーションシステムによる位置情報を取得し、例えば、走行中の道路の種別や交差点の有無等を検出するものである。
【００２１】
また、環境情報検出手段５０は、可視光カメラ、遠赤外線検出素子、レーザーレーダー及び超音波センサの１つ以上から構成され、例えば、先行車や障害物の有無・接近、歩行者の横断、後続車の接近、側後方からの接近車両等を検出するものでもある。さらに、環境情報検出手段５０は、気象情報や、天候、照度計による外の明るさや昼夜の区別等の情報を得るものであってもよい。
【００２２】
次に、運転者行動推定装置２０の詳細を図２に示す。図２は、図１に示した運転者行動推定装置２０の詳細構成を示すブロック図である。
【００２３】
運転者行動推定装置２０は、顔画像取得部（顔画像取得手段）２１、画像処理部（画像処理手段）２２、及び動き検出部（動き検出手段）２３を備えている。さらに、運転者行動推定装置２０は、運転者行動推定部（運転者行動推定手段）２４、及び報知信号出力部（信号出力手段）２５を具備している。
【００２４】
顔画像取得部２１は、撮像装置１０により撮像された顔画像データであるビデオ信号Ｓａを取得するものであり、内部に記憶領域を備えている。そして、取得した顔画像のデータを横幅１６０画素、縦幅１２０画素、１画素あたり２５６階調の濃淡データを示すディジタルデータに変換して記憶領域に格納する。
【００２５】
画像処理部２２は、顔画像取得部２１により取得された２枚以上の連続する顔画像から１つ以上の動きベクトルを求めるものである。ここで、動きベクトルとは、画像内における所定物体の移動等を表すものである。より具体的に、動きベクトルは、画像の所定箇所に存在した顔部位等が、後の画像においてどの方向にどれだけ速度で移動したかを表すものである。すなわち、動きベクトルは、大きさ及び向きの情報を含むものである。
【００２６】
また、動きベクトルは、１つの参照領域（演算領域）につき１つずつ求められるものである。ここで、参照領域とは、予め画像上に所定の大きさで１又は複数設定されるものである。参照領域について説明する。
【００２７】
図３は、参照領域の説明図である。なお、図３では、顔画像上に参照領域が複数設定される場合を例に説明する。
【００２８】
同図に示すように、参照領域は顔画像上に５行７列に配置されている。この参照領域のそれぞれは、特定の点Ｏを中心として幅ｔｗ画素，高さｔｈ画素の大きさで設定される領域である。また、参照領域の周囲それぞれには、当該領域を取り囲むように探索領域が設定されるが、この探索領域については、後述することとする。
【００２９】
なお、上記参照領域は、カメラの位置、カメラの画角、及び顔画像のサイズ等に基づいて、目、鼻又は口等の顔の部位の大きさ程度に固定的に設定されることが望ましい。
【００３０】
動き検出部２３は、領域グループそれぞれから、代表となる動きベクトルを検出するものである。ここで、領域グループとは、画像処理部２２により求められた動きベクトルが１つ以上属するものである。すなわち、領域グループは、上記参照領域を１又は複数包含するようにして画像上に設定されているものである。
【００３１】
また、代表となる動きベクトル（以下代表ベクトルという）とは、１つの領域グループに包含される動きベクトルの代表となるものである。例えば、１つの領域グループに複数の動きベクトルが属している場合（参照領域を複数含む場合）、代表ベクトルは、それら複数の動きベクトルを平均化して得られたものなどである。
【００３２】
領域グループについて説明する。図４は、領域グループの一例を示す説明図である。なお、図４では、領域グループが複数の参照領域を包含する場合を例に説明する。
【００３３】
まず、参照領域が顔画像上に５行７列に配置されているとした場合、領域グループは、これら参照領域のうち少なくとも１つを包含するものである。
【００３４】
例えば、図４に示すように、領域グループは、顔画像上の５行７列すべての参照領域を包含するようにされている。また、すべてに限らず、例えば、５行７列の参照領域のうち、１〜５行目で３〜５列目の参照領域などのように一部を含むようにされていてもよい。さらに、領域グループは、複数設けられていてもよい。複数設けられる場合、各領域グループは、それぞれ重複部分を有するようにされていてもよい。
【００３５】
すなわち、各領域グループは、それぞれ１つ以上の参照領域を含んでいればよい。ここで、上記動きベクトルは、１つの参照領域につき１つ検出されるものである。故に、領域グループは、前述したように、動きベクトルが１つ以上属するものといえる。
【００３６】
再度、図１及び図２を参照する。運転者行動推定部２４は、動き検出部２３により検出された領域グループそれぞれの代表ベクトルの向き及び大きさに基づいて、運転者の行動を推定するものである。さらに、運転者行動推定部２４は、代表となる動きベクトルを求める際に用いられた各領域グループ毎の動きベクトルの数に基づいて運転者の行動を推定するようにされていてもよい。推定される行動は、上記した異常行動、及び正常な姿勢で運転していることなどである。
【００３７】
なお、運転者行動推定部２４は、領域グループそれぞれの代表ベクトルの向き及び大きさに加え、領域グループ毎の代表となる動きベクトルの位置に基づいて、推定するようにされていてもよい。すなわち、運転者行動推定部２４が何に基づいて推定するかは、推定すべき対象としている行動によって変更されることとなる。
【００３８】
報知信号出力部２５は、運転者行動推定部２４にて推定された行動に従って、報知信号を出力するものである。例えば、報知信号出力部２５は、推定された行動が所定のものである場合に、報知信号Ｓｂを生成して報知装置３０に出力するものである。
【００３９】
図５は、図１に示した運転者行動推定装置２０の詳細構成、及び接続関係を示す説明図である。同図に示すように、車両状態検出手段４０及び環境情報検出手段５０は、運転者行動推定装置２０の運転者行動推定部２４に接続されている。このため、運転者行動推定部２４は、車両状態検出手段４０からの信号Ｓｃと、環境情報検出手段５０からの信号Ｓｄとの少なくとも一方を入力し、推定すべき対象を変更することができる。
【００４０】
例えば、運転者行動推定部２４は、ナビゲーションによる地図情報から、見通しの悪い交差点や信号のない交差点に差し掛かっているという環境信号Ｓｄに基づいて、運転者の顔の向き、すなわち安全確認を行ったか否かを推定対象とする。
【００４１】
また、運転者行動推定部２４は、車速が設定速度以下であるという車両の状態信号Ｓｃに基づいて、渋滞を判断し、運転者が眠気を感じているかなど、居眠状態を推定対象とする。
【００４２】
以上、本システム１の構成である。次に、本システム１の動作の概略について説明する。まず、撮像装置１０により運転者の顔を含む画像が撮像され、その画像がビデオ信号Ｓａとして顔画像取得部２１に入力される。
【００４３】
ここで、撮像される画像の具体例を図６に示す。図６は、撮像される画像の一例を示す説明図であり、（ａ）は時刻ｔにおける画像を示し、（ｂ）は時刻（ｔ＋１）における画像を示し、（ａ）は時刻（ｔ＋２）における画像を示している。なお、図６においては、運転者は異常行動をした場合の撮像画像例を示している。
【００４４】
まず、図６（ａ）に示すように、時刻ｔにおいては、運転者が前方を視認する状態、すなわち正常な運転姿勢にあるときの画像が撮像される。ここで、運転者が助手席にあるものを取るなどの行動をした場合、図６（ｂ）に示すように、時刻（ｔ＋１）において運転者が助手席に身を乗り出し始めたときの画像が撮像される。
【００４５】
その後、図６（ｃ）に示すように、運転者は、時刻（ｔ＋２）において助手席に完全に身を乗り出した状態、すなわち、異常姿勢となったときの画像が撮像される。
【００４６】
このような画像の取得の後、顔画像取得部２１は、撮像装置１０からのビデオ信号Ｓａを入力して、データを記憶領域に格納すると共に、格納した顔画像データを画像処理部２２に出力する。画像処理部２２は、顔画像取得部２１からの顔画像のデータに基づいて、動きベクトルを求める。この際、画像処理部２２は、参照領域毎に動きベクトルを求める。そして、画像処理部２２は、求めた各領域毎の動きベクトルのデータを動き検出部２３に送出する。
【００４７】
動き検出部２３は、画像処理部２２により求められた各領域毎の動きベクトルに基づいて、領域グループそれぞれの代表ベクトルを検出する。そして、動き検出部２３は、求めた代表ベクトルのデータを運転者行動推定部２４に送出する。
【００４８】
運転者行動推定部２４は、動き検出部２３により検出された領域グループそれぞれの代表ベクトルの向き及び大きさ、並びに代表ベクトルを求めるに当たり用いられた動きベクトルの数に基づいて、行動を推定する。そして、運転者行動推定部２４は、推定結果を報知信号出力部２５に出力する。なお、運転者行動推定部２４は、場合によっては、領域グループそれぞれの顔画像上における位置に基づいて行動を推定してもよい。
【００４９】
その後、報知信号出力部２５は、運転者行動推定部２４からの検出結果を電気信号Ｓｂに変換して外部に出力する。そして、電気信号Ｓｂを受けた報知装置３０は、その信号に基づいて報知動作を行うこととなる。
【００５０】
次に、図３及び図７〜図１６を参照して、本実施形態に係る運転者行動推定装置２０の動作を詳細に説明する。
【００５１】
図７は、図２に示した画像処理部２２の動作を示すフローチャートである。まず、画像処理部２２は、顔画像取得部２１から顔画像のデータであるビデオ信号Ｓａを入力する。そして、画像処理部２２は、顔画像取得部２１からの顔画像にスムージングフィルタを適応し、所定の式にて画素値を変換する（ＳＴ１０）。ここで、スムージングフィルタは、以下に示す５行５列からなるフィルタである。
【００５２】
【数１】
2005018655.tif 000003
所定の式は、以下に示すものである。
【００５３】
【数２】
2005018655.tif 000004
なお、ｄ（ｘ，ｙ）は、顔画像内の任意位置の画素値であり、ｄ’（ｘ，ｙ）は変換後の画素値である。
【００５４】
画素値変換後、画像処理部２２は、ある時刻ｔのフィルタをかけた顔画像（前顔画像）に対して少なくとも１つ以上の参照領域を設定し、時刻ｔ＋１のフィルタをかけた顔画像（現顔画像）に対して探索領域（幅ｓｗ画素，高さｓｈ画素）を設定する。
【００５５】
ここで、再度図３を参照して、探索領域を説明する。同図に示すように、探索領域は、点Ｏを中心として設定される幅ｓｗ画素，高さｓｈ画素の領域である。この探索領域は、各参照領域を取り囲んで設定されるものであり、参照領域と同じ数だけ設定される。
【００５６】
すなわち、参照領域と探索領域とは中心を等しくし、ｓｗ＞ｔｗ且つｓｈ＞ｓｗの関係となるように設定される。なお、ここでの参照領域及び探索領域は、運転者の顔の位置等に依存せず、予め定められた位置及び大きさで設定される。
【００５７】
領域設定後、画像処理部２２は、現顔画像の探索領域内から、前顔画像内の参照領域に最も類似する位置を求めて、動きベクトル（ｘｄ，ｙｄ）を算出する（ＳＴ１１）。具体的には、画像処理部２２は、まず、探索領域内から参照領域に最も類似する領域を求め、最も類似する領域の中心点を、参照領域に最も類似する位置とする。そして、画像処理部２２は、求められた最も類似する領域の中心点と、探索領域の中心点とから動きベクトル（ｘｄ，ｙｄ）を算出する。
【００５８】
ここで、ステップＳＴ１１について詳細に説明する。図８は、図７に示すステップＳＴ１１における動きベクトル（ｘｄ，ｙｄ）の算出方法の説明図である。ステップＳＴ１１の処理において、画像処理部２２は、まず、候補領域を作成する。この候補領域は、参照領域と同じ大きさを有する領域である。具体的には、探索領域内の任意の位置を（α，β）とした場合、−（ｓｗ−ｔｗ）／２＜α＜（ｓｗ−ｔｗ）／２、且つ、−（ｓｈ−ｔｈ）／２＜β＜（ｓｈ−ｔｈ）の範囲から切り出した領域である。
【００５９】
画像処理部２２は、探索領域内の所定箇所に上記のような候補領域を設定し、設定した候補領域と参照領域とを比較等して、類似度を求める。次に、画像処理部２２は、候補領域を他の位置に動かし、動かした位置の候補領域と参照領域とを比較等して類似度を求める。
【００６０】
その後、画像処理部２２は、候補領域を順次移動させていき、探索領域内での各箇所において参照領域との類似度を算出する。類似度は、例えば、濃淡データを基準に判断される。ここで、濃淡データを基準に類似度を算出する場合において、類似度をｃｏｓθとすると、類似度は以下の式にて表される。
【００６１】
【数３】
2005018655.tif 000005
上式においては、参照領域の濃淡データをＴとし、候補領域の濃淡データをＳとしている。また、ｘｄは、探索領域内のＸ座標値を示し、ｙｄは、探索領域内のＹ座標値を示している。
【００６２】
以上から、画像処理部２２は、類似度が最大となる位置Ｓを定め、点Ｓと点Ｏとの座標値の差を動きベクトル（ｘｄ，ｙｄ）として取得する。
【００６３】
再度、図７を参照して説明する。動きベクトル（ｘｄ，ｙｄ）の算出後、画像処理部２２は、類似度の範囲（特徴量）が閾値以上か否かを判断する（ＳＴ１２）。すなわち、画像処理部２２は、まず、候補領域によって探索領域内を走査していき、探索領域内の各箇所の類似度を算出する。その後、画像処理部２２は、得られた類似度の分散を求め、この分散により類似度の範囲が閾値以上か否かを判断する。
【００６４】
ここで、類似度の範囲が小さい場合とは、探索領域内の各箇所において、同じような類似度が検出される場合である。例えば、参照領域が真っ白な画像である場合など、特徴が少ない場合には探索領域内のどの箇所と比較しても似たような類似度の結果が得られることとなる。そして、このような場合、それぞれ類似度の差が小さいことから、類似度が最大となる点Ｓの検出が不正確になりやすい。このため、図７のステップＳＴ１２の処理では、所定の閾値と比較し、好適なものと不適なものとの選別するようにしている。
【００６５】
ステップＳＴ１２において、類似度の範囲が閾値以上であると判断した場合（ＳＴ１２：ＹＥＳ）、画像処理部２２は、参照領域を有効な領域とし、ｆｄに「１」を代入する（ＳＴ１３）。そして、処理はステップＳＴ１５に移行する。なお、後述するが、運転者行動推定部２４は、ここで有効とされた領域の数を有効な動きベクトルとし、その数に基づいて行動の推定処理に用いる。
【００６６】
一方、類似度の範囲が閾値以上でないと判断した場合（ＳＴ１２：ＮＯ）、画像処理部２２は、参照領域を無効な領域とし、ｆｄに「０」を代入する（ＳＴ１４）。そして、処理はステップＳＴ１５に移行する。このように、画像処理部２２は、類似度の範囲と、予め設定される閾値とを比較することにより、後の計算に用いるか否かを判断している。
【００６７】
ステップＳＴ１５において、画像処理部２２は、領域の数だけ上記のステップＳＴ１１〜ＳＴ１４を行ったか否かを判断する（ＳＴ１５）。すなわち、画像処理部２２は、すべての参照領域について、探索領域内から類似する位置を特定したか否かを判断している。
【００６８】
いずれかの参照領域について、探索領域内から類似する位置を特定していないと判断した場合（ＳＴ１５：ＮＯ）、処理はステップＳＴ１１に戻り、類似する位置を特定していない参照領域について、上記ステップＳＴ１１〜ＳＴ１４の処理を繰り返すこととなる。
【００６９】
一方、すべての参照領域について、探索領域内から類似する位置を特定したと判断した場合（ＳＴ１５：ＹＥＳ）、画像処理部２２は、各参照領域毎の動きベクトルのデータを動き検出部２３に送信する。その後、画像処理部２２による処理は終了する。
【００７０】
なお、上記ステップＳＴ１２〜ＳＴ１４の処理は、運転者行動推定部２４が位置や動きベクトルの数に基づいて行動を推定する場合に、影響を与えるものとなるが、この点については後述することとする。
【００７１】
また、動きベクトルの計算方法は本実施形態の他に、八木信行監修，  ”ディジタル映像処理”，  映像情報メディア学会編，  ｐｐ．１２９−１３９，  ２０００，  オーム社  などにて動画像から動きを検出する手法が複数紹介されていおり、それらを用いることもできる。
【００７２】
次に、動き検出部２３の処理を説明する。図９は、図２に示した動き検出部２３の動作を示すフローチャートである。
【００７３】
まず、動き検出部２３は、領域グループが複数存在する場合には、複数の領域グループのうち処理の対象となるものを選択し、その領域グループの積算動きベクトルに関する数値ｘ，ｙ，ｃを「０」に初期化する（ＳＴ２０）。その後、動き検出部２３は、選択し領域グループ内の参照領域のうちいずれか１つを選択する。
【００７４】
そして、動き検出部２３は、選択した参照領域が有効領域であるか否か、すなわちｆｄが「１」であるか否かを判断する（ＳＴ２１）。ｆｄが「１」であると判断した場合（ＳＴ２１：ＹＥＳ）、動き検出部２３は、動きベクトルを積算する（ＳＴ２２）。具体的に、動き検出部２３は、「ｘ」を「ｘ＋ｘｄ」とし、「ｙ」を「ｙ＋ｙｄ」とし、「ｃ」を「ｃ＋１」とする。そして、処理はステップＳＴ２３に移行する。
【００７５】
一方、ｆｄが「１」でないと判断した場合（ＳＴ２１：ＮＯ）、動き検出部２３は、動きベクトルを積算することなく、処理はステップＳＴ２３に移行する。
【００７６】
ステップＳＴ２３において、動き検出部２３は、選択した領域グループ内のすべての参照領域について処理したか否かを判断する（ＳＴ２３）。いずれかの参照領域について処理をしてないと判断した場合（ＳＴ２３：ＮＯ）、処理はステップＳＴ２１に戻り、上記ステップＳＴ２１，ＳＴ２２を繰り返すこととなる。すなわち、動き検出部２３は、すべての参照領域について有効領域か否かを判断し、有効領域である場合には、動きベクトルを積算するという処理を行っていく。
【００７７】
そして、順次動きベクトルの積算等が行われ、すべての参照領域について処理した場合（ＳＴ２３：ＹＥＳ）、動き検出部２３は、ｃが「０」であるか否かを判断する（ＳＴ２４）。
【００７８】
「ｃ」が「０」であると判断した場合（ＳＴ２４：ＹＥＳ）、処理はステップＳＴ２６に移行する。一方、「ｃ」が「０」でないと判断した場合（ＳＴ２４：ＮＯ）、動き検出部２３は、積算した「ｘ」「ｙ」についての平均を求める（ＳＴ２５）。すなわち、動き検出部２３は、「ｘ＝ｘ／ｃ」及び「ｙ＝ｙ／ｃ」を実行し、動きベクトルの平均を求める。この動きベクトルの平均が上述した代表ベクトルとなる。
【００７９】
ここで、「ｃ」の値が「０」である場合とは、有効とされる領域が１つもない場合である。そして、有効とされる領域が１つもない場合には、代表ベクトルは算出されないこととなる。つまり、代表ベクトルの算出処理は、参照領域のうち有効とされた領域数に依存するものである。言い換えれば、代表ベクトルの算出処理は、有効領域から求められた動きベクトルの数に依存するといえる。
【００８０】
また、運転者行動推定部２４は、行動の推定の際に代表ベクトルを用いる。従って、運転者行動推定部２４は、代表ベクトルを求める際に必要とされる動きベクトルの数（有効なもの）を用いているといえる。このため、運転者行動推定部２４は、動きベクトルの数に基づいて行動を推定するといえる。
【００８１】
さらに、「ｃ」の値が「０」である場合、代表ベクトルが算出されないことから、代表ベクトルの位置という概念が生じ得ない。すなわち、行動の推定の際に代表ベクトルを用いる運転者行動推定部２４は、代表ベクトルの位置に基づいて、行動を推定しているともいえる。なお、代表ベクトルが算出されない場合には、以下に説明する推定を行わず、誤った推定結果を得てしまうことを防止することができる。
【００８２】
さらに、ステップＳＴ２６の平均化処理は、以下の理由により行っている。まず、前顔画像と現顔画像の間で求めた参照領域の動きベクトルは、時間微分した単位時間の動きベクトル、つまり速度ベクトルを表しているといえる。そして、理論上、速度ベクトルを順次積算していくと、移動した後の顔部位等の位置を示すことができる。
【００８３】
しかし、動きベクトルは揺らぎやノイズ等を含むことが多く、１つの参照領域の動きベクトルを順次積算しても、移動後の位置を正確に求めることはできない。例えば、運転者の顔が中央から右を向いて中央に戻る場合、動きベクトルの積算値を求めると、右を向くときの動きベクトルの積算値と、中央に戻る時のときの動きベクトルの積算値とはノイズ等の影響により一致しない。このため、右を向き始めるとき（動作開始時）と、顔が正面に戻ったとき（動作終了時）とで顔部位等の位置がずれて検出されることがわかっている。そこで、動き検出部２３は、領域グループ毎に動きベクトルの平均を求めてノイズ等の影響を低減するようにしている。
【００８４】
ここで、上述した動き検出部２３は、この代表ベクトルのデータを運転者行動推定部２４に送出しているが、検出等の精度を図るべく、以降の処理を実行し、代表ベクトルに基づく移動量（後述する）を検出して送出するようにしてもよい。以下にその手法を示す。
【００８５】
上記代表ベクトルである動きベクトルの平均の算出後、動き検出部２３は、求めた動きベクトルの平均について、移動平均値を求め、領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）を求める（ＳＴ２６）。なお、移動平均を求める範囲は任意に定められている。また、領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）を求めるのは、上記動きベクトルの平均であっても、未だノイズ等を含んでいるため、さらにノイズ等の影響を低減するためである。
【００８６】
その後、動き検出部２３は、ステップＳＴ２６にて求めた領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）を積算する（ＳＴ２７）。具体的に、動き検出部２３は、「ｓｘ」を「ｓｘ＋ａｘ」とし、「ｓｙ」を「ｓｙ＋ａｙ」とする。ここで、領域グループの単位時間当たりの動きベクトルを積算するため、得られる（ｓｘ、ｓｙ）は、領域グループにおいて顔部位等が動いた量を積算したもの、すなわち現在位置を示すものとなる。
【００８７】
その後、動き検出部２３は、現在位置（ｓｘ，ｓｙ）の移動平均により基準位置（ｃｘ，ｃｙ）を求める（ＳＴ２８）。この移動平均を求める範囲についても任意に定められている。
【００８８】
そして、動き検出部２３は、現在位置（ｓｘ，ｓｙ）と基準位置（ｃｘ，ｃｙ）の差から移動量（ｖｘ，ｖｙ）を得る（ＳＴ２９）。具体的に、動き検出部２３は、「ｖｘ」を「ｓｘ−ｃｘ」とし、「ｖｙ」を「ｓｙ−ｃｙ」とする。
【００８９】
図１０は、移動量（ｖｘ，ｖｙ）の説明図であり、（ａ）は或る時刻における移動量（ｖｘ，ｖｙ）を示しており、（ｂ）は移動量（ｖｘ，ｖｙ）を時系列的に示している。
【００９０】
図１０（ａ）から、移動量（ｖｘ，ｖｙ）が現在位置（ｓｘ，ｓｙ）と基準位置（ｃｘ，ｃｙ）の差であることが明らかである。図１０（ｂ）では、現在位置（ｓｘ，ｓｙ）と基準位置（ｃｘ，ｃｙ）とが推移している様子が明らかとなっている。前述のように現在位置（ｓｘ，ｓｙ）は、運転者の顔の動作ににより変動し、基準位置（ｃｘ，ｃｙ）は、現在位置（ｓｘ，ｓｙ）の移動平均であるため、変動する。
【００９１】
このため、或る時刻における現在位置（ｓｘ，ｓｙ）と他の時刻における現在位置（ｓｘ，ｓｙ）とが同じであったとしても、基準位置（ｃｘ，ｃｙ）が異なっている場合、移動量（ｖｘ，ｖｙ）は異なったものとなる。
【００９２】
再度、図９を参照する。動き検出部２３は、基準位置（ｃｘ，ｃｙ）が閾値以上であるか否かを判断する（ＳＴ３０）。基準位置（ｃｘ，ｃｙ）が閾値以上でないと判断した場合（ＳＴ３０：ＮＯ）、動き検出部２３は、移動量（ｖｘ，ｖｙ）のデータを運転者行動推定部２４に送出し、処理はステップＳＴ３４に移行する。
【００９３】
一方、移動量（ｖｘ，ｖｙ）が閾値以上であると判断した場合（ＳＴ３０：ＹＥＳ）、動き検出部２３は、移動量（ｖｘ，ｖｙ）の標準偏差が閾値以下であるか否かを判断する（ＳＴ３１）。移動量（ｖｘ，ｖｙ）の標準偏差が閾値以下でないと判断した場合（ＳＴ３１：ＮＯ）、動き検出部２３は、移動量（ｖｘ，ｖｙ）のデータを運転者行動推定部２４に送出し、処理はステップＳＴ３４に移行する。
【００９４】
一方、移動量（ｖｘ，ｖｙ）の標準偏差が閾値以下であると判断した場合（ＳＴ３２：ＹＥＳ）、動き検出部２３は、領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）が閾値以下であるか否かを判断する（ＳＴ３２）。領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）が閾値以下でないと判断した場合（ＳＴ３２：ＮＯ）、動き検出部２３は、移動量（ｖｘ，ｖｙ）のデータを運転者行動推定部２４に送出し、処理はステップＳＴ３４に移行する。
【００９５】
一方、領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）が閾値以下であると判断した場合（ＳＴ３２：ＹＥＳ）、動き検出部２３は、現在位置（ｓｘ，ｓｙ）を「０」に初期化する（ＳＴ３３）。そして、動き検出部２３は、移動量（ｖｘ，ｖｙ）のデータを運転者行動推定部２４に送出し、処理はステップＳＴ３４に移行する。
【００９６】
ステップＳＴ３４では、すべての領域グループについて処理したか否かが判断される（ＳＴ３４）。いずれかの領域グループについて処理をしてないと判断した場合（ＳＴ３４：ＮＯ）、処理は再度ステップＳＴ２０に戻り、同様の処理を行っていくこととなる。一方、すべての領域グループについて処理したと判断した場合（ＳＴ３４：ＹＥＳ）、動き検出部２３は移動量（ｖｘ，ｖｙ）のデータを運転者行動推定部２４に送出する。その後、動き検出部２３による処理は終了する。
【００９７】
なお、上記ステップＳＴ３１〜ＳＴ３３の処理は、ノイズが現在位置（ｓｘ，ｓｙ）として累積されてしまうことを防止すべく行っている。まず、現在位置（ｓｘ，ｓｙ）は、ステップＳＴ２７にて求められている。ここで、現在位置（ｓｘ，ｓｙ）を求める際に用いられる領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）は、ステップＳＴ２５の平均化、及びステップＳＴ２６の移動平均の算出によりノイズ等が低減されたものとなっている。ところが、領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）は、ノイズ等を含んでいないとは言えない。
【００９８】
このため、ノイズ等が徐々に現在位置（ｓｘ，ｓｙ）に蓄積されてしまう可能性があると言える。そして、ノイズ等が現在位置（ｓｘ，ｓｙ）に蓄積されてしまうと、現在位置（ｓｘ，ｓｙ）の移動平均である基準位置（ｃｘ，ｃｙ）にも当然にノイズ等が累積されて、基準を示す役割を果たさなくなってしまう。そこで、顔の向きの検出や顔以外のものの撮像範囲内への出入の検出に支障をきたことがないように、まず、上記ステップＳＴ３１にて、基準位置（ｃｘ，ｃｙ）が閾値以上か否かを判断している。そして、閾値以上の場合に現在位置（ｓｘ，ｓｙ）を「０」に初期化するようにしている。このように、所定の条件に基づいて現在位置（ｓｘ，ｓｙ）を初期化することにより、好適に検出対象を検出するようにしている。
【００９９】
ただし、現に運転者が顔の向きを変えている段階や顔以外のものが撮像範囲内への出入している段階において現在位置（ｓｘ，ｓｙ）を「０」に初期化してしまうと、初期化することによって逆に検出対象の検出に支障をきたしてしまう。そこで、ステップＳＴ３２及びＳＴ３３において、顔が動いていない状態や顔以外のものが撮像範囲内に出入していない状態であることを検出している。すなわち、動き検出部２３は、基準位置（ｃｘ，ｃｙ）の標準偏差が閾値以下であり、且つ領域グループの単位時間当たりの動きベクトル（ａｘ，ａｙ）が閾値以下であるという条件に基づいて、現在位置（ｓｘ，ｓｙ）を「０」に初期化するようにしている。
【０１００】
そして、図９に示した処理の終了後、運転者行動推定部２４は、運転者の行動を推定する。ここで、運転者の行動を推定する処理を説明する。
【０１０１】
図１１は、運転者行動推定部２４による運転者行動の推定処理を示すフローチャートである。まず、運転者行動推定部２４は、領域グループが複数ある場合、複数のうちの１つを選択する。そして、選択した領域グループについて図１１に示す処理を実行する。
【０１０２】
すなわち、運転者行動推定部２４は、処理の対象としている領域グループの有効領域数ｃが設定最大値（上限値）以上か否かを判断する（ＳＴ４０）。領域グループの有効領域数ｃが設定最大値以上であると判断した場合（ＳＴ４０：ＹＥＳ）、運転者行動推定部２４は、運転者行動有りと判定し、変数ｆｃに「０１」を代入する（ＳＴ４１）。そして、処理はステップＳＴ４５に移行する。
【０１０３】
一方、領域グループの有効領域数ｃが設定最大値以上でないと判断した場合（ＳＴ４０：ＮＯ）、運転者行動推定部２４は、領域グループの有効領域数ｃが設定最小値（下限値）以下か否かを判断する（ＳＴ４２）。
【０１０４】
領域グループの有効領域数ｃが設定最小値以下であると判断した場合（ＳＴ４１：ＹＥＳ）、運転者行動推定部２４は、姿勢変化中と判定し、変数ｆｃに「１０」を代入する（ＳＴ４３）。そして、処理はステップＳＴ４５に移行する。
【０１０５】
一方、領域グループの有効領域数ｃが設定最小値以下でないと判断した場合（ＳＴ４１：ＮＯ）、運転者行動推定部２４は、運転者行動無しと判定し、変数ｆｃに「００」を代入する（ＳＴ４４）。そして、処理はステップＳＴ４５に移行する。
【０１０６】
ステップＳＴ４５において、運転者行動推定部２４は、顔の横方向の移動量ｖｘが設定最大値（上限値）以上か否かを判断する（ＳＴ４５）。移動量ｖｘが設定最大値以上であると判断した場合（ＳＴ４５：ＹＥＳ）、運転者行動推定部２４は、右へ移動中と判定し、変数ｆｘに「０１」を代入する（ＳＴ４６）。そして、処理はステップＳＴ５０に移行する。
【０１０７】
一方、移動量ｖｘが設定最大値以上でないと判断した場合（ＳＴ４５：ＮＯ）、運転者行動推定部２４は、移動量ｖｘが設定最小値（下限値）以下か否かを判断する（ＳＴ４７）。
【０１０８】
移動量ｖｘが設定最小値以下であると判断した場合（ＳＴ４７：ＹＥＳ）、運転者行動推定部２４は、左へ移動中と判定し、変数ｆｘに「１０」を代入する（ＳＴ４８）。そして、処理はステップＳＴ５０に移行する。
【０１０９】
一方、移動量ｖｘが設定最小値以下でないと判断した場合（ＳＴ４７：ＮＯ）、運転者行動推定部２４は、運転者行動無しと判定し、変数ｆｘに「００」を代入する（ＳＴ４９）。そして、処理はステップＳＴ５０に移行する。
【０１１０】
ステップＳＴ５０において、運転者行動推定部２４は、顔の縦方向の移動量ｖｙが設定最大値（上限値）以上か否かを判断する（ＳＴ５０）。移動量ｖｘが設定最大値以上であると判断した場合（ＳＴ５０：ＹＥＳ）、運転者行動推定部２４は、下へ移動中と判定し、変数ｆｙに「０１」を代入する（ＳＴ５１）。そして、処理はステップＳＴ５５に移行する。
【０１１１】
一方、移動量ｖｙが設定最大値以上でないと判断した場合（ＳＴ５０：ＮＯ）、運転者行動推定部２４は、移動量ｖｙが設定最小値（下限値）以下か否かを判断する（ＳＴ５２）。
【０１１２】
移動量ｖｙが設定最小値以下であると判断した場合（ＳＴ５２：ＹＥＳ）、運転者行動推定部２４は、左へ移動中と判定し、変数ｆｙに「１０」を代入する（ＳＴ５３）。そして、処理はステップＳＴ５５に移行する。
【０１１３】
一方、移動量ｖｙが設定最小値以下でないと判断した場合（ＳＴ５２：ＮＯ）、運転者行動推定部２４は、運転者行動無しと判定し、変数ｆｙに「００」を代入する（ＳＴ５４）。そして、処理はステップＳＴ５５に移行する。
【０１１４】
ステップＳＴ５５において、運転者行動推定部２４は、上記にようにして求められたｆｃ、ｆｘ、ｆｙから想定される運転者行動を推定結果として得る（ＳＴ５５）。そして、処理は終了する。なお、有効領域数が「０」である場合には、代表ベクトルが得られず、移動量も得られないことから、図１１に示す処理は中止される。
【０１１５】
次に、図１１に示したステップＳＴ５５にて、得られる運転者行動の推定結果について説明する。まず、運転者行動推定部２４は、求められたｆｃに基づいて、運転者の有無を推定する。
【０１１６】
図１２は、運転者の有無を推定する場合の動きベクトルの例を示す説明図であり、（ａ）は乗車前における動きベクトルの例を示し、（ｂ）は乗車最中における動きベクトルの例を示し、（ｃ）は乗車完了後における動きベクトルの例を示している。なお、図１２中において、参照領域を示す四角枠が実線にて図示されているものは、図９のステップＳＴ１２にて「ＮＯ」と判断され、無効領域とされた参照領域であり、四角枠が破線にて図示されているものは、図９のステップＳＴ１２にて「ＹＥＳ」と判断され、有効領域とされた参照領域である。
【０１１７】
まず、運転者の乗車前の状態において画像内の物体等には当然に動きが見られず、動きベクトルは検出されない。このため、参照領域の多くが無効領域となっている（図１２（ａ））。その後、運転者が乗車し始めると、運転者の動きが検出されて動きベクトルが検出される。このため、参照領域の一部が有効領域となる（図１２（ｂ））。その後、運転者は乗車を完了する。このとき、運転者は一端静止状態となるため、動きベクトルの大きさは小さいものとなるが、運転者は完全には停止することができず僅かながら動くため、参照領域の殆どが有効領域となる（図１２（ｃ））。
【０１１８】
このときの有効領域数の推移を説明する。図１３は、図１２に示した有効領域の数の推移を示す説明図である。なお、図１３において、縦軸は有効領域数を示し、横軸は時刻を示している。また、図１３では、図１１のステップＳＴ４０の処理に用いられた上限値を「１５」とし、ステップＳＴ４２の処理に用いられた下限値を「６」とする。
【０１１９】
まず、図１２（ａ）に示した乗車前などの状態（時刻３５１４０〜３５１６４の期間）において、有効領域数は６以下となっている。すなわち、有効領域数は下限値以下となっている。その後、図１２（ｂ）のように、運転者が乗車し始めると、有効領域数は増加し始める（時刻３５１６４〜３５２０４の期間）。このとき、有効領域数は、６を超え且つ１５未満となり、下限値を超えるものの上限値を下回っている。そして、図１２（ｃ）のように、乗車完了の状態（時刻３５２０４〜３５２５０の期間）では、有効領域数はさらに増加し、１５以上となる。
【０１２０】
このように、有効領域数は、運転者の有無によって変化する。このため、運転者行動推定部２４は、有効領域の数に基づいて得られた変数ｆｃから、運転者行動の１つである運転者の有無を推定することができる。
【０１２１】
なお、乗車前の状態では、有効領域がほぼ全て無効領域となっているが、乗車前の状態に限らず、運転者が乗車しているが身体を大きく動かして画角外に出てしまった状態であっても有効領域がほぼ全て無効領域となる。
【０１２２】
また、運転者行動推定部２４は、ステップＳＴ５５において求められた変数ｆｃ，ｆｘ，ｆｙに基づいて、運転者の行動を推定する。
【０１２３】
図１４は、求められた変数ｆｃ，ｆｘ，ｆｙから推定される運転者の行動についての説明図であり、（ａ）は変数ｆｃが「００」である場合の運転者の行動を示し、（ｂ）は変数ｆｃが「０１」である場合の運転者の行動を示し、（ｃ）は変数ｆｃが「１０」である場合の運転者の行動を示している。
【０１２４】
まず、変数ｆｃが「００」である場合、すなわち、運転者が画像内から検出されない場合、運転者の行動は図１４（ａ）に示すように推定される。具体的には、ｆｘが「０１」であり、運転者が右へ移動中であると判定した場合に、ｆｙが「０１」ときは、運転者行動として、運転者が下を覗き込んだと推定する。また、ｆｙが「００」「１０」ときは、ドア（窓）から身を乗り出した降車時に行う行動であると推定する。
【０１２５】
また、ｆｘが「００」であり、運転者の画像横方向への移動がないと判定した場合に、ｆｙが「０１」ときは、運転者行動として、運転者が下を覗き込んだと推定する。また、ｆｙが「１０」ときは、身を前方に乗り出したと推定する。
【０１２６】
なお、ｆｘ及びｆｙが「００」である場合とは、そもそも運転者が乗車していないといえる。まず、運転者がいない状態（ｆｃ＝「００」）には、運転者が何らかの行動をして画角外に出た場合と、そもそも運転者が乗車していない場合とがある。ここで、運転者が何らかの行動をして画角外に出た場合には、運転者の動きを示すｆｘ，ｆｙの少なくとも一方に動作を示す値「０１」又は「１０」が得られているはずである。従って、ｆｘ，ｆｙの双方が「００」である場合は、運転者が何らかの行動をして画角外に出た場合には該当せず、そもそも運転者が乗車していないといえる。
【０１２７】
上記図１２及び図１３に示す例にあっては、有効領域数が下限値以下の場合に運転者が乗車していないと推定している。しかし、好適には、変数ｆｃ，ｆｘ，ｆｙのすべてが「００」であるときに、運転者が乗車していないと推定することが望ましい。
【０１２８】
また、変数ｆｃが「０１」である場合、すなわち、運転者が画像内から検出される場合、運転者の行動は図１４（ｂ）に示すように推定される。具体的には、ｆｘが「０１」であり、運転者が右へ移動中であると判定した場合に、ｆｙが「０１」ときは、運転者行動として、右下方への小さなズレであると推定する。また、ｆｙが「００」ときは右方向への小さなズレと推定し、ｆｙが「１０」ときは、右上方への小さなズレであると推定する。ここで、ズレとは、例えば、車両が凹凸のある道路を走行しているときに、振動等により運転者の身体が移動することをいう。
【０１２９】
また、ｆｘが「００」であり、運転者の画像横方向への移動がないと判定した場合に、ｆｙが「０１」ときは、運転者行動として、下方への小さなズレであると推定する。また、ｆｙが「１０」ときは、上方への小さなズレであると推定する。また、ｆｙが「００」である場合には、運転者が何ら行動をしていないので、正面を向いていると推定する。
【０１３０】
また、ｆｘが「１０」であり、運転者が左へ移動中であると判定した場合に、ｆｙが「０１」ときは、運転者行動として、左下方への小さなズレであると推定する。また、ｆｙが「００」ときは左方向への小さなズレと推定し、ｆｙが「１０」ときは、左上方への小さなズレであると推定する。
【０１３１】
また、変数ｆｃが「１０」である場合、すなわち、運転者が移動中であると検出される場合、運転者の行動は図１４（ｃ）に示すように推定される。具体的には、ｆｘが「０１」であり、運転者が右へ移動中であると判定した場合に、ｆｙが「０１」ときは、運転者行動として、右下方への大きなズレであると推定する。また、ｆｙが「００」ときは右方向への大きなズレと推定し、ｆｙが「１０」ときは、右上方への大きなズレであると推定する。
【０１３２】
また、ｆｘが「００」であり、運転者の画像横方向への移動がないと判定した場合に、ｆｙが「０１」ときは、運転者行動として、下方への大きなズレであると推定する。また、ｆｙが「１０」ときは、上方への大きなズレであると推定する。なお、ｆｘ及びｆｙの双方が「００」である場合には、そもそも運転者が何ら行動をしていないので、変数ｆｃが「１０」である運転者移動中に該当することがない。
【０１３３】
また、ｆｘが「１０」であり、運転者が左へ移動中であると判定した場合に、ｆｙが「０１」ときは、運転者行動として、左下方への大きなズレであると推定する。また、ｆｙが「００」ときは左方向への大きなズレと推定し、ｆｙが「１０」ときは、左上方への大きなズレであると推定する。
【０１３４】
また、図１４に示す例以外にも表１のように異常行動のみを推定するようにしてもよい。
【０１３５】
【表１】
2005018655.tif 000006
表１を用いる場合には、運転中に下に落ちた物を拾おうとした、助手席もしくは後席の物を取ろうとした等の異常行動の検出が容易となり、異常時において報知装置３０からその旨をいち早く促すことができる。すなわち、前方を全く視認していない異常時に車線逸脱等してしまっても、迅速に車線内を走行するように促すことができる。さらには、シートベルト、エアバック及びヘッドレスト等の装置の効果を充分に発揮させる姿勢にいち早く戻すように促すことができる。
【０１３６】
また、異常行動に特化して推定する場合、運転者が異常行動をし、その状態が継続する時間等も容易に推定することができる。さらに、この場合、車両状態検出手段４０により車両走行中であることを示す信号が入力されたときにのみに、異常行動の推定するようにしてもよい。すなわち、車両停車時には異常行動があったとしても何ら問題ないため、運転者の有無のみを推定対象とし、走行中においてのみ異常行動の推定するようにしてもよい。
【０１３７】
このように、推定すべき対象を切り換えることにより、一層好適に運転者の行動を推定することができる。なお、この切換は、車速の有無により行われる場合に限らず、他の情報に基づいて行われてもよい。例えば、環境情報検出手段５０から車両が交差点に差し掛かっているという情報を得た場合などに、切換が行われてもよい。
【０１３８】
次に、運転者の行動が変数ｆｃ，ｆｘ，ｆｙから推定される様子をより詳細に説明する。図１５は、運転者の行動を推定する場合の動きベクトルの例を示す説明図であり、（ａ）は正常な運転姿勢における動きベクトルの例を示し、（ｂ）は画角外への移動中における動きベクトルの例を示し、（ｃ）は異常姿勢における動きベクトルの例を示している。なお、図１５中において、参照領域を示す四角枠が実線にて図示されているものは、図９のステップＳＴ１２にて「ＮＯ」と判断され、無効領域とされた参照領域であり、四角枠が破線にて図示されているものは、図９のステップＳＴ１２にて「ＹＥＳ」と判断され、有効領域とされた参照領域である。
【０１３９】
まず、運転者が正常な運転姿勢である場合において、画像内の参照領域の多くが有効領域となる（図１５（ａ））。その後、運転者が画角外に移動し始めると、運転者の動きが検出されて動きベクトルが検出される。このため、参照領域の一部は有効領域のままであるが、運転者がいなくなった箇所の参照領域は一部無効領域となる（図１５（ｂ））。その後、運転者は異常姿勢となる。このとき、運転者がいなくなることから、動きベクトルが検出されず、参照領域の殆どが無効領域となる（図１５（ｃ））。
【０１４０】
図１６は、図１５に示した場合における有効領域の数及び移動量の推移を示す説明図である。なお、図１６において、縦軸は有効領域数を示し、横軸は時刻を示している。
【０１４１】
図１６に示すように、移動量は右方向及び下方向への移動を示している。すなわち、ｆｘ，ｆｙは双方とも「０１」となることがわかる。また、有効領域数は減少を示している。そして、有効領域数は最終的に「５」付近まで減少している。このため、ｆｃは「００」となることがわかる。
【０１４２】
ここで、図１４を参照すると、ｆｃ，ｆｘ，ｆｙが「００」「０１」「０１」である場合、運転者が下を覗き込んだ動作を行ったと推定される。図１５にも示す例では、運転者は下側を覗き込んでいる。よって、運転者の行動は的確に推定されたと言える。
【０１４３】
そして、推定した結果を報知信号出力部２５が報知装置３０に伝え、報知装置３０は、報知が必要な場合に報知動作を行うこととなる。
【０１４４】
なお、上記したように、有効領域数は、有効な動きベクトルの数とも言える。従って、動きベクトルの数は、直接有効領域の数として、推定処理に用いられると共に、代表ベクトルを求める際にも用いられる。代表ベクトルを求めた場合、上記したように移動量（ｖｘ，ｖｙ）が求められることとなることから、動きベクトルの数は、直接的且つ間接的の双方で推定処理に必要とされることとなる。
【０１４５】
このようにして、本実施形態に係る運転者行動推定装置２０では、領域グループそれぞれから得られる代表となる動きベクトルの向き及び大きさに基づいて、運転者の行動を推定している。この代表となる動きベクトルは、画像中における物体等の動きを表すものであり、特定の部位を追跡するものではない。このため、例えば運転者が顔を速く動かした場合であっても、すなわち、特定の顔部位を追跡できない状況下にあっても、顔の動きを捕らえることができる。さらには、運転者の顔が画角外に出てしまっても、画角外に出ていく行動を画像中における動きから得ることができる。このように、動きを捕らえることができるため、この動きに基づいて、運転者行動の推定を容易にすることができる。従って、的確に運転者の行動を推定することができる。
【０１４６】
また、顔画像のサイズに基づいて、参照領域を顔部位程度の大きさに設定している。このため、大き過ぎる参照領域を設定して計算量が増大していしまうことを防止すると共に、１つの参照領域内に同時に複数の特徴的な部位が入る可能性を少なくすることができる。さらに、小さ過ぎる領域を設定して特徴的な部位がない領域となることを防ぐことができる。
【０１４７】
また、領域グループ毎の代表となる動きベクトルの向き及び大きさに加え、領域グループ毎の動きベクトルの数に基づいて、運転者の行動を推定するので、より詳細に推定処理を行うことができる。従って、一層的確に運転者の行動を推定することができる。
【０１４８】
また、１又は複数の演算領域それぞれは、各探索領域内にて算出された特徴量（類似度）の変化量（分散値）と予め設定した閾値とが比較されることにより、各領域を動きベクトルの計算に用いるか否かが判断される。このため、特徴のない参照領域が設定されたことにより、不正確な検出してしまうことを防止することができる。さらには、後の処理において運転者の行動を推定するためのパラメータとすることができる。
【０１４９】
また、領域グループ毎の代表となる動きベクトルの向き及び大きさ、並びに前記領域グループ毎の動きベクトルの数のそれぞれと、予め設定される上限値及び下限値との比較する。そして、運転者が画角内に入ってくる行動、運転者が画角外に出ていく行動、運転姿勢から逸脱した状態を継続する行動のうち、少なくとも１つを推定する。ここで、動きベクトルの向きは運転者の移動方向を示すことができ、動きベクトルの大きさは運転者の移動速度を示すことができる。また、動きベクトルの数は有効領域数を示し、この有効領域数は、運転者の有無を示すことができる。そして、予め設定された上限値及び下限値と比較して、動きベクトルの向き、大きさ、及び数を総合的に判断することにより、運転者が画角内に入ってくる行動、運転者が画角外に出ていく行動及び運転姿勢から逸脱した状態を継続する行動を推定することができる。
【０１５０】
また、車両の状態を検出する車両状態検出手段４０からの信号と、車両の周囲環境を検出する環境情報検出手段５０からの信号との少なくとも一方に基づいて、推定すべき行動を変更している。このため、状況に応じて適切に運転者の行動を推定することができる。特に、状況に応じて行われる可能性が高い運転者の行動を対象とすることにより、一層効果的な推定を行うことができる。
【０１５１】
また、領域グループ毎の代表となる動きベクトルの位置に基づいて、運転者の行動を推定する。すなわち、代表ベクトルが算出され得る状態であるかを判別することとなり、代表ベクトルが算出されない状態に基づいて、推定処理を行うことを防止でき、より精度良く運転者の行動を推定することができる。
【０１５２】
また、本実施形態では、コスト低減を図ることができる。すなわち、従来の装置では、顔の動きが速いような場合、特定の顔部位を追跡するようにするために、高フレームレートのカメラを撮像装置に使用する必要がある。例えば、１秒間に約３０枚の顔画像を撮像できる一般的なビデオカメラを使用せず、これよりも高フレームレートのカメラ使用することとなる。この場合、従来の装置では、高価なカメラを使用することとなってしまう。また、カメラの撮像速度が速いことから、装置の処理速度を速くする必要がある。ところが、本実施形態では、特定の顔部位を追跡できない状況下にあっても、顔の動きを捕らえることができるので、上記問題が発生せず、コスト低減を図ることができる。
【０１５３】
また、一般的に、運転者は、一時停止が必要な交差点に進入する際や駐車場から公道に出る際などに、確認を行うため体を前方に乗り出す動作を行う。また、左折時の左後方確認等を行う場合には、運転者は体を左後方に大きくひねる動作を行う。
【０１５４】
通常、運転者の頭部は、撮像範囲内に納まるようになっている。ところが、確認を行うため運転者が動作した場合には、頭部の一部が撮像範囲外に出てしまうことがある。そして、運転者の顔が撮像範囲外にまで移動してしまった場合、従来装置では運転者の特定の顔部位を追跡することができなくなってしまう。
【０１５５】
これに対し、特開２０００−１１３１６４号公報記載の装置では、今回及び前回に撮像された画像の差分画像を形成し、差分から求まる運転者の動きを検出することにより、運転者の姿勢を検出するようにしている。
【０１５６】
しかし、この装置では、姿勢を検出するのみであり、実際に顔の特定部位を撮像できるわけではない。このため、顔の特定部位が撮像範囲外に出てしまわないように追従手段等を設ける必要がある。ところが、確認動作時の顔の動きは速いため、追従手段等を設けたとしても、顔の特定部位を追跡しきれず、顔の特定部位を追跡できなくなってしまう。
【０１５７】
このように、従来の装置では、確認動作時に運転者が体を動かした場合の対応が不十分である。しかし、本実施形態においては、特定の顔部位を追跡できない状況下にあっても、運転者の動き自体を捕らえているので、確認動作時に運転者が体を動かして特定部位が撮像範囲外に移動しても、行動の推定に支障をきたすことがない。
【０１５８】
次に、本発明の第２実施形態を説明する。なお、第２実施形態では、主に第１実施形態との相違点について説明することとする。
【０１５９】
第２実施形態に係る運転者行動推定システム１ａ及び運転者行動推定装置２０の構成は、第１実施形態に示すものと同じであるが、運転者行動推定装置２０が推定対象を運転者以外のものの行動としている点で相違する。また、運転者行動推定部２４ａが行う処理が異なっている点で相違する。さらに、領域グループの設定についても異なっている。
【０１６０】
ここで、運転者以外のものの行動としては、助手席側の乗員が運転者に対して行う行動や、運転者自身が雑誌等を持ち上げたときに撮像範囲内に進入してくる雑誌などの異物に関する行動が含まれる。
【０１６１】
以下、相違する内容について説明する。図１７は、第２実施形態における領域グループの設定の様子を示す説明図である。同図に示すように、領域グループは、８つ設定されている。これら８つの領域グループは、画像の周辺部に設定され、画像中央部に動きベクトルが検出された場合に、動きベクトルの向きを負方向とし、画像外側に動きベクトルが検出された場合に、動きベクトルの向きを正方向とするようにされている。
【０１６２】
図１８は、第２実施形態に係る運転者行動推定部２４ａによる処理内容を示すフローチャートである。まず、運転者行動推定部２４は、領域グループ毎の動きベクトル（ｖｘ，ｖｙ）から、移動量を求める（ＳＴ６０）。この際、運転者行動推定部２４は、画像中央側を負方向として画像外側を正方向して移動量を求める。
【０１６３】
その後、運転者行動推定部２４は、移動量が下限値（負の値）以下か否かを判断する（ＳＴ６１）。移動量が下限値以下でないと判断した場合（ＳＴ６１：ＮＯ）、処理はステップＳＴ６３に移行する。一方、移動量が下限値以下であると判断した場合（ＳＴ６１：ＹＥＳ）、異物が画角内に進入したと判断し、ｆｌａｇを「１」とする（ＳＴ６２）。そして、処理はステップＳＴ６３に移行する。
【０１６４】
ここで、移動量が下限値以下である場合とは、動きベクトルは画像中央側に向いており、何らかの物体等が画角内に進入してきたと言える。そこで、物体等の進入の有無を示すｆｌａｇを「１」とする。
【０１６５】
ステップＳＴ６３において、運転者行動推定部２４は、移動量が上限値（正の値）以上か否かを判断する（ＳＴ６３）。移動量が上限値以上でないと判断した場合（ＳＴ６３：ＮＯ）、処理は終了する。一方、移動量が上限値以上であると判断した場合（ＳＴ６３：ＹＥＳ）、異物が画角内から出ていったと判断し、ｆｌａｇを「０」とする（ＳＴ６４）。そして、処理は終了する。
【０１６６】
ここで、移動量が上限値（正の値）以上である場合とは、動きベクトルは画像外側に向いており、何らかの物体等が画角内から出ていったと言える。そこで、物体等の進入の有無を示すｆｌａｇを「０」とする。
【０１６７】
次に、運転者が雑誌等を見ようとして、画角内に雑誌等を進入させた場合を例に説明する。図１９は、画角内に雑誌等を進入させたときの動きベクトルの例を示す説明図であり、（ａ）は進入前を示し、（ｂ）は進入中を示し、（ｃ）は進入後を示す。
【０１６８】
まず、図１９（ａ）に示すように、運転者は正常な運転姿勢にあり、雑誌等を進入させていない。その後、図１９（ｂ）に示すように、運転者が雑誌等を持ち上げたとする。このとき、画角内に異物が進入してくる。その後、運転者は、図１９（ｃ）に示すように、完全に雑誌等を持ち上げる。
【０１６９】
図２０は、運転者が画角内に雑誌等を進入させ、その後雑誌等を画角外へ移動させたときの移動量を示す説明図である。まず、雑誌等の進入前において（時刻３５０〜４２２）、移動量は検出されているものの上限値と下限値との範囲内にある。
【０１７０】
その後、運転者が雑誌等を画角内に進入させようとする（時刻４２２〜４３５）。このとき、移動量は下限値以下となる。すなわち、図１８のステップＳＴ６１にて「ＹＥＳ」と判断され、異物の進入状態を示すｆｌａｇが「１」とされる。このため、運転者行動推定部２４は、運転者以外のものの行動として、異物の進入を推定する。その後、異物が進入している状態が継続する（時刻４３５〜５２３）。
【０１７１】
進入状態が継続した後、運転者が雑誌等を画角内から退出させようとする（時刻５２３〜５３４）。このとき、移動量は上限値以上となる。すなわち、図１８のステップＳＴ６３にて「ＹＥＳ」と判断され、異物の進入状態を示すｆｌａｇを「０」とし、進入状態を解除する。このため、運転者行動推定部２４は、運転者以外のものの行動して、異物の退出を推定する。その後、移動量は上限値と下限値との範囲内となり、異物が退出した状態が継続する（時刻５３４〜６００）。
【０１７２】
ここで、推定結果は、随時、報知信号出力部２５により報知装置３０に伝えられており、報知装置３０は、報知が必要な場合に報知動作を行うこととなる。
【０１７３】
なお、上記異物については、雑誌等に限らず、助手席の乗員の手などについても該当する。また、ハンドルが画面内に進入するときには、画面下の左右いずれかの端から中央に向かって動きベクトルが得られ、周辺に向かって広がっていくことが知られている。このため、上記特徴を考慮して、画面内に進入したものがハンドルなのか、その他のものなのかを判断でき、運転者のハンドルを切る操作を推定することができる。
【０１７４】
このようにして、本実施形態に係る運転者行動推定装置２０ａでは、的確に運転者の行動を推定することができ、大き過ぎる参照領域を設定して計算量が増大していしまうことを防止すると共に、１つの参照領域内に同時に複数の特徴的な部位が入る可能性を少なくすることができる。さらに、小さ過ぎる領域を設定して特徴的な部位がない領域となることを防ぐことができる。
【０１７５】
また、状況に応じて適切に運転者の行動を推定することができ、代表ベクトルが算出されない状態に基づいて、推定処理が行なわれることを防止でき、より精度良く運転者の行動を推定することができる。
【０１７６】
さらに、領域グループ毎の代表となる動きベクトルの向き及び大きさのそれぞれと、予め設定される上限値及び下限値との比較する。そして、運転者以外のものが画角内に入ってくる行動、及び運転者以外のものが画角外に出ていく行動のうち、少なくとも１つを推定する。ここで、動きベクトルの向きは運転者以外のものの移動方向を示すことができ、動きベクトルの大きさはその移動速度を示すことができる。そして、予め設定された上限値及び下限値と比較して、動きベクトルの向き及び大きさを総合的に判断することにより、運転者以外のものが画角内に入ってくる行動、運転者以外のものが画角外に出ていく行動を推定することができる。
【０１７７】
なお、本発明は上記実施形態に限られるものではない。例えば、第１及び第２実施形態の装置２０，２０ａを組み合わせて、運転者の行動と運転者以外のものの行動の双方を推定するようにしてもよい。この場合、推定することができる対象の数が多くなり、より利便性の高い装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係る運転者行動推定装置を含む運転者行動推定システムの構成を示すブロック図である。
【図２】図１に示した運転者行動推定装置の詳細構成を示すブロック図である。
【図３】参照領域の説明図である。
【図４】領域グループの一例を示す説明図である。
【図５】図１に示した運転者行動推定装置の詳細構成、及び接続関係を示す説明図である。
【図６】撮像される画像の一例を示す説明図であり、（ａ）は時刻ｔにおける画像を示し、（ｂ）は時刻（ｔ＋１）における画像を示し、（ａ）は時刻（ｔ＋２）における画像を示している。
【図７】図２に示した画像処理部の動作を示すフローチャートである。
【図８】図７に示すステップＳＴ１１における動きベクトル（ｘｄ，ｙｄ）の算出方法の説明図である。
【図９】図２に示した動き検出部の動作を示すフローチャートである。
【図１０】移動量（ｖｘ，ｖｙ）の説明図であり、（ａ）は或る時刻における移動量（ｖｘ，ｖｙ）を示しており、（ｂ）は移動量（ｖｘ，ｖｙ）を時系列的に示している。
【図１１】運転者行動推定部による運転者行動の推定処理を示すフローチャートである。
【図１２】運転者の有無を推定する場合の動きベクトルの例を示す説明図であり、（ａ）は乗車前における動きベクトルの例を示し、（ｂ）は乗車最中における動きベクトルの例を示し、（ｃ）は乗車完了後における動きベクトルの例を示している。
【図１３】図１２に示した有効領域の数の推移を示す説明図である。
【図１４】求められた変数ｆｃ，ｆｘ，ｆｙから推定される運転者の行動についての説明図であり、（ａ）は変数ｆｃが「００」である場合の運転者の行動を示し、（ｂ）は変数ｆｃが「０１」である場合の運転者の行動を示し、（ｃ）は変数ｆｃが「１０」である場合の運転者の行動を示している。
【図１５】運転者の行動を推定する場合の動きベクトルの例を示す説明図であり、（ａ）は正常な運転姿勢における動きベクトルの例を示し、（ｂ）は画角外への移動中における動きベクトルの例を示し、（ｃ）は異常姿勢における動きベクトルの例を示している。
【図１６】図１５に示した場合における有効領域の数及び移動量の推移を示す説明図である。
【図１７】第２実施形態における領域グループの設定の様子を示す説明図である。
【図１８】第２実施形態に係る運転者行動推定部による処理内容を示すフローチャートである。
【図１９】画角内に雑誌等を進入させたときの動きベクトルの例を示す説明図であり、（ａ）は進入前を示し、（ｂ）は進入中を示し、（ｃ）は進入後を示す。
【図２０】運転者が画角内に雑誌等を進入させ、その後雑誌等を画角外へ移動させたときの移動量を示す説明図である。
【符号の説明】
１，１ａ…運転者行動推定システム
１０…撮像装置
２０，２０ａ…運転者行動推定装置
２１…顔画像取得部（顔画像取得手段）
２２…画像処理部（画像処理手段）
２３…動き検出部（動き検出手段）
２４，２４ａ…運転者行動推定部（運転者行動推定手段）
２５…報知信号出力部（信号出力手段）
３０…報知装置
４０…車両状態検出手段
５０…環境情報検出手段
【図１】
2005018655.tif 000007
【図２】
2005018655.tif 000008
【図３】
2005018655.tif 000009
【図４】
2005018655.tif 000010
【図５】
2005018655.tif 000011
【図６】
2005018655.tif 000012
【図７】
2005018655.tif 000013
【図８】
2005018655.tif 000014
【図９】
2005018655.tif 000015
【図１０】
2005018655.tif 000016
【図１１】
2005018655.tif 000017
【図１２】
2005018655.tif 000018
【図１３】
2005018655.tif 000019
【図１４】
2005018655.tif 000020
【図１５】
2005018655.tif 000021
【図１６】
2005018655.tif 000022
【図１７】
2005018655.tif 000023
【図１８】
2005018655.tif 000024
【図１９】
2005018655.tif 000025
【図２０】
2005018655.tif 000026