(57)【要約】【課題】撮像対象である移動被写体に正確に追従したフォーカス制御を行う。【解決手段】フォーカス制御装置は、第１の焦点検出領域でのデフォーカス量の検出時刻と該デフォーカス量から得られた第１の像面位置とを含む履歴データおよび第２の焦点検出領域でのデフォーカス量の検出時刻と該デフォーカス量から得られた第２の像面位置とを含む履歴データを記憶する記憶手段１０３、１０５と、フォーカス制御領域を選択する選択手段１０２〜１０６とを有する。選択手段は、第１の像面位置の履歴データから第１の像面位置が移動していると判定すると該履歴データを用いて算出した予測デフォーカス量を用いてフォーカス制御領域を選択し、第１の像面位置の履歴データから第１の像面位置が移動していないと判定し、かつ第２の像面位置の履歴データを用いて第２の像面位置が移動していると判定すると、第２の焦点検出領域をフォーカス制御領域として選択する。【選択図】図１
2018197845.tif 000002
【特許請求の範囲】
【請求項１】
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出する焦点検出手段と、
前記複数の焦点検出領域のうち第１の焦点検出領域において前記デフォーカス量が検出された時刻の情報および検出された前記デフォーカス量を用いて算出された第１の像面位置の情報を含む第１の像面位置履歴データ、および前記第１の焦点検出領域とは異なる第２の焦点検出領域において前記デフォーカス量が検出された時刻の情報および検出された前記デフォーカス量を用いて算出された第２の像面位置の情報を含む第２の像面位置履歴データを記憶する記憶手段と、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択手段と、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行う制御手段とを有し、
前記選択手段は、
前記第１の像面位置履歴データを用いて前記第１の像面位置が移動していると判定した場合は、前記第１の像面位置履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の像面位置履歴データを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の像面位置履歴データを用いて前記第２の像面位置が移動していると判定した場合は、該第２の焦点検出領域を前記フォーカス制御領域として選択することを特徴とするフォーカス制御装置。
【請求項２】
前記選択手段は、前記第２の像面位置履歴データを用いて前記第２の像面位置が移動していないと判定した場合は、前記予測デフォーカス量を用いて前記フォーカス制御領域を選択することを特徴とする請求項１に記載のフォーカス制御装置。
【請求項３】
前記選択手段は、前記第２の像面位置履歴データにおいて該第２の像面位置が一方向に変化している場合に前記第２の像面位置が移動しているか否かを判定し、前記第２の像面位置が複数の方向に変化している場合は前記第２の像面位置が移動していないと判定することを特徴とする請求項１または２に記載のフォーカス制御装置。
【請求項４】
前記選択手段は、前記第１の像面位置履歴データを用いて算出した該第１の像面位置の移動速度が第１の所定値より速い場合は該第１の像面位置が移動していると判定し、前記第１の像面位置の移動速度が前記第１の所定値より遅い場合は前記第１の像面位置が移動していないと判定することを特徴とする請求項１または２に記載のフォーカス制御装置。
【請求項５】
前記選択手段は、前記第２の像面位置履歴データを用いて算出した該第２の像面位置の移動速度が第２の所定値より速い場合は該第２の像面位置が移動していると判定し、前記第２の像面位置の移動速度が前記第２の所定値より遅い場合は前記第２の像面位置が移動していないと判定することを特徴とする請求項４に記載のフォーカス制御装置。
【請求項６】
前記第１の所定値が前記第２の所定値よりも小さいことを特徴とする請求項５に記載のフォーカス制御装置。
【請求項７】
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出する焦点検出手段と、
前記複数の焦点検出領域のうち第１の焦点検出領域において前記デフォーカス量が検出された時刻の情報および検出された前記デフォーカス量を用いて算出された第１の像面位置の情報を含む像面位置履歴データを記憶する記憶手段と、
前記第１の像面位置と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する第１の同定手段と、
前記複数の焦点検出領域のうち前記第１の焦点検出領域とは異なる第２の焦点検出領域において前記デフォーカス量から算出された第２の像面位置と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する第２の同定手段と、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択手段と、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行う制御手段とを有し、
前記選択手段は、
前記第１の同定手段により同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していると判定した場合は、前記像面位置履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の同定手段により同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の同定手段により同定された前記第２の被写体の像面位置モデルを用いて前記第２の像面位置が移動していると判定した場合は、該同定された前記第２の被写体の像面位置モデルを用いて前記フォーカス制御領域を選択することを特徴とするフォーカス制御装置。
【請求項８】
前記第１および第２の同定手段は、逐次同定法により前記像面位置モデルを同定することを特徴とする請求項７に記載のフォーカス制御装置。
【請求項９】
前記第１および第２の同定手段は、前記逐次同定法としてカルマンフィルタまたは逐次最小二乗法を用いることを特徴とする請求項８に記載のフォーカス制御装置。
【請求項１０】
前記記憶手段は、撮像方向の変化を検出した場合は、前記第２の像面位置が移動しているか否かの判定を行わないことを特徴とする請求項１から９のいずれか一項に記載のフォーカス制御装置。
【請求項１１】
被写体を撮像する撮像素子と、
請求項１から１０のいずれか一項に記載のフォーカス制御装置とを有することを特徴とする撮像装置。
【請求項１２】
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、
前記複数の焦点検出領域のうち第１の焦点検出領域において検出された前記デフォーカス量を用いて算出された第１の像面位置の情報および該デフォーカス量が検出された時刻の情報を含む第１の像面位置履歴データ、および前記第１の焦点検出領域とは異なる第２の焦点検出領域において検出された前記デフォーカス量を用いて算出された第２の像面位置の情報および該デフォーカス量が検出された時刻の情報を含む第２の像面位置履歴データを記憶するステップと、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行うステップとを有し、
前記選択ステップにおいて、
前記第１の像面位置履歴データを用いて前記第１の像面位置が移動していると判定した場合は、前記第１の像面位置履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の像面位置履歴データを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の像面位置履歴データを用いて前記第２の像面位置が移動していると判定した場合は、該第２の焦点検出領域を前記フォーカス制御領域として選択することを特徴とするフォーカス制御方法。
【請求項１３】
コンピュータにフォーカス制御処理を実行させるコンピュータプログラムであって、
前記フォーカス制御処理は、
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、
前記複数の焦点検出領域のうち第１の焦点検出領域において検出された前記デフォーカス量を用いて算出される像面位置の情報および該デフォーカス量が検出された時刻の情報を含む第１の像面位置の履歴データ、および前記第１の焦点検出領域とは異なる第２の焦点検出領域において検出された前記デフォーカス量を用いて算出される像面位置の情報および該デフォーカス量が検出された時刻の情報を含む第２の像面位置の履歴データを記憶するステップと、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行うステップとを有し、
前記選択ステップにおいて、
前記第１の像面位置の履歴データを用いて前記第１の像面位置が移動していると判定した場合は、前記第１の像面位置の履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の像面位置の履歴データを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の像面位置の履歴データを用いて前記第２の像面位置が移動していると判定した場合は、該第２の焦点検出領域を前記フォーカス制御領域として選択することを特徴とするフォーカス制御プログラム。
【請求項１４】
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、
前記複数の焦点検出領域のうち第１の焦点検出領域において前記デフォーカス量が検出された時刻の情報および検出された前記デフォーカス量を用いて算出された第１の像面位置の情報を含む像面位置履歴データを記憶するステップと、
前記第１の像面位置と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する第１の同定ステップと、
前記複数の焦点検出領域のうち前記第１の焦点検出領域とは異なる第２の焦点検出領域において前記デフォーカス量から算出された第２の像面位置と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する第２の同定ステップと、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行うステップとを有し、
前記選択ステップにおいて、
前記第１の同定ステップにより同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していると判定した場合は、前記像面位置履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の同定ステップにより同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の同定ステップにより同定された前記第２の被写体の像面位置モデルを用いて前記第２の像面位置が移動していると判定した場合は、該同定された前記第２の被写体の像面位置モデルを用いて前記フォーカス制御領域を選択することを特徴とするフォーカス制御方法。
【請求項１５】
コンピュータにフォーカス制御処理を実行させるコンピュータプログラムであって、
前記フォーカス制御処理は、
撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、
前記複数の焦点検出領域のうち第１の焦点検出領域において前記デフォーカス量が検出された時刻の情報および検出された前記デフォーカス量を用いて算出された第１の像面位置の情報を含む像面位置履歴データを記憶するステップと、
前記第１の像面位置と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する第１の同定ステップと、
前記第１の焦点検出領域とは異なる第２の焦点検出領域において前記デフォーカス量から算出された第２の像面位置と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する第２の同定ステップと、
前記複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、
前記フォーカス制御領域において検出された前記デフォーカス量を用いてフォーカス制御を行うステップとを有し、
前記選択ステップにおいて、
前記第１の同定ステップにより同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していると判定した場合は、前記像面位置履歴データを用いて算出した予測デフォーカス量を用いて前記フォーカス制御領域を選択し、
前記第１の同定ステップにより同定された前記第１の被写体の像面位置モデルを用いて前記第１の像面位置が移動していないと判定し、かつ前記第２の同定ステップにより同定された前記第２の被写体の像面位置モデルを用いて前記第２の像面位置が移動していると判定した場合は、該同定された前記第２の被写体の像面位置モデルを用いて前記フォーカス制御領域を選択することを特徴とするフォーカス制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラ等の撮像装置においてフォーカス制御を行うフォーカス制御装置に関する
【背景技術】
【０００２】
撮像画面内に複数の焦点検出領域を有する撮像装置は、該複数の焦点検出領域のうち選択された一部の焦点検出領域においてデフォーカス量を算出し、該デフォーカス量に基づいてフォーカス制御を行う。また、移動被写体の撮像において、選択された焦点検出領域で複数回検出したデフォーカス量とフォーカスレンズ位置とから得られる像面位置の履歴データを用いて予測デフォーカス量を算出し、該予測デフォーカス量に基づいて焦点検出領域を再選択する撮像装置がある。この撮像装置によれば、移動被写体を捉える焦点検出領域が変化しても、被写体に正確に追従したフォーカス制御を行うことができる。
【０００３】
ただし、最初に選択された焦点検出領域が背景等の移動しない被写体を捉えた場合には、複数回の検出でほとんど変化しないデフォーカス量に基づいて予測デフォーカス量が算出される。この場合、移動被写体が撮像装置に向かって近付いてきても誤って障害物と判断される等して、移動被写体に追従したフォーカス制御を行うことができない。
【０００４】
特許文献１には、近付いてくる移動被写体に対しては複数の焦点検出領域のうち算出された像面位置の移動速度（像面速度）が最も大きい焦点検出領域を選択する撮像装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−１３３６７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、撮像画面内に複数の移動被写体が存在する場合等においては、必ずしも像面速度が最も大きい焦点検出領域に捉えられている移動被写体が撮像対象であるとは限らない。例えば運動会の徒競争で走っている子供Ａを撮像する場合に、子供Ａを追い抜いてより速く走る子供Ｂがいてもその子供Ｂは撮像対象ではない。特許文献１にて開示された撮像装置では、子供Ａを捉えている焦点検出領域を子供Ｂを捉えている焦点検出領域に切り替えてしまうため、撮影者の意図に反したフォーカス制御が行われることになる。
【０００７】
本発明は、撮像対象である移動被写体に正確に追従したフォーカス制御を行えるようにしたフォーカス制御装置および撮像装置を提供する。
【課題を解決するための手段】
【０００８】
本発明の一側面としてのフォーカス制御装置は、撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出する焦点検出手段と、複数の焦点検出領域のうち第１の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第１の像面位置の情報を含む第１の像面位置履歴データ、および第１の焦点検出領域とは異なる第２の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第２の像面位置の情報を含む第２の像面位置履歴データを記憶する記憶手段と、複数の焦点検出領域のうちフォーカス制御領域を選択する選択手段と、フォーカス制御領域において検出されたデフォーカス量を用いてフォーカス制御を行う制御手段とを有する。選択手段は、第１の像面位置履歴データを用いて第１の像面位置が移動していると判定した場合は、第１の像面位置履歴データを用いて算出した予測デフォーカス量を用いてフォーカス制御領域を選択する。また、第１の像面位置履歴データを用いて第１の像面位置が移動していないと判定し、かつ第２の像面位置履歴データを用いて第２の像面位置が移動していると判定した場合は、該第２の焦点検出領域をフォーカス制御領域として選択することを特徴とする。なお、上記フォーカス制御装置を有する撮像装置も、本発明の他の一側面を構成する。
【０００９】
また、本発明の他の一側面としてのフォーカス制御方法は、撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、複数の焦点検出領域のうち第１の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第１の像面位置の情報を含む第１の像面位置履歴データ、および第１の焦点検出領域とは異なる第２の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第２の像面位置の情報を含む第２の像面位置履歴データを記憶するステップと、複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、フォーカス制御領域において検出されたデフォーカス量を用いてフォーカス制御を行うステップとを有する。選択ステップにおいて、第１の像面位置の履歴データを用いて第１の像面位置が移動していると判定した場合は、第１の像面位置の履歴データを用いて算出した予測デフォーカス量を用いてフォーカス制御領域を選択する。また、第１の像面位置の履歴データを用いて第１の像面位置が移動していないと判定し、かつ第２の像面位置の履歴データを用いて第２の像面位置が移動していると判定した場合は、該第２の焦点検出領域をフォーカス制御領域として選択することを特徴とする。
【００１０】
また、本発明の他の一側面としてのフォーカス制御装置は、撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出する焦点検出手段と、複数の焦点検出領域のうち第１の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第１の像面位置の情報を含む像面位置履歴データを記憶する記憶手段と、第１の像面位置と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する第１の同定手段と、複数の焦点検出領域のうち第１の焦点検出領域とは異なる第２の焦点検出領域においてデフォーカス量から算出された第２の像面位置と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する第２の同定手段と、複数の焦点検出領域のうちフォーカス制御領域を選択する選択手段と、フォーカス制御領域において検出されたデフォーカス量を用いてフォーカス制御を行う制御手段とを有する。そして、選択手段は、第１の同定手段により同定された第１の被写体の像面位置モデルを用いて第１の像面位置が移動していると判定した場合は、像面位置履歴データを用いて算出した予測デフォーカス量を用いてフォーカス制御領域を選択する。第１の同定手段により同定された第１の被写体の像面位置モデルを用いて第１の像面位置が移動していないと判定し、かつ第２の同定手段により同定された第２の被写体の像面位置モデルを用いて第２の像面位置が移動していると判定した場合は、該同定された第２の被写体の像面位置モデルを用いてフォーカス制御領域を選択することを特徴とする。
【００１１】
また、本発明の他の一側面としてのフォーカス制御方法は、撮像画面内の複数の焦点検出領域のそれぞれにおいてデフォーカス量を検出するステップと、複数の焦点検出領域のうち第１の焦点検出領域においてデフォーカス量が検出された時刻の情報および検出されたデフォーカス量を用いて算出された第１の像面位置の情報を含む像面位置履歴データを記憶するステップと、第１の像面位置と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する第１の同定ステップと、複数の焦点検出領域のうち第１の焦点検出領域とは異なる第２の焦点検出領域においてデフォーカス量から算出された第２の像面位置と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する第２の同定ステップと、複数の焦点検出領域のうちフォーカス制御領域を選択する選択ステップと、フォーカス制御領域において検出されたデフォーカス量を用いてフォーカス制御を行うステップとを有する。選択ステップにおいて、第１の同定ステップにより同定された第１の被写体の像面位置モデルを用いて第１の像面位置が移動していると判定した場合は、像面位置履歴データを用いて算出した予測デフォーカス量を用いてフォーカス制御領域を選択する。第１の同定ステップにより同定された第１の被写体の像面位置モデルを用いて第１の像面位置が移動していないと判定し、かつ第２の同定ステップにより同定された第２の被写体の像面位置モデルを用いて第２の像面位置が移動していると判定した場合は、該同定された第２の被写体の像面位置モデルを用いてフォーカス制御領域を選択することを特徴とする。
【００１２】
なお、上記フォーカス制御方法（フォーカス制御処理）をコンピュータに実行させるフォーカス制御プログラムも、本発明の他の一側面を構成する。
【発明の効果】
【００１３】
本発明によれば、撮像対象である移動被写体に正確に追従したフォーカス制御を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例１であるフォーカス制御装置の構成を示すブロック図。
【図２】実施例１のフォーカス制御装置を備えた一眼レフデジタルカメラの構成を示すブロック図。
【図３】実施例１におけるフォーカス制御処理を示すフローチャート。
【図４】実施例１における焦点検出領域を示す図。
【図５】実施例１における第１の移動被写体判定処理を示すフローチャート。
【図６】実施例１における第２の移動被写体判定処理を示すフローチャート。
【図７】実施例１において誤ったフォーカス制御が行われている場合を説明する図。
【図８】実施例１において正しいフォーカス制御が行われている場合を説明する図。
【図９】本発明の実施例２であるフォーカス制御装置の構成を示すブロック図。
【図１０】実施例２におけるフォーカス制御処理を示すフローチャート。
【図１１】実施例２における第２の移動被写体判定処理を示すフローチャート。
【発明を実施するための形態】
【００１５】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１６】
図２は、本発明の実施例１であるフォーカス制御装置を備えた撮像装置としての一眼レフデジタルカメラ（以下、単にカメラという）の構成を示す。カメラは、カメラ本体とこれに対して取り外し可能に装着された交換レンズとにより構成される。交換レンズ内には、撮像レンズ２０１が設けられている。
【００１７】
交換レンズ内に設けられたオートフォーカス（ＡＦ）駆動部２０２は、ＤＣモータや振動型モータ等のフォーカスアクチュエータとその駆動回路によって構成される。ＡＦ駆動部２０２は、カメラ本体内のマイクロコンピュータ２２１からのフォーカス指令に応じて撮像レンズ２０１内の不図示のフォーカスレンズを光軸方向に移動させる。
【００１８】
交換レンズに設けられた絞り駆動部２０４は、マイクロコンピュータ２２１によって算出された絞り駆動量に応じて絞り２０３を駆動し、光が通過する開口径（絞り値）を変化させる。交換レンズに設けられた防振部２２７は、ジャイロセンサ等の振れセンサを含み、カメラの振れ（角速度）を検出して振れ検出信号を生成する。さらに防振部２２７は、振れ検出信号を積分して得られる振れ量信号に応じて被写体像の振れを打ち消すように撮像レンズ内のシフトレンズを光軸方向に対して直交する方向に移動（シフト）させる防振制御を行う。
【００１９】
カメラ本体において、主ミラー２０５は、撮像レンズ２０１からの撮像光路内に配置されて撮像レンズ２０１からの光束を光学ファインダ側に導く図示のダウン位置と、撮像素子側に通過させるように撮像光路外に退避するアップ位置とに移動可能である。ダウン位置にある主ミラー２０５で反射した光束の一部は、測光用のＡＥセンサを有する測光ユニット２２６に導かれる。測光ユニット２２６は、該光束を受光して輝度情報を検出する。また、ダウン位置にある主ミラー２０５の中央部はハーフミラーとなっており、焦点検出を行うために用いる光束を透過させる。
【００２０】
サブミラー２０６は、主ミラー２０５を透過した光束を反射させて焦点検出を行う焦点検出ユニット２１０に導く。焦点検出ユニット２１０は、位相差検出方式により焦点検出を行うための一対の二次結像レンズと一対のＡＦセンサを含む。一対の二次結像レンズは、焦点検出ユニット２１０に入射した光束を分割して一対の被写体像（２像）を形成し、一対のＡＦセンサは該２像を光電変換して一対の位相差像信号を生成してマイクロコンピュータ２２１に出力する。
【００２１】
マイクロコンピュータ２２１は、一対の位相差像信号に対して相関演算を行って該一対の位相差像信号間の位相差（像ずれ量）を算出し、さらに該位相差から撮像レンズ２０１の焦点状態を示すデフォーカス量を算出する。マイクロコンピュータ２２１は、算出したデフォーカス量から合焦状態を得るためのフォーカスレンズの駆動量を算出し、その駆動量を含むフォーカス指令を交換レンズ側のＡＦ駆動部２０２に送信する。ＡＦ駆動部２０２は、フォーカス指令に応じてフォーカスレンズを駆動する。これにより、ＡＦが行われて合焦状態が得られる。 
【００２２】
なお、本実施例では、測光ユニット２２６および焦点検出ユニット２１０にそれぞれＡＥセンサとＡＦセンサを設けているが、後述する撮像素子２１３をＡＥセンサおよびＡＦセンサとして用いてもよい。
【００２３】
光学ファインダは、ペンタプリズム２０７、ピント板２０８およびアイピース２０９により構成され、主ミラー２０５で反射した光束（被写体像）を撮影者の眼に導いて、被写体観察を可能とする。
【００２４】
シャッタ駆動回路２１２は、マイクロコンピュータ２２１の制御に応じてフォーカルプレーンシャッタ２１１を駆動する。
【００２５】
撮像素子２１３は、ＣＣＤセンサやＣＭＯＳセンサ等により構成され、撮影レンズ２０１により形成された被写体像を電気信号に変換する。クランプ部２１４およびＡＧＣ部２１５は、マイクロコンピュータ２２１により制御されながら、撮像素子２１３から出力されたアナログ信号（撮像信号）に対する基本的なアナログ信号処理を行う。
【００２６】
Ａ／Ｄ変換器２１６は、撮像素子２１３からのアナログ撮像信号をデジタル撮像信号に変換する。映像信号処理回路２１７は、デジタル撮像信号に対してフィルタ処理、色変換処理、ガンマ処理およびホワイトバランス処理等の映像処理を行って映像データを生成し、さらに映像データに対してＪＰＥＧ等の圧縮処理を行ってメモリコントローラ２１８に出力する。メモリコントローラ２１８は、メモリ２１９およびバッファメモリ２２０に対する画像データの格納および取り出しを制御する。
【００２７】
操作ユニット２２２は、撮影者により操作される複数のボタンやダイアル等の操作部材の操作に応じた操作信号をマイクロコンピュータ２２１に出力する。マイクロコンピュータ２２１は、入力された操作信号に応じた処理や制御を行う。操作ユニット２２２には、第１レリーズスイッチ（以下、ＳＷ１という）２２３と第２レリーズスイッチ（以下、ＳＷ２という）２２４とが接続されている。ＳＷ１とＳＷ２はそれぞれ、操作部材の１つであるレリーズボタンの半押し操作と全押し操作でオンする。ＳＷ１のオンによりＡＦや測光等の撮像準備動作が行われ、ＳＷ２のオンにより撮像動作が行われる。電源部２２５は、カメラ本体内および交換レンズに必要な電源を供給する。
【００２８】
マイクロコンピュータ２２１は、図１に示すように構成されたフォーカス制御装置を含む。焦点検出部（焦点検出手段）１０１は、撮像素子２１３により撮像される撮像画面内に複数設けられた焦点検出領域のそれぞれにおいて焦点検出ユニット２１０により生成された一対の位相差像信号を取得し、各焦点検出領域でのデフォーカス量を検出（算出）する。
【００２９】
選択部１０２は、焦点検出部１０１により検出された複数の焦点検出領域でのデフォーカス量に基づいて又は撮影者による選択操作に応じて、該複数の焦点検出領域のうち一部（１つ又は相互に隣接する２以上）の第１の焦点検出領域を選択する。
【００３０】
第１の記憶部（記憶手段）１０３は、選択された第１の焦点検出領域で検出されたデフォーカス量の検出時刻と、該検出されたデフォーカス量およびその検出時刻でのフォーカスレンズの位置から算出された像面位置との組を過去複数回の検出分にわたって記憶する。第１の記憶部１０３に記憶される過去複数回の検出分の検出時刻と像面位置との組の情報を第１の像面位置履歴データという。
【００３１】
予測部（予測手段）１０４は、第１の記憶部１０３に記憶された過去複数回の検出時刻と像面位置の組に基づいて、後の被写体像の像面位置である予測デフォーカス量を算出（予測）する。
【００３２】
第２の記憶部（記憶手段）１０５は、上記複数の焦点検出領域のうち第１の焦点検出領域とは異なる少なくとも１つの第２の焦点検出領域で検出されたデフォーカス量の検出時刻とその検出時刻での像面位置の組を過去複数回の検出分にわたって記憶する。第２の記憶部１０５に記憶される過去複数回の検出分の検出時刻と像面位置との組の情報を第２の像面位置履歴データという。
【００３３】
第１の判定部（判定手段）１０６は、第１の記憶部１０３に記憶された第１の像面位置履歴データに基づいて、第１の焦点検出領域に捉えられている第１の被写体が撮像レンズの光軸方向に移動しているか否かを判定する。第２の判定部（判定手段）１０７は、第２の記憶部１０５に記憶された第２の像面位置履歴データから、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在するか否かを判定する。
【００３４】
選択部１０２は、第１の判定部１０６が第１の被写体が光軸方向に移動している（後述する第１の像面位置が移動している）と判定した場合に、予測部１０４により算出された予測デフォーカス量を用いてフォーカス制御用の焦点検出領域を選択する。このフォーカス制御用の焦点検出領域、すなわち実際にフォーカスレンズを駆動するフォーカス制御に用いるデフォーカス量を検出する焦点検出領域を、以下の説明では、フォーカス制御領域という。
【００３５】
また、選択部１０２は、両判定部１０６、１０７が第１の被写体が光軸方向に移動しておらず、かつ光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在する（第２の像面位置が移動している）か否かを判定する。そして、第１の被写体が光軸方向に移動しておらず、かつ光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在すると判定した場合は、該第２の焦点検出領域をフォーカス制御領域として選択する。なお、選択部１０２は、第２の判定部１０７が光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在しないと判定した場合にも、予測デフォーカス量を用いてフォーカス制御領域を選択する。予測部１０４、選択部１０２、第１の判定部１０６および第２の判定部１０７により選択手段が構成される。
【００３６】
制御部（制御手段）１０８は、選択部１０２により選択されたフォーカス制御領域で検出された最新（今回）のデフォーカス量に応じてフォーカスレンズを駆動するようにフォーカス制御を行う。振れ検出部１０９は、防振部２２７からの振れ検出信号を取得する。
【００３７】
本実施例では、当初選択された第１の焦点検出領域に捉えられてフォーカス制御が追従している第１の被写体が光軸方向に移動しているか否かを第１の像面位置履歴データを用いて判定する。そして、該被写体が移動していると判定した場合には、第１の像面位置履歴データを用いた予測処理によってフォーカス制御に用いるデフォーカス量を検出するフォーカス制御領域を選択する。これにより、当初から撮像対象であった第１の被写体にフォーカス制御を正しく追従させ続けることができる。
【００３８】
一方、第１の被写体が光軸方向に移動していないと判定し、第２の像面位置履歴データから光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在すると判定した場合には、その第２の焦点検出領域をフォーカス制御領域として選択する。これにより、撮像対象ではなかった第１の被写体から撮像対象である第２の被写体にフォーカス制御を追従させ直すことができる。以下では、本実施例においてマイクロコンピュータ２２１が実行するフォーカス制御処理について図３のフローチャートを用いて説明する。マイクロコンピュータ２２１は、コンピュータプログラムであるフォーカス制御プログラムに従って本処理を実行する。
【００３９】
撮影者によりＳＷ１がＯＮされると、マイクロコンピュータ２２１の焦点検出部１０１は、ステップＳ３０１において焦点検出ユニット２１０からの複数の焦点検出領域のそれぞれで生成された一対の位相差像信号からデフォーカス量を算出する。
【００４０】
図４は、撮像画面内に設けられた複数の焦点検出領域の例を示す。図中の小さい四角枠のそれぞれが焦点検出領域である。それぞれの焦点検出領域で検出されたデフォーカス量はその検出時刻とともにメモリ２１９に一時的に記憶される。
【００４１】
次にステップＳ３０２では、マイクロコンピュータ２２１の第１の判定部１０６は、第１の記憶部１０３に記憶された第１の像面位置履歴データを用いて、第１の焦点検出領域に捉えられている第１の被写体が光軸方向に移動しているか否かを判定する。この第１の移動被写体判定処理については後述する。
【００４２】
次にステップＳ３０３では、マイクロコンピュータ２２１の選択部１０２は、第１の判定部１０６により第１の被写体が光軸方向に移動していると判定されたか否かを判定する。マイクロコンピュータ２２１は、第１の被写体が光軸方向に移動していないと判定された場合にはステップＳ３０４に進み、第１の被写体が光軸方向に移動していると判定された場合にはステップＳ３０７に進む。
【００４３】
ステップＳ３０４では、マイクロコンピュータ２２１の第２の記憶部１０５は、少なくとも１つの第２の焦点検出領域での複数回のデフォーカス量検出を行って、上述した第２の像面位置履歴データを記憶する。第２の像面位置履歴データを記憶する第２の焦点検出領域は、第１の焦点検出領域以外の全ての焦点検出領域であってもよいし、任意の数の焦点検出領域でもよい。また、２以上の焦点検出領域を１つにまとめてグループとし、グループごとに毎回代表となる焦点検出領域を決定して、その焦点検出領域での検出時刻と像面位置を第２の像面位置履歴データとして記憶するようにしてもよい。グループの代表となる焦点検出領域の決定方法としては、前回の像面位置からの変化が最も至近側に大きい像面位置が検出された焦点検出領域を代表とする等がある。グループ化することにより、被写体が画角の平面上（光軸方向に垂直な平面上）を移動しながら近づいた場合にも被写体の移動を検出することができたり、記憶するデータ数を少なくしたりすることができる。１つのグループとする焦点検出領域の数は、撮影条件等によって変化させてもよい。同じ移動距離でも、カメラからの距離が近い被写体のほうが遠い被写体よりも画角内での移動量が大きくなる。よって、現在の像面位置が無限側に近い場合よりも、至近側に近い場合のほうが、１つのグル―プとする焦点検出領域の数を多くして、画角に占める１つのグループの割合を大きくすることが好ましい。
【００４４】
次にステップＳ３０５において、マイクロコンピュータ２２１の第２の判定部１０７は、記憶された第２の像面位置履歴データを用いて、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在するか否かを判定する。この第２の移動被写体判定処理については後述する。なお、第２の像面位置履歴データが十分な数の検出時刻と像面位置の組を含んでいない場合には、第２の判定部１０７は第２の移動被写体判定処理を実行せず、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在しないと判定する。
【００４５】
次にステップＳ３０６では、選択部１０２は、第２の判定部１０７により光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在しないと判定された場合にはステップＳ３０７に進む。一方、移動する第２の被写体を捉えている第２の焦点検出領域があると判定された場合にはステップＳ３０９に進む。
【００４６】
ステップＳ３０７では、マイクロコンピュータ２２１の予測部１０４は、第１の記憶部１０３に記憶された過去の第１の像面位置履歴データを用いて今回の焦点検出における第１の被写体に対する像面位置を予測する。そして、この予測した像面位置から今回の第１の被写体に対するデフォーカス量として尤もらしいと推定される予測デフォーカス量を算出する。像面位置の予測手法としては、記憶された複数の像面位置を検出時刻の関数（多項式等）によって近似し、その関数に検出時刻を代入して像面位置を算出する方法等がある。
【００４７】
第１の像面位置履歴データが十分な数の検出時刻と像面位置の組を含んでいない場合や第１の像面位置履歴データから第１の被写体の光軸方向での移動の規則性を判定できない場合は、像面位置の予測および予測デフォーカス量の算出を行う必要はない。この場合、第１の被写体に対して合焦状態が得られていれば、予測デフォーカス量を０とするのが好ましい。
【００４８】
次にステップＳ３０８では、選択部１０２は、ステップＳ３０１でデフォーカス量が検出された複数の焦点検出領域のうち、ステップＳ３０７で算出された予想デフォーカス量に最も近いデフォーカス量が検出された焦点検出領域をフォーカス制御領域として選択する。以下、フォーカス制御領域として選択された焦点検出領域におけるデフォーカス量を今回デフォーカス量という。
【００４９】
なお、本ステップにおいては、被写体は撮像画面内における前回の位置に近い位置に存在する可能性が高いとみなして、前回選択した焦点検出領域の周囲に限定してフォーカス制御領域を選択してもよい。この場合、予測デフォーカス量と検出されたデフォーカス量との差が所定値より小さくなる焦点検出領域が存在しなければ、より広い範囲からフォーカス制御領域を選択してもよい。マイクロコンピュータ２２１は、ステップＳ３０８が終了するとステップＳ３１０に進む。
【００５０】
一方、ステップＳ３０９では、選択部１０２は、第２の判定部１０７により光軸方向に移動する第２の被写体を捉えていると判定された第２の焦点検出領域をフォーカス制御領域として選択する。そして、ステップＳ３１０に進む。
【００５１】
ステップＳ３１０では、マイクロコンピュータ２２１のレンズ制御部１０８は、選択部１０２により選択されたフォーカス制御領域において検出された今回デフォーカス量に基づいて撮像レンズ２０１（フォーカスレンズ）を駆動する。
【００５２】
次にステップＳ３１１では、第１の記憶部１０３は、選択部１０２により選択されたフォーカス制御領域において検出された今回デフォーカス量の検出時刻と今回デフォーカス量から算出した像面位置の組を新たな第１の像面位置履歴データとして記憶する。
【００５３】
さらにステップＳ３１２では、マイクロコンピュータ２２１は、ＳＷ１がＯＮされているか否かを判定する。ＳＷ１がＯＮされている場合は再びステップＳ３０１に戻って上述した処理を行い、ＳＷ１がＯＦＦされている場合には本処理を終了する。
【００５４】
次に、図５のフローチャートを用いて、図３のステップＳ３０２において実行される第１の被写体移動判定処理について説明する。ステップＳ５０１において、マイクロコンピュータ２２１の第１の判定部１０６は、第１の記憶部１０３に記憶された第１の像面位置履歴データを用いて、第１の被写体に対する像面位置としての第１の像面位置の移動速度である第１の像面速度を算出する。
【００５５】
次にステップＳ５０２では、第１の判定部１０６は、ステップＳ５０１で算出した第１の像面速度が第１の所定値としての第１の閾値より遅いか否かを判定する。第１の判定部１０６は、第１の像面速度が第１の閾値より遅い場合にはステップＳ５０３に進み、第１の像面速度が第１の閾値以上である（第１の閾値より速い）場合にはステップＳ５０４に進む。
【００５６】
第１の閾値は、撮影者が撮像対象としていない第１の被写体に対して誤ってフォーカス制御が追従しているか否かを判定するための閾値として適切に設定される。また、第１の被写体が等速で光軸方向に移動している場合は、該第１の被写体のカメラからの距離が遠いほど第１の像面速度は遅くなる。このため、第１の閾値は第１の被写体のカメラからの距離に応じて設定することが好ましい。具体的には、距離が遠いほど第１の閾値を小さく、距離が近いほど第１の閾値を大きく設定する。
【００５７】
ステップＳ５０３では、第１の判定部１０６は、第１の像面位置が移動していない、すなわち第１の被写体が光軸方向に移動していないと判定する。そして、マイクロコンピュータ２２１は、本処理を終了する。
【００５８】
一方、ステップＳ５０４では、第１の判定部１０６は、第１の像面位置が移動している、すなわち第１の被写体が光軸方向に移動していると判定して本処理を終了する。
【００５９】
続いて、図６のフローチャートを用いて、図３のステップＳ３０５で実行される第２の被写体移動判定処理について説明する。ステップＳ６０１において、マイクロコンピュータ２２１の振れ検出部１０９は、防振部２２７から振れ量の情報を受け取る。ここにいう振れ量は、第２の記憶部１０５に記憶されている最も古い像面位置に対応する検出時刻から現在までのカメラの振れ量であることが好ましい。
【００６０】
次にステップＳ６０２では、マイクロコンピュータ２２１の第２の判定部１０７は、ステップＳ６０１で算出した振れ量が所定値としての振れ閾値以上であるか否かを判定する。すなわち、振れ閾値は、撮影者が撮像方向（カメラの向き）を意図的に変えたか否かを検出するための値に設定される。マイクロコンピュータ２２１は、振れ量が振れ閾値以上である場合には、撮影者が撮像方向を意図的に変えて撮像対象である被写体を変えたとみなしてステップＳ６０３に進む。一方、振れ量が振れ量閾値より小さい場合にはステップＳ６０５に進む。
【００６１】
ステップＳ６０３では、マイクロコンピュータ２２１の第２の記憶部１０５は、記憶している第２の像面位置履歴データをすべて消去する。そして、ステップＳ６０４では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在しないと判定して本処理を終了する。
【００６２】
一方、ステップＳ６０５では、第２の判定部１０７は、第２の像面位置履歴データに検出時刻と像面位置の組が記憶された第２の焦点検出領域のうち、光軸方向に移動する第２の被写体を捉えているか否かの判定がまだ行われていない焦点検出領域を１つ選択する。以下の説明において、本ステップで選択された第２の焦点検出領域を、判定中焦点検出領域とする。
【００６３】
ステップＳ６０６では、第２の判定部１０７は、判定中焦点検出領域に対して第２の像面位置履歴データに記憶された第２の被写体に対する像面位置としての第２の像面位置が検出時刻とともに一方向（至近方向または無限遠方向）に変化しているか否かを判定する。第２の判定部１０７は、第２の像面位置が一方向に変化している場合にはステップＳ６０７に進み、第２の像面位置が一方向に変化していない場合にはステップＳ６１０に進む。この判定において、上記一方向変化の判定は、至近方向と無限遠方向のうち一方についてのみ行ってもよいし、至近方向と無限遠方向の両方について行ってもよい。
【００６４】
第２の像面位置が一方向に変化していると判定する方法の例について説明する。過去複数回の検出時刻を古い方から順にｔ１、ｔ２、ｔ３、ｔ４とし、検出時刻に対応する第２の像面位置をそれぞれｚ１、ｚ２、ｚ３、ｚ４とする。第２の像面位置を示す値が小さいほど撮像レンズ２０１の合焦位置が至近側にあるとすると、ｚ１＞ｚ２＞ｚ３＞ｚ４となる場合に第２の像面位置が至近側に一方向に変化していると判定することができる。また、焦点検出の誤差を考慮し、比較する像面位置の時間間隔を空けて、ｚ１＞ｚ３かつｚ２＞ｚ４となる場合に第２の像面位置が至近側に一方向に変化していると判定してもよい。これらは第２の像面位置が一方向に変化していると判定する方法の例であり、判定の方法は必ずしもこれらに限定されるものではない。
【００６５】
ステップＳ６０７では、第２の判定部１０７は、第２の記憶部１０５に記憶された判定中焦点検出領域に対する第２の像面位置履歴データを用いて第２の像面位置の移動速度である第２の像面速度を算出する。
【００６６】
次にステップＳ６０８では、第２の判定部１０７は、ステップＳ６０８で算出した第２の像面速度が第２の所定値である第２の閾値以上である（第２の閾値より速い）か否かを判定する。第２の判定部１０７は、第２の像面速度が第２の閾値以上である場合はステップＳ６０９に進み、第２の像面速度が第２の閾値より遅い場合はステップＳ６１０に進む。
【００６７】
第２の閾値は、第１の像面速度に対する第１の閾値より大きい（速い）ことが望ましい。言い換えれば、第１の閾値は、第２の閾値より小さい（遅い）ことが望ましい。また、第２の閾値は、焦点検出領域ごとに異なる値を設定してもよい。例えば、撮像対象である被写体は撮像画面の中央に位置する可能性が高いので、撮像画面の中央に近いほど第２の閾値を遅く設定し、撮像画面の中央から遠いほど第２の閾値を速く設定してもよい。
【００６８】
ステップＳ６０９では、第２の判定部１０７は、判定中焦点検出領域が光軸方向に移動する第２の被写体を捉えている（光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在する）と判定し、判定中焦点検出領域をフォーカス制御領域に設定する。この後、第２の判定部１０７はステップＳ６１１に進む。
【００６９】
ステップＳ６１０では、第２の判定部１０７は、判定中焦点検出領域が光軸方向に移動する第２の被写体を捉えていない（光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在しない）と判定する。すなわち、ステップＳ６０６にて第２の像面位置が一方向だけでなく他方向にも変化している場合やステップＳ６０８で第２の像面速度が第２の閾値より遅い場合は判定中焦点検出領域が光軸方向に移動する第２の被写体を捉えていないと判定する。この後、第２の判定部１０７はステップＳ６１１に進む。
【００７０】
ステップＳ６１１では、第２の判定部１０７は、第２の記憶部１０５に記憶された第２の焦点検出領域の全てに対して、光軸方向に移動する第２の被写体を捉えているか否かの判定を行ったか否かを判定する。第２の判定部１０７は、全ての第２の焦点検出領域について上記判定を行った場合はステップＳ６１２に進み、全ての第２の焦点検出領域について上記判定を行っていない場合はステップＳ６０５に戻る。
【００７１】
ステップＳ６１２では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在したか否かを判定する。第２の判定部１０７は、そのような第２の焦点検出領域があった場合にはステップＳ６１３に進み、ない場合には本処理を終了する。
【００７２】
ステップＳ６１３では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている２の焦点検出領域が２つ以上あるか否かを判定する。第２の判定部１０７は、そのような第２の焦点検出領域が２つ以上ある場合はステップＳ６１４に進み、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が１つのみである場合はステップＳ６１５に進む。
【００７３】
ステップＳ６１４では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている２つ以上の第２の焦点検出領域から１つを選択する。例えば、第２の判定部１０７は、上記２つ以上の第２の焦点検出領域のうち第２の像面速度が最も大きい焦点検出領域を選択する。また、第２の判定部１０７は、像面位置が最も至近側にある焦点検出領域を選択してもよい。さらに、撮影者がピントを合わせたい被写体は撮像画面の中央に近い位置に存在する可能性が高いので、第２の判定部１０７は、上記２つ以上の第２の焦点検出領域のうち最も撮像画面の中央に近い焦点検出領域を選択してもよい。
【００７４】
ステップＳ６１５では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている１つの第２の焦点検出領域が存在することを示す情報を選択部１０２に渡す。そして、第２の記憶部１０５は、記憶している全ての第２の像面位置履歴データを消去する。この後、マイクロコンピュータ２２１は本処理を終了する。
【００７５】
ステップＳ６１２で光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在すると判定された場合には、第２の被写体が新たにフォーカス制御の追従対象の第１の被写体となる。この場合、ステップＳ６１２での判定時点で、第１の記憶部１０３が記憶していた第１の像面位置履歴データを消去し、第２の記憶部１０５に記憶されていた第２の像面位置履歴データを第１の記憶部１０３に新たに記憶させることが望ましい。これにより、追従していた第１の被写体を捉えていた焦点検出領域が変化した直後から、変化後の焦点検出領域において過去の像面位置履歴データを用いて適切に予測デフォーカス量を算出することができる。
【００７６】
本実施例では、フォーカス制御が追従する被写体が光軸方向に移動していると判定した場合、すなわち撮影者の撮像対象である被写体に対するフォーカス制御が行われている場合は、その被写体に対する予測デフォーカス量を用いてフォーカス制御の追従を続行する。一方、フォーカス制御が追従する被写体が光軸方向に移動せず、他に光軸方向に移動する被写体を捉えている焦点検出領域が存在すると判定した場合は、フォーカス制御が撮像対象ではない被写体に対して追従しているものとして扱う。この場合、光軸方向に移動する被写体を捉えている焦点検出領域を選択し直して該被写体に対してフォーカス制御の追従対象とする。これにより、撮影者が焦点検出領域を選択し直さなくても、撮像対象ではない被写体に対してフォーカス制御が追従し続けることを回避することができる。言い換えれば、撮像対象である被写体に対してフォーカス制御を追従させ続けることができる。この効果について、図７および図８を用いて具体例を挙げて説明する。
【００７７】
図７は、電車７０１がカメラに対して近付いてくるシーンを撮像する場合を示す。図７の（１）〜（４）はそれぞれ、同図の（Ａ）に示す検出時刻ｔ（１）〜ｔ（４）での撮像画面を示す。７ａ〜７ｄは４つの焦点検出領域を示す。（Ａ）は検出時刻ｔ（１）〜ｔ（４）で焦点検出領域７ａ〜７ｄにて検出されたデフォーカス量を用いて算出された像面位置を示す。
【００７８】
撮影者の撮像対象としての被写体は電車７０１であり、焦点検出領域（第２の焦点検出領域）７ｄにより捉えられている。しかし、検出時刻ｔ（１）では、焦点検出領域（第１の焦点検出領域）７ｂがフォーカス制御領域として選択されて該フォーカス制御領域７ｂに捉えている背景に対してフォーカス制御が追従しているものとする。焦点検出領域（第２の焦点検出領域）７ａ、７ｃも背景を捉えている。
【００７９】
図７の（Ａ）において、焦点検出領域７ｂ（および７ａ、７ｃ）では背景に対して第１の像面位置が算出されるため、時間が経過しても第１の像面位置はほとんど変化しない。これらの像面位置が若干変化しているのは、焦点検出の誤差やカメラの微小な振れによるものである。
【００８０】
一方、焦点検出領域７ｄでは電車７０１に対して第２の像面位置が算出されるため、時間の経過とともに第２の像面位置が至近側一方向に変化する。検出時刻ｔ（２）では焦点検出領域７ｄで算出された像面位置はまだ検出時刻ｔ（１）から１回しか至近側に変化していないため、焦点検出領域７ｂのフォーカス制御領域としての選択が継続される。
【００８１】
検出時刻ｔ（３）では、焦点検出領域７ｄで算出された第２の像面位置が検出時刻ｔ（１）から続けて２回、至近側一方向に変化したことになる。このため、焦点検出領域７ｄで算出された第２の像面速度が第２の閾値以上であれば、該焦点検出領域７ｄが光軸方向に移動する被写体を捉えていると判定される。また、焦点検出領域７ｂで算出されたほとんど変化しない第１の像面位置が第１の像面位置履歴データとして記憶されているので、第１の像面速度は第１の閾値より遅くなる。このため、焦点検出領域７ｂにより捉えられている被写体（背景）は光軸方向に移動していないと判定される。この結果、検出時刻ｔ（３）で焦点検出領域７ｄがフォーカス制御領域に選択し直され、それまでの第１の像面位置履歴データが消去される。そして、その代わりに焦点検出領域７ｄで算出された第２の像面位置を含む第２の像面位置履歴データが第１の像面位置履歴データとして記憶される。
【００８２】
その後の検出時刻ｔ（４）では、焦点検出領域７ｄに対する第１の像面位置履歴データから第１の像面速度が算出される。焦点検出領域７ｄでは電車７０１に対して第１の像面速度が算出されるため、該第１の像面速度は第１の閾値以上になる。したがって、第１の像面位置履歴データから焦点検出領域７ｄでの予測デフォーカス量が算出されて再び焦点検出領域７ｄがフォーカス制御領域として選択され、これ以降は電車７０１に対してフォーカス制御を追従させることができる。
【００８３】
なお、ここでは第２の像面位置の至近側一方向への変化を第２の像面位置を複数回算出することで判定する場合について説明したが、これに代えて、第２の像面位置が所定時間の間、至近側一方向に変化することで該変化を判定してもよい。
【００８４】
図８は、２人の人物８０１、８０２がカメラに対して近付いてくるシーンを撮像する場合を示す。図８の（１）〜（４）はそれぞれ、検出時刻ｔ（１）〜ｔ（４）における撮像画面を示す。８ａ〜８ｄは４つの焦点検出領域を示す。（Ａ）は検出時刻ｔ（１）〜ｔ（４）で焦点検出領域７ａ〜７ｄにて検出されたデフォーカス量を用いて算出された像面位置を示す。
【００８５】
撮影者の撮像対象としての被写体は人物８０１である。フォーカス制御領域として選択された焦点検出領域（第１の焦点検出領域）８ｃに捉えられている人物８０１に対してフォーカス制御が追従しているものとする。焦点検出領域（第２の焦点検出領域）８ｄは人物８０１ａを捉えており、焦点検出領域（第２の焦点検出領域）８ａ、８ｂは背景を捉えている。
【００８６】
図８の（Ａ）において、焦点検出領域８ａ、８ｂでは背景に対して像面位置が算出されるため、時間が経過しても第２の像面位置はほとんど変化しない。一方、焦点検出領域８ｃ、８ｄでは人物８０１、８０２に対してそれぞれ第１および第２の像面位置が算出されるため、時間の経過とともに第１および第２の像面位置が至近側一方向に変化する。検出時刻ｔ（２）を経た検出時刻ｔ（３）では、焦点検出領域８ｃで算出された第１の像面位置を含む第１の像面位置履歴データから算出された人物８０１に対する第１の像面速度が第１の閾値以上であれば、人物８０１は光軸方向に移動していると判定される。このため、第１の像面位置履歴データから算出される予測デフォーカス量に最も近いデフォーカス量が検出される焦点検出領域８ｃがそのままフォーカス制御領域として選択される。したがって、移動する第２の被写体である人物８０２を捉えている焦点検出領域８ｄが存在していても、撮像対象である人物８０１に対するフォーカス制御の追従が維持される。
【００８７】
以上のように、本実施例によれば、フォーカス制御が追従する被写体が光軸方向に移動している場合には、その被写体に対するフォーカス制御の追従を続行する。一方、フォーカス制御が追従する被写体が光軸方向に移動せず、他に光軸方向に移動する被写体を捉えている焦点検出領域が存在する場合には、焦点検出領域を選択し直すことにより、移動する被写体に対してフォーカス制御を追従させ続けることができる。
【実施例２】
【００８８】
本発明の実施例２では、被写体が光軸方向に移動しているか否かを求める方法が、実施例１とは異なる。実施例１では、予測部１０４が第１の記憶部１０３に記憶された過去複数回の検出時刻と像面位置の組に基づいて、後の被写体像の像面位置である予測デフォーカス量を算出（予測）していた。これに対し、実施例２では、逐次同定法によって同定される被写体の像面位置モデルに基づいて、被写体が光軸方向に移動しているか否かを判定する。
【００８９】
まず、実施例１で説明した方法における課題を説明する。実施例１で説明した方法によれば、第２の像面位置履歴データを記憶する必要があるが、メモリの記憶容量は有限であるので、記憶する過去の履歴データには限りがある。
【００９０】
被写体の像面位置モデルに関する情報は、過去の履歴データの期間の長さによらず一定量である。焦点検出のばらつきが大きく、かつ遠距離等、被写体の像面移動が小さい撮像シーンにおいては、被写体の像面位置の変化は焦点検出のばらつきに埋もれてしまう。このため、限られた短い期間の過去の履歴データを用いて被写体が光軸方向に移動していると判定することができない、また、実際には被写体が光軸方向に移動していないにもかかわらず、同方向に移動していると誤判定するおそれもある。
【００９１】
したがって、焦点検出ばらつきが大きい撮像シーンで移動する被写体を精度良く検出するためには、比較的長い期間の過去の履歴データ、すなわち多い数の履歴データを利用する必要がある。
【００９２】
これに対し、本実施例で採用している逐次同定法によれば、最新の１回分の像面位置と被写体の過去の像面位置モデルとを用いて被写体の新たな像面位置モデルを同定する。それにより、焦点検出ばらつきの大きい撮像シーンにおいても逐次同定法の利点である計算量の低減を図りながら、実施例１と同様に、光軸方向に移動する被写体を精度良く検出することができる。また、本実施例では、逐次同定法により同定される被写体の像面位置モデルに関する情報を用いることから、第２の像面位置履歴データの記憶は不要であるため、実施例１と比較して、データ量の削減が可能である。詳しくは後述する。
【００９３】
図９は、本実施例におけるマイクロコンピュータ２２１に含まれるフォーカス制御装置の構成を示す。図９において、実施例１（図１）のフォーカス制御装置と共通する構成要素には実施例１と同符号を付して説明に代える。本実施例のフォーカス制御装置は、第１の同定手段としての第１の同定部１１０と、第２の同定手段としての第２の同定部１１１とを有する。
【００９４】
第１の同定部１１０は、選択部１０２により選択された第１の焦点検出領域における像面位置（第１の像面位置）と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する。第１の同定部１１０による同定結果は、第１の判定部１０６による判定に用いられる。
【００９５】
第２の同定部１１１は、第１の焦点検出領域と異なる少なくとも１つの第２の焦点検出領域にて焦点検出部１０１により検出されたデフォーカス量から算出された像面位置（第２の像面位置）と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する。 第２の同定部１１１による同定結果は、第２の判定部１０７による判定に用いられる。
【００９６】
次に、本実施例で第１の同定部と第２の同定部が像面位置モデルを同定する方法として採用している逐次同定法について説明する。逐次同定法とは、現在の観測結果と、１時刻前の状態推定値から求められる現在の事前状態推定値とから、現在の状態推定値および１時刻先の事前状態推定値の算出を行い、時刻の経過とともにそれを繰り返すことにより、現在の状態を推定し続けるものである。したがって、現在の観測結果と１時刻前に推定された現在の事前状態推定値だけを保持しておけばよく、過去の観測結果（例えば、像面位置履歴データなど）を全て記憶しておく必要がないという特徴がある。実施例では一例として、逐次同定法の一種であり、状態の平均二乗誤差が最小となる状態を推定するカルマンフィルタを用いた場合を説明する。
【００９７】
ここで、一般的なカルマンフィルタ演算について説明する。カルマンフィルタ演算の前提となる式として、時刻ｋにおける観測結果ｙ（ｋ）と、状態推定ベクトルＡの時刻ｋおよび時刻ｋ＋１における関係は次の式で与えられるものとする。
【００９８】
【数１】
2018197845.tif 000003
【００９９】
ただし、Ａ（ｋ）はｎ次元の列ベクトルであり、時刻ｋにおける状態を示す状態推定ベクトルである。Ｘ（ｋ）はｎ次元の列ベクトルであり、状態推定ベクトルから観測結果を求めるためのベクトルである。ω（ｋ）は、平均値０、分散σω２の観測ノイズであり、観測結果に含まれるばらつきを表す。Ｌ（ｋ）はｎ×ｎ行列であり、時刻ｋにおける状態から時刻ｋ＋１における状態への変化量を表すベクトルである。ν（ｋ）は平均値０、分散σν２のシステムノイズであり、時刻ｋの状態を用いて推定される時刻ｋ＋１の状態に含まれる誤差成分である。ｍ（ｋ）はｎ次元の列ベクトルであり、状態推定ベクトルＡ（ｋ）の各パラメータに対するシステムノイズの係数である。
【０１００】
カルマンフィルタ演算は、状態推定ベクトルＡ（ｋ）を求めるために、予測ステップとフィルタリングステップの２つの演算ステップを実行する。例えば、まず時刻ｋにおける予測ステップでは、時刻ｋ−１における状態推定ベクトルを用いて、時刻ｋにおける事前状態推定ベクトルＡ’（ｋ）を時刻ｋにおける実際の観測結果を得るよりも前に推定する。そして、時刻ｋにおけるフィルタリングステップでは、事前に推定された事前状態推定ベクトルＡ’（ｋ）および時刻ｋにおける実際の観測結果を用いて、時刻ｋにおける状態推定ベクトルＡ（ｋ）を推定する。以下、予測ステップとフィルタリングステップにおける処理について、より詳しく説明する。
【０１０１】
予測ステップにおいて、後のフィルタリングステップにおいて用いられる事前状態推定ベクトルＡ’（ｋ）、および事前誤差共分散行列Ｐ’（ｋ）は次の式で求められる。ただし、Ａ’（ｋ）はｎ次元の列ベクトル、Ｐ’（ｋ）はｎ×ｎ行列である。
【０１０２】
【数２】
2018197845.tif 000004
【０１０３】
続いて、フィルタリングステップにおいて、カルマンゲインｇ（ｋ）は数３の式で求められる。カルマンゲインはｎ次元の列ベクトルであり、事前状態推定ベクトルＡ’（ｋ）から推定される観測値と実際の観測結果との差分が、状態推定ベクトルＡ（ｋ）に対してどの程度寄与するかを表すベクトルである。
【０１０４】
また、状態推定ベクトルＡ（ｋ）および事後誤差共分散行列Ｐ（ｋ）は数４の式で求められる。ただし、Ｐ（ｋ）はｎ×ｎ行列、Ｉは、ｎ×ｎの単位行列である。状態推定ベクトルＡ（ｋ）および事後誤差共分散行列Ｐ（ｋ）は、数１で示したように、現在の時刻ｋにおける像面位置の算出や、時刻ｋ＋１における状態推定ベクトルＡ（ｋ＋１）を事前に推定するために用いられる。状態推定ベクトルＡ（ｋ）は、実際の観測結果であるｙ（ｋ）と事前状態推定ベクトルから推定される観測値ＸＴ（ｋ）Ａ’（ｋ）との差分にカルマンゲインｇ（ｋ）を乗じた補正値をＡ’（ｋ）に加えることによって算出される。
【０１０５】
【数３】
2018197845.tif 000005
【０１０６】
【数４】
2018197845.tif 000006
【０１０７】
なお、カルマンフィルタによる初回の演算時には、状態推定ベクトルＡ（ｋ）および事後誤差共分散行列Ｐ（ｋ）が得られていない。そこで、一例として、状態推定ベクトルの初期値Ａ（０）および誤差共分散行列の初期値Ｐ（０）は、次の式で与えられる。
【０１０８】
【数５】
2018197845.tif 000007
【０１０９】
上述したカルマンフィルタ演算を本実施例に当てはめると、例えば以下のようになる。本実施例では、ｙ（ｋ）は、時刻ｋにおける像面位置とする。ここで一例として、被写体の像面位置ｙ（ｋ）は時刻ｋに対する一次式で表現されるものとする。このとき、状態推定ベクトルＡ（ｋ）は２次元の列ベクトルとし、Ａ（ｋ）の各パラメータは、時刻０における像面位置（すなわち、ｙ（ｋ）を表す一次式の切片）と、時刻０から時刻ｋまでの平均像面速度とする。なお、時刻０は最初の像面位置の検出時刻とする。また、２次元の列ベクトルＸ（ｋ）の各パラメータは、１と、時刻０から時刻ｋまでの時間とする。時刻ｋにおける被写体の像面位置は、時刻０における被写体の像面位置に対して、時刻ｋにおける平均像面速度と時刻０から時刻ｋまでの時間との積を加算したものであるので、ｙ（ｋ）をＸＴ（ｋ）Ａ（ｋ）で表すことができる。 
【０１１０】
分散σω２は、像面位置の検出結果の分散等に基づいて予め決定された値でよい。状態推定ベクトルＡの初期値Ａ（０）の各パラメータは時刻０において観測された像面位置と、時刻０における被写体の像面速度を用いればよい。初期値Ｐ（０）には、適切な値を入れればよい。一般的に初期値ｐ０が大きいほどカルマンフィルタの収束が早くなるので、例えば、観測ノイズが大きいときは収束を遅くするためにｐ０を小さくするなどである。行列Ｌは、例えば、時刻０における被写体の像面位置や被写体の平均像面速度が時不変だと仮定するならば、単位行列Ｉなどとしてもよい。また、列ベクトルｍおよび分散σν２は、状態推定ベクトルに含まれる誤差成分なのでモデルの性質によって設定すればよい。これらは時刻によって変化させてもよいし不変でもよい。以上、状態推定ベクトルＡ、行列Ｌ、分散σω２、事後共分散行列Ｐ、列ベクトルｍ。列ベクトルＸによって、本実施例の被写体の像面位置モデルは表現される。ただし、例えば分散σω２などを時不変とするなら、その要素は被写体の像面位置モデルとして記憶する必要はなく、固定値として扱えばよい。
【０１１１】
なお、ｙ（ｋ）の表現方法や被写体の像面位置モデルはこれに限定されず、例えば、状態推定ベクトルＡ（ｋ）の次元数は２次元である必要はなく、より高次元であってもよい。また、必ずしも状態推定ベクトルＡやベクトルＸ、行列Ｌなどの各パラメータおよびその初期値が上述の説明通りである必要はない。
【０１１２】
図１０のフローチャートを用いて、本実施例におけるフォーカス制御処理を示す。ここでは、図３のフローチャートと同じステップについては説明を省略する。 
【０１１３】
ステップＳ９０１（ステップＳ３０１と同じ）を経たマイクロコンピュータ２２１は、ステップＳ９０２に進む。ステップＳ９０２では、第１の判定部１０６は、第１の同定部１１０により同定された第１の被写体の像面位置モデルを用いて、第１の焦点検出領域に捉えられている第１の被写体が光軸方向に移動しているか否かを判定する。この判定（第１の移動被写体判定処理）については、後に実施例１でも用いた図５を用いて説明する。
【０１１４】
次にステップＳ９０３（ステップＳ３０３と同じ）を経た後、マイクロコンピュータ２２１はステップＳ９０４に進む。ステップＳ９０４では、第２の判定部１０７は、第２の同定部１１１により同定された第２の被写体の像面位置モデルを用いて、光軸方向に移動する第２の被写体を捉えている第２の焦点検出領域が存在するか否かを判定する。この判定（第２の移動被写体判定処理）については、後に図１１を用いて説明する。
【０１１５】
次にステップＳ９０５〜ステップＳ９１０（ステップＳ３０６〜ステップＳ３１１と同じ）を経たマイクロコンピュータ２２１は、ステップＳ９１１に進む。
【０１１６】
ステップＳ９１１では、第１の同定部１１０は、選択部１０２により選択された第１の焦点検出領域の像面位置（第１の像面位置）と第１の被写体の過去の像面位置モデルとを用いて、第１の被写体の新たな像面位置モデルを同定する。被写体の像面位置モデルの同定方法については、後に図１１のステップＳ１００６において説明する。続いてステップＳ９１２（ステップＳ３１２と同じ）を経たマイクロコンピュータ２２１は、本処理を終了する。
【０１１７】
図５のフローチャートを用いて、図１０のステップＳ９０２で実行される第１の移動被写体判定処理について説明する。ここでは、実施例１での第１の移動被写体判定処理との相違について説明する。
【０１１８】
実施例１のステップＳ５０１では、第１の判定部１０６が、第１の記憶部１０３に記憶された第１の像面位置履歴データを用いて第１の像面速度を算出した。これに対して、本実施例のステップＳ５０１では、第１の判定部１０６は、図９のステップＳ９１１において第１の同定部１１０により同定された第１の被写体の像面位置モデルを用いて第１の像面速度を算出する。被写体の像面位置モデルから像面速度を算出する方法については、後に図１０のステップＳ１００７において説明する。図５の他のステップについては、実施例１と同じである。
【０１１９】
次に、図１１のフローチャートを用いて、図１０のステップＳ９０４で実行される第２の移動被写体判定処理について説明する。ここでは、図６のフローチャートと同じステップについては説明を省略する。
【０１２０】
ステップＳ１００１およびステップＳ１００２（ステップＳ６０１およびステップＳ６０２と同じ）を経た第２の判定部１０７は、ステップＳ１００３に進む。ステップＳ１００３において、第２の判定部１０７は、第２の被写体の像面位置モデルを初期化する。
【０１２１】
次にステップＳ１００４（ステップＳ６０４と同じ）を経た第２の判定部１０７は、ステップＳ１００５に進む。ステップＳ１００５では、第２の判定部１０７は、第２の被写体の像面位置モデルを同定する第２の焦点検出領域のうち、光軸方向に移動する第２の被写体を捉えているか否かの判定がまだ行われていない焦点検出領域を１つ選択する。以下の説明において、本ステップで選択された第２の焦点検出領域を、判定中焦点検出領域という。
【０１２２】
次にステップＳ１００６では、第２の同定部１１１は、ステップＳ１００５において選択された判定中焦点検出領域で算出された像面位置（第２の像面位置）と第２の被写体の過去の像面位置モデルとを用いて、第２の被写体の新たな像面位置モデルを同定する。第２の被写体の像面位置モデルの同定方法については後述する。
【０１２３】
次にステップＳ１００７では、ステップＳ１００６において同定された第２の被写体の像面位置モデルを用いて第２の像面速度を算出する。第２の像面速度の算出方法については後述する。
【０１２４】
ここで、第２の被写体の像面位置モデルを用いて第２の像面速度を算出する方法について説明する。なお、図５のステップＳ５０１において第１の像面速度を算出する方法についても同様である。本実施例における上述の第２の被写体の像面位置モデルでは、時刻ｋにおいて状態推定ベクトルＡ（ｋ）が時刻０における像面位置と時刻ｋにおける像面速度を表すので、状態推定ベクトルＡ（ｋ）が表す像面速度を第２の像面速度とすることができる。
【０１２５】
次にステップＳ１００８〜ステップＳ１０１０（ステップＳ６０８〜ステップＳ６１０と同じ）を経た第２の判定部１０７は、ステップＳ１０１１に進む。ステップＳ１０１１では、第２の判定部１０７は、第２の被写体の像面位置モデルを同定する第２の焦点検出領域の全てについて、光軸方向に移動する第２の被写体を捉えているか否かの判定を行ったか否かを判定する。第２の判定部１０７は、全ての第２の焦点検出領域について上記判定を行った場合はステップＳ１０１２に進み、全ての第２の焦点検出領域について上記判定を行っていない場合はステップＳ１０１５に戻る。
【０１２６】
ステップＳ１０１２（ステップＳ６１２と同じ）に進み、さらにステップＳ１０１３およびステップＳ１０１４（ステップＳ６１３およびＳ６１４と同じ）を経た第２の判定部１０７は、ステップＳ１０１５に進む。ステップＳ１０１５では、第２の判定部１０７は、光軸方向に移動する第２の被写体を捉えている１つの第２の焦点検出領域が存在することを示す情報を選択部１０２に渡す。そして、マイクロコンピュータ２２１は、第１の被写体の像面位置モデルおよび第２の被写体の像面位置モデルを初期化する。これは、第２の焦点検出領域において光軸方向に移動する被写体が検出されたことにより、フォーカス制御の追従対象としての被写体が変更され、新たに像面位置モデルを同定し直す必要があるためである。この後、第２の判定部１０７は本処理を終了する。
【０１２７】
なお、ステップＳ１０１２での判定時点で、第１の被写体の像面位置モデルを消去し、光軸方向に移動する被写体が存在すると判定された第２の被写体の像面位置モデルを第１の被写体の像面位置モデルとして新たに記憶させることが望ましい。これは、該第２の被写体が新たに第１の被写体となるためである。これによりフォーカス制御の追従対象としての被写体が変更された直後も、図９のステップＳ９０２において実行される第１の移動被写体判定処理において第１の像面速度を算出することができる。
【０１２８】
また、ここではカルマンフィルタを用いる場合について説明したが、逐次同定法の別種である逐次最小二乗法を用いてもよい。逐次最小二乗法は、カルマンフィルタ演算の特殊例である。ただし、逐次最小二乗法は、観測ノイズやシステムノイズを考慮しないため、焦点検出ばらつきの影響を受ける像面位置をモデル化する場合においてはカルマンフィルタを用いることがより望ましい。さらに、逐次同定法と同様にして、被写体の過去の像面位置モデルと現在の観測結果を用いて現在の像面位置モデルを同定する方法であれば、逐次同定法に限らず本発明に応用することが可能である。
【０１２９】
なお、上述の例の場合には、状態推定ベクトルＡを２次元としたので、被写体の像面位置モデルは、状態推定ベクトルＡ（２次の列ベクトル）、行列Ｌ（２×２の行列）、分散σω２（スカラー）、事後共分散行列Ｐ（２×２の行列）、列ベクトルｍ（２次の列ベクトル）。列ベクトルＸ（２次の列ベクトル）で表される。したがって、メモリに記憶すべきデータは過去の観測結果数Ｎによらず、１つの像面位置モデルに対して、これらのベクトルやスカラー、行列のみとなる。ただし、例えば、行列Ｌや分散σω２、列ベクトルｍ、ベクトルＸなどを時不変とするならば、そのデータは像面位置モデルごとに記憶する必要はない。
【０１３０】
一方、実施例１のように第２の像面位置履歴データを記憶する場合には、メモリに記憶すべきデータは記憶する最大の観測結果数に比例する。移動被写体か否かを判定するためには記憶する最大の観測結果数を大きくした方がよいので、実施例１より実施例２の方がメモリ使用量を抑えることができる。
【０１３１】
なお、本実施例における第２の被写体の像面位置モデルは、第２の移動被写体判定に用いられる焦点検出領域の１つ１つについて個別に同定されるものである。実施例１において説明したように２以上の焦点検出領域をまとめて１つのグループとする場合には、該グループごとにそれぞれ第２の被写体の像面位置モデルを同定すればよい。
【０１３２】
また、実施例２では第１の同定部１１０と第２の同定部１１１を有する構成について説明したが、第１の同定部１１０は省略することも可能である。その場合、実施例１と同様に、第１の記憶部１０２に記憶された第１の像面位置履歴データを用いて第１の像面速度を算出すればよい。
【０１３３】
以上のように、本実施例によれば、焦点検出ばらつきの大きい撮像シーンにおいて、フォーカス制御が追従する被写体が光軸方向に移動する場合には、その被写体に対してフォーカス制御の追従を続行する。一方、フォーカス制御が追従する被写体が光軸方向に移動せず、他に光軸方向に移動する被写体を捉えている焦点検出領域が存在する場合には焦点検出領域を精度良く選択し直すことにより、移動する被写体に対してフォーカス制御を追従させ続けることができる。 
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１３４】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【０１３５】
１０１  焦点検出部
１０２  選択部
１０３  第１の記憶部
１０４  予測部
１０５  第２の記憶部
１０６  第１の判定部
１０７  第２の判定部
１０８  レンズ制御部
１１０  第１の同定部
１１１  第２の同定部
【図１】
2018197845.tif 000008
【図２】
2018197845.tif 000009
【図３】
2018197845.tif 000010
【図４】
2018197845.tif 000011
【図５】
2018197845.tif 000012
【図６】
2018197845.tif 000013
【図７】
2018197845.tif 000014
【図８】
2018197845.tif 000015
【図９】
2018197845.tif 000016
【図１０】
2018197845.tif 000017
【図１１】
2018197845.tif 000018