以下、本発明の例示的な実施形態を、図面に基づいて詳細に説明する。以下の実施形態では、本発明を画像処理装置の一例としてのデジタルカメラに適用した場合を例に説明するが、本発明はLFデータを処理可能な任意の機器に適用可能である。任意の機器には、例えばパーソナルコンピュータ、タブレット、ゲーム機、眼鏡型や時計型等のウェアラブル端末、車載用システム、監視カメラ用システム、医療機器が含まれてよい。
(第1の実施形態)
第1の実施形態に係る画像処理装置の一例としてのデジタルカメラ100の機能構成例を、図1を参照しながら説明する。
図1は本実施形態に係る撮像装置の機能構成例を示すブロック図である。撮影レンズ(結像光学系)の先端に配置された第1レンズ群101は、レンズ鏡筒にて光軸方向に進退可能に保持される。絞り兼用シャッタ102は、その開口径を調節することで撮影時の光量調節を行う他、静止画撮影時には露光秒時調節用シャッタとしての機能をもつ。第2レンズ群103は、絞り兼用シャッタ102と一体となって光軸方向に進退し、第1レンズ群101の進退動作との連動により、変倍作用(ズーム機能)を有する。第3レンズ群105は、光軸方向の進退により焦点調節を行うフォーカスレンズである。光学的ローパスフィルタ106は、撮像画像の偽色やモアレを軽減するための光学素子である。撮像素子107は、例えば2次元CMOS(相補型金属酸化膜半導体)フォトセンサーと周辺回路とを含み、結像光学系の結像面に配置される。撮像素子107の詳細は後述する。
ズームアクチュエータ111は、不図示のカム筒を回動することにより、第1レンズ群101および第2レンズ群103を光軸方向に移動させて変倍動作を行う。絞りシャッタアクチュエータ112は、絞り兼用シャッタ102の開口径を制御して撮影光量を調節すると共に、静止画撮影時の露光時間制御を行う。フォーカスアクチュエータ114は、第3レンズ群105を光軸方向に移動させて焦点調節動作を行う。
被写体照明用の電子フラッシュ115は、キセノン管を用いた閃光照明装置、又は連続発光するLED(発光ダイオード)を備えた照明装置を含み、撮影時に使用される。AF(オートフォーカス)補助光源116は、所定の開口パターンを有したマスクの像を、投光レンズを介して被写界に投影する。これにより、低輝度の被写体または低コントラストの被写体に対する焦点検出能力が向上する。
制御部121は、例えばCPU(中央演算処理装置)を含み、デジタルカメラ100全体の動作を制御する。制御部121は、演算部、ROM(リード・オンリー・メモリ)、RAM(ランダム・アクセス・メモリ)、A(アナログ)/D(デジタル)コンバーター、D/Aコンバーター、通信インターフェイス回路等を含む。制御部121は、ROMに記憶された所定のプログラムをRAMに展開、実行することにより、デジタルカメラ100の各部を駆動し、AF制御、撮像処理、画像処理、記録処理等の一連の動作を実行する。
電子フラッシュ制御回路122は制御部121の制御指令に従い、撮影動作に同期して電子フラッシュ115を点灯制御する。補助光源駆動回路123は制御部121の制御指令に従い、焦点検出動作に同期してAF補助光源116を点灯制御する。撮像素子駆動回路124は撮像素子107の撮像動作を制御するとともに、取得した画像信号をA/D変換して制御部121に送信する。画像処理回路125は制御部121の制御指令に従い、撮像素子107により取得された画像信号に対してガンマ変換、カラー補間、JPEG(Joint Photographic Experts Group)圧縮等の処理を行う。
フォーカス駆動回路126は制御部121の制御指令に従い、焦点検出結果に基づいてフォーカスアクチュエータ114を駆動し、第3レンズ群105を光軸方向に移動させて焦点調節を行う。絞りシャッタ駆動回路128は制御部121の制御指令に従い、絞りシャッタアクチュエータ112を駆動し、絞り兼用シャッタ102の開口径を制御する。ズーム駆動回路129は制御部121の制御指令に従い、撮影者のズーム操作指示に応じてズームアクチュエータ111を駆動する。
表示部131は、例えばLCD(液晶表示装置)等の表示デバイスを含み、カメラの撮影モードに関する情報、撮影前のプレビュー画像と撮影後の確認用画像、焦点検出時の合焦状態表示画像等を表示する。操作部132は、例えば電源スイッチ、レリーズ(撮影トリガ)スイッチ、ズーム操作スイッチ、撮影モード選択スイッチ等の操作スイッチやタッチパネルを含み、操作指示信号を制御部121に出力する。記録媒体133は、フラッシュメモリ等のデジタルカメラ100に着脱可能な記録媒体であり、撮影済み画像データ等を記録する。
(撮像素子の構成)
本実施形態に係る撮像素子107の画素と副画素の配列の概略図を図2に示す。図2の左右方向をx方向(水平方向)、上下方向をy方向(垂直方向)、x方向およびy方向に直交する方向(紙面に垂直な方向)をz方向(光軸方向)とする。図2に示す例は、2次元CMOSセンサー(撮像素子)の画素(単位画素)配列を4列×4行の範囲で、副画素配列を8列×4行の範囲で示している。
2列×2行の画素群200は、例えば左上の位置に第1色のR(赤)の分光感度を有する画素200Rが左上に、第2色のG(緑)の分光感度を有する画素200Gが右上と左下に、第3色のB(青)の分光感度を有する画素200Bが右下に配置される。さらに、各画素(単位画素)は、x方向に2分割(Nx分割)、y方向に1分割(Ny分割)された分割数2(分割数NLF=Nx×Ny)の第1副画素201と第2副画素202(第1副画素から第NLF副画素)の複数の副画素により構成されている。
図2に示す例では、4列×4行の画素(8列×4行の副画素)を撮像面上に配置することで、撮像画像および分割数2(分割数NLF)の複数の視点画像を生成するための画像信号(LFデータ)を取得可能である。本実施形態の撮像素子107では、画素の周期Pを6μm(マイクロメートル)とし、水平(列方向)画素数NH=6000列、垂直(行方向)画素数NV=4000行、画素数NはNH×NV=2400万画素とする。また、副画素の列方向周期PSを3μmとし、副画素数NSを水平12000列×垂直4000行=4800万画素とする。
図2に示した撮像素子107の1つの画素200Gを、撮像素子107の受光面側(+z側)から見た場合の平面図を図3(A)に示す。図3(A)の紙面に垂直な方向にz軸を設定し、手前側をz軸の正方向と定義する。また、z軸に直交する上下方向にy軸を設定して上方をy軸の正方向とし、z軸およびy軸に直交する左右方向にx軸を設定して右方をx軸の正方向と定義する。図3(A)にてa−a切断線に沿って、−y側から見た場合の断面図を図3(B)に示す。
図3(A)および、図3(B)に示すように、画素200Gには、各画素の受光面側(+z方向)にマイクロレンズ305が形成され、このマイクロレンズ305によって入射光が集光される。さらに、x方向に2分割、y方向に1分割された分割数2の第1光電変換部301と第2光電変換部302の複数の光電変換部が形成され、第1光電変換部301と第2光電変換部302が、それぞれ第1副画素201と第2副画素202に対応する。より一般的に、x方向にNx分割、y方向にNy分割された分割数NLF)の第1光電変換部から第NLF光電変換部の複数の光電変換部が形成され、第1光電変換部から第NLF光電変換部が、それぞれ、第1副画素から第NLF副画素に対応する。
第1光電変換部301と第2光電変換部302は、2つの独立したpn接合フォトダイオードであり、p型ウェル層300と2つに分割されたn型層301とn型層302から構成される。必要に応じて、イントリンシック層を挟み、pin構造フォトダイオードとして形成してもよい。各画素には、マイクロレンズ305と、第1光電変換部301および第2光電変換部302との間に、カラーフィルター306が形成される。必要に応じて、画素毎や光電変換部毎などで、カラーフィルター306の分光透過率を変えても良いし、カラーフィルターを省略しても構わない。
画素200Gに入射した光はマイクロレンズ305が集光し、さらにカラーフィルター306で分光された後に、第1光電変換部301と第2光電変換部302がそれぞれ受光する。第1光電変換部301と第2光電変換部302では、受光量に応じて電子とホール(正孔)が対生成され、空乏層で分離された後、電子が蓄積される。一方、ホールは定電圧源(不図示)に接続されたp型ウェル層を通じて撮像素子107の外部へ排出される。第1光電変換部301と第2光電変換部302に蓄積された電子は、転送ゲートを介して、静電容量部(FD)に転送されて電圧信号に変換される。
図4は、画素構造と瞳分割との対応関係を概略的に示している。図4には、図3(A)に示した画素構造のa−a線での切断面を、+y方向から見た場合の断面図と、結像光学系の射出瞳面を、−z方向から見た図を示す。図4では、射出瞳面の座標軸と対応を取るために、断面図にてx軸とy軸を図3に示す状態とは反転させて示している。
撮像素子107は、撮影レンズ(結像光学系)の結像面近傍に配置されており、被写体からの光束は、結像光学系の射出瞳400を通過して、それぞれの画素に入射する。なお、撮像素子107が配置された面を撮像面とする。
2×1分割された第1瞳部分領域501と第2瞳部分領域502(Nx×Ny分割された第1瞳部分領域から第NLF瞳部分領域)は、各々、第1光電変換部301と第2光電変換部302(第1光電変換部から第NLF光電変換部)の受光面と、マイクロレンズによって、概ね、光学的に共役な関係になっている。また、第1瞳部分領域501と第2瞳部分領域502(Nx×Ny分割された第1瞳部分領域から第NLF瞳部分領域)は、第1副画素201と第2副画素202(第1副画素から第NLF副画素)でそれぞれ受光可能な瞳領域である。第1副画素201の第1瞳部分領域501は、瞳面上で+X側に重心が偏心しており、第2副画素202の第2瞳部分領域502は、瞳面上で−X側に重心が偏心している。
また、瞳領域500は、2×1分割された第1光電変換部301と第2光電変換部302(Nx×Ny分割された第1光電変換部から第NLF光電変換部)を全て合わせた受光面と、マイクロレンズによって、概ね、光学的に共役な関係になっている。また、瞳領域500は、第1副画素201と第2副画素202(第1副画素から第NLF副画素)を全て合わせた画素200G全体での受光可能な瞳領域である。
各画素に形成されたマイクロレンズに光が入射した場合の光強度分布を例示する。図5(A)は、マイクロレンズの光軸に平行な断面における光強度分布を示している。また、図5(B)はマイクロレンズの焦点位置において、マイクロレンズの光軸に垂直な断面における光強度分布を示している。図5において、Hはマイクロレンズ305の凸側の面を、fはマイクロレンズの焦点距離を示している。また、nFΔは後述するリフォーカスによる焦点位置の可動範囲を、φは入射する光束の最大角度を示している。入射光は、マイクロレンズ305により、焦点位置に集光される。しかし、光の波動性による回折の影響により、集光スポットの直径は回折限界Δより小さくすることはできず、有限の大きさとなる。光電変換部の受光面サイズは約1〜2μm程度であり、これに対してマイクロレンズの集光スポットは約1μm程度である。そのため、光電変換部の受光面とマイクロレンズを介して共役の関係にある、図4に示した第1瞳部分領域501と第2瞳部分領域502は、回折ボケのため、明瞭に瞳分割されず、光の入射角に依存した受光率分布(瞳強度分布)となる。
図6に、光の入射角に依存した受光率分布(瞳強度分布)例を示す。横軸は瞳座標を表し、縦軸は受光率を表す。図6に実線で示すグラフ線L1は、図4の第1瞳部分領域501のX軸に沿った瞳強度分布を表す。グラフ線L1で示す受光率は、左端から急峻に上昇してピークに到達した後で徐々に低下してから変化率が緩やかになって右端へと至る。また、図6に破線で示すグラフ線L2は、第2瞳部分領域502のX軸に沿った瞳強度分布を表す。グラフ線L2で示す受光率は、グラフ線L1とは反対に、右端から急峻に上昇してピークに到達した後で徐々に低下してから変化率が緩やかになって左端へと至る。図示のように、緩やかに瞳分割されることがわかる。
次に、図7を参照して、撮像素子107と瞳分割との対応関係について説明する。第1光電変換部301と第2光電変換部302(第1光電変換部から第NLF光電変換部)が、それぞれ、第1副画素201と第2副画素202(第1副画素から第NLF副画素)に対応する。撮像素子107の各画素において、2×1分割された第1副画素201と第2副画素202(Nx×Ny分割された第1副画素から第NLF副画素)は、それぞれ、結像光学系の第1瞳部分領域501と第2瞳部分領域502(第1瞳部分領域から第NLF瞳部分領域)の異なる瞳部分領域を通過した光束を受光する。各副画素で受光された信号から、光強度の空間分布および角度分布の情報を含むLFデータ(画像信号)が取得される。
LFデータの信号について、画素ごとに、2×1分割された第1副画素201と第2副画素202(Nx×Ny分割された第1副画素から第NLF副画素)の信号を全て合成することにより、画素数Nの解像度を有する撮像画像を生成することができる。
また、LFデータから、画素ごとに、2×1分割された第1副画素201と第2副画素202(Nx×Ny分割された第1副画素から第NLF副画素)の中から特定の副画素の信号を選択することにより、結像光学系の第1瞳部分領域501と第2瞳部分領域502(第1瞳部分領域から第NLF瞳部分領域)の中の特定の瞳部分領域に対応した視点画像を生成することができる。例えば、画素ごとに、第1副画素201の信号を選択することで、結像光学系の第1瞳部分領域501に対応した画素数Nの解像度を有する第1視点画像を生成できる。他の副画素でも同様である。
以上のように本実施形態の撮像素子107は、結像光学系の異なる瞳部分領域を通過する光束を受光する複数の副画素が設けられた画素が複数配列された構造を有し、LFデータを取得することができる。なお、上述した説明では、瞳領域が水平方向に2つに瞳分割される例を示したが、副画素の分割方法に応じて瞳分割が垂直方向に行われてもよい。
(デフォーカス量と像ずれ量の関係)
さらに、図8を参照して、撮像素子107により取得されるLFデータに基づいて生成可能な第1視点画像と第2視点画像(第1視点画像から第NLF視点画像)のデフォーカス量と像ずれ量との関係について説明する。
図8は、第1視点画像と第2視点画像のデフォーカス量と、第1視点画像と第2視点画像との間の像ずれ量の関係を概略的に示している。撮像面600には撮像素子(不図示)が配置され、結像光学系の射出瞳は、図4、図7の場合と同様に、第1瞳部分領域501と第2瞳部分領域502に2×1分割される。
デフォーカス量dは、その大きさ|d|が被写体像の結像位置から撮像面600までの距離を表す。被写体像の結像位置が撮像面600よりも被写体側にある前ピン状態では、負符号(d<0)とし、これとは反対の後ピン状態では正符号(d>0)として向きを定義する。被写体像の結像位置が撮像面(すなわち合焦位置)にある合焦状態では、d=0である。例えば、被写体801の位置は、合焦状態(d=0)に対応する位置を示しており、被写体802の位置は前ピン状態(d<0)に対応する位置を示している。以下では、前ピン状態(d<0)と後ピン状態(d>0)とを併せて、デフォーカス状態(|d|>0)という。
前ピン状態(d<0)では、被写体802から受光した光束のうち、第1瞳部分領域501(または第2瞳部分領域502)を通過した光束は、いったん集光した後、光束の重心位置G1(またはG2)を中心として幅Γ1(またはΓ2)に広がる。この場合、撮像面600上でボケ像となる。ボケ像は、撮像素子107に配列された各画素部を構成する第1副画素201(または第2副画素202)により受光され、第1視点画像(または第2視点画像)が生成される。よって、第1視点画像(または第2視点画像)は、撮像面600上の重心位置G1(またはG2)にて、幅Γ1(またはΓ2)をもった被写体像(ボケ像)の画像データとしてメモリに記憶される。被写体像の幅Γ1(またはΓ2)は、デフォーカス量dの大きさ|d|が増加するのに伴い、概ね比例して増加する。同様に、第1視点画像と第2視点画像との間の被写体像の像ずれ量を「p」と記すと、その大きさ|p|はデフォーカス量dの大きさ|d|の増加に伴って増加する。例えば、図8に示すように、像ずれ量pは光束の重心位置の差「G1−G2」として定義することができ、その大きさ|p|は、|d|が増加するのに伴い、概ね比例して増加する。なお、後ピン状態(d>0)では、第1視点画像と第2視点画像との間の被写体像の像ずれ方向が前ピン状態とは反対となるが、同様に|p|がデフォーカス量|d|に比例する傾向がある。
したがって、本実施形態では、第1視点画像と第2視点画像、または、第1視点画像と第2視点画像を加算した撮像画像のデフォーカス量が増減するのに伴い、第1視点画像と第2視点画像との間の像ずれ量の大きさが増加する。
(撮像画像に基づく視点画像の補正処理)
以下の実施形態では、撮像画像に基づき、第1視点画像と第2視点画像(第1視点画像から第NLF視点画像)に対するキズ補正やシェーディング補正等の画像処理(補正処理)を行い、出力画像を生成する例について説明する。
まず、図9および図10を参照して、取得されたLFデータに基づいて、補正処理を行い、出力画像を生成する一連の流れについて説明する。なお、図9および図10に示す処理は、制御部121がROMに記憶されたプログラムをRAMに展開、実行することにより実行される。また、撮像素子107や画像処理回路125は制御部121の指示に応じて動作する。
(撮像画像と視点画像)
まず、図9に示すS1の前処理として不図示の処理(ステップS0)を予め行う。S0において制御部121は、撮像素子107により取得されたLFデータから、結像光学系の異なる瞳部分領域を合成した撮像画像と、結像光学系の異なる瞳部分領域ごとの、少なくとも1つの視点画像とを生成する。
制御部121は、S0において、撮像素子107により取得されたLFデータを取得する。なお、予め撮像素子107により撮影され、記録媒体に保存されているLFデータを用いても良い。
より具体的に、制御部121は、結像光学系の異なる瞳部分領域(第1瞳部分領域と第2瞳部分領域)を合成した瞳領域に応じた撮像画像を生成する。なお、以下の説明ではLFデータを単にLFとも表す。また、LFの各画素信号内での列方向iS(1≦iS≦Nx)番目、行方向jS(1≦jS≦Ny)番目の副画素信号を、k=Nx(jS−1)+iS(1≦k≦NLF)として、第k副画素信号とする。すなわち、撮像素子107は、結像光学系の異なる瞳部分領域を合成した瞳領域に対応した、列方向にi番目、行方向にj番目の撮像画像I(j、i)を、式(1)に従って生成する。
なお、本処理は、撮像素子107がLFデータを生成する際に行ってもよい。この場合、撮像素子107は、撮像画像I(j、i)のS/Nを良好に保持するため、各副画素信号をアナログ/デジタル変換(A/D変換)を行う前に、撮像素子107内の静電容量部(FD)において式(1)に従う各副画素信号の合成を行ってもよい。必要に応じて、撮像素子107内のFDに蓄積された電荷を電圧信号に変換する際に、式(1)に従う各副画素信号の合成を行っても良いし、必要に応じて、A/D変換を行った後に、式(1)に従う各副画素信号の合成を行っても良い。
なお、本実施形態は、Nx=2、Ny=1、NLF=2であるx方向2分割の場合であり、図2に例示した画素配列に対応した入力画像(LFデータ)を用いる。このため、撮像素子107は、画素ごとに、x方向2分割された第1副画素201と第2副画素202(Nx×Ny分割された第1副画素から第NLF副画素)の信号を全て合成した撮像画像を生成する。この撮像画像は、画素数N(=水平画素数NH×垂直画素数NV)の解像度を有するベイヤー配列のRGB信号である。
なお、後述する視点画像の補正処理では、撮像画像を補正基準の参照画像として用いるため、撮像画像I(j、i)に対してもRGB毎のシェーディング補正処理、欠陥補正処理を行う。
次に、撮像素子107は、結像光学系の第k瞳部分領域に対応した、列方向i番目、行方向j番目の第k視点画像Ik(j、i)を、式(2)に従って生成する。
なお、本実施形態は、Nx=2、Ny=1、NLF=2であるx方向2分割、k=1の場合である。撮像素子107は、図2に例示した画素配列に対応したLFデータに基づいて、画素ごとに、x方向2分割された第1副画素201の信号を選択する。よって、結像光学系の第1瞳部分領域501と第2瞳部分領域502(第1瞳部分領域から第NLF瞳部分領域)の中から、結像光学系の第1瞳部分領域501に対応した第1視点画像I1(j、i)を生成する。この第1視点画像I1(j、i)は、画素数N(=水平画素数NH×垂直画素数NV)の解像度を有するベイヤー配列のRGB信号である。なお、必要に応じて、k=2を選択し、結像光学系の第2瞳部分領域502に対応した第2視点画像I2(j、i)を生成しても良い。
このように本実施形態では、LFデータに基づく、結像光学系の異なる瞳部分領域を合成した撮像画像と、結像光学系の異なる瞳部分領域ごとの、少なくとも1つの視点画像とを生成する。すなわち、撮像素子107により取得されたLFデータに基づいて、ベイヤー配列のRGB信号である撮像画像I(j、i)と、ベイヤー配列のRGB信号である第1視点画像I1(j、i)と、を生成する。このとき、撮像画像I(j、i)と第1視点画像I1(j、i)とから、第2視点画像I2(j、i)を生成してもよい。このようにすれば、撮像画像I(j、i)に対して、各画素が光電変換部を有しない従来の撮像素子で取得される撮像画像と同様の画像処理を適用することができる。また、必要に応じて、各視点画像への処理を同等にするために、第1視点画像I1(j、i)と、第2視点画像I2(j、i)と、を生成し、記録媒体へ保存しても良い。
(視点画像のシェーディング補正(光量補正))
次に、図9に示すS1におけるシェーディング補正(光量補正)について説明する。本処理では、制御部121は、撮像画像I(j、i)に基づいて、第1視点画像I1(第k視点画像Ik)に対してRGB毎のシェーディング補正を行う。なお、以降の処理についても制御部121が実行する場合を例に説明するが、その一部又は全部を画像処理回路125が実行してもよい。
まず、第1視点画像と第2視点画像(第1視点画像から第NLF視点画像)の瞳ずれによるシェーディングについて説明する。図11は、撮像素子の周辺像高における第1光電変換部301が受光する第1瞳部分領域501、第2光電変換部302が受光する第2瞳部分領域502、および結像光学系の射出瞳400の関係を示している。図11では、第1光電変換部301と第2光電変換部302(第1光電変換部から第NLF光電変換部)が、それぞれ、第1副画素201と第2副画素202(第1副画素から第NLF副画素)に対応する。
図11(A)は、結像光学系の射出瞳距離Dlと撮像素子107の設定瞳距離Dsが同じ場合を示している。この場合、第1瞳部分領域501と第2瞳部分領域502により、結像光学系の射出瞳400が、概ね、均等に瞳分割される。これに対して、図11(B)は、結像光学系の射出瞳距離Dlが撮像素子の設定瞳距離Dsより短い場合を示している。この場合、撮像素子107の周辺像高では、結像光学系の射出瞳と撮像素子の入射瞳の瞳ずれが生じ、結像光学系の射出瞳400が、不均一に瞳分割されてしまう。図11(B)の例では、第1瞳部分領域501に対応した第1視点画像の実効絞り値が、第2瞳部分領域502に対応した第2視点画像の実効絞り値より小さい(明るい)値となる。反対側の像高(不図示)では、逆に、第1瞳部分領域501に対応した第1視点画像の実効絞り値が、第2瞳部分領域502に対応した第2視点画像の実効絞り値より大きい(暗い)値となる。
同様に、図11(C)に示す、結像光学系の射出瞳距離Dlが撮像素子の設定瞳距離Dsより長い場合も、撮像素子107の周辺像高で結像光学系の射出瞳と撮像素子の入射瞳の瞳ずれが生じる。このため、図11(C)に示す場合にも結像光学系の射出瞳400が不均一に瞳分割されてしまう。図11(C)の例では、第1瞳部分領域501に対応した第1視点画像の実効絞り値が、第2瞳部分領域502に対応した第2視点画像の実効絞り値より大きい(暗い)値となる。反対側の像高(不図示)では、逆に、第1瞳部分領域501に対応した第1視点画像の実効絞り値が、第2瞳部分領域502に対応した第2視点画像の実効絞り値より小さい(明るい)値となる。
このように、瞳分割が不均一になることに伴い、第1視点画像と第2視点画像の強度も不均一になり(すなわち光量分布が偏り)、第1視点画像と第2視点画像のいずれか一方の強度が大きく、また他方の強度が小さくなるシェーディングが生じる。そして、このシェーディングは画素ごと、すなわちRGBごとに生じる。
そこで、上述したシェーディングによる不均一な信号強度分布を一様に近づけて良好な画質品位の視点画像を生成するため、RGBごとのシェーディング補正を行う。すなわち、本実施形態では、補正撮像画像I(j、i)を基準の参照画像として第1視点画像I1(第k視点画像Ik)に対するRGB毎のシェーディング補正を行う。
具体的には、図9に示すS1において、制御部121は、非飽和かつ非欠陥(キズ)である有効画素の検出を行う(S1−1)。撮像画像I(j、i)と第1視点画像I1(j、i)のいずれにおいても非飽和かつ非欠陥となる有効画素V1(j、i)を検出する。撮像画像I(j、i)と第1視点画像I1(j、i)のいずれにおいても非飽和かつ非欠陥である場合、有効画素をV1(j、i)=1とする。一方、撮像画像I(j、i)と第1視点画像I1(j、i)のいずれかが、飽和もしくは欠陥である場合(すなわち非有効画素)、V1(j、i)=0とする。第k視点画像Ikについてシェーディング補正を行う場合も、同様に、撮像画像I(j、i)と第k視点画像Ik(j、i)のいずれもが非飽和かつ非欠陥である場合、有効画素をVk(j、i)=1とする。
撮像信号の飽和判定閾値をISとして、撮像画像I(j、i)>ISの場合、撮像画像I(j、i)を飽和と判定し、撮像画像I(j、i)≦ISの場合、撮像画像I(j、i)を非飽和と判定する。同様に、第k視点画像の飽和判定閾値をISkとして、第k視点画像Ik(j、i)>ISkの場合、第k視点画像Ik(j、i)を飽和と判定し、第k視点画像Ik(j、i)≦ISkの場合、第k視点画像Ik(j、i)を非飽和と判定する。第k視点画像の飽和判定閾値ISkは、撮像信号の飽和判定閾値IS以下(ISk≦IS)である。
本実施形態の撮像素子107では、各画素の第1光電変換部301と第2光電変換部302(第1光電変換部から第NLF光電変換部)のいずれかの光電変換部にて蓄積電荷が飽和した場合に、画素外ではなく、同一画素内の他の光電変換部(副画素)に漏れこむ(電荷クロストーク)ように構成される。いずれかの副画素(例:第2副画素)が飽和し、副画素間(例:第2副画素から第1副画素)の電荷クロストークが生じると、電荷が溢れた元の副画素(例:第2副画素)と、電荷の漏れこみ先の副画素(例:第1副画素)のいずれも、入射光量に対する蓄積電荷量の線形関係が保たれず、シェーディングの正しい検出に必要な情報が含まれなくなる。
高ISOの場合に比べて、低ISOの場合の方が、光電変換部に蓄積される電荷量が相対的に多く、電荷クロストークが相対的に生じやすい。したがって、本実施形態では、飽和画素の検出精度を向上するために、低ISOでの撮像信号の飽和判定閾値ISが、高ISOでの撮像信号の飽和判定閾値IS以下であることが望ましい。また、低ISOでの第k視点画像の飽和判定閾値ISkが、高ISOでの第k視点画像の飽和判定閾値ISk以下であることが望ましい。
さらに、結像光学系の射出瞳距離が、第1の所定瞳距離より短く(もしくは、第2の所定瞳距離より長く)、結像光学系の射出瞳と撮像素子の入射瞳の瞳ずれによるシェーディングを生じる場合、周辺像高では、第1視点画像と第2視点画像のいずれか一方の強度が大きくなり、他方の強度が小さくなる場合に、電荷クロストークが生じやすい。したがって、本実施形態では、飽和画素の検出精度を向上するために、結像光学系の射出瞳距離が、第1の所定瞳距離より短い、もしくは、第2の所定瞳距離より長い場合の撮像信号の飽和判定閾値ISが、結像光学系の射出瞳距離が、第1の所定瞳距離以上、かつ、第2の所定瞳距離以下の場合の撮像信号の飽和判定閾値IS以下であることが望ましい。また、結像光学系の射出瞳距離が、第1の所定瞳距離より短い、もしくは、第2の所定瞳距離より長い場合の第k視点画像の飽和判定閾値ISkが、結像光学系の射出瞳距離が、第1の所定瞳距離以上、かつ、第2の所定瞳距離以下の場合の第k視点画像の飽和判定閾値ISk以下であることが望ましい。
ここで、図2に示したベイヤー配列の撮像画像Iは、R、Gr、Gb、Bごとに定義することができる。すなわち、Rの撮像画像をRI(2j2−1、2i2−1)=I(2j2−1、2i2−1)、Grの撮像画像をGrI(2j2−1、2i2)=I(2j2−1、2i2)とする。また、Gbの撮像画像をGbI(2j2、2i2−1)=I(2j2、2i2−1)、Bの撮像画像をBI(2j2、2i2)=I(2j2、2i2)とする。このとき、整数j2および整数i2は、それぞれ1≦j2≦NV/2、1≦i2≦NH/2である。
同様に、図2に例示したベイヤー配列の第k視点画像Ikを、R、Gr、Gb、Bごとに取り扱う。すなわち、Rの第k視点画像をRIk(2j2−1、2i2−1)=Ik(2j2−1、2i2−1)、Grの第k視点画像をGrIk(2j2−1、2i2)=Ik(2j2−1、2i2)とする。また、Gbの第k視点画像をGbIk(2j2、2i2−1)=Ik(2j2、2i2−1)、Bの第k視点画像をBIk(2j2、2i2)=Ik(2j2、2i2)とする。
次に、図9に示すS1において制御部121は、撮像画像RI、GrI、GbI、BIに基づく射影処理を行う(S1−2)。具体的には、撮像画像RI(2j2−1、2i2−1)、GrI(2j2−1、2i2)、GbI(2j2、2i2−1)、BI(2j2、2i2)を、式(3A)から式(3D)に従って、瞳分割方向(x方向)と直交する方向(y方向)に射影する。これにより、制御部121は、撮像画像の射影信号RP(2i2−1)、GrP(2i2)、GbP(2i2−1)、BP(2i2)を生成する。
なお、飽和信号値や欠陥信号値には、撮像画像のRGB毎のシェーディングを正しく検出するための情報が含まれていない。そのため、制御部121は、撮像画像と有効画素Vkとの積を取って飽和信号値等を除外したうえで、射影処理を行い(式(3A)上段から式(3D)上段の分子)、射影処理に用いた有効画素数で規格化(式(3A)上段から式(3D)上段の分母)する。射影処理に用いた有効画素数が0の場合、式(3A)下段から式(3D)下段により、撮像画像の射影信号を0に設定する。さらに、撮像画像の射影信号がノイズの影響などで負信号となった場合も撮像画像の射影信号を0に設定する。
同様に、S1−3では、第k視点画像RIk(2j2−1、2i2−1)、GrIk(2j2−1、2i2)、GbIk(2j2、2i2−1)、BIk(2j2、2i2)を、式(3E)から式(3H)に従って、瞳分割方向と直交する方向(y方向)に射影する。これにより、制御部121は、第k視点画像の射影信号RPk(2i2−1)、GrPk(2i2)、GbPk(2i2−1)、BPk(2i2)を生成する。
制御部121は、上述の射影処理の後に、撮像画像の射影信号RP(2i2−1)、GrP(2i2)、GbP(2i2−1)、BP(2i2)と第k視点画像の射影信号RPk(2i2−1)、GrPk(2i2)、GbPk(2i2−1)、BPk(2i2)を平滑化するためにローパスフィルタ処理を適用する。なお、フィルターの適用は必要に応じて省略しても良い。
図12には、射影信号の具体例を示している。図12(上段)は、撮像画像の射影信号RP(R)、GrP(G)、GbP(G)、BP(B)の例を示している。また、図12(中段)には、第1視点画像の射影信号RP1(R)、GrP1(G)、GbP1(G)、BP1(B)の例を示している。図12(上段)及び図12(中段)の縦軸は信号強度を表している。各射影信号は、被写体の有する各色成分を含むため、被写体に依存した複数の山谷の起伏が生じる。従って、第1視点画像I1(第k視点画像Ik)のシェーディング補正を正確に行うためには、瞳ずれにより生じる第1視点画像I1(第k視点画像Ik)のRGB毎のシェーディング成分(光量のずれ)と被写体が有するRGB毎の信号成分とを分離する必要がある。
このため、S1−4において制御部121は、式(4A)から式(4D)に従って、撮像画像を基準とした相対的な第k視点画像IkのRGB毎のシェーディング信号RSk(2i2−1)、GrSk(2i2)、GbSk(2i2−1)、BSk(2i2)を算出する。なお、画素の受光量は、副画素の受光量より大きく、さらに、シェーディング成分の算出には、副画素の受光量が0より大きい必要がある。そのため、条件式RP(2i2−1)>RPk(2i2−1)>0を満たす場合、式(4A)に従って、Rの第k視点画像の射影信号RPk(2i2−1)とRの撮像画像の射影信号RP(2i2−1)との比(すなわち割合)を算出する。そして、算出した比に規格化のための瞳分割数NLFを乗算して、第k視点画像IkのRのシェーディング信号RSk(2i2−1)を生成する。これにより、被写体が有するRの信号成分を相殺し、第k視点画像IkのRのシェーディング成分を分離することができる。一方、条件式RP(2i2−1)>RPk(2i2−1)>0を満たさない場合、第k視点画像IkのRのシェーディング信号RSk(2i2−1)を0に設定する。
同様に、他のRGB成分におけるシェーディング信号を算出する。第k視点画像IkのGrについては、条件式GrP(2i2)>GrPk(2i2)>0を満たす場合、式(4B)に従ってGrの第k視点画像の射影信号GrPk(2i2)とGrの撮像画像の射影信号GrP(2i2)との比を算出する。そして、算出した比に規格化のため瞳分割数NLFを乗算して、第k視点画像IkのGrのシェーディング信号GrSk(2i2)を生成する。これにより、被写体が有するGrの信号成分を相殺し、第k視点画像IkのGrのシェーディング成分を分離することができる。また、条件式GrP(2i2)>GrPk(2i2)>0を満たさない場合、第k視点画像IkのGrのシェーディング信号GrSk(2i2)を0に設定する。
同様に、式(4C)及び(4D)に従って、第k視点画像IkのGbのシェーディング信号GbSk(2i2−1)及び第k視点画像IkのBのシェーディング信号BSk(2i2)を生成する。
なお、シェーディング補正精度を高精度に行うために、有効なシェーディング信号が十分存在する場合にのみシェーディング補正を行うようにしてもよい。例えば、RSk(2i2−1)>0、GrSk(2i2)>0、GbSk(2i2−1)>0、BSk(2i2)>0を満たす有効なシェーディング信号数が所定値以上である場合に、シェーディング補正を行うようにすればよい。
S1−4において、制御部121は、式(5A)から式(5D)に従って、第k視点画像IkのRGB毎のシェーディング関数RSFk(2i2−1)、GrSFk(2i2)、GbSFk(2i2−1)、BSFk(2i2)を算出する。これらのシェーディング関数は、例えば瞳分割方向(x方向)の位置変数に対する滑らかなNSF次元の多項式関数である。また、上述した、RSk(2i2−1)>0、GrSk(2i2)>0、GbSk(2i2−1)>0、BSk(2i2)>0を満たす有効なシェーディング信号を、上記シェーディング関数に入力するデータ点とする。
制御部121は、これらデータ点を用いて、最小二乗法によるパラメーターフィッティングを行い、式(5A)から式(5D)の各シェーディング関数の係数RSCk(μ)、GrSCk(μ)、GbSCk(μ)、BSCk(μ)を算出する。このようにして、撮像画像を基準とした相対的な第k視点画像IkのRGB毎のシェーディング関数RSFk(2i2−1)、GrSFk(2i2)、GbSFk(2i2−1)、BSFk(2i2)を生成することができる。シェーディング関数を用いた統計処理により、x方向の位置に応じた統計的なシェーディングの発生傾向に基づいてシェーディング信号を調整することができるため、滑らかなシェーディング補正を行うことができる。
シェーディング関数RSFk、GrSFk、GbSFk、BSFkを、瞳分割方向(x方向)に反転した関数を、それぞれ、R[RSFk]、R[GrSFk]、R[GbSFk]、R[BSFk]とする。所定許容値をε(0<ε<1)として、1−ε≦RSFk+R[RSFk]≦1+ε、1−ε≦GrSFk+R[GrSFk]≦1+ε、1−ε≦GbSFk+R[GbSFk]≦1+ε、1−ε≦BSFk+R[BSFk]≦1+εの各条件式が、各位置で、全て満たされる場合、検出されたシェーディング関数は適正であると判定し、式(6A)から式(6D)の処理を行う。それ以外の場合、検出されたシェーディング関数は不適正であると判定し、RSFk≡1、GrSFk≡1、GbSFk≡1、BSFk≡1とし、必要に応じて、例外処理を行う。
図12(下段)に、撮像画像を基準とした相対的な第1視点画像I1のRGB毎のシェーディング関数RSF1(R)、GrSF1(G)、GbSF1(G)、BSF1(B)の例を示している。図12(中段)の第1視点画像の射影信号と、図12(上段)の撮像画像の射影信号では、被写体に依存した山谷の起伏が存在する。これに対して、第1視点画像の射影信号と撮像画像の射影信号の比を求めることにより、被写体に依存した山谷の起伏(被写体が有するRGB毎の信号値)を相殺し、滑らかな第1視点画像I1のRGB毎のシェーディング関数を分離して生成することができる。
なお、上述の説明では、シェーディング関数として、多項式関数を用いたが、これに限定されることはなく、必要に応じて、シェーディング形状に合わせて、より一般的な関数を用いても良い。
S1−5において、制御部121は、第k視点画像Ik(j、i)に対して、式(6A)から式(6D)に従うシェーディング補正を行う。具体的には、制御部121は、上述したRGBごとのシェーディング関数を用いて、シェーディング補正処理を行い、シェーディング補正後の第k視点(第1修正)画像M1Ik(j、i)を生成する。
ここで、ベイヤー配列の第k視点(第1修正)画像M1Ikを、R、Gr、Gb、Bごとに定義する。すなわち、Rの第k視点(第1修正)画像をRM1Ik(2j2−1、2i2−1)=M1Ik(2j2−1、2i2−1)、Grの第k視点(第1修正)画像をGrM1Ik(2j2−1、2i2)=M1Ik(2j2−1、2i2)とする。また、Gbの第k視点(第1修正)画像をGbM1Ik(2j2、2i2−1)=M1Ik(2j2、2i2−1)、Bの第k視点(第1修正)画像をBM1Ik(2j2、2i2)=M1Ik(2j2、2i2)とする。必要に応じて、シェーディング補正後の第k視点(第1修正)画像M1Ik(j、i)を出力画像としても良い。
このように本実施形態では、撮像画像と視点画像を用いて、撮像画像の被写体による信号変化と視点画像の被写体による信号変化とを相殺して、RGBごとのシェーディング関数(すなわち瞳ずれによって生じる光量のずれ)を算出する。そして、シェーディング関数の逆数によりRGBごとのシェーディング補正量(光量補正量)を算出する。従って、算出したシェーディング補正量(光量補正量)に基づき、視点画像のシェーディング補正処理を行うことができる。
さらに、図13(A)〜図13(C)を参照して、図9のS1に示した第1視点画像I1(j、i)のRGBごとのシェーディング補正処理の効果を説明する。まず、図13(A)は、本実施形態の撮像画像I(デモザイキング後)の例であり、画質品位が良好な撮像画像の例を示している。また、図13(B)は、本実施形態のシェーディング補正前の第1視点画像I1(デモザイキング後)の例を示している。すなわち、上述した結像光学系の射出瞳と撮像素子の入射瞳の瞳ずれによりRGBごとのシェーディングが生じ、図13(B)に示す第1視点画像I1(j、i)では右側の周辺像高において輝度の低下(及びRGB比の変調)が生じている。更に図13(C)は、本実施形態のシェーディング補正後の第1視点(第1修正)画像M1I1(デモザイキング後)の例を示している。すなわち、上述したRGBごとのシェーディング補正により、輝度の低下(及びRGB比の変調)が修正され、撮像画像と同様に、画質品位の良好なシェーディング補正後の第1視点(第1修正)画像M1I1(j、i)が生成される。
(視点画像の欠陥補正)
次に、S2における視点画像に対する欠陥補正処理について説明する。本実施形態では、制御部121は、撮像画像Iに基づいて、シェーディング補正後の第k視点(第1修正)画像M1Ikの欠陥補正を行う。本実施形態では、k=1の場合を例に説明する。
撮像素子の回路構成や駆動方式により、転送ゲートの短絡などに起因して、撮像画像Iは正常であるものの、第k視点画像Ik(第1視点画像I1)のごく一部分な信号の欠陥が生じ、点欠陥や線欠陥となる場合がある。このような場合、必要に応じて、量産工程等で検査された点欠陥情報や線欠陥情報を、例えば画像処理回路125等に事前に記録し、記録された点欠陥情報や線欠陥情報を用いて第k視点画像Ik(第1視点画像I1)の欠陥補正処理を行うことができる。また、必要に応じて、第k視点画像Ik(第1視点画像I1)をリアルタイムに検査して点欠陥判定や線欠陥判定を行うことができる。
以下、S2における欠陥補正処理の例では、第k視点画像Ikには奇数行2jD−1もしくは偶数行2jDの水平方向(x方向)のライン状の線欠陥がある場合であって、撮像画像Iには当該奇数行もしくは偶数行の線欠陥がない場合を例に説明する。
S2−1において、制御部121は、正常な撮像画像Iを参照画像として用いて、第k視点(第1修正)画像M1Ikの欠陥補正を行う。すなわち、制御部121は、欠陥と判定されていない位置の第k視点(第1修正)画像M1Ikの信号値と、欠陥と判定されていない位置の撮像画像Iの信号値とを比較する。但し、この比較を行う際には、瞳ずれにより生じた第k視点画像IkのRGBごとのシェーディング成分の影響を取り除いたうえで、第k視点画像Ikと撮像画像Iとで、被写体が有するRGBごとの信号成分を正確に比較することが必要である。そのため、S1において生成された第k視点(第1修正)画像M1Ikを用いて、撮像画像Iと同等のシェーディング状態となった第k視点画像を用いる。すなわち、本ステップでは、撮像画像Iを参照画像として用いながら、シェーディング補正された第k視点(第1修正)画像M1Ikに対して高精度な欠陥補正を行う。
制御部121は、シェーディング補正後の第k視点(第1修正)画像M1Ik(j、i)のごく一部で欠陥と判定された信号に対して、撮像画像Iの正常信号と、第k視点(第1修正)画像M1Ikの正常信号とを用いる。なお、欠陥補正処理により生成される画像を第k視点(第2修正)画像M2Ik(j、i)とする。ここで、ベイヤー配列の第k視点(第2修正)画像M2Ikを、R、Gr、Gb、Bごとに定義する。すなわち、Rの第k視点(第2修正)画像をRM2Ik(2j2−1、2i2−1)=M2Ik(2j2−1、2i2−1)、Grの第k視点(第2修正)画像をGrM2Ik(2j2−1、2i2)=M2Ik(2j2−1、2i2)とする。また、Gbの第k視点(第2修正)画像をGbM2Ik(2j2、2i2−1)=M2Ik(2j2、2i2−1)、Bの第k視点(第2修正)画像をBM2Ik(2j2、2i2)=M2Ik(2j2、2i2)とする。
制御部121は、第k視点(第1修正)画像M1IkのRの第1位置(2jD−1、2iD−1)が欠陥と判定された場合、式(7A)に従う演算を行って、第1位置における第k視点(第2修正)画像RM2Ik(2jD−1、2iD−1)を生成する。式(7A)の演算には、第1位置の撮像画像RI(2jD−1、2iD−1)と、欠陥と判定されていないRの第2位置の第k視点(第1修正)画像RM1Ikと、第2位置の撮像画像RIとを用いる。
また、第k視点(第1修正)画像M1IkのGrの第1位置(2jD−1、2iD)が欠陥と判定された場合、式(7B)に従う演算を行い、第1位置における欠陥補正後の第k視点(第2修正)画像GrM2Ik(2jD−1、2iD)を生成する。さらに、第k視点(第1修正)画像M1IkのGb及びBについても同様に、それぞれ式(7C)及び式(7D)に従って欠陥補正後の視点画像を生成する。
上記以外の欠陥と判定されていない大部分の位置(j、i)では、第k視点(第2修正)画像M2Ik(j、i)が第k視点(第1修正)画像M1Ik(j、i)と同一(又は略同一)の信号値、すなわちM2Ik(j、i)=M1Ik(j、i)である。なお、必要に応じて、欠陥補正後の第k視点(第2修正)画像M2Ik(j、i)を出力画像としても良い。
さらに、図14(A)および図14(B)を参照して、上述した欠陥補正処理の効果を説明する。図14(A)は、上述した欠陥補正前の第1視点(第1修正)画像M1I1の例を示す。なお、本画像は、シェーディング補正処理およびデモザイキング処理が施されている。この例は、第1視点(第1修正)画像M1I1(j、i)の中央部に、水平方向(x方向)のライン状の線欠陥が生じている場合を示している。一方、図14(B)は、上述した欠陥補正後の第1視点(第2修正)画像M2I1(シェーディング補正後、デモザイキング後)の例を示している。正常な撮像画像Iに基づく欠陥補正により、水平方向(x方向)のライン状の線欠陥が修正され、撮像画像と同様に、画質品位が良好になっている。
本実施形態では、シェーディング補正により光量補正のなされた視点画像を用いて欠陥画素を補正するようにした。すなわち、欠陥と判定された第1位置における視点画像の信号値を、欠陥と判定された第1位置における撮像画像の信号値と、欠陥と判定されていない第2位置における視点画像の信号値と、第2位置における撮像画像の信号値とに基づいて補正する。このようにすることで、良好な画質品位の視点画像を生成することができる。
さらに、制御部121は、S2−2において、欠陥補正後の第k視点(第2修正)画像M2Ik(j、i)に対して、式(8A)から式(8D)に従ったシェーディング処理を行い、第k視点(第3修正)画像M3Ik(j、i)を生成する。ここで、ベイヤー配列の第k視点(第3修正)画像M3Ikを、R、Gr、Gb、Bごとに定義する。すなわち、Rの第k視点(第3修正)画像をRM3Ik(2j2−1、2i2−1)=M3Ik(2j2−1、2i2−1)、Grの第k視点(第3修正)画像をGrM3Ik(2j2−1、2i2)=M3Ik(2j2−1、2i2)とする。また、Gbの第k視点(第3修正)画像をGbM3Ik(2j2、2i2−1)=M3Ik(2j2、2i2−1)、Bの第k視点(第3修正)画像をBM3Ik(2j2、2i2)=M3Ik(2j2、2i2)とする。
S3において、撮像画像I(j、i)と、第k視点(第3修正)画像M3Ik(j、i)に対して、飽和信号処理を行う。本実施形態では、k=1、NLF=2である場合を例に説明する。
まず、S3−1において、制御部121は、撮像画像I(j、i)に対する飽和信号処理を行う。すなわち、式(9)に従い、撮像信号の最大値をImaxとする飽和信号処理を行って、修正撮像画像MI(j、i)を生成する。ここで、撮像信号の最大値Imaxと、撮像信号の飽和判定閾値ISは、Imax≧ISを満たす。
次に、S3−2において、制御部121は、第k視点(第3修正)画像M3Ik(j、i)に対する飽和信号処理を行う。すなわち、式(10)に従い、ベイヤー配列のシェーディング関数をSFk(j、i)としたシェーディング状態に合わせた飽和信号処理を行い、第k視点(第4修正)画像M4Ik(j、i)を生成する。ここで、ベイヤー配列のシェーディング関数SFk(j、i)を、式(5A)から式(5D)により、R、Gr、Gb、Bごとに生成されたシェーディング関数RSFk(2i2−1)、GrSFk(2i2)、GbSFk(2i2−1)、BSFk(2i2)から、SFk(2j2−1、2i2−1)=RSFk(2i2−1)、SFk(2j2−1、2i2)=GrSFk(2i2)、SFk(2j2、2i2−1)=GbSFk(2i2−1)、SFk(2j2、2i2)=BSFk(2i2)とする。
次に、S4−1において、制御部121は、S3−1で生成された修正撮像画像MI(j、i)と、S3−2で生成された第1視点(第4修正)画像M4I1(j、i)から、式(11)に従って第2視点画像I2(j、i)を生成する。
なお、撮像素子の駆動方式やA/D変換の回路構成によっては、第1視点(第3修正)画像M3I1(j、i)の飽和時の最大信号値が、撮像画像I(j、i)の飽和時の最大信号値Imaxと、同一の最大信号値となる場合がある。このような場合に、飽和信号処理を行うことなく、式(11)を適用して撮像画像から第1視点(第3修正)画像を減算すると、生成される第2視点画像において飽和信号値となるべきところが誤った信号値0となる場合がある。このような動作を防止するため、S3では、撮像画像I(j、i)と第k視点(第3修正)画像M3Ik(j、i)に対して予めシェーディング状態に合わせた飽和信号処理を行う。このようにして、飽和信号処理後の修正撮像画像MI(j、i)と第1視点(第4修正)画像M4I1(j、i)を生成する。S4−1では、式(11)に従って第2視点画像I2(j、i)を生成することにより、より正しい飽和信号値に対応した第2視点画像I2を生成することができる。
S5では、制御部121は、第1視点(第4修正)画像M4I1(j、i)と、第2視点画像I2(j、i)に対して、それぞれシェーディング補正を行う。S5−1では、第1視点(第4修正)画像M4I1(j、i)に対して、式(5A)から式(5D)に従って生成済みのシェーディング関数RSF1、GrSF1、GbSF1、BSF1を適用する。そして、式(6A)から式(6D)に従って、シェーディング補正処理を行う。なお、このとき第1視点(第5修正)画像M5I1(j、i)が生成される。
次に、S5−2において、制御部121は、第2視点画像I2(j、i)に対して、式(3A)から式(6D)と同様に、修正撮像画像MI(j、i)に基づくシェーディング補正処理を行って、第2視点(第5修正)画像M5I2(j、i)を生成する。
次に、S6では、制御部121は、第1視点(第5修正)画像M5I1(j、i)と、第2視点(第5修正)画像M5I2(j、i)に対して、それぞれ飽和信号処理を行う。S6−1では、第1視点(第5修正)画像M5I1(j、i)に対して、式(12)に従って飽和信号処理を行い、修正第1視点画像MI1(j、i)を生成する。一方、S6−2では、第2視点(第5修正)画像M5I2(j、i)に対して、式(12)に従って飽和信号処理を行い、修正第2視点画像MI2(j、i)を生成する。ここで、第k視点画像の最大値Imax/NLFと、第k視点画像の飽和判定閾値ISkは、Imax/NLF≧ISkを満たす。
以下、図15(A)および図15(B)を参照して、S5に示した第2視点画像I2(j、i)に対するRGBごとのシェーディング補正処理の効果について説明する。図15(A)は、シェーディング補正前の第2視点画像I2(デモザイキング後)の例を示している。この例では、結像光学系の射出瞳と撮像素子の入射瞳の瞳ずれによってRGBごとのシェーディングが生じているため、第2視点画像I2(j、i)の左側では、輝度の低下(およびRGB比の変調)が生じている。一方、図15(B)は、本実施形態に係るシェーディング補正後の修正第2視点画像MI2(デモザイキング後)の例を示している。この例では、撮像画像に基づいたRGBごとのシェーディング補正により、輝度の低下(およびRGB比の変調)が修正され、撮像画像と同様に、画質品位が良好な修正第2視点画像MI2(j、i)が生成されている。
最後に、撮像画像に基づいたRGBごとにシェーディング補正され、画質品位が良好な修正第1視点画像MI1(j、i)、修正第2視点画像MI2(j、i)、もしくは、これらを合成処理した合成画像を、出力画像として生成する。
このように、本実施形態では、撮像画像に基づくRGBごとのシェーディング補正を行って、良好な画質品位の第1修正視点画像と第2修正視点画像(複数の修正視点画像)を生成し、これを出力画像として用いるようにした。このようにすることで、画質品位が良好な視点画像、もしくは、これらの合成画像を実現することができる。
(位相差方式の焦点検出処理)
次に、第1視点画像と第2視点画像(第1視点画像から第NLF視点画像)から、第1視点画像と第2視点画像の相関(信号の一致度)に基づき、位相差方式によりデフォーカス量を検出する焦点検出処理について説明する。なお、以下の説明では、制御部121が処理を実行する例を説明するが、画像処理回路125が実行してもよい。
まず、制御部121は、ベイヤー配列のRGB信号である第k視点画像Ik(k=1〜NLF)から、位置(j,i)ごとに、各色RGBの色重心を一致させて、第k視点輝度信号Ykを、式(13)に従って生成する。
次に、制御部121は、式(14)に従って、第k視点輝度信号Yk(k=1〜NLF)のシェーディング補正量Sk(i)を、瞳分割方向(x方向)の位置iに対する滑らかなNS次の多項式関数として算出する。撮像素子107の光学特性(第k副画素ごとの瞳強度分布)と、結像光学系の光学特性(絞り値F、射出瞳距離Dl)に基づき、予め、各係数SCk(μ|F、Dl)を算出し、不図示のROM等へ保存しておく。
さらに、制御部121は、第k視点輝度信号Yk(j、i)に対して、式(15)に従って、シェーディング補正量Sk(i)を用いたシェーディング補正処理を行い、第k修正視点輝度信号MYk(j、i)を生成する。
制御部121は、生成された第1修正視点輝度信号MY1に対して、瞳分割方向(列方向)に、1次元バンドパスフィルター処理を行い、第1焦点検出信号dYAを生成する。同様に、第2修正視点輝度信号MY2に対して、瞳分割方向(列方向)に、1次元バンドパスフィルター処理を行い、第2焦点検出信号dYBを生成する。なお、1次元バンドパスフィルターとしては、例えば、1次微分型フィルター[1、5、8、8、8、8、5、1、−1、−5、−8、−8、−8、−8、−5、−1]などを用いることができる。必要に応じて、1次元バンドパスフィルターの通過帯域を調整しても良い。
次に、制御部121は、第1焦点検出信号dYAと第2焦点検出信号dYBを、相対的に瞳分割方向(列方向)にシフトさせて、信号の一致度を表す相関量を算出し、算出した相関量に基づいて像ずれ量MDISを生成する。
例えば、焦点検出位置(jAF、iAF)を中心として、行方向j2番目、瞳分割方向である列方向i2番目の第1焦点検出信号をdYA(jAF+j2、iAF+i2)、第2焦点検出信号をdYB(jAF+j2、iAF+i2)とする。但し、j2は−n2≦j2≦n2、i2は−m2≦i2≦m2である。さらに、シフト量をs(−ns≦s≦ns)とすると、各位置(jAF,iAF)での相関量COREVEN(jAF,iAF、s)および相関量CORODD(jAF,iAF、s)は、それぞれ式(16A)および式(16B)により算出することができる。
なお、相関量CORODD(jAF,iAF、s)は、相関量COREVEN(jAF,iAF、s)に対して、第1焦点検出信号dYAと第2焦点検出信号dYBのシフト量を半位相−1シフトずらした相関量である。
制御部121は、相関量COREVEN(jAF,iAF、s)と相関量CORODD(jAF,iAF、s)から、それぞれ、サブピクセル演算を行って、相関量が最小値となる実数値のシフト量を算出する。さらに、算出したシフト量の平均値を算出し、焦点検出位置(jAF、iAF)における像ずれ量Dis(jAF、iAF)を検出する。
次に、制御部121は、像ずれ量からデフォーカス量への変換係数Kを、焦点検出領域の像高位置ごとに像ずれ量Dis(jAF、iAF)に乗算し、各焦点検出位置(jAF、iAF)におけるデフォーカス量MDef(jAF、iAF)を検出する。なお、変換係数Kは、例えば、撮像素子の光学特性(第k副画素ごとの瞳強度分布)およびレンズ情報(結像光学系の絞り値F、射出瞳距離Dlなど)に応じて算出し、不図示のROMへ保存しておく。
最後に、制御部121は、焦点検出位置(jAF、iAF)で検出されたデフォーカス量MDef(jAF、iAF)に応じて合焦位置にレンズを駆動して、焦点検出処理を終了する。
第1視点画像と第2視点画像(複数の視点画像)を用いて、自動焦点検出を行う場合、応答性に優れたリアルタイム処理の自動焦点検出を行うために、高速なシェーディング補正が必要となる場合がある。そのため、本実施形態では、自動焦点検出を行う場合には、不図示のROM等に保存されている、予め算出されたシェーディング補正関連データを用いて高速にシェーディング補正を行うようにしてもよい。このようにすれば、良好な信号品質の位相差方式の焦点検出信号を用いることができ、精度が高く、応答性に優れた自動焦点検出を実現することができる。なお、シェーディング補正関連データは、撮像素子の光学特性(第k副画素ごとの瞳強度分布)と結像光学系の光学特性(絞り値F、射出瞳距離Dl)とに基づき算出することができる。この場合、自動焦点検出を行う際には、特定の視点画像(例えば第1視点画像)についてのみシェーディング補正を適用し、より高速な自動焦点検出を行うようにしてもよい。
本実施形態は、画質品位が良好な視点画像、もしくは、これらの合成画像を画像出力する際は、撮像画像に基づいて、高精度なRGB毎のシェーディング補正を行う。一方、優れた応答性が要求されるリアルタイム処理の自動焦点検出の際は、シェーディング補正方法を切り換え、予め、算出され、記録媒体に保存されたシェーディング補正関連データによる高速なシェーディング補正を行う例を説明した。これにより、画質品位が良好な視点画像の画像出力と、応答性に優れた高精度な自動焦点検出を、両立することができる。
以上説明したように、単位画素内の光電変換部を分割した構造の撮像素子から得られるLFデータに基づいて撮像画像と視点画像を生成し、これらの画像に基づき視点画像に対するシェーディング(光量分布の偏り)を補正するようにした。さらに、シェーディング補正のなされた視点画像を用いて欠陥画素を補正するようにした。このようにすることで、良好な画質品位の視点画像を生成することができる。換言すれば、LFデータを用いる場合に、生成される視点画像の光量の変動を低減することができるようになる。
(第2の実施形態)
次に、第2の実施形態を説明する。なお、第1の実施形態では、撮像素子107が、x方向に2分割、y方向に1分割された分割数2の第1光電変換部301と第2光電変換部302を有する単位画素を有する場合を例に説明した。一方、第2の実施形態では、単位画素内の光電変換部がy方向にも2分割された構造の撮像素子を用いる点が異なる。このため、デジタルカメラ100の構成は第1の実施形態と同一である。従って、同様の構成及び処理については同一の符号を付与してそれらの詳細な説明を省略し、相違点を中心に説明する。
図16は、本実施形態における撮像素子107の画素と副画素の配列の概略図を示している。図16に示すx方向(水平方向)、y方向(垂直方向)、およびz方向(光軸方向)の定義は実施形態1で示した図2と同様である。図16は、本実施形態に係る撮像素子107の画素配列を4列×4行の範囲(副画素配列については8列×8行の範囲)で示している。2列×2行の画素群200は、左上の位置に第1色のR(赤)の分光感度を有する画素200Rが左上に、第2色のG(緑)の分光感度を有する画素200Gが右上と左下に、第3色のB(青)の分光感度を有する画素200Bが右下に配置されている。さらに、各画素は、x方向に2分割(Nx分割)、y方向に2分割(Ny分割)された分割数4(分割数NLF=Nx×Ny)の第1副画素201から第4副画素204(第1副画素から第NLF副画素)の複数の副画素により構成されている。
図16に示す例では、4列×4行の画素(8列×8行の副画素)を面上に多数配置することで、撮像画像および分割数4(分割数NLF)の複数の視点画像を生成するための入力画像を取得可能である。本実施形態の撮像素子では、画素の周期Pを6μm(マイクロメートル)とし、水平(列方向)画素数NH=6000列、垂直(行方向)画素数NV=4000行、画素数N=NH×NV=2400万画素とする。また、副画素の周期PSを3μmとし、副画素数NSを水平12000列×垂直8000行=9600万画素とする。
図17(A)は、図16に示した1つの画素200Gを、撮像素子の受光面側(+z側)から見た場合の平面図を示している。図17(A)におけるx軸、y軸およびz軸の定義は実施形態1と同様である。また、図17(B)は、図17(A)にてa−a切断線に沿って、−y側から見た場合の断面図を示している。
図17(A)および、図17(B)に示すように、画素200Gは、各画素の受光面側(+z方向)に入射光を集光するためのマイクロレンズ305が形成されている。さらに、x方向に2分割(Nx分割)、y方向に2分割(Ny分割)された分割数4(分割数NLF)の第1光電変換部301から第4光電変換部304(第1光電変換部から第NLF光電変換部)の複数の光電変換部が形成されている。第1光電変換部301から第4光電変換部304(第1光電変換部から第NLF光電変換部)が、それぞれ、第1副画素201から第4副画素204(第1副画素から第NLF副画素)に対応する。
2×2分割された第1副画素201から第4副画素204(Nx×Ny分割された第1副画素から第NLF副画素)は、それぞれ、結像光学系の第1瞳部分領域501から第4瞳部分領域504(第1瞳部分領域から第NLF瞳部分領域)の異なる瞳部分領域を通過した光束を受光する。各副画素で受光された信号から、光強度の空間分布および角度分布の情報を含むLFデータが取得される。
本実施形態では、Nx=2、Ny=2、NLF=4の4分割の例において、図16に例示した画素配列に対応した入力画像(LFデータ)から、式(1)に従って、撮像画像を生成する。具体的には、当該LFデータに対して、画素ごとに、4分割された第1副画素201から第4副画素204(Nx×Ny分割された第1副画素から第NLF副画素)の信号を全て合成する。これにより、画素数N(=水平画素数NH×垂直画素数NV)の解像度を有するベイヤー配列のRGB信号(撮像画像)を生成する。
また、本実施形態は、Nx=2、Ny=2、NLF=4の4分割で、k=1〜3の例である。図16に例示した画素配列に対応したLFデータから、式(2)に従って第1視点画像I1(j、i)を生成する。具体的には、まず、画素ごとに、4分割された第1副画素201から第4副画素204の中から第1副画素201の信号を選択する。そして、結像光学系の第1瞳部分領域501に対応した、画素数Nの解像度を有するベイヤー配列のRGB信号(第1視点画像I1(j、i))を生成する。また、同様に、式(2)に従って第2副画素202の信号を選択し、結像光学系の第2瞳部分領域502に対応した、画素数Nの解像度を有するベイヤー配列のRGB信号(第2視点画像I2(j、i))を生成する。さらに、第3副画素203の信号を選択した第3視点画像I3(j、i)を生成する。
(撮像画像に基づく視点画像の補正処理)
次に、本実施形態では、撮像画像に基づき、第1視点画像から第4視点画像(第1視点画像から第NLF視点画像)に対する欠陥補正やシェーディング補正等の画像処理を行う。本実施形態に係る処理を図9を再び参照しながら説明する。
S1において、制御部121は、撮像画像I(j、i)を基準の参照画像として、第1視点画像I1から第3視点画像I3(第k視点画像Ik:k=1〜NLF−1)のRGBごとにシェーディング補正を行う。本実施形態は、Nx=2、Ny=2、NLF=4の4分割であり、k=1〜3の例である。
S1において、制御部121は、まず、第k視点画像Ik(k=1〜NLF−1)に対して、式(3A)から式(6D)により、x方向にシェーディング補正処理を行う。次に、式(3A)から式(6D)において、x方向とy方向を入れ換え、y方向にシェーディング補正処理を行い、第k視点(第1修正)画像M1Ik(k=1〜NLF−1)を生成する。なお、このように、x方向へのシェーディング補正と、y方向へのシェーディング補正とを2段階に行う場合、式(4A)から式(4D)の規格化のため瞳分割数NLFが1回余分となる。そのため、2回目のy方向のシェーディング補正では、式(4A)から式(4D)において、規格化のための瞳分割数NLFの乗算は省略することができる。
その後、制御部121は、式(7A)から式(10)に従って第k視点(第4修正)画像M4Ik(k=1〜NLF−1)を生成するまでの処理を、第1の実施形態と同様に行うことができる。
S4−1において、制御部121は、修正撮像画像MI(j、i)と第k視点(第4修正)画像M4Ik(k=1〜NLF−1)とから、式(17)に従って第NLF視点画像INLF(j、i)を生成する。本実施形態は、Nx=2、Ny=2、NLF=4の4分割の例である。その後、制御部121は、S5以降の処理を第1の実施形態と同様に処理する。
なお、上述の実施形態では、撮像素子の各画素部における光電変換部については、分割数を4にする場合を例に説明した。しかし、各画素部における光電変換部の分割数をさらに多くした実施形態(例えば、Nx=3、Ny=3、NLF=9の9分割や、Nx=4、Ny=4、NLF=16の16分割など)も可能である。
以上説明したように、単位画素内の光電変換部を分割した構造の撮像素子から得られるLFデータに基づいて撮像画像と視点画像を生成し、これらの画像に基づき視点画像に対するシェーディング(光量分布の偏り)を補正するようにした。さらに、シェーディング補正のなされた視点画像を用いて欠陥画素を補正するようにした。このようにすることで、良好な画質品位の視点画像を生成することができる。換言すれば、LFデータを用いる場合に、生成される視点画像の光量の変動を低減することができるようになる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。