(57)【特許請求の範囲】
【請求項１】
フォーカスレンズを含む光学系により形成された被写体像の光電変換により生成され、前記被写体像の焦点状態に応じた位相差を有する対の位相差像信号を取得し、該対の位相差像信号から取得した前記位相差を用いて焦点検出情報を生成する生成手段と、
前記対の位相差像信号間の相関値に関する特徴量を取得する取得手段と、
前記対の位相差像信号から前記焦点検出情報の生成に用いることが可能な前記位相差が複数取得されるか否かを判定する判定手段とを有し、
前記生成手段は、前記フォーカスレンズの駆動前と駆動後にそれぞれ取得された前記特徴量の比較の結果に応じて前記位相差を取得し、
前記位相差が複数取得される場合に、前記比較の結果に応じて複数の位相差から前記焦点検出情報の生成に用いる焦点検出用位相差を選択し、
前記生成手段は、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になった場合であって、
前記複数の位相差が基準位相差に対して一方の側にある場合および前記焦点状態が合焦状態と判定できる場合は、前記複数の位相差のうち前記基準位相差に最も近い位相差を前記焦点検出用位相差として選択し、
前記複数の位相差が前記基準位相差に対して前記一方の側および他方の側にある場合は、前記フォーカスレンズの焦点状態および前記対の位相差像信号のコントラスト状態のうち少なくとも一方を用いた推定により位相シフト量の絶対値が最も小さい位相差を前記焦点検出用位相差として選択することを特徴とする焦点検出装置。
【請求項２】
前記判定手段は、前記対の位相差像信号の波形または前記相関値の波形を用いて前記位相差が複数取得されるか否かを判定することを特徴とする請求項１に記載の焦点検出装置。
【請求項３】
前記判定手段は、前記相関値の波形における複数の極値のそれぞれに対応する前記複数の位相差が取得されるか否かを判定することを特徴とする請求項１に記載の焦点検出装置。
【請求項４】
前記判定手段は、前記被写体像が繰り返しパターンを有する場合に生成される前記対の位相差像信号から前記位相差が複数取得されると判定することを特徴とする請求項１から３のいずれか一項に記載の焦点検出装置。
【請求項５】
前記生成手段は、前記推定により前記焦点検出用位相差を選択する場合は、前記複数の位相差のうち、前記基準位相差から前記複数の位相差の間隔の半分以下の範囲にある位相差を選択することを特徴とする請求項１に記載の焦点検出装置。
【請求項６】
前記取得手段は、前記複数の位相差と該複数の位相差間の間隔とを前記特徴量として取得することを特徴とする請求項１から５のいずれか一項に記載の焦点検出装置。
【請求項７】
前記取得手段は、さらに前記複数の位相差間の間隔の中心値を前記特徴量として取得することを特徴とする請求項６に記載の焦点検出装置。
【請求項８】
前記生成手段は、前記位相差が複数取得される場合に、
前記フォーカスレンズの駆動前の前記特徴量を取得するとともに、基準位相差に対する前記複数の位相差の関係に応じて該複数の位相差から第１の位相差を選択し、
前記第１の位相差から生成された前記焦点検出情報に基づく前記フォーカスレンズの駆動後に前記特徴量を取得し、
前記フォーカスレンズの駆動前と駆動後の前記特徴量の比較の結果に応じて、該駆動後の前記複数の位相差から前記焦点検出用位相差を選択することを特徴とする請求項１から７のいずれか一項に記載の焦点検出装置。
【請求項９】
前記生成手段は、
前記比較において、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になったか否かを判定し、
前記フォーカスレンズの駆動に対応した値になった場合に該駆動後の前記複数の位相差のうち前記第１の位相差に対応する位相差を前記焦点検出用位相差として選択することを特徴とする請求項８に記載の焦点検出装置。
【請求項１０】
前記生成手段は、前記フォーカスレンズの駆動後の前記特徴量が、前記フォーカスレンズの駆動に対応した値にならなかった場合に、該駆動後の前記複数の位相差のうち前記第１の位相差に対応する位相差とは異なる位相差を前記焦点検出用位相差として選択することを特徴とする請求項９に記載の焦点検出装置。
【請求項１１】
前記生成手段は、被写体像を撮像するための撮像素子の出力信号から生成された前記対の位相差像信号を取得することを特徴とする請求項１から１０のいずれか一項に記載の焦点検出装置。
【請求項１２】
前記基準位相差は、前記合焦状態に相当する位相差であることを特徴とする請求項１から１１のいずれか一項に記載の焦点検出装置。
【請求項１３】
請求項１から１２のいずれか一項に記載の焦点検出装置と、
前記焦点検出情報に基づいて前記フォーカスレンズの駆動を制御する制御手段とを有することを特徴とするフォーカス制御装置。
【請求項１４】
被写体像を撮像する撮像素子と、
請求項１３に記載のフォーカス制御装置とを有することを特徴とする撮像装置。
【請求項１５】
フォーカスレンズを含む光学系により形成された被写体像の光電変換により生成され、前記被写体像の焦点状態に応じた位相差を有する対の位相差像信号を取得し、該対の位相差像信号から取得した前記位相差を用いて焦点検出情報を生成する生成ステップと、
前記対の位相差像信号間の相関値に関する特徴量を取得する取得ステップと、
前記対の位相差像信号から前記焦点検出情報の生成に用いることが可能な前記位相差が複数取得されるか否かを判定する判定ステップとを有し、
前記生成ステップにおいて、前記フォーカスレンズの駆動前と駆動後にそれぞれ取得された前記特徴量の比較の結果に応じて前記位相差を取得し、
前記位相差が複数取得される場合に、前記比較の結果に応じて複数の位相差から前記焦点検出情報の生成に用いる焦点検出用位相差を選択し、
前記生成ステップにおいて、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になった場合であって、
前記複数の位相差が基準位相差に対して一方の側にある場合および前記焦点状態が合焦状態と判定できる場合は、前記複数の位相差のうち前記基準位相差に最も近い位相差を前記焦点検出用位相差として選択し、
前記複数の位相差が前記基準位相差に対して前記一方の側および他方の側にある場合は、前記フォーカスレンズの焦点状態および前記対の位相差像信号のコントラスト状態のうち少なくとも一方を用いた推定により位相シフト量の絶対値が最も小さい位相差を前記焦点検出用位相差として選択することを特徴とする焦点検出方法。
【請求項１６】
コンピュータに、
フォーカスレンズを含む光学系により形成された被写体像の光電変換により生成され、前記被写体像の焦点状態に応じた位相差を有する対の位相差像信号を取得し、該対の位相差像信号から取得した前記位相差を用いて焦点検出情報を生成する処理と、前記対の位相差像信号間の相関値に関する特徴量を取得する処理と、前記対の位相差像信号から前記焦点検出情報の生成に用いることが可能な前記位相差が複数取得されるか否かを判定する処理とを含む焦点検出処理を実行させるコンピュータプログラムであって、
前記コンピュータに、前記フォーカスレンズの駆動前と駆動後にそれぞれ取得された前記特徴量の比較の結果に応じて前記位相差を取得させ、
前記位相差が複数取得される場合に、前記比較の結果に応じて複数の位相差から前記焦点検出情報の生成に用いる焦点検出用位相差を選択させ、
前記コンピュータに、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になった場合であって、
前記複数の位相差が基準位相差に対して一方の側にある場合および前記焦点状態が合焦状態と判定できる場合は、前記複数の位相差のうち前記基準位相差に最も近い位相差を前記焦点検出用位相差として選択させ、
前記複数の位相差が前記基準位相差に対して前記一方の側および他方の側にある場合は、前記フォーカスレンズの焦点状態および前記対の位相差像信号のコントラスト状態のうち少なくとも一方を用いた推定により位相シフト量の絶対値が最も小さい位相差を前記焦点検出用位相差として選択させることを特徴とする焦点検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルスチルカメラやビデオカメラ等の撮像装置における焦点検出に関し、特に位相差検出方式による焦点検出に関する。
【背景技術】
【０００２】
結像光学系の焦点状態を検出する焦点検出方式の１つとして、位相差検出方式がある。位相差検出方式では、いわゆる瞳分割を行うことで形成した対の被写体像を対の光電変換部で光電変換し、それらの出力信号から得られた対の位相差像信号に対して相関演算を行うことで焦点状態を示す位相差を演算する。ただし、位相差検出方式では、被写体が周期的なコントラスト（繰り返しパターン）を有する場合に、焦点検出精度が低下し易いという問題がある。
【０００３】
特許文献１には、上記相関演算により得られる相関値が周期的な極小値を有する場合に被写体が周期的なコントラストを有すると判断し、ユーザーに警告を通知する焦点検出装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許２９６９６４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１にて開示された焦点検出装置では、被写体が繰り返しパターンを有する場合の誤動作を防ぐことは可能であるが、正確な焦点検出を行うことはできない。
【０００６】
本発明では、被写体が繰り返しパターンを有する場合でも、正確な焦点検出が行えるようにした焦点検出装置等を提供する。
【課題を解決するための手段】
【０００７】
本発明の一側面としての焦点検出装置は、フォーカスレンズを含む光学系により形成された被写体像の光電変換により生成され、該被写体像の焦点状態に応じた位相差を有する対の位相差像信号を取得し、該対の位相差像信号から取得した位相差を用いて焦点検出情報を生成する生成手段と、対の位相差像信号間の相関値に関する特徴量を取得する取得手段と、該対の位相差像信号から焦点検出情報の生成に用いることが可能な位相差が複数取得されるか否かを判定する判定手段とを有する。そして、生成手段は、フォーカスレンズの駆動前と駆動後にそれぞれ取得された特徴量の比較の結果に応じて位相差を取得し、前記位相差が複数取得される場合に、前記比較の結果に応じて前記複数の位相差から前記焦点検出情報の生成に用いる焦点検出用位相差を選択する。また、生成手段は、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になった場合であって、複数の位相差が基準位相差に対して一方の側にある場合および焦点状態が合焦状態と判定できる場合は、複数の位相差のうち基準位相差に最も近い位相差を焦点検出用位相差として選択し、該複数の位相差が該基準位相差に対して一方の側および他方の側にある場合は、フォーカスレンズの焦点状態および対の位相差像信号のコントラスト状態のうち少なくとも一方を用いた推定により位相シフト量の絶対値が最も小さい位相差を焦点検出用位相差として選択することを特徴とする。
【０００８】
なお、上記焦点検出装置と焦点検出情報に基づいてフォーカスレンズの駆動を制御する制御手段とを有するフォーカス制御装置も本発明の他の一側面を構成する。また、被写体像を撮像するための撮像素子と上記フォーカス制御装置とを有する撮像装置も本発明の他の一側面を構成する。
【０００９】
また、本発明の他の一側面としての焦点検出方法は、フォーカスレンズを含む光学系により形成された被写体像の光電変換により生成され、該被写体像の焦点状態に応じた位相差を有する対の位相差像信号を取得し、該対の位相差像信号から取得した位相差を用いて焦点検出情報を生成する生成ステップと、対の位相差像信号間の相関値に関する特徴量を取得する取得ステップと、該対の位相差像信号から焦点検出情報の生成に用いることが可能な位相差が複数取得されるか否かを判定する判定ステップとを有する。そして、生成ステップにおいて、フォーカスレンズの駆動前と駆動後にそれぞれ取得された特徴量の比較の結果に応じて位相差を取得し、前記位相差が複数取得される場合に、前記比較の結果に応じて前記複数の位相差から前記焦点検出情報の生成に用いる焦点検出用位相差を選択する。また、生成ステップにおいて、前記フォーカスレンズの駆動後の前記特徴量が、駆動前の前記特徴量から前記フォーカスレンズの駆動に対応した値になった場合であって、複数の位相差が基準位相差に対して一方の側にある場合および焦点状態が合焦状態と判定できる場合は、複数の位相差のうち基準位相差に最も近い位相差を焦点検出用位相差として選択し、該複数の位相差が該基準位相差に対して一方の側および他方の側にある場合は、フォーカスレンズの焦点状態および対の位相差像信号のコントラスト状態のうち少なくとも一方を用いた推定により位相シフト量の絶対値が最も小さい位相差を焦点検出用位相差として選択することを特徴とする。
【００１０】
なお、コンピュータを上記焦点検出装置として機能させるコンピュータプログラムである焦点検出プログラムも、本発明の他の一側面を構成する。
【発明の効果】
【００１１】
本発明によれば、位相差検出方式において、繰り返しパターンを有する被写体に対しても高速かつ正確に焦点検出およびフォーカス駆動を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例であるカメラの構成を示すブロック図。
【図２】実施例のカメラに用いられる撮像素子の構成を示す図。
【図３】実施例における焦点検出領域を示す図。
【図４】実施例における繰り返しパターン像と焦点検出領域を示す図。
【図５】実施例における繰り返しパターン像の輝度情報を示す図。
【図６】実施例における繰り返しパターン像に対して得られた対の位相差像信号に対する相関演算結果を示す図。
【図７】実施例におけるフォーカス制御処理を示すフローチャート。
【図８】実施例における焦点検出処理を示すフローチャート。
【図９】実施例における繰り返しパターン判定処理を示すフローチャート。
【図１０】実施例における繰り返しパターン判定時レンズ駆動処理を示すフローチャート。
【図１１】実施例における相関値特徴量を示す図。
【図１２】実施例における位相差推定の例を示す図。
【図１３】実施例における繰り返しパターン用焦点検出処理を示すフローチャート。
【図１４】実施例における再焦点検出位相差選択処理を示すフローチャート。
【図１５】実施例において時系列で取得された相関値波形を示す図。
【図１６】図１５に示した相関値波形を比較した結果を示す図。
【図１７】実施例において時系列で取得された相関値波形を示す別の図。
【発明を実施するための形態】
【００１３】
以下、本発明の実施例について図面を参照しながら説明する。
【００１４】
図１には、本発明の実施例である焦点検出装置を含む撮像装置としてのカメラ（デジタルスチルカメラまたはビデオカメラ）Ｃの構成を示している。カメラＣは、フォーカスレンズ、変倍レンズおよび絞り等を含む撮像光学系（結像光学系）を有するレンズユニット１００と、撮像光学系により形成された被写体像を光電変換、すなわち撮像する撮像素子１０１とを有する。レンズユニット１００は、カメラＣに一体に設けられていてもよいし、交換（着脱）可能に設けられていてもよい。撮像素子１０１は、ＣＣＤセンサやＣＭＯＳセンサ等の光電変換素子により構成され、被写体像を複数の画素のそれぞれに設けられたフォトダイオードにより光電変換する。
【００１５】
図２を用いて、撮像素子１０１の画素構成について説明する。図２の右図は撮像素子１０１の全体を示し、左図はその一部である画素ブロック２０１を拡大して示している。撮像素子１０１に設けられた複数の画素は、ベイヤー配列に基づいて配列されている。画素ブロック２０１中の４画素において、Ｒは赤のカラーフィルタを備えた画素（以下、Ｒ画素という）を、Ｂは青のカラーフィルタを備えた画素（以下、Ｂ画素という）を、Ｇ１、Ｇ２は緑のカラーフィルタを備えた画素（以下、Ｇ１画素、Ｇ２画素という）示す。
【００１６】
各画素は、２つ（対）のフォトダイオード（光電変換部）とこれら対のフォトダイオードに対して設けられた１つのマイクロレンズ（図示せず）とより構成されている。Ｒ画素は対のフォトダイオード２０２、２０３を有し、Ｂ画素は対のフォトダイオード２０８、２０９を有する。Ｇ１画素およびＧ２画素はそれぞれ、対のフォトダイオード２０４、２０５および対のフォトダイオード２０６、２０７を有する。各画素では、入射する光をマイクロレンズで瞳分割することで対のフォトダイオード上に対の被写体像が形成される。対のフォトダイオードはそれぞれ、光電変換により電荷を蓄積する。
【００１７】
分割像生成部１０２は、各画素の対のフォトダイオードのそれぞれの蓄積電荷に応じた電圧を有する出力信号を、焦点検出に用いられる焦点検出信号（Ａ信号およびＢ信号）として読み出す。また、撮像信号処理部１０４は、各画素の対のフォトダイオードからの出力信号であるＡ信号とＢ信号を加算して、撮像用信号（Ａ＋Ｂ信号）として読み出す。また、分割像生成部１０２は、撮像素子１０１の複数の画素から読み出した複数のＡ信号と複数のＢ信号をそれぞれ合成する。これにより、撮像面位相差検出方式による焦点検出およびフォーカスレンズの位置制御に用いられる対の位相差像信号としてのＡ像信号とＢ像信号を生成して出力する。
【００１８】
焦点検出部１０３は、Ａ像信号とＢ像信号のそれぞれに対して光学的な歪みを補正する処理を行った後、該Ａ像およびＢ像信号に対して相関演算を行い、Ａ像およびＢ像信号の位相差を算出する。さらに、焦点検出部１０３は、Ａ像およびＢ像信号の位相差から撮像光学系の焦点状態を示すデフォーカス量を算出する。焦点検出部１０３は、生成手段および取得手段を含む焦点検出装置に相当する。
【００１９】
ＣＰＵ１０９は、算出されたデフォーカス量に基づいて、レンズ駆動部１１０を通じてフォーカスレンズを駆動する。ＣＰＵ１０９は、制御手段に相当する。これにより、撮像光学系の合焦状態が得られる。以下の説明において、撮像面位相差検出方式による焦点検出およびフォーカスレンズの駆動の制御をまとめて、撮像面位相差ＡＦという。焦点検出部１０３およびＣＰＵ１０９によりフォーカス制御装置が構成される。
【００２０】
また、撮像信号処理部１０４は、撮像素子１０１の複数の画素のそれぞれから読み出したＡ＋Ｂ信号を合成することで撮像画像を生成するための撮像信号を生成する。さらに撮像信号処理部１０４は、撮像信号に対して光学的な歪みを補正する処理や電気的なノイズを低減する処理等を行う。画像メモリ１０７は、撮像信号処理部１０４にて生成されて上記処理がなされた撮像信号を一時的に保持する。画像処理部１０５は、撮像信号を所定の映像データフォーマットに変換して映像データを生成する。記録部１０６は、映像データを半導体メモリや光ディスク等の記録媒体に記録する。
【００２１】
ＣＰＵ１０９は、上述した撮像面位相差ＡＦを行うほか、カメラＣ内の各部の動作を制御したりレンズ駆動部１１０を通じて変倍レンズや絞りの駆動を制御したりする。メモリ１０８は、ＣＰＵ１０９および焦点検出部１０３に制御動作を実行させるコンピュータプログラムやデータを保持する。
【００２２】
図３には、本実施例のカメラＣにおいて撮像画面（画角）３００内に設定された水平３枠×垂直３枠の９つのフォーカス検出枠（焦点検出領域）３０１を示す。９つのフォーカス検出枠３０１を図示のようにそれぞれ、Window1 〜Window 9と称する。本実施例では、これら９つのフォーカス検出枠Window1 〜Window 9にて同時にデフォーカス量を取得することが可能である。
【００２３】
図４には、周期的なコントラスト（繰り返しパターン）を有する被写体像（以下、繰り返しパターン像という）４０２をフォーカス枠（Window1）４０１にて捉えた場合を示している。この場合において、フォーカス枠（Window1）４０１に対応する撮像素子１０１上の画素領域からの出力信号から１フレームにおいて生成されるＡ像信号とＢ像信号の輝度波形を図５（ａ）、（ｂ）に示す。図５（ａ）は合焦状態でのＡ像およびＢ像信号の輝度波形を示しており、Ａ像およびＢ像信号の輝度はほぼ完全に重なり合っている。また、図５（ｂ）には、ややボケた状態としての非合焦状態での輝度波形を示しており、Ａ像およびＢ像信号間に位相差Ｐａｂが生じている。焦点検出部１０３は、この位相差Ｐａｂを相関演算により検出する。
【００２４】
図６（ａ）、（ｂ）には、１フレームのＡ像信号およびＢ像信号に対する相関演算により得られる相関値（対の位相差像信号間の差分）の波形を示す。図６（ａ）は図５（ａ）と同じく合焦状態で得られた相関値波形を示し、図６（ｂ）は図５（ｂ）と同じくややボケた非合焦状態で得られた相関値波形を示す。横軸はＡ像およびＢ像信号に対する相関演算においてこれらＡ像およびＢ像信号を互いにずらす（シフトさせる）際のシフト量を示し、縦軸は相関値を示す。本実施例で行う相関演算では、相関値の極値としての極小値が得られるシフト量がＡ像およびＢ像信号の相関が最も高いシフト量、つまりは検出すべき位相差Ｐａｂを示す。
【００２５】
図６（ａ）に示す合焦状態でも図６（ｂ）に示す非合焦状態でも、相関値が極小値となるシフト量が複数存在している。しかし、図６（ａ）に示す合焦状態では、Ａ像およびＢ像信号が互いに一致しているので、シフト量０にて相関値が極小値となっている。一方、図６（ｂ）に示す非合焦状態では、相関値の極小値がシフト量０からプラス側とマイナス側の両方にずれた複数のシフト量で得られている。このため、この１フレームの相関値の波形だけでは、いずれのシフト量が真の合焦状態を得るために位相差Ｐａｂとして検出すべきシフト量なのかを判別することができない。本実施例では、このように真の合焦状態を得るためにデフォーカス量の算出に用いられるシフト量である焦点検出用位相差の候補となるシフト量（位相差）としての候補シフト量が複数取得される状態でも、焦点検出用位相差を取得できるように以下の処理を行う。なお、以下の説明では、焦点検出用位相差を、単に位相差ともいう。
【００２６】
図７のフローチャートには、焦点検出部１０３およびＣＰＵ１０９が行うＡＦ処理を示している。それぞれコンピュータである焦点検出部１０３およびＣＰＵ１０９は、コンピュータプログラムとしてのフォーカス制御プログラム（焦点検出プログラムを含む）に従って本処理を行う。
【００２７】
まず焦点検出部１０３（およびＣＰＵ１０９）は、ステップＳ７０１において、通常焦点検出処理を行う。この焦点検出処理の詳細については後述する。
【００２８】
次にステップＳ７０２では、焦点検出部１０３は、被写体像が繰り返しパターン像か否かを判定する繰り返しパターン判定処理を行う。この繰り返しパターン判定処理の詳細についても後述する。そして、次のステップＳ７０３では、焦点検出部１０３は、ステップＳ７０２での繰り返しパターン判定処理の結果が繰り返しパターン像である場合はステップＳ７０５に進み、繰り返しパターン像でない場合はステップＳ７０４に進む。ステップＳ７０４では、ＣＰＵ１０９は、ステップＳ７０１での通常焦点検出処理により得られたデフォーカス量に応じてフォーカスレンズを駆動する。
【００２９】
一方、ステップＳ７０５では、焦点検出部１０３およびＣＰＵ１０９は、被写体像が繰り返しパターン像であると判定された繰り返しパターン判定時にのみ行う処理である繰り返しパターン判定時レンズ駆動処理を行う。この繰り返しパターン判定時レンズ駆動処理の詳細についても後述する。次のステップＳ７０６では、焦点検出部１０３（およびＣＰＵ１０９）は、繰り返しパターン用焦点検出処理を行う。この繰り返しパターン用焦点検出処理の詳細についても後述する。そして、次のステップＳ７０７において、焦点検出部１０３はステップＳ７０２と同様に再度、繰り返しパターン判定処理を行う。
【００３０】
さらに、次のステップＳ７０８では、焦点検出部１０３は、ステップＳ７０７での繰り返しパターン判定処理の結果が繰り返しパターン像である場合はステップＳ７０９に進み、繰り返しパターン像でない場合はステップＳ７０１に戻る。ステップＳ７０９では、焦点検出部１０３は、ステップＳ７０６での繰り返しパターン用焦点検出処理によりデフォーカス量を求める。ＣＰＵ１０９は該デフォーカス量に応じてフォーカスレンズを駆動する。
【００３１】
ステップＳ７０１で行われる通常焦点検出処理について、図８のフローチャートを用いて説明する。通常焦点検出処理では、ＣＰＵ１０９はまずステップＳ８０１にて撮像素子１０１の各画素（対のフォトダイオード）に電荷の蓄積を行わせた後、分割像生成部１０２に各画素にて蓄積された電荷（Ａ信号およびＢ信号）の読み出しを行わせる。
【００３２】
次にステップＳ８０２において、ＣＰＵ１０９は、分割像生成部１０２にＡ像およびＢ像信号を生成させ、さらに焦点検出部１０３にＡ像およびＢ像信号の光学的な歪みを補正する処理を行わせる。
【００３３】
次にステップＳ８０３において、焦点検出部１０３は、Ａ像およびＢ像信号の輝度レベルの評価を行う。言い換えれば、Ａ像およびＢ像信号のコントラスト状態を評価する。次にステップＳ８０４では、焦点検出部１０３は、Ａ像およびＢ像信号のそれぞれに対するバンドパスフィルタ処理を行い、その後、Ａ像およびＢ像信号に対する相関演算を行う。これにより、焦点検出部１０３は、相関演算により得られた相関値の波形を取得する。
【００３４】
次にステップＳ８０５では、焦点検出部１０３は、相関値の波形から相関値の極小値を検出し、次のステップＳ８０６においてその極小値の確からしさを信頼性として評価する。信頼性は、ステップＳ８０３で得られたコントラスト状態やＡ像およびＢ像信号の一致度等を用いて行う。
【００３５】
最後にステップＳ８０７において、焦点検出部１０３は、信頼性が所定の閾値より高ければ、ステップＳ８０５にて検出した相関値の極小値が得られたシフト量を位相差とし、該位相差から焦点検出情報としてのデフォーカス量を算出する。そして、本処理を終了する。
【００３６】
次に、ステップＳ７０２で行われる繰り返しパターン判定処理について、図９のフローチャートを用いて説明する。繰り返しパターン判定処理では、まず焦点検出部１０３は、ステップＳ９０１においてＡ像およびＢ像信号の輝度波形を用いて評価を行う。具体的には、Ａ像およびＢ像信号の輝度レベルがほぼ一致し、かつ例えば図５（ａ）、（ｂ）に示す輝度波形での複数の立ち上がりエッジ間の距離（間隔）や立下りエッジ間の間隔を測定してＡ像およびＢ像信号の繰り返し周期が明確か否かを判定する。
【００３７】
図５（ａ）、（ｂ）に示すような輝度波形は被写体像が極端な繰り返しパターン像であることを示している。このように輝度レベルがほぼ一致し、かつ繰り返し周期も明確である被写体像の場合は、焦点検出部１０３はステップＳ９０４に進み、被写体像が繰り返しパターン像であると判定して本処理を終了する。一方、被写体像の繰り返し周期が明確でない場合（例えば、被写体像が、輝度レベルのばらつきが大きかったり、周期のばらつきが大きかったりするパターン像である場合）は、被写体像が繰り返しパターン像か否かを輝度波形だけでは判定できない。このため、焦点検出部１０３はステップＳ９０２に進む。
【００３８】
ステップＳ９０２において、焦点検出部１０３は、相関演算により得られた相関値波形を用いて評価を行う。具体的には、相関値波形において、極小値の数が複数あり、かつ極小値が類似レベルにあるか否かを判定する。類似レベルとは相関値が近いことを指す。つまり、ステップＳ９０２では、相関値が近い極小値が複数あるか否かを判定する。相関値がどの程度の範囲にあれば類似レベルにあるとするかは適宜決めることができる。類似レベルの極小値の数が複数ある場合は、焦点検出部１０３はステップＳ９０４に進み、被写体像が繰り返しパターン像であると判定して本処理を終了する。一方、これに当てはまらない場合には、焦点検出部１０３はステップＳ９０３に進み、被写体像が繰り返しパターン像ではないと判定して本処理を終了する。
【００３９】
次に、ステップＳ７０５で行われる繰り返しパターン判定時レンズ駆動処理について、図１０のフローチャートおよび図１１（ａ）、（ｂ）を用いて説明する。この処理は、前述したように被写体像が繰り返しパターン像であると判定されたときにのみ行われる。図１１（ａ）、（ｂ）には、相関値波形およびこれから検出または算出される数値の例を示している。
【００４０】
まずステップＳ１００１において、焦点検出部１０３は、相関値波形から相関値の複数の極小値を検出し、該複数の極小値が得られる複数の候補シフト量を保持する。また、これら複数の候補シフト量のうち隣り合う候補シフト量間の間隔（位相差間の間隔）および隣り合う候補シフト量間の間隔の中心値を算出してこれらを保持する。
【００４１】
例えば、図１１（ａ）に示すように、シフト量Ｓ１、Ｓ２、Ｓ３、Ｓ４にて類似レベルの極小値を検出すると、焦点検出部１０３は、これらのシフト量Ｓ１〜Ｓ４を候補シフト量として保持する。また、焦点検出部１０３は、候補シフト量Ｓ１〜Ｓ４の間隔として、Ｗ１、Ｗ２、Ｗ３をそれぞれ候補シフト量Ｓ１〜Ｓ４と関連付けて保持する。また、焦点検出部１０３は、間隔Ｗ１、Ｗ２、Ｗ３のそれぞれの中心値を、（Ｓｉ＋Ｓ（ｉ＋１））／２（ただし、ｉ＝１〜３）により算出してＯ１、Ｏ２、Ｏ３として保持する。焦点検出部１０３が保持するこれら相関値に関する特徴量（以下、相関値特徴量という）を、図１１（ｂ）に表により示している。
【００４２】
次にステップＳ１００２において、焦点検出部１０３は、ステップＳ１００１にて検出した複数の候補シフト量の位置関係、言い換えれば基準位相差に対する複数の候補シフト量の関係に応じてステップＳ１００３、Ｓ１００５およびＳ１００８のうちいずれかに進む。基準位相差は、合焦状態に相当するシフト量０である。
【００４３】
まず、複数の候補シフト量がプラス側（無限遠側）とマイナス側（至近側）のうち一方の側にのみ存在する場合は、焦点検出部１０３はステップＳ１００３に進み、シフト量０に最も近い候補シフト量を位相差（第１の位相差）として選択する。図１１（ａ）にはプラス側とマイナス側の両方に候補シフト量Ｓ１〜Ｓ４が存在する場合を示しているが、例えばＳ３およびＳ４のみが存在する場合がこの場合に該当し、焦点検出部１０３はシフト量０に最も近い候補シフト量Ｓ３を位相差として選択する。
【００４４】
そして、焦点検出部１０３は、ステップＳ１００４に進み、選択した位相差に基づいて次のフォーカスレンズの駆動時の駆動量（レンズ駆動量）を算出する。例えば、候補シフト量Ｓ３を位相差として選択した焦点検出部１０３は、該シフト量Ｓ３からデフォーカス量を算出する。ＣＰＵ１０９は、該デフォーカス量に対応するレンズ駆動量を算出してステップＳ１０１０に進む。つまり、シフト量０に最も近い候補シフト量を真の位相シフト量とみなしてフォーカスレンズを駆動する。
【００４５】
また、ステップＳ１００２において複数の候補シフト量のいずれかが合焦状態（シフト量０）の近傍に存在する場合、例えば２Ｆδ〜３Ｆδ（Ｆは撮像光学系のＦ値、δは許容錯乱円径）以内の範囲にある場合は、焦点検出部１０３はステップＳ１００５に進む。ステップＳ１００５において、焦点検出部１０３は、合焦状態であるか否かを判定する。合焦状態であれば、Ａ像およびＢ像信号の一致度が高く、さらに撮像信号（Ａ＋Ｂ像信号）とＡ像信号との一致度も高い。焦点検出部１０３は、これらの一致度を所定の閾値と比較して合焦状態と判定できる場合はステップＳ１００６に進み、シフト量０付近の（シフト量０に最も近い）候補シフト量を位相差（第１の位相差）として選択する。
【００４６】
そして、ステップＳ１００７において、焦点検出部１０３は、前述したステップＳ１００４と同様に、選択した位相差からデフォーカス量を算出する。ＣＰＵ１０９は、該デフォーカス量に対応する次のレンズ駆動量を算出してステップＳ１０１０に進む。
【００４７】
また、ステップＳ１００２において、複数の候補シフト量が、図１１（ａ）に示したようにプラス側とマイナス側（一方および他方の側）の両方に存在する場合は、焦点検出部１０３はステップＳ１００８に進む。ステップＳ１００８では、焦点検出部１０３は、フォーカスレンズの状態（レンズステータス）とコントラスト値とから、複数の候補シフト量のうち真の位相差である可能性が高いと推定される１つを位相差（第１の位相差）として選択する。
【００４８】
図１２には、現在のフォーカスレンズの位置で−６ｍｍ〜＋６ｍｍのデフォーカス状態が生じるレンズステータスにあるとした場合におけるそのレンズステータスとコントラスト値から見たデフォーカス状態の可能性を示している。図１２の例では、レンズステータスから候補シフト量がＳ２、Ｓ３、Ｓ４に絞られる。さらに、コントラスト値が比較的大きめである場合は、デフォーカス量が小さいことが推定される。このため、焦点検出部１０３は、位相シフト量の絶対値が最も小さいＳ３を、真の位相差として最も可能性が高い候補シフト量とし、候補シフト量Ｓ３を位相差として選択する。この際、シフト量０から候補シフト量間の間隔の半分以下の範囲にある位相差を選択する。
【００４９】
図１２の例では、候補シフト量Ｓ３（＝＋３．５）は、該候補シフト量Ｓ３とこれに隣り合う候補シフト量Ｓ２との間隔Ｗ２（＝１８．７）の半分以下である。よって、候補シフト量Ｓ３はシフト量０から候補シフト量間の間隔の半分以下の範囲にある。このため、焦点検出部１０３は、候補シフト量Ｓ３を位相差として選択してデフォーカス量を算出する。候補シフト量が候補シフト量間の間隔の半分以下でない場合は、別の候補シフト量の方が絶対値が小さいため、その候補シフト量を探索し、位相差として選択する。
【００５０】
そして、次のステップＳ１００９では、ＣＰＵ１０９は、ステップＳ１００８で算出されたデフォーカス量に対応する次のレンズ駆動量を算出する。そして、ステップＳ１０１０に進む。
【００５１】
ステップＳ１０１０では、ＣＰＵ１０９は、算出されたレンズ駆動量に応じてフォーカスレンズの駆動を行う。これにより、繰り返し判定時レンズ駆動処理が終了する。
【００５２】
次に、ステップＳ７０６で行われる繰り返しパターン用焦点検出処理について、図１３のフローチャートを用いて説明する。繰り返しパターン用焦点検出処理では、ＣＰＵ１０９はまずステップＳ１３０１にて撮像素子１０１の各画素（対のフォトダイオード）に電荷の蓄積を行わせた後、分割像生成部１０２に各画素にて蓄積された電荷（Ａ信号およびＢ信号）の読み出しを行わせる。
【００５３】
次にステップＳ１３０２において、ＣＰＵ１０９は、分割像生成部１０２にＡ像およびＢ像信号を生成させ、さらに焦点検出部１０３にＡ像およびＢ像信号の光学的な歪みを補正する処理を行わせる。
【００５４】
次にステップＳ１３０３において、焦点検出部１０３は、Ａ像およびＢ像信号の輝度レベルの評価を行う。言い換えれば、Ａ像およびＢ像信号のコントラスト状態を評価する。
【００５５】
次のステップＳ１３０４において、焦点検出部１０３は、Ａ像およびＢ像信号のそれぞれに対するバンドパスフィルタ処理を行い、その後、Ａ像およびＢ像信号に対する相関演算を行う。これにより、焦点検出部１０３は、相関演算により得られた相関値の波形を取得する。
【００５６】
次のステップＳ１３０５において、焦点検出部１０３は、相関値波形を用いて再焦点検出位相差選択処理を行う。
【００５７】
ここで、図１４のフローチャートおよび図１５（ａ）、（ｂ）を用いて再焦点検出位相差選択処理について説明する。
【００５８】
ステップＳ１４０１において、焦点検出部１０３は、フォーカスレンズの駆動前（前回）に保持した相関値特徴量と駆動後（今回）に取得された相関値特徴量とを比較し、その比較結果から今回取得した相関値波形が前回の相関値波形に類似しているか否かを判定する。言い換えれば、前回の相関値特徴量と今回の相関値特徴量とが類似しているか否か、または今回の相関値特徴量が前回の相関値特徴量からフォーカスレンズの駆動に対応する値になったか否かを判定する。
【００５９】
具体的には、今回の相関値波形にて極小値が得られる候補シフト量が、前回の候補シフト量に対してステップＳ１０１０でフォーカスレンズを駆動したときのレンズ駆動量に相当する分変化したか否かを判定する。また、焦点検出部１０３は、今回の相関値波形における候補シフト量の間隔が、前回の相関値波形における候補シフト量の間隔と同等（図１１（ｂ）の例では約１８）であるか否かを判定する。さらに、焦点検出部１０３は、今回の相関値波形の繰り返し状態（つまり候補シフト量の数）が前回の相関値波形と同等か否かを判定する。
【００６０】
これらの判定が全て「否」である場合、すなわち今回の相関値波形が前回の相関値波形と類似してない場合は、焦点検出部１０３はステップＳ１４０５に進み、被写体像が前回から別の被写体像に変わったものとして相関値特徴量を初期化する。そして、ステップＳ１４０６において焦点検出部１０３は、今回の候補シフト量、これらの間隔および間隔の中心を算出してこれらを新たな相関値特徴量として保持し、候補シフト量からの位相差の選択は行わずに本処理を終了する。
【００６１】
一方、今回の相関値波形が前回の相関値波形と類似している場合は、焦点検出部１０３はステップＳ１４０２に進み、今回の相関値波形における候補シフト量の間隔が、前回の相関値波形における候補シフト量の間隔に対して拡がったか否かを判定する。該間隔が拡がった場合は、焦点検出部１０３は、ステップＳ１０１０でのフォーカスレンズの駆動方向は誤り、つまりデフォーカス量が大きくなる方向にフォーカスレンズを駆動したものとしてステップＳ１４０７に進む。
【００６２】
ステップＳ１４０７では、焦点検出部１０３は、ステップＳ１０１０でのレンズ駆動方向とは逆側（図１１（ａ）でのマイナス側）に存在する候補シフト量を位相差（焦点検出用位相差）として選択するように切り替える。すなわち、第１の位相差に対応する位相差とは異なる位相差を焦点検出用位相差として選択するように切り替える。
【００６３】
ステップＳ１４０２において上記間隔が狭くなっていれば、焦点検出部１０３はステップＳ１４０３に進む。ステップＳ１４０３では、焦点検出部１０３は、先のステップＳ１４０１と同様に、今回の候補シフト量が前回の候補シフト量に対してステップＳ１０１０でフォーカスレンズを駆動したときのレンズ駆動量に相当する分変化したか否かを判定する。すなわち、候補シフト量が正しく変化したか否かを判定する。
【００６４】
候補シフト量が正しく変化した場合は、焦点検出部１０３はステップＳ１４０４に進む。ここでは焦点検出部１０３は、先に行った位相差としての候補シフト量（Ｓ３）の選択が正しいものとして、継続してその候補シフト量（第１の位相差）が変化した後の候補シフト量を位相差（焦点検出用位相差）として選択する。すなわち、第１の位相差に対応する位相差を焦点検出用位相差として選択する。そして、その位相差からのデフォーカス量の算出および該デフォーカス量に応じたフォーカスレンズの駆動を行う。
【００６５】
一方、ステップＳ１４０３において候補シフト量が正しく変化したと判定できない場合は、焦点検出部１０３はステップＳ１４０５に進んで相関値特徴量を初期化する。さらに、焦点検出部１０３はステップＳ１４０６にて新たな相関値特徴量を保持し、位相差の選択は行わずに本処理を終了する。
【００６６】
図１３に戻って説明を続ける。ステップＳ１３０６において、焦点検出部１０３は、ステップＳ１３０５で選択した位相差に対応する相関値の極小値の確からしさを信頼性として評価する。ここでも、ステップＳ８０６と同様に、Ａ像およびＢ像信号のコントラスト状態や一致度等を用いて信頼性を評価する。
【００６７】
最後にステップＳ１３０７において、焦点検出部１０３は、信頼性が所定の閾値より高ければ、ステップＳ１３０５で選択した位相差からデフォーカス量を算出する。そして、本処理を終了する。ステップＳ１３０５において位相差を選択しなかった場合には、焦点検出部１０３はデフォーカス量算出エラーとして本処理を終了する。この際、カメラＣに設けられた不図示の表示部にエラー表示を行ってもよい。
【００６８】
以上説明した処理により、繰り返しパターンを有する被写体に対しても撮像光学系を合焦方向に追い込むことができるが、これについて図１５（ａ）、（ｂ）に示す相関値波形を用いて説明を加える。
【００６９】
図１５（ａ）の左側には、時刻ｔ０において得られた相関値波形を示す。この相関値波形は、図１１（ａ）に示した相関値波形と等価なものである。図１５（ａ）の右側には、左側の図のシフト量の±１０の範囲を拡大して示している。また、図１５（ｂ）には、前述したように候補シフト量Ｓ３である＋３．５に対応するデフォーカス量分のフォーカスレンズ駆動後の時刻ｔ１において得られた相関値波形を示している。時刻ｔ０、ｔ１で取得された相関値特徴量をそれぞれ、図１６（ａ）、（ｂ）に示している。
【００７０】
図１５（ａ）、（ｂ）の相関値波形は、位相差として選択（推定）された候補シフト量Ｓ３が時刻ｔ０、ｔ１でフォーカスレンズ駆動分だけ変化し、間隔Ｗも時刻ｔ０、ｔ１でほぼ一致しているため、同一の繰り返しパターン像に対する相関値波形と確認できる。また、図１５（ｂ）および図１６（ｂ）に示した時刻ｔ１におけるシフト量０（＝Ｓ３）での相関値が最も低く（Ａ像およびＢ像信号の一致度が最も高く）なっており、合焦状態と判定できる。
【００７１】
また、図１７（ａ）、（ｂ）には、図１０のステップＳ１００８において位相差としてプラス側の候補シフト量Ｓ３を選択した場合において、真の位相差がマイナス側に存在する場合の相関値波形の変化の例を示す。この例では、図１７（ａ）において候補シフト量Ｓ３（＝＋３．５）が真の位相差であると選択してフォーカスレンズ駆動を行ったにもかかわらず、図１７（ｂ）に示すように候補シフト量Ｓ３が大きく（＝５）なっている。この場合は、プラス側の候補シフト量Ｓ３の選択が間違っていたと判定でき、次のフォーカスレンズ駆動時にはマイナス側の候補シフト量Ｓ２を選択することができる。
以上説明したように、本実施例によれば、撮像面位相差検出方式において、繰り返しパターンを有する被写体に対しても高速かつ正確に焦点検出およびフォーカスレンズ駆動を行うことができる。
【００７２】
なお、上記実施例では、相関値特徴量の１つとして候補シフト量間の間隔Ｗを用い、フォーカスレンズの駆動により間隔Ｗが広がったか否かを判定することによってそのフォーカスレンズの駆動方向の正誤判定を行ったが、間隔Ｗ以外の相関値特徴量を用いてもよい。例えば、図１７に示すように、駆動方向が誤りである場合は第１の位相差とした候補シフト量の絶対値が駆動により大きくなる。これを利用して、フォーカスレンズの駆動により候補シフト（極小値）の絶対値が大きくなったか否かを判定してその駆動方向の正誤判定を行ってもよい。
【００７３】
また、候補シフト量間の中心値Ｏは間隔Ｗの変化に伴って変化するため、間隔Ｗと同様にフォーカスレンズの駆動方向の正誤判定に用いることができる。また、撮像画像（Ａ像、Ｂ像、Ａ＋Ｂ像のいずれでもよい）のコントラストを用いてフォーカスレンズの駆動方向の正誤判定を行ってもよい。駆動によりコントラストが高くなっていれば、その駆動方向は正しいものと判定することができる。
【００７４】
また、相関値を用いてフォーカスレンズの駆動方向の正誤判定を行ってもよい。図６に示したように、合焦位置に近いほど相関値が小さくなる。よって、駆動により相関値が小さくなっていれば（相関が高くなっていれば）、その駆動方向は正しいものと判定することができる。合焦位置に近づくことによる相関値の変化は、特にシフト量が小さい範囲で起きるため、シフト量の絶対値が小さい極小値における相関量を比較することが好ましい。
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する部（例えば、ＡＳＩＣ）によっても実現可能である。
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【符号の説明】
【００７５】
１００  レンズユニット
１０１  撮像素子
１０２  分割像生成部
１０３  焦点検出部
１０９  ＣＰＵ
【図１】
0006792902.tif 000002
【図２】
0006792902.tif 000003
【図３】
0006792902.tif 000004
【図４】
0006792902.tif 000005
【図５】
0006792902.tif 000006
【図６】
0006792902.tif 000007
【図７】
0006792902.tif 000008
【図８】
0006792902.tif 000009
【図９】
0006792902.tif 000010
【図１０】
0006792902.tif 000011
【図１１】
0006792902.tif 000012
【図１２】
0006792902.tif 000013
【図１３】
0006792902.tif 000014
【図１４】
0006792902.tif 000015
【図１５】
0006792902.tif 000016
【図１６】
0006792902.tif 000017
【図１７】
0006792902.tif 000018