以下に、本発明の実施の形態を添付の図面に基づいて詳細に説明する。
[参考例]
図1に、本発明の参考例におけるオートフォーカス装置100の構成を示す。
オートフォーカス装置100は、撮像光学系を構成するフォーカスレンズ群111を含み、フォーカスレンズ群111には、フォーカス駆動手段であるフォーカスモータ112が接続されている。フォーカスドライバ113によってフォーカスモータ112が駆動され、フォーカスレンズ群111を光軸方向に移動させる。フォーカスレンズ群111の位置は、フォーカス位置検出部114により検出される。
フォーカスレンズ群111の像面側には、ハーフミラー121が設けられている。撮像光学系に入射した光束は、フォーカスレンズ群111を通り、ハーフミラー121を透過した光束とハーフミラー121で反射された光束とに分割される。ハーフミラー121を通過した光束は、撮像素子140に入射する。撮像素子140は電荷蓄積型のイメージセンサであり、CMOSセンサやCCDセンサによって構成される。ハーフミラー121で反射された光束は、撮像素子140と共役な位置に設けられた焦点検出部122に入射する。
焦点検出部122は、不図示の複数対の二次結像レンズと、不図示の位相差センサとしてのAFセンサとを含む。AFセンサ上には複数のエリアセンサが設けられている。各エリアセンサ上には、ハーフミラー121を透過して各対の二次結像レンズによって二つに分割された光束により一対の被写体像(以下、二像という)が形成される。各エリアセンサは、該二像を光電変換して二像信号を出力する。二像信号からは、オートフォーカス装置100のフォーカス状態に応じた位相差を得ることができる。
オートフォーカス装置100が合焦状態にある場合は二像の間隔に相当する位相差は特定値を示す。被写体よりも像面に近い側に合焦している場合、所謂前ピンの場合は、位相差は該特定値よりも小さくなる。また、被写体よりも像面から遠い側に合焦している場合、所謂後ピンの場合は、位相差は該特定値よりも大きくなる。このように、焦点検出部122は、オートフォーカス装置100に入射した光により形成された被写体像間の位相差を検出する機能を有する。
CPU130内には、位相差焦点演算部131、コントラスト焦点演算部(コントラスト取得手段)132、デフォーカス量演算部133、レンズ制御部134が構成されている。焦点検出部122から出力される2つの像信号は、位相差焦点演算部131に入力される。また、撮像素子140から出力される撮像信号は、画像処理部141によって映像信号に変換され、コントラスト焦点演算部132に入力される。本参考例では、映像信号の更新周期を16[ms]として説明する。
位相差焦点演算部131は、焦点検出部122から出力される二像信号に対する相関演算を行い、該像信号間の位相差を算出する。二像一致度を相関評価値として用いる。相関評価値が極値を得るときの位相差を合焦候補点として設定する。さらに、各合焦候補点のうち相関評価値が最大となるような点を最も有力な合焦候補点として設定する。
コントラスト焦点演算部132は、画像処理部141から出力される映像信号を取得し、該映像信号から高周波数成分を抽出する。そして、該高周波数成分から被写体画像のコントラスト状態を示すコントラスト評価値を生成する。画像処理部141から出力される映像信号は、周期的に更新される。コントラスト焦点演算部132は、映像信号の更新周期に合わせてコントラスト評価値を生成する。そして、コントラスト評価値が最大となるような点が合焦点であると判定する。
デフォーカス量演算部133は、位相差焦点演算部131およびコントラスト焦点演算部132の演算結果をもとに、フォーカスレンズ群111のデフォーカス量を算出する。
このようにして、焦点検出部122に設けられた位相差センサによる複数のデフォーカス量が算出される。算出されたデフォーカス量は、レンズ制御部134に入力される。レンズ制御部134は、フォーカス位置検出部114を通じて、フォーカスレンズ群111の位置を取得する。そして、レンズ制御部134は、デフォーカス量演算部133(目標位置設定手段)によって算出されたデフォーカス量にしたがって、フォーカスレンズ群111を目標位置へ駆動する。この時、レンズ制御部134は、該算出された目標位置までフォーカスレンズ群111が光軸方向に移動するように、フォーカスドライバ113を介してフォーカスモータ112を駆動し、フォーカスレンズ群111を移動させる。このようにして、オートフォーカスが行われる。
ここで、図2(a)に撮影画面内での焦点検出エリアの一例を示す。図2(a)の501から527は各焦点検出エリアである。図2(a)には、撮影範囲のうち上部、中部及び下部のそれぞれにおいて7つずつ横方向に並んだ21の焦点検出エリアが配置された例を示す。上部左側から順に焦点検出エリア501〜507、中央部左側から順に焦点検出エリア511〜517、下部左側から順に焦点検出エリア521〜527とする。
デフォーカス量演算部133は、撮影可能な範囲である撮影範囲(撮影画面)内に予め設定された複数の焦点検出エリアの位置(座標)と、該焦点検出エリアの形状(大きさ)を記憶保持している。設定内容を変更することで、焦点検出エリアの位置、大きさ等の変更が可能である。本実施例では、図1のスイッチ201を用いて、焦点検出エリアを選択することとする。
図2(b)には、図2(a)で示した焦点検出エリア514が選択された状態で被写体を撮影している撮影映像の様子を示している。図2(b)に示すように、被写体は所謂縞模様であり周期性パターンを持っている。参考例では、図2(b)に示した撮影構図において、周期性パターンのある被写体に合焦させる例を説明する。
図3は、オートフォーカス装置100におけるオートフォーカス処理の流れを示したフローチャートである。CPU130は、これらの処理を、不図示のメモリに格納されたコンピュータプログラムに従って制御する。
オートフォーカス装置100に電源が入ると、レンズCPU130の処理は、ステップS101から処理を実行する。ステップS101において、レンズ制御部134は、フォーカス位置検出部114を通して、フォーカスレンズ群111の位置F(0)を取得する。
次に、CPU130はステップS102に進み、スイッチ201が選択している焦点検出エリアを選択し、焦点検出部122内の位相差センサを起動する。次に、CPU130はステップS103に進む。
ステップS103において、位相差焦点演算部131は、焦点検出部122から二像信号を取得し、スイッチ201で選択された焦点検出エリア514の位相差を算出する。この時の二像信号と算出される焦点情報である、位相差および相関評価値、の例を図4および図5に示す。焦点検出エリア514から得られる像データは、前述したように被写体に周期性パターンがあるため、図4に示した波形が得られる。このとき、各位相差の二像一致度を示す相関評価値をプロットすると図5を得る。図5に示すように、位相差とその相関評価値をパラメータとしてもつ合焦候補点C(1)からC(5)を得る。また、合焦候補点の数および各合焦候補点のインデックスを記憶しておく。
被写体に周期性パターンがない場合、各合焦候補点における相関評価値に差が生じるため、真の合焦候補点を選別することが可能である。しかし、被写体に周期性パターンがある場合、図5のように各相関評価値がほぼ等しい値となることが特徴である。そのため、例えC(3)が真の合焦点であったとしても、その他の相関評価値とほぼ等しいため、真の合焦候補点がC(1)からC(5)のうちどれであるかを判定することが困難となる。
図3のフローチャートの説明に戻る。次にステップS120に進み、位相差焦点演算部131(周期性判定手段)によって被写体の周期性パターンの有無が判定される。ここでは、前述の合焦候補点C(1)からC(5)に対する各相関評価値が所定の範囲内に収まる値である場合に周期性パターンであると判定する方法を例に説明する。
周期性パターンの判定例を示すサブルーチンのフローチャートを図6に示す。まず、ステップS171では、ステップS103で算出した合焦候補点数が2点以上であるかどうかを判定する。合焦候補点数が2点以上である場合はステップS172に進み、2点未満である場合はステップS177に進む。ステップS172およびステップS173では、各相関評価値の最小値と最大値をサーチし記憶する。次に、ステップS174に進み、ステップS172およびステップS173で得た相関評価値の最大値と最小値の差分を取り、これを相関評価値範囲として記憶する。そして、ステップS175に進み、相関評価値範囲を所定の閾値βで評価する。ステップS175において、相関評価値範囲が閾値β未満である場合は真と判定し、ステップS176に進む。ステップS175が偽である場合は、ステップS177に進む。ステップS176では、周期性パターンであるという結果を格納し、周期性パターン判定サブルーチンを終了する。ステップS177では、通常パターンであるという結果を格納し、周期性パターン判定サブルーチンを終了する。なお、βは任意であり、所定の値をあらかじめプログラムに書き込んでも良いし、不図示のボリュームやスイッチを設けて、外部からの指定・選択が可能な構成にしても良い。
図3のフローチャートの説明に戻る。ステップS120の判定の結果、周期性パターンであると判定した場合は、ステップS121へ進む。ステップS120において、周期性パターンではないと判定した場合、ステップS150へ進む。
ステップS121では合焦方向の判定を行う。ここでは、図7に示すフローチャートを例に方向判定を行うこととする。まず、ステップS181において、ステップS101で、レンズ制御部134によって検出されたフォーカスレンズ群111の位置F(0)がフォーカス全域に対し無限側に位置しているかどうかを判定する。ステップS181が真つまり無限側である場合、ステップS182において合焦方向を至近側に設定して設定して処理を終了する。一方、ステップS181が偽つまり至近側である場合、ステップS183において合焦方向を無限側に設定して処理を終了する。例えば、フォーカスレンズ群の位置F(0)が可動範囲の中点よりも無限側である場合は、合焦方向を至近側と設定し、可動範囲の中点よりも至近側である場合は、合焦方向を無限側と設定してもよい。
図3のフローチャートの説明に戻る。次にステップS122に進み、デフォーカス量演算部133は、ステップS121で判定した合焦方向に該当する合焦候補点のうち最も近い合焦候補点を変数iに設定する。
ステップS122のサブルーチンを図8に示す。まず、ステップS191にて、ステップS121で判定した合焦方向を参照する。合焦方向が無限側である場合はステップS192に進み、合焦方向が至近側である場合はステップS196に進む。ステップS192では、インデックス変数jに1を設定し、ステップS194に進む。ステップS194では、デフォーカス量演算部133は、合焦候補点C(j)に対応するフォーカスレンズ群111の合焦候補位置F(j)を算出する。そして、F(0)とF(j)の位置関係を判定する。F(0)がF(j)よりも至近つまり真である場合は、ステップS195に進む。また、ステップS194が偽である場合は、ステップS193に進む。ステップS193では、インデックス変数jをインクリメントする。そしてステップS194から再び処理を実行する。ステップS196では、インデックス変数jに合焦候補数を設定する。つまり、図3のステップS103で算出した合焦候補点のうちの最後のインデックスとなる合焦候補点に該当するインデックスを変数jに設定することとなる。そして、ステップS197に進み、ステップS194と同様にF(j)を算出して、F(0)とF(j)の位置関係を判定する。F(0)がF(j)よりも無限である場合、つまり真である場合はステップS195に進み、偽である場合はステップS198に進む。ステップS198ではインデックス変数jをデクリメントし、ステップS197から再び処理を実行する。ステップS195では、インデックス変数jを近傍の合焦候補点として変数iに設定し、サブルーチンを終了する。
ここで、図9に、各合焦候補点C(i)と各C(i)に対応するフォーカスレンズ群の位置F(i)を示す。例えば、ステップS101で検出したフォーカスレンズ群111の位置F(0)が図9に示すように至近側の位置である場合、ステップS121の合焦方向判定は無限側となる。そして、ステップS122において、F(0)から最も近い合焦候補点のインデックスは1となり、変数iには1がセットされる。
次に、ステップS123において、デフォーカス量演算部133はフォーカスレンズ群111のデフォーカス量と駆動速度を演算し、合焦候補点C(i)に対応するフォーカスレンズ群111の合焦候補位置F(i)を目標位置として算出する。各C(i)に対応する各F(i)は図9に示したような関係を得る。このデフォーカス量と駆動速度の決定方法の詳細は後述する。次にステップS124に進み、レンズ制御部134は、フォーカスドライバ113およびフォーカスモータ112を通して、フォーカスレンズ群111を上記駆動速度で合焦候補位置F(i)へ駆動する。その後、ステップS125において、コントラスト焦点演算部132は、画像処理部141からの映像信号を取得し、ステップS102で選択した焦点検出エリアに対応するエリアの高周波数成分およびコントラスト評価値V(i)を演算する。
次にステップS130へ進み、ステップS125で取得したコントラスト評価値V(i)が所定の閾値αよりも大きいかどうかを判定する。V(i)が閾値αよりも大きいとき、合焦であると判定してステップS101に戻って再び処理を実行する。一方、V(i)が閾値α以下の時は、合焦ではないとして、ステップS140に進む。なお、αは任意であり、所定の値をあらかじめプログラムに書き込んでも良いし、不図示のボリュームやスイッチを設けて、外部からの指定・選択が可能な構成にしても良い。ステップS130における合焦判定方法については後述する。
ステップS140において、ステップS121で判定した合焦方向に該当する合焦候補点の数だけ合焦判定をしたかどうかを判定する。ステップS140が真である場合は、ステップS101から再び処理を実行する。ステップS140が偽である場合は、ステップS141に進み、ステップS121で判定した合焦方向に該当する次の合焦候補点を変数iにセットする。すなわち、現在のフォーカスレンズ群111の位置よりも合焦方向にある合焦候補位置で、最も現在のフォーカスレンズ群111に近い合焦候補位置をフォーカスレンズ群の目標位置に設定する。そして、ステップS123から再び処理を実行する。
ステップS150では、被写体に周期性パターンがない場合の通常のハイブリッドオートフォーカス処理が実行される。位相差方式とコントラスト方式とのハイブリッド方式によるオートフォーカスは公知であるため、ここでは簡単な一例として、図10にサブルーチンのフローチャートを示す。まず、ステップS151では、位相差焦点演算部131によって算出された合焦候補点のうち、相関評価値が最大である合焦候補点を選択する。そして、デフォーカス量演算部133によってフォーカスレンズ群111の目標位置が計算される。次にステップS152において、レンズ制御部134は、フォーカスドライバ113およびフォーカスモータ112を通してフォーカスレンズ群111を駆動する。次に、ステップS153において、コントラスト焦点演算部132は画像処理部141から映像信号を取得し、コントラスト評価値を演算する。そして、S154において、ステップS110やS130と同様に合焦判定を行う。合焦である場合は、本サブルーチンを終了する。合焦ではない場合は、ステップS155に進む。ステップS155では、コントラスト評価値を用いた所謂山登り判定を行うためのデフォーカス量を演算する。そして、合焦となるまでステップS152から再び処理を繰り返し実行する。
ここで、図3に示したフローチャートのステップS120で真、つまり周期性パターンであると判定した場合のデフォーカス量および駆動速度の演算から合焦判定までの過程について説明する。図11は、フォーカスレンズ群111の初期位置F(0)が至近側にある場合に、本参考例を適用した場合の合焦に至るまでの過程を示したものである。図11の横軸に位相差焦点演算部131によって算出される合焦候補点C(i)および、各C(i)に対応するフォーカスレンズ群111の合焦候補位置F(i)を示した。図11の縦軸には、位相差による合焦候補点C(i)の相関評価値および、コントラスト焦点演算部132が算出するコントラスト評価値V(i)を示した。図11のF(0)はステップS101でレンズ制御部134が検出したフォーカスレンズ群111の位置である。ステップS123が実行されるとき、ステップS122でi=1とすると、フォーカスレンズ群111の目標位置はF(1)に設定される。また、フォーカスレンズ群111がF(1)の位置に達した時に画像処理部141から出力される映像が更新されるタイミングとなるように、レンズ制御部134はフォーカスレンズ群111の駆動速度を決定し、ステップS124で駆動する。前述したように、映像処理部141が出力する映像の更新周期を16[ms]とすると、16[ms]の整数倍後にステップS125が実行され、コントラスト評価値V(1)を得るように駆動する。そして、コントラスト評価値V(1)をもとにステップS130にて合焦判定を行う。コントラスト評価値V(1)はαよりも小さいため、ステップS140およびステップS141にて、次の合焦候補位置となるF(2)を目標位置とし、ステップS123から同様の処理を実行する。そして、i=3であるとき、ステップS130において、コントラスト評価値V(3)がαより大となり合焦であると判定し、処理を終了する。
図12にフォーカスレンズ群111の軌跡を示す。図12は、横軸に時間軸をとり、縦軸にフォーカスレンズ群111の位置を示した。図12に示すように、各時刻T(0)からT(3)において、フォーカスレンズ群111の位置F(0)からF(3)に駆動し、コントラスト評価値V(0)からV(3)を取得している。ある合焦候補点において合焦ではないと判定した場合は、各合焦候補点におけるフォーカスレンズ群111の駆動速度を落とすことなく、即座に次の合焦候補点へフォーカスレンズ群111を駆動することが可能である。また、各合焦候補点間のデフォーカス量に応じて、フォーカスレンズ群111の駆動速度を可変としている。
このように、本参考例では、画像処理部141の映像更新周期に合わせて合焦候補位置F(i)(合焦候補点C(i))にフォーカスレンズ群111を位置・速度制御して駆動することで、合焦候補点近傍のみをコントラスト評価することが可能となる。すなわち、各合焦候補点間はコントラスト評価する必要がないため、コントラスト評価のためにフォーカスレンズ群の駆動速度を遅くする必要がなく、真の合焦点に到達するまでの時間を短縮させることが可能となる。したがって、周期性パターンを有する被写体へのオートフォーカス処理を従来と比較して高速化することが可能となる。また、閾値αを設定することで、すべての合焦候補点をサーチする必要がなく、高速に合焦させることが可能となる。
なお、本参考例における、合焦方向判定の方法については、図7で示した方法以外の方法でも適用することが可能である。例えば、フォーカスレンズ群111の初期位置F(0)と合焦候補位置F(i)の集合との関係から、合焦方向を判定しても良い。
周期性パターンを有する被写体の位相差を算出した場合、合焦候補点の位相差間隔は、単位を位相差センサの画素とすると、原理上2画素以上となる。また、フォーカスレンズ群の位置によって敏感度が異なるため、図12に示したように、合焦候補点間毎にデフォーカス量が異なる。よって、デフォーカス量が多い場合は、駆動可能な最大の速度でフォーカスレンズ群を駆動したとしても、次の合焦候補点へ駆動させる前に画像処理部141の映像更新周期を迎えてしまう可能性がある。すなわち、合焦候補点に該当するフォーカスレンズ群の位置でコントラスト評価を行うことが困難である場合がある。
そこで、合焦候補点以外で更新される映像のコントラスト評価値を利用することによって、近傍の合焦候補点が真の合焦点であるかを判定することが可能となる。
本実施例では、このような状況に適するオートフォーカスの方法について説明する。
実施例1のオートフォーカス装置の構成、AFセンサの構成及び焦点検出エリアの構成は参考例の図1、図2(a)と同様なので説明を省略する。参考例と同様に、図2(b)の撮影シーンを例に、図13から図16を用いて説明する。
図13は、オートフォーカス装置100におけるオートフォーカス処理の流れを示したフローチャートである。CPU130は、これらの処理を、不図示のメモリに格納されたコンピュータプログラムに従って制御する。
図13のステップS101からS103では、参考例と同様に、フォーカスレンズ群111の位置F(0)を検出する。また、焦点検出部122内において、スイッチ201によって選択されている位相差センサを起動する。次に、スイッチ201で選択されている焦点検出エリア514の位相差および合焦候補点を算出する。
ステップS120では、参考例と同様に周期性パターン判定を行う。被写体が周期性パターンであると判定した場合は、ステップS121に進み、周期性パターンではないと判定した場合は、ステップS150に進む。ステップS150では、参考例と同様に通常のハイブリッドAF処理を行い、ステップS101から再び処理を繰り返す。ステップS121では、参考例と同様に合焦方向の判定を行う。
次にステップS210において、デフォーカス量演算部133はデフォーカス量の演算を行う。ステップS210のサブルーチンを図14に示す。まず、ステップS211において、レンズ制御部134はフォーカスレンズ群111の位置を検出する。次に、ステップS212では、コントラスト評価値を用いて合焦近傍判定を行う。合焦近傍である場合はステップS122に進み、合焦近傍ではない場合はステップS214に進む。ステップS212の判定方法の詳細については後述する。
ステップS122では、参考例と同様に、ステップS211で検出したフォーカスレンズ群111の位置近傍の合焦候補点iを設定する。次に、ステップS213に進み、近傍の合焦候補位置F(i)をフォーカスレンズ群111の目標位置に設定し、サブルーチンを終了する。また、ステップS214では、ステップS121で決定した合焦方向端を目標位置に設定し、サブルーチンを終了する。合焦方向端とは、検出した合焦方向に該当するフォーカスレンズ群の位置の限界位置すなわち端である。
図13のフローチャートの説明に戻る。次に、ステップS124に進み、参考例と同様にフォーカスレンズ群111を目標位置に駆動する。次に、ステップS211に進み、前回に算出したコントラスト評価値を記憶しておく。S125に進み、参考例と同様にコントラスト評価値を演算する。さらに、ステップS130に進み、参考例と同様に合焦かどうかを判定する。合焦である場合はステップS101から再び処理を実行し、合焦ではない場合は、ステップS210へ戻る。以上の処理を繰り返し実行する。
ここで、図13のフローチャートを実行したとき、合焦に至るまでの過程と図14のステップS212の判定方法を、図15および図16を用いて説明する。図15は、参考例で示した図11と同様に、横軸には合焦候補点C(i)とフォーカスレンズ群111の合焦候補位置F(i)を示した。また、図15の縦軸には同様に、合焦候補点C(i)の相関評価値とコントラスト評価値V(i)を示した。図16は、参考例で示した図12と同様に、横軸には時間軸をとり、縦軸にはフォーカスレンズ群111の位置を示した。
いま、図16の時刻T(0)において、ステップS101で検出したフォーカスレンズ群111の位置F(0)が図15および図16に示す位置にあるものとする。また、真の合焦位置をF(3)と仮定する。このとき、ステップS121では、合焦方向判定の結果、合焦方向は無限側であると判定する。次のステップS210のサブルーチンである図14のステップS212において、コントラスト評価値を用いて、現在位置が合焦近傍であるかどうかを判定する。ここでは、取得した最新のコントラスト評価値V(i)とステップS211で記憶したコントラスト評価値前回値を比較する。最新のコントラスト評価値V(i)の方が大きければ,合焦近傍であると判定する。最新のコントラスト評価値V(i)が前回値以下である場合は、合焦近傍ではないと判定する。i=0のとき、ステップS214に進み、目標位置を無限側の端とし、デフォーカス量演算を終了する。次に、ステップS124では無限側にフォーカスレンズ群111を駆動する。次に、図16の時刻T(1)のとき、ステップS125において、コントラスト評価値V(1)を演算する。次にステップS130にて合焦判定を行う。図15に示すように、コントラスト評価値V(1)<閾値αであるため、ステップS210へ進む。同様にして、図13のステップS210からステップS130を繰り返し実行する。そして、i=2のとき、図14のステップS212において、V(2)>V(1)という結果が得られ、ステップS213に進む。ステップS213では、V(2)を取得したフォーカスレンズ群111の位置、すなわちステップS211で検出したフォーカスレンズ群111の位置に対する近傍の合焦候補位置F(i)を探索する。言い換えると、フォーカスレンズ群111の位置よりも合焦方向にあり、フォーカスレンズ群111の位置に最も近い合焦候補位置F(i)を探索し目標位置として設定する。図15より、i=3が得られ、目標位置にはF(3)が設定される。図13のステップS124に進み、フォーカスレンズ群111を目標位置F(3)へ駆動する。ステップS124では、素早く合焦させるため、映像の更新周期とは非同期に目標位置F(3)へフォーカスレンズ群111を駆動することとする。次に、ステップS125に進み、コントラスト評価値V(3)を得る。そして、ステップS130の合焦判定にて、コントラスト評価値V(3)>閾値αとなり、合焦と判定する。ここで、図16に示すように、合焦に至るまでのフォーカスレンズ群111の軌跡に着目すると、合焦に至るまで一定速度で駆動していることがわかる。なお、位置F(2)からF(3)におけるフォーカスレンズ群111の駆動速度については、参考例で示したように、画像処理部141から取得できる映像の更新周期に合わせて駆動速度を決定しても良い。
このように、合焦候補点以外で更新される映像のコントラスト評価値を利用することによって、前後の合焦候補点が真の合焦点であるかを判定し、合焦位置までフォーカスレンズ群111を素早く駆動させることが可能である。
参考例および実施例1では、フォーカスレンズ群111の初期位置を至近側とした場合について述べた。これらの参考例、実施例では、フォーカスレンズ群111の初期位置F(0)に対し、合焦候補点の集合が一方向に存在するため、合焦点の方向を一意に決定することが可能である。一方、フォーカスレンズ群111の初期位置が合焦候補点の範囲内に位置する場合、合焦点の方向を一意に決定することが困難となる。そこで、初期位置F(0)近傍でコントラスト評価値を取得することにより、合焦点の方向判定を行うことが可能である。合焦点の方向が決定した後は、参考例および実施例1と同様に、合焦候補点におけるコントラスト評価値を用いて、素早く合焦させることが可能となる。本実施例では、このような状況に適するオートフォーカスの方法について説明する。
実施例2のオートフォーカス装置の構成、AFセンサの構成及び焦点検出エリアの構成は参考例の図1、図2(a)と同様なので説明を省略する。参考例と同様に、図2(b)の撮影シーンを例に、図17から図20を用いて説明する。
図17は、オートフォーカス装置100におけるオートフォーカス処理の流れを示したフローチャートである。CPU130は、これらの処理を、不図示のメモリに格納されたコンピュータプログラムに従って制御する。
図17のステップS101からS103は、参考例および実施例1と同様であるため説明を省略する。ステップS103の次にステップS120に進み、周期性パターン判定を行う。ステップS120で真、つまり周期性パターンであると判定した場合は、ステップS310に進む。ステップS120で偽、つまり通常の被写体である場合は、ステップS150に進む。ステップS150は、参考例と同様の処理を実行するため、説明を省略する。
ステップS310では、合焦方向判定を行う。ステップS310のサブルーチンを図18に示す。まず、ステップS311において、コントラスト焦点演算部132はコントラスト評価値V(0)を算出する。次にステップS312に進み、デフォーカス量演算部133はフォーカスレンズを所定の量駆動するためのデフォーカス量を算出する。このデフォーカス量は任意であり、あらかじめプログラム等に書き込んでも良いし、オートフォーカス装置の光学条件に基づいて算出しても良い。そして、レンズ制御部134によってフォーカスレンズ群111を順方向に駆動する。本実施例では順方向の例として、フォーカスレンズ群111を至近側に駆動することとする。次に、ステップS313に進み、コントラスト焦点演算部132はコントラスト評価値V(0)’を算出する。そして、ステップS314に進み、コントラスト評価値V(0)とV(0)’を比較する。V(0)’>V(0)であればステップS315に進み、V(0)’≦V(0)であれば、ステップS316に進む。本実施例では、ステップS315では、合焦方向1は順方向つまり至近側となり、ステップS316では、合焦方向2は逆方向つまり無限側となる。このように合焦方向を決定し、合焦方向判定のサブルーチンを終了する。そして、図17のフローチャートのステップS122へ進む。
ステップS122、S123、S124、S125、S130、S140、S141については、参考例と同様であるため、説明を省略する。以上これらの処理を繰り返して実行する。
ここで、図17のフローチャートを実行したときの合焦に至るまでの過程、および図18フローチャートの合焦方向判定の過程を、図19および図20を用いて説明する。図19は、参考例で示した図11と同様に、横軸には合焦候補点C(i)とフォーカスレンズ群111の合焦候補位置F(i)を示した。また、図19の縦軸には同様に、合焦候補点C(i)の相関評価値とコントラスト評価値V(i)を示した。図20は、参考例で示した図12と同様に、横軸には時間軸をとり、縦軸にはフォーカスレンズ群111の位置を示した。
いま、ステップS101で検出したフォーカスレンズ群111の位置F(0)が図19に示す位置にあるものとする。また、真の合焦位置をF(3)と仮定する。図18のステップS312において、フォーカスレンズを順方向つまり至近側に駆動することとすると、ステップS313で取得されるコントラスト評価値V(0)’は、図19に示すような位置で取得される。次に、ステップS314の合焦方向の判定において,図19および図20に示すようにV(0)>V(0)’であるため、ステップS316に進み、合焦方向が逆方向つまり無限側であると判定される。そして、合焦方向判定のサブルーチンを終了する。次に、ステップS122に進み、参考例と同様に処理を行うと、F(0)から最も近い合焦候補点のインデックスは3となり、変数iには3がセットされる。また、ステップS123、S124、において、フォーカスレンズ群111はF(3)へ駆動され、ステップS125のコントラスト評価値V(3)を得る。そして、ステップS130の合焦判定にて、コントラスト評価値V(3)>閾値αとなるため合焦と判定され、図17のフローチャートを終了する。
このように、本実施例では、初期位置F(0)近傍でコントラスト評価値を取得することにより、合焦点の方向判定を行い、合焦方向判定を行うことによって、周期性パターンのある被写体に対して素早く合焦させることが可能である。
なお、本実施例では、図20の時刻T(2)からT(3)かけて、映像の更新周期に合わせてフォーカスレンズ群111を速度制御する例を述べたが、映像の更新周期の整数倍よりも短い時間で到達できる場合は、実施例1のように最大速度で駆動し、真の合焦点に駆動させても良い。
また、本実施例では、図18の合焦方向判定サブルーチンのステップS312において、フォーカスレンズ群111を順方向として至近側に駆動することとしたが、順方向を無限側として駆動しても良い。
参考例から実施例2では、コントラスト評価値と閾値αを比較することによって合焦判定を行う例を示した。閾値αは任意の値であることを述べたが、撮影環境や被写体条件によっては、合焦点におけるコントラスト評価値のピーク値が変動するため、閾値αを一意に決定することが困難である場合がある。そのため、映像信号によるコントラストAFを行う場合、所謂山登り判定を行うことによって合焦点をサーチする方法が一般的である。サーチポイント数を増やすことによって、合焦精度は上がる一方で、合焦までに時間を要してしまうことは前に述べた。そこで、位相差目標位置として算出された合焦候補点の近傍を山登り判定することによって、素早くかつ精度の高い合焦動作を得ることが可能となる。本実施例では、このような状況に適するオートフォーカスの方法について説明する。
実施例3のオートフォーカス装置の構成、AFセンサの構成及び焦点検出エリアの構成は参考例の図1、図2(a)と同様なので説明を省略する。参考例と同様に、図2(b)の撮影シーンを例に、図21から図25を用いて説明する。
図21は、オートフォーカス装置100におけるオートフォーカス処理の流れを示したフローチャートである。CPU130は、これらの処理を、不図示のメモリに格納されたコンピュータプログラムに従って制御する。
図21のステップS101からS103、S120からS122、およびS150は、参考例と同様の処理を実行するため、説明を省略する。
ステップS122の後、ステップS401へ進む。ステップS401ではデフォーカス量の演算を行う。このとき、目標位置を合焦候補位置F(i)よりも所定の値オフセットした位置、F(i)−ΔFへ設定する。参考例と同様にして、目標位置へと到達する時間を映像の更新周期の整数倍の時間となるようにデフォーカス量を決定する。次に、ステップS402へと進み、参考例の図3のステップS124と同様に、フォーカスレンズ群111をF(i)−ΔFの位置へ駆動する。つまり、映像の更新周期16[ms]の整数倍の時間後に目標位置へ到達する。ここで、ΔFは任意であり、あらかじめプログラム等に書き込んでも良いし、撮影装置の光学条件に基づいて算出しても良いし、不図示のボリュームやスイッチ等によって外部から選択、切替可能なように構成しても良い。
次にステップS410に進み、コントラスト評価値による山登り判定を行う。ステップS410のサブルーチンを図22に示す。まず、図22のステップS411にて、コントラスト焦点演算部132は、画像処理部141から映像を取得し、フォーカスレンズ群111の位置F(i)−ΔFにおけるコントラスト評価値V(i)’を演算する。次に、ステップS412に進み、レンズ制御部134は、フォーカスレンズ群111を位置F(i)へ駆動する。次に、ステップS413に進み、ステップS411と同様に、フォーカスレンズ群111の位置F(i)におけるコントラスト評価値V(i)を演算する。さらに、ステップS414に進み、位置F(i)よりも所定の値オフセットした位置F(i)+ΔFへ、フォーカスレンズ群111を駆動する。そして、ステップS415へ進み、ステップS411やS413と同様に、フォーカスレンズ群111の位置F(i)+ΔFにおけるコントラスト評価値V(i)’’を演算する。
次にステップS416へ進み、ステップS411からS415で取得したコントラスト評価値V(i)、V(i)’、V(i)’’を比較し、山登り判定を行う。ステップS416に示すように、V(i)>V(i)’かつV(i)>V(i)’’が真である場合は、合焦であると判定し、ステップS417へ進み合焦フラグをONとする。一方、ステップS416が偽である場合は、合焦ではないと判定し、ステップS418へ進み合焦フラグをOFFとする。
図23は、ステップS416の判定を行う際の、フォーカスレンズ群111の位置F(i)、F(i)−ΔF、F(i)+ΔFに対する、コントラスト評価値V(i)、V(i)’、V(i)’’の関係を示したものである。図23(a)に示すような関係である場合、所謂コントラストピークとなり、ステップS416において真であると判定される。一方、図23(b)および(c)に示すような関係である場合は、コントラストピークを迎えていないため、ステップS416において偽であると判定される。
図22のフローチャートの説明に戻る。ステップS417の後はステップS419へと進み、フォーカスレンズ群111を合焦候補位置F(i)へと駆動し、山登り判定のサブルーチンを終了する。
図21のフローチャートの説明に戻る。ステップS410の後は、ステップS403に進み、図22のステップS417およびS418で設定した合焦フラグを判定する。真である場合は、再びステップS101から処理を繰り返す。一方、ステップS403が偽である場合は、ステップS140に進む。ステップS140およびS141は参考例と同様に、他の合焦候補点を設定し、ステップS401から再び処理を繰り返し、他の合焦候補点を探索する。
ここで、図21のフローチャートを実行したときの合焦に至るまでの過程、および図22のフローチャートの所謂山登り判定の過程を、図24および図25を用いて説明する。図24は、参考例で示した図11と同様に、横軸には合焦候補点C(i)とフォーカスレンズ群111の合焦候補位置F(i)を示した。また、図24の縦軸には同様に、合焦候補点C(i)の相関評価値とコントラスト評価値V(i)を示した。図25は、参考例で示した図12と同様に、横軸には時間軸をとり、縦軸にはフォーカスレンズ群111の位置を示した。
いま、図25の時刻T(0)にて、図21のステップS101で検出したフォーカスレンズ群111の位置F(0)が図24および図25に示す位置にあるものとする。また、参考例、2、3と同様に、真の合焦点をF(3)とする。図21のフローチャートのステップS121にて、参考例と同様に、合焦点の方向が無限であると判定される。次に、ステップS122にて、合焦候補点番号iには1が設定される。そして、ステップS401、S402を実行し、ステップS410において、図24および図25に示すように、フォーカスレンズ群111の位置F(1)近傍である3点の位置、F(1)−ΔF、F(1)、F(1)+ΔFにおいて山登り評価されることとなる。コントラスト評価値V(1)の近傍のコントラスト評価値V(1)’、V(1)’’は、図23(b)のような位置関係となる。よって、図22のフローチャートのステップS416では合焦判定は偽となり、ステップ418へと進む。i=2のとき、図25に示すような状況では、i=1と同様のコントラスト評価値が得られる。したがって、図23(b)のような位置関係となり、図22のフローチャートのステップS416では合焦判定は偽となる。同様にして、i=3のとき、コントラスト評価値は図23(a)のような関係が得られる。よって、図22のフローチャートのステップS416において合焦判定は真となる。そして、ステップS419にて、フォーカスレンズ群111を位置F(3)へ駆動する。
図25には、フォーカスレンズ群111の軌跡を示した。図25に示すように、各合焦候補点間の駆動速度は、参考例と同様に素早く駆動させるが、各合焦候補点の近傍の位置F(i)±ΔFにおいてコントラスト評価値を取得するために、駆動速度を落としている。これに加えて、各コントラスト評価値を演算するタイミングに合わせてフォーカスレンズ群111を駆動することによって、合焦近傍のみを効率的にサーチすることが可能となる。
このように、本実施例では、合焦候補点間においてはフォーカスレンズ群111の駆動速度を速くし、合焦候補点近傍においてはフォーカスレンズ群111の駆動速度を遅くすることによって、合焦点を素早くかつ高精度に検出することが可能となる。
なお、本実施例では、図21のフローチャートにおいて、コントラスト評価値を用いて合焦候補点C(i)の近傍を山登り判定する例を述べたが、図10のフローチャートのステップS152、S153、S154、S155を適用させて、合焦点を詳細にサーチしても良い。
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されないことはいうまでもなく、その要旨の範囲内で種々の変形及び変更が可能である。
例えば、参考例から4に記載した処理を組み合わせて実施しても良い。さらには、複数の撮影シーンに対応するために、切替手段を設けて各処理を切り替えても良い。
なお、本発明では、結像光学系内に分岐手段を設け、分岐光束を用いた焦点検出部を構成する例を示したが、ハーフミラー121を構成せず、焦点検出部122をオートフォーカス装置100の外部に構成し、外光による光束を用いて焦点を検出するようにしても良い。
また、本発明では、結像光学系内に分岐手段を設け、分岐光束を用いた焦点検出部を構成する例を示したが、ハーフミラー121を構成せず、撮像素子140と焦点検出部122をひとつの装置に構成しても良い。
さらに、本発明では、図1に示したように、スイッチ201を除いて各構成要素をオートフォーカス装置100内部に構成したが、別々の装置に分散させても良い。また、位相差焦点演算部131とコントラスト焦点演算部132とデフォーカス量演算部133とレンズ制御部134をひとつのCPU150内に構成したが、別々のCPUや演算装置に分散させても良いし、オートフォーカス装置100外部に構成しても良い。
また、本発明では、映像信号の更新周期を16[ms]としたが、16[ms]に限定されないことはいうまでもなく、様々な映像信号の更新周期に対応して本発明を実施して良い。