(57)【要約】【課題】本発明は、被写体に対するフォーカス制御を安定かつ高精度に実行可能な撮像装置を提供する。【解決手段】撮像装置は、光学像を光電変換する撮像素子と、撮像素子から出力された画像信号に基づいて焦点信号を生成する生成手段と、画像信号に基づいて被写体を検出する検出手段と、焦点信号に基づいてフォーカス制御を行う制御手段とを有し、制御手段は、被写体に関する情報および画角に関する情報に基づいて被写体に対するフォーカス制御を行う。【選択図】図２１
2015194648.tif 000002
【特許請求の範囲】
【請求項１】
光学像を光電変換する撮像素子と、
前記撮像素子から出力された画像信号に基づいて焦点信号を生成する生成手段と、
前記画像信号に基づいて被写体を検出する検出手段と、
前記焦点信号に基づいてフォーカス制御を行う制御手段と、を有し、
前記制御手段は、前記被写体に関する情報および画角に関する情報に基づいて、該被写体に対する前記フォーカス制御を行う、ことを特徴とする撮像装置。
【請求項２】
前記被写体に関する情報は、該被写体の大きさであり、
前記画角に関する情報は、該画角の変化であることを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記制御手段は、ズームレンズの移動に応じて前記画角が変化した場合、前記被写体に関する情報および該画角に関する情報に基づいて前記フォーカス制御を行うことを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記被写体に関する情報および前記画角に関する情報に基づいて前記被写体の距離変化を判定する判定手段を更に有し、
前記制御手段は、前記判定手段による判定結果に基づいて前記フォーカス制御を行うことを特徴とする請求項１乃至３のいずれか１項に記載の撮像装置。
【請求項５】
前記判定手段による前記判定結果に基づいてフォーカスレンズを前記被写体に追従させる追従制御手段を更に有することを特徴とする請求項４に記載の撮像装置。
【請求項６】
前記判定手段は、前記画角に関する情報に応じて前記被写体の距離変化の判定方法を切り替えることを特徴とする請求項４または５に記載の撮像装置。
【請求項７】
前記判定手段は、
前記画角が変化した場合、前記被写体の大きさの変化および該画角の変化に基づいて前記被写体の距離変化を判定し、
前記画角が変化していない場合、前記被写体の大きさの変化に基づいて前記被写体の距離変化を判定する、ことを特徴とする請求項４乃至６のいずれか１項に記載の撮像装置。
【請求項８】
前記判定手段は、
前記画角が変化した場合、前記被写体の大きさの変化率と該画角の変化率とを比較し、
前記被写体の大きさの変化率が前記画角の変化率よりも大きい場合、前記被写体が近づいていると判定することを特徴とする請求項４乃至７のいずれか１項に記載の撮像装置。
【請求項９】
前記判定手段は、
前記画角が変化した場合、前記被写体の大きさの変化率と該画角の変化率とを比較し、
前記被写体の大きさの変化率が前記画角の変化率よりも小さい場合、該被写体が遠ざかっていると判定することを特徴とする請求項４乃至８のいずれか１項に記載の撮像装置。
【請求項１０】
前記判定手段は、前記画角の変化率が第１の閾値以下である場合、前記被写体の距離変化の判定を行わずに、該画角の変化前の判定結果を維持することを特徴とする請求項７乃至９のいずれか１項に記載の撮像装置。
【請求項１１】
前記判定手段は、前記画角の変化率が第２の閾値以下である場合、前記被写体の距離変化の判定を行うことを特徴とする請求項７乃至９のいずれか１項に記載の撮像装置。
【請求項１２】
前記判定手段は、
前記画角の変化率が第１の閾値以下である場合、前記被写体の距離変化の判定を行わずに、該画角の変化前の判定結果を維持し、
前記画角の変化率が前記第１の閾値よりも大きい第２の閾値以下である場合、前記被写体の距離変化の判定を行うことを特徴とする請求項７乃至９のいずれか１項に記載の撮像装置。
【請求項１３】
前記判定手段は、前記画角の変化率が前記第２の閾値よりも大きい場合、前記被写体の距離は変化していないと判定することを特徴とする請求項１１または１２に記載の撮像装置。
【請求項１４】
前記判定手段は、前記画角の変化量に基づいて、該画角の変化前の判定結果を維持するか否かを判定することを特徴とする請求項４乃至７のいずれか１項に記載の撮像装置。
【請求項１５】
前記判定手段は、
前記画角の変化量が第３の閾値以下である場合、該画角の変化前の判定結果を維持し、
前記画角の変化量が前記第３の閾値よりも大きい場合、該画角の変化前の判定結果を維持しないことを特徴とする請求項１４に記載の撮像装置。
【請求項１６】
撮像素子により光学像を光電変換するステップと、
前記撮像素子から出力された画像信号に基づいて焦点信号を生成するステップと、
前記画像信号に基づいて被写体を検出するステップと、
前記焦点信号に基づいて、前記被写体に関する情報および画角に関する情報を用いて、該被写体に対するフォーカス制御を行うステップと、を有することを特徴とする撮像装置の制御方法。
【請求項１７】
コンピュータに、請求項１６に記載の撮像装置の制御方法を実行させるように構成されていることを特徴とするプログラム。
【請求項１８】
請求項１７に記載のプログラムを記憶していることを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体を検出してフォーカス制御を行う撮像装置に関する。
【背景技術】
【０００２】
従来から、画像信号の鮮鋭度（コントラスト状態）を示すＡＦ評価値が最大となるフォーカスレンズの位置を探索してフォーカス制御を行う撮像装置が知られている。しかしながら、顔検出機能を有する撮像装置において、人物を撮影する場合、一般的に人の顔はコントラストが低いため、十分なＡＦ評価値を取得することが困難である。このため、被写体の距離が変化した場合、被写体に対してフォーカスレンズを追従させることができずに被写体像がボケてしまうことがある。
【０００３】
特許文献１および特許文献２には、検出された顔の大きさの増減が生じた場合、被写体が至近または無限側の方向へ移動したと判定し、被写体を追従するようにフォーカス制御を行う方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−３１７６０号公報
【特許文献２】特開２００８−２７６２１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１および特許文献２に開示されているような顔検出方法を用いたＡＦ制御では、ズームによる画角変化が生じた場合、顔の大きさが被写体の動きに関係なく変化することにより、正確な判定が困難となる。
【０００６】
そこで本発明は、被写体に対するフォーカス制御を安定かつ高精度に実行可能な撮像装置、撮像装置の制御方法、プログラム、および、記憶媒体を提供する。
【課題を解決するための手段】
【０００７】
本発明の一側面としての撮像装置は、光学像を光電変換する撮像素子と、前記撮像素子から出力された画像信号に基づいて焦点信号を生成する生成手段と、前記画像信号に基づいて被写体を検出する検出手段と、前記焦点信号に基づいてフォーカス制御を行う制御手段とを有し、前記制御手段は、前記被写体に関する情報および画角に関する情報に基づいて、該被写体に対する前記フォーカス制御を行う。
【０００８】
本発明の他の側面としての撮像装置の制御方法は、撮像素子により光学像を光電変換するステップと、前記撮像素子から出力された画像信号に基づいて焦点信号を生成するステップと、前記画像信号に基づいて被写体を検出するステップと、前記焦点信号に基づいて、前記被写体に関する情報および画角に関する情報を用いて、該被写体に対する前記フォーカス制御を行うステップとを有する。
【０００９】
本発明の他の側面としてのプログラムは、コンピュータに、前記撮像装置の制御方法を実行させるように構成されている。
【００１０】
本発明の他の側面としての記憶媒体は、前記プログラムを記憶している。
【００１１】
本発明の他の目的及び特徴は、以下の実施形態において説明される。
【発明の効果】
【００１２】
本発明によれば、被写体に対するフォーカス制御を安定かつ高精度に実行可能な撮像装置、撮像装置の制御方法、プログラム、および、記憶媒体を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態における撮像装置の構成を示すブロック図である。
【図２】本実施形態におけるＡＦ制御を示すフローチャートである。
【図３】本実施形態における微小駆動動作を示すフローチャートである。
【図４】本実施形態における微小駆動動作の説明図である。
【図５】本実施形態における山登り駆動動作を示すフローチャートである。
【図６】本実施形態における山登り動作の説明図である。
【図７】本実施形態における非ズーム時の移動判定処理を示すフローチャートである。
【図８】本実施形態における被写体安定判定処理を示すフローチャートである。
【図９】本実施形態における移動判定閾値の設定処理を示すフローチャートである。
【図１０】本実施形態において、ズームレンズ位置に対する基準移動判定閾値を示す図である。
【図１１】本実施形態において、顔基準サイズに応じた補正係数Ｋを示す図である。
【図１２】本実施形態において、撮影モードに応じた補正係数Ｋ’’’を示す図である。
【図１３】本実施形態の横顔を表す信頼度の算出方法を示す図である。
【図１４】本実施形態における揺れ検出処理を示すフローチャートである。
【図１５】本実施形態における揺れ検出処理にて検出される揺れの例を示す図である。
【図１６】本実施形態における揺れ検出の説明図である。
【図１７】本実施形態における終了判定処理を示すフローチャートである。
【図１８】本実施形態における移動判定領域の設定処理を示すフローチャートである。
【図１９】本実施形態において、被写体判定領域の画面に対する割合を示す図である。
【図２０】本実施形態の被写体判定領域の画面に対する割合を示す図である。
【図２１】本実施形態における移動判定処理を示すフローチャートである。
【図２２】本実施形態におけるズーム時の移動判定処理を示すフローチャートである。
【図２３】本実施形態におけるズーム時の移動判定処理の説明図である。
【図２４】本実施形態における移動判定処理の実行および非実行の説明図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１５】
本実施形態は、自動焦点調節（ＡＦ制御）に際し、予め定められた被写体（人物の顔など）の大きさの変化などを監視する。そして、被写体の光軸方向の距離変化の有無を判定する際に、撮影状況や撮影パラメータなどの撮影情報に応じて、被写体の移動判定を行うための領域を可変にする。ここで、被写体距離が変化しない場合、フォーカスレンズを被写体（被写体の距離変化）に追従させる追従駆動動作を制限して焦点調節を行う。一方、被写体距離が変化している場合、追従駆動動作を許可して焦点調節を行う。
【００１６】
まず、図１を参照して、本実施形態における自動焦点調節装置（制御装置）を含む撮像装置の構成について説明する。図１は、本実施形態における撮像装置１００（ビデオカメラ）の構成を示すブロック図である。なお本実施形態は、撮像装置としてビデオカメラについて説明するが、デジタルスチルカメラなどの他の撮像装置にも適用可能である。
【００１７】
図１において、１０１は第１固定レンズ、１０２は光軸ＯＡに沿った方向（光軸方向）に移動して変倍を行う変倍レンズ、１０３は絞り、１０４は第２固定レンズである。１０５は、変倍に伴う焦点面の移動を補正する機能とフォーカシングの機能とを兼ね備えたフォーカスレンズ（フォーカスコンペンセータレンズ）である。第１固定レンズ１０１、変倍レンズ１０２、絞り１０３、第２固定レンズ１０４、および、フォーカスレンズ１０５により、被写体からの光を結像するための撮影光学系が構成される。なお撮影光学系は、撮像素子１０６を備えた撮像装置本体に着脱可能な交換レンズ（レンズ装置）に設けられているか、または、撮像装置本体と一体的に構成されているものであってもよい。
【００１８】
１０６は、ＣＣＤセンサやＣＭＯＳセンサなどの光電変換素子を備えた撮像素子である。撮像素子１０６は、撮影光学系を介して形成された光学像（被写体像）を光電変換して電気信号（画像信号）を出力する。１０７は、撮像素子１０６から出力された画像信号をサンプリングし、ゲイン調整するＣＤＳ／ＡＧＣ回路である。１０８はカメラ信号処理回路であり、ＣＤＳ／ＡＧＣ回路１０７からの出力信号に対して各種の画像処理を施し、画像信号（映像信号）を生成する。１０９はＬＣＤなどにより構成されるモニタ装置であり、カメラ信号処理回路１０８からの画像信号を表示する。１１５は記録装置であり、カメラ信号処理回路１０８からの画像信号を磁気テープ、光ディスク、半導体メモリなどの記録媒体に記録する。
【００１９】
１１０は、変倍レンズ１０２を移動させるためのズーム駆動源である。１１１は、フォーカスレンズ１０５を移動させるためのフォーカシング駆動源である。ズーム駆動源１１０およびフォーカシング駆動源１１１は、それぞれ、ステッピングモータ、ＤＣモータ、振動型モータ、または、ボイスコイルモータなどのアクチュエータにより構成される。１１２は、ＣＤＳ／ＡＧＣ回路１０７からの全画素の出力信号のうち焦点検出に用いられる領域（焦点検出領域）の信号のみを通すＡＦゲートである。
【００２０】
ＡＦ信号処理回路１１３は、ＡＦゲート１１２を通過した信号から高周波成分を抽出し、ＡＦ評価値を生成する。すなわちＡＦ信号処理回路１１３は、撮像素子１０６からの画像信号に対して設定された焦点検出領域から（画像信号に基づいて）ＡＦ評価値（焦点信号）を生成する生成手段である。ＡＦ信号処理回路１１３により生成されたＡＦ評価値は、カメラ／ＡＦマイコン１１４（制御手段）に出力される。ＡＦ評価値は、撮像素子１０６からの出力信号に基づいて生成される画像（映像）の鮮鋭度（コントラスト状態）を表す。画像の鮮鋭度は、撮影光学系の焦点状態（合焦の程度）に応じて変化する。このためＡＦ評価値は、結果的に、撮影光学系の焦点状態を表す信号となる。
【００２１】
カメラ／ＡＦマイコン１１４（制御手段）は、撮像装置１００の全体の動作の制御を司る。またカメラ／ＡＦマイコン１１４は、ＡＦ評価値（焦点信号）に基づいてフォーカシング駆動源１１１を制御して、フォーカスレンズ１０５を駆動することにより、焦点調節（フォーカス制御）を行う。またカメラ／ＡＦマイコン１１４は、判定手段１１４ａおよび追従制御手段１１４ｂを含む。判定手段１１４ａは、顔検出部１１６（検出手段）の検出結果に基づいて被写体の距離変化の有無を判定する。追従制御手段１１４ｂは、判定手段１１４ａの判定結果に応じてフォーカスレンズ１０５を被写体（被写体の距離変化）に追従させる。
【００２２】
本実施形態の顔検出部１１６は、画像信号に対して公知の顔検出処理を施し、撮影画面内の人物の顔領域を検出する。すなわち顔検出部１１６は、撮像素子１０６から出力された電気信号に基づいて、予め定められた被写体（ここでは顔）を検出する検出手段である。顔検出部１１６による検出結果は、カメラ／ＡＦマイコン１１４に送信される。カメラ／ＡＦマイコン１１４は、顔検出部１１６による検出結果に基づいて、撮影画面内の顔領域を含む位置に焦点検出領域を設定するようにＡＦゲート１１２へ情報を送信する。顔検出処理としては、画像データの各画素の階調色から肌色領域を抽出し、予め用意する顔の輪郭プレートとのマッチング度で顔を検出する方法、または、周知のパターン認識技術を用いて、目、鼻、口などの顔の特徴点を抽出して顔検出を行う方法などがある。
【００２３】
また顔検出部１１６は、顔の信頼度および横顔の信頼度を算出する。顔の信頼度の算出は、例えば、顔の輪郭プレートとのマッチング度に基づいて算出され、マッチング度が高い順に５段階で表現される。また、横顔の信頼度（横顔らしさを表す信頼度）の算出は、図１３に示されるように、検出されている顔の両目の中心位置（図中の点線）を基準に顔検出枠を左右に分割するように領域を抽出する。そして、左右領域に含まれる肌色領域を抽出し、肌色領域の画素数をカウントすることで、面積を算出する。横顔らしさを表す信頼度は、左右の画面に含まれる肌色領域の比を用いて算出される。左右の肌色の領域が同じ比率である場合、顔検出部１１６は、横顔の可能性が低いとして、横顔らしさを表す信頼度を低く設定する。一方、比率が大きく異なる場合、顔検出部１１６は、横顔の可能性が高いとして、横顔らしさを表す信頼度を高く設定する。本実施形態では、この比率に応じで信頼度を５段階に設定する。ただしこれに限定されるものではない。
【００２４】
絞り駆動源１１７は、絞り１０３を駆動させるためのアクチュエータおよびそのドライバを含む。輝度情報検波・演算回路１１８は、ＣＤＳ／ＡＧＣ回路１０７により読み出された信号から、画面内の測光枠の輝度値を取得するために測光値を取得し、測光値を演算により正規化する。カメラ／ＡＦマイコン１１４は、測光値と、適正な露出が得られるように設定された目標値との差分を算出する。その後、カメラ／ＡＦマイコン１１４は、算出した差分から絞り１０３の補正駆動量を算出し、絞り駆動源１１７を制御する。
【００２５】
次に、図２を参照して、カメラ／ＡＦマイコン１１４により行われるＡＦ制御について説明する。図２は、ＡＦ制御を示すフローチャートである。ＡＦ制御の各ステップは、カメラ／ＡＦマイコン１１４内に格納されたコンピュータプログラムに従って実行される。
【００２６】
ステップＳ２０１においてＡＦ制御が開始すると、ステップＳ２０２において、カメラ／ＡＦマイコン１１４は微小駆動を行う。このときカメラ／ＡＦマイコン１１４は、合焦状態であるか否か、また、合焦状態でない場合（非合焦状態の場合）には合焦位置の方向を判定する。ステップＳ２０２の詳細な説明は後述する。続いてステップＳ２０３において、カメラ／ＡＦマイコン１１４は、ステップＳ２０２にて合焦状態であると判定した場合、ステップＳ２０９へ進み、合焦動作を行う。一方、カメラ／ＡＦマイコン１１４は、ステップＳ２０２にて合焦状態でないと判定した場合、ステップＳ２０４へ進む。
【００２７】
ステップＳ２０４において、カメラ／ＡＦマイコン１１４は、ステップＳ２０２にて合焦位置の方向が判定されている場合（ステップＳ２０４で「Ｙｅｓ」の場合）、ステップＳ２０５へ進み、山登り駆動を行う。一方、カメラ／ＡＦマイコン１１４は、ステップＳ２０２にて合焦位置の方向を判定できていない場合（ステップＳ２０４で「Ｎｏ」の場合）、ステップＳ２０２へ戻り、微小駆動を継続する。ステップＳ２０５において、カメラ／ＡＦマイコン１１４は、ＡＦ評価値が大きくなる方向に高速でレンズ（フォーカスレンズ１０５）を駆動させるように、山登り駆動を行う。山登り駆動の動作の詳細については後述する。
【００２８】
続いてステップＳ２０６において、カメラ／ＡＦマイコン１１４は、ＡＦ評価値のピークを越えたか否かを判定する。ＡＦ評価値のピークを越えた場合、ステップＳ２０７へ進む。一方、ＡＦ評価値のピークを越えていない場合、ステップＳ２０５へ戻り、山登り駆動を継続する。ステップＳ２０７において、カメラ／ＡＦマイコン１１４は、山登り駆動中のＡＦ評価値がピークとなるレンズ位置にレンズ（フォーカスレンズ１０５）を戻す。そしてステップＳ２０８において、ＡＦ評価値がピークとなるレンズ位置（ピーク位置）にレンズが戻ったか否かを判定する。レンズがピーク位置に戻った場合、ステップＳ２０２へ戻り、カメラ／ＡＦマイコン１１４は再び微小駆動を行う。一方、ステップＳ２０７にてレンズがピーク位置に戻っていない場合、ステップＳ２０７へ戻り、カメラ／ＡＦマイコン１１４は、ピーク位置にレンズを戻す動作を継続する。
【００２９】
次に、ステップＳ２０９からの合焦動作について説明する。ステップＳ２０９において、カメラ／ＡＦマイコン１１４は、ＡＦ評価値を保持する。続いてステップＳ２１０において、カメラ／ＡＦマイコン１１４は、最新のＡＦ評価値を取得する。そしてステップＳ２１１において、カメラ／ＡＦマイコン１１４は、ステップＳ２０９にて保持されたＡＦ評価値と、ステップＳ２１０にて新たに取得したＡＦ評価値とを比較する。ここでカメラ／ＡＦマイコン１１４は、これらのＡＦ評価値の間に所定レベル以上の差（変動）があるか否かを判定する。所定レベル以上の差がある場合、カメラ／ＡＦマイコン１１４は再起動の必要があると判定する。このため、ステップＳ２０２へ戻り、カメラ／ＡＦマイコン１１４は微小駆動を再開する。一方、ステップＳ２１１にて２つのＡＦ評価値の間に所定レベル以上の差がない場合、ステップＳ２１２へ進む。ステップＳ２１２において、カメラ／ＡＦマイコン１１４は、フォーカスレンズ１０５を停止させ、ステップＳ２１０へ戻り再起動判定を継続する。
【００３０】
次に、図３を参照して、微小駆動動作（図２のステップＳ２０２）について説明する。図３は、微小駆動動作を示すフローチャートである。まずステップＳ３０１において、カメラ／ＡＦマイコン１１４は、微小駆動を開始する。続いてステップＳ３０２において、カメラ／ＡＦマイコン１１４は、最新の顔検出位置および大きさを取得するとともに、それらの情報に基づいて焦点検出領域（ＡＦ枠）を設定し、ＡＦ評価値を取得する。
【００３１】
続いてステップＳ３０３において、カメラ／ＡＦマイコン１１４は、取得された顔の大きさに基づいて被写体の移動を判定する（移動判定処理）。移動判定処理については、図２１を参照して後述する。続いてステップＳ３０４において、カメラ／ＡＦマイコン１１４は、被写体の至近または無限側の方向への移動があったかを判定する。被写体の移動があった場合、ステップＳ３０５へ進む。一方、被写体の移動がなかった場合、ステップＳ３０６へ進む。
【００３２】
本実施形態において、変化量を監視する被写体の大きさは、顔検出部１１６（被写体検出手段）により得られる人物の顔（体の他の部位などであってもよい）の大きさである。このため、後述のように、顔の大きさの変化量が所定量以内である場合、カメラ／ＡＦマイコン１１４は被写体の距離変化がないと判定する。一方、顔の大きさの変化量が所定量より大きい場合、カメラ／ＡＦマイコン１１４は、被写体の距離変化があると判定する。カメラ／ＡＦマイコン１１４は、被写体の距離変化がないと判定した場合、追従制御手段による追従制御を禁止（停止）して焦点調節を行う。一方、カメラ／ＡＦマイコン１１４は、被写体の距離変化があると判定した場合、追従制御手段による追従制御を許可して焦点調節を行う。このような切り替えがステップＳ３０４にて実行される。
【００３３】
ステップＳ３０５において、カメラ／ＡＦマイコン１１４は、移動判定の結果が近づきか遠ざかりか、すなわち被写体距離が小さくなるかまたは大きくなるかを判定する。近づきの場合、ステップＳ３１４へ進み、カメラ／ＡＦマイコン１１４は至近方向への山登りを決定する。そしてステップＳ３１３へ進み、本フローを終了する。一方、遠ざかりの場合、ステップＳ３１５へ進み、カメラ／ＡＦマイコン１１４は無限方向への山登りを決定する。そしてステップＳ３１３へ進み、本フローを終了する。被写体の移動方向に応じて山登りの方向を切り替える駆動が、被写体の追従駆動または追従制御である。追従駆動を行うことにより、ＡＦの応答性および精度を向上させることができる。この機能を実行するため、カメラ／ＡＦマイコン１１４（制御手段）は、判定手段１１４ａおよび追従制御手段１１４ｂを含む。判定手段１１４ａは、顔検出部１１６の検出結果に基づいて被写体の距離変化の有無を判定する。追従制御手段１１４ｂは、その判定結果に応じてフォーカスレンズ１０５を被写体（被写体の距離変化）に追従させる。
【００３４】
続いてステップＳ３０６において、カメラ／ＡＦマイコン１１４は、ステップＳ３０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値より大きいか否かを判定する。ステップＳ３０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値よりも大きい場合、ステップＳ３０７へ進む。一方、ステップＳ３０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値よりも小さい場合、ステップＳ３０８へ進む。ステップＳ３０７では、前回の駆動方向と同じ方向（順方向）に所定量だけフォーカスレンズ１０５を駆動する。一方、ステップＳ３０８では、前回の駆動方向と反対の方向（逆方向）に所定量だけフォーカスレンズ１０５を駆動する。
【００３５】
図４は、フォーカスレンズ１０５の動作（微小駆動動作）の時間経過を示している。図４において、縦軸はフォーカスレンズ１０５の位置（レンズ位置）、横軸は時間をそれぞれ示している。図４中の期間Ａにおいて、ＣＣＤなどの撮像素子１０６に蓄積された電荷に対するＡＦ評価値Ａが時刻ＴＡで取り込まれる。また、図４中の期間Ｂにおいて、撮像素子１０６に蓄積された電荷に対するＡＦ評価値Ｂが時刻ＴＢで取り込まれる。時刻ＴＢでは、ＡＦ評価値Ａ、Ｂを比較する。そしてＡ＜Ｂの場合、フォーカスレンズ１０５をそのまま順方向に移動させる。一方、Ａ＞Ｂの場合、逆方向にする。
【００３６】
ステップＳ３０９において、所定回数連続して合焦方向と判定される方向が同一である場合、ステップＳ３１０へ進む。一方、所定回数連続して同一方向に進んでいない場合、ステップＳ３１１へ進む。ステップＳ３１１において、所定回数だけフォーカスレンズ１０５が所定範囲内で往復を繰り返している場合、ステップＳ３１２へ進む。一方、所定時間だけフォーカスレンズ１０５が所定範囲内に存在しない場合、ステップＳ３１３へ進み、本フローを終了する。この結果、図２のステップＳ２０２の微小駆動に戻る。ステップＳ３１０では、方向判定ができたとして、ステップＳ３１３へ進み、本フロー処理を終了する。そして、図２のステップＳ２０５の山登り駆動へ移行する。ステップＳ３１２では、合焦判定ができたとして、本フローを終了する。そして、図２のステップＳ２１０以降の再起動判定ルーチンへ移行する。
【００３７】
次に、図５を参照して、山登り駆動について説明する。図５は、山登り駆動のフローチャートである。まずステップＳ５０１において、山登り駆動を開始する。そしてステップＳ５０２において、カメラ／ＡＦマイコン１１４は、最新の顔検出位置および大きさを取得し、その情報に基づいてＡＦ枠（焦点検出領域）を設定し、ＡＦ評価値を取得する。続いてステップＳ５０３において、カメラ／ＡＦマイコン１１４は、ステップＳ５０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値よりも大きいか否かを判定する。ステップＳ５０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値よりも大きい場合、ステップＳ５０４へ進む。一方、ステップＳ５０２にて取り込まれたＡＦ評価値が前回のＡＦ評価値よりも小さい場合、ステップＳ５０５へ進む。
【００３８】
ステップＳ５０４では、前回の駆動方向と同じ方向（順方向）に所定の速度でフォーカスレンズ１０５を駆動する。そしてステップＳ５０８へ進み、本フローを終了する。ステップＳ５０５では、カメラ／ＡＦマイコン１１４は、ＡＦ評価値がピークを越えて減少しているか否かを判定する。ＡＦ評価値がピークを越えて減少している場合、ステップＳ５０６へ進む。ステップＳ５０６では、ＡＦ評価値がピークを越えたとして、ステップＳ５０８へ進み、本フローを終了する。そして、図２のステップＳ２０６などを経て、ステップＳ２０２の微小駆動へ移行する。一方、ステップＳ５０５にてＡＦ評価値がピークを越えて減少していない場合、ステップＳ５０７へ進み、前回の駆動方向と反対の方向（逆方向）に所定の速度でフォーカスレンズ１０５を駆動し、ステップＳ５０８へ進む。
【００３９】
図６は、山登り駆動の説明図である。図６中の状態Ａの場合、ＡＦ評価値がピークを越えて減少している。このため、合焦点があるとして山登り駆動動作を終了し、微小駆動動作に移行する。一方、状態Ｂの場合、ＡＦ評価値がピークを越えずに減少している。このため、方向を間違えたものとして反転し、山登り駆動動作を継続する。一定時間あたりの移動量、すなわち駆動速度は、微小駆動の駆動速度よりも大きい。検出した顔の大きさが連続的に増加している場合、山登り駆動時の駆動速度を大きく設定することで、ＡＦの応答性を向上させることができる。以上のように、カメラ／ＡＦマイコン１１４は、再起動判定、微小駆動、山登り駆動、微小駆動、および、再起動判定をこの順に繰り返しながらフォーカスレンズ１０５を移動させて、ＡＦ評価値を大きくするように制御する。
【００４０】
次に、図７乃至図１６、および、図２１乃至図２４を参照して、被写体の至近または無限方向の移動判定処理について説明する。まず、図２１を参照して、図３のステップＳ３０３の移動判定処理について説明する。
【００４１】
まずステップＳ２１０１において、移動判定処理が開始する。そしてステップＳ２１０２において、カメラ／ＡＦマイコン１１４は、ズームによる画角変化がある否かを判定する。画角変化がない場合、ステップＳ２１０３に進む。一方、画角変化がある場合、ステップＳ２１０４に進む。ステップＳ２１０３において、カメラ／ＡＦマイコン１１４は、フラグおよびデータを初期化する。またズーム操作がされていない場合、顔の大きさおよびズームの初期位置を初期化する。初期化後、ステップＳ２１０７に進み、カメラ／ＡＦマイコン１１４は、非ズーム時の移動判定処理を行う。この処理の詳細は、図７を参照して後述する。
【００４２】
ステップＳ２１０４において、カメラ／ＡＦマイコン１１４は、初期ズーム位置の記憶フラグがセットされているかを判定する。初期ズーム位置の記憶フラグがセットされていない場合、ステップＳ２１０５へ進む。一方、初期ズーム位置の記憶フラグがセットされている場合、ステップＳ２１０６へ進む。
【００４３】
ステップＳ２１０５において、カメラ／ＡＦマイコン１１４は、ズーム開始位置を記憶する。すなわちカメラ／ＡＦマイコン１１４は、ズーム開始時の焦点距離（ズーム倍率）を記憶し、ステップＳ２１０６に進む。ステップＳ２１０６において、カメラ／ＡＦマイコン１１４は、ズームの変化率を算出し、ズームの変化率が閾値Ｔｈ１以下（第１の閾値以下）であるか否かを判定する。ズームの変化率は、ステップＳ２１０５にて記憶したズーム倍率と現在のズーム倍率との割合として算出される。なお本実施形態において、閾値Ｔｈ１は０．１５（１５％）に設定されているが、これに限定されるものではない。閾値Ｔｈ１は、撮影モードやレンズ倍率に応じて変更可能である。閾値Ｔｈ１の設定については、図２４を参照して後述する。ズームの変化率が閾値Ｔｈ１以下である場合、ステップＳ２１０８に進む。一方、ズームの変化率が閾値Ｔｈ１よりも大きい場合、ステップＳ２１０９に進む。
【００４４】
ステップＳ２１０８において、ズームの変化が小さいため、移動判定フラグを維持したままにした状態で処理を継続する。一方、ステップＳ２１０９において、ズームの変化が大きいため、移動判定のフラグを最初の一回のみ初期化して、ステップＳ２１１０に進む。
【００４５】
ステップＳ２１１０において、カメラ／ＡＦマイコン１１４は、ズームの変化率を算出し、ズームの変化率が閾値Ｔｈ２以下（第２の閾値以下）であるか否かを判定する。ズームの変化率が閾値Ｔｈ２以下である場合、ステップＳ２１１２に進む。一方、ズームの変化率が閾値Ｔｈ２よりも大きい場合、ステップＳ２１１１に進む。なお本実施形態において、閾値Ｔｈ２は０．６５（６５％）に設定されているが、これに限定されるものではない。閾値Ｔｈ２は、撮影モードやレンズ倍率に応じて変更可能。ステップＳ２１１１において、ズームの変化率は閾値Ｔｈ１以上であって閾値Ｔｈ２以下の状態である。この状態は、移動判定には十分な画角変化であることを意味している。このためステップＳ２１１１において、カメラ／ＡＦマイコン１１４は、ズーム時の移動判定処理を実行する。なお、この移動判定処理の詳細については、図２２を参照して後述する。前述の非ズーム時またはズーム時の判定処理後、ステップＳ２１１２に進み、本フロー（移動判定処理）を終了する。
【００４６】
次に、図７を参照して、非ズーム時の移動判定処理（図２１中のステップＳ２１０７）について説明する。図７は、非ズーム時の移動判定処理を示すフローチャートである。
【００４７】
まずステップＳ７０１において、カメラ／ＡＦマイコン１１４は、画角変化がない非ズーム時の移動判定処理を開始する。続いてステップＳ７０２において、カメラ／ＡＦマイコン１１４は、検出された顔の大きさ（顔サイズ）の平均値を算出する。検出された顔の大きさは、カメラ／ＡＦマイコン１１４内のメモリに蓄積される。そしてカメラ／ＡＦマイコン１１４は、移動平均法を用いて蓄積個数が１０ずつの平均値を算出する。平均された顔の大きさは、記憶部ＦａｃｅＡｖｅＳｉｚｅに格納される。記憶部ＦａｃｅＡｖｅＳｉｚｅは、２０個の配列を有し、平均値が算出される毎に記憶部ＦａｃｅＡｖｅＳｉｚｅ［０］〜［１９］に履歴が保存される。ここでは、記憶部ＦａｃｅＡｖｅＳｉｚｅ［０］に最新の平均値が格納されるものとする。続いてステップＳ７２１において、カメラ／ＡＦマイコン１１４は、ステップＳ３０２にて取得された顔検出位置が揺れているか否かを判定する（揺れ検出処理）。この処理の詳細については、図１４乃至図１６を参照して後述する。
【００４８】
続いてステップＳ７０３において、カメラ／ＡＦマイコン１１４は、移動判定フラグの有無を判定する。後述の処理で決定される移動判定フラグがセットされている場合、ステップＳ７０４に進む。一方、移動判定フラグがセットされていない場合、ステップＳ７０３’に進み、移動判定領域の設定処理に移行する。ステップＳ７０３’の処理については、図１８を参照して後述する。移動判定領域の設定処理によって、移動判定を行う画面内の領域の設定が完了した場合、ステップＳ７０３’’に進む。ステップＳ７０３’’において、カメラ／ＡＦマイコン１１４は、被写体（ＦａｃｅＰｏｓの値）が、移動判定領域ＪｕｄｇｅＦａｃｅＡｒｅａの内側に存在するか否かを判定する。被写体が移動判定領域内に存在する場合、ステップＳ７０７に進む。一方、被写体が移動判定領域内に存在しない場合、ステップＳ７２０に進み、本フローを終了する。
【００４９】
ステップＳ７０７において、カメラ／ＡＦマイコン１１４は、ステップＳ７０２にて算出された平均顔サイズ(記憶部ＦａｃｅＡｖｅＳｉｚｅに記憶された値)が安定している値か否かを判定する。この処理の詳細については、図８を参照して後述する。続いてステップＳ７０８において、カメラ／ＡＦマイコン１１４は、ステップＳ７０７にて決定された安定フラグ、および、ステップＳ７２１にて決定された揺れフラグの状態を判定する。安定フラグがセットされており、かつ、揺れフラグがセットされている場合、ステップＳ７０９に進む。そうでない場合、ステップＳ７２０に進み、本フローを終了する。ここで、安定フラグがＣＬＥＡＲまたは揺れフラグがＣＬＥＡＲの場合、被写体の状態が安定していないため、移動判定を行うことができないことを意味している。この場合、図３のステップＳ３０４を経て、ステップＳ３０６以降に進む。
【００５０】
続いてステップＳ７０９において、カメラ／ＡＦマイコン１１４は、顔基準サイズが設定されているかを判定する。顔基準サイズ(記憶部ＦａｃｅＢａｓｅＳｉｚｅに記憶された値)は、移動判定を行う際の基準となる顔の大きさ（サイズ）である。顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）が０の場合、顔基準サイズが設定されていないため、ステップＳ７１９に進む。ステップＳ７１９において、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）に最新の平均値（ＦａｃｅＡｖｅＳｉｚｅ［０］）を代入する。この場合も、図３のステップＳ３０４を経てステップＳ３０６以降に進む。
【００５１】
一方、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）が０でない場合、ステップＳ７１０に進む。ステップＳ７１０において、カメラ／ＡＦマイコン１１４は、移動判定閾値設定処理を行う。この処理は、撮影パラメータと被写体の状態に応じて、移動判定に用いる顔のサイズ変化の閾値を設定する処理である。この処理の詳細については、図９を参照して後述する。続いてステップＳ７１１において、カメラ／ＡＦマイコン１１４は、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）と現在の顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ［０］）とを比較する。現在の顔サイズが小さい場合、遠ざかりの可能性があるため、ステップＳ７１２に進む。一方、そうでない場合、近づきの可能性があるため、ステップＳ７１３に進む。
【００５２】
ステップＳ７１２において、カメラ／ＡＦマイコン１１４は、遠ざかりの判定を行う。すなわちカメラ／ＡＦマイコン１１４は、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）と現在の顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ［０］）との差が閾値ＴＨｆａｒ以上であるか否かを判定する。顔基準サイズと現在の顔サイズとの差が閾値ＴＨｆａｒ以上である場合、被写体が遠ざかったと判定し、ステップＳ７１７に進む。一方、ステップＳ７１２で閾値ＴＨｆａｒを超えなかった場合、ステップＳ７１４に進む。ステップＳ７１７において、カメラ／ＡＦマイコン１１４は、被写体が遠ざかったことを意味する移動判定フラグの遠ざかりフラグをセットする。その後、ステップＳ７２０に進み、本フローを終了する。この場合、図３のステップＳ３０４を経てステップＳ３０５以降に進む。
【００５３】
ステップＳ７１３において、カメラ／ＡＦマイコン１１４は、近づきの判定を行う。すなわちカメラ／ＡＦマイコン１１４は、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）と現在の顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ［０］）との差が閾値ＴＨｎｅａｒ以上であるか否かを判定する。顔基準サイズと現在の顔サイズとの差が閾値ＴＨｎｅａｒ以上である場合、被写体が近づいたと判定し、ステップＳ７１８に進む。一方、ステップＳ７１３にて閾値ＴＨｎｅａｒを超えなかった場合、ステップＳ７１４に進む。ステップＳ７１８において、カメラ／ＡＦマイコン１１４は、被写体が近づいたことを意味する移動判定フラグの近づきフラグをセットする。その後、ステップＳ７２０に進み、本フローを終了する。この場合も、図３のステップＳ３０４を経てステップＳ３０５以降に進む。
【００５４】
ステップＳ７１４において、顔基準サイズが設定され、かつ安定状態の場合、移動判定を何回繰り返しているかのタイマ（ＦａｃｅＪｕｄｇｅＴｉｍｅｒ）をインクリメントし、ステップＳ７１５に進む。ステップＳ７１５において、カメラ／ＡＦマイコン１１４は、タイマ（ＦａｃｅＪｕｄｇｅＴｉｍｅｒ）が閾値ＴｉｍｅｒＴＨ以下であるか否かを判定する。この処理は、移動判定を約２秒間継続した状態が続いたにも関わらず、被写体の移動がなかった場合、判定処理を初期化するための処理である。よって、閾値ＴｉｍｅｒＴＨには、２秒間に相当する値である１２０が設定され、カメラ／ＡＦマイコン１１４は値１２０を超えたか否かを判定する。本実施形態では、１秒間に６０回の処理を行うシステムを想定しているため、２秒間に相当する値は１２０である。タイマ（ＦａｃｅＪｕｄｇｅＴｉｍｅｒ）が閾値ＴｉｍｅｒＴＨを超えている場合、ステップＳ７１６に進み、初期化処理を行う、そうでない場合、ステップＳ７２０に進み、本フローを終了する。この場合、ステップＳ７０２に戻り、移動判定を継続する。
【００５５】
ステップＳ７１６において、カメラ／ＡＦマイコン１１４は、タイマ（ＦａｃｅＪｕｄｇｅＴｉｍｅｒ）を０に初期化し、ステップＳ７０５に進む。ステップＳ７０５において、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）を０に初期化し、ステップＳ７０６に進む。ステップＳ７０６において、カメラ／ＡＦマイコン１１４は、移動判定フラグをクリアして初期化を行う。上記の初期化処理の終了後、ステップＳ７２０に進み、本フローを終了する。この場合、図３のステップＳ３０４を経てステップＳ３０６以降に進む。
【００５６】
ステップＳ７０３で移動判定フラグがセットされている場合、被写体の移動が終了したか否かを判定するため、ステップＳ７０４に進む。ステップＳ７０４の処理については、図１７を参照して後述する。続いてステップＳ７０４’において、カメラ／ＡＦマイコン１１４は、ステップＳ７０４にて被写体の移動が終了した旨の判定がされたのか、または、被写体の移動が継続している旨の判定がされたのかを判定する。被写体の移動が終了した場合、ステップＳ７０５に進み、初期化処理を行う。そうでない場合、ステップＳ７２０に進み、本フローを終了する。この場合、ステップＳ７０２に戻って移動判定を継続する。
【００５７】
次に、図２２を参照して、ズーム時の移動判定処理（図２１のステップＳ２１１１）について説明する。図２２は、ズーム時の移動判定処理を示すフローチャートである。
【００５８】
まずステップＳ２２０１において、カメラ／ＡＦマイコン１１４は、ズーム時の移動判定処理を開始する。続いてステップＳ２２０２において、カメラ／ＡＦマイコン１１４は、初期顔サイズ記憶フラグがセットされているか否かを判定する。記憶フラグがセットされていない場合、ステップＳ２２０３へ進む。一方、記憶フラグがセットされている場合（初期顔サイズが記憶されている場合）、ステップＳ２２０５に進む。ステップＳ２２０３において、カメラ／ＡＦマイコン１１４は、ズーム開始時の顔サイズを記憶し、ステップＳ２２０４に進む。ステップＳ２２０４において、初期顔サイズ記憶フラグをセットし、ステップＳ２２０５に進む。
【００５９】
ステップＳ２２０５において、カメラ／ＡＦマイコン１１４は、ズームの変化率を算出する。ズームの変化率は、ステップＳ２１０５にて記憶された初期ズーム倍率を、現在のズーム倍率で除算することにより、以下のように算出される。
【００６０】
ズーム変化率＝（現在のズーム倍率）／（初期ズーム倍率）
続いてステップＳ２２０６において、カメラ／ＡＦマイコン１１４は、顔のサイズの変化率を算出する。顔のサイズの変化率は、ステップＳ２２０４にて記憶された初期顔サイズを、現在の顔サイズで除算することにより、以下のように算出される。
【００６１】
顔サイズ変化率＝（現在の顔サイズ）／（初期顔サイズ）
続いてステップＳ２２０７において、カメラ／ＡＦマイコン１１４は、顔サイズ変化率とズーム変化率とを比較する。そして顔サイズ変化率がズーム変化率よりも大きい場合、ステップＳ２２０９に進む。一方、顔サイズ変化率がズーム変化率以下である場合、ステップＳ２２０８に進む。ステップＳ２２０９において、顔サイズ変化率がズーム変化率よりも大きいため、カメラ／ＡＦマイコン１１４は被写体が近付いていると判定し、移動判定（近づき）フラグをセットする。そしてステップＳ２２１２に進み、本フローを終了する。
【００６２】
ステップＳ２２０８において、カメラ／ＡＦマイコン１１４は、顔サイズ変化率とズーム変化率とが互いに等しいか否かを判定する。顔サイズ変化率とズーム変化率とが互いに等しい場合、ステップＳ２２１１に進む。一方、顔サイズ変化率とズーム変化率とが互いに等しくない場合、ステップＳ２２１０に進む。ステップＳ２２１０において、顔サイズの変化率がズーム変化率よりも小さいため、カメラ／ＡＦマイコン１１４は被写体が遠ざかっていると判定し、移動判定（遠ざかり）フラグをセットする。そしてステップＳ２２１２に進み、本フローを終了する。ステップＳ２２１１において、顔サイズ変化率とズーム変化率とが互いに等しいため、カメラ／ＡＦマイコン１１４は被写体の移動は無いと判定し、移動判定フラグを初期化する。そしてステップＳ２２１２に進み、本フローを終了する。
【００６３】
次に、図２３を参照して、本実施形態の特徴的な部分であるズーム時の移動判定処理について詳述する。図２３は、ズーム時の移動判定処理の説明図であり、図２３（ａ）は静止被写体、図２３（ｂ）は近づき被写体に対して、それぞれズームアウトを行った場合を示している。
【００６４】
図２３（ａ）において、ズーム開始前の被写体２３０１の顔サイズは１００ｐｉｘｅｌである。ズーム倍率が１０倍から５倍に変化した場合、被写体２３０２の顔サイズは５０ｐｉｘｅｌになる。顔サイズおよびズーム倍率の変化率は、それぞれ、０．５である。このため、被写体２３０１、２３０２は、静止被写体であると判定される。
【００６５】
一方、図２３（ｂ）に示されるように近づき被写体２３０３の場合、ズーム倍率の変化が０．５であるため、静止被写体であれば顔サイズが５０ｐｉｘｅｌになる。ところが、被写体２３０３は近付いているため、被写体２３０４の顔サイズは８０ｐｉｘｅｌ、顔サイズの変化率は０．８となる。このように、顔サイズの変化率がズーム倍率の変化率よりも大きい。このため、被写体２３０３、２３０４は、近づき被写体であると判定される。遠ざかり被写体についても、同様に判定することができる。なお、図２３で用いた顔サイズは一例にすぎず、他の顔サイズであっても本実施形態は適用可能である。
【００６６】
次に、図２４を参照して、ズーム倍率の変化量の閾値について説明する。図２４は、移動判定処理の実行および非実行の説明図である。図２４の被写体２４００は、ズーム開始前の被写体である。その状態のズーム位置（ズーム倍率）は、領域２４０１として示されるように１０倍の位置である。領域２４０１は、ズーム倍率が１０倍である被写体２４００の状態からズームインまたはズームアウトした場合、ズームイン側の閾値Ｔｈ１とズームアウト側の閾値Ｔｈ１（Ｔｈ１：第３の閾値）との間に挟まれた領域である。
【００６７】
領域２４０１はズームの変化量（画角の変化量）が小さい領域である。このため、誤ったズーム操作、または、画角の微調整であり、ズーム開始前と同一の被写体を撮影している可能性が高い。また、ズームの変化量が小さいため、顔サイズと比較した場合、正しい移動判定結果を得られない可能性が高い。このため領域２４０１に関しては、ズームにより顔サイズの若干の変化は発生するが、移動判定処理を行わず、ズーム開始前の移動判定結果を維持することが好ましい。すなわち、誤ったズーム操作、または、画角の微調整の場合、ズーム終了時に最初から移動判定を行うのではなく、近づき被写体であれば、ズーム中およびズーム後においても、近づき駆動処理をさせることが可能になる。なお、画角変化量が小さく、顔サイズの変化量が、検出時のサイズのバラつきに埋もれるような量であれば、非ズーム時と同じ移動判定処理を行ってもよい。
【００６８】
続いて、閾値Ｔｈ１（第３の閾値）と閾値Ｔｈ２（第４の閾値）との間の領域２４０２に関しては、ズーム倍率と顔サイズを比較して近づき判定を行う。領域２４０２は、撮影者が被写体の変化に合わせて画角を継続的に調整している可能性が高い。また、ズームの変化が十分にあるため、ズーム倍率と顔サイズを比較し、近づき判定を行った場合の判定性能も高い。本実施形態では、１５％〜６５％の範囲内に限定しているが、レンズの倍率に応じて閾値を変化させ、または、ズーム倍率の初期値や撮影モードによって範囲を変化させることが好ましい。
【００６９】
最後に、閾値Ｔｈ２以上の領域２４０３は、ズームの変化が非常に大きいため、被写体が変更された可能性が高い。また、ズームアウトの場合、画角が広角になるため、被写界深度が深くなり、被写体移動によるボケの発生確率が低くなる。このため、領域２４０３では、移動判定結果をクリアする。
【００７０】
なお、不図示であるが、ズーム倍率の条件に加え、ズーム時間を追加することも可能である。例えば、非常に短い時間（０．５秒以内など）でズーム操作が終了した場合、誤ったズーム操作、もしくは、画角の微調整の可能性が高いため、領域２４０１と同じように、ズーム開始前の移動判定結果を維持する。一方、被写体の移動に合わせたズーム操作は、画角調整と比較し、長時間のズーム操作をすることが考えられる。よって、領域２４０２、かつ、０．５秒以上のズーム操作が継続された場合にのみズーム時の移動判定処理を実行することも可能である。前述の説明は、広角側へのズーム操作について説明を行ったが、望遠側へのズーム操作でも同じ処理を行うことで、同様の効果が得られる。
【００７１】
次に、図１７を参照して、移動の終了判定処理について説明する。図１７は、終了判定処理を示すフローチャートである。まずステップＳ１７０１において、カメラ／ＡＦマイコン１１４は、終了判定処理を開始する。続いてステップＳ１７０２において、カメラ／ＡＦマイコン１１４は、平均顔サイズの２次微分値を算出する。以下、２次微分値の具体的な算出方法について説明する。
【００７２】
まず、カメラ／ＡＦマイコン１１４は、図７のステップＳ７０２にて算出された平均顔サイズと所定時間前に算出された平均顔サイズとの差を計算することにより、１次微分値を算出する。算出した１次微分値は、カメラ／ＡＦマイコン１１４内のメモリに記録される。続いて、カメラ／ＡＦマイコン１１４は、メモリに記録されている１次微分値と所定時間前に算出してメモリに記録した１次微分値との間の変化量を計算することにより、２次微分値を算出する。算出した２次微分値は、所定時間前の平均顔サイズの１次微分値に対して今回算出した平均顔サイズの１次微分値がどれだけ変化しているか（変化量）を示す値である。
【００７３】
続いてステップＳ１７０３において、今回検出された顔サイズが前回検出された顔サイズと比較して小さくなっているか大きくなっているかを判定するため、平均顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ）を比較する。まず、現在の平均顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ［０］）と一つ前の履歴である平均顔サイズ（ＦａｃｅＡｖｅＳｉｚｅ［１］）との差を求める。このため、カメラ／ＡＦマイコン１１４は、ＦａｃｅＡｖｅＳｉｚｅＤｉｆｆ＝ＦａｃｅＡｖｅＳｉｚｅ［０］−ＦａｃｅＡｖｅＳｉｚｅ［１］の計算を行い、ステップＳ１７０４に進む。続いてステップＳ１７０４において、現在、近付きが要因となって移動判定フラグがセットされているのか、遠ざかりが要因となって移動判定フラグがセットされているのかを判定する。近付きが要因となって移動判定フラグがセットされている場合、ステップＳ１７０５に進む。一方、遠ざかりが要因となって移動判定フラグがセットされている場合、ステップＳ１７０９に進む。
【００７４】
続いてステップＳ１７０５において、顔サイズが小さくなる（ＦａｃｅＡｖｅＳｉｚｅＤｉｆｆが負の値である）場合、カメラ／ＡＦマイコン１１４は、移動が減速または終了したと判定し、ステップＳ１７０６に進む。一方、顔サイズが大きくなっている（ＦａｃｅＡｖｅＳｉｚｅＤｉｆｆが０以上）の場合、ステップＳ１７０７に進む。ステップＳ１７０６において、カメラ／ＡＦマイコン１１４は、被写体の移動が減速または終了していると判定する。そしてステップＳ１７１３に進み、本フローを終了する。一方、ステップＳ１７０７において、カメラ／ＡＦマイコン１１４は、ステップＳ１７０２にて算出した平均顔サイズの２次微分値と近付き減速閾値とを比較する。そして、平均顔サイズの２次微分値が近付き減速閾値以下の場合、ステップＳ１７０６に進む。一方、平均顔サイズの２次微分値が近付き減速閾値よりも大きい場合、ステップＳ１７０８に進む。ステップＳ１７０８において、カメラ／ＡＦマイコン１１４は、被写体の移動が継続していると判定する。そしてステップＳ１７１３に進み、本フローを終了する。
【００７５】
続いてステップＳ１７０９において、顔サイズが大きくなる（ＦａｃｅＡｖｅＳｉｚｅＤｉｆｆが正の値である）場合、カメラ／ＡＦマイコン１１４は、移動が減速または終了したと判定し、ステップＳ１７１０に進む。一方、顔サイズが小さくなっている（ＦａｃｅＡｖｅＳｉｚｅＤｉｆｆが０以下）の場合、ステップＳ１７１１に進む。ステップＳ１７１０において、カメラ／ＡＦマイコン１１４は、被写体の移動が減速または終了していると判定する。そしてステップＳ１７１３に進み、本フローを終了する。一方、ステップＳ１７１１において、カメラ／ＡＦマイコン１１４は、ステップＳ１７０２にて算出した平均顔サイズの２次微分値と遠ざかり減速閾値とを比較する。平均顔サイズの２次微分値が遠ざかり減速閾値以上の場合、ステップＳ１７１０に進む。一方、平均顔サイズの２次微分値が遠ざかり減速閾値よりも小さい場合、ステップＳ１７１２に進む。ステップＳ１７１２において、カメラ／ＡＦマイコン１１４は、被写体の移動が継続していると判定する。そしてステップＳ１７１３に進み、本フローを終了する。
【００７６】
ここで、「近付き減速閾値」とは、被写体がある速度で近付いている状態から減速または移動が終了した場合において、カメラ／ＡＦマイコン１１４が減速または移動が終了したと判定するときの変化率である。また、「遠ざかり減速閾値」とは、被写体がある速度で遠ざかっている状態から減速または移動が終了した場合において、カメラ／ＡＦマイコン１１４が減速または移動が終了したと判定するときの変化率である。本実施形態において、近付き減速閾値と遠ざかり減速閾値は、経験的に顔サイズの１０％とし、近付き減速閾値は０以下の値、遠ざかり減速閾値は０以上の値とする。また、近付き減速閾値の絶対値と遠ざかり減速閾値の絶対値は同じ値であってもよく、または、互いに異なる値であってもよい。また、「所定時間前」とは、２次微分値が減速または停止しているか否かを近付き減速閾値と遠ざかり減速閾値によって判定できる値として、１５フレーム前とする。ただし、設定した「近付き減速閾値」、「遠ざかり減速閾値」、および「所定時間」は、システムに応じて任意に変更可能である。
【００７７】
以上の図１７に示される終了判定処理において、平均顔サイズに応じて被写体が減速または移動が終了しているか否かを判定しているが、これに限定されるものではない。例えば、顔や人体などの位置に関して２次微分値を算出し、減速または移動が終了しているか否かを判定する方法を採用してもよい。また、目や口を検出可能なシステムである場合、両目（又は目と口）の間隔に関して２次微分値を算出し、減速または移動が終了しているか否かを判定することもできる。また、両目の間隔に対する目と口の間隔の比率を算出し、算出した比率に関して２次微分値を算出して減速または移動が終了しているか否かを判定してもよい。このように、予め定められた被写体の動きの減速や終了を判定可能な情報であれば、所定部位のサイズ、複数の部位間の距離、複数のサイズや距離の間の比率についての相対的情報など、被写体のどのような形状情報であってもよい。
【００７８】
次に、図８を参照して、被写体安定判定処理（図７のステップＳ７０７）について説明する。図８は、被写体安定判定処理を示すフローチャートである。まず、ステップＳ８０１において、カメラ／ＡＦマイコン１１４は、被写体安定判定処理を開始する。続いてステップＳ８０２において、カメラ／ＡＦマイコン１１４は、平均顔サイズの２次微分値を算出する。続いてステップＳ８０３において、カメラ／ＡＦマイコン１１４は、ステップＳ８０２にて算出した２次微分値が所定の閾値（所定値）以下であるか否かを判定する。算出した２次微分値が所定の閾値以下である場合、所定時間前の平均顔サイズの１次微分値に対して今回算出した平均顔サイズの１次微分値の変化量が小さいため、被写体は安定していると判定し、ステップＳ８０４へ進む。一方、算出した２次微分値が所定の閾値より大きい場合、所定時間前の平均顔サイズの１次微分値に対して今回算出した平均顔サイズの１次微分値の変化量が大きいため、被写体は安定していないと判定し、ステップＳ８０７へ進む。
【００７９】
本実施形態において、ステップＳ８０３の判定基準である所定の閾値（所定値）は、経験的に平均顔サイズの１０％の値とする。また、「所定時間前」とは、２次微分値が安定しているか否かを所定の閾値によって判定可能である値として、１５フレーム前とする。ただし、本実施形態において、設定した閾値および所定時間は、システムに応じて任意に変更可能である。
【００８０】
続いてステップＳ８０４において、カメラ／ＡＦマイコン１１４は、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）をカウントアップし、ステップＳ８０５へ進む。なお、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）は、算出された平均顔サイズが連続して安定している期間をカウントする変数である。従って、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）が所定期間（ＳｔａｂｌｅＴＨとする）を超えた以降の平均顔サイズは安定している平均顔サイズであると判定することができる。本実施形態において、所定期間（ＳｔａｂｌｅＴＨ）は１５フレームである。また、所定期間（ＳｔａｂｌｅＴＨは、平均顔サイズが連続して安定している期間をカウントする変数であるため、２次微分値を算出するときに用いられる所定時間（本実施形態においては１５フレーム）以下の期間である必要がある。ステップＳ８０７では、平均顔サイズの２次微分値が閾値より大きい値であるため、カメラ／ＡＦマイコン１１４はタイマ（ＳｔａｂｌｅＴｉｍｅｒ）をクリア（本実施形態では０）する。
【００８１】
続いてステップＳ８０５において、カメラ／ＡＦマイコン１１４は、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）が閾値である所定期間（ＳｔａｂｌｅＴＨ）未満であるか否かを判定する。タイマ（ＳｔａｂｌｅＴｉｍｅｒ）が所定期間（ＳｔａｂｌｅＴＨ）未満である場合、ステップＳ８０６に進む。一方、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）が所定期間（ＳｔａｂｌｅＴＨ）以上である場合、ステップＳ８０８に進む。ステップＳ８０６において、カメラ／ＡＦマイコン１１４は、ステップＳ７０２にて算出した平均顔サイズはタイマ（ＳｔａｂｌｅＴｉｍｅｒ）が所定期間（ＳｔａｂｌｅＴＨ）を超えるまでは連続して安定していないと判定する。そして、安定フラグをオフにして、本フローを終了する。一方、ステップＳ８０８において、カメラ／ＡＦマイコン１１４は、ステップＳ７０２にて算出した平均顔サイズは、タイマ（ＳｔａｂｌｅＴｉｍｅｒ）が所定期間（ＳｔａｂｌｅＴＨ）以上の期間連続して安定している値であると判定する。そして、安定フラグをオンにして、本フローを終了する。
【００８２】
以上の図８の被写体安定判定処理においては、平均顔サイズによって被写体が安定しているか否かを判定しているが、顔や人体などの位置に関して２次微分値を算出して、安定しているか否かを判定してもよい。また、目や口が検出できるシステムである場合、両目（又は目と口）の間隔に関して２次微分値を算出して、安定しているか否かを判定することもできる。また、両目の間隔に対する目と口の間隔の比率を算出し、算出した比率に関して２次微分値を算出して安定しているか否かを判定してもよい。このように、予め定められた被写体の動きの安定度を判定可能な情報であれば、所定部位のサイズ、複数の部位間の距離、複数のサイズや距離の間の比率についての相対的情報など、被写体のどのような形状情報であってもよい。
【００８３】
次に、図９を参照して、移動判定閾値の設定処理（図７のステップＳ７１０）について説明する。図９は、移動判定閾値の設定処理を示すフローチャートである。まずステップＳ９０１において、カメラ／ＡＦマイコン１１４は、移動判定閾値の設定処理を開始する。そしてステップＳ９０２において、カメラ／ＡＦマイコン１１４は、変倍レンズ１０２（ズームレンズ）の位置（ズームレンズ位置）を取得する。変倍レンズ１０２の駆動源（ズーム駆動源１１０）がステップモータである場合、そのステップ数であり、レンズがテレ側とワイド側のどの位置にいるかを判定するために用いられる。
【００８４】
続いてステップＳ９０３において、カメラ／ＡＦマイコン１１４は、図１０に示されるズームレンズ位置と基準移動判定閾値Ｔｈとの関係グラフに基づいて、現在のズーム位置に応じた基準移動判定閾値Ｔｈを取得する。図１０において、縦軸は顔サイズの変化の割合（％）を示し、横軸はズームレンズ位置を示している。図１０のグラフに示されるズームレンズ位置と基準移動判定閾値Ｔｈとの関係は、絞り値Ｆｂａｓｅを一定にした状態で、各ズームレンズ位置においての被写界深度の前端と顔サイズの変化量の関係から算出される。
【００８５】
予め定められた被写体にピントが合っている状態で被写体が移動した場合、被写界深度を超えた時点から画面上にボケが認識され始めるため、基準移動判定閾値Ｔｈは、被写界深度よりも小さい値に設定される。これにより、被写体がボケ始める前に、移動の有無を判定し、フォーカスレンズを駆動することが可能になり、被写体への追従性能が向上する。実際の基準移動判定閾値Ｔｈの算出の際には、各ズームレンズ位置に応じた基準移動判定閾値Ｔｈのテーブルをカメラ／ＡＦマイコン１１４内に持ち、ズームレンズ位置に対応する基準移動判定閾値Ｔｈを決定する。
【００８６】
被写界深度は、以下の式（１ａ）、（１ｂ）を用いて算出される。
【００８７】
Ｄｎ＝ｓ（Ｈ−ｆ）／（Ｈ＋ｓ−２ｆ）  …  （１ａ）
Ｄｆ＝ｓ（Ｈ−ｆ）／（Ｈ−ｓ）        …  （１ｂ）
ここで、ｓは被写体距離、Ｄｎ、Ｄｆはそれぞれ、被写界深度の前端、後端である。また、Ｈは過焦点距離である。過焦点距離Ｈは、レンズの焦点距離をｆ、レンズの絞り値をＮ、許容錯乱円の直径をｃとすると、以下の式（２）のように表される。
【００８８】
Ｈ＝ｆ×ｆ／Ｎ×ｃ  …  （２）
続いてステップＳ９０４において、カメラ／ＡＦマイコン１１４は、現在の絞り値Ｆｎｏ（Ｆ値）を取得する。絞り値Ｆｎｏは、絞り１０３の駆動量から取得される。続いてステップＳ９０５において、カメラ／ＡＦマイコン１１４は、基準移動判定閾値Ｔｈに対して絞り１０３に応じた補正を行う。被写界深度は、絞り値Ｆｎｏに応じて変化するため、カメラ／ＡＦマイコン１１４は、取得した現在の絞り値Ｆｎｏと図１０の基準移動判定閾値Ｔｈを算出した際の絞り値Ｆｂａｓｅとを比較する。補正後の移動判定閾値Ｔｈ２は、以下の式（３）のように算出される。
【００８９】
Ｔｈ２＝（（現在の絞り値Ｆｎｏ）／（基準絞り値Ｆｂａｓｅ））×（基準移動判定閾値Ｔｈ）  …  （３）
このように、前記閾値および所定量は、被写界深度に応じて決定され、被写体が被写界深度の分を移動した場合の被写体の大きさの変化量よりも小さい量に設定される。
【００９０】
続いてステップＳ９０６において、カメラ／ＡＦマイコン１１４は、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）を取得する。そしてステップＳ９０７において、カメラ／ＡＦマイコン１１４は、顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）に応じて基準移動判定閾値Ｔｈを補正する。図１１は、顔基準サイズと補正係数Ｋとの関係を示すグラフである。図１１において、縦軸は顔サイズの変化の割合（％）を示し、横軸は顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）を示している。顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）が大きくなると、検出される顔サイズのバラツキが大きくなるため、補正を行う必要がある。カメラ／ＡＦマイコン１１４は、取得した顔基準サイズ（ＦａｃｅＢａｓｅＳｉｚｅ）と補正係数Ｋとの関係から、以下の式（４）に基づいて補正後の移動判定閾値Ｔｈ３を算出する。
【００９１】
Ｔｈ３＝（補正係数Ｋ）×（移動判定閾値Ｔｈ２）  …  （４）
前記閾値および所定量は、被写体の大きさ（検出手段により検出された被写体状況）に応じて変更され、被写体の大きさの基準値との差に応じて変更される。
【００９２】
続いてステップＳ９０８において、カメラ／ＡＦマイコン１１４は、顔検出部１１６の出力信号に基づいて顔の信頼度を取得する。前述のとおり、顔の信頼度は、１〜５の５段階で評価され、評価５において信頼度が一番高く、評価１において信頼度が一番低い。そしてステップＳ９０９において、カメラ／ＡＦマイコン１１４は、顔信頼度を用いて、移動判定閾値を補正する。信頼度が低い場合、検出された顔サイズのバラツキが大きくなることや、少ないとしても誤検出している可能性があるため、閾値補正を行い、閾値を高く設定する必要がある。本実施形態では、顔信頼度が３以下の場合、補正係数Ｋ’として１．５を設定し、取得した顔信頼度を用いて、以下の式（５）に基づいて補正後の移動判定閾値Ｔｈ４を算出する。
【００９３】
Ｔｈ４＝（補正係数Ｋ’）×（移動判定閾値Ｔｈ３）  …  （５）
前記閾値および所定量は、顔の確からしさを表す信頼度（検出手段により検出された被写体状況）に応じて変更され、信頼度が低い場合は、大きい量に変更される。
【００９４】
続いてステップＳ９１０において、カメラ／ＡＦマイコン１１４は、顔検出部１１６の出力信号に基づいて、横顔らしさの信頼度を取得する。前述のとおり、横顔らしさの信頼度は１〜５の５段階で評価され、評価５において横顔の可能性が一番高く、評価１において横顔の可能性が一番低い。そしてステップＳ９１１において、カメラ／ＡＦマイコン１１４は、横顔らしさの信頼度を用いて、移動判定閾値を補正する。横顔の信頼度が高い場合、検出された顔サイズのバラツキが大きくなることや、少ないとしても誤検出している可能性がある。このため、閾値の補正を行い、閾値を高く設定する必要がある。本実施形態では、横顔らしさの信頼度が３以上の場合、補正係数Ｋ’’として１．５を設定し、取得した横顔らしさの信頼度を用いて、以下の式（６）に基づいて補正後の移動判定閾値Ｔｈ５を算出する。
【００９５】
Ｔｈ５＝（補正係数Ｋ’’）×（移動判定閾値Ｔｈ４）  …  （６）
前記閾値および所定量は、顔が横を向いているかを表す信頼度（検出手段により検出された被写体状況）に応じて変更され、信頼度が高い場合は、大きい量に変更される。
【００９６】
続いてステップＳ９１２において、カメラ／ＡＦマイコン１１４は、ユーザによる設定や撮影条件などの情報に基づいて、撮影モードを決定する。一般的な撮像装置は、撮影シーンに最適な撮影パラメータを設定するため、図１２に示されるように複数の撮影モードを備えている。そしてステップＳ９１３において、カメラ／ＡＦマイコン１１４は、撮影モードに応じて移動判定閾値を補正する。図１２は、撮影モードと補正係数Ｋ’’’との関係を示す図である。図１２に示されるように、被写体の動きが多いと想定される撮影モードでは、閾値を低く設定するように係数Ｋ’’’を１以下の値にし、オートフォーカスの応答性を高くしている。一方、被写体の動きが少ないと想定される撮影モードでは、移動判定の閾値を高くするように、係数Ｋ’’’の値を高く設定し、オートフォーカスの安定性を重視する。カメラ／ＡＦマイコン１１４は、取得した撮影モードと、図１２に示される関係から決定される補正係数Ｋ’’’を用いて、以下の式（７）に基づいて補正後の移動判定閾値Ｔｈ６を算出する。
【００９７】
Ｔｈ６＝（補正係数Ｋ’’’）×（移動判定閾値Ｔｈ５）  …  （７）
前記閾値および所定量は、撮影モード（撮影パラメータ）に応じて変更される。撮影モードが動きの多い被写体を撮影するモードに設定されている場合、閾値および所定量は大きい量に変更される。一方、撮影モードが動きの少ない被写体を撮影するモードに設定されている場合、閾値および所定量は、小さい量に変更される。
【００９８】
続いてステップＳ９１４において、カメラ／ＡＦマイコン１１４は、合焦度合を取得（算出）する。合焦度合は、評価枠内のＡＦ評価値のピークホールドした値を、各ラインの輝度レベルの最大値と最小値の差で割った値である。合焦度合は０〜１で表され、合焦している被写体の場合、ＡＦ評価値のピークホールドと輝度レベルの差が同じ値になる傾向があるため、合焦度合は１に近づく。合焦度合が低い被写体は、ボケが発生している可能性が高く、顔サイズの信頼性が低くなることがあるため、移動判定の閾値を高くなるように設定する。例えば、取得した合焦度合を用いて、合焦度合が０．５以下である場合、補正係数Ｋ’’’’を１．５と設定し、以下の式（８）に基づいて、補正後の移動判定閾値Ｔｈ７を算出する。
【００９９】
Ｔｈ７＝（補正係数Ｋ’’’’）×（移動判定閾値Ｔｈ６）  …  （８）
前記閾値および所定量は、ＡＦ評価値のレベルの状態とフォーカスレンズの駆動状態から推定される合焦度合（撮影パラメータ）に応じて変更される。合焦度合が低い場合、閾値および所定量は大きい量に変更される。なお、これらの補正係数は、例えば撮像装置１００に応じて十分な測定を行って決定され、前記各具体的数値に限定されるものではない。
【０１００】
続いてステップＳ９１６において、ステップＳ９１５にて算出された移動判定閾値Ｔｈ７にリミットを設定する。上記補正方法の場合、補正の積み重ねにより、移動判定閾値が基準移動判定閾値の数倍になり、移動判定の閾値としては適当でない場合がある。このため、閾値の上限を設定する。移動判定閾値Ｔｈ７が、基準移動判定閾値Ｔｈの２倍を超える場合、ステップＳ９１８に進む。一方、移動判定閾値Ｔｈ７が基準移動判定閾値Ｔｈ２の２倍以下である場合、ステップＳ９１７に進む。本実施形態では、移動判定の精度を維持するためにリミット（上限）を基準移動判定閾値Ｔｈ２の２倍に設定しているが、これに限定されるものではなく、この値（上限値）は、十分な測定を行い誤判定が軽減される値を、任意に設定することが可能である。ステップＳ９１７において、移動判定閾値ＴＨｆａｃｅに移動判定閾値Ｔｈ７を代入し、ステップＳ９１９に進む。ステップＳ９１８において、移動判定閾値Ｔｈ７が大き過ぎるため、閾値としてリミット（上限値）を設定する。最終的な移動判定閾値ＴＨｆａｃｅには、基準移動判定閾値Ｔｈを２倍した値を代入し、ステップＳ９１９に進む。
【０１０１】
ステップＳ９１９において、カメラ／ＡＦマイコン１１４は、移動判定閾値ＴＨｆａｃｅに基づいて、遠ざかり判定と近づき判定の閾値を変更する。顔検出方法として、目の間隔に基づいて顔サイズを決定する方法がある。人物が横を向いた場合、目の間隔が小さくなることにより、被写体までの距離が変化していないにも関わらず、検出された顔サイズが小さくなる。そのため、被写体の遠ざかり検出を行ってしまう場合がある。そこで、近づき検出閾値ＴＨｎｅａｒよりも、遠ざかり検出閾値ＴＨｆａｒを大きく設定することにより、横顔撮影時のサイズ変化による誤判定を低減する。本実施形態では、遠ざかり検出の閾値を１．５倍として大きくしているが、この値としては、十分な測定を行い誤判定が軽減される任意の値を設定可能である。前記閾値および所定量は、前記判定の結果（被写体状況）が遠ざかりである場合と近づきである場合とで互いに異なる値となるように設定される。判定の結果が遠ざかりである場合、近づきである場合よりも大きい量が閾値および所定量として設定される。
【０１０２】
以上が移動判定閾値設定の処理フローであり、近づき検出閾値ＴＨｎｅａｒおよび遠ざかり検出閾値ＴＨｆａｒを算出する処理である。この処理の際に使用される係数や式は一例であり、これらに限定されるものではない。
【０１０３】
次に、図１８を参照して、移動判定領域の設定処理（図７のステップＳ７０３’）について説明する。図１８は、移動判定領域の設定処理を示すフローチャートである。まずステップＳ１８０１において、カメラ／ＡＦマイコン１１４は、移動判定領域の設定処理を開始する。そしてステップＳ１８０２において、次の処理が行われる。ユーザが、検出された被写体に対して、いわゆる主顔ロック機能、主顔固定機能、または、個人認証機能を用いて、意図的に他の顔が主顔になるような移り変わりを禁止している場合（主顔が固定されている場合）、移動判定領域を設定する必要はない。このため、ステップＳ１８０２において、主顔が固定されている場合、ステップＳ１８１０に進む。一方、主顔が固定されていない場合、ステップＳ１８０３に進む。
【０１０４】
ステップＳ１８０３において、カメラ／ＡＦマイコン１１４は、顔の検出位置を取得する。取得された顔位置は、配列された記憶部（ＦａｃｅＰｏｓＸ［０］）、（ＦａｃｅＰｏｓＹ［０］）に格納される。同時に、前回に処理したデータは記憶部（ＦａｃｅＰｏｓＸ［１］）、（ＦａｃｅＰｏｓＹ［１］）に移動する。続いてステップＳ１８０４において、カメラ／ＡＦマイコン１１４は、焦点距離を取得する。本実施形態では、３５ｍｍ換算された焦点距離の値（ＦｏｃａｌＬｅｎｇｔｈ）が取得される。
【０１０５】
続いてステップＳ１８０５において、図１９に示されるグラフ（被写体判定領域の画面に対する割合を示す図）に基づいて、基準となる判定領域ＦａｃｅＡｒｅａＸ、ＦａｃｅＡｒｅａＹを参照する。なお、判定領域は、ワイド側のほうが小さく、テレ側のほうが大きい。これは、以下の３つの理由からである。第一に、ワイド側のほうが広い画角を有するため、狙った被写体以外が画面内に存在する可能性がある。第二に、ワイド側のほうが深い被写界深度を有するため、積極的に移動判定を行わなくてもよい。第三に、ワイド側のほうが、手振れなどにより被写体が画面中央から大きく外れることが少ない。
【０１０６】
本実施形態において、広角側（ワイド側）では、被写体距離が数メートルの被写体に対して、バストアップが入る程度の大きさを考慮し、Ｘ方向を約３０％、Ｙ方向を約７０％に制限している。また、図１９に示されるように、焦点距離が１２０ｍｍ付近で、主被写体以外の被写体が入る可能性が低くなると想定し、判定領域の制限を行わないようにすることが好ましい。
【０１０７】
続いてステップＳ１８０６において、カメラ／ＡＦマイコン１１４は、顔検出個数を取得する。そしてステップＳ１８０７において、顔検出の個数に応じて、カメラ／ＡＦマイコン１１４は、補正係数Ｊを設定する。本実施形態において、通常、主被写体は１つまたは２つであると考えられる。このため、多くの（例えば５つ以上）の顔が検出されている場合、人ごみでの撮影である可能性が高いと予想し、判定の領域を小さくするように設定する。このため、補正係数として０．８を設定する。一方、多く（５つ以上の）顔が検出されない場合、補正係数を１．０に設定して、補正は行わない。移動判定領域ＦａｃｅＡｒｅａＸ’、ＦａｃｅＡｒｅａＹ’は、それぞれ、以下の式（９ａ）、（９ｂ）を用いて算出される。
【０１０８】
ＦａｃｅＡｒｅａＸ’＝（補正係数Ｊ）×（ＦａｃｅＡｒｅａＸ）  …  （９ａ）
ＦａｃｅＡｒｅａＹ’＝（補正係数Ｊ）×（ＦａｃｅＡｒｅａＹ）  …  （９ｂ）
続いてステップＳ１８０８において、カメラ／ＡＦマイコン１１４は、顔の横の移動量を算出する。顔の移動量を算出するために、顔位置の二つの差分をＦａｃｅＤｉｆｆＸ＝ＦａｃｅＰｏｓＸ［０］−ＦａｃｅＰｏｓＸ［１］に格納する。続いてステップＳ１８０９において、カメラ／ＡＦマイコン１１４は、顔の横の移動量に応じて、補正係数Ｊ’を設定する。本実施形態において、移動量ＦａｃｅＤｉｆｆＸが画面に対して２０％以上である場合、被写体が画面外に抜けていく可能性があるため、判定の領域を小さく設定する。このため、補正係数として０．８を設定する。一方、移動量ＦａｃｅＤｉｆｆＸが画面に対して２０％未満である場合、補正係数を１．０に設定して、補正を行わない。移動判定領域ＦａｃｅＡｒｅａＸ’’、ＦａｃｅＡｒｅａＹ’’は、それぞれ、以下の式（１０ａ）、（１０ｂ）を用いて算出される。
【０１０９】
ＦａｃｅＡｒｅａＸ’’＝（補正係数Ｊ’）×（ＦａｃｅＡｒｅａＸ’）  …  （１０ａ）
ＦａｃｅＡｒｅａＹ’’＝（補正係数Ｊ’）×）（ＦａｃｅＡｒｅａＹ’）  …  （１０ｂ）
一方、ステップＳ１８１０では、主顔ロックがされている（主顔が固定されている）ため、ＦａｃｅＡｒｅａＸ’’とＦａｃｅＡｒｅａＹ’’にそれぞれ１．０（補正係数１．０）を設定し、判定領域は制限しない（補正を行わない）。
【０１１０】
続いてステップＳ１８１１において、カメラ／ＡＦマイコン１１４は、判定領域の４隅の位置を以下の式（１１ａ）〜（１１ｄ）を用いてそれぞれ算出する。まず、判定枠の中心位置（ｘ、ｙ）を設定する。この値は任意の値でよい。本実施形態では、図２０に示されるように、判定枠の中心位置（ｘ、ｙ）を、画面中央よりも少し上の位置に設定する。これは、被写体が入る可能性が高いからである。
【０１１１】
ＪｕｄｇｅＦａｃｅＡｒｅａＸ＿Ｌｅｆｔ＝（中心位置ｘ）−（（Ｘ方向画素数）×（ＦａｃｅＡｒｅａＸ’’）／２）  …  （１１ａ）
ＪｕｄｇｅＦａｃｅＡｒｅａＸ＿Ｒｉｇｈｔ＝（中心位置ｘ）＋（（Ｘ方向画素数）×（ＦａｃｅＡｒｅａＸ’’）／２）  …  （１１ｂ）
ＪｕｄｇｅＦａｃｅＡｒｅａＹ＿Ｕｐ＝（中心位置ｙ）−（（Ｙ方向画素数）×（ＦａｃｅＡｒｅａＹ’’）／２）  …  （１１ｃ）
ＪｕｄｇｅＦａｃｅＡｒｅａＹ＿Ｄｏｗｎ＝（中心位置ｙ）＋（（Ｙ方向画素数）×（ＦａｃｅＡｒｅａＹ’’）／２）  …  （１１ｄ）
このように求めた座標に囲まれた範囲が移動判定領域である。この移動判定領域内に顔が検出された場合のみ、カメラ／ＡＦマイコン１１４は、移動判定を行う。前述の処理が終了した場合、ステップＳ１８１２に進み、本フローを終了する。
【０１１２】
以上のように、本実施形態では、カメラ／ＡＦマイコン１１４（制御手段）中の判定手段１１４ａは、検出手段により検出された被写体の状況である被写体の個数が多いほど小さくなるように判定領域を決定する。また、判定手段１１４ａは、検出手段により検出された被写体の状況である被写体の移動量が大きいほど小さくなるように判定領域を決定する。また判定手段１１４ａは、撮像素子１０６上の一部を判定領域と設定するモード、および、撮像素子１０６上の全部を判定領域と設定するモードを有する。そして、撮影者による所定の被写体の特定がなされている場合、撮像素子１０６上の全部を判別領域と設定するモードに切り替える。ここで、「撮影者による所定の被写体の特定」とは、個体認証、被写体追尾、被写体ロックのうちの少なくとも１つの撮影設定がなされた状態である。
【０１１３】
次に、図１４乃至図１６を参照して、揺れ検出処理（図７のステップＳ７２１）について説明する。本実施形態では、カメラ／ＡＦマイコン１１４（制御手段）に含まれる揺れ検出手段が揺れ検出処理を実行する。揺れ検出処理は、人物が撮像装置１００に向かって歩いたり走ったりして近づいてくる場合に、顔や体が上下と左右に周期的に振動することに着目する。そして、取得した顔検出位置の結果を横方向と縦方向の座標に分解して、それぞれの方向の位置が振動しているか否かを検出する。
【０１１４】
まず、図１５を参照して、人物がカメラに向かって歩いたり走ったりして近付いてくるときの顔や体の振動について説明する。本実施形態において、顔検出位置の横方向の座標をｘ座標、縦方向の座標をｙ座標とする。また、画像の左上を原点として、ｘ座標は画像の右端に近付くほど、ｙ座標は画像の下端に近付くほど夫々大きな座標値を取ることとする。本実施形態では、監視する被写体の位置を顔検出位置（例えば、顔の中心）とするが、体の他の部位の中心、人物の顔に配置されている器官（目、耳、鼻、口など）のうちの少なくとも２つの器官間の中心位置などであってもよい。
【０１１５】
人物が二足歩行する場合、顔や体は左右と上下に揺れる。ここで、検出した顔や体の位置座標の軌跡は、図１５（ａ）に示されるような所謂８の字形状（軌跡１）や、図１５（ｂ）に示されるような所謂Ｕの字形状（軌跡２）を描く。図１５（ａ）をｘ座標とｙ座標に分解して時間方向にそれぞれプロットすると、図１５（ｃ）に示されるような軌跡となる。図１５（ｃ）より、縦方向の振動は、横方向の振動の２倍の周波数（２分の１の周期）で振動していることが分かる。したがって、体が左右方向に１往復揺れるとき、上下方向には２往復揺れるという特徴がある。また、図１５（ｃ）のｙ座標の軌跡を、例えば１／２周期ずつ遅らせていくと、ｘ、ｙ座標において図１５（ｂ）の軌跡をＡ、Ｂ、Ｃ、Ｄ、Ａ、…の順番で周期的に辿ることになる。さらに、ｘ座標の軌跡とｙ座標の軌跡の位相は人物によって異なる。
【０１１６】
以上より、人物の歩行を捉えるには、軌跡形状が図１５（ａ）、（ｂ）に示されるものに限定されるものではなく、他の形状であっても、縦方向と横方向に周期的に振動しており且つ縦方向の周期が横方向の周期の１／２であるという特徴を捉えることが必要である。すなわちカメラ／ＡＦマイコン１１４（揺れ検出手段）は、被写体検出手段から得られる被写体の位置が電気信号の映像信号中において所定の動作特性を満たす場合、揺れていると判定することができる。以下、取得した顔検出位置のｘ座標から横方向の揺れを検出するシステムについて説明するが、縦方向の揺れを検出するシステムは、取得した顔検出位置のｙ座標から以下のシステムと同じシステムを用いて実現できることは明らかである。また以下の説明において、横方向の揺れを検出するシステムと縦方向の揺れを検出するシステムとが異なる場合のみ、縦方向の揺れを検出するシステムについても記述する。
【０１１７】
次に、図１４を参照して、揺れ検出処理（図７のステップＳ７２１）の処理フローについて説明する。図１４は、揺れ検出処理を示すフローチャートである。まずステップＳ１４０１において、カメラ／ＡＦマイコン１１４（揺れ検出手段）は、揺れ検出処理を開始する。そしてステップＳ１４０２において、揺れ検出手段は、最新の顔検出位置および大きさ（以下、最新の顔検出位置を「現在位置」、最新の顔検出の大きさを「現在顔サイズ」という）を取得する。続いてステップＳ１４０３において、揺れ検出手段は、現在位置が記憶されている最大位置よりも大きい座標であるか否かを判定する。現在位置が記憶された最大位置よりも大きい座標の場合、ステップＳ１４０５に進む。一方、現在位置が最大位置以下の座標である場合、ステップＳ１４０４に進む。ステップＳ１４０４において、揺れ検出手段は、現在位置が記憶されている最小位置よりも小さい座標であるか否かを判定する。現在位置が記憶されている最小位置よりも小さい座標の場合、ステップＳ１４０６に進む。一方、現在位置が最小位置以上の座標である場合、ステップＳ１４０７に進む。ステップＳ１４０５において、揺れ検出手段は、現在位置を最大位置として更新し、ステップＳ１４１３に進む。ステップＳ１４０６において、揺れ検出手段は、現在位置を最小位置として更新し、ステップＳ１４１３に進む。
【０１１８】
ステップＳ１４０７において、揺れ検出手段は、極大位置を検出したか否かを判定する。ここで「極大位置」とは、画像中の右方向に移動している顔の位置が左方向に移動方向を変えた場合のｘ座標の最大値である。極大位置の検出方法を具体的に説明する。まず、揺れ検出手段は、現在位置と記憶されている最大位置との差分を算出する。続いて揺れ検出手段は、算出した差分と予め決められた閾値とを比較する。算出した差分が閾値を超えている場合、記憶されている最大位置が極大位置であると判定し、ステップＳ１４０８に進む。すなわち、検出している顔の位置が画像中において、右に移動している状態から左に移動している状態に折り返したと判定する。一方、ステップＳ１４０７において、算出した差分が閾値以下である場合、揺れ検出手段は、記憶している最大値は極大値ではないと判定し、ステップＳ１４１０に進む。ここで、極大位置を検出するために差分と比較される閾値は、現在顔サイズから求める値であり、本実施形態においては現在顔サイズの１０％の値とする。この値は、十分な測定を行って決定される任意の値であり、撮影環境や表情などの影響により顔検出位置がバラつくことで極大位置を誤判定してしまうことがない値とする。
【０１１９】
ステップＳ１４０８において、揺れ検出手段は、以降で極小値を探索するため、記憶されている最小位置をクリアして、ステップＳ１４０９に進む。本実施形態では、現在位置を最小位置に代入することでクリアとする。ただし、最小位置は設定可能な最大の値でもよいし、ｘ座標の場合は画面の右端、ｙ座標の場合は画面の下端の値を代入してもよい。ステップＳ１４０９において、揺れ検出手段は、極大位置Ｃｏｕｎｔを開始する。また、既にカウントを開始している場合、カウント値をリセットしてカウントを再開する。ここで、「極大位置Ｃｏｕｎｔ」とは、ステップＳ１４０７において極大位置が検出されてからの経過時間を計測するための値であり、極大位置Ｃｏｕｎｔがカウントアップ中において、「所定の期間内に移動方向が右から左に反転した」と判定される。ここで「所定の期間」は、本実施形態において、横方向に関しては２秒に設定される。これは、十分な測定を行い、人物の歩行を基準として決定された値である。また、縦方向に関しては横方向のおよそ半分の周期で振動するため、１秒を所定の期間として設定している。ただし本実施形態はこれらの値に限定されるものではない。
【０１２０】
ステップＳ１４１０において、揺れ検出手段は、極小位置を検出したか否かを判定する。ここで「極小位置」とは、画像中の左方向に移動している顔の位置が右方向に移動方向を変えた場合のｘ座標の最小値である。ここで、極小位置の検出方法を具体的に説明する。まず揺れ検出手段は、現在位置と記憶されている最小位置との差分を算出する。続いて揺れ検出手段は、算出した差分と予め決められた閾値とを比較する。算出した差分が閾値を超えている場合、揺れ検出手段は、記憶されている最小位置が極小位置であると判定し、ステップＳ１４１１に進む。すなわち、検出されている顔の位置が、画像中において、左に移動している状態から右に移動している状態に折り返したと判定する。一方、ステップＳ１４１０において、算出した差分が閾値以下である場合、揺れ検出手段は、記憶されている最小値は極小値ではないと判定し、ステップＳ１４１３に進む。ここで、極小位置を検出するために差分と比較される閾値は、現在顔サイズから求められる値であり、本実施形態においては現在顔サイズの１０％の値である。この値は、十分な測定を行って決定する値であり、撮影環境や表情などの影響により顔検出位置がバラつくことで極小位置を誤判定してしまうことがない値とする。
【０１２１】
ステップＳ１４１１において、以降で極大値を探索するため、記憶している顔位置の最大位置をクリアして、ステップＳ１４１２に進む。本実施形態では、現在位置を最大位置に代入することでクリアとする。ただし、最大位置は設定可能な最小の値でもよいし、ｘ座標の場合は画面の左端、ｙ座標の場合は画面の上端の値を代入してもよい。ステップＳ１４１２において、揺れ検出手段は、極小位置Ｃｏｕｎｔを開始する。また、既にカウントを開始している場合、カウント値をリセットしてカウントを再開する。ここで「極小位置Ｃｏｕｎｔ」とは、ステップＳ１４１０において極小位置が検出されてからの経過時間を計測するための値であり、極小位置Ｃｏｕｎｔがカウントアップ中は「所定の期間内に移動方向が左から右に反転した」と判定する。ここで「所定の期間」は、本実施形態において、横方向に関しては２秒である。これは、十分な測定を行い、人物の歩行を基準として決定される。また、縦方向に関しては横方向のおよそ半分の周期で振動するため、１秒を所定の期間として設定する。
【０１２２】
続いてステップＳ１４１３において、揺れ検出手段は、極大位置Ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えているか否かを判定する。極大位置ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えている場合、ステップＳ１４１４に進む。一方、極大位置ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えていない場合、ステップＳ１４１６に進む。ステップＳ１４１４において、極大位置Ｃｏｕｎｔを初期値にクリアしてカウントアップを終了し、ステップＳ１４１５に進む。そしてステップＳ１４１５において、最小位置を現在位置で更新して、ステップＳ１４１７に進む。ステップＳ１４１６において、極大位置Ｃｏｕｎｔをカウントアップし、ステップＳ１４１７に進む。
【０１２３】
続いてステップＳ１４１７において、揺れ検出手段は、極小位置Ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えているか否かを判定する。極小位置ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えている場合、ステップＳ１４１８に進む。一方、極小位置ｃｏｕｎｔが２秒（縦方向の場合は１秒）を超えていない場合、ステップＳ１４２０に進む。ステップＳ１４１８において、極小位置Ｃｏｕｎｔを初期値にクリアしてカウントアップを終了し、ステップＳ１４１９に進む。ステップＳ１４１９において、最大位置を現在位置で更新して、ステップＳ１４２１に進む。ステップＳ１４２０において、極小位置Ｃｏｕｎｔをカウントアップし、ステップＳ１４２１に進む。
【０１２４】
ステップＳ１４２１において、揺れ検出手段は、極大位置Ｃｏｕｎｔおよび極小位置Ｃｏｕｎｔの両方ともカウント中であるか否かを判定する。極大位置および極小位置の両方がカウント中である場合、ステップＳ１４２２に進む。一方、そうでない場合、ステップＳ１４２３に進む。ステップＳ１４２２において、揺れ検出手段は、揺れフラグをオンにセットして本フローを終了する。ステップＳ１４２３では、揺れ検出手段は、揺れフラグをオフにして本フローを終了する。
【０１２５】
以上のように、本実施形態では、判定手段１１４ａは、被写体の大きさの変化量を監視して、変化量に変化が発生した場合であって揺れ検出手段が被写体の揺れを検出している場合、被写体の距離変化があると判定する。一方、変化量に変化が発生した場合であっても揺れ検出手段が被写体の揺れを検出していない場合、被写体の距離変化はないと判定する。そして制御手段は、被写体の距離変化がないと判定された場合、追従制御手段１１４ｂによる追従制御を禁止して焦点調節を行う。一方、被写体の距離変化があると判定された場合、追従制御手段による追従制御を許可して焦点調節を行う。所定の動作特性は、電気信号中において被写体の位置について、第一の所定期間内に縦方向に極大値と極小値を含む所定の振幅以上の振動があり、かつ、第二の所定期間内に横方向に極大値および極小値を含む所定の振幅以上の振動があるという特徴を有する。この所定の振幅は、被写体検出手段から得られる被写体の大きさに対して所定の割合の大きさを有する。また、第一の所定期間（周期）は、第二の所定期間（周期）よりも短く、例えば、第一の所定期間は第二の所定期間の略半分の期間である。
【０１２６】
図１６は、揺れ検出処理の説明図である。まず、タイミングＴ１において、現在位置と最大位置との差分は折り返し検出閾値以上となっている。したがって、タイミングＴ１において記憶されている最大位置が極大位置であると判定される。このため、タイミングＴ１から極大位置Ｃｏｕｎｔが開始する。また、タイミングＴ２において、現在位置と最小位置との差分が折り返し検出閾値以上となっている。したがって、タイミングＴ２において記憶している最小位置が極小位置であると判定される。このため、タイミングＴ２から極小位置Ｃｏｕｎｔが開始する。
【０１２７】
次に、タイミングＴ３において、現在位置と最大位置との差分は折り返し検出閾値以上となっている。したがって、タイミングＴ３において記憶している最大位置は極大位置であると判定される。このため、タイミングＴ３において極大位置Ｃｏｕｎｔが初期化されカウントが再開される。タイミングＴ４においては、極小位置Ｃｏｕｎｔが閾値を超えるため極小位置Ｃｏｕｎｔをクリアしてカウントを終了する。タイミングＴ５においても、極大位置Ｃｏｕｎｔが閾値を超えるため、極大位置Ｃｏｕｎｔをクリアしてカウントを終了する。以上の処理により、図１６中のタイミングＴ２〜Ｔ４の期間において、極大位置Ｃｏｕｎｔと極小位置Ｃｏｕｎｔがともにカウント中であるため、この期間では検出している顔が揺れていると判定される。
【０１２８】
以上のように、本実施形態では、顔検出を用いて被写体の人物にＡＦ評価値でピント合わせを行うとともに、被写体の検出結果に加えて被写体の位置の揺れの検出結果に基づき被写体の距離変化の有無を判定する。そして、検出した顔の位置が所定の動作をしている場合にのみ、被写体が近づいていると判定する。これにより、高精度かつ安定した被写体の移動判定が可能になる。そして、その情報を用いて、フォーカスを被写体の無限または至近の移動に追従駆動させることにより、合焦精度を高めることができる。
【０１２９】
このように本実施形態において、制御手段（カメラ／ＡＦマイコン１１４）は、被写体に関する情報および画角に関する情報に基づいて、被写体に対するフォーカス制御を行う。好ましくは、被写体に関する情報は被写体の大きさ（顔サイズ）であり、画角に関する情報は画角の変化（ズーム位置）である。また好ましくは、制御手段は、ズームレンズ（変倍レンズ１０２）の移動に応じて画角が変化した場合、被写体に関する情報および画角に関する情報に基づいてフォーカス制御を行う。
【０１３０】
好ましくは、撮像装置１００は、被写体に関する情報および画角に関する情報に基づいて被写体の距離変化を判定する判定手段１１４ａを有する。そして制御手段は、判定手段１１４ａによる判定結果に基づいてフォーカス制御を行う。より好ましくは、撮像装置１００は、判定手段による判定結果に基づいてフォーカスレンズを被写体に追従させる追従制御手段１１４ｂを有する。
【０１３１】
好ましくは、判定手段１１４ａは、画角に関する情報に応じて被写体の距離変化の判定方法を切り替える。より好ましくは、判定手段１１４ａは、画角が変化した場合、被写体の大きさの変化および画角の変化に基づいて被写体の距離変化を判定する（Ｓ２１１１）。一方、判定手段１１４ａは、画角が変化していない場合、被写体の大きさの変化に基づいて被写体の距離変化を判定する（Ｓ２１０７）。より好ましくは、判定手段１１４ａは、画角が変化した場合、被写体の大きさの変化率と画角の変化率とを比較する（Ｓ２２０７、Ｓ２２０８）。そして判定手段１１４ａは、被写体の大きさの変化率が画角の変化率よりも大きい場合、被写体が近づいていると判定する（Ｓ２２０９）。より好ましくは、判定手段１１４ａは、被写体の大きさの変化率が画角の変化率よりも小さい場合、被写体が遠ざかっていると判定する（Ｓ２２１０）。
【０１３２】
好ましくは、判定手段１１４ａは、画角の変化率が第１の閾値以下である場合、被写体の距離変化の判定を行わずに、画角の変化前の判定結果を維持する（Ｓ２１０６、Ｓ２１０７）。また好ましくは、判定手段１１４ａは、画角の変化率が第２の閾値以下である場合、被写体の距離変化の判定を行う（Ｓ２１１０、Ｓ２１１１）。ここで、第２の閾値は、第１の閾値よりも大きい。より好ましくは、判定手段１１４ａは、画角の変化率が第２の閾値よりも大きい場合、被写体の距離は変化していないと判定する（Ｓ２１０９、Ｓ２１１０）。
【０１３３】
好ましくは、判定手段１１４ａは、画角の変化量に基づいて、画角の変化前の判定結果を維持するか否かを判定する。より好ましくは、判定手段１１４ａは、画角の変化量が第３の閾値以下である場合、画角の変化前の判定結果を維持する。一方、判定手段１１４ａは、画角の変化量が第３の閾値よりも大きい場合、画角の変化前の判定結果を維持しない。
【０１３４】
前述の実施形態における処理のために、各機能を具現化したソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に提供してもよい。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって、前述した実施形態の機能を実現することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどを用いることができる。或いは、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリーカード、ＲＯＭなどを用いることもできる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれている。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含むものである。
【０１３５】
本実施形態によれば、被写体の顔サイズと画角変化の変化率を比較することで、ズーム中およびズーム後も継続した被写体の移動判定をすることが可能になる。また、画角の変化量を監視することにより、撮影者の意図を読み取り、必要に応じて移動判定を行う。このため、不必要なレンズの駆動を防ぐことが可能になる。これにより、非ズーム時だけでなくズーム時においても、オートフォーカスの安定性と精度の向上が可能になる。このように本実施形態によれば、被写体に対するフォーカス制御を安定かつ高精度に実行可能な撮像装置、撮像装置の制御方法、プログラム、および、記憶媒体を提供することができる。
【０１３６】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【０１３７】
１００  撮像装置
１０６  撮像素子
１１３  ＡＦ信号処理回路（生成手段）
１１４  カメラ／ＡＦマイコン（制御手段）
１１６  顔検出部（検出手段）
【図１】
2015194648.tif 000003
【図２】
2015194648.tif 000004
【図３】
2015194648.tif 000005
【図４】
2015194648.tif 000006
【図５】
2015194648.tif 000007
【図６】
2015194648.tif 000008
【図７】
2015194648.tif 000009
【図８】
2015194648.tif 000010
【図９】
2015194648.tif 000011
【図１０】
2015194648.tif 000012
【図１１】
2015194648.tif 000013
【図１２】
2015194648.tif 000014
【図１３】
2015194648.tif 000015
【図１４】
2015194648.tif 000016
【図１５】
2015194648.tif 000017
【図１６】
2015194648.tif 000018
【図１７】
2015194648.tif 000019
【図１８】
2015194648.tif 000020
【図１９】
2015194648.tif 000021
【図２０】
2015194648.tif 000022
【図２１】
2015194648.tif 000023
【図２２】
2015194648.tif 000024
【図２３】
2015194648.tif 000025
【図２４】
2015194648.tif 000026