以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
まず、図8を参照して、2つの撮像光学系を用いて被写体距離を取得する方法について説明する。図8は、被写体距離の算出方法の説明であり、互いに同一の構造を有する2つの撮像光学系CA、CBを用いて撮影シーンのうちの1点に存在する被写体Objを撮像する様子を示している。撮像素子SA、SBはそれぞれ、撮像光学系CA、CBにより形成された被写体像(光学像)を受光する。撮像光学系CA、CBのそれぞれの入射瞳中心は(−D/2,0)、(D/2,0)に存在し、被写体Objは(x、z)に存在する。撮像光学系CA、CBのそれぞれの焦点距離をf、撮像素子SA、SBのそれぞれにおける被写体Objの座標をa、bとすると、以下の式(1)が成立する。
式(1)において、b−aは、互いに異なる視点から同一の被写体を撮像した際の撮像面上での位置のずれ、すなわち視差である。視差b−a(視差量)を取得することができれば、視差b−a、撮像光学系CA、CBのそれぞれの焦点距離f、および、基線長Dを式(1)に代入することにより、被写体距離z(撮像光学系の入射瞳中心から被写体Objまでの距離)を算出することができる。
続いて、図9を参照して、2つの撮像光学系を用いて取得された2つの画像から視差量を取得するための対応被写体探索処理について説明する。図9は、対応被写体探索処理の説明図であり、互いに異なる視点から撮像された画像IMG1、IMG2を示している。画像座標(X,Y)は、図9中に示される画素群の中心を原点として定義し、水平方向をX軸、垂直方向をY軸とする。また、画像座標(X,Y)に位置する画像IMG1の画素値をF1(X,Y)とし、画像IMG2の画素値をF2(X,Y)として説明する。画像IMG1における任意の座標(X,Y)に対応する画像IMG2の画素は、座標(X,Y)における画像IMG1の画素値F1(X,Y)と最も類似する画像IMG2の画素値を探すことで求めることができる。なお、以降の説明において、画像上の対応点と対応画素とは同一の意味である。
ここで、図9に示される画像IMG1、IMG2上の縦線で示される画素P1、P2は、互いに同じ被写体からの光を記録した、対応画素(対応点)に相当する。ただし、一般的に任意の画素と最も類似する画素を探すことは難しいため、画像座標(X,Y)の近傍の画素も用い、ブロックマッチング法と呼ばれる手法で類似画素を探索することができる。
例えば、ブロックサイズが3である場合のブロックマッチング処理について説明する。画像IMG1の任意の座標(X,Y)の画素(注目画素)、および、その前後の座標(X−1、Y)、(X+1、Y)に位置する2つの画素の計3画素の画素値はそれぞれ、F1(X,Y)、F1(X−1,Y)、F1(X+1,Y)となる。これに対し、座標(X,Y)からX方向にkだけずれた画像IMG2の画素の画素値はそれぞれ、F2(X+k,Y),F2(X+k−1,Y),F2(X+k+1,Y)となる。このとき、画像IMG1の座標(X,Y)に位置する注目画素と、画像IMG2の座標(X+k,Y)に位置する画素との類似度Eは、以下の式(2)のように定義される。
式(2)において逐次kの値を変えて類似度Eを算出し、最も小さい類似度Eを与える座標(X+k、Y)が、画像IMG1の注目画素に対応する画像IMG2の画素の座標となる。ここでは、X方向にのみ逐次座標を変化させながら類似度Eを算出しているが、Y方向、または、X方向およびY方向の両方向にも逐次座標を変化させながら類似度Eを算出してもよい。このような対応被写体探索処理を行うことにより、2つの画像のそれぞれにおける対応点(対応画素)の座標を取得することができ、それらの相違量である視差量を算出することが可能である。
本実施形態では、ブロックサイズが3である場合のブロックマッチング処理について説明したが、前述の処理において、探索範囲およびブロックサイズは変更可能なパラメータである。視差量が事前にある程度予測される場合には、探索範囲をある領域に絞って処理を行うことで、処理負荷を大幅に低減して高速化を図ることができる。ブロックサイズについては、一般的に被写体の構造サイズに合わせて設定することにより、視差量の算出精度を向上させることができる。また、特に画像がボケている場合、そのボケ量を加味してブロックサイズを拡大することにより、視差量の算出誤差を低減することができる。また、類似度Eに対して直線フィッティングやパラボラフィッティングによってサブ画素レベルで視差量を算出する手法が知られている。これらのフィッティング関数は、画像の鮮鋭度に応じてサブ画素算出誤差が変化することが知られており、画像の鮮鋭度に応じて関数を選択することも可能である。
以上説明したように、2つの撮像光学系を用いて取得した2つの画像において対応被写体探索処理を行うことにより視差量を算出し、この視差量に基づいて被写体距離を算出することができる。また、撮像光学系に応じて視差量と像面移動量であるデフォーカス量との関係は決定される。このため、その視差量に基づいてデフォーカス量を算出することができる。そして、そのデフォーカス量に基づいてレンズの繰り出し量を求め、レンズを移動し合焦させることができる(位相差AF)。以降、本明細書中では、被写体距離、視差量、デフォーカス量、または、位相差情報を被写体距離に関する情報という意味で距離情報とも表現する。
対応被写体探索処理を行う際、用いる2枚の画像は合焦した鮮鋭な画像であることが好ましい。すなわち、2枚の画像それぞれを撮像する際には被写体が撮像光学系の被写界深度内に収まっていることが好ましい。これは、被写体がボケている場合、真の対応点とは異なる、誤った点が対応点として算出され、視差量に大きな誤差が生じるためである。その結果として、誤った被写体距離が算出されることがある。これは、後述する視差分解能が大きくなることで、被写体距離分解能が低下する式(3)によって説明することができる。
続いて、被写体距離の算出精度について説明する。被写体距離をs、2つの撮像光学系間の基線長をD、2つの撮像光学系のそれぞれの焦点距離をfとすると、被写体距離分解能Δzは、以下の式(3)で表すことができる。
式(3)において、rは視差分解能であり、前述の対応被写体探索処理によって取得される視差量は最大±rの誤差を含む。被写体距離分解能Δzは、被写体距離を算出する際の最大誤差量であり、距離sに位置する被写体の距離を取得した際、最大±Δzの誤差を含む被写体距離が算出されることを意味する。すなわち、被写体距離分解能Δzが小さいほど被写体距離の算出精度が高いと言える。具体的には、被写体距離sが小さい(被写体が近い)ほど、基線長Dが大きいほど、焦点距離fが大きいほど、または、視差分解能rが小さいほど、被写体距離の算出精度が高くなる。
各実施例の撮像装置(撮像システム)は、第1の撮像部(以下主撮像部)と第2の撮像部(副撮像部)とを有する。主撮像部は、1つの撮像光学系および1つの撮像素子を有し、画像を撮像する主たる撮像部である。副撮像部は、2つの撮像光学系を有し、これらの撮像光学系を用いて前述の被写体距離を取得する。撮像装置は、副撮像部を用いて取得した被写体距離情報に基づいて主撮像部を合焦させる。ここで、副撮像部が備える2つの撮像光学系はそれぞれ、フォーカス機構を有する。フォーカス機構により被写体に合焦した状態に制御された副撮像部を用いることにより、主撮像部の画角全域の距離情報を高精度に取得することができる。このため撮像装置は、主撮像部の画角内の任意の被写体の距離情報を高精度に取得し、主撮像部を高精度かつ高速に被写体に合焦させることができる。
主撮像部の撮像光学系の被写界深度よりも前述の被写体距離分解能Δzが小さければ、撮像装置は副撮像部により取得された被写体情報を用いて、主撮像部を精度よく合焦させることができる。ここまで、本発明の撮像装置が行う合焦方法の概要について説明した。以下、撮像装置(撮像システム)について、各実施例において詳述する。
まず、図1および図2を参照して、本発明の実施例1における撮像装置1(撮像システム)について説明する。図1は、撮像装置1の外観図であり、図1(a)は俯瞰図、図1(b)は正面図をそれぞれ示している。図2は、撮像装置1のブロック図である。
撮像装置1は、主として被写体の撮像に用いられる主撮像部100(第1の撮像部)と、被写体の距離を取得する副撮像部110(第2の撮像部)とを有する。主撮像部100は、撮像光学系101(第1の撮像光学系)と撮像素子102とを備えて構成される。撮像光学系101は、1つ以上のレンズ、絞り101A、および、フォーカスレンズ101F(フォーカス機構)とを備えて構成されており、被写体(不図示)からの光を撮像素子102上に結像させる。また撮像光学系101は、その内部に設けられた1つ以上のレンズが駆動することで焦点距離が変化する変倍光学系である。
図1において、撮像光学系101は撮像装置1の一部として構成されているが、一眼レフカメラのように交換式の撮像光学系であってもよい。すなわち本実施例は、撮像素子102を備えた撮像装置本体と撮像光学系101とが一体的に構成された撮像装置、または、撮像光学系101が着脱可能な撮像装置(撮像光学系101と撮像装置本体とで構成される撮像システム)のいずれにも適用可能である。
撮像素子102は、CMOSセンサやCCDセンサなどの固体撮像素子であり、撮像光学系101を介して形成された光学像(被写体像)を光電変換して画像信号(アナログ電気信号)を出力する。撮像光学系101における絞り101Aおよびフォーカスレンズ101Fの機械的な駆動は、システムコントローラ30からの指示(制御)に基づいて、撮像制御部40(フォーカス制御部41)により行われる。システムコントローラ30およびフォーカス制御部41により制御部が構成される。絞り101Aは、設定された絞り値(F値、Fナンバー)に応じてその開口径が制御される。フォーカス制御部41は、被写体距離に応じてフォーカスレンズ101Fの位置を制御することにより、フォーカス調整を行う。A/Dコンバータ10は、撮像素子102から出力されたアナログ電気信号(画像信号)をデジタル信号に変換する。
画像処理部20は、A/Dコンバータ10から出力されたデジタル信号に対して、画素補間処理、輝度信号処理、および、色信号処理など、いわゆる現像処理を行い、画像(画像データ)を生成する。画像処理部20により生成された画像は、半導体メモリや光ディスクなどの画像記録媒体60に記録される。また画像処理部20により生成された画像は、表示部70に表示されてもよい。情報入力部50には、ユーザの指示(操作)に基づいて様々な情報が入力される。一例としては、画像取得時の撮像条件(撮影条件情報)であり、具体的には主撮像部100のF値、ISO感度などであるが、これらに限定されるものではない。
副撮像部110(第2の撮像部)は、撮像光学系111a(第2の撮像光学系)および撮像光学系111b(第3の撮像光学系)と、撮像光学系111a、111bにそれぞれ対応する撮像素子112a、112bとを備えて構成される。撮像光学系111aおよび111bはそれぞれ、被写体(不図示)からの光を撮像素子112a、112b上に結像させる単焦点撮像光学系である。また撮像光学系111a、111bはそれぞれ、フォーカスレンズ111aF、111bFを有する。撮像素子112a、112bにより生成されたアナログ電気信号(画像信号)は、撮像素子102の場合と同様に、A/Dコンバータ10へ出力されデジタル信号へ変換される。
画像処理部20は、撮像素子112a、112bのそれぞれから出力された2つの画像を生成する。この2つの画像は、撮像光学系111a、111bにより形成された被写体像に相当し、互いに視差を有する2つの視差画像である。画像処理部20により生成された画像は、主撮像部100場合と同様に、表示部70に表示することができる。本実施例では、撮像光学系111a(第2の撮像光学系)を介して得られる画像を表示部70に表示するが、これに限定されるものではない。なお本実施例において、副撮像部110は撮像装置1から着脱可能であってもよい。この場合、複数の副撮像部の中から撮像装置1の主撮像部100に適した副撮像部を選択して撮像装置1に装着することができる。
画像処理部20は、距離情報算出部21(焦点検出部)を有する。距離情報算出部21は、副撮像部110により生成された2つの視差画像(撮像素子112a、112bから出力された2つの画像信号)に基づいて、被写体距離を算出する。距離情報算出部21は、情報入力部50を介してユーザにより指定された特定の領域または特定の被写体の距離を算出してもよい。情報入力部50は、例えば、ユーザによって選択された特定の被写体を距離情報算出領域(焦点検出領域)として選択し、常にその特定の被写体(動く被写体)を距離情報算出領域として設定することができる。また、撮像光学系111a、111bの画角のうち互いに重畳する画角領域内の全ての被写体の距離を算出し、それらの距離を画素値として示す距離マップ画像を生成してもよい。なお本実施例において、撮像装置1は、主撮像部100および副撮像部110に対して1つのA/Dコンバータ10および1つの画像処理部20を有するが、これに限定されるものではない。例えば、主撮像部100および副撮像部110のそれぞれに専用のA/Dコンバータおよび画像処理部(複数のA/Dコンバータおよび複数の画像処理部)を設けてもよい。
副撮像部110を構成する撮像光学系111a、111bは、最も被写体に近いレンズ(最も被写体側のレンズ)同士の間の長さが50mmになるように配置されており、この長さが副撮像部110の基線長Dに相当する。撮像光学系111a、111bは互いに同一の構成を有し、左右対称であるように平行に配置されている。すなわち、撮像光学系111a、111bのそれぞれの開口部(開口絞り)よりも被写体側において、撮像光学系111a、111bの光軸は互いに平行である。
副撮像部110を構成する2つの撮像光学系111a、111bは、互いに同一の画角を有する。また、撮像光学系111a、111bのそれぞれの画角は、主撮像部100を構成する撮像光学系101の望遠端における画角よりも広い。本実施例において、主撮像部100を構成する撮像光学系101の望遠端における焦点距離は35mm判換算で1000mm、副撮像部110を構成する2つの撮像光学系111a、111bの焦点距離は35mm判換算で400mmである。
副撮像部の撮像素子112a、112bはそれぞれ、主撮像部の撮像素子102と比較して、一辺のサイズが略半分のサイズである。このため、主撮像部と副撮像部の撮像光学系の実焦点距離の比は、略5倍となるため、主撮像部に対して副撮像部の被写界深度が十分に深い構成となっている。
ここで、図3を参照して、主撮像部100の撮像光学系101を望遠端に設定とした場合における、表示部70の画像表示例を説明する。図3は、表示部70に表示される画像の説明図であり、被写体303(鳥)を撮像する際に、表示部70に表示される画像を示している。
図3において、実線301で囲まれる領域が副撮像部110の撮像光学系111aの撮影視野(撮影視野領域)である。このように、表示部70には、副撮像部110の撮像光学系111aを介して撮像されている画像が表示される。また、破線302で囲まれる領域が主撮像部100の撮影視野(撮影視野領域)を示している。ユーザは、表示部70に表示された破線302(主撮像部100の撮影視野に関する情報)により、主撮像部100の撮影視野を確認することができる。
図3において、撮影対象の被写体303(鳥)が主撮像部100の撮影視野の範囲内に入っていない(主撮像部100の撮影視野の範囲外である)が、表示される副撮像部110の撮影視野の範囲内に入っていることを示している。このように本実施例において、表示部70は、副撮像部110を介して得られた画像に、主撮像部100の撮影視野に関する情報(破線302)を重ねて表示する。このためユーザは、例えば望遠撮影の際に、撮影視野に被写体を捉えることが容易になる。また、主撮像部100の望遠端における画角よりも副撮像部110の画角が広くため、変倍光学系を用いた望遠撮影の際に被写体を捉えやすくなる。好ましくは、副撮像部110は、主撮像部100の望遠端における画角と比較して、2倍以上広い画角を有する。このように主撮像部100と副撮像部110との焦点距離比(画角比)を2倍以上とすることにより、被写体をより容易に捉えることが可能になる。
なお本実施例において、表示部70は、主撮像部100の撮影視野に関する情報として、主撮像部100の視野領域をユーザに認識させるための破線302を表示しているが、これに限定されるものではない。表示部70は、例えば、副撮像部110を介して得られた画像に、主撮像部100を介して得られた画像を合成して表示してもよい(主撮像部100を介して得られる画像を破線302で囲まれる領域に合成表示してもよい)。このような合成表示を行うことにより、ユーザは、主撮像部100により撮像される最終的な画像を認識し易くなる。
次に、図4および図5を参照して、撮像装置1の撮像手順について説明する。図4は、撮像装置1の動作(撮像動作)を示すフローチャートである。図5は、表示部70に表示される画像の説明図である。図4の各ステップは、主に、システムコントローラ30の指令に基づいて、撮像装置1の各部により実行される。
まず、ステップS101において、システムコントローラ30は、情報入力部50を介してユーザにより選択された被写体を、注目被写体として設定する。ここでは、図5(a)に示されるように、表示部70に表示された画像上の被写体303(鳥)をユーザがタッチすることにより、円形の点線304で囲まれる領域が注目被写体(距離情報算出領域、焦点検出領域)として設定され、表示部70に表示される。ただし、本実施例はこれに限定されるものではなく、システムコントローラ30は既知の動体検出や被写体認識技術により自動的に検出された被写体を注目被写体として設定することもできる。このように本実施例において、表示部70は、副撮像部110を介して得られた画像に、距離情報算出部21の距離情報算出領域に関する情報(例えば、点線304)を重ねて表示する。
システムコントローラ30は、情報入力部50を介してユーザにより入力された撮像条件(撮影条件情報)を取得する。撮像条件とは、主撮像部100のF値やISO感度などを含むが、これらに限定されるものではない。またシステムコントローラ30は、撮像制御部40を介して主撮像部100の絞り101Aおよび撮像素子102を制御し、取得した撮像条件を設定する。
続いてステップS102において、システムコントローラ30は、撮像制御部40を介して副撮像部110を制御し、副撮像部110を用いた撮像を行うことにより、撮像光学系111a、111bを介して得られた2つの画像を取得する。ここで取得される2つの画像は、図5(a)に示されるように、注目被写体に合焦していないボケた画像である。
続いてステップS103において、距離情報算出部21は、ステップS102にて取得された2つの画像を用いて、ステップS101にて設定された被写体(注目被写体)の第1の距離情報(被写体距離に関する情報)を算出する。第1の距離情報を算出する際に必要となる副撮像部110を構成する2つの撮像光学系111a、111bの焦点距離、基線長、および、撮像素子112a、112bの画素サイズなどの各種データは、メモリ80に格納されている。距離情報算出部21は、必要に応じて、メモリ80から各種データを受け取ることができる。本実施例では、第1の距離情報として、前述のように二次元画像を用いて被写体までの距離を算出しているが、これに限定されるものではない。例えば、第1の距離情報として、公知の位相差AFの手法を用いてデフォーカス量を算出してもよい。ここで算出される第1の距離情報は、ステップS102にて取得されたボケた画像に基づいて算出されるため、前述のように、距離情報の算出精度が低い情報である。
続いてステップS104において、システムコントローラ30は、フォーカス制御部41を介して、ステップS103にて取得した第1の距離情報に基づいて副撮像部110のフォーカス制御を実行する。具体的には、システムコントローラ30は、フォーカス制御部41を介して副撮像部110のフォーカスレンズ111aF、111bFのそれぞれを駆動し、第1の距離情報に基づいて、副撮像部110を注目被写体に合焦させる。距離情報に応じた副撮像部110のフォーカスレンズ111aF、111bFのそれぞれの位置は、メモリ80にテーブルとして格納されている。このためシステムコントローラ30は、各撮像部の撮像条件と距離情報とに応じて適宜判定することができる。図5(b)は、ステップS104の状態を示している。副撮像部110が主撮像部100よりも画角が広く、被写界深度が深いため、距離情報の算出精度が低い第1の距離情報に基づいても、副撮像部110のフォーカスを合わせることが可能である。
続いてステップS105において、システムコントローラ30は、撮像制御部40を介して副撮像部110を制御し、撮像を行うことにより2つの画像を取得する。ここで、副撮像部110により取得される2つの画像は、図5(b)に示されるように注目被写体に合焦した鮮鋭な画像である。
続いてステップS106において、距離情報算出部21は、ステップS105にて取得された2つの画像を用いて、ステップS101にて設定された被写体(注目被写体)の第2の距離情報(被写体距離に関する情報)を算出する。第2の距離情報を算出する際に必要となる副撮像部110を構成する2つの撮像光学系111a、111bの焦点距離、基線長、および、撮像素子112a、112bの画素サイズなどの各種データは、メモリ80に格納されている。距離情報算出部21は、必要に応じて、メモリ80から各種データを受け取ることができる。本実施例では、第2の距離情報として、前述のように二次元画像を用いて被写体までの距離を算出しているが、これに限定されるものではない。例えば、第2の距離情報として、公知の位相差AFの手法を用いてデフォーカス量を算出してもよい。
ステップS106にて第2の距離情報を算出する際において、ステップS103にて第1の距離情報を算出する際に対して、探索範囲、ブロックサイズ、および、サブピクセル推定のフィッティング関数(ブロックマッチング法)の少なくとも一つが異なっている。本実施例においては、探索範囲が異なっている。ステップS103にて低精度であるが距離情報が既に算出されているため、ステップS106ではある程度被写体距離の予測が立っている状態といえる。このため、予測される視差量の範囲内に探索範囲を設定することにより、距離情報の算出処理速度を更に高速化することができる。また、画像の鮮鋭度が高いため、ブロックサイズを小さくすることで、距離情報の算出する際のメモリ使用量を減らすことも可能である。また、サブピクセル推定のフィッティング関数についても鮮鋭度の高い画像に適したフィッティング関数を選択することにより、距離情報の算出精度を更に向上させることができる。第2の距離情報は、ステップS105にて取得された鮮鋭な画像に基づいて算出されるため、前述のように距離情報の算出精度が高い情報となる。
続いてステップS107において、システムコントローラ30は、フォーカス制御部41を介して主撮像部100のフォーカスレンズ101Fを駆動する。すなわちシステムコントローラ30は、ステップS106にて算出した第2の距離情報(副撮像部110のフォーカス制御の実行後に距離情報算出部21により算出された第2の距離情報)に基づいて、主撮像部100のフォーカス制御を実行する。これにより、撮像光学系101を注目被写体に合焦させることができる。また本実施例では、同時に、フォーカス制御部41は、副撮像部110のフォーカスレンズ111aF、111bFを駆動し、副撮像部110を注目被写体に合焦させてもよい。被写体距離に応じた主撮像部100および副撮像部110のフォーカスレンズ101F、111aF、111bFの位置は、メモリ80にテーブルとして格納されており、各撮像部の撮像条件と被写体距離とに応じて適宜判定することができる。
図5(c)は、ステップS107の状態を示している。システムコントローラ30は、フォーカス調整された副撮像部110による鮮鋭な画像に基づいて、主撮像部100のフォーカス制御を行うことより、精度良く被写体にフォーカスを合わせることが可能である。このため、主撮像部100の撮影視野に被写体が入った後のフォーカス制御の時間を短縮することができ、ボケた画像を撮影する頻度を低下させることが可能となる。すなわち、望遠レンズを用いた動く被写体の撮影の成功率を向上させることができる。
本実施例において、システムコントローラ30は、ステップS106にて第2の距離情報を取得する前に、ステップS103にて算出された第1の距離情報に基づいて主撮像部100のフォーカス制御を開始することもできる。より具体的には、システムコントローラ30は、第1の距離情報に基づいて、主撮像部100のフォーカス移動方向を決定してフォーカス制御を開始し、第2の距離情報に基づいて、主撮像部100のフォーカス制御を継続する。このような構成によれば、第2の距離情報を取得する前に主撮像部100のフォーカス制御を開始することができるため、より高速なフォーカス制御が可能となる。
続いてステップS108において、システムコントローラ30および距離情報算出部21は、ステップS104〜S107を繰り返し実行することにより、主撮像部100の撮像光学系101の合焦位置を注目被写体の距離に追従させる。すなわちシステムコントローラ30および距離情報算出部21は、主撮像部100による撮像が完了するまで、距離情報の算出(焦点検出)およびフォーカス制御をそれぞれ繰り返す。具体的には、システムコントローラ30は、撮像制御部40を介してフォーカスレンズ101Fの位置を微小に変化させながら制御することにより、被写体へのフォーカス追従を行う。この動作により、注目被写体が奥行き方向へ移動した場合でも、常に主撮像部100の撮像光学系101のフォーカスを被写体に合わせることが可能となる。
続いてステップS109において、注目被写体が主撮像部100の撮影視野内に入り、ユーザが撮影指示を入力すると、システムコントローラ30は撮像制御部40を介して主撮像部100を制御し、撮像を行うことで画像を取得する。このとき取得した画像は、画像記録媒体60に保存され、撮像手順が終了する。ここで、画像に加えて副撮像部110により取得される2つの画像を画像記録媒体60に保存してもよく、または、2つの画像を用いて画像処理部20が算出する距離マップ画像を画像記録媒体60に保存してもよい。図5(c)は、ステップS109の状態を示している。ここで、距離情報算出部21は、主撮像部100を介した画像に応じて、背景技術にて説明したコントラストAFの評価値を出力することもできる。その評価値に基づいて、フォーカス制御部41は主撮像部の最終的なフォーカス制御を実施することができる。この場合においても、既に略合焦状態からの追い込み制御となるため、コントラストAFを行っても僅かな制御時間の増加に留めることができる。
以上説明したように本実施例の撮像装置は、副撮像部が備える2つの撮像光学系はフォーカス機構を有している。そのフォーカス機構により被写体に合焦した状態に制御された副撮像部を用いることで、主撮像部の画角全域の被写体距離情報を高精度に取得することができる。このため撮像装置は、主撮像部の画角内の任意の被写体の距離情報を高精度に取得し、主撮像部を高精度かつ高速に被写体に合焦させることができる。これにより、望遠レンズを用いた動く被写体の撮影の成功率を向上させることが可能な撮像装置を提供することができる。
次に、図6を参照して、本発明の実施例2における撮像装置2(撮像システム)について説明する。図6は、撮像装置2のブロック図である。本実施例の撮像装置2は、副撮像部110に代えて副撮像部120を有する点で、実施例1の撮像装置1とは異なる。また撮像装置2は、コントラスト用AFゲート90、位相差用AFゲート92、コントラスト用距離情報算出部91(距離情報算出部)、および、位相差用距離情報算出部93(距離情報算出部)を有する点で、撮像装置1とは異なる。撮像装置2のその他の構成は、撮像装置1と同様であるため、それらの説明を省略する。
副撮像部120(第2の撮像部)は、撮像光学系121a、121b、および、撮像素子122を備えている。撮像光学系121a、121bはそれぞれ、被写体(不図示)からの光を撮像素子122上に結像させる単焦点撮像光学系である。撮像素子122から出力されるアナログ電気信号は、撮像素子102から出力されるアナログ電気信号と同様に扱われる。画像処理部20は、撮像素子122から出力された画像信号(撮像光学系121a、121bを介して得られた画像信号)に基づいて2つの画像を生成する。この2つの画像は、撮像光学系121a、121bにより形成された被写体像に相当し、互いに視差を有する2つの視差画像である。なお本実施例において、副撮像部120は撮像装置2から着脱可能であってもよい。この場合、複数の副撮像部の中から撮像装置2の主撮像部100に適した副撮像部を選択して撮像装置2に装着することができる。
副撮像部120は、実施例1の副撮像部110とは異なり、2つの撮像光学系121a、121bに共通の1つの撮像素子122のみを有する。1つの撮像素子122上に2つの撮像光学系121a、121bを介して像を結像させ、撮像素子122から画像信号を出力させる。本実施例によれば、実施例1の構成と比較して、撮像素子の数を減らすことができるため、コストを低下させることが可能である。本実施例において、主撮像部100を構成する撮像光学系101の望遠端における焦点距離は35mm判換算で1000mm、副撮像部120を構成する2つの撮像光学系121a、121bの焦点距離は35mm判換算で400mmである。
また、主撮像部100の撮像素子102に対して、副撮像部120の撮像素子122は一辺のサイズが同じサイズである。しかしながら、副撮像部120では撮像素子122の撮像領域を二分割して利用しているため、副撮像部120の撮像光学系121a、121bに対する実質的な撮像素子サイズは半分となる。このため、主撮像部100と副撮像部120の撮像光学系の実焦点距離の比は略5倍となるため、主撮像部100に対して副撮像部120の被写界深度が十分に深い構成となっている。
A/Dコンバータ10は、撮像素子102、122から出力されるアナログ電気信号(画像信号)をデジタル信号に変換し、画像処理部20またはコントラスト用AFゲート90に供給する。コントラスト用AFゲート90は、A/Dコンバータ10からの全画素出力信号のうち、情報入力部50を介してユーザにより設定された距離情報算出領域(焦点検出領域、AF枠)の範囲内の信号のみをコントラスト用距離情報算出部91に供給する。コントラスト用距離情報算出部91は、コントラスト用AFゲート90から供給される画像信号(焦点信号)に対してフィルタを適用して高周波成分を抽出し、評価値(AF評価値)を生成する。AF評価値は、システムコントローラ30に出力される。
位相差用AFゲート92は、A/Dコンバータ10からの全画素出力信号のうち、情報入力部50を介してユーザにより設定された距離情報算出領域(焦点検出領域、AF枠)の信号のみを位相差用距離情報算出部93に供給する。位相差用距離情報算出部93は、位相差用AFゲート92から供給される画像信号(焦点信号)に対して位相差方式の処理(焦点検出処理)を行い、デフォーカス量を算出する。デフォーカス量は、システムコントローラ30に出力される。
次に、図7を参照して、撮像装置2の撮像手順について説明する。図7は、撮像装置2の動作(撮像動作)を示すフローチャートである。図7の各ステップは、主に、システムコントローラ30の指令に基づいて、撮像装置2の各部により実行される。
まず、ステップS201において、システムコントローラ30は、情報入力部50を介してユーザにより選択された被写体を、注目被写体として設定する。ここでは、図5(a)に示されるように、表示部70に表示された画像上の被写体303(鳥)を、ユーザが選択釦(不図示)を用いて選択する。これにより、円形の点線304で囲まれる領域が注目被写体(距離情報算出領域、焦点検出領域)として設定され、表示部70に表示される。システムコントローラ30は、情報入力部50を介してユーザにより入力された撮像条件(撮影条件情報)を取得する。撮像条件とは、主撮像部100のF値やISO感度などを含むが、これらに限定されるものではない。またシステムコントローラ30は、撮像制御部40を介して主撮像部100の絞り101Aおよび撮像素子102を制御し、取得した撮像条件を設定する。
続いてステップS202において、システムコントローラ30は、撮像制御部40を介して副撮像部120を制御し、副撮像部120を用いた撮像を行うことにより、撮像光学系121a、121bを介して得られた2つの画像を取得する。ここで副撮像部120により取得される2つの画像は、図5(a)に示されるように、注目被写体に合焦していないボケた画像である。
続いてステップS203において、システムコントローラ30は、位相差用距離情報算出部93を介して、位相差AFによりデフォーカス量(第1の距離情報)を算出する。より詳細には、システムコントローラ30は、情報入力部50を介してユーザから指定された領域(被写体)を焦点検出領域として決定する。そしてシステムコントローラ30は、決定した焦点検出領域内の画像信号のみを位相差用距離情報算出部93に供給するように位相差用AFゲート92を設定する。
位相差用距離情報算出部93は、前述の対応被写体探索処理によりデフォーカス量を算出する。また、複数ラインをデータとして用いる場合、例えば、各対応するラインごとに対応被写体探索処理を行い、求められた相関値群の平均を求めることもできる。また、対応被写体探索処理を行う前に複数ラインデータを上下方向に平均化して1ライン分のデータとして対応被写体探索処理を行ってもよい。システムコントローラ30は、位相差用距離情報算出部93が焦点検出領域内の画像信号に基づいて算出したデフォーカス量(第1の距離情報)を取得する。ここで算出される第1の距離情報は、ステップS202にて取得されたボケた画像に基づいて算出されるため、前述のように距離用法の算出精度が低い情報となる。
続いてステップS204において、システムコントローラ30は、フォーカス制御部41を介して、ステップS203にて取得した第1の距離情報に基づいて副撮像部120のフォーカス制御を実行する。具体的には、システムコントローラ30は、フォーカス制御部41を介して副撮像部120のフォーカスレンズ121aF、121bFのそれぞれを駆動し、第1の距離情報に基づいて、副撮像部120を注目被写体に合焦させる。距離情報に応じた副撮像部110のフォーカスレンズ111aF、111bFのそれぞれの位置は、メモリ80にテーブルとして格納されている。このためシステムコントローラ30は、各撮像部の撮像条件と距離情報とに応じて適宜判定することができる。図5(b)は、ステップS204の状態を示している。副撮像部120が主撮像部100よりも画角が広く、被写界深度が深いため、距離情報の算出精度が低い第1の距離情報に基づいても、副撮像部110のフォーカスを合わせることが可能である。
図6に示されるように互いに近接して配置されたフォーカスレンズ121aF、121bFはそれぞれ、同一の駆動装置により一体保持され、その駆動装置により一体的に移動制御される構成とすることもできる。このような構成により、駆動装置の数を削減することができ、装置としてのコストを低減することが可能である。また、副撮像部120が同一の2つの光学系を備えて構成されているため、フォーカス駆動部分として、撮像光学系部分を一体で繰り出す方式や撮像素子122自体を繰り出す方式を採用することも可能である。
続いてステップS205において、システムコントローラ30は、撮像制御部40を介して副撮像部120を制御し、撮像を行うことにより2つの画像を取得する。ここで、副撮像部120により取得される2つの画像は、図5(b)に示されるように注目被写体に合焦した鮮鋭な画像である。
続いてステップS206において、システムコントローラ30は、ステップS205にて取得された鮮鋭な画像に基づいて、位相差用距離情報算出部93を介して、位相差AFによりデフォーカス量(第2の距離情報)を算出する。より詳細には、システムコントローラ30は、情報入力部50を介してユーザから指定された領域(被写体)を焦点検出領域として決定する。そしてシステムコントローラ30は、決定した焦点検出領域内の画像信号のみを位相差用距離情報算出部93に供給するように位相差用AFゲート92を設定する。
位相差用距離情報算出部93は、前述の対応被写体探索処理によりデフォーカス量を算出する。また、複数ラインをデータとして用いる場合、例えば、各対応するラインごとに対応被写体探索処理を行い、求められた相関値群の平均を求めることもできる。また、対応被写体探索処理を行う前に複数ラインデータを上下方向に平均化して1ライン分のデータとして対応被写体探索処理を行ってもよい。システムコントローラ30は、位相差用距離情報算出部93が焦点検出領域内の画像信号に基づいて算出したデフォーカス量を取得する。
ステップS206にて第2の距離情報を算出する際において、ステップS203にて第1の距離情報を算出する際に対して、探索範囲、ブロックサイズ、および、サブピクセル推定のフィッティング関数(ブロックマッチング法)の少なくとも一つが異なっている。本実施例においては、探索範囲が異なっている。ステップS203にて低精度であるが距離情報が既に算出されているため、ステップS206ではある程度被写体距離の予測が立っている状態といえる。このため、予測される視差量の範囲内に探索範囲を設定することにより、距離情報の算出処理速度を更に高速化することができる。また、画像の鮮鋭度が高いため、ブロックサイズを小さくすることで、距離情報の算出する際のメモリ使用量を減らすことも可能である。また、サブピクセル推定のフィッティング関数についても鮮鋭度の高い画像に適したフィッティング関数を選択することにより、距離情報の算出精度を更に向上させることができる。第2の距離情報は、ステップS205にて取得された鮮鋭な画像に基づいて算出されるため、前述のように距離情報の算出精度が高い情報となる。
続いてステップS207において、システムコントローラ30は、フォーカス制御部41を介して主撮像部100のフォーカスレンズ101Fを駆動する。このときシステムコントローラ30は、ステップS206にて算出した第2の距離情報に基づいて、撮像光学系101を注目被写体に合焦させる。被写体距離に応じた主撮像部100のフォーカスレンズ101Fの位置は、メモリ80にテーブルとして格納されており、各撮像部の撮像条件と被写体距離とに応じて適宜判定することができる。
図5(c)は、ステップS207の状態を示している。システムコントローラ30は、フォーカス調整された副撮像部120による鮮鋭な画像に基づいて、主撮像部100のフォーカス制御を行うことより、精度良く被写体にフォーカスを合わせることが可能である。このため、主撮像部100の撮影視野に被写体が入った後のフォーカス制御の時間を短縮することができ、ボケた画像を撮影する頻度を低下させることが可能となる。すなわち、望遠レンズを用いた動く被写体の撮影の成功率を向上させることができる。なお、実施例1と同様に、第1の距離情報に基づいて主撮像部100のフォーカス制御を開始してもよい。
続いてステップS208において、システムコントローラ30は、撮像制御部40を介して、主撮像部100のコントラストAFを行う。より詳細には、システムコントローラ30は、撮像制御部40を介して主撮像部100を制御し、撮影を行うことでプレ画像を取得する。図5(c)は、ステップS208の状態を示している。図5(c)に示されるように、注目被写体(被写体303)が主撮像部100の撮影視野(破線302で囲まれる領域)内にあり、前段のステップS207までの動作によりほぼ注目被写体に主撮像部100のフォーカスが合っている状態である。しかしながら、位相差AFでは追従しきれない若干のピントずれが生じている。一般的に、コントラストAFは、位相差AFと比較して合焦精度が高く、最終的な合焦評価に適している。
またシステムコントローラ30は、情報入力部50を介してユーザにより指定された領域を距離情報算出領域(焦点検出領域、AF枠)として決定する。またシステムコントローラ30は、決定した距離情報算出領域内の画像信号のみをコントラスト用距離情報算出部91に供給するようにコントラスト用AFゲート90を設定する。そしてシステムコントローラ30は、コントラスト用距離情報算出部91が距離情報算出領域内の画像信号に基づいて生成したAF評価値を取得する。さらにシステムコントローラ30は、フォーカスレンズ101Fを微小量左右に移動させ、再度、AF評価値(左に移動させて得られたAF評価値および右に移動させていえられたAF評価値)を取得する。システムコントローラ30は、微小駆動にて得られたAF評価値に基づいて、コントラストAFを行う。
続いてステップS209において、システムコントローラ30は、フォーカス制御部41を介して、AF評価値が最も高くなる位置へ主撮像部100のフォーカスレンズ101Fを移動するように制御する。ここでは、既に略合焦状態からの追い込み制御となるため、コントラストAFを行っても僅かな制御時間の増加に留めることができる。
続いてステップS210において、ユーザが撮影指示を入力すると、システムコントローラ30は撮像制御部40を介して主撮像部100を制御し、撮像を行うことで画像を取得する。このとき取得した画像は、画像記録媒体60に保存され、撮像手順が終了する。本実施例において、主撮像部100を用いて取得した画像に加えて、副撮像部120を用いて取得した2つの画像を画像記録媒体60に保存してもよい。また、副撮像部120を介して取得した2つの画像を用いて画像処理部20が算出する距離マップ画像を画像記録媒体60に保存することもできる。
以上説明したように本実施例の撮像装置は、副撮像部が備える2つの撮像光学系はフォーカス機構を有している。そのフォーカス機構により被写体に合焦した状態に制御された副撮像部を用いることで、主撮像部の画角全域の被写体距離情報を高精度に取得することができる。このため撮像装置は、主撮像部の画角内の任意の被写体の距離情報を高精度に取得し、主撮像部を高精度及び高速に被写体に合焦させることができる。これにより、望遠レンズを用いた動く被写体の撮影の成功率を向上させることが可能な撮像装置を提供することができる。
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
各実施例によれば、高速かつ高精度なフォーカス制御を行うことが可能な撮像装置、撮像システム、撮像装置の制御方法、および、プログラムを提供することができる。
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
各実施例において副撮像部(第2の撮像部)は複数の撮像光学系(ステレオ光学系)を有するが、これに限定されるものではない。例えば、副撮像部は、1つの撮像光学系(第2の撮像光学系のみ)と、この撮像光学系のうち互いに異なる瞳領域を通過する光を受光する第1光電変換部および第2の光電変換部を備えた撮像素子とを有していてもよい。このような機能を有する撮像素子は、例えば、1つのマイクロレンズに対して第1光電変換部および第2光電変換部を有し、マイクロレンズを2次元状に配列することにより実現することができる。