特許第6304999号(P6304999)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アイシン精機株式会社の特許一覧 ▶ 株式会社豊田中央研究所の特許一覧

<>
  • 特許6304999-顔検出装置、方法およびプログラム 図000005
  • 特許6304999-顔検出装置、方法およびプログラム 図000006
  • 特許6304999-顔検出装置、方法およびプログラム 図000007
  • 特許6304999-顔検出装置、方法およびプログラム 図000008
  • 特許6304999-顔検出装置、方法およびプログラム 図000009
  • 特許6304999-顔検出装置、方法およびプログラム 図000010
  • 特許6304999-顔検出装置、方法およびプログラム 図000011
  • 特許6304999-顔検出装置、方法およびプログラム 図000012
  • 特許6304999-顔検出装置、方法およびプログラム 図000013
  • 特許6304999-顔検出装置、方法およびプログラム 図000014
  • 特許6304999-顔検出装置、方法およびプログラム 図000015
  • 特許6304999-顔検出装置、方法およびプログラム 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6304999
(24)【登録日】2018年3月16日
(45)【発行日】2018年4月4日
(54)【発明の名称】顔検出装置、方法およびプログラム
(51)【国際特許分類】
   G06T 1/00 20060101AFI20180326BHJP
   G06T 7/00 20170101ALI20180326BHJP
【FI】
   G06T1/00 340A
   G06T7/00 660A
【請求項の数】6
【全頁数】17
(21)【出願番号】特願2013-211630(P2013-211630)
(22)【出願日】2013年10月9日
(65)【公開番号】特開2015-75915(P2015-75915A)
(43)【公開日】2015年4月20日
【審査請求日】2016年9月6日
(73)【特許権者】
【識別番号】000000011
【氏名又は名称】アイシン精機株式会社
(73)【特許権者】
【識別番号】000003609
【氏名又は名称】株式会社豊田中央研究所
(74)【代理人】
【識別番号】100094112
【弁理士】
【氏名又は名称】岡部 讓
(74)【代理人】
【識別番号】100106183
【弁理士】
【氏名又は名称】吉澤 弘司
(74)【代理人】
【識別番号】100128657
【弁理士】
【氏名又は名称】三山 勝巳
(74)【代理人】
【識別番号】100170601
【弁理士】
【氏名又は名称】川崎 孝
(72)【発明者】
【氏名】加藤 隆志
(72)【発明者】
【氏名】大須賀 晋
(72)【発明者】
【氏名】小島 真一
【審査官】 ▲広▼島 明芳
(56)【参考文献】
【文献】 特開2007−299070(JP,A)
【文献】 特開2010−250420(JP,A)
【文献】 特開2008−192100(JP,A)
【文献】 特開2008−234208(JP,A)
【文献】 特開2010−134866(JP,A)
【文献】 特開2012−088776(JP,A)
【文献】 特開2007−087346(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 − 7/90
(57)【特許請求の範囲】
【請求項1】
撮像部が撮像する顔を含む画像から顔検出を行うための顔検出装置であって、
前記画像から前記顔の顔部品の位置を検出する位置検出部と、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定部と、
前記モデルの前記初期状態を用いて、前記画像に基づいて前記顔の前記モデルを生成するモデルフィッティング部と、
を備え
前記位置検出部は、前記画像から目および鼻の前記位置を検出し、
前記初期状態決定部は、前記顔の前記位置および前記顔の角度を用いて前記モデルの前記初期状態を決定し、
前記顔の前記位置は、前記画像中における平面方向の前記顔の前記位置および奥行き方向の前記顔の前記位置であり、
前記平面方向の前記顔の前記位置は、検出された前記鼻の前記位置により決定され、
前記奥行き方向の前記顔の前記位置は、検出された前記目の前記位置から算出された左右の前記目の間の距離により決定され、
前記顔の前記角度は、前記目の前記位置および前記鼻の前記位置により決定され
ことを特徴とする顔検出装置。
【請求項2】
記位置検出部は、あるフレームの前記撮像部からの前記画像と1つ前のフレームの前記撮像部からの前記画像との間で差分画像を作成し、前記差分画像に基づいて前記目の前記位置を検出する
ことを特徴とする請求項1に記載の顔検出装置。
【請求項3】
記位置検出部は、前記位置検出部により検出される前記鼻の前記位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする請求項2に記載の顔検出装置。
【請求項4】
検出された前記目の前記位置から左右の前記目の間の前記距離を算出し、前記目の間の前記距離と予め統計的に取得された標準的な前記顔における前記目の間の平均距離との比を算出することにより、前記奥行き方向の前記顔の前記位置が決定される
ことを特徴とする請求項1に記載の顔検出装置。
【請求項5】
撮像手段から顔を含む画像を取得するステップと、
位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、
初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、
モデルフィッティング手段が、前記モデルの前記初期状態を用いて、前記画像に基づいて前記顔の前記モデルを生成するステップと、
を備え
前記位置検出手段は、前記画像から目および鼻の前記位置を検出し、
前記初期状態決定手段は、前記顔の前記位置および前記顔の角度を用いて前記モデルの前記初期状態を決定し、
前記顔の前記位置は、前記画像中における平面方向の前記顔の前記位置および奥行き方向の前記顔の前記位置であり、
前記平面方向の前記顔の前記位置は、検出された前記鼻の前記位置により決定され、
前記奥行き方向の前記顔の前記位置は、検出された前記目の前記位置から算出された左右の前記目の間の距離により決定され、
前記顔の前記角度は、前記目の前記位置および前記鼻の前記位置により決定され
ことを特徴とする顔検出方法。
【請求項6】
撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、
コンピュータを、
前記画像から前記顔の顔部品の位置を検出する位置検出手段、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および
前記モデルの前記初期状態を用いて、前記画像に基づいて前記顔の前記モデルを生成するモデルフィッティング手段、
として機能させ
前記位置検出手段は、前記画像から目および鼻の前記位置を検出し、
前記初期状態決定手段は、前記顔の前記位置および前記顔の角度を用いて前記モデルの前記初期状態を決定し、
前記顔の前記位置は、前記画像中における平面方向の前記顔の前記位置および奥行き方向の前記顔の前記位置であり、
前記平面方向の前記顔の前記位置は、検出された前記鼻の前記位置により決定され、
前記奥行き方向の前記顔の前記位置は、検出された前記目の前記位置から算出された左右の前記目の間の距離により決定され、
前記顔の前記角度は、前記目の前記位置および前記鼻の前記位置により決定され
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像された画像から顔の位置や向きを検出する顔検出装置、方法およびプログラムに関するものである。
【背景技術】
【0002】
近年、撮像された静止画像または動画像に含まれる顔の位置および向き、ならびに目および口等の顔部品の状態を検出する顔検出技術の開発が進められている。例えば、車両においては、運転者の顔検出を行うことによって、脇見運転や居眠り運転を検知し、警報等の所定のアクションを行うことができる。
【0003】
非特許文献1には、最急降下法等を用いて統計的顔形状モデルを画像中の顔に適合させる、すなわちモデルフィッティングを行うことによって、画像中の顔のモデルを生成する顔検出技術(ASM:Active Shape Model、AAM:Active Appearance Model)が開示されている。この技術を用いて画像中の顔をモデル化することによって、顔の向きや顔部品の状態を推定することが可能になり、またモデルを経時的に更新(トラッキング)することによって顔および顔部品の時間変化をモニタリングすることが可能になる。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Stan Z. Li, Anil K. Jain、「Handbook of Face Recognition」、Springer、2011年、p.124-133
【発明の概要】
【発明が解決しようとする課題】
【0005】
非特許文献1に記載の技術において、モデルフィッティングの精度は、モデルの初期状態、すなわちモデルを最初に画像のどこに配置し、どのような角度、形状に設定するかによって大きな影響を受ける。モデルの初期状態が実際の顔の状態と大きく離れていると、モデルを実際の顔に適合させるためのモデルフィッティングの計算が局所最適解に陥り、モデルが実際の顔からずれて収束してしまう場合がある。これを誤フィッティングといい、誤フィッティングが発生すると顔のモデルの精度が低下する。特に、モデルの目の位置が眼鏡の縁または眉毛の位置に誤って収束してしまうことが起こりやすい。
【0006】
本発明は、上述の問題点を解決するためになされたものであって、顔のモデルの精度を向上させることが可能な顔検出装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様は、撮像部が撮像する顔を含む画像から顔検出を行うための顔検出装置であって、前記画像から前記顔の顔部品の位置を検出する位置検出部と、前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定部と、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング部と、を備えることを特徴とする。
【0008】
本発明の一態様は、顔検出方法であって、撮像手段から顔を含む画像を取得するステップと、位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、モデルフィッティング手段が、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するステップと、を備えることを特徴とする。
【0009】
本発明の一態様は、撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、コンピュータを、前記画像から前記顔の顔部品の位置を検出する位置検出手段、前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング手段、として機能させることを特徴とする。
【発明の効果】
【0010】
本発明は、顔を含む画像から検出される顔部品の位置を用いて初期状態を決定するため、モデルの初期状態を実際の顔に近い状態にすることが可能である。そして該初期状態を用いて顔のモデルの生成を行うため、モデルの誤フィッティングを抑制することができ、かつ計算を早く収束させて処理時間を短縮することができる。
【図面の簡単な説明】
【0011】
図1】本発明の一実施形態に係る車両の車室の模式図である。
図2】本発明の一実施形態に係る顔検出装置の概略ブロック図である。
図3】本発明の一実施形態に係る顔検出装置の機能ブロック図である。
図4】モデルおよびテンプレートを説明するための模式図である。
図5】モデルフィッティング前後のモデルの状態を説明するための模式図である。
図6】本発明の一実施形態に係る顔検出処理のフローチャートを示す図である。
図7】本発明の一実施形態に係る目位置検出処理のフローチャートを示す図である。
図8】本発明の一実施形態に係る目位置検出方法を示す模式図である。
図9】本発明の一実施形態に係る初期状態決定処理のフローチャートを示す図である。
図10】顔角度の定義を示す模式図である。
図11】本発明の一実施形態に係る角度算出方法を示す模式図である。
図12】本発明の一実施形態に係るモデルの初期状態設定方法を示す模式図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施の形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
【0013】
図1は本実施形態に係る顔検出装置1を有する車両100の車室を示す模式図である。車両100は、撮像部2を有する顔検出装置1を備える。顔検出装置1は車両100内の任意の場所に設けられてよい。顔検出装置1は単独の装置でもよく、また車両100内の他のシステム(例えば、カーナビゲーションシステム)に組み込まれてもよい。
【0014】
撮像部2は、車室内において運転席101の前方(すなわち、車両100の進行方向側)に設けられている。撮像部2は、少なくとも運転席101に着座している運転者の顔を含む領域を撮像可能に構成されている。本実施形態において撮像部2はダッシュボード上に設けられているが、運転者の顔が正面方向から撮影可能であればハンドル、天井、またはルームミラーに設けられてもよい。
【0015】
図2は、本発明の実施形態に係る顔検出装置1の概略ブロック図である。顔検出装置1は、運転者の顔を撮像するための撮像部2を備える。撮像部2はレンズ23を有するカメラ21と制御部22とを備える。カメラ21は通常の可視光線用CCDカメラまたはMOSカメラであってもよく、また、赤外線カメラであってもよい。赤外線カメラは可視光線用CCDカメラ、MOSカメラと比較して、人間の個別の肌の色に左右されない。また、可視光線用CCDカメラ、MOSカメラよりも赤外線カメラの方がシャッター速度を速くすることが可能である。また、カメラ21は、JPEGカメラモジュールであってもよい。JPEGカメラモジュールは撮像部とA/D変換部が一体となったモジュールであり、前記可視光線用CCDカメラ、MOSカメラと比較して軽量でコンパクトなため、車両等への搭載時に搭載位置に関して優位性を有する。
【0016】
制御部22は、カメラ21の制御を行う。制御部22は、運転席101に着座する運転者の顔にレンズ23をオートフォーカスする制御と、所定の時間ごとに、またはCPU8からの信号に応答してカメラ21のシャッターを開閉する制御を行い、撮像された画像データをフレームとしてRAM6のフレーム・メモリ61に記録する。すなわち、ある時点において撮像された画像をフレームという。
【0017】
さらに、顔検出装置1は、演算部(CPU)8、格納部9、ROM5、RAM6、出力部7、インターフェース(I/F)4、およびバス41を備える。また、撮像部2のカメラ21がJPEGカメラでない場合、顔検出装置1はA/D変換部3をさらに備える。それぞれはバス41を介して信号を送受信可能に接続される。
【0018】
演算部8はCPUを含み、プログラムにしたがって、撮像部2からのデジタル変換された画像データを処理し解析するとともに、眼部の検出と瞬目動作の判定等の処理を行う機能を有している。格納部9はRAM、ハードディスクドライブ等から構成され、画像データを保存するとともに、画像データの処理結果、解析結果、および判定結果を格納可能である。
【0019】
出力部7は、例えば、スピーカ、ディスプレイ、およびランプを含む。出力部7は、本実施形態に係る顔検出処理の結果に基づき、スピーカから注意や警告のための音声を発し、もしくはディスプレイまたはランプから注意や警告のためのメッセージまたは光を出力することができる。また、出力部7は、本実施形態に係る顔検出処理の結果に基づいて、例えば、車両2が有する自動ブレーキシステムに対して、自動ブレーキを作動させるための信号を送出することも可能である。
【0020】
出力部7に含まれるスピーカとしては車両2に装備されるスピーカを利用することも可能である。また、出力部7に含まれるディスプレイとしては車両2に装備されるカーナビゲーションシステムのディスプレイを利用することも可能である。
【0021】
A/D変換部3は、撮像部2からの画像信号をデジタル信号の画像データへ変換する機能を有している。画像データは、インターフェース(I/F)4へ出力される。I/F4は制御部22とデータおよびコマンドの送受信を行うとともに、画像データを受信する。ROM5は読み取り専用メモリであって、顔検出装置1を起動させるためのブートプログラムを格納しており、また実行される処理、解析、および判定のためのプログラム(例えば、後述する図6、7、9に示す処理を行うプログラム)を格納するプログラム・メモリ51を備える。プログラムは、ROM5ではなく格納部9に格納されてもよい。
【0022】
RAM6は、CPU8のキャッシュメモリとして使用されるとともに、CPU8による画像データに対するプログラム実行時のワークエリアとして使用される。RAM6は、画像データをフレーム毎に格納するフレーム・メモリ61と、テンプレートを格納するテンプレート・メモリ62とを備える。
【0023】
図3は、顔検出装置1の機能ブロック図である。顔検出装置1は、撮像部(撮像手段)2からの画像を用いて顔部品の位置を検出する位置検出部(位置検出手段)11と、位置検出部11により検出された顔部品の位置に基づいてモデルの初期状態を決定する初期状態決定部(初期状態決定手段)12と、初期状態決定部12により決定された初期状態を用いて撮像部2からの画像に基づいて顔のモデルを生成するモデルフィッティング部(モデルフィッティング手段)13と、を備える。さらに、顔検出装置1は、モデルフィッティング部13から出力されるモデルの状態に応じて所定のアクションを行うアクション部(アクション手段)14を備える。
【0024】
本実施形態に係る顔検出装置1においては、位置検出部11、初期状態決定部12、モデルフィッティング部13、およびアクション部14は、それぞれコンピュータである顔検出装置1を作動させるためのプログラムとして顔検出装置1のROM5または格納部9に記憶されている。すなわち、本実施形態に係る顔検出のためのプログラムは、実行時にCPU8によってROM5または格納部9からRAM6に読み出され、コンピュータである顔検出装置1を、位置検出部11、初期状態決定部12、モデルフィッティング部13、およびアクション部14として機能させる。位置検出部11、初期状態決定部12、モデルフィッティング部13、およびアクション部14の少なくとも一部を、プログラムでなく電気回路として実装してもよい。また、位置検出部11、初期状態決定部12、モデルフィッティング部13、およびアクション部14を、単一の装置でなく複数の装置に別々に実装し、複数の装置が共同して本実施形態に係る顔検出装置1として作動するように構成してもよい。
【0025】
図4は、本実施形態で用いる顔のモデルおよびテンプレートを説明するための模式図である。図4(a)は、例示的な顔のモデルMを示す模式図である。モデルMは、それぞれ所定の顔部品を表す複数の特徴点Pを含んでいる。特徴点Pは、任意の点を原点とした座標により表される。図4(a)では目、鼻および口を表す特徴点Pの一部のみを示しているが、モデルMはより多くの数の特徴点Pを含んでもよく、またその他の顔部品、輪郭等を表す特徴点Pを含んでもよい。本実施形態において、モデルフィッティングには、統計的顔形状モデル、すなわち予め作成した平均的な顔の仮モデルを初期状態として用い、該仮モデルの特徴点Pを画像中の顔に適合させることによって、該顔に近似したモデルMを生成することが含まれる。
【0026】
図4(b)は、顔のモデルMについて作成されるテンプレートTを示す模式図である。モデルMからテンプレートTを作成することによって、テンプレートTを用いてモデルのトラッキングを行うことができる。モデルのトラッキングには、モデルフィッティングにおいてモデルMが生成された後に、周期的に撮像される画像中の顔に合うようにモデルMを継続的に更新することが含まれる。テンプレートTは、画像中の特徴点Pを含む所定範囲の領域を有する。例えば、テンプレートTは、目頭を表す特徴点Pを含む領域、目尻を表す特徴点Pを含む領域、鼻を表す特徴点Pを含む領域、および口角を表す特徴点Pを含む領域を有する。テンプレートTの各領域は、1または2以上の特徴点と対応しており、該特徴点の座標と紐付けられている。すなわち、テンプレートTが有する領域の画像中の位置が決まれば、該領域に対応する特徴点Pの座標を算出することができる。
【0027】
図5は、モデルフィッティング前後のモデルの状態を説明するための模式図である。図5(a)〜(d)のそれぞれにおいて、運転者の顔を含む画像上にモデルの特徴点Pが丸で示されている。図5(a)は、従来の顔検出処理において、実際の顔の状態から大きく離れて設定されたモデルの初期状態を表している。図5(b)は、図5(a)のモデルの初期状態を用いてモデルフィッティングを行い、計算が収束した後のモデルを表している。図5(b)のモデルでは、目を表す特徴点Pが眼鏡の縁に誤って位置しており、それに伴って口を表す特徴点Pも実際の口からずれている。このように、モデルの初期状態が実際の顔の状態から大きく離れている場合には、誤フィッティングが起こりやすい。
【0028】
一方、本実施形態に係る顔検出処理では、位置検出部11が顔部品の位置、具体的には目および鼻の位置を検出し、初期状態決定部12が該位置を用いてモデルの初期状態を決定することによって、モデルの初期状態を実際の顔の状態に近付けることを可能にしている。その結果、モデルフィッティング部13は、実際の顔の状態に近い初期状態を用いてモデルフィッティングを実行するため、誤フィッティングが起こりづらく、計算がより早く収束する。この図5(c)は、本実施形態に係る顔検出処理において、実際の顔の状態に近く設定されたモデルの初期位置を表している。図5(d)は、図5(c)のモデルの初期状態を用いてモデルフィッティングを行い、計算が収束した後のモデルを表している。図5(d)では、各特徴点Pが実際の顔部品の近くに位置している。このように、本実施形態に係る顔検出処理では、モデルの初期状態を実際の顔の状態に近く設定することができるため、誤フィッティングを抑制してモデルフィッティングの精度を向上させ、かつ計算の収束に掛かる処理時間を短縮することができる。
【0029】
図6は、本実施形態に係る顔検出処理のフローチャートを示す図である。顔検出装置1は、所定の開始条件(例えば、運転者の着座、運転者によるイグニッション・キーまたは特定のスイッチのオン等)が満たされたことを検知すると、図6のフローチャートの顔検出処理の実行を開始する。
【0030】
顔検出装置1は、撮像部2からRAM6のフレーム・メモリ61から処理対象のフレームの画像と処理対象のフレームの1つ前のフレームの画像とを取得する(ステップS1)。ステップS1で取得する画像は、ステップS1の実行時にCPU8から撮像部2に信号を送ることにより撮像するものでもよく、または撮像部2が自発的に所定周期で撮像するものでもよい。いずれの場合においても、撮像部2により撮像される画像はRAM6のフレーム・メモリ61に格納され、ステップS1においてRAM6のフレーム・メモリ61から読み出される。RAM6のフレーム・メモリ61には、少なくとも処理対象のフレームおよび処理対象のフレームの1つ前のフレームの画像が保持される。なお、顔検出処理の開始時には、処理対象のフレームの1つ前のフレームの画像はまだRAM6のフレーム・メモリ61に格納されていないため、顔検出装置1は2つ目のフレームの画像が撮像されるまで待ち、2つ目のフレームを処理対象のフレームとして次のステップS2に進む。
【0031】
顔検出装置1は、撮像部2により撮像される処理対象のフレームの画像に基づいて、位置検出部11を用いて鼻位置の検出を行い、該鼻位置をRAM6に格納する(ステップS2)。鼻位置は、例えば鼻の下端、鼻頭等の鼻の特定の部位の座標である。鼻位置の検出には、ニューラルネットワーク法、AdaBoost法等の、画像から鼻位置を特定可能な任意の顔部品検出方法を用いてよい。
【0032】
顔検出装置1は、ステップS1において取得される処理対象のフレームの画像に基づいて、位置検出部11を用いて目位置検出処理を行い、該画像中の目位置を検出する(ステップS3)。目位置検出処理(ステップS3)において処理対象のフレームで目位置が検出されなかった場合、すなわち瞬きが検出されない場合には(ステップS4のNO)、顔検出装置1は、次のフレームを処理対象のフレームとして画像の取得(ステップS1)から目位置検出処理(ステップS3)を行う。
【0033】
目位置検出処理(ステップS3)において処理対象のフレームで目位置が検出される場合には(ステップS4のYES)、顔検出装置1は、ステップS2およびステップS3において検出される目位置および鼻位置に基づいて、初期状態決定部12を用いて初期状態決定処理を行い、モデルの初期状態を決定する(ステップS5)。
【0034】
そして、モデルフィッティング部13は、ステップS5で決定されるモデルの初期状態を用いて、ステップS1で取得される画像にモデルを適合させるようにモデルフィッティングを行う(ステップS6)。本実施形態におけるモデルフィッティングは特定の方法に限定されるものではなく、AAM(Active Appearance Model)法、ASM(Active Shape Model)法等の、任意のモデルフィッティング法を用いてよい。モデルフィッティング部13は、モデルフィッティングにより生成されるモデルをRAM6に格納する。
【0035】
顔検出装置1は、ステップS6で生成されるモデルに基づいて、アクション部14を用いて所定アクションの実行を行う(ステップS7)。例えば、アクション部14は、ステップS6で生成されるモデルが正面を向いていない場合に運転者が脇見状態であることを判定し、警告のために出力部7から音声の出力、もしくはメッセージまたは光の出力を行ってもよい。また、アクション部14は、ステップS6で生成されるモデルが所定の時間以上閉眼状態にある場合に運転者が居眠り状態であることを判定し、警告のために出力部7から音声の出力、もしくはメッセージまたは光の出力を行ってもよい。また、アクション部14は、脇見状態または居眠り状態の判定に基づいて、自動ブレーキシステムの作動を行ってもよい。
【0036】
図6のフローチャートには示されていないが、本実施形態に係る顔検出処理で生成されるモデルを用いて、モデルのトラッキングを行うことができる。例えば、顔検出装置1は、ステップS1で取得される画像およびステップS6で生成されるモデルから、図4(b)に示すテンプレートをRAM6のテンプレート・メモリ62に保存する。その後、顔検出装置1は、RAM6のフレーム・メモリ61から次のフレームの画像を読み出し、RAM6のテンプレート・メモリ62からテンプレートを読み出し、テンプレートが有する各領域を画像上で走査して各位置における該領域と該画像との相関を求める。そして、顔検出装置1は、最も相関が高い位置を用いてテンプレートが有する各領域の位置を更新し、それにより更新されたテンプレートをRAM6のテンプレート・メモリ62に保存する。その後、顔検出装置1は、更新されたテンプレートに基づいて、テンプレートが有する各領域に紐付けられたモデルの特徴点の座標を更新し、それにより更新されたモデルをRAM6に格納する。その結果、モデルの各特徴点の座標が次のフレームの画像に合うように更新(トラッキング)される。
【0037】
図7は、本実施形態に係る目位置検出処理(ステップS3)の詳細なフローチャートを示す図である。位置検出部11は、ステップ2で検出された鼻位置を用いて、ステップS1で取得された処理対象のフレームおよび1つ前のフレームの画像内の探索領域の決定を行う(ステップS31)。具体的には、位置検出部11は、RAM6からステップ2で検出された鼻位置を取得し、該鼻位置の周辺領域を探索領域として決定する。探索領域は、例えば鼻位置を基準に上下左右にそれぞれ所定の距離離れた地点を含む矩形領域である。探索領域は、その中に目が位置する蓋然性が十分に高い形状および大きさを有するものであり、その形状および大きさは統計的に決定可能である。後述の差分画像による目位置決定をここで決定した探索領域に限定して行うことによって、処理負荷を低減することができるとともに、目以外の顔部品によるノイズを低減して目位置の検出精度を向上させることができる。
【0038】
また、位置検出部11は、鼻位置に加えて、ニューラルネットワーク法、AdaBoost法等の任意の顔部品検出方法を用いて目位置を検出し、目位置および鼻位置の周辺領域を探索領域として決定してもよい。ここでの目位置は探索領域を決定するために使用されるのみなので、目位置の検出方法は精度が高いものでなく、処理負荷が小さいものが望ましい。この場合の探索領域は、例えば、目位置および鼻位置のそれぞれを基準に、上下左右にそれぞれ所定の距離離れた地点を含む矩形領域である。位置検出部11は、このように鼻位置に加えて目位置を探索領域の決定に用いることによって、鼻位置のみを用いて探索領域を決定する場合よりも狭い探索領域を利用することができる。そのため、差分画像による目位置決定の処理負荷をさらに低減し、目以外の顔部品によるノイズを低減することができる。また、位置検出部11は、探索領域を鼻位置の周辺領域に限定せず、顔全体を探索領域としてもよい。
【0039】
その後、位置検出部11は、ステップS1で取得された処理対象のフレームおよび1つ前のフレームの画像を用いて、ステップS31で決定された探索領域の差分画像を作成する(ステップS32)。具体的には、位置検出部11は、1つ前のフレームの画像中の探索領域と、処理対象のフレームの画像中の探索領域との間で、輝度成分の差分を算出する。これによって、例えば図8に示される探索領域の差分画像を作成する。
【0040】
図8は、本実施形態に係る目位置検出方法を示す模式図である。図8(a)は、運転者が閉眼状態にある場合における画像中の探索領域Aを表している。図8(b)は、運転者が開眼状態にある場合における画像中の探索領域Aを表している。図8(c)は、図8(b)の探索領域Aの輝度成分から図8(a)の探索領域Aの輝度成分を減じて作成される差分画像を表している。差分画像においては、輝度が低下した領域(黒領域B)と、輝度が上昇した領域(白領域C)と、輝度がほぼ変化しない領域とが表れる。瞬目によって閉眼状態から開眼状態に遷移すると、差分画像中に瞼に対応する位置に大きな黒領域Bが表れる。そのため、位置検出部11は、ステップS32において作成された差分画像中の所定の面積より大きい黒領域Bを目位置として決定し、該目位置をRAM6に格納する(ステップS33)。目位置は、例えば黒領域Bの重心の座標である。また、位置検出部11は、差分画像中に所定の面積より大きい黒領域Bがない場合には、そのフレームでは瞬目は行われていないと判定し、目位置を検出しない。目位置検出のために開眼状態から閉眼状態への遷移を用いてもよく、その場合には所定の面積より大きい白領域Cを目位置として決定することができる。
【0041】
なお、図8(c)は模式的な差分画像を表しているが、実際の差分画像には目以外の部分にも黒領域Bが複数表れることがある。その場合には、位置検出部11は最も大きい面積を有する黒領域を目と推定する。さらに、推定された左右の目の大きさの違いまたは間隔が異常である、例えば所定の許容範囲から外れている場合には、位置検出部11は次に大きい面積を有する黒領域を目と推定する。
【0042】
本実施形態に係る目位置検出処理(ステップS3)では、瞬目に起因する目の変化を差分画像によって検出している。このため、眉毛または眼鏡の縁を目位置として誤検出することを抑制し、高精度に目位置を推定することができる。本実施形態で用いる目位置の検出方法はこれに限られるものではなく、検出精度と処理負荷とを考慮して画像から鼻位置を特定可能な任意の顔部品検出方法を用いてもよい。
【0043】
フレームの取得周期は人間の瞬目を検出可能な長さ、すなわち1つ前のフレームと処理対象のフレームとの間で閉眼状態と開眼状態とが切り替わる程度の長さである。フレームの取得周期の具体的な数値は統計または実験に基づいて定めることが可能であり、また顔検出装置1が運転手の瞬目頻度に基づいてフレームの取得周期を決定してもよい。
【0044】
図9は、本実施形態に係る初期状態決定処理(ステップS5)の詳細なフローチャートを示す図である。初期状態決定処理では、初期状態決定部12は、RAM6からステップS2およびステップS3で検出された目位置および鼻位置を取得し、該目位置および該鼻位置に基づいて顔位置を決定する(ステップS51)。顔位置には、処理対象のフレームの画像中における平面方向の顔の位置および奥行方向の顔の位置が含まれる。初期状態決定部12は、ステップS2で検出された鼻位置を、顔の平面方向の位置として決定する。顔の平面方向の位置は、モデルを画像中の顔の位置に移動するために用いられる。また、初期状態決定部12は、ステップS3で検出された目位置から左右の目間の距離を算出し、該目間の距離と予め統計的に取得された標準的な顔における目間の平均距離との比を算出することにより、顔の奥行方向の位置を決定する。顔の奥行方向の位置は画像中の顔の大きさに対応するため、モデルを拡大または縮小するために用いられる。顔位置の決定方法はここに示した具体的な方法に限定されるものではなく、画像または該画像から検出した目位置、鼻位置を用いて、該画像中の顔位置を決定可能な任意の方法でよい。
【0045】
次に、初期状態決定部12は、RAM6からステップS2およびステップS3で検出された目位置および鼻位置を取得し、該目位置および該鼻位置に基づいて顔角度を決定する(ステップS52)。図10は、顔角度の定義を示す模式図である。図10は、画像中の顔にx軸、y軸、z軸を重ねて示している。x軸、y軸、z軸の位置はステップS51で決定された顔位置に基づいて決定可能である。具体的には、x軸およびy軸は画像中の顔の重心を通り、かつ互いに垂直な該画像を含む平面上の直線であり、z軸は該重心を通る該画像の法線である。顔角度は、x軸に関する回転角度を表すピッチ角度θx、y軸に関する回転角度を表すヨー角度θy、z軸に関する回転角度を表すおよびロール角度θzを含む。
【0046】
図11(a)はピッチ角度θxの算出方法を示す模式図である。左右の目位置E1、E2の間の距離をdwとし、鼻位置Nと左右の目位置E1、E2を結ぶ直線との距離をdhとする。また、予め統計的に取得された標準的な顔におけるdwおよびdhを、それぞれdw0、dh0とする。R0=dw0/dh0とすると、ピッチ角度θxは以下の式(1)で表される。
【0047】
【0048】
図11(b)はヨー角度θyの算出方法を示す模式図である。左右の目位置E1、E2を結ぶ直線に鼻位置Nから垂線を引き、該直線と該垂線との交点から左の目位置E1との距離をdw1とし、右の目位置E2との距離をdw2とする。このとき、ヨー角度θyは以下の式(2)で表される。
【0049】
【0050】
図11(c)はロール角度θzの算出方法を示す模式図である。右の目位置E2のx座標から左の目位置E1のx座標を減じた値をdxとし、右の目位置E2のy座標から左の目位置E1のy座標を減じた値をdyとする。このとき、ロール角度θzは以下の式(3)で表される。
【0051】
【0052】
初期状態決定部12は、以上の方法により算出したピッチ角度θx、ヨー角度θy、ロール角度θzを含む顔角度をRAM6に格納する。顔角度の決定方法はここに示した具体的な方法に限定されるものではなく、画像または該画像から検出した目位置、鼻位置を用いて、該画像中の顔角度を決定可能な任意の方法でよい。
【0053】
初期状態決定部12は、RAM6からステップS51およびステップS52で決定された顔位置および顔角度を取得し、該顔位置および該顔角度に基づいてモデルの初期状態を決定する(ステップS53)。モデルの初期状態の決定には、モデルフィッティングを実行する前の時点におけるモデルの位置、角度等の決定が含まれる。
【0054】
図12は、顔位置および顔角度を用いてモデル初期状態を決定する方法を表す模式図である。初期状態決定部12は、RAM6からステップS51およびステップS52で決定された顔位置および顔角度を取得するとともに、RAM6から複数の特徴点Pを含む統計的顔形状モデル(仮モデルM’)を取得する。そして、初期状態決定部12は、図12(a)に示すように、仮モデルM’を顔角度、すなわちピッチ角度θx、ヨー角度θy、ロール角度θzを用いて回転させ、仮モデルM’を顔の平面方向の位置を用いて画像の平面方向に移動させ、さらに仮モデルM’を顔の奥行方向の位置を用いて拡大または縮小させる。初期状態決定部12は、このように変形された後のモデルMを、モデルの初期状態として決定し、RAM6に格納する。図12(b)は、モデルの初期状態における特徴点Pを顔に重ねた状態を表している。本実施形態に係るモデルの初期状態は、画像に基づいて取得された顔位置および顔角度によって実際の顔の状態に近付けられているため、特徴点Pは実際の顔部品の近くに位置している。そのため、このモデルの初期状態を用いて行われるモデルフィッティング(ステップS6)において、計算が早く収束し、かつ誤フィッティングが抑制される。
【0055】
本発明の本質は、画像から顔部品の検出を行い、該顔部品の位置を用いてモデルの初期状態を決定し、該モデルの初期状態を用いてモデルの生成を行うことである。本実施形態では顔部品として目および鼻を用いているが、画像から位置が特定できれば任意の顔部品を用いてよい。例えば、眉毛、口、輪郭等を用いてもよく、複数の顔部品を組み合わせて用いてもよい。
【0056】
本実施形態では平面方向の位置、奥行方向の位置を含む顔位置、およびピッチ角度θx、ヨー角度θy、ロール角度θzを含む顔角度を用いてモデルの初期状態の決定を行っているが、必ずしもそれらの全てを用いなくてもよく、それらの一部を用いてもよい。
【0057】
本実施形態に係る顔検出処理では、画像から検出される顔部品の位置に基づいてモデルの初期状態を決定し、該モデルの初期状態を用いてモデルの生成を行うため、モデルの初期状態が実際の顔の状態に近い。そのため、誤フィッティングを抑制してモデルの精度を向上させることができ、さらに、モデルの生成のための計算の収束が早く、計算負荷を低減することができる。しかも、視線検出機(アイトラッカー)のような追加の機構を必要とせずに、1つの撮像部からの画像を用いて顔部品の位置の検出とモデルの生成との両方を行っているため、モデルの精度を向上させるために掛かるコストの増加を抑制することができる。
【0058】
また、本実施形態に係る顔検出処理は、フレーム間の差分画像を作成することによって瞬目に起因する目の変化を検出することにより目位置の検出を行っているため、眉毛または眼鏡の縁を目位置として誤検出することを抑制し、高精度に目位置を推定することができる。このとき、画像から検出される鼻位置に基づいて差分画像作成時の画像の探索領域を限定しているため、処理負荷を低減し、さらに検出精度を向上させることができる。このように本実施形態では高精度に位置が推定される目位置を用いることによって、モデルの初期状態を正確に決定し、さらに高いモデルの精度を実現している。
【0059】
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
【0060】
前述した実施形態の機能を実現するように前述した実施形態の構成を動作させるプログラム(例えば、図6、7、9に示す処理を行うプログラム)を記憶媒体に記憶させ、該記憶媒体に記憶されたプログラムをコンピュータ中に読み出し、コンピュータにおいて実行する処理方法も前述の実施形態の範疇に含まれる。すなわち、コンピュータ読み取り可能な記憶媒体も本発明に係る実施形態の範囲に含まれる。また、前述のプログラムが記憶された記憶媒体はもちろん、そのプログラム自体も前述の実施形態に含まれる。かかる記憶媒体としてはたとえばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD―ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また前述の記憶媒体に記憶されたプログラム単体で処理を実行しているものに限らず、他のソフトウエア、拡張ボードの機能と共同して、OS上で動作し前述の実施形態の動作を実行するものも前述した実施形態の範疇に含まれる。
【0061】
前述した実施形態は、さらに以下の付記を含む。
(付記1)
撮像手段から顔を含む画像を取得するステップと、
位置検出手段が、前記画像から前記顔の顔部品の位置を検出するステップと、
初期状態決定手段が、前記顔部品の前記位置に基づいてモデルの初期状態を決定するステップと、
モデルフィッティング手段が、前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するステップと、
を備えることを特徴とする顔検出方法。
(付記2)
前記顔部品は目を含み、
前記位置検出手段は、あるフレームの前記撮像手段からの画像と1つ前のフレームの前記撮像手段からの画像との間で差分画像を作成し、前記差分画像に基づいて前記目の位置を検出する
ことを特徴とする付記1に記載の顔検出方法。
(付記3)
前記顔部品は鼻をさらに含み、
前記位置検出手段は、前記位置検出手段により検出される前記鼻の位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする付記2に記載の顔検出方法。
(付記4)
前記初期状態決定手段は、前記顔部品の前記位置から前記顔の角度を算出し、前記顔の前記角度に基づいて前記モデルの初期状態を決定する
ことを特徴とする付記1に記載の顔検出方法。
(付記5)
撮像手段が撮像する顔を含む画像から顔検出を行うためのプログラムであって、
コンピュータを、
前記画像から前記顔の顔部品の位置を検出する位置検出手段、
前記顔部品の前記位置に基づいてモデルの初期状態を決定する初期状態決定手段、および
前記モデルの初期状態を用いて、前記画像に基づいて前記顔のモデルを生成するモデルフィッティング手段、
として機能させることを特徴とするプログラム。
(付記6)
前記顔部品は目を含み、
前記位置検出手段は、あるフレームの前記撮像手段からの画像と1つ前のフレームの前記撮像手段からの画像との間で差分画像を作成し、前記差分画像に基づいて前記目の位置を検出する
ことを特徴とする付記5に記載のプログラム。
(付記7)
前記顔部品は鼻をさらに含み、
前記位置検出手段は、前記位置検出手段により検出される前記鼻の位置に基づいて探索領域を決定し、前記探索領域内で前記差分画像を作成する
ことを特徴とする付記6に記載のプログラム。
(付記8)
前記初期状態決定手段は、前記顔部品の前記位置から前記顔の角度を算出し、前記顔の前記角度に基づいて前記モデルの初期状態を決定する
ことを特徴とする付記5に記載のプログラム。
(付記9)
付記5から8のいずれか一項に記載のプログラムを記憶したコンピュータ読み取り可能記憶媒体。
【符号の説明】
【0062】
1 顔検出装置
2 撮像部
3 A/D変換部
4 インターフェース(I/F)
5 ROM
6 RAM
7 出力部
8 演算部(CPU)
9 格納部
11 位置検出部
12 初期状態決定部
13 モデルフィッティング部
14 アクション部
100 車両
101 運転席
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12