(57)【要約】【課題】撮像手段の撮像画像に基づいて顔の向きを検知することができる顔の向き検知装置を得る。【解決手段】顔の向き検知装置を適用した脇見モニタ警報装置では、撮像手段が撮像した画像上における顔が正面を向いているときの眼Ｅ０の重心位置Ｇ、眼Ｅ０の高さＨ、眼Ｅ０の幅Ｗを、それぞれ基準重心位置Ｇ、基準高さＨ、基準幅Ｗとし、上下向き判定手段は、眼情報検出手段が検出した眼の画像上の重心位置Ｇｉ及び眼の高さＨｉをそれぞれ基準重心位置Ｇ及び基準高さＨと比較して顔の上下方向の向きを判定し、左右向き判定手段は、眼情報検出手段が検出した眼の画像上の重心位置Ｇｉ及び眼の幅Ｗｉをそれぞれ基準重心位置Ｇ及び基準幅Ｗと比較して顔の左右方向の向きを判定する。【選択図】　　　図２
2004133749.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一方の眼を含む顔の部分を撮像する撮像手段と、
前記撮像手段にて撮像した画像における前記眼に対応する部分を抽出し、該眼に対応する部分の前記画像上における重心位置と、該眼に対応する部分における上下の縁部間の画素数に基づく眼の高さと、該眼に対応する部分における左右の縁部間の画素数に基づく眼の幅とを検出する眼情報検出手段と、
前記重心位置の基準重心位置に対する上下方向の位置、及び前記眼の高さの基準高さに対する大小に基づいて前記顔の上下方向の向きを判定する上下向き判定手段と、
前記重心位置の基準重心位置に対する左右方向の位置、及び前記眼の幅の基準幅に対する大小に基づいて前記顔の左右方向の向きを判定する左右向き判定手段と、
を備えた顔の向き検知装置。
【請求項２】
前記眼情報検出手段が検出した異なる時間におけるそれぞれ複数の前記重心位置、前記眼の高さ、及び前記眼の幅を用いて、前記基準重心位置、前記基準高さ、及び前記基準幅をそれぞれ算出する基準値設定手段を備えた、ことを特徴とする請求項１記載顔の向き検知装置。
【請求項３】
車両に搭載されると共に該車両室内の後方視認用インナミラーに前記撮像手段を配置し、該撮像手段が前記顔における該撮像手段に近い方の眼を含む部分を撮像する、ことを特徴とする請求項１または請求項２記載の顔の向き検知装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば車両の運転者等の脇見を撮像画像に基づいて検知する顔の向き検知装置に関する。
【０００２】
【従来の技術】
例えば、自動車等の車両の安全性を向上させるため、運転者の居眠り状態を検知して警報装置を作動させる居眠り警報装置が考えられている。そして、居眠りを検知するために、画像処理技術を利用して乗員の眼の開閉状態を検出する技術が知られている（例えば、特許文献１参照）。この居眠り警報装置では、上下の瞼間隔（画素数）に基づいて乗員の居眠り状態を推定すると共に、眼画像の傾きから顔の傾きを推定し居眠り状態の検出精度を向上させるようになっている。
【０００３】
ところで、乗員の居眠りのみならず、脇見状態を検知して警報装置を作動させることも自動車等の車両の安全性を向上するために有効である。そして、この脇見状態の検出にも上記のような画像処理技術を利用することが考えられる。
【０００４】
しかしながら、上記のような居眠り警報装置に適用される画像処理技術では、顔の傾きを補正するために乗員の顔の傾き具合を検出することはできるが、これに基づいて顔の向きすなわち視線方向を検知することができなかった。より具体的には、上記画像処理技術では、顔の鉛直方向（水平方向）に対する傾斜を検出することは可能であるが、脇見については何ら考慮されていないため、顔が上や下を向いたり右や左を向いたりしていることを検知することはできなかった。
【０００５】
【特許文献１】
特開平７−２９６２９９号公報
【０００６】
【発明が解決しようとする課題】
本発明は、上記事実を考慮して、撮像手段の撮像画像に基づいて顔の向きを検知することができる顔の向き検知装置を得ることが目的である。
【０００７】
【課題を解決するための手段】
上記目的を達成するために請求項１記載の発明に係る顔の向き検知装置は、少なくとも一方の眼を含む顔の部分を撮像する撮像手段と、前記撮像手段にて撮像した画像における前記眼に対応する部分を抽出し、該眼に対応する部分の前記画像上における重心位置と、該眼に対応する部分における上下の縁部間の画素数に基づく眼の高さと、該眼に対応する部分における左右の縁部間の画素数に基づく眼の幅とを検出する眼情報検出手段と、前記重心位置の基準重心位置に対する上下方向の位置、及び前記眼の高さの基準高さに対する大小に基づいて前記顔の上下方向の向きを判定する上下向き判定手段と、前記重心位置の基準重心位置に対する左右方向の位置、及び前記眼の幅の基準幅に対する大小に基づいて前記顔の左右方向の向きを判定する左右向き判定手段と、を備えている。
【０００８】
請求項１記載の顔の向き検知装置では、撮像手段が撮像した眼を含む顔の画像が画像データとして眼情報検出手段に出力される。画像データが入力された眼情報検出手段では、画像上における眼に対応する部分を抽出し、該画像上における眼に対応する部分の重心位置（以下、眼の重心位置、または単に重心位置という）、該眼に対応する部分の上下の縁部（例えば、濃度変化点の軌跡として抽出される瞼に対応する部分）間の画素数に基づく眼の高さ、及び該眼に対応する部分の左右の縁部（例えば、上記した眼の上下の縁部の左右両側における各交点）間の画素数に基づく眼の幅をそれぞれ検出する。
【０００９】
眼情報検出手段が検出した重心位置及び眼の上下高さは、上下向き判定手段へ出力され、該上下向き判定手段では、重心位置の基準重心位置に対する位置（位置の変化）と眼の高さの基準高さに対する大小とに基づいて、顔（視線方向）の上下方向の向きを判定する。すなわち、例えば、顔が正面（水平方向）を向いている場合における眼の重心位置及び眼の高さをそれぞれ基準重心位置及び基準高さとした場合において、眼情報検出手段が検出した重心位置及び眼の高さがそれぞれ基準重心位置及び基準高さと一致していれば顔が正面を向いていると判定され、基準重心位置に対し検出した重心位置が上側にずれいると共に、視線方向の撮像方向に対する上側への変化に対応して眼の高さが基準高さに対し大小（変化）している場合に、顔が上向きであると判定される。
【００１０】
一方、眼情報検出手段が検出した重心位置及び眼の幅は左右向き判定手段へ出力され、該左右向き判定手段では、重心位置の基準重心位置に対する位置（位置の変化）と眼の幅の基準幅に対する大小とに基づいて、顔（視線方向）の左右方向の向きを判定する。すなわち、例えば、顔が正面（前方向）を向いている場合における眼の重心位置及び眼の幅をそれぞれ基準重心位置及び基準幅とした場合において、眼情報検出手段が検出した重心位置及び眼の幅がそれぞれ基準重心位置及び基準幅と一致していれば顔が正面を向いていると判定され、基準重心位置に対し検出した重心位置が左側（画像上における左側）にずれいると共に、視線方向の撮像方向に対する右側への変化に対応して眼の幅が基準幅に対し大小（変化）している場合に、顔が右向きであると判定される。
【００１１】
以上のように、本構成の顔の向き検知装置では、眼の重心位置と、眼の高さ及び眼の幅とによって顔の向きを判定するため、安定して顔の向き検知することができる。すなわち、例えば、重心位置の変化のみで顔の向きを判定する場合に懸念される検知対象者の姿勢変化による誤検知や、眼の高さの変化のみで顔の上下向きを判定する場合に懸念される眼の開度変化（日射の有無等の周囲環境や意識覚醒具合による開度の変化）による誤検知が排除されるか、誤検知の可能性が極めて低い。
【００１２】
このように、請求項１記載の顔の向き検知装置では、撮像手段の撮像画像に基づいて顔の向きを検知することができる。
【００１３】
請求項２記載の発明に係る顔の向き検知装置は、請求項１記載の顔の向き検知装置において、前記眼情報検出手段が検出した異なる時間におけるそれぞれ複数の前記重心位置、前記眼の高さ、及び前記眼の幅を用いて、前記基準重心位置、前記基準高さ、及び前記基準幅をそれぞれ算出する基準値設定手段を備えた、ことを特徴としている。
【００１４】
請求項２記載の顔の向き検知装置では、異なる時間に撮像された複数の画像から眼情報検出手段がそれぞれ検出した眼情報、すなわち、それぞれ複数の画像上における眼の重心位置、眼の高さ及び眼の幅を用いて、基準値設定手段が、基準重心位置、基準高さ及び基準幅を算出する。このため、これらの基準重心位置、基準高さ及び基準幅を顔の向きの検知対象者に応じて（検知対象者毎に）設定することができ、顔の向きの判定（検知）に個人差の影響を受けることがなくなり、顔の向きの検出精度が向上する。
【００１５】
請求項３記載の発明に係る顔の向き検知装置は、請求項１または請求項２記載の顔の向き検知装置において、車両に搭載されると共に該車両室内の後方視認用インナミラーに前記撮像手段を配置し、該撮像手段が前記顔における該撮像手段に近い方の眼を含む部分を撮像する、ことを特徴としている。
【００１６】
請求項３記載の顔の向き検知装置では、撮像手段が車両のインナミラーに配置され該撮像手段に近い方の眼を撮像するため、該撮像手段に近い方の眼は斜め上前方より撮像される。このため、例えばステアリングホイールや撮像対象となる乗員の腕等の撮像画像に対する影響が小さく（画像上の眼に対応する部分がステアリングホイールや腕等によって遮蔽されることがなく）、また撮像画像に対する運転姿勢変化の影響が小さく（眼が画角範囲から外れることがなく）、該乗員の撮像手段に近い方の眼を含む顔の部分を確実に撮像することができる。換言すれば、画像不良による顔の向きの検知（判定）不能時間が大幅に削減される。
【００１７】
【発明の実施の形態】
本発明の実施の形態に係る顔の向き検知装置が適用された脇見モニタ警報装置１０について、図１乃至図６に基づいて説明する。
【００１８】
図１には、本発明の実施の形態に係る脇見モニタ警報装置１０を搭載した車両Ｓの一部が斜視図及びブロック図によって示されている。脇見モニタ警報装置１０は、車両Ｓの運転席上における運転者（図示省略）の顔の向き、すなわち視線方向を検知し、該運転者が脇見をしていると判定した場合に警報を発するものである。
【００１９】
この脇見モニタ警報装置１０は、撮像手段としてのＣＣＤカメラ１２を備えている。ＣＣＤカメラ１２は、車両Ｓのルーフ１４の前端部（近傍）の左右方向中央部に設けられた後方視認用のインナミラー１６に一体に組み込まれている。すなわち、インナミラー１６は、カメラ内蔵インナミラーであり、全体としてコンパクトに形成されて運転者を含む乗員に違和感を与えないようになっている。
【００２０】
これにより、ＣＣＤカメラ１２は運転席（図１におけるステアリングホイール１８が設けられた側の前席）を斜め上前方から撮像するようになっている。そして、ＣＣＤカメラ１２の画角は、少なくとも運転者の一方の眼（運転席が車両Ｓの右側に位置する本実施の形態では左眼、以下単に「眼」という場合がある）を含む運転者の顔（の一部）が撮像範囲内に収まるように決められている。
【００２１】
また、ＣＣＤカメラ１２は、眼情報検出手段、上下向き判定手段、左右向き判定手段、基準値設定手段を含んで構成された脇見検知コンピュータ２０と電気的に接続されている。これにより、ＣＣＤカメラ１２で撮像された画像が画像データとして脇見検知コンピュータ２０へ伝送される構成となっている。
【００２２】
この脇見検知コンピュータ２０は、車両Ｓの適宜位置に配置され、図示しない記憶装置（ＲＯＭ）を有している。このＲＯＭには、視線方向検知プログラム２２（図３参照）が記憶されている。
【００２３】
視線方向検知プログラム２２は、ＣＣＤカメラ１２を制御する（作動させる）と共に画像データから眼に相当する部分を抽出し眼の重心位置Ｇｉ、眼の高さＨｉ、及び眼の幅Ｗｉ（以下、まとめて眼データという場合がある）を検出する眼情報検出プログラム２４と、眼データを顔の向き判定用データとして保存すると共に眼データの一部を基準設定用データとして保存する保存プログラム２６と、判定用データと基準値との比較によって顔の向きを判定し該判定結果を脇見検知プログラム（図示省略）へ出力する判定プログラム２８と、保存プログラム２６によって保存された基準設定用データに基づいて基準値（基準重心位置Ｇｘ・Ｇｙ、基準高さＨ、基準幅Ｗ）を設定する基準値設定プログラム３０とを含んで構成されている。
【００２４】
そして、脇見検知コンピュータ２０は、視線方向検知プログラム２２を実行するＣＰＵ（図示省略）を備えている。なお、視線方向検知プログラム２２の機能については、後述する脇見モニタ警報装置１０の作用と共に説明する。
【００２５】
また、脇見モニタ警報装置１０は、警報装置３２を備えている。警報装置３２は、車両Ｓの適宜位置に配置され、脇見検知コンピュータ２０と電気的に接続されている。そして、警報装置３２は、脇見検知コンピュータ２０の脇見検知プログラムから作動信号が入力されると、警報音や音声、表示装置への文字等の表示によって運転者に注意を促すようになっている。
【００２６】
ところで、図２に示される如く、画角が固定された画像上では、運転者の顔の向きによって、該運転者の眼Ｅの画像上における位置（重心位置）、眼の高さ、眼の幅が変化する。具体的には、顔が正面を向いているときの眼Ｅ０の重心位置Ｇに対し、顔が上、下、右、または左を向いた各場合の画像上における眼Ｅ１、Ｅ２、Ｅ３、Ｅ４の重心位置は、それぞれ上（Ｙ増加方向）、下（Ｙ減少方向）、左（Ｘ減少方向）、または右（Ｘ増加方向）に位置（移動）する。
【００２７】
また、顔が正面を向いているときの眼Ｅ０の高さＨに対し、顔が上または下を向いた各場合の眼Ｅ１、Ｅ２の高さはそれぞれ増大、減少するが、顔の左右方向の向き変化による眼Ｅ３、Ｅ４の高さは変化しない。
【００２８】
さらに、顔が正面を向いているときの眼Ｅ０の幅Ｗに対し、顔が右を向くと眼Ｅ３の幅は単純減少し、顔が左を向くと眼Ｅ４の幅はＣＣＤカメラ１２の撮像方向を向くまでは増大する（該撮像方向を向くときの眼Ｅ４Ａの幅が最大幅となる）が、さらに左を向くと眼Ｅ４Ｂのように最大幅に対し減少する。すなわち、顔が左を向く場合は、眼Ｅ４Ｂの幅が正面を向いているときの眼Ｅ０の幅Ｗよりも小さくなることがあるが、この場合眼Ｅ４の幅の経時変化は単純減少ではなく上記最大幅（極大値）を有する。また、顔が正面を向いているときの眼Ｅ０の幅Ｗに対し、顔の上下方向の向き変化による眼Ｅ１、Ｅ２の幅は変化しない。
【００２９】
以上の知見に基づいて、本実施の形態では、運転者の顔が正面を向いている（と推定される）場合における眼Ｅ０の位置及び形状を、顔の向き判断の基準値として用いる。すなわち、保存プログラム２６と基準値設定プログラム３０とによって顔が正面を向いている状態を推定することで、眼Ｅ０の重心座標Ｇ（Ｇｘ，Ｇｙ）と、眼Ｅ０の高さＨと、眼Ｅ０の幅Ｗとを基準値として設定するようになっている（詳細は後述）。また、上記知見に基づいて、本実施の形態では、判定プログラム２８によって眼Ｅの位置及び形状（高さ及び幅）と基準値とを比較して、顔の向きすなわち視線方向を検知するようになっている（詳細は後述）。
【００３０】
次に本実施の形態の作用について図３乃至図６に示されるフローチャートを用いて説明する。
【００３１】
上記構成の脇見モニタ警報装置１０では、例えば、イグニッションキーをキーシリンダへ挿入し、車両Ｓのアクセサリ（例えば、オーディオやパワーウインド）が作動可能な状態、若しくは、エンジンが始動した状態となると、脇見検知コンピュータ２０が起動して脇見検知コンピュータ２０に予め記憶された視線方向検知プログラム２２が起動されると共に該視線方向検知プログラム２２がＣＣＤカメラ１２を作動させる。
【００３２】
視線方向検知プログラム２２が起動している脇見検知コンピュータ２０では、先ず、眼情報検出プログラム２４のステップ３４でＣＣＤカメラ１２に運転者の眼を含む顔画像を撮像させる。ＣＣＤカメラ１２が撮像した画像は、ステップ３６で画像データとして脇見検知コンピュータ２０に読み込まれる。このステップ３６では、画像データと共に撮像時の車速及び舵角が読み込まれる。
【００３３】
ステップ３６で画像データが入力されるとステップ３８へ進み、該ステップ３８では、画像データから画像上における左眼に相当する部分を抽出する。具体的には、画像データから左眼を含む検出領域を切り出し、画像データの垂直方向の濃度変化が大きな部位の複数の組み合わせ（濃度変化点の軌跡）を、それぞれ上下の瞼として抽出する。なお、検出領域のサイズは、顔の向き変化に対応できる（左眼が検出領域から外れない）ように眼のサイズに比して大きく設定する。
【００３４】
さらに、ステップ４０へ進み、眼データを検出する。具体的には、ステップ３８で抽出した上下の瞼から画像上における眼の重心位置（上下及び左右方向の座標）Ｇｉと、上下の瞼間の最大の画素数すなわち眼の高さＨｉと、上下の瞼の何れか一方における左右の縁部間の水平方向に沿う最大画素数または上下の瞼の左右両側の交点間の水平方向に沿う最大画素数すなわち眼の幅Ｗｉとを検出する。
【００３５】
以上で眼情報検出プログラム２４が終了し、保存プログラム２６のステップ４２へ進む。ステップ４２では、撮像時の車速が設定値以上であるか否かを判断する。撮像時の車速が設定値以上である場合にはステップ４４へ進み、撮像時の車速が設定値未満である場合にはステップ５０へ進む。さらに、ステップ４４では、撮像時の舵角が設定範囲内であるか否かを判断する。撮像時の舵角が設定範囲内である場合にはステップ４６へ進み、撮像時の舵角が設定範囲内でない場合にはステップ５０へ進む。
【００３６】
ステップ４６では、ステップ４０で検出した眼データを基準設定用データとして保存する。次いでステップ４８へ進み基準設定用データの保存回数Ｎを加算した後、ステップ５０へ進む。ステップ５０では、ステップ４０で検出した眼データを判定用データとして保存する。
【００３７】
すなわち、保存プログラム２６では、異なる時間の画像データにおけるステップ４０で検出した眼データの全てを判定用データとして保存すると共に、それぞれの撮像時における車速が設定値以上でかつ舵角が設定範囲内であり運転者が脇見をせず前方（正面）を向いていると推定される場合の眼データを、基準設定用データとして保存する。
【００３８】
ステップ５０で判定用データが保存されると、保存プログラム２６が終了しステップ５２へ進む。ステップ５２では、基準値が設定されているか否かを判断する。基準値が設定されている場合には判定プログラム２８であるステップ５４へ進み、基準値が設定されていない場合にはステップ５８へ進む。
【００３９】
ステップ５４では、判定用データと基準値との比較によって運転者の上下及び左右の顔の向き、すなわち視線方向を判定するが、これについては後述する。
【００４０】
ステップ５４で顔の向きが判定されると、ステップ５６へ進みステップ５４における判定結果を脇見検知プログラムへ出力する。脇見検知プログラムでは、逐次入力される顔の向きの判定結果（視線方向）の経時変化等によって、運転者の脇見状態を推定する。そして、脇見検知プログラムは、例えば運転者の顔が所定時間よりも長い時間正面を向いていない場合に、警報装置３２へ作動信号を出力して該警報装置３２を作動させる。
【００４１】
ステップ５６の終了後、またはステップ５２で基準値が設定されていないと判断された場合には、ステップ５８へ進む。ステップ５８では、基準設定用データの保存回数Ｎ（ステップ４８）が設定数以上であるか否かを判断する。保存回数Ｎが設定値以上である場合には、基準値設定プログラム３０であるステップ６０へ進み、保存回数Ｎが設定値未満である場合にはステップ６２へ進む。
【００４２】
ステップ６０では、保存プログラム２６で設定数以上の回数（複数）保存された基準設定用データに基づいて基準値を設定するが、これについては後述する。なお、ステップ５２で基準値が設定されていると判断された場合でもステップ６０へ進み、該ステップ６０では基準設定用データの保存回数Ｎを初期化する（後述）ため、基準値は基準設定用データの保存回数Ｎが設定数に達する毎に更新される。
【００４３】
ステップ６０の終了後、またはステップ５８で保存回数Ｎが設定値未満であると判断された場合はステップ６２へ進み、該ステップ６２ではシステム故障の有無を判断する。そして、システム故障の場合、例えば該故障を（故障の形態に応じた表示を）インジケータ等に表示させて視線方向検知プログラム２２は終了する。一方、システム故障がない場合は、ステップ３４へ戻る。
【００４４】
なお、システム故障の形態としては、例えば、以下に示すものがある。第１に、一定時間画像データ（映像信号）が脇見検知コンピュータ２０に入力されなかった場合に故障と判断される。これは、主にＣＣＤカメラ１２自体の故障である。第２に、画像データ上にノイズが多数発生するか、画像データに特徴点（画素間の濃度変化等）が全く得られなかった場合（例えば、ＣＣＤカメラ１２にカバーが取り付けられていた場合等）に、故障と判断される。第３に、脇見検知コンピュータ２０の入出力ポートが一定時間一定の状態を保った場合（回路が開放若しくは短絡し、または入力ポートの信号変化がなかった場合等）に故障と判断される。これは、主にＣＣＤカメラ１２や警報装置３２と脇見検知コンピュータ２０との間の断線が原因である。
【００４５】
次に、図４に基づいてステップ６０の基準値設定プログラム３０について説明する。上記の通り基準設定用データとして保存された眼データの保存回数Ｎが設定数以上である場合、ステップ６０すなわち基準値設定プログラム３０へ進む。
【００４６】
基準値設定プログラム３０では、先ずステップ６４で基準値算出用データ、すなわち、それぞれ車速が設定値以上でかつ舵角が設定範囲以内であるときの異なる時間（画像）に基づいて設定数以上の回数保存された、それぞれ複数の眼データのうち、該複数（保存回数Ｎ）の瞼の重心位置Ｇｉの範囲を算出する。換言すれば、ステップ６４では、画像上（固定された画角内）における重心位置Ｇｉの分布を得る。
【００４７】
ステップ６４で重心位置Ｇｉの範囲が算出されるとステップ６６へ進み、眼の幅Ｗｉが最大である眼データ（画像、時間）におけるＸ方向（眼の幅方向、図２参照）の重心位置Ｇｘ０を抽出する。次いで、ステップ６８へ進み、Ｘ方向における重心位置Ｇｘｉのヒストグラムを作成し、ステップ７０へ進む。ステップ７０では、ステップ６８で作成したヒストグラムに基づいて、最大頻度となるＸ方向の重心位置Ｇｘ１を抽出する。
【００４８】
さらに、ステップ７２へ進み、重心位置Ｇｘ０が重心位置Ｇｘ１よりも右（Ｘ増加方向）に位置するか否かを判断する。重心位置Ｇｘ０が重心位置Ｇｘ１よりも右に位置する場合はステップ７４へ進み、重心位置Ｇｘ０が重心位置Ｇｘ１よりも右に位置しない場合はステップ９４へ進む。ステップ７４では、重心位置Ｇｘ１を含むヒストグラムの山におけるＸ方向の重心位置Ｇｘｉの標準偏差σｘ１を算出する。
【００４９】
次いでステップ７６へ進み、眼の高さＨｉが最大である眼データ（画像、時間）におけるＹ方向（眼の高さ方向、図２参照）の重心位置Ｇｙ０を抽出する。次いで、ステップ７８へ進み、Ｙ方向における重心位置Ｇｙｉのヒストグラムを作成し、ステップ８０へ進む。ステップ８０では、ステップ７８で作成したヒストグラムに基づいて、最大頻度となるＹ方向の重心位置Ｇｙ１を抽出する。
【００５０】
さらに、ステップ８２へ進み、重心位置Ｇｙ０が重心位置Ｇｙ１よりも上（Ｙ増加方向）に位置するか否かを判断する。重心位置Ｇｙ０が重心位置Ｇｙ１よりも上に位置する場合はステップ８４へ進み、重心位置Ｇｙ０が重心位置Ｇｙ１よりも上に位置しない場合はステップ９４へ進む。ステップ８４では、重心位置Ｇｙ１を含むヒストグラムの山におけるＹ方向の重心位置Ｇｙｉの標準偏差σｙ１を算出する。
【００５１】
一方、ステップ７２、８２からステップ９４へ進むと、基準値の設定を行なわずに、該ステップ９４で、保存プログラム２６のステップ４８によって記憶されている基準算出用データの保存回数Ｎを初期化（基準設定用データを削除）して基準値設定プログラム３０を終了する。これは、ステップ７２で重心位置Ｇｘ０が重心位置Ｇｘ１よりも右に位置しないと判断された場合は、例えば最大頻度となるＸ方向の重心位置Ｇｘ１が図２の眼Ｅ４Ａと眼Ｅ４Ｂとの間に位置することに相当し、ステップ８２で重心位置Ｇｙ０が重心位置Ｇｙ１よりも右に位置しないと判断された場合は、例えば運転者の瞬きや意識低下等によって眼の開度（上下の瞼間の間隔）が小さい状態でＧｙ１が抽出されていることに相当するので、換言すれば保存した基準値設定用データが適正ではないので、該適正でないデータに基づいた基準値の設定をしないためである。
【００５２】
元に戻り、ステップ８４で標準偏差σｙ１が算出されると、ステップ８６へ進む。ステップ８６では、Ｘ方向の基準重心位置Ｇｘを算出する。具体的には、Ａを所定の係数として、Ｘ方向の基準重心位置ＧｘをＧｘ＝Ｇｘ１±Ａσｘ１として算出する。すなわち、Ｘ方向の基準重心位置Ｇｘは、点ではなく最大頻度の重心位置Ｇｘ１を挟んだ画像上の所定の範囲として設定される。
【００５３】
次いで、ステップ８８で、Ｙ方向の基準重心位置Ｇｙを算出する。具体的には、Ｂを所定の係数として、Ｙ方向の基準重心位置ＧｙをＧｙ＝Ｇｙ１±Ｂσｙ１として算出する。すなわち、Ｙ方向の基準重心位置Ｇｙは、点ではなく最大頻度の重心位置Ｇｙ１を挟んだ画像上の所定の範囲として設定される。以上により、画像上における眼の基準重心位置Ｇ（Ｇｘ，Ｇｙ）が設定される。
【００５４】
ステップ８６、８８で基準重心位置Ｇが設定されると、ステップ９０へ進み、基準幅Ｗを設定する。具体的には、上記重心位置Ｇｘ１を含むヒストグラムの山に属する眼データにおける眼の幅Ｗｉの平均幅Ｗａと、該ヒストグラムの山に属する眼データにおける眼の幅Ｗｉの標準偏差σｗとを算出し、所定の係数Ｃを用いて、基準幅ＷをＷ＝Ｗａ±Ｃσｗとして算出する。すなわち、基準幅Ｗについても平均幅Ｗａを挟む所定の範囲として設定する。
【００５５】
さらに、ステップ９２へ進み、基準高さＨを設定する。具体的には、上記重心位置Ｇｙ１を含むヒストグラムの山に属する眼データにおける眼の高さＨｉの平均高さＨａと、該ヒストグラムの山に属する眼データにおける眼の高さＨｉの標準偏差σｈとを算出し、所定の係数Ｄを用いて、基準高さＨをＨ＝Ｈａ±Ｄσｈとして算出する。すなわち、基準高さＨについても平均高さＨａを挟む所定の範囲として設定する。
【００５６】
以上により、基準値、すなわち基準重心位置Ｇ（Ｇｘ，Ｇｙ）と基準幅Ｗと基準高さＨとがそれぞれ所定の範囲（基準重心位置Ｇについては画像上に所定の面積を有する領域範囲）として設定され、ステップ９４へ進む。そして、このように基準重心位置Ｇ、基準幅Ｗ、基準高さＨを所定範囲（領域）として設定することで、判定用データの重心位置Ｇｉ、眼の幅Ｗｉ、眼の高さＨｉがそれぞれ所定の範囲内にあるときには顔が正面を向いているとされ、判定プログラム２８による判定が徒に過敏になることを防止している。
【００５７】
ステップ９４では、上記の通り、基準値の設定の成否に拘わらず基準算出用データの保存回数Ｎを初期化（基準設定用データを削除）する。これで基準値設定プログラム３０が終了し、視線方向検知プログラム２２のステップ６２へ進む。そして、視線方向検知プログラム２２で基準設定用データの保存回数Ｎが再度設定数以上になると、基準値設定プログラム３０が実行される。
【００５８】
次に、図５及び図６に基づいて、視線方向検知プログラム２２のステップ５４である判定プログラム２８について説明する。判定プログラム２８は、図５に一例（概念）が示される上下向き判定プログラム９６と、図６に一例（概念）が示される左右向き判定プログラム９８とを備えており、先ず上下向き判定プログラム９６について説明する。
【００５９】
上下向き判定プログラム９６では、先ずステップ１００で、最新の判定用データ（眼データ）におけるＹ方向の重心位置Ｇｙｉが、該Ｙ方向の基準重心位置Ｇｙの範囲内（Ｇｙ１±Ｂσｙ１）に位置するか否かを判断する。重心位置Ｇｙｉが基準重心位置Ｇｙの範囲内に位置する場合はステップ１０２へ進み、重心位置Ｇｙｉが基準重心位置Ｇｙの範囲内に位置しない場合はステップ１０６へ進む。
【００６０】
ステップ１０２では、上記最新の判定用データにおける眼の高さＨｉが、基準高さＨの範囲内（Ｈａ±Ｄσｈ）であるか否かを判断する。眼の高さＨｉが基準高さＨ範囲内である場合は、ステップ１０４で顔すなわち視線方向が上下方向正面向きであるとされ（顔が上下方向について正面向きであることに対応する信号を生成し）、上下向き判定プログラム９６が終了する。一方、眼の高さＨｉが基準高さＨの範囲内でない場合は、顔の向きの判定をせず（判定不能とされ）、上下向き判定プログラム９６が終了する。
【００６１】
また、ステップ１００からステップ１０６へ進んだ場合、該ステップ１０６で上記最新の判定用データにおける重心位置Ｇｙｉが、基準重心位置Ｇｙの上限（Ｇｙ１＋Ｂσｙ１）よりも上（Ｙ増加方向）に位置するか否かを判断する。重心位置Ｇｙｉが基準重心位置Ｇｙの上限よりも上に位置する場合はステップ１０８へ進み、重心位置Ｇｙｉが基準重心位置Ｇｙの上限よりも上に位置しない場合、すなわち重心位置Ｇｙｉが基準重心位置Ｇｙの下限（Ｇｙ１−Ｂσｙ１）よりも下に位置する場合はステップ１１２へ進む。
【００６２】
ステップ１０８では、上記最新の判定用データにおける眼の高さＨｉが、基準高さＨの上限（Ｈａ＋Ｄσｈ）よりも大きいか否かを判断する。眼の高さＨｉが基準高さＨの上限よりも大きい場合は、ステップ１１０で顔すなわち視線方向が上向きであるとされ（顔が上向きであることに対応する信号を生成し）、上下向き判定プログラム９６が終了する。一方、眼の高さＨｉが基準高さＨの上限よりも大きくない場合は、顔の向きの判定をせず（判定不能とされ）、上下向き判定プログラム９６が終了する。
【００６３】
ステップ１０６からステップ１１２へ進んだ場合は、上記最新の判定用データにおける眼の高さＨｉが、基準高さＨの下限（Ｈａ−Ｄσｈ）よりも小さいか否かを判断する。眼の高さＨｉが基準高さＨの下限よりも小さい場合は、ステップ１１４で顔すなわち視線方向が下向きであるとされ（顔が下向きであることに対応する信号を生成し）、上下向き判定プログラム９６が終了する。一方、眼の高さＨｉが基準高さＨの下限よりも小さくない場合は、顔の向きの判定をせず（判定不能とされ）、上下向き判定プログラム９６が終了する。
【００６４】
以上の判定結果は、判定不能である結果を含め、視線方向検知プログラム２２のステップ５６で脇見検知プログラムへ出力される。
【００６５】
以上の通り、上下向き判定プログラム９６では、最新の判定用データにおける重心位置Ｇｙｉが基準重心位置Ｇｙの範囲内でかつ眼の高さＨｉが基準高さＨの範囲内にある場合に顔が正面向きであると判定し、重心位置Ｇｙｉが基準重心位置Ｇｙの上限よりも大きくかつ眼の高さＨｉが基準高さＨの上限よりも大きい場合に顔が上向きであると判定し、重心位置Ｇｙｉが基準重心位置Ｇｙの下限よりも小さくかつ眼の高さＨｉが基準高さＨの下限よりも小さい場合に顔が下向きであると判定し、その他の場合には顔の向きを判定しない。したがって、この判定条件を満たす限度において、上下向き判定プログラム９６は、重心位置Ｇｙｉ及び眼の高さＨｉと基準重心位置Ｇｙ及び基準高さＨとのそれぞれの比較の順序を適宜組替えて実行して、顔の上下方向の向きを判定することができる。
【００６６】
一方、図６に示す左右向き判定プログラム９８では、先ずステップ１２０で、最新の判定用データ（眼データ）におけるＸ方向の重心位置Ｇｘｉが、該Ｘ方向の基準重心位置Ｇｘの範囲内（Ｇｘ１±Ａσｘ１）に位置するか否かを判断する。重心位置Ｇｘｉが基準重心位置Ｇｘの範囲内に位置する場合はステップ１２２へ進み、重心位置Ｇｘｉが基準重心位置Ｇｘの範囲内に位置しない場合はステップ１２６へ進む。
【００６７】
ステップ１２２では、上記最新の判定用データにおける眼の幅Ｗｉが、基準幅Ｗの範囲内（Ｗａ±Ｃσｗ）であるか否かを判断する。眼の幅Ｗｉが基準幅Ｗ範囲内である場合は、ステップ１０４で顔すなわち視線方向が左右方向正面向きであるとされ（顔が左右方向について正面向きであることに対応する信号を生成し）、左右向き判定プログラム９８が終了する。一方、眼の幅Ｗｉが基準幅Ｗの範囲内でない場合は、顔の向きの判定をせず（判定不能とされ）、左右向き判定プログラム９８が終了する。
【００６８】
また、ステップ１２０からステップ１２６へ進んだ場合、該ステップ１２６で上記最新の判定用データにおける重心位置Ｇｘｉが、基準重心位置Ｇｘの右限（Ｇｘ１＋Ｂσｘ１）よりも右（Ｘ増加方向）に位置するか否かを判断する。重心位置Ｇｘｉが基準重心位置Ｇｘの右限よりも右に位置する場合はステップ１２８へ進み、重心位置Ｇｘｉが基準重心位置Ｇｘの右限よりも右に位置しない場合、すなわち重心位置Ｇｘｉが基準重心位置Ｇｘの左限（Ｇｘ１−Ｂσｘ１）よりも左に位置する場合はステップ１３４へ進む。
【００６９】
ステップ１２８では、上記最新の判定用データにおける眼の幅Ｗｉが、基準幅Ｗの上限（Ｗａ＋Ｃσｗ）よりも大きいか否かを判断する。眼の幅Ｗｉが基準幅Ｗの上限よりも大きい場合は、ステップ１３０で顔すなわち視線方向が左向きであるとされ（顔が左向きであることに対応する信号を生成し）、左右向き判定プログラム９８が終了する。一方、眼の幅Ｗｉが基準幅Ｗの上限よりも大きくない場合は、ステップ１３２へ進む。
【００７０】
ステップ１３２では、異なる時間の撮像画像について視線方向検知プログラム２２（保存プログラム２６）のステップ５０で複数保存した判定用データにおける眼の幅Ｗｉの所定時間（上記最新の判定用データ検出直前の所定時間）における経時変化Ｗｉ（ｔ）が極大値を有するか否か、すなわち最新の眼の幅Ｗｉが基準幅Ｗの上限よりも大きくないことが図２の眼Ｅ４Ａから眼Ｅ４Ｂへと変化した結果であるか否かを判断する。そして、経時変化Ｗｉ（ｔ）が極大値を有する場合にはステップ１３０で顔が左向きであるとされ、左右向き判定プログラム９８が終了する。一方、経時変化Ｗｉ（ｔ）が極大値を有しない場合には、顔の向きの判定をせず（判定不能とされ）、左右向き判定プログラム９８が終了する。
【００７１】
ステップ１２６からステップ１３４へ進んだ場合は、上記最新の判定用データにおける眼の幅Ｗｉが、基準幅Ｗの下限（Ｗａ−Ｃσｗ）よりも小さいか否かを判断する。眼の幅Ｗｉが基準幅Ｗの下限よりも小さい場合は、ステップ１３６へ進み、眼の幅Ｗｉが基準幅Ｗの下限よりも小さくない場合は、顔の向きの判定をせず（判定不能とされ）、左右向き判定プログラム９８が終了する。
【００７２】
ステップ１３６では、異なる時間の撮像画像について視線方向検知プログラム２２のステップ５０で複数保存した判定用データにおける眼の幅Ｗｉの所定時間（上記最新の判定用データ検出直前の所定時間）における経時変化Ｗｉ（ｔ）に極大値が存在しないか否かを判断する。そして、経時変化Ｗｉ（ｔ）に極大値が存在しない場合は、ステップ１３８で顔すなわち視線方向が右向きであるとされ（顔が右向きであることに対応する信号を生成し）、左右向き判定プログラム９８が終了する。一方、経時変化Ｗｉ（ｔ）に極大値が存在する場合は、顔の向きの判定をせず（判定不能とされ）、左右向き判定プログラム９８が終了する。
【００７３】
以上の判定結果は、判定不能である結果を含め、視線方向検知プログラム２２のステップ５６で脇見検知プログラムへ出力される。
【００７４】
以上の通り、左右向き判定プログラム９８では、最新の判定用データにおける重心位置Ｇｘｉが基準重心位置Ｇｘの範囲内で、かつ眼の幅Ｗｉが基準幅Ｗの範囲内にある場合に顔が正面向きであると判定する。また、左右向き判定プログラム９８では、重心位置Ｇｘｉが基準重心位置Ｇｘの左限よりも大きく、かつ眼の幅Ｗｉが基準幅Ｗの左限よりも大きい場合または眼の幅Ｗｉの所定時間における経時変化Ｗｉ（ｔ）が極大値を有する場合に、顔が左向きであると判定する。さらに、左右向き判定プログラム９８では、重心位置Ｇｘｉが基準重心位置Ｇｘの右限よりも小さく、かつ眼の幅Ｗｉが基準幅Ｗの右限よりも小さく、なおかつ眼の幅Ｗｉの所定時間における経時変化Ｗｉ（ｔ）に極大値が存在しない場合に顔が右向きであると判定する。そして、左右向き判定プログラム９８では、上記以外の場合には（条件では）顔の向きを判定しない。したがって、以上の判定条件を満たす限度において、左右向き判定プログラム９８は、重心位置Ｇｘｉ及び眼の幅Ｗｉと基準重心位置Ｇｘ及び基準幅Ｗとのそれぞれ比較の順序を適宜組替えて実行して、顔の左右方向の向きを判定することができる。
【００７５】
以上説明したように、本発明の実施の形態に係る脇見モニタ警報装置１０（上下向き判定プログラム９６と左右向き判定プログラム９８とを有する判定プログラム２８）では、撮像画像上の眼の重心位置Ｇｉ及び眼の形状（眼の高さＨｉ、眼の幅Ｗｉ）を、それぞれ基準重心位置Ｇ及び基準高さＨ、基準幅Ｗと比較することで顔の向きを判定するため、顔の向きを安定して検知することができる。すなわち、例えば重心位置Ｇｉの変化のみで顔の向きを判定する場合に懸念される検知対象者の姿勢変化による誤検知や、眼の高さＨの変化のみで顔の向きを判定する場合に懸念される眼の開度変化（日射の有無等の周囲環境や意識覚醒具合による開殿変化）による誤検知が排除される（誤検知の可能性が極めて低い）。
【００７６】
このように、本発明の実施の形態に係る脇見モニタ警報装置１０では、ＣＣＤカメラ１２の撮像画像に基づいて顔の向きを検知することができる。
【００７７】
また、本発明の実施の形態に係る脇見モニタ警報装置１０では、眼情報検出プログラム２４が異なる時間における複数の撮像画像から検出したそれぞれ複数の重心位置Ｇｉ、眼の高さＨｉ、及び眼の幅Ｗｉを用いて、基準値設定プログラム３０が基準重心位置Ｇ（Ｇｘ，Ｇｙ）、基準高さＨ、及び基準幅Ｗをそれぞれ設定（算出する）ため、これらの基準重心位置Ｇ（Ｇｘ，Ｇｙ）、基準高さＨ、及び基準幅Ｗを運転者に応じて運転者毎に設定することができ、顔の向きの判定に個人差の影響を受けることがなくなり、顔の向きの検知（判定）精度が向上する。
【００７８】
特に、基準値設定プログラム３０が、眼データのうち車速が設定値以上でかつ舵角が設定範囲内である運転者が正面を向いていると推定される（正面を向いている確率が高い）データである基準設定用データを用いて、上記の通り基準値を設定するため、顔の向きの検知（判定）精度が一層向上する。また、この基準値が基準設定用データの保存回数Ｎが設定数に達する毎に短い間隔で更新されるため、日射の有無等の周囲環境や運転者の瞬きや意識覚醒具合による開度の変化の影響が排除され、顔の向きの検知（判定）精度がより一層向上する。
【００７９】
さらに、脇見モニタ警報装置１０では、ＣＣＤカメラ１２が車両Ｓのインナミラー１６に内蔵して設けられているため、例えばステアリングホイール１８や運転者の腕等の影響、運転姿勢変化の影響によって該運転者の眼を含む顔の部分が撮像できなくなる可能性が低く、該眼を含む顔の部分を確実に撮像することができる。本実施の形態では、ＣＣＤカメラ１２の撮像した画像データが乗員の眼を捉えなかった時間は、全撮像時間の１．７％とわずかであった。そして、脇見検知コンピュータ２０（視線方向検知プログラム２２）は、上記の通り運転者の一方の眼（左眼）のみによって顔の向きを検知することができるため、該インナミラー１６に内蔵され斜め上前方から顔を撮像するＣＣＤカメラ１２と好適に組み合わされる。
【００８０】
なお、上記の実施の形態では、本発明に係る顔の向き検知装置が車両Ｓの脇見モニタ警報装置１０に適用された例を示したが、本発明はこれに限定されず、例えば、プラントのオペレータや航空機・船舶等の操縦者等の脇見を監視するモニタ装置等に適用されても良い。また、本発明に係る顔の向き検知装置は、警報装置３２と接続されて脇見モニタ警報装置１０を構成するのに限定されることはない。
【００８１】
また、上記の実施の形態では、視線方向検知プログラム２２が脇見検知コンピュータ２０に記憶された構成としたが、本発明はこれに限定されず、例えば、車両Ｓを総合的に制御する運転支援システムの一部を構成するコンピュータに視線方向検知プログラム２２を記憶、実行させても良い。
【００８２】
さらに、上記の実施の形態では、ＣＣＤカメラ１２がインナミラー１６に内蔵された好ましい構成としたが、本発明はこれに限定されず、例えば、ＣＣＤカメラ１２が、ルーフ１４に設けられたマップランプ装置１４０（図１参照）に内蔵されたり、インストルメントパネル上（顔を正面から撮像するよう位置）等に配置されたりしても良い。また、本発明における撮像手段がＣＣＤカメラ１２に限定されないことは言うまでもない。
【００８３】
【発明の効果】
以上説明したように本発明に係る顔の向き検知装置は、撮像手段の撮像画像に基づいて顔の向きを検知することができるという優れた効果を有する。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る顔の向き検知装置が適用された居眠り検知警報装置の概略構成及びＣＣＤカメラの配置を示す斜視図及びブロック図である。
【図２】顔の向きに応じた画像上における眼の位置と形状とを示す概念図である。
【図３】本発明の実施の形態に係る顔の向き検知装置が適用された脇見モニタ警報装置に記憶された視線方向検知プログラムのフローチャートである。
【図４】本発明の実施の形態に係る顔の向き検知装置が適用された脇見モニタ警報装置に記憶された視線方向検知プログラムを構成する基準値設定プログラムのフローチャートである。
【図５】本発明の実施の形態に係る顔の向き検知装置が適用された脇見モニタ警報装置に記憶された視線方向検知プログラムを構成する上下向き判定プログラムのフローチャートである。
【図６】本発明の実施の形態に係る顔の向き検知装置が適用された脇見モニタ警報装置に記憶された視線方向検知プログラムを構成する左右向き判定プログラムのフローチャートである。
【符号の説明】
１０　　脇見モニタ警報装置（顔の向き検知装置）
１２　　ＣＣＤカメラ（撮像手段）
１６　　インナミラー
２０　　脇見検知コンピュータ（眼情報検出手段、上下向き判定手段、左右向き判定手段、基準値設定手段）
２２　　視線方向検知プログラム（眼情報検出手段、上下向き判定手段、左右向き判定手段、基準値設定手段）
２４　　眼情報検出プログラム（眼情報検出手段）
２８　　判定プログラム（上下向き判定手段、左右向き判定手段）
３０　　基準値設定プログラム（基準値設定手段）
９６　　上下向き判定プログラム（上下向き判定手段）
９８　　左右向き判定プログラム（左右向き判定手段）
Ｓ　　車両
【図１】
2004133749.tif 000003
【図２】
2004133749.tif 000004
【図３】
2004133749.tif 000005
【図４】
2004133749.tif 000006
【図５】
2004133749.tif 000007
【図６】
2004133749.tif 000008