(57)【要約】【課題】画像信号上の人の顔の存在する領域を、高精度かつ高速に検出できるようにする。【解決手段】Ｃ−ＭＯＳでセンサーを構成し、センサー部、メモリー部、画像処理部などをワンチップ上に形成して、センサーの受光領域を複数に分割した上で、各々のブロックの代表値をセンサー上の画像処理機能により算出し、その信号に基づいて読み出し顔検出処理が行われる領域を限定する前処理を行うことにより、限定された領域において顔検出を行うことができるようにした。【選択図】      図１
2004171047.tif 000002
【特許請求の範囲】
【請求項１】
画像センサーから画像データを取得し、その画像データを画像処理することにより顔のある領域を検出する顔検出装置において、
顔検出に先立ち顔検出画像処理を行うための領域を選択する前処理を行うことを特徴とする顔検出装置。
【請求項２】
比較的低輝度の領域と中輝度の領域が隣接する領域とその周辺領域とを、上記顔検出を行う領域として選択することを特徴とする請求項１に記載の顔検出装置。
【請求項３】
皮膚の色もしくはその近似色の存在する領域を、上記顔検出を行う領域として選択することを特徴とする請求項１に記載の顔検出装置。
【請求項４】
前フレームとの相関をとり、その相関値の大きな領域を上記顔検出を行う領域として選択することを特徴とする請求項１に記載の顔検出装置。
【請求項５】
画像センサーから画像データを取得し、その画像データを画像処理することにより顔のある領域を検出する顔検出装置において、
上記画像センサーは、受光領域を複数のブロックに分割し、上記各ブロックの代表値を出力する回路を内蔵していることを特徴とする顔検出装置。
【請求項６】
上記各ブロックの代表値は、上記各ブロックの中心位置の画素の出力値であることを特徴とする請求項５に記載の顔検出装置。
【請求項７】
上記各ブロックの代表値は、上記各ブロックの平均値であることを特徴とする請求項５に記載の顔検出装置。
【請求項８】
上記各ブロックの代表値は、上記各ブロックの前フレームとの相関値であることを特徴とする請求項５に記載の顔検出装置。
【請求項９】
上記画像データをイメージゾーンからメモリーゾーンヘ転送する際に、上記各ブロックの代表値を算出することを特徴とする請求項６または請求項７に記載の顔検出装置。
【請求項１０】
上記各ブロックの代表値の算出は画像を読み出す際に行うことを特徴とする請求項６〜８の何れか１項に記載の顔検出装置。
【請求項１１】
センサー部、メモリー部、または画像処理部の少なくとも何れかをワンチップ上に形成したことを特徴とする請求項５に記載の顔検出装置。
【請求項１２】
Ｃ−ＭＯＳで上記画像センサーを構成したことを特徴とする請求項５に記載の顔検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像信号から人の顔の存在する領域を検出する装置に関し、更には例えば、カメラ等の機器における顔の存在する領域の検出に適するようにするために、低コストで高速の顔検出を可能にするシステムに関するものである。
【０００２】
【従来の技術】
顔検出を行う発明としては特開平７−７３２９８号公報（特許文献１）などがある。また、画像処理を行う領域を限定する発明としては、特開平９−２１１３１６号公報（特許文献２）などがある。上記特開平９−２１１３１６１号公報は、カメラのオートフォーカスにおいて、適正なフォーカス状態を検知出来る像信号処理装置に関するもので、以下のような構成をしている。
【０００３】
その課題は、二次元センサーに受光された２つの像のズレ量に応じてフォーカス状態を判定する像信号処理に際して、信号処理の範囲を大とすると測距エラーを防止出来るものの、適正なフォーカス状態を検知出来なくなる不都合を解消することである。
【０００４】
またその解決手段については以下の記述がある。本発明は像信号処理の対象範囲を広い範囲で行った後に、上記処理結果に応じて被測定対象物の形状を求め、対象範囲を該形状に適した範囲に再設定し、該再設定範囲からの像信号に対して相関演算処理を行わせて、適正なフォーカス状態を検知出来る像信号処理装置を提供するものである。
【０００５】
【特許文献１】
特開平７−７３２９８号公報
【特許文献２】
特開平９−２１１３１６号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、従来例では、像信号処理の対象範囲を限定することによって適正なフォーカス状態を検知するものであるため、像信号処理の対象範囲を限定前後の信号処理は同一であるため、トータルの像信号処理時間は長くなってしまう。すなわち、高精度化と高速化を両立することができない。
【０００７】
【課題を解決するための手段】
これに対して本発明においては、Ｃ−ＭＯＳでセンサーを構成し、センサー部、メモリー部、画像処理部などをワンチップ上に形成して、センサーの受光領域を複数に分割し各々のブロックの代表値をセンサー上の画像処理機能により算出し、その信号読み出し顔検出処理を行う領域を限定する前処理を行い、限定された領域において顔検出を行うこととした。
【０００８】
【発明の実施の形態】
（第一の実施の形態）
図１に本発明の第１の実施の形態のブロック図を示す。１はＭＰＵ（マイクロプロセッシングユニット）、２はメモリー、３はＥＥＰＲＯＭセンサー、４は顔検出装置、５は受光レンズ、６はイメージセンサー、７は読み出し用のアンプ、８は読み出し用アンプの出力信号の顔検出装置への入力を制御するゲート回路である。
【０００９】
図１においてイメージセンサー６の出力は、読み出し用アンプ７を介してマイコンのＡ／Ｄ変換入力端子に接続されており、ここでＡ／Ｄ変換された値がＭＰＵ１に読み込まれる。
また、図２にセンサー６の構成の概略を示す。図２において、６０はセンサーのイメージゾーン、６１は画像処理部、６２、６４は読み出し用のシフトレジスタ、６３はメモリーゾーン、６５はセンサーのドライバー、６６、６７は切り替えスイッチである。
【００１０】
ＭＰＵ１からの駆動パルスや通信はこのドライバー６５に対して与えられ、ドライバー６５がセンサーや画像処理回路を実際に駆動する。なおこのセンサーは、Ｃ−ＭＯＳプロセスにより製造され、センサー部、メモリー部、画像処理部などをワンチップ上に形成している。
【００１１】
そのシーケンスを図３に示すフローチャートを用いて説明する。
カメラのメインスイッチがオンするなどして、カメラのメインシーケンスが開始されると、ＭＰＵ１は初期処理の一連の動作の中で不図示のＥＥＰＲＯＭから、各種のパラメータを読み込み、メモリー２の所定のアドレスに格納する。
【００１２】
そして不図示のスイッチがオンされるなどして、顔検出の動作を撮影者が開始させる状態にしたなら、処理で用いる変数の初期化などを行う。
その後、ＭＰＵ１は顔検出を行う領域を限定するための処理に用いる信号を得るための処理を開始する。まずイメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。
【００１３】
また、この転送パルスの出力によって予備蓄積が開始される。そして所定時間が経過したならば、センサーへの通信によりセンサー上の画像処理機能をオンにする。この所定時間は他のセンサー（例えば、ＡＥセンサー）の出力をもとに決定する。更に、センサーを読み出しの状態に設定したのち、読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。
【００１４】
これにより、切り替えスイッチ６６がオン、切り替えスインチ６７がオフされる。よって、イメージゾーンに蓄積された電荷は、センサーに入力された転送パルスによって画像処理回路６１に転送され、シフトレジスタ６２を介して読み出される。
【００１５】
ついで、ＭＰＵは顔検出を行う領域を選択する処理に移る。
この処理は画像処理された信号、すなわち複数に分割された各画面の代表値（中心位置の画素の値）を用いて行われる。本実施の形態では、比較的低輝度の領域と中輝度の領域が隣接する領域とその周辺領域とを、顔検出を行う領域として選択する。これは人の顔の部分はおおむね中輝度の領域であり、目（瞳孔）や髪の毛がおおむね低輝度の領域になり、日中の屋外の撮影では背景はおおむね高輝度になるからである。
【００１６】
よって、まずＭＰＵ１は、Ａ／Ｄ変換端子から読み込んだ信号から各ブロックの輝度が、低輝度か中輝度か高輝度かを所定のしきい値と比較することによって行う。第一のしきい値以下のものを低輝度のブロック、第一のしきい値より大きく第二のしきい値以下のものを中輝度、第二のしきい値より大きいものを高輝度とする。
【００１７】
なお、このしきい値はＥＥＰＲＯＭに記憶しておき、初期化の処理の際に読み込むようになっている。複数に分割された各ブロックの輝度が低輝度か中輝度か高輝度かを所定のメモリーに記憶しておく。そして低輝度のブロックと中輝度のブロックが、垂直方向もしくは水平方向隣接する部分をサーチする。
【００１８】
隣接する部分が見つかったならば、その境界から垂直水平方向に低輝度、中輝度が連続している領域を顔検出を行う領域として選択する。この境界から低輝度、中輝度が連続している領域を選択する処理は、画面の中心に近いものから開始する。そして選択される領域が大きい場合には、すなわち境界から低輝度、中輝度の連続している区間がしきい値を超えた場合には、境界からこのしきい値までを顔検出を行う領域として選択する。
【００１９】
なお、このしきい値はレンズの焦点距離と撮影距離によって変化する値であり、パラメータはＥＥＰＲＯＭ３に記憶しておく。また、顔検出を行う領域が多数存在する場合には、画面中心に近いもののみを選択する。画面中心に近いものをいくつ選択するかは、ＥＥＰＲＯＭ３に設定するパラメータによって決定できるようにしてある。
【００２０】
顔検出を行う領域の選択が終了したならば、顔検出を行う信号を得るための蓄積（本蓄積）を行う。顔検出は外部の顔検出装置がセンサー内で画像処理されていない信号を用いて行うので、ＭＰＵ１はセンサーに対して通信を行い、センサー上の画像処理機能をオフにする。
【００２１】
ついで、イメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行い、リセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。またこの転送パルスの出力によって本蓄積が開始される。そして所定時間が経過したならば、センサーを読み出しの状態に設定にする。予備蓄積と同に、この所定時間は他のセンサー（例えば、ＡＥセンサー）の出力をもとに決定する。
【００２２】
ついで、ＭＰＵは読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。これにより、切り替えスイッチ６７がオン、切り替えスイッチ６６がオフされる。よって、イメージゾーンに蓄積された電荷は、センサーに入力された転送パルスによってメモリーゾーン６３に転送されたのちに、シフトレジスタ６４を介して読み出される。
【００２３】
この転送パルスは、実際に有効な信号を読み出すときに用いる本読み出しパルスと、信号を読み飛ばすときに用いる早読み出しパルスがある。本読み出しパルスのパルス幅（周期）は、顔検出装置が瀬検出処理を行うに十分な時間を与えるように設定される。これに対して早読み出しパルスのパルス幅（周期）は電荷を転送するに十分なものであれば良いので、本読み出しパルスのパルス幅（周期）に比べかなり短くなる。
【００２４】
この読み出し用の転送パルスを出力する際は、同時にゲート回路８も制御する。すなわちＭＰＵは、センサーの読み出し部分が顔検出を行う領域として選択されていない時には、ゲート回路制御信号をオフし顔検出装置にセンサーからの信号が入力しないようにする。同時にゲート回路制御信号は顔検出装置の制御端子にも接続されており、ゲート回路制御信号がオフの際には顔検出を行わないようになっている。
【００２５】
逆に、センサーの読み出し部分が瀬検出を行う領域として選択されている時には、ゲート回路制御信号をオンし顔検出装置にセンサーからの信号が入力するようにする。同時に、顔検出装置の制御端子にも接続されているゲート回路制御信号もオンになり、顔検出装置は顔検出を行う。
【００２６】
この顔検出装置は公知の技術によって実現できる。例えば、特開平７−７３２９８、ＵＳＰ４７６８０８８などに開示されている技術を用いれば良い。
【００２７】
そしてＭＰＵ１は、顔検出装置の処理の終了を待つ。ハード回路で構成された顔検出装置はリアルタイムの処理が可能なので、有効な信号がすべて入力された時点で処理を終了する。よって、ＭＰＵ１は必要なパルスを出力し終えたならば、顔検出装置の処理が終了したと判断し、顔検出装置からその処理結果を読み込む。
【００２８】
＜他の実施例＞
（第二の実施例）
図１に本発明の第２の実施の形態のブロック図を示す。１はＭＰＵ（マイクロプロセッシングユニット）、２はメモリー、３はＥＥＰＲＯＭセンサー、４は顔検出装置、５は受光レンズ、６はイメージセンサー、７は読み出し用のアンプ、８は読み出し用アンプの出力信号の顔検出装置への入力を制御するゲー卜回路である。
【００２９】
図１において、イメージセンサーの出力は読み出し用アンプ７を介してマイコンのＡ／Ｄ変換入力端子に接続されており、ここでＡ／Ｄ変換された値がＭＰＵ１に読み込まれる。なお、本実施の形態で用いるセンサーはカラーセンサーである。また、図４にセンサーの構成の概略を示す。
【００３０】
図４において、６０はセンサーのイメージゾーン、６８は画像処理部、６９、６４は読み出し用のシフトレジスタ、６３はメモリーゾーン、６５はセンサーのドライバー、６６、６７は切り替えスイッチである。
【００３１】
ＭＰＵからの駆動パルスや通信はこのドライバーに対して与えられ、ドライバーがセンサーや画像処理回路を実際に駆動する。なお、このセンサーは、Ｃ−ＭＯＳプロセスにより製造され、センサー部、メモリー部、画像処理部などをワンチップ上に形成している。
【００３２】
そのシーケンスを図５に示すフローチャートを用いて説明する。
カメラのメインスイッチがオンするなどして、カメラのメインシーケンスが開始されると、ＭＰＵ１は初期処理の一連の動作の中で不図示のＥＥＰＲＯＭから、各種のパラメータを読み込み、メモリー２の所定のアドレスに格納する。
【００３３】
そして不図示のスイッチがオンされるなどして、顔検出の動作を撮影者が開始させる状態にしたなら、処理で用いる変数の初期化などを行う。
顔検出を行う領域の選択するための信号を得るための予備蓄積、ならびに顔検出を行う信号を得るための本蓄積の蓄積時間を定めるためのＡＧＯを行う。これは一定時間蓄積を行い、その信号を読み出し、画面全体の平均値を求め、その結果をＥＥＰＲＯＭに設定したテーブルを参照することで行う。
【００３４】
まず、イメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。また、この転送パルスの出力によってＡＧＣを行うための信号取得の蓄積が開始される。
【００３５】
そして、所定時間が経過したならば、センサーの通信によりセンサー上の画像処理機能をオンにする。更に、センサーを読み出しの状態に設定したのち、読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。
【００３６】
これにより、切り替えスイッチ６６がオン、切り替えスイッチ６７がオフされる。よって、イメージゾーンに蓄積された電荷は、センサーに入力された転送パルスによって画像処理回路６１に転送され、シフトレジスタ６２を介して読み出される。
【００３７】
この出カは複数に分割された各画面の平均値であるので、この読み出された信号をＡ／Ｄ変換し、その平均値を求めれば、画面全体の平均値を求めることが出来る。そして、この求まった平均値をＥＥＰＲＯＭに設定したテーブルと比較する。求めた平均値がテーブルに設定された範囲にあればその蓄積時間を予備蓄積、本蓄積の蓄積時間とする。
【００３８】
そののち、ＭＰＵ１は顔検出を行う領域を限定するための処理に用いる信号を得るための処理を開始する。まずイメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。また、この転送パルスの出力によって予備蓄積が開始される。
【００３９】
そして、所定時間（ＡＧＣで定めた蓄積時間）が経過したならば、センサーへの通信によりセンサー上の画像処理機能をオンにする。更に、センサーを読み出しの状態に設定したのち、読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。これにより切り替えスイッチ６６がオン、切り替えスイッチ６７がオフされる。
【００４０】
よって、イメージゾーンに蓄積された電荷は、センサーに入力された転送パルスによってメモリーゾーン６３に転送された後、画像処理回路６８によって各ブロックの平均値が求められ、シフトレジスタ６９を介して読み出される。
【００４１】
ついで、ＭＰＵは顔検出を行う領域を選択する処理に移る。
この処理は、画像処理された信号、すなわち複数に分割された各画面の平均値を用いて行われる。またこの平均値は各ブロックについてＲＧＢの各成分の平均値である。すなわちひとつのブロックにつき三つの値が算出される。
【００４２】
本実施の形態では、皮膚の色もしくはその近似色の存在する領域を、顔検出を行う領域として選択する。これは人の顔の部分など肌が露出した部分を見つけるためである。よって、まずＭＰＵ１はＡ／Ｄ変換端子から読み込んだ信号から各ブロックのＲＧＢ各成分の平均値から、そのブロックの色情報を算出する。
【００４３】
その値を、皮膚の色もしくはその近似色と判断するための二つのしきい値と比較し、二つのしきい値の間に入っていたら（第一のしきい値≦ブロックの色情報値≦第二のしきい値）、そのブロックを顔検出を行う領域として選択する。なお、このしきい値はＥＥＰＲＯＭに記憶しておき、初期化の処理の際に読み込むようになっている。
【００４４】
顔検出を行う領域の選択が終了したならば、顔検出を行う信号を得るための蓄積（本蓄積）を行う。顔検出は外部の顔検出装置がセンサー内で画像処理されていない信号を用いて行うので、ＭＰＵ１はセンサーに対して通信を行い、センサー上の画像処理機能をオフにする。
【００４５】
ついで、イメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。またこの転送パルスの出力によって本蓄積が開始される。そして所定時間（蓄積時間）が経過したならばセンサーを読み出しの状態に設定する。
【００４６】
ついで、ＭＰＵは読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。これにより、切り替えスイッチ６７がオン、切り替えスイッチ６６がオフされる。よって、イメージゾーンに蓄積された電荷は、センサーに入力された転送パルスによってメモリーゾーン６３に転送され、シフトレジスタ６４を介して読み出される。
【００４７】
この転送パルスは、実際に有効な信号を読み出すときに用いる本読み出しパルスと、信号を読み飛ばすときに用いる早読み出しパルスがある。本読み出しパルスのパルス幅（周期）は、顔検出装置が瀬検出処理を行うに十分な時間を与えるように設定される。これに対して早読み出しパルスのパルス幅（周期）は電荷を転送するに十分なものであれば良いので、本読み出しパルスのパルス幅（周期）に比べかなり短くなる。
【００４８】
この読み出し用の転送パルスを出力する際は、同時にゲート回路８も制御する。すなわちＭＰＵは、センサーの読み出し部分が顔検出を行う領域として選択されていない時には、ゲート回路制御信号をオフし顔検出装置にセンサーからの信号が入力しないようにする。同時にゲート回路制御信号は顔検出装置の制御端子にも接続されており、ゲート回路制御信号がオフの際には顔検出を行わないようになっている。
【００４９】
逆に、センサーの読み出し部分が瀬検出を行う領域として選択されている時には、ゲート回路制御信号をオンし顔検出装置にセンサーからの信号が入力するようにする。同時に、顔検出装置の制御端子にも接続されているゲート回路制御信号もオンになり、顔検出装置は顔検出を行う。
【００５０】
この顔検出装置は公知の技術によって実現できる。例えば、特開平７−７３２９８、ＵＳＰ４７６８０８８などに開示されている技術を用いれば良い。
【００５１】
そしてＭＰＵ１は、顔検出装置の処理の終了を待つ。いま顔検出装置は処理が終了したならば所定の信号を出力するように設計されているので、ＭＰＵ１はこの信号がモニターし、顔検出装置の処理が終了を判断する。顔検出装置の処理が終了したならば、顔検出装置からその処理結果を読み込む。
【００５２】
（第三の実施の形態）
図６に本発明の実施の形態のブロック図を示す。１はＭＰＵ（マイクロプロセッシングユニット）、２はメモリー、３はＥＥＰＲＯＭセンサー、５は受光レンズ、６はイメージセンサー、７は読み出し用のアンプである。
【００５３】
図６において、イメージセンサー５の出力は読み出し用アンプ７を介してマイコンのＡ／Ｄ変換入力端子に接続されており、ここでＡ／Ｄ変換された値がＭＰＵ１に読み込まれる。また、図７にセンサーの構成の概略を示す。図７において、６０はセンサーのイメージゾーン、６３０、６３１は第一第二のメモリーゾーン、６４０、６４１は第一第二の読み出し用のシフトレジスタ、６５はセンサーのドライバー、６８０は画像処理部である。
【００５４】
ＭＰＵからの駆動パルスや通信はこのドライバーに対して与えられ、ドライバーがセンサーや画像処理回路を実際に駆動する。なお、このセンサーは、センサー部、メモリー部、画像処理部などをワンチップ上に形成している。
【００５５】
そのシーケンスを図８に示すフローチャートを用いて説明する。
なお本実施の形態においては、ＭＰＵ１の外部に顔検出装置を設けず、ＭＰＵ１において顔検出の処理を行う。
【００５６】
カメラのメインスイッチがオンするなどして、カメラのメインシーケンスが開始されると、ＭＰＵ１は初期処理の一連の動作の中で不図示のＥＥＰＲＯＭから、各種のパラメータを読み込み、メモリー２の所定のアドレスに格納する。
そして、不図示のスイッチがオンされるなどして顔検出の動作を撮影者が開始させる状態にしたなら、処理で用いる変数の初期化などを行う。
【００５７】
そののち、ＭＰＵ１は顔検出を行う領域を限定するための処理に用いる信号を得るための処理を開始する。はじめに、第一の予備蓄積を行う。まず、イメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。
【００５８】
この転送パルスの出力によって第一の予備蓄積が開始される。そして所定時間が経過したならば、センサーを第二の転送の状態に設定したのち、読み出しパルスをセンサーに与え、イメージセンサーの電荷を第一のメモリーゾーンヘ転送する。この所定時間は、他のセンサー（例えば、ＡＥセンサー）の出力をもとに決定する。
【００５９】
ついで、第二の予備蓄積を行う。上述の第一のメモリーゾーンヘの転送により第二の予備蓄積が開始される。そして所定時間が経過したならば、センサーを第二の転送の状態に設定したのち、読み出そパルスをセンサーに与え、イメージセンサーの電荷を第一のメモリーゾーンヘ、第一のメモリーゾーンの電荷を第二のメモリーゾーンヘ転送する。
【００６０】
この転送が終了したならば、センサーへの通信によりセンサー上の画像処理機能をオンにする。
ついで、ＭＰＵは顔検出を行う領域を選択する処理に移る。これはセンサーから信号を読み出しながら行う。
【００６１】
ＭＰＵ１はセンサーを読み出しの状態に設定したのち、読み出しパルスをセンサーに与え、画像処理された信号の読み出しを行う。これにより、切り替えスイッチ６７１がオン、切り替えスイッチ６７２がオフされる。よって、第一第二のメモリーゾーン転送された電荷は、センサーに入力された読み出しパルスによって、第一第二のシフトレジスタ６４０、６４１を介して画像処理回路６８０に転送され、この回路で画像処理されたのちに、その処理結果が読み出される。
【００６２】
この画像処理回路（相関演算）は、第一第二のメモリーゾーンに記憶された信号の差の絶対値を計算するものである。よって、第一、第二の信号を蓄積する時点で、動いたものがあると、その部分の信号直が大きくなる。すなわち、画像処理回路の出力を読み込むことで動いているものが有るか、それが画面のどの領域に有るかを知ることが出来る。
【００６３】
本実施の形態においては、この相関演算された信号を用いて、ものが動いてし渇領域を検出することで顔検出を行う領域の推定を行う。ものが動いているということは、その領域に人がいて動いていると考えることが出来るからである。
【００６４】
よって、まずＭＰＵ１は読み出しパルスを与えながらＡ／Ｄ変換端子から信号を読み込み、その値がしきい値を超えるか否かを判定する。しきい値を超えた画素は、その値と位置をメモリ２に記憶しておく。
【００６５】
なお、このしきい値は比較的低い値に設定しＥＥＰＲＯＭに記憶しておき、初期化の処理の際に読み込むようになっている。また、画面全体のコントラストを評価するために読み込んだ信号の最大値と最小値を求め、メモリ２に記憶しておく。
【００６６】
そして、全ての信号を読み込んだあと、記憶されているしきい値を超えた画素の再評価を行う。これはコントラストの大きな時には実際に動いているものがない領域でも、ノイズなどにより相関値がある大きさを持つことがあるからである。
【００６７】
よって、ＭＰＵ１は記憶されて読み込んだ信号の最大値と最小値よりその差を求め、その値に応じて記憶されているしきい値を超えた画素の中で不適切なものを排除する。これは最大悼と最小値の差で記憶されているしきい値を超えた画素の信号値を正規化する。
【００６８】
すなわち、最大値と最小値の差をｄｅｌｔａ、記憶されているしきい値を超えた画素の信号値をＳｉｇ［ｉ］としたとき、正規化された信号値ＳｉｇＮ［ｉ］は、
ＳｉｇＮ［ｉ］＝Ｓｉｇ［ｉ］／ｄｅｌｔａ
と求められる。
【００６９】
そしてこの正規化された信号値と正規化されたしきい値とを比較し、しきい値を超えるものを顔検出を行う領域として選択する。なお、この正規化されたしきい値もＥＥＰＲＯＭに記憶しておき、初期化の処理の際に読み込むようになっている。
【００７０】
顔検出を行う領域の選択が終了したならば、顔検出を行う信号を得るための蓄積（本蓄積）を行う。
まず、イメージセンサーに残っている電荷をリセットする処理を行う。これはリセット通信を行いリセット可能な状態にセンサーを設定したのち、リセットパルス及び転送パルスをセンサーに与えることで行う。
【００７１】
また、この転送パルスの出力によって本蓄積が開始される。そして所定時間が経過したならば、センサーを読み出しの状態に設定にする。第一第二の予備蓄積と同様に、この所定時問は他のセンサー（例えば、ＡＥセンサー）の出力をもとに決定する。
【００７２】
顔検出は画像処理されていない信号を用いて行うので、ＭＰＵ１はセンサーに対して通信を行い、センサー上の画像処理機能をオフにする。これにより、切り替えスイッチ６７１がオン、切り替えスイッチ６７がオフされる。よって、イジジゾーンに蓄積された電荷は、センサーに転送パルスが入力されると、第一のメモリーゾーン６３０に転送され、更に第一のシフトレジスタ６４０を介して読み出される。
【００７３】
よって、ＭＰＵは通信によりセンサー読み出しの設定をしたのち、読み出しパルスをセンサーに与え、画像処理されていない信号の読み出しを行う。この転送パルスは、実際に有効な信号を読み出すときに用いる本読み出しパルスと、信号を読み飛ばすときに用いる早読み出しパルスがある。
【００７４】
本読み出しパルスのパルス幅（周期）は、顔検出処理を行うに十分な信号を得るように設定される。これに対して、早読み出しパルスのパルス幅（周期）は電荷を転送するに十分なものであれば良いので、本読み出しパルスのパルス幅（周期）に比べかなり短くなる。
【００７５】
すなわち、早読みパルスによって読み出される信号は、顔検出処理を行うことが出来ない意味の無い信号になっても構わないものとする。
ＭＰＵは顔検出を行う領域に達するまでは早読みパルスを出力し、信号の読み飛ばしを行い、顔検出を行う領域に達したならば本読みパルスを出力する。
【００７６】
そして、その信号をＡ／Ｄ変換しながら顔検出の処理を行う。顔検出を行う領域が複数ある場合は、次の顔検出を行う領域に達するまでは早読みパルスを出力して信号の読み飛ばしを行い、次の顔検出を行う領域に達したならば本読みパルスを出力し、その信号をＡ／Ｄ変換しながら顔検出の処理を行う。
【００７７】
以下、全ての顔検出を行う領域についての処理が終了するまで、同様の処理を行う。この顔検出に関する処理は公知の技術によって実現できる。例えば、特開平７−７３２９８、ＵＳＰ４７６８０８８などに開示されている技術を用いれば良い。
【００７８】
【発明の効果】
以上説明してきたように、本発明においては、Ｃ−ＭＯＳでセンサーを構成し、センサー部、メモリー部、画像処理部などをワンチップ上に形成し、センサーの受光領域を複数に分割し各々のブロックの代表値をセンサー上の画像処理機能により算出し、その信号読み出し顔検出処理を行う領域を限定する前処理を行い、限定された領域において顔検出を行うことにより、顔検出の精度を維持したまま、演算の高速化を可能にした。
【００７９】
また、比較的処理能力の低いマイコンを用いた場合においても、小さな回路規模で実時間での顔検出を可能にした。
【図面の簡単な説明】
【図１】本発明の第１及び第２の実施の形態のブロック図である。
【図２】第１の実施の形態のセンサー内部構造の概略図である。
【図３】第１の実施の形態の動作の説明図である。
【図４】第２の実施の形態のセンサー内部構造の概略図である。
【図５】第２の実施の形態の動作の説明図である。
【図６】本発明の第３の実施の形態のブロック図である。
【図７】第３の実施の形態のセンサー内部構造の概略図である。
【図８】第３の実施の形態の動作の説明図である。
【符号の説明】
１  ＭＰＵ（マイクロプロセッシングユニット）
２  メモリー
３  ＥＥＰＲＯＭセンサー
４  顔検出装置
５  受光レンズ
６  イメージセンサー
７  読み出し用のアンプ
８  読み出し用アンプの出力信号の顔検出装置への入力を制御するゲート回路
６０  センサーのイジジゾーン
６１  画像処理部
６２  読み出し用のシフトレジスタ
６４  読み出し用のシフトレジスタ
６３  メモリーゾーン
６５  センサーのドライバー
６８  画像処理部
６６  切り替えスイッチ
６７  切り替えスイッチ
６９  読み出し用のシフトレジスタ
６３０  第一第二のメモリーゾーン
６３１  第一第二のメモリーゾーン
６４０  第一第二の読み出し用のシフトレジスタ
６４１  第一第二の読み出し用のシフトレジスタ
６８０  画像処理部
【図１】
2004171047.tif 000003
【図２】
2004171047.tif 000004
【図３】
2004171047.tif 000005
【図４】
2004171047.tif 000006
【図５】
2004171047.tif 000007
【図６】
2004171047.tif 000008
【図７】
2004171047.tif 000009
【図８】
2004171047.tif 000010