説明

対象物検出装置および対象物検出方法

【課題】画像の同一ライン上の検出画素領域を膨張させて検出した結果と履歴とに基いて特定色領域の検出動作を効率よく制御する。
【解決手段】対象物を有する画像を入力する画像入力手段と、上記画像入力手段から入力された画像から所望の色を検出する色検出手段と、上記色検出結果に応じて上記画像を2値化する2値化処理手段と、上記2値化処理手段の結果を用いて特定された色領域の対象物を検出する対象物検出手段と、上記2値化処理手段の結果に基いて上記画像の検出した2値化領域の現在位置の画素から検出領域を膨張させる膨張処理手段と、上記膨張処理手段で膨張した2値化領域の色検出の結果に基いて上記対象物検出手段のオン、オフ動作を制御する制御手段と、を有し、2値化膨張処理結果に基いて対象物検出手段を制御することにより対象物検出における演算量を削減する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示画面内の特定の画像領域を抽出する対象物検出装置および対象物検出法方に関し、特に表示画像から人物画像の顔を検出する。
【背景技術】
【0002】
入力画像から特定の領域、例えば人物画像の場合の顔などの対象物を検出する技術がある。特許文献1では、画像中の濃淡を利用し、2画素(ピクセル)間の濃淡差を特徴量としてあらかじめ学習しておき入力画像と予め学習した特徴量を比較し、比較結果に基づき入力画像中の顔領域を検出する方法が開示されている。
また、特許文献2では、ステレオカメラを用いて入力画像から距離画像を生成し、その距離画像から顔の輪郭モデルまた一方では肌色領域とエッジを抽出し、それらの相関から顔領域を検出する方法が開示されている。
さらに、特許文献3では、入力画像から肌色画像を検出し、背景と分離した後に頭部画像として検出する。この頭部画像から重心と両目、口といった部位を検出してその部位を追跡し、CGキャラクタの表情を制御する方法が開示されている。
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1では、入力画像がそのまま入力されて顔検出処理されるため、入力画像のサイズが非常に大きい場合は演算量が膨大になる不利益がある。
特許文献2では、顔領域を探索するにあたって肌色領域を利用して探索領域を限定して高速化を図っている。肌色領域の抽出精度が、輪郭モデル決定手段やエッジ抽出手段に影響すると考えられるが、肌色領域の膨張・収縮処理の方法については詳しく開示されていない。
また、特許文献3では、頭部領域検出手段において肌色領域を抽出した後に膨張・収縮マスクを用いて膨張・収縮処理を行っている。しかしこの特許文献3においては、この単純なマスクを用いるだけでもこの処理の演算量とメモリ参照量は1画素について数倍に増え、演算量とメモリ参照量が大幅に増加してしまう不利益がある。
【0004】
【特許文献1】特開2005−157679号公報
【特許文献2】特開2002−216129号公報
【特許文献3】特開2003−178311号公報
【0005】
本発明の目的は、上述の不利益を鑑みることにより対象物検出装置または対象物検出方法に関し、任意色をした対象物の検出動作において不要な演算をする必要がなく、対象物検出の演算量を削減することである。
また、対象物検査手段を制御する制御方法を簡単化し且つそれに係るメモリ参照量を少なくし、制御コスト及び消費電力を最小限に抑えて対象物の顔検出の追跡が中断されること無く、検出のスピードを速くすることである。
【課題を解決するための手段】
【0006】
本発明の対象物検出装置は、対象物を有する画像を入力する画像入力手段と、上記画像入力手段から入力された画像から所望の色を検出する色検出手段と、上記色検出結果に応じて上記画像を2値化する2値化処理手段と、上記2値化処理手段の結果を用いて特定された色領域の対象物を検出する対象物検出手段と、上記2値化処理手段の結果に基いて上記画像の検出した2値化領域の現在位置の画素から検出領域を膨張させる膨張処理手段と、上記膨張処理手段で膨張した2値化領域の色検出の結果に基いて上記対象物検出手段のオン、オフ動作を制御する制御手段と、を有する。
【0007】
上記膨張処理手段は、好適には、上記2値化処理手段の結果を入力し、画像の同一ライン上で、現在位置の結果と現在位置よりも数画素先の2値化処理の結果を先読みする手段と、画像の同一ライン上で、現在位置よりも数画素前の2値化処理結果を管理して記憶する手段と、上記現在位置の結果と上記先読みした結果と上記管理した履歴に基いて、現在位置について膨張処理を実行するかしないかを判断する判断手段と、を備え、膨張処理を実行する。
上記制御手段は、好適には、上記記憶手段に上記2値化処理結果の履歴を記憶し、上記ラインの検出結果と上記履歴結果に応じて履歴を可変する。
上記記憶手段は、好適には、画像の同一ライン上の膨張処理により得られた画素の検出結果の有無により履歴結果を可変する。
上記制御装置は、好適には、上記膨張処理結果に基いて、上記対象物検出手段を動作させるか否かを制御する。
【0008】
本発明の、対象物検出方法は、対象物を検出するための画像を入力する画像入力ステップと、上記入力された画像から所望の色を検出する色検出ステップと、上記色検出の結果を2値化する2値化処理ステップと、上記2値化処理ステップの結果を用いて特定された色領域の対象物を検出する対象物検出ステップと、上記2値化処理ステップの結果に基いて上記画像の検出した2値化領域の現在位置の画素から検出領域を膨張させる膨張処理ステップと、上記膨張処理ステップで膨張した2値化領域の色検出の結果に基いて上記対象物検出ステップにおける検出動作をオン、オフ制御する制御ステップと、を有する。
【0009】
本発明は、入力画像を2値化して2値化データの現在位置の色検出を行い、検出の結果、色検出されたときは顔検出動作を行い、色検出されないとき検索領域を現在位置から所定画素先に膨張し、膨張した位置の画素の色検出結果を求め、この膨張処理した結果と過去の膨張処理における色検出結果を用いて顔検出動作をオン、オフ制御する。
【発明の効果】
【0010】
本発明の対象物検出装置及び対象物検出方法によれば、2値化膨張処理結果に基いて対象物検出手段を制御するため、不要な演算をする必要がなく、対象物検出における演算量を削減することが可能となる。また、制御方法を簡単化することにより、制御コスト及び消費電力を最小限に抑え顔検出の追跡を中断すること無く検出のスピードを速くすることができる。
【発明を実施するための最良の形態】
【0011】
図1に、対象物検出装置を有する撮像装置100の構成例を示す。撮像装置100は、光学ブロック101、信号変換部102、カメラ信号処理部103、顔検出部104、表示処理部105、画像信号処理部106、記憶部107、表示部108、画像RAM(Random Access Memory)109、制御部(CPU;Central Processing Unit)110、ROM(Read Only Memory)111、RAM(Random Access Memory)112および画像バス113を備える。
【0012】
光学ブロック101は、内部に、被写体を撮像するための不図示のレンズ群、絞り、フォーカス、ズーム、シャッター等の動作を行うメカ装置を備え、これらのメカ装置はCPUやその他ハードウェア等で構成される制御部110からの制御信号に応じて各制御が行われる。
【0013】
信号変換部102は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの固体撮像素子により構成される。入力された被写体の光学像は光学ブロック101において結像され、固体撮像素子で被写体像の光信号を映像信号の電気信号に変換し、カメラ信号処理部103に供給する。
【0014】
カメラ信号処理部103は、制御部110からの制御信号に基づき、信号変換部102から出力された映像信号に対して各種の信号処理を行う。例えば、信号変換部102からの映像信号をA/D変換しディジタル信号に変換した後にガンマ補正やAGC(Auto Gain Control)などの処理やカメラ信号処理部103で得られた画像データに対してホワイトバランス調整などを行う。
【0015】
顔検出部(または対象物検出手段)104は、カメラ信号処理部103で得られた画像データが、画像RAM109を介して入力され、この入力された画像データの中から例えば人物の顔を検出し、その検出結果を制御部(または対象物検出制御手段)110に供給する。
【0016】
表示処理部105は、カメラ信号処理部103および後述する画像信号処理部106から出力された画像データを、画像RAM109を介して供給し、例えば、解像度変換等を行った後に表示部108に供給する。
【0017】
表示部108は、表示処理部105で処理された画像データを表示画面に表示する。表示部108としては、例えばLCD(Liquid Crystal Display;液晶表示装置)や有機EL(ElectroLuminessence)がある。
【0018】
画像信号処理部106は、カメラ信号処理部103から出力された画像データが、画像RAM109を介して入力され、この画像データを圧縮符号化して、画像データファイルとして記憶部107に出力する。
また、画像信号処理部106は、記憶部107から読み出された画像データファイルを復号し、画像RAM109を介して表示処理部105に供給する。
【0019】
記憶部107は、画像信号処理部106により符号化されて生成された画像ファイルを記憶する。記憶部107としては、例えば、半導体記憶装置のフラッシュメモリやRAMなどを用いることができる。この記憶部107は、記憶された画像データファイルを画像信号処理部106に読み出す以外に、画像データファイル中に埋め込まれた顔検出結果などのデータを記憶する。
【0020】
画像RAM109は、カメラ信号処理部103、顔検出部104、表示処理部105および画像信号処理部106に対して、画像バス113を介して接続されている。画像RAM109は、画像バス113に接続されたこれらの処理ブロックにより共有され、各ブロック間では画像RAM109を介して画像データが授受される。
【0021】
制御部110はCPU等の制御回路等を備え、ROM111に予め格納されたプログラムに従い、RAM112のアプリケーションプログラムを用いて撮像装置(100)全体を制御する。
【0022】
図2に、顔検出部(対象物検出手段)104の回路ブロックの構成例を示す。顔検出部104は、画像変換部としてのスケーリング部201、画像バッファ202、顔検出処理部としての顔検出コア部203、候補領域処理部204、コントローラ205を備える。
【0023】
スケーリング部201は、画像RAM109から画像バス113を介して読み出した画像データのサイズ(水平、垂直方向の各画素数)を、顔検出コア部203で行う顔検出処理に適するように縮小または拡大のスケーリング処理を行い、画像バッファ202に供給する。
また、顔を含む可能性の高い候補領域として、候補領域処理部204により算出された、顔の検出候補領域ビットマップをコントローラ205より受け取り、画像と同様にスケーリング処理を行い、画像バッファ202に供給する。
【0024】
画像バッファ202は、スケーリング部201によってサイズ変換された画像データを一時的に保持する。そして、コントローラ205の制御に基づき、画像データの中から指示された位置における、所定サイズの矩形画像データを切り出す走査処理を行い、顔検出コア部203に供給する。
【0025】
顔検出コア部203は、画像バッファ202から供給された矩形画像データに対して、顔検出処理を施す。顔検出コア部203では、顔検出処理として、顔判定処理、重複判定処理を行い、顔検出結果を制御部110と候補領域処理部204に出力する。
【0026】
候補領域処理部204は、顔検出コア部203から供給された顔の検出結果に基いて、次のフレーム画像で顔が検出される可能性が高い領域を算出し、その領域を次のフレーム画像で、顔の検出候補領域に設定する。なお、顔が検出される可能性が高い領域とは、現フレーム画像で顔が検出された位置の周辺画像である。設定された顔の検出候補領域データはコントローラ205に供給される。
【0027】
コントローラ205は、制御部110に設けられたCPU等の制御に基づき、スケーリング部201で行う画像データの縮小率(または拡大率)の指示や、画像バッファ202の書き込み読み出し時のメモリアドレスの指示など顔検出部104の各部を制御する。さらに、このコントローラ205は、後述の対象物検出装置300を有し、顔検出のオン/オフ動作を制御する。
【0028】
次に、顔検出するための矩形領域の走査処理について図3を用いて説明する。
顔検出に伴う走査処理では、スケーリング部201でスケーリング処理した画像データ250に対して、所定サイズの矩形領域251を水平方向および垂直方向に所定量だけ移動させながら走査し、矩形画像データを切り出す。すなわち、所定サイズの矩形領域251を画面の左上の端から水平方向に移動量Δxだけ移動させ、画像データ250の右端まで走査すると、画像データ250の左端に戻るとともに垂直方向に移動量Δyだけ位置を変更し、再び水平方向に走査する。この動作を繰り返して画像データ250の右下端まで走査し、矩形画像データを順次切り出す。
【0029】
顔検出のためにスケーリング処理により画像データを少なくして演算量を削減する方法を説明する。図4に表示画像をスケーリング部201により縮小した時の画像を示す。画像データ250aを所定のスケーリング比によりΔr倍した画像を画像データ250bに示し、この画像データ250bをさらにΔr倍した画像を画像データ250cに示す。以下同様に、所定、または任意のスケーリング比により、画像を縮小する。
図4において、縮小する場合のスケーリング処理の例を示したが、拡大する場合のスケーリング処理も同様に行うことができる。なお、図4に示すように、走査処理の際に走査される矩形領域251a〜251eのサイズは、画像データの拡大または縮小した時のサイズによらず、常に同一のサイズとする。
この結果、固定された大きさの矩形領域251a〜251eによりデータを削減した画像データ領域250a〜250eを走査することにより、効率的に顔領域を検出することができる。
【0030】
図5に、対象物検出装置300の構成例を示す。
図5に示す対象物検出手段306は図1のカメラ信号処理部103、顔検出部104と画像RAM109に対応し、また、肌色検出手段302、2値化処理手段303、膨張処理手段304、対象物検出制御手段305等は図2のコントローラ205に対応する。
以下、対象画像を種々の背景とした人物画像とし、かつ色検出する特定領域を例えば顔とする。なお、本発明は、色検出に係わり特に肌色に限定するものでなく、他の色であっても良いので特に顔に限定するものではない。
【0031】
対象物検出装置300において、画像入力手段301は、撮像(カメラ)装置100で撮影された映像(画像)やカメラ信号処理部103から出力された画像を直接またはそれ以外にメモリ等を介して間接に画像を取得しても良い。
【0032】
肌色検出手段302は、画像入力手段301を介して入力された画像から人の肌色を検出する。入力された画像データの同一ライン(画面上においては水平走査ラインを示す)の画素の色成分を求め、あらかじめ学習した肌の色成分と比較して、色成分が所定の閾値以上のとき人(肌)が存在すると判断し、所定の閾値以下のとき、人(肌)が存在しないと判別する。
【0033】
2値化処理手段303は、肌色検出手段302の結果を2値化するための手段である。各画素に対して色検出動作を行った結果、肌色が検出されると2値化データを“1”に設定し、肌色が検出されないと“0”に設定する。
【0034】
膨張処理手段304は、2値化処理手段303の結果に基いて、2値化領域を膨張(拡大)させる手段である。なお、膨張とは、現在の画素位置から数画素先または数画素前まで検出領域を拡大することを示す。
上述した膨張処理手段304の構成は、不図示の2値化処理の結果の先読み手段と、2値化処理結果を管理して記憶する記憶手段と、膨張処理を実行するか否かを判断する判断手段とを備える。
先読み手段は、2値化処理手段303の結果を入力し、画像の同一ライン(同一水平走査ライン)上で、現在の画素位置の結果よりも数画素先の結果を先読みする。
記憶手段は、画像の同一ライン上で、現在画素位置よりも数画素前の2値化処理結果を管理して履歴値として記憶する。
判断手段は、上記現在画素位置の色検出した結果と、上記先読みして色検出した結果と、上記記憶手段の履歴値に基いて、現在位置について膨張処理を実行するかしないかを判断して膨張処理を実行する。
【0035】
対象物検出制御手段305は、膨張処理手段304の結果に基いて対象物検出手段306を動作させるか否かを制御する。
【0036】
対象物検出手段306は、上述したように、画像入力手段301、スケーリング部201、画像バッファ202、顔検出コア部203、候補領域処理部204、コントローラ205等で構成される。画像入力部から濃淡画像が入力画像として入力され、この入力画像をスケーリング部で拡大または縮小され、このスケーリング処理された画像上で例えば矩形の領域検出を水平方向または水平かつ垂直方向に走査(スキャン)する。この走査と平行して2値化データに対して上述した膨張処理が行われ、その結果に対応して対象物検出制御手段305から制御信号が出力され、対象物検出手段306における顔検出の動作がオン/オフ制御される。この顔検出の動作が繰り返されることにより、入力画像の中から特定の対象物の顔を検出する。
【0037】
対象物検出結果307は、対象物検出手段306から検出された対象物の検出結果で、例えば人物の場合の顔を示す。
【0038】
図6に、本発明の一実施形態である対象物検出装置300の動作を説明するフローチャートを示す。
【0039】
まず、入力画像をカメラ装置等を用いて取得する(ステップS201)。画像は、カメラ装置等において、不図示のレンズ群を介して結像された対象物の光像をCCDやCMOSイメージャーで光信号を撮像信号(電気信号)に変換して、その変換された画像信号を信号処理することにより取得する。
【0040】
次に、ステップS201で取得した画像信号(画像データ)から肌色領域を検出する(ステップS202)。信号処理された画像信号から色信号を抽出し、RGB座標上の色信号をさらに例えばHLS(Hue Luminance Saturation)色座標等へ座標変換し各画素(ピクセル)毎の色成分を取り出す。色検出するとき、この画素の範囲を特定することにより、この範囲内で各画素の色成分とあらかじめ学習した肌色の色成分と比較し、比較結果が予め設定された閾値以上であると特定された色、例えば肌色と判断し、閾値以下のときは肌色でないと判断する。
【0041】
次に、2値化処理を行う(ステップS203)。肌色領域を検出した後の2値化処理において、例えば、画像の同一ラインの水平方向において画素毎の肌色を検出した結果、肌色と判断されたとき、2値化データを“1”と設定し、肌色と判断されないとき、“0”と設定する。
【0042】
次に、ステップS203の結果に基いて、膨張処理を行うか行わないかを判断する(ステップS204)。膨張処理を行うと判断した時は、膨張処理を実行し(ステップS205)、膨張処理を行わない時は次のステップS206に遷移する。なお、膨張処理とは、例えば画像の水平方向の同一ラインにおいて、現在位置の肌色検出を行おうとする画素を基準に数画素先あるいは数画素の後の画素まで領域を広げて検出処理することを示す。上述した膨張処理についての詳細な説明は後述する。
【0043】
次に、2値化領域を生成する(ステップS206)。膨張処理により得られた肌色検出領域のデータから、2値化データが“1”の領域が肌色検出領域と特定される。膨張処理された後の2値化領域の具体例は、後述の図10(b)のブロック602a、図10(d)のブロック602cに示す。
【0044】
次に、ステップS206で得られた結果に基いて、対象物検出手段306を動作させるか否か判断する(ステップS207)。
【0045】
ステップS206で得られた結果が“1”であれば、対象物検出手段306を動作(オン)させて対象物を検出する(ステップS208)。対象物検出手段306が動作すると、上述したように、スケーリングされた画像上で例えば矩形の検出領域が水平方向または水平かつ垂直方向に走査され、肌色に該当する特定領域、例えば顔などの対象物が検出される。
一方、ステップS206で得られた結果が“0”であれば、対象物検出手段306は動作せず次のステップ(ステップS210)に遷移する。
【0046】
次に、対象物の検出結果を得る(ステップS209)。この検出結果は、人物の肌色を有する特定領域、例えば顔を示す。
【0047】
最後に、入力が終了したかどうかを判定し(ステップS210)、終了していなければステップS202に遷移し、終了していれば処理を完了する。
【0048】
なお、ステップS207で対象物検出制御手段305の動作を開始するか否かについて判断した結果、人の肌色が存在しなければ、顔検出動作を行う必要がないので対象物検出手段(306)の動作を停止(オフ)することにより不要な演算をする必要がなく、高速に演算を行うことが可能となる。また、それに伴うメモリ参照も行うことがない。
【0049】
なお、入力が完了したかどうかの判定により遷移するステップはステップS202に限定されるものではない。例えば、ステップS202〜S206までの処理をまとめて先に処理しておき、ステップS207へ遷移しても良い。その後、ステップS207〜S209までの処理を実行することもできる。
【0050】
図7に、上述したステップS202〜S206を省略した場合の対象物検出動作を説明するためのフローチャートを示す。
図7において、図6に示すステップS202〜S206をまとめた処理をステップS206aとする。
まず、膨張処理後の2値化領域のデータを取得する(ステップS206a)。
次に、2値化領域データを用いて、対象物検出制御手段305を動作させるか否かを判定する。判定した結果、2値化データが“1”のとき(yes)ステップS208へ遷移し、“0”のとき、ステップS210へ遷移する(ステップS207)。
2値化データが“1”のとき、対象物検出の動作を行う(ステップS208)。
検出動作により、対象物に関する検出結果を得る(ステップS209)。対象物検査結果の取得が終わると画像入力が終了したかどうかを判定し(ステップS210)、終了するとステップS211に遷移し、終了しないときは、ステップS207に遷移し、上述した動作を繰り返す。
【0051】
このように、図7に示すフローチャートに従って動作する対象物検出装置300は、ステップS202〜S206までの処理(ステップS206a)と、ステップS207〜S209までの処理をパイプライン的に動作させることができるので、図6のフローチャートを用いた場合と比較して処理時間を短くすることができる。
【0052】
よって、本発明は、非常に簡単な制御にて膨張処理を実行することができる。また、膨張処理を実行するにあたり、画像の同一ライン上の1画素のみの参照であるため、演算量、メモリ参照量共に、例えば3x3のマスクを用いる場合に比べて非常に少なくて済む。
【0053】
また、本発明は、対象物検出手段の動作を制御する制御方法が非常に簡単であり、且つそれに係るメモリ参照量も少ないため、制御コスト及び消費電力を最小限に抑えることができる。
【0054】
図8に、膨張処理手段304の動作の概要を説明するためのフローチャートを示す。また、図9に、膨張処理手段304が備えている記憶手段の動作の概要を説明するためのフローチャートを示す。
【0055】
次に、図8及び図9を用いて膨張処理の動作について説明する。説明を簡略化するため、これら図8及び図9においては、画像の同一ライン上で現在位置の画素に対して±2画素で膨張処理を行う例を示す。なお、画素の膨張領域は原理的に同一ライン上であれば特に画素数は限定されない。
【0056】
図8において、2値化処理手段303で肌色検出手段302で各画素に対応した検出データに基いて2値化処理結果を取得する(ステップS401)。ステップS401で取得された画素の検出結果は、2値化処理がされているため、2値化データは“0”または“1”の値である。
【0057】
ステップS401の結果が、“1”であるか否かを判定する(ステップS402)。判定した結果が“1”(“yes”)であれば、ステップS405に遷移し、一方“0”(“no”)であれば、ステップS403に遷移する。
【0058】
ステップS403では、膨張処理の動作を行う。すなわち、画像の同一ライン上で現在の画素位置より2画素先(+2画素)を検出し、その結果が“1”であるかどうかを判定する。判定した結果、2画素先のデータが“1”(“yes”)であれば、ステップS405へ遷移し、“0”(“no”)であれば、ステップS404に遷移する。
【0059】
ステップS404では、記憶手段で記憶している履歴が残っているかどうかを判定する。履歴が残っていれば(“yes”の場合)、上述したようにステップS405へ進み、履歴が残っていなければ(“no”の場合)、ステップS406に進む。ここで、履歴とは、膨張処理を管理するため過去の膨張処理の結果を記憶手段に記憶された値を示す。
【0060】
ステップS405では、2値化処理結果の取得データが“1”の場合(ステップS402で“yes”)、2値化処理結果の取得データが“0”(ステップS402で“no”)かつ現在位置よりたとえば2画素先の結果が“1”の場合(ステップS403で“yes”)、または記憶手段に履歴結果が残っている場合(ステップS404で“yes”)は、記憶手段に1がセットされ、そしてステップS406に遷移する。
【0061】
ステップS406では、画像データの入力が終了したかどうかを判定する。画像データの入力が終了していなければ、ステップS401へ戻りステップS401〜S405の動作を繰り返し、終了していれば、処理が完了する(ステップS407)。ここで、膨張処理における検出画素数は±2画素は限定されるものではなく、任意に設定が可能である。また、この他、先読み画素数が3、履歴は1にするなど、膨張処理の画素数と記憶手段に記憶する履歴の値をアンバランスな設定をしてもよい。
【0062】
次に、上記履歴を管理している記憶手段の動作について図9に示すフローチャートを用いて説明する。
まず、記憶手段に記憶されている履歴を初期化する(ステップS501)。例えば、2値化データの“0”を記憶手段に記憶する。
【0063】
次に、2値化処理の結果を取得する(ステップS502)。具体的には、画像の同一ラインの画素の肌色の検出を行い、検出した画素の色成分をあらかじめ学習した肌色成分と比較して、所定の閾値以上かまたはそれ以下かを判別する。判別された結果の2値化データは“0”または“1”である。
【0064】
次に、ステップS502ので得られた取得結果を判定する(ステップS503)。判定結果が“1”(“yes”の場合)であればステップS504に遷移し、“0”(“no”の場合)であればステップS505に遷移する。
【0065】
ステップS504では、記憶手段に記憶される履歴を最大にセットし、ステップS507に遷移する。ここで、最大にセットするとは、ここでは±2画素の膨張処理を行っているため例えば“2”とする。
【0066】
ステップS505では、画素の現在位置より2画素先の2値化処理の検出結果が“1”であるかどうかを判定する。判定結果が、“1”(“yes”の場合)であればステップS506へ遷移し、“0”(“no”の場合)であればステップS507へ遷移する。
【0067】
ステップS506では、記憶手段に記憶されている履歴(値)を変更せず、ステップS509に遷移する。
【0068】
ステップS507では、記憶手段に履歴が残っているかどうかを判定する。履歴が残っていれば(“yes”の場合)、ステップS508へ遷移し、履歴が残っていなければ(“no”の場合)ステップS506へ遷移する。
【0069】
ステップS508では、記憶された履歴値から1減算し、ステップS509へ遷移する。ここで、履歴の減算数は1に限定されるものではなく、減算結果が正である範囲ならば減算数は任意の値に設定してもよい。
【0070】
ステップS509では、記憶手段に記憶されている履歴を更新し、ステップS510に遷移する。
【0071】
ステップS510では、画像入力が終了したかどうかを判定する。終了していない(“no”の場合)のであればステップS502へ戻り、終了していれば(“yes”の場合)記憶手段に記憶する履歴の設定処理が完了する(ステップS511)。なお、膨張処理における検出画素数は±2画素は限定されるものではなく、任意に設定が可能である。また、先読み画素数が3、履歴は1にするなどアンバランスな設定をしてもよい。
【0072】
図10に、図8及び図9を用いて説明した画素の色検出における膨張処理の動作を模式的に示す。図10(a)〜(e)は、時刻T1〜T5の時間経過に伴って膨張処理で得られる画素データを示す。
符号601のブロックは、膨張処理前の画像の同一ラインの画素に関する2値化処理結果を示し、肌色検出され2値化処理を施された画素は斜線で示し、肌色と検出されなかった画素は白で示す。
符号602のブロックは、本発明の膨張処理を施した後の結果を示す。符号603のブロックは、膨張処理手段304が備えている記憶手段の履歴値を示す。
【0073】
図10(a)に示す時刻T1において、符号601のブロックは膨張処理する前の画素データを示し、膨張処理は行っていないので符号ブロック602に示すデータとなる。符号ブロック602において、肌色検出される画素(データ)は存在せず、現在位置の2画素P1、P2(データ)は、“0”である。ステップS405の判定により結果は“0”のままとなり、ステップSS507の判定により履歴は変更されない。その結果、符号ブロック603に示す履歴は“0”となる。
なお、時刻T1のとき膨張処理されずまた、履歴値が“0”であるから、対象物検出制御手段305から対象物検出手段306へ動作停止の制御信号が出力されるので、顔検出の動作は行わない。
すなわち、従来は対象物検出手段306で対象物検出動作が行われていたが、膨張処理手段304と対象物検出制御手段305の一連の動作により、対象物検出手段306の動作が停止(オフ)される。
【0074】
次に、図10(b)に示す時刻T2において、符号601aブロックに2値化処理された2画素P3、P4を示し、符号ブロック602aに同一ラインの2画素先の画素P5、P6に膨張処理した画素を示す。符号ブロック602aの画素の現在位置P3、P4の2値化処理結果は、“0”であるので(ステップS503で“no”の場合)、膨張処理の動作を行い画素P3に対する2画素先の画素P5を検出し、その結果は“1”である。また画素P3の膨張処理動作に引き続き続いて画素P4に関する膨張処理動作が行われ、2画素先の画素P6は“1”であるので、処理結果は“1”である。
すなわち、現在位置の画素と2画素先の画素が順次検出され、P3とP4に対する膨張処理結果はそれぞれ“1”である。ステップS505で判定した結果が“1”であるのでステップS506に遷移し、記憶手段の履歴は変更されないために記憶手段の履歴は“0”である(符号ブロック603b)。そして、まだ、画像入力は終了していないので、ステップS502に遷移し、フローチャートに従った動作を繰り返す。
上述したように、時刻T2のとき膨張処理の処理結果が“1”であるから、対象物検出制御手段305から対象物検出手段306へ動作開始の制御信号が出力されるので、顔検出の動作は行われる。
【0075】
図10(c)に示す時刻T3において、2値化処理データを示す符号ブロック601bの5画素P5〜P9に肌色が存在する。符号ブロック602bにおいて、肌色は5画素P5〜P9で順次検出される。その結果、符号ブロック602bでは、時刻T2で検出された2画素P1、P2と今回検出された5画素P5〜P9に肌色が存在する。時刻T3で注目した5画素P5〜P9は、ステップS402の判定により“1”にセットされ、ステップS503の判定によりステップS504に遷移し、その結果、履歴を例えば最大値の2にセットし(符号603b)、履歴を更新する(ステップS507)。まだ、同一ラインの画素P10〜P13の検出を終了していないので、ステップS502へ遷移する。
時刻T3のときは、画素P5〜P9は2値化処理の結果が“1”であるから顔検出の動作が行われる。
【0076】
図10(d)に示す時刻T4において、注目した2画素P10、P11は、2値化処理結果の取得結果が“0”である。ステップS503の処理において、現在位置の画素P10、P11の検出結果が“0”であるので、ステップS505で膨張処理する。2画素後の画素P8、P9の結果が“1”であり、一方、2画素先の画素P12、P13の検出結果は“0”であるので、ステップS507に遷移する。記憶手段に履歴“2”が記憶されているので、ステップS509において、各画素(P11、P12)の膨張処理に伴い履歴値が1つずつ減少し、“2”から“1”、“0”と変化する(符号ブロック603c)。
時刻T4のときは2画素後の膨張処理の判定結果が“1”であるから、対象物検出制御手段305から対象物検出手段306へ処理動作を行う制御信号が出力され、顔検出の動作が行われる。
このように、2画素後または2画素前の膨張処理を行うことにより、例えば顔検出の領域で肌色と異なり例えば目や眉などの肌色以外の色を有する領域を検出し、2値化処理して肌色でないと検出しても、顔検出動作を停止せず所定の範囲(たとえば現在画素の位置に対して2画素前、2画素後の範囲)で色検出操作を続行して肌色領域を効率的に検出できる。
【0077】
図10(e)に示す時刻T5において、注目した現在位置の2画素P12、P13は、ステップS502において2値化処理結果のデータは“0”である(符号ブロック601d)。
ステップS503においてステップS502で得られたデータが“1”か“0”を判定し、判定結果が“0”であるのでステップS505へ遷移する。ステップS505において、現在位置の画素P12、P13より2画素先の画素は無く、また2画素後の画素は“0”であるから検出結果は“0”となり、ステップS507に遷移する。そして、ステップ507の判定において、履歴は時刻T4で“0”に更新され時刻T5においては履歴が残っていないので、その結果は“0”のままとなり、履歴は変更されない(ステップS506)。最後に画像入力が終了となり処理が完了する(ステップS510)。
なお、時刻T5のとき膨張処理結果が“0”であるから、対象物検出制御手段305から対象物検出手段306へ動作停止の制御信号が出力されるので、顔検出の動作は停止される。
【0078】
このように図6と図7で示すフローチャートに従って画素毎の膨張処理が行われて2値化領域が生成され(ステップS206)、膨張処理結果に基いて対象物検出手段306を動作させるか否か判断する(ステップS207)。そして、上述したように、ステップS206で得られた結果が“1”であれば、対象物検出手段306を動作させて対象物を検出する(ステップS208)。対象物検出手段306が動作すると、上述したように、スケーリングされた画像上で例えば矩形の検出領域が水平方向または水平かつ垂直方向に走査され、肌色に該当する特定領域、例えば顔などの対象物が検出される。
【0079】
以上述べたように、本発明は、入力画像から所望の色を検出する肌色検出手段と、検出した肌色結果を2値化する2値化処理手段と、2値化処理手段の結果に基いて2値化領域を膨張させる膨張処理手段を有して、2値化膨張処理結果に基いて対象物検出装置を制御するため、不要な演算をする必要がなく、対象物検出における演算量を削減することが可能となる。
また、対象物検出の制御方法が非常に簡単であり、且つそれに係るメモリ参照量も少ないため、制御コスト及び消費電力を最小限に抑えることが可能となる。
【0080】
本発明において、対象物を有する画像を入力する画像入力手段は、画像入力手段301に対応する。上記画像入力手段から入力された画像から所望の色を検出する色検出手段は、肌色検出手段302に対応する。上記2値化処理手段の結果を用いて特定された色領域の対象物を検出する対象物検出手段は、対象物検出手段306に対応する。上記色検出結果に応じて上記画像を2値化する2値化処理手段は、2値化処理手段303に対応する。上記2値化処理手段の結果に基いて上記画像の検出した現在位置から2値化領域を膨張させる膨張処理手段は、膨張処理手段304に対応する。上記膨張処理手段で膨張した2値化領域の色検出の結果に基いて上記対象物検出手段のオン、オフ動作を制御する制御手段は、対象物検出制御手段305に対応する。
【図面の簡単な説明】
【0081】
【図1】図1は、撮像装置のブロック構成図である。
【図2】図2は、図1に示した撮像装置の画像検出部のブロック構成図である。
【図3】図3は、フレーム画像を特定の大きさの検出領域で水平または垂直方向に走査する例である。
【図4】図4は、フレーム画像を縮小した時の特定の大きさの検出領域で水平または垂直方向に走査する例である。
【図5】図5は、対象物検出装置の構成を示すブロック図である。
【図6】図6は、対象物検出装置の動作を説明するためのフローチャートである。
【図7】図7は、対象物検出装置のパイプライン動作を説明するためのフローチャートである。
【図8】図8は、膨張処理手段の動作を説明するためのフローチャートである。
【図9】図9は、膨張処理手段に備えられた記憶手段の動作を説明するためのフローチャートである。
【図10】図10は、膨張処理手段の動作を説明するために画像ラインの画素データと膨張処理結果を模式的に示した図である。
【符号の説明】
【0082】
100…撮像装置、101…光学ブロック、102…信号変換部、103…カメラ信号処理部、104…顔検出部、105…表示処理部、106…画像信号処理部、107…記憶部、108…表示部、109…画像RAM、110…制御部(CPU)、111…ROM、112…RAM、113…画像バス、201…スケーリング部、202…画像バッファ、203…顔検出コア部、204…候補領域処理部、205…コントローラ、250,250a〜250e…画像データ、251,252…矩形領域、300…対象物検出装置、301…画像入力手段、302…肌色検出手段、303…2値化処理手段、304…膨張処理手段、305…対象物検出制御手段、306…対象物検出手段。

【特許請求の範囲】
【請求項1】
対象物を有する画像を入力する画像入力手段と、
上記画像入力手段から入力された画像から所望の色を検出する色検出手段と、
上記色検出結果に応じて上記画像を2値化する2値化処理手段と、
上記2値化処理手段の結果を用いて特定された色領域の対象物を検出する対象物検出手段と、
上記2値化処理手段の結果に基いて上記画像の検出した2値化領域の現在位置の画素から検出領域を膨張させる膨張処理手段と、
上記膨張処理手段で膨張した2値化領域の色検出の結果に基いて上記対象物検出手段のオン、オフ動作を制御する制御手段と、
を有する
対象物検出装置。
【請求項2】
上記色検出手段は、人物画像の肌色を検出する
請求項1記載の対象物検出装置。
【請求項3】
上記膨張処理手段は、上記2値化処理手段の結果を入力し、画像の同一ライン上で、現在位置の結果と現在位置よりも数画素先の2値化処理の結果を先読みする手段と、画像の同一ライン上で、現在位置よりも数画素前の2値化処理結果を管理して記憶する手段と、上記現在位置の結果と上記先読みした結果と上記管理した履歴に基いて、現在位置の画素について膨張処理を実行するかしないかを判断する判断手段と、
を備える、
請求項2記載の対象物検出装置。
【請求項4】
上記記憶手段は、上記記憶手段に上記2値化処理結果の履歴を記憶し、上記ラインの検出結果と上記履歴結果に応じて履歴を可変する
請求項3記載の対象物検出装置。
【請求項5】
上記記憶手段は、画像の同一ライン上の膨張処理により得られた画素の検出結果の有無により履歴結果を可変する
請求項4記載の対象物検出装置。
【請求項6】
上記制御装置は、上記膨張処理の結果に基いて、上記対象物検出手段を動作させるか否かを制御する
請求項5記載の対象物検出装置。
【請求項7】
対象物を検出するための画像を入力する画像入力ステップと、
上記入力された画像から所望の色を検出する色検出ステップと、
上記色検出の結果を2値化する2値化処理ステップと、
上記2値化処理ステップの結果を用いて特定された色領域の対象物を検出する対象物検出ステップと、
上記2値化処理ステップの結果に基いて上記画像の検出した2値化領域の現在位置の画素から検出領域を膨張させる膨張処理ステップと、
上記膨張処理ステップで膨張した2値化領域の色検出の結果に基いて上記対象物検出ステップにおける検出動作をオン、オフ制御する制御ステップと、
を有する
対象物検出方法。
【請求項8】
上記色検出ステップは、人物画像の肌色を検出する
請求項7記載の対象物検出方法。
【請求項9】
上記膨張処理ステップは、上記2値化処理ステップの結果を入力し、画像の同一ライン上で、現在位置の結果と、現在位置よりも数画素先の2値化処理の結果を先読みするステップと、
画像の同一ライン上で、現在位置よりも数画素前の2値化処理結果を管理して記憶するステップと、上記現在位置の結果と、上記先読みした結果と、上記記憶に基いて現在位置の画素について膨張処理を実行するかしないかを判断するステップと、
を備える、
請求項8記載の対象物検出方法。
【請求項10】
上記制御ステップは、上記膨張処理の結果に基いて、上記対象物検出ステップにおける検出動作をオン、オフ制御する
請求項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


【公開番号】特開2010−20597(P2010−20597A)
【公開日】平成22年1月28日(2010.1.28)
【国際特許分類】
【出願番号】特願2008−181381(P2008−181381)
【出願日】平成20年7月11日(2008.7.11)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】