以下、本発明の実施の形態による焦点調整装置を備える撮像装置の一例について図面を参照して説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態による焦点調整装置を備える撮像装置の一例についてその構成を示すブロック図である。
<撮像装置全体の構成>
図示の撮像装置は、例えば、デジタルカメラ(以下単にカメラと呼ぶ)であり、所謂動画撮影機能を有している。システム制御部115はカメラ全体の制御を司り、例えば、CPU、RAM、およびROMを有している。そして、CPUはROMに予め記録されたプログラムに従ってRAMを作業領域として用い、カメラの動作を制御する。
後述するように、システム制御部115は、AF処理部105によって算出された焦点評価値に基づいて合焦位置(焦点位置ともいう)を特定する。そして、システム制御部115はフォーカスレンズ制御部104を制御してフォーカスレンズを光軸に沿って移動させて、自動焦点調整(AF)処理を行う。なお、焦点評価値は測距領域におけるコントラストの指標となる数値である。
撮影レンズユニット(以下単に撮影レンズと呼ぶ)100は、ズーム機能を備えている。ズームレンズ制御部101は、システム制御部115の制御下で焦点距離を変化させるズームレンズを駆動制御する。
絞り・シャッタ制御部102は、システム制御部115の制御下で光量を調節する絞りとシャッタとを駆動制御する。フォーカスレンズ制御部104は、システム制御部115の制御下でフォーカスレンズを駆動制御して、撮像素子108の受光面(撮像面ともいう)に焦点を合わせる。
なお、図示はしないが、ズームレンズ制御部101、絞り・シャッタ制御部102、およびフォーカスレンズ制御部104は、レンズなどの光学要素、絞り・シャッタなどの機構、そして、これらを駆動するために必要な各種装置を備えている。各種装置には、光学要素および上記の機構を駆動するためのアクチュエータ、当該アクチュエータを制御するための回路、およびD/A変換器などが含まれる。
発光装置(ストロボ)106は、周囲に向けて光を発して被写体の輝度を調整する。EF処理部107は、システム制御部115からフラッシュオン信号を受けると、ストロボ106を制御して発光させる。システム制御部115は、ストロボ106を発光させる必要があると判断すると、EF処理部107に前述のフラッシュオン信号を送る。
撮像素子108は、入射光(光学像)に応じた電気信号(アナログ信号)を出力する。例えば、撮像素子108は、CCD又はCMOSイメージセンサであり、複数の光電変換素子を備えて、入射光を光電変換してアナログ信号である撮像信号(画像信号)を生成する。
撮像処理部109は、CDS(相関2重サンプリング)回路、非線形増幅回路、およびA/D変換部を備えている。CDS回路は、撮像素子108の出力である撮像信号におけるノイズを相関2重サンプリングによって除去する。非線形増幅回路は、ノイズが除去された撮像信号について信号増幅(ゲイン制御)を行う。そして、A/D変換部は、信号増幅された撮像信号をデジタル信号(画像データ)に変換する。
なお、撮像素子108および撮像処理部109が被写体の撮像によって画像データを得る撮像部として機能する。
画像処理部110は、画像データについてガンマ補正および輪郭補正などの所定の画像処理を行う。さらに、画像処理部110は、WB処理部111の制御によって画像データに対してホワイトバランス処理を行う。
フォーマット変換部112は、画像処理部110の出力である処理済み画像データを、記録および表示に適合するフォーマットにフォーマット変換する。
DRAM(ランダムアクセスメモリ)113は、高速の内蔵メモリであって、フォーマット変換された画像データ(変換済み画像データ)を一時的に記憶する高速バッファとして用いられる。また、DRAM113は、変換済み画像データを圧縮・伸張する際の作業用メモリとしても用いられる。
画像記録部114は、メモリカードなどの記録媒体およびインターフェースを備えており、画像記録部114にはDRAM113に記憶された変換済み画像データが記録される。
AE処理部103は、撮像処理部109の出力である画像データに基づいて被写体の明るさに応じた測光値を求める。つまり、AE処理部103と撮像処理部109とは被写体を撮影する際の露出条件を検出する露出条件検出部として機能する。
また、AE処理部103は、被写体の輝度が低い場合(所定の輝度レベル未満である場合)に、撮像信号を増幅して適正露出を維持するための信号増幅量(ゲイン量)を決定する。言い換えると、AE処理部103は、撮像信号を適正な露出に補正するための信号増幅量(ゲイン量)を決定する。
システム制御部115は、AE処理部103で求められた測光値に基づいて、絞り・シャッタ制御部102と撮像処理部109の非線形増幅回路とを制御する。これによって、システム制御部115は、露光量を自動的に調整する。つまり、システム制御部115は、露出条件検出部であるAE処理部103が検出した露出条件(つまり、測光値)を用いて自動露出(AE)処理を行うことになる。
AF処理部105は、撮像処理部109の出力である画像データに応じてAF評価値を求める。そして、システム制御部115は、当該AF評価値に応じてフォーカスレンズ制御部104を制御し自動焦点調整(AF)処理を行う。
図2は、図1に示すAF処理部105の構成についてその一例を示すブロック図である。
AF処理部105は測距ゲート122を有しており、測距ゲート122は画像データについてその画面の一部(例えば、AF枠で示される領域)を抽出する(以下この画像データを抽出画像データと呼ぶ)。そして、この抽出画像データはバンドパスフィルタ(BPF)123およびローパスフィルタ(LPF)125に与えられる。
BPF123は所定の周波数帯域の高周波成分を抽出して、当該高周波成分を検出(検波)部(DET)124に送る。DET124は、当該高周波成分についてピークホールド処理および積分処理を行って、その積分処理結果をAF評価値として出力する。
図示のAF処理部105は、画像データについてどの程度ピントが合っているかを示す合焦度を求める。前述のように、抽出画像データはLPF125に与えられ、LPF125は所定の低周波成分のみを通過させる。つまり、LPF125は高域周波成分を除去して低周波成分をライン最大値部(Line・Max)126およびライン最小値部(Line・Min)127に送る。
Line・Max126は水平1ラインにおける最大値を検出し、一方、Line・Min127は水平1ラインにおける最小値を検出する。
加算部128は水平1ラインの最大値と最小値との差分(最大値−最小値)を求める。そして、ピークホールド部(Peak Hold)129は、加算部128から水平1ライン毎の差分を受けて、抽出画像データにおける全てのラインにおいて差分(最大値−最小値)のピーク値MMを検出する。このピーク値MMは抽出画像データにおけるコントラストの最大値に相当する。
除算部130には、前述のAF評価値(ここでは、ピークホールド値)が与えられるとともに、ピーク値MMが与えられる。除算部130はそして、ピークホールド値をピーク値MMで除算して、当該除算結果を合焦度として出力する。
図3は、図1で説明したフォーカスレンズの位置(レンズ位置)とAF評価値および合焦度との関係を説明するための図である。そして、図3(a)はレンズ位置とAF評価値との関係を示す図であり、図3(b)はレンズ位置と合焦度との関係を示す図である。
前述のように、AF評価値は積分処理結果であるので、ノイズなどの影響を受けにくいものの、被写体の種類および撮像条件(例えば、被写体輝度、照度、焦点距離)に応じて合焦位置における値が大きく変化する(図3(a)参照)。つまり、図示の領域AではAF評価値は極めて高くなるものの、領域BではAF評価値の変化が激しい。また、領域Cにおいては、AF評価値は低い。
一方、合焦度は正規化することによって、合焦位置においては所定の値(図3(b)に示すMax)に近づき、画像がボケるにつれてその値が小さくなる傾向を示す。このため、後述するように、自動焦点調整処理(AF処理)の際にはAF評価値および合焦度を用いて、AF処理が行われる。
再び図1を参照して、VRAM(画像表示用メモリ)116には、フォーマット変換された画像データ(ここでは、表示用画像データ)が記録される。操作表示部117は、システム制御部115の制御下で画像表示、操作補助のための表示、およびカメラ状態の表示を行う。
操作表示部117には、撮影の際にはVRAM116に一時的に記録された画像データに応じた画像が撮影画面として表示される。さらに、操作表示部117は、各種ボタンおよびタッチパネルなどを備えており、ユーザは操作表示部117を用いてカメラの操作を行うことができる。
メインスイッチ(メインSW)118は、カメラの電源をON/OFFするためのスイッチである。第1のスイッチ(SW1)119は、AFおよびAEなどの撮影スタンバイ動作(撮影準備動作)を行うためのスイッチである。第2のスイッチ(SW2)120は、第1のスイッチ119が操作された後、撮像を行う際に操作されるスイッチである。
<基本動作>
図4は、図1に示すカメラで行われる焦点調整処理の一例を説明するためのフローチャートである。
図示のフローチャートに係る処理はカメラによる動画記録中および待機中に継続して行われる。さらに、当該フローチャートに係る処理はコンピュータプログラム(ソフトウェア)としてシステム制御部115に備えられたROMに記憶されている。そして、メインSW118の操作によって電源が投入されて、カメラが起動した後に、システム制御部115はROMに記憶されたプログラムに応じて処理を実行する。
焦点調整処理を開始すると、システム制御部115はまず、後述する微小駆動動作を行う(ステップS200)。ここで、微小駆動動作とは、断続的に少しずつフォーカスレンズを光軸に沿って移動させて、断続的に得られるAF評価値の変化に応じて合焦位置の方向および合焦位置(焦点位置ともいう)を特定することをいう。
微小駆動動作によって合焦位置の方向および合焦位置を特定した後、システム制御部115は、後述する被写体指定処理を行う(ステップS201)。被写体指定処理においては、操作表示部117に備えられたタッチパネルを用いてユーザが画面における被写体を指定すると、焦点調整動作によって合焦させる被写体が設定される。
さらに、被写体指定処理においては、図2で説明した測距ゲート122によって抽出される画像データの一部領域(例えば、AF枠の領域)が設定される。加えて、被写体指定処理においては、後述するように、焦点調整動作の状態遷移が変更される。
続いて、システム制御部115は、ステップS200およびS201の処理結果に応じてAF評価値監視処理に遷移するか否かを判定する(ステップS202)。AF評価値監視処理に遷移しないと判定すると(ステップS202において、NO)、システム制御部115は山登り動作に遷移するか否かを判定する(ステップS203)。山登り動作に遷移しないと判定すると(ステップS203において、NO)、システム制御部115はステップS200の処理に戻って微小駆動動作を継続する。
山登り動作に遷移すると判定すると(ステップS203において、YES)、システム制御部115は、後述する山登り動作を行う(ステップS204)。ここで、山登り動作とは、連続的にフォーカスレンズを光軸に沿って移動させた結果得られた複数のAF評価値の変化に応じて合焦位置を特定する手法である。
ステップS204の処理の後、システム制御部115は、後述する被写体指定処理を行う(ステップS205)。ステップS205における被写体指定処理では、操作表示部117に備えられたタッチパネルを用いてユーザが画面上の被写体を指定したか否かに応じて、焦点調整動作の状態遷移が変更される。
続いて、システム制御部115はステップS204およびS205の処理結果に応じて微小駆動動作に遷移するか否かを判定する(ステップS206)。微小駆動動作に遷移しないと判定すると(ステップS206において、NO)、システム制御部115はAF評価値監視処理に遷移するか否かを判定する(ステップS207)。
AF評価値監視処理に遷移しないと判定すると(ステップS207において、NO)、システム制御部115はステップS204の処理に戻って山登り動作を行う。一方、AF評価値監視処理に遷移すると判定すると(ステップS207において、YES)、システム制御部115はAF固定フラグの状態を判定する(ステップS208)。ここでは、システム制御部115はAF固定フラグがFALSEであるか否かを判定する。
ここで、AF固定フラグは被写体指定処理において設定されるフラグである。そして、AF固定フラグの状態に応じて、システム制御部115はAF評価値監視処理の遷移を継続するか又はAF評価値監視処理に遷移せずにAFを固定して焦点調整動作を終了するかを決定する。
AF固定フラグがFALSEであると(ステップS208において、YES)、システム制御部115は、前述のステップS200で特定した合焦位置又は非合焦として中断したレンズ位置におけるAF評価値を記憶する(ステップS209)。そして、システム制御部115はAF評価値監視処理を行う(ステップS210)。
ステップS210で行われるAF評価値監視処理では、システム制御部115は、記憶したAF評価値と周期的に得られるAF評価値とを比較して、その変化を監視する。
続いて、システム制御部115は被写体指定処理を行う(ステップS211)。ステップS211における被写体指定処理では、操作表示部117に備えられたタッチパネルを用いてユーザが被写体を指定したか否かに応じて焦点調整動作の状態遷移が変更される。
ステップS211の処理の後、システム制御部115はステップS210およびS211の処理結果に応じて微小駆動動作に遷移するか否かを判定する(ステップS212)。微小駆動動作に遷移すると判定すると(ステップS212において、YES)、システム制御部115は、ステップS200の処理に戻って微小駆動動作を行う。
一方、微小駆動動作に遷移しないと判定すると(ステップS212において、NO)、システム制御部115は、ステップS210の処理に戻ってAF評価値監視処理を行う。
AF固定フラグがFALSEでないと(ステップS208において、NO)、つまり、AF固定フラグがTRUEであると、システム制御部115は、AF固定フラグをFALSEとして(ステップS213)、AFを固定する(ステップS214)。そして、システム制御部115は焦点調整処理を終了する。
なお、ステップS206において、微小駆動動作に遷移すると判定すると(ステップS206において、YES)、システム制御部115はステップS200の処理に戻って微小駆動動作を行う。また、ステップS202において、AF評価値監視処理に遷移すると判定すると(ステップS202において、YES)、システム制御部115はステップS208の処理に進んで、AF固定フラグがFALSEであるか否かを判定する。
このように、焦点調整処理においては、システム制御部115は微小駆動動作、山登り動作、およびAF評価値監視処理のいずれかを選択して、様々なシーンの変化に応じて合焦状態を維持するようにフォーカスレンズを制御することになる。
<微小駆動動作>
図5は、図4に示す微小駆動動作の一例を説明するためのフローチャートである。
前述したように、微小駆動動作とは、断続的に少しずつフォーカスレンズを光軸に沿って移動させた結果得られたAF評価値の変化に応じて合焦位置の方向および合焦位置を特定する手法である。
微小駆動動作を開始すると、システム制御部115は、AF処理部105からAF評価値を取得する(ステップS300)。続いて、システム制御部115は、AF処理部105から合焦度を取得する(ステップS301)。
次に、システム制御部115は微小駆動におけるフォーカスレンズの移動量を設定する(ステップS302)。ここでは、合焦位置に近づく程、フォーカスレンズの移動量を小さくし、合焦位置から外れる程フォーカスレンズの移動量を大きくして微小駆動動作において安定したピント追従を行う。
このため、システム制御部115はステップS301で取得した合焦度(つまり、現在の合焦度)に応じてフォーカスレンズの移動量を設定する。
図3(b)を参照して、例えば、合焦度に関して第1の合焦閾値α、第2の合焦閾値β、および第3の合焦閾値γが設定されて、α>β>γの関係にあるものとする。この第1〜第3の合焦閾値α〜γを用いて、システム制御部115は次のようにフォーカスレンズの移動量を設定する。
合焦度>αの場合、システム制御部115はフォーカスレンズの移動量を移動量Step1とする。α≧合焦度>βの場合、システム制御部115はフォーカスレンズの移動量を移動量Step2とする。β≧合焦度>γの場合、システム制御部115はフォーカスレンズの移動量を移動量Step3とする。そして、γ≧合焦度の場合、システム制御部115はフォーカスレンズの移動量を移動量Step4とする。
なお、Step1<Step2<Step3<Step4である。
次に、システム制御部115は現在のAF評価値が(直前のAF評価値+変化閾値A)よりも大きいか否かを判定する(ステップS303)。ここで変化閾値AはAF評価値が明確に上昇したと判定するための閾値であって、AF評価値の増加量に加えてノイズ成分によるばらつきを考慮して設定される。
現在のAF評価値>直前のAF評価値+変化閾値Aであると(ステップS303において、YES)、システム制御部115は内蔵する方向特定カウンタをインクリメントする(ステップS304)。この方向特定カウンタは合焦位置の方向を特定するためのものであり、方向特定カウンタのカウント値が大きくなる程合焦位置に向けて安定してAF評価値が増加していることを示している。
続いて、システム制御部115はフォーカスレンズ制御部104を制御して、ステップS302で設定した移動量に応じて現在のレンズ位置からフォーカスレンズを光軸に沿って移動させる(ステップS305)。この際、その移動方向は直前の移動方向と同一とされる。
一方、現在のAF評価値≦直前のAF評価値+変化閾値Aであると(ステップS303において、NO)、システム制御部115は現在のAF評価値が(直前のAF評価値−変化閾値A)よりも大きいか否かを判定する(ステップS306)。ステップS306の処理では、システム制御部115はAF評価値の減少傾向を検出することになる。
現在のAF評価値≧直前のAF評価値−変化閾値Aであると、ステップS302で設定した移動量に応じて現在のレンズ位置からフォーカスレンズを光軸に沿って移動させる(ステップS307)。ステップS307では、システム制御部115がフォーカスレンズ制御部104を制御して、フォーカスレンズを光軸に沿って移動させる。
この際、明示的なAF評価値の増減が検出できないので、システム制御部115は方向特定カウンタによるカウントを行わない。
現在のAF評価値<直前のAF評価値−変化閾値Aであると(ステップS306において、YES)、システム制御部115は方向特定カウンタをクリアする(ステップS308)。そして、システム制御部115はフォーカスレンズ制御部104を制御して直前の移動方向とは反対方向に、ステップS302で設定した移動量に応じて現在のレンズ位置からフォーカスレンズを光軸に沿って移動させる(ステップS309)。
ステップS305、S307、又はS309の処理に続いて、システム制御部115は所定の回数、同一のエリア内でフォーカスレンズを往復したか否かを判定する(ステップS310)。
図3(a)を参照して、例えば、領域Aで示すように合焦位置の近傍までレンズ位置が収束した場合には、微小駆動動作において合焦位置を通過するとAF評価値が減少するので、次の制御タイミングでAF評価値は反転することになる。そして、微小駆動動作を継続すると、最終的に合焦位置を跨いでフォーカスレンズが往復動作することになる。よって、所定の回数同一エリア内でフォーカスレンズが往復していれば、フォーカスレンズが合焦位置にあると推定することができる。
再び図5を参照して、所定の回数同一のエリア内でフォーカスレンズが往復していないと(ステップS310において、NO)、システム制御部115は方向特定カウンタのカウント値が所定のカウント値以上であるか否かを判定する(ステップS311)。方向特定カウンタのカウント値が所定のカウント値未満であると(ステップS311において、NO)、一連の微小駆動動作を所定の回数行い、かつステップS301で取得した合焦度が所定の閾値よりも低いか否かを判定する(ステップS312)。
図3(a)を参照すると、例えば、領域CのようにAF評価値の変化が乏しい領域(エリア)においては、所定の回数以内で合焦位置およびその方向が特定できないことがある。つまり、領域Cのようにサーチ範囲が広く、しかも合焦位置から現在のレンズ位置が離れすぎていると合焦位置を探索することが困難となるか又はサーチ範囲外に合焦位置が存在することがある。このような状況では、微小駆動動作を継続しても合焦位置とその方向を探索することは困難である。
再び図5を参照して、一連の微小駆動動作が所定の回数行われ、かつ合焦度が所定の閾値よりも低い状態でないと(ステップS312において、NO)、システム制御部115は微小駆動動作を継続すると判定して(ステップS313)、焦点調整処理に戻る。
一連の微小駆動動作が所定の回数行われ、かつ合焦度が所定の閾値よりも低い状態であると(ステップS312において、YES)、システム制御部115は非合焦と判定し、微小駆動動作から山登り動作に遷移する(ステップS314)。そして、システム制御部115は焦点調整処理に戻る。
方向特定カウンタのカウント値が所定のカウント値以上であると(ステップS311において、YES)、システム制御部115は方向特定と判定し、微小駆動動作から山登り動作に遷移する(ステップS315)。そして、システム制御部115は焦点調整処理に戻る。
所定の回数同一のエリア内でフォーカスレンズが往復していると(ステップS310において、YES)、システム制御部115は合焦と判定し、微小駆動動作からAF評価値監視処理に遷移する(ステップS316)。そして、システム制御部115は焦点調整処理に戻る。
なお、ステップS310〜S316までの処理では、システム制御部115は周期的に得られるAF評価値の変化を検出して、当該検出結果に基づいて微小駆動動作における判定を行う。
<山登り動作>
図6は、図4に示す山登り動作の一例を説明するためのフローチャートである。
前述のように、山登り動作とは、連続的にフォーカスレンズを光軸に沿って移動させた結果得られた複数のAF評価値の変化に応じて合焦位置を特定する手法である。
山登り動作を開始すると、システム制御部115はAF処理部105からAF評価値および当該AF評価値に対応するフォーカスレンズの位置(レンズ位置)を取得する(ステップS400)。次に、システム制御部115はAF処理部105から合焦度を取得する(ステップS401)。
続いて、システム制御部115は合焦度に応じて山登り動作におけるフォーカスレンズの移動速度(レンズ速度)を設定する(ステップS402)。ここでは、フォーカスレンズが合焦位置に近づく程レンズ速度を遅くし、フォーカスレンズが合焦位置を外れる程レンズ速度を速くして山登り動作において安定してピント追従が行えるようにする。
図3(b)を参照して、前述のように、第1の合焦閾値α>第2の合焦閾値β>第3の合焦閾値γであるとすると、レンズ速度は次のようになる。
合焦度>αの場合、システム制御部115はレンズ速度を速度Speed1とする。α≧合焦度>βの場合、システム制御部115はレンズ速度を速度Speed2とする。β≧合焦度>γの場合、システム制御部115はレンズ速度を速度Speed3とする。そして、γ≧合焦度の場合、システム制御部115はレンズ速度を速度Speed4とする。
なお、Speed1<Speed2<Speed3<Speed4である。
再び図6を参照して、レンズ速度を設定した後、システム制御部115はフォーカスレンズが停止中であるか否かを判定する(ステップS403)。なお、フォーカスレンズは、微小駆動動作から山登り動作に遷移した直後又は山登り動作中にフォーカスレンズがサーチ範囲の端に到達した場合のいずれかに停止中となる。
フォーカスレンズが停止中であると(ステップS403において、YES)、システム制御部115は現在のレンズ位置が移動端であるか否かを判定する(ステップS405)。レンズ位置が移動端でないと(ステップS405において、NO)、システム制御部115はフォーカスレンズが微小駆動動作から山登り動作に遷移した直後であると判断する。そして、微小駆動動作における進行方向を指定方向として引き継いでフォーカスレンズを移動させる(ステップS406)。
レンズ位置が移動端であると(ステップS405において、YES)、システム制御部115は今までの進行方向とは反対方向にフォーカスレンズを移動させる(ステップS407)。
ステップS406又はS407の処理に続いて、システム制御部115はフォーカスレンズが所定の回数、移動端に到達したか否かを判定する(ステップS408)。なお、フォーカスレンズが停止中でないと(ステップS403において、NO)、システム制御部115はステップS408の処理に進む。そして、フォーカスレンズが所定の回数移動端に到達すると(ステップS408において、YES)、システム制御部115は、フォーカスレンズ制御部104によってフォーカスレンズを停止する(ステップS409)。
図3(a)を参照して、少なくともサーチ範囲の両方の端(移動端)に到達しても、合焦位置が特定できない場合には、サーチ範囲全域が領域CのようにAF評価値の変化が乏しい領域であって、合焦位置はフォーカスレンズのサーチ範囲外に存在すると推定できる。このような状況下で山登り動作を継続すると、ピント変動が大きくなってピント変動の大きな状態が繰り返されることになる。
このような状態を回避するため、前述のように、フォーカスレンズが所定の回数移動端に到達すると、システム制御部115は、フォーカスレンズ制御部104によってフォーカスレンズを停止する。そして、システム制御部115は山登り動作における判定結果を非合焦として、AF評価値監視処理に遷移し(ステップS410)、焦点調整処理に戻る。
一方、フォーカスレンズが所定の回数移動端に到達しないと(ステップS408において、NO)、システム制御部115は、現在のAF評価値と直前のAF評価値とを比較する。そして、現在のAF評価値が直前のAF評価値よりも大きいか否かを判定する(ステップS411)。現在のAF評価値>直前のAF評価値であると(ステップS411において、YES)、システム制御部115は山登り動作を継続すると判断して、山登り動作を続行する(ステップS412)。そして、システム制御部115は焦点調整処理に戻る。
図3(a)に示すように、領域Bにおいて合焦位置の方向に正しく山登り動作を行っている場合などAF評価値の増加傾向が検出できる場合には、当該方向に向けて山登り動作が行われることになる。
現在のAF評価値≦直前のAF評価値であると(ステップS411において、NO)、システム制御部115はAF評価値がピークを越えて減少したか否かを判定する(ステップS413)。AF評価値がピークを越えて減少すると(ステップS413において、YES)、システム制御部115はフォーカスレンズ制御部104によってフォーカスレンズを停止させる(ステップS414)。
例えば、図3(a)に示す領域Bから領域Aに向けて山登り動作を行う場合には、AF評価値がピークを越えて減少することになる。
ステップS414の処理の後、システム制御部115は山登り動作における判定結果を合焦として、微小駆動動作に遷移する(ステップS415)。そして、システム制御部115は、フォーカスレンズ制御部によってフォーカスレンズをAF評価値がピークを示す位置に移動させて(ステップ416)、焦点調整処理に戻る。
一方、AF評価値がピークを越えて減少しないと(ステップS413において、NO)、システム制御部115はフォーカスレンズの移動方向を反転して、反対方向にフォーカスレンズを移動させる(ステップS417)。
例えば、図3(a)に示す領域Bにおいて合焦位置とは反対方向に山登り動作が行われると、AF評価値がピークを越えて減少しないことになる。
ステップS417の処理の後、システム制御部115は山登り動作を継続すると判断して、山登り動作を続行する(ステップS418)。そして、システム制御部115は焦点調整処理に戻る。
なお、ステップS408〜S418までの処理は、周期的に得られるAF評価値の変化を検出して、当該変化に基づいて山登り動作における判定を行う。
<AF評価値監視処理>
図7は、図4に示すAF評価値監視処理の一例を説明するためのフローチャートである。なお、前述のように、AF評価値監視処理とは、予め記憶されたAF評価値に対して現在のAF評価値が変動したか否かを検出するための処理である。
AF評価値監視処理を開始すると、システム制御部115はAF処理部105からAF評価値(これは最新のAF評価値である)を取得する(ステップS500)。次に、システム制御部115は図4に示すステップS209で記憶したAF評価値と最新のAF評価値とを比較して、その差分である変動量(変動値)が予め定められた変動閾値よりも大きいか否かを判定する(ステップS501)。
変動量が変動閾値よりも大きいと(ステップS501において、YES)、つまり、AF評価値が大きく変動していると、システム制御部115は微小駆動動作に遷移する(ステップS502)。そして、システム制御部115は焦点調整処理に戻る。
変動量が変動閾値以下であると(ステップS501において、NO)、システム制御部115はAF評価値監視処理を継続すると判定して、AF評価値監視処理を続行する(ステップS503)。そして、システム制御部115は焦点調整処理に戻る。
上述の説明から容易に理解できるように、図4に示すステップS209〜ステップS212の処理において、AF評価値の変動が小さく安定している場合にはAF評価値監視処理が周期的に継続して行われることになる。
<被写体指定処理>
図8は、図4に示す被写体指定処理の一例を説明するためのフローチャートである。
前述のように、被写体指定処理では、ユーザの操作によって被写体が指定された際に焦点調整動作(焦点調整処理)によって合焦させる被写体を設定する。そして、さらに測距ゲート122(図2)で抽出する画像データの領域(AF枠の領域)を設定する。そして、焦点調整動作における状態遷移を変更する。
被写体指定処理を開始すると、システム制御部115は操作表示部117に備えられたタッチパネルによってユーザが画面上の被写体を指定したか否かを判定する(ステップS600)。ユーザ操作によって被写体が指定されると(ステップS600において、YES)、システム制御部115は焦点調整動作における遷移すべき状態を微少駆動動作に設定する(ステップS601)。
続いて、システム制御部115は、AF枠自動モード(第2の焦点調整モード)であるか又はAF枠指定モード(第1の焦点調整モード)であるかを判定する(ステップS602)。AF枠自動モード(第2の焦点調整モード)では、AF枠設定モードがAF枠の位置を画像データから検出した被写体(検出被写体)の位置に自動的に設定する。また、AF枠指定モード(第1の焦点調整モード)では、AF枠の位置をユーザが指定した位置に設定する。
AF枠設定モードがAF枠指定モードであると(ステップS602において、YES)、システム制御部115は、ユーザが指定した位置にAF枠を設定し(ステップS603)、AF固定フラグをTRUEに設定する(ステップS604)。そして、システム制御部115は焦点調整処理に戻る。
なお、システム制御部115はAF枠指定モードおよびAF枠自動モードを選択的に行う。
一方、AF枠モードがAF枠自動モードであると(ステップS602において、NO)、システム制御部115は焦点調整動作で合焦させる被写体をユーザが指定した被写体に設定する(ステップS605)。その後、システム制御部115はAF固定フラグをFALSEに設定して(ステップS606)、焦点調整処理に戻る。
なお、AF固定フラグはDRAM113に保存される。また、ユーザ操作によって被写体が指定されないと(ステップS600において、NO)、システム制御部115は焦点調整処理(焦点調整動作)に戻る。
このようにして、ユーザ操作によって被写体が指定されると、焦点調整動作で合焦させる被写体又はAF枠の位置を設定するとともに、焦点調整動作を微少駆動動作に遷移させる。そして、システム制御部115は指定された被写体又はAF枠の位置に対して焦点調整動作をやり直すことになる。
<焦点調整動作状態遷移>
図9は、図1に示すカメラで行われる焦点調整動作における状態遷移の一例を説明するための遷移図である。
いま、動画モードでカメラが起動されると、焦点調整動作における動作状態が微少駆動動作状態に遷移し、前述の微少駆動動作が行われる。微少駆動動作状態においては図4に示すステップS200〜S203の一連の処理が繰り返して行われる。
当該処理中に山登り動作状態に遷移する遷移条件が成立すると、焦点調整動作における動作状態は山登り動作状態に遷移する。また、図4に示すステップS200〜S203の一連の処理中にAF評価値監視状態に遷移する遷移条件が成立すると、焦点調整動作における動作状態はAF評価値監視状態に遷移する。
山登り動作状態においては、図4に示すステップS204〜S207の一連の処理が繰り返して行われる。当該処理中に微少駆動動作状態に遷移する遷移条件が成立すると、焦点調整動作における動作状態は微少駆動動作状態に遷移する。
また、図4に示すステップS204〜S207の一連の処理中にAF評価値監視処理状態に遷移する遷移条件が成立すると、焦点調整動作における動作状態はAF評価値監視処理状態に遷移する。
AF評価値監視処理状態においては、図4に示すステップS210〜S212の一連の処理が繰り返して行われる。当該処理中に微少駆動動作状態に遷移する遷移条件が成立すると、焦点調整動作における動作状態は微少駆動動作状態に遷移する。
このようにして、焦点調整動作においては、その動作状態が遷移条件に応じて微小駆動動作状態、山登り動作状態、又はAF評価値監視状態に継続的に遷移しつつ、様々なシーンの変化に応じて合焦状態を維持する。
ここで、焦点調整動作の際に操作表示部117に備えられたタッチパネルをユーザが操作して被写体が指定されると、図8に示すステップS601〜S606の一連の処理が行われる。当該処理によって焦点調整動作における動作状態は微少駆動動作状態に遷移し、ユーザによって指定された被写体に対して焦点調整動作がやり直される。また、AF枠設定モードがAF枠指定モードであると、AF固定フラグがTRUEに設定される。
そして、微少駆動動作状態から始まる焦点調整動作の一連の状態遷移を経て焦点調整動作がやり直された後、AF評価値監視処理状態に遷移する。この際、AF固定フラグがTRUEに設定されていると、焦点調整動作は停止されてAF固定状態となる。
図4に示すフローチャートにおいては、ステップS202又はステップS207においてAF評価値監視処理状態に遷移する場合、ステップS208においてDRAM113に保存されたAF固定フラグの状態が判定される。
AF固定フラグがTRUEであると、ステップS213においてAF固定フラグがFALSEに設定された後、ステップS214においてAFが固定(焦点調整動作を停止)されて焦点調整動作が終了する。
以上のように、微少駆動動作、山登り動作、又はAF評価値監視処理を継続的に実施中にユーザから被写体を指示されると、再度一連の焦点調整動作が行われて指定された被写体に対して焦点を調整した後にAFが固定される。
なお、AF固定状態で被写体が指定された場合には、図9に示すように焦点調整動作における動作状態が微少駆動状態に遷移して焦点調整動作が再開されることになる。
このように、本発明の第1の実施形態では、焦点調整動作(焦点調整処理)中にユーザの操作によって被写体が指示されると、再度一連の焦点調整動作が行われて指定された被写体に対して焦点が調整された後にAFが固定される。
これによって、カメラのブレなどが画像に影響を与えるような状況下でAF評価値が期待した変化傾向を示さない場合であっても、操作性を損なうことなくユーザが意図した被写体にピントを合わせることができる。
[第2の実施形態]
続いて、本発明の第2の実施形態による焦点調整装置を備えるカメラについて説明する。なお、第2の実施形態に係るカメラの構成は図1および図2に示すカメラと同様である。
図10は、本発明の第2の実施形態に係るカメラで行われる焦点調整動作における状態遷移の一例を説明するための遷移図である。
ここでは、動画記録中(つまり、動画データ記録中)および待機中における微少駆動動作および山登り駆動動作において、カメラのブレなどの影響によって所定の時間が経過しても合焦しない場合の焦点調整動作における状態遷移を説明する。それ以外の状態遷移については第1の実施形態と同様であるので説明を省略する。
図10において、微少駆動動作状態又は山登り動作状態において所定の時間が経過しても合焦しない場合には、システム制御部115はタイムアウトとして焦点調整動作を停止しAF固定状態とする。
これによって、カメラのブレなどの影響によって所定の時間が経過しても合焦しない場合には、その時点におけるピント位置にAFが固定されて、焦点調整動作が迷走することを防止することができる。
上述の被写体指定処理において、合焦度(AF評価値の信頼性)の度合いに応じてAF固定フラグを設定するようにしてもよい。例えば、合焦度が所定値よりも高い場合にはAF固定フラグをTRUEに設定する。一方、合焦度が所定値以下の場合にはAF固定フラグをFALSEに設定する。
これによって、AF評価値の信頼性が低い場合には、ユーザによって被写体が指示されて再度一連の焦点調整動作を行い、指定された被写体に対して焦点を調整した後にAFが固定されることなく焦点調整動作が継続して行われることになる。
この結果、AF評価値が期待した変化傾向を示さない場合であっても、ユーザが意図した被写体にピントを合わせることが可能となる。
さらに、被写体指定処理において、絞りの絞り込み量に応じてAF固定フラグを設定するようにしてもよい。例えば、絞り込み量が大きく被写界深度が深いことによって焦点調整の精度が比較的要求されない場合には、AF固定フラグをTRUEに設定する。一方、絞り込み量が小さく被写界深度が浅いことによって焦点調整の精度が要求される場合にはAF固定フラグをFALSEに設定する。
これによって、焦点調整の精度が要求される場合には、ユーザが被写体を指示して再度一連の焦点調整動作を行い、指定された被写体に対して焦点が調整された後AFが固定されることなく焦点調整動作が継続して行われる。
この結果、絞り込み量が小さく被写界深度が浅いことによって焦点調整の精度が要求される場合であっても、ユーザが意図した被写体にピントを合わせることが可能となる。
加えて、被写体指定処理において、システム制御部115は画像データに応じて被写体が動体か否かを判定してAF固定フラグを設定するようにしてもよい。例えば、被写体が動体でない場合にはAF固定フラグをTRUEに設定し、被写体が動体である場合にはAF固定フラグをFALSEに設定する。
これによって、被写体が動体である場合に、ユーザが被写体を指示して再度一連の焦点調整動作を行い指定された被写体に対して焦点が調整された後AFが固定されることなく焦点調整動作が継続して行われる。
この結果、動いている被写体(動体)が指定された場合であっても、ユーザが意図した被写体にピントを合わせることが可能となる。
また、被写体指定処理において、加速度センサなどを用いてカメラが三脚などに固定されているか否かを判定してAF固定フラグを設定するようにしてもよい。例えば、カメラが三脚に固定されている場合にはAF固定フラグをTRUEに設定し、カメラが三脚等に固定されていない場合にはAF固定フラグをFALSEにする。
これによって、カメラのブレなどによってAF評価値が期待した変化傾向を示さない場合に、ユーザが被写体を指示して再度一連の焦点調整動作を行い指定された被写体に対して焦点が調整された後AFが継続して行われる。
この結果、AF評価値が期待した変化傾向を示さない場合であっても、ユーザが意図した被写体にピントを合わせることが可能となる。
なお、AFを固定する場合には絞りを所定量絞り込むようにすれば、被写界深度を深く設定してAFを固定した後のピント変動をある程度許容することができる。
このようにして、本発明の実施の形態では、ブレなどによって映像に影響が生じる状況下において操作性を損なうことなくユーザが意図した被写体にピントを合わせることができる。
上述の説明から明らかなように、図1に示す例においては、システム制御部115が制御手段として機能し、AF処理部105が焦点評価値算出手段として機能する。また、システム制御部115およびフォーカスレンズ制御部104が第1の焦点調整手段および第2の焦点調整手段として機能する。
さらに、システム制御部115は動体判定手段として機能し、加速度センサおよびシステム制御部115は固定判定手段として機能する。そして、撮影レンズ、ズームレンズ、絞り・シャッタ、フォーカスレンズは撮像光学系を構成し、撮像素子108および撮像処理部は撮像手段として機能する。
なお、図1に示す例では、少なくともフォーカスレンズ制御部104、AF処理部105、システム制御部115、および操作表示部117が焦点調整装置を構成する。
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
例えば、上記の実施の形態の機能を制御方法として、この制御方法を焦点調整装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムを焦点調整装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
上記の制御方法および制御プログラムの各々は、少なくとも第1の制御ステップおよび第2の制御ステップを有している。
また、本発明は、以下の処理を実行することによっても実現される。つまり上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPUなど)がプログラムを読み出して実行する処理である。