以下、本発明の実施の形態について図面を参照しながら詳述する。
[第1の実施の形態]
図1は、本発明の実施の形態に係る画像処理装置100の概略構成を示す図である。
図1において、結像光学系101はレンズや絞りなどからなり、フォーカス調節や焦点距離調整を行う。撮像素子102は光学像を電気信号に変換する。この撮像素子102には例えばCCDが用いられる。上記結像光学系101は、被写体像を結像する光学結像手段に対応する。また、撮像素子102は、結像光学系101により結像された被写体像を撮像する撮像手段に対応する。
A/D変換部103は撮像素子102から出力されたアナログ画像信号をデジタル画像信号に変換する。信号処理部104はA/D変換部103から出力されたデジタル画像信号に対して信号処理を施す。
表示部109は撮像素子102で撮像された画像などを表示する。AF評価値取得部108は結像光学系101のオートフォーカス(AF)調整用のAF評価値を取得する。メモリ制御部105はメモリ(例えばDRAM)106との間で画像信号データなどの記憶または読み出しを行う。
操作部110はユーザからの指示を受け付ける。システム制御部107は画像処理装置100全体の動作を制御する。
このように構成された画像処理装置100において、結像光学系101のフォーカス調整をオートフォーカスで実現するためには、一般によく知られている山登りコントラストAFの技術を利用すればよい。
つまり、結像光学系101を通過した被写体光束を撮像素子102で受光し、AF測距枠として指定した領域内で撮像出力のコントラスト(AF評価値)が極大となるようにフォーカス調整することでオートフォーカスを実現することができる。
また、フォーカス調整された結像光学系101の焦点位置から、AF測距枠中の合焦被写体までの距離Zを求めることができる。
図2は、図1における信号処理部104の概略構成を示す図である。
図2において、基準画像201はステレオ方式距離画像生成部210とDFD(Depth From Defocus)方式距離画像生成部224が参照する画像である。また、ステレオ方式参照画像202はステレオ方式距離画像生成部210が参照する画像であり、この画像は基準画像201に対して視差を有している。
DFD方式参照画像221,222は、DFD方式距離画像生成部224が参照する画像であり、これらの画像は基準画像201とは異なる焦点位置で撮像されている。
ステレオ方式距離画像生成部210は、視差を有する複数の画像から相関を用いて対応点探索を行うことで距離情報を推定し、ステレオ方式距離画像209を生成する。
DFD方式距離画像生成部224は、焦点位置の異なる複数の画像から合焦度の変化量を計算して距離情報を推定し、DFD方式距離画像223を生成する。
距離画像合成部243は、ステレオ方式距離画像(第1距離画像)209とDFD方式距離画像(第2距離画像)223を合成することで、合成距離画像241を生成する。
この距離画像合成部243において、画像の合成は、以下の式4を用いて行われる。
ここで、(x,y)は画素位置、Z
MIX(x,y)は合成距離画像の(x,y)での画素値、Z
STR(x,y)はステレオ方式距離画像の(x,y)での画素値、Z
DFD(x,y)はDFD方式距離画像の(x,y)での画素値、Kは合成係数である。
距離画像合成部243は、コントラストAFでフォーカスが合った被写体を主要被写体として選択し、主要被写体の被写界深度に応じて合成係数Kを決定する。
例えば、許容錯乱円径を0.03328mm、絞り値を2.8、焦点距離を50mmとし、主要被写体の被写体距離を9mとすると、被写界深度は式1〜式3により、6.80mとなる。同様に、主要被写体の被写体距離を1mとすると、被写界深度は0.075mとなる。このように、まず被写体像に示される複数の被写体から選択された主要被写体の被写界深度に応じて合成係数が算出される。そして、第1距離画像と第2距離画像とを、算出された合成係数を用いて合成することで合成距離画像が生成される。
さらに、合成係数kは、主要被写体の被写界深度が増加するにしたがって単調増加する係数である。式4に示されるように、ステレオ方式距離画像及びDFD方式距離画像における位置(x,y)に応じて対応するステレオ方式距離画像の画素及びDFD方式距離画像の画素の、各々の画素値の加重平均を新たな画素値とした画像が合成距離画像として生成される。そして、当該加重平均において合成係数kはステレオ方式距離画像への画素値に対する重み係数である。
また、DFD方式距離画像への画素値に対する重み係数(1−k)は、合成係数kが増加するにしたがって単調減少する。
なお、上述した単調増加は、書物によっては広義の単調増加または単調非減少と表現されることがある。同様に単調減少は、書物によっては広義の単調減少または単調非増加と表現されることがある。
図3は、被写界深度Dに対する合成係数を決定するグラフを示す図であり、(A)は連続的に変化するように合成係数を決定する場合のグラフを示し、(B)合成係数を2値のいずれかに決定する場合のグラフを示している。
図3(A)(B)において、例えば主要被写体の被写界深度が6.80mであれば合成係数は1.0となり、式4から合成距離画像はステレオ方式距離画像優先となる。また、主要被写体の被写界深度が0.075mであれば合成係数は0.0となり、式4から合成距離画像はDFD方式距離画像優先となる。
さらに、図3(A)において、被写界深度が4.0m〜5.0mの場合は、DFD方式距離画像優先からステレオ方式距離画像優先へと徐々に変化する。
図4は、図2におけるステレオ方式距離画像生成部210の概略構成を示す図である。
図4におけるステレオ方式距離画像生成部210の説明に先立ち、ステレオ方式距離画像の生成について非特許文献1では、以下のステップでステレオ方式距離画像を生成することができることが示されている。
まず、左右の異なる視点で撮像された2つの画像に対して、結像光学系101により生じる歪み補正を行う。次いで、左右の異なる視点間でカメラの角度と距離を調整するために、左右画像を写像する(ステレオ平行化)。そして、左右のカメラのビューで同じ特徴を求めることで、視差画像を生成する(ステレオ対応点探索)。左右のカメラの幾何学的な位置情報を用いて、視差画像を距離画像に変換する(3D再投影)。
図4において、左右のカメラで撮像された画像は、基準画像201とステレオ方式参照画像202である。
また、ホモグラフィ推定部203はステレオ平行化のためのホモグラフィを推定する。ここでのホモグラフィ推定処理においては、結像光学系101による歪みが補正された座標系を用いる必要がある。
その座標変換式は以下の式5である。
ここで、(x,y)は歪まされた点の元の位置であり、(x
corrected,y
corrected)は補正の結果得られる新しい位置である。さらに、rは歪まされた点の元の位置におけるレンズ中心からの距離であり、k1、k2、k3はレンズの形状から決定される歪み補正係数である。
ここでの歪み補正は半径方向歪みのみを補正するものとしたが、それだけに限定されるものではなく、例えば円周方向歪みも補正するようにしてもよい。
図5は、左右の視点が形成する撮像系をピンホールモデルで表現した図である。
図5においてOl及びOrは左右の視点の投影中心位置、Pは被写体位置、pl及びprは左右の視点の投影平面に投影される被写体の結像位置、el及びerは左右の視点におけるエピポール、pl、el及びpr、erは左右の視点におけるエピポーラ線である。
エピポーラ拘束により、1つの画像内の特徴点が与えられると、もう1つの画像内で対応する点は対応するエピポーラ線上に存在する。
このため、ステレオ対応点探索はエピポーラ線に沿って対応点探索することになるが、2つの画像でエピポーラ線を平行にして対応点の高さを合わせると水平方向の1次元での対応点探索となる。この場合、2次元で探索するよりも計算量が大幅に軽減されるし、結果の信頼度も高い。
2つの画像でエピポーラ線を平行にして対応点の高さを合わせる座標変換が、ステレオ平行化である。ステレオ平行は以下の順に処理が実行される。
(1−1)2つの画像で対応する8点以上の特徴点を求める。
(1−2)対応する8点以上の特徴点から基礎行列Fを求める。
(1−3)基礎行列Fからエピポールelおよびerを求める。
(1−4)エピポールerから右画像のステレオ平行化のためのホモグラフィHrを推定する。
(1−5)対応する特徴点、ホモグラフィHr、およびエピポールelから左画像のステレオ平行化のためのホモグラフィHlを推定する。
上記(1−1)の処理では、2つの画像間でブロックマッチング手法による2次元の対応点探索を行うことで、必要な対応する特徴点を求める。画素単位で対応点探索するステレオ対応点探索とは異なり、画像一面内で対応する特徴点を最低8点だけ求めればよいので、2次元であっても計算量は少なく、結果の信頼度にも大きな影響はない。
ブロックマッチング手法は、後述するステレオ対応点探索の手法と同様である。ただしステレオ対応点探索のブロックマッチング手法は1次元方向のみの探索なので、ここではその探索範囲を2次元方向に拡張したブロックマッチング手法が適用される。
次の(1−2)の処理では、8点の特徴点から3×3行列の基礎行列Fを求める。また、特徴点の座標は式5で歪み補正されたものを用いる。以下の式6は一般にエピポーラ方程式と呼ばれている方程式である。
ここで、Eは、3×3行列の基本行列である。また3×3行列のカメラ内部行列Mを用いると、一般に以下の式7で3次元物理座標pを投影平面の2次元ピクセル座標qに変換できることが知られている。
またカメラ内部行列Mを用いると、一般に以下の式8で基本行列Eを基礎行列Fに変換できることが知られている。
上述した式6から式8を用いると、基礎行列Fに関する以下の式9を導くことができる。
基礎行列Fは3×3行列で、かつスカラの自由度を持つので、9個の行列要素のうちの8個が変数となる。このため式9に左右画像において対応する特徴点のql及びqrの8点分を代入すれば、単なる連立1次方程式となり、この連立1次方程式を解くことで基礎行列Fを求めることができる。
このように、本実施の形態では、基礎行列Fを求めるのに左右画像において対応する8店の特徴点のql及びqrを用いているが、これに限定されるものではない。例えば非特許文献1で開示されているように8点以上の特徴点を用いた最小二乗法によって基礎行列Fを推定してもよい。
次の(1−3)の処理では、基礎行列Fからエピポールel及びerを求める。基礎行列Fとエピポールel及びerの関係は一般に以下の式10で表されることが知られており、この式10に求めた基礎行列Fを代入することでエピポールel及びerを求めることができる。
(1−4)の処理では、エピポールerからホモグラフィHrを推定する。
図6は、ホモグラフィHlおよびHrの写像手順を説明するための図である。
図6において、網掛けされた三角形は、右画像の投影平面におけるオブジェクトの結像イメージを示している。
そして、図6(A)では、エピポールerのピクセル座標(xe,ye)が示されている。まず、エピポールerをx軸上の(k,0)に写像する回転行列Rを求める。つまり、以下の式11のようになる。
式11をエピポールe
rに適用すると、以下の式12のようになる。
図6(B)は、(A)に対して回転行列Rを適用したピクセル座標系を示している。次に、x軸上に写像されたエピポール(k,0)を無限遠点(±∞,0)に写像するホモグラフィGを求める。つまり、ホモグラフィGは以下の式13のようになる。
このようなホモグラフィは、すべてのエピポーラ線をx軸に対して平行な直線に写像する。
図6(C)は、(B)に対してホモグラフィGを適用したピクセル座標系を示している。(C)におけるエピポーラ線はx軸に対して平行な直線に写像されている。
式11から式13により、ホモグラフィH
rは以下の式14のようになる。
(1−5)の処理では、特徴点の対応、ホモグラフィHr、およびエピポールelから左画像のステレオ平行化のためのホモグラフィHlを推定する。このようなホモグラフィHlは、左画像のすべてのエピポーラ線をx軸に対して平行な直線に写像し、左右画像の対応するエピポーラ線の高さを揃える。
左画像のすべてのエピポーラ線をx軸に対して平行な直線に写像する手順は、(1−4)の処理と同様の手順で実現することができる。また同様の手順で左画像に対して求められた行列を、G’及びR’とする。
左右画像の対応するエピポーラ線の高さを揃えることは、左右画像間に存在し、対応する特徴点において、特徴点間距離の総和が最小になるようなホモグラフィKを推定することで実現することができる。つまり、推定したいホモグラフィHlは以下の式15ようになる。
さらに、ホモグラフィKを推定するために、以下の式16を用いる。
なお式16のdd(Q,R)は、2つのピクセル座標QR間の距離自乗和を表している。また対応する特徴点の組は(q
l i,q
r i)は、(1−1)の処理で求められたものを用いればよい。
図4の説明に戻り、逆写像処理部204,205は、ステレオ平行化のためのホモグラフィを用いて、左画像(基準画像201)および右画像(ステレオ方式参照画像202)をステレオ平行化する。このステレオ平行化のための逆写像処理の手法は非特許文献1に示される手法と同様である。
図7は、撮像された画像(図では生画像)を、ステレオ平行化された左右画像へ写像する手順を説明するための図である。
図7において、逆写像処理は、(C)に示されるステレオ平行化された画像内の各整数座標に対して、(B)に示される歪み補正された画像内の座標を求め、それらを用いて(A)に示される生画像内の小数点座標を参照することで実現できる。
つまり、この小数点座標を用いて生画像内で画素補間処理を行い、(C)に示されるステレオ平行化画像内での画素値を求める。
なお、図中のDIST()は、式5の(xcorrected,ycorrected)から(x,y)を求める式(2)の逆変換処理である。また、(D)は切り出された視差画像を示している。
図4の説明に戻り、ステレオ対応点探索部206はステレオ平行化された左画像と右画像から視差画像を生成する。ステレオ対応点探索の手法は非特許文献1に示される手法と同様である。
図8は、ステレオ対応点探索で用いるブロックマッチング手法を説明するための図である。
ブロックマッチングは差分絶対値和(SAD)ウィンドウを行方向にスライドすることで行われる。具体的にブロックマッチングは、左の画像内でそれぞれの特徴に対して、右の画像で対応する行から最もよくマッチするものを探す。
左右画像はステレオ平行化されていて各行がエピポーラ線になっており、右の画像内でマッチングする箇所は左の画像内の同じ行にあるため、探索方向は図8に示されるように、例えば(x0,y0)から行方向だけに限定することができる。
左の画像内のある特徴点のx座標xlに対して、対応する右の画像内の対応点のx座標xrまでの距離d=(xl−xr)が、x座標xlに対応する視差量となる。
図8では、基準画像201が左の画像の場合を示しているが、基準画像が右の画像の場合は、右の画像内の特徴点を基準に視差量を計算する。つまり、右の画像内のある特徴点のx座標xrに対して、対応する左の画像内の対応点のx座標xlまでの距離d=(xl−xr)を、x座標xrに対応する視差量とする。
図4の説明に戻り、3D再投影部207は視差画像からステレオ方式距離画像209を生成する。
3D再投影の手法は非特許文献1の手法と同様である。三角測量の手法により、距離Zと視差量dの関係は一般に以下の式17で表されることが知られている。
ここで、fは撮像系の焦点距離、Tは左右2つの視点の投影中心の距離である。この式17を用いて3D再投影部207により生成されたステレオ方式距離画像209は、メモリ制御部105によってメモリ106に記憶される。
以上説明した構成により実行される処理について、以下フローチャートを用いて説明する。
図9は、図1におけるシステム制御部107により実行される合成距離画像生成処理の手順を示す図である。
図9において、まずステレオ方式参照画像を撮像し、更新する(ステップS101)。焦点位置は、ステップS101の撮像前に予めAF評価値取得部108によるコントラストAFで調整しておく。図10は画像上におけるAF測距枠の位置を説明するための図であり、AF測距枠301が示されている。
このステップS101の処理は、ユーザによって撮像指示が操作部110で操作されるまで行われる。
撮像指示が操作部110で操作されると(ステップS102でYES)、基準画像を撮像し、更新する(ステップS103)。このようにユーザにより撮像指示が操作されるまでの間、ユーザはフレーミング動作で画像処理装置100の位置を移動させている。そして、撮像指示が操作された後は画像処理装置100の位置を確定させるため、撮像指示が操作された前後で撮像したステレオ方式参照画像と基準画像との間にはユーザのフレーミング動作に応じた視差が発生している。
続いて、焦点位置を変えて、DFD方式参照画像を撮像する(ステップS104)。撮像時の焦点位置は、被写体距離が1mと20mに対応する焦点位置としている。
次いで、ステレオ方式距離画像生成部210によるステレオ方式距離画像生成処理によって、異なる視差を有する複数の画像からステレオ方式距離画像が生成される(ステップS105)。このステップS105は、撮像手段により撮像された異なる視差を有する複数の画像からステレオ方式距離画像を生成する第1距離画像生成手段に対応する。
さらに、DFD方式距離画像生成部224によるDFD方式距離画像生成処理によって、撮像手段により撮像された画像内の各位置で合焦度が異なる複数の画像からDFD方式距離画像が生成される(ステップS106)。このステップS106は、撮像手段により撮像された画像内の各位置で合焦度が異なる複数の画像からDFD方式距離画像を生成する第2距離画像生成手段に対応する。
そして、生成されたステレオ方式距離画像とDFD方式距離画像は、距離画像合成部243により合成され、合成距離画像が生成され(ステップS107)、本処理を終了する。ここでは、上述したように合成係数が算出され、合成距離画像を生成するので、このステップS107は、算出手段及び生成手段に対応する。
図11は、図9におけるステップS105のステレオ方式距離画像生成処理の手順を示すフローチャートである。
図11において、まず視差画像を生成する(ステップS201)。上述したように、視差画像は、逆写像処理部204,205でステレオ平行化された左右画像を、ステレオ対応点探索部206で処理することで生成される。
次いで、AF測距枠301でオートフォーカスされた被写体の被写体距離Z0と視差量d0から、投影中心の並進移動量を取得する(ステップS202)。上記式17から、並進移動量T=(Z0d0/f)となる。なお、被写体距離Z0は、ステップS101の撮像前に予めAF評価値取得部108によるコントラストAFで算出されている。また、視差量d0は、ステップS201の視差画像から抽出される。
そして、視差画像の画素ごとに式17を適用することで距離画像を生成し(ステップS203)、本処理を終了する。
図12は、図9におけるステップS106のDFD方式距離画像生成処理の手順を示すフローチャートである。
図12において、DFD方式距離画像生成部224は、基準画像及び参照画像のうちから、画像の合焦度を示す合焦評価値を求めるための処理に用いる処理対象画像を指定する(ステップS303)。なお、ここではDFD方式距離画像生成部224は、基準画像及び参照画像のすべてを結像光学系101の焦点位置及び絞り値の一方が異なる画像からなる処理対象画像として順次指定してゆくものとする。
次いで、DFD方式距離画像生成部224は、合焦評価値演算処理を実行し、処理対象画像について画像内の各領域または位置での合焦評価値をそれぞれ求める(ステップS304)。
ここで、画像内の各領域とは、撮像画像を複数の領域に(XY平面上で)2次元的に分割した領域を指すものとする。各領域の最小単位は1画素となる。なお、画像内の位置とは、その処理対象画像を撮像した撮像素子内に含まれる画素エリア(または単一の画素)の、撮像素子内でのXY位置を示すものとする。合焦評価値を求める領域または位置は、全ての処理対象画像に渡り共通している。以下の説明では、領域または位置を、単に領域と表現する。
またステップS304では、DFD方式距離画像生成部224は、処理対象画像での各領域または位置と合焦評価値との対応関係を示す合焦評価値マップを生成する。各々の合焦評価値は、画像の合焦度が高いほど高い値を示すものとする。
次いで、DFD方式距離画像生成部224は、全ての処理対象画像で合焦評価値演算処理が終了したか否かを判別する(ステップS305)。
ステップS305の判別の結果、全ての処理対象画像で合焦評価値演算処理が終了していないときは(ステップS305でNO)、上記ステップS303に戻る。
一方、ステップS305の判別の結果、全ての処理対象画像で合焦評価値演算処理が終了したときは(ステップS305でYES)、以下の処理を行う。
すなわち、DFD方式距離画像生成部224は、基準画像に対応する第1の合焦評価値マップと、参照画像に対応する第2の合焦評価値マップと、各々の画像の撮像時の焦点位置情報とを用いる。これらを用いることで、DFD方式距離画像生成部224は、基準画像内の各領域に対応する被写体距離をそれぞれ推測し(ステップS306)、本処理を終了する。
具体的にDFD方式距離画像生成部224は、第1の合焦評価値マップと第2の合焦評価値マップとの間で対応する画像上の領域ごとに合焦評価値の差分をとって、各々の領域で合焦評価値の変化量を求める。なお、参照画像が複数存在する場合には、DFD方式距離画像生成部224は各々の参照画像と基準画像との間で合焦評価値の変化量を求めるものとする。
ここで、基準画像内のある領域において、注目被写体が合焦状態であって、参照画像がぼけているケースを考える。このケースでは、第1の合焦評価値マップで注目被写体に対応する領域の合焦評価値は高い値を示すが、第2の合焦評価値マップで注目被写体に対応する領域の合焦評価値は第1の合焦評価値マップと比べて非常に低い値を示す。
そのため、このケースでは、注目被写体が対応する領域の合焦評価値の変化量は大きな値を示すこととなる。
一方、基準画像及び参照画像の両方で注目被写体がぼけているケースでは、第1の合焦評価値マップ及び第2の合焦評価値マップの両方で、注目被写体に対応する領域の合焦評価値の値がいずれも小さくなる。
そのため、このケースでは、注目被写体が対応する領域の合焦評価値の変化量は相対的に小さな値を示す。
よって、基準画像での合焦評価値が高く、参照画像では合焦評価値が大きく減少する領域は、焦点位置の移動により合焦状態から非合焦状態となった箇所と推測できる。
逆に、基準画像での合焦評価値が低く、参照画像では合焦評価値が大きくなる領域は、参照画像の焦点位置で合焦状態となった箇所と推測できる。
このとき、基準画像と参照画像との間で焦点位置の移動方向とその移動量とを参照すれば、注目する被写体の存在する領域が、基準画像の焦点位置を基準として前ピンまたは後ピンのいずれかにあるかが判別できる。また基準画像の焦点面とどの程度離れているのかを、DFD方式距離画像生成部224が判別できる。
同様に、基準画像での合焦評価値が低く、参照画像との間で合焦評価値の変化量も小さい領域は、基準画像での焦点位置と参照画像での焦点位置とのいずれもが合焦面から遠い箇所と推測できる。
また、基準画像での合焦評価値が高く、参照画像との間で合焦評価値の変化量が小さい領域は、基準画像での焦点位置および参照画像での焦点位置の両方でほぼ合焦状態にある箇所と推測できる。
上述したステップS306でのDFD方式距離画像生成部224は、上記の推測結果に基づいて、基準画像内の各領域に対応する被写体距離の情報をそれぞれ生成する。
例えば、DFD方式距離画像生成部224は、合焦評価値の高さと変化量とに基づいて、基準画像の焦点位置で合焦した被写体との相対距離またはその度数で各々の被写体距離を表現してもよい。
または、DFD方式距離画像生成部224は、画像の各位置で合焦状態となる画像を特定し、合焦状態となる画像に対応する被写体距離の値をそのまま被写体距離を表現してもよい。
図13は、図12におけるステップS304の合焦評価値演算処理の手順を示すフローチャートである。
図13においては、DFD方式距離画像生成部224が、処理対象画像に各々の周波数特性が異なる一対のエッジ抽出処理を施すとともに、これらのエッジ抽出処理で求まる一対のエッジ量の差分を用いて合焦評価値を求める。
まず、DFD方式距離画像生成部224は、処理対象画像に第1のエッジ抽出処理を施し、抽出したエッジ成分の強度と画像での位置との対応関係を示す第1エッジ画像を生成する(ステップS401)。
次いで、DFD方式距離画像生成部224は、ステップS401での抽出結果よりも低域側の周波数成分が含まれるように、処理対象の画像に第2のエッジ抽出処理を施す。そして、DFD方式距離画像生成部224は、抽出したエッジ成分の強度と画像での位置との対応関係を示す第2エッジ画像を生成する(ステップS402)。
そして、DFD方式距離画像生成部224は、第1エッジ画像及び第2エッジ画像を、それぞれ例えば20画素×20画素程度のサイズに領域分割するとともに、各領域ごとにそれぞれ特徴量を求める(ステップS403)。
次いで、DFD方式距離画像生成部224は、第1エッジ画像の各領域の特徴量と、第2エッジ画像の各領域の特徴量とを、対応する領域ごとに差分を求めることで(ステップS404)、その変位を求める。
DFD方式距離画像生成部224は、ステップS404で求めた各領域の特徴量の差分値を、第1エッジ画像または第2エッジ画像から求めたエッジ量を用いて正規化する(ステップS405)。
DFD方式距離画像生成部224は、ステップS405で求めた全ての正規化された特徴量の平均値を求め、この平均値を正規化された特徴量の基準値として設定する(ステップS406)。ただし、既に別の入力画像を用いて、この基準値が求まっている場合には、DFD方式距離画像生成部224は、その値を基準値としてもよい。
DFD方式距離画像生成部224は、各々の領域の正規化された特徴量(ステップS405)と正規化された特徴量の基準値(ステップS406)とを比較し、各領域の合焦評価値を求め(ステップS407)、本処理を終了する。
以上説明した各ステップでの処理に関して、図14を用いて説明する。
図14は、図13の合焦評価値演算処理の処理概要を説明するための図である。
まず、ステップS401について、DFD方式距離画像生成部224は、以下の(A1)、(A2)の各処理を実行する。
(A1)DFD方式距離画像生成部224は、処理対象画像に対して、ガウシアン型平滑化フィルタによるフィルタ演算を行う。一例として、ステップS401でのDFD方式距離画像生成部224は、P(r)∝exp(−r2/2σ2)の平滑化フィルタを用いるものとする。
なお、ステップS401での平滑化フィルタの強度とフィルタ半径とに関係するパラメータσの値は任意に設定できる。この処理により、図14に示されるように、元画像から平滑化された第1ボケ画像が生成される。以下の説明では、パラメータσを「フィルタ半径」という。
(A2)DFD方式距離画像生成部224は、元画像の各画素値から第1ボケ画像で対応する位置にある画素値をそれぞれ減算するとともに、減算後の画素値の絶対値をとる。これにより、DFD方式距離画像生成部224は、元画像を平滑化したときに失われるエッジ成分を抽出することで、図14に示されるような第1エッジ画像を生成する。
ステップS402で生成される第2エッジ画像も同様に生成されるが、ステップS401におけるA1の処理と比較して、平滑化フィルタのフィルタ半径σが大きい平滑化が行なわれる。
従って、ステップS402では、A1の処理と比べて平滑化の度合いが強くなる。すなわち、第2ボケ画像は、第1ボケ画像と比べて高域側の周波数成分がより少なく、また低域側の周波数成分がより多く含まれるので、第1ボケ画像よりもエッジがなまった状態となる。
ここで、画像のピントが合っていない領域では、フィルタ半径σの値を少し変えてもエッジ量はほとんど変化しない。
一方、画像のピントが合っている領域では、フィルタ半径σの値を少し変えただけでもエッジ量は大きく変化する。
そこで、ステップS401,402で、フィルタ半径σの値を互いに近い値に設定すると、後述の特徴量の差分をとったときに合焦領域と非合焦領域とでエッジ量の変位の振る舞いが大きく異なり、合焦度の測定が比較的容易となる。
一例として、ステップS401ではフィルタ半径σを0.5とし、ステップS402ではフィルタ半径σの値を0.6としてもよい。
次に、ステップS403の処理の一例について説明する。ステップS403において、合焦度算出部27は、各エッジ画像の領域毎にその領域に含まれる全画素のエッジ量を積算し、この積算値を領域の画素数で割った値を特徴量として算出する。すなわち、ここでの特徴量は領域内のエッジ量の平均値である。これにより、各領域の特徴をそれぞれ1つの値で表すことができる。
次に、ステップS404の処理について説明する。上述したように、ピントが合っていない領域では、フィルタ半径σの値を少しだけ変えてもエッジ量はほとんど変化しないが、画像のピントが合っている領域では、フィルタ半径σの値を少し変えただけでもエッジ量は大きく変化する。
そのため、平滑化フィルタのフィルタ半径を小さい範囲で変化させたときの各領域におけるエッジ量の変位をみれば、領域ごとの合焦度の強弱を判定できることが分かる。
次に、ステップS405の処理について説明する。例えば、DFD方式距離画像生成部224は、領域ごとの差分値を、第1エッジ画像で対応する領域の特徴量で割ることにより、差分値を正規化してもよい。
なお、ここでの特徴量として、第2エッジ画像で対応する領域の特徴量や、同じ領域における第1エッジ画像の特徴量と第2エッジ画像の特徴量との平均値を用いてもよい。
そして、DFD方式距離画像生成部224は、S405の正規化後の値を各々の領域における合焦量とする。
上記のステップS404の段階では、画像に含まれるエッジ量の値が元々大きい箇所でのエッジの変位と、画像に含まれるエッジ量の値が小さい箇所でのエッジの変位をそのまま比べると、前者の方の変位量が大きくなる可能性が高い。なお、エッジ量の値が大きい箇所は、高輝度なので画素値が大きい箇所であり、エッジ量の値が小さい箇所は、低輝度なので画素値が小さい箇所となっている。
すなわち、画像はボケていても輝度差が大きな箇所では合焦度を高く評価してしまう可能性がある。そのため、ステップS405でのDFD方式距離画像生成部224は、エッジ画像のエッジ量で差分値を正規化することで、画像の輝度差が合焦度に及ぼす影響を抑制している。
次に、ステップS407の処理について説明する。ステップS407では、各々の領域の正規化された特徴量と正規化された特徴量の基準値とを比較するが、この比較には、例えば、合焦量と基準値との減算値または除算値を用いてもよい。
このようにして合焦評価値を求めることにより、DFD方式距離画像生成部224は合焦評価値マップを取得できる。なお、異なる画像から求めた合焦評価値マップを比較する場合、DFD方式距離画像生成部224は、画像間の輝度差を考慮して必要に応じて合焦評価値マップの正規化を行うものとする。
以上説明した第1の実施の形態によれば、結像光学系の絞り値や測定距離範囲の影響で、撮像する焦点位置の数が増大したり、距離精度が低下したりすることがない。
[第2の実施の形態]
第2の実施の形態では、合成係数Kの決定方法が第1の実施の形態と異なっている。
第2の実施の形態における距離画像合成部243は、式4を用いて距離画像を合成することは第1の形態と同じであり、合成係数Kは以下の式18で決定する。
距離画像合成部243は、コントラストAFでフォーカスが合った被写体を主要被写体として選択し、主要被写体の被写界深度に応じて合成係数K1を決定する。
例えば、許容錯乱円径を0.03328mm、絞り値を2.8、焦点距離を50mmとし、主要被写体の被写体距離を9mとすると、被写界深度は式1〜式3により、6.80mとなる。
図15は、被写界深度Dに対するK1を決定するグラフを示す図である。
図15において、例えば主要被写体の被写界深度が6.80mであれば合成係数K1は1.0となる。また、被写界深度が4.0m〜5.0mの場合は、K1の値が0から1へと単調増加する。
また、距離画像合成部243は、コントラストAFでフォーカスが合った被写体を主要被写体として選択し、主要被写体の被写界深度の範囲に応じて合成係数K2を決定する。
図16は、K2を決定するグラフを示す図である。
図16において、主要被写体402はコントラストAFでフォーカスが合った被写体である。
例えば、許容錯乱円径を0.03328mm、絞り値を2.8、焦点距離を50mmとし、主要被写体402の被写体距離を9mとすると、式1〜式3から、範囲403が主要被写体402の被写界深度の範囲となる。
合成係数K2を決定するために必要となる距離Zについては、ステレオ方式距離画像209を参照する。このように、被写界深度の範囲でとり得る値が、この範囲外でとり得る値と比較して大きくなる値を用いて合成係数Kが算出される。
以上説明した第2の実施の形態によれば、結像光学系の絞り値や測定距離範囲の影響で、撮像する焦点位置の数が増大したり、距離精度が低下したりすることがない。さらに、ステレオ方式距離画像について、主要被写体の被写界深度から外れた距離範囲がDFD方式距離画像に切り替わるので、そのような距離範囲の距離精度を向上させることができる。
[第3の実施の形態]
第3の実施の形態における画像処理装置100は、AF測距枠の数と位置、システム制御部107の動作を説明するためのフローチャート、距離画像合成部243が第1の実施の形態と異なっている。
図17は画面上におけるAF測距枠の位置を説明するための図である。
図17において、AF測距枠として、主要被写体用の中央測距枠501、非主要被写体用の左測距枠502、及び非主要被写体用の右測距枠503が示されている。第3の実施の形態では、これらの各AF測距枠が用いられる。
図18は、図1におけるシステム制御部107により実行される合成距離画像生成処理の手順を示す図である。
図18において、まずDFD方式参照画像を撮像する(ステップS501)。ここでの撮像での焦点位置は、被写体距離が1mと20mに対応する位置である。
次いで、主要被写体用の中央測距枠501でコントラストAFされた焦点位置で基準画像を撮像する(ステップS502)。
続けて、非主要被写体用の左測距枠502でコントラストAFされた焦点位置で基準画像を撮像する(ステップS503)。さらに非主要被写体用の右測距枠503でコントラストAFされた焦点位置で基準画像を撮像する(ステップS504)。
次いで、表示部109にユーザに視点の移動を促す内容を表示する(ステップS505)。そして、主要被写体用の中央測距枠501でコントラストAFされた焦点位置でステレオ方式参照画像を撮像する(ステップS506)。
続けて、非主要被写体用の左測距枠502でコントラストAFされた焦点位置でステレオ方式参照画像を撮像する(ステップS507)。さらに非主要被写体用の右測距枠503でコントラストAFされた焦点位置でステレオ方式参照画像を撮像する(ステップS508)。
そして、中央測距枠501の焦点位置の基準画像とDFD方式参照画像を用いて、DFD方式距離画像を生成する(ステップS509)。
さらに、主要被写体用の中央測距枠501におけるステレオ方式距離画像を生成する(ステップS510)。
続けて、非主要被写体用の左測距枠502におけるステレオ方式距離画像を生成する(ステップS511)。さらに非主要被写体用の右測距枠503におけるステレオ方式距離画像を生成する(ステップS512)。
生成された3つの測距枠の各焦点位置におけるステレオ方式距離画像とDFD方式距離画像を、距離画像合成部243を用いて合成して、合成距離画像を生成し(ステップS513)、本処理を終了する。
距離画像の合成は、以下の式19〜式24を用いて行われる。
式19〜式24での記号の意味は以下の通りである。
(x,y):画素位置
ZMIX(x,y):合成距離画像
ZMIX_L(x,y)、ZMIX_R(x,y):左右の中間合成距離画像
ZSTR_C(x,y):中央測距枠501のステレオ方式距離画像
ZSTR_L(x,y):左測距枠502のステレオ方式距離画像
ZSTR_R(x,y):右測距枠503のステレオ方式距離画像
ZDFD(x,y):DFD方式距離画像
K_C:中央測距枠501の合成係数
K_L:左測距枠502の合成係数
K_R:右測距枠503の合成係数
図19は、K2_C、K2_L、K2_Rを決定するグラフを示す図である。
図19において、主要被写体602は中央測距枠501におけるコントラストAFでフォーカスが合った被写体である。非主要被写体605は左測距枠、非主要被写体608は右測距枠におけるコントラストAFでフォーカスが合った被写体である。
例えば、許容錯乱円径を0.03328mm、絞り値を2.8、焦点距離を50mmとし、主要被写体602の被写体距離を9m、非主要被写体605の被写体距離を15m、非主要被写体608の被写体距離を1mとする。このとき、式1〜式3から、各被写体の被写界深度の範囲は範囲603,606,609となる。
図20は、K1_C、K1_LRを決定するグラフを示す図である。
非主要被写体の場合は主要被写体の場合に比べて、ステレオ方式優先となる被写界深度が主要被写体より深くなっている。
例えば、許容錯乱円径を0.03328mm、絞り値を2.8、焦点距離を50mmとし、主要被写体602の被写体距離を9mとすると、式1〜式3から、主要被写体602の被写界深度は、6.80mとなる。この場合、対応する合成係数K1_Cは、図20に示されるように1.0となる。
また、非主要被写体605の被写体距離を15m、非主要被写体608の被写体距離を1mとすると、式1〜式3から、各非主要被写体の被写界深度は、24.4m、0.075mとなる。この場合、非主要被写体605に対応する合成係数K1_LRは、1.0であり、非主要被写体608に対応する合成係数K1_LRは、0.0となる。このように、主要被写体とは異なる非主要被写体の被写界深度をさらに用いて合成係数が算出される。
また、第3の実施の形態では、非主要被写体に対応する他の第1距離画像として、左測距枠502のステレオ方式距離画像、及び右測距枠503のステレオ方式距離画像がさらに生成される。また、非主要被写体の被写界深度に応じて他の合成係数K_L、K_Rがさらに算出される。
そして、左測距枠502のステレオ方式距離画像、右測距枠503のステレオ方式距離画像とDFD方式距離画像を他の合成係数を用いて合成することで、左右の中間合成距離画像としてZMIX_L(x,y)、ZMIX_R(x,y)が生成される。
この左右の中間合成距離画像と中央測距枠501のステレオ方式距離画像とを合成係数K_Cを用いてさらに合成することで合成距離画像が生成される。
以上説明した第3の実施の形態によれば、結像光学系の絞り値や測定距離範囲の影響で、撮像する焦点位置の数が増大したり、距離精度が低下したりすることがない。
さらに、主要被写体の被写界深度から外れていて、かつ被写界深度が深くなる距離範囲において、DFD方式ではなくステレオ方式を優先するため、撮像する焦点位置の数を大きく増大させることなく、そのような距離範囲の距離精度を向上させることができる。
以上、本発明の好ましい実施の形態について説明したが、本発明はこれらの実施の形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
(他の実施の形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。