JP2021184101A - 焦点検出装置 - Google Patents
焦点検出装置 Download PDFInfo
- Publication number
- JP2021184101A JP2021184101A JP2021128547A JP2021128547A JP2021184101A JP 2021184101 A JP2021184101 A JP 2021184101A JP 2021128547 A JP2021128547 A JP 2021128547A JP 2021128547 A JP2021128547 A JP 2021128547A JP 2021184101 A JP2021184101 A JP 2021184101A
- Authority
- JP
- Japan
- Prior art keywords
- focus detection
- data
- pixel
- image
- integration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Focusing (AREA)
- Automatic Focus Adjustment (AREA)
- Studio Devices (AREA)
Abstract
【課題】高精度な焦点検出を行なうことが出来る焦点検出装置を提供する。【解決手段】焦点検出装置は、光学系を透過した光を受光して信号を出力する画素を複数有する撮像部と、複数の前記画素から出力された信号を加算する加算部と、前記画素から出力された信号、および前記加算部で加算された信号の少なくとも一方を記録する記録部と、前記加算部で加算された信号に基づいて、前記光学系による像が結像する位置と前記撮像部とのずれ量を検出する検出部と、を備え、前記加算部は、前記加算部で加算された信号の値が所定値未満であるとき、前記加算部は、複数の前記画素から出力された信号と前記記録部に記録された信号とを加算する。【選択図】図9
Description
本発明は焦点検出装置に関する。
マイクロレンズとその背後に配置された一対の光電変換部からなる焦点検出画素を撮影レンズの予定焦点面上に配列する。これにより光学系を通る一対の焦点検出光束が形成する一対の像に応じた一対の像信号を生成する。この一対の像信号間の像ズレ量(位相差)を検出することによって撮影レンズの焦点調節状態(デフォーカス量)を検出する。このような動作を行なう、いわゆる瞳分割型位相差検出方式の焦点検出装置が知られている。
上記のような焦点検出画素と撮像画素とが混在した撮像素子(イメージセンサ)から一定フレーム時間間隔で焦点検出画素および撮像画素の信号を読み出してライブビュー表示と焦点検出とを並行して行なう。それとともに、フレーム毎の焦点検出画素の信号を過去複数フレームに亘って記憶する。最新フレームの焦点検出画素の信号のみでは出力レベルが不足して焦点検出が不能になる場合には、記憶した過去複数フレームに亘る焦点検出画素の信号を加算して時間積算する。こうすることにより、出力レベルが高まった焦点検出画素の信号を用いて焦点検出を行なう焦点検出装置が知られている(例えば、特許文献1参照)。
上述したような焦点検出装置においては、移動する被写体に対して焦点検出結果に誤差を生じる場合があるという問題点があった。
本発明の第1の態様による焦点検出装置は、光学系を透過した光を受光して信号を出力する画素を複数有する撮像部と、複数の前記画素から出力された信号を加算する加算部と、前記画素から出力された信号、および前記加算部で加算された信号の少なくとも一方を記録する記録部と、前記加算部で加算された信号に基づいて、前記光学系による像が結像する位置と前記撮像部とのずれ量を検出する検出部と、を備え、前記加算部は、前記加算部で加算された信号の値が所定値未満であるとき、前記加算部は、複数の前記画素から出力された信号と前記記録部に記録された信号とを加算する。
本発明によれば、高精度な焦点検出を行なうことが出来る。
<第1の実施の形態>
図1は本発明の第1の実施の形態における焦点検出装置を含む撮像装置としてのレンズ交換式デジタルスチルカメラ201の構成を示す横断面図である。デジタルスチルカメラ201は交換レンズ202とカメラボディ203とから構成される。種々の交換レンズ202がマウント部204を介してカメラボディ203に装着される。
図1は本発明の第1の実施の形態における焦点検出装置を含む撮像装置としてのレンズ交換式デジタルスチルカメラ201の構成を示す横断面図である。デジタルスチルカメラ201は交換レンズ202とカメラボディ203とから構成される。種々の交換レンズ202がマウント部204を介してカメラボディ203に装着される。
交換レンズ202は、レンズ209、ズーミング用レンズ208、フォーカシング用レンズ210、絞り211、レンズ駆動制御装置206などを有している。レンズ駆動制御装置206は、不図示のマイクロコンピューター、メモリ、駆動制御回路などから構成される。レンズ駆動制御装置206は、フォーカシング用レンズ210の焦点調節や絞り211の開口径調節のための駆動制御を行なうとともに、ズーミング用レンズ208、フォーカシング用レンズ210および絞り211の状態検出などを行なう。この他、レンズ駆動制御装置206は、後述するボディ駆動制御装置214との通信によりレンズ情報の送信およびカメラ情報の受信を行なう。絞り211は、光量およびボケ量調整のために光軸中心に開口径が可変な開口を形成する。
カメラボディ203は、撮像素子(イメージセンサ)212、ボディ駆動制御装置214、液晶表示素子駆動回路215、液晶表示素子216、接眼レンズ217、メモリカード219などを有している。撮像素子212には、複数の撮像画素が二次元状に配置されるとともに、焦点検出位置に対応した部分に複数の焦点検出画素が組み込まれている。この撮像素子212については詳細を後述する。
ボディ駆動制御装置214は、マイクロコンピューター、メモリ、駆動制御回路などを含む。ボディ駆動制御装置214は、撮像素子212の駆動制御と、画像信号および焦点検出信号の読み出しと、焦点検出信号に基づく焦点検出演算および交換レンズ202の焦点調節とを繰り返し行うとともに、画像信号の処理および記録と、カメラの動作制御などとを行う。ボディ駆動制御装置214は、電気接点213を介してレンズ駆動制御装置206と通信を行い、レンズ情報の受信およびカメラ情報(デフォーカス量や絞り値など)の送信を行う。
液晶表示素子216は、電子ビューファインダー(EVF:Electronic View Finder)として機能する。液晶表示素子駆動回路215は撮像素子212によって得られる画像信号に基づきスルー画像を液晶表示素子216に表示する。撮影者は接眼レンズ217を介してそのスルー画像を観察することができる。メモリカード219は、撮像素子212により撮像された画像信号に基づいて生成される画像データを記憶する画像ストレージである。
交換レンズ202を通過した光束により、撮像素子212の受光面上に被写体像が形成される。この被写体像は撮像素子212により光電変換され、画像信号と焦点検出信号とがボディ駆動制御装置214へ送られる。
ボディ駆動制御装置214は、撮像素子212の焦点検出画素からの焦点検出信号に基づいてデフォーカス量を算出し、このデフォーカス量をレンズ駆動制御装置206へ送る。また、ボディ駆動制御装置214は、撮像素子212からの画像信号を処理して画像データを生成し、メモリカード219に格納する。それとともに、ボディ駆動制御装置214は、撮像素子212からのスルー画像信号を液晶表示素子駆動回路215へ送り、スルー画像を液晶表示素子216に表示させる。さらに、ボディ駆動制御装置214は、レンズ駆動制御装置206へ絞り制御情報を送って絞り211の開口制御を行う。
レンズ駆動制御装置206は、フォーカシング状態、ズーミング状態、絞り設定状態、絞り開放F値などに応じてレンズ情報を更新する。具体的には、ズーミング用レンズ208とフォーカシング用レンズ210の位置と絞り211の絞り値とを検出し、これらのレンズ位置と絞り値とに応じてレンズ情報を演算したり、あるいは予め用意されたルックアップテーブルからレンズ位置と絞り値とに応じたレンズ情報を選択する。
レンズ駆動制御装置206は、受信したデフォーカス量に基づいてレンズ駆動量を算出し、レンズ駆動量に応じてフォーカシング用レンズ210を合焦位置へ駆動する。また、レンズ駆動制御装置206は受信した絞り値に応じて絞り211を駆動する。
図2は、本発明に関連する撮像素子212およびボディ駆動制御装置214の関係を詳細に示すブロック図である。図2に示すように、ボディ駆動制御装置214内には撮像素子制御部220、バッファメモリ221、CPU(マイクロコンピューター)222、内部メモリ223が収納される。撮像素子212は撮像素子制御部220の制御に従って撮像画素および焦点検出画素の電荷蓄積制御(電荷蓄積時間および電荷蓄積タイミング)と、画像信号および焦点検出信号の出力制御を行なう。撮像素子制御部212によって撮像素子212から読み出された被写体像に対応する画像信号および後述する一対の像に対応する焦点検出信号は、信号増幅やAD変換の前処理を受けた後、バッファメモリ221に1フレーム分のデータとして一時的に格納される。CPU222はバッファメモリ221に格納された1フレーム分のデータのうちの画像信号に対して周知の画像処理を行なって画像表示や画像記録を行なうとともに、バッファメモリ221に格納された1フレーム分のデータのうちの焦点検出信号に対して後述する焦点検出処理を行なう。内部メモリ223は過去の複数フレーム分の焦点検出信号を記憶するためのメモリである。CPU222は焦点検出処理において内部メモリ223に記憶された過去フレームの焦点検出信号を参照する。最新フレームの焦点検出信号に対する焦点検出処理が終了すると、バッファメモリ221に一時的に格納された最新フレームのデータのうちの焦点検出信号は内部メモリ223に移送される。内部メモリ223はFILO(first in last out)のスタック構造になっており、内部メモリ223において直近の過去の所定複数フレーム分の焦点検出信号が順次更新記録されることになる。
図3は、撮影画面上における焦点検出位置を示す図であり、後述する撮像素子212上の焦点検出画素列による焦点検出の際に撮影画面上で像をサンプリングする領域(焦点検出エリア、焦点検出位置)の一例を示す。この例では、矩形の撮影画面100上の中央に焦点検出エリア101が配置される。長方形で示す焦点検出エリア101に対応して焦点検出画素が配列される。
図4、図5は撮像素子212の詳細な構成を示す正面図であり、撮像素子212上の焦点検出エリア101内を拡大して示したものである。図4は撮像画素310および焦点検出画素311のレイアウトを示す。図4において、撮像素子212上で、撮像画素310および焦点検出画素311が混在して二次元正方格子状に稠密に配列される。水平方向に伸びる複数の画素列の各列に焦点検出画素311が1画素おきに配置されることによって、焦点検出画素列L1〜L8が形成される。図5は図4に示す撮像画素310および焦点検出画素311に配置される色フィルタの配列を示す。撮像画素310および焦点検出画素311には、ベイヤー配列の規則に従って色フィルタ、赤色フィルタR、緑色フィルタG、青色フィルタBが配置されている。赤色フィルタR、緑色フィルタG、および青色フィルタBは、それぞれ異なる波長において高い分光感度を示す。焦点検出画素311は緑色フィルタGを備えるとともに、水平方向の焦点検出画素列L1〜L8の各列に配置された複数の焦点検出画素311のデータ(焦点検出信号)に応じて水平方向の位相差検出が行なわれる。焦点検出画素列L1に配置された複数の焦点検出画素311のデータが通常の焦点検出に用いられるデータである。状況に応じて、焦点検出画素列L2〜L8のそれぞれに配置された複数の焦点検出画素311のデータが、それらに対応する焦点検出画素列L1に配置された複数の焦点検出画素311のデータに積算され、その積算値が焦点検出に用いられる。こうした積算は、互いに空間的に異なる位置に配置された焦点検出画素311のデータどうしの積算なので、こうした積算を以後空間積算という。
撮像画素310は、矩形のマイクロレンズ10と、不図示の遮光マスクで受光領域を制限された光電変換部11とを有している。焦点検出画素311は、矩形のマイクロレンズ10と、撮像画素310の光電変換部11を垂直方向に延在する素子分離領域15により2分割して得られる一対の光電変換部13および14とから構成される。なお、簡潔のため、図4において色フィルタは不図示としている。
撮像画素310は、マイクロレンズ10によって最も明るい交換レンズ202の射出瞳径(例えばF1.0)を通過する撮影光束を、光電変換部11がすべて受光するような形状に設計される。また、焦点検出画素311は、マイクロレンズ10によって交換レンズ202の射出瞳のうちの、一対の光電変換部13および14の並び方向と平行に並ぶ一対の領域を通過する一対の焦点検出光束を、光電変換部13、14がそれぞれ受光するような形状に設計される。
図6は、マイクロレンズ10を用いた瞳分割型位相差検出方式の焦点検出光学系の構成を示す。図6は、焦点検出エリア101のうちの水平方向の焦点検出画素列L1に配置された撮影光軸91近傍の隣接する3つの焦点検出画素311および2つの撮像画素310を模式的に拡大して示す。図6において、射出瞳90は、交換レンズ202(図1参照)の予定結像面に配置されたマイクロレンズ10から前方に距離dの位置に設定されている。この距離dは、マイクロレンズ10の曲率および屈折率、マイクロレンズ10と光電変換部13、14との間の距離などに応じて決まる距離であって、この明細書では測距瞳距離と呼ぶ。図6には他に、交換レンズの光軸91、マイクロレンズ10、光電変換部13、14、焦点検出画素311、撮像画素310、焦点検出光束73、74が示されている
。
。
測距瞳93は、遮光マスクの開口部により受光領域が制限された光電変換部13がマイクロレンズ10により投影されることによって形成される。同様に、測距瞳94は、遮光マスクの開口部により受光領域が制限された光電変換部14がマイクロレンズ10により投影されることによって形成される。一対の測距瞳93、94は光軸91を通る垂直線に対して線対称な形状となっている。一対の測距瞳93、94は上述した一対の領域に対応する。マイクロレンズ10により、一対の光電変換部13および14と上述した一対の領域、すなわち一対の測距瞳93および94とが互いに共役関係となる。
焦点検出エリア101の水平方向の焦点検出画素列L1〜L8に配置された全ての焦点検出画素311において、一対の光電変換部13、14は焦点検出画素列を構成する焦点検出画素と同一の水平方向に並んでいる。一対の光電変換部13、14は、それぞれに対応して一対の光電変換部13、14の並び方向と同一の方向に並ぶ一対の測距瞳93、94から各マイクロレンズに到来する一対の焦点検出光束73および74を受光する。各焦点検出画素列を構成する複数の焦点検出画素311の各々に含まれる一対の光電変換部13および14が、一対の焦点検出光束73および74を受光すると、光電変換により、一対の焦点検出光束73および74による一対の像に対応する一対の像信号を所定フレーム間隔毎に繰り返し出力する。
以上のような構成により、光電変換部13は、測距瞳93を通過して焦点検出画素311のマイクロレンズ10に向かう焦点検出光束73によりマイクロレンズ10上に形成される像の強度に対応した信号を出力する。また、光電変換部14は、測距瞳94を通過して焦点検出画素311のマイクロレンズ10に向う焦点検出光束74によりマイクロレンズ10上に形成される像の強度に対応した信号を出力する。
水平方向の焦点検出画素列L1に配列された焦点検出画素311において、各焦点検出画素311の光電変換部13、14の出力を測距瞳93および測距瞳94のそれぞれに対応した出力グループにまとめる。このことによって、測距瞳93および測距瞳94をそれぞれ通過する焦点検出用光束73、74が水平方向の焦点検出画素列L1に含まれる複数の焦点検出画素311の配列上に形成する一対の像の強度分布に関する情報が得られる。この情報に対して像ズレ検出演算処理(相関演算処理、位相差検出処理)を施すことによって、いわゆる瞳分割型位相差検出方式で水平方向の焦点検出画素列L1における水平方向の一対の像の像ズレ量が検出される。
同様に水平方向の焦点検出画素列L2〜L8に配列された焦点検出画素311の光電変換部13、14の出力を用いて各焦点検出画素列における水平方向の一対の像の像ズレ量を検出することができる。
さらに、像ズレ量に対して、一対の測距瞳93、94の重心間隔と測距瞳距離との比例関係に応じた変換演算を行うことによって、予定結像面に対する現在の結像面の偏差(デフォーカス量)が算出される。具体的には、光軸91に垂直な面内における像ズレ量に対し所定の変換係数を乗ずることによりデフォーカス量、すなわち光軸91の方向における結像面と予定結像面との偏差が算出されることになる。所定の変換係数は、測距瞳距離dを測距瞳93、94の重心間隔で除した値として得られる。
図7は、図4に示す撮像素子212の撮像画素310が受光する撮影光束の様子を図6と比較して説明するための図である。図7は、水平方向の焦点検出画素列L1に隣接する水平方向の撮像画素列に配置された撮影光軸91近傍の隣接する5つの撮像画素310を模式的に拡大して示す。なお図6と重複する部分の説明は省略する。
撮像画素310はマイクロレンズ10とその背後に配置された光電変換部11等から構成される。光電変換部11に近接して配置された遮光マスクの開口部の形状がマイクロレンズ10から測距瞳距離dだけ離間した射出瞳90上に投影される。その投影形状は測距瞳93、94に略外接する領域95を形成する。光電変換部11は、領域95を通過してマイクロレンズ10へ向かう撮影光束71によってマイクロレンズ10上に形成される像の強度に対応した信号を出力する。すなわち、複数の撮像画素310が、交換レンズ202を通過する被写体からの撮影光束71を受光して光電変換により被写体像に対応する被写体像信号を所定フレーム間隔毎に出力する。
図8は、本実施の形態の焦点検出装置を含むデジタルスチルカメラ(撮像装置)201の焦点検出動作を含む撮像動作を示すフローチャートである。ボディ駆動制御装置214は、ステップS100でデジタルスチルカメラ201の電源がオンされると、ステップS110以降の撮像動作を開始する。ステップS110において、ボディ駆動制御装置214の撮像素子制御部220は、全画素の画素データを読み出し、撮像画素310の画素データを、ボディ駆動制御装置214のCPU222が液晶表示素子216に表示させる。続くステップS120では、ボディ駆動制御装置214のCPU222は、焦点検出画素311の画素データに基づいて、焦点検出に用いる焦点検出用データを生成する。この焦点検出用データ生成処理については詳細に後述する。
ステップS130においては、ボディ駆動制御装置214のCPU222は、その焦点検出用データに基づき焦点検出エリア101における位相差検出演算(像ズレ検出演算)を行なう。ボディ駆動制御装置214のCPU222は、その位相差検出演算によって検出された位相差(像ズレ量)に基づきデフォーカス量を算出する。
ステップS140で、ボディ駆動制御装置214のCPU222は、合焦近傍か否か、すなわち算出したデフォーカス量の絶対値が所定値以内であるか否かを調べる。合焦近傍でないと判定された場合、本処理はステップS150へ進み、ボディ駆動制御装置214のCPU222は、デフォーカス量をレンズ駆動制御装置206へ送信し、交換レンズ202のフォーカシング用レンズ210を合焦位置に駆動させる。その後、本処理はステップS110へ戻って、上述した動作が繰り返される。
なお、焦点検出不能な場合も本処理はこのステップS150に分岐し、ボディ駆動制御装置214のCPU222は、レンズ駆動制御装置206へスキャン駆動命令を送信し、交換レンズ202のフォーカシング用レンズ210を無限遠位置から至近位置までの間でスキャン駆動させる。その後、本処理はステップS110へ戻って上述した動作が繰り返される。
ステップS140で合焦近傍であると判定された場合、本処理はステップS160へ進む。ステップS160において、ボディ駆動制御装置214のCPU222は、シャッターボタン(不図示)の操作によりシャッターレリーズがなされたか否かを判別する。シャッターレリーズがなされていないと判定された場合、本処理はステップS110へ戻り、上述した動作が繰り返される。一方、シャッターレリーズがなされたと判定された場合、本処理はステップS170へ進む。ステップS170において、ボディ駆動制御装置214のCPU222は、レンズ駆動制御装置206へ絞り調整命令を送信し、交換レンズ202の絞り値を制御F値(撮影者により設定されたF値または自動的に設定されたF値)にする。絞り制御が終了した時点で、ボディ駆動制御装置214の撮像素子制御部220は、撮像素子212に撮像動作を行わせ、撮像素子212の撮像画素310および全ての焦点検出画素311から画素データを読み出す。
ステップS180において、ボディ駆動制御装置214のCPU222は、各焦点検出画素311の位置の画像データとしての画素データを、各焦点検出画素311の画素データに基づき、すなわち各焦点検出画素311に配置された一対の光電変換部13、14の出力データを加算することにより、算出する。続くステップS190では、ボディ駆動制御装置214のCPU222は、撮像画素310の画像データとして用いる画素データおよび焦点検出画素位置の画像データを取得し、メモリカード219に記憶させる。この画像データは、交換レンズ202のフォーカシング用レンズ210が合焦位置に位置するとき、交換レンズ202を通過する被写体からの撮影光束71に基づいて得られる。本処理は、ステップS110へ戻って、上述した動作が繰り返される。
なおステップS110〜ステップS160の繰り返し動作は、1フレーム分の画素データが撮像素子212から所定フレーム間隔で周期的に読み出されるフレーム読出し動作と連動して行なわれる。
図8のステップS130における像ズレ検出演算処理(相関演算処理、位相差検出処理)の詳細について以下説明する。焦点検出画素311が検出する一対の像は、測距瞳93、94がレンズの絞り開口によりけられて光量バランスが崩れている可能性がある。したがって、ステップS130において、ボディ駆動制御装置214のCPU222は、光量バランスに対して像ズレ検出精度を維持できるタイプの相関演算を施す。焦点検出用の一対の像信号A1n(A11,・・・,A1M:Mは信号数)、A2n(A21,・・・,A2M)に対し、例えば特開2007−333720号公報に開示された公知の相関演算式である下記(1)式を用いて、相関量C(k)を演算する。(1)式において、Σ演算は変数nについて累積される。変数nは、像ずらし量kに応じてA1n、A1n+1、A2n+k、A2n+1+kのデータが存在する範囲に限定される。像ずらし量kは整数であり、一対の像信号を構成する信号列のデータ間隔を単位とした相対的シフト量である。
C(k)=Σ|A1n・A2n+1+k−A2n+k・A1n+1| ・・・(1)
C(k)=Σ|A1n・A2n+1+k−A2n+k・A1n+1| ・・・(1)
上述した(1)式により演算される離散値である相関量C(k)に対応する連続的な相関量C(x)の極小値C(X)が得られたときは、以下の(2)式により、連続的な相関量C(x)の極小値C(X)を与えるずらし量Xが像ズレ量shftに換算される。(2)式において、係数PYは、焦点検出画素列L1〜L8を構成する焦点検出画素311の画素ピッチ、すなわち撮像素子212に配列された画素の画素ピッチの2倍の値となる。
shft=PY・X ・・・(2)
shft=PY・X ・・・(2)
図8のステップS120における焦点検出画素311の画素データに基づく焦点検出用データの生成の詳細について図9の処理フローチャートを用いて説明する。図4の焦点検出画素列L1〜L8の各焦点検出画素列においてN個の焦点検出画素311が配列されている。各焦点検出画素列Lp(p=1,2,・・・,8)を構成する各焦点検出画素311に水平方向の並び順に符号n(n=1〜N)を対応付ける。焦点検出画素列Lpのn番目の焦点検出画素311が有する一対の光電変換部13、14のうちのs(s=1,2)番目の光電変換部は、データB(s,n,p)を出力する。すなわち、一対の光電変換部13、14は、それぞれ一対のデータB(1,n,p)、B(2,n,p)を出力する。
ステップS200では、ボディ駆動制御装置214のCPU222は、図3に示す焦点検出画素列L1を構成する焦点検出画素311の画素データの最大値が所定閾値T1を越えているか否か、すなわち(3)式を満足しているか否かをチェックする。焦点検出画素列L1を構成する焦点検出画素311の画素データの最大値が所定閾値T1を越えているとき、焦点検出画素311の出力レベルは焦点検出に十分なレベルに達している。(3)式においてMax()は最大値を求める関数である。
Max(B(s,n,1))>T1 ・・・(3)
Max(B(s,n,1))>T1 ・・・(3)
ステップS200で、(3)式が満足される場合、本処理はステップS210に進む。ステップS210においては、ボディ駆動制御装置214のCPU222は、(4)式のように、焦点検出画素列L1(p=1)に配列された焦点検出画素311の画素データを焦点検出用データB0(s,n)として決定する。本処理は、ステップS310に進む。
B0(s,n)=B(s,n,1) s=1,2 n=1〜N ・・・(4)
B0(s,n)=B(s,n,1) s=1,2 n=1〜N ・・・(4)
一方ステップS200で、(3)式が満足されない場合、本処理はステップS220に進む。ステップS220では、ボディ駆動制御装置214のCPU222は、焦点検出画素列L1の焦点検出画素311の画素データと、焦点検出画素列L1に隣接する焦点検出画素列L2の焦点検出画素311の画素データとを空間積算する。(5)式に示すように、水平方向の並び順に付された変数nが同一の位置に配置されている焦点検出画素どうしの同一種類の光電変換部どうしが出力するデータについて行なわれる空間積算によって、データB1(s,n,2)が算出される。
B1(s,n,2)=B1(s,n,1)+B(s,n,2) s=1,2 n=1〜N・・・(5)
B1(s,n,2)=B1(s,n,1)+B(s,n,2) s=1,2 n=1〜N・・・(5)
すなわち(5)式により垂直方向に隣接した焦点検出画素311の画素データが空間的に積算(空間積算)されることになり、こうして焦点検出画素列L1からLpまで空間積算された焦点検出画素311のデータB1(s,n,p)が得られる。なおデータB1(s,n,1)はデータB(s,n,1)と等しい。
ステップS230では、ボディ駆動制御装置214のCPU222は、空間積算されたデータB1(s,n,p)(最初にこのステップに来た場合にはp=2)の最大値が所定閾値T1を越えているか否か、すなわち(6)式を満足しているか否かをチェックする。
Max(B1(s,n,p))>T1 s=1,2 n=1〜N ・・・(6)
Max(B1(s,n,p))>T1 s=1,2 n=1〜N ・・・(6)
ステップS230で、(6)式を満足した場合、本処理はステップS240に進む。ステップS240においては、ボディ駆動制御装置214のCPU222は、(7)式のように焦点検出画素列Lpまで空間積算された焦点検出画素311のデータB1(s,n,p)を焦点検出用データB0(s,n)と決定する。本処理はステップS310に進む。
B0(s,n)=B1(s,n,p) s=1,2 n=1〜N ・・・(7)
B0(s,n)=B1(s,n,p) s=1,2 n=1〜N ・・・(7)
一方ステップS230で、(6)式が満足されない場合、本処理はステップS240に進む。ステップS240において、ボディ駆動制御装置214のCPU222は、空間積算が焦点検出画素列L8まで行なわれたか否か、すなわち空間積算回数が最大積算回数7回に達しているか否かをチェックする。空間積算が焦点検出画素列L8まで達していない場合には本処理はステップS220に戻る。ステップS220では、ボディ駆動制御装置214のCPU222は、(8)式のように次の焦点検出画素列L(p+1)に配列された焦点検出画素311のデータB(s,n,p+1)を、それまでの空間積算された焦点検出画素311のデータB1(s,n,p)に空間積算する。
B1(s,n,p+1)=B1(s,n,p)+B(s,n,p+1) s=1,2, n=1〜N ・・・(8)
B1(s,n,p+1)=B1(s,n,p)+B(s,n,p+1) s=1,2, n=1〜N ・・・(8)
本処理がステップS220、ステップS230、ステップS240のループを回り、最後にステップS240で、空間積算回数が最大積算回数に達していると判断された場合、すなわちこれ以上焦点検出画素列が無いので空間積算できない場合には、本処理はステップS260に進む。このとき、最新フレームにおいて焦点検出画素列L1からL8まで空間積算されている焦点検出画素311のデータの空間積算データB2(s,n,0)が得られたことになる。ステップS260において、ボディ駆動制御装置214のCPU222は、内部メモリ223に記憶されている1フレーム前の焦点検出画素311の画素データを読み出し、焦点検出画素列L1〜L8に配列された焦点検出画素311のデータを(9)式のように空間積算する。このとき、最新フレームに対しvフレーム前(このステップS260に初めて入るときは、v=1)の焦点検出画素311のデータの空間積算データB2(s,n,v)が得られる。また、内部メモリ223には、10フレーム前(v=10)までの焦点検出画素のデータが記憶されているとする。
B2(s,n,、v)=ΣB(s,n,p) Σ演算はp=1〜8 ・・・(9)
B2(s,n,、v)=ΣB(s,n,p) Σ演算はp=1〜8 ・・・(9)
ステップS270で、ボディ駆動制御装置214のCPU222は、(10)式に示すように、ステップS260で算出した1フレーム前の空間積算データB2(s,n,v)と、これまでのフレームまでの時間積算データB3(s,n,v−1)とを時間積算する。
B3(s,n,v)=B3(s,n,v−1)+B2(s,n,v) s=1,2 n=1〜N ・・・(10)
B3(s,n,v)=B3(s,n,v−1)+B2(s,n,v) s=1,2 n=1〜N ・・・(10)
すなわち(10)式により時間的に隣接したフレームの空間積算データが過去に亘って時間的に積算(時間積算)され、時間積算データB3(s,n,v)が得られる。時間積算データB3(s,n,v)は、最新フレームからvフレーム前までの空間積算データB2(s,n,v)を時間積算した焦点検出画素のデータを表わす。ただし時間積算データB3(s,n,0)は空間積算データB2(s,n,0)およびデータB1(s,n,8)と等しい。
ステップS280では、ボディ駆動制御装置214のCPU222は、時間積算されたデータB3(s,n,v)の最大値が所定閾値T1を越えているか否か、すなわち(11)式を満足しているか否かをチェックする。初めてステップS280おける判定処理が行われる際は、v=1である。
Max(B3(s,n,v))>T1 ・・・(11)
Max(B3(s,n,v))>T1 ・・・(11)
ステップS280で(11)式が満足される場合、本処理はステップS290に進む。ステップS290において、ボディ駆動制御装置214のCPU222は、(12)式のように、最新フレームからvフレーム前まで時間積算された焦点検出画素の時間積算データB3(s,n,v)を焦点検出用データB0(s,n)と決定する。本処理はステップS310に進む。
B0(s,n)=B3(s,n,v) s=1,2 n=1〜N ・・・(12)
B0(s,n)=B3(s,n,v) s=1,2 n=1〜N ・・・(12)
一方ステップS280で、(11)式が満足されない場合、本処理はステップS300に進む。ステップS300において、ボディ駆動制御装置214のCPU222は、時間積算が10フレーム前まで行なわれたか否か、すなわち時間積算回数が最大積算回数10回に達しているか否かをチェックする。時間積算が10フレーム前まで達していない場合には本処理はステップS260に戻り、ボディ駆動制御装置214のCPU222は、これまで時間積算が行なわれたフレームの1つ前の過去フレームに対して空間積算を行なう。それとともに、ステップS260、ステップS270、ステップS280、ステップS300のループが繰り返される。
ステップS300で時間積算回数が最大積算回数10回に達していると判定された場合は、ボディ駆動制御装置214のCPU222は、ステップS290で最新フレームから10フレーム前まで時間積算された焦点検出画素の時間積算データB3(s,n,10)を焦点検出用データB0(s,n)と決定する。本処理はステップS310に進む。
ステップS310では次回のフレームでの焦点検出演算処理に備えて、最新フレームの焦点検出画素311の画素データを内部メモリ223に記憶する。本処理は、図8のフローのステップS130に抜ける。この時焦点検出用データB0(s,n)が(1)式の焦点検出用の一対の像信号A1n(A11,・・・,A1M:Mはデータ数)、A2n(A21、・・・、A2M)に読み替えられることになる。
図9に示した処理フローチャートの動作を、データ処理の観点で示したものが図10、図11である。図10、図11に示すグラフにおいて縦軸がデータ値、横軸はデータ位置(水平方向の位置)である。図10において、焦点検出画素列L1から順次焦点検出画素データが空間積算されていくことにより空間積算データが生成される。なお図においては簡潔のため一対の像信号のうち一方(s=1)のみを代表して示している。図10は最新フレームの焦点検出画素311のデータに対する空間積算処理の様子を示した図である。図10において、焦点検出画素列L1の焦点検出画素311の画素データの最大値が所定閾値T1を越えない場合には、順次焦点検出画素列L2、L3・・・の焦点検出画素311のデータと空間積算され、焦点検出画素列L8まで焦点検出画素311の画素データを空間積算した段階でも空間積算データの最大値が所定閾値T1を越えない場合には、処理は図11に示す時間積算処理に進む。複数の焦点検出画素列どうしの空間積算処理は、各焦点検出画素列の水平方向の画素位置が同じn番目の焦点検出画素どうしが積算される。それらの積算される焦点検出画素は互いに垂直方向に隣接した位置に配置されている。
図11に示すように、最新フレームの空間積算データの最大値が所定閾値T1を越えない場合には順次1フレーム前、2フレーム前・・・の空間積算データが最新フレームから過去に向かって最大10フレーム前まで時間積算される。空間積算データを時間積算した時間積算データの最大値が所定閾値T1を越えた段階で時間積算は終了する。
図12は、図8で示した動作フローチャートの動作をタイミングチャートで表わした図である。図12において、撮像素子212から一定のフレームレート(例えば1/60秒)で撮像画素および焦点検出画素の画素データが読み出される。図12において、第(N−1)フレームから第(N+2)フレームまでの4フレームが例示されている。代表として第Nフレームの動作を説明する。まず撮像素子212から第(N−1)フレームにおいて第Nフレーム用に電荷蓄積された画像データ(撮像画素310の画素データおよび焦点検出画素311の画素データ)が読み出される。それとともに、撮像素子212において第(N+1)フレーム用の電荷蓄積が始まる。画像データの読出しが終了すると、読み出された撮像画素310の画素データに基づいてライブビュー表示画像が更新される。また第Nフレームの焦点検出画素311の画素データと第(N−1)フレームの生成時点で記憶された第(N−1)フレーム以前の焦点検出画素311の画素データ(信号)に基づいて焦点検出が行なわれ、第Nフレーム生成時点におけるデフォーカス量が算出される。デフォーカス量が算出されると、該デフォーカス量に応じて焦点調節がなされるとともに、第Nフレームの焦点検出画素311の画素データ(信号)が内部メモリ223に記憶される。以上の動作が毎フレーム繰り返される。
以上の説明においては、図4のように焦点検出画素列L1〜L8の8列に複数の焦点検出画素311が水平方向に配置され、空間積算は垂直方向の焦点検出画素311の画素データが最大7回まで積算されているが、これに限定されることなく焦点検出画素列Lpを8列以上配置することができる。その場合には空間積算回数の上限(最大積算回数)は、垂直方向の空間積算による像の高周波成分の低下による焦点検出精度の低下を来さないように、実験的に決めることができる。例えば図4のように焦点検出画素311が1行おきに配置されており、かつ画素ピッチがPaの場合、次式(13)を満たすように空間積算回数Nの上限Nmaxを決定することができる。
N≦Nmax=Ca/(2・Pa) ・・・(13)
N≦Nmax=Ca/(2・Pa) ・・・(13)
ここで定数Caは実験的に定められ、予定焦点面上において焦点検出精度を維持できる最低空間周波数により決まる。空間周波数が高いほど焦点検出精度が高くなるので、定数Caは例えば最低空間周波数の逆数として定められる。例えば最低空間周波数が10本/mmの場合、定数Caは100μmとなる。画素ピッチPaが5μmとすれば、焦点検出画素の間隔はその2倍の10μmなので、(13)式にしたがって、Nmax=100μm/10μm=10回となる。また最低空間周波数を焦点検出精度に影響を与える撮影要因、例えば像の動き量、カメラのブレ量、撮影レンズの絞り値、被写界の輝度、カメラの撮影モード(静止被写体撮影モード/移動被写体撮影モードの別)などに応じて変更することにより、焦点検出に適した臨機応変な空間積算回数Nの上限Nmaxの設定が可能になる。
以上の説明においては、内部メモリに各フレームの焦点検出画素のデータがそのまま記憶されるとして説明を行なった。しかし、最新フレーム以外の焦点検出画素のデータは空間積算されてから焦点検出用データの生成に用いられるので、内部メモリに記憶する段階の前に焦点検出画素のデータ空間積算(8列分)を行なってから、空間積算データを内部メモリに記憶するようにしてもよい。例えば図12において、各フレームの記憶信号更新処理の際に各フレームの焦点検出画素のデータを空間積算(8列分)し、空間積算されたデータ(第Nフレームにおいては第Nフレームの空間積算データ)が内部メモリに記憶される。次のフレームにおいては内部メモリに記憶された過去のフレームの空間積算データが焦点検出に用いられる。このようにすれば、過去のフレームの焦点検出画素のデータを焦点検出処理の際に毎回空間積算する必要がなくなるので、演算時間を短縮できるとともに、内部メモリの容量も節約することができる。
以上の説明では、空間積算処理においては垂直方向に1行ずつ焦点検出画素のデ−タを加算しながら、また時間積算処理においては過去に向かって1フレームずつ過去の空間積算データを積算しながら、積算後のデータの最大値が所定閾値を越えているか否かをチェックして積算処理の継続の要否を決定している。このような処理は、焦点検出画素列毎に異なる被写体パターンが焦点検出画素上に形成される場合や、被写界の明るさがフレーム間に急変する場合に対応可能であるという利点がある。また以上のような積算処理の制御においては積算データの最大値以外にも積算データの平均値やコントラスト値(最大値と最小値との差)などのデータ特性を表す評価値を用いることができる。
また空間積算を行なう焦点検出画素間の空間的距離が小さい場合(図4の場合、焦点検出画素列L1からL8まで空間積算した場合でも、空間的には垂直方向に最大14画素しか離れていないことになる)には空間積算する焦点検出画素がほぼ同一の被写体パターンを受光していると仮定しても大きな誤りは生じない。また図9のステップS300のように最大時間積算回数を10回程度に設定すれば、1フレームあたり1/60秒としても10回の時間積算時にも1/6秒間の時間積算となるので、フレーム間の明るさ変動がなく一様だと仮定しても大きな誤りは生じない。
このように空間的一様性および時間的一様性を仮定すれば、図9の処理をさらに図13のように簡潔にすることが可能である。なお内部メモリには各フレームの記憶信号更新処理の際に各フレームの焦点検出画素のデータが空間積算された空間積算データ、すなわち第vフレームの空間積算データB2(s、n、v)が記憶されているとする。
ステップS400では、ボディ駆動制御装置214のCPU222は、焦点検出画素のデータの最大値が所定閾値T1を越えているか否か((3)式を満足しているか)をチェックする。
ステップS400で、(3)式を満足した場合、本処理はステップS410に進み、ボディ駆動制御装置214のCPU222は、(4)式のように焦点検出画素列L1に配列された焦点検出画素のデータを焦点検出用データと決定する。本処理はステップS450に進む。
一方ステップS400で、(7)式を満足しない場合、本処理はステップS420に進み、ボディ駆動制御装置214のCPU222は、所定閾値T1を焦点検出画素のデータの最大値Max(B(s,n,1))で割った値の整数部Nsが最大空間積算回数8以下であるか否か((14)式を満足しているか否か)をチェックする。
Ns<8 ・・・(14)
Ns<8 ・・・(14)
ステップS420で、(14)式を満足した場合、本処理はステップS430に進み、ボディ駆動制御装置214のCPU222は、(15)式のように焦点検出画素311のデータを(Ns+1)番目の焦点検出画素列L(Ns+1)まで空間積算しする。ボディ駆動制御装置214のCPU222は、ステップS440で空間積算データB1(s,n,Ns+1)を焦点検出用データB0(s,n)と決定する。本処理はステップS450に進む。なお(15)式において、Σ演算は変数m=1〜Ns+1で行なわれる。
B0(s,n)=B1(s,n,Ns+1)=ΣB(s,n,m) s=1,2 n=1〜N ・・・(15)
B0(s,n)=B1(s,n,Ns+1)=ΣB(s,n,m) s=1,2 n=1〜N ・・・(15)
ステップS450では、ボディ駆動制御装置214のCPU222は、内部メモリに格納するための空間積算データB4(s,n)を(16)式により計算する。本処理は、ステップS510に進む。なお(16)式において、Σ演算は変数m=1〜8で行なわれる。
B4(s,n)=B1(s,n,8)=ΣB(s,n,m) s=1,2 n=1〜N ・・・(16)
B4(s,n)=B1(s,n,8)=ΣB(s,n,m) s=1,2 n=1〜N ・・・(16)
一方ステップS420で、(14)式を満足しない場合、本処理はステップS460に進み、ボディ駆動制御装置214のCPU222は、所定閾値T1を焦点検出画素のデータの最大値Max(B(s,n,1))の8倍で割った値の整数部Ntが10以上か否か((17)式を満足しているか否か)をチェックする。
Nt>10・・・(17)
Nt>10・・・(17)
ステップS460で(17)式を満足した場合、本処理はステップS470に進み、ボディ駆動制御装置214のCPU222は、Ntを10と決定する。本処理はステップS480に進む。ステップS460で(17)式を満足しない場合、本処理はそのままステップS480に進む。
ステップS480では、ボディ駆動制御装置214のCPU222は、ステップS450と同じように(16)式により最新フレームの焦点検出画素のデータを焦点検出画素列L1からL8まで空間積算して最新フレームの空間積算データB2(s,n,0)を算出する。
ステップS490では、ボディ駆動制御装置214のCPU222は、最新フレーム(第Naフレームとする)の空間積算データB2(s,n,0)と、内部メモリに記憶されているNtフレーム前までの空間積算データB2(s,n,1)〜B2(s,n,Nt)とを用い(18)式のように時間積算データB3(s,n,Nt)を算出する。ステップS500で、ボディ駆動制御装置214のCPU222は、時間積算データB3(s,n,Nt)を焦点検出用データB0(s,n)と決定する。本処理はステップS510に進む。なお(18)式において、Σ演算は変数m=0〜Ntで行なわれる。
B0(s,n)=B3(s,n,Nt)=ΣB2(s,n,m) s=1,2 n=1〜N ・・・(18)
B0(s,n)=B3(s,n,Nt)=ΣB2(s,n,m) s=1,2 n=1〜N ・・・(18)
ステップS510では、ボディ駆動制御装置214のCPU222は、次回のフレームでの焦点検出演算処理に備えて、最新フレームの空間積算データを内部メモリに記憶する。本処理は、図8のフローのステップS130に抜ける。
図13の処理フローでは空間積算回数および時間積算回数を処理の最初の段階で決定しており、図9のフローと比較してループ処理毎の判定処理がないので処理時間の短縮を図ることができるとともに、フレーム毎に空間積算データを記憶するので内部メモリ容量を減少することができる。
さらにフレーム毎に各フレームの空間積算データを内部メモリに記憶する代わりに、フレーム毎に10フレーム前までの時間積算データを計算し、該時間積算データを内部メモリに記憶するようにしてもよい。
すなわち図12の各フレームの記憶信号更新処理の際に、最新フレームの空間積算データを1つ前のフレームに記憶された10フレーム分の時間積算データに対して時間積算して更新記憶する。これにより、内部メモリに記憶された時間積算データは、最新フレームからvフレーム前までの時間積算データとなる。このようにして内部メモリに記憶された時間積算データを焦点検出用データとして利用する場合の様子を図11に対応して図14で示す。最新フレームにおいて内部メモリには、1フレーム前の時間積算データ(空間積算データ)、1フレーム前から2フレーム前までの時間積算データ、1フレーム前から3フレーム前までの積算データ・・・(B2(s,n,1)、B2(s,n,1)+B2(s,n,2)、B2(s,n,1)+B2(s,n,2)+B2(s,n,3)、・・・)が記録されている。最新フレームからNtフレーム前までの時間積算した時間積算データB3(s,n,Nt)が必要な場合は、最新フレームの空間積算データB2(s,n,0)と1フレーム前からNtフレーム前までの時間積算データ(B2(s,n,1)+B2(s,n,2)+B2(s,n,3)+・・・+B2(s,n,Nt))とを直接時間積算すればよい。
このようにすれば、焦点検出に用いる時間積算データの算出の際に内部メモリから1フレーム前からNtフレーム前までの時間積算が完了した時間積算データを読み出すだけでいいので、焦点検出演算の処理速度が向上する。また時間積算データの演算および内部メモリの更新記憶をCPUとは別途設けられた専用の演算回路を用いて行なうことにより、さらなる処理速度の向上を図ることができる。
上述した第1の実施の形態における焦点検出装置を含む撮像装置としてのデジタルスチルカメラ201は、撮像素子(イメージセンサ)212とボディ駆動制御装置214とを含む。
撮像素子212には、複数の焦点検出画素列L1〜L8が互いに並置される。複数の焦点検出画素列L1〜L8は各焦点検出画素列Lpで構成される。各焦点検出画素列Lpは、水平方向に配列される複数の焦点検出画素311から成る。各焦点検出画素列Lpを構成する複数の焦点検出画素311は、水平方向に配列され、交換レンズ202の射出瞳90のうちの複数の焦点検出画素311の並び方向である水平方向と平行に並ぶ一対の測距瞳93および94を通る一対の焦点検出光束73および74を受光する。撮像素子212は、各焦点検出画素列Lpが光電変換により一対の焦点検出光束73および74による一対の像に対応する一対の像信号A1nおよびA2nを所定フレーム間隔毎に繰り返し出力する。
ボディ駆動制御装置214は、各焦点検出画素列Lpが一対の像信号A1nおよびA2nを所定フレーム間隔毎に繰り返し出力するたびに、複数の焦点検出画素列L1〜L8のうちの焦点検出画素列L1とそれに隣接する1つまたは複数の焦点検出画素列とが出力する一対の像信号A1nおよびA2nをそれぞれ積算することによって、空間積算データB2(s,n,v)を算出する。
ボディ駆動制御装置214は、各焦点検出画素列Lpが一対の像信号A1nおよびA2nを所定フレーム間隔毎に繰り返し出力するたびに空間積算データB2(s,n,v)が算出されて得られる最新フレームからvフレーム前までの空間積算データB2(s,n,v)を積算することによって、時間積算データB3(s,n,v)を算出する。
ボディ駆動制御装置214は、空間積算データB2(s,n,v)と時間積算データB3(s,n,v)とのうちのいずれか一方に基づいて交換レンズ202の焦点状態を検出する。
以上のような構成を有する本発明の第1の実施形態の焦点検出装置を含む撮像装置としてのデジタルスチルカメラ201では、焦点検出用データの生成において、空間積算(近接する複数の焦点検出画素のデータの積算)が優先され、空間積算のみでは焦点検出用データの有効性(最大値、平均値、またはコントラスト値が所定閾値以上)が確保できない場合に、時間積算(同一の焦点検出画素の過去フレームのデータとの積算)が行なわれる。そのため、時間積算に伴う不具合、例えば被写体像の時間変化や移動に伴う焦点検出精度の悪化を最低限のレベルに押さえ込むことができ、低輝度または低コントラスト時にも快適な自動焦点調節を行なえる。
<第2の実施の形態>
第1の実施の形態においては、焦点検出画素のデータを積算する場合に常に空間積算を時間積算に対して優先していた。第2の実施形態においては、被写体の移動や手ブレなどの状況に応じて空間積算と時間積算を好適に組み合わせることにより、本発明の効果を奏するものである。
第1の実施の形態においては、焦点検出画素のデータを積算する場合に常に空間積算を時間積算に対して優先していた。第2の実施形態においては、被写体の移動や手ブレなどの状況に応じて空間積算と時間積算を好適に組み合わせることにより、本発明の効果を奏するものである。
第2の実施形態の構成は第1の実施形態と同じであり、大まかな動作フローも同じ(図8)であり、焦点検出用データの生成処理の部分が異なる。なお内部メモリには最新フレームから10フレーム前までの10フレーム分の各フレームの焦点検出画素のデータ(焦点検出画素列L1〜L8)が更新記憶されているとする。
第2の実施形態の図8のステップS120における焦点検出画素のデータに基づく焦点検出用データの生成の詳細について図15の処理フローチャートを用いて説明する。
ステップS600では、ボディ駆動制御装置214のCPU222は、焦点検出画素のデータ(図3の焦点検出画素列L1に配列された焦点検出画素311のデータ)の最大値が所定閾値T1を越えているか否か((3)式を満足しているか)をチェックする。
ステップS600で、(3)式を満足した場合、本処理はステップS610に進み、ボディ駆動制御装置214のCPU222は、(4)式のように焦点検出画素列L1に配列された焦点検出画素のデータを焦点検出用データと決定する。本処理はステップS680に進む。
一方ステップS600で、(3)式を満足しない場合、本処理はステップS620に進み、ボディ駆動制御装置214のCPU222は、所定閾値T1を焦点検出画素のデータの最大値Max(B(s,n,1))で割った値の整数部+1を総合的な積算回数Pとして算出する。
ステップS630では、ボディ駆動制御装置214のCPU222は、最新フレームの画像データ(撮像画素のデータ)と1フレーム前の画像データに基づき周知の手法によりフレーム間の動きベクトルを求め、動きベクトルの絶対値を取ってフレーム間の動き量Mvを算出する。なお1フレーム前の画像データはバッファメモリまたは内部メモリに残されているものとする。
ステップS640では、ボディ駆動制御装置214のCPU222は、積算回数Pと動き量Mvとに基づき、空間積算回数Psと時間積算回数Ptとを決定する。この処理の詳細については後述する。
ステップS650では、ボディ駆動制御装置214のCPU222は、空間積算回数Psに基づき、最新フレームから(Pt―1)フレーム前までの焦点検出画素データ(焦点検出画素列L1からL(Ps)までの焦点検出画素データ)を空間積算して、Ptフレーム分の空間積算データを算出する。
ステップS660では、ボディ駆動制御装置214のCPU222は、Ptフレーム分の空間積算データをさらに時間積算して最新フレームから(Pt−1)フレーム前までの時間積算データを算出する。
ステップ670では、ボディ駆動制御装置214のCPU222は、時間積算データを焦点検出用データと決定する。本処理は、ステップS680に進む。
ステップS680では、ボディ駆動制御装置214のCPU222は、次回のフレームでの焦点検出演算処理に備えて、最新フレームの焦点検出画素のデータを内部メモリに記憶する。本処理は、図8のフローのステップS130に抜ける。
図16は図15のステップS640における空間積算回数Psと時間積算回数Ptとを決定する処理の詳細を説明するためのグラフである。
図16において横軸は空間積算回数を表わす変数Px、縦軸は時間積算回数を表わす変数Pyである。空間積算回数を表わす変数Pxは焦点検出画素列L1〜L8が8列であることから、1≦Px≦8に制限される。また時間積算回数Ptは内部メモリには10フレーム前までのデータが更新記憶されるので最新のフレームと合わせて最大11フレームまでしか時間積算できない。つまり、1≦Pt≦11に制限される。従って空間積算回数Pxと時間積算回数Pyとの組み合わせは図16の斜線部の領域に囲まれた領域(許容範囲)に制限される。
空間積算回数Pxと時間積算回数Pyとの積が総合的な積算回数Pである。すなわちP=Px・Pyである。このように互いに関数の関係にあるPxおよびPyを積算回数Pの値に応じて決定することができる。図16に、P=88、P0、1(1<P0<88)の場合の例を示す。
一方動き量Mvに基づいて関数Py=K・Pxが決定される。ここで係数K=D/Mvであり、焦点検出画素列間のピッチD(例えば焦点検出画素列L1と隣接する焦点検出画素列L2との間の垂直方向の間隔)と動き量Mvとの比である。即ちピッチDに対して動き量Mvが大きい場合には、時間積算による像のボケ量が増大(コントラストが減少)し、空間積算による像のボケ量の増大(コントラストの減少)の影響を上回るとして、時間積算回数Pyを抑えるように係数Kが小さくなる。
一方ピッチDに対して動き量Mvが小さい場合には、空間積算による像のボケ量が増大(コントラストが減少)し、時間積算による像のボケ量の増大(コントラストの減少)の影響を上回るとして、空間積算回数Pxを抑えるように係数Kが大きくなる。図16に係数Kが大きい場合(K=K0)と小さい場合(K=K1)とを示している。
例えば総合的な積算回数がP0であり、動き量Mvに応じた係数がK0である場合には、関数Px・Py=P0と関数Py=K0・Pxとの交点を求める。交点座標(Px0,Py0)が図16のように許容範囲内である場合には、交点座標(Px0,Py0)に対して最近接するとともに許容範囲内である整数の交点座標(Pxs,Pyt)を求め、空間積算回数をPs=Pxsとし、時間積算回数をPt=Pxtとする。
また総合的な積算回数がP0であり、動き量Mvに応じた係数がK1である場合には、関数Px・Py=P0と関数とPy=K1・Pxの交点座標(Px1,Py1)が許容範囲外になる。このような場合には交点座標(Px1,Py1)から関数Px・Py=P0に沿って許容範囲の方向に座標を移動した時に許容範囲内に入った時の座標(図16の場合は(8,P0/8))に対して最近接するとともに許容範囲内である整数の交点座標(Pxs,Pyt)を求め、空間積算回数をPs=Pxsとし、時間積算回数をPt=Pytとする。
以上まとめると、空間積算回数と時間積算回数との積が一定(P0)という条件の下で、時間積算回数および空間積算回数の値が動き量に反比例した係数Kの値となるように、空間積算回数および時間積算回数を決定することになる。空間積算回数と時間積算回数との積である一定値P0は、焦点検出用データのデータ特性を表す評価値(最大値、平均値、またはコントラスト値など)が、第1の実施の形態で用いられた所定閾値T1を越えるように定められる。空間積算回数Pxおよび時間積算回数Pyは、空間積算回数Pxよりも時間積算回数Pyの方が小さくなるように、かつ空間積算回数Pxと時間積算回数Pyとの積がその一定値P0に略等しくなるように定められる。
図16においては係数KをピッチDと動き量Mvとの比で定義しているが、動き量Mvの複数フレームに亘る平均値をMv1として、ピッチDと動き量Mv1との比(K=D/Mv1)で定義するようにしてもよい。さらに動きベクトルの垂直方向の動き量をMv2として、係数KをピッチDと動き量Mv2との比(K=D/Mv2)で定義するようにしてもよい。さらに動きベクトルの水平方向の動き量をMv3として、係数KをピッチDと動き量Mv3との比(K=D/Mv3)で定義するようにしてもよい。
また動きベクトルの方向が水平に近づくほど、時間積算が焦点検出精度に与える影響は空間積算が焦点検出精度に与える影響に比較して大きくなるので、係数Kを垂直方向の動き量Mv2と水平方向の動き量Mv3の比(K=Mv2/Mv3)で定義するようにしてもよい。
また動き量の検出はフレーム間の画像の動きベクトルの検出に限定されず、専用の動き検出装置を設けても良い。例えばボディ内に加速度センサを設け、加速度センサの出力をフレーム間隔に応じて時間積分することにより、1フレーム中のカメラの動き(画像ブレ)を検出するものであってもよい。
さらに上記係数Kは動き量に応じた値であることに限定されず、時間積算および空間積算に関連して焦点検出精度に影響を与える何らかの要因に応じた値であっても構わない。例えば像の水平方向の高周波数成分は時間積算により低減する可能性が高く、これに伴って焦点検出精度も低下するので、画像処理により像の水平方向の高周波数成分の量を求め、該高周波数成分の量に反比例した値として上述した係数Kを定義するようにしてもよい。
またデフォーカス量が大きい場合は高周波数成分がボケにより小さくなっているので、該焦点検出時のデフォーカス量に比例した値として上述した係数Kを定義するようにしてもよい。
その他係数Kを焦点検出精度に影響を与える撮影要因、例えばレンズ駆動速度、撮影レンズの絞り値、被写界の輝度、カメラの撮影モード(静止被写体撮影モードまたは移動被写体撮影モードの別)などに応じて変更することにより、焦点検出に適した臨機応変な空間積算回数と時間積算回数の設定が可能になる。
以上本発明の第2の実施形態では焦点検出用データの生成において、空間積算回数(近接する複数の焦点検出画素のデータの積算回数)と時間積算回数(同一の焦点検出画素の過去フレームのデータとの積算回数)とを、データ特性を表す評価値(最大値、平均値、またはコントラスト値など)に応じて決定した総合的な積算回数が達成できるように、空間積算および時間積算によって生じる像のボケ(コントラスト低下)が出来る限り小さくなるように像の動き量などに基づいて決定する。したがって、データ積算に伴う不具合(コントラスト低下に伴う焦点検出精度の悪化)を最低限のレベルに押さえ込むことができ、低輝度または低コントラスト時にも快適な自動焦点調節を行なえる。
図4に示す撮像素子212において、1画素に1対の光電変換部を備えた焦点検出画素311が配列されているが、1画素に1つの光電変換部(一対の光電変換部の一方)を備える第1の焦点検出画素と1画素に1つの光電変換部(一対の光電変換部の他方)を備える第2の焦点検出画素を交互に配列するような構成であってもよい。
上述した実施形態においては、図4に示す撮像素子212に配置される焦点検出画素列L1の焦点検出画素311の画素データと、焦点検出画素列L1に近接する順に1つまたは複数の焦点検出画素列L2〜Lpの焦点検出画素311の画素データとを空間積算する。図4に示す撮像素子212において、焦点検出画素列L2〜L8は、いずれも焦点検出画素列L1よりも下側に位置している。しかし、図17に示すように、焦点検出画素列L1の下側に近接する順に焦点検出画素列L2、L4、L6、L8が配置され、焦点検出画素列L1の上側に近接する順に焦点検出画素列L3、L5、L7が配置される撮像素子212であってもよい。この場合であっても、焦点検出画素列L1に近接する順、すなわち焦点検出画素列L2〜L8の順に空間積算が行なわれる。
上述した実施形態においては、図4に示す撮像素子212に配置される焦点検出画素列L1の焦点検出画素311の画素データと、焦点検出画素列L1に近接する順に1つまたは複数の焦点検出画素列L2〜Lpの焦点検出画素311の画素データとを空間積算する。このとき、(5)式に示すように、水平方向の並び順に付された変数nが同一の位置に配置されている焦点検出画素どうし、すなわち垂直方向に隣接した焦点検出画素311どうしの同一種類の光電変換部どうしが出力するデータについて行なわれる空間積算によって、データB1(s,n,p)が算出される。
しかし、(19)式に示すように、焦点検出画素列L1に近接する順に空間積算される焦点検出画素列Lpが焦点検出画素列L1から離れるにつれて、すなわち変数pが大きくなるにつれて、水平方向の並び順に付された変数nが1つずつシフトした位置に配置されている焦点検出画素どうし、すなわち斜め方向に隣接した焦点検出画素311どうしの同一種類の光電変換部どうしが出力するデータについて空間積算が行なわれることとしてもよい。
B1(s,n,p)=B1(s,n,p−1)+B(s,n+p−1,p) s=1,2 n=1〜N p=1〜8 ・・・(19)
B1(s,n,p)=B1(s,n,p−1)+B(s,n+p−1,p) s=1,2 n=1〜N p=1〜8 ・・・(19)
あるいは、(20)式および(21)式に示すように、焦点検出画素列Lpが奇数番目の焦点検出画素列であるとき、すなわち変数pが奇数であるときと、焦点検出画素列Lpが偶数番目の焦点検出画素列であるとき、すなわち変数pが偶数であるときとで、水平方向の並び順に付された変数nが1つシフトした位置に配置されている焦点検出画素どうし、すなわち千鳥状に隣接した焦点検出画素311どうしの同一種類の光電変換部どうしが出力するデータについて空間積算が行なわれることとしてもよい。
B1(s,n,p)=B1(s,n,p−1)+B(s,n,p) s=1,2 n=1〜N p=1,3,5,7 ・・・(20)
B1(s,n,p)=B1(s,n,p−1)+B(s,n+1,p) s=1,2 n=1〜N p=2,4,6,8 ・・・(21)
B1(s,n,p)=B1(s,n,p−1)+B(s,n,p) s=1,2 n=1〜N p=1,3,5,7 ・・・(20)
B1(s,n,p)=B1(s,n,p−1)+B(s,n+1,p) s=1,2 n=1〜N p=2,4,6,8 ・・・(21)
上述した実施形態における撮像素子212では撮像画素がベイヤー配列の色フィルタを備えた例を示したが、色フィルタの構成や配列はこれに限定されることはなく、補色フィルタ(緑:G、イエロー:Ye、マゼンタ:Mg、シアン:Cy)の配列やベイヤー配列以外の配列にも本発明を適用することができる。
上述した実施形態においては撮像素子上において撮像画素と焦点検出画素が混在している。光路中にミラーを配置して撮像画素のみからなる撮像素子と焦点検出画素のみからなる焦点検出素子(イメージセンサ)に光束を分離するような構成であれば、その焦点検出素子に本発明を適用することができる。
なお、撮像装置としては、上述したようなカメラボディに交換レンズが装着される構成のデジタルスチルカメラに限定されない。例えばレンズ一体型のデジタルスチルカメラ、フィルムスチルカメラ、あるいはビデオカメラにも本発明を適用することができる。さらには、携帯電話などに内蔵される小型カメラモジュール、監視カメラやロボット用の視覚認識装置、車載カメラなどにも適用できる。
10 マイクロレンズ、11,13,14 光電変換部、15 素子分離領域、71 撮影光束、73,74 焦点検出光束、90 射出瞳、91 光軸、93,94 測距瞳、95 領域、101 焦点検出位置、201 デジタルスチルカメラ、202 交換レンズ、203 カメラボディ、204 マウント部、206 レンズ駆動制御装置、208 ズーミング用レンズ、209 レンズ、210 フォーカシング用レンズ、211 絞り、212 撮像素子、213 電気接点、214 ボディ駆動制御装置、215 液晶表示素子駆動回路、216 液晶表示素子、217 接眼レンズ、219 メモリカード、220 撮像素子制御部、221 バッファメモリ、222 CPU、223 内部メモリ、310 撮像画素、311 焦点検出画素
Claims (1)
- 光学系を透過した光を受光して信号を出力する画素を複数有する撮像部と、
複数の前記画素から出力された信号を加算する加算部と、
前記画素から出力された信号、および前記加算部で加算された信号の少なくとも一方を記録する記録部と、
前記加算部で加算された信号に基づいて、前記光学系による像が結像する位置と前記撮像部とのずれ量を検出する検出部と、を備え、
前記加算部は、前記加算部で加算された信号の値が所定値未満であるとき、前記加算部は、複数の前記画素から出力された信号と前記記録部に記録された信号とを加算する焦点検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021128547A JP2021184101A (ja) | 2019-07-01 | 2021-08-04 | 焦点検出装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019122851A JP2019168727A (ja) | 2019-07-01 | 2019-07-01 | 焦点検出装置および撮像装置 |
JP2021128547A JP2021184101A (ja) | 2019-07-01 | 2021-08-04 | 焦点検出装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019122851A Division JP2019168727A (ja) | 2019-07-01 | 2019-07-01 | 焦点検出装置および撮像装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021184101A true JP2021184101A (ja) | 2021-12-02 |
Family
ID=68106794
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019122851A Pending JP2019168727A (ja) | 2019-07-01 | 2019-07-01 | 焦点検出装置および撮像装置 |
JP2021128547A Withdrawn JP2021184101A (ja) | 2019-07-01 | 2021-08-04 | 焦点検出装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019122851A Pending JP2019168727A (ja) | 2019-07-01 | 2019-07-01 | 焦点検出装置および撮像装置 |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP2019168727A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023084887A1 (ja) | 2021-11-11 | 2023-05-19 | 日本トムソン株式会社 | 転がり軸受 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002258142A (ja) * | 2001-02-28 | 2002-09-11 | Canon Inc | 撮像装置 |
JP4867552B2 (ja) * | 2006-09-28 | 2012-02-01 | 株式会社ニコン | 撮像装置 |
JP2010091943A (ja) * | 2008-10-10 | 2010-04-22 | Canon Inc | 撮像装置 |
JP5565105B2 (ja) * | 2010-05-31 | 2014-08-06 | 株式会社ニコン | 撮像装置 |
-
2019
- 2019-07-01 JP JP2019122851A patent/JP2019168727A/ja active Pending
-
2021
- 2021-08-04 JP JP2021128547A patent/JP2021184101A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023084887A1 (ja) | 2021-11-11 | 2023-05-19 | 日本トムソン株式会社 | 転がり軸受 |
Also Published As
Publication number | Publication date |
---|---|
JP2019168727A (ja) | 2019-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5942757B2 (ja) | 焦点検出装置および撮像装置 | |
US8730374B2 (en) | Focus detection apparatus | |
US7863550B2 (en) | Focus detection device and focus detection method based upon center position of gravity information of a pair of light fluxes | |
JP5157400B2 (ja) | 撮像装置 | |
JP5699480B2 (ja) | 焦点検出装置およびカメラ | |
JP2009159226A (ja) | 撮像素子、焦点検出装置、焦点調節装置および撮像装置 | |
US9602716B2 (en) | Focus-detection device, method for controlling the same, and image capture apparatus | |
JP5609232B2 (ja) | 撮像装置 | |
JP2021184101A (ja) | 焦点検出装置 | |
JP5228777B2 (ja) | 焦点検出装置および撮像装置 | |
JP2018028677A (ja) | 焦点検出装置および撮像装置 | |
JP5747510B2 (ja) | 撮像装置 | |
JP6222278B2 (ja) | 焦点検出装置および撮像装置 | |
JP5332384B2 (ja) | 相関演算装置、焦点検出装置および撮像装置 | |
JP6477597B2 (ja) | 焦点検出装置および撮像装置 | |
JP4968009B2 (ja) | 相関演算方法、相関演算装置、焦点検出装置および撮像装置 | |
JP6699768B2 (ja) | 焦点検出装置およびカメラ | |
JP4968010B2 (ja) | 相関演算方法、相関演算装置、焦点検出装置および撮像装置 | |
JP6631002B2 (ja) | 撮像装置 | |
JP2018191304A (ja) | 撮像素子および撮像装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210902 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20220516 |