図1は、本発明の実施例1である焦点検出装置を有する電子機器(撮像装置)としてのレンズ交換型デジタルカメラ(以下、カメラ本体という)120および該カメラ本体120に着脱可能に装着された交換レンズ装置としてのレンズユニット100の構成を示す。カメラ本体120とレンズユニット100によりカメラシステムが構成される。
レンズユニット100は、図の中央の点線で示されるマウントMを介してカメラ本体120に装着される。レンズユニット100は、被写体側(図の左側)から順に第1レンズ101、絞り102、第2レンズ103およびフォーカスレンズ104を含む撮像光学系(以下、レンズ光学系という)を有する。第1レンズ101、第2レンズ103およびフォーカスレンズ104はそれぞれ、1つ又は複数のレンズにより構成されている。また、レンズユニット100は、レンズ光学系を駆動および制御するレンズ駆動/制御系を有する。
第1レンズ101および第2レンズ103は、撮像光学系の光軸が延びる方向である光軸方向OAに移動して変倍を行う。絞り102は、光量を調節する機能と、静止画撮像時に露出時間を制御するメカニカルシャッタとしての機能とを有する。絞り102と第2レンズ103は、変倍に際して一体となって光軸方向OAに移動する。フォーカスレンズ104は、光軸方向OAに移動して撮像光学系が合焦する被写体距離(合焦距離)を変化させる、すなわち焦点調節を行う。
レンズ駆動/制御系は、ズームアクチュエータ111、絞りアクチュエータ112、フォーカスアクチュエータ113、ズーム駆動部114、絞り駆動部115、フォーカス駆動部116、レンズMPU117およびレンズメモリ118を有する。ズーム駆動部114は、ズームアクチュエータ111を駆動して第1レンズ101および第2レンズ103をそれぞれ光軸方向OAに移動させる。絞りシャッタ駆動部115は、絞りアクチュエータ112を駆動して絞り102を動作させ、絞り102の開口径やシャッタ開閉動作を制御する。フォーカス駆動部116は、フォーカスアクチュエータ113を駆動してフォーカスレンズ104を光軸方向OAに移動させる。フォーカス駆動部116には、フォーカスアクチュエータ113に設けられた不図示のセンサを用いてフォーカスレンズ104の位置を検出する。
レンズMPU117は、カメラ本体120に設けられたカメラMPU125とマウントMに設けられた不図示の通信接点を介してデータやコマンドの通信を行うことができる。レンズMPU117は、カメラMPU125からの要求コマンドに応じて、レンズ位置情報をカメラMPU125に送信する。レンズ位置情報は、フォーカスレンズ104の光軸方向OAでの位置、駆動されていない状態の撮像光学系の射出瞳の光軸方向OAでの位置および直径、射出瞳を通過する光束を制限するレンズ枠の光軸方向OAでの位置および直径等の情報を含む。また、レンズMPU117は、カメラMPU125からの制御コマンドに応じて、ズーム駆動部114、絞り駆動部115、フォーカス駆動部116を制御する。これにより、ズーム制御、絞り/シャッタ制御および焦点調節(AF)制御が行われる。
レンズメモリ(記憶手段)118は、AF制御に必要な光学情報を予め記憶している。カメラMPU125は、内蔵する不揮発性メモリやレンズメモリ118に記憶されたプログラムを実行することで、レンズユニット100の動作を制御する。
カメラ本体120は、光学ローパスフィルタ121および撮像素子122により構成されるカメラ光学系と、カメラ駆動/制御系とを有する。レンズ光学系およびカメラ光学系によりカメラシステムの撮像光学系が構成される。
光学ローパスフィルタ121は、撮像画像の偽色やモアレを軽減する。撮像素子122は、CMOSイメージセンサとその周辺部により構成され、撮像光学系により形成された被写体像を光電変換(撮像)する。撮像素子122は、横方向に複数のm画素、縦方向に複数のn画素を有する。また、撮像素子122は、後述する瞳分割機能を有しており、撮像素子122の出力から生成された後述する位相差像信号を用いて位相差検出方式でのAF(撮像面位相差AF:以下、単に位相差AFという)を行うことが可能である。
カメラ駆動/制御系は、撮像素子駆動部123、画像処理部124、カメラMPU125、表示器126、操作スイッチ群127、位相差焦点検出部129およびTVAF焦点検出部130を有する。撮像素子駆動部123は、撮像素子122の駆動を制御する。画像処理部124は、撮像素子122の出力であるアナログ撮像信号をデジタル撮像信号に変換し、該デジタル撮像信号に対してγ変換、ホワイトバランス処理および色補間処理を行って映像信号(画像データ)を生成してカメラMPU125に出力する。カメラMPU125は、画像データを表示器126に表示させたりメモリ128に撮像画像データとして記録させたりする。また、画像処理部124は、必要に応じて、画像データに対して圧縮符号化処理を行う。さらに画像処理部124は、デジタル撮像信号から対の位相差像信号やTVAF焦点検出部130で用いられるTVAF用画像データ(RAW画像データ)を生成する。
制御手段としてのカメラMPU125は、カメラシステム全体に必要な演算や制御を行う。カメラMPU125は、レンズMPU117に対して、前述したレンズ位置情報やレンズユニット100の固有の光学情報の要求コマンドや、ズーム、絞りおよび焦点調節の制御コマンドを送信する。カメラMPU125は、上記演算や制御を行うためのプログラムを格納したROM125a、変数を記憶するRAM125b、各種パラメータを記憶するEEPROM125cが内蔵されている。
表示器126は、LCD等により構成され、上述した画像データや撮像モードその他の撮像に関する情報を表示する。画像データは、撮像前のプレビュー画像データ、AF時の合焦確認用画像データおよび撮像記録後の撮像確認用画像等を含む。操作スイッチ群127は、電源スイッチ、レリーズ(撮像トリガ)スイッチ、ズーム操作スイッチ、撮像モード選択スイッチ等を含む。メモリ128は、カメラ本体120に対して着脱可能なフラッシュメモリであり、撮像画像データを記録する。
位相差焦点検出部129は、画像処理部124から得られる位相差像信号を用いて位相差AFでの焦点検出処理を行う。被写体からの光束は、撮像光学系の射出瞳のうち撮像素子122は瞳分割機能により分割された対の瞳領域を通過して撮像素子122上に対の位相差像(光学像)を形成する。撮像素子122からは、これら対の位相差像を光電変換して得られた信号を画像処理部124に出力する。画像処理部124は、この信号から対の位相差像信号を生成して、カメラMPU125を介して位相差焦点検出部129に出力する。位相差焦点検出部129は、対の位相差像信号に対して相関演算を行ってこれら対の位相差像信号間のずれ量(位相差:以下、像ずれ量という)を求め、該像ずれ量をカメラMPU125に出力する。カメラMPU125は、像ずれ量から撮像光学系のデフォーカス量を算出する。
位相差焦点検出部129およびカメラMPU125が行う位相差AFについては後に詳細に説明する。また、位相差焦点検出部129およびカメラMPU125により焦点検出装置が構成される。
TVAF焦点検出部130は、画像処理部124から入力されたTVAF用画像データから該画像データのコントラスト状態を示す焦点評価値(コントラスト評価値)を生成する。カメラMPU125は、フォーカスレンズ104を移動させて焦点評価値がピークとなる位置を探索し、その位置をTVAF合焦位置として検出する。TVAFは、コントラスト検出方式のAF(コントラストAF)とも称される。
このように、本実施例のカメラ本体120は、位相差AFとTVAF(コントラストAF)の両方を行うことが可能であり、これらを選択的に使用したり組み合わせて使用したりすることができる。
次に、位相差焦点検出部129の動作について説明する。図2(A)は、撮像素子122の画素配列を示し、レンズユニット100側から見たCMOSイメージセンサの縦(Y方向)6画素行と横(X方向)8画素列の範囲を示している。撮像素子122には、ベイヤー配列のカラーフィルタが設けられ、奇数行の画素には、左から順に緑(G)と赤(R)のカラーフィルタが交互に配置され、偶数行の画素には、左から順に青(B)と緑(G)のカラーフィルタが交互に配置されている。画素211において、符号211iを付した円はオンチップマイクロレンズ(以下、単にマイクロレンズという)を示し、マイクロレンズ211iの内側に配置された符号211a,211bを付した2つの矩形はそれぞれ光電変換部を示す。
撮像素子122は、すべての画素において光電変換部がX方向に2つに分割され、個々の光電変換部からの光電変換信号と、同じ画素の2つの光電変換部からの2つの光電変換信号を合成した信号(以下、合成光電変換信号ていう)とを読み出すことが可能である。合成光電変換信号から一方の光電変換部からの光電変換信号を減じることで、他方の光電変換部からの光電変換信号に相当する信号を得ることができる。個々の光電変換部からの光電変換信号は、位相差像信号を生成するために用いられたり、3D画像を構成する視差画像の生成に用いられたりする。合成光電変換信号は、通常の表示用画像データや撮像画像データ、さらにはTVAF用画像データの生成に用いられる。
位相差AFに用いられる対の位相差像信号について説明する。撮像素子122は、図2(A)に示したマイクロレンズ211iと、分割された光電変換部211a,211bとによって撮像光学系の射出瞳を分割する。同一の画素行に配置された所定領域内の複数の画素211の光電変換部211aからの光電変換信号をつなぎ合わせた信号が、対の位相差像信号のうち一方であるA像信号である。また、上記複数の画素211の光電変換部211bからの光電変換信号をつなぎ合わせた信号が、対の位相差像信号のうち他方であるB像信号である。各画素から光電変換部211aからの光電変換信号と合成光電変換信号とが読み出される場合、光電変換部211bからの光電変換信号に相当する信号は、合成光電変換信号から光電変換部211aからの光電変換信号を減じることで取得される。A像およびB像信号は、赤、青および緑のカラーフィルタが設けられた画素からの光電変換信号を加算して生成した疑似的な輝度(Y)信号である。ただし、赤、青、緑の色ごとにA像およびB像信号を生成してもよい。
このように生成されたA像およびB像信号の相対的な像ずれ量を相関演算により算出することで、所定領域でのデフォーカス量を取得することができる。
図2(B)は、撮像素子122の読み出し部の回路構成を示す。水平走査部151と垂直走査部153につながる各画素(光電変換部211a,211b)の境界部には、水平走査ライン152a,152bと垂直走査ライン154a,154bとが設けられている。各光電変換部からの信号は、これら走査ラインを介して読み出される。
本実施例のカメラ本体120は、撮像素子122からの信号の読み出しモードとして、第1読み出しモードと第2読み出しモードを有する。第1読み出しモードは、全画素読み出しモードであり、高精細静止画を撮像するためのモードである。第1読み出しモードでは撮像素子122の全画素から信号が読み出される。また、第2読み出しモードは、間引き読み出しモードであり、動画記録またはプレビュー画像の表示のみを行うためのモードである。第2読み出しモードに必要な画素数は全画素数よりも少ないため、X方向とY方向に所定比率で間引かれた画素からの光電変換信号のみが読み出される。
また、撮像素子122から高速で読み出す必要がある場合にも、第2読み出しモードが用いられる。信号を読み出す画素をX方向に間引く際には、信号を加算してS/N比を改善させ、Y方向に間引く際には間引かれる画素行からの信号を無視する。位相差AFおよびTVAFは、第2読み出しモードで読み出された光電変換信号を用いて行われる。
図3(A)は、本実施例における撮像光学系の射出瞳の位置(射出瞳面)と、像高0、すなわち像面の中央近傍に配置された撮像素子122の光電変換部211a,211bとの共役関係を示している。撮像素子122内の光電変換部211a,211bと撮像光学系の射出瞳面は、マイクロレンズ211iによって共役関係とされる。撮像光学系の射出瞳面は、一般に光量調節用の虹彩絞りが配置される面とほぼ一致する。一方、本実施例の撮像光学系は、変倍機能を有するズームレンズであるが、光学タイプによっては変倍を行うと、射出瞳の像面からの距離(射出瞳距離)や大きさが変化する。図3(A)では、撮像光学系の焦点距離が広角端と望遠端の中央にある状態を示している。この状態における射出瞳距離Zepを標準値として、マイクロレンズ211iの形状や像高(X,Y座標)に応じた偏心パラメータが設定される。
図3(A)において、レンズユニット100は、第1レンズ101を保持する鏡筒部材101bと、第3レンズ105と、フォーカスレンズ104を保持する鏡筒部材104bとを含む。また、レンズユニット100は、絞り102の開放時の開口径を規定する開口板102aと、絞り102の絞り込み時の開口径を調節する絞り羽根102bとを含む。なお、撮像光学系を通過する光束に対する制限部材として作用する鏡筒部材101b,104b、開口板102aおよび絞り羽根102bは、像面から観察した場合の光学的な虚像として示している。また、絞り102の近傍における合成開口を撮像光学系の射出瞳と定義し、その像面からの距離を射出瞳距離Zepと定義している。
画素211は、像面の中央近傍に配置されており、以下、中央画素という。中央画素211は、その最下層から順に、光電変換部211a,211b、配線層211e〜211g、カラーフィルタ211hおよびマイクロレンズ211iを有する。2つの光電変換部211a,211bは、マイクロレンズ211iによって撮像光学系の射出瞳面に投影される。言い換えれば、撮像光学系の射出瞳が、マイクロレンズ211iを介して光電変換部211a,211bの表面に投影される。
図3(B)は、撮像光学系の射出瞳面上における光電変換部211a,211bの投影像を示している。射出瞳面上における光電変換部211a,211bの投影像をそれぞれ、EP1a,EP1bとして示している。中央画素211は、2つの光電変換部211a,211bのいずれか一方からの光電変換信号と、両方からの光電変換信号の和(合成光電変換信号)とを出力することができる。合成光電変換出力は、撮像光学系の射出瞳のほぼ全体にわたる投影像EP1a,EP1bの両方の領域を通過した光束を光電変換した信号に相当する。
図3(A)において、撮像光学系を通過する光束の最外光線をLで示す。光束Lは、絞り102の開口板102aで制限されており、投影像EP1a,EP1bは、撮像光学系でケラレがほぼ発生していない。図3(B)では、図3(A)の光束LをTLで示している。TLで示す円の内部に、光電変換部211a,211bの投影像EP1a,EP1bの大部分が含まれているため、ケラレはほぼ発生していない。光束Lは、絞り102の開口板102aでのみ制限されているため、円TLは開口板102aと言い換えることができる。この際、像面の中央では、投影像EP1a,EP1bのケラレ状態は、図3(A)中に一点鎖線で示す光軸について対称となり、2つの光電変換部211a,211bが受光する光量は互いに等しい。
位相差AFを行う場合、カメラMPU125は、撮像素子122から上述した2種類の出力(一方の光電変換信号および合成光電変換信号)を読み出すようにセンサ駆動部123を制御する。カメラMPU125は、画像処理部124に対して、撮像領域内に設定された焦点検出領域の情報を与え、該焦点検出領域内に含まれる画素の出力からA像およびB像信号を生成して位相差焦点検出部129に供給するよう命令する。画像処理部124は、この命令に従って、A像およびB像信号を生成して位相差焦点検出部129に出力する。また、画像処理部124は、TVAF焦点検出部130に対してRAW画像データを供給する。
以上説明したように、撮像素子122は、位相差AFおよびTVAFの両方における焦点検出装置の一部を構成する。なお、本実施例は、射出瞳を水平方向に2分割する(すなわち瞳分割方向が水平方向である)場合について説明したが、一部の画素について射出瞳を垂直方向に2分割してもよい。射出瞳を垂直方向に分割する(すなわち瞳分割方向が垂直方向である)ことにより、水平方向だけでなく垂直方向にコントラストを有する被写体に対する位相差AFが可能となる。また、射出瞳を水平および垂直方向の両方に分割して4分割としてもよい。
次に、図4を用いて、TVAF(コントラストAF)について説明する。TVAFは、カメラMPU125とTVAF焦点検出部130が連携してフォーカスレンズ104の駆動と焦点評価値の算出とを繰り返すことで実現される。前述したように、画像処理部124からRAW画像データがTVAF焦点検出部130に入力される。TVAF焦点検出部130において、AF評価用信号処理部401は、RAW画像データのベイヤー配列信号から緑(G)信号を抽出し、該G信号の低輝度成分を強調して高輝度成分を抑圧するガンマ補正処理を行うことで輝度信号Yを生成する。本実施例では、輝度信号YをG信号を用いて生成する場合について説明するが、赤(R)信号や青(B)信号を用いて輝度信号を生成してもよい。また、R、GおよびB信号を全て用いて輝度信号を生成してもよい。
カメラMPU125は、TVAF焦点検出部130内の領域設定部413に1又は複数の焦点検出領域を設定する。領域設定部413は、設定された焦点検出領域内の信号を選択するゲート信号を生成する。そして、このゲート信号を、ラインピーク検出部402、水平積分部403、ライン最小値検出部404、ラインピーク検出部409、垂直積分部406,410および垂直ピーク検出部405,407,411に入力する。また、領域設定部413は、焦点評価値が焦点検出領域内の輝度信号Yを用いて生成されるように、輝度信号Yが上記各部に入力されるタイミングを制御する。上記ラインピーク検出部402〜垂直ピーク検出部405,407,411は、Yピーク評価値、Y積分評価値、Max−Min評価値、領域ピーク評価値および全ライン積分評価値を算出する。
Yピーク評価値の算出方法について説明する。ガンマ補正処理を受けた輝度信号Yは、ラインピーク検出部402に入力される。ラインピーク検出部402は、領域設定部413に設定された焦点検出領域内において水平ラインごとの輝度信号Yのピーク値であるYラインピーク値を求める。垂直ピーク検出部405は、ラインピーク検出部402から出力された水平ラインごとのYラインピーク値を焦点検出領域内で垂直方向にてピークホールドしてYピーク評価値を生成する。Yピーク評価値は、高輝度被写体や低照度被写体の判定に有効な指標である。
次に、Y積分評価値の算出方法について説明する。ガンマ補正処理を受けた輝度信号Yは、水平積分部403に入力される。水平積分部403は、焦点検出領域内で水平ラインごとに輝度信号Yの積分値(Y積分値)を求める。垂直積分部406は、水平積分部403から出力される焦点検出領域内のY積分値を垂直方向に積分してY積分評価値を生成する。Y積分評価値は、焦点検出領域全体の明るさを判断する指標として用いられる。
次に、Max−Min評価値の算出方法について説明する。ガンマ補正処理を受けた輝度信号Yは、ラインピーク検出部402に入力される。ラインピーク検出部402は、焦点検出領域内で水平ラインごとのYラインピーク値を求める。また、ガンマ補正処理を受けた輝度信号Yは、ライン最小値検出部404に入力される。ライン最小値検出部404は、焦点検出領域内で水平ラインごとに輝度信号Yの最小値(Y最小値)を検出する。水平ラインごとのYラインピーク値およびY最小値は、減算器(−)に入力される。これにより、水平ラインごとの(ラインピーク値−最小値)が垂直ピーク検出部407に入力される。垂直ピーク検出部407は、焦点検出領域内で水平ラインごとの(ラインピーク値−最小値)を垂直方向でピークホールドしてMax−Min評価値を生成する。Max−Min評価値は、コントラストの高低の判定に有効な指標である。
次に、領域ピーク評価値の算出方法について説明する。ガンマ補正処理を受けた輝度信号YがBPF408を通過することによって、特定の周波数成分が抽出され、これにより焦点信号が生成される。この焦点信号は、ラインピーク検出部409に入力される。ラインピーク検出部409は、焦点検出領域内で水平ラインごとの焦点信号のピーク値であるラインピーク値を求める。垂直ピーク検出部411は、焦点検出領域内で水平ラインごとのラインピーク値をピークホールドして領域ピーク評価値を生成する。領域ピーク評価値は、焦点検出領域内で被写体が移動しても変化が少ないので、合焦状態から再度合焦位置を探索する処理に移行するかどうかを判定する再起動判定に有効な指標である。
次に、全ライン積分評価値の算出方法について説明する。領域ピーク評価値と同様に、ラインピーク検出部409は、焦点検出領域内で水平ラインごとのラインピーク値を求める。垂直積分部410は、焦点検出領域内で水平ラインごとのラインピーク値を垂直方向に全水平ラインについて積分して全ライン積分評価値を生成する。全ライン積分評価値は、積分の効果によってダイナミックレンジが広く、感度が高いので、主要な焦点評価値である。以下の説明において、特に断りがない限り、焦点評価値は全ライン積分評価値を意味する。
カメラMPU125内のAF制御部151は、TVAF焦点検出部130から焦点評価値を取得するとともに、レンズMPU117を通じてフォーカスレンズ104を光軸方向のうち所定方向に所定量だけ移動させる。そして、新たにTVAF焦点検出部130から焦点評価値を取得し、焦点評価値が最大値となるフォーカスレンズ104の位置(TVAF合焦位置)を検出する。
本実施例では、焦点評価値を水平方向および垂直方向のそれぞれで算出する。これにより、被写体の水平方向および垂直方向でのコントラストを利用してTVAFを行うことができる。
次に、本実施例におけるAF処理について説明する。本実施例では、まずカメラMPU125が、焦点検出領域において位相差AFもしくはTVAFによる焦点検出を行って現在のフォーカスレンズ104の位置と合焦位置との距離であるデフォーカス量を求める。焦点検出が終わると、カメラMPU125は、該焦点検出の結果としてのデフォーカス量を補正するための焦点検出補正値を算出し、該焦点検出補正値を用いてデフォーカス量を補正する。そして、カメラMPU125は、補正後のデフォーカス量に応じてレンズMPU117を通じてフォーカスレンズ104をより精度が高い合焦位置に移動させるフォーカス制御を行う。
以上のAF処理の詳細を、図5および図6のフローチャートを用いて説明する。図5は、AF処理全体の流れを、図6は図5中のステップS5における焦点検出補正値を算出する処理を示している。主としてカメラMPU125がコンピュータプログラムに従ってAF処理を実行する。
まずステップS1では、カメラMPU125は、図7に示すように撮像画面(撮像素子122)上の主被写体220に対して焦点検出領域219を設定する。なお、ここで設定される焦点検出領域は、撮像画面の中央部等、予め設定された焦点検出領域でもよい。カメラMPU125は、焦点検出領域219を代表する座標(x1,y1)を設定する。代表座標(x1,y1)は、例えば焦点検出領域219の重心位置に設定される。
次にステップS2では、カメラMPU125は、焦点検出に用いる焦点検出信号を取得する。位相差AFを行う場合は、カメラMPU125は、焦点検出領域219内の同一画素行における所定範囲に含まれる複数の画素の出力からA像信号およびB像信号を焦点検出信号として取得する。TVAFを行う場合には、カメラMPU125は、TVAF焦点検出部130から焦点評価値を焦点検出信号として取得する。
次にステップS3では、カメラMPU125は、位相差AFを行う場合はA像およびB像信号の像ずれ量を算出し、該像ずれ量から焦点検出結果としてのデフォーカス量を算出する。また、TVAFを行う場合には、カメラMPU125は、フォーカスレンズ104を移動させて焦点評価値がピークとなる位置(TVAF合焦位置)を検出する。
次にステップS4では、補正値取得手段としてのカメラMPU125は、焦点検出補正値の算出に必要な補正値算出条件を取得する。ここにいう補正値算出条件は、フォーカスレンズ104の位置、ズーム状態を示す第1レンズ101の位置および絞り値等の撮像光学系(レンズ光学系)の状態や、焦点検出領域の位置座標(x1,y1)である。また、補正値算出条件は、コントラスト方向(水平、垂直:以下、単に方向という)、色(R,G,B)および空間周波数を含み、さらに後述する図8(D)に示す方向、色および空間周波数に対する重み付けの大きさ(重み付け係数)も含む。
次にステップS5では、カメラMPU125は、焦点検出補正値を以下のように算出する。まずカメラMPU125は、後述する撮像画像の特性(以下、画像特性という)に応じて算出される撮像合焦位置(第1合焦位置)と、焦点検出信号の特性(以下、焦点検出特性という)から算出される焦点検出合焦位置(第2合焦位置)との差分である第1補正値を算出する。また、カメラMPU125は、焦点検出合焦位置と、後述する位相差補正情報に応じて算出される位相差合焦位置(第3合焦位置)との差分である第2補正値を算出する。そして、カメラMPU125は、第1補正値と第2補正値とから焦点検出補正値を算出する。また、ステップS5における焦点検出補正値の算出方法の詳細については後に図6を用いて説明する。
次にステップS6では、カメラMPU125は、ステップS5で算出した焦点検出補正値BPを用いて以下の式(1)により焦点検出結果であるデフォーカス量DEF_0を補正し、補正後のデフォーカス量DEFを算出する。
DEF=DEF_0+BP (1)
そしてステップS7では、カメラMPU125は、補正後のデフォーカス量DEFに応じた合焦位置にフォーカスレンズ104を駆動する。
次にステップS8では、カメラMPU125は合焦状態が得られたか否かを判定し、合焦状態が得られていないと判定した場合はステップS1に戻り、合焦状態が得られたと判定した場合は本AF処理を終了する。
図6を用いてステップS5における焦点検出補正値の算出方法について説明する。ステップS101〜S104は撮像合焦位置と焦点検出合焦位置との差分としての第1補正値の算出に関する処理(第1工程)であり、ステップS107〜S110は焦点検出合焦位置と位相差合焦位置との差分としての第2補正値の算出に関する処理(第2工程)である。また、ステップ111は、焦点検出補正値を算出する処理(第3工程)である。
まずステップS101で、カメラMPU125は、第1補正値を取得するための情報としての撮像光学系(主としてレンズ光学系)の収差の状態を示す情報(以下、収差情報という)を、レンズメモリ118から送信手段としてのレンズMPU117を通じて取得する。本実施例での収差情報は、例えば、色、方向および空間周波数ごとの撮像光学系の結像位置に関する情報である。収差情報は、前述した撮像光学系の状態に応じて変化する。
図8(A)および(B)を用いてレンズメモリ118に格納された空間周波数ごとの収差情報について説明する。図8(A)は、撮像光学系のデフォーカスMTFを示している。横軸はフォーカスレンズ104の位置を示し、縦軸はMTFの強度を示している。図8(A)中の4つの曲線は空間周波数ごとのデフォーカスMTF曲線であり、MTF1,MTF2,MTF3およびMTF4の順に空間周波数が低い方から高い方に変化した場合のデフォーカスMTFを示している。図8(B)に示す空間周波数F1(lp/mm)のデフォーカスMTF曲線がMTF1であり、同様に空間周波数F2,F3,F4(lp/mm)のデフォーカスMTF曲線がMTF2,MTF3,MTF4である。また、図8(A)中のLP4,LP5,LP6およびLP7は、各デフォーカスMTFが極大値となるフォーカスレンズ104の位置(以下、デフォーカスMTFピーク位置という)を示している。
図8(B)は本実施例における収差情報を示しており、図8(A)のデフォーカスMTFが極大値となるフォーカスレンズ104の位置MTF_P_RHを示している。収差情報は、3色(R,G,B)と2方向(水平および垂直方向)の6通りの組み合わせのそれぞれについて、空間周波数fと撮像素子122上での焦点検出領域の位置座標(x,y)を変数とした以下の式(2)で表現される。
MTF_P_RH(f,x,y)
=(rh(0)×x+rh(1)×y+rh(2))×f2
+(rh(3)×x+rh(4)×y+rh(5))×f
+(rh(6)×x+rh(7)×y+rh(8)) (2)
rh(n)(0≦n≦8)は、収差情報を示す上記関数式(2)における各項の係数であり、nは係数のインデックスであり、0≦n≦8である。本実施例では、rh(n)はレンズメモリ118に予め記憶されており、カメラMPU125はレンズMPU117に要求してこのrh(n)を取得する。ただし、rh(n)はカメラRAM125bの不揮発性領域に記憶されていてもよい。
なお、式(2)は、R信号について水平(H)方向での空間周波数ごとのデフォーカスMTFピーク位置MTF_P_RHを示しているが、他の色の信号とH方向および垂直(V)方向との組み合わせについても同様の式で表される。
また、第1補正値に含まれる製造誤差を補正するために、rh(n)に対する第1補正値の製造誤差補正情報rhd(n)をレンズメモリ118またはカメラRAM125bの不揮発性領域に記憶しておくことが望ましい。第1補正値の製造誤差補正を行う場合には、カメラMPU125は、レンズメモリ118またはカメラRAM125bの不揮発性領域からrhd(n)を取得し、rh(n)にrhd(n)を加算することにより製造誤差補正を行う。
RとV(MTF_P_RV)、GとH(MTF_P_GH)、GとV(MTF_P_GV)、BとH(MTF_P_BH)およびBとV(MTF_P_BV)のそれぞれ組み合わせに対する係数(rv,gh,gv,bh,bv)も同様に取得することができる。このように、収差情報を関数化して各項の係数を収差情報として記憶することで、レンズメモリ118やカメラRAM125bに記憶されるデータ量を削減しつつ、撮像光学系の状態に対応した収差情報の記憶が可能になる。
図8(D)は、図5中のステップS4で取得した補正値算出条件としての方向(H,V)、色(R,G,B)および空間周波数に対する重み付け係数の例を示す。図8(D)に示す重み付け係数は、撮像合焦位置および焦点検出合焦位置の算出に用いられる。
図6のステップS102およびステップS103では、カメラMPU125は、ステップS4で取得した図8(D)に示す重み付け係数とステップS101で取得した収差情報とから、撮像合焦位置P_IMGおよび焦点検出合焦位置P_AFを算出する。具体的には、まず、式(2)のx,yに焦点検出領域の位置座標(x1,y1)を代入する。この計算により式(2)は、以下の式(3)のような形式で表される。
MTF_P_RH(f)=Arh×f2+Brh×f+Crh (3)
カメラMPU125は、MTF_P_RV(f),MTF_P_GH(f),MTF_P_GV(f),MTF_P_BH(f)およびMTF_P_BV(f)についても同様に計算する。図8(B)は、ステップS1で焦点検出領域の位置座標を代入した後の収差情報の例を示し、横軸は空間周波数を、縦軸はデフォーカスMTFピーク位置を示す。図に示される通り、色収差が大きい場合には色ごとのデフォーカスMTF曲線が乖離し、縦横差が大きい場合にはH方向とV方向のデフォーカスMTF曲線が乖離する。このように、本実施例では、色(R,G,B)と方向(H,V)との組み合わせごとに、空間周波数に対応したデフォーカスMTF曲線の情報(デフォーカスMTF情報)を有する。
次に、カメラMPU125は、ステップS4で取得した重み付け係数(図8(D))を用いて収差情報を重み付けする。これにより、収差情報が、焦点検出および撮像画像において評価される色と方向について重み付けされる。具体的には、カメラMPU125は、焦点検出用の空間周波数特性MTF_P_AF(f)と撮像画像用の空間周波数特性MTF_P_IMG(f)をそれぞれ、式(4)と式(5)を用いて算出する。K_AFは焦点検出用の重み付け係数であり、K_IMGは撮像画像用の重み付け係数である。
MTF_P_AF(f)
=K_AF_R×K_AF_H×MTF_P_RH(f)
+K_AF_R×K_AF_V×MTF_P_RV(f)
+K_AF_G×K_AF_H×MTF_P_GH(f)
+K_AF_G×K_AF_V×MTF_P_GV(f)
+K_AF_B×K_AF_H×MTF_P_BH(f)
+K_AF_B×K_AF_V×MTF_P_BV(f) (4)
MTF_P_IMG(f)
=K_IMG_R×K_IMG_H×MTF_P_RH(f)
+K_IMG_R×K_IMG_V×MTF_P_RV(f)
+K_IMG_G×K_IMG_H×MTF_P_GH(f)
+K_IMG_G×K_IMG_V×MTF_P_GV(f)
+K_IMG_B×K_IMG_H×MTF_P_BH(f)
+K_IMG_B×K_IMG_V×MTF_P_BV(f) (5)
図8(C)は、横軸に示す離散的な空間周波数F1〜F4に対して、式(4)に代入して得られるデフォーカスMTFピーク位置LP4_AF,LP5_AF,LP6_AF,LP7_AFを縦軸に示している。
カメラMPU125は、撮像画像の画像特性から算出される撮像合焦位置P_IMGと位相差AFの焦点検出特性から算出される焦点検出合焦位置P_AFを、以下の式(6)と式(7)を用いて算出する。すなわち、式(4)と式(5)で得られた図8(C)に示す空間周波数F1〜F4のそれぞれに対する空間周波数特性(デフォーカスMTFの極大値)MTF_P_AF(f),MTF_P_IMG(f)を、ステップS4で得られた空間周波数ごとの重み付け係数K_IMG_FQ(n),K_AF_FQ(n)を用いて重み付け加算する。
P_IMG
=MTF_P_IMG(1)×K_IMG_FQ(1)
+MTF_P_IMG(2)×K_IMG_FQ(2)
+MTF_P_IMG(3)×K_IMG_FQ(3)
+MTF_P_IMG(4)×K_IMG_FQ(4) (6)
P_AF
=MTF_P_AF(1)×K_AF_FQ(1)
+MTF_P_AF(2)×K_AF_FQ(2)
+MTF_P_AF(3)×K_AF_FQ(3)
+MTF_P_AF(4)×K_AF_FQ(4) (7)
ここで、画像特性および焦点検出特性について説明する。画像特性とは、人が撮像画像を観察してその撮像画像を評価するときの該評価に関わる特性を意味する。また、焦点検出特性は、焦点検出、つまりはAF処理の評価に関わる特性を意味する。具体例を以下に示す。
図8(D)に示す方向に対する重み付け係数K_AF_H,K_AF_V,K_IMG_HおよびK_IMG_Vは、瞳分割方向がH方向のみである場合は、例えば、
K_AF_H=1
K_AF_V=0
K_IMG_H=0.5
K_IMG_V=0.5
と設定される。これは、AF処理によって得られた合焦位置の評価はH方向での収差の影響が大きく、その一方、人が撮像画像を観察する際の合焦位置の評価はH方向とV方向の収差を1:1で平均化して行うことが一般的であるためである。
色に対する重み付け係数K_AF_R,K_AF_G,K_AF_B,K_IMG_R,K_IMG_GおよびK_IMG_Bは、例えば、
K_AF_R=0.25
K_AF_G=0.5
K_AF_B=0.25
K_IMG_R=0.3
K_IMG_G=0.5
K_IMG_B=0.2
と設定される。これは焦点検出時にはカラーフィルタがベイヤー配列で配置された撮像素子122から取得した信号に基づいて合焦位置が評価されるが、撮像画像では所望のホワイトバランス係数に応じて重み付けされた各色の色収差の影響で合焦位置が変化するためである。
空間周波数に対する重み付け係数K_AF_fq(1)〜K_AF_fq(4)およびK_IMG_fq(1)〜K_IMG_fq(4)は、例えば、
AF_fq(1)=0.8
AF_fq(2)=0.2
AF_fq(3)=0
AF_fq(4)=0
K_IMG_fq(1)=0
K_IMG_fq(2)=0
K_IMG_fq(3)=0.5
K_IMG_fq(4)=0.5
と設定される。これは、一般に焦点検出時には合焦位置を空間周波数の低い帯域で評価し撮像画像については合焦位置を空間周波数が高い帯域で評価しているためである。
図6のステップS104では、カメラMPU125は、焦点検出補正値BPにおいて被写体の色、方向および空間周波数に依存する成分である第1補正値BP1を、以下の式(8)により算出する。
BP1=P_AF−P_IMG (8)
本実施例では、焦点検出領域の位置や色および方向に関する処理を、空間周波数に関する処理よりも先行して実行する。これは、ユーザが焦点検出領域の位置を任意に設定する場合は、その焦点検出領域の位置や色および方向を変更する頻度が低いためである。一方、空間周波数については、撮像素子の読み出しモードや焦点評価値を得るためのデジタルフィルタの選択等により変更される頻度が高い。例えば、信号のS/Nが低下する低照度環境では、デジタルフィルタの通過周波数域をより低周波数域に変更することが考えられる。本実施例では、変更の頻度が低い係数(位置や色および方向)を算出および記憶した後に、変更の頻度の高い係数(空間周波数域)を必要に応じて計算して、第1補正値を算出する。これにより、ユーザが焦点検出領域の位置を任意に設定する場合等に演算量を低減することができる。
次にステップS105では、第1補正値の製造誤差補正情報を撮像光学系の状態(ステート)ごとに保持し、焦点検出条件としての補正値算出条件に応じた製造誤差補正情報を取得する。そして、第1補正値に対する製造誤差補正を行う。なお、第1補正値の製造誤差補正情報を特定のステートでのみ保持し、保持していないステートに関しては、第1補正値のステート間での変化率から算出してもよい。
次にステップS106では、カメラMPU125は、ステップS3で焦点検出を行った焦点検出方式が位相差AFか否かを判定し、位相差AFである場合はステップS107に進む。一方、位相差AFでない場合、すなわち焦点検出合焦位置P_AFと位相差AFにより得られる位相差合焦位置P_AF2との差分である第2補正値BP2が得られない場合は、カメラMPU125はステップS112にて第2補正値を0(BP2=0)としてステップS111に進む。このように焦点検出方式を判定して焦点検出補正値を算出することで、焦点検出方式に応じてデフォーカス量を高精度に補正することができる。
ステップS107では、カメラMPU125は、補正値算出条件を判定する。すなわち、カメラMPU125は、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差が所定値より小さいか否かを判定し、小さい場合はステップS112にて第2補正値を0(BP2=0)としてステップS111に進む。一方、カメラMPU125は、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差が所定値より小さくない場合はステップS108に進む。
ここで、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差が小さくなる条件について説明する。位相差AFでは、デフォーカスによる対の線像強度分布の重心ずれ量を像ずれ量として検出し、該像ずれ量からデフォーカス量、さらには位相差合焦位置を算出する。
図9を用いて、デフォーカスによる線像強度分布の重心ずれ量について説明する。図9は、上記重心ずれ量と相関演算の結果である線像強度分布の位置ずれ量のうち少なくとも一方に誤差を与える収差(例えばコマ収差)および絞り102等による光束のケラレがない状態を示している。図9に示す状態では、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との間に差分は生じない。
デフォーカス位置1201_P,1202_Pは互いに異なる位置を示す。対の線像強度分布1201_A,1201_Bは、デフォーカス位置1201_Pにおいて分割された光電変換部(211a,211b)に対応する対の線像強度分布を示す。対の線像強度分布1202_A,1202_Bは、デフォーカス位置1202_Pにおいて分割された光電変換部(211a,211b)に対応する対の線像強度分布を示す。
また、重心位置1201_GA,1201_GBは、対の線像強度分布1201_A,1201_Bの重心位置を示す。重心位置1202_GA,1202_GBは、対の線像強度分布1202_A,1202_Bの重心位置を示す。さらに、重心ずれ量1201_difGは重心位置1201_GA,1201_GB間の差分を示し、重心ずれ量1202_difGは重心位置1202_GA,1202_GB間の差分を示す。また、図9に示すように、収差や絞り102等によるケラレがない場合には、デフォーカス量に比例して重心ずれ量1201_difG,1202_difGが大きくなる。位相差AFは、これらの重心ずれ量を取得することでデフォーカス量を算出する。
次に、撮像光学系の収差や絞り102等によるケラレが大きい場合について説明する。図10(A)は、撮像光学系の収差や絞り102等によるケラレが大きい場合の対の線像強度分布を示す。光電変換部211aに対応する線像強度分布1301_Aを破線で示し、光電変換部211bに対応する線像強度分布1301_Bを実線で示す。また、一点鎖線G_Aは線像強度分布1301_Aの重心位置を、一点鎖線G_Bが線像強度分布1301_Bの重心位置を示す。
図10(A)に示すように、線像強度分布1301_A,1301_Bは、収差の影響を受けて各線像強度分布が片側に延びるような非対称形状となっている。このような非対称形状の線像強度分布では、その重心位置が線像強度分布が延びる側に重心ずれが生じる。
また、線像強度分布1301_A,1301_Bは、絞り102等によるケラレの影響を受けて光量差が生じる。よりケラレの影響が大きい線像強度分布1301_Aの方が収差の影響も大きく受けて、その非対称度合いが大きくなる。このように非対称度合いが線像強度分布1301_Aと線像強度分布1301_B間で異なることで、それぞれの重心位置G_A,G_Bのずれ量が異なり、重心ずれ量の差が生じる。
図10(B)に示す線像強度分布1301_IMGは、線像強度分布1301_A,1301_Bを足し合わせた線像強度分布であり、光電変換部211a,211bからの光電変換信号の和(合成光電変換信号)に対応した線像強度分布である。
図10(C)に示す1302_A、1302_Bおよび図10(D)に示す1302_IMGは、1301_A、1301_Bおよび1301_IMGの状態とはデフォーカス位置が異なり、破線で示す1302_Aの線像強度分と、実線で示す1301_Bの線像強度分の重心位置が一致した状態を表している。1302_IMGは、1301_IMGと同様に、1302_Aおよび1302_Bを足し合わせた線像強度分布を表している。
線像強度分布1301_IMGと1302_IMGを比較すると、互いに重心位置が異なる線像強度分布1301_Aと1301_Bの和である線像強度分布1301_IMGの方が、互いに重心位置が一致した線像強度分布1302_A,1302_Bの和である線像強度分布1302_IMGより分布形状がシャープである。
撮像画像の信号に対応する線像強度分布1301_IMG,1302_IMGの形状が最もシャープである位置が、合焦位置を意味する。このため、線像強度分布1301_A,1301_Bのように重心位置が互いに異なる状態が合焦状態であり、線像強度分布1302_A,1302_Bのように重心位置が一致した状態は非合焦(デフォーカス)状態である。つまり、対の線像強度分布間で非対称度合いが異なり、重心ずれ量差が生じている場合には、重心位置が一致する位置が合焦位置とはならず、重心位置が異なる位置が合焦位置となる。
以上説明したように、線像強度分布1301_A,1301_Bのような撮像光学系の収差や絞り102等によるケラレが大きい場合は、デフォーカスによる重心ずれ量に加えて、線像強度分布の非対称度合いに起因した重心ずれ量差が生じる。これにより、位相差AFは、本来は合焦状態を検出するべきデフォーカス位置で非合焦状態を検出してしまう。
また、位相差AFによりデフォーカス量を検出する際に用いられる相関演算においては、線像強度分布1301_A,1301_Bのように形状差がある場合には検出誤差が生じる。形状差がない場合には、対の線像強度分布が完全に重なり合うところで信号の一致度を表す相関量が0となる。しかしながら、形状差がある線像強度分布1301_A,1301_Bには完全に重なるところがないために、相関量が0とはならず、互いに少しずれたところで相関量が極小値となる。このように、対の線像強度分布間に形状差がある場合には検出誤差が生じる。
以上のことから、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差が小さくなる条件は、撮像光学系の収差や絞り102等によるケラレが小さい場合となる。また、焦点検出領域の位置座標(x1,y1)が中央像高付近の場合には、撮像光学系の収差が小さく、絞り102等によるケラレが小さいことが一般的である。このため、焦点検出領域の位置座標(x1,y1)が中央像高付近であることも、焦点検出合焦位置P_AFと位相差合焦位置P_AF2の差が小さくなる条件である。
図6のステップS108では、カメラMPU125は、撮像素子122の入射角度ごとの受光感度である受光感度分布を変化させる撮像素子122の条件、言い換えれば撮像素子の受光感度分布に関する条件(以下、受光感度条件という)を示す受光感度条件情報zをEEPROM125cから取得する。受光感度条件情報zは、撮像素子122の画素サイズ、撮像素子122から撮像素子122の入射瞳までの距離である瞳距離および瞳ずれ量を含む。瞳ずれ量は、図11(E)中のdxに示すように、カメラの組立てばらつきや撮像素子の製造ばらつきの影響による瞳の重心位置のずれ量である。瞳ずれ量は、カメラ個体ごとに異なる。そして、これら画素サイズ、瞳距離および瞳ずれ量が異なると、レンズ枠や絞り等によってケラレることなく光が通過する領域である光線通過領域の受光感度分布が異なる。線像強度分布の形状は光線通過領域の受光感度分布に依存するため、受光感度分布が異なると、焦点検出合焦位置P_AFと位相差焦点検出合焦位置P_AF2との差も異なる。
図11(A)〜(E)を用いて、撮像素子122の画素サイズ、瞳距離および瞳ずれ量に応じて光線通過領域の受光感度分布が異なることを説明する。図11(A)に示す受光感度分布における画素サイズ、瞳距離および瞳ずれ量を基準とする。この基準に対して、図11(B)は画素サイズが異なる受光感度分布を、図11(C)が製造誤差により瞳距離が異なる受光感度分布を、図11(D)は設計瞳距離が異なる受光感度分布を、図11(E)は瞳ずれ量が異なる受光感度分布をそれぞれ示す。
図中のDlは撮像光学系の射出瞳距離を示し、Ds,Ds’は撮像素子122の瞳距離を示す。dxは撮像素子122の瞳ずれ量を示しており、図11(A)〜(E)の瞳ずれ量は0である。また、光線通過領域を符号1101〜1105で示す。
図11(B)に示す画素サイズが図11(A)と異なる場合には、光線通過領域1102は図11(A)における光線通過領域1101と同じであるが、受光感度分布の形状が図11(A)と異なるため、光線通過領域1102の受光感度分布が異なる。
図11(C)に示すように製造誤差により瞳距離が図11(A)と異なる場合には、受光感度分布の形状は同じであるが、瞳距離Ds’が図11(A)における瞳距離Dsと異なることにより、光線通過領域1103は図11(A)における光線通過領域1101と異なる。これにより、光線通過領域1103の受光感度分布が図11(A)と異なる。
図11(D)に示すように設計瞳距離が図11(A)と異なる場合には、受光感度分布は、瞳距離の比Ds’/Dsだけスケール変換された形状となる。さらに、瞳距離Ds’がDsと異なることにより、光線通過領域1104は図11(A)における光線通過領域1101と異なる。このように受光感度分布の形状と光線通過領域の双方が異なることで、光線通過領域1104の受光感度分布が図11(A)と異なる。
図11(E)に示すように瞳ずれ量が図11(A)と異なる場合には、瞳距離Dsは同じであるため、光線通過領域1105は図11(A)の光線通過領域1101と同じである。しかし、瞳ずれ量dxが図11(A)における0と異なることにより、受光感度分布の形状は同じでも、受光感度分布の重心位置が図11(A)に対してdxだけずれる。このように受光感度分布の重心位置が異なることで、光線通過領域1105の受光感度分布が図11(A)と異なる。
次に、受光感度条件が異なると、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差分である第2補正値も異なることを、図12を用いて説明する。図12は、受光感度条件と第2補正値との関係を示しており、横軸は受光感度条件(情報z)を、縦軸は第2補正値を示している。この図から、受光感度条件の変化に伴って第2補正値も変化することが分かる。
図12では撮像素子122の画素サイズ、瞳距離および瞳ずれ量を総称して受光感度条件としているが、画素サイズ、瞳距離および瞳ずれ量のそれぞれの変化に伴って第2補正値は変化する。
このように、受光感度条件が異なると、光線通過領域の受光感度分布が変化し、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差分である第2補正値も異なる。このため、受光感度条件に対応する第2補正値を算出するために、ステップS108ではカメラMPU125は受光感度条件情報zを取得する。
またレンズメモリ118は、焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差分である第2補正値を焦点検出領域の位置座標(x,y)を変数とする関数で表す際の該関数の係数(以下、第2補正値係数という)を、フォーカスレンズ104の位置、第1レンズ101の位置(ズーム状態)および絞り値と受光感度条件ごとに記憶している。ここにいう関数と第2補正値係数については後述する。ステップS108では、レンズMPU117は、受光感度条情報zをEEPROM125cからカメラMPU125を通じて取得する。
次にステップS109では、カメラMPU125は、第2補正値を取得するために用いられる情報としての位相差補正情報を取得する。位相差補正情報は、位相差AFにより得られる位相差合焦位置に関する情報である。具体的には、位相差補正情報は、図5のステップS4で取得したフォーカスレンズ104の位置、第1レンズ101の位置(ズーム状態)および絞り値と図6のステップS108で取得した受光感度条情報zとに応じた第2補正値係数である。このようにレンズメモリ118に受光感度条件ごとの第2補正値係数を記憶しておくことで、レンズユニット100が互いに受光感度条件が異なる様々なカメラ本体に装着された場合でも、高精度に第2補正値を算出することが可能となる。
なお、レンズメモリ118に、それぞれ離散的なフォーカスレンズ104の位置、第1レンズ101の位置、絞り値、受光感度条件(画素サイズ、瞳距離および瞳ずれ量)および焦点検出領域の位置座標(x,y)ごとの第2補正値係数を記憶させておいてもよい。この場合、カメラMPU125は、レンズメモリ118に記憶された複数の第2補正値係数からの補間によって取得すべき第2補正値係数を算出すればよい。例えば、図12に示すように受光感度条件(情報z)に対して第2補正値が線形に変化する場合には、離散的に記憶された第2補正値係数の線形補間を行うことで、そのときの受光感度条件に対応する第2補正値係数を算出することができる。
また本実施例では、それぞれ複数の受光感度条件である画素サイズ、瞳距離および瞳ずれ量に対応する第2補正値係数をレンズメモリ118に記憶させる場合について説明している。しかし、画素サイズ、瞳距離および瞳ずれ量の代表値に対応する第2補正値係数のみをレンズメモリ118に記憶させ、実際の受光感度条件によらず、記憶された第2補正値係数を受光感度条件に対応する第2補正値係数として用いてもよい。
次にステップS110では、カメラMPU125は、焦点検出補正値BPの位相差AFに依存する成分である第2補正値BP2を、以下の式(9)で示す上述した関数により算出する。式(9)において、a00,a02,a20,a22は、ステップS109にて取得した第2補正値係数である。
BP2=a00+a02y2+a20x2+a22x2y2 (9)
このように、カメラMPU125は、受光感度条件に対応する第2補正値係数をレンズユニット100から取得して第2補正値BP2を算出する。これにより、受光感度分布が異なる場合においても焦点検出合焦位置P_AFと位相差合焦位置P_AF2との差を良好に補正する(減少させる)ための第2補正値BP2を取得することができる。
本実施例では、カメラMPU125は、焦点検出領域の位置座標(x,y)を変数とする関数の係数である第2補正値係数を取得して該関数により第2補正値を算出する。しかし、予め像高ごとに算出されてレンズメモリ118に記憶された第2補正値を取得してもよい。
次にステップS111では、カメラMPU125は、焦点検出補正値BPを、第1補正値BP1と第2補正値BP2を用いて、以下の式(10)により算出する。
BP=BP1+BP2 (10)
この際、ステップS112で第2補正値BP2が0に設定された場合は、第2補正値BP2が用いられずに第1補正値BP1のみから焦点検出補正値BPが算出されることになる。
以上説明したように、本実施例では、焦点検出補正値BPを、被写体の色、方向および空間周波数に依存する第1補正値BP1と、位相差AFに依存する第2補正値BP2とに分けて算出する。これにより、位相差AFにおけるデフォーカス量を高精度に補正することができる。
図13を用いて、第1補正値BP1と第2補正値BP2とを分けて算出することによりデフォーカス量を高精度に補正できることを説明する。図13中のP_IMGは、カメラMPU125がステップS102で算出した撮像合焦位置を示す。また、P_AFは、カメラMPU125がステップS103で算出した焦点検出合焦位置を示す。BP1はカメラMPU125がステップS104にて算出した第1補正値を、BP2はカメラMPU125がステップS112にて算出した第2補正値を、BPはステップS114にて算出される焦点検出補正値をそれぞれ示す。また、BP’は、第1補正値と第2補正値とを分けずに撮像合焦位置P_IMGでの線像強度分布に基づいて、図6に示した処理により算出した補正値を示している。δBPは、補正値BP’と本来算出すべき補正値との差分(BP’−BP)を示している。横軸は実def(実際のデフォーカス量)を、縦軸は検出def(位相差AFにて検出されるデフォーカス量)を示す。
図13に示すように実defと検出defとの関係が線形でない場合は、検出したA像およびB像信号間の像ずれ量をデフォーカス量に換算して補正値BPを算出する際に、実defと検出defの非線形な関係に起因して算出される補正値は、補正値BP’となり誤差δBPが生じる。これに対して、焦点検出特性から算出される焦点検出合焦位置P_AFでのLSFを用いて第2補正値BP2を算出する場合には、算出する第2補正値BP2が補正値BPよりも小さくなるため、実defと検出defの非線形な関係に起因した誤差の影響が小さくなる。
以上説明したように、本実施例では、焦点検出補正値BPを、被写体の色、方向および空間周波数に依存する第1補正値BP1と、位相差AFに依存する第2補正値BP2とに分けて取得する。そして本実施例では、第2補正値BP2を、撮像素子122の受光感度条件に応じて算出する。これにより、位相差AFにおけるデフォーカス量を高精度に補正することができる。