以下、本発明の実施例について図面を参照しながら説明する。
まず、具体的な実施例の説明に先立って、各実施例に共通する事項について説明する。各実施例の撮像装置は、変倍可能な主光学系により形成された被写体像を主撮像領域(主撮像素子)で撮像する主撮像系と、副光学系により形成された被写体像を副撮像領域(副撮像素子)で撮像する副撮像系とを有する。主撮像系と副撮像系はそれぞれ主画像と副画像を生成する。主光学系と副光学系とは互いに視点位置が異なるので、主画像および副画像は互いに視差を有する視差画像となる。各実施例の撮像装置は、これら視差画像を用いて主撮像系の撮像画角内での被写体距離情報を取得する。そして、各実施例の撮像装置は、小型でありながらも、主光学系(主撮像系)の変倍によって副撮像系により得られる副画像の解像度(以下、単に副画像の解像度ともいう)の相対的な劣化を低減する。
視差画像を用いた被写体距離算出の原理について説明する。被写体距離情報は、それぞれ視点位置が異なる主撮像系と第1および第2の撮像系により生成された視差画像を用いて得られる。視差画像を用いた被写体距離の算出の原理について、図15を用いて説明する。図15には、2視点撮像方式のモデルを示している。座標は、左右のカメラL_camera,R_cameraの中心を原点とし、水平方向をx軸で表し、奥行き方向をy軸で表す。高さ方向については記載を省略している。
ここでは、左右のカメラL_camera,R_cameraの結像光学系の主点をそれぞれ、(−Wc,0)と(Wc,0)とし、各カメラの結像光学系の焦点距離をfとする。y軸上の座標(0,y1)に位置する被写体Aを左右のカメラL_camera,R_cameraで撮像する。このとき、左右カメラL_camera,R_cameraのイメージセンサ(撮像素子)のそれぞれの中心から被写体Aの光学像(被写体像)のずれ量(視差ともいう)Plc,Prcは、以下の式(a),(b)で表すことができる。
つまり、同一の被写体を異なる視点位置から撮像することで、視点ずれ方向(基線方向)に上記式(a),(b)で示すずれ量(視差量)Plc,Prcを有する左右の視差画像を取得することができる。これらのずれ量Plc,Prcから被写体Aまでの距離y1は、以下の式(c)により算出することができる。
このように視差画像を用いて被写体距離を算出するためには、視差画像間で対応する被写体領域を特定する必要がある。2つの画像間での同一被写体領域の特定方法としては、後述するブロックマッチング法等の対応点抽出手法を用いることができる。
次に、主撮像系の変倍による副撮像系の解像度の劣化について説明する。ここでは、例として、前述した図15に示した撮像装置C1を主撮像系とし、撮像装置C2を副撮像系とする。撮像装置C1,C2は互いに同じ光学系および撮像素子を用いているものとする。
この例では、主および副撮像系により生成される視差画像はともに同じ解像度を有する。このため、これら視差画像から取得することができる被写体の解像度、つまりは被写体距離情報の精度は、主および副撮像系の焦点距離、基線長(主および副撮像系の光軸間距離)および撮像素子の画素ピッチで決まる。ここから主撮像系の結像倍率のみを大きくすると、主撮像系の撮像画角は狭くなるが、得られる主画像における被写体の解像度は向上する。このとき、撮像画角が一定のままである副撮像系から得られる副画像と主画像とから被写体距離情報を取得するためには、副画像の一部をトリミングして拡大して用いることになる。この拡大によって副画像の解像度は相対的に主画像の解像度よりも低くなり、この結果、得られる被写体距離情報の空間解像度が主画像の解像度と比較して劣化する。この被写体距離情報の空間解像度の劣化によって、式(c)におけるPrcの精度が低下し、結果的に、被写体距離情報の精度が低下する。このように、副画像の解像度が主画像の解像度を下回る場合に、副撮像系の主撮像系に対する相対的な解像度と被写体距離情報の精度とは比例関係にある。
ここで、結像倍率とは、任意の有限距離に位置する被写体を光学系を通して撮像した際の該光学系のメリジオナル方向の結像倍率を意味する。以下の説明でも、特に断りがない限り、結像倍率はメリジオナル方向の結像倍率を意味する。
各実施例では、主撮像系と副撮像系の射影方式(言い換えれば、主光学系100の結像倍率に対する副光学系の結像倍率の比率)を適切に設定する。これにより、主撮像系の変倍による副撮像系の解像度の相対的な劣化、つまりは被写体距離情報の解像度および精度の低下を抑制する。
射影方式は、光学系に入射する光線の画角とその光線の像面上での結像位置との関係を規定する。例として、互いに異なる2つの射影方式のモデル図を図1(A),(B)に示す。図1(A)は中心射影方式を、図1(B)は正射影方式を示す。各図中の同心円は、ある画角の光線が像面上で結像する位置を示す。
これらの図から分かるように、それぞれの射影方式で画角と像面上の位置との対応関係が異なる。これは各光学系において、画角(像高)ごとの結像倍率が異なることを示す。各実施例は、以下のように、主撮像系と副撮像系とで結像倍率の画角特性(像高特性)を適切に設定する。
各実施例の撮像装置において、主光学系の画角が副光学系の画角に相当する画角に設定された状態を特定変倍状態という。そして、この特定変倍状態において、主光学系の結像倍率のうち、該主光学系の中心画角での結像倍率に対する中心画角と周辺画角との間の所定の中間画角での結像倍率の比率を第1の結像倍率比とする。また、副光学系の結像倍率のうち、該副光学系の中心画角での結像倍率に対する所定の中間画角での結像倍率の比率を第2の結像倍率比とする。このとき、第2の結像倍率比を第1の結像倍率比よりも小さくする。
言い換えれば、上記特定変倍状態において、副光学系の半画角とこれに相当する主光学系の半画角のそれぞれをθmaxとし、半画角θでの主光学系の結像倍率をβm(θ)とするとともに副光学系の結像倍率をβs(θ)とする。中心画角を0とし、上記所定の中間画角をθmax/2とする。このとき、第1の結像倍率比であるβm(θmax/2)/βm(0)と第2の結像倍率比であるβs(θmax/2)/βs(0)とが、以下の式(1)の条件を満足する。
βs(θmax/2)/βs(0)<βm(θmax/2)/βm(0) (1)
ここで、半画角θは、各光学系に入射する主光線がその光学系の光軸となす角度である。また、半画角θmaxは、ある変倍状態において撮像できる半画角θの最大値である。また、「相当する画角」とは、同じ画角または同じとみなせる程度の差(例えば、5度や10度)のみを有する画角を意味する。さらに、副光学系の画角と同じ画角が主光学系の変倍範囲内にない場合や、主光学系の変倍が段階的な画角の選択により行われる場合には、副光学系の画角に最も近い画角を意味する。なお、主光学系の半画角が副光学系の半画角に相当し、主光学系および副光学系の半画角のうち一方の半画角が他方の半画角より小さい場合は、上記一方の半画角をθmaxとすればよい。
式(1)の条件は、主光学系および副光学系の射影方式に関する条件であり、主光学系と副光学系における中間像高(中間画角)での結像倍率の光軸上(中心画角)での結像倍率に対する比が、主光学系よりも副光学系の方が小さくなることを示す。
なお、θmax/2は中間画角を示す典型的な例であり、他の中間画角θmax/n(例えばn=1.5や2.5)において式(1)と同様な条件を満足するようにしてもよい。
一般に、主光学系の結像倍率は用途によって要求される値で決まる。主光学系に式(1)の条件を満足する副光学系を組み合わせることで、主撮像系(主光学系)の変倍が行われたときの副撮像系の解像度の相対的劣化(被写体距離情報の精度低下)が少ない撮像装置を実現することができる。また、この構成によれば、ある変倍比を持つ主光学系に対して、従来よりも少ない数の副光学系を設ければ済む。従来と同数の副光学系を設ける場合には、主光学系のより大きな変倍比に対応することができる。これにより、小型の撮像装置でありながらも、従来より高解像度かつ高精度の被写体距離情報を取得することができる。これは、副光学系が固定焦点距離(単焦点)の光学系であっても変倍可能な光学系であっても成り立つ。ただし、副光学系が単焦点光学系であると、該副光学系の変倍機構を設けずに済むので、撮像装置のより小型化が可能となる。
また、上記特定変倍状態において、中心画角0からθmaxまでの任意の半画角θ1およびθ2がθ1<θ2であるとき、
βs(θ2)/βm(θ2)≦βs(θ1)/βm(θ1) (2)
なる条件を満足することが好ましい。
この式(2)の条件は、主光学系および副光学系の射影方式に関する条件であり、像高が高いほど主光学系の結像倍率に対する副光学系の結像倍率の比率が小さくなることを示している。この条件を満足することで、主撮像系(主光学系)の変倍による副撮像系の解像度の相対的な劣化を抑制することができ、より高解像度かつ高精度の被写体距離情報を取得することができる。
また、上記特定変倍状態において、副光学系の半画角をθsmaxとするとき、
0.1≦(βs(0)−βs(θsmax))/βs(0) (3)
なる条件を満足することが好ましい。
この式(3)の条件は、副光学系の射影方式に関する条件であり、光軸上よりも高い像高において副光学系の結像倍率が小さくなることを示している。式(3)の値がその下限値を下回ると、光軸上での副光学系の結像倍率が小さすぎて、主光学系の変倍が行われることで副光学系の解像度が相対的に低下するので、好ましくない。
式(3)の下限値を以下のように設定すると、より好ましい。
0.2≦(βs(0)−βs(θsmax))/βs(0) (3a)
式(3)の下限値を以下のように設定すると、さらに好ましい。
0.3≦(βs(0)−βs(θsmax))/βs(0) (3b)
また、上記特定変倍状態において、
0.1≦βm(θmax)/βm(0)−βs(θmax)/βs(0) (4)
なる条件を満足することが好ましい。
この式(4)の条件は、主光学系と副光学系の射影方式に関するものであり、副光学系の歪曲量を主光学系の歪曲量との差分で表したときにその差分に関する条件である。式(4)の値がその下限値を下回ると、副光学系の負の歪曲が小さすぎて、主光学系の変倍が行われることで副光学系の解像度が相対的に低下するので、好ましくない。
式(4)の下限値を以下のように設定すると、より好ましい。
0.2≦βm(θmax)/βm(0)−βs(θmax)/βs(0) (4a)
式(4)の下限値を以下のように設定すると、さらに好ましい。
0.3≦βm(θmax)/βm(0)−βs(θmax)/βs(0) (4b)
また、副撮像系は1つのみ設けてもよいし、複数設けてもよい。そして、少なくとも1つの副撮像系(副光学系)は主撮像系(主光学系)の広角端の画角と同じ画角またはこれよりも広い画角を有することが好ましい。これにより、主撮像系の変倍によって得られる画角の全域において被写体距離情報を取得できない画角域(変倍域)の発生を回避することができる。
また、少なくとも1つの副撮像系(副光学系)は主撮像系の広角端での画角より狭く、望遠端での画角と同じ画角またはこれよりも広い画角を有することが好ましい。これにより、主撮像系の広角端側から望遠端側への変倍が行われた際に、被写体距離情報をより高解像度かつ高精度に取得することができる。
また、特定変倍状態において、主光学系の半画角をθmmaxとするとき、
|(βm(0)−βm(θmmax))/βm(0)|≦0.1 (5)
なる条件を満足することが好ましい。
この式(5)の条件は、主光学系の歪曲量に関する条件である。式(5)の値がその上限値を上回ると、高像高において被写体の高解像度の画像を得ることができないので、好ましくない。
さらに、副撮像系を複数有する場合において、該複数の副撮像系のうち第iの副撮像系に含まれる副光学系の半画角θでの結像倍率をβsi(θ)とし、主光学系の変倍により得られるβm(θ)の最大値をβmmax(θ)とする。また、主撮像系および第iの副撮像系における撮像領域での最大像高をそれぞれ、Ym,Ysiとし、max(x)を該複数の副撮像系に対する最大のxとする。このとき、
θ<max(θmax)に対して、
0.3≦max(βsi(θ)/Ysi)/(βmmax(θ)/Ym) (6)
この式(6)の条件は、副光学系と主光学系の結像倍率比に関する条件である。式(6)の値がその下限値を下回ると、主光学系に対する副光学系の相対的な解像度が低くなりすぎて、取得できる被写体距離情報の精度が低下するので好ましくない。主光学系が高変倍比を有する場合は、式(6)の条件を満足するように複数の副光学系を有する構成とすることが好ましい。
式(6)の下限値を以下のように設定すると、より好ましい。
0.4≦max(βsi(θ)/Ysi)/(βmmax(θ/Ym)) (6a)
以下、具体的な実施例について説明する。
図2には、本発明の実施例1である撮像装置1を被写体側から見て示している。主光学系100は、35mm換算で20mm〜180mmの焦点距離を有する中心射影方式の変倍可能な結像光学系である。なお、以下の説明では、特に断りがないかぎり、焦点距離は全て35mm換算値を記載する。中心射影方式とは、半画角θの光線とその光線が結像する像高yとが、
y=f・tanθ
の関係を有する射影方式である。前述したように、半画角θは、光学系に入射する主光線がその光学系の光軸となす角度である。また、像高yは、撮像素子200の撮像領域上での中心(光軸との交点)から結像位置までの距離である。
撮像素子(以下、主撮像素子という)200は、主光学系100に対応する矩形の撮像領域(光電変換領域)を有するCCDセンサやCMOSセンサ等の光電変換素子であり、主光学系100により形成された被写体像を撮像(光電変換)する。
第1の副光学系110および第2の副光学系120は、主光学系100を挟んだ水平方向(主撮像素子200の長辺が延びる方向)の両側に配置されている。これら第1の副光学系110および第2の副光学系120はそれぞれ、不図示の副撮像素子とともに第1の副撮像系および第2の副撮像系を構成する。第1および第2の副光学系110,120は、後述する互いに異なる固定焦点距離の結像光学系(単焦点光学系)である。第1および第2の副撮像系に含まれる副撮像素子はそれぞれ、第1および第2の副光学系110,120に対応する矩形の撮像領域を有し、第1および第2の副光学系110,120により形成された被写体像を撮像(光電変換)する。
主光学系100、第1および第2の副光学系110,120は、それらの光軸が互いに平行になるように配置されている。第1の副光学系110は、主光学系100の広角端(焦点距離20mm)での半画角に相当する47.2度の半画角を有する単焦点光学系である。本実施例では、第1の副光学系110は、
y=f・sinθ
で表される正射影方式の光学系である。
一方、第2の副光学系120は、主光学系100の広角端と望遠端との間の中間ズーム位置での焦点距離(つまりは広角端での画角より狭く、望遠端での画角以上の画角)を有する単焦点光学系である。第2の副光学系120は、主光学系100の焦点距離60mmでの半画角に相当する半画角である19.8度の半画角を有する。本実施例では、第2の副光学系120は、
y=f・sin(3.5×θ)/3.5
で表される射影方式の光学系である。また、本実施例では、主撮像素子200と各副撮像素子とが同じ大きさの撮像領域を有する。
図4(A),(B),(C)にはそれぞれ、主光学系100、第1および第2の副光学系110,120の撮像領域上での結像倍率を示している。横軸は半画角に対応する像高を示しており、縦軸は各光学系の半画角θでの結像倍率を中心画角0での結像倍率で規格化した値(βm(θ)/βm(0),βs(θ)/βs(0))を示している。
図4(A)には、主光学系100の結像倍率が像高によらず同じ(一定)であることを示している。主光学系100はその全変倍域で中心射影方式に従うため、結像倍率は変倍状態によらず同じである。
図4(B),(C)にはそれぞれ、第1および第2の副光学系110,120の結像倍率が像高によって変化することを示している。像高が高いほど結像倍率は低下する。
このような第1および第2の副光学系110,120を設けることで、撮像装置1を小型としつつ、主光学系100の変倍がなされたときの副撮像系により得られる副画像の解像度の相対的な劣化を抑制することができる。この結果、高解像度かつ精度良く被写体距離情報を取得することができる。その原理について以下に説明する。
まず、主撮像系(主光学系100)と副撮像系(副光学系110または120)とが同一の画角であり、かつ同一の射影方式である場合を考える。ここで、主撮像系の結像倍率のみを大きくすると、主撮像系と副撮像系において共通する被写体を撮像可能な画角範囲(以下、共通撮像画角範囲という)が狭くなる。そこで、主撮像系と副撮像系との視差を用いて被写体距離情報を取得するためには、副撮像系により得られる副画像の一部を切り出して(トリミングして)拡大することにより主撮像系により得られる主画像と対応させる必要がある。主撮像系の結像倍率がk倍になると、この主撮像系に対する副撮像系の結像倍率の比率は1/kとなり、副撮像系により得られる副画像の解像度が相対的に劣化する。これにより、被写体距離情報を精度良く取得することができなくなる。
そこで本実施例では、主光学系100が副光学系(110,120)に相当する画角に設定された特定変倍状態において、画角(像高)ごとの主光学系100の結像倍率に対する副光学系の結像倍率の比率を適切に設定している。具体的には、光軸上における主光学系100の結像倍率に対する副光学系の結像倍率の比率が、高画角(周辺画角)における主光学系100の結像倍率に対する副光学系の結像倍率の比率よりも大きくなるようにしている。さらに言えば、副光学系はその像面の中心部において、周辺部よりも被写体像の解像度が高くなるように結像倍率が設定されている。
このような構成によれば、主光学系100の望遠側への変倍が行われても、副撮像系により得られる副画像からトリミングされて拡大された被写体距離情報取得用の拡大画像の劣化度合いを低減させることができる。
このことを、図5(A),(B)を用いて説明する。図5(A)は、広角端に設定された主光学系100の結像倍率(βm(θ))に対する第1の副光学系110の結像倍率(βs(θ))の比率を示している。この図から分かるように、第1の副光学系110は像面の中心部で主光学系100よりも結像倍率が大きく、周辺部で主光学系100よりも結像倍率が小さい。
図5(B)は、広角端から望遠側への変倍により結像倍率が3倍にされた主光学系100の結像倍率に対する第1の副光学系110の結像倍率の比率を示している。仮に主光学系100と第1の副光学系110の射影方式が同じであれば、像高によらず上記結像倍率の比率は0.33(=1/3)となる。しかし、本実施例では、主光学系100と第1の副光学系110の射影方式をそれぞれ適切に設定することで、図5(B)に示すように、主光学系100の変倍が行われても上記結像倍率の比率は、中心部で0.5程度、周辺部で0.4程度までしか低下していない。つまり、第1の副撮像系の解像度の劣化が低減されている。
本実施例では、主光学系100の変倍比が9倍と大きいので、撮像装置1はさらに第2の副光学系120を有する。図6(A)には、焦点距離60mmに設定された主光学系100の結像倍率(βm(θ))に対する第2の副光学系120の結像倍率(βs(θ))の比率を示している。図6(B)は、望遠端(焦点距離180mm)に設定された主光学系100の結像倍率に対する第2の副光学系120の結像倍率の比率を示している。第1の副光学系110と同様に、第2の副光学系120においても、主光学系100の望遠側への変倍による像面上での主光学系100の結像倍率に対する結像倍率の比率の低下が抑えられている。このため、第2の副撮像系の解像度の劣化も低減されている。
本実施例では、図5(A)および図6(A)のそれぞれから分かるように、第1および第2副光学系110,120はともに式(1),(2)の条件を満足している。
本実施例では、主光学系100の結像倍率に対する第1および第2の副光学系110,120の結像倍率の比率が主光学系100の全変倍域で0.40以上となっている。仮に主光学系100と副光学系の射影方式を同じである場合に上記結像倍率の比率を全変倍域で0.40以上とするには、1つの副光学系で主光学系100の2.5(=1/0.4)倍の変倍比までしか対応できない。つまり、2つの副光学系を合わせても、6.25倍の変倍比までしか対応できない。
これに対して、本実施例では、第1および第1の副光学系110,120の像高に対する結像倍率の変化を主光学系100に対して適切に設定することで、これら第1および第1の副光学系110,120によって主光学系100の9倍の変倍比に対応している。
実際に被写体距離情報を取得する際には、第1および第2の副撮像系のうち最も解像度が高い副撮像系により得られた副画像を用いるとよい。本実施例では、主撮像系(主光学系100)の焦点距離が20mm〜60mmの範囲では第1の副撮像系からの副画像を用い、主撮像系の焦点距離が60mm〜180mmの範囲では第2の副撮像系からの副画像を用いるとよい。
図3には、本実施例の撮像装置1の電気的構成を示している。撮像装置1は、主撮像系と第1および第2の副撮像系を含む撮像系10と、A/D変換器11と、画像処理部12と、画像合成部(画像合成手段)13とを有する。また、撮像装置1は、情報入力部14と、撮像制御部15と、画像記録媒体16と、システムコントローラ17と、表示部18と、距離情報算出部(距離取得手段)19とを有する。
A/D変換器11は、主撮像素子および2つの副撮像素子から出力されるアナログ撮像信号をデジタル撮像信号に変換して画像処理部12に供給する。画像処理部12は、A/D変換器11からのデジタル撮像信号に対して画素補間処理、色変換処理およびデジタルズーム処理等を行って撮像画像(主画像および2つの副画像)を生成する。また、画像処理部12は、撮像画像を用いて各種演算処理を行い、それらの演算結果をシステムコントローラ17に送信する。
画像処理部12は、画像合成部13をさらに有する。画像合成部13は、基準視点となる主撮像系により取得された主画像を合成用の基準画像として設定し、該基準画像に対して2つの副撮像系により取得された副画像のうち少なくとも1つを合成する。画像の合成には、後述するブロックマッチング法等が用いられる。
情報入力部14は、ユーザが所望の撮像条件(絞り値や露出時間等)を選択して入力する情報を検知してシステムコントローラ17にそれらのデータを供給する。撮像制御部15は、システムコントローラ17からの命令に応じて、各光学系に含まれるフォーカスレンズを移動させたり、各光学系の絞り値を制御したり、各撮像系の撮像素子の露出時間を制御したりする。
画像記録媒体16は、画像処理部12により生成された撮像画像を格納したり、撮像画像を格納する画像ファイルを構成する場合のファイルヘッダを記録したりする。表示部18は、撮像時のプレビュー画像や記録済みの撮像画像を表示したり、それぞれ選択可能なメニュー項目、焦点距離範囲(画角範囲)等を表示したりする。表示部18は、液晶表示素子等により構成される。
距離情報算出部19は、基準画像選択部20と、対応点抽出部21と、視差量算出部22とを有する。基準画像選択部20は、主撮像系によって得られた主画像を距離情報算出用の基準画像として選択する。対応点抽出部21は、主画像および複数の副画像のうち一対の視差画像における互いに対応する画素(以下、対応点という)を抽出する。視差量算出部22は、対応点抽出部21により抽出された全ての対応点の視差量を算出する。距離情報算出部19は、算出された視差量から主画像(つまりは主撮像系の撮像画角内)の全域における被写体距離を算出(被写体距離情報を取得)する。
次に、システムコントローラ17、画像処理部12および距離情報算出部19が行う撮像/被写体距離算出処理について、図7のフローチャートを用いて説明する。ここでは、まず主撮像系と第1の副撮像系により得られる視差画像を用いる場合の処理について説明する。それぞれコンピュータにより構成されるシステムコントローラ17、画像処理部12および距離情報算出部19は、撮像/被写体距離算出処理をコンピュータプログラムである撮像/被写体距離算出処理プログラムに従って実行する。「S」はステップ(工程)の略である。
まず、システムコントローラ17は、S100において、情報入力部14からユーザにより入力された撮像条件等の情報を取得する。そして、ユーザによって操作された不図示の撮像開始スイッチから撮像指示信号が入力されると、撮像制御部15に撮像条件等の情報を転送する。撮像条件とは、主撮像系の撮像画角、絞り値およびシャッタースピード等である。撮像制御部15は、入力された撮像条件に基づいて、主撮像系の撮像画角(ズーム状態)や主撮像系および副撮像系の絞り値、シャッタースピード等を制御する。
次に、S101では、システムコントローラ17は、入力された撮像条件に応じて、第1および第2の副撮像系のうち撮像に使用する第1または第2の副撮像系を選択する。副撮像系の選択には、主撮像系において設定された撮像画角(以下、主撮像画角という)の情報を用いる。ここでは、主撮像系により得られる主画像の全体に対して画像合成を行うため、主撮像系の設定画角に対して同一またはより広い撮像画角(以下、副撮像画角という)を有する副撮像系を選択するものとする。
次に、S102では、システムコントローラ17は、撮像制御部15を介して、主撮像系とS101で選択した第1または第2の副撮像系による撮像(主および副撮像素子の露光)を行うとともに、画像処理部12に撮像画像を生成させる。これにより、1つの主画像と2つの副画像とが、互いに視差を有する視差画像として取得される。この際、主撮像系と副撮像系の焦点面は、被写体距離情報を精度良く取得するために、同一平面上にあることが好ましい。また、後に画像処理部12において主画像と副画像の画像合成を行う場合は、各画像の輝度レベルやホワイトバランスの補正を行って、合成画像における輝度むらや色むらを低減するようにしてもよい。
次に、S103では、システムコントローラ17は、画像処理部12に、選択した副撮像系により得られる副画像と主撮像系により得られる主画像とが同じ射影方式で得られる画像となるように画像変換を行わせる。例えば、選択された副撮像系により得られた副画像を主撮像系により中心射影方式で得られる画像に変換する。異なる射影方式間での画像変換は、変換対象画像の各画素を座標変換することで行える。この際、一般的な歪曲収差補正処理等と同様に適宜、補間処理を行う。
次に、S104では、システムコントローラ17は、主撮像画角が選択された副撮像系の副撮像画角と同一であるか否かを判定する。主撮像画角が副撮像画角と同一である場合はシステムコントローラ17はS106に移行し、異なる場合はS105に移行する。
S105では、システムコントローラ17は、画像処理部12に、副画像の一部の画像領域を主撮像画角に対応した画像となるようにトリミングして拡大処理する。このトリミングおよび拡大処理によって得られる拡大画像はもとの副画像に対して解像度は劣化するが、主撮像画角に相当する撮像画角に対応する画像となる。これにより、主画像と拡大画像上の被写体サイズを互いに同じにすることができる。この後、ステップS106に進む。
S106では、システムコントローラ17は、基準画像選択部20に主画像を被写体距離算出用の基準画像として選択させる。さらに、システムコントローラ17は、対応点抽出部21に、基準画像と副画像または拡大画像としての参照画像との間で対応点を抽出させる。対応点は、2つの視差画像である基準画像と参照画像がいずれも同じ被写体を含む場合に該2つの視差画像のそれぞれにおける該被写体の画像部分(以下、被写体領域という)の同じ箇所を構成する画素である。
対応点の抽出方法について説明する。図8の左側には主撮像系により得られた主画像である基準画像501を、右側には第1の副撮像系により得られた副画像(または拡大画像)である参照画像502を示している。ここでは、画像上の水平方向および垂直方向での位置を示す画像座標(X,Y)を用いる。画像座標(X,Y)は、図8に示す各画像の左上を原点として定義する。また、基準画像501における画像座標(X,Y)の輝度をF1(X,Y)とし、参照画像502における画像座標(X,Y)の輝度をF2(X,Y)とする。
基準画像501における任意の座標(X,Y)の画素(ハッチングして示す)に対応する参照画像502中の画素(ハッチングして示す)は、参照画像502のうち基準画像501中の輝度F1(X,Y)と最も類似した輝度を有する画素を探すことで求められる。ただし、任意の画素の輝度と最も類似する輝度を有する画素を単純に探すことは難しいため、画像座標(X,Y)の近傍の画素も用いたブロックマッチング法にて輝度が類似した画素を探索する。
例えば、ブロックサイズが3である場合のブロックマッチング処理について説明する。基準画像501中の任意の座標(X,Y)の画素と、その前後(X−1,Y),(X+1,Y)の2つの画素の計3つの画素の輝度値はそれぞれ、
F1(X,Y),F1(X−1,Y),F1(X+1,Y)
となる。
これに対し、座標(X,Y),(X−1,Y),(X+1,Y)からX方向にkだけずれた参照画像502中の画素の輝度値はそれぞれ、
F2(X+k,Y),F2(X+k−1,Y),F2(X+k+1,Y)
となる。
このとき、基準画像501中の座標(X,Y)の画素との類似度Eを以下の式(d)で定義する。
この式(d)において逐次kの値を変えて類似度Eの値を計算し、最も小さい類似度Eを与える(X+k,Y)が、参照画像502のうち基準画像501中の座標(X,Y)に対応する画素(対応点)である。ここでは、水平方向に視差を有する画像間での対応点抽出方法について説明したが、同様にして垂直方向や斜め方向に視差を有する場合の対応点を抽出することもできる。
なお、そのままではブロックマッチング法で対応できないほど視差が大きく基準画像と参照画像間で被写体領域の形状が大きく異なる場合は、参照画像に対してアフィン変換等の幾何変換を行った後に、ブロックマッチング法を用いて対応点抽出処理を行ってもよい。
次に、S107において、システムコントローラ17は、視差量算出部22に、S106で抽出された各対応点についての視差量を算出する。視差量は、上述したブロックマッチング法で得られた基準画像の各画素(基準画素)と該基準画素に対応する参照画像上の画素(対応画素)との画素位置の差分として算出される
次に、S108では、システムコントローラ17は、距離情報算出部19に、主画像に含まれる各被写体の被写体距離を算出させる。距離情報算出部19は、S107で算出された視差量と、既知の情報である主光学系100の焦点距離および主光学系100と第1の副光学系110との間の基線長の情報とから、各被写体までの距離を式(c)を用いて算出する。
次に、S109では、システムコントローラ17は、S108で算出された被写体距離の情報を、S102で取得した視差画像のデータとともに画像記録媒体16に記録して、本処理を終了する。
ここでは第1の副光学系110を用いた場合の被写体距離の算出について説明したが、同様の処理によって第2の副光学系120を用いても被写体距離を算出することが可能である。
また、本実施例では視差画像から被写体距離情報を取得する場合について説明したが、画像合成部13にて、主画像としての基準画像に対して副画像(または拡大画像)のうち基準画像に互いに対応する被写体領域を画素単位で合成して合成画像を生成してもよい。これにより、基準画像内のノイズレベルを低減させ、画質が向上した合成画像を得ることができる。視差画像を被写体距離情報の取得にのみ使用する場合は、画像合成部13での合成処理は行わずに視差画像を出力してもよい。
次に、本発明の実施例2である撮像装置について説明する。本実施例の撮像装置の基本的な構成は実施例1の撮像装置1と同じであるため、ここでの説明は省略する。本実施例の撮像装置は、実施例1の撮像装置1と主光学系、第1および第2の副光学系が異なる。ただし、本実施例においても、主光学系、第1および第2の副光学系には実施例1と同符号を付す。
主光学系100は、14mm〜126mmの焦点距離を有する中心射影方式の変倍可能な結像光学系である。
また、第1の副光学系110は、主光学系100の広角端(焦点距離14mm)での半画角に相当する57.1度の半画角を有する単焦点光学系である。本実施例では、第1の副光学系110は、
y=2f・sin(θ/2)
で表される等立体角射影方式の光学系である。
一方、第2の副光学系120は、主光学系100の広角端と望遠端との間の中間ズーム位置での焦点距離(広角端での画角より狭く、望遠端での画角以上の画角)を有する単焦点光学系である。第2の副光学系120は、主光学系100の焦点距離42mmでの半画角に相当する画角である27.3度の半画角を有する。本実施例では、第2の副光学系120は、
y=f・sin(2.5×θ)/2.5
で表される射影方式の光学系である。また、本実施例では、主撮像素子200と各副撮像素子とが同じ大きさの撮像領域を有する。
図9(A),(B),(C)にはそれぞれ、本実施例における主光学系100、第1および第2の副光学系110,120の撮像領域上での結像倍率を示している。横軸は半画角に対応する像高を示しており、縦軸は各光学系の半画角θでの結像倍率を中心画角0での結像倍率で規格化した値(βm(θ)/βm(0),βs(θ)/βs(0))を示している。
図9(A)には、主光学系100の結像倍率が像高によらず同じ(一定)であることを示している。実施例1と同様に、主光学系100はその全変倍域で中心射影方式に従うため、結像倍率は変倍状態によらず同じである。
図9(B),(C)にはそれぞれ、第1および第2の副光学系110,120の結像倍率が像高によって変化することを示している。像高が高いほど結像倍率は低下する。
このような第1および第2の副光学系110,120を設けることで、撮像装置を小型としつつ、主光学系100の変倍がなされたときの副撮像系により得られる副画像の解像度の相対的な劣化を抑制することができる。この結果、精度良く被写体距離情報を取得することができる。
図10(A)には、広角端に設定された主光学系100の結像倍率(βm(θ))に対する第1の副光学系110の結像倍率(βs(θ))の比率を示している。この図から分かるように、第1の副光学系110は像面の中心部で主光学系100よりも結像倍率が大きく、周辺部で主光学系100よりも結像倍率が小さい。
図10(B)は、広角端から望遠側への変倍により結像倍率が3倍にされた主光学系100の結像倍率に対する第1の副光学系110の結像倍率の比率を示している。実施例1でも説明したように、仮に主光学系100と第1の副光学系110の射影方式が同じであれば、像高によらず上記結像倍率の比率は0.33(=1/3)となる。しかし、本実施例では、主光学系100と第1の副光学系110の射影方式をそれぞれ適切に設定することで、図10(B)に示すように、主光学系100の変倍が行われても上記結像倍率の比率は0.4程度にまでしか低下していない。つまり、第1の副撮像系の解像度の劣化が低減されている。
図11(A)は、焦点距離42mmに設定された主光学系100の結像倍率に対する第2の副光学系120の結像倍率の比率を示している。図11(B)は、望遠端(焦点距離126mm)に設定された主光学系100の結像倍率に対する第2の副光学系120の結像倍率の比率を示している。第1の副光学系110と同様に、第2の副光学系120においても、主光学系100の望遠側への変倍による像面上での主光学系100の結像倍率に対する結像倍率の比率の低下が抑えられている。このため、第2の副撮像系の解像度の劣化も低減されている。
図10(A)および図11(A)のそれぞれから分かるように、本実施例における第1および第2副光学系110,120もともに式(1),(2)の条件を満足している。
また、本実施例でも、第1および第1の副光学系110,120の像高に対する結像倍率の変化を主光学系100に対して適切に設定している。これにより、図10(B)および図11(B)から分かるように、主光学系100の9倍の変倍比に対しても被写体距離情報を取得するために用いる副画像の解像度の劣化を低減している。本実施例でも、主光学系100の結像倍率に対する第1および第2の副光学系110,120の結像倍率の比率が主光学系100の全変倍域で0.40以上となっている。
実際に被写体距離情報を取得する際には、第1および第2の副撮像系のうち最も解像度が高い副撮像系により得られた副画像を用いるとよい。本実施例では、主撮像系(主光学系100)の焦点距離が14mm〜42mmの範囲では第1の副撮像系からの副画像を用い、主撮像系の焦点距離が42mm〜126mmの範囲では第2の副撮像系からの副画像を用いるとよい。
次に、本発明の実施例3である撮像装置について説明する。図12には、本実施例の撮像装置3を被写体側から見て示している。撮像装置3の基本的な構成は、実施例1,2と同じであるため、その説明は省略する。本実施例の撮像装置3は、副光学系が1つである点で実施例1,2と異なる。本実施例では、主光学系に符号100を付すとともに、副光学系に符号110を付す。
主光学系100は、26mm〜52mmの焦点距離を有する中心射影方式の変倍可能な結像光学系である。
また、副光学系110は、主光学系100の広角端(焦点距離26mm)での半画角に相当する39.8度の半画角を有する単焦点光学系である。本実施例では、第1の副光学系110は、
y=2f・tan(θ/2)
で表される立体射影方式の光学系である。また、本実施例では、主撮像素子200と、副光学系110とともに副撮像系を構成する副撮像素子とが同じ大きさの撮像領域を有する。
図13(A),(B)にはそれぞれ、本実施例における主光学系100および副光学系110の撮像領域上での結像倍率を示している。横軸は半画角に対応する像高を示しており、縦軸は各光学系の半画角θでの結像倍率を中心画角0での結像倍率で規格化した値(βm(θ)/βm(0),βs(θ)/βs(0))を示している。
図13(A)には、主光学系100の結像倍率が像高によらず同じ(一定)であることを示している。実施例1と同様に、主光学系100はその全変倍域で中心射影方式に従うため、結像倍率は変倍状態によらず同じである。
図13(B)には、副光学系110の結像倍率が像高によって変化することを示している。像高が高いほど結像倍率は低下する。
このような副光学系110を設けることで、撮像装置を小型としつつ、主光学系100の変倍がなされたときの副撮像系により得られる副画像の解像度の相対的な劣化を抑制することができる。この結果、精度良く被写体距離情報を取得することができる。
図14(A)には、広角端に設定された主光学系100の結像倍率(βm(θ))に対する副光学系110の結像倍率(βs(θ))の比率を示している。この図から分かるように、副光学系110は像面の中心部で主光学系100よりも結像倍率が大きく、周辺部で主光学系100よりも結像倍率が小さい。
図14(B)は、広角端から望遠側への変倍により結像倍率が2倍にされた主光学系100の結像倍率に対する副光学系110の結像倍率の比率を示している。実施例1でも説明したように、仮に主光学系100と第1の副光学系110の射影方式が同じであれば、像高によらず上記結像倍率の比率は0.5(=1/2)となる。この点、本実施例でも、周辺部では上記結像倍率の比率は0.5程度まで低下する。しかし、主光学系100と副光学系110との結像倍率の比率を図14(A)のように適切に設定することで、中心部の解像度の劣化度合いを低減している。
本実施例でも、図14(A)から分かるように、副光学系110は式(1),(2)の条件を満足している。
表1には、実施例1〜3の式(3)〜(6)の値をまとめて示している。
なお、各実施例では、主撮像系の撮像領域と副撮像系の撮像領域とが同じ大きさを有する場合について説明したが、これらを互いに異なる大きさとしてもよい。また、各実施例において、画角が一定となるように実焦点距離と撮像領域の大きさを定数倍しても同等の効果が得られる。
さらに、各実施例では。副光学系を全て単焦点光学系とした場合について説明したが、副光学系を変倍可能な光学系としてもよい。この場合、副光学系に関する式(1)〜(6)の条件は、副光学系の全変倍域の全てで満足してもよいし一部で満足してもよい。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。