(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0007】
以下、図面を参照して本発明を実施するための形態について説明する。
(第一の実施形態)
図1および
図2は、本発明の第一の実施形態による焦点検出装置を搭載した一眼レフカメラシステムの要部構成を説明する図である。
図1および
図2において、カメラ本体201に対して着脱可能に構成された撮影レンズ202が装着されている。
【0008】
被写体からの光は、撮影レンズ202の撮像光学系210および絞り211を介してカメラ本体201へ入射される。カメラ本体201に入射した被写体光は、レリーズ前は
図1に例示したミラーダウン状態にある半透過のクイックリターンミラー(以下メインミラーと呼ぶ)203で上方のファインダー部へ向けて反射され、拡散スクリーン206に結像する。また、メインミラー203を透過した被写体光の一部はサブミラー204で下方へ反射され、焦点検出用光束として専用AF(オートフォーカス)素子207へ入射される。専用AF素子207は、入射した光を光電変換して信号を出力する。専用AF素子207から出力された信号は、撮像光学系210による焦点調節を行うため、専用AF素子207から出力された信号の位相差を検出する焦点検出処理(公知の瞳分割方式のAF処理)において用いられる。
【0009】
拡散スクリーン206に結像した被写体光はさらに、ペンタプリズム208へ入射される。ペンタプリズム208は、入射された被写体光を接眼光学系209へ導く。撮影者は、接眼光学系209を通してファインダー部による被写体像を観察する。
【0010】
レリーズ後は、メインミラー203が
図2に例示したミラーアップ位置へ回動し、被写体光がメカニカルシャッター205を介して撮像素子102へ導かれ、その撮像面上に被写体像を結像する。撮像素子102は、画素に対応する複数の光電変換素子を備えたCMOSイメージセンサなどによって構成される。撮像素子102は、入射した光を光電変換して信号を出力することで、撮像面上に結像されている被写体像を撮像する。
【0011】
レンズ駆動機構212は、撮像光学系210を構成する焦点調節レンズを光軸方向(
図1、
図2において左右方向)に進退駆動する。焦点調節レンズの駆動方向および駆動量は、カメラ本体201側から指示される。なお、図を簡単にするため、撮像光学系210を単レンズとして表している。
【0012】
図1のミラーダウン状態は、撮影者が接眼光学系209を介して被写体像を観察できる撮影準備状態である。一眼レフカメラは、撮影準備状態において専用AF素子207を用いた焦点検出を行う。
【0013】
図3は、上述した一眼レフカメラシステムの回路構成を例示するブロック図である。カメラ本体201には、タイミング回路(TG)101と、撮像素子102と、ASIC103と、RAM104と、MPU106と、シャッター駆動機構107と、ミラー駆動機構108と、操作部材109と、AF制御部110と、AE制御部111とが設けられ、着脱可能な記録媒体105が実装されている。
【0014】
<カメラ本体>
タイミング回路(TG)101は所定のタイミング信号を発生し、撮像素子102およびASIC103のそれぞれにタイミング信号を供給する。ASIC103には、撮像素子102から出力される信号(画像信号)が入力される。ASIC103は、入力された画像信号に所定の画像処理(ホワイトバランス調整などを含む)を施す。
【0015】
RAM104は、ASIC103によって処理される画像データを一時的に保存する。記録媒体105は、ASIC103によって処理された画像データを画像ファイルとして保存する不揮発性メモリなどで構成される。
【0016】
MPU106はマイクロプロセッサによって構成され、カメラ本体201の各ブロックから出力される信号を入力して所定の演算を行い、演算結果に基づく制御信号を各ブロックへ出力する。MPU106およびASIC103は、所定の通信を行うことによって互いの制御信号を送受する。
【0017】
シャッター駆動機構107は、MPU106から送出される指示に応じてメカニカルシャッター205(
図1、
図2)のチャージおよび駆動制御を行う。ミラー駆動機構108は、MPU106から送出される指示に応じて、メインミラー203(サブミラー204)のミラーアップ駆動、およびミラーダウン駆動を制御する。
【0018】
操作部材109は、各種設定および選択操作に応じた設定・切換え信号をMPU106へ出力する。操作部材109には、レリーズボタン(不図示)が含まれる。
【0019】
AF制御部110は、専用AF素子207から出力される信号を用いて公知の位相差方式の焦点検出演算を行う。この演算によって撮像光学系210によるデフォーカス量を求め、デフォーカス量に応じて撮像光学系210を構成する焦点調節レンズの移動量を算出する。焦点調節レンズの移動量を示す信号は、MPU106を介してレンズCPU214へ送信される。
【0020】
AE制御部111は、不図示の測光用センサから出力される信号を用いて被写体の輝度を算出する。AE制御部111はさらに、設定されている撮像感度、MPU106で取得されるレンズ情報、および算出した被写体の輝度を用いて、所定の露出演算モードによる演算を行い、撮影時の絞り値AVおよびシャッター速度TVを決定する。
【0021】
MPU106は、カメラ本体201に装着されている撮影レンズ202のレンズCPU214との間で通信を行う。カメラ本体201および撮影レンズ202間の通信により、絞り値やレンズデータなどのレンズ情報が撮影レンズ202からカメラ本体201へ送信される一方、上記焦点調節レンズの移動量や駆動指示などのレンズ制御情報がカメラ本体201から撮影レンズ202側へ送信される。
【0022】
<撮影レンズ>
撮影レンズ202には、レンズCPU214と、レンズ駆動機構212と、絞り駆動機構213とが設けられている。レンズCPU214は、カメラ本体201側のMPU106との間で通信を行う。レンズCPU214は、絞り値やレンズデータなどのレンズ情報をカメラ本体201側へ送信する一方、上記焦点調節レンズの移動量や駆動指示などのレンズ制御情報をカメラ本体201から取得する。
【0023】
レンズ駆動機構212は、レンズCPU214から送出される指示に応じて、焦点調節レンズを所定方向へ所定量移動させる。絞り駆動機構213は、レンズCPU214から送出される指示に応じた絞り値にするように、絞り211(
図1、
図2)を所定段数駆動する。
【0024】
<AF処理>
上述した一眼レフカメラシステムのAF制御部110が行う焦点検出演算について説明する。本実施形態では、瞳分割型位相差検出方式によって一対の光束による一対の像のズレ量(以下、ズレ量Sと呼ぶ)を検出する。
【0025】
<ズレ量Sの説明>
図4は、専用AF素子207を含む焦点検出光学系を説明する模式図である。
図4において、焦点検出光学系は、視野マスク350と、フィールドレンズ300と、絞り開口401および402と、再結像レンズ501および502と、一対の光電変換素子アレイA,Bを含む。この焦点検出光学系により、一対の被写体像が一対の光電変換素子アレイA,B上に結像される。すなわち、フィールドレンズ300の後方に設けられた絞り開口401を通過した光束による像が、再結像レンズ501によって光電変換素子アレイA上に結像される。また、フィールドレンズ300の後方に設けられた絞り開口402を通過した光束による像が、再結像レンズ502によって光電変換素子アレイB上に結像される。
【0026】
光電変換素子アレイA,Bには、それぞれ複数の光電変換素子が配列されている。専用AF素子207は、光電変換素子アレイA,Bによって構成される。光電変換素子アレイAは、複数の光電変換素子(A1,A2,…,An)からそれぞれ信号を出力する。光電変換素子アレイBは、複数の光電変換素子(B1,B2,…,Bn)からそれぞれ信号を出力する。撮像光学系210上の領域91は、絞り開口401の逆投影像である。同様に、撮像光学系210上の領域92は、絞り開口402の逆投影像である。
【0027】
撮像光学系210の領域91を通って入射した被写体からの光束は、撮像素子102の撮像面と等価な予定焦点面600またはその前後に結像した後、視野マスク350の開口、フィールドレンズ300、絞り開口401および再結像レンズ501を通り、光電変換素子アレイA上に結像する。
【0028】
また、撮像光学系210の領域92を通って入射した被写体からの光束は、予定焦点面600またはその前後に結像した後、視野マスク350の開口、フィールドレンズ300、絞り開口部402および再結像レンズ502を通り、光電変換素子アレイB上に結像する。
【0029】
一対の光電変換素子アレイA、B上に結像した一対の被写体像は、撮像光学系210が予定焦点面600よりも前に被写体の鮮鋭像を結ぶ、いわゆる前ピン状態では互いに遠ざかり、逆に予定焦点面600よりも後に被写体の鮮鋭像を結ぶ、いわゆる後ピン状態では互いに近づく。そして、撮像光学系210が予定焦点面600にて被写体の鮮鋭像を結ぶ、いわゆる合焦時には、一対の光電変換素子アレイA、B上の一対の被写体像が相対的に一致(ズレ量Sが0の状態)する。
【0030】
AF制御部110は、一対の光電変換素子アレイA、Bによってそれぞれ光電変換されたa系列の信号およびb系列の信号に対して像ズレ検出演算処理(相関演算処理、位相差検出処理)を施すことによって、ズレ量Sを検出する。ズレ量Sは、a系列の信号およびb系列の信号を用いて求める。
【0031】
<相関演算>
図4に示すように、光電変換素子アレイA,Bには、それぞれ複数の光電変換素子が配列されている。a系列の信号(A1,A2,…,An)は、複数の光電変換素子(A1,A2,…,An)からそれぞれ出力された信号から構成される。b系列の信号(B1,B2,…,Bn)は、複数の光電変換素子(B1,B2,…,Bn)からそれぞれ出力された信号から構成される。信号(A1,A2,…,An)および信号(B1,B2,…,Bn)が、焦点検出用の一対の像信号を構成する。
【0032】
AF制御部110は、a系列の信号(A1,A2,…,An)およびb系列の信号(B1,B2,…,Bn)において、像ズレ検出演算処理に用いる信号の範囲を決定する。例えば、a系列の信号およびb系列の信号において略全範囲を用いて像ズレ検出演算を行ったり、a系列の信号およびb系列の信号において一部の範囲を用いて像ズレ検出演算を行ったりすることができる。
【0033】
図5(a)は、a系列の信号(A1,A2,…,An)に後述するフィルタ処理を施した後のa系列の信号(a1,a2,…,an)を例示する図、および
図5(b)は、b系列の信号(B1,B2,…,Bn)に後述するフィルタ処理を施した後のb系列の信号(b1,b2,…,bn)を例示する図である。AF制御部110は、一対の像信号のa系列の信号(a1,a2,…,an)およびb系列の信号(b1,b2,…,bn)を一次元状に相対的にシフトしながら、次式(1)に示す相関演算を行う。
C(k) = Σ|a(n+k)−b(n)| …(1)
Σ演算はnについての累積演算を示し、その演算範囲はシフト量kに応じてa(n+k)、b(n)の像信号が存在する範囲に限定される。また、シフト量kは整数であり、光電変換素子アレイA,Bの素子の配列間隔を単位とした相対的な像ずらし量である。
【0034】
図6は、シフト量k(横軸)と相関量C(k) との関係を例示する図である。上式(1)の演算結果は、
図6に示すように、一対の像信号の相関が高いシフト量(
図6の例ではk = kj = −3)において相関量C(k)が最も小さくなる(相関度が高いほど相関量が小さい)。
【0035】
AF制御部110は、算出した相関量C(k) に基づいて、相関量の極小値C(x) を算出する。本実施形態では、例えば、次式(2)〜(5)に示す3点内挿の手法により、連続的な相関量に対する極小値C(x) と、極小値C(x) を与えるシフト量xとを算出する。なお、式中のC(kj) は、
図6においてC(k−1) ≧ C(k) およびC(k) < C(k+1) の条件を満たす値である(kj = −3)。
D = {C(kj−1) − C(kj+1)}/2 …(2)
C(x) = C(kj) − |D| …(3)
x = kj + D/SLOP …(4)
SLOP = MAX{C(kj+1) − C(kj),C(kj−1) − C(kj)} …(5)
【0036】
本実施形態では、AF制御部110が一対のa系列の信号(A1,A2,…,An)、およびb系列の信号(B1,B2,…,Bn)に対して通過周波数帯域が異なる2つのフィルタ処理をそれぞれ施す。2つのフィルタ処理は、a系列の信号(A1,A2,…,An)、およびb系列の信号(B1,B2,…,Bn)をそれぞれ第1の周波数帯域に制限する第1フィルタ処理と、第1の周波数帯域より高い第2の周波数帯域に制限する第2フィルタ処理である。言い換えれば、2つのフィルタ処理は、第1の通過周波数帯域を有するフィルタ処理と、第1の通過周波数帯域よりも高い通過周波数帯域を有するフィルタ処理である。例えば、a系列の信号(A1,A2,…,An)、およびb系列の信号(B1,B2,…,Bn)それぞれに対して、入力信号の低周波数成分を出力するフィルタ(ローパスフィルタ)処理と、入力信号の高周波数成分を出力するフィルタ(ハイパスフィルタ)処理を施す。後述する第二の実施形態も同様である。AF制御部110は、フィルタ処理後の信号を用いて、一対の信号間の相関度が高くなる(すなわち相関量のC(k) 小さくする)シフト量を、それぞれ算出する。
【0037】
図7は、光電変換素子アレイAの出力であるa系列の信号(A1,A2,…,An)、および光電変換素子アレイBの出力であるb系列の信号(B1,B2,…,Bn)を例示する図である。
図7は、横軸が光電変換素子アレイの各光電変換素子の位置(素子の順番)、縦軸が光電変換素子毎の出力値のグラフである。AF制御部110は、一対の信号のうち破線で囲む範囲71を像ズレ検出演算処理に用いる信号の範囲(演算範囲)とする。演算範囲71は、例えば焦点調節の対象とする被写体の大きさなどに応じて決定する。演算範囲72については第二の実施形態において説明する。
演算範囲は、a系列の信号およびb系列の信号の一部の範囲であってもよいし、フィルタ処理等の演算処理を施したa系列の信号およびb系列の信号の一部の範囲であってもよい。換言すれば、相関演算において、a系列の信号およびb系列の信号が相対的にシフトするシフト方向でもある。
【0038】
図8は、
図7の演算範囲71における一対のa系列の信号およびb系列の信号に対してローパスフィルタ処理を施した後の一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) )を例示する図である。演算範囲72については変形例2において説明する。
図9は、
図7の演算範囲71における一対のa系列の信号およびb系列の信号に対してハイパスフィルタ処理を施した後の一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) )を例示する図である。演算範囲72については第二の実施形態において説明する。
【0039】
AF制御部110は、フィルタ出力値P1(j)に対して相関演算を行うとともに、フィルタ出力値P2(j)に対して相関演算を行う。
図10は、2つの相関演算によってそれぞれ得られるシフト量k(横軸)と相関量C(k) との関係を例示する図であり、上段がフィルタ出力値P1(j) (
図8)についての相関量C(k) を示し、下段がフィルタ出力値P2(j) (
図9)についての相関量C(k) を示す。
【0040】
一般に、ローパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) )は、大まかな位相差検出に好適である一方で、細かいコントラストが潰れやすくなる。また、ハイパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) )は、細かいコントラストの位相差検出に好適である一方で、位相差を誤検出する可能性がある。
【0041】
そこで、AF制御部110は、ローパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) )を用いた相関演算を先に行なって、一対の信号間の相関度が高くなる(すなわち相関量のC(k) を小さくする)第1シフト量kp1を検出する。上記相関演算を1回目の相関演算とする。
【0042】
次に、AF制御部110は、ローパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) )を用いた1回目の相関演算によって検出した第1シフト量kp1を含み、上記1回目の相関演算におけるシフトの範囲ΔWより狭い狭範囲Δdにおいて、ハイパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) )を用いた相関演算を行う。1回目の相関演算の後に行う相関演算を2回目の相関演算とする。つまり、低周波数帯域の一対の信号(フィルタ出力値P1(j) )と高周波数帯域の一対の信号(フィルタ出力値P2(j) )とを用いて2つの相関量を算出し、双方の相関量を共に小さくするシフト量を採用する。
【0043】
AF制御部110は、上記2回目の相関演算によって算出した相関量C(k) に基づき、上述した3点内挿の手法を用いて相関量の極小値を与える第2シフト量xを算出する。そして、第2シフト量xを、ズレ量Sとして扱う。
【0044】
AF制御部110は、ズレ量Sに基づき、下式(6)に従ってデフォーカス量dfを算出する。デフォーカス量dfは、予定焦点面600に対する現在の結像面の偏差である。なお、式中の変数Kは、ズレ量Sをデフォーカス量dfに変換するための変換係数(Kファクター)である。
df = S×K …(6)
【0045】
<フローチャートの説明>
図11は、MPU106が実行するカメラ処理の一例を説明するフローチャートである。MPU106は、例えば、メインスイッチオン時において
図11による処理を繰り返し実行する。
図11のステップS101において、MPU106は、操作部材109を構成するレリーズボタン(不図示)が半押し操作されたか否かを判定する。MPU106は、レリーズボタンの半押し操作信号が入力された場合に、ステップS101を肯定判定してステップS102へ進む。MPU106は、半押し操作信号が入力されない場合には、ステップS101を否定判定して半押し操作を待つ。
【0046】
主としてステップS102からステップS112までの処理がAF処理である。ステップS102において、MPU106はAF制御部110へ指示を送り、専用AF素子207の周期動作を開始させてステップS103へ進む。これにより、専用AF素子207が所定の周期で電荷蓄積を繰り返す。ステップS103において、MPU106はAF制御部110へ指示を送り、専用AF素子207から蓄積信号を読み出させてステップS105へ進む。
【0047】
ステップS105において、MPU106はAF制御部110へ指示を送り、a系列の信号(A1,A2,…,An)およびb系列の信号(B1,B2,…,Bn)に対して上述したローパスフィルタ処理をさせてステップS106へ進む。
【0048】
ステップS106において、MPU106はAF制御部110へ指示を送り、ローパスフィルタ処理後のa系列の信号およびb系列の信号(フィルタ出力値P1(j) )を用いて1回目の相関演算処理を行わせ、第1シフト量kp1を算出させてステップS108へ進む。
【0049】
ステップS108において、MPU106はAF制御部110へ指示を送り、a系列の信号(A1,A2,…,An)およびb系列の信号(B1,B2,…,Bn)に対して、上述したハイパスフィルタ処理をさせてステップS109へ進む。
【0050】
ステップS109において、MPU106はAF制御部110へ指示を送り、ハイパスフィルタ処理後のa系列の信号およびb系列の信号(フィルタ出力値P2(j) )を用いて2回目の相関演算処理を行わせ、第2シフト量xを算出させてステップS110へ進む。2回目の相関演算処理では、1回目の相関演算(S106)によって算出した第1シフト量kp1の近傍(
図10に例示した第1シフト量kp1を含み、上記1回目の相関演算におけるシフトの範囲ΔWより狭い狭範囲Δd)において、a系列の信号とb系列の信号とを相対的にシフトさせて演算する。
【0051】
ステップS110において、MPU106はAF制御部110へ指示を送り、第2シフト量xに基づいてデフォーカス量dfを算出させてステップS111へ進む。ステップS111において、MPU106は、デフォーカス量dfが所定値以下か否かを判定する。MPU106は、デフォーカス量dfが所定値以下の場合に合焦判定してステップS113へ進む。MPU106は、デフォーカス量dfが所定値を超えている場合は合焦判定しないでステップS112へ進む。
【0052】
ステップS112において、MPU106は撮影レンズ202に対してレンズ駆動を指示してステップS103へ戻る。具体的には、合焦に必要なフォーカシングレンズの移動方向および移動量を指示するレンズ制御情報を、レンズCPU214へ送信する。
【0053】
ステップS113において、MPU106は、レリーズ操作されたか否かを判定する。MPU106は、操作部材109を構成するレリーズボタン(不図示)の全押し操作を示す全押し操作信号が入力された場合に、ステップS113を肯定判定してステップS114へ進む。MPU106は、全押し操作信号が入力されない場合には、ステップS113を否定判定してステップS103へ戻る。
【0054】
ステップS114において、MPU106はミラー駆動機構108へ指示を送り、メインミラー203をアップ駆動させるとともに、レンズCPU214に対して絞り駆動指示を送信してステップS115へ進む。絞り駆動指示は、撮影レンズ202の絞り値をAE制御部111が決定した絞り値へ駆動させる指示である。
【0055】
ステップS115において、MPU106はシャッター駆動機構107へ指示を送り、メカニカルシャッター205を所定時間開くように駆動させるとともに、所定の撮影処理を行ってステップS116へ進む。これにより、撮影レンズ202における絞り駆動が終了した時点で撮像素子102による撮像動作が行われ、記録用の画像ファイルが記録媒体105(
図3)に記録される。
【0056】
ステップS116において、MPU106はミラー駆動機構108へ指示を送り、メインミラー203をダウン駆動させるとともに、レンズCPU214に対して絞り駆動指示を送信して
図11による処理を終了する。絞り駆動指示は、撮影レンズ202の絞り値を開放絞り値へ戻す指示である。
【0057】
上述した第一の実施形態によれば、次の作用効果が得られる。
(1)焦点検出装置は、撮像光学系210を通過した一対の光束の一方を受光してa系列の信号を出力する光電変換素子アレイA、および一対の光束の他方を受光してb系列の信号を出力する光電変換素子アレイBを有する専用AF素子207と、a系列の信号およびb系列の信号をそれぞれ低周波数帯域に制限するAF制御部110と、a系列の信号およびb系列の信号をそれぞれ高周波数帯域に制限するAF制御部110と、低周波数帯域に制限されたa系列の信号およびb系列の信号を相対的にシフトしながら相関演算して、a系列の信号とb系列の信号との第1相関量の極値に対応する第1シフト量kp1を演算するAF制御部110と、高周波数帯域に制限されたa系列の信号およびb系列の信号を相対的にシフトしながら相関演算して、a系列の信号とb系列の信号との第2相関量の極値に対応する第2シフト量xを演算するAF制御部110と、第2相関量の極値が複数存在する場合に、複数の第2シフト量xのうち第1シフト量kp1と略一致するシフト量を、a系列の信号とb系列の信号とのズレ量Sとして検出するAF制御部110と、を備える。
これにより、位相差の誤検出を回避するという低周波数帯の一対の信号を用いるメリットと、細かいコントラストの位相差に基づき精度よくズレ量Sを検出するという高周波数帯の一対の信号を用いるメリットとを兼ね備えて、精度よくデフォーカス量を求めることができる。この焦点検出装置を備えるカメラは、焦点調節の精度が向上する。この焦点検出装置を備えるカメラは、写真を大きく引き伸ばした場合でもピントの合った像が保たれる、正確な焦点調節が可能となる。
【0058】
(2)AF制御部110は、低周波数帯域に制限されたa系列の信号とb系列の信号とをシフトの範囲ΔWにおいて相対的にシフトしながら1回目の相関演算を行い、AF制御部110は、高周波数帯域に制限されたa系列の信号とb系列の信号とを、ΔWより狭くて第1シフト量kp1を含む狭範囲Δdにおいて相対的にシフトしながら2回目の相関演算を行う。2回目の相関演算の範囲Δdを1回目の相関演算の範囲ΔWより狭くしたので、2回目の相関演算の範囲を狭くしない場合に比べて、演算量を軽減することができる。この焦点検出装置を備えるカメラは、焦点調節に要する時間が短くなり、被写体に合焦するまでの時間が短くなる。
【0059】
(第二の実施形態)
第二の実施形態では、AF制御部110が、一対の信号のうち像ズレ検出演算処理に用いる信号の範囲(演算範囲)を、1回目の相関演算と2回目の相関演算とで異ならせる。
【0060】
本発明の第二の実施形態による焦点検出装置は、第一の実施形態の場合と同様に
図1、
図2に例示した一眼レフカメラシステムに搭載される。また、一眼レフカメラシステムの回路構成を表すブロック図(
図3)も、第一の実施形態と同様である。
【0061】
AF制御部110は、
図7に例示した一対の信号のうち、例えば破線で囲む範囲71を1回目の像ズレ検出演算処理に用いる信号の範囲(演算範囲)とする。1回目の演算範囲71は、焦点調節の対象とする被写体の大きさなどに応じて決定する。
【0062】
AF制御部110は、1回目の演算範囲71における一対のa系列の信号およびb系列の信号に対してローパスフィルタ処理を施し、
図8に例示するようなa系列の信号およびb系列の信号(フィルタ出力値P1(j) )を得る。
【0063】
また、AF制御部110は、
図7に例示した一対の信号のうち、例えば一点鎖線で囲む範囲72を2回目の像ズレ検出演算処理に用いる信号の範囲(演算範囲)とする。2回目の演算範囲72は、1回目の演算範囲71の中に設定され、1回目の演算範囲71より狭く、例えば演算範囲71の1/3である。
【0064】
AF制御部110はさらに、2回目の演算範囲72における一対のa系列の信号およびb系列の信号に対してハイパスフィルタ処理を施し、
図9の一点鎖線で囲む演算範囲72において、a系列の信号およびb系列の信号(フィルタ出力値P2(j) )を得る。
【0065】
2つの相関演算によってそれぞれ得られるシフト量k(横軸)と相関量C(k) との関係は、
図10に例示するとおりである。一般に、広い演算範囲71(
図7)に含まれる一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) (
図8))は、位相差の誤検出をしにくいものの、近被写体と遠被写体のように、位相が違う被写体が演算範囲71に混在する場合には、相関演算における極小値が現れにくくなる。また、狭い演算範囲72(
図7)に含まれる一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) (
図9))は、上記位相が違う被写体を分離検出しやすくなる一方で、偶然に類似する位相差を誤検出する可能性がある。
【0066】
そこで、AF制御部110は、広い演算範囲71(
図7)に含まれる一対のa系列の信号およびb系列の信号(フィルタ出力値P1(j) (
図8))を用いた相関演算(1回目の相関演算)を先に行なって、一対の信号間の相関度が高くなる(すなわち相関量のC(k) を小さくする)第1シフト量kp1(
図10)を検出する。
【0067】
次に、AF制御部110は、1回目の相関演算によって検出した第1シフト量kp1を含み、上記1回目の相関演算におけるシフトの範囲ΔWより狭い狭範囲Δdにおいて、狭い演算範囲72(
図7)に含まれる一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) (
図9))を用いた相関演算(2回目の相関演算)を行う。つまり、広い演算範囲71の一対の信号(フィルタ出力値P1(j) (
図8))と局所的に狭い演算範囲72の一対の信号(フィルタ出力値P2(j) (
図9))とを用いて2つの相関量を算出し、双方の相関量を共に小さくするシフト量を採用する。
【0068】
AF制御部110は、上記2回目の相関演算によって算出した相関量C(k) に基づき、上述した3点内挿の手法を用いて相関量の極小値を与える第2シフト量xを算出する。そして、第2シフト量xを、ズレ量Sとして扱う。ズレ量Sをデフォーカス量dfに変換する処理は、第一の実施形態と同様である。
【0069】
<フローチャートの説明>
図12は、MPU106が実行するカメラ処理の一例を説明するフローチャートである。第一の実施形態のフローチャート(
図11)と同様の処理については、同一のステップ番号を付して説明を省略し、
図11のフローチャートに対して追加されたステップS104およびステップS107の処理を中心に説明する。MPU106は、例えば、メインスイッチオン時において
図12による処理を繰り返し実行する。
【0070】
ステップS103の次に進むステップS104において、MPU106は、1回目の演算範囲71(広い演算範囲)を設定する。具体的には、
図7に例示した一対の信号のうち、焦点調節の対象とする被写体の大きさに応じた演算範囲71をAF制御部110へ指示してステップS105へ進む。
【0071】
ステップS105において、MPU106はAF制御部110へ指示を送り、a系列の信号(A1,A2,…,An)およびb系列の信号(B1,B2,…,Bn)に対して上述したローパスフィルタ処理をさせてステップS106へ進む。
【0072】
ステップS106において、MPU106はAF制御部110へ指示を送り、ローパスフィルタ処理後で1回目の演算範囲71に含まれるa系列の信号およびb系列の信号(フィルタ出力値P1(j) (
図8))を用いて1回目の相関演算処理を行わせ、第1シフト量kp1を算出させてステップS107へ進む。
【0073】
ステップS107において、MPU106は、2回目の演算範囲72(狭い演算範囲)を設定してステップS108へ進む。MPU106は、1回目の演算範囲71の中に、例えば演算範囲71の1/3となる演算範囲72を設定するように、AF制御部110へ指示する。MPU106は、至近の被写体に対応するエッジ情報が得られるように、1回目の演算範囲71における演算範囲72の位置を選ぶ。
【0074】
ステップS108において、MPU106はAF制御部110へ指示を送り、a系列の信号(A1,A2,…,An)およびb系列の信号(B1,B2,…,Bn)に対して、上述したハイパスフィルタ処理をさせてステップS109へ進む。
【0075】
ステップS109において、MPU106はAF制御部110へ指示を送り、ハイパスフィルタ処理後で2回目の演算範囲72に含まれるa系列の信号およびb系列の信号(フィルタ出力値P2(j) (
図9))を用いて2回目の相関演算処理を行わせ、第2シフト量xを算出させてステップS110へ進む。2回目の相関演算処理では、1回目の相関演算(S106)によって算出した第1シフト量kp1の近傍(
図10に例示した第1シフト量kp1を含み、上記1回目の相関演算におけるシフトの範囲ΔWより狭い狭範囲Δd)において、a系列の信号とb系列の信号とを相対的にシフトさせて演算する。以降の処理は第一の実施形態と同様である。
【0076】
上述した第二の実施形態によれば、次の作用効果が得られる。
(1)焦点検出装置は、撮像光学系210を通過した一対の光束の一方を受光してa系列の信号を出力する光電変換素子アレイA、および一対の光束の他方を受光してb系列の信号を出力する光電変換素子アレイBを有する専用AF素子207と、演算範囲71に含まれるa系列の信号とb系列の信号とを、範囲ΔWにおいて相対的にシフトしながら相関演算して、a系列の信号とb系列の信号との第1相関量の極値に対応する第1シフト量kp1を演算するAF制御部110と、演算範囲71の中にあって演算範囲71より狭い演算範囲72に含まれるa系列の信号とb系列の信号を、範囲ΔWより狭くて第1シフト量kp1を含む狭範囲Δdにおいて相対的にシフトしながら相関演算して、a系列の信号とb系列の信号との第2相関量の極値に対応する第2シフト量xを演算するAF制御部110と、第2相関量の極値が複数存在する場合に、複数の第2シフト量xのうち第1シフト量kp1と略一致するシフト量を、a系列の信号とb系列の信号とのズレ量Sとして検出するAF制御部110と、を備える。
これにより、演算範囲71より狭い演算範囲72に含まれるa系列の信号およびb系列の信号に対する相関演算は、第1シフト量kp1の近傍の狭範囲Δdでのみ行えばよいので、狭範囲Δdよりも広いΔWにおいて相関演算を行う場合と比べて、演算量を軽減することができる。この焦点検出装置を備えるカメラは、焦点調節に要する時間が短くなり、被写体に合焦するまでの時間が短くなる。
また、位相差の誤検出を回避するという広い演算範囲71の一対の信号を用いる場合のメリットと、近被写体と遠被写体のように、位相が違う被写体を分離して精度よくズレ量Sを検出するという狭い演算範囲72の一対の信号を用いる場合のメリットとを兼ね備えて、精度よくデフォーカス量を求めることができる。この焦点検出装置を備えるカメラは、焦点調節の精度が向上する。この焦点検出装置を備えるカメラは、写真を大きく引き伸ばした場合でもピントの合った像が保たれる、正確な焦点調節が可能となる。
【0077】
(2)a系列の信号およびb系列の信号をそれぞれ低周波数帯域に制限するAF制御部110と、a系列の信号およびb系列の信号をそれぞれ高周波数帯域に制限するAF制御部110と、を備え、AF制御部110は、低周波数帯域に制限された演算範囲71に含まれるa系列の信号およびb系列の信号を相対的にシフトしながら相関演算を行い、AF制御部110は、高周波数帯域に制限された演算範囲72に含まれるa系列の信号およびb系列の信号を相対的にシフトしながら相関演算を行う。これにより、広い演算範囲71で行う相関演算と、狭い演算範囲72で行う相関演算とのそれぞれにおいて、適切な周波数帯の一対の信号を用いることができる
【0078】
次のような変形も本発明の範囲内であり、変形例の一つ、もしくは複数を上述の実施形態と組み合わせることも可能である。
(変形例1)
第一の実施形態において、予備のローパスフィルタ処理を行わせてもよい。予備のローパスフィルタ処理は、通常用いるローパスフィルタ処理よりも遮断周波数を低くする。これにより、変形例1は、通過周波数帯域が異なる3つのフィルタ処理(通常のローパスフィルタ処理、ハイパスフィルタ処理、予備のローパスフィルタ処理)を行う。
【0079】
図13は、2つの相関演算によってそれぞれ得られるシフト量k(横軸)と相関量C(k) との関係を例示する図であり、上段が通常のローパスフィルタ処理後のa系列の信号およびb系列の信号(フィルタ出力値P1(j) (
図8))についての相関量C(k) を示し、下段がハイパスフィルタ処理後のa系列の信号およびb系列の信号(フィルタ出力値P2(j) (
図9))についての相関量C(k) を示す。
図13において、フィルタ出力値P1(j) に対して行った相関演算で得られた相関量に複数の極値が存在し、これら複数の極値にそれぞれ対応して第1シフト量kp1、kp2が複数存在する。
【0080】
変形例1において、AF制御部110は、フィルタ出力値P1(j) に対して行った相関演算によって得られた相関量に複数の極値が存在する場合、通常のローパスフィルタ処理に代えて、予備のローパスフィルタ処理を行う。通常のローパスフィルタ処理よりも遮断周波数が低い予備のローパスフィルタ処理に代えるのは、フィルタ処理後のa系列の信号およびb系列の信号に対して行う相関演算によって、極値が1つだけ得られるようにするためである。
【0081】
予備のローパスフィルタ処理後に行う相関演算で得られる極値が1つになれば、この極値に対応する第1シフト量kp1の近傍の狭範囲Δdでのみ、ハイパスフィルタ処理後のa系列の信号およびb系列の信号に対して相関演算を行えばよいので、複数の狭範囲Δdにおいてそれぞれ複数回の相関演算を行う場合に比べて、演算量を軽減できるというメリットがある。
【0082】
変形例1によれば、AF制御部110は、通常のローパスフィルタ処理後に行う相関演算によって得られた相関量の極値が複数存在する場合に、予備のローパスフィルタ処理の低周波数帯域をより低い周波数へ下げるようにしたので、相関量の極値を1つに減らすことができる。
【0083】
また、変形例1によれば、AF制御部110は、予備のローパスフィルタ処理後の相関演算によって得られる相関量の極値が1つになるまで低周波数帯域をより低い周波数へ下げるようにしたので、確実に、相関量の極値を1つに減らすことができる。
【0084】
(変形例2)
第二の実施形態において、
図12のステップS108のハイパスフィルタ処理を省略してもよい。つまり、同じ周波数帯域の一対の信号を用いて像ズレ検出を行うとともに、像ズレ検出演算処理に用いる信号の範囲(演算範囲)を、1回目の相関演算と2回目の相関演算とで異ならせる。
【0085】
変形例2において、MPU106は、同じ周波数帯域の一対の信号を用いて像ズレ検出を行うために、ステップS108(
図12)の処理を省略する。MPU106は、ステップS109(
図12)においてAF制御部110へ指示を送り、ローパスフィルタ処理後のa系列の信号およびb系列の信号(フィルタ出力値P1(j) (
図8))のうち、2回目の演算範囲72の信号を用いて2回目の相関演算処理を行わせ、第2シフト量xを算出させてステップS110へ進む。なお、2回目の相関演算処理において、1回目の相関演算(S106)によって算出した第1シフト量kp1の近傍(第1シフト量kp1を含み、上記1回目の相関演算におけるシフトの範囲ΔWより狭い狭範囲Δd)において、a系列の信号とb系列の信号とを相対的にシフトさせて演算する点は、第一の実施形態の場合と同様である。
【0086】
(変形例3)
第二の実施形態において、MPU106が、2回目の演算範囲72を1回目の演算範囲71の1/3に設定する(S107)ようにしたが、2回目の演算範囲72は1回目の演算範囲71の1/3に限らず、1/2でも1/5でもよい。また、MPU106は、検出したズレ量Sが所定値より大きい(すなわち、デフォーカス量が大きい)場合における演算範囲72を、検出したズレ量Sが所定値より小さい場合における演算範囲72より広くしてもよい。このように演算範囲72を可変にすることで、演算範囲72の範囲を適切に調節できる。
【0087】
さらにまた、MPU106は、1回目の演算範囲71において設定する2回目の演算範囲72の位置を、演算範囲71の左端に設定してもよいし、演算範囲71の中央に設定してもよいし、演算範囲71の右端に設定してもよい。近被写体と遠被写体のように、位相が違う被写体が1回目の演算範囲71において混在する場合には、演算範囲71についての相関演算で極小値が現れにくくなる。しかしながら、局所的に行う2回目の演算範囲72の位置を異ならせることで、2回目の演算範囲72に位相が違う被写体が混在する状態を避け得るため、演算範囲72についての相関演算で極小値が現れやすくなる。これにより、相関量の極小値を与える第2シフト量xを適切に求めることができる。
【0088】
(変形例4)
第一の実施形態、または第二の実施形態において、
図13に例示するように、1回目の相関演算によって得られた相関量に複数の極値が存在し、これら複数の極値にそれぞれ対応して第1シフト量kp1、kp2が複数存在する場合において、複数の第1シフト量kp1、kp2の近傍の狭範囲Δdにおいて、それぞれ2回目以降の相関演算を行うようにしてもよい。このとき、AF制御部110は、複数の第1シフト量kp1、kp2の中から、例えば、より小さなデフォーカス量に対応する第1シフト量(例えばkp1)を選び、このkp1の近傍の狭範囲Δdにおいて、先に2回目の相関演算を行う。AF制御部110は、2回目の相関演算によって算出した第2シフト量x1が第1シフト量kp1と略一致した場合、第2シフト量x1をズレ量Sとした上で、他の第1シフト量kp2の近傍の狭範囲Δdにおいてする2回目の相関演算を省略する。
【0089】
AF制御部110は、2回目の相関演算によって算出した第2シフト量x1が第1シフト量kp1と一致しない場合、他の第1シフト量kp2の近傍の狭範囲Δdにおいて2回目の相関演算を行う。そして、AF制御部110は、2回目の相関演算によって算出した第2シフト量x2が第1シフト量kp2と略一致した場合、第2シフト量x2をズレ量Sとする。
【0090】
第一の実施形態に対する変形例4によれば、AF制御部110は、通常のローパスフィルタ処理後に行う相関演算によって得られた相関量の極値が複数存在する場合に、複数の第1シフト量kp1、kp2をそれぞれ含む複数の狭範囲Δdにおいてそれぞれ相関演算を行うので、複数の第1シフト量kp1とkp2とのそれぞれについて、第1シフト量と第2シフト量との間で略一致するシフト量を、適切に検出することができる。
【0091】
また、第一の実施形態に対する変形例4によれば、AF制御部110は、通常のローパスフィルタ処理後に行う相関演算によって得られた相関量の極値が複数存在する場合に、より小さい第1シフト量(例えばkp1)を含む狭範囲Δdについて、先に2回目の相関演算を行い、演算した第2シフト量xが第1シフト量kp1と略一致した場合、他の第1シフト量kp2を含む狭範囲Δdについての2回目の相関演算を省略するので、第1シフト量が小さい、すなわちデフォーカス量が小さい被写体に対して迅速に焦点調節を行い得る。また、演算した第2シフト量xが第1シフト量kp1と略一致した場合において不要となる2回目の相関演算を省略することで、演算量の軽減にも役立つ。
【0092】
なお、最小のデフォーカス量に対応する第1シフト量(例えばkp1)を選び、このkp1の近傍の狭範囲Δdにおいて先に2回目の相関演算を行う代わりに、カメラに最も近い被写体に対応する第1シフト量(例えばkp1)を選び、このkp1の近傍の狭範囲Δdにおいて先に2回目の相関演算を行うようにしてもよい。
【0093】
第二の実施形態に対する変形例4によれば、AF制御部110は、通常のローパスフィルタ処理後に行う相関演算によって得られた相関量の極値が複数存在する場合に、カメラにより近い被写体に対応する第1シフト量(例えばkp1)を含む狭範囲Δdについて、先に2回目の相関演算を行い、演算した第2シフト量xが第1シフト量kp1と略一致した場合、他の被写体に対応する第1シフト量kp2を含む狭範囲Δdについての2回目の相関演算を省略するので、カメラに最も近い被写体に対して迅速に焦点調節を行い得る。また、演算した第2シフト量xが第1シフト量kp1と略一致した場合において不要となる2回目の相関演算を省略することで、演算量の軽減にも役立つ。
【0094】
(変形例5)
上述した説明では、ローパスフィルタ処理後の一対のa系列の信号およびb系列の信号に(フィルタ出力値P1(j) )を用いた相関演算(1回目の相関演算)を先に行い、ハイパスフィルタ処理後の一対のa系列の信号およびb系列の信号(フィルタ出力値P2(j) )を用いた相関演算(2回目の相関演算)を後に行った。2つの相関演算を同時に行ってもよい。相関演算を並列して行い、低周波数帯域の一対の信号(フィルタ出力値P1(j) )と高周波数帯域の一対の信号(フィルタ出力値P2(j) )とを用いて2つの相関量を算出してもよい。相関量が一致する極致を検出して、シフト量kを算出してもよい。
【0095】
(変形例6)
上述した説明では、一眼レフカメラシステムとしてデジタルカメラを例示したが、専用AF素子207による検出信号を用いて位相差方式の焦点検出処理を行う焦点検出装置を備えるものであれば、一眼レフタイプの銀塩カメラであってもよい。
【0096】
(変形例7)
上述した説明では、一眼レフタイプのデジタルカメラを例示したが、クイックリターンミラーを備えていない、ミラーレスタイプのデジタルカメラであってもよい。例えば特開2007−282107号公報に開示されるように、撮像用画素に加えて、焦点検出用の一対の光束を受光する焦点検出用画素を備えた撮像素子を用いることにより、いわゆる撮像面位相差方式の焦点検出処理を行う焦点検出装置を有するカメラであってもよい。
【0097】
(変形例8)
また、撮像用画素および焦点検出用画素を有する撮像素子を備えて上記撮像面位相差方式の焦点検出処理を行う焦点検出装置を、携帯型端末に搭載してもよい。携帯型端末は、高機能携帯電話機(いわゆるスマートフォン)、タブレット端末、ウェアラブル端末などの電子機器として構成することができる。
【0098】
(変形例9)
図14は、プログラムの供給を説明する図である。
図11、
図12を参照して説明したAF処理を実行するプログラムを、カメラや携帯型端末700に対して後から供給してもよい。携帯型端末700等へのプログラムの供給は、
図14に例示するように、プログラムを格納したパーソナルコンピュータ705から赤外線通信や近距離無線通信、あるいは有線接続によって携帯型端末700へ送信することができる。
【0099】
パーソナルコンピュータ705に対するプログラムの供給は、プログラムを格納したCD−ROMなどの記憶媒体704をパーソナルコンピュータ705にセットして行ってもよいし、ネットワークなどの通信回線701を経由する方法でパーソナルコンピュータ705へローディングしてもよい。通信回線701を経由する場合は、当該通信回線に接続されたサーバー702のストレージ装置703などにプログラムを格納しておく。
【0100】
また、通信回線701に接続された無線LANのアクセスポイント(不図示)を経由して、携帯型端末700へプログラムを直接送信することもできる。さらに、プログラムを格納したメモリカードなどの記憶媒体704Bを携帯型端末700にセットしてもよい。このように、プログラムは記憶媒体や通信回線(信号)を介する提供など、種々の形態のコンピュータプログラム製品として供給できる。
【0101】
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。