以下、図1乃至図7を参照して、本発明の第1の実施例を説明する。本実施例は、本発明のオートフォーカス装置をデジタルカメラである撮像装置に適用した例である。
図1(a)は本実施例に係わる撮像装置であるデジタルカメラの中央断面図である。本デジタルカメラは、カメラユニットとこれに着脱式に装着可能なカメラユニットから構成されている。しかし、本発明が適用可能な撮像装置は、図1の構成に限るものではなく、レンズユニットとカメラユニットが一体化された構成であってもよい。
図1(b)は図1(a)のデジタルカメラの構成を示すブロック図である。図1(a)および図1(b)で同一の符号が付してあるものはそれぞれ対応している。
図1(a)において、1はカメラユニットを、2はカメラユニット1に着脱式に装着可能なレンズユニットを、3は撮影光学系を形成するレンズを、4は撮影光学系の光軸を、6は撮像素子を示す。また、9は背面表示装置を、11はカメラユニット1とレンズユニット2の電気接点を、12はレンズユニット2に設けられたレンズシステム制御部を、14はクイックリターン機構を、16はカメラユニット1に設けられたファインダ表示部をそれぞれ示す。
図1(b)を参照すると、カメラ1およびレンズ2からなるカメラシステムは、撮像系、画像処理系、記録再生系、制御系を有する。撮像系は、撮影光学系3 、撮像素子6を含み、画像処理系は、画像処理部7を含む。また、記録再生系は、メモリ部8、表示部9を含み、制御系は、カメラシステム制御部5、操作検出部10、およびレンズシステム制御部12、レンズ駆動手段13を含む。レンズ駆動部13は、焦点レンズ、ブレ補正レンズ、絞りなどを駆動することができる。
撮像系は、物体(被写体)からの光を(被写体光)、撮影光学系3を介して撮像素子6の撮像面に結像する光学処理系である。撮像素子6表面にはマイクロレンズが格子状に配置してあり、いわゆるマイクロレンズアレイ(以下 MLA)を形成している。MLAは本実施例において、瞳分割手段を構成する。MLAの機能や配置の詳細については図2を用いて後述する。後述するように、撮像素子6からピント評価量/適当な露光量が得られるので、この信号に基づいて適切に撮影光学系3が調整されることで、適切な光量の被写体光を撮像素子6に露光するとともに、撮像素子6近傍で被写体像が結像する。
画像処理部7は、内部にA/D変換器、ホワイトバランス回路、ガンマ補正回路、補間演算回路等を有しており、記録用の画像を生成することができる。また、本発明に係わる像シフト、像生成、コントラスト評価、相関計算等の処理を行う構成とすることも可能である。本実施例ではこれらの要素はカメラシステム制御内に配置する場合を想定して記載する。
メモリ部8は実際の記憶部に加えて記録に必要な処理回路を備えている。メモリ部は、記録部へ出力を行うとともに、表示部9に出力する像を生成、保存する。また、メモリ部8は、予め定められた所定の方法を用いて画像、動画、音声などの圧縮処理を行う。
カメラシステム制御部5は撮像の際のタイミング信号などを生成し、外部操作に応動して撮像系、画像処理系、記録再生系をそれぞれ制御する。例えば、不図示のスイッチの操作による撮影条件の設定やシャッターレリーズ釦の押下を操作検出部10が検出して、撮像素子6の駆動、画像処理部7の動作、メモリ部8の圧縮処理などを制御する。さらに表示部9によって液晶モニタ等に情報表示を行う情報表示装置の各セグメントの状態を制御する。
制御系の光学系の調整動作について説明する。カメラシステム制御部5には画像処理部7が接続されており、撮像素子6からの信号に基づいて適切な焦点位置、絞り位置を求める。カメラシステム制御部5は、電気接点11を介してレンズシステム制御部12に指令を送出し、レンズシステム制御部12は指令を受信してレンズ駆動手段13を適切に制御する。さらにレンズシステム制御部12には不図示の手ぶれ検出センサが接続されており、手ぶれ補正を行うモードにおいては、手ぶれ検出センサの信号を元にレンズ駆動手段13を介してブレ補正レンズを適切に制御する。
また、カメラシステム制御部5は、本発明の特徴である画素選択の制御を行う制御部。カメラシステム制御部5による制御は、当該制御部に含まれるCPUが図示しないメモリに記憶されている制御プログラムをロードして実行することによって実現される。
図2は、本実施例における撮影光学系の要部を説明する図である。同図において、図1と同じ部分は同じ符号を付して示す。
本発明を適用するためには、いわゆる光線空間情報等といわれる光線の位置に加えて角度の情報を取得する必要がある。本実施例では、角度情報の取得のために撮影光学系3の結像面近傍にMLAを配置するとともに、MLAを構成する1つのレンズに対して複数の画素(光電変換部)を対応させている。
図2(a)は撮像素子6とMLA200の関係模式的に示す図である。図2(b)は撮像素子の画素とMLAの対応を示す模式図である。図2(c)はMLAによってMLA下に設けられた画素が特定の瞳領域と対応づけられることを示す図である。
図2(a)に示すように撮像素子6上にはMLA200が設けられており、MLA200の前側主点は撮影光学系3の結像面近傍になるように配置されている。図2(a)は撮像装置の横からと、正面からMLA200を見た状態を示しており、撮像装置正面から見るとMLA200のレンズが撮像素子6上の画素を覆うように配置されている。なお、図2(a)ではMLAを構成する各マイクロレンズを見やすくするために、大きく記載したが、実際には各マイクロレンズは画素の数倍程度の大きさしかない。実際の大きさについては図2(b)を用いて説明する。
図2(b)は図2(a)の装置正面からの図を一部拡大した図である。図2(b)に示す格子状の枠は、撮像素子6の各画素を示している。一方MLA200を構成する各マイクロレンズは太い円220a,220b,220c,220dで示した。図2(b)から明らかなようにマイクロレンズ1つに対して複数の画素が割り当てられており、図2(b)の例では、5行x5列=25個の画素が1つのマイクロレンズに対して設けられている。すなわち各マイクロレンズの大きさは画素の大きさの5倍x5倍の大きさである。
図2(c)は撮像素子6を、マイクロレンズ光軸を含みセンサの長手方向が図の横方向になるように切断した図である。図2(c)の221、222、223、224、225は撮像素子6の画素(1つの光電変換部)を示している。一方図2(c)の上方に示した図は撮影光学系3の射出瞳面を示している。実際には、図2(c)の下方に示したセンサの図と方向を合わせると、射出瞳面は図2(c)の紙面垂直方向になるが、説明のために投影方向を変化させている。また、図2(c)においては説明を簡単にするために、1次元の投影/信号処理について説明する。実際の装置においては、これを容易に2次元に拡張することができる。
図2(c)の画素221、222、223、224、225は図2(b)の221a、222a、223a、224a、225aとそれぞれ対応する位置関係にある。図2(c)に示すように、マイクロレンズ200によって各画素は撮影光学系3の射出瞳面上の特定の領域と共役になるように設計されている。図2(c)の例では画素221と領域231が、画素222と領域232が、画素223と領域233が、画素224と領域234が、画素225と領域235がそれぞれ対応している。すなわち画素221には撮影光学系3の射出瞳面上の領域231を通過した光束のみが入射する。他の画素も同様である。結果として、瞳面上での通過領域と撮像素子6上の位置関係から角度の情報を取得することが可能となる。
ここで後ほどの説明を簡単にするために記号を導入する。図2(c)に示すように、撮像素子6の画素ピッチをΔx、角度分解能をΔθとする。さらに角度の分割数をNθ(図2の例ではNθ=5)とする。画素ピッチは撮像素子6の形状によって決定され、Δθは光線の角度を取得する範囲と角度分割数Nθで決定される。すなわち、物理的な構造(撮像素子6およびMLA200の構造)のみによってこれらのパラメータは決定される。
本実施例に示した撮影光学系を利用して、撮像素子6の信号からピント評価値を得る処理について図3、図4、図5及び図6を用いて説明する。
図3は図1に示す本実施例に係わる撮像装置の測距動作を説明するためのフローチャートである。図3(a)はピント評価値を得る測距動作の全体を、図3(b)は現像動作を、図3(c)は像シフト動作を、図3(d)は像生成動作のフローチャートをそれぞれ示す。また、図3(e)はコントラスト評価動作を、図3(f)は相関計算動作のフローチャートをそれぞれ示す。
まず、本実施例に係わる撮像装置全体の動作を簡単に説明する。
図1(b)に示した操作検出部10がユーザによる図示しない電源スイッチの操作(ON/OFF)を検出する。その後、撮像装置はユーザによる操作からの割り込みを待つ状態に移行する。ユーザのレリーズ操作や動画撮影開始動作を検知すると、必要に応じて図3(a)で示すAF動作(測距動作)を実施する。
次に本発明に係わるAF動作について図3を参照して説明する。
ステップS301は測距動作の開始を示している。例としては、静止画撮影時のレリース操作の1段目の検出や動画撮影時における適当な間隔での測距動作などが該当する。
ステップS302では測距動作の条件を決定する。ここで言う条件とは、測距の方法(位相差AF/コントラストAF)のみならず、距離計算をおこなう測距点、測距枠の大きさ、AFの評価値を得る間隔や点数、コントラストAFにおけるフィルタの帯域の設定など図3で説明する各部の設定を含む。また、後述する画素選択モードでの間引き率をここで設定するようにしてもよい。これらの値は、撮影状態(静止画か動画か)、光学系の状態(焦点距離)、ユーザ操作の状況(最初の測距動作か既に被写体を捉えている状態での継続的な測距動作か)等、撮像装置の撮影条件を取得して(撮影条件取得手段)適宜設定される。
ステップS303では、決定された条件に基づいて位相差AFでの測距動作を行うか、コントラストAFでの測距動作を行うかの判断がなされる。コントラストAFの場合にはS304に、位相差AFの場合にはS310に進む。
コントラストAFを行うステップS304では、カメラシステム制御部5によって第1の画素選択モードが選択されて設定される。この時、第1の画素選択モードでは、一定周期ですべての瞳領域に対応する画素を選択するように画素を選ぶ。より具体的な選択については図6(a)を用いて後述する。
ステップS305ではステップS304で選択された第1の画素選択モードに対応する画素を撮像素子6から読み出す(画素信号取得)。またステップS302で設定された測距点情報をもとに、それぞれの測距点に対応できる範囲の情報を読み出す。
ステップS306からステップS311はループを形成しており、ステップS302で設定されたそれぞれの測距点でのAF演算を行う。
ステップS307からステップS310はループを形成しており、ステップS302で設定された条件(適当な現像位置)に合わせて各現像面でのピント評価を行う。ここでのピント評価はいわゆるコントラストに基づくものであるが、信号の読み出しはステップS305でのみ行われている。すなわち、光線情報を利用して像を再構成することで信号を取得した面(撮像面)ではない面での像が得られるので、一度の信号の読み出しで異なる現像位置での像に対してコントラストAFが行われる。
ステップS308は現像ルーチンを呼び出し、設定された現像面での像を生成する。現像ルーチンによる現像動作の詳細については図3(b)を用いて後述する。
ステップS309ではコントラスト評価ルーチンを呼び出し、ステップS308で得られた像のコントラスト値からピント評価値を得る。コントラスト評価ルーチンによるコントラスト評価動作の詳細については図3(e)を用いて後述する。
ステップS312では各現像面のピント評価値からピント評価値が最良となる現像面(コントラストが最大となる現像面)を選択して現在のピント面との差をピントの評価値として出力する。
一方、位相差AFを行うステップS313では、カメラシステム制御部5によって第2の画素選択モードが指示される。この時、第2の画素選択モードでは、特定の2つの瞳領域に対応する画素を選択するように画素を選ぶ。より具体的な選択については図6(b)を用いて後述する。
ステップS314ではステップS313で選択された第2の画素選択モードに対応する画素を撮像素子6から読み出す。またステップS302で設定された測距点情報をもとに、それぞれの測距点に対応できる範囲の情報を読み出す。
ステップS315からステップS319はループを形成しており、ステップS302で設定されたそれぞれの測距点でのAF演算を行う。
ステップS316からステップS318はループを形成しており、ステップS302で設定された条件(適当な位相の計算範囲や視野長など)に合わせて各位相差でのピント評価を行う。
ステップS317は相関計算ルーチンを呼び出し、各位相差でのピント評価値を得る。相関計算ルーチンによる相関計算動作の詳細については図3(f)を用いて後述する。
ステップS320では各位相差でのピント評価値からピント評価値が最良となる位相差(=いわゆるA像とB像が一致する位相差)を計算した後、基線長の換算を行いピントの評価値として出力する。
ステップS321では各測距点のピント情報(各測距点でのピント評価値やその微分値等)や過去のピント情報、さらには別のセンサの情報をもとにピントを合わせるべき主被写体を判断してAFシステム全体としてのピント評価値を決定する。
ステップS322で測距動作を終了する。
図3(a)を用いて説明した様に、ステップS306からステップS312で第1のピント評価手段を、ステップS315からステップS320で第2のピント評価手段をそれぞれ形成している。
図3(b)を用いて現像ルーチンによる現像動作を説明する。
ステップS326は現像動作の開始を示している。
ステップS327は像シフトルーチンを呼び出し、取得した像を通過した瞳情報(入射角度の情報)をもとに、現像面に適した量だけシフトさせる。ここで、現像面とは、本ルーチンの呼び出し元でのステップS307からステップS310で設定されるピント評価面のこと称する。現像面において像の再構成が行なわれる。像シフトルーチンによる像シフト動作の詳細については図3(c)を用いて後述する。
ステップS328は像生成ルーチンを呼び出し、ステップS327でシフトさせた像を重ね合わせる(即ち、画素信号を加算する)ことで現像面での像を得る。これによりいわゆる現像がなされる。像生成ルーチンによる像生成動作の詳細については図3(d)を用いて後述する。
本実施例においては、像のシフトと加算によって現像を行う方法を例示したが、光線情報を利用して、像を取得した面とは異なる面での像を生成(再構成)する方法であればどのような方法でも利用することが可能である。
図3(c)を用いて像シフトルーチンによる像シフト動作について説明する。
ステップS331は像シフト動作の開始を示している。
ステップS332からステップS335はループを形成している。ステップS332では瞳分割数に応じた数だけループ計算が実行される。例えば、図2に示した例では、5x5=25個に分割されていたので、25個のそれぞれの瞳位置に応じた計算がなされる。図4を用いて後述するように、像の再構成を考えると同じ再構成面であっても入射角度が異なると像をシフトさせる量が異なる。これを適切に反映させるためのループである。
ステップS333では各画素とそれに対応する瞳領域の情報をもとに、評価位置を行っている現像面での各瞳領域での像シフト量を計算する。図2を用いて説明した様に、瞳分割手段として動作するマイクロレンズアレイ200と画素の対応は固定的であり、撮影状態によって変化することは無い。この撮像素子6の各画素とMLA200との対応関係がカメラユニット1に記憶されており、各画素がどの瞳領域の光線を受光しているかが分かるのでこれを像シフト量の算出に用いている。
ステップS334では同じ瞳領域を通過した光束(=同じ入射角の光束)を受光した画素の信号をシフトさせる。同じ入射角の光線を得ている画素は例えば図2(b)の225aと225bが該当する。このような画素がMLA200を構成するマイクロレンズの数だけ存在している。
像シフト動作については、図4および図5を用いてさらに説明する(後述)。
ステップS336において、呼び出し元のステップS327に戻る。
図3(d)を用いて像生成手段の動作の詳細を説明する。ステップS341は像生成手段の動作開始を示している。
ステップS342では、ステップS345での加算のための領域のデータを初期化(0で埋める)する。この時のデータ領域の大きさはMLA200の数量あれば良く、データの諧調は元のデータの諧調と瞳分割数の積を格納できるだけあれば都合がよい。例えば元のデータが8bitで25分割の場合、13bit (> 8bit + log225)あればデータの桁あふれを考慮する必要が無い。
ステップS343からステップS347はループを形成している。ステップS343ではMLA200を構成するマイクロレンズの数に応じてループ計算が実行される。例えば、図2に示した例では、元の撮像素子の画素数÷25(瞳分割数)がマイクロレンズの数となる。
ステップS344からステップS346はループを形成している。ステップS344では、瞳分割数に応じた数だけループ計算が実行される。例えば、図2に示した例では、5x5=25個に分割されていたので、25個のそれぞれの瞳位置からの光束がステップS345で加算される。シフト量が画素の整数倍でない場合は、加算S345において、適当に内分されながら加算される。例えば、重なっている面積に応じて適当に加算すればよい。
像生成手段は、後において図4および図5を用いてさらに説明する。
ステップS348において、像生成ルーチンの呼び出し元のステップS328に戻る。
図3(e)を用いてコントラスト評価ルーチンによるコントラスト評価動作の詳細を説明する。
ステップS351はコントラスト評価動作の開始を示している。
ステップS352では、コントラスト評価を行う評価枠の大きさを設定する。評価枠の大きさの設定は、小さすぎると被写体の局所的な特徴のみを評価することになり評価値が不安定になる場合があり、大きすぎると狙った被写体にピントを合わせにくくなる。撮影光学系の焦点距離などに応じて適宜設定すれば良い。
ステップS353からステップS357はループを形成している。このループは評価枠の大きさに対応したループになっており、本実施例ではコントラスト評価は1方向で行いその他の方向は加算される。つまり、被写体枠内の2次元的な広がりを持つ画像の特定の方向の1次元信号でコントラスト評価を行う(後述)とともに、ステップS353からステップS357のループにより他の方向の加算がなされ、被写体枠に対応する評価値を得る。
ステップS354は帯域通過フィルタ(BPF)であり、コントラスト評価を行うのに適した周波数帯の信号を選択的に取り出す。ここでいう周波数とはいわゆる空間周波数(時間方向の一般的な周波数とは異なる)に対応しており、被写体像の明暗信号の細かさに対応している。
ステップS355はステップS354の出力に対してピークホールドを行う。
ステップS356はステップS355の出力を積分する。ステップS354からステップS356の演算によって被写体像に含まれる特定の周波数帯の信号の大まかなコントラスト値(良い近似値)を簡易な計算で得ることが可能となる。
ステップS358で積分値をコントラストの評価値として設定する。
ステップS359で本コントラスト評価ルーチンの呼び出し元のステップS309に戻る。
図3(f)を用いて相関評価ルーチンによる相関評価動作の詳細を説明する。ステップS361は相関評価動作の開始を示している。
ステップS362では、コントラスト評価を行う評価枠の大きさを設定する。評価枠の大きさの決定方法はコントラストAFの時と同様に決定すれば良い。
ステップS363からステップS365はループを形成している。このループは評価画素数(評価枠の大きさに対応する)に対応したループになっている。
ステップS364はいわゆる相関を計算する。ここでの相関はA像とB像の差の絶対値を加算している。実際にはステップS363からステップS365のループによって加算が実行される。ここでは相関計算方法の一例としてA像とB像の差の絶対値を用いたが、別の相関計算方法も活用することも可能である。
ステップS366でステップS364において計算された相関値を評価値として設定する。
ステップS367で、相関評価ルーチンの呼び出し元のステップS317に戻る。
次に図4を用いて像シフトおよび像生成を模式的に示し、像の再構成によるコントラスト計算の有用性について述べる。
図4(a)、(b)、(c)において、図4(b)は実際に撮像素子6が存在して画像を取得した面を、図4(a)は図4b)よりも物体側の再構成面(再構成面1とする)をそれぞれ示す。また、図4(c)は図4(b)よりも物体側から遠い側の再構成面(再構成面2とする)を示している。
図4(b)において、X1,i、X2,i、X3,i、X4,i、X5,i、はそれぞれ瞳領域1、2、3、4、5を通過してマイクロレンズXiに入射して得られた画像データを示している。すなわち、添え字のうち前半は通過する瞳領域を、後半は画素の番号を示している。また、図4においても説明を簡単にするためにデータを1次元的な広がりしかもたないものとして記述している。物理的な位置との関係においては、X1,iは図2(c)の221領域から得られるデータを、X2,iは図2(c)の222領域から得られるデータを、以下添え字の3、4、5は領域223、224、225に対応していることを示している。
取得面での画像を生成するためには、図4(b)にあるように、マイクロレンズXiに入射したデータを加算すればよい。具体的には、Si = X1,I + X2,i + X3,i + X4,i + X5,iでXiに入射した光の角度方向の積分値を得ることができる。これにより通常のカメラと同様の像が生成される。
次に再構成面1での像の生成方法を考える。図2で説明したように、本実施例の撮影光学系は、各画素に入射する光束を特定の瞳領域に限定しているために、入射角度が既知である。この角度に沿って再構成面での各画素の位置を再構成する。具体的にはX1,iのように瞳領域の添え字が1のものは図4(d)において41に示すような角度で入射しているとする。以下瞳領域の添え字2,3,4,5はそれぞれ42,43,44,45に対応しているとする。この時再構成面1でのマイクロレンズXiに入射した光束は、取得面においては、Xi-2からXi+2に分散して入射していることになる。より具体的には、X1,i-2、X2,i-1、X3,i、X4,i+1、X5,i+2に分散している。Xiに限らず再構成面1での像を復元するためには、入射角度に応じて像をシフトさせて加算すれば良いことが分かる。再構成面1での像を生成するためには、瞳領域の添え字が1のものは右に2画素シフト、瞳領域の添え字が2のものは右に1画素シフト、瞳領域の添え字が3のものはシフトなしとする。また、瞳領域の添え字が4のものは左に1画素シフト、瞳領域の添え字が5のものは左に2画素シフトする。これにより入射角度に応じたシフトを与えることができる。その後図4(a)の縦方向に加算することで再構成面1でのデータを得ることができる。具体的には、Si = X1,i-2 + X2,i-1 + X3,i + X4,i+1 + X5,i+2で再構成面1において、Xiに入射した光の角度方向の積分値を得ることができる。これにより再構成面での画像が得られた。
ここで、再構成面1において、Xiに輝点があったとすると、取得面においてはX1,i-2、X2,i-1、X3,i、X4,i+1、X5,i+2に分散していわゆるボケ状態にある。しかしながら、上述した再構成面1での像を生成すると、再びXiに輝点が生成されコントラストの高い像が得られる。すなわち像を再構成してコントラストを計算することで、いわゆるコントラストAFを行うことが可能となる。
また、図4(c)から分かるように、再構成面2においても再構成面と全く同様に像を生成することができる。ただ、再構成面を配置する方向が異なるので(物体に対して反対側)シフトさせる方向を反転させれば良いだけである。
図2、図3および図4を用いて説明した様に、画像を1度しか読みださずに、像を再構成してコントラストを行うことでコントラスト評価値を得ることは可能であるが、この時のボケの再現状態に着目する。
すなわち図4(a)の説明において、“再構成面1において、Xiに輝点があったとすると取得面においてはX1,i-2、X2,i-1、X3,i、X4,i+1、X5,i+2に分散していわゆるボケ状態にある。”と説明したが、ボケを正確に表現するためには各瞳領域の情報が必要になる。極端な例として、1つの瞳領域しか用いない場合は、像の再構成によってはボケが再現されないことになる。これはコントラストAFを行う場合は広い瞳領域の情報を選択することに対応する。
一方で、位相差AFを行う場合は、基線長を安定させるために特定の2つの瞳領域に対応する情報を選択することが好ましい。
図5を用いて画像の現像(再構成)をさらに説明する。本実施例では、AFモードに応じて画素選択モードを決定し、決定された画素選択モードに従って撮像素子6から画素信号を読み出している(S305、S314)。本実施例のAF動作では、画素信号の読み出しはこれ一回であり、コントラストAF動作において評価値を得るために生成(現像)される再構成画像は、上記一回の読み出しで得られた画素信号から所定の方法で生成される。
図3及び4を用いて説明した様に、いわゆる現像においては像をシフトさせた後に加算を行っている。本実施例の測距動作に適した画素信号を得るためには、適当な間引きを行いながら加算を実施する。なお、間引きの必要性については後述する。図5は、画素を間引き率1/2で間引きながら読み出した画素信号からコントラストAFのための像の再構成処理を行っている様子を示す。図5(a)は撮像素子がある面での像の再構成を(図4(b)に対応)、図5(b)は図5(a)よりも物体側にある面での再構成を(図4(a)に対応)それぞれ示している。なお、本実施例の場合、図5の例で読み出される画素は、AFモードに対応した画素選択モード(S304)で選択される画素である。
図5(a)の例では1/2に画素を間引きながらすべての瞳領域を含むように再構成像の1画素を形成するので(Nθ個加算すれば良い)、2つのマイクロレンズに対して選択された画素を加算して再構成画像の1画素の信号を生成する。すなわち一番左のマイクロレンズ下の画素221,223,225に対応する信号を、その隣のマイクロレンズ下の画素222,224に対応する信号と加算してコントラストAF評価を行う像の1画素とする。以下、図5(a)に示したようにそれぞれ2つのマイクロレンズに対応する画素の光電変換信号を選択して加算していけば良い。図5では、加算後の信号(コントラストAF評価を行う像の1画素)を加算1、加算2、という形で図示した。
図5(b)の再構成においては、図4に示したようにシフトさせながら加算を行う。すなわち画素221に対応する信号は図5(b)において図5(a)に較べて2つ右の加算ポイントに、画素22に対応する信号は図5(b)において1つ右の加算ポイントに連結する。また、画素223に対応する信号は図5(b)において図5(a)と同じ加算ポイントに、画素224に対応する信号は図5(b)において1つ左の加算ポイントに、画素225に対応する信号は図5(b)において2つ左の加算ポイントに連結する。これにより、再構成像を得ることが出来る。
図6を用いて本発明に係わる画素選択構成を説明する。
図6(a)はコントラストAFに適した読み出し方法(すなわち第1の画素選択)を、図6(b)は位相差AFに適した読み出し方法(すなわち第2の画素選択)をそれぞれ示す。図6(c)はコントラストAFに適した読み出し位置を2次元的に示す図である。図6(d)は位相差AFに適した読み出し位置を2次元的に示す図である。
図6において、図2と同じ部分は同じ符号を付して示す。
図6(a)のコントラストAFに適した画素選択においては、前述した様に全ての瞳領域に対応するために、ここでは4個に1個の割合で画素を選択するようにしている。この画素選択ピッチは角度の分割数Nθと互いに素になるように、例えば適宜設定すればよい。この設定はカメラユニットの操作検出部10を介して設定するようにしてもよいし、カメラシステム制御部5に設定機能を持たせてもよい。この場合、測距動作では、S302において設定情報を取得し、それに基づいて画素選択を設定する。なお、後述するように、画素選択ピッチは測距精度を維持できる範囲で設定されることが必要である。
このようにすることで図6の例では4つのマイクロレンズ下にある画素で1つの周期ですべての瞳領域の信号を取得できる。さらに具体的には図6(a)の例では、一番左のマイクロレンズに対応して画素221,225に対応する画素信号(図6の信号では1,5と記載している)を選択する。その次のマイクロレンズに対しては画素224に対応する信号(図6の信号では4と記載している)を、その次のマイクロレンズに対しては画素223に対応する信号を(図6の信号では3と記載している)を選択する。さらにその次のマイクロレンズに対しては画素222に対応する信号(図6の信号では2と記載している)を選択し、この4つのマイクロレンズでコントラスト評価用の1画素を形成するように加算がなされる。
図6(a)では1次元で説明を行ったが、これは容易に2次元に拡張できる。図6(c)は具体的に2次元的な広がりをもった面でコントラストAFに適した画素選択を示した図である。
図6(c)において黒く塗った画素は選択される画素を示しており、横方向には図6(a)で示したように4個に1個の画素を選択するようにするとともに、縦方向には4ラインにつき1ラインを1画素ずつ横にずらしながら選択している。このようにすることで、領域60で図示した4x4のマイクロレンズに対して5x5=25の瞳領域に対応する画素が選択されていることが分かる。
図6(a)および図6(c)に示したように、第1の画素選択モードでは一定周期ですべての瞳領域に対応する画素が含まれるように画素が選択される。
図6(b)の位相差AFに適した画素選択においては、特定の2つの瞳領域に対応する画素のみを選択する。さらに具体的には図6(b)の例では一番左のマイクロレンズ下から画素222,224に対応する信号が(図6の信号では2,4と記載している)、その2つ隣りのマイクロレンズ下からも同じく画素222,224に対応する信号が選択される。さらに2つ隣りのマイクロレンズ下からも同じく画素222,224に対応する信号が選択される。このように画素222に対応する画素のみを並べて位相差計算におけるA像を形成し、同様に画素224に対応する画素のみを並べて位相差計算におけるB像を形成する。この2つの像から図3(f)に示したように相関を計算することで最も相関が良くなる位相差を求める。さらにはここで選択した画素、さらには対応する瞳領域の情報からいわゆる三角測量の原理によって被写体までの距離を求めることが可能となる。
図6(b)では1次元で説明を行ったが、これは容易に2次元に拡張できる。図6(d)は具体的に2次元的な広がりをもった面で位相差AFに適した画素の選択位置を示した図である。
図6(d)において黒く塗った画素は選択される画素を示している。横方向には図6(b)で示したように、2つのマイクロレンズに1対(2個)の画素を選択するとともに、縦方向には図6(b)で選択されるマイクロレンズが交互になるようにマイクロレンズの位置をずらしながら画素を選択している。
図6(b)および図6(d)に示したように、第2の画素選択モードでは特定の2つの瞳領域に対応する画素を選択するように画素が決定される。
ここまで図6を用いて説明してきたように、いわゆる測距動作においては、撮像素子6のすべての画素を選択していない。これは画素の読み出しおよび処理には一定の時間がかかるため、測距精度を維持できる範囲の間引き率で画素の間引きを行なっているためである。この間引き動作により適当な測距精度を維持しながら測距動作を高速化して、軽快な応答を実現している。
図7を用いて本実施例に適用可能な別の光学系の例について説明する。図7は物体(被写体)からの光線が撮像素子6上に結像する状態を模式的に示した図である。同図において、図1及び図2と同じ部分は同じ符号を付して示す。
図7(a)は図2で説明した光学系と対応しており、撮影光学系3の結像面近傍にMLA200を配置した例である。図7(b)は撮影光学系3の結像面よりも物体寄りにMLA200を配置した例である。図7(c)は撮影光学系3の結像面よりも物体から遠い側にMLA200を配置した例である。
図7において、6は撮像素子を、200はMLAを、231から235は図で用いた瞳領域を、71は物体平面を、71a,71bは物体上の適当な点を、72は撮影光学系の瞳平面を示す。また、220e、220f、220g,220h,220i,220j,220k,220l,220mはMLA200上の特定のマイクロレンズをそれぞれ示している。図7(b)および(c)に示した6aは仮想的な撮像素子を、200aは仮想的なMLAを示している。これらは、図7(a)との対応関係を明確にするために参考に示した。また、物体上の点71aから出て瞳平面上の領域231および233を通過する光束を実線で、物体上の点71bから出て瞳平面上の領域231および233を通過する光束を破線で図示した。
図7(a)の例では、図2でも説明したように、撮影光学系3の結像面近傍にMLA200を配置することで、撮像素子6と撮影光学系の瞳平面72が共役の関係にある。さらに、物体平面71とMLA200が共役の関係にある。このため物体上の点71aから出た光束はマイクロレンズ220eに、71bを出た光束はマイクロレンズ220fに到達し、領域231から235それぞれを通過した光束はマイクロレンズ下に設けられたそれぞれ対応する画素に到達する。
図7(b)の例では、マイクロレンズアレイ200で撮影光学系3からの光束を結像させ、その結像面に撮像素子6を設ける。このように配置することで、物体平面71と撮像素子6は共役の関係にある。物体上の点71aから出で瞳平面上の領域231を通過した光束はマイクロレンズ220gに到達し、物体上の点71aから出で瞳平面上の領域233を通過した光束はマイクロレンズ220hに到達する。物体上の点71bから出で瞳平面上の領域231を通過した光束はマイクロレンズ220hに到達し、物体上の点71bから出で瞳平面上の領域233を通過した光束はマイクロレンズ220iに到達する。各マイクロレンズを通過した光束は、マイクロレンズ下に設けられたそれぞれ対応する画素に到達する。このように物体上の点と、瞳平面上の通過領域によって、異なる位置にそれぞれ結像する。これらを、仮想的な撮像面6a上の位置に並べなおせば、図7(a)と同様の情報(再構成画像))を得ることができる。すなわち、通過した瞳領域(入射角度)と撮像素子上の位置の情報を得ることができる。
図7(c)の例では、マイクロレンズアレイ200で撮影光学系3からの光束を再結像させ(一度結像した光束が拡散する状態にあるものを結像させるので再結像と呼んでいる)、その結像面に撮像素子6を設ける。このように配置することで、物体平面71と撮像素子6は共役の関係にある。物体上の点71aから出で瞳平面上の領域231を通過した光束はマイクロレンズ220lに到達し、物体上の点71aから出で瞳平面上の領域233を通過した光束はマイクロレンズ220jに到達する。物体上の点71bから出で瞳平面上の領域231を通過した光束はマイクロレンズ220mに到達し、物体上の点71bから出で瞳平面上の領域233を通過した光束はマイクロレンズ220lに到達する。各マイクロレンズを通過した光束は、マイクロレンズ下に設けられたそれぞれ対応する画素に到達する。図7(b)と同様に、仮想的な撮像面6a上の位置に並べなおせば、図7(a)と同様の情報を得ることができる。すなわち、通過した瞳領域(入射角度)と撮像素子上の位置の情報を得ることができる。
なお、図7ではMLA(位相変調素子)を瞳分割手段として用いて、位置情報と角度情報を取得可能な例を示したが、位置情報と角度情報(瞳の通過領域を制限することと等価)を取得可能なものであれば他の光学構成も利用可能である。例えば、適当なパターンを施したマスク(ゲイン変調素子)を撮影光学系の光路中に挿入する方法も利用できる。
また上述した本発明の第1の実施例によれば、位相差AFと像の再構成によるコントラストAFの双方を行う撮像装置において、各AFに適切な画素選択を備えたオートフォーカス装置を実現することが可能となる。
なお、本実施例においてはAF動作を撮像装置の撮影予備動作(エイミングやフレーミングと呼ばれる動作)で行う場合を中心に記載をした。しかし、本実施例に係わる撮像装置の信号には視差信号が含まれているので、撮像後にピント状態を変化させながら像を得ることが出来るので、このような撮影後のピント合わせ(リフォーカス)においても本発明は適用可能である。
また、撮像装置でリフォーカスを行う場合は背面表示部9上にタッチセンサを設けておき、ユーザーの指示した被写体に対してリフォーカスを行うことなどが考えられる。この時の動作を高速化するためにも本発明のオートフォーカス構成を利用することが可能である。
さらには、別途の情報処理装置(例えばPCやスマートフォン)等においても上記と同等のタッチパネルやポインタでのクリック等に対応してリフォーカスを行うことなどが考えられる。この場合にもリフォーカス動作を高速化するために本発明のオートフォーカス構成を利用することが可能である。
以上に説明したように、本実施例によれば、瞳分割手段を備えた撮像手段の構造に応じて適切に位相差AFとコントラストAFを使い分けることが可能な撮像装置を提供するこができる。結果として、高速かつピント精度の高いAFを行うことを可能にした撮像装置を提供することが可能となる。
前述した本発明の実施形態における画像符号化装置を構成する各手段、並びに画像符号化方法の各工程は、CPUのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記憶したコンピュータ読み取り可能な記憶媒体は本発明に含まれる。
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図3に示すフローチャートに対応したプログラム)を、システムまたは装置に直接、または遠隔から供給する場合も含む。そして、そのシステムまたは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスクなどがある。さらに、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM、DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する方法がある。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、その他の方法として、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、その他の方法として、まず記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。