(57)【要約】【構成】ＣＰＵ２６は、繰り返し取り込まれる被写界像の各々を用いて、既定の顔模様が撮像面側に現れた人物の顔部を被写界から探索する。探索処理によって発見された顔部の属性（顔サイズ，顔位置，顔向き）は、テーブルＴＢＬ１〜ＴＢＬ５に登録される。ＣＰＵ２６は、既定の顔模様が消失した顔部が存在するか否かを、テーブルＴＢＬ１〜ＴＢＬ５に登録された属性を参照して判別する。判別結果が否定的な結果から肯定的な結果に更新されると、ＣＰＵ２６は、顔模様が消失した顔部の現在位置をテーブルＴＢＬ１〜ＴＢＬ５に登録された属性を参照して予測し、予測された位置に対応する一部のエリアを優先探索エリアとして設定する。【効果】人物の顔部の探索性能が向上する。【選択図】図１
2010141372.tif 000002
【特許請求の範囲】
【請求項１】
繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索手段、
前記探索手段によって発見された物体の属性を登録する登録手段、
前記既定模様が消失した物体が存在するか否かを前記登録手段によって登録された属性を参照して判別する第１判別手段、
前記第１判別手段の判別結果が否定的な結果から肯定的な結果に更新されたとき前記既定模様が消失した物体の現在位置を前記登録手段によって登録された属性を参照して予測する予測手段、および
前記予測手段によって予測された位置に対応する一部のエリアを前記探索手段の優先探索エリアとして設定する第１設定手段を備える、物体探索装置。
【請求項２】
前記既定模様が現れた物体が存在するか否かを前記登録手段によって登録された属性を参照して判別する第２判別手段、および
前記第２判別手段の判別結果が否定的な結果から肯定的な結果に更新されたとき前記既定模様が現れた物体の位置に対応する一部のエリアを前記探索手段の優先探索エリアとして設定する第２設定手段をさらに備える、請求項１記載の物体探索装置。
【請求項３】
前記物体は前記既定模様に基づいて判別可能な指向性を有し、
前記登録手段によって登録される属性は前記物体の向きを示す向き情報と前記物体の位置を示す位置情報とを含み、
前記予測手段は前記向き情報および前記位置情報を参照して前記現在位置を予測する、請求項１または２記載の物体探索装置。
【請求項４】
前記既定模様は人物の顔模様に相当し、前記物体は人物の顔部に相当する、請求項１ないし３のいずれかに記載の物体探索装置。
【請求項５】
被写界を捉える撮像面を有し、被写界像を繰り返し出力する撮像手段、および
前記探索手段の優先検索エリアに対応するエリアを撮像パラメータの調整のために注目する調整エリアとして設定する調整エリア設定手段をさらに備える、請求項１ないし４のいずれかに記載の物体探索装置。
【請求項６】
物体探索装置のプロセッサに、
繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索ステップ、
前記探索ステップによって発見された物体の属性を登録する登録ステップ、
前記既定模様が消失した物体が存在するか否かを前記登録ステップによって登録された属性を参照して判別する判別ステップ、
前記判別ステップの判別結果が否定的な結果から肯定的な結果に更新されたとき前記既定模様が消失した物体の現在位置を前記登録ステップによって登録された属性を参照して予測する予測ステップ、および
前記予測ステップによって予測された位置に対応する一部のエリアを前記探索ステップの優先探索エリアとして設定する設定ステップを実行させるための、物体探索プログラム。
【請求項７】
物体探索装置によって実行される物体探索方法であって、
繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索ステップ、
前記探索ステップによって発見された物体の属性を登録する登録ステップ、
前記既定模様が消失した物体が存在するか否かを前記登録ステップによって登録された属性を参照して判別する判別ステップ、
前記判別ステップの判別結果が否定的な結果から肯定的な結果に更新されたとき前記既定模様が消失した物体の現在位置を前記登録ステップによって登録された属性を参照して予測する予測ステップ、および
前記予測ステップによって予測された位置に対応する一部のエリアを前記探索ステップの優先探索エリアとして設定する設定ステップを備える、物体探索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、物体探索装置に関し、特にディジタルカメラに適用され、繰り返し取り込まれる被写界像の各々を走査して既定模様が現れた物体を被写界から探索する、物体探索装置に関する。
【背景技術】
【０００２】
この種の装置の一例が、特許文献１に開示されている。この背景技術によれば、被写界像は、イメージセンサから繰り返し出力される。ＣＰＵは、人物の顔の画像がイメージセンサから出力される被写界像に存在するか否かを、シャッタボタンの半押しに先立って繰り返し判別する。判別結果を含む顔検出履歴は、ＣＰＵによって顔検出履歴テーブルに作成される。ＣＰＵは、シャッタボタンが半押しされたとき、顔検出履歴テーブルに記述された顔検出履歴に基づいて顔画像位置を決定する。フォーカスなどの撮像条件は、決定された顔画像位置に注目して調整される。
【特許文献１】特開２００８−１８７４１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、背景技術では、顔検出履歴テーブルに記述された顔検出履歴が人物の顔の探索動作に反映されることはない。このため、人物の顔のように模様が向きによって消失し得る物体の探索性能に限界がある。
【０００４】
それゆえに、この発明の主たる目的は、既定模様が消失し得る物体の探索性能を向上させることができる、物体探索装置を提供することである。
【課題を解決するための手段】
【０００５】
この発明に従う物体探索装置(10：実施例で相当する参照符号。以下同じ)は、繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索手段(S31~S43, S47~S53)、探索手段によって発見された物体の属性を登録する登録手段(S45)、既定模様が消失した物体が存在するか否かを登録手段によって登録された属性を参照して判別する第１判別手段(S69~S71)、第１判別手段の判別結果が否定的な結果から肯定的な結果に更新されたとき既定模様が消失した物体の現在位置を登録手段によって登録された属性を参照して予測する予測手段(S77~S81, S85~S87)、および予測手段によって予測された位置に対応する一部のエリアを探索手段の優先探索エリアとして設定する第１設定手段(S83)を備える。
【０００６】
探索手段は、繰り返し取り込まれる被写界像の各々を用いて、既定模様が現れた物体を被写界から探索する。探索手段によって発見された物体の属性は、登録手段によって登録される。第１判別手段は、既定模様が消失した物体が存在するか否かを、登録手段によって登録された属性を参照して判別する。予測手段は、第１判別手段の判別結果が否定的な結果から肯定的な結果に更新されたとき、既定模様が消失した物体の現在位置を登録手段によって登録された属性を参照して予測する。第１設定手段は、予測手段によって予測された位置に対応する一部のエリアを、探索手段の優先探索エリアとして設定する。
【０００７】
被写界像を用いて探索されるのは既定模様が現れた物体であるため、既定模様が消失した物体は探索不能となる。このときは、既定模様が現れていたときの物体の属性に基づいて、既定模様が消失した物体の現在位置が予測される。探索手段は、予測された位置に対応する一部のエリアを優先的に探索する。これによって、既定模様が消失し得る物体の探索性能が向上する。
【０００８】
好ましくは、既定模様が現れた物体が存在するか否かを登録手段によって登録された属性を参照して判別する第２判別手段(S65)、および第２判別手段の判別結果が否定的な結果から肯定的な結果に更新されたとき既定模様が現れた物体の位置に対応する一部のエリアを探索手段の優先探索エリアとして設定する第２設定手段(S67)がさらに備えられる。
【０００９】
好ましくは、物体は既定模様に基づいて判別可能な指向性を有し、登録手段によって登録される属性は物体の向きを示す向き情報と物体の位置を示す位置情報とを含み、予測手段は向き情報および位置情報を参照して現在位置を予測する。
【００１０】
好ましくは、既定模様は人物の顔模様に相当し、物体は人物の顔部に相当する。
【００１１】
好ましくは、被写界を捉える撮像面を有し、被写界像を繰り返し出力する撮像手段(16)、および探索手段の優先検索エリアに対応するエリアを撮像パラメータの調整のために注目する調整エリアとして設定する調整エリア設定手段(S97)をさらに備える。
【００１２】
この発明に従う物体探索プログラムは、物体探索装置(10)のプロセッサ(26)に、繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索ステップ(S31~S43, S47~S53)、探索ステップによって発見された物体の属性を登録する登録ステップ(S45)、既定模様が消失した物体が存在するか否かを登録ステップによって登録された属性を参照して判別する判別ステップ(S69~S71)、判別ステップの判別結果が否定的な結果から肯定的な結果に更新されたとき既定模様が消失した物体の現在位置を登録ステップによって登録された属性を参照して予測する予測ステップ(S77~S81, S85~S87)、および予測ステップによって予測された位置に対応する一部のエリアを探索ステップの優先探索エリアとして設定する設定ステップ(S83)を実行させるための、物体探索プログラムである。
【００１３】
この発明に従う物体探索方法は、物体探索装置(10)によって実行される物体探索方法であって、繰り返し取り込まれる被写界像の各々を用いて既定模様が現れた物体を被写界から探索する探索ステップ(S31~S43, S47~S53)、探索ステップによって発見された物体の属性を登録する登録ステップ(S45)、既定模様が消失した物体が存在するか否かを登録ステップによって登録された属性を参照して判別する判別ステップ(S69~S71)、判別ステップの判別結果が否定的な結果から肯定的な結果に更新されたとき既定模様が消失した物体の現在位置を登録ステップによって登録された属性を参照して予測する予測ステップ(S77~S81, S85~S87)、および予測ステップによって予測された位置に対応する一部のエリアを探索ステップの優先探索エリアとして設定する設定ステップ(S83)を備える。
【発明の効果】
【００１４】
この発明によれば、既定模様が消失した物体の現在位置は、既定模様が現れていたときの物体の属性に基づいて予測される。探索手段は、予測された位置に対応する一部のエリアを優先的に探索する。これによって、既定模様が消失し得る物体の探索性能が向上する。
【００１５】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００１６】
図１を参照して、この実施例のディジタルカメラ１０は、ドライバ１８ａおよび１８ｂによってそれぞれ駆動されるフォーカスレンズ１２および絞りユニット１４を含む。これらの部材を経た被写界の光学像は、イメージャ１６の撮像面に照射され、光電変換を施される。これによって、被写界像を表す電荷が生成される。
【００１７】
キー入力装置２８上の電源キー２８ｐが操作されると、ＣＰＵ２６は、撮像タスクの下でスルー画像処理を開始するべく、ドライバ１８ｃに露光動作および間引き読み出し動作の繰り返しを命令する。ドライバ１８ｃは、図示しないＳＧ(Signal Generator)から周期的に発生する垂直同期信号Ｖｓｙｎｃに応答して、撮像面を露光し、かつ撮像面で生成された電荷の一部をラスタ走査態様で読み出す。イメージャ１６からは、読み出された電荷に基づく低解像度の生画像信号が周期的に出力される。
【００１８】
前処理回路２０は、イメージャ１６から出力された生画像信号にＣＤＳ(Correlated Double Sampling)，ＡＧＣ（Automatic Gain Control），Ａ／Ｄ変換などの処理を施し、ディジタル信号である生画像データを出力する。出力された生画像データは、メモリ制御回路３０を通してＳＤＲＡＭ３２の生画像エリア３２ａに書き込まれる。
【００１９】
後処理回路３４は、生画像エリア３２ａに格納された生画像データをメモリ制御回路３０を通して読み出し、読み出された生画像データに白バランス調整，色分離，ＹＵＶ変換などの処理を施す。これによって生成されたＹＵＶ形式の画像データは、メモリ制御回路３０を通してＳＤＲＡＭ３２のＹＵＶ画像エリア３２ｂに書き込まれる。
【００２０】
ＬＣＤドライバ３６は、ＹＵＶ画像エリア３２ｂに格納された画像データをメモリ制御回路３０を通して繰り返し読み出し、読み出された画像データに基づいてＬＣＤモニタ３８を駆動する。この結果、被写界のリアルタイム動画像（スルー画像）がモニタ画面に表示される。
【００２１】
図２を参照して、撮像面の中央には評価エリアＥＶＡが割り当てられる。評価エリアＥＶＡは水平方向および垂直方向の各々において１６分割され、２５６個の分割エリアが評価エリアＥＶＡを形成する。また、前処理回路２０は、上述した処理に加えて、生画像データを簡易的にＲＧＢデータに変換する簡易ＲＧＢ変換処理を実行する。
【００２２】
ＡＥ／ＡＷＢ評価回路２２は、前処理回路２０によって生成されたＲＧＢデータのうち評価エリアＥＶＡに属するＲＧＢデータを、垂直同期信号Ｖｓｙｎｃが発生する毎に積分する。これによって、２５６個の積分値つまり２５６個のＡＥ／ＡＷＢ評価値が、垂直同期信号Ｖｓｙｎｃに応答してＡＥ／ＡＷＢ評価回路２２から出力される。
【００２３】
また、ＡＦ評価回路２４は、前処理回路２０から出力されたＲＧＢデータのうち同じ評価エリアＥＶＡに属するＧデータの高周波成分を抽出し、抽出された高域周波数成分を垂直同期信号Ｖｓｙｎｃが発生する毎に積分する。これによって、２５６個の積分値つまり２５６個のＡＦ評価値が、垂直同期信号Ｖｓｙｎｃに応答してＡＦ評価回路２４から出力される。
【００２４】
ＣＰＵ２６は、ＡＥ／ＡＷＢ評価回路２２からの出力に基づくスルー画像用ＡＥ／ＡＷＢ処理をスルー画像処理と並列して実行し、適正ＥＶ値および適正白バランス調整ゲインを算出する。算出された適正ＥＶ値を定義する絞り量および露光時間は、ドライバ１８ｂおよび１８ｃにそれぞれ設定される。また、算出された適正白バランス調整ゲインは、後処理回路３４に設定される。この結果、スルー画像の明るさおよび白バランスが適度に調整される。
【００２５】
ＣＰＵ２６はまた、スルー画像処理と並列するコンティニュアスＡＦタスクの下で、ＡＦ評価回路２４からの出力に基づくスルー画像用ＡＦ処理を実行する。フォーカスレンズ１２は、ＡＦ評価回路２４の出力がＡＦ起動条件を満足するとき、ドライバ１８ａによって合焦点に設定される。これによって、スルー画像のフォーカスが適度に調整される。
【００２６】
シャッタボタン２８ｓが半押しされると、ＣＰＵ２６は、コンティニュアスＡＦタスクを中断し、記録用ＡＦ処理を撮像タスクの下で実行する。記録用ＡＦ処理もまたＡＦ評価回路２４の出力に基づいて実行される。これによって、フォーカスが厳格に調整される。ＣＰＵ２６は続いて、ＡＥ／ＡＷＢ評価回路２２の出力に基づいて記録用ＡＥ処理を実行し、最適ＥＶ値を算出する。算出された最適ＥＶ値を定義する絞り量および露光時間は、上述と同様、ドライバ１８ｂおよび１８ｃにそれぞれ設定される。この結果、スルー画像の明るさが厳格に調整される。
【００２７】
シャッタボタン２８ｓが全押しされると、ＣＰＵ２６は、記録処理のために、ドライバ１８ｃに露光動作および全画素読み出し動作を１回ずつ実行することを命令し、さらにＩ／Ｆ４０を起動する。ドライバ１８ｃは、垂直同期信号Ｖｓｙｎｃに応答して撮像面を露光し、これによって生成された電荷の全てをラスタ走査態様で撮像面から読み出す。イメージャ１６からは、高解像度を有する１フレームの生画像信号が出力される。
【００２８】
イメージャ１６から出力された生画像信号は前処理回路２０によって生画像データに変換され、変換された生画像データはメモリ制御回路３０によってＳＤＲＡＭ３２の記録画像エリア３２ｃに書き込まれる。ＣＰＵ２６は、記録画像エリア３２ｃに格納された生画像データに基づいて最適白バランス調整ゲインを算出する記録用ＡＥ／ＡＷＢ処理を実行し、算出された最適白バランス調整ゲインを後処理回路３４に設定する。
【００２９】
後処理回路３４は、生画像エリア３２ａに格納された生画像データをメモリ制御回路３０を通して読み出し、読み出された生画像データを最適白バランスを有するＹＵＶ形式の画像データに変換し、変換された画像データをメモリ制御回路３０を通して記録画像エリア３２ｃに書き込む。Ｉ／Ｆ４０は、こうして記録画像エリア３２ｃに格納された画像データをメモリ制御回路３０を通して読み出し、読み出された画像データをファイル形式で記録媒体４２に記録する。
【００３０】
なお、スルー画像処理は、高解像度を有する生画像データが記録画像エリア３２ｃに確保された時点で再開される。コンティニュアスＡＦタスクもまた、この時点で再起動される。
【００３１】
ＣＰＵ２６は、スルー画像処理と並列して実行される顔検出タスクおよび優先探索エリア制御タスクの下で、ＳＤＲＡＭ３２の生画像エリア３２ａに格納された低解像度の生画像データから人物の顔部を繰り返し探索する。これらのタスクのために、図３に示す辞書ＤＩＣ，図４に示す複数の顔検出枠ＦＤ＿１，ＦＤ＿２，ＦＤ＿３，…および図５に示す５つのテーブルＴＢＬ１〜ＴＢＬ５が準備される。
【００３２】
図３によれば、複数の顔パターンＦＰ＿１，ＦＰ＿２，…が辞書ＤＩＣに登録される。登録された顔パターンＦＰ＿１，ＦＰ＿２，…の各々には、顔の向きを示す向き情報が割り当てられる。また、図４によれば、顔検出枠ＦＤ＿１，ＦＤ＿２，ＦＤ＿３，…は、互いに異なる形状および／または大きさを有する。さらに、図５に示すテーブルＴＢＬ１〜ＴＢＬ５の各々は、顔情報（属性情報）を記述するためのテーブルに相当し、顔の位置（顔画像が検出された時点の顔検出枠の位置）を記述するカラムと、顔のサイズ（顔画像が検出された時点の顔検出枠のサイズ）を記述するカラムと、顔の向き（検出された顔画像に適合する顔パターンに割り当てられた顔の向き）を記述するカラムとによって形成される。
【００３３】
顔検出タスクにおいては、まずテーブルＴＢＬ１が現フレームの顔情報を記述する現フレームテーブルとして指定される。ただし、指定されるテーブルはテーブルＴＢＬ１〜ＴＢＬ５の間で１フレーム毎にかつ循環的に更新され、現フレームテーブルは次フレームにおいて前フレームテーブルとなる。
【００３４】
垂直同期信号Ｖｓｙｎｃが発生すると、変数Ｎｍａｘの値が変数Ｍｍａｘに設定される。変数Ｎｍａｘは、優先探索エリア制御タスクの下で設定された優先探索エリアの数を示す変数である。たとえば、Ｎｍａｘ＝２は２つの優先探索エリアが設定されていることを示し、Ｎｍａｘ＝０は優先探索エリアが非設定であることを示す。
【００３５】
変数Ｍｍａｘが“１”以上であれば、まず変数Ｍが“１”に設定され、Ｍ番目の優先探索エリアが探索エリアとして指定される。顔画像の探索処理は指定探索エリア上で実行され、発見された顔画像に対応する顔情報は現フレームテーブルに記述される。指定探索エリア上での探索処理が完了すると、変数Ｍがインクリメントされる。Ｍ番目の優先探索エリアに注目した探索処理は、インクリメントされた変数Ｍが変数Ｍｍａｘを上回るまで繰り返し実行される。
【００３６】
インクリメントされた変数Ｍが変数ｍａｘを上回ったとき、或いは変数Ｍｍａｘが“０”であるときは、変数Ｍが“０”に設定され、評価エリアＥＶＡ全域が探索エリアとして指定される。ただし、優先探索エリアが設定されている場合（変数Ｍｍａｘが“１”以上の場合）は、評価エリアＥＶＡのうち優先探索エリアを除くエリアが探索エリアとして指定される。
【００３７】
Ｍ＝０に対応する探索処理が完了すると、指定テーブルが更新され、かつ更新後の指定テーブルが初期化される。次フレームの探索処理は、垂直同期信号Ｖｓｙｎｃの発生に応答して開始される。
【００３８】
探索処理では、まず変数Ｋが“１”に設定され、顔検出枠ＦＤ＿Ｋが指定探索エリアの左上つまり顔検出開始位置に配置される。次に、ＳＤＲＡＭ３２の生画像エリア３２ａに格納された現フレームの生画像データのうち、顔検出枠ＦＤ＿Ｋに属する部分画像データが、図３に示す辞書ＤＩＣに記述された複数の顔パターンＦＰ＿１，ＦＰ＿２，…の各々と照合される。注目する部分画像がいずれかの顔パターンに適合すると判別されれば、顔検出枠ＦＤ＿Ｋの現在位置およびサイズと適合する顔パターンに割り当てられた顔の向きとが顔情報として現フレームテーブルに記述される。
【００３９】
顔検出枠ＦＤ＿Ｋは、指定探索エリア上をラスタ方向に既定量ずつ移動され、指定探索エリア上の複数の位置で上述のような照合処理を施される。そして、人物の顔画像が発見される毎に、発見された顔画像に対応する顔情報（つまり顔検出枠ＦＤ＿Ｋの現在位置およびサイズと適合する顔パターンに割り当てられた顔の向き）が現フレームテーブルに記述されていく。
【００４０】
顔検出枠ＦＤ＿Ｋが指定探索エリアの右下つまり顔検出終了位置に達すると、変数Ｋが更新され、更新された変数Ｋの値に対応する顔検出枠ＦＤ＿Ｋが顔検出開始位置に再配置される。上述と同様、顔検出枠ＦＤ＿Ｋは指定探索エリア上をラスタ方向に移動し、照合処理によって検出された顔画像に対応する顔情報は現フレームテーブルに記述される。照合処理は、顔検出枠ＦＤ＿Ｋｍａｘ（Ｋｍａｘ：末尾の顔検出枠の番号）が顔検出終了位置に達するまで繰り返し実行される。
【００４１】
したがって、優先探索エリアが設定されていない場合、探索処理は、図７に示す要領で評価エリアＥＶＡ全域に対して実行される。また、図８（Ａ）および図８（Ｂ）に示すように２つの優先探索エリアＰＳＡ１およびＰＳＡ２が設定されている場合、探索処理は、まず優先探索エリアＰＳＡ１に対して実行され、次に優先探索エリアＰＳＡ２に対して実行される（図８（Ａ）参照）。探索処理はその後、優先探索エリアＰＳＡ１およびＰＳＡ２を除いて、評価エリアＥＶＡ全域に対して実行される（図８（Ｂ）参照）。
【００４２】
優先探索エリア制御タスクでは、顔情報が確定している前フレームテーブルが指定される。前フレームテーブルに顔情報が登録されていれば、優先探索エリアを定義する位置およびサイズが図６に示すレジスタＲＧＳＴ１に記述される。優先探索エリアは、顔情報によって定義された顔サイズよりも大きいサイズ（具体的には頭部を覆い得るサイズ）を有するように、顔情報によって定義された顔位置に設定される。
【００４３】
続いて、前フレームにおいて消失した顔画像が存在するか否かが、過去数フレームのテーブルに登録された顔情報を参照して判別される。前フレームにおいて消失した顔画像が存在しなければ、レジスタＲＧＳＴ１に設定された優先探索エリアの数が変数Ｎｍａｘに設定される。
【００４４】
前フレームにおいて消失した顔画像が存在すれば、消失した顔画像の数が変数Ｐｍａｘに設定され、変数Ｐが“１”に設定される。続いて、Ｐ番目の顔画像の現在位置およびサイズが過去数フレームのテーブルに登録された顔情報に基づいて予測され、優先探索エリアがレジスタＲＧＳＴ１に記述される。優先探索エリアは、予測されたサイズよりも大きいサイズ（頭部を覆い得るサイズ）を有して、予測された位置に設定される。
【００４５】
Ｐ番目の顔画像に対する優先探索エリアの設定が完了すると、変数Ｐがインクリメントされる。消失した顔画像に対する優先探索エリアの設定処理は、インクリメントされた変数Ｐが変数Ｐｍａｘを上回るまで繰り返し実行される。変数Ｐが変数Ｐｍａｘを上回ると、レジスタＲＧＳＴ１に設定された優先探索エリアの数が変数Ｎｍａｘに設定される。
【００４６】
顔検出タスクの下での探索処理は、こうして設定された変数ＮｍａｘとレジスタＲＧＳＴ１に設定された優先探索エリアとを参照して実行される。
【００４７】
したがって、人物ＨＭ１およびＨＭ２が図９（Ａ）→図９（Ｂ）→図１０（Ａ）→図１０（Ｂ）の順で被写界を移動した場合は、次の要領で優先探索エリアＰＳＡ１およびＰＳＡ２が設定される。
【００４８】
まず図９（Ａ）に示す状態では、人物ＨＭ１の顔検出に成功する。この結果、検出された顔のサイズよりも大きい優先探索エリアＰＳＡ１が、検出された顔位置に設定される。人物ＨＭ１の頭部は、設定された優先探索エリアＰＳＡ１によって覆われる。
【００４９】
被写界の状態が図９（Ｂ）に遷移すると、人物ＨＭ２の顔検出には成功するものの、人物ＨＭ１の顔検出には失敗する。このため、優先探索エリアＰＳＡ１は、検出された人物ＨＭ２の顔位置に対応して、人物ＨＭ２の顔ないし頭部を覆うように設定される。一方、優先探索エリアＰＳＡ２の設定にあたっては、これまでに検出された人物ＨＭ１の顔情報に基づいて人物ＨＭ１の顔の現在位置が予測される。優先探索エリアＰＳＡ２は、人物ＨＭ１の顔ないし頭部を覆うサイズを有して、予測された顔位置に設定される。
【００５０】
被写界の状態が図１０（Ａ）に遷移すると、今度は、人物ＨＭ１の顔検出には成功するものの、人物ＨＭ２の顔検出には失敗する。したがって、優先探索エリアＰＳＡ１は、検出された人物ＨＭ１の顔位置に対応して、人物ＨＭ１の顔ないし頭部を覆うように設定される。これに対して、優先探索エリアＰＳＡ２の設定にあたっては、上述と同様、これまでに検出された人物ＨＭ２の顔情報に基づいて人物ＨＭ２の顔の現在位置が予測される。優先探索エリアＰＳＡ２は、人物ＨＭ２の顔ないし頭部を覆うサイズを有して、予測された顔位置に設定される。
【００５１】
被写界の状態が図１０（Ｂ）に遷移すると、人物ＨＭ２の顔検出には成功する。優先探索エリアＰＳＡ１は、検出された人物ＨＭ２の顔位置に対応して、人物ＨＭ２の顔ないし頭部を覆うように設定される。
【００５２】
このような顔検出タスクおよび優先探索エリア制御タスクと並列して、ＣＰＵ４０は、ＡＥ／ＡＷＢ処理およびＡＦ処理のために参照されるパラメータ調整エリアの位置および形状を定義する調整エリア制御タスクを実行する。
【００５３】
調整エリア制御タスクでは、前フレームにおいて設定された優先探索エリアが存在するか否かが垂直同期信号Ｖｓｙｎｃの発生に応答して判別される。少なくとも１つの優先探索エリアが存在すれば、評価エリアＥＶＡを形成する２５６個の分割エリアのうち優先探索エリアを覆う一部の分割エリアが、パラメータ調整エリアＡＤＪとして定義される。これに対して、優先探索エリアが１つも存在しなければ、評価エリアＥＶＡ全体がパラメータ調整エリアＡＤＪとして定義される。
【００５４】
上述したスルー画像用ＡＥ／ＡＷＢ処理および記録用ＡＥ／ＡＷＢ処理は、ＡＥ／ＡＷＢ評価回路２２から出力された２５６個のＡＥ／ＡＷＢ評価値のうち、パラメータ調整エリアＡＤＪに属するＡＥ／ＡＷＢ評価値に基づいて実行される。また、スルー画像用ＡＦ処理および記録用ＡＦ処理も、ＡＦ評価回路２４から出力された２５６個のＡＦ評価値のうち、パラメータ調整エリアＡＤＪに属するＡＦ評価値に基づいて実行される。これによって、露光量やフォーカスなどの撮像パラメータの調整精度が向上する。
【００５５】
ＣＰＵ２６は、図１１〜図１３に示す顔検出タスク，図１４〜図１５に示す優先探索エリア制御タスク，図１６に示す調整エリア制御タスクを含む複数のタスクを並列的に実行する。これらのタスクに対応する制御プログラムは、フラッシュメモリ４４に記憶される。
【００５６】
図１１を参照して、ステップＳ１ではテーブルＴＢＬ１〜ＴＢＬ５を初期化し、ステップＳ３ではテーブルＴＢＬ１を現フレームテーブルとして指定する。なお、現フレームテーブルは、後述するステップＳ２７の処理によってテーブルＴＢＬ１〜ＴＢＬ５の間で循環的に更新される。したがって、現フレームテーブルは次フレームにおいて前フレームテーブルとなる。
【００５７】
ステップＳ３では垂直同期信号Ｖｓｙｎｃが発生したか否かを判別し、判別結果がＮＯからＹＥＳに更新されるとステップＳ７でフラグＦＬＧを“０”に設定する。フラグＦＬＧは、優先探索エリア制御タスクの下で優先探索エリアの設定／非設定が確定したとき、“０”から“１”に更新される。フラグＦＬＧが“１”に更新されると、ステップＳ９からステップＳ１１に進み、優先探索エリア制御タスクの下で確定した変数Ｎｍａｘの値を変数Ｍｍａｘに設定する。
【００５８】
ステップＳ１３では、変数Ｍｍａｘの値を判別する。Ｍｍａｘ＝０であれば、優先探索エリアは設定されていないとみなし、そのままステップＳ２３に進む。Ｍｍａｘ≧１であれば、変数Ｍｍａｘに相当する数の優先探索エリアが設定されているとみなし、ステップＳ１５に進む。
【００５９】
ステップＳ１５では変数Ｍを“１”に設定し、ステップＳ１７では探索処理を実行する。探索処理は、レジスタＲＧＳＴ１に設定された優先探索エリアのうち変数Ｍに対応する優先探索エリアを指定して実行される。指定探索エリアから発見された顔画像に対応する顔情報は、現フレームテーブルに登録される。探索処理が完了すると、ステップＳ１９で変数Ｍをインクリメントし、インクリメントされた変数Ｍが変数Ｍｍａｘを上回るか否かをステップＳ２１で判別する。Ｍ≦ＭｍａｘであればステップＳ１７に戻り、Ｍ＞ＭｍａｘであればステップＳ２３に進む。
【００６０】
ステップＳ２３では変数Ｍを“０”に設定し、ステップＳ２５ではステップＳ１７と同様の探索処理を実行する。ここでは、評価エリアＥＶＡの全域（ただし、優先探索エリアを除く）が指定探索エリアとされ、発見された顔画像に対応する顔情報は上述と同様に現フレームテーブルに登録される。ステップＳ２７では、指定テーブルを更新しかつ更新された指定テーブルを初期化する。ステップＳ２７の処理が完了すると、ステップＳ５に戻る。
【００６１】
ステップＳ１７またはＳ２５の探索処理は、図１３に示すサブルーチンに従って実行される。まず、ステップＳ３１で変数Ｋを“１”に設定し、ステップＳ３３で顔検出枠ＦＤ＿Ｋを指定探索エリアの顔検出開始位置に配置し、そしてステップＳ３５で変数Ｌを“１”に設定する。ステップＳ３７では顔検出枠ＦＤ＿Ｋに属する部分画像を辞書ＤＩＣに登録された顔パターンＦＰ＿Ｌと照合し、ステップＳ３９では顔検出枠ＦＤ＿Ｋの部分画像が顔パターンＦＰ＿Ｌに適合するか否かを判別する。
【００６２】
ステップＳ３９でＮＯであればステップＳ４１で変数Ｌをインクリメントし、インクリメントされた変数Ｌが定数Ｌｍａｘ（Ｌｍａｘ：辞書ＤＩＣに登録された顔パターンの総数）を上回るか否かをステップＳ４３で判別する。Ｌ≦ＬｍａｘであればステップＳ３７に戻る一方、Ｌ＞ＬｍａｘであればステップＳ４７に進む。
【００６３】
ステップＳ３９でＹＥＳであればステップＳ４５に進み、顔検出枠ＦＤ＿Ｋの現時位置およびサイズと適合する顔パターンに割り当てられた顔の向きとを顔情報として現フレームテーブルに記述する。ステップＳ４５の処理が完了すると、ステップＳ４７に進む。
【００６４】
ステップＳ４７では、顔検出枠ＦＤ＿Ｋが指定探索エリアの顔検出終了位置に達したか否かを判別する。ここでＮＯであれば、ステップＳ４９で顔検出枠ＦＤ＿Ｋを既定量だけラスタ方向に移動させる。ただし、現時点の指定探索エリアが優先探索エリアを除く評価エリアＥＶＡの全域であれば、顔検出枠ＦＤ＿Ｋは、優先探索エリアを回避するように移動される。顔検出枠ＦＤ＿Ｋの移動が完了すると、ステップＳ３５に戻る。
【００６５】
一方、ステップＳ４７でＹＥＳであれば、ステップＳ５１で変数Ｋをインクリメントし、インクリメントされた変数Ｋが“Ｋｍａｘ”を上回るか否かをステップＳ５３で判別する。そして、Ｋ≦ＫｍａｘであればステップＳ３５に戻る一方、Ｋ＞Ｋｍａｘであれば上階層のルーチンに復帰する。
【００６６】
図１４を参照して、ステップＳ６１では垂直同期信号Ｖｓｙｎｃが発生したか否かを判別し、ＹＥＳであればステップＳ６３で前フレームテーブルを指定する。ステップＳ６５では、前フレームテーブルに顔情報が登録されているか否かを判別し、ＮＯであればそのままステップＳ６９に進む一方、ＹＥＳであればステップＳ６７の処理を経てステップＳ６９に進む。ステップＳ６７では、前フレームテーブルに登録された顔情報を参照して優先探索エリアを設定する。具体的には、優先探索エリアを定義する位置およびサイズを図６に示すレジスタＲＧＳＴ１に記述する。優先探索エリアは、顔情報を定義する顔サイズよりも大きいサイズを有するように、顔情報を定義する顔位置に設定される。
【００６７】
ステップＳ６９では、前フレームにおいて消失した顔画像が存在するか否かを過去数フレームのテーブルに登録された顔情報を参照して判別する。前フレームにおいて消失した顔画像が存在しなければ、ステップＳ７１でＮＯと判別してステップＳ７３に進む。一方、前フレームにおいて消失した顔画像が存在すれば、ステップＳ７３でＹＥＳと判別してステップＳ７７に進む。
【００６８】
ステップＳ７３では、ステップＳ６７で設定された優先探索エリアの数を変数Ｎｍａｘに設定する。ステップＳ７５ではフラグＦＬＧを“１”に設定し、その後にステップＳ６１に戻る。
【００６９】
ステップＳ７７では消失した顔画像の数を変数Ｐｍａｘに設定し、ステップＳ７９では変数Ｐを“１”に設定する。ステップＳ８１では、過去数フレームのテーブルに登録された顔情報を参照してＰ番目の顔画像の現在位置およびサイズを予測する。ステップＳ８３では、Ｐ番目の顔画像に対応する優先探索エリアを設定するべく、予測されたサイズよりも大きいサイズと予測された位置とをレジスタＲＧＳＴ１に記述する。ステップＳ８５では変数Ｐをインクリメントし、ステップＳ８７ではインクリメントされた変数Ｐが変数Ｐｍａｘを上回るか否かを判別する。ここでＮＯであればステップＳ８１に戻る一方、ＹＥＳであればステップＳ７３に進む。
【００７０】
図１６を参照して、ステップＳ９１では垂直同期信号Ｖｓｙｎｃが発生したか否かを判別する。判別結果がＮＯからＹＥＳに更新されるとステップＳ９３に進み、前フレームに設定された優先探索エリアが存在するか否かをレジスタＲＧＳＴ１を参照して判別する。ここでＮＯであればステップＳ９５に進み、ＹＥＳであればステップＳ９７に進む。ステップＳ９５では、評価エリアＥＶＡ全体を調整エリアＡＤＪとして定義する。ステップＳ９７では、評価エリアＥＶＡを形成する２５６個の分割エリアのうち前フレームに設定された優先探索エリアを覆う一部の分割エリアを調整エリアＡＤＪとして定義する。ステップＳ９５またはＳ９７の処理が完了すると、ステップＳ９１に戻る。
【００７１】
以上の説明から分かるように、ＣＰＵ２６は、繰り返し取り込まれる被写界像の各々を走査して、既定の顔模様が撮像面側に現れた人物の顔部（既定模様が現れた物体）を被写界から探索する(S31~S43, S47~S53)。探索処理によって発見された顔部の属性（顔サイズ，顔位置，顔向き）は、テーブルＴＢＬ１〜ＴＢＬ５に登録される(S45)。ＣＰＵ２６は、既定の顔模様が消失した顔部が存在するか否かを、テーブルＴＢＬ１〜ＴＢＬ５に登録された属性を参照して判別する(S69~S71)。判別結果が否定的な結果から肯定的な結果に更新されると、ＣＰＵ２６は、顔模様が消失した顔部の現在位置をテーブルＴＢＬ１〜ＴＢＬ５に登録された属性を参照して予測し(S77~S81, S85~S87)、予測された位置に対応する一部のエリアを優先探索エリアとして設定する(S83)。
【００７２】
被写界像の走査によって探索されるのは既定の顔模様が撮像面側に現れた顔部であるため、既定の顔模様が消失した顔部は探索不能となる。このときは、既定の顔模様が現れていたときの顔部の属性に基づいて、既定の顔模様が消失した顔部の現在位置が予測される。探索処理は、予測された位置に対応するエリアに対して優先的に実行される。これによって、人物の顔部の探索性能が向上する。
【００７３】
なお、この実施例では、特定物体像として人物の顔画像を想定しているが、これに代えて犬や猫などの動物の顔画像を想定するようにしてもよい。
【００７４】
また、この実施例では、静止画像を記録するいわゆるディジタルスチルカメラを想定しているが、この発明は動画像を記録するディジタルビデオカメラにも適用できる。
【００７５】
さらに、この実施例では、フォーカスを調整するためにフォーカスレンズ１２を光軸方向に移動させるようにしているが、フォーカスレンズ１２に代えて或いはフォーカスレンズ１２とともにイメージャ１６を光軸方向に移動させるようにしてもよい。
【図面の簡単な説明】
【００７６】
【図１】この発明の一実施例の構成を示すブロック図である。
【図２】評価エリアを撮像面に割り当てた状態の一例を示す図解図である。
【図３】図１実施例で参照される辞書の一例を示す図解図である。
【図４】探索処理のために用いられる複数の顔検出枠の一例を示す図解図である。
【図５】図１実施例によって参照されるテーブルの一例を示す図解図である。
【図６】図１実施例によって参照されるレジスタの一例を示す図解図である。
【図７】優先探索エリアが設定されていない状態での探索動作の一部を示す図解図である。
【図８】（Ａ）は優先探索エリアにおける探索動作の一例を示す図解図であり、（Ｂ）は非優先探索エリアにおける探索動作の一例を示す図解図である。
【図９】（Ａ）は撮像面によって捉えられた被写界の一例を示す図解図であり、（Ｂ）は撮像面によって捉えられた被写界の他の一例を示す図解図である。
【図１０】（Ａ）は撮像面によって捉えられた被写界のその他の一例を示す図解図であり、（Ｂ）は撮像面によって捉えられた被写界のさらにその他の一例を示す図解図である。
【図１１】図１実施例に適用されるＣＰＵの動作の一部を示すフロー図である。
【図１２】図１実施例に適用されるＣＰＵの動作の他の一部を示すフロー図である。
【図１３】図１実施例に適用されるＣＰＵの動作のその他の一部を示すフロー図である。
【図１４】図１実施例に適用されるＣＰＵの動作のさらにその他の一部を示すフロー図である。
【図１５】図１実施例に適用されるＣＰＵの動作の他の一部を示すフロー図である。
【図１６】図１実施例に適用されるＣＰＵの動作のその他の一部を示すフロー図である。
【符号の説明】
【００７７】
１０  …ディジタルカメラ
１６  …イメージャ
２２  …ＡＥ／ＡＷＢ評価回路
２４  …ＡＦ評価回路
２６  …ＣＰＵ
３２  …ＳＤＲＡＭ
４４  …フラッシュメモリ
【図１】
2010141372.tif 000003
【図２】
2010141372.tif 000004
【図３】
2010141372.tif 000005
【図４】
2010141372.tif 000006
【図５】
2010141372.tif 000007
【図６】
2010141372.tif 000008
【図７】
2010141372.tif 000009
【図８】
2010141372.tif 000010
【図９】
2010141372.tif 000011
【図１０】
2010141372.tif 000012
【図１１】
2010141372.tif 000013
【図１２】
2010141372.tif 000014
【図１３】
2010141372.tif 000015
【図１４】
2010141372.tif 000016
【図１５】
2010141372.tif 000017
【図１６】
2010141372.tif 000018