以下、本発明を実施した光学機器の一例としてのレンズ鏡筒について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
まず、視差量から被写体距離を算出する方法について説明する。図1は、2つの撮像系(撮像系CLおよび撮像系CR)を用いた測距方法の説明図である。撮像系CLおよび撮像系CRの主点が点(−D/2,0)および点(+D/2,0)にそれぞれ位置し、被写体Aが点(z,x)に位置している。また、2つの撮像系の焦点距離をfとする。2つの撮像系で被写体Aを撮像した場合、撮像系CLおよび撮像系CRにおける被写体Aの像のそれぞれのセンサ中心からのズレzl,zrは以下の式(1)および式(2)により算出される。
被写体Aまでの距離xは、式(1),(2)に基づく式(3)により算出される。
式(3)中のDは、2つの撮像系の基線長である。以下の説明では、zr−zlを視差または位相差という。また、2つの撮像系を用いて測距を行う方法をステレオ測距という。
視差d(=zr−zl)、画像上の視差の分解能をΔdとすると、測距分解能Δxは、式(4)により算出される。
式(4)より、基線長Dを長くすれば、測距分解能Δxが小さくなるので高精度な測距を行うことができる。簡単のため、X−Z平面上において視差を有する視差画像について説明したが、同様の原理を用いて任意の平面上においても測距を行うことが可能である。
ステレオ測距により測距を行うためには、視差画像から視差量を算出する必要がある。図1の2つの撮像系を用いて同一の被写体を撮像した場合、撮像系CLおよび撮像系CRから取得される視差画像IMGlおよび視差画像IMGrにおいて被写体は異なる位置に写っており、その位置の差が視差量となる。すなわち、視差画像から視差量を算出するためには、視差画像IMGlおよび視差画像IMGrから位置の異なる同一の被写体領域を抽出する必要がある。
画像IMGlおよび視差画像IMGrから位置の異なる同一の被写体領域を抽出する方法について、図2を参照して説明する。図2は、画像座標の説明図である。図2において、各画像の左上を原点、水平方向をZ軸、垂直方向をY軸とする。また、視差画像IMGl上の画素(Z,Y)の輝度をF1(Z,Y)とし、視差画像IMGr上の画素(Z,Y)の輝度をF2(Z,Y)とする。視差画像IMGl上の画素(Z,Y)に対応する視差画像IMGrの画素(Z,Y)を抽出するには、視差画像IMGlの画素(Z,Y)の輝度F1(Z,Y)と最も類似する輝度の視差画像IMGrの画素を探せばよい。図2において、視差画像IMGlおよび視差画像IMGr上の縦線画素がそれぞれ対応する画素である。ただし、一般的に任意の画素と最も類似した画素を探すことは難しいため、対応する画素の近傍の画素も用いるブロックマッチング処理で類似画素を探索する。
ブロックサイズが3である場合のブロックマッチング処理について説明する。視差画像IMGlの任意の画素(Z,Y)と、その前後の2つの画素(Z−1、Y)、(Z+1、Y)の輝度はそれぞれ、F1(Z,Y)、F1(Z−1,Y)、F1(Z+1,Y)である。一方、視差画像IMGr上の画素(Z,Y)からZ方向にkだけずれた画素(Z+k,Y)と、その前後の2つの画素(Z+k−1,Y),(Z+k+1,Y)の輝度はそれぞれ、F2(Z+k,Y),F2(Z+k−1,Y),F2(Z+k+1,Y)である。このとき、視差画像IMGlの画素と視差画像IMGrの画素との類似度Eは、以下の式(5)で定義される。
式(5)において、逐次kの値を変えて類似度Eの値を計算し、類似度Eが最も小さくなる画素(Z+k、Y)が、視差画像IMGlの画素(Z,Y)に対応する。このようにして得られた対応する被写体領域の位置の差分が視差量である。
次に、撮像光学系の射出瞳のうちそれぞれ異なる領域を透過した複数の光束を、撮像素子における互いに異なる画素に分離して撮像する撮像系について、図3を参照して説明する。図3は、撮像素子の受光部(画素)と撮像光学系の射出瞳との関係図である。撮像素子には、受光部であるG1画素とG2画素から構成される画素群が複数配列されている。カラーフィルタCFは、撮像素子の前方に配置されている。G1画素とG2画素は、共通の(つまりは画素群ごとに1つずつ設けられた)マイクロレンズ(光学素子)MLを介して撮像光学系の射出瞳EXPと共役な関係を有する。具体的には、G1画素は射出瞳EXP上のP1領域と共役な関係を有し、G2画素はP2領域と共役な関係を有する。撮像素子に配列された複数のG1画素をまとめてG1画素群といい、撮像素子に配列された複数のG2画素をまとめてG2画素群という。
図4(a)は、射出瞳EXPの位置に厚さが無い仮想的な薄肉レンズが配置されていると仮定した場合の撮像系の模式図である。G1画素は、射出瞳EXPのうちP1領域を透過した光束を受光し、受光した光束を光電変換する。G2画素は、射出瞳EXPのうちP2領域を透過した光束を受光し、受光した光束を光電変換する。撮像している物点OSPからの光束は、透過する射出瞳EXP内での領域(位置)に応じてG1画素またはG2画素に入射する。射出瞳EXP上の互いに異なる領域を光束が透過することは、物点OSPからの入射光が角度(視差)によって分離されることに相当する。すなわち、各マイクロレンズMLに対して設けられたG1画素およびG2画素のうち、G1画素群からの出力信号を用いて生成される画像とG2画素群からの出力信号を用いて生成される画像とが、互いに視差を有する複数(ここでは1対)の視差画像となる。以下の説明において、射出瞳EXP内の互いに異なる領域を通過した光束を互いに異なる受光部(画素)により受光することを瞳分割という。なお、撮像系は、瞳分割を行うことができれば、図4(a)の撮像系に限定されない。図4(b)は、瞳分割を行う撮像系の他の例を示す図である。図4(b)の撮像系では、射出瞳EXPのP1領域およびP2領域を通過した1対の光束は、三角形ミラーTMRによってそれぞれ異なる撮像素子SEN1および撮像素子SEN2に導かれる。そのため、撮像素子SEN1および撮像素子SEN2の出力信号をそれぞれ別々に読み出すことで1対の視差画像を生成することができる。
図5(a)は、G1画素およびG2画素から構成される画素群とマイクロレンズMLを物点OSPから見た図である。図5(a)では、カラーフィルタCFを省略している。図5(b)は、図5(a)のG1画素およびG2画素にそれぞれ対応する射出瞳EXP上のP1領域およびP2領域を示す図である。図5(a),(b)に示される撮像系では、1対の視差画像が得られる。なお、撮像素子には図5(a),(b)に示されるG1画素およびG2画素から構成される画素群の代わりに、図5(c)に示される画素群を配列してもよい。
図5(c)は、G1画素、G2画素、G3画素およびG4画素から構成される画素群とマイクロレンズMLを物点OSPから見た図である。図5(c)では、カラーフィルタCFを省略している。G1画素、G2画素、G3画素およびG4画素は、共通のマイクロレンズMLを介して射出瞳EXPと共役な関係を有する。図5(d)は、図5(c)のG1画素、G2画素、G3画素およびG4画素にそれぞれ対応する射出瞳EXP上のP1領域、P2領域、P3領域およびP4領域を示す図である。P1領域、P2領域、P3領域およびP4領域を透過した物点OSPからの光束はそれぞれ、G1画素、G2画素、G3画素およびG4画素により受光される。すなわち、各画素からの出力信号を用いて生成される複数の画像が、互いに視差を有する4枚の視差画像となる。
なお、各実施例の撮像系では、射出瞳EXPの位置ずれ等によって、上述した共役関係が完全でなくてもよい。また、各実施例の撮像系では、射出瞳EXPの領域同士が部分的に重なってもよいし、領域間に間隔が形成されてもよい。
また、画素群は、2つまたは4つの画素からなる構成に限定されず、更に多くの画素からなる構成でもよい。言い換えれば、1つのマイクロレンズMLを介して更に多くの画素が射出瞳EXPと共役な関係を有してもよい。
次に、図6、図7を参照して、瞳分割を行う撮像系を用いて被写体までの距離を算出する方法について説明する。図6は、図3および図4(a)で説明した撮像系において、P1領域およびP2領域をそれぞれ透過した光束が撮像面IPに結像する様子を示す模式図である。図7は、瞳分割を行う撮像系により撮像面に形成される点像強度分布図である。
図6(a)は物点OSPに撮像系のフォーカスが合っている状態であり、P1領域およびP2領域を通過した光束は撮像面IP上の同一の領域に結像している。このとき、撮像面IP上に形成される点像強度分布(PSF)が図7(a)に示されている。図7(a)において、実線はP1領域を通過した光束により形成されるPSF、破線はP2領域を通過した光束により形成されるPSFである。物点OSPにフォーカスが合っているために、それぞれのPSFのピークが一致する。なお、それぞれのPSFのピークが一致している状態をフォーカスが合っている状態としているが、それぞれのPSFの重心や二乗平均平方根(RMS)等が一致している状態をフォーカスが合っている状態としてもよい。
図6(b)は物点OSPよりも遠方に撮像系のフォーカスが合っている状態であり、P1領域およびP2領域を通過した光束は撮像面IP上のそれぞれ異なる領域に入射する。このとき、撮像面IP上に形成されるPSFが図7(b)に示されている。図7(b)において、実線はP1領域を通過した光束により形成されるPSF、破線はP2領域を通過した光束により形成されるPSFである。物点OSPにフォーカスが合っていないために、それぞれのPSFのピークは視差の分だけずれている。この視差を用いてデフォーカス量を算出することができるため、被写体(物点OSP)までの距離を測定することができる。このように、単一の瞳分割を行う光学系を用いる測距を瞳分割測距という。
瞳分割測距では、射出瞳上のP1領域およびP2領域それぞれの中心点はステレオ測距における撮像系CLおよび撮像系CRの主点位置に相当し、基線長は射出瞳の半径である。そのため、瞳分割測距では、単一の光学系で測距を行うことができるという利点がある反面、2つの撮像系の配置により大きな基線長を持つことが可能なステレオ測距に比べ基線長の制限が大きく、高い測距精度を得難い。
また、瞳分割を行う撮像系として、画素群が2つの画素から構成され、射出瞳を2つの領域に分割する撮像系だけでなく、画素群が2つよりも多くの画素から構成され、射出瞳を画素群に応じた領域に分割する撮像系を使用してもよい。その際には、複数の画素から構成される画素群のうち、それぞれの画素に入射する光束が互いに射出瞳上で最も離れた領域を通過する2つの画素の出力信号を用いて瞳分割測距を行うことが好ましい。これは、基線長が射出瞳上の領域の中心点間の距離であるためである。
次に、瞳分割を行う複数の撮像系を用いて行うステレオ測距について説明する。瞳分割を行うことで、前述のように複数の視差画像を得ることができる。以下、瞳分割を行う2つの撮像系をCLおよびCR、撮像系CLから取得される2枚の視差画像を視差画像CLaおよびCLb、撮像系CRから取得される2枚の視差画像をCRaおよびCRbという。
瞳分割を行う複数の撮像系CL,CRを用いてステレオ測距を行う際には、視差画像CLa,CLbの合成画像CLiおよび視差画像CRa,CRbの合成画像CRiを用いてステレオ測距を行う。合成画像CLi,CRiは、撮像系CL,CRが瞳分割を行わない撮像系である場合に得られる画像と同一である。また、視差画像CLa,CLbのうちの1枚の視差画像と、視差画像CRa,CRbのうちの1枚の視差画像を用いてステレオ測距を行ってもよい。具体的には、以下に述べる要素を考慮してステレオ測距に用いる画像を決定するのが望ましい。
視差画像CLa,CLbはそれぞれ、合成画像CLiに比べて被写界深度が深い。同様に、視差画像CRa,CLbはそれぞれ、合成画像CRiに比べて被写界深度が深い。これは、各視差画像を生成するための出力データを出力する画素に入射する光束が射出瞳上の対応する一部の領域を通過する状態、すなわち、撮像光学系の絞りを絞った状態に相当するためである。被写界深度が深いと、撮像光学系の焦点面からより離れた被写体を良好に結像させることが可能である。そのため、視差画像CLa,CLbのうちの1枚の視差画像と、視差画像CRa,CRbのうちの1枚の視差画像を用いてステレオ測距を行うことで、対応する被写体領域の抽出精度が高く、精度の良い測距を行うことができる。
一般的に、光束が通過する射出瞳上の領域によって、発生する収差は異なる。そのため、視差画像CLa,CLb,CRa,CRbはそれぞれ、異なる収差の影響を受けている。また、視差画像CLa,CLb,CRa,CRb上の画素領域によってもその影響は異なる。そこで、画像上の領域ごとに4枚の視差画像のうち、収差による劣化の少ない視差画像を選択し、それらを用いてステレオ測距を行うことで、対応する被写体領域の抽出精度が高く、精度の良い測距を行うことができる。
夜間等の暗い環境下でステレオ測距を行う際には、合成画像CLi,CRiを用いてステレオ測距を行うことが望ましい。これは、視差画像CLa,CLb,CRa,CRbに比べて、合成画像CLi,CRiはより多くの光を記録しているために信号対雑音比が大きく、ノイズの影響を低減することができるためである。一方、画角内に発光物体等の周囲に比べて明るい被写体が存在する場合、画素値が飽和しやすくなるため、視差画像CLa,CLbのうちの1枚の視差画像および視差画像CRa,CRbのうちの1枚の視差画像を用いてステレオ測距を行うことが望ましい。
本実施例では、瞳分割を行う撮像系を2つ有し、それらを用いて測距を行う撮像装置について説明する。
図8は、本実施例の撮像装置の基本構成を示すブロック図である。撮像モジュール100は、それぞれが瞳分割を行う撮像系101aおよび撮像系101bを備える。図8において、撮像系101a,101bは、それぞれの光軸が互いに平行な状態で配置されているが、一方の光軸が他方の光軸と非平行である状態で配置されてもよい。撮像系101a,101bは、図5(a)に示される撮像系であり、それぞれが瞳分割を行うことで図5(a)のZ方向へ視差を持つ2枚の(1対の)視差画像を生成するための出力データを出力する。A/Dコンバータ102は、撮像系101a,101bから出力されたアナログ信号をデジタル信号に変換し、画像処理部(画像処理手段)103に入力する。画像処理部103は、1対の視差画像、またはそれらの合成画像を用いて画像上の被写体までの距離を算出する。システムコントローラ106は、撮像モジュール100の駆動および画像処理部103の処理を制御する。撮像光学系制御部105は、システムコントローラ106からの制御指示に応じて、撮像系101a,101bの不図示の絞りおよびフォーカスレンズの機械的な駆動を行う。
図9は、撮像モジュール100の説明図である。図9(a)は、撮像系101aの画角を破線で示す図である。図9(b)は、撮像系101bの画角を点線で示す図である。図9(c)は、2つの撮像系の配置図である。撮像系101a,101bは、X−Z平面上において互いの光軸が角度を持つように配置されている。また、撮像系101a,101bの間隔は、2つの撮像系でステレオ測距を行う際の基線長に相当し、本実施例では100mmに設定する。撮像系101a,101bの間隔は、任意の値を設定でき、大きく設定する場合、後述する重畳領域において精度の良いステレオ測距が可能であり、小さく設定する場合、撮像モジュールを小型化することが可能である。図9(d)は、撮像系101a,101bの画角を重ねた図である。撮像モジュール100の画角は、図9(d)に示されるように、2つの撮像系の画角を統合した画角である。撮像モジュール100の画角には、各撮像系の画角が重畳する重畳領域R1および画角が重畳しない非重畳領域R2,R3が存在する。
撮像系101a,101bのそれぞれの光軸間の角度は、重畳領域R1が形成可能な角度であればよい。隣接する撮像系の光軸間の角度は、広い画角領域で高精度に測距を行うために、撮像モジュールの画角(複数の撮像系の画角を統合した画角)の半画角以下であることが好ましい。本実施例では、各撮像系は一点鎖線で示すそれぞれの光軸を中心に±50度の画角を持ち、各光軸間の角度を50度にしている。すなわち、撮像モジュール100は、150度の画角を持つ。
画像処理部103は、重畳領域R1では、撮像系101aから取得される画像および撮像系101bから取得される画像を用いてステレオ測距を行う。このとき、撮像系101aから取得される1対の視差画像の合成画像、および撮像系101bから取得される1対の視差画像の合成画像を用いてステレオ測距を行う。また、撮像系101aから取得される1対の視差画像のうち1枚の視差画像、および撮像系101bから取得される1対の視差画像のうち1枚の視差画像を用いてステレオ測距を行ってもよい。
1対の視差画像を合成した画像の画素値が飽和画素値(所定値)を超える場合、撮像系101a,101bからそれぞれ取得される1対の視差画像のうち1枚の視差画像を用いてステレオ測距を行うことが好ましい。合成した画像の画素値が飽和画素値を超えない場合、撮像系101aから取得される1対の視差画像の合成画像、および撮像系101bから取得される1対の視差画像の合成画像を用いてステレオ測距を行う。このような測距処理を行うことで、画角内に周囲に比べて特に明るい被写体が存在するシーンにおいても、画素値飽和の影響を受けずに測距を行うことができる。
画像処理部103は、非重畳領域R2では撮像系101aから取得される1対の視差画像を用いて瞳分割測距を行い、非重畳領域R3では撮像系101bから取得される1対の視差画像を用いて瞳分割測距を行う。
このように、瞳分割を行う撮像系を2つ組み合わせることで、広画角の測距を行うことが可能であるとともに、重畳領域では高精度な測距を行うことが可能である。
次に、本実施例の撮像装置における被写体距離の算出手順について、図10のフローチャートを用いて説明する。
ステップS101では、撮像モジュール100はシステムコントローラ106からの指示により撮像を行い、画像処理部103は撮像モジュール100から出力されるデータに基づいて複数の視差画像を生成する。以下、撮像系101aから取得される1対の視差画像を視差画像対A、撮像系101bから取得される1対の視差画像を視差画像対Bという。
ステップS102では、画像処理部103は、視差画像対Aおよび視差画像対B上での重畳領域R1および非重畳領域R2,R3の座標情報を記憶部104から読み出す。
ステップS103では、画像処理部103は、重畳領域R1において視差画像対Aの合成画像および視差画像対Bの合成画像の対応する被写体領域を抽出する。画像処理部103は、視差画像対Aのうち1枚の視差画像および視差画像対Bのうち1枚の視差画像の対応する被写体領域を抽出してもよい。また、画像処理部103は、非重畳領域R2では視差画像対Aの対応する被写体領域を抽出し、非重畳領域R3では視差画像対Bの対応する被写体領域を抽出する。本実施例では、対応する被写体領域を抽出する方法として、ブロックマッチング処理を用いているが、これに限定されない。
ステップS104では、まず、画像処理部103は、重畳領域R1、非重畳領域R2,R3において、ステップS103で抽出された対応する被写体領域の2枚の画像上での位置の差(視差量)に基づき被写体距離を算出する。次に、画像処理部103は、重畳領域R1、非重畳領域R2,R3上で算出された被写体距離を統合することで、撮像モジュール100の画角分の被写体距離を算出する。
ステップS105では、画像処理部103は、ステップS104で算出された被写体距離を画像とともに記憶部104に記録する。画像処理部103は、被写体距離を表示部(不図示)に出力してもよいし、被写体距離を用いて物体検出を行ってもよい。
本実施例では、撮像系101a,101bは、図5(a)に示されるように、Z方向へ瞳分割を行う撮像系であるが、Y方向へ瞳分割を行う撮像系であってもよい。この場合、それぞれの撮像系からY方向へ視差を持つ1対の視差画像が取得される。そのため、画像処理部103は、重畳領域R1ではZ方向の視差を用いたステレオ測距を行うことができ、非重畳領域R2,R3ではY方向の視差を用いた瞳分割測距を行うことができる。これにより、Z方向の視差が得難い被写体、例えばZ方向へ伸びる棒状の被写体等に対する測距精度を高めることができる。
また、撮像系101a,101bは、図5(c)に示されるように、Y,Z両方向へ瞳分割を行う撮像系であってもよい。この場合、撮像モジュール100の全画角において、Y,Z両方向の視差を用いた被写体依存性の少ない測距を行うことができる。
重畳領域R1では、厳密には2つの撮像系の画角が重畳しない領域が存在する。例えば、図9(c)に示されるように、撮像モジュール100の極近傍領域では、各撮像系の画角が重畳していない。そのため、重畳領域R1において画角が重畳しない領域では、2つの撮像系のうち、その領域に画角をもつ撮像系を用いて瞳分割測距を行う。
以上説明したように、本実施例では、瞳分割を行う2つの撮像系がそれぞれの光軸が互いに傾くように配置されることで、画角が重畳する領域ではステレオ測距を行うことができ、重畳しない領域では瞳分割測距を行うことができる。そのため、広い画角領域で測距を行うことが可能であるとともに、重畳領域では特に高精度に測距を行うことが可能な撮像装置を提供することができる。
本実施例では、実施例1で説明した撮像装置の変形例について説明する。本実施例の撮像装置では、複数の撮像装置の画角が重畳する領域において、撮像系内の光学系の収差に関する光学情報により選択される視差画像を用いて測距を行う。
本実施例の撮像装置の基本構成は実施例1と同様であるため、その説明を省略する。本実施例では、記憶部104は、重畳領域R1において測距に用いる画像に関する情報である画像選択情報を記憶している。本実施例では、実施例1と同様に、視差画像対Aは撮像系101aから取得され、視差画像対Bは撮像系101bから取得される。以下の説明において、視差画像対Aを成す2枚の視差画像をそれぞれ視差画像Aa,Ab、視差画像対Bを成す2枚の視差画像をそれぞれ視差画像Ba,Bbとする。
本実施例の撮像装置は、重畳領域R1において、視差画像Aa,Abのうちの1枚の視差画像と、視差画像Ba,Bbのうちの1枚の視差画像を用いてステレオ測距を行う。画像処理部103は、重畳領域R1を複数の領域に分割した場合、分割領域ごとに視差画像Aa,Abのうちの1枚の視差画像と、視差画像Ba,Bbのうちの1枚の視差画像を画像選択情報に基づいて選択する。
瞳分割を行う撮像系から取得される複数の視差画像はそれぞれ、異なる収差の影響を受ける。また、収差の影響は、視差画像上の各領域によっても異なる。具体的には、複数の視差画像は、撮像系による劣化のない理想的な被写体像に対し、視差画像ごと、さらに画像上の領域ごとに異なるPSF(Point Spread Function)が畳み込まれて形成される。より広がったPSFの影響を受けた被写体は、撮像光学系による劣化が大きい画像として記録される。劣化が大きくなると、測距のための対応点抽出の精度が低減する。そのため、測距に用いる画像としては、より広がりの小さいPSFの影響を受けた画像が好ましい。本実施例では、重畳領域R1上の分割領域ごとに、視差画像Aa,AbのうちPSFの広がりが小さい1枚の視差画像と、視差画像Ba,BbのうちPSFの広がりが小さい1枚の視差画像が画像選択情報に基づいて選択される。PSFの広がりは、例えば、PSFの重心を中心として、全光量の50%を含む円の半径で評価する。すなわち、複数の視差画像のうち、PSFの広がりが小さい視差画像とは、分割領域上においてPSFの半径が一番小さい視差画像を指す。重畳領域R1において、撮像光学系で発生する収差の影響が小さい2枚の視差画像を画像選択情報に基づき選択し、選択された2枚の視差画像を用いて測距を行うことで高精度に測距を行うことができる。発生する収差の影響は厳密には各分割領域内でも異なっているため、分割数が多ければ多いほど、より好ましい視差画像を用いてステレオ測距を行うことができるが、画像選択情報のデータ量が増大する。
本実施例では、測距に用いる2枚の視差画像は、PSFの半径に関する画像選択情報に基づいて選択されるが、発生する収差に関する情報に基づいて選択されればよく、例えば撮像光学系の横収差量に基づいて選択されてもよい。
次に、本実施例の撮像装置における被写体距離の算出手順について、図11のフローチャートを用いて説明する。
ステップS201およびステップS202は実施例1のステップS101およびステップS102と同様であるため、その説明を省略する。
ステップS203では、画像処理部103は、重畳領域R1が分割された複数の分割領域(本実施例では、10個×10個の領域)の各分割領域の測距に用いる2枚の視差画像を指定するための画像選択情報を記憶部104から読み出す。記憶部104は収差に関する情報を記憶し、画像処理部103は記憶部104から収差に関する情報を読み出し、読み出した収差に関する情報に基づいて画像選択情報を決定してもよい。
ステップS204では、画像処理部103は、重畳領域R1では、各分割領域において視差画像対Aおよび視差画像対Bの4枚のうち2枚の視差画像を画像選択情報に基づいて選択し、選択した2枚の視差画像の対応する被写体領域を抽出する。また、画像処理部103は、非重畳領域R2では視差画像対Aの対応する被写体領域を抽出し、非重畳領域R3では視差画像対Bの対応する被写体領域を抽出する。本実施例では、対応する被写体領域を抽出する方法として、ブロックマッチング処理を用いているが、これに限定されない。
ステップS205およびステップS206は実施例1のステップS104およびステップS105と同様であるため、その説明を省略する。
以上説明したように、本実施例では、瞳分割を行う複数の撮像系の画角が重畳する領域において、ステレオ測距に使用する視差画像を撮像系内の光学系の収差に関する情報に基づいて決定する。そのため、画角が重畳する領域において、撮像光学系の収差の影響を低減させた高精度な測距を行うことが可能な撮像装置を提供することができる。
なお、重畳領域の全体または分割領域の一部において、画角が互いに重複する複数の撮像系のうちいずれか一方の撮像系の収差が大きい場合、他方の撮像系から取得される視差画像対のみを用いて瞳分割測距を行うようにしてもよい。
本実施例では、瞳分割を行う撮像系を4つ有し、それらを用いて全周にわたって被写体距離を算出可能な撮像装置について説明する。
図12は、本実施例の撮像装置の基本構成を示すブロック図である。図13は、撮像モジュール200における撮像系201a〜201dの配置図である。A/Dコンバータ202、画像処理部203、記憶部204、撮像光学系制御部205およびシステムコントローラ206は実施例1と同様であるため、それらの説明を省略する。撮像モジュール200は、それぞれが瞳分割を行う撮像系201a、撮像系201b、撮像系201cおよび撮像系201dを備える。4つの撮像系は、図12には簡単のためそれぞれの光軸が互いに平行として示されているが、本実施例では図13に示されるようにそれぞれの光軸が互いに角度を持つ状態で配置されている。4つの撮像系は、図5(a)に示される撮像系であり、それぞれが瞳分割を行うことで図5(a)のZ方向へ視差を持つ2枚(1対)の視差画像を生成するための出力データを出力する。
図14は、各撮像系および撮像モジュール200の画角の模式図である。図14(a)は、撮像系201aおよび撮像系201cの画角を破線で示す図である。図14(b)は、撮像系201bおよび撮像系201dの画角を点線で示す図である。図14(c)は、4つの撮像系の画角を重ねた図である。各撮像系は、図13に示されるように、X−Z平面上において互いの光軸が角度を持つように配置されている。そのため、撮像モジュール200は、図14(c)に示されるように、全周にわたる画角を持っている。隣り合う2つの撮像系の間隔は、2つの撮像系でステレオ測距を行う際の基線長に相当する。この間隔は、任意の値を設定でき、本実施例では100mmに設定する。撮像系同士が隣り合うとは、2つの撮像系が図13のX方向またはZ方向に隣接することを意味している。例えば、撮像系201aと撮像系201bおよび撮像系201dは隣り合っており、撮像系201aおよび201cは隣り合っていない。図14(c)において、領域R21は隣り合う撮像系の画角が重畳する重畳領域であり、領域R22は画角が重畳しない非重畳領域である。
画像処理部203は、重畳領域R21では、重畳する画角を持つ隣り合う2つの撮像系から取得される画像を用いてステレオ測距を行う。このとき、各撮像系から取得される1対の視差画像の合成画像同士を用いてステレオ測距を行ってもよいし、1対の視差画像のうち1枚の視差画像同士でステレオ測距を行ってもよい。また、画像処理部203は、非重畳領域R22では、各撮像系から取得される1対の視差画像を用いて瞳分割測距を行う。
以上説明したように、本実施例では、瞳分割を行う4つの撮像系がそれぞれの光軸が互いに傾くように配置されることで、全周画角のうち重畳領域ではステレオ測距を行うことができ、非重畳領域では瞳分割測距を行うことができる。そのため、全周にわたって測距を行うことが可能であるとともに、重畳領域では特に高精度に測距を行うことが可能な撮像装置を提供することができる。
本実施例では、実施例3で説明した撮像装置の変形例について説明する。実施例3の撮像装置では撮像系は全てX−Z平面上に配置されていたが、本実施例の撮像装置では撮像系は立体的に配置されている。本実施例の撮像装置の基本構成は実施例3と同様であるため、その説明を省略する。
図15は、撮像モジュール200における撮像系201a〜201dの配置図である。図15(a)はX軸上で正の方向へ撮像モジュール200を見た図である。図15(b)は、Y軸上で正の方向へ撮像モジュール200を見た図であり、撮像系201bと重なっている撮像系201aおよび撮像系201cと重なっている撮像系201dを省略している。図15(c)は、Z軸上で正の方向へ撮像モジュール200を見た図であり、撮像系201dと重なっている撮像系201aおよび撮像系201cと重なっている撮像系201bを省略している。撮像モジュール200では、隣り合う撮像系がX−Z平面上およびX−Y平面上において互いの光軸が角度を持つように配置されている。
図16(a)は、Z軸上で正の方向へ撮像モジュール200を見た図であり、破線が撮像系201aおよび撮像系201dの画角を、点線が撮像系201bおよび撮像系201cの画角を表している。図16(b)は、Y軸上で正の方向へ撮像モジュール200を見た図であり、破線が撮像系201cおよび撮像系201dの画角を、点線が撮像系201aおよび撮像系201dの画角を表している。
本実施例の測距方法の概要について、撮像系201aを基準にした場合の測距を例にして説明する。X−Y平面上において、画像処理部203は、撮像系201a,201bの画角が重畳する重畳領域R31では、撮像系201a,201bから取得される画像を用いてステレオ測距を行う。また、画像処理部203は、撮像系201a,201bの画角が重畳しない非重畳領域R32では、撮像系201a,201bのいずれか一方から取得される1対の視差画像を用いて瞳分割測距を行う。また、X−Z平面上において、画像処理部203は、撮像系201a,201dの画角が重畳する重畳領域R31では、撮像系201a,201dから取得される画像を用いてステレオ測距を行う。また、画像処理部203は、撮像系201a,201dの画角が重畳しない非重畳領域R32では、撮像系201a,201dのいずれか一方から取得される1対の視差画像を用いて瞳分割測距を行う。撮像系201a,201cを用いて測距を行う際も同様である。また、他の撮像系を基準にした場合の測距も同様である。そのとき、全ての測距を実施してもよいし、選択された測距だけを実施してもよい。
以上説明したように、本実施例では、瞳分割を行う4つの撮像系がそれぞれの光軸が互いに傾くように配置されることで、画角が重畳する領域ではステレオ測距を行うことができ、重畳しない領域では瞳分割測距を行うことができる。そのため、広い画角領域で測距を行うことが可能であるとともに、重畳領域では特に高精度に測距を行うことが可能な撮像装置を提供することができる。さらに、撮像系が立体的に配置されていることにより、Y方向、Z方向およびY−Z平面上の斜め方向の視差を用いた測距を行うことができるため、被写体依存性の少ない測距を行うことができる。
また、重畳領域の全体または分割領域の一部において、画角が互いに重複する複数の撮像系のうちいずれか一方の撮像系の収差が大きい場合、他方の撮像系から取得される視差画像対のみを用いて瞳分割測距を行うようにしても良い。
なお、実施例1から実施例4における複数の撮像系は、全てが瞳分割を行う撮像系でなくてもよい。言い換えれば、撮像モジュールは瞳分割を行わない撮像系を備えていてもよい。この場合には、画角が重畳する領域ではステレオ測距を行い、瞳分割を行わない撮像系のみが画角を持つ領域では測距を行わない。
本実施例では、2つの瞳分割を行う撮像系および1つの瞳分割を行わない撮像系を備え、それらを用いて被写体距離を算出可能な撮像装置について説明する。
図17は、本実施例の撮像装置の基本構成を示すブロック図である。A/Dコンバータ302、画像処理部303、記憶部304、撮像光学系305およびシステムコントローラ306は実施例1と同様であるため、それらの説明を省略する。
本実施例における撮像モジュール300は、それぞれが瞳分割を行う撮像系301a,301bと、瞳分割を行わない撮像系301cを備える。3つの撮像系は、図17には簡単のためそれぞれの光軸が互いに平行として示されているが、本実施例では図18(c)に示されるようにそれぞれの光軸が互いに角度を持つ状態で配置されている。撮像系301a,301bは、図5(a)に示される撮像系であり、それぞれが瞳分割を行うことで、図5(a)のZ方向へ視差を持つ1対の視差画像を生成可能である。撮像系301cは、瞳分割を行わない撮像系である。
図18は、撮像モジュール300の説明図である。図18(a)は、撮像系301aおよび撮像系301bの画角をそれぞれ破線および点線で示す図である。図18(b)は、撮像系301cの画角を一点鎖線で示す図である。図18(c)は、3つの撮像系の配置図である。各撮像系は、X−Z平面上において、互いの光軸が角度を持つように配置されている。図18(d)は、3つの撮像系の画角を重ねた図である。撮像モジュール300の画角は、図18(d)に示されるように、3つの撮像系の画角を統合した画角である。撮像モジュール300の画角には、撮像系301a,301cの画角が重畳する重畳領域R41と撮像系301b,撮像系301cの画角が重畳する重畳領域R42、および画角が重畳しない非重畳領域R43が存在する。
撮像系301a,301bが備える撮像素子は、それぞれの画角が重畳しない領域でのみ瞳分割を行う撮像素子でもよい。具体的には、撮像系301aが備える撮像素子は、重畳領域R41に相当する画素領域では、画素ごとに1つのマイクロレンズを備え、瞳分割を行わない。また、非重畳領域R43に相当する画素領域では、画素群ごとに1つのマイクロレンズを備え、瞳分割を行う。撮像系301bが備える撮像素子についても同様である。
画像処理部303は、重畳領域R41では、撮像系301a,301cから取得される画像を用いてステレオ測距を行う。このとき、撮像系301aから取得される1対の視差画像の合成画像と撮像系301cから取得される画像を用いて測距を行ってもよいし、1対の視差画像のうち1枚の視差画像と撮像系301cから取得される画像を用いて測距を行なってもよい。また、撮像系301aが備える撮像素子が非重畳領域R43でのみ瞳分割を行う場合、撮像系301a,301cから取得される画像を用いてステレオ測距を行う。
また、画像処理部303は、重畳領域R42では、撮像系301b,301cから取得される画像を用いてステレオ測距を行う。このとき、撮像系301bから取得される1対の視差画像の合成画像と撮像系301cから取得される画像を用いて測距を行ってもよいし、1対の視差画像のうち1枚の視差画像および撮像系301cから取得される画像を用いて測距を行なってもよい。また、撮像系301bが備える撮像素子が非重畳領域R43でのみ瞳分割を行う場合、撮像系301b,301cから取得される画像を用いてステレオ測距を行う。
また、画像処理部203は、非重畳領域R43では、撮像系301a,301bのいずれか一方から取得される1対の視差画像を用いて瞳分割測距を行う。
以上説明したように、本実施例では、瞳分割を行う2つの撮像系および瞳分割を行わない1つの撮像系がそれぞれの光軸が互いに傾くように配置されることで、重畳領域ではステレオ測距を行うことができ、非重畳領域では瞳分割測距を行うことができる。そのため、広い画角領域で測距を行うことが可能であるとともに、重畳領域では特に高精度に測距を行うことが可能な撮像装置を提供することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。