説明

顔検出装置、顔検出方法及び顔検出プログラム

【課題】簡易な構成で、高精度な顔検出処理を効率的に実行するための技術を提供する。
【解決手段】顔検出条件記憶部16が撮像手段11で撮影された画像を複数の部分領域に区分するための部分領域情報と前記部分領域ごとに予め設定された顔検出条件とを記憶する。顔検出部13は画像中の顔を検出する顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔検出条件に該当しない顔検出処理を省略する。ここで、顔検出条件は、検出対象とする顔の大きさを定める顔サイズ条件、検出対象とする顔の向きを定める顔向き条件、照明条件など、様々な条件を選ぶことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から顔を検出する顔検出装置に関する。
【背景技術】
【0002】
画像から顔を検出する顔検出装置は、顔を精度よく検出することが望まれている。
【0003】
このような課題に鑑みた従来技術として、入力画像から算出した顔との想定距離と距離センサにより測定した測定距離とを比較して顔か非顔かの判定を行う対象物検出装置がある(特許文献1参照)。
【0004】
しかし、この装置は顔検出部の他に距離センサを必要とするため、装置構成が大掛かりになり、装置コストも増加する。更に、顔検出処理に前記距離センサにより測定した測定距離の情報を用いるため、処理負荷は増加する。
【0005】
一方、2台のカメラで撮影された画像を三次元復元する画像処理装置がある(特許文献2参照)。この装置は、前記画像の三次元情報を用いて顔を検出する。
【0006】
しかし、この装置は2台のカメラを必要とするため、装置構成が大掛かりになり、装置コストも増加する。更に、前記画像の三次元情報を用いるため、処理負荷は増加する。
【特許文献1】特開2005−78376号公報
【特許文献2】特開2005−301833号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は上記実情に鑑みてなされたものであって、その目的とするところは、簡易な構成で、高精度な顔検出処理を効率的に実行するための技術を提供することにある。
【課題を解決するための手段】
【0008】
上記目的を達成するために本発明は、以下の構成を採用する。
【0009】
本発明に係る顔検出装置は、撮像手段と、前記撮像手段で撮影された画像を複数の部分領域に区分するための部分領域情報と前記部分領域ごとに予め設定された顔検出条件とを記憶する顔検出条件記憶手段と、前記画像から顔を検出する顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔検出条件に該当しない顔検出処理を省略する顔検出手段と、を備える。
【0010】
本発明では部分領域ごとに異なる顔検出条件を設定しておくことができる。本発明の顔検出処理は、部分領域ごとに予め設定された顔検出条件を用いるので、画像全体を同一条件で行う顔検出処理よりも精度の向上が期待できる。更に、本発明の顔検出処理は、部分領域ごとに設定された顔検出条件に該当しない顔検出処理を省略できるので、画像全体を全ての条件で行う顔検出処理よりも効率化できる。また、従来技術は距離センサや2台目のカメラが必要であったのに対し、本発明は付加機器を必要としないため、簡易な構成である。
【0011】
ここで、顔検出条件は、検出対象とする顔の大きさを定める顔サイズ条件、検出対象とする顔の向きを定める顔向き条件、照明条件など、様々な条件を選ぶことができる。
【0012】
前記顔サイズ条件を部分領域ごとに設定することにより、あり得ない大きさの顔をはじめから排除できるため、誤検出の低減が期待できる。具体的には、前記顔検出手段は、異なる顔の大きさに対応する複数の顔検出ウィンドウを有しており、前記画像から顔検出ウィンドウを用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔サイズ条件に応じた顔検出ウィンドウによる顔検出処理を行うとよい。これにより、顔検出処理は、部分領域ごとに設定された顔サイズ条件に応じた顔検出ウィンドウ以外の顔検出ウィンドウによる顔検出処理を省略できるため、画像全体について全ての顔検出ウィンドウで行う顔検出処理よりも効率化できる。
【0013】
前記顔向き条件を部分領域ごとに設定することにより、検出精度の向上及び誤検出の低減が期待できる。具体的には、前記顔検出手段は、異なる顔向きに対応する複数の顔検出器を有しており、前記画像から顔検出器を用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔向き条件に応じた顔検出器を用いて顔検出処理を行うとよい。これにより、顔検出処理は、部分領域ごとに設定された顔向き条件に応じた顔検出器以外の顔検出器による顔検出処理を省略できるため、画像全体について全ての顔検出器を用いて行う顔検出処理よりも効率化できる。
【0014】
前記照明条件を部分領域ごとに設定することにより、検出精度の向上及び誤検出の低減が期待できる。具体的には、前記顔検出手段は、異なる照明環境に対応する複数の顔検出器を有しており、前記画像から顔検出器を用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された照明条件に応じた顔検出器を用いて顔検出処理を行うとよい。これにより、顔検出処理は、部分領域ごとに設定された照明条件に応じた顔検出器以外の顔検出器による顔検出処理を省略できるため、画像全体について全ての顔検出器を用いて行う顔検出処理よりも効率化できる。
【0015】
本発明は、上記顔検出条件のうちいずれか1つの顔検出条件に応じて顔検出処理を行ってもよいし、2つ以上の顔検出条件の組み合わせに応じて顔検出処理を行ってもよい。複数の顔検出条件を組み合わせれば、更に絞り込まれた条件で顔検出処理が行えるので、顔検出処理の効率化は向上する。
【0016】
また、本発明は、上記手段の少なくとも一部を有する顔検出装置として捉えてもよいし、上記処理の少なくとも一部を含む顔検出方法、または、かかる方法を実現するための顔検出プログラムやそのプログラムを記録した記録媒体として捉えることもできる。なお、上記手段及び処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【0017】
本発明によれば、画像中の部分領域ごとに顔検出条件を予め設定でき、付加機器を必要としないため、簡易な構成で、高精度な顔検出処理を効率的に実行することが可能である。
【発明を実施するための最良の形態】
【0018】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。
【0019】
<第1の実施形態>
第1の実施形態では、本発明を通行人や侵入者などを監視するための監視装置に適用した例を挙げる。この種の監視装置では図1のように撮像部11が人の頭より高い位置の天井や壁などに固定されており、監視エリアを俯瞰するような撮影画像を得ることが多い。この状況下で、撮像部11が撮影する画像は図2のように画像上部の顔は小さく写り、画像下部の顔は大きく写る傾向にある。このような傾向に着目し、本実施形態における顔検
出処理は撮像部11で撮影された画像を複数の部分領域に区分し、部分領域ごとに検出対象とする顔の大きさを変える。なお、本発明は本実施形態の監視装置のような固定カメラに好ましく適用することができるが、本発明は固定カメラに限らず、あらゆる撮影装置に適用することが可能である。
【0020】
<装置構成>
図3は本発明の実施形態に係る顔検出装置の機能構成を示すブロック図である。顔検出装置は、概略、撮像部11、画像記憶部12、顔検出部13、表示部14、結果記憶部15、顔検出条件記憶部16を備えている。本実施形態では、これらの機能要素は、コンピュータの演算処理装置がソフトウエア(プログラム)を実行し、必要に応じてカメラ、メモリ、ディスプレイなどのハードウエア資源を制御することで実現される。ただし、これらの機能要素を専用のチップで構成しても構わない。
【0021】
撮像部11としては、光学系と撮像素子(CCD、CMOSセンサなど)を備えるデジタルカメラを好ましく適用できる。
【0022】
画像記憶部12は、処理対象となる画像を一時的に記憶する記憶装置である。この記憶装置としては、揮発性メモリや不揮発性メモリなど、どのような具体的技術が適用されてもよい。
【0023】
顔検出部13は、画像処理によって画像から顔を検出する顔検出処理を実行する機能である。顔検出部13による顔検出処理は、既存のどのような技術が適用されてもよい。一例を挙げると、顔全体の輪郭に対応した基準テンプレートを用いたテンプレートマッチングによって顔を検出する手法、顔の器官(目、鼻、耳など)に基づくテンプレートマッチングによって顔を検出する手法、クロマキー処理によって頭部などの頂点を検出し、この頂点に基づいて顔を検出する手法、肌の色に近い領域を検出し、その領域を顔として検出する手法、ニューラルネットワークを使って教師信号による学習を行い、顔らしい領域を顔として検出する手法、などがある。
【0024】
表示部14としては、液晶ディスプレイなど、どのような具体的技術が適用されてもよい。
【0025】
結果記憶部15は、顔検出部13による顔検出処理の結果を記憶する記憶装置である。この記憶装置としては、不揮発性メモリやハードディスクなど、どのような具体的技術が適用されてもよい。
【0026】
顔検出条件記憶部16は、撮像部11で撮影された画像を複数の部分領域に区分するための部分領域情報と、部分領域ごとに予め設定された顔検出条件と、を記憶する記憶装置である。この記憶装置としては、不揮発性メモリやハードディスクなど、どのような具体的技術が適用されてもよい。
【0027】
本実施形態における部分領域情報と顔検出条件の一例を図4に示す。上述したように、本実施形態の撮像部11で撮影される画像は図2のように画像上部の顔は小さく写り、画像下部の顔は大きく写る傾向にある。そこで、図4の例では、部分領域情報として、画像全体を「画像上部」、「画像中部」、「画像下部」という3つの部分領域21〜23に区分する情報を設定する。ここでは四角形の部分領域を設定しており、部分領域は四角形の対角に位置する頂点の始点座標と終点座標の2つの座標で定義される。なお、部分領域の形は四角形でなく、多角形や円形などでもよい。部分領域情報は、部分領域の形状・位置・大きさを定義できれば、どのような形式でもよい。また、顔検出条件として、検出対象とする顔の大きさを定める顔サイズ条件を設定する(ここでは画像上部の部分領域21に
「小」、画像中部の部分領域22に「中」、画像下部の部分領域23に「大」という顔サイズ条件が設定されている。)。なお、顔サイズ条件は、「大」、「中」、「小」のような属性でもよいし、顔の大きさに対応する数値でもよいし、(後述する)顔検出ウィンドウのサイズなどでもよい。
【0028】
<顔検出機能>
図5及び図6のフローチャートに沿って、本実施形態の顔検出装置の機能及び処理の流れを説明する。
【0029】
本実施形態の顔検出装置は一定の時間間隔で顔検出機能を実行する。顔検出機能が起動すると、撮像部11で撮影された画像が、顔検出処理に用いるために取り込まれる(ステップS11)。入力された画像は画像記憶部12に撮影時刻情報と共に格納される。なお、必要に応じて、ユーザは、顔検出処理用の画像を表示部14で確認することができる。
【0030】
次に、顔検出部13が、顔検出条件記憶部16から部分領域情報と部分領域ごとに予め設定された顔検出条件とを読み込み(ステップS12)、部分領域ごとに顔検出条件に応じた顔検出処理を行う(ステップS13)。
【0031】
図6は、ステップS13の顔検出処理の一具体例を示している。
【0032】
まず、顔検出部13が撮像部11で撮影された画像内の初期位置(例えば、図2の(X21、Y21))に顔検出位置を配置する(ステップS21)。
【0033】
次に、顔検出部13が、顔検出位置の座標と部分領域情報とを比較することによって、顔検出位置が属する部分領域を特定する(ステップS22)。そして、顔検出部13は、特定された部分領域に設定されている顔サイズ条件に基づいて、当該顔検出位置に適用する顔検出ウィンドウを選択する。
【0034】
顔検出ウィンドウとは、検出対象とする顔の大きさを規定するものである(つまり、顔検出ウィンドウと同程度の大きさの顔だけが検出され、顔検出ウィンドウよりも明らかに小さい顔や大きい顔は検出されない。)。本実施形態の顔検出部13は、様々な大きさの顔に対応するため、図2に示すようにサイズの異なる複数種類の顔検出ウィンドウ24a〜24iを有している。ただし、顔検出部13は、画像全体に対して全ての顔検出ウィンドウを一律に適用するのではなく、顔サイズ条件に従って、適用する顔検出ウィンドウを部分領域ごとに変えるのである。図2の例では、顔検出位置が部分領域21にある場合は「小」顔用の顔検出ウィンドウ24a〜24cが選択され、顔検出位置が部分領域22にある場合は「中」顔用の顔検出ウィンドウ24d〜24fが選択され、顔検出位置が部分領域23にある場合は「大」顔用の顔検出ウィンドウ24g〜24iが選択される。
【0035】
そして、顔検出部13は、ステップS22で選択された顔検出ウィンドウの内のいずれかを顔検出位置に設定し(ステップS23)、顔検出処理を実行する(ステップS24)。次に、顔検出部13は、ステップS22で選択された複数の顔検出ウィンドウの内、顔検出処理に用いられていない顔検出ウィンドウがあるかどうかを判断する(ステップS25)。他の顔検出ウィンドウがあるとされた場合(ステップS25;YES)、顔検出位置にその顔検出ウィンドウを設定し(ステップS23)、顔検出処理を実行する(ステップS24)。ステップS22で選択された全ての顔検出ウィンドウについて顔検出処理が行われたら(ステップS25;NO)、当該顔検出位置についての処理を終了し、ステップS26に進む。
【0036】
ステップS26では、顔検出部13は次の顔検出位置があるかどうかを判定し、次の顔
検出位置がある場合(ステップS26;YES)、顔検出位置を次の顔検出位置へ移動させる(ステップS27)。そして、次の顔検出位置についても、部分領域に応じた適切なサイズの顔検出ウィンドウを用いて顔検出処理が行われる(ステップS22〜S25)。次の顔検出位置が無くなるまで(画像の最後に到達するまで)ステップS22〜S25の工程を繰り返す(ステップS26)。なお、顔検出位置の移動量と移動経路25は予め顔検出部13にプログラムしておけばよい(図2は、顔検出位置が1画素ずつX方向に移動し、行の最後に到達したら1画素Y方向に移動する例を示している。)。
【0037】
次に、顔検出部13の顔検出処理結果が結果記憶部15に格納される(図5のステップS14)。結果記憶部15に格納される顔検出処理結果は、顔検出処理に用いた画像及びその撮影時刻と、検出された顔の数とその位置座標の情報が好ましい。ユーザは、目的に応じた撮影時刻と顔検出処理結果の表示方法とを入力することで、顔検出処理結果を表示部14で確認することができる。前記表示方法は入力された撮影時刻の総顔検出数であってもよいし、前記撮影時刻に撮影された画像を表示し、前記顔検出位置に印を付けるなどであってもよい。なお、本実施形態では顔検出処理(ステップS13)後に顔検出処理結果を結果記憶部15に格納しているが、顔検出処理中(例えばステップS24の後)に顔検出処理結果を結果記憶部15に格納してもよい。
【0038】
以上述べたように、本実施形態では、画像上部の部分領域21では3つの顔検出ウィンドウ24a〜24cのみが用いられ、それ以外の顔検出ウィンドウ24d〜24iによる顔検出処理は省略される。同様に、部分領域22では、顔検出ウィンドウ24a〜24c及び24g〜24iによる顔検出処理が省略され、部分領域23では、顔検出ウィンドウ24a〜24fによる顔検出処理が省略される。そのため、図7のように画像全体について全ての顔検出ウィンドウ24a〜24iを用いるのに比べて、顔検出処理の効率化(演算量の削減)を図ることができる。また、部分領域ごとに予め適切な顔サイズ条件を設定することにより、あり得ない大きさの顔をはじめから排除できるため、誤検出の低減が期待できる。
【0039】
なお、本実施形態の顔検出ウィンドウの切替え方法は、顔検出位置ごとに顔検出ウィンドウの切替えを行っているが、1つの顔検出ウィンドウで1つの部分領域全体の顔検出処理を行った後に顔検出位置をその部分領域の初期位置に移し、顔検出ウィンドウの切替えを行ってもよい。
【0040】
<第2の実施形態>
第2の実施形態では、T字型の通路の交差位置に撮像部11があり、撮像部11の前方向と左右方向には通路があるという状況下での顔検出装置について述べる(図8)。この状況下で、撮像部11が撮影する画像は、第1の実施形態と同様に画像下部ほど大きい顔が写る傾向にある。更に、画像上部では前方の通路を通る人が写るため、正面向きの顔が多く写り、画像中部では前方の通路と左右の通路との交差位置付近を通る人が写るため、左右斜め向きの顔が多く写り、画像下部では左右の通路を通る人が写るため、左右向きの顔が多く写る傾向にある(図9)。このような傾向に着目し、本実施形態における顔検出処理は、部分領域ごとに検出対象とする顔の大きさと向きを変える。
【0041】
以下、第1の実施形態と異なる構成及び処理を中心に説明する。
【0042】
<装置構成>
本実施形態の顔検出部13は図10のように複数種類の顔検出器35a〜35eを有する。
【0043】
ここで、顔検出器35a〜35eは、それぞれ異なる顔向きに対応する顔検出器である
。顔検出器35aは正面顔用の顔検出器であり、正面向き(例えば、真正面を0°とし、そこから左右に±10°の顔向き)の顔の検出に特化した顔検出器である。これは、学習用の教師画像として正面向きの顔画像のみを用いたり、あるいは正面顔専用の検出アルゴリズムを採用したりすることで実現できる。同様に、顔検出器35bは右斜め向きの顔の検出に特化した右斜め顔用の顔検出器であり、顔検出器35cは左斜め顔用の顔検出器、顔検出器35dは右顔用の顔検出器、顔検出器35eは左顔用の顔検出器である。
【0044】
次に、本実施形態における部分領域情報と顔検出条件の一例を図11に示す。上述したように、本実施形態の撮像部11で撮影される画像は図9のように画像下部ほど大きい顔が写る傾向にあり、更に、画像上部では前方の通路を通る人が写るため、正面向きの顔が多く写り、画像中部では前方の通路と左右の通路との交差位置付近を通る人が写るため、左右斜め向きの顔が多く写り、画像下部では左右の通路を通る人が写るため、左右向きの顔が多く写る傾向にある。そこで、図11の例では、部分領域情報として、画像全体を「画像上部」、「画像中部」、「画像下部」という3つの部分領域31〜33に区分する情報を設定する(ここでの部分領域の定義は第1の実施形態と同様である)。また、顔検出条件として、顔サイズ条件と検出対象とする顔の向きを定める顔向き条件とを設定する(ここでは画像上部の部分領域31に「小」と「正面」、画像中部の部分領域32に「中」と「斜め」、画像下部の部分領域33に「大」と「左右」という顔サイズ条件と顔向き条件とが設定されている。)。なお、顔向き条件は、第1の実施形態で述べた顔サイズ条件と同様に「正面」、「斜め」、「左右」のような属性でもよいし、顔の向きに対応する数値でもよいし、顔検出器の識別子などでもよい。
【0045】
<顔検出機能>
本実施形態の顔検出装置の機能はステップS13の顔検出処理を除いて第1の実施形態と同様であるため、その記述を省略し、ここでは図12のフローチャートに沿って、本実施形態の顔検出処理(ステップS13)について詳しく説明する。
【0046】
まず、顔検出部13が撮像部11で撮影された画像内の初期位置に顔検出位置を配置する(ステップS31)。
【0047】
次に、顔検出部13が、顔検出位置の座標と部分領域情報とを比較することによって、顔検出位置が属する部分領域を特定する(ステップS32)。そして、顔検出部13は、特定された部分領域に設定されている顔サイズ条件と顔向き条件とに基づいて、当該顔検出位置に適用する顔検出ウィンドウと顔検出器とを選択する。
【0048】
前述したように、本実施形態の顔検出部13は、サイズの異なる複数種類の顔検出ウィンドウ34a〜34iの他に、異なる顔向きに対応する複数種類の顔検出器35a〜35eを有している。ただし、顔検出部13は、画像全体に対して全ての顔検出ウィンドウと顔検出器を一律に適用するのではなく、顔サイズ条件と顔向き条件に従って、適用する顔検出ウィンドウと顔検出器を部分領域ごとに変えるのである。図9の例では、顔検出位置が部分領域31にある場合は「小」顔用の顔検出ウィンドウ34a〜34cと「正面」顔用の顔検出器35aとが選択され、顔検出位置が部分領域32にある場合は「中」顔用の顔検出ウィンドウ34d〜34fと「斜め」顔用の顔検出器35b及び35cとが選択され、顔検出位置が部分領域33にある場合は「大」顔用の顔検出ウィンドウ34g〜34iと「左右」顔用の顔検出器35d及び35eとが選択される。
【0049】
そして、顔検出部13は、ステップS32で選択された顔検出ウィンドウと顔検出器の組み合わせの内、いずれかを顔検出位置に設定し(ステップS33)、顔検出処理を実行する(ステップS34)。次に、顔検出部13は、ステップS32で選択された複数の顔検出器の内、顔検出処理に用いられていない顔検出器があるかどうかを判断する(ステッ
プS35)。他の顔検出器があるとされた場合(ステップS35;YES)、顔検出位置にその顔検出器を設定し(ステップS33)、顔検出処理を実行する(ステップS34)。ステップS32で選択された全ての顔検出器について顔検出処理が行われたら(ステップS35;NO)、ステップS32で選択された複数の顔検出ウィンドウの内、顔検出処理に用いられていない顔検出ウィンドウがあるかどうかを判断する(ステップS36)。ステップS32で選択された顔検出ウィンドウと顔検出器の全ての組み合わせについて顔検出処理が行われたら(ステップS36;NO)、当該顔検出位置についての処理を終了し、ステップS37に進む。
【0050】
ステップS37では、顔検出部13は次の顔検出位置があるかどうかを判定し、次の顔検出位置がある場合(ステップS37;YES)、顔検出位置を次の顔検出位置へ移動させる(ステップS38)。そして、次の顔検出位置についても、部分領域に応じた適切なサイズの顔検出ウィンドウ及び適切な顔向きの顔検出器を用いて顔検出処理が行われる(ステップS32〜S36)。次の顔検出位置が無くなるまで(画像の最後に到達するまで)ステップS32〜S36の工程を繰り返す(ステップS37)。
【0051】
以上述べたように、本実施形態では、画像上部の部分領域31では3つの顔検出ウィンドウ34a〜34cと1つの顔検出器35aのみが用いられ、それ以外の顔検出ウィンドウ34d〜34iと顔検出器35b〜35eとによる顔検出処理は省略される。同様に、部分領域32では、顔検出ウィンドウ34a〜34c及び34g〜34iと顔検出器35a及び35d、35eとによる顔検出処理が省略され、部分領域33では、顔検出ウィンドウ34a〜34fと顔検出器35a〜35cとによる顔検出処理が省略される。そのため、画像全体について全ての顔検出ウィンドウ34a〜34iと顔検出器35a〜35eを用いるのに比べて、顔検出処理の効率化(演算量の削減)を図ることができる。また、部分領域ごとに予め適切な顔向き条件を設定することにより、検出精度の向上及び誤検出の低減が期待できる。
【0052】
なお、本実施形態の部分領域情報は顔サイズ条件と顔向き条件とで共通の部分領域を設定しているが、それぞれ独立した部分領域を設定してもよい。また、顔検出ウィンドウ及び顔検出器の切替え方法は、顔検出位置ごとに顔検出ウィンドウ及び顔検出器の切替えを行っているが、一組の顔検出ウィンドウと顔検出器で1つの部分領域全体の顔検出処理を行った後に顔検出位置をその部分領域の初期位置に移し、顔検出ウィンドウの切替えを行ってもよい。
【0053】
<第3の実施形態>
第3の実施形態では、撮像部11が屋内から屋外を向くように設置してあり、撮像部11で撮影される画像には屋内と屋外の両方が写るという状況下での顔検出装置について述べる(図13)。この状況下で、撮像部11が撮影する画像は、第1の実施形態と同様に画像下部ほど大きい顔が写る傾向にある。更に、図14のように、屋内にある顔と屋外にある顔とで照明環境が異なる傾向にある(例えば、屋外が屋内より明るい場合、屋外の顔は明るく写り、屋内の顔は逆光により暗く写るなど)。このような傾向に着目し、本実施形態における顔検出処理は、部分領域ごとに検出対象とする顔の大きさと照明環境を変える。
【0054】
以下、第1の実施形態と異なる構成及び処理を中心に説明する。
【0055】
<装置構成>
本実施形態の顔検出部13は図15のように複数種類の顔検出器45a〜45eを有する。
【0056】
ここで、顔検出器45a〜45eは、それぞれ異なる照明環境に対応する顔検出器である。顔検出器45aは明るい顔用の顔検出器であり、明るい照明環境下の顔の検出に特化した顔検出器である。これは、学習用の教師画像として明るい照明環境下の顔画像のみを用いたり、あるいは明るい顔専用の検出アルゴリズムを採用したりすることで実現できる。同様に、顔検出器45bはやや明るい照明環境下の顔の検出に特化したやや明るい顔用の顔検出器であり、顔検出器45cは普通の顔用の顔検出器、顔検出器45dはやや暗い顔用の顔検出器、顔検出器45eは暗い顔用の顔検出器である。
【0057】
次に、本実施形態における部分領域情報と顔検出条件の一例を図16に示す。上述したように、本実施形態の撮像部11で撮影される画像は図14のように画像下部ほど大きい顔が写る傾向にあり、更に、屋内にある顔と屋外にある顔とで照明環境が異なる傾向にある。そこで、図16の例では、部分領域情報として、画像全体を「画像上部」、「画像中部」、「画像下部」という3つの部分領域41〜43に区分する情報を設定する(ここでの部分領域の定義は第1の実施形態と同様である)。また、顔検出条件として、顔サイズ条件と検出対象とする顔の照明環境を定める照明条件とを設定する(ここでは画像上部の部分領域41に「小」と「明るい」、画像中部の部分領域42に「中」と「暗い」、画像下部の部分領域43に「大」と「暗い」という顔サイズ条件と照明条件とが設定されている。)。なお、照明条件は、第1の実施形態で述べた顔サイズ条件と同様に「明るい」、「暗い」のような属性でもよいし、照明環境に対応する数値でもよいし、顔検出器の識別子などでもよい。
【0058】
<顔検出機能>
本実施形態の顔検出装置の機能はステップS13の顔検出処理を除いて第1の実施形態と同様であるため、その記述を省略し、ここでは図12のフローチャートに沿って、本実施形態の顔検出処理(ステップS13)について詳しく説明する。
【0059】
まず、顔検出部13が撮像部11で撮影された画像内の初期位置に顔検出位置を配置する(ステップS31)。
【0060】
次に、顔検出部13が、顔検出位置の座標と部分領域情報とを比較することによって、顔検出位置が属する部分領域を特定する(ステップS32)。そして、顔検出部13は、特定された部分領域に設定されている顔サイズ条件と照明条件とに基づいて、当該顔検出位置に適用する顔検出ウィンドウと顔検出器とを選択する。
【0061】
前述したように、本実施形態の顔検出部13は、サイズの異なる複数種類の顔検出ウィンドウ44a〜44iの他に、異なる照明環境に対応する複数種類の顔検出器45a〜45eを有している。ただし、顔検出部13は、画像全体に対して全ての顔検出ウィンドウと顔検出器を一律に適用するのではなく、顔サイズ条件と照明条件に従って、適用する顔検出ウィンドウと顔検出器を部分領域ごとに変えるのである。図14の例では、顔検出位置が部分領域41にある場合は「小」顔用の顔検出ウィンドウ44a〜44cと「明るい」顔用の顔検出器45a及び45bとが選択され、顔検出位置が部分領域42にある場合は「中」顔用の顔検出ウィンドウ44d〜44fと「暗い」顔用の顔検出器45d及び45eとが選択され、顔検出位置が部分領域43にある場合は「大」顔用の顔検出ウィンドウ44g〜44iと「暗い」顔用の顔検出器45d及び45eとが選択される。
【0062】
そして、顔検出部13は、ステップS32で選択された顔検出ウィンドウと顔検出器の組み合わせの内、いずれかを顔検出位置に設定し(ステップS33)、顔検出処理を実行する(ステップS34)。次に、顔検出部13は、ステップS32で選択された複数の顔検出器の内、顔検出処理に用いられていない顔検出器があるかどうかを判断する(ステップS35)。他の顔検出器があるとされた場合(ステップS35;YES)、顔検出位置
にその顔検出器を設定し(ステップS33)、顔検出処理を実行する(ステップS34)。ステップS32で選択された全ての顔検出器について顔検出処理が行われたら(ステップS35;NO)、ステップS32で選択された複数の顔検出ウィンドウの内、顔検出処理に用いられていない顔検出ウィンドウがあるかどうかを判断する(ステップS36)。ステップS32で選択された顔検出ウィンドウと顔検出器の全ての組み合わせについて顔検出処理が行われたら(ステップS36;NO)、当該顔検出位置についての処理を終了し、ステップS37に進む。
【0063】
ステップS37では、顔検出部13は次の顔検出位置があるかどうかを判定し、次の顔検出位置がある場合(ステップS37;YES)、顔検出位置を次の顔検出位置へ移動させる(ステップS38)。そして、次の顔検出位置についても、部分領域に応じた適切なサイズの顔検出ウィンドウ及び適切な顔向きの顔検出器を用いて顔検出処理が行われる(ステップS32〜S36)。次の顔検出位置が無くなるまで(画像の最後に到達するまで)ステップS32〜S36の工程を繰り返す(ステップS37)。
【0064】
以上述べたように、本実施形態では、画像上部の部分領域41では3つの顔検出ウィンドウ44a〜44cと2つの顔検出器45a及び45bのみが用いられ、それ以外の顔検出ウィンドウ44d〜44iと顔検出器45c〜45eとによる顔検出処理は省略される。同様に、部分領域42では、顔検出ウィンドウ44a〜44c及び44g〜44iと顔検出器45a〜45cとによる顔検出処理が省略され、部分領域43では、顔検出ウィンドウ44a〜44fと顔検出器45a〜45cとによる顔検出処理が省略される。そのため、画像全体について全ての顔検出ウィンドウ44a〜44iと顔検出器45a〜45eを用いるのに比べて、顔検出処理の効率化(演算量の削減)を図ることができる。また、部分領域ごとに予め適切な照明条件を設定することにより、検出精度の向上及び誤検出の低減が期待できる。
【0065】
なお、本実施形態の部分領域情報は顔サイズ条件と照明条件とで共通の部分領域を設定しているが、それぞれ独立した部分領域を設定してもよい。また、顔検出ウィンドウ及び顔検出器の切替え方法は、顔検出位置ごとに顔検出ウィンドウ及び顔検出器の切替えを行っているが、一組の顔検出ウィンドウと顔検出器で1つの部分領域全体の顔検出処理を行った後に顔検出位置をその部分領域の初期位置に移し、顔検出ウィンドウの切替えを行ってもよい。
【0066】
<第4の実施形態>
第4の実施形態では、図17のように撮像部11で撮影された画像に写る範囲で前方と左右に壁があるという状況下での顔検出装置について述べる(前方の壁は行き止まりである必要は無く、T字型の通路の様に左右に通路があってもよい)。この状況下で、撮像部11が撮影する画像は、第1の実施形態と同様に画像下部ほど大きい顔が写る傾向にある。更に、図18のように、撮像部11が撮影する画像の一部(例えば、前述した左右の壁及び前側の壁など)に顔の写り得ない領域を有する傾向にある。このような傾向に着目し、本実施形態における顔検出処理は、部分領域ごとに検出対象とする顔の大きさと顔検出処理を行うか否かを変える。
【0067】
以下、第1の実施形態と異なる構成及び処理を中心に説明する。
【0068】
本実施形態における部分領域情報と顔検出条件の一例を図19に示す。上述したように、本実施形態の撮像部11で撮影される画像は図18のように画像下部ほど大きい顔が写る傾向にあり、更に、撮像部11が撮影する画像の一部に顔の写り得ない領域を有する傾向にある。そこで、図19の例では、部分領域情報として、画像全体を「画像左上部」、「画像右上部」、「画像上部」、「画像中部」、「画像下部」という5つの部分領域51
〜55に区分する情報を設定する(ここでの部分領域の定義は第1の実施形態と同様である)。また、顔検出条件として、顔サイズ条件と顔検出処理を行うか否かを定める顔検出処理実行の有無条件とを設定する(ここでは画像左上部と画像右上部、画像上部の部分領域51〜53に「未設定」と「顔検出処理実行無し」、画像中部の部分領域54に「中」と「顔検出処理実行有り」、画像下部の部分領域55に「大」と「顔検出処理実行有り」という顔サイズ条件と顔検出処理実行の有無条件とが設定されている。)。なお、顔検出処理実行の有無条件は、第1の実施形態で述べた顔サイズ条件と同様に「顔検出処理実行無し」、「顔検出処理実行有り」のような属性でもよいし、顔検出処理を行うか否かに対応する数値でもよい。
【0069】
<顔検出機能>
本実施形態の顔検出装置の機能はステップS13の顔検出処理を除いて第1の実施形態と同様であるため、その記述を省略し、ここでは図20のフローチャートに沿って、本実施形態の顔検出処理(ステップS13)について詳しく説明する。
【0070】
まず、顔検出部13が撮像部11で撮影された画像内の初期位置に顔検出位置を配置する(ステップS51)。
【0071】
次に、顔検出部13が、顔検出位置の座標と部分領域情報とを比較することによって、顔検出位置が属する部分領域を特定する(ステップS52)。そして、顔検出部13は、特定された部分領域に設定されている顔サイズ条件と顔検出処理実行の有無条件とに基づいて、当該顔検出位置に適用する顔検出ウィンドウと顔検出処理を行うか否かを選択する。
【0072】
本実施形態の顔検出部13は、サイズの異なる複数種類の顔検出ウィンドウ56a〜56fを有している。ただし、顔検出部13は、画像全体に対して全ての顔検出ウィンドウを一律に適用するのではなく、顔サイズ条件と顔検出処理実行の有無条件に従って、適用する顔検出ウィンドウと顔検出処理を行うか否かを部分領域ごとに変えるのである。図18の例では、顔検出位置が部分領域51〜53にある場合、顔検出ウィンドウは選択されず、当該顔検出位置での顔検出処理は行われない。顔検出位置が部分領域54にある場合は「中」顔用の顔検出ウィンドウ56a〜56cが選択され、当該顔検出位置での顔検出処理が行われる。そして、顔検出位置が部分領域55にある場合は「大」顔用の顔検出ウィンドウ56d〜56fが選択され、当該顔検出位置での顔検出処理が行われる。
【0073】
そして、顔検出部13はステップS53で顔検出処理を行うか否かを判定する。「顔検出処理実行有り」とされた場合(ステップS53;YES)、ステップS54に進み、当該顔検出位置での処理を続け、「顔検出処理実行無し」とされた場合(ステップS53;NO)、当該顔検出位置についての処理を終了し、ステップS57に進む。
【0074】
次に、顔検出部13はステップS52で選択された顔検出ウィンドウの内、いずれかを顔検出位置に設定し(ステップS54)、顔検出処理を実行する(ステップS55)。次に、顔検出部13は、ステップS52で選択された複数の顔検出ウィンドウの内、顔検出処理に用いられていない顔検出ウィンドウがあるかどうかを判断する(ステップS56)。他の顔検出ウィンドウがあるとされた場合(ステップS56;YES)、顔検出位置にその顔検出ウィンドウを設定し(ステップS54)、顔検出処理を実行する(ステップS55)。ステップS52で選択された全ての顔検出ウィンドウについて顔検出処理が行われたら(ステップS56;NO)、当該顔検出位置についての処理を終了し、ステップS57に進む。
【0075】
ステップS57では、顔検出部13は次の顔検出位置があるかどうかを判定し、次の顔
検出位置がある場合(ステップS57;YES)、顔検出位置を次の顔検出位置へ移動させる(ステップS58)。そして、次の顔検出位置についても、顔検出処理を行うか否かを判定し、「顔検出処理実行有り」とされた場合、部分領域に適切なサイズの顔検出ウィンドウを用いて顔検出処理が行われる(ステップS52〜S56)。次の顔検出位置が無くなるまで(画像の最後に到達するまで)ステップS52〜S56の工程を繰り返す(ステップS57)。
【0076】
以上述べたように、本実施形態では、画像左上部、画像右上部、画像上部の部分領域51〜53では顔検出処理は省略される。画像中部の部分領域54では3つの顔検出ウィンドウ56a〜56cのみが用いられ、それ以外の顔検出ウィンドウ56d〜56fによる顔検出処理は省略される。同様に、部分領域55では、顔検出ウィンドウ56a〜56cによる顔検出処理が省略される。そのため、画像全体について全ての顔検出ウィンドウ56a〜56fを用いるのに比べて、顔検出処理の効率化(演算量の削減)を図ることができる。また、部分領域ごとに予め適切な顔検出処理実行の有無条件を設定することにより、あり得ない位置の顔をはじめから排除できるため、誤検出の低減が期待できる。
【0077】
また、上記4つの実施形態はそれぞれ異なる顔検出条件に応じた顔検出処理の一例を示したものであるが、本発明は上記実施形態における4つの顔検出条件のうち少なくとも1つに応じた顔検出処理を行う。
【0078】
なお、上記実施形態の顔検出条件記憶部に記憶されている情報は、時刻に応じて変化するように設定できることが好ましい。例えば、第3の実施形態のように画像中に屋内と屋外が写っている場合、日中と夜間では屋内と屋外の照明環境は異なる。この場合、屋外部分の照明条件としては「日中;明るい」、「夜間;暗い」などを設定すればよく、屋内部分の照明条件としては「日中;暗い」、「夜間;明るい」などを設定すればよいと考えられる。
【0079】
なお、第1〜4の実施形態は、それぞれ、画像の部分領域ごとに予め検出される顔の大きさが決まっている場合、予め検出される顔の向きが決まっている場合、予め検出される顔の照明環境が決まっている場合、予め顔検出を行う領域が決まっている場合に好ましく適用できる。例えば、第3の実施形態では屋内と屋外の照明環境の違いを想定した例を挙げているが、画像の一部が照明で照らされている場合などにも好ましく適用できる。また、第4の実施形態では「顔が写り得ない領域」に「顔検出処理無し」を設定しているが、人がいる領域であっても「大勢の人の内、一部分の領域にいる人はカウントしない」という場合などに好ましく適用できる。
【図面の簡単な説明】
【0080】
【図1】図1は、第1の実施形態における撮像部の設置様態を示す図である。
【図2】図2は、第1の実施形態における撮像部で撮影される画像とその画像の顔検出処理を示す図である。
【図3】図3は、顔検出装置の機能構成を示すブロック図である。
【図4】図4は、第1の実施形態における部分領域情報と顔検出条件(顔サイズ条件)の一例を示す図である。
【図5】図5は、顔検出装置の処理の流れを示すフローチャートである。
【図6】図6は、第1の実施形態における顔検出処理の流れを示すフローチャートである。
【図7】図7は、画像全体について全ての顔検出ウィンドウを用いた顔検出処理を示す図である。
【図8】図8は、第2の実施形態における撮像部の設置様態を示す図である。
【図9】図9は、第2の実施形態における撮像部で撮影される画像とその画像の顔検出処理を示す図である。
【図10】図10は、第2の実施形態における顔検出部と顔検出器とを示すブロック図である。
【図11】図11は、第2の実施形態における部分領域情報と顔検出条件(顔サイズ条件及び顔向き条件)の一例を示す図である。
【図12】図12は、第2の実施形態及び第3の実施形態における顔検出処理の流れを示すフローチャートである。
【図13】図13は、第3の実施形態における撮像部の設置様態を示す図である。
【図14】図14は、第3の実施形態における撮像部で撮影される画像とその画像の顔検出処理を示す図である。
【図15】図15は、第3の実施形態における顔検出部と顔検出器とを示すブロック図である。
【図16】図16は、第3の実施形態における部分領域情報と顔検出条件(顔サイズ条件及び照明条件)の一例を示す図である。
【図17】図17は、第4の実施形態における撮像部の設置様態を示す図である。
【図18】図18は、第4の実施形態における撮像部で撮影される画像とその画像の顔検出処理を示す図である。
【図19】図19は、第4の実施形態における部分領域情報と顔検出条件(顔サイズ条件及び顔検出処理実行の有無条件)の一例を示す図である。
【図20】図20は、第4の実施形態における顔検出処理の流れを示すフローチャートである。
【符号の説明】
【0081】
11 撮像部
12 画像記憶部
13 顔検出部
14 表示部
15 結果記憶部
16 顔検出条件記憶部
21〜23,31〜33,41〜43,51〜55 部分領域
24a〜24i,34a〜34i,44a〜44i,56a〜56f 顔検出ウィンドウ
25 移動経路
35,45 顔検出器

【特許請求の範囲】
【請求項1】
撮像手段と、
前記撮像手段で撮影された画像を複数の部分領域に区分するための部分領域情報と前記部分領域ごとに予め設定された顔検出条件とを記憶する顔検出条件記憶手段と、
前記画像から顔を検出する顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔検出条件に該当しない顔検出処理を省略する顔検出手段と、
を備える顔検出装置。
【請求項2】
前記顔検出条件は、検出対象とする顔の大きさを定める顔サイズ条件を含む
請求項1に記載の顔検出装置。
【請求項3】
前記顔検出手段は、異なる顔の大きさに対応する複数の顔検出ウィンドウを有しており、前記画像から顔検出ウィンドウを用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔サイズ条件に応じた顔検出ウィンドウを用いて顔検出処理を行い、それ以外の顔検出ウィンドウによる顔検出処理を省略する
請求項2に記載の顔検出装置。
【請求項4】
前記顔検出条件は、検出対象とする顔の向きを定める顔向き条件を含む
請求項1〜請求項3のいずれかに記載の顔検出装置。
【請求項5】
前記顔検出手段は、異なる顔向きに対応する複数の顔検出器を有しており、前記画像から顔検出器を用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔向き条件に応じた顔検出器を用いて顔検出処理を行い、それ以外の顔検出器による顔検出処理を省略する
請求項4に記載の顔検出装置。
【請求項6】
前記顔検出条件は照明条件を含む
請求項1〜請求項5のいずれかに記載の顔検出装置。
【請求項7】
前記顔検出手段は、異なる照明環境に対応する複数の顔検出器を有しており、前記画像から顔検出器を用いて顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された照明条件に応じた顔検出器を用いて顔検出処理を行い、それ以外の顔検出器による顔検出処理を省略する
請求項6に記載の顔検出装置。
【請求項8】
撮像手段で撮影された画像から顔を検出する顔検出処理を行うコンピュータが、
前記撮像手段で撮影された画像を複数の部分領域に区分するための部分領域情報と前記部分領域ごとに予め設定された顔検出条件とを記憶しており、
前記画像から顔を検出する顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔検出条件に該当しない顔検出処理を省略する
顔検出方法。
【請求項9】
撮像手段で撮影された画像から顔を検出する顔検出処理を行うコンピュータに、
前記撮像手段で撮影された画像を複数の部分領域に区分するための部分領域情報と前記部分領域ごとに予め設定された顔検出条件とを記憶するステップと、
前記画像から顔を検出する顔検出処理を実行する際に、顔検出位置の属する部分領域に設定された顔検出条件に該当しない顔検出処理を省略するステップと、
を実行させるための顔検出プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2008−234578(P2008−234578A)
【公開日】平成20年10月2日(2008.10.2)
【国際特許分類】
【出願番号】特願2007−77107(P2007−77107)
【出願日】平成19年3月23日(2007.3.23)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】