【実施例1】
【0017】
まず、
図1を参照して、本発明の実施例1における焦点検出装置を有する撮像装置の構成について説明する。
図1は、本実施例における撮像装置10(カメラシステム)の構成を示すブロック図である。撮像装置10は、一つのマイクロレンズを共有する複数の画素(第1の画素および第2の画素)を備えた撮像素子を用いて位相差方式の焦点検出を行う焦点検出装置を含んで構成されている。なお本実施例の焦点検出装置は、撮像光学系を介して得られた光学像を取得可能に構成された撮像装置(撮像装置本体)と、撮像装置本体に着脱可能なレンズユニット(撮像光学系)とを備えて構成された撮像システムに適用される。ただし、本実施例はこれに限定されるものではなく、レンズユニットが一体的に設けられた撮像装置にも適用可能である。
【0018】
図1において、100は、フォーカスレンズ、ズームレンズ、および、絞りなどを備えて構成されるレンズユニット(撮像光学系)である。101は、レンズユニット100を介して得られた被写体像(光学像)の光電変換を行う撮像センサ(撮像素子)であり、例えばCCDセンサやCMOSセンサからなる。撮像センサ101は、後述のように、一つのマイクロレンズを共有する複数の画素(第1の画素および第2の画素)を有する。102は分割像生成回路(左右像生成回路)である。分割像生成回路102(生成手段)は、撮像センサ101からの出力信号に基づいて、分割された二像を生成する。より具体的には、後述のように、第1の画素および第2の画素のそれぞれから独立して得られた信号を用いて第1の輝度信号および第2の輝度信号をそれぞれ生成する。103は輝度評価回路である。輝度評価回路103は、分割像生成回路102からの出力信号に基づいて、二像の輝度を評価する。輝度評価回路103は、後述のように、第1の輝度信号および第2の輝度信号を用いて第1の画素(第1の光電変換素子)と第2の画素(第2の光電変換素子)との間の移動電荷量を推定する推定手段である。
【0019】
104は撮像信号処理回路である。撮像信号処理回路104は、撮像センサ101からの出力信号を撮像信号として取得し、この撮像信号に対して複数のノイズ処理などを行う。105は画像処理回路(画像処理手段)である。画像処理回路105は、撮像信号処理回路104からの出力信号(画像信号)に対して各種の画像処理を行う。撮像信号処理回路104および画像処理回路105は、後述のように、第1の画素および第2の画素の加算信号を用いて得られた画像信号を処理する。106は、画像を取り外し可能な記憶媒体(不図示)に記憶させるための記憶回路である。107は、画像を記憶する画像メモリである。
【0020】
109はCPUであり、撮像装置10における各種制御、および、焦点算出(相関演算)やレンズ駆動制御を行う。CPU109は、輝度評価回路103(推定手段)の推定結果に基づいて第1の輝度信号および第2の輝度信号を補正する補正手段を含む。またCPU109は、第1の輝度信号および第2の輝度信号の補正値を用いて相関演算を行う演算手段を含む。108は、CPU109で動作するプログラムやそのプログラムで用いられるデータを保持するメモリである。110は、レンズユニット100のフォーカスレンズや絞りなどを駆動するレンズ駆動回路である。
【0021】
図2は、本実施例における撮像センサ101の概略構成図である。
図2において、201は、撮像センサ101の全体200の一部を切り出して拡大したブロックである。ブロック201において、赤色(R)、緑色(G)、青色(B)の各画素はベイヤー配列を構成している。またブロック201において、R、G、Bのそれぞれの画素は、一つのマイクロレンズを共有して二分割されている。すなわち撮像センサ101は、R、G、Bのそれぞれについて、一つのマイクロレンズを共有する二つの画素(第1の画素および第2の画素)を有する。例えば、ブロック201のR画素は二分割されて、A像画素202(第1の画素、第1の光電変換素子)およびB像画素203(第2の画素、第2の光電変換素子)を構成する。以下、A像画素202、B像画素203から出力される像(画素値)をそれぞれA像、B像(A像画素値、B像画素値)という。本実施例の撮像センサ101は、A像画素202およびB像画素201の一方が所定量以上の光量を受けることにより一方の画素に所定以上の電荷量が蓄積された場合、蓄積された電荷量の少なくとも一部を他方の画素へ移動(転送)可能に構成されている。
【0022】
撮像センサ101から得られたA像、B像は、撮像信号処理回路104に出力される場合、A/D変換器(不図示)によりそれぞれA/D変換された後に加算され、A像画素値およびB像画素値の加算画素値が得られる。撮像信号処理回路104は、この加算画素値を通常の一画素の出力(画像信号)として扱う。撮影画像(画像信号)は、撮像信号処理回路104にて所定の信号処理がなされた後、画像処理回路105により所定のフォーマット形式に変換される。そして撮影画像は、記憶回路106により記憶媒体に記憶される。
【0023】
ところで、
図2に示されるような撮像センサ101では、左右の二画素の光の受光量に対する出力(光量に対する感度)が異なる場合、
図3に示されるようなニーポイントが発生する。
図3は、ニーポイントの説明図であり、縦軸は輝度値、横軸は入射光量をそれぞれ示す。
図3において、点線は左画素の入射光量に対する輝度値(出力値)、一点鎖線は右画素の輝度値、実線はこれらの加算値(合成値)をそれぞれ示している。
図3は、左画素の感度は右画素よりも高く、左画素のほうが右画素よりも先に飽和する場合について示している。
【0024】
左画素および右画素のいずれも飽和していない場合、左右の画素の和として平均値が出力され、入射光量に対する輝度値の変化(傾き)も一定となる。しかし、左画素が飽和すると、合成値は右画素の特性(傾き)となり、飽和前の左画素の傾きとは異なる。この場合、入射光量に対するリニアリティが損なわれて、画質が劣化する。そこで、左右いずれか一方の入射光量が所定量を超えて電荷が蓄積された場合(飽和に近づいた場合)、一つのマイクロレンズを共有する一方の画素から他の画素への電荷を移動(転送)させることで、このような影響を軽減させている。
【0025】
一方、撮像センサ101から得られたA像、B像は、分割像生成回路102に出力される場合、そのまま独立して出力される。分割像生成回路102は、A像およびB像をそれぞれ独立した二つの像信号として扱う。分割像生成回路102は、独立して入力された二つの像信号(A像およびB像)のそれぞれを輝度値に変換し、輝度評価回路103に出力する。分割像生成回路102は、ベイヤー単位に従い、A像に関しては、赤画素(R画素)、緑画素(G画素)、青画素(B画素)のそれぞれのA像を加算してA像の輝度Yを取得する。同様に、B像に関しては、赤画素(R画素)、緑画素(G画素)、青画素(B画素)のそれぞれのB像を加算して、B像の輝度Yを取得する。ここで、撮像センサ101のセンサ面上の水平方向読み出し順に配列されたA像の輝度信号配列をA像配列(A像信号)、B像の輝度信号配列をB像配列(B像信号)という。このように生成された二像の輝度信号配列(A像信号、B像信号)は、輝度評価回路103に入力されるとともに、メモリ108に順次格納される。
【0026】
図5は、輝度評価回路103(推定手段)の構成を示すブロック図である。二像の輝度値であるA像信号(第1の輝度信号)およびB像信号(第2の輝度信号)は、入力部501、502にそれぞれ順次入力される。差分回路504(第1の比較手段)は、A像信号と記憶部503に予め記憶されている所定の閾値Cとを比較して、これらの差を演算する。差分回路505(第2の比較手段)は、B像信号と記憶部503に予め記憶されている所定の閾値Cとを比較して、これらの差を演算する。差分回路504、505の出力は、下限リミット0として出力される。
【0027】
所定の閾値Cは、例えば、A像画素とB像画素との間の電荷移動(A−B間クロス)が開始するレベルに設定される。これにより、差分回路504からの出力は、A像からB像へ流出するエネルギー量(電荷量)に略対応する成分となる。ここで、略対応とは、厳密に対応(一致)する場合だけでなく、実質的に対応(一致)すると評価される場合も含む意味である。同様に、差分回路505からの出力は、B像からA像へ流出するエネルギー量(電荷量)に略対応する成分となる。A像信号およびB像信号の両方とも所定の閾値Cを超えていない場合、エネルギーは負にはならないため、下限リミット値として0が設計されている。
【0028】
差分回路504、505からの出力は、差分回路506に入力される。差分回路506(第3の比較手段)は、差分回路504、505からの出力信号に基づいて、電荷の移動方向(クロス方向)に関する情報(移動電荷量に応じた情報)を表すエネルギー量(E値)を算出し、E値(エネルギー値)を出力部507に出力する。すなわち、第1の比較手段の結果と前記第2の比較手段の結果とを比較して、移動電荷量に応じた情報を出力する。E値もA像信号とB像信号の配列に従って順次入力されるため、E値配列となる。E値配列は、メモリ108に順次格納される。ここで移動電荷量とは、第1の画素または第2の画素の一方に蓄積された電荷量が飽和電荷量に近づくことに応じて第1の画素または第2の画素の他方に移動する電荷量である。
【0029】
次に、CPU109は、メモリ108に格納されたA像配列、B像配列、および、E値配列を用いて、以下の式(1)、(2)で表される演算を行い、A像配列A[i]およびB像配列B[i]を補正する。
【0030】
A[i]=A[i]+K×E[i] … (1)
B[i]=B[i]−K×E[i] … (2)
ここで、Kは比例係数であり、実験的に算出可能である。iは配列番号である。算出方法の一例については後述する。このように本実施例において、補正手段としてのCPU109は、線形モデルを用いて第1の輝度信号および第2の輝度信号を補正する。より具体的には、第1の輝度信号および第2の輝度信号に対して、移動電荷量に応じた情報に所定の係数を掛けて得られた値を加算または減算することにより、第1の輝度信号および第2の輝度信号を補正する。そしてCPU109は、上記の式(1)、(2)による補正を行った後のA像配列およびB像配列を用いて、所定の相関演算を行い、位相差を求めて焦点検出処理を行う。
【0031】
次に、
図4および
図6を参照して、本実施例における補正方法(焦点検出方法)について説明する。本実施例の焦点検出方法は、CPU109の指令に基づいて行われる。
【0032】
図4は、デフォーカス時におけるバーチャートの二像の波形図であり、縦軸は信号値、横軸は画素位置をそれぞれ示している。
図4において、波形402、404は、撮像センサ101の出力(A像信号、B像信号)であり、高輝度のバーを撮像して得られたA像配列およびB像配列(輝度信号)をそれぞれ示している。また、波形401、403は、A−B間クロス(A像画素とB像画素との間の電荷移動)がない場合に本来得られるはずの出力(A−B間クロスがない場合におけるA像配列およびB像配列)である。波形405は、波形401と波形402との差分であり、波形402が得られた場合における補正量(輝度信号の補正値)を表している。
【0033】
図6は、本実施例における補正方法(焦点検出方法)を説明する波形図であり、縦軸は信号値、横軸は画素位置をそれぞれ示している。波形601は、A像信号(波形402)と閾値Cとの差であり、差分回路504の出力を示している。波形602は、B像信号(波形404)と閾値Cとの差であり、差分回路505の出力を示している。波形603は、波形601と波形602との差であり、差分回路506の出力、すなわちE値配列を示している。
【0034】
波形603として示されるE値配列を用いて、
図4に示される波形405の補正値を求めることにより、A−B間クロスが発生した状態で得られた波形を元の波形に戻すことが可能である。波形を元に戻すには、多くの非線形処理が必要となるが、重心位置を補正するには、上述の式(1)(2)で表される簡易な線形モデルで十分である。本実施例では、例えば、波形603を2.5倍にする、すなわち波形603に対する比例係数Kを2.5(K=2.5)に設定することで、波形604が得られる。波形605、606は、波形604を用いて元の波形402、404(A像信号、B像信号)のそれぞれを補正して得られた波形(補正後のA像信号、B像信号)である。波形605、606を用いて相関演算を行うことにより得られた焦点検出結果は、
図4の波形401、403を用いて相関演算を行うことにより得られた焦点検出結果と略等しい。このように本実施例によれば、簡易な線形モデルを用いて顕著な補正効果が得られる。
【0035】
図8は、本実施例における焦点検出結果を示すグラフであり、補正前および補正後の結果をそれぞれ比較して示している。
図8において、横軸は被写体のデフォーカス量を示し、縦軸は焦点検出結果を示している。低光量時にはA−B間クロスが生じないため、概ね正確なデフォーカス量を検出することが可能である(実線)。一方、高光量時には、A−B間クロスが発生するため、位相差(デフォーカス量)が小さくなる方向に測距結果(焦点検出結果)に誤差が生じる(二点鎖線)。この二つのグラフの傾きの変化量は、光量(A−B間クロス量、移動電荷量)に依存する。本実施例の補正を行うことにより、高光量時においても、低光量時と略等価な焦点検出結果を得ることができる(点線)。
【実施例2】
【0036】
次に、本発明の実施例2における焦点検出方法について説明する。実施例1の焦点検出方法(補正方法)は、ハードウェアとCPU109によるソフトウェア処理の組み合わせにより、線形モデルとして実現している。ただし、より正確な補正を行うには、前述のとおり、E値配列を用いて
図4の波形405(輝度信号の補正値)を求める必要がある。
【0037】
図7は、本実施例における補正方法を説明する波形図であり、
図4の波形405と
図6の波形603を重ねて示している。実施例1よりも厳密な補正を行うには、二つの要素を加味すればよい。一つは、R画素、G画素、B画素からの画素信号(A像信号、B像信号)に対してそれぞれ独立で実施例1と等価な処理を行うことであり、その後、輝度信号(Y信号)を生成する。また、他の一つは、電荷移動時の損失項である。
【0038】
R画素、G画素、B画素からの画素信号に対してそれぞれ独立で補正値を求める際には、実施例1の補正方法を各色の画素に対してそれぞれ独立に行えばよい。例えば、CPU109(推定手段)は、第1の画素および第2の画素のそれぞれから独立して得られた色ごとの画素信号を用いて、第1の画素と第2の画素との間の移動電荷量を推定する。またCPU109(補正手段)は、推定手段の推定結果に基づいて色ごとの画素信号を補正する。分割像生成回路102(生成手段)は、色ごとの画素信号の補正値を用いて、第1の画素に対する第1の輝度信号および第2の画素に対する第2の輝度信号を生成する。そしてCPU109(演算手段)は、第1の輝度信号および第2の輝度信号を用いて相関演算を行う。
【0039】
損失項については、実験的に簡単に求めることが可能である。
図4において、波形405は波形401と波形402との差である。同様に、波形403と波形404との差をとれば、B像信号用の補正量の波形を算出することができる(不図示)。さらに、A像信号の補正後の波形405とB像信号の補正後の波形を加算すると、損失量の波形が得られる(損失がなければ0になる)。また本実施例において、撮像センサ101構造に依存する量として所定のオフセット量Nが用いられる。このため、本実施例では、以下の式(3)、(4)で表されるように補正を行うことができる。
【0040】
Ar[i]=Ar[i]+Kr×Er[i]−N … (3−1)
Ab[i]=Ab[i]+Kb×Er[i]−N … (3−2)
Ag[i]=Ag[i]+Kg×Er[i]−N … (3−3)
A[i]=Ar[i]+Ag[i]+Ab[i] … (3−4)
Br[i]=Br[i]+Kr×Br[i]+N … (4−1)
Bb[i]=Bb[i]+Kb×Bb[i]+N … (4−2)
Bg[i]=Bg[i]+Kg×Bg[i]+N … (4−3)
B[i]=Br[i]+Bg[i]+Bb[i] … (4−4)
各式において、r、b、gは、R画素、B画素、G画素のそれぞれの色を示している。このように、本実施例では非線形成分をも考慮することで(非線形モデルを用いて色ごとの画素信号を補正することで)、より高精度の補正が可能となり、焦点検出精度を向上させることができる。このとき、更に、撮像センサ101に依存するオフセット量を用いて色ごとの画素信号を補正することが好ましい。
【0041】
上記各実施例によれば、高輝度被写体など光量が多い被写体や撮像条件においても、測距誤差(焦点検出誤差)を低減でき、合焦精度および合焦速度の劣化を回避することが可能である。このため、入射光量が高い場合(高輝度時)における焦点検出誤差を低減可能な焦点検出装置、撮像装置、撮像システム、および、焦点検出方法を提供することができる。
【0042】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。