(実施例1)
以下、本発明の実施例1では、本発明の撮像装置をレンズ交換可能な一眼レフタイプのデジタルカメラに適用した例について説明する。
図2は本実施例のデジタルカメラのブロック図である。本実施例のデジタルカメラは交換レンズ式一眼レフカメラであり、レンズユニット100とカメラ本体120とを有する。レンズユニット100は図中央の点線で示されるマウントMを介して、カメラ本体120と接続される。
レンズユニット100は、第1レンズ群101、絞り兼用シャッタ102、第2レンズ群103、フォーカスレンズ群(以下、単に「フォーカスレンズ」という)104、及び、後述する制御手段を有する。このようにレンズユニット100は、フォーカスレンズ104を含むと共に被写体の像を形成する撮影光学系を有する。
第1レンズ群101は、レンズユニット100の先端に配置され、光軸方向OAに進退可能に保持される。絞り兼用シャッタ102は、その開口径を調節することで撮影時の光量調節を行う他、静止画撮影時には露光秒時調節用シャッタとして機能する。絞り兼用シャッタ102及び第2レンズ群103は一体として光軸方向OAに進退し、第1レンズ群101の進退動作との連動によりズーム機能を実現する。フォーカスレンズ104は、光軸方向の進退により焦点調節を行う。
制御手段は、ズームアクチュエータ111、絞りシャッタアクチュエータ112、フォーカスアクチュエータ113、ズーム駆動回路114、絞りシャッタ駆動回路115、フォーカス駆動回路116、レンズMPU117、レンズメモリ118を有する。
ズームアクチュエータ111は、第1レンズ群101や第3レンズ群103を光軸方向OAに進退駆動し、ズーム操作を行なう。絞りシャッタアクチュエータ112は、絞り兼用シャッタ102の開口径を制御して撮影光量を調節すると共に、静止画撮影時の露光時間制御を行なう。
フォーカスアクチュエータ113で、フォーカスレンズ104を光軸方向OAに進退駆動して焦点調節を行なう。フォーカスアクチュエータ113は、フォーカスレンズ104の現在位置を検出する位置検出部としての機能が備わっている。
ズーム駆動回路114は、撮影者のズーム操作に応じてズームアクチュエータ111を駆動する。シャッタ駆動回路115は、絞りシャッタアクチュエータ112を駆動制御して絞り兼用シャッタ102の開口を制御する。
フォーカス駆動回路116は、焦点検出結果に基づいてフォーカスアクチュエータ113を駆動制御し、フォーカスレンズ104を光軸方向OAに進退駆動して焦点調節を行なう。
レンズMPU117は、撮像素子122上に被写体像を結像させる撮影光学系に係る全ての演算、制御を行い、ズーム駆動回路114、シャッタ駆動回路115、フォーカス駆動回路116、レンズメモリ118を制御する。また、レンズMPU117は、現在のレンズ位置を検出し、カメラMPU125からの要求に対してレンズ位置情報を通知する。レンズメモリ118には自動焦点調節に必要な光学情報を記憶する。
カメラ本体120は、光学的ローパスフィルタ121、撮像素子122、後述する制御手段を有する。
光学的ローパスフィルタ121は、撮影画像の偽色やモアレを軽減する。
撮像素子122は、C−MOSセンサとその周辺回路で構成され、横方向m画素、縦方向n画素の受光ピクセル上に1つの光電変換素子が配置される。撮像素子122は、全画素の独立な出力が可能なように構成されている。また、一部の画素が焦点検出用画素となっており、撮像面で位相差AF検出方式の焦点検出(撮像面位相差AF)が可能となっている。
焦点検出用画素は、複数の撮影用画素内に離散的に配置されている(図4)。
より具体的には、撮像素子122は、被写体の像を形成する撮影光学系の射出瞳の全域を通る光束を各々が受光して被写体の像を生成する複数の撮影用画素を有する。また、撮像素子122は、各々が撮影光学系の異なる射出瞳の領域を通る光束を受光する複数の焦点検出用画素を更に有する。複数の焦点検出用画素は全体として撮影光学系の射出瞳の全域を通る光束を受光することができる。例えば、撮像素子122は、2行×2列の画素のうち、対角に配置される一対のG画素は撮影用画素として残し、R画素とB画素を焦点検出用画素に置き換える。
駆動手段は、撮像素子駆動回路123、画像処理回路124、第1の制御手段、第2の制御手段、第3の制御手段の機能を備えたカメラMPU125、表示器126、操作スイッチ群127、メモリ128、撮像面位相差焦点検出部129、TVAF焦点検出部130を有する。
撮像素子駆動回路123は、撮像素子122の動作を制御するとともに、取得した画像信号をA/D変換してカメラMPU125に送信する。画像処理回路124は、撮像素子122が取得した画像のγ変換、カラー補間、JPEG圧縮などを行う。
第1の制御手段、第2の制御手段、第3の制御手段の機能を備えたカメラMPU(プロセッサ)125は、カメラ本体120に係る全ての演算、制御を行い、撮像素子駆動回路123、画像処理回路124、表示器126、操作SW127、メモリ128、撮像面位相差焦点検出部129、TVAF焦点検出部130を制御する。
第1の制御手段は、撮影光学系の異なる瞳領域を通過する複数の光束を検出する焦点検出用画素から出力される第1の画素信号に基づいて位相差AFを行う。
第2の制御手段は、撮影光学系の瞳領域を通過する複数の光束を検出する撮影用画素から出力される第2の画素信号に基づいてコントラストAFを行う。
第2の制御手段は、被写体像のコントラスト情報及び被写体像の輝度情報の少なくとも1つに基づいてフォーカスレンズのレンズ駆動量の駆動幅を可変する。
第3の制御手段は、第2の画素信号から抽出された被写体情報を用いて、前記位相差AFと前記コントラストAFを切換える。
第2の画素信号から抽出された被写体情報は、焦点検出用画素の焦点検出の精度と相関のある情報又は撮影用画素の焦点検出の精度と相関のある情報である。
第2の画素信号から抽出された被写体情報は、焦点検出用画素の焦点検出の精度と相関のあるコントラスト情報及び焦点検出用画素の焦点検出の精度と相関のある被写体像の空間周波数情報及び焦点検出用画素の焦点検出の精度と相関のある被写体像に含まれる迷光情報のうち少なくとも1つである。
第2の画素信号から抽出された被写体情報は、撮影用画素の焦点検出の精度と相関のある被写体像の輝度情報及び撮影用画素の焦点検出の精度と相関のある被写体像の経時による変化量情報及び撮影用画素の焦点検出の精度と相関のある被写体像のコントラスト情報うち少なくとも1つである。
第1の制御手段、第2の制御手段、第3の制御手段の機能を備えたカメラMPU125はマウントMの信号線を介してレンズMPU117と接続され、レンズMPU117に対してレンズ位置の取得や所定の駆動量でのレンズ駆動要求を発行したり、レンズユニット100に固有の光学情報を取得したりする。
第1の制御手段、第2の制御手段、第3の制御手段の機能を備えたカメラMPU125には、カメラ動作を制御するプログラムを格納したROM125a、変数を記憶するRAM125b、諸パラメータを記憶するEEPROM125cが内蔵されている。
更に、カメラMPU125は、ROM125aに格納したプログラムにより焦点検出処理を実行する。焦点検出処理の詳細は後述する。また、カメラMPU125は、撮像面位相差AFにおいて、焦点検出位置の像高が大きい時にケラレの影響が大きく信頼度が低下するため、その補正も行う。
表示器126はLCDなどから構成され、カメラの撮影モードに関する情報、撮影前のプレビュー画像と撮影後の確認用画像、焦点検出時の合焦状態表示画像などを表示する。操作スイッチ群127は、電源スイッチ、レリーズ(撮影トリガ)スイッチ、ズーム操作スイッチ、撮影モード選択スイッチ等で構成される。本実施例のメモリ128は、着脱可能なフラッシュメモリで、撮影済み画像を記録する。
撮像面位相差焦点検出部(第1の焦点検出部)129は、撮像素子122の複数の撮影用画素内に離散的に配置されてた焦点検出用画素の像信号により位相差AF方式での焦点検出処理を行う。より具体的には、撮像面位相差焦点検出部129は、撮像光学系の一対の瞳領域を通過する光束により焦点検出用画素に形成される一対の像のずれ量に基づいて撮像面位相差AFを行う。
撮像面位相差AFの原理は、特許文献1の図5〜図7、図16などにおいて説明されているものと同様である。
TVAF焦点検出部(第2の焦点検出部)130は、画像処理回路124にて得られた画像情報のコントラスト成分によりコントラスト方式の焦点検出処理を行う。コントラスト方式の焦点検出処理は、フォーカスレンズ104を移動してコントラスト評価値がピークとなるフォーカスレンズの位置を検出する。
このように、本実施例は、撮像面位相差AFとコントラストAFを組み合わせており、いずれの焦点検出手段も撮像面上の情報に基づくため、位相差AFとコントラストAF(TVAF)を組み合わせるよりも焦点検出精度を向上することができる。
以下、図1、図3を参照して、第1の制御手段、第2の制御手段、第3の制御手段の機能を備えたカメラMPU(プロセッサ)125が実行する焦点検出処理について説明する。図1において、「S」はステップの略である。図1は、カメラMPU125が実行する焦点検出処理を説明するためのフローチャートである。
カメラMPU125は、焦点検出処理を開始すると(S100)、まず、現在選択中の焦点検出領域に含まれる撮像面位相差AFの焦点検出用画素列を探索し、その焦点検出用画素列が検出可能な最大検出デフォーカス量を取得する(S101)。焦点検出用画素が検出可能な最大デフォーカス量は焦点検出用画素列の長さ及び像ずれ量をデフォーカス量に変換する係数(K値)から決定される。K値は、焦点検出用画素列毎に予めEEPROM125cに記憶しておく。
次に、撮像素子122への露光を行う(S102)。これにより、撮像面位相差AFやTVAFに用いる出力信号を得るだけでなく、TVAF用の焦点検出領域や撮像面位相差AF用の焦点検出領域を含む近傍の被写体の情報を得ることができる。後述するTVAFや撮像面位相差AFの信頼性を判定するために、被写体の情報を得るための撮像面上の画素領域は、TVAF用の焦点検出領域や撮像面位相差AF用の焦点検出領域を包含しているのが望ましい。
また、TVAFや撮像面位相差AFは、必要な焦点調節精度に合わせて、撮影用画素の出力信号の数を間引いて用いてもよい。その際にも、被写体の情報を得るための出力信号はTVAFや撮像面位相差AFの出力信号よりも多い画素数で構成されているのが望ましい。それによりTVAFや撮像面位相差AFの出力信号からは得られない情報を得ることができ、後述のTVAFや撮像面位相差AFの焦点検出結果の信頼性を判断することができる。
撮像面位相差AFに用いる第1の画素信号は、第1の画像信号と対応している。また、コントラストAF(TVAF)に用いる画素信号や被写体からの情報を得るための第2の画素信号は、第2の画像信号と対応している。
次に、カメラMPU125は、撮像面位相差AFによる焦点検出処理を行い(S103)、デフォーカス量を検出したかどうかを判断する(S104)。
デフォーカス量を検出していないと判断すると(S104のNo)、カメラMPU125は、S101で取得した最大検出デフォーカス量から被写体像の検出抜けがないようにフォーカスレンズ104を駆動し(S105)、フローはS102に帰還する。
図3(a)は、S105におけるレンズ駆動のタイミングとフォーカスレンズ104の駆動位置との関係を示す図である。カメラMPU125は、フォーカスレンズ104を、撮像面位相差AFで検出可能な最大検出デフォーカス量の2倍に相当する駆動量Uで駆動する。隣接する2つの焦点検出点T1の間隔は駆動量Uであり、焦点検出点T1の前後のU/2に相当するデフォーカス量を取得する。ここで行う撮像面位相差AFの結果に基づくフォーカスレンズ駆動は、第1のレンズ制御によるレンズ駆動と称することする。第1のレンズ制御は、撮像面位相差AFの結果に基づくため、比較的大きな駆動量のレンズ駆動を行うことができ、高速なレンズ駆動を実現できる。
一方、デフォーカス量を検出したと判断すると(S104のYes)、カメラMPU125は、S102の露光時に取得していたTVAF用の焦点検出領域や撮像面位相差AF用の焦点検出領域を含む近傍の被写体の情報から、撮像面位相差AF結果の信頼性を算出する(S106)。
一般に、撮像面位相差AFは、被写体の状況によって、見込まれる検出精度が異なる。例えば、被写体のコントラストが低くなったり、被写体近傍に強い光源があり、ゴーストの影響を受けたりすることにより、焦点検出精度が低下することがある。上述した特許文献2では、このような撮像面位相差AFの焦点検出精度が低下するか否かを、撮像面位相差AFの画素信号のコントラストから判断してフォーカスレンズの駆動を制御している。
しかし、焦点検出精度の低下を招く被写体の状況の全てを、撮像面位相差AFの画素信号から判断するのは困難である。例えば、焦点検出精度の低下が見込まれる被写体の状況として、撮像面位相差AFのコントラスト検出方向(瞳分割方向)に対して、斜め方向にコントラストがある被写体や、撮像面位相差AFの検出できる被写体の空間周波数情報より高い空間周波数成分を含む被写体が考えられる。
図4、図5に、焦点検出精度の低下が見込まれる被写体の状況の例を示す。
図4は、撮像素子122の撮像面上の一部に、光学像(斜線部)が形成されている様子を示している。被写体の光学像を示す斜線部が被写体上ではより高い輝度を有する部分で、斜線部以外は、より低輝度とする。
各正方形は、画素を示しており、R、G、Bと書かれている各画素は、それぞれ赤、緑、青の光に対して主に感度を有する画素を示している。上述の通り、2行×2列の画素のうち、対角に配置される一対のG画素は撮影用画素として残し、R画素とB画素を焦点検出用画素に置き換えられており、図4中の左右方向に瞳分割を行う焦点検出用画素対として、AF1とAF2が配置されている。対のAF画素は、図4中では、4対が描かれているが、焦点検出に用いる画素の数は、より多く構成されていてもよく、図4中で左右方向に連なっていてもよい。
図4では、被写体の光学像が撮像素子122の撮像面上に合焦状態で結像するよう焦点調節された状態を示している。合焦状態では、対のAF画素に対して、ほぼ同一形状で、同一の位置に光学像は形成されるため、図4では、対のAF画素に対して、共通の光学像のみを示している。
図4(A)は、被写体の光学像として、図中、縦方向に比較的幅の広い範囲で輝度を持つ被写体の光学像が撮像素子122の撮像面上の一部に、形成されている場合を示している。この場合、4対のAF画素のうち、2,3番目の対のAF画素は、光学像の一部に含まれているため、図中の4画素の出力は、図5(A)のようになる。図5(A)の詳細は後述する。
図4(B)は、被写体の光学像として、図中、斜め方向に比較的幅の広い範囲で輝度を持つ被写体の光学像が撮像素子122上の一部に、形成されている場合を示している。この場合、4対のAF画素のうち、3番目のAF1のAF画素,2番目のAF2のAF画素のみ、光学像の一部に含まれているため、図中の4画素の出力は、図5(B)のようになる。図5(B)の詳細は後述する。
図4(C)は、被写体の光学像として、図中、縦方向に比較的幅の狭い範囲で輝度を持つ被写体の光学像が撮像素子122の撮像面上の一部に形成されている場合を示している。この場合、4対のAF画素のうち、3番目のAF1のAF画素,2番目のAF2のAF画素のみ、光学像の一部に含まれているため、図中の4画素の出力は、図5(B)のようになる。図5(B)の詳細は後述する。
図5は、図4で示した撮像素子122上に形成された光学像により、撮像素子122から得られる出力信号としての画素信号を示している。横軸に画素の位置を示す画素番号を表し、縦軸に光量を示す出力信号としての画素信号を表している。図5中、四角い印で表しているのが、AF1のAF画素の出力で、丸印で表しているのが、AF2のAF画素の出力である。
図5(A)は、図4(A)のように光学像が形成された場合の出力で、合焦状態のため、AF1,AF2の出力は、ほぼ同じである。
図5(B)は、図4(B)、(C)のように光学像が形成された場合の出力で、合焦状態にもかかわらず、AF1の画素とAF2の画素の出力が異なる。この場合、形成された出力によると、1画素分、像がずれた状態を示しているため、撮像面位相差焦点検出部129は、デフォーカス状態と判断し、誤った焦点検出、焦点調節を行ってしまう。しかし、AF画素のみの信号を用いていては、こういった焦点検出誤差を検出することはできない。
S106では、AF画素の周囲の撮影用画素から、上述したような焦点検出誤差を鑑みて、撮像面位相差AFの結果の信頼性を算出する。例えば、図4(B),(C)のような被写体の状況では、AF画素近傍の撮影用画素の信号のコントラストの高い部分の方向や位置を認識することにより、図5(B)のような焦点検出誤差の有無を検出することができる。図5(B)では、1画素分の像ずれ量に対応するピントずれが焦点検出誤差として得られる。
また、図4(C)のような被写体に対しては、公知のフーリエ変換などにより空間周波数成分に変換し、AF画素の検出できる空間周波数成分より高周波な成分が含まれるか否かで、焦点検出誤差を設定してもよい。このような方法で、焦点検出誤差を設定する場合には、被写体の空間周波数に対応した焦点検出誤差を事前に記憶しておくことにより、焦点検出誤差を見積もることができる。
図4のような、一対の焦点検出用画素の焦点検出方向(瞳分割方向)の中心同士の間隔の1/2以上の空間周波数の被写体は原理的に検出できない。第1の一対のAF画素の中心と第2の一対のAF画素の中心の間隔の1/2以上の高周波の空間周波数の被写体は原理的に検出できない。一般的に、タダの白と黒のエッジには、低周波から高周波まで多様な空間周波数情報の空間周波数成分を含むので、上述の焦点検出誤差が発生する。
図4に示した被写体の状況以外でも、被写体近傍の強い光源による迷光が、対のAF画素に不均等に到達するような状況も考えられる。そのような場合にも、対のAF画素の出力が一致せず焦点検出誤差が発生するが、撮影用画素の信号から強い光源の位置が特定できるため、光源の位置に応じた焦点検出への影響を、事前に撮像面位相差焦点検出部129が、記憶していることにより、焦点検出誤差を見積もることができる。例えば、強い光源の位置に対応した焦点検出誤差量の対応表を、EEPROM125cに記憶しておく。
S106では、撮像面位相差AF結果の信頼性を、発生しうる焦点検出誤差として算出する。上述の撮像面位相差AF結果の信頼性を算出する処理は、カメラMPU125で行われる。S106では、下記の式1を用いて、焦点検出誤差を算出する。
被写体コントラスト方向誤差は、上述の通り、撮影用画素の信号のコントラストの高い部分の方向と関連付けられた焦点検出誤差量の情報をEEPROM125cに記憶しておき、被写体毎に、算出される。また、被写体空間周波数誤差も同様に、撮影用画素の信号から検出された高周波成分の信号量と関連付けられた焦点検出誤差量の情報をEEPROM125cに記憶しておき、被写体毎に、算出される。さらに、迷光による誤差も、同様に、EEPROM125cに記憶された強い光源の位置と光量に対応した焦点検出誤差量を用いて、被写体毎に算出される。
S107では、S104で算出されたデフォーカス量とS106で算出された焦点検出誤差から、フォーカスレンズ104のレンズ駆動量を算出する。図3(b)は、S104でデフォーカス量を検出した時のフォーカスレンズ104の駆動制御の詳細を示す図である。図3(b)中の第1の合焦位置であるT2は、S104で算出されたデフォーカス量に基づく撮像面位相差AFが検出した合焦時のレンズ位置を示している。
S107では、T2の位置に対して、S106で算出された焦点検出誤差を鑑みて、レンズ駆動量T4の手前のレンズ位置T3に到達するよう駆動する。S104で算出されたデフォーカス量に対して、S106で算出された焦点検出誤差が大きい場合には、算出されたデフォーカス量は、信頼性が乏しいとして、S107で算出するレンズ駆動量を0とし、撮像面位相差AFの結果に基づくレンズ駆動を行わないようにする。
このように、撮像面位相差AFの焦点検出精度に合わせてレンズ駆動量を設定するため、被写体の状況に合わせた高速な焦点検出が可能となる。このような撮像面位相差AFを用いるか否かの判断は、カメラMPU125が行う。
S108では、レンズ駆動量が0ではない有限値を持っているかどうかを判断する。レンズ駆動量として有限値を持っていた場合(S108でYes)、撮像面位相差AFの結果に基づくレンズ制御(第1のレンズ制御)によるレンズ駆動を行う。(S109)レンズ駆動量が0であった場合(S108でNo)、S109をスキップする。
S109でレンズ駆動を終えると、次に、S102と同様に、撮像素子122への露光を行う(S110)。これにより、撮像面位相差AFやTVAFに用いる出力信号を得るだけでなく、TVAF用の焦点検出領域や撮像面位相差AF用の焦点検出領域を含む近傍の被写体の情報を得ることができる。
次に、直前の露光時の被写体情報からTVAFの信頼性を判断する(S111)。
S111で判断するTVAFの信頼性は、焦点検出処理をTVAFを用いて終えるか、撮像面位相差AFを用いて終えるかを判断する。この処理は、被写体情報抽出手段としてのカメラMPU125で行われる。上述の通り、コントラスト方式の焦点検出処理は、フォーカスレンズ104を移動してコントラスト評価値がピークとなるフォーカスレンズ位置を検出する。
そのため、この方式に依存した課題がいくつか存在する。例えば、高輝度な点光源が被写体として、コントラスト評価を行うTVAF用の焦点検出領域内に存在した場合、露光条件によっては、点光源の出力信号は飽和してしまうことが発生する。そのような際には、点光源が少しボケた状態の方が、出力信号は飽和した状態のまま、コントラスト評価を行うTVAF用の焦点検出領域内の被写体の面積が大きくなり、コントラストが大きいエッジが多く検出される。その結果、少しぼけた状態の方がコントラスト評価値が大きくなり、誤った焦点調節を行ってしまう。
また、別の課題として、被写体が動いたり、撮影者の手振れなどにより、コントラスト評価を行うTVAF用の焦点検出領域内の被写体が揺れ動くことにより、安定したコントラスト評価値が得られないことがあげられる。そのような場合、コントラスト評価値のピークが高精度に検出できないことは容易に想像できる。また、点滅するような被写体も同様である。
このため、S111では、事前の露光で得られる画像信号から高精度なコントラスト方式の焦点検出が行えるか否かを判断する。具体的には、点光源の有無については、特開2007−33735号公報で、開示されている技術を用いてコントラスト評価を行うTVAF用の焦点検出領域内の飽和している信号の有無を判断できる。点光源が存在していると判明した場合にはTVAFの信頼性が低いと判断する。例えば、下記の式2を用いて、点光源に関するTVAFの信頼性を算出する。
上述の式において、高輝度部を含む行の評価値は、特開2007−33735におけるTEラインピーク積分評価値Hiに相当する。また、焦点検出領域全域の評価値は、TEラインピーク積分評価値に相当する。
このように、焦点検出領域における高輝度部の割合をTVAFの信頼性として算出することにより、高輝度部が大きい場合には、TVAFの信頼性は、大きい値を取る。点光源のTVAFの信頼性が、所定の閾値以上の値を取る場合には、S111で撮像面位相差AFを用いるという判断を行う。
また、コントラスト評価を行うTVAF用の焦点検出領域内の被写体の変化を検出するためには、事前に取得した基準画像に対して、コントラスト評価を行うTVAF用の焦点検出領域内の画像をパターンマッチング(正規化相関)処理し、基準画像内における被写体の像の位置または範囲を検出する。所定の閾値に対して、位置の変化や範囲の変化(被写体の大きさの変化)が大きい場合には、TVAFの信頼性が低いと判断する。
また、パターンマッチング処理後、所定の条件を満たす場合には、基準画像の更新を行う。更新される基準画像は、新たに露光して得られた画像信号でもよいし、前回のパターンマッチング処理に用いた画像でもよい。所定の条件を満たす場合とは、例えば、被写体領域の大きさが変わった場合や、被写体の向きが変化することなどによって類似度が低下した場合である。
また、より簡易的に焦点検出領域内の被写体の変化を検出するために、レンズユニット100もしくはカメラ本体120に、撮影者が撮影時に発生させる手振れ量を検出し、焦点検出領域内の被写体の変化としてもよい。
TVAF用の焦点検出領域内の被写体の変化によるTVAFの信頼性は、下記の式3を用いて算出される。
コントラストAFでは、被写体の輪郭などのコントラストのある境界の高域の空間周波数成分を評価する。そのため、上述の被写体の位置変化や大きさ変化による被写体輪郭の位置変化が、TVAFの信頼性に影響を与える。被写体輪郭の位置変化を撮像素子上の変化量として算出し、その変化量が、撮像素子上の被写体検出範囲より大きい場合には、全く異なる被写体に対して焦点検出を行うことになってしまう。
コントラストAFは、被写体の異なるボケ状態を評価することで、合焦位置を判別するため、焦点検出動作中は、同じ被写体の評価を行う必要がある。そこで、式3のように、被写体変化のTVAF信頼性を算出することにより、TVAF信頼性が所定の閾値よりも大きい場合には、S111で撮像面位相差AFを用いるという判断を行う。
本発明では、コントラスト評価を行うTVAF用の焦点検出領域近傍を含む画像信号を用いて、点光源などの被写体や不安定なコントラスト評価値が見込まれる被写体を、TVAF制御で焦点調節することを避けることができる。これにより、高精度な焦点調節を実現できる。
S111でTVAFの信頼性が低いと判断された場合(S111でNo)、撮像面位相差AF制御のサブルーチンに移行する(S114)。S114で焦点調節を終えると焦点検出処理が終了する。このようなTVAFの信頼性に関する判断は、カメラMPU125が行う。
S111でTVAFの信頼性が高いと判断された場合(S111でYes)、TVAF制御を行う際のフォーカスレンズ104のレンズ駆動量のステップ幅を設定する(S112)。図6は、TVAF制御時のレンズ駆動量のステップ幅の設定について説明する図であり、横軸はフォーカスレンズ104の位置、縦軸はTVAFのコントラスト評価値である。
一般に、TVAFのコントラスト評価値は、被写体の明暗差であるコントラストが高ければ高いほど大きくなる。また、被写体を照明する光源環境によって、被写体が高輝度であるほど、コントラストが高くTVAF評価値も大きくなる。そのため、被写体のコントラスト情報、輝度情報により、フォーカスレンズの位置変化に応じたTVAF評価値変化は異なる。
図6中、白い丸印で表しているのが、被写体が高コントラスト、高輝度であった場合の評価値の推移の例で、黒い丸印で表しているのが、被写体が低コントラスト、低輝度であった場合の評価値の推移の例である。
被写体が高コントラスト、高輝度であった場合(白い丸印)、フォーカスレンズの位置によるコントラスト評価値変化は、比較的大きいため、フォーカスレンズのレンズ駆動量のステップ幅は小さめに設定することにより、高精度に焦点検出を行うことができる。一方で、被写体が低コントラスト、低輝度であった場合(黒い丸印)、高コントラスト、高輝度時と同様なフォーカスレンズ駆動量のステップ幅としての駆動幅に設定すると、コントラスト評価値の変化が大きく表れない。
一般に、コントラスト評価値は、被写体の光学像のコントラスト変化に加え、出力信号のノイズや被写体状況の変化によるノイズを含んでいる。TVAF制御では、コントラスト評価値のピーク位置を探すようにフォーカスレンズの位置を駆動制御するため、フォーカスレンズの位置毎の光学的なコントラスト変化が小さい場合には、その他のノイズの影響を大きく受け、誤ったフォーカスレンズの駆動方向にコントラスト評価値のピークが存在すると検出してしまう恐れがある。
そのため、本実施例では、被写体の状況に応じて、レンズ駆動量のステップ幅としての駆動幅を変更する。例えば、図6では、被写体が高コントラスト、高輝度であった場合(白い丸印)、小ステップ量としてR1、被写体が低コントラスト、低輝度であった場合(黒い丸印)、大ステップ量としてR1の2倍のR2としてレンズ駆動を行っていることを示している。
本実施例では、被写体の状況の判断を、TVAF用の焦点検出領域であるコントラスト評価範囲近傍を含む画像信号を用いて行う。具体的には、TVAF用の焦点検出領域である内の画像信号で、隣接画素の出力差の和を被写体のコントラストとして計算し、所定の閾値に対する大小に応じて、フォーカスレンズの駆動量のステップ幅を設定してもよい。
また、より簡単に、TVAF用の焦点検出領域であるコントラスト評価範囲内の画像信号の出力最大値によって、フォーカスレンズ駆動量のステップ幅を設定してもよい。また、事前に複数の露光により、フォーカスレンズ104の位置の異なる複数の画像信号を得ている場合には、画像信号の隣接画素の出力差の2乗和の大小に応じて、フォーカスレンズの駆動量のステップ幅を設定してもよい。この処理は、カメラMPU125で行われる。
S112でフォーカスレンズの駆動量のステップ幅を設定した後、TVAF制御のサブルーチンに移行する(S113)。S113で焦点調節を終えると焦点検出処理が終了する。
図7、図8を用いて、TVAF制御による焦点調節処理サブルーチンについて説明する。図7は、TVAF制御による焦点調節処理サブルーチンのフローを示している。図8は、TVAF制御を説明する図であり、横軸はフォーカスレンズ104の位置、縦軸はTVAFの評価値である。図1のS112で設定したフォーカスレンズの駆動量のステップ幅を、1回のレンズ駆動のパルス数としてT8として表している。
カメラMPU125は、S112で設定した駆動間隔T8で開始位置T7から撮像面位相差AFの合焦位置T2の方向にフォーカスレンズ104を駆動し、駆動間隔T8毎にTVAFの評価値を取得する(S301)。
次に、カメラMPU125は、ピークが検出されたかどうか、即ちTVAFの評価値が増加から減少に切り替わり、ピーク判断の閾値T9以上の減少がされたかどうかを判断する(S302)。ピークを検出するための最初のTVAF評価値は、図1のS110の露光で得られるTVAF評価値を用いてもよい。カメラMPU125は、ピークが検出されないと判断すると(S302のNo)、フローはS301に帰還する。
一方、ピークが検出されたと判断すると(S302のYes)、カメラMPU125は、現在の駆動間隔T8が狭いかどうか判断する(S303)。
カメラMPU125は、狭い駆動間隔T8でピークを検出していると判断すれば(S303のYes)、ピーク位置へフォーカスレンズ104を駆動する(S304)。
一方、カメラMPU125は、広い駆動間隔T8でピークを検出していると判断すれば(S303のNo)、カメラMPU125は、駆動間隔T8を狭く設定し(S305)TVAF合焦位置T11に向けて山登り駆動を行って評価値を取得する(S306)。
次に、カメラMPU125は、ピークが検出されたかどうか、即ち、TVAFの評価値が増加から減少に切り替わり、ピーク判断の閾値T9以上の減少がされたかどうかを判断する(S307)。カメラMPU125は、ピークが検出されていないと判断すると(S307のNo)、フローはS306に帰還する。一方、カメラMPU125は、ピークが検出されたと判断すると(S307のYes)、ピーク位置へフォーカスレンズ104を駆動する(S304)。
このように、カメラMPU125は、被写体像のコントラスト変化が大きくなることを見込めればTVAFにおけるフォーカスレンズ104のステップ幅を狭く設定して検出精度を確保し、コントラスト評価値変化が小さいと見込まれる場合は、ステップ幅を広く設定して応答性を向上し、ピーク検出後にステップ幅を狭く再設定する。このようなTVAF制御に関する判断は、カメラMPU125が行う。
S304でフォーカスレンズ104の駆動を終えるとTVAF制御による焦点調節処理を終了する。
ここで行うTVAFの結果に基づくフォーカスレンズの駆動は、第2のレンズ制御によるレンズ駆動と称することとする。第2のレンズ制御は、TVAFの結果に基づくため、比較的小さな駆動量の繰り返しレンズ駆動で構成され、比較的、低速なレンズ駆動となる。
次に、撮像面位相差AF制御による焦点調節処理サブルーチンについて説明する。図9は、撮像面位相差AF制御による焦点調節処理サブルーチンのフローを示している。
図1のS110で行われた露光で得られた撮像面位相差AFに用いる出力信号を用いて算出されたデフォーカス量に対応したレンズ駆動量を算出する。
このように、S110の露光時の出力信号は、撮像面位相差AFやTVAFのいずれにも用いられる可能性がある。そのため、露光の度に、撮像面位相差焦点検出部によるデフォーカス量の算出とTVAF検出部によるコントラスト評価値をともに算出する。
これにより、常に両方の焦点検出方式で焦点検出が行える。しかし、本発明の実施形態として、これに限る必要はなく、露光の度に、いずれか一方のみの焦点検出を行うようにしてもよい。その場合には、焦点検出に必要な演算量が減るという効果が得られる。
次に、算出されたレンズ駆動量に基づいて、第1のレンズ制御によるフォーカスレンズの駆動を行う(S402)。
その後、撮像素子122への露光を行い、少なくとも撮像面位相差AFの出力信号を得て、算出されるデフォーカス量から、合焦しているか否かを判断する(S403)。
合焦している場合(S403でYes)には、撮像面位相差AF制御による焦点調節処理を終える。合焦していない場合(S403でNo)には、S401に帰還する。ここでは、レンズ駆動後、必ず合焦判定を行うために、デフォーカス量を再度算出するように説明したが、実施形態はこれに限らない。S401で算出されたレンズ駆動量が、所定値より小さい場合には、検出されたデフォーカス量やレンズ駆動の誤差が少ないと判断し、合焦判定を省くことができる。
以上のように、撮像面位相差AFやTVAFに用いる信号以外の出力信号から、それぞれのAFの信頼性を鑑みて、各々のAF制御の選択を行うことにより、焦点調節の精度と速度を両立した焦点調節を行うことができる。