(57)【要約】【課題】顔のモデルの精度を向上させることが可能な顔検出装置、方法およびプログラムを提供する。【解決手段】本発明の一実施形態に係る顔検出装置１は、顔を含む画像を撮像する撮像部２と、画像から顔部品の位置を検出する位置検出部１１と、顔部品の位置に基づいてモデルの初期状態を決定する初期状態決定部１２と、モデルの初期状態を用いて、画像に基づいて顔のモデルを生成するモデルフィッティング部１３と、を備える。初期状態決定部は、位置検出部により取得された目位置および鼻位置を用いて顔位置および顔角度を決定し、顔位置および顔角度に基づいてモデルの初期状態を決定する。【選択図】図３
2015075915.tif 000002
【特許請求の範囲】
【請求項１】
撮像部が撮像する顔を含む画像から顔検出を行うための顔検出装置であって、
前記画像から前記顔の顔部品の位置を検出する位置検出部と、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定部と、
前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング部と、
を備えることを特徴とする顔検出装置。
【請求項２】
前記顔部品は目を含み、
前記位置検出部は、あるフレームの前記撮像部からの画像と１つ前のフレームの前記撮像部からの画像との間で差分画像を作成し、前記差分画像に基づいて前記目の位置を検出する
ことを特徴とする請求項１に記載の顔検出装置。
【請求項３】
前記顔部品は鼻をさらに含み、
前記位置検出部は、前記位置検出部により検出される前記鼻の位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする請求項２に記載の顔検出装置。
【請求項４】
前記初期状態決定部は、前記顔部品の前記位置から前記顔の角度を算出し、前記顔の前記角度に基づいて前記モデルの初期状態を決定する
ことを特徴とする請求項１に記載の顔検出装置。
【請求項５】
撮像手段から顔を含む画像を取得するステップと、
位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、
初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、
モデルフィッティング手段が、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するステップと、
を備えることを特徴とする顔検出方法。
【請求項６】
撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、
コンピュータを、
前記画像から前記顔の顔部品の位置を検出する位置検出手段、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および
前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像された画像から顔の位置や向きを検出する顔検出装置、方法およびプログラムに関するものである。
【背景技術】
【０００２】
近年、撮像された静止画像または動画像に含まれる顔の位置および向き、ならびに目および口等の顔部品の状態を検出する顔検出技術の開発が進められている。例えば、車両においては、運転者の顔検出を行うことによって、脇見運転や居眠り運転を検知し、警報等の所定のアクションを行うことができる。
【０００３】
非特許文献１には、最急降下法等を用いて統計的顔形状モデルを画像中の顔に適合させる、すなわちモデルフィッティングを行うことによって、画像中の顔のモデルを生成する顔検出技術（ＡＳＭ：Ａｃｔｉｖｅ  Ｓｈａｐｅ  Ｍｏｄｅｌ、ＡＡＭ：Ａｃｔｉｖｅ  Ａｐｐｅａｒａｎｃｅ  Ｍｏｄｅｌ）が開示されている。この技術を用いて画像中の顔をモデル化することによって、顔の向きや顔部品の状態を推定することが可能になり、またモデルを経時的に更新（トラッキング）することによって顔および顔部品の時間変化をモニタリングすることが可能になる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Stan  Z.  Li,  Anil  K.  Jain、「Handbook  of  Face  Recognition」、Springer、2011年、p.124-133
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１に記載の技術において、モデルフィッティングの精度は、モデルの初期状態、すなわちモデルを最初に画像のどこに配置し、どのような角度、形状に設定するかによって大きな影響を受ける。モデルの初期状態が実際の顔の状態と大きく離れていると、モデルを実際の顔に適合させるためのモデルフィッティングの計算が局所最適解に陥り、モデルが実際の顔からずれて収束してしまう場合がある。これを誤フィッティングといい、誤フィッティングが発生すると顔のモデルの精度が低下する。特に、モデルの目の位置が眼鏡の縁または眉毛の位置に誤って収束してしまうことが起こりやすい。
【０００６】
本発明は、上述の問題点を解決するためになされたものであって、顔のモデルの精度を向上させることが可能な顔検出装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様は、撮像部が撮像する顔を含む画像から顔検出を行うための顔検出装置であって、前記画像から前記顔の顔部品の位置を検出する位置検出部と、前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定部と、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング部と、を備えることを特徴とする。
【０００８】
本発明の一態様は、顔検出方法であって、撮像手段から顔を含む画像を取得するステップと、位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、モデルフィッティング手段が、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するステップと、を備えることを特徴とする。
【０００９】
本発明の一態様は、撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、コンピュータを、前記画像から前記顔の顔部品の位置を検出する位置検出手段、前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング手段、として機能させることを特徴とする。
【発明の効果】
【００１０】
本発明は、顔を含む画像から検出される顔部品の位置を用いて初期状態を決定するため、モデルの初期状態を実際の顔に近い状態にすることが可能である。そして該初期状態を用いて顔のモデルの生成を行うため、モデルの誤フィッティングを抑制することができ、かつ計算を早く収束させて処理時間を短縮することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る車両の車室の模式図である。
【図２】本発明の一実施形態に係る顔検出装置の概略ブロック図である。
【図３】本発明の一実施形態に係る顔検出装置の機能ブロック図である。
【図４】モデルおよびテンプレートを説明するための模式図である。
【図５】モデルフィッティング前後のモデルの状態を説明するための模式図である。
【図６】本発明の一実施形態に係る顔検出処理のフローチャートを示す図である。
【図７】本発明の一実施形態に係る目位置検出処理のフローチャートを示す図である。
【図８】本発明の一実施形態に係る目位置検出方法を示す模式図である。
【図９】本発明の一実施形態に係る初期状態決定処理のフローチャートを示す図である。
【図１０】顔角度の定義を示す模式図である。
【図１１】本発明の一実施形態に係る角度算出方法を示す模式図である。
【図１２】本発明の一実施形態に係るモデルの初期状態設定方法を示す模式図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施の形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
【００１３】
図１は本実施形態に係る顔検出装置１を有する車両１００の車室を示す模式図である。車両１００は、撮像部２を有する顔検出装置１を備える。顔検出装置１は車両１００内の任意の場所に設けられてよい。顔検出装置１は単独の装置でもよく、また車両１００内の他のシステム（例えば、カーナビゲーションシステム）に組み込まれてもよい。
【００１４】
撮像部２は、車室内において運転席１０１の前方（すなわち、車両１００の進行方向側）に設けられている。撮像部２は、少なくとも運転席１０１に着座している運転者の顔を含む領域を撮像可能に構成されている。本実施形態において撮像部２はダッシュボード上に設けられているが、運転者の顔が正面方向から撮影可能であればハンドル、天井、またはルームミラーに設けられてもよい。
【００１５】
図２は、本発明の実施形態に係る顔検出装置１の概略ブロック図である。顔検出装置１は、運転者の顔を撮像するための撮像部２を備える。撮像部２はレンズ２３を有するカメラ２１と制御部２２とを備える。カメラ２１は通常の可視光線用ＣＣＤカメラまたはＭＯＳカメラであってもよく、また、赤外線カメラであってもよい。赤外線カメラは可視光線用ＣＣＤカメラ、ＭＯＳカメラと比較して、人間の個別の肌の色に左右されない。また、可視光線用ＣＣＤカメラ、ＭＯＳカメラよりも赤外線カメラの方がシャッター速度を速くすることが可能である。また、カメラ２１は、ＪＰＥＧカメラモジュールであってもよい。ＪＰＥＧカメラモジュールは撮像部とＡ／Ｄ変換部が一体となったモジュールであり、前記可視光線用ＣＣＤカメラ、ＭＯＳカメラと比較して軽量でコンパクトなため、車両等への搭載時に搭載位置に関して優位性を有する。
【００１６】
制御部２２は、カメラ２１の制御を行う。制御部２２は、運転席１０１に着座する運転者の顔にレンズ２３をオートフォーカスする制御と、所定の時間ごとに、またはＣＰＵ８からの信号に応答してカメラ２１のシャッターを開閉する制御を行い、撮像された画像データをフレームとしてＲＡＭ６のフレーム・メモリ６１に記録する。すなわち、ある時点において撮像された画像をフレームという。
【００１７】
さらに、顔検出装置１は、演算部（ＣＰＵ）８、格納部９、ＲＯＭ５、ＲＡＭ６、出力部７、インターフェース（Ｉ／Ｆ）４、およびバス４１を備える。また、撮像部２のカメラ２１がＪＰＥＧカメラでない場合、顔検出装置１はＡ／Ｄ変換部３をさらに備える。それぞれはバス４１を介して信号を送受信可能に接続される。
【００１８】
演算部８はＣＰＵを含み、プログラムにしたがって、撮像部２からのデジタル変換された画像データを処理し解析するとともに、眼部の検出と瞬目動作の判定等の処理を行う機能を有している。格納部９はＲＡＭ、ハードディスクドライブ等から構成され、画像データを保存するとともに、画像データの処理結果、解析結果、および判定結果を格納可能である。
【００１９】
出力部７は、例えば、スピーカ、ディスプレイ、およびランプを含む。出力部７は、本実施形態に係る顔検出処理の結果に基づき、スピーカから注意や警告のための音声を発し、もしくはディスプレイまたはランプから注意や警告のためのメッセージまたは光を出力することができる。また、出力部７は、本実施形態に係る顔検出処理の結果に基づいて、例えば、車両２が有する自動ブレーキシステムに対して、自動ブレーキを作動させるための信号を送出することも可能である。
【００２０】
出力部７に含まれるスピーカとしては車両２に装備されるスピーカを利用することも可能である。また、出力部７に含まれるディスプレイとしては車両２に装備されるカーナビゲーションシステムのディスプレイを利用することも可能である。
【００２１】
Ａ／Ｄ変換部３は、撮像部２からの画像信号をデジタル信号の画像データへ変換する機能を有している。画像データは、インターフェース（Ｉ／Ｆ）４へ出力される。Ｉ／Ｆ４は制御部２２とデータおよびコマンドの送受信を行うとともに、画像データを受信する。ＲＯＭ５は読み取り専用メモリであって、顔検出装置１を起動させるためのブートプログラムを格納しており、また実行される処理、解析、および判定のためのプログラム（例えば、後述する図６、７、９に示す処理を行うプログラム）を格納するプログラム・メモリ５１を備える。プログラムは、ＲＯＭ５ではなく格納部９に格納されてもよい。
【００２２】
ＲＡＭ６は、ＣＰＵ８のキャッシュメモリとして使用されるとともに、ＣＰＵ８による画像データに対するプログラム実行時のワークエリアとして使用される。ＲＡＭ６は、画像データをフレーム毎に格納するフレーム・メモリ６１と、テンプレートを格納するテンプレート・メモリ６２とを備える。
【００２３】
図３は、顔検出装置１の機能ブロック図である。顔検出装置１は、撮像部（撮像手段）２からの画像を用いて顔部品の位置を検出する位置検出部（位置検出手段）１１と、位置検出部１１により検出された顔部品の位置に基づいてモデルの初期状態を決定する初期状態決定部（初期状態決定手段）１２と、初期状態決定部１２により決定された初期状態を用いて撮像部２からの画像に基づいて顔のモデルを生成するモデルフィッティング部（モデルフィッティング手段）１３と、を備える。さらに、顔検出装置１は、モデルフィッティング部１３から出力されるモデルの状態に応じて所定のアクションを行うアクション部（アクション手段）１４を備える。
【００２４】
本実施形態に係る顔検出装置１においては、位置検出部１１、初期状態決定部１２、モデルフィッティング部１３、およびアクション部１４は、それぞれコンピュータである顔検出装置１を作動させるためのプログラムとして顔検出装置１のＲＯＭ５または格納部９に記憶されている。すなわち、本実施形態に係る顔検出のためのプログラムは、実行時にＣＰＵ８によってＲＯＭ５または格納部９からＲＡＭ６に読み出され、コンピュータである顔検出装置１を、位置検出部１１、初期状態決定部１２、モデルフィッティング部１３、およびアクション部１４として機能させる。位置検出部１１、初期状態決定部１２、モデルフィッティング部１３、およびアクション部１４の少なくとも一部を、プログラムでなく電気回路として実装してもよい。また、位置検出部１１、初期状態決定部１２、モデルフィッティング部１３、およびアクション部１４を、単一の装置でなく複数の装置に別々に実装し、複数の装置が共同して本実施形態に係る顔検出装置１として作動するように構成してもよい。
【００２５】
図４は、本実施形態で用いる顔のモデルおよびテンプレートを説明するための模式図である。図４（ａ）は、例示的な顔のモデルＭを示す模式図である。モデルＭは、それぞれ所定の顔部品を表す複数の特徴点Ｐを含んでいる。特徴点Ｐは、任意の点を原点とした座標により表される。図４（ａ）では目、鼻および口を表す特徴点Ｐの一部のみを示しているが、モデルＭはより多くの数の特徴点Ｐを含んでもよく、またその他の顔部品、輪郭等を表す特徴点Ｐを含んでもよい。本実施形態において、モデルフィッティングには、統計的顔形状モデル、すなわち予め作成した平均的な顔の仮モデルを初期状態として用い、該仮モデルの特徴点Ｐを画像中の顔に適合させることによって、該顔に近似したモデルＭを生成することが含まれる。
【００２６】
図４（ｂ）は、顔のモデルＭについて作成されるテンプレートＴを示す模式図である。モデルＭからテンプレートＴを作成することによって、テンプレートＴを用いてモデルのトラッキングを行うことができる。モデルのトラッキングには、モデルフィッティングにおいてモデルＭが生成された後に、周期的に撮像される画像中の顔に合うようにモデルＭを継続的に更新することが含まれる。テンプレートＴは、画像中の特徴点Ｐを含む所定範囲の領域を有する。例えば、テンプレートＴは、目頭を表す特徴点Ｐを含む領域、目尻を表す特徴点Ｐを含む領域、鼻を表す特徴点Ｐを含む領域、および口角を表す特徴点Ｐを含む領域を有する。テンプレートＴの各領域は、１または２以上の特徴点と対応しており、該特徴点の座標と紐付けられている。すなわち、テンプレートＴが有する領域の画像中の位置が決まれば、該領域に対応する特徴点Ｐの座標を算出することができる。
【００２７】
図５は、モデルフィッティング前後のモデルの状態を説明するための模式図である。図５（ａ）〜（ｄ）のそれぞれにおいて、運転者の顔を含む画像上にモデルの特徴点Ｐが丸で示されている。図５（ａ）は、従来の顔検出処理において、実際の顔の状態から大きく離れて設定されたモデルの初期状態を表している。図５（ｂ）は、図５（ａ）のモデルの初期状態を用いてモデルフィッティングを行い、計算が収束した後のモデルを表している。図５（ｂ）のモデルでは、目を表す特徴点Ｐが眼鏡の縁に誤って位置しており、それに伴って口を表す特徴点Ｐも実際の口からずれている。このように、モデルの初期状態が実際の顔の状態から大きく離れている場合には、誤フィッティングが起こりやすい。
【００２８】
一方、本実施形態に係る顔検出処理では、位置検出部１１が顔部品の位置、具体的には目および鼻の位置を検出し、初期状態決定部１２が該位置を用いてモデルの初期状態を決定することによって、モデルの初期状態を実際の顔の状態に近付けることを可能にしている。その結果、モデルフィッティング部１３は、実際の顔の状態に近い初期状態を用いてモデルフィッティングを実行するため、誤フィッティングが起こりづらく、計算がより早く収束する。この図５（ｃ）は、本実施形態に係る顔検出処理において、実際の顔の状態に近く設定されたモデルの初期位置を表している。図５（ｄ）は、図５（ｃ）のモデルの初期状態を用いてモデルフィッティングを行い、計算が収束した後のモデルを表している。図５（ｄ）では、各特徴点Ｐが実際の顔部品の近くに位置している。このように、本実施形態に係る顔検出処理では、モデルの初期状態を実際の顔の状態に近く設定することができるため、誤フィッティングを抑制してモデルフィッティングの精度を向上させ、かつ計算の収束に掛かる処理時間を短縮することができる。
【００２９】
図６は、本実施形態に係る顔検出処理のフローチャートを示す図である。顔検出装置１は、所定の開始条件（例えば、運転者の着座、運転者によるイグニッション・キーまたは特定のスイッチのオン等）が満たされたことを検知すると、図６のフローチャートの顔検出処理の実行を開始する。
【００３０】
顔検出装置１は、撮像部２からＲＡＭ６のフレーム・メモリ６１から処理対象のフレームの画像と処理対象のフレームの１つ前のフレームの画像とを取得する（ステップＳ１）。ステップＳ１で取得する画像は、ステップＳ１の実行時にＣＰＵ８から撮像部２に信号を送ることにより撮像するものでもよく、または撮像部２が自発的に所定周期で撮像するものでもよい。いずれの場合においても、撮像部２により撮像される画像はＲＡＭ６のフレーム・メモリ６１に格納され、ステップＳ１においてＲＡＭ６のフレーム・メモリ６１から読み出される。ＲＡＭ６のフレーム・メモリ６１には、少なくとも処理対象のフレームおよび処理対象のフレームの１つ前のフレームの画像が保持される。なお、顔検出処理の開始時には、処理対象のフレームの１つ前のフレームの画像はまだＲＡＭ６のフレーム・メモリ６１に格納されていないため、顔検出装置１は２つ目のフレームの画像が撮像されるまで待ち、２つ目のフレームを処理対象のフレームとして次のステップＳ２に進む。
【００３１】
顔検出装置１は、撮像部２により撮像される処理対象のフレームの画像に基づいて、位置検出部１１を用いて鼻位置の検出を行い、該鼻位置をＲＡＭ６に格納する（ステップＳ２）。鼻位置は、例えば鼻の下端、鼻頭等の鼻の特定の部位の座標である。鼻位置の検出には、ニューラルネットワーク法、ＡｄａＢｏｏｓｔ法等の、画像から鼻位置を特定可能な任意の顔部品検出方法を用いてよい。
【００３２】
顔検出装置１は、ステップＳ１において取得される処理対象のフレームの画像に基づいて、位置検出部１１を用いて目位置検出処理を行い、該画像中の目位置を検出する（ステップＳ３）。目位置検出処理（ステップＳ３）において処理対象のフレームで目位置が検出されなかった場合、すなわち瞬きが検出されない場合には（ステップＳ４のＮＯ）、顔検出装置１は、次のフレームを処理対象のフレームとして画像の取得（ステップＳ１）から目位置検出処理（ステップＳ３）を行う。
【００３３】
目位置検出処理（ステップＳ３）において処理対象のフレームで目位置が検出される場合には（ステップＳ４のＹＥＳ）、顔検出装置１は、ステップＳ２およびステップＳ３において検出される目位置および鼻位置に基づいて、初期状態決定部１２を用いて初期状態決定処理を行い、モデルの初期状態を決定する（ステップＳ５）。
【００３４】
そして、モデルフィッティング部１３は、ステップＳ５で決定されるモデルの初期状態を用いて、ステップＳ１で取得される画像にモデルを適合させるようにモデルフィッティングを行う（ステップＳ６）。本実施形態におけるモデルフィッティングは特定の方法に限定されるものではなく、ＡＡＭ（Ａｃｔｉｖｅ  Ａｐｐｅａｒａｎｃｅ  Ｍｏｄｅｌ）法、ＡＳＭ（Ａｃｔｉｖｅ  Ｓｈａｐｅ  Ｍｏｄｅｌ）法等の、任意のモデルフィッティング法を用いてよい。モデルフィッティング部１３は、モデルフィッティングにより生成されるモデルをＲＡＭ６に格納する。
【００３５】
顔検出装置１は、ステップＳ６で生成されるモデルに基づいて、アクション部１４を用いて所定アクションの実行を行う（ステップＳ７）。例えば、アクション部１４は、ステップＳ６で生成されるモデルが正面を向いていない場合に運転者が脇見状態であることを判定し、警告のために出力部７から音声の出力、もしくはメッセージまたは光の出力を行ってもよい。また、アクション部１４は、ステップＳ６で生成されるモデルが所定の時間以上閉眼状態にある場合に運転者が居眠り状態であることを判定し、警告のために出力部７から音声の出力、もしくはメッセージまたは光の出力を行ってもよい。また、アクション部１４は、脇見状態または居眠り状態の判定に基づいて、自動ブレーキシステムの作動を行ってもよい。
【００３６】
図６のフローチャートには示されていないが、本実施形態に係る顔検出処理で生成されるモデルを用いて、モデルのトラッキングを行うことができる。例えば、顔検出装置１は、ステップＳ１で取得される画像およびステップＳ６で生成されるモデルから、図４（ｂ）に示すテンプレートをＲＡＭ６のテンプレート・メモリ６２に保存する。その後、顔検出装置１は、ＲＡＭ６のフレーム・メモリ６１から次のフレームの画像を読み出し、ＲＡＭ６のテンプレート・メモリ６２からテンプレートを読み出し、テンプレートが有する各領域を画像上で走査して各位置における該領域と該画像との相関を求める。そして、顔検出装置１は、最も相関が高い位置を用いてテンプレートが有する各領域の位置を更新し、それにより更新されたテンプレートをＲＡＭ６のテンプレート・メモリ６２に保存する。その後、顔検出装置１は、更新されたテンプレートに基づいて、テンプレートが有する各領域に紐付けられたモデルの特徴点の座標を更新し、それにより更新されたモデルをＲＡＭ６に格納する。その結果、モデルの各特徴点の座標が次のフレームの画像に合うように更新（トラッキング）される。
【００３７】
図７は、本実施形態に係る目位置検出処理（ステップＳ３）の詳細なフローチャートを示す図である。位置検出部１１は、ステップ２で検出された鼻位置を用いて、ステップＳ１で取得された処理対象のフレームおよび１つ前のフレームの画像内の探索領域の決定を行う（ステップＳ３１）。具体的には、位置検出部１１は、ＲＡＭ６からステップ２で検出された鼻位置を取得し、該鼻位置の周辺領域を探索領域として決定する。探索領域は、例えば鼻位置を基準に上下左右にそれぞれ所定の距離離れた地点を含む矩形領域である。探索領域は、その中に目が位置する蓋然性が十分に高い形状および大きさを有するものであり、その形状および大きさは統計的に決定可能である。後述の差分画像による目位置決定をここで決定した探索領域に限定して行うことによって、処理負荷を低減することができるとともに、目以外の顔部品によるノイズを低減して目位置の検出精度を向上させることができる。
【００３８】
また、位置検出部１１は、鼻位置に加えて、ニューラルネットワーク法、ＡｄａＢｏｏｓｔ法等の任意の顔部品検出方法を用いて目位置を検出し、目位置および鼻位置の周辺領域を探索領域として決定してもよい。ここでの目位置は探索領域を決定するために使用されるのみなので、目位置の検出方法は精度が高いものでなく、処理負荷が小さいものが望ましい。この場合の探索領域は、例えば、目位置および鼻位置のそれぞれを基準に、上下左右にそれぞれ所定の距離離れた地点を含む矩形領域である。位置検出部１１は、このように鼻位置に加えて目位置を探索領域の決定に用いることによって、鼻位置のみを用いて探索領域を決定する場合よりも狭い探索領域を利用することができる。そのため、差分画像による目位置決定の処理負荷をさらに低減し、目以外の顔部品によるノイズを低減することができる。また、位置検出部１１は、探索領域を鼻位置の周辺領域に限定せず、顔全体を探索領域としてもよい。
【００３９】
その後、位置検出部１１は、ステップＳ１で取得された処理対象のフレームおよび１つ前のフレームの画像を用いて、ステップＳ３１で決定された探索領域の差分画像を作成する（ステップＳ３２）。具体的には、位置検出部１１は、１つ前のフレームの画像中の探索領域と、処理対象のフレームの画像中の探索領域との間で、輝度成分の差分を算出する。これによって、例えば図８に示される探索領域の差分画像を作成する。
【００４０】
図８は、本実施形態に係る目位置検出方法を示す模式図である。図８（ａ）は、運転者が閉眼状態にある場合における画像中の探索領域Ａを表している。図８（ｂ）は、運転者が開眼状態にある場合における画像中の探索領域Ａを表している。図８（ｃ）は、図８（ｂ）の探索領域Ａの輝度成分から図８（ａ）の探索領域Ａの輝度成分を減じて作成される差分画像を表している。差分画像においては、輝度が低下した領域（黒領域Ｂ）と、輝度が上昇した領域（白領域Ｃ）と、輝度がほぼ変化しない領域とが表れる。瞬目によって閉眼状態から開眼状態に遷移すると、差分画像中に瞼に対応する位置に大きな黒領域Ｂが表れる。そのため、位置検出部１１は、ステップＳ３２において作成された差分画像中の所定の面積より大きい黒領域Ｂを目位置として決定し、該目位置をＲＡＭ６に格納する（ステップＳ３３）。目位置は、例えば黒領域Ｂの重心の座標である。また、位置検出部１１は、差分画像中に所定の面積より大きい黒領域Ｂがない場合には、そのフレームでは瞬目は行われていないと判定し、目位置を検出しない。目位置検出のために開眼状態から閉眼状態への遷移を用いてもよく、その場合には所定の面積より大きい白領域Ｃを目位置として決定することができる。
【００４１】
なお、図８（ｃ）は模式的な差分画像を表しているが、実際の差分画像には目以外の部分にも黒領域Ｂが複数表れることがある。その場合には、位置検出部１１は最も大きい面積を有する黒領域を目と推定する。さらに、推定された左右の目の大きさの違いまたは間隔が異常である、例えば所定の許容範囲から外れている場合には、位置検出部１１は次に大きい面積を有する黒領域を目と推定する。
【００４２】
本実施形態に係る目位置検出処理（ステップＳ３）では、瞬目に起因する目の変化を差分画像によって検出している。このため、眉毛または眼鏡の縁を目位置として誤検出することを抑制し、高精度に目位置を推定することができる。本実施形態で用いる目位置の検出方法はこれに限られるものではなく、検出精度と処理負荷とを考慮して画像から鼻位置を特定可能な任意の顔部品検出方法を用いてもよい。
【００４３】
フレームの取得周期は人間の瞬目を検出可能な長さ、すなわち１つ前のフレームと処理対象のフレームとの間で閉眼状態と開眼状態とが切り替わる程度の長さである。フレームの取得周期の具体的な数値は統計または実験に基づいて定めることが可能であり、また顔検出装置１が運転手の瞬目頻度に基づいてフレームの取得周期を決定してもよい。
【００４４】
図９は、本実施形態に係る初期状態決定処理（ステップＳ５）の詳細なフローチャートを示す図である。初期状態決定処理では、初期状態決定部１２は、ＲＡＭ６からステップＳ２およびステップＳ３で検出された目位置および鼻位置を取得し、該目位置および該鼻位置に基づいて顔位置を決定する（ステップＳ５１）。顔位置には、処理対象のフレームの画像中における平面方向の顔の位置および奥行方向の顔の位置が含まれる。初期状態決定部１２は、ステップＳ２で検出された鼻位置を、顔の平面方向の位置として決定する。顔の平面方向の位置は、モデルを画像中の顔の位置に移動するために用いられる。また、初期状態決定部１２は、ステップＳ３で検出された目位置から左右の目間の距離を算出し、該目間の距離と予め統計的に取得された標準的な顔における目間の平均距離との比を算出することにより、顔の奥行方向の位置を決定する。顔の奥行方向の位置は画像中の顔の大きさに対応するため、モデルを拡大または縮小するために用いられる。顔位置の決定方法はここに示した具体的な方法に限定されるものではなく、画像または該画像から検出した目位置、鼻位置を用いて、該画像中の顔位置を決定可能な任意の方法でよい。
【００４５】
次に、初期状態決定部１２は、ＲＡＭ６からステップＳ２およびステップＳ３で検出された目位置および鼻位置を取得し、該目位置および該鼻位置に基づいて顔角度を決定する（ステップＳ５２）。図１０は、顔角度の定義を示す模式図である。図１０は、画像中の顔にｘ軸、ｙ軸、ｚ軸を重ねて示している。ｘ軸、ｙ軸、ｚ軸の位置はステップＳ５１で決定された顔位置に基づいて決定可能である。具体的には、ｘ軸およびｙ軸は画像中の顔の重心を通り、かつ互いに垂直な該画像を含む平面上の直線であり、ｚ軸は該重心を通る該画像の法線である。顔角度は、ｘ軸に関する回転角度を表すピッチ角度θｘ、ｙ軸に関する回転角度を表すヨー角度θｙ、ｚ軸に関する回転角度を表すおよびロール角度θｚを含む。
【００４６】
図１１（ａ）はピッチ角度θｘの算出方法を示す模式図である。左右の目位置Ｅ１、Ｅ２の間の距離をｄｗとし、鼻位置Ｎと左右の目位置Ｅ１、Ｅ２を結ぶ直線との距離をｄｈとする。また、予め統計的に取得された標準的な顔におけるｄｗおよびｄｈを、それぞれｄｗ０、ｄｈ０とする。Ｒ０＝ｄｗ０／ｄｈ０とすると、ピッチ角度θｘは以下の式（１）で表される。
【００４７】
2015075915.tif 000003
【００４８】
図１１（ｂ）はヨー角度θｙの算出方法を示す模式図である。左右の目位置Ｅ１、Ｅ２を結ぶ直線に鼻位置Ｎから垂線を引き、該直線と該垂線との交点から左の目位置Ｅ１との距離をｄｗ１とし、右の目位置Ｅ２との距離をｄｗ２とする。このとき、ヨー角度θｙは以下の式（２）で表される。
【００４９】
2015075915.tif 000004
【００５０】
図１１（ｃ）はロール角度θｚの算出方法を示す模式図である。右の目位置Ｅ２のｘ座標から左の目位置Ｅ１のｘ座標を減じた値をｄｘとし、右の目位置Ｅ２のｙ座標から左の目位置Ｅ１のｙ座標を減じた値をｄｙとする。このとき、ロール角度θｚは以下の式（３）で表される。
【００５１】
2015075915.tif 000005
【００５２】
初期状態決定部１２は、以上の方法により算出したピッチ角度θｘ、ヨー角度θｙ、ロール角度θｚを含む顔角度をＲＡＭ６に格納する。顔角度の決定方法はここに示した具体的な方法に限定されるものではなく、画像または該画像から検出した目位置、鼻位置を用いて、該画像中の顔角度を決定可能な任意の方法でよい。
【００５３】
初期状態決定部１２は、ＲＡＭ６からステップＳ５１およびステップＳ５２で決定された顔位置および顔角度を取得し、該顔位置および該顔角度に基づいてモデルの初期状態を決定する（ステップＳ５３）。モデルの初期状態の決定には、モデルフィッティングを実行する前の時点におけるモデルの位置、角度等の決定が含まれる。
【００５４】
図１２は、顔位置および顔角度を用いてモデル初期状態を決定する方法を表す模式図である。初期状態決定部１２は、ＲＡＭ６からステップＳ５１およびステップＳ５２で決定された顔位置および顔角度を取得するとともに、ＲＡＭ６から複数の特徴点Ｐを含む統計的顔形状モデル（仮モデルＭ’）を取得する。そして、初期状態決定部１２は、図１２（ａ）に示すように、仮モデルＭ’を顔角度、すなわちピッチ角度θｘ、ヨー角度θｙ、ロール角度θｚを用いて回転させ、仮モデルＭ’を顔の平面方向の位置を用いて画像の平面方向に移動させ、さらに仮モデルＭ’を顔の奥行方向の位置を用いて拡大または縮小させる。初期状態決定部１２は、このように変形された後のモデルＭを、モデルの初期状態として決定し、ＲＡＭ６に格納する。図１２（ｂ）は、モデルの初期状態における特徴点Ｐを顔に重ねた状態を表している。本実施形態に係るモデルの初期状態は、画像に基づいて取得された顔位置および顔角度によって実際の顔の状態に近付けられているため、特徴点Ｐは実際の顔部品の近くに位置している。そのため、このモデルの初期状態を用いて行われるモデルフィッティング（ステップＳ６）において、計算が早く収束し、かつ誤フィッティングが抑制される。
【００５５】
本発明の本質は、画像から顔部品の検出を行い、該顔部品の位置を用いてモデルの初期状態を決定し、該モデルの初期状態を用いてモデルの生成を行うことである。本実施形態では顔部品として目および鼻を用いているが、画像から位置が特定できれば任意の顔部品を用いてよい。例えば、眉毛、口、輪郭等を用いてもよく、複数の顔部品を組み合わせて用いてもよい。
【００５６】
本実施形態では平面方向の位置、奥行方向の位置を含む顔位置、およびピッチ角度θｘ、ヨー角度θｙ、ロール角度θｚを含む顔角度を用いてモデルの初期状態の決定を行っているが、必ずしもそれらの全てを用いなくてもよく、それらの一部を用いてもよい。
【００５７】
本実施形態に係る顔検出処理では、画像から検出される顔部品の位置に基づいてモデルの初期状態を決定し、該モデルの初期状態を用いてモデルの生成を行うため、モデルの初期状態が実際の顔の状態に近い。そのため、誤フィッティングを抑制してモデルの精度を向上させることができ、さらに、モデルの生成のための計算の収束が早く、計算負荷を低減することができる。しかも、視線検出機（アイトラッカー）のような追加の機構を必要とせずに、１つの撮像部からの画像を用いて顔部品の位置の検出とモデルの生成との両方を行っているため、モデルの精度を向上させるために掛かるコストの増加を抑制することができる。
【００５８】
また、本実施形態に係る顔検出処理は、フレーム間の差分画像を作成することによって瞬目に起因する目の変化を検出することにより目位置の検出を行っているため、眉毛または眼鏡の縁を目位置として誤検出することを抑制し、高精度に目位置を推定することができる。このとき、画像から検出される鼻位置に基づいて差分画像作成時の画像の探索領域を限定しているため、処理負荷を低減し、さらに検出精度を向上させることができる。このように本実施形態では高精度に位置が推定される目位置を用いることによって、モデルの初期状態を正確に決定し、さらに高いモデルの精度を実現している。
【００５９】
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
【００６０】
前述した実施形態の機能を実現するように前述した実施形態の構成を動作させるプログラム（例えば、図６、７、９に示す処理を行うプログラム）を記憶媒体に記憶させ、該記憶媒体に記憶されたプログラムをコンピュータ中に読み出し、コンピュータにおいて実行する処理方法も前述の実施形態の範疇に含まれる。すなわち、コンピュータ読み取り可能な記憶媒体も本発明に係る実施形態の範囲に含まれる。また、前述のプログラムが記憶された記憶媒体はもちろん、そのプログラム自体も前述の実施形態に含まれる。かかる記憶媒体としてはたとえばフロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ―ＲＯＭ、磁気テープ、不揮発性メモリカード、ＲＯＭを用いることができる。また前述の記憶媒体に記憶されたプログラム単体で処理を実行しているものに限らず、他のソフトウエア、拡張ボードの機能と共同して、ＯＳ上で動作し前述の実施形態の動作を実行するものも前述した実施形態の範疇に含まれる。
【００６１】
前述した実施形態は、さらに以下の付記を含む。
（付記１）
撮像手段から顔を含む画像を取得するステップと、
位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、
初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、
モデルフィッティング手段が、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するステップと、
を備えることを特徴とする顔検出方法。
（付記２）
前記顔部品は目を含み、
前記位置検出手段は、あるフレームの前記撮像手段からの画像と１つ前のフレームの前記撮像手段からの画像との間で差分画像を作成し、前記差分画像に基づいて前記目の位置を検出する
ことを特徴とする付記１に記載の顔検出方法。
（付記３）
前記顔部品は鼻をさらに含み、
前記位置検出手段は、前記位置検出手段により検出される前記鼻の位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする付記２に記載の顔検出方法。
（付記４）
前記初期状態決定手段は、前記顔部品の前記位置から前記顔の角度を算出し、前記顔の前記角度に基づいて前記モデルの初期状態を決定する
ことを特徴とする付記１に記載の顔検出方法。
（付記５）
撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、
コンピュータを、
前記画像から前記顔の顔部品の位置を検出する位置検出手段、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および
前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング手段、
として機能させることを特徴とするプログラム。
（付記６）
前記顔部品は目を含み、
前記位置検出手段は、あるフレームの前記撮像手段からの画像と１つ前のフレームの前記撮像手段からの画像との間で差分画像を作成し、前記差分画像に基づいて前記目の位置を検出する
ことを特徴とする付記５に記載のプログラム。
（付記７）
前記顔部品は鼻をさらに含み、
前記位置検出手段は、前記位置検出手段により検出される前記鼻の位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする付記６に記載のプログラム。
（付記８）
前記初期状態決定手段は、前記顔部品の前記位置から前記顔の角度を算出し、前記顔の前記角度に基づいて前記モデルの初期状態を決定する
ことを特徴とする付記５に記載のプログラム。
（付記９）
付記５から８のいずれか一項に記載のプログラムを記憶したコンピュータ読み取り可能記憶媒体。
【符号の説明】
【００６２】
１  顔検出装置
２  撮像部
３  Ａ／Ｄ変換部
４  インターフェース（Ｉ／Ｆ）
５  ＲＯＭ
６  ＲＡＭ
７  出力部
８  演算部（ＣＰＵ）
９  格納部
１１  位置検出部
１２  初期状態決定部
１３  モデルフィッティング部
１４  アクション部
１００  車両
１０１  運転席
【図１】
2015075915.tif 000006
【図２】
2015075915.tif 000007
【図３】
2015075915.tif 000008
【図４】
2015075915.tif 000009
【図５】
2015075915.tif 000010
【図６】
2015075915.tif 000011
【図７】
2015075915.tif 000012
【図８】
2015075915.tif 000013
【図９】
2015075915.tif 000014
【図１０】
2015075915.tif 000015
【図１１】
2015075915.tif 000016
【図１２】
2015075915.tif 000017