"顔を撮影して得られた顔画像を記憶する顔画像記憶手段と、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段と、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段と、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段と、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段と、を備え、前記顔位置判別手段は、前記顔画像記憶手段に記憶された前記顔画像のエッジ抽出処理を行い、エッジ抽出処理により得られた画像の各画素の画素値を所定方向に投影してヒストグラムを得るヒストグラム取得処理を実行し、前記信頼度判別手段は、得られたヒストグラムに基づいて顔の両端点の複数の候補を抽出し、抽出した候補のうちから顔の両端点を特定し、特定した顔の両端点のヒストグラムの値の他の候補のヒストグラムの値に対する相対的な大きさに基づいて、顔向きの信頼度を求める、ことを特徴とする顔向き判別装置。前記信頼度判別手段は、得られたヒストグラムに基づいて、顔の両端点に対応するヒストグラムのピーク値の他のピーク値に対する大きさに基づいて、顔向きの信頼度を求める、ことを特徴とする請求項1に記載の顔向き判別装置。顔を撮影して得られた顔画像を記憶する顔画像記憶手段と、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段と、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段と、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段と、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段と、を備え、前記信頼度判別手段は、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔向きの信頼度を求める、ことを特徴とする顔向き判別装置。前記顔位置判別手段と前記顔向き判別手段と前記信頼度判別手段とは、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の水平方向の位置と向きを判別する処理と、判別した水平方向の向きの信頼度を求める1単位の処理を繰り返して実行し、顔の垂直方向の位置を判別する処理を複数の処理ステップに区分して、各1単位の処理内でいずれかの区分ステップを実行し、前記区分ステップの実行を複数回繰り返すことにより、顔の垂直方向の位置を求める、ことを特徴とする請求項1乃至3のいずれか1項に記載の顔向き判別装置。コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記顔位置判別手段として、前記顔画像記憶手段に記憶された前記顔画像のエッジ抽出処理を行い、エッジ抽出処理により得られた画像の各画素の画素値を所定方向に投影してヒストグラムを得るヒストグラム取得処理を実行させ、前記コンピュータに、前記信頼度判別手段として、得られたヒストグラムに基づいて顔の両端点の複数の候補を抽出し、抽出した候補のうちから顔の両端点を特定し、特定した顔の両端点のヒストグラムの値の他の候補のヒストグラムの値に対する相対的な大きさに基づいて、顔向きの信頼度を求める処理を実行させるコンピュータプログラム。コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔向きの信頼度を求める処理を実行させるコンピュータプログラム。コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、従前に判別された顔の位置と今回検出された顔の位置とのずれの大きさに基づいて、顔向きの信頼度を求める処理を実行させるコンピュータプログラム。コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の重心を求め、求めた重心位置に基づいて、顔向きの信頼度を求める処理を実行させるコンピュータプログラム。コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔位置の信頼度を求める処理を実行させるコンピュータプログラム。車両の走行環境は様々に変化し、カメラが捉えるドライバーの画像も様々に変化する。例えば、あるタイミングでは、顔に直射日光があたって全体が明るい画像となり、車両の向きが変化することに伴ってカメラに向かう面が陰になって、全体が暗くなったり、或いは、顔の一部が明るく、残りが暗くなる等の事態が生ずる。このため、顔の両側端位置の検出なども困難であり、画像取得時の環境条件、例えば、光のあたり方あたる方向、外光の強度などにより、顔の輪郭線や中央線の検出を誤ってしまうこともある。これらの情報の検出に誤りが生ずると、横向き角度の判定など、以後の判定にずれが生じてしまう。このような場合に、環境や条件による検出位置の精度に指標が与えられれば有効であり、以後の、処理に活用可能である。本発明は上記の問題点に鑑みてなされたものであり、顔の向きなどを判別する場合に、その信頼度を判別することを可能とすることを目的とする。上記目的を達成するため、この発明の第1の観点にかかる顔向き判別装置は、顔を撮影して得られた顔画像を記憶する顔画像記憶手段と、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段と、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段と、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段と、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段と、を備え、前記顔位置判別手段は、前記顔画像記憶手段に記憶された前記顔画像のエッジ抽出処理を行い、エッジ抽出処理により得られた画像の各画素の画素値を所定方向に投影してヒストグラムを得るヒストグラム取得処理を実行し、前記信頼度判別手段は、得られたヒストグラムに基づいて顔の両端点の複数の候補を抽出し、抽出した候補のうちから顔の両端点を特定し、特定した顔の両端点のヒストグラムの値の他の候補のヒストグラムの値に対する相対的な大きさに基づいて、顔向きの信頼度を求める、ことを特徴とする。この場合、前記信頼度判別手段は、例えば、得られたヒストグラムに基づいて、顔の両端点に対応するヒストグラムのピーク値の他のピーク値に対する大きさに基づいて、顔向きの信頼度を求める。上記目的を達成するため、この発明の第2の観点にかかる顔向き判別装置は、顔を撮影して得られた顔画像を記憶する顔画像記憶手段と、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段と、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段と、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段と、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段と、を備え、前記信頼度判別手段は、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔向きの信頼度を求める、ことを特徴とする。例えば、前記顔位置判別手段と前記顔向き判別手段と前記信頼度判別手段とは、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の水平方向の位置と向きを判別する処理と、判別した水平方向の向きの信頼度を求める1単位の処理を繰り返して実行し、顔の垂直方向の位置を判別する処理を複数の処理ステップに区分して、各1単位の処理内でいずれかの区分ステップを実行し、前記区分ステップの実行を複数回繰り返すことにより、顔の垂直方向の位置を求める。上記目的を達成するため、この発明の第3の観点にかかるコンピュータプログラムは、コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記顔位置判別手段として、前記顔画像記憶手段に記憶された前記顔画像のエッジ抽出処理を行い、エッジ抽出処理により得られた画像の各画素の画素値を所定方向に投影してヒストグラムを得るヒストグラム取得処理を実行させ、前記コンピュータに、前記信頼度判別手段として、得られたヒストグラムに基づいて顔の両端点の複数の候補を抽出し、抽出した候補のうちから顔の両端点を特定し、特定した顔の両端点のヒストグラムの値の他の候補のヒストグラムの値に対する相対的な大きさに基づいて、顔向きの信頼度を求める処理を実行させる。上記目的を達成するため、この発明の第4の観点にかかるコンピュータプログラムは、コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔向きの信頼度を求める処理を実行させる。上記目的を達成するため、この発明の第5の観点にかかるコンピュータプログラムは、コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、従前に判別された顔の位置と今回検出された顔の位置とのずれの大きさに基づいて、顔向きの信頼度を求める処理を実行させる。上記目的を達成するため、この発明の第6の観点にかかるコンピュータプログラムは、コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の重心を求め、求めた重心位置に基づいて、顔向きの信頼度を求める処理を実行させる。上記目的を達成するため、この発明の第7の観点にかかるコンピュータプログラムは、コンピュータを、顔を撮影して得られた顔画像を記憶する顔画像記憶手段、前記顔画像記憶手段に記憶された前記顔画像に基づいて、顔の位置と顔の中心の位置とを判別する顔位置判別手段、前記顔位置判別手段により求められた顔の位置と顔の中心の位置とに基づいて顔の向きを出力する顔向き判別手段、前記顔向き判別手段により判別された顔向きについて、その確からしさを示す信頼度を求める信頼度判別手段、前記顔向き判別手段で判別された顔の向きと、前記信頼度判別手段により判別されたその信頼度とを出力する出力手段、として機能させるコンピュータプログラムであって、前記コンピュータに、前記信頼度判別手段として、顔画像を複数の領域に分割し、各領域の輝度を求め、求めた輝度に基づいて、顔位置の信頼度を求める処理を実行させる。この発明によれば、顔画像から顔の向きを判別すると共にその信頼度を判別することができる。以下、本発明の実施形態に係る顔向き判別装置について説明する。本実施形態の顔向き判別装置は、図1に示すように、ドライバーの顔を撮影して顔画像を生成するカメラ10と、ドライバーの顔を照明する照明光源12と、ドライバーの顔中心位置を検出するコンピュータ14と、コンピュータ14に接続された表示装置16とを備える。カメラ10は例えばCCDカメラ等から構成され、ドライバーの顔の階調画像を取得する。カメラ10によって生成される顔画像は、ドライバーの顔だけでなく、その背景なども含まれている。表示装置16は、LCDLiquidCrystalDisplay又はCRTなどから構成され、カメラ10で撮影された顔画像から抽出された二値化画像などを表示する。コンピュータ14は、カメラ10により取得された顔画像を処理して顔の両端の位置を検出し、この検出した両端位置に基づいて、顔の横向き確度を求め、さらに、顔の両端の検出位置のずれを数値化して検出された横向き角度の信頼度を求める装置である。コンピュータ14は、図2に示すように、A/D変換器21と、画像メモリ22と、ROM23と、CPU24と、RAM25と、表示制御装置27と、光源制御装置28と、を備える。A/Dアナログ/ディジタル変換器21は、カメラ10で撮影されたアナログ画像信号をディジタル信号に変換する。画像メモリ22は、カメラ10により生成され、A/D変換器21でディジタル化された画像データを記憶する。ROM23は、CPUの動作を制御するためのプログラムを記憶する。また、ROM23は、後述する画像処理を実行するための様々な固定データを記憶する。CPU24は、ROM23に格納されているプログラムを実行することにより、カメラ10により取得された顔画像を処理して顔の両端の位置を検出し、この検出した両端位置に基づいて、顔の横向き角度を求め、さらに、顔の両端の検出位置のずれを数値化して検出された向き横向き角度の信頼度を求める装置である。RAM25は、CPU24のワークリアとして機能する。表示制御装置27は、CPU24の制御下に、表示装置16を制御する。光源制御装置28は、照明光源12の点灯消灯を制御する。次に、ROM23に格納される固定データの例を図3を参照して説明する。まず、ROM23は、図3a、bに示すような、縦エッジ検出用と横エッジ検出用ソーベルフィルタのオペレータを格納する。図3a、bに示す、縦エッジ検出用ソーベルフィルタと横エッジ検出用のソーベルフィルタとは、それぞれ、図3c、dに示すような縦方向の濃淡差、横方向の濃淡差を強調するためのオペレータである。また、ROM23は、図3eに示すように、RAM25に格納される顔画像のうち、目や眉の画像が存在すると想定される位置を特定するデータが格納されている。また、ROM23は、図3fに示すように、サングラスを検出するために、サングラスの縦横のサイズを格納する。また、ROM23は、図3gに示すように、標準的な目の画像を格納する。次に、上記構成を有する顔向き判別装置の動作を説明する。電源が投入されると、コンピュータ14内のCPU24は、図4に示す処理を繰り返して実行する。即ち、CPU24は、前処理ステップS01と顔位置判別検出処理ステップS02とから構成される初期処理を実行し、続いて、第1の処理~第nの処理を繰り返して実行する。nは2以上の自然数である。初期処理を構成する前処理ステップS01と顔位置判別処理ステップS02とは、ドライバーの左右方向及び上下方向の顔の位置の初期値を求めるための処理である。第1処理~第n処理は、電源投入中は繰り返して実行され、それぞれ、ドライバーの顔の左右方向の顔の位置を求め、さらに、その信頼度と共に出力する。また、第1処理~第n処理は、全体として、ドライバーの上下方向の顔の位置を1回求める。これにより、定常動作状態では、ドライバーの顔の左右方向の位置をn回求めている間に、ドライバーの顔の上下方向の位置を1回求めることになる。一般に、人間の顔の上下方向の動きは、左右方向の動きに比べて小さいため、このような検出手法を採用することにより、顔の位置の検出の精度と処理効率との両立を図ることができる。初期処理を構成する前処理S01は、図5に示すように、キャプチャ処理ステップS011と、座標変換処理ステップS012と、ソーベルフィルタ処理ステップS013とから構成される。キャプチャ処理ステップS011は、カメラ10の撮影したドライバーの1フレーム文の顔画像をA/D変換器21を介して取り込み、画像メモリ22に格納する処理である。座標変換処理ステップS012は、処理可能な程度に画素を間引く処理である。ソーベルフィルタ処理ステップS013は、ROM23に格納されている縦エッジ検出用ソーベルフィルタ図3aを用いて座標変換後の顔画像を処理して、顔画像内の縦エッジを強調する処理を行い、また、横エッジ検出用ソーベルフィルタ図3bを用いて座標変換後の顔画像を処理して、顔画像内の横エッジを強調する処理を行う処理である。図4の顔位置判別処理ステップS02は、前処理済みの顔画像を用いて顔の両端位置と上下位置を検出する処理であり、図6に示すように、顔両端検出処理ステップS021と顔上下位置検出処理ステップS022とから構成される。顔両端検出処理ステップS021は、顔画像を縦エッジ検出用のオペレータで操作した顔画像について、顔の両端を構成するラインを特定する処理であり、既知の任意の手法を採用することができる。例えば、図10に示すように、顔両端検出用のヒストグラム作成処理を行いステップS0211、続いて、このヒストグラムのピーク値の高いものを所定数抽出して、これをソートしステップS0212、ヒストグラム値に基づく、端点の抽出を行うステップS0213。例えば、ヒストグラム値の上位1又は2つが他と比較して極端に値が大きい場合には、その点を端点とする。次に、端点が2つ両端抽出されたか否かを判別しステップS0214、判別されていればステップS0214;Yes、処理を終了し、端点が2つ抽出できていなければステップS0214;No、ヒストグラム値同士の距離が、人の顔幅としてもっともらしい間隔を有する組み合わせを抽出することにより、端点を決定しステップS0215、最終的に、顔面の両端を決定する処理を行うステップS0216。また、特許文献1に開示されているように、撮影画像の時間微分を算出し、さらに、この画素値時間微分画像の画素値を縦方向に投影してヒストグラムを作成し、エッジ部抽出画像のヒストグラムと画素値時間微分画像のヒストグラムとを合計して、ヒストグラムのピーク値の高いものを抽出すると共に人の顔幅としてもっともらしい点を決定し、顔端位置を検出するようにしてもよい。次に、図6のステップS022の顔上下位置検出処理は、上述と同様の処理を横エッジについて行って、顔のほぼ目の位置上端と口の位置下端を検出する処理であり、例えば、図11に示すように、ヒストグラム作成処理ステップS0221と、目下候補検出処理ステップS0222と、顔上下位置算出処理ステップS0233と、から構成される。ヒストグラム作成処理ステップS0221は、横エッジ検出用ソーベルフィルタを用いたソーベルフィルタ処理後の各画素の値を横方向に投影してヒストグラムを作成する処理である。目下候補検出処理ステップS0222は、ヒストグラム値に基づいて、目眉、口などに対応するヒストグラム値の候補を選択する処理である。顔上下位置算出処理ステップS0233は、選択した候補から、顔の上下端位置例えば、目眉の位置を検出する処理である。なお、顔上端位置は、例えば、眉の上、下端位置は口と顎の間などに設定される。CPU24は、このようにしてステップS021とS022で求めた、顔両端左右側端位置と、顔の上下位置をRAM25に記憶する。以上で、図4の初期処理が終了し、続いて、CPU24は、第1処理~第n処理のループ処理を開始する。第1から第nの周期処理は、それぞれ、前処理ステップS11~Sn1と、基本処理ステップS12~Sn2と、後処理ステップS13~Sn3と、分割処理ステップS14~Sn4と、から構成される。前処理ステップS11~Sn1は、ステップS01の前処理と同一であり、図5に示すように、顔画像をキャプチャするキャプチャ処理ステップS011、画素を間引く座標変換処理ステップS012、ソーベルフィルタで顔画像を処理するソーベルフィルタ処理ステップS013を含む。ただし、ここでのソーベルフィルタ処理は、縦エッジ検出用のソーベルフィルタ処理のみである。図4の第1処理~第n処理を構成する基本処理ステップS12~Sn2は、それぞれ、顔の両端を検出し、顔中心を検出する処理であり、図7に示すように、顔両端検出処理ステップS121と顔中心検出処理ステップS122と、から構成される。顔両端検出処理ステップS121は、前述の図10に示す処理と同様の処理で実現可能である。即ち、前述したように、顔両端の検出用ヒストグラムを作成するステップS0211。続いて、顔の両端の位置の候補データをヒストグラムの順に並べ変えるステップS0212。次に、ヒストグラムのうち、値が抜き出たものが存在するか否かを判別し、値が抜き出たものがある場合には、それを顔両端の候補として採用するステップS0213。ステップS0213で、顔の両端が検出できたか否かを判別するステップS0214。顔の両端が検出できていない場合にはステップS0214;No、ヒストグラムに基づいて複数の端候補を選択して、顔の両端の距離などから相対的にマッチするものを検出しステップS0215、最終的に、顔面の両端を決定する処理を行うステップS0216。一方、図7の顔中心検出処理ステップS122は、例えば、図12に示す構成を有する。まず、CPU24は、任意の閾値を基準として、RAM25に格納されている顔画像を構成する各画素の階調を二値化するステップS1221。閾値としては、例えば、顔画像を形成する全画素の平均値を使用できる。これにより、例えば、図18aに例示するようなドライバーの二値化画像が生成される。続いて、CPU24は、二値化画像に、白黒白画像生成処理を実行するステップS1222。この白黒白画像生成処理において、CPU24は、まず、二値画像のうち、目の存在が予定されている領域を定義する領域指定データ図3eに示すy1,y2をROM23から読み出し、二値化画像の目領域を図18bに示すように切り出す。続いて、切り出した二値化画像について、白黒白横エッジを検出する。ここで、白黒白エッジとは、単に白と黒の境界となるエッジではなく、白から黒へ、さらに黒から白へと変化し、所定の幅を有するエッジのことである。このうち、白黒白横エッジとは、横方向にのびる境界の意味であり、このうち、白黒白縦エッジとは、縦方向にのびる境界の意味である。CPU24は、まず、白黒白横エッジ検出処理を開始し、図3fに示す設定に従って、目領域画像中で、サングラスのサイズに従って縦方向に6~12画素通常の目は、2~4画素の幅の黒い画素列を検出する。白黒白横エッジを検出する手法自体は任意である。例えば、座標値yを順次更新しつつ、画素x、yの輝度を判別し、輝度が白から黒に変化すると、黒の連続する数をカウントし、黒が白に変わった時点で黒の連続数が6~12であるか否かを判別し、連続数が6~12であれば、その画素を維持し、それ以外であれば、それらの画素を白に変換するという手法を採用できる。次に、白黒白横エッジ検出処理と同様の動作により白黒白縦エッジを検出する。白黒白縦エッジ検出処理は、処理済みの目領域の画像から、図3fの設定に従って、横方向に10~18通常の目は6~10画素の幅の黒の画素列を検出する処理である。このような構成とすることにより、例えば、抽出した目領域の画像が図18bに例示する画像であった場合に、連続数がx方向に1~9及び19以上、y方向に1~5及び13以上連続する黒画素が、白画素に変換される。これにより、サングラスのレンズを構成しない、横方向に短い黒画素列や、長すぎる黒画素列が図18cに示すように除去される。次に、CPU24は、図12のステップS1223で、サングラスの有無を判別する処理を行う。CPU24は、処理後の目領域の画像に、縦方向に6~12画素で、横方向に10~18画素の黒領域が2つ得られている場合には、サングラスが検出されたと判別する。サングラスがあると判別した場合ステップS1224;Yes、予め用意されている標準的な目領域の画像、例えば、図18dに示す処理後の目領域の画像を、図18eに示す元の二値画像から目領域を除去した画像と合成して、図18fに示す中心位置測定用の顔画像を生成するステップS1225。なお、サングラスの位置を判別して、合成する目の位置を調整してもよい。続いて、顔画像を用いて、顔の中心位置顔の位置、重心位置を求めるステップS1226。中心の測定手法自体は任意であるが、例えば、次式から顔の中心重心位置の座標を求めることができる。顔の中心のx座標=Σxi/nxi:i番目の黒画素のx座標の値顔の中心のy座標=Σyi/nyi:i番目の黒画素のy座標の値i:1~nnは黒画素の総数なお、重心を求める範囲を、顔の両側端とその時点で求められている顔の上端位置と下端位置の間等に限定してもよい。或いは、顔の主要パーツの眉、目、鼻、口の画像のみから重心を求めてもよい。なお、ステップS1224でサングラスが検出されなかった場合ステップS1224;Noには、ステップS1225の合成処理をスキップする。以上で顔の中心位置が求められ、図7の顔中心検出処理ステップS122が終了する。即ち、この処理により、顔の水平方向の位置と顔の中心位置とが求められ、図4の基本処理ステップS12,S22,...Sn2が終了する。その後、処理は図4の後処理ステップS13、S23,...,Sn3に進む。後処理ステップS13、S23,...,Sn3は、直前の基本処理ステップS12、S22,...,Sn2で求めた両端位置と顔の中心位置に基づいて、顔の向きをとその信頼度を求める処理である。この後処理ステップS13、S23,...,Sn3は、図8に示すように、直前の基本処理ステップS12、S22,...,Sn2で求めた両端位置と顔の中心位置に基づいて顔の向きの角度向き;横向き角度を計算する処理ステップS131と、その信頼度を求める処理ステップS132と、顔向き角と信頼度とを対応付けて出力する処理ステップS133を備える。顔向き角度計算処理ステップS131は、直前の基本処理ステップS12、S22,...,Sn2で求めた顔の両端位置と、直前の基本処理ステップS12、S22,...,Sn2で求めた顔の中心位置とに基づいて、顔の向き角度を判別する。なお、顔の向きを求める計算手法自体は従来の既知の任意の手法を使用することができる。例えば、顔の両端位置の中央に顔の顔の中心位置が存在すれば、顔は正面を向いていると判別できるカメラ10を向いた方向にある。また、顔の中央位置が顔の両端位置の中央よりも左に存在していれば、カメラ10から見て左を向いていると判別でき、顔の中央位置が顔の両端位置の中央よりも右に存在していれば、カメラ10から見て右を向いていると判別できる。続いて、CPU24は、計算した顔向き角の信頼度を求める信頼度計算処理を実行するステップS132。信頼度計算処理ステップS132は、図13に示すように、顔両端位置ずれ信頼度計算処理ステップS1321と、ヒストグラム信頼度計算処理ステップS1322と、重心バランス信頼度計算処理ステップS1323と、輝度バランス信頼度計算処理ステップS1324とを備える。顔両端位置ずれ信頼度計算処理ステップS1321の詳細を、図14に示す。図示するように、CPU24は、信頼度={t1-|R1-R2|t1-|L1-L2|t1-|W1-W2|}/3を計算するステップS13211。なお、t1-|R1-R2|、t1-|L1-L2|、t1-|W1-W2|}の最小値を、それぞれ、0とする。t1は係数であり、R1は、今回求められた顔の右端の位置、R2は顔の右端の基準値初期値は初期処理の顔位置判別処理ステップS02で求められた値、L1は、今回求められた顔の左端の位置、L2は顔の左端の基準値初期値は初期処理の顔位置判別処理ステップS02で求められた値、W1は、今回求められた顔の幅=|R1-L1|、W2は、顔の幅の基準値初期値は初期処理の顔位置判別処理ステップS02で求められた右端と左端の距離値、である。この信頼度の技術的意味を図19aに模式的に示す。今回得られた顔画像の両端位置R1,L1及び幅W1が基準となる顔画像通常は、1つ前の処理で得られた顔画像の両端位置R2,L2や幅W2と相対的に近い値ならば、高い評価を、相対的に遠い値ならば、低い評価を与えるものである。繰り返し処理の実行間隔が短いことから、これらの値に通常大きな変化は無いことを前提とする評価値である。CPU24は、評価値が所定の閾値以上か否かを判別しステップS13212、評価値が基準値以上である場合ステップS13212;Yes、即ち、今回の位置検出が比較的正確に行われていると評価できる場合には、図19bに模式的に示すように、今回取得したR1,L2,W1を次回評価用の基準値R2,L2,W2として記憶するステップS13213。一方、評価値が閾値未満の場合ステップS13212;No、図19cに示すように基準値R2,L2,W2を変更しないステップS13214。次に、ヒストグラム信頼度計算処理ステップS1322の詳細を、図15を参照して説明する。図示するように、CPU24は、信頼度={P1/|P1P2P3...Pm}t2を計算するステップ13221。t2は係数であり、P1~Pmは、ヒストグラム値のうちの閾値以上のものであり、P1をトップとする降順である。mは4~7程度が望ましい。なお、ヒストグラム値の上位m個この場合、mは固定数を選択するようにしてもよい。この信頼度の技術的意味を図20a~dに模式的に示す。図20aと図20bとは、それぞれ、顔の左端と右端を正確に検出できている場合の検出された顔端とヒストグラム分布の例を示す図、図20cと図20dとは、それぞれ、顔の左端と右端を正確に検出できていない場合の検出された顔端とヒストグラム分布の例を示す図である。なお、ヒストグラムはピーク5つを抽出している。図20a、bに示すように、顔画素の左端と右端を決定したときのピーク値が他のピーク値に比べてきわめて大きいものであった場合、その左端又は右端は比較的信頼性が高い。これに対し、図20c、dに示すように、明確なピーク値が得られずに、顔の位置を決定した場合には、その信頼性は低い。次に、重心バランス信頼度計算処理ステップS1323の詳細を、図16に示す。まず、CPU24は、図21に模式的に示すように、重心検出領域を顔上端FUと顔中央FCからなる上部領域と、顔中央FCと顔下端FDからなる下部領域に分割するステップS13231。次に、CPU24は、直前の基本処理の顔中心検出処理で求めた重心位置GLを読み出し、上部領域における重心位置UGと下部領域による重心位置DGとを、計算するステップS13232。次に、CPU24は、重心バランス信頼度={t3-|GL-UG||GL-DG|}×t4を計算するステップS13233。なお、計算結果が0以下はすべて0とする。ここで、t3:係数,t4:係数この信頼度の技術的意味を図21aに模式的に示す。人間の顔は、図21aに示すように、左右対称であり、通常、基本処理で求めた中心検出領域の重心位置GLと、上部領域の画像の重心位置UGと、下部領域の画像の重心位置DGとは、x軸方向に関しては一致する。しかし、図21bに例示するように、眼帯の装着等により、顔のバランスが崩れている場合、各重心GL,UG、DGのX座標値は、互いにずれてしまう。そこで、このずれが大きい場合には、顔向き角の信頼度が低いと判断するものである。次に、輝度バランス信頼度計算処理ステップS1324の詳細を、図17に示す。まず、CPU24は、図22aに模式的に示すように、顔の中心検出領域を顔左上端ULと、顔右上端URと、顔左下端DLと、顔右下端DRに分割するステップS13241。次に、CPU24は、各領域UL,UR,DL,DRにて平均輝度IUL,IUR,IDL,IDRを算出するステップS13242。次に、CPU24は、次式に従って、輝度バランス信頼度を計算するステップS13243。輝度バランス信頼度={t5-|IUL-IUR||IUL-IDL||IUL-IDR||IUR-IDL||IUR-IDR||IDL-IDR|}×t6t5:係数,t6:係数計算結果が0以下はすべて0とする。この信頼度の技術的意味を図22aに模式的に示す。一般的に、人間の顔は、図22aに示すように、左右対称であり、左右対称に照明される。しかし、顔の向きや光源の位置によっては、図22bや22cに示すように、偏って照明され、顔上に位部分と明るい部分とが発生してしまう。このうち、図22cに示すような顔の左右方向の明るさが異なると、顔の左右方向の位置や向きの判別に悪影響を与える。そこで、上記評価式は、左右方向のバランスが悪くなるに従って評価が下がるように構成されている。以上説明したように、評価処理により、その直前の基本処理ステップS1~Sn2で求められた顔の向きの信頼度が求められる。次に、CPU24は、ステップS131で求めた求めた顔向き角度とステップS132で求めた信頼度とを対応付けて出力するステップS133。以上で、第1処理~第n処理のそれぞれで実行される前処理、基本処理、後処理が終了し、顔の左右方向の角度とその信頼度とが対応付けて出力される。続いて、CPU24は、分割処理ステップS14~Sn4を開始する。この分割処理ステップS14~Sn4は、全体としては、図9に示すように、画像キャプチャ処理ステップS141、座標変換処理ステップS142、ソーベルフィルタ処理ステップS143、顔上下位置検出処理ステップS144、とから構成される。画像キャプチャ処理ステップS141、座標変換処理ステップS142、ソーベルフィルタ処理ステップS143は前述の前処理ステップS01における処理ステップS011~S013と同一である。ただし、ここでの、ソーベルフィルタ処理は、横エッジ検出用のソーベルフィルタ処理のみで十分である。また、顔上下位置検出処理ステップS144は、図6に示した、顔上下位置検出処理ステップS022と同様であり、第1分割処理ステップSS14内の画像キャプチャ処理ステップS141で取得した顔画像に基づいて上下位置を判別する。なお、具体的な処理を実行する際には、CPU24は、分割処理ステップS14~Sn4を開始する際に、種々のポインタやレジスタの値をRAM25に待避し、RAM25に待避しておいた先の分割処理の処理結果をリストア再設定する。続いて、CPU24は、リストアしたポインタ及びレジスタに従って動作を継続し、RAM25に格納されているデータを用いて、顔の上下位置を判別する処理の一部を行って、処理が終了すると、ポインタやレジスタの値をRAM25にセーブし、RAM25にセーブしておいた通常の処理のポインタ値やレジスタ値分割処理を開始する直前の値リストアして、処理を継続する。なお、各分割処理ステップS14~Sn4は、一定量の処理を実行した段階で切り替えても、一定時間経過した段階で切り替えてもよい。以上説明したように、この顔向き検出装置によれば、顔の位置や向きの判別値とその信頼度とを求めることができる。この顔向き判別の出力信号の利用形態は任意であるが、例えば、顔向き検出装置からの出力に基づいて、ドライバーに脇見運転の警告を放音することができる。このとき、信頼度に応じて報知音を更新することができる。なお、この発明は上記実施の形態に限定されず、種々の変形及び応用が可能である。上記実施の形態においては、4種類の信頼値を求めたが、これらの平均を求めたり、最上位点と最下位点の信頼度を除いた残りの2つの信頼度を出力対象としたり、これらの平均値を出力する等してもよい。また、図13のステップS1321の顔両端位置ずれ信頼度計算処理において、図14のステップS13211の信頼度の計算式は適宜変更修正可能である。例えば、顔の左右端位置の基準位置とのずれを用いて、信頼度を計算したが、検出した顔の中心重心と基準中心位置との差異や、顔の中心及び両端位置と各基準位置とのずれに基づいて、信頼度を計算するなど、左右方向の位置ずれを検出し、そのずれ量から信頼度を検出できるならば、検出及び比較の対象、演算式は任意である。また、上下方向上端位置、下端位置、中央についても、検出位置と基準位置とのずれを検出し、信頼度を検出判定しても良い。さらに、顔画像の領域を複数に分割し、それぞれについてずれ量を求めて、信頼度を求める等してもよい。同様に、図13のステップS1322のヒストグラム信頼度計算処理において、図15のステップS13221の計算式は適宜変更修正可能である。例えば、ヒストグラムの第1と第2のピークの差P1-P2の大きさや全体に対する比に基づいて、信頼度を計算してもよい。その他、顔の側端の検出に使用したヒストグラムのピークの他のピークに対する優位度から信頼度を測定できるならば、その手法は任意である。また、顔の領域を複数に分割し、領域単位でヒストグラムを求めて信頼度を求めたり、求めた複数の信頼度を1つの信頼度に統合してもよい。また、図13のステップS1323の重心バランス信頼度計算処理において、図16のステップS13231での領域の分割数分割方法や、ステップS13233の計算式は適宜変更修正可能である。例えば、信頼度を|UG-DG|の関数としてもよい。或いは、顔画像を上下5つの領域に分割し、それぞれについて重心位置を求め、5つの領域間の重心のずれ及び/又は全体の重心との差を求め、これらのずれから、信頼度を計算する等してもよい。また、図13のステップS1324の輝度バランス信頼度計算処理において、図17のステップS13241での領域の分割数縦方向の分割数及び横方向の分割数や、ステップS13243の計算式は適宜変更修正可能である。例えば、顔画像を上下3つ、左右4つの領域に分割し、それぞれについて輝度を求め、12個の領域間の輝度ばらつきから、信頼度を計算する等してもよい。また、各分割領域の平均輝度と全体の平均輝度との差やバランスに基づいて信頼度を判別するようにしてもよい。さらに、上記4種類の信頼度以外の信頼度を導入してもよい。例えば、ヒストグラム分布の時間軸上の変化、重心位置の時間軸上の変化、輝度の時間軸上の変化が急激すぎる場合に信頼度を低くする等の信頼度を設定してもよい。また、上記実施の形態では、4つの信頼度を、ステップS131で判別した顔の向き角度横向き角度の信頼度として利用した。この発明は、これに限定されず、上記4つの信頼度及び他の任意の信頼度を、顔の位置の信頼度例えば、ステップS121で判別した顔の両端位置の信頼度、ステップS122で判別した顔の中央位置の信頼度、ステップS144で判別した顔の上下位置の信頼度、顔の存在の有無顔の両端中央が検出されれば存在、顔の両端中央が検出されなければ不存在の信頼度などとして使用してもよい。例えば、上記実施の形態では、目領域を画像の特定の位置に固定したが、目領域を顔の画像のサイズや位置に応じて、目領域の位置を適宜設定しても良い。この場合、例えば、横エッジソーベルフィルタを適用し、顔の目や眉の位置を判別し、そのエリアを含む所定サイズのエリアを目領域とすればよい。また、上記実施の形態では、目と眉又は目と、鼻、口の階調画像から顔の中心重心位置を求めたが、中心位置の判別に使用する顔の部分パーツは任意である。例えば、耳や、ほお、頭髪などを加えて、中心を求めても良い。また、上記実施の形態では、サングラスが検出された場合に、目の画像を合成し、合成画像に基づいて顔の中心地位を求めたが、重心を求める手法は任意である。例えば、サングラスが検出された場合には、目と眉の画像を合成して中心を求めたり、サングラスのレンズの画像を構成する各画素に0.3~0.5倍程度の重みを付けた上で、各部レンズ、目、鼻、口...の重心を求めて、顔画像の重心をもとめてもよい。目領域を除いた部分の顔画像から得られた重心に対し、目の画像が与える影響を予め考慮したオフセット値を加算するなどして重心を求めてもよい。上記実施の形態では、この発明を顔の中心位置を検出するために、サングラスの有無を検出する実施形態を示したが、サングラスを検出した後で、その結果をどのような処理に使用するかは任意である。例えば、サングラスを検出し、それにより、それにより照明の強度を変更したり、画面のバックライトの輝度を調整する等の場面に使用することも可能である。図1,図2を参照して説明したシステム構成も一例であり、任意に変更可能である。例えば、カメラ10を遠赤外線等で画像をとらえる赤外線カメラを使用すれば、人種や肌や髪の色に影響されず比較的正確に顔の各パーツの画像を取得することが可能となる。また、上述のフローチャートも同様の機能が実現できるならば、任意に変更可能である。例えば、所定回数以上にサングラスの画像が得られたときに、サングラス対応処理を行うようにしてもよい。また、本発明において、白黒白エッジは階調の差異を表現するためのものであり、色としての白や黒に限定されるものではなく、色相はなんでもよい。カラー画像に関しては、各画素の色相を考慮してサングラスの有無を判別してもよい。上記各実施の形態においては、ドライバーを撮影してサングラスを検出する場合にこの発明を適用したが、この発明はこれに限定されず、任意の場面で人間、動物、人形、ロボット等がサングラスをかけているか否かを判別する処理に広く適用可能である。本発明は、カメラで画像を取得しながら処理する場合に限定されず、例えば、他所で撮影した1又は複数の顔画像のそれぞれについて、サングラスの有無、顔の中心の位置、顔の向きなどを判別する為に使用可能である。また、コンピュータに上述の処理を実行させるためのコンピュータプログラムを、任意の記録媒体やネットワークを介してROMに格納するようにしてもよい。"