説明

画像処理装置および画像処理プログラム

【課題】ピントが合ったオブジェクトに対する視差画像間の視差量は零であるはずにも関わらず、撮影に用いられた撮影レンズの収差等の影響により、視差量が零にならない場合があった。
【解決手段】画像処理装置は、少なくとも一部の光電変換素子のそれぞれに対応して開口マスクが設けられた少なくとも2つの視差画像データを出力する撮像素子から視差画像データを取得する画像データ取得部と、視差画像データの撮像時における合焦情報を取得する合焦情報取得部と、合焦情報に基づいて、視差画像データにおける同一被写体間の視差量を補正する視差量補正部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置および画像処理プログラムに関する。
【背景技術】
【0002】
2つの撮影光学系を用いて、右目用の画像と左目用の画像とから成るステレオ画像を撮像するステレオ撮像装置が知られている。このようなステレオ撮像装置は、2つの撮像光学系を一定の間隔で配置することにより、同一の被写体を撮像して得られる2つの画像に視差を生じさせる。
[先行技術文献]
[特許文献]
[特許文献1] 特開平8−47001号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
ピントが合ったオブジェクトに対する視差画像間の視差量は零であるはずにも関わらず、撮影に用いられた撮影レンズの収差等の影響により、視差量が零にならない場合があった。
【課題を解決するための手段】
【0004】
本発明の第1の態様における画像処理装置は、少なくとも一部の光電変換素子のそれぞれに対応して開口マスクが設けられた少なくとも2つの視差画像データを出力する撮像素子から視差画像データを取得する画像データ取得部と、視差画像データの撮像時における合焦情報を取得する合焦情報取得部と、合焦情報に基づいて、視差画像データにおける同一被写体間の視差量を補正する視差量補正部とを備える。
【0005】
本発明の第2の態様における撮像装置は、上記の撮像素子と画像処理装置を含み、上記の撮像素子は、隣接するn個(nは3以上の整数)の光電変換素子のうち、少なくとも3つに対応して設けられたそれぞれの開口マスクの開口は、互いに異なる波長帯域を透過させる少なくとも2種類のカラーフィルタから構成されるカラーフィルターパターンの一パターン内に含まれると共に、入射光の断面領域内の互いに異なる部分領域からの光束をそれぞれ通過させるように位置づけられ、n個の光電変換素子を一組とする光電変換素子群が周期的に配列されており、開口マスクが設けられた光電変換素子の出力信号に基づいて視差画像データを出力する。
【0006】
本発明の第3の態様における画像処理プログラムは、少なくとも一部の光電変換素子のそれぞれに対応して開口マスクが設けられた少なくとも2つの視差画像データを出力する撮像素子から視差画像データを取得する画像データ取得ステップと、視差画像データの撮像時における合焦情報を取得する合焦情報取得ステップと、合焦情報に基づいて、視差画像データにおける同一被写体間の視差量を補正する視差量補正ステップとをコンピュータに実行させる。
【0007】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0008】
【図1】本発明の実施形態に係るデジタルカメラの構成を説明する図である。
【図2】本発明の実施形態に係る撮像素子の断面を表す概略図である。
【図3】撮像素子の一部を拡大した様子を表す概略図である。
【図4】視差画素と被写体の関係を説明する概念図である。
【図5】視差画像を生成する処理を説明する概念図である。
【図6】繰り返しパターンの他の例を示す図である。
【図7】二次元的な繰り返しパターンの例を示す図である。
【図8】開口部の他の形状を説明する図である。
【図9】ベイヤー配列を説明する図である。
【図10】ベイヤー配列に対する視差画素の割り振りについて、視差画素の種類が2つである場合のバリエーションを説明する図である。
【図11】バリエーションの一例を示す図である。
【図12】他のバリエーションの一例を示す図である。
【図13】他のバリエーションの一例を示す図である。
【図14】他のカラーフィルタ配列を説明する図である。
【図15】W画素と視差画素の配列の一例を示す図である。
【図16】視差画像と2D画像の生成過程を示す概念図である。
【図17】光学ファインダから観察される被写体像および測距領域を示す図である。
【図18】デジタルカメラと各被写体との距離を示す概念図である。
【図19】視差マップの生成処理を説明する説明図である。
【図20】視差マップの補正処理を説明する説明図である。
【図21】較正情報の例を説明する説明図である。
【図22】視差マップを参照して原色情報を移植する処理の概念を示す図である。
【発明を実施するための形態】
【0009】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0010】
画像処理装置の一形態である撮像装置としての本実施形態に係るデジタルカメラは、1つのシーンについて複数の視点数の画像を一度の撮影により生成できるように構成されている。互いに視点の異なるそれぞれの画像を視差画像と呼ぶ。
【0011】
図1は、本発明の実施形態に係るデジタルカメラ10の構成を説明する図である。デジタルカメラ10は、撮影光学系としての撮影レンズ20を備え、光軸21に沿って入射する被写体光束を撮像素子100へ導く。デジタルカメラ10は、撮像素子100、制御部201、A/D変換回路202、メモリ203、駆動部204、画像処理部205、メモリカードIF207、操作部208、表示部209、LCD駆動回路210およびAFセンサ211を備える。
【0012】
なお、図示するように、撮像素子100へ向かう光軸21に平行な方向をz軸プラス方向と定め、z軸と直交する平面において紙面手前へ向かう方向をx軸プラス方向、紙面上方向をy軸プラス方向と定める。以降のいくつかの図においては、図1の座標軸を基準として、それぞれの図の向きがわかるように座標軸を表示する。
【0013】
撮影レンズ20は、複数の光学レンズ群から構成され、シーンからの被写体光束をその焦点面近傍に結像させる。なお、図1では撮影レンズ20を説明の都合上、瞳近傍に配置された仮想的な1枚のレンズで代表して表している。撮像素子100は、撮影レンズ20の焦点面近傍に配置されている。撮像素子100は、二次元的に複数の光電変換素子が配列された、例えばCCD、CMOSセンサ等のイメージセンサである。撮像素子100は、駆動部204によりタイミング制御されて、受光面上に結像された被写体像を画像信号に変換してA/D変換回路202へ出力する。
【0014】
A/D変換回路202は、撮像素子100が出力する画像信号をデジタル画像信号に変換してメモリ203へ出力する。画像処理部205は、メモリ203をワークスペースとして種々の画像処理を施し、画像データを生成する。特に、画像処理部205は、撮像素子100が出力する信号から画像データ群を生成して取得するデータ取得部231、取得した画像データ群に含まれる視差画像データ間で視差量を演算する視差量演算部232、カラー画像データに変換する画像変換部233を有する。それぞれの処理の詳細については、後述する。
【0015】
画像処理部205は、他にも選択された画像フォーマットに従って画像データを調整するなどの画像処理一般の機能も担う。生成された画像データは、LCD駆動回路210により表示信号に変換され、表示部209に表示される。また、メモリカードIF207に装着されているメモリカード220に記録される。
【0016】
AFセンサ211は、被写体空間に対して複数の測距点が設定された位相差センサであり、それぞれの測距点において被写体像のデフォーカス量を検出する。一連の撮影シーケンスは、操作部208がユーザの操作を受け付けて、制御部201へ操作信号を出力することにより開始される。撮影シーケンスに付随するAF,AE等の各種動作は、制御部201に制御されて実行される。例えば、制御部201は、AFセンサ211の検出信号を解析して、撮影レンズ20の一部を構成するフォーカスレンズを移動させる合焦制御を実行する。
【0017】
制御部201は、合焦情報取得部234と視差量補正部235としての機能を有する。合焦情報取得部234は、生成された画像データ群に対応する合焦情報を、AFセンサ211等の出力から生成して取得する。また、視差量補正部235は、視差量演算部232によって演算された視差量を、合焦情報取得部234が取得した合焦情報を用いて補正する。それぞれの処理の詳細については、後述する。
【0018】
ROM221は、不揮発性メモリであり、デジタルカメラ10を制御するプログラム、各種パラメータ等を記憶している。また、後述する較正情報を記憶する役割も担う。
【0019】
次に、撮像素子100の構成について詳細に説明する。図2は、本発明の実施形態に係る撮像素子の断面を表す概略図である。図2(a)は、カラーフィルタ102と開口マスク103が別体で構成される撮像素子100の断面概略図である。また、図2(b)は、撮像素子100の変形例として、カラーフィルタ部122と開口マスク部123が一体的に構成されたスクリーンフィルタ121を備える撮像素子120の断面外略図である。
【0020】
図2(a)に示すように、撮像素子100は、被写体側から順に、マイクロレンズ101、カラーフィルタ102、開口マスク103、配線層105および光電変換素子108が配列されて構成されている。光電変換素子108は、入射する光を電気信号に変換するフォトダイオードにより構成される。光電変換素子108は、基板109の表面に二次元的に複数配列されている。
【0021】
光電変換素子108により変換された画像信号、光電変換素子108を制御する制御信号等は、配線層105に設けられた配線106を介して送受信される。また、各光電変換素子108に一対一に対応して設けられた開口部104を有する開口マスク103が、配線層に接して設けられている。開口部104は、後述するように、対応する光電変換素子108ごとにシフトさせて、相対的な位置が厳密に定められている。詳しくは後述するが、この開口部104を備える開口マスク103の作用により、光電変換素子108が受光する被写体光束に視差が生じる。
【0022】
一方、視差を生じさせない光電変換素子108上には、開口マスク103が存在しない。別言すれば、対応する光電変換素子108に対して入射する被写体光束を制限しない、つまり有効光束の全体を通過させる開口部104を有する開口マスク103が設けられているとも言える。視差を生じさせることはないが、実質的には配線106によって形成される開口107が入射する被写体光束を規定するので、配線106を、視差を生じさせない有効光束の全体を通過させる開口マスクと捉えることもできる。開口マスク103は、各光電変換素子108に対応して別個独立に配列しても良いし、カラーフィルタ102の製造プロセスと同様に複数の光電変換素子108に対して一括して形成しても良い。
【0023】
カラーフィルタ102は、開口マスク103上に設けられている。カラーフィルタ102は、各光電変換素子108に対して特定の波長帯域を透過させるように着色された、光電変換素子108のそれぞれに一対一に対応して設けられるフィルタである。カラー画像を出力するには、互いに異なる少なくとも3種類のカラーフィルタが配列されれば良い。これらのカラーフィルタは、カラー画像を生成するための原色フィルタと言える。原色フィルタの組み合わせは、例えば赤色波長帯を透過させる赤フィルタ、緑色波長帯を透過させる緑フィルタ、および青色波長帯を透過させる青フィルタである。これらのカラーフィルタは、後述するように、光電変換素子108に対応して格子状に配列される。
【0024】
マイクロレンズ101は、カラーフィルタ102上に設けられている。マイクロレンズ101は、入射する被写体光束のより多くを光電変換素子108へ導くための集光レンズである。マイクロレンズ101は、光電変換素子108のそれぞれに一対一に対応して設けられている。マイクロレンズ101は、撮影レンズ20の瞳中心と光電変換素子108の相対的な位置関係を考慮して、より多くの被写体光束が光電変換素子108に導かれるようにその光軸がシフトされていることが好ましい。さらには、開口マスク103の開口部104の位置と共に、後述の特定の被写体光束がより多く入射するように配置位置が調整されても良い。
【0025】
このように、各々の光電変換素子108に対応して一対一に設けられる開口マスク103、カラーフィルタ102およびマイクロレンズ101の一単位を画素と呼ぶ。特に、視差を生じさせる開口マスク103が設けられた画素を視差画素、視差を生じさせる開口マスク103が設けられていない画素を視差なし画素と呼ぶ。例えば、撮像素子100の有効画素領域が24mm×16mm程度の場合、画素数は1200万程度に及ぶ。
【0026】
なお、集光効率、光電変換効率が良いイメージセンサの場合は、マイクロレンズ101を設けなくても良い。また、裏面照射型イメージセンサの場合は、配線層105が光電変換素子108とは反対側に設けられる。
【0027】
カラーフィルタ102と開口マスク103の組み合わせには、さまざまなバリエーションが存在する。図2(a)において、開口マスク103の開口部104に色成分を持たせれば、カラーフィルタ102と開口マスク103を一体的に形成することができる。また、特定の画素を被写体の輝度情報を取得する画素とする場合、その画素には、対応するカラーフィルタ102を設けなくても良い。あるいは、可視光のおよそ全ての波長帯域を透過させるように、着色を施さない透明フィルタを配列しても良い。
【0028】
輝度情報を取得する画素を視差画素とする場合、つまり、視差画像を少なくとも一旦はモノクロ画像として出力するのであれば、図2(b)として示す撮像素子120の構成を採用し得る。すなわち、カラーフィルタとして機能するカラーフィルタ部122と、開口部104を有する開口マスク部123とが一体的に構成されたスクリーンフィルタ121を、マイクロレンズ101と配線層105の間に配設することができる。
【0029】
スクリーンフィルタ121は、カラーフィルタ部122において例えば青緑赤の着色が施され、開口マスク部123において開口部104以外のマスク部分が黒の着色が施されて形成される。スクリーンフィルタ121を採用する撮像素子120は、撮像素子100に比較して、マイクロレンズ101から光電変換素子108までの距離が短いので、被写体光束の集光効率が高い。
【0030】
次に、開口マスク103の開口部104と、生じる視差の関係について説明する。図3は、撮像素子100の一部を拡大した様子を表す概略図である。ここでは、説明を簡単にすべく、カラーフィルタ102の配色については後に言及を再開するまで考慮しない。カラーフィルタ102の配色に言及しない以下の説明においては、同色(透明である場合を含む)のカラーフィルタ102を有する視差画素のみを寄せ集めたイメージセンサであると捉えることができる。したがって、以下に説明する繰り返しパターンは、同色のカラーフィルタ102における隣接画素として考えても良い。
【0031】
図3に示すように、開口マスク103の開口部104は、それぞれの画素に対して相対的にシフトして設けられている。そして、隣接する画素同士においても、それぞれの開口部104は互いに変位した位置に設けられている。
【0032】
図の例においては、それぞれの画素に対する開口部104の位置として、互いに左右方向にシフトした6種類の開口マスク103が用意されている。そして、撮像素子100の全体は、紙面左側から右側へ徐々にシフトする開口マスク103をそれぞれ有する6つの視差画素を一組とする光電変換素子群が、二次元的かつ周期的に配列されている。つまり、撮像素子100は、一組の光電変換素子群を含む繰り返しパターン110が、周期的に敷き詰められて構成されていると言える。
【0033】
図4は、視差画素と被写体の関係を説明する概念図である。特に図4(a)は撮像素子100のうち撮影光軸21と直交する中心に配列されている繰り返しパターン110tの光電変換素子群を示し、図4(b)は周辺部分に配列されている繰り返しパターン110uの光電変換素子群を模式的に示している。図4(a)、(b)における被写体30は、撮影レンズ20に対して合焦位置に存在する。図4(c)は、図4(a)に対応して、撮影レンズ20に対して非合焦位置に存在する被写体31を捉えた場合の関係を模式的に示している。なお、後に言及するまでは、合焦位置に存在する被写体に対して取得される視差量を、理想値である0として説明する。
【0034】
まず、撮影レンズ20が合焦状態に存在する被写体30を捉えている場合の、視差画素と被写体の関係を説明する。被写体光束は、撮影レンズ20の瞳を通過して撮像素子100へ導かれるが、被写体光束が通過する全体の断面領域に対して、6つの部分領域Pa〜Pfが規定されている。そして、例えば繰り返しパターン110t、110uを構成する光電変換素子群の紙面左端の画素は、拡大図からもわかるように、部分領域Pfから射出された被写体光束のみが光電変換素子108へ到達するように、開口マスク103の開口部104fの位置が定められている。同様に、右端の画素に向かって、部分領域Peに対応して開口部104eの位置が、部分領域Pdに対応して開口部104dの位置が、部分領域Pcに対応して開口部104cの位置が、部分領域Pbに対応して開口部104bの位置が、部分領域Paに対応して開口部104aの位置がそれぞれ定められている。
【0035】
別言すれば、例えば部分領域Pfと左端画素の相対的な位置関係によって定義される、部分領域Pfから射出される被写体光束の主光線Rfの傾きにより、開口部104fの位置が定められていると言っても良い。そして、合焦位置に存在する被写体30からの被写体光束を、開口部104fを介して光電変換素子108が受光する場合、その被写体光束は、点線で図示するように、光電変換素子108上で結像する。同様に、右端の画素に向かって、主光線Reの傾きにより開口部104eの位置が、主光線Rdの傾きにより開口部104dの位置が、主光線Rcの傾きにより開口部104cの位置が、主光線Rbの傾きにより開口部104bの位置が、主光線Raの傾きにより開口部104aの位置がそれぞれ定められていると言える。
【0036】
図4(a)で示すように、合焦位置に存在する被写体30のうち、光軸21と交差する被写体30上の微小領域Otから放射される光束は、撮影レンズ20の瞳を通過して、繰り返しパターン110tを構成する光電変換素子群の各画素に到達する。すなわち、繰り返しパターン110tを構成する光電変換素子群の各画素は、それぞれ6つの部分領域Pa〜Pfを介して、一つの微小領域Otから放射される光束を受光している。微小領域Otは、繰り返しパターン110tを構成する光電変換素子群の各画素の位置ずれに対応する分だけの広がりを有するが、実質的には、ほぼ同一の物点と近似することができる。同様に、図4(b)で示すように、合焦位置に存在する被写体30のうち、光軸21から離間した被写体30上の微小領域Ouから放射される光束は、撮影レンズ20の瞳を通過して、繰り返しパターン110uを構成する光電変換素子群の各画素に到達する。すなわち、繰り返しパターン110uを構成する光電変換素子群の各画素は、それぞれ6つの部分領域Pa〜Pfを介して、一つの微小領域Ouから放射される光束を受光している。微小領域Ouも、微小領域Otと同様に、繰り返しパターン110uを構成する光電変換素子群の各画素の位置ずれに対応する分だけの広がりを有するが、実質的には、ほぼ同一の物点と近似することができる。
【0037】
つまり、被写体30が合焦位置に存在する限りは、撮像素子100上における繰り返しパターン110の位置に応じて、光電変換素子群が捉える微小領域が異なり、かつ、光電変換素子群を構成する各画素は互いに異なる部分領域を介して同一の微小領域を捉えている。そして、それぞれの繰り返しパターン110において、対応する画素同士は同じ部分領域からの被写体光束を受光している。つまり、図においては、例えば繰り返しパターン110t、110uのそれぞれの左端の画素は、同じ部分領域Pfからの被写体光束を受光している。
【0038】
撮影光軸21と直交する中心に配列されている繰り返しパターン110tにおいて左端画素が部分領域Pfからの被写体光束を受光する開口部104fの位置と、周辺部分に配列されている繰り返しパターン110uにおいて左端画素が部分領域Pfからの被写体光束を受光する開口部104fの位置は厳密には異なる。しかしながら、機能的な観点からは、部分領域Pfからの被写体光束を受光するための開口マスクという点で、これらを同一種類の開口マスクとして扱うことができる。したがって、図4の例では、撮像素子100上に配列される視差画素のそれぞれは、6種類の開口マスクの一つを備えると言える。
【0039】
次に、撮影レンズ20が非合焦状態に存在する被写体31を捉えている場合の、視差画素と被写体の関係を説明する。この場合も、非合焦位置に存在する被写体31からの被写体光束は、撮影レンズ20の瞳の6つの部分領域Pa〜Pfを通過して、撮像素子100へ到達する。ただし、非合焦位置に存在する被写体31からの被写体光束は、光電変換素子108上ではなく他の位置で結像する。例えば、図4(c)に示すように、被写体31が被写体30よりも撮像素子100に対して遠い位置に存在すると、被写体光束は、光電変換素子108よりも被写体31側で結像する。逆に、被写体31が被写体30よりも撮像素子100に対して近い位置に存在すると、被写体光束は、光電変換素子108よりも被写体31とは反対側で結像する。
【0040】
したがって、非合焦位置に存在する被写体31のうち、微小領域Ot'から放射される被写体光束は、6つの部分領域Pa〜Pfのいずれを通過するかにより、異なる組の繰り返しパターン110における対応画素に到達する。例えば、部分領域Pdを通過した被写体光束は、図4(c)の拡大図に示すように、主光線Rd'として、繰り返しパターン110t'に含まれる、開口部104dを有する光電変換素子108へ入射する。そして、微小領域Ot'から放射された被写体光束であっても、他の部分領域を通過した被写体光束は、繰り返しパターン110t'に含まれる光電変換素子108へは入射せず、他の繰り返しパターンにおける対応する開口部を有する光電変換素子108へ入射する。換言すると、繰り返しパターン110t'を構成する各光電変換素子108へ到達する被写体光束は、被写体31の互いに異なる微小領域から放射された被写体光束である。すなわち、開口部104dに対応する108へは主光線をRd'とする被写体光束が入射し、他の開口部に対応する光電変換素子108へは主光線をRa、Rb、Rc、Re、Rfとする被写体光束が入射するが、これらの被写体光束は、被写体31の互いに異なる微小領域から放射された被写体光束である。このような関係は、図4(b)における周辺部分に配列されている繰り返しパターン110uにおいても同様である。
【0041】
すると、撮像素子100の全体で見た場合、例えば、開口部104aに対応する光電変換素子108で捉えた被写体像Aと、開口部104dに対応する光電変換素子108で捉えた被写体像Dは、合焦位置に存在する被写体に対する像であれば互いにずれが無く、非合焦位置に存在する被写体に対する像であればずれが生じることになる。そして、そのずれは、非合焦位置に存在する被写体が合焦位置に対してどちら側にどれだけずれているかにより、また、部分領域Paと部分領域Pdの距離により、方向と量が定まる。つまり、被写体像Aと被写体像Dは、互いに視差像となる。この関係は、他の開口部に対しても同様であるので、開口部104aから104fに対応して、6つの視差像が形成されることになる。
【0042】
したがって、このように構成されたそれぞれの繰り返しパターン110において、互いに対応する画素の出力を寄せ集めると、視差画像が得られる。つまり、6つの部分領域Pa〜Pfうちの特定の部分領域から射出された被写体光束を受光した画素の出力は、視差画像を形成する。
【0043】
図5は、視差画像を生成する処理を説明する概念図である。図は、左列から順に、開口部104fに対応する視差画素の出力を集めて生成される視差画像データIm_fの生成の様子、開口部104eの出力による視差画像データIm_eの生成の様子、開口部104dの出力による視差画像データIm_dの生成の様子、開口部104cの出力による視差画像データIm_cの生成の様子、開口部104bの出力による視差画像データIm_bの生成の様子、開口部104aの出力による視差画像データIm_aの生成の様子を表す。まず開口部104fの出力による視差画像データIm_fの生成の様子について説明する。
【0044】
6つの視差画素を一組とする光電変換素子群から成る繰り返しパターン110は、横一列に配列されている。したがって、開口部104fを有する視差画素は、撮像素子100上において、左右方向に6画素おき、かつ、上下方向に連続して存在する。これら各画素は、上述のようにそれぞれ異なる微小領域からの被写体光束を受光している。したがって、これらの視差画素の出力を寄せ集めて配列すると、視差画像が得られる。
【0045】
しかし、本実施形態における撮像素子100の各画素は正方画素であるので、単に寄せ集めただけでは、横方向の画素数が1/6に間引かれた結果となり、縦長の画像データが生成されてしまう。そこで、補間処理を施して横方向に6倍の画素数とすることにより、本来のアスペクト比の画像として視差画像データIm_fを生成する。ただし、そもそも補間処理前の視差画像データが横方向に1/6に間引かれた画像であるので、横方向の解像度は、縦方向の解像度よりも低下している。つまり、生成される視差画像データの数と、解像度の向上は相反関係にあると言える。
【0046】
同様にして、視差画像データIm_e〜視差画像データIm_aが得られる。すなわち、デジタルカメラ10は、横方向に視差を有する6視点の視差画像を生成することができる。
【0047】
上記の例では、横一列を繰り返しパターン110として周期的に配列される例を説明したが、繰り返しパターン110はこれに限らない。図6は、繰り返しパターン110の他の例を示す図である。
【0048】
図6(a)は、縦6画素を繰り返しパターン110とした例である。ただし、それぞれの開口部104は、紙面上端の視差画素から下に向かって、紙面左側から右側へ徐々にシフトするように位置が定められている。このように配列された繰り返しパターン110によっても、横方向に視差を与える6視点の視差画像を生成することができる。この場合は、図3の繰り返しパターン110に比較すると、縦方向の解像度を犠牲にする代わりに横方向の解像度を維持する繰り返しパターンであると言える。
【0049】
図6(b)は、斜め方向に隣接する6画素を繰り返しパターン110とした例である。それぞれの開口部104は、紙面左上端の視差画素から右下に向かって、紙面左側から右側へ徐々にシフトするように位置が定められている。このように配列された繰り返しパターン110によっても、横方向に視差を与える6視点の視差画像を生成することができる。この場合は、図3の繰り返しパターン110に比較すると、縦方向の解像度および横方向の解像度をある程度維持しつつ、視差画像の数を増やす繰り返しパターンであると言える。
【0050】
図3の繰り返しパターン110、および図6(a)(b)の繰り返しパターン110をそれぞれ比較すると、いずれも6視点の視差画像を生成する場合において、視差画像でない全体から一枚の画像を出力する場合の解像度に対し、縦方向、横方向のいずれの方向の解像度を犠牲にするかの違いであると言える。図3の繰り返しパターン110の場合は、横方向の解像度を1/6とする構成である。図6(a)の繰り返しパターン110の場合は、縦方向の解像度を1/6とする構成である。また、図6(b)の繰り返しパターン110の場合は、縦方向を1/3、横方向を1/2とする構成である。いずれの場合も、一つのパターン内には、各画素に対応して開口部104a〜104fが一つずつ設けられており、それぞれが対応する部分領域Pa〜Pfのいずれかから被写体光束を受光するように構成されている。したがって、いずれの繰り返しパターン110であっても視差量は同等である。
【0051】
上述の例では、左右方向に視差を与える視差画像を生成する場合について説明したが、もちろん上下方向に視差を与える視差画像を生成することもできるし、上下左右の二次元方向に視差を与える視差画像を生成することもできる。図7は、二次元的な繰り返しパターン110の例を示す図である。
【0052】
図7の例によれば、縦6画素横6画素の36画素を一組の光電変換素子群として繰り返しパターン110を形成する。それぞれの画素に対する開口部104の位置として、互いに上下左右方向にシフトした36種類の開口マスク103が用意されている。具体的には、各開口部104は、繰り返しパターン110の上端画素から下端画素に向かって、上側から下側へ徐々にシフトすると同時に、左端画素から右端画素に向かって、左側から右側へ徐々にシフトするように位置決めされている。
【0053】
このような繰り返しパターン110を有する撮像素子100は、上下方向および左右方向に視差を与える、36視点の視差画像を出力することができる。もちろん図7の例に限らず、さまざまな視点数の視差画像を出力するように繰り返しパターン110を定めることができる。
【0054】
以上の説明においては、開口部104の形状として矩形を採用した。特に、横方向に視差を与える配列においては、シフトさせる方向である左右方向の幅よりも、シフトさせない上下方向の幅を広くすることにより、光電変換素子108へ導く光量を確保している。しかし、開口部104の形状は矩形に限定されない。
【0055】
図8は、開口部104の他の形状を説明する図である。図においては、開口部104の形状を円形とした。円形とした場合、半球形状であるマイクロレンズ101との相対的な関係から、予定外の被写体光束が迷光となって光電変換素子108へ入射することを防ぐことができる。
【0056】
次に、カラーフィルタ102と視差画像について説明する。図9は、ベイヤー配列を説明する図である。図示するように、ベイヤー配列は、緑フィルタが左上と右下の2画素に、赤フィルタが左下の1画素に、青フィルタが右上の1画素に割り当てられる配列である。ここでは、緑フィルタが割り当てられた左上の画素をGb画素と、同じく緑色フィルタが割り当てられた右下の画素をGr画素とする。また、赤色フィルタが割り当てられた画素をR画素と、青色が割り当てられた画素をB画素とする。そして、Gb画素およびB画素が並ぶ横方向をGb行とし、R画素およびGr画素が並ぶ横方向をGr行とする。また、Gb画素およびR画素が並ぶ縦方向をGb列とし、B画素およびGr画素が並ぶ縦方向をGr列とする。
【0057】
このようなカラーフィルタ102の配列に対して、視差画素と視差なし画素を、何色の画素にどのような周期で割り振っていくかにより、膨大な数の繰り返しパターン110が設定され得る。視差なし画素の出力を集めれば、通常の撮影画像と同じく視差のない撮影画像データを生成することができる。したがって、相対的に視差なし画素の割合を増やせば、解像度の高い2D画像を出力させることができる。この場合、視差画素は相対的に少ない割合となるので、複数の視差画像からなる3D画像としては画質が低下する。逆に、視差画素の割合を増やせば、3D画像としては画質が向上するが、視差なし画素は相対的に減少するので、解像度の低い2D画像が出力される。
【0058】
このようなトレードオフの関係において、何れの画素を視差画素とするか、あるいは視差なし画素とするかにより、様々な特徴を有する繰り返しパターン110が設定される。図10は、ベイヤー配列に対する視差画素の割り振りについて、視差画素の種類が2つである場合のバリエーションを説明する図である。この場合の視差画素は、開口部104が中心よりも左側に偏心した視差L画素と、同じく右側に偏心した視差R画素を想定している。つまり、このような視差画素から出力される2視点の視差画像は、いわゆる立体視を実現する。
【0059】
それぞれの繰り返しパターンに対する特徴の説明は図に示す通りである。例えば、視差なし画素が多く割り振られていれば高解像度の2D画像データとなり、RGBのいずれの画素に対しても均等に割り振られていれば、色ずれの少ない高画質の2D画像データとなる。一方、視差画素が多く割り振られていれば高解像度の3D画像データとなり、RGBのいずれの画素に対しても均等に割り振られていれば、3D画像でありながら、色再現性の良い高品質のカラー画像データとなる。
【0060】
以下にいくつかのバリエーションについて説明する。図11は、バリエーションの一例を示す図である。図11のバリエーションは、図10における繰り返しパターン分類A−1に相当する。
【0061】
図の例においては、ベイヤー配列と同じ4画素を繰り返しパターン110とする。R画素とB画素は視差なし画素であり、Gb画素を視差L画素に、Gr画素を視差R画素に割り当てる。この場合、同一の繰り返しパターン110に含まれる視差L画素と視差R画素が、被写体が合焦位置に存在するときに、同じ微小領域から放射される光束を受光するように開口部104が定められる。
【0062】
図の例においては、視感度の高い緑画素であるGb画素およびGr画素を視差画素として用いるので、コントラストの高い視差画像を得ることが期待できる。また、同じ緑色画素であるGb画素およびGr画素を視差画素として用いるので、これら2つの出力から視差のない出力に変換演算がし易く、視差なし画素であるR画素およびB画素の出力と共に、高画質の2D画像データを生成できる。
【0063】
図12は、他のバリエーションの一例を示す図である。図12のバリエーションは、図10における繰り返しパターン分類B−1に相当する。
【0064】
図の例においては、ベイヤー配列の4画素が左右に2組続く8画素を繰り返しパターン110とする。8画素のうち、左側のGb画素に視差L画素を、右側のGb画素に視差R画素を割り当てる。このような配列においては、Gr画素を視差なし画素としたことにより、図10の例よりも、更に2D画像の高画質化が望める。
【0065】
図13は、更に他のバリエーションの一例を示す図である。図13のバリエーションは、図10における繰り返しパターン分類D−1に相当する。
【0066】
図の例においては、ベイヤー配列の4画素が左右に2組続く8画素を繰り返しパターン110とする。8画素のうち、左側のGb画素に視差L画素を、右側のGb画素に視差R画素を割り当てる。さらに、左側のR画素に視差L画素を、右側のR画素に視差R画素を割り当てる。さらに、左側のB画素に視差L画素を、右側のB画素に視差R画素を割り当てる。2つのGr画素には視差なし画素を割り当てる。
【0067】
2つのGb画素に割り当てられた視差L画素と視差R画素は、被写体が合焦位置に存在するときに、一つの微小領域から放射される光束を受光する。また、2つのR画素に割り当てられた視差L画素と視差R画素は、Gb画素のそれとは異なる一つの微小領域から放射される光束を受光し、2つのB画素に割り当てられた視差L画素と視差R画素は、Gb画素およびR画素のそれとは異なる一つの微小領域から放射される光束を受光する。したがって、図12の例に比較して、3D画像としての解像度が縦方向に3倍となる。しかも、RGBの3色の出力が得られるので、カラー画像としての3D画像として高品質である。
【0068】
なお、上述のように視差画素の種類を2つにすれば2視点の視差画像が得られるが、もちろん視差画素の種類は、出力したい視差画像数に合わせて、図3、図7、図8などで説明したような様々な数を採用し得る。視点数が増えていっても、さまざまな繰り返しパターン110を形成することができる。したがって、仕様、目的等に応じた繰り返しパターン110を選択することができる。
【0069】
上述の例では、カラーフィルタ配列としてベイヤー配列を採用した場合について説明したが、もちろん他のカラーフィルタ配列であっても差し支えない。このとき、一組の光電変換素子群を構成する視差画素のそれぞれは、互いに異なる部分領域を向く開口部104を有する開口マスク103を備えると良い。
【0070】
したがって、撮像素子100は、入射光を電気信号に光電変換する、二次元的に配列された光電変換素子108と、光電変換素子108の少なくとも一部のそれぞれに一対一に対応して設けられた開口マスク103と、光電変換素子108の少なくとも一部のそれぞれに一対一に対応して設けられたカラーフィルタ102とを備え、隣接するn個(nは3以上の整数)の光電変換素子108のうち、少なくとも2つ(3つ以上であっても良い)に対応して設けられたそれぞれの開口マスク103の開口部104は、互いに異なる波長帯域を透過させる少なくとも3種類のカラーフィルタ102から構成されるカラーフィルターパターンの一パターン内に含まれると共に、入射光の断面領域内の互いに異なる部分領域からの光束をそれぞれ通過させるように位置づけられ、n個の光電変換素子108を一組とする光電変換素子群が周期的に配列されていれば良い。
【0071】
図14は、他のカラーフィルタ配列を説明する図である。図示するように、他のカラーフィルタ配列は、図9で示したベイヤー配列のGr画素を緑フィルタが割り当てられるG画素として維持する一方、Gb画素をカラーフィルタが割り当てられないW画素に変更した配列である。なお、W画素は、上述のように、可視光のおよそ全ての波長帯域を透過させるように、着色を施さない透明フィルタが配列されていても良い。
【0072】
このようなW画素を含むカラーフィルタ配列を採用すれば、撮像素子が出力するカラー情報の精度は若干低下するものの、W画素が受光する光量はカラーフィルタが設けられている場合に比較して多いので、精度の高い輝度情報を取得できる。W画素の出力を寄せ集めれば、モノクロ画像を形成することもできる。
【0073】
W画素を含むカラーフィルタ配列の場合、視差画素と視差なし画素の繰り返しパターン110は、さらなるバリエーションが存在する。例えば、比較的暗い環境下で撮影された画像であっても、カラー画素から出力された画像に比較してW画素から出力された画像であれば、被写体像のコントラストが高い。そこで、W画素に視差画素を割り振れば、複数の視差画像間で行うマッチング処理において、精度の高い演算結果が期待できる。後述するように、マッチング処理は、視差量を取得する処理の一環として実行される。したがって、2D画像の解像度および視差画像の画質への影響に加え、抽出される他の情報への利害得失も考慮して、視差画素と視差なし画素の繰り返しパターン110が設定される。
【0074】
図15は、図14の他のカラーフィルタ配列を採用する場合の、W画素と視差画素の配列の一例を示す図である。図15のバリエーションは、ベイヤー配列における図12の繰り返しパターン分類B−1に類似するので、ここではB'−1とする。図の例においては、他のカラーフィルタ配列の4画素が左右に2組続く8画素を繰り返しパターン110とする。8画素のうち、左側のW画素に視差L画素を、右側のW画素に視差R画素を割り当てる。このような配列において撮像素子100は、視差画像をモノクロ画像として出力し、2D画像をカラー画像として出力する。
【0075】
この場合、撮像素子100は、入射光を電気信号に光電変換する、二次元的に配列された光電変換素子108と、光電変換素子108の少なくとも一部のそれぞれに一対一に対応して設けられた開口マスク103と、光電変換素子108の少なくとも一部のそれぞれに一対一に対応して設けられたカラーフィルタ102とを有し、隣接するn個(nは4以上の整数)の光電変換素子108のうち、少なくとも2つに対応して設けられたそれぞれの開口マスク103の開口部104は、互いに異なる波長帯域を透過させる少なくとも3種類のカラーフィルタ102から構成されるカラーフィルターパターンの一パターン内には含まれず、かつ、入射光の断面領域内の互いに異なる部分領域からの光束をそれぞれ通過させるように位置づけられ、n個の光電変換素子108を一組とする光電変換素子群が周期的に配列されていれば良い。
【0076】
ここで、モノクロ画像としての視差画像の生成と、カラー画像としての2D画像の生成について説明する。
【0077】
図16は、視差画像と2D画像の生成過程を示す概念図である。図示するように、視差L画素の出力が、撮像素子100上の相対的な位置関係を維持しながら寄せ集められて、L画像データが生成される。一つの繰り返しパターン110に含まれる視差L画素は一つであるので、L画像データを形成する各視差L画素は、それぞれ異なる繰り返しパターン110から寄せ集められていると言える。すなわち、寄せ集められたそれぞれの視差L画素の出力は、被写体の互いに異なる微小領域から放射された光が光電変換された結果であるので、L画像データは、特定の視点(L視点)から被写体を捉えた一つの視差画像データとなる。そして、視差L画素は、W画素に割り振られているので、L画像データは、カラー情報を持たず、モノクロ画像として生成される。
【0078】
同様に、視差R画素の出力が、撮像素子100上の相対的な位置関係を維持しながら寄せ集められて、R画像データが生成される。寄せ集められたそれぞれの視差R画素の出力は、被写体の互いに異なる微小領域から放射された光が光電変換された結果であるので、R画像データは、特定の視点(R視点)から被写体を捉えた一つの視差画像データとなる。そして、視差R画素は、W画素に割り振られているので、R画像データは、カラー情報を持たず、モノクロ画像として生成される。
【0079】
被写体が合焦位置に存在するときに、一つの繰り返しパターン110において、L画素とR画素は、被写体の同一の微小領域から放射される光束を受光する。また、被写体が非合焦位置に存在するときに、一つの繰り返しパターン110において、L画素とR画素は、被写体の互いにずれた微小領域から放射される光束を受光する。そのずれは、被写体位置の合焦位置に対する相対関係と瞳の部分領域の関係とから、方向と量が定まる。したがって、L画像データとR画像データのそれぞれにおいて、視差L画素と視差R画素が撮像素子100上の相対的な位置関係を維持しながら寄せ集められていれば、それぞれが視差画像を形成する。
【0080】
また、視差なし画素の出力が、撮像素子100上の相対的な位置関係を維持しながら寄せ集められて、2D画像データが生成される。このとき、W画素は視差画素であるので、視差なし画素のみで構成されるベイヤー配列からの出力に対して、Gb画素の出力に相当する出力が欠落する。そこで、本実施形態においては、この欠落した出力の値として、G画素の出力値を代入する。つまり、G画素の出力で補間処理を行う。このように、補間処理を施せば、ベイヤー配列の出力に対する画像処理を採用して2D画像データを生成することができる。
【0081】
なお、以上の画像処理は、画像処理部205のデータ取得部231によって実行される。データ取得部231は、制御部201を介して撮像素子100から出力される画像信号を受け取り、上述のようにそれぞれの画素の出力ごとに分配してL画像データ、R画像データおよび2D画像データを生成する。
【0082】
図17は、光学ファインダから観察される被写体像および測距領域を示す図である。ここではシーンの例として、手前から順に少女301、少年302および女性303が存在する場合を説明する。
【0083】
AFセンサ211は、被写体空間に対して二次元的かつ離散的に配置される複数の測距点460を有する。図の例の場合、11点の測距点460が、全体として略菱形形状に離散的に配置されている。AFセンサ211は、それぞれの測距点460に対応するデフォーカス量を独立に出力することができる。
【0084】
制御部201は、ユーザによる任意選択、近点優先等のアルゴリズムにより選択された合焦測距点461(図の例では少年302と重なる測距点460)のデフォーカス量を検出して、合焦に至るフォーカスレンズの移動量および移動方向を決定する。さらに制御部201は、これらの情報に従ってフォーカスレンズを移動させる。フォーカスレンズの移動が完了すると、制御部201は、AFセンサ211により合焦測距点461のデフォーカス量を再度検出して、合焦測距点461に対応するオブジェクトにピントが合ったことを確認する。
【0085】
制御部201は、ピントが合ったことを確認できたら、スーパーインポーズ表示等により合焦測距点461を明滅させ、合焦動作完了をユーザに告知する。また、制御部201は、合焦測距点461のデフォーカス量を再度検出すると同時に、他の測距点460のデフォーカス量も検出する。
【0086】
図18は、デジタルカメラ10と各被写体との距離を示す概念図である。制御部201は、それぞれの測距点460におけるデフォーカス量から、被写体までの距離を算出できる。具体的には、レンズ情報として、フォーカスレンズ位置と合焦被写体距離の対応テーブルを取得し、現在のフォーカスレンズ位置を入力することにより、合焦被写体までの距離を得る。この距離は少年302までの距離Dに相当する。オートフォーカスにおいては、あるデフォーカス量に対して、合焦位置までフォーカスレンズをどれだけ移動させればよいかの移動量変換関数を利用している。そこで、ここでもこの移動量関数を利用して、非合焦測距点におけるデフォーカス量から、フォーカスレンズの移動量を算出する。そして、現在のフォーカスレンズ位置に算出した移動量を加算した値を対応テーブルに入力することにより、距離Dおよび距離Dを得る。本実施形態においては、絶対距離を用いる場合に、このようにAFセンサ211の出力であるデフォーカス情報から算出された距離情報を参照する。合焦情報取得部234は、被写界に対する合焦測距点461の位置情報および測距点460ごとのデフォーカス情報に、算出された場合には距離情報を含め、これらを合焦情報として取得する。
【0087】
次に視差マップについて説明する。図19は、視差マップの生成処理を説明する説明図である。視差量演算部232は、データ取得部231が生成したL画像データおよびR画像データを受け取って、以下の視差マップ生成処理を実行する。
【0088】
視差量演算部232は、対象画素311に対して局所ウィンドウ312を定め、2画像間でマッチング処理を行い、対象画素311における視差量を決定する。具体的には、視差量演算部232は、L画像上の局所ウィンドウ312に対応してR画像上に局所ウィンドウ314を設定して、局所ウィンドウ314を局所ウィンドウ312に対して相対的にずらしながら互いにマッチングの良い画像領域を探索する。そして、マッチングが良いと判断される局所ウィンドウ314の位置を定め、その中心座標である探索画素313の座標値を算出する。視差量は、対象画素311の座標値と探索画素313の座標値の差として決定される。つまり、視差量演算部232は、被写体の同一点を捉えている対象画素311と探索画素313が、互いに何ピクセルずれているかを視差量として決定する。そして、視差量演算部232は、L画像上において対象画素311を左上から右下まで順次走査しながら上記のマッチング処理を逐次実行して、L画像とR画像の視差量を算出する。
【0089】
対象画素311が合焦領域に含まれる場合は、理想的には視差量が0となる。また、対象画素311が合焦領域に対して奥行き方向に遠い被写体の領域に含まれる場合は、視差量がプラスの値として表れる。逆に、対象画素311が合焦領域に対して奥行き方向に近い被写体の領域に含まれる場合は、視差量がマイナスの値として表れる。また、ピクセル単位で決定される視差量は、被写体の奥行き方向の距離に比例した値となる。なお、視差量は、L画像とR画像の相対的なずれ量を表すので、いずれを基準とするかによりプラスとマイナスの関係は逆転する。
【0090】
視差マップは、上述の算出結果として、各被写体領域に対応した視差量として表現される。図19下図の例は、視差量演算部232が、最も手前に存在する少女301に対応する領域401の視差量を0、その奥に存在する少年302に対応する領域402の視差量を+1、さらに奥に存在する女性303に対応する領域403の視差量を+2、背景領域404の視差量を+5とする視差マップを生成した様子を示している。
【0091】
上述の通り、合焦位置に存在する被写体に対して取得される視差量は0のはずである。図19の例によれば、図17で示す通り少年302に対して焦点調整が実行されているので、少年302が合焦位置に存在する被写体と言える。ところが、マッチング処理によって算出された、少年302に対応する領域402の視差量は+1である。つまり、本来視差量が0となるべきところ、誤差を含んで+1と算出されている。
【0092】
そこで、本実施形態においては、視差量演算部232が算出した視差マップを視差量補正部235が受け取り、合焦情報取得部234が取得した合焦情報を参照して、受け取った視差マップにおける各領域の視差量を補正する。図20は、視差マップの補正処理を説明する説明図である。
【0093】
視差マップは、上述のように、被写体領域ごとの視差量で表現されている。被写体領域は、同じ視差量を示す画素の集合としてその輪郭が形成される。図20の例では簡略化しているが、被写体領域は、デジタルカメラ10からの距離に応じた等高線のように形成される。ただし、視差量は整数値としてのピクセル単位で表現されるとは限らず、より精度を要求される場合などおいてには、サブピクセル単位でも表現され得る。このような場合も含めて、被写体領域は、一定の範囲に含まれる視差量を有する画素ごとに纏められて定義されても良い。
【0094】
合焦情報は、少なくとも被写界に対する合焦測距点461の位置情報を含む。視差量補正部235は、合焦情報取得部234から合焦測距点461の位置情報を受け取り、合焦測距点461の位置を含む視差マップの被写体領域を選択する。図の例では、合焦測距点461は略菱形形状に離散的に配置されている測距点460のうちの左端の測距点であるので、この測距点の位置を含む領域402が選択される。
【0095】
視差量補正部235は、選択した領域402の視差量を0に補正する。すなわち、補正前の視差マップにおいては+1を示していた視差量を−1する。この−1を補正量として、他の領域にも適用する。すなわち、視差量補正部235は、領域401の視差量を0から−1へ、領域403の視差量を+2から+1へ、背景領域404の視差量を+5から+4へ補正する。このようにして、被写界に存在する各領域の視差量を補正して、補正後の視差マップを完成させる。
【0096】
以上の例においては、合焦測距点461に対応する領域402の視差量を0とし、領域402において補正量を算出して、他の領域にも当該補正量を一律に適用することにより補正後の視差マップを完成させた。しかし、視差量演算部232がマッチング処理によって算出する合焦領域の視差量が0とならないのは、様々な要因に拠る誤差が累積された結果である。したがって、その要因に対応して誤差を緩和するように補正量をさらに調整すれば、より精確な視差マップを生成することができる。
【0097】
誤差を生じる要因としては、まず、デジタルカメラ10がレンズ交換式カメラである場合、装着される撮影レンズ20ごとに特性の異なる収差が挙げられる。それぞれの視差画像は、上述のように、被写体光束が通過する撮影レンズ20の断面領域に対して、異なる部分領域を通過する部分光束により形成される。したがって、通過する部分領域の収差特性が異なれば、形成される視差画像間の視差量にも誤差を生じさせ得る。
【0098】
また、誤差を生じされる別の要因としては、合焦状態に存在する被写体までの距離が挙げられる。被写体からの光束が光軸から離れた部分領域を通過して視差画素に入射する場合、その入射角は、被写体距離によって変化する。したがって、被写体までの距離が異なれば、形成される視差画像間の視差量に誤差を生じさせ得る。
【0099】
また、誤差を生じされる別の要因としては、撮影時における撮影レンズ20の絞り開口が挙げられる。その他の要因としては、撮影レンズ20の焦点距離、合焦測距点の位置などが挙げられる。
【0100】
このような様々な要因の少なくとも一部に対応すべく、デジタルカメラ10は、事前に基準チャート板などの基準像を撮影することにより、較正情報を生成する。図21は、較正情報の例を説明する説明図である。ここでは、誤差を生じさせる要因としての、レンズ収差、被写体距離、絞り開口に対応する較正情報を生成する場合について説明する。
【0101】
基準像は、固定されたデジタルカメラ10に対して、予め設定された距離に設置される。そして、デジタルカメラ10は、当該基準像に焦点を合わせ、絞り値を変更しつつ複数回の撮影を実行して、複数組の視差画像データを取得する。さらに、距離を変更して設置された基準像に対して、同様の手順で複数組の視差画像データを取得する。これを、装着される撮影レンズ20ごとに繰り返す。
【0102】
このようなキャリブレーション作業によって取得されたそれぞれの組の視差画像データは、視差量演算部232によってマッチング処理が施され、各画素に対する視差量が算出される。しかし、視差画像データは、設定距離に設置された基準像である平面全体に対して合焦調整を行って取得されているので、本来の視差量は0のはずである。したがって、視差量演算部232によって算出された視差量が0で無い場合、その値は誤差であると認識できる。制御部201は、この誤差情報をテーブル化して較正情報を生成し、ROM221へ記憶する。
【0103】
図21の例によれば、較正情報は、装着される撮影レンズ20(レンズA)の各絞り値(f2.8、f5.6…)と各被写体距離(1.0m、5.0m、15.0m…)に対応して、マトリックス状に誤差情報が関連付けられている。誤差情報は、図示するように、画像領域が誤差量ごとに区分された誤差マップとして形成されている。例えば、絞り値f2.8、被写体距離1.0mの誤差マップの場合、画像領域の中心に対して同心円状に5つの領域に区分されており、各区分領域は、中心部から外周部へ向かってそれぞれ誤差量0、+0.5、+1.0、+1.5、+2.0が定義されている。なお、絞り値、被写体距離の刻み幅は、要求される精度に応じて決定すればよい。
【0104】
このように定義付けられた較正情報の利用について説明する。例えば、被写体距離が1.0mであって、ポイント500に存在する被写体に焦点を合わせた場合、誤差マップではポイント500を含む領域において+1.0を示しているので、較正情報の寄与分として符号を逆転させた−1.0を上述の補正量に加える。この修正された補正量をもって、視差マップの対応領域(ポイント500に存在する被写体の領域)を補正する。
【0105】
また、合焦情報が、各測距点460に対応する被写体までの距離情報を有する場合は、さらに補正量を修正できる。例えば被写体距離が5.0mであって、ポイント501に非合焦の被写体が存在する場合、誤差マップではポイント501を含む領域において+2.0を示しているので、較正情報の寄与分として符号を逆転させた−2.0を上述の補正量に加える。この修正された補正量をもって、視差マップの対応領域(ポイント501に存在する被写体の領域)を補正する。つまり、被写体領域ごとに、それぞれ適する視差マップを参照することができる。
【0106】
なお、上述の例においては、レンズ収差、被写体距離、絞り開口に対して纏めて対応する較正情報を生成したが、もちろん要因ごとに切り分け、そのうちのいくつかに対応する較正情報を生成しても良い。例えば、被写体距離および絞り開口がひとつの基準値に設定された、撮影レンズ20のレンズ収差のみに対応する較正情報であっても、補正量の修正には貢献する。
【0107】
上述の例では、W画素に視差画素が割り当てられている画素配列B'−1の撮像素子100を採用した場合の視差マップについて説明したが、カラーフィルタが配された画素に視差画素が割り当てられている撮像素子100を採用した場合の視差マップについても同様に補正できる。この場合、配されたカラーフィルタの種類によって、撮影レンズ20の倍率色収差の影響を受ける。そこで、視差画素が割り当てられているカラーフィルタごとに誤差量を求め、それぞれに対して誤差マップを生成することにより、倍率色収差に対応する較正情報を取得することができる。
【0108】
また、上述のキャリブレーション作業は、被写体距離に応じて加味されるAF補正値を算出するためのキャリブレーション作業に組み入れることができる。この場合、一度の作業により、AF補正値と誤差マップを生成することができる。
【0109】
視差マップは、さまざまな用途に利用できる。その一例として、非カラー画像データをカラー画像データに変換する画像処理への適用について説明する。
【0110】
図22は、視差マップを参照して原色情報を移植する処理の概念を示す図である。画像変換部233は、視差マップを参照して、非カラー画像データをカラー画像データに変換する。ここでは、例として、画像データ群として生成された画像データのうち、2D画像データがカラー画像データであり、視差画像データが非カラー画像データである場合について説明する。また、補正後の視差マップの基準を2D画像データ基準に変換する。具体的には、例えば補正後の視差マップがR画像に対するL画像の視差量として記述されている場合には、2D画像データに対するL画像の視差量となるように、それぞれの値を半分にする。
【0111】
基準画像である2D画像データは、各画素ブロックにおいてRGBフィルタのそれぞれに対応する画素値を原色情報として有する。n,mを自然数としたとき、画素ブロック(n,m)に対する原色情報を、Cnmと表す。そして、画像変換部233は、視差画像データにおける画素ブロック(n,m)の原色情報として、視差マップを参照して、2D画像データの画素ブロック(n',m')の原色情報Cn'm'を移植する。画像変換部233は、全ブロックに対してこの作業を繰り返し、非カラー画像データである視差画像データをカラー画像データに変換する。
【0112】
図の例を用いて具体的に説明する。L画像データの画素ブロック(1,1)の原色情報を取得する場合は、視差マップの画素(1,1)を参照する。なお、ここでは、視差マップの1画素が2D画像データ、L画像データおよびR画像データの1ブロックに対応する場合を想定する。このとき視差マップの画素(1,1)は、視差量0を示しているので、画像変換部233は、そのまま対応する画素ブロックとして2D画像データの画素ブロック(1,1)を検索する。そして、画像変換部233は、2D画像データの画素ブロック(1,1)の原色情報C11を、L画像データの画素ブロック(1,1)へ移植する。画像変換部233は、視差量が0であるので、R画像データの画素ブロック(1,1)についても同様に、2D画像データの画素ブロック(1,1)の原色情報C11を移植する。
【0113】
次に、L画像データの画素ブロック(1,2)の原色情報を取得する場合は、視差マップの画素(1,2)を参照する。このとき視差マップの画素(1,2)は、視差量1を示しているので、画像変換部233は、2D画像データの対応する画素ブロック(1,2)のひとつ右側である画素ブロック(1,3)を検索する。そして、画像変換部233は、2D画像データの画素ブロック(1,3)の原色情報C13を、L画像データの画素ブロック(1,2)へ移植する。
【0114】
続いて画像変換部233は、R画像データの画素ブロック(1,2)の原色情報を取得する。参照した視差マップの画素(1,2)の視差量は1を示していたが、R画像データへ原色情報を移植する場合は符号を逆転させるので、ここでは視差量を−1とする。したがって、画像変換部233は、2D画像データの対応する画素ブロック(1,2)のひとつ左側である画素ブロック(1,1)を検索する。そして、画像変換部233は、2D画像データの画素ブロック(1,1)の原色情報C11を、R画像データの画素ブロック(1,2)へ移植することにより原色情報を取得する。
【0115】
つまり、画像変換部233は、L画像データの画素ブロック(n,m)へは、視差量がkであるとき、2D画像データの原色情報Cnm+kを、R画像データの画素ブロック(n,m)へは、2D画像データの原色情報Cnm−kを移植して、それぞれの視差画像データ原色情報を取得する。このようにして、L画像データの全ブロック、R画像データの全ブロックに原色情報を移植してカラー画像データを完成させる。このような移植処理により、それぞれの被写体像は、被写体距離に対応する本来の視差をもった位置に観察される。
【0116】
図22の例では、視差画像データが共に非カラー画像データであり、2D画像データがカラー画像データである場合の、原色情報の移植について説明した。データ取得部231により取得される画像データ群において、視差画像データが共に非カラー画像データであり、2D画像データがカラー画像データである場合は、撮像素子100が、例えば、B−1配列、B'−1配列を採用する場合である。ただし、これらの配列は、繰り返しパターン110が、縦2画素横4画素の8画素である。そこで、視差量演算部232は、図22のような縦2画素横2画素の4画素を1ブロックとする場合は、視差画像データのうち足りない画素値を隣接する画素値で補間するなどの処理を施して、各ブロックに対応する視差量を算出すれば良い。
【0117】
図22の例とは逆に、視差画像データが共にカラー画像データであり、2D画像データが非カラー画像データである場合は、画像変換部233は、視差マップを参照して、例えばL画像データの原色情報を2D画像データへ移植する。もちろん、原色情報の移植元はR画像データであっても良いし、両画像データの原色情報を平均化するなどの処理を施しても良い。
【0118】
上述においては、全ての画素で視差量を演算できた場合を前提として説明したが、被写体の空間周波数、オクルージョン等により、マッチング処理によっては視差量を演算できない画素が存在する場合がある。このような場合には、視差量演算部232は、隣接する画素ブロックの視差量との連続性を考慮して補間しても良い。
【0119】
また、上述においては、例えば画像処理部205が含むデータ取得部231、視差量演算部232および画像変換部233、また、制御部201が含む合焦情報取得部234および視差量補正部235など、デジタルカメラ10を構成する各構成要素の機能としてそれぞれの処理を説明した。一方、制御部201を動作させる制御プログラムは、デジタルカメラ10を構成する各ハードウェアを、上述の処理を実行させる構成要素として機能させ得る。また、これらの処理は、デジタルカメラ10で行わなくても、外部のパーソナルコンピュータなどの機器で行っても良い。この場合、外部のパーソナルコンピュータなどの機器は画像処理装置として機能する。画像処理装置は、上述の撮像素子100から出力される視差画像データと合焦情報を取得して、同一被写体間の視差量を補正する。
【0120】
また、上述においては、位相差信号を出力するAFセンサ211を例に説明をしたが、コントラストAF方式におけるコントラスト情報であっても、最も高いコントラストを示した領域を合焦領域とすることができるので、その合焦領域を基準として上述のように視差量を補正できる。
【0121】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0122】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0123】
10 デジタルカメラ、20 撮影レンズ、21 光軸、30 被写体、100 撮像素子、101 マイクロレンズ、102 カラーフィルタ、103 開口マスク、104 開口部、105 配線層、106 配線、107 開口、108 光電変換素子、109 基板、110 繰り返しパターン、120 撮像素子、121 スクリーンフィルタ、122 カラーフィルタ部、123 開口マスク部、201 制御部、202 A/D変換回路、203 メモリ、204 駆動部、205 画像処理部、207 メモリカードIF、208 操作部、209 表示部、210 LCD駆動回路、211 AFセンサ、220 メモリカード、221 ROM、231 データ取得部、232 視差量演算部、233 画像変換部、234 合焦情報取得部、235 視差量補正部、301 少女、302 少年、303 女性、311 対象画素、312、314 局所ウィンドウ、313 探索画素、401、402,403 領域、404 背景領域、500、501 ポイント

【特許請求の範囲】
【請求項1】
少なくとも一部の光電変換素子のそれぞれに対応して開口マスクが設けられた少なくとも2つの視差画像データを出力する撮像素子から前記視差画像データを取得する画像データ取得部と、
前記視差画像データの撮像時における合焦情報を取得する合焦情報取得部と、
前記合焦情報に基づいて、前記視差画像データにおける同一被写体間の視差量を補正する視差量補正部と
を備える画像処理装置。
【請求項2】
前記視差量補正部は、前記合焦情報に基づいて、合焦領域に対応する前記同一被写体の前記視差量を零とする請求項1に記載の画像処理装置。
【請求項3】
前記視差画像データから前記視差量を表す視差マップを生成する視差マップ生成部を備え、
前記視差量補正部は、前記視差マップを補正する請求項1または2に記載の画像処理装置。
【請求項4】
前記撮像素子が予め定められた基準像を撮像することにより生成された較正情報を記憶する較正情報記憶部を備え、
前記視差量補正部は、前記較正情報を参照して前記視差量を補正する請求項1から3のいずれか1項に記載の画像処理装置。
【請求項5】
前記較正情報記憶部は、前記撮像素子から前記基準像までの距離が異なる複数の前記較正情報を記憶する請求項4に記載の画像処理装置。
【請求項6】
前記較正情報は、AF動作時において被写体距離に応じて加味されるAF補正値の生成と共に生成される請求項5に記載の画像処理装置。
【請求項7】
前記較正情報記憶部は、前記基準像を撮像する撮影レンズが異なる複数の前記較正情報を記憶する請求項4から6のいずれか1項に記載の画像処理装置。
【請求項8】
前記視差量補正部は、前記較正情報を参照して、倍率色収差を併せて補正する請求項7に記載の画像処理装置。
【請求項9】
前記較正情報記憶部は、前記基準像を撮像する絞り値が異なる複数の前記較正情報を記憶する請求項4から8のいずれか1項に記載の画像処理装置。
【請求項10】
前記撮像素子と請求項1から9のいずれか1項に記載の画像処理装置を含む撮像装置であって、
前記撮像素子は、
隣接するn個(nは3以上の整数)の前記光電変換素子のうち、少なくとも3つに対応して設けられたそれぞれの前記開口マスクの開口は、互いに異なる波長帯域を透過させる少なくとも2種類のカラーフィルタから構成されるカラーフィルターパターンの一パターン内に含まれると共に、入射光の断面領域内の互いに異なる部分領域からの光束をそれぞれ通過させるように位置づけられ、前記n個の前記光電変換素子を一組とする光電変換素子群が周期的に配列されており、
前記開口マスクが設けられた前記光電変換素子の出力信号に基づいて前記視差画像データを出力する撮像装置。
【請求項11】
少なくとも一部の光電変換素子のそれぞれに対応して開口マスクが設けられた少なくとも2つの視差画像データを出力する撮像素子から前記視差画像データを取得する画像データ取得ステップと、
前記視差画像データの撮像時における合焦情報を取得する合焦情報取得ステップと、
前記合焦情報に基づいて、前記視差画像データにおける同一被写体間の視差量を補正する視差量補正ステップと
をコンピュータに実行させる画像処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate