以下、本発明の実施の形態につき、図面を参照して具体的に説明する。参照される各図において、同一の部分には同一の符号を付し、同一の部分に関する重複する説明を原則として省略する。
図1、図2(a)〜(c)及び図3を参照して、本発明の実施形態に係る撮像装置1(図5参照)にて利用されるレンズ10Lの特性を説明する(撮像装置1は、図1、図2(a)〜(c)及び図3において不図示)。レンズ10Lは、比較的大きな所定の軸上色収差を有している。従って、図1に示す如く、点光源300からレンズ10Lに向かう光301は、レンズ10Lによって青色光301B、緑色光301G及び赤色光301Rに分離され、青色光301B、緑色光301G及び赤色光301Rは、互いに異なる結像点302B、302G及び302R上に結像する。青色光301B、緑色光301G及び赤色光301Rは、夫々、光301の青、緑及び赤成分である。以下、特に記述なき限り、軸上色収差とは、レンズ10L(及び後述する光学系10)の軸上色収差を指す。
図2(a)等において、符号11は、撮像装置1にて利用される撮像素子を表している。撮像素子11は、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの固体撮像素子である。撮像素子11は、いわゆる単板方式のイメージセンサであり、撮像素子11としての1枚のイメージセンサにおける各受光画素の前面には、光の赤成分のみを透過させる赤フィルタ、光の緑成分のみを透過させる緑フィルタ、及び、光の青成分のみを透過させる青フィルタの何れかが配置されている。赤フィルタ、緑フィルタ及び青フィルタの配列は、例えば、ベイヤ配列である。
レンズ10Lの中心から結像点302B、302G及び302Rまでの距離を、図3に示す如く、それぞれXB、XG及びXRにて表す。そうすると、レンズ10Lが有する軸上色収差により、不等式「XB<XG<XR」が成立する。また、レンズ10Lの中心から撮像素子11までの距離をXISにて表す。図3では、「XB<XG<XR<XIS」が成立しているが、光源300とレンズ10Lの中心までの距離310(図1参照)が変化することによって、距離XB、XG及びXRと距離XISとの大小関係は変化する。
図2(a)〜(c)は、被写体距離とも言うべき距離310が変化することによって結像点302B、302G及び302Rの位置が変化する様子を示した図である。図2(a)は、距離310が比較的小さな距離であって「XB=XIS」が成立する時の、結像点302B、302G及び302Rと撮像素子11の位置関係を示している。図2(b)は、距離310が図2(a)の状態から増大することによって「XG=XIS」が成立する時の、結像点302B、302G及び302Rと撮像素子11の位置関係を示している。図2(c)は、距離310が図2(b)の状態から更に増大することによって「XR=XIS」が成立する時の、結像点302B、302G及び302Rと撮像素子11の位置関係を示している。
距離XISが距離XB、XG、XBと一致する時におけるレンズ10Lの位置は、青色光301B、緑色光301G、赤色光301Rに対するレンズ10Lの合焦位置である。従って、「XB=XIS」、「XG=XIS」、「XR=XIS」が成立する場合においては、夫々、青色光301B、緑色光301G、赤色光301Rに対して完全にピントが合った状態の画像が撮像素子11から得られる。但し、青色光301Bに対して完全にピントが合った状態の画像においては、緑色光301G及び赤色光301Rの像がぼける。緑色光301G及び赤色光301Rに対して完全にピントが合った状態の画像についても同様である。また、「XB=XIS」、「XG=XIS」及び「XR=XIS」の何れもが成立しない場合に撮像素子11から得られた画像上においては、青色光301B、緑色光301G及び赤色光301Rの像が全てぼける。
撮像素子11の撮像面上に形成される青色光301B、緑色光301G及び赤色光301Rの画像の半径を、夫々、YB、YG及びYRにて表す。軸上色収差の特性を含むレンズ10Lの特性は撮像装置1の設計段階で予め分かっているともに撮像装置1は距離XISをも当然に認識可能である。よって、撮像装置1は、距離310が分かれば、レンズ10Lの特性と距離XISを用いて半径YB、YG及びYRを推定可能である。また、距離310が分かれば、青色光301B、緑色光301G及び赤色光301Rの画像の点広がり関数(Point Spread Function)が決まるので、点広がり関数の逆関数を用いて、それらの画像のぼけを除去することも可能である。
尚、距離XISを変化させることも可能ではあるが、以下の説明では、説明の簡略化上、特に記述なき限り距離XISは一定距離に固定されているものとする。
或る被写体と撮像装置1との間における実空間上の距離(厳密には、或る被写体とレンズ10Lの中心との間における実空間上の距離)を被写体距離と呼ぶ。点光源300が注目した被写体であると考えれば、距離310は、注目した被写体にとっての被写体距離である。
図4に、被写体距離と撮像素子11から得られた原画像のB、G及びR信号のぼけ半径との関係を示す。ここにおける原画像とは、撮像素子11から得られたRAWデータによって表される画像を指す。B、G及びR信号とは、夫々、青色光301Bに対応する画像上の青色成分を表す信号、緑色光301Gに対応する画像上の緑色成分を表す信号及び赤色光301Rに対応する画像上の赤色成分を表す信号を指す。
原画像をB、G及びR信号にて表現することができる。この場合、原画像を、B信号のみから形成される青画像とG信号のみから形成される緑画像とR信号のみから形成される赤画像とに分離することができる。原画像のB、G及びR信号のぼけ半径とは、夫々、青画像、緑画像及び赤画像中の、軸上色収差に由来するぼけの半径を指す。即ち、原画像のB、G及びR信号のぼけ半径は、夫々、点光源300を被写体として捉えた時の半径YB、YG及びYRに相当する。
図4において、曲線601B、601G及び601Rは、夫々、原画像のB、G及びR信号におけるぼけ半径の被写体距離依存性を表している。図4(及び後述の図11等)の、被写体距離とぼけ半径との関係を表すグラフにおいて、横軸及び縦軸は夫々被写体距離及びぼけ半径を表し、横軸上を左から右に向かうにつれて対応する被写体距離は増大すると共に縦軸上を下から上に向かうにつれて対応するぼけ半径は増大する。
被写体距離DDB、DDG及びDDRは、夫々、図2(a)に対応する「XB=XIS」、図2(b)に対応する「XG=XIS」及び図2(c)に対応する「XR=XIS」が成立する場合における被写体距離である。従って、「DDB<DDG<DDR」が成立する。
曲線601Bに示す如く、原画像のB信号のぼけ半径は、被写体距離が距離DDBである時に最小となり、被写体距離が距離DDBを起点として減少又は増大するにつれて増大する。同様に、曲線601Gに示す如く、原画像のG信号のぼけ半径は、被写体距離が距離DDGである時に最小となり、被写体距離が距離DDGを起点として減少又は増大するにつれて増大する。同様に、曲線601Rに示す如く、原画像のR信号のぼけ半径は、被写体距離が距離DDRである時に最小となり、被写体距離が距離DDRを起点として減少又は増大するにつれて増大する。
曲線601B、601G及び601Rの形状は、軸上色収差の特性を含むレンズ10Lの特性から定まり、撮像装置1は、曲線601B、601G及び601Rの形状を予め認識している。即ち、撮像装置1にとって曲線601B、601G及び601Rは既知であり、撮像装置1は、原画像のB、G及びR信号におけるぼけ半径と被写体距離との関係を予め認識している。以下、曲線601B、601G及び601Rを、「原画像の合焦曲線」と呼ぶ。基準半径rREFは、許容錯乱円の半径であり、視覚的な合焦/非合焦の境界を表す。ぼけ半径が基準半径rREF以下である時、そのぼけは視覚的に全く或いは殆ど認識されない。B、G及びR信号のぼけ半径が基準半径rREF以下になる被写体距離の範囲は被写界深度と呼ばれる。
図5に、本実施形態に係る撮像装置1の概略全体ブロック図を示す。撮像装置1は、静止画像を撮影及び記録可能なデジタルスチルカメラ、又は、静止画像及び動画像を撮影及び記録可能なデジタルビデオカメラである。尚、撮影と撮像は同義である。
撮像装置1は、光学系10と、撮像素子11と、AFE(Analog Front End)12と、主制御部13と、内部メモリ14と、表示部15と、記録媒体16と、操作部17と、を備えている。操作部17には、シャッタボタン17aが備えられている。尚、本実施形態では、表示部15が撮像装置1に設けられていることを想定しているが、表示部15は、撮像装置1の外部に設けられた表示装置であってもよい。
図6に、光学系10の内部構成図を示す。光学系10は、光学系10の焦点距離を調整して光学ズームを行うためのズームレンズ30及び焦点位置を調整するためのフォーカスレンズ31を含むレンズ群と、撮像素子11への入射光量を調節するための絞り32と、を備え、所望の画角を有し且つ所望の明るさを有する画像を撮像素子11の撮像面に結像させる。主制御部13から与えられる駆動信号に従って、ズームレンズ30の位置、フォーカスレンズ31の位置及び絞り32の開口量が調節され、これによって光学系10の焦点距離、焦点位置及び絞り値が調節される。光学系10を単体のレンズとして捉えたものが上述のレンズ10Lである。従って、光学系10は、レンズ10Lが有する軸上色収差と同じ軸上色収差を有する。
撮像素子11は、光学系10を介して入射した被写体を表す光学像(被写体像)を光電変換し、該光電変換によって得られた電気信号をAFE12に出力する。より具体的には、撮像素子11は、マトリクス状に二次元配列された複数の受光画素を備え、各受光画素は露光時間(即ち露光期間の長さ)に応じた電荷量の信号電荷を蓄える。蓄えた信号電荷の電荷量に比例した大きさを有する各受光画素からのアナログ信号は、撮像装置1内で生成される駆動パルスに従って順次AFE12に出力される。以下の説明において、特記なき限り、露光とは、撮像素子11における露光を指す。
AFE12は、撮像素子11から出力されるアナログ信号を増幅し、増幅されたアナログ信号をデジタル信号に変換してから出力する。また、AFE12の信号増幅における増幅度は、AFE12の出力信号レベルが最適化されるように、光学系10の絞り値に対する調整と連動して調整される。尚、AFE12の出力信号をRAWデータとも呼ぶ。RAWデータを、フレームメモリとしても機能する内部メモリ14に一時記憶させることができる。
上述したように、撮像素子11は単板方式のイメージセンサである。そして、撮像素子11におけるカラーフィルタ配列がベイヤ配列であるとすると、RAWデータによって表される二次元画像には、R信号がベイヤ配列に従ってモザイク状に配置される(G信号及びB信号についても同様)。
主制御部13は、RAWデータに対して周知のデモザイキング処理を実行することにより、RGB形式の画像データ、即ち、原画像のR、G及びB信号を生成する。デモザイキング処理後の原画像を形成する1つ1つの画素にはR、G及びB信号の全てが割り当てられる。或る画素についてのR、G及びB信号は、夫々、その画素の赤、緑及び青の強度を表す色信号である。以下、R、G及びB信号を総称してRGB信号と言うことがある。
また、主制御部13は、表示部15の表示内容を制御する表示制御手段としての機能をも備え、表示に必要な制御を表示部15に対して行う。更に、主制御部13は、画像処理によって撮影画像の被写界深度を撮影後に調整する機能を備える。この機能の詳細についは後述される。
内部メモリ14は、SDRAM(Synchronous Dynamic Random Access Memory)等にて形成され、撮像装置1内で生成された各種データを一時的に記憶する。表示部15は、液晶ディスプレイパネル等から成る表示装置であり、主制御部13の制御の下、撮影された画像や記録媒体16に記録されている画像などを表示する。記録媒体16は、SD(Secure Digital)メモリカード等の不揮発性メモリであり、主制御部13による制御の下、撮影画像などを記憶する。
操作部17は、外部からの操作を受け付ける。操作部17に対する操作内容は、主制御部13に伝達される。シャッタボタン17aは、静止画像の撮影及び記録を指示するためのボタンである。シャッタボタン17aを押下することによって静止画像の撮影及び記録が指示される。また、シャッタボタン17aは、2段階の押下操作が可能となっており、撮影者がシャッタボタン17aを軽く押し込むと、シャッタボタン17aは半押しの状態となり、その状態から更にシャッタボタン17aを押し込むとシャッタボタン17aは全押しの状態となる。
以下、撮像装置1にて実行される動作の例及び撮像装置1の詳細構成の例を、第1〜第6実施例として説明する。矛盾なき限り、或る実施例で説明した事項を、他の実施例に適用することができる。
また、本明細書では、記述の簡略化上、記号を用いることによって、その記号に対応する名称を略記又は省略することがある。例えば、本明細書において、合焦色画像Iif(図9及び図10参照)は、単に「画像Iif」又は「Iif」と表現されうる。
[第1実施例]
まず、第1実施例について説明する。図7は、第1実施例に係る、静止画像撮影時の撮像装置1の動作手順を表すフローチャートである。この動作では、ステップS10〜S19の処理が順次実行される。これらの処理の内容を説明する。
まず、ステップS10にて、主制御部13は、シャッタボタン17aが半押しの状態になっているかを確認し、それが半押しの状態になっていることを確認するとステップS11にてプリ露光を実行する。シャッタボタン17aの押下に伴って撮影されるべき1枚の静止画像を、撮影対象画像と呼ぶ。プリ露光とは、撮影対象画像の露光に先立って行われる露光を指す。ステップS12において、主制御部13は、プリ露光にて得られるAFE12の出力信号レベルから適正露光時間TOPを決定する。
一般には、プリ露光にて得られるAFE12の出力信号レベルから絞り値と適正露光時間が決定されるが、第1実施例では、その出力信号レベルに関わらず、撮影対象画像に対する絞り値を開放値に設定する。これにより、受光量が最大化され、撮影対象画像のS/N比(信号対雑音比)が向上する。また、絞り値が固定されたとしても、被写界深度の調整は撮影後の画像処理によって可能であるため問題はない(調整の詳細は後述)。
但し、一般的方法と同様、プリ露光にて得られるAFE12の出力信号レベルから絞り値と適正露光時間TOPを決定するようにしてもよい。この場合、開放値と異なる絞り値が設定されうる。
また、被写界深度の調整が撮影後に可能であることから、ここでは、フォーカスレンズ31の駆動によるオートフォーカス制御を実行しない。これにより、シャッタボタンの半押し後にオートフォーカス制御を行う従来の撮像装置(図33参照)と比べて、より短時間で撮影対象画像の撮影を行うことができ、所謂シャッタチャンスを逃す可能性が低減される。
適正露光時間TOPの決定後、ステップS13にて、主制御部13は、シャッタボタン17aが全押しの状態になっているかを確認し、それが全押しの状態になっていることを確認すると、ステップS14にて本露光を行う。本露光とは、上記の如く設定された適正露光時間TOPと絞り値にて実施される露光を指す。本露光によって得られた光学像は光電変換によって画像データ、即ち撮影対象画像のRAWデータに変換され、このRAWデータは、フレームメモリとして機能する内部メモリ14に記録される。
その後、ステップS15において、主制御部13は、内部メモリ14に記録された撮影対象画像のRAWデータに対して被写界深度拡大処理を施す。撮影対象画像のRAWデータは上述の原画像のRAWデータに相当し、軸上色収差に由来して、原画像の被写界深度は非常に浅い。被写界深度拡大処理では、原画像の被写界深度を拡大することによって、被写界深度が比較的深い被写界深度拡大画像(以下、深度拡大画像という)を生成する。続くステップS16において、主制御部13は、原画像の各画素位置における被写体の被写体距離を推定し、原画像の各画素位置における推定被写体距離を二次元的に配列した被写体距離マップを生成する。深度拡大画像と被写体距離マップの生成手法については後述する。尚、ステップS15における被写界深度拡大処理とステップS16における被写体距離推定処理を並行して実行することも可能である。
ステップS17において、主制御部13は、深度拡大画像の画質を調整するための画質調整処理を実行する。画質調整処置は、例えば、ガンマ補正処理、ニー補正処理、ホワイトバランス調整処理、ブラックバランス調整処理、ノイズ除去処理若しくはエッジ強調処理又はそれらの組み合わせである。画質調整処理後の深度拡大画像は、表示部15にて表示される。
ステップS18において、主制御部13は、画質調整処理後の深度拡大画像の画像データを、JPEG(Joint Photographic Experts Group)等の所定の圧縮方式を用いて圧縮する。この際、被写体距離マップを表すデータも圧縮するようにしてもよい。
その後、ステップS19において、主制御部13は、画質調整処理及び圧縮処理後の深度拡大画像の画像データと、被写体距離マップを表すデータとを、互いに関連付けて記録媒体16に記録する。例えば、記録媒体16に1つの画像ファイルを作成し、その画像ファイルの本体領域及びヘッダ領域に、夫々、前者の画像データと後者のデータを保存する。ヘッダ領域には、対応する画像に対する付加情報(撮影時の焦点距離、撮影日時など)が格納される。Exif(Exchangeable image file format)のファイルフォーマットに準拠する場合、ヘッダ領域はExifタグ又はExif領域とも呼ばれる。画像ファイルのファイルフォーマットを任意の規格に準拠させることが可能である。また、画像ファイルの本体領域に、原画像の画像データを記録しておくことも可能である。この場合においても、原画像の画像データと被写体距離マップを表すデータとは関連付けられて記録媒体16に記録されることとなる。
被写体距離マップの利用方法は、第4実施例などにおいて後述される。被写体距離マップの利用が予定されていない場合、被写体距離マップを生成するための処理を省略することも可能である。
尚、本露光前にオートフォーカス制御を実行しないと上述したが、従来の撮像装置(図33参照)と同様のオートフォーカス制御を実行するようにしても構わない。この場合、シャッタボタン17aの半押し状態が確認された後、TTL(Through The Lenz)のコントラスト検出方式や位相差検出方式によるオートフォーカス制御を実行することによって、主要被写体と思われる被写体にピントが合うようにフォーカスレンズ31の位置を調整し、その後に本露光を行えばよい。
上述の被写界深度拡大処理では、撮影対象画像の撮影時におけるフォーカスレンズ位置にて定まる特定の被写体距離を基準として、被写界深度の拡大がなされる。故に、オートフォーカス制御が実行されず、結果、複数枚の撮影対象画像の撮影時におけるフォーカスレンズ位置が常に同じであったならば、それらの撮影対象画像から得られる深度拡大画像の被写界深度は常に一定となる。一方、撮影対象画像の撮影の度にオートフォーカス制御を実行するようにすれば、撮影対象画像の撮影時におけるフォーカスレンズ位置は撮影対象画像ごとに変化するため、撮影対象画像から得られる深度拡大画像の被写界深度の基準は撮影対象画像ごとに変化する。結果、撮像装置1が実現可能な被写界深度の深さは、オートフォーカス制御を実行しない場合と比べて更に拡大する。
被写界深度拡大処理等の説明の前に、それらにて参照される事項を説明する。図8に示す如く、任意の二次元画像620が配置される、空間領域(spatial domain)の二次元座標系XYを定義する。画像620は、例えば、撮影対象画像、原画像、深度拡大画像又は後述の目標合焦画像である。X軸及びY軸は、二次元画像620の水平方向及び垂直方向に沿った軸である。二次元画像620は、水平方向及び垂直方向の夫々に複数の画素がマトリクス状に配列されて形成されており、二次元画像620上の何れかの画素である画素621の位置を(x,y)にて表す。本明細書では、画素の位置を、単に画素位置とも言う。x及びyは、夫々、画素621のX軸及びY軸方向の座標値である。二次元座標系XYにおいて、或る画素の位置が右側に1画素分ずれると該画素のX軸方向における座標値は1だけ増大し、或る画素の位置が上側に1画素分ずれると該画素のY軸方向における座標値は1だけ増大する。従って、画素621の位置が(x,y)である場合、画素621の右側、左側、上側及び下側に隣接する画素の位置は、夫々、(x+1,y)、(x−1,y)、(x,y+1)及び(x,y―1)にて表される。
画像620を関数f(x,y)にて表現することができる。関数f(x,y)は位置(x,y)の関数であり、関数f(x,y)の値は、画像620の位置(x,y)における画素信号(R、G又はB信号)の値である。空間領域における関数f(x,y)をフーリエ変換すると、下記式(1)にて定義される、周波数領域における関数F(u,v)が得られる。関数F(u,v)は、画像620をフーリエ変換することによって得た、周波数領域における画像を表し、その周波数領域における画像を逆フーリエ変換すれば画像620が得られる。即ち、関数F(u,v)に対して、下記式(2)にて定義される逆フーリエ変換を施すことで、関数f(x,y)が得られる。周波数領域の関数(又は画像)におけるu及びvは、夫々、X軸方向及びY軸方向の空間周波数(spatial frequency)を表す(後述の式(5)等においても同様)。また、式(1)及び(2)におけるjは虚数単位である。尚、ここでは、連続関数のフーリエ変換及び逆フーリエ変換を示したが、撮像装置1が実際に用いるフーリエ変換及び逆フーリエ変換は離散的フーリエ変換及び離散的逆フーリエ変換である。
――被写界深度拡大処理――
図7のステップS15にて実行される被写界深度拡大処理を説明する。図9は、第1実施例に係る被写界深度拡大処理の詳細フローチャートである。図9に示すフローチャートでは、被写界深度拡大処理の中で被写体距離の推定が成される。従って、図9に示すフローチャートは、被写界深度拡大処理及び被写体距離推定処理のフローチャートでもあり、図7のステップS15及びS16の処理は、図9のステップS20〜S34の処理から形成される。ステップS20の処理が実行された後、ステップS21〜S34から成るループ処理が必要回数分だけ繰り返し実行される。1回のループ処理では、ステップS21〜S34の処理がこの順番で順次実行される。
まず、ステップS20において、原画像の有効領域における左上隅の画素位置に注目し、その画素位置を注目画素位置に設定する。その後、ステップS21において、注目画素位置を中心とした小領域を設定する。小領域は、上記有効領域の一部領域である。有効領域は、例えば1280×720画素から形成され、小領域は、例えば15×15画素から形成される。設定された小領域内の画像を小領域画像と呼ぶ。小領域画像は、原画像の一部に相当する。次に、ステップS22において、小領域画像のRAWデータを内部メモリ14から読み出し、小領域画像にデモザイキング処理を施すことによって小領域画像の画像信号をRGB信号に色分離する。即ち、小領域画像のRGB信号を生成する。
デモザイキング処理後、小領域画像を、R信号のみから形成される小領域色画像IrとG信号のみから形成される小領域色画像IgとB信号のみから形成される小領域色画像Ibとに分離して考えることができる。ステップS22では、RAWデータから、これらの小領域色画像(Ir、Ig及びIb)が抽出及び生成される。尚、本例では、被写界深度拡大処理の段階においてデモザイキング処理を行っているが、デモザイキング処理によって原画像のRGB信号を生成してから被写界深度拡大処理を開始するようにしてもよい。この場合、ステップS22の処理は省略され、ステップS21にて小領域を設定すれば自動的に小領域色画像Ir、Ig及びIbが抽出される。
ステップS23では、小領域色画像Ir、Ig及びIbの夫々に対してエッジ抽出処理を施すことにより、エッジ画像Er、Eg及びEbを生成する。エッジ抽出処理は、空間フィルタを用いたフィルタリング(即ち、空間フィルタリング)によって実現される。エッジ抽出処理では、空間フィルタとしてエッジ抽出フィルタが用いられる。
空間フィルタは、空間フィルタに対する入力信号をフィルタリングすることにより得た信号を出力する。空間フィルタによるフィルタリングとは、注目画素位置(x,y)における入力信号と注目画素位置(x,y)の周辺位置における入力信号とを用いて空間フィルタの出力信号を得る操作を指す。注目画素位置(x,y)における入力信号の値をIIN(x,y)にて表し、注目画素位置(x,y)に対する空間フィルタの出力信号をIO(x,y)にて表した場合、両者は下記式(3)の関係を満たす。h(i,j)は、空間フィルタの位置(i,j)におけるフィルタ係数を表す。式(3)に従う空間フィルタのフィルタサイズは(2w+1)×(2w+1)である。wは自然数である。
小領域色画像Irからエッジ画像Erを生成する際、空間フィルタの入力信号は小領域色画像Irの画素信号(即ち、R信号)であり、空間フィルタの出力信号はエッジ画像Erの画素信号である。小領域色画像Ig及びIbからエッジ画像Eg及びEbを生成する際も同様である。ステップS23のエッジ抽出処理では、例えば、3×3のフィルタサイズを有するソーベルフィルタが用いられる。
或る注目画像に対するエッジ抽出処理によって、その注目画像に含まれる所定の高域周波数成分(所定の周波数以上の空間周波数成分)が抽出され、注目画像のエッジ画像における画素信号値の絶対値は、その高域周波数成分の大きさ(換言すればエッジ強度)が増大するにつれて増大する。よって、ステップS23におけるエッジ抽出処理は、小領域画像のR、G及びB信号に含まれる所定の高域周波数成分を抽出する処理であると言え、その抽出の結果がエッジ画像Er、Eg及びEbに反映される。
ステップS24では、エッジ画像Erの各画素信号の絶対値の総和Sr、エッジ画像Egの各画素信号の絶対値の総和Sg、及び、エッジ画像Ebの各画素信号の絶対値の総和Sbを算出する。総和Sr、Sg及びSbは、夫々、小領域色画像Ir、Ig及びIbの鮮鋭度を表す鮮鋭度評価値として機能する。小領域画像内に存在している被写体の被写体距離が距離DDBである場合(図4参照)、B信号のぼけ半径はG及びR信号のそれらよりも小さくなり、その被写体距離が距離DDGである場合、G信号のぼけ半径はB及びR信号のそれらよりも小さくなる(被写体距離が距離DDRである場合も同様)。色信号のぼけ半径が減少すればするほど、その色信号についての小領域色画像の鮮鋭度が高くなって対応する鮮鋭度評価値は増大する。
これに鑑み、ステップS25では、鮮鋭度評価値Sr、Sg及びSbの内、最大の鮮鋭度評価値に対応する色信号を合焦色として特定すると共に合焦色についての小領域色画像を合焦色画像Iifに設定し、他の2つの鮮鋭度評価値に対応する色信号を非合焦色として特定すると共に2つの非合焦色についての2つの小領域色画像を非合焦色画像Iof1及びIof1に設定する。合焦色は、赤、緑及び青の内、軸上色収差に由来して生じる画像のぼけが最も少ない色である。例えば、Sr>Sg及びSr>Sbが成立する場合は、赤が合焦色、緑及び青が非合焦色として特定されると共に、小領域色画像Irが合焦色画像Iif、小領域色画像Ig及びIbが非合焦色画像Iof1及びIof2に設定される。
合焦色及び非合焦色を決定した後、ステップS26〜S31の処理によって、合焦色画像と非合焦色画像との対比から、軸上色収差に由来する非合焦色画像の画像劣化関数を求め、その画像劣化関数の逆関数である画像復元関数を用いて非合焦色画像をフィルタリングすることにより非合焦色画像のぼけを除去する。軸上色収差に由来する非合焦色画像のぼけは、軸上色収差に由来する非合焦色画像の劣化とみなすことができる。この劣化過程を表す関数は、点広がり関数(Point Spread Function;以下、PSFという)と呼ばれ、PSFが画像劣化関数として求められる。尚、この劣化過程を表す空間フィルタは、空間領域上で表現されたPSFに相当する。
合焦色画像としての合焦画像と非合焦色画像としての非合焦画像から非合焦画像のPSFを推定する方法を説明する。画像劣化モデルより、合焦画像と非合焦画像の関係は、下記式(4)にて表されることが知られている。式(4)におけるf、g、h及びnは、夫々、空間領域における、合焦画像、非合焦画像、非合焦画像のPSF及び付加ノイズである。式(4)は、周波数領域上では式(5)のように表される。F(u,v)、G(u,v)、H(u,v)及びN(u,v)は、夫々、式(4)におけるf、g、h及びnのフーリエ変換である。
式(5)を満たすH(u,v)は、下記式(6)にて定義される評価関数eを最小にするH'(u,v)を求めることによって推定される。即ち、評価関数eを最小にするH’(u,v)を、式(5)を満たすH(u,v)の推定値として求めることができる。そうすると、最小二乗推定により、H(u,v)の推定値H’(u,v)を、式(7)にて算出することができる。ここで、F*(u,v)は、F(u,v)の共役転置行列を表す。
図10に、図9に示されるステップS26〜S31の処理概念を表す。図10を参照しつつ、ステップS26〜S31の各処理を説明する。
まず、ステップS26において、合焦色画像Iifに対してエッジ抽出処理を施すことによりエッジ画像Eifを生成し、非合焦色画像Iof1及びIof2に対してエッジ抽出処理を施すことによりエッジ画像Eof1及びEof2を生成する。ステップS26のエッジ抽出処理に用いるエッジ抽出用の空間フィルタは、ステップS23におけるそれと同じであっても良いし異なっていても良い。それらの空間フィルタが同じである場合、ステップS23の処理の結果をそのまま流用可能である。例えば、それらの空間フィルタが同じである場合であって且つ合焦色が赤である場合、ステップS23にて生成されたエッジ画像Er、Eg及びEbが、夫々、エッジ画像Eif、Eof1及びEof2となる。
続くステップS27では、エッジ画像Eif、Eof1及びEof2の夫々をフーリエ変換することによりエッジフーリエ画像を生成する。エッジ画像Eif、Eof1及びEof2のフーリエ変換を、夫々、Eif’、Eof1’及びEof2’にて表す。エッジフーリエ画像Eif’、Eof1’及びEof2’は周波数領域上の画像であるため、Eif’、Eof1’及びEof2’を、u及びvの関数Eif’(u,v)、Eof1’ (u,v)及びEof2’ (u,v)にて表現することができる。
ステップS28では、Eif’(u,v)及びEof1’ (u,v)を用いた線形演算より、非合焦色画像Iof1のPSFを求め、Eif’(u,v)及びEof2’ (u,v)を用いた線形演算より、非合焦色画像Iof2のPSFを求める。ステップS28において、非合焦色画像Iof1及びIof2に対して求められるPSFを、夫々、PSFof1’及びPSFof2’にて表す。PSFof1’及びPSFof2’は、軸上色収差に由来する、周波数領域上のPSFである。
具体的には、上記式(7)のF(u,v)及びG(u,v)に対して夫々Eif’(u,v)及びEof1’ (u,v)を代入することによって得られるH’(u,v)が、PSFof1’として求められ、上記式(7)のF(u,v)及びG(u,v)に対して夫々Eif’(u,v)及びEof2’ (u,v)を代入することによって得られるH’(u,v)が、PSFof2’として求められる。
続くステップS29において、関数としてのPSFof1’及びPSFof2’の逆関数Cof1’及びCof2’を求める。Cof1’は、非合焦色画像Iof1の、周波数領域における画像復元関数を表し、Cof2’は、非合焦色画像Iof2の、周波数領域における画像復元関数を表す。更にステップS30において、Cof1’及びCof2’を逆フーリエ変換することにより空間領域における画像復元関数Cof1及びCof2を求める。Cof1及びCof2は、軸上色収差に由来する非合焦色画像Iof1及びIof2の劣化(ぼけ)を除去するための画像復元関数である。
ステップS31では、画像復元関数Cof1及びCof2を用いて非合焦色画像Iof1及びIof2に画像復元処理を施すことで、軸上色収差に由来する非合焦色画像Iof1及びIof2の劣化(ぼけ)を除去する。但し、ここで劣化が除去されるのは、注目画素位置における画素信号のみである。
具体的には、空間領域上の画像復元関数Cof1の位置(i,j)における関数値を位置(i,j)におけるフィルタ係数として有する空間フィルタFof1を形成し、空間フィルタFof1を用いて非合焦色画像Iof1の画素信号をフィルタリングする。ここで、フィルタリングされるのは注目画素位置の画素信号のみである。従って、空間フィルタFof1を用いて非合焦色画像Iof1の注目画素位置における画素信号がフィルタリングされる。そして、得られた空間フィルタFof1の出力信号を、深度拡大画像の注目画素位置における第1の非合焦色(非合焦色画像Iof1に対応する色)の色信号とする。
同様にして、画像復元関数Cof2に対応する空間フィルタFof2が形成され、空間フィルタFof2を用いて非合焦色画像Iof2の注目画素位置における画素信号をフィルタリングすることにより、深度拡大画像の注目画素位置における第2の非合焦色(非合焦色画像Iof2に対応する色)の色信号が生成される。深度拡大画像の注目画素位置における合焦色の色信号は、合焦色画像Iifの注目画素位置の色信号と同じとされる。
例えば、合焦色が赤であって第1及び第2の非合焦色が夫々緑及び青である場合、小領域色画像Ir、Ig及びIbがそれぞれ画像Iif、Iof1及びIof2となり、空間フィルタFof1及びFof2の出力信号が、夫々、深度拡大画像の注目画素位置におけるG信号及びB信号として生成される一方で、小領域色画像Irの注目画素位置における画素信号(即ち、R信号)が、深度拡大画像の注目画素位置におけるR信号として生成される。
この後、ステップS32において、注目画素位置における被写体の被写体距離を推定する。この推定手法については後述する。尚、本例では、ステップS31の処理の後に被写体距離の推定を行っているが、被写体距離の推定は、非合焦色画像のPSFの算出後であれば、どの段階で行っても良い。
ステップS32に続くステップS33では、原画像の全画素位置に対して画像復元処理(及びS32の被写体距離推定処理)を実行したか否かを確認し、その実行が完了している場合は図9の処理を終える一方で、その実行が完了していない場合はステップS34に移行して注目画素位置を現時点の注目画素位置から変更する。注目画素位置の変更後、ステップS21に戻り、その位置変更後の注目画素位置に対して、上述のステップS21〜S32の処理が再度実行される。例えば、注目画素位置が原画像の有効領域における左上隅から右下隅に向かってラスタ走査されるように、注目画素位置を変更してゆき、原画像の有効領域内に存在する全画素位置を、順次、注目画素位置に設定する。そして、原画像の有効領域内の全画素位置に対してステップS21〜S32の処理が完了した時点で、図9の被写界深度拡大処理を終了する。
図11において、破線にて示された曲線630は、深度拡大画像のR、G及びR信号におけるぼけ半径の被写体距離依存性を表している。深度拡大画像におけるぼけ半径と被写体距離との関係は、R、G及びB信号間で共通になる。図11の曲線601R、601G及び601Bは、図4に示したそれらと同じ、原画像の合焦曲線である。曲線630は、曲線601R、601G及び601B上のぼけ半径の内の最小半径を、被写体距離を変化させながら順次繋ぎ合わせて得た曲線に相当する。上述したように、撮像装置1は、軸上色収差の特性から曲線601R、601G及び601Bの形状を予め認識している。従って、撮像装置1は、曲線630の形状をも予め認識している(即ち、撮像装置1とって曲線630は既知である)。曲線630を、以下、「深度拡大画像の合焦曲線」とも呼ぶ。
このように、軸上色収差を有する光学系10を用いてR、G及びB信号が合焦状態となる被写体距離を広範囲に分散させ、その広範囲の被写体距離が全て被写界深度に含ませるような画像処理を撮影後に実行する。これによって得られる深度拡大画像の被写界深度は、通常の光学系にて得られるそれよりも深く、深度拡大画像では、広い被写体距離範囲で赤、緑及び青成分の全てが合焦している。尚、通常の光学系とは、軸上色収差が無視できる程度に小さくなるように設計された光学系を指す。このような深度拡大画像を生成可能なように撮像装置1を形成しておくことにより、従来の撮像装置(通常の光学系)にて問題視されていた、ピンぼけに関わる問題(上述の問題α)が解消される。
――被写体距離推定処理――
図9のステップS32にて用いられる、被写体距離の推定方法を説明する。まず、被写体距離の推定に利用される「PSF半径」について説明する。
点光源300(図1参照)からの非合焦色の光は、撮像素子11の撮像面上に円状に分布し、その分布はガウス分布に近似できることが知られている。非合焦色画像のPSFは、この分布の状態を表すものである。ガウス分布を有するガウス関数Gaussは、一般に、下記式(8)によって定義される。ガウス関数Gaussは、rを変数とする関数であり、ガウス関数Gaussにおける標準偏差はσである。ガウス関数Gaussにおけるrは、ガウス関数Gaussの基準位置(即ちr=0の位置)からの距離を表す。
図12は、空間領域上のPSFのイメージ図である。注目画素位置に対するPSFを、PSFの関数値を画素信号値として有する画像(以下、PSF画像という)と捉えることができる。図12における矩形画像650は、空間領域におけるPSF画像の例を表している。PSF画像650は、注目画素位置を中心とする画像である。PSF画像650における信号値は、注目画素位置で最大値をとり、注目画素位置からの距離が増大するに従って減少していく。
図12では、信号値が大きい領域ほど白く、信号値が小さい領域ほど黒く示している。PSF画像650を、PSF画像650の信号値がゼロ以上又はゼロ近傍の正の所定値以上となっている画像領域と、それ以外の画像領域とに分類することができ、前者の画像領域の外形を、PSF画像650の中心を中心として有する円(図12において、黒のべた塗り領域とハッチング領域の境界円)で近似することができる。この円の半径を、PSF半径と呼ぶ。上述したぼけ半径YR、YG又はYB(図3参照)は、夫々、小領域色画像Ir、Ig及びIb(図9のステップS22参照)についてPSF半径に相当する。
図13は、被写体距離の推定手順の概略を表す概念図である。図9のステップS32では、ステップS28にて求められた周波数領域上のPSFからPSF半径を求め、求めたPSF半径と既知情報である原画像の合焦曲線(図4又は図11の曲線601R、601G及び601B)とを用いて被写体距離を推定する。
周波数領域上のPSFからPSF半径を求める方法として、公知の方法を用いることができる。例えば、非特許文献「Shiqian Wu,他3名,"Blind Image Blur Identification in Cepstrum Domain",Proceedings of the 16th International Conference on Computer Communications and Networks, IEEE ICCCN 2007, 2007年8月,pp.1166−1171」に記載されているように、ケプストラム(cepstrum)変換を用いた方法に従ってPSF半径を求めることができる。
ケプストラム変換を用いたPSF半径の算出方法を簡単に説明する。この算出方法を、便宜上、「第1のPSF半径算出方法」と呼ぶ。
まず、図9のステップS28にて得られたPSFof1’及びPSFof2’を、ケプストラム変換によって、ケプストラム領域(cepstrum domain)上の画像であるケプストラム画像Cep1及びCep2に変換する(図13参照)。周波数領域上のPSF画像GPSF(u,v)と、それをケプストラム変換することによって得たケプストラム画像Cg(p,q)との関係は、下記式(9)によって表される。ケプストラム画像におけるp及びqは、ケプストラム領域上における水平方向及び垂直方向の座標値を表し、式(9)における演算記号F-1は逆フーリエ変換を表している。
PSFof1’及びPSFof2’は周波数領域上のPSF画像を表すものである。従って、PSFof1’をGPSF(u,v)と取り扱って式(9)を用いることにより得たCg(p,q)がケプストラム画像Cep1であり、PSFof2’をGPSF(u,v)と取り扱って式(9)を用いることにより得たCg(p,q)がケプストラム画像Cep2である。
図14は、ガウス分布状のぼけを有する画像についてのケプストラム画像670(例えば、Cep1又はCep2)を示している。ケプストラム画像670の画素信号は、p及びqがゼロであるケプストラム画像上670の中心にて極大値をとり、その中心からの距離が増大するに従って対応する信号値は、減少、増大、減少、増大、・・・を交互に繰り返す。従って、図14のようにケプストラム画像670を白と黒を用いた濃淡画像で表現した場合、ケプストラム画像670上の中心を中心として有する、半径の異なる複数の黒い環が観測される。ケプストラム画像670において、信号値が大きい領域ほど白く、信号値が小さい領域ほど黒く示されている。この複数の黒い環の内、最も半径の小さい環(以下、最小径環という)と、ケプストラム画像670上の中心との距離が、ケプストラム画像670に対応するPSF半径として推定される。
より具体的には、以下のようにしてケプストラム画像Cep1から非合焦色画像Iof1(及びPSFof1’)についてのPSF半径RDof1が推定される。ケプストラム画像Cep1の中心を起点として、ケプストラム画像Cep1の中心からの距離が増大する方向に、ケプストラム画像Cep1の画素信号値を走査し、その画素信号値に最初の極小値を与える極小点を検出する。そして、検出した極小点とケプストラム画像Cep1の中心との距離(単位は画素)を、PSF半径RDof1として推定する。同様にして、ケプストラム画像Cep2から非合焦色画像Iof2(及びPSFof2’)についてのPSF半径RDof2が推定される。
また、合焦色画像Iifに存在するぼけは無視できる程度に小さいとみなし、合焦色画像IifについてのPSF半径RDifは0.5画素であると推定する。
PSF半径は、原画像の合焦曲線(図4又は図11の601R、601G及び601B)におけるぼけ半径とみなすことができる。故に、各PSF半径を求めた後、合焦色が何れの色であるのかを考慮しつつ、それらを原画像の合焦曲線に当てはめることで被写体距離を推定することができる。
例えば、赤が合焦色であって且つ緑及び青が第1及び第2の非合焦色である場合を考える。この場合、小領域色画像Ir、Ig及びIbが、夫々、画像Iif、Iof1及びIof2に設定される(図9のステップS22及びS25、図10参照)。故に、PSF半径RDof1は小領域色画像IgについてのPSF半径となり、PSF半径RDof2は小領域色画像IbについてのPSF半径となる。
また、赤が合焦色である故、推定されるべき被写体距離は、距離DDGと距離DDRとの間の所定距離以上であることが分かる(図15参照)。理想的には、図15に示す如く、曲線601Gに沿った、PSF半径(ぼけ半径)RDof1に対応する被写体距離と、曲線601Bに沿った、PSF半径(ぼけ半径)RDof2に対応する被写体距離は、一致するため、互いに一致するそれを推定被写体距離として求める。但し、実際には様々な誤差要因の影響により、前者の被写体距離と後者の被写体距離は若干ずれることが多い。故に、PSF半径RDof1及びRDof2になるだけ整合する1つの被写体距離を推定被写体距離として求める。例えば、図16に示す如く、曲線601Gに沿った、PSF半径(ぼけ半径)RDof1に対応する被写体距離DDof1と、曲線601Bに沿った、PSF半径(ぼけ半径)RDof2に対応する被写体距離DDof2とを求め、それらの平均距離“(DDof1+DDof2)/2”を推定被写体距離として求める。
1回のステップS32の処理によって、1つの注目画素位置に対する推定被写体距離が求まる。上述したように注目画素位置は順次変更されてゆき(図9のステップS34参照)、ステップS32の処理は注目画素位置が変更されるたびに実行される。従って、図9の被写界深度拡大処理が終了する時点においては、原画像の各画素位置における推定被写体距離が求まっており、それらを二次元的に配列した被写体距離マップが生成されている(図7のステップS16参照)。
尚、第1のPSF半径算出方法の如くケプストラム変換を用いるのではなく、以下のようにしてPSF半径を求めるようにしてもよい。ケプストラム変換を用いない、以下に示すPSF半径の算出方法を、便宜上、「第2のPSF半径算出方法」と呼ぶ。第2のPSF半径算出方法によって求められたPSF半径に基づいて、被写体距離の推定を行うこともできる。
周波数領域上のPSFであるPSFof1’及びPSFof2’を逆フーリエ変換することによって空間領域上のPSFを表すPSF画像PSFof1及びPSFof2を求め、PSF画像PSFof1及びPSFof2における画素信号の分布がガウス分布であると近似することにより、それらのガウス分布の標準偏差を求める。一方で、ガウス分布の標準偏差とPSF半径との対応関係を予め定めておく。そうすると、標準偏差の導出によって、自動的に対応するPSF半径が求められる。
PSF画像PSFof1を例にとり、この方法をより具体的に説明する。PSFof1は、空間領域上のPSF画像であるため、図12のPSF画像650のような画素信号を有する。従って、PSFof1を、上記式(8)に対応する次式(10)の関数PSFVにて近似できる。式(10)における関数PSFVは、rを変数とするガウス関数であり、関数PSFVにおける標準偏差はσである。関数PSFVにおけるrは、PSF画像PSFof1の中心からの距離を表し、PSF画像PSFof1の中心は、図9のステップS20又はS34にて設定された、PSF画像PSFof1にとっての注目画素位置である。
PSF画像PSFof1上の各画素位置を距離rに変換した上で、PSF画像PSFof1の各画素信号値及び各画素位置を式(10)のPSFV及びrに代入してゆけば、PSF画像PSFof1の画素数分の、σに関する等式が得られる。これらの等式を近似的に満たすσを最小二乗法を用いて求め、求めたσをPSFof1についての標準偏差σ1とする。同様にして、PSFof2についての標準偏差σ2も求められる。
一方で、PSFの標準偏差とPSF半径との対応関係を示す関係式又はテーブルデータを予め用意しておき、その関係式又はテーブルデータを用いて、上述の如く求めた標準偏差σ1及びσ2をPSF半径RDof1及びRDof2(図13参照)に変換する。例えば、「2×σ1=RDof1」及び「2×σ2=RDof2」に従って、PSF半径RDof1及びRDof2を求める。尚、合焦色画像IifについてのPSF半径RDifは、第1のPSF半径算出方法と同様、0.5画素であると推定する。更に、合焦色画像IifについてのPSFの標準偏差σ0は、「2×σ0=RDif」に従って決定される。
[第2実施例]
次に、第2実施例を説明する。第1実施例の如く、原画像における全画素位置に対して直接的にPSFを算出しようとすると、処理量が多くなって処理時間が相応に長くなる。そこで、第2実施例では、代表画素位置に対してのみPSFの直接的算出を行い、非代表画素位置のPSFを、近傍の代表画素位置におけるPSFから補間する。この方法を説明する。
まず、図17に示す如く、任意の二次元画像620が配置されるべき空間領域の二次元座標系XY上に、水平及び垂直方向に等間隔配置された代表点を設定する。図17における複数の黒丸が、設定された代表点を示している。図8を参照して上述したように、水平方向はX軸方向に対応し、垂直方向はY軸方向に対応している。水平方向に隣接する代表点の間隔及び垂直方向に隣接する代表点の間隔は、二次元画像620の隣接画素間隔の整数倍(2倍以上の整数倍)である。例えば、水平方向に隣接する代表点の間隔及び垂直方向に隣接する代表点の間隔を、二次元画像620の隣接画素間隔の16倍に設定する。この場合、水平及び垂直方向の夫々おいて、16画素ごとに代表点が設定される。
代表点が位置する画素位置を代表画素位置と呼び、それ以外の画素位置(即ち、代表点が位置していない画素位置)を非代表画素位置と呼ぶ。
第2実施例に係る、静止画像撮影時の撮像装置1の動作手順は、図7に示す、第1実施例に係るそれと同様であり、第2実施例においても、上述のステップS10〜S19の処理が順次実行される。但し、第1及び第2実施例との間で、図7のステップS15の被写界深度拡大処理の内容が異なる。
図18は、第2実施例に係る被写界深度拡大処理の詳細フローチャートである。第2実施例において、ステップS15の被写界深度拡大処理は、ステップS40〜S51及びS60〜S67の処理から形成される。ステップS40の処理が実行された後、ステップS41〜S51から成る第1ループ処理が必要回数分だけ繰り返し実行される。1回の第1ループ処理では、ステップS41〜S51の処理がこの順番で順次実行される。第1ループ処理において所定条件を満たされると、ステップS60の処理の後、ステップS61〜S67から成る第2ループ処理が必要回数分だけ繰り返し実行される。
まず、ステップS40において、原画像の有効領域における左上隅の代表画素位置に注目し、その代表画素位置を注目代表画素位置に設定する。その後、ステップS41において、注目代表画素位置を中心とした小領域を設定する。小領域の意義は、第1実施例で述べた通りである。主制御部13は、設定した小領域内の画像を小領域画像として取り扱った上でステップS42〜S48の処理を順次実行する。ステップS42〜S48の処理は、夫々、図9のステップS22〜S28のそれと同じものである。但し、ステップS42〜S48では、ステップS41において設定された小領域及び小領域画像に対して、必要な処理が行われる。ステップS42〜S48の処理を経て、非合焦色画像Iof1及びIof2に対する、周波数領域上のPSF(PSFof1’及びPSFof2’)が導出される。
ステップS48に続くステップS49において、主制御部13は、非合焦色画像Iof1及びIof2に対するPSFをガウス関数に近似することにより、PSFとしてのガウス関数における標準偏差を、色信号ごとに求める。R、G及びB信号に対して求められた標準偏差を、夫々、σR、σG及びσBにて表す。
第1実施例で述べた第1のPSF半径算出方法を流用することによって、ステップS49における標準偏差σR、σG及びσBを算出することができる。即ち、上述の第1のPSF半径算出方法に従い、ケプストラム変換を用いてステップS48にて得られたPSFof1’及びPSFof2’から非合焦色画像Iof1及びIof2についてのPSF半径RDof1及びRDof2を推定する。また、合焦色画像IifについてのPSF半径RDifは0.5画素であると推定する。一方で、PSFの標準偏差とPSF半径との対応関係を示す関係式又はテーブルデータを予め用意しておき、その関係式又はテーブルデータを用いて、PSF半径RDof1、RDof2及びRDifから標準偏差σR、σG及びσBを求める。例えば、標準偏差の2倍が、その標準偏差に対応するPSFのPSF半径であると予め規定しておく。そうすると、赤が合焦色であると共に緑及び青が非合焦色であり且つ緑に対応する非合焦色画像がIof1である場合、「2×σR=RDif」、「2×σG=RDof1」及び「2×σB=RDof2」に従って標準偏差σR、σG及びσBが求められる。
或るいは、第1実施例で述べた第2のPSF半径算出方法を流用することによって、ステップS49における標準偏差σR、σG及びσBを算出することもできる。この場合、第2のPSF半径算出方法を用いて求めた、非合焦色画像Iof1及びIof2に対応する標準偏差σ1及びσ2と合焦色画像Iifに対応する標準偏差σ0から、標準偏差σR、σG及びσBを決定すればよい。例えば、赤が合焦色であると共に緑及び青が非合焦色であり且つ緑に対応する非合焦色画像がIof1である場合において、第2のPSF半径算出方法を用いたとすれば、σR=σ0、σG=σ1且つσB=σ2となる。
ステップS49にて標準偏差を求めた後、ステップS50において、原画像の全代表画素位置に対して標準偏差の算出を実行したか否かを確認し、その実行が完了している場合はステップS50からステップS60に移行する一方で、その実行が完了していない場合はステップS51に移行して注目代表画素位置を現時点の注目代表画素位置から変更する。注目代表画素位置の変更後、ステップS41に戻り、その位置変更後の注目代表画素位置に対して、上述のステップS41〜S49の処理が再度実行される。ステップS60に至る時点では、原画像の全代表画素位置に対して標準偏差(σR、σG及びσB)が求められ、それらは内部メモリ14に一時的に記録されている。
ステップS60において、原画像の有効領域における左上隅の画素位置に注目し、その画素位置を注目画素位置に設定する。
ステップS60に続くステップS61において、注目画素位置が代表画素位置であるか否かが確認され、注目画素位置が代表画素位置である場合はステップS61からステップS62へ、注目画素位置が非代表画素位置である場合はステップS61からステップS63へ移行する。
ステップS62では、注目画素位置と一致する代表画素位置に対して既に算出されている標準偏差σR、σG及びσBを内部メモリ14から読み出し、それらを注目画素位置に対する標準偏差σR、σG及びσBに設定する。
一方、ステップS63では、注目画素位置の近傍に位置する代表画素位置の標準偏差σR、σG及びσBを用い、色信号ごとの補間によって、注目画素位置の標準偏差σR、σG及びσBを算出する。補間として、線形補間を用いることができる。例えば、図19に示す如く、注目画素位置が非代表画素位置705であって且つ位置705が代表画素位置701〜704によって形成される四角形に内包される場合、位置705と位置701〜704との各距離を求め、求めた各距離に応じて位置701〜704に対する標準偏差σRを加重平均することにより位置705に対する標準偏差σRを求める。位置705が上記四角形の中心に位置する場合、加重平均における重みは位置701〜704間で同じであるため、位置705に対する標準偏差σRは、位置701〜704に対する標準偏差σRの平均とされる。勿論、加重平均における重みは対応する距離が短いほど大きくなる。位置705に対する標準偏差σG及びσBも同様にして算出される。尚、位置701及び702は水平方向に隣接する代表画素位置であり、位置703及び704は水平方向に隣接する代表画素位置であり、位置701及び703は垂直方向に隣接する代表画素位置であり、位置702及び704は垂直方向に隣接する代表画素位置である。
その後、ステップS64では、ステップS62又はS63にて設定された、注目画素位置に対する標準偏差σR、σG及びσBに基づき、注目画素位置に対する画像復元関数を決定する。ここで決定される画像復元関数は、注目画素位置を中心とする非合焦色画像Iof1及びIof2の画像復元関数である。非合焦色画像Iof1の画像復元関数は、非合焦色画像Iof1に対応する標準偏差(σR、σG又はσB)をσに代入した上記式(10)の関数PSFVの逆関数に相当し、非合焦色画像Iof2の画像復元関数は、非合焦色画像Iof2に対応する標準偏差(σR、σG又はσB)をσに代入した上記式(10)の関数PSFVの逆関数に相当する。
続くステップS65では、ステップS64にて決定された画像復元関数を用いて非合焦色画像Iof1及びIof2に画像復元処理を施すことで、軸上色収差に由来する非合焦色画像Iof1及びIof2の劣化(ぼけ)を除去する。但し、ここで劣化が除去されるのは、注目画素位置における画素信号のみである。ステップS65における画像復元処理は、図9のステップS31のそれと同様のものであり、ステップS65の画像復元処理によって、深度拡大画像の注目画素位置における第1の非合焦色(非合焦色画像Iof1に対応する色)の色信号及び第2の非合焦色(非合焦色画像Iof2に対応する色)の色信号が生成される。また、深度拡大画像の注目画素位置における合焦色の色信号は、原画像の注目画素位置における合焦色の色信号と同じとされる。これにより、深度拡大画像の注目画素位置におけるR、G及びB信号が生成される。
望ましくは、図20に示す如く、軸上色収差に由来する画像のぼけを除去するための空間フィルタ41と、標準偏差に応じて空間フィルタ41のフィルタ係数を決定するLUT42と、を主制御部13に実装しておくとよい。LUT42は、標準偏差とフィルタ係数の関係を定めるルックアップテーブルであり、ルックアップテーブルのデータは、非合焦色画像のPSFがガウス関数に近似されるという前提の下で予め決定される。LUT42から出力されるフィルタ係数を用いた空間フィルタ41による空間フィルタリングによって、非合焦色画像Iof1及びIof2に存在する、軸上色収差に由来するガウス分布状のぼけが除去される。
例えば、注目画素位置に関して赤が合焦色であると共に緑及び青が非合焦色であり且つ緑に対応する非合焦色画像がIof1である場合、ステップS62又はS63にて設定された、注目画素位置に対する標準偏差σGがLUT42に入力されて、標準偏差σGに応じたフィルタ係数がLUT42から空間フィルタ41に与えられる。空間フィルタ41は、LUT42から与えられたフィルタ係数を用いて原画像の注目画素位置におけるG信号をフィルタリングする。このフィルタリングによって得られた空間フィルタ41の出力信号が、深度拡大画像の注目画素位置におけるG信号となる。深度拡大画像の注目画素位置におけるB信号も標準偏差σBに応じて導出される。今の例では赤が合焦色であるので、深度拡大画像の注目画素位置におけるR信号は、原画像の注目画素位置におけるR信号と同じとされる。
尚、ステップS64及びS65の処理の説明において述べられる非合焦色画像Iof1及びIof2とは、ステップS60又は後述のステップS67にて設定された注目画素位置を中心とする小領域についての非合焦色画像Iof1及びIof2を指す。注目画素位置に対する標準偏差σR、σG及びσBの内の最小の標準偏差に対応する小領域色画像(Ir,Ig又はIb)がステップS64及びS65における合焦色画像Iifであり、それ以外の2つの標準偏差に対応する小領域色画像がステップS64及びS65における非合焦色画像Iof1及びIof2である。従って例えば、注目画素位置に対する標準偏差σR、σG及びσBについて不等式「σR<σG<σB」が成立する場合、注目画素位置に関して赤が合焦色であると共に緑及び青が非合焦色であり、且つ、注目画素位置を中心とする小領域色画像Ig及びIbがステップS64及びS65における非合焦色画像Iof1及びIof2である。
ステップS65に続くステップS66及びS67では、図9のステップS33及びS34と同様の処理がなされる。即ち、ステップS66では、原画像の全画素位置に対してS65の画像復元処理を実行したか否かを確認し、その実行が完了している場合は図18の処理を終える一方で、その実行が完了していない場合はステップS67に移行して注目画素位置を現時点の注目画素位置から変更する。注目画素位置の変更後、ステップS61に戻り、その位置変更後の注目画素位置に対して、上述のステップS61〜S65の処理が再度実行される。原画像の有効領域内の全画素位置に対してステップS61〜S65の処理が完了した時点で、図18の被写界深度拡大処理は終了する。
上述のように処理することにより、第1実施例と比べて、代表画素位置以外の画素位置に対するPSFの算出負荷を大幅に軽減できる。また、図20に示す如く、標準偏差に対応する、画像復元処理用のフィルタ係数を予め参照テーブル化しておくことにより、更なる処理高速化が図られる。
尚、第2実施例においても図7のステップS10〜S19の処理が順次実行されると述べたが、ステップS16における被写体距離の推定方法として、第1実施例で述べた方法を採用することができる。即ち、第1実施例の如く、原画像における全画素位置の夫々を注目画素位置と捉えて、注目画素位置ごとに、直接的にPSFを算出して注目画素位置に対するPSF(PSFof1’及びPSFof2’)から注目画素位置における被写体距離を推定するようにしてもよい。
但し、第2実施例では、被写界深度拡大処理の過程においてPSFの直接的算出が代表画素位置に対してのみ実行されることを考慮し、PSFを用いた被写体距離の推定を代表画素位置に対してのみ実行するようにしてもよい。この場合、非代表画素位置における推定被写体距離は、近傍の代表画素位置における推定被写体距離から補間される。これにより、被写体距離の推定に関わる処理負荷が軽減される。尚、この補間を用いた被写体距離の推定方法は、第1実施例にも適用可能である。
例えば、PSFof1’及びPSFof2’を用いて注目代表画素位置に対する被写体距離を推定する処理(この推定方法は、第1実施例で述べたものと同様である)を図18のステップS48の処理に含めることで、各注目代表画素位置における被写体距離を推定する。その後、各非代表画素位置を注目画素位置に設定し、注目画素位置ごとに、注目画素位置の近傍に位置する代表画素位置の推定被写体距離を用いた線形補間によって注目画素位置の被写体距離を推定する。被写体距離に対する補間の方法は、上述の、標準偏差に対するそれと同様である。
[第3実施例]
次に、第3実施例を説明する。第3実施例では、第2実施例におけるPSFの算出方法の変形例などを説明する。PSFの算出方法の変形例として、第1及び第2変形PSF算出方法を例示する。第1及び第2変形PSF算出方法は、第2実施例と組み合わせて実施される。また、第1及び第2変形PSF算出方法を組み合わせることも可能である。
代表画素位置を中心とする注目小領域のコントラストが低い場合、合焦色画像と非合焦色画像との間でエッジ強度(高域周波数成分)の差が小さくなり、非合焦色画像に対する正確なPSFの算出が困難となる。その差が小さい時、非合焦色画像に劣化が殆ど含まれていない、と判断されることになるからである。仮に、非合焦色画像に劣化が殆ど含まれていないと判断され、その判断結果に応じたPSFが求められたとしても、注目小領域が低コントラストであるが故に、そのPSFに基づく、注目小領域に対する補正結果(画像復元処理の結果)には視覚的な影響が殆ど生じない。しかしながら、高コントラストの小領域が注目小領域に隣接する場合、第2実施例で述べた補間処理によって、隣接小領域に対する補正結果に悪影響が生じることがある。つまり、注目小領域についての代表画素位置と隣接小領域についての代表画素位置との間に位置する画像領域の鮮鋭度(深度拡大画像における鮮鋭度)が、前者の代表画素位置に対して求められた非正確なPSFの影響を受けて低下することがある。
これを考慮し、第1変形PSF算出方法では、注目代表画素位置を中心とする小領域のエッジ成分の大小を考慮し、それが少ない場合には、注目代表画素位置の近傍代表画素位置のPSFを用いた補間によって、注目代表画素位置のPSFを生成する。これにより、鮮鋭度の低下を抑制することができる。
具体的には例えば、第1変形PSF算出方法において、以下のような処理を実行すればよい。図18のステップS41〜S51の反復処理過程において、代表画素位置ごとに、エッジ画像Eifの各画素信号の絶対値の総和をエッジ評価値として求め、求めた各エッジ評価値と予め設定された基準値を比較することにより、各代表画素位置を、エッジ評価値が基準値以上になる代表画素位置(以下、通常代表画素位置という)とエッジ評価値が基準値未満になる代表画素位置(以下、対象代表画素位置という)とに分類する。通常代表画素位置に対するPSFの標準偏差σR、σG及びσBの決定方法は、第2実施例で述べたものと同じであるが、対象代表画素位置に対するPSFの標準偏差σR、σG及びσBは、対象代表画素位置の近傍に位置する通常代表画素位置についての標準偏差から、補間(例えば線形補間)によって生成される。この補間は、標準偏差σR、σG及びσBの夫々に対して個別に実行される。即ち、対象代表画素位置のσRは、対象代表画素位置の近傍に位置する通常代表画素位置についてのσRから、補間によって生成される。σG及びσBについても同様である。
次に、第2変形PSF算出方法を説明する。代表画素位置の隣接間隔を小さくすれば微小領域ごとに適切なPSFが求められて深度拡大画像を理想的なものに近づけることができるが、直接的に算出すべきPSFの個数が増加する分、処理時間が増加する。一方で、代表画素位置の隣接間隔を大きくすると、その逆の問題が発生する。但し、エッジ成分が少ない画像領域に対して、代表画素位置の隣接間隔を大きく設定しても弊害は少ない。これを考慮し、第2変形PSF算出方法では、画像のエッジ情報に応じて代表画素位置の隣接間隔を変化させる。即ち、高解像力が必要となるような画像領域(エッジ成分が多く含まれる画像領域)に対しては、代表画素位置の隣接間隔を比較的小さく設定し、それ以外の画像領域に対しては、代表画素位置の隣接間隔を比較的大きく設定する。これにより、処理時間の増大を抑制しつつ、細部まで鮮鋭度の高い深度拡大画像を生成することが可能となる。
具体的には例えば、第2変形PSF算出方法において、以下のような処理を実行すればよい。代表画素位置の隣接間隔として、第1隣接間隔又は第1隣接間隔よりも大きな第2隣接間隔を採用可能にしておく。まず、代表画素位置の隣接間隔に第1隣接間隔を採用した上で、代表画素位置ごとに、図18のステップS41〜S46の処理を実行することにより合焦色を特定して合焦色画像Iifのエッジ画像Eifから上記エッジ評価値を求める。そして、求めた各エッジ評価値と所定の基準値とを比較することにより、原画像の有効領域を、基準値以上のエッジ評価値に対応する小領域が多く存在するブロックと、基準値未満のエッジ評価値に対応する小領域が多く存在するブロックとに切り分ける。その後、前者のブロックに対して第1隣接間隔を採用し且つ後者のブロックに対して第2隣接間隔を採用した上で、図18の被写界深度拡大処理を実行すればよい。この具体例では、代表画素位置の隣接間隔を2段階で変化させているが、それを3段階以上で変化させても良い。
次に、第1又は第2実施例に述べた処理を担う部位の構成例を説明する。図21は、その処理を担う部位のブロック図である。図21の符号51〜56によって参照される各部位は、主制御部13に設けられる。
小領域抽出部51は、主として図9のステップS21の処理又は図18のステップS41の処理を実行することにより、小領域を原画像から抽出する。
合焦色特定部52は、主として図9のステップS22〜S25の処理又は図18のステップS42〜S45の処理を実行することにより、合焦色及び非合焦色を特定する。
PSF算出部53は、主として図9のステップS26〜S28の処理又は図18のステップS46〜S49、S62及びS63の処理を実行することにより、各画素位置に対するPSFを算出する。
画像復元処理部54は、主として図9のステップS29〜S31の処理又は図18のステップS64及びS65の処理を実行することにより、画像復元処理によって深度拡大画像の各画素位置におけるRGB信号を生成する。
被写体距離推定部55は、主として図7のステップS16の処理を実行することにより、各画素位置における被写体距離を推定する。
記録制御部56は、各画素位置の推定被写体距離から形成される被写体距離マップと深度拡大画像の画像データを関連付けて記録媒体16に記録するための記録制御を行う。
被写体距離推定部55によって被写体距離マップが生成されるが、被写体距離マップの利用方法は、第4実施例等において後述される。被写体距離マップの利用が予定されていない場合、被写体距離推定部55は不要である。
[第4実施例]
次に、第4実施例を説明する。第4実施例では、深度拡大画像から所望の合焦状態を有する画像(以下、目標合焦画像という)を生成する方法を説明する。図22は、深度拡大画像から目標合焦画像を生成する動作の手順を表すフローチャートである。図22のステップS101〜S110の各処理は、図7のステップS19における記録処理が行われた後に実行される。
ステップS101において、主制御部13は、記録媒体16の記録データを読み出すことにより、記録媒体16に記録されている深度拡大画像を表示部15の表示画面上に表示させる。以下の説明において、表示画面とは、表示部15の表示画面を指す。尚、記録媒体16に原画像の画像データが記録されている場合においては、深度拡大画像の代わりに原画像を表示画面に表示させてもよい。
ステップS101に続くステップS102において、主制御部13は、目標合焦画像の生成を指示する操作(以下、生成指示操作という)が操作部17に対して成されたか否かを確認する。ステップS102において、生成指示操作が成されていない場合はステップS101に戻る。一方、生成指示操作が成された場合は、ステップS103に移行して、表示画像(即ち表示画面に表示されている深度拡大画像又は原画像)に関連付けて記録されている被写体距離マップを記録媒体16から読み出すことにより、被写体距離マップを取得する。その後、主制御部13は、ステップS104において、目標合焦画像の合焦基準距離及び被写界深度の深さを指定するユーザ操作(以下、被写界深度指定操作という)を受け付け、続くステップS105において、被写界深度指定操作の内容に従って目標合焦画像の合焦曲線を導出する。
図23の実線曲線730は、目標合焦画像の合焦曲線(以下、目標合焦曲線とも呼ぶ)を示している。図23の破線曲線630は、図11にも示されている深度拡大画像の合焦曲線である。目標合焦曲線730は、目標合焦画像におけるぼけ半径と被写体距離との関係を示している。目標合焦画像におけるぼけ半径は、被写体距離が距離DDOである時に最小となり、被写体距離が距離DDOを起点として減少又は増大するにつれて増大する。原画像におけるぼけ半径は、軸上色収差に由来してR、G及びB信号間で異なるが、目標合焦画像におけるぼけ半径は、R、G及びB信号間で共通である。距離DDOよりも小さな距離DDO1及び距離DDOよりも大きな距離DDO2において、目標合焦画像におけるぼけ半径は基準半径rREFと一致する。従って、距離DDO1から距離DDO2までの被写体距離範囲が目標合焦画像の被写界深度である。距離DDOは上記の合焦基準距離であり、距離DDO1から距離DDO2までの距離長さは、目標合焦画像の被写界深度の深さを表している。上記の被写界深度指定操作によって距離DDO、DDO1及びDDO2が定められる。
ステップS105における目標合焦曲線の導出後、ステップS106において、主制御部13は、ステップS103にて取得した被写体距離マップと、既知情報である深度拡大画像の合焦曲線630と、ステップS105にて導出した目標合焦曲線730とを用いて深度拡大画像から目標合焦画像を生成する(詳細は後述)。
その後、ステップS107において、主制御部13は、生成した目標合焦画像を表示画面上に表示させ、続くステップS108において、ユーザによる所定の確定操作が操作部17に対して成されたか否かを確認する。確定操作が成された場合は、ステップS109による圧縮処理を介して、ステップS110にて目標合焦画像を記録媒体16に記録する。即ち、ステップS106にて生成された最新の目標合焦画像の画像データをJPEG(Joint Photographic Experts Group)等の所定の圧縮方式を用いて圧縮してから記録媒体16に記録する。ステップS108において確定操作が成されておらず、目標合焦画像の合焦基準距離及び/又は被写界深度の深さを変更するユーザ操作が成された場合は、その変更内容に従って上述のステップS105〜S108の各処理を実行しなおす。
[S106:目標合焦画像の生成方法]
深度拡大画像から目標合焦画像を生成するための動作を説明する。図24は、この動作の手順を表すフローチャートである。主制御部13は、深度拡大画像の全画素位置の夫々を個別に注目画素位置として捉え、注目画素位置ごとに、ステップS121〜S125の処理を実行する。以下では、1つの注目画素位置に対するステップS121〜S125の処理を説明する。
まずステップS121において、被写体距離マップ(図22のステップS103にて取得された被写体距離マップ)から注目画素位置における被写体距離ddを取得する。
次に、ステップS122において、深度拡大画像の合焦曲線630と被写体距離ddとに基づき、深度拡大画像の注目画素位置におけるPSFを導出する。ここで導出されるPSFをPSFENにて表す。図25に示す如く、合焦曲線630に沿った、被写体距離ddに対応するぼけ半径RDENが求められ、そのぼけ半径RDENに対応するPSFがPSFENとして求められる。より具体的には例えば、σ=RDEN/2を上記式(10)に代入して得たPSFVがPSFENとして求められる。
次に、ステップS123において、目標合焦画像の合焦曲線(目標合焦曲線)730と被写体距離ddとに基づき、目標合焦画像の注目画素位置におけるPSFを導出する。ここで導出されるPSFをPSFTGにて表す。目標合焦画像は、全ての被写体距離において完全にピントがあっている理想画像に対して、ぼけによる劣化を加えた画像に相当する。PSFTGは、この劣化の状態を表す関数である。図25に示す如く、目標合焦曲線730に沿った、被写体距離ddに対応するぼけ半径RDTGが求められ、そのぼけ半径RDTGに対応するPSFがPSFTGとして求められる。より具体的には例えば、σ=RDTG/2を上記式(10)に代入して得た関数PSFVがPSFTGとして求められる。
続くステップS124では、ステップS122及びS123にて求められたPSFEN及びPSFTGを線形演算することにより、深度拡大画像を目標合焦画像に変換するための補正関数FCを導出する。この補正関数FCは「FC=PSFTG/PSFEN」によって表される。尚、注目画素位置における被写体距離ddが深度拡大画像の被写界深度内の被写体距離である場合は、PSFENを1とおくことで、導出されるべき補正関数FCをPSFTGそのものとしてもよい。補正関数FCの導出後、ステップS125において、補正関数FCに基づき深度拡大画像を空間フィルタリングすることにより、目標合焦画像の注目画素位置におけるRGB信号を生成する。
実際には、ステップS124及びS125において、補正関数FCに応じたフィルタ係数が導出され、そのフィルタ係数を有する空間フィルタを用いて深度拡大画像の注目画素位置におけるRGB信号をフィルタリングする。これによって得られた空間フィルタの出力信号が、目標合焦画像の注目画素位置におけるRGB信号として生成される。尚、ステップS125においてフィルタリングの対象となる信号は、YUV形式の信号(即ち、輝度信号Y並びに色差信号U及びV)であっても良い。
上述のステップS121〜S125の処理を深度拡大画像の全画素位置に対して実行することにより、ユーザ所望の被写界深度を有する目標合焦画像を生成することができる。このような目標合焦画像を生成可能なように撮像装置1を形成しておくことにより、従来の撮像装置にて問題視されていた、被写界深度の調整に関わる問題(上述の問題β)が解消される。
[被写界深度指定操作について]
図22のステップS104にて受け付けられる被写界深度指定操作の操作方法例を説明する。この操作の受け付けがなされる際、表示画面上には、被写界深度が調整されるべき深度拡大画像(又は原画像)が表示されている。
撮像装置1において、いわゆるタッチパネル操作が可能となっている。ユーザは、表示画面に触れることによって撮像装置1に対する操作(即ち、タッチパネル操作)を行うことができる。表示部15に付随するタッチパネル制御部(不図示)が、表示画面上に加えられた圧力を検出することなどによって、タッチパネル操作を受け付ける。
図26(a)の画像750は、表示画面上に表示される画像の第1例を示している。表示画像750は、被写界深度が調整されるべき深度拡大画像(又は原画像)である。表示画像750が表示されている状態において、ユーザが表示画像750上の特定被写体を指定することにより合焦基準距離DDO(図23参照)を決定することができる。特定被写体が、表示画像750上における人物SUBである場合を考える。この場合、ユーザは、表示画面上の、人物SUBが表示されている特定位置をタッチパネル操作にて指定する。これにより、特定位置における被写体距離が被写体距離マップから抽出され、抽出された被写体距離が合焦基準距離DDOに設定される。また、タッチパネル操作を用いずに、操作部17に対する所定操作よって上記特定位置を指定することもできる。
図26(b)の画像760は、表示画面上に表示される画像の第2例を示している。表示画像760は、被写界深度が調整されるべき深度拡大画像(又は原画像)にスライダーバー761を重畳又は組み合わせたものである。表示画像760が表示されている状態において、ユーザは、スライダーバー761上のマーカ762の位置をタッチパネル操作によって又は操作部17への操作によって移動させることができ、マーカ762の移動によって、生成されるべき目標合焦画像の合焦基準距離も変化する。主制御部13は、マーカ762が移動するたびに、マーカ762の位置に応じた目標合焦曲線の導出を介してマーカ762の位置に応じた目標合焦画像をリアルタイムに生成及び表示する。ユーザが指定した最終的なマーカ762の位置から、目標合焦画像の合焦基準距離DDOが最終的に決定される。
尚、距離差(DDO−DDO1)及び(DDO2−DDO)に対して、予め初期値を設けておくと良い。距離差(DDO−DDO1)及び(DDO2−DDO)がユーザによって指定されていない状態においては、それらの初期値を実際の距離差(DDO−DDO1)及び(DDO2−DDO)に代入した上で目標合焦曲線が決定される。
撮像装置1は、上述の如く指定された合焦基準距離DDOと距離差(DDO−DDO1)及び(DDO2−DDO)の初期値とに従って暫定的に生成された目標合焦画像を表示することができる。この表示がなされている状態において、ユーザは、合焦基準距離DDOから見た前方被写界深度の深さ及び後方被写界深度の深さを指定する。前方被写界深度の深さ及び後方被写界深度の深さは、夫々、距離差(DDO−DDO1)及び(DDO2−DDO)に相当する。
図26(c)の画像770は、表示画面上に表示される画像の第3例を示している。表示画像770は、上記の暫定的に生成された目標合焦画像に、スライダーバー771及び773を重畳又は組み合わせたものである。表示画像770が表示されている状態において、ユーザは、スライダーバー771上のマーカ772の位置及びスライダーバー773上のマーカ774の位置をタッチパネル操作によって又は操作部17への操作によって移動させることができ、マーカ772及び774の移動によって、夫々、目標合焦画像における前方被写界深度の深さ及び後方被写界深度の深さが変化する。主制御部13は、マーカ772及び/又は774が移動するたびに、マーカ772及び774の位置に応じた目標合焦曲線の導出を介してマーカ772及び774の位置に応じた目標合焦画像をリアルタイムに生成及び表示する。ユーザが指定した最終的なマーカ772及び774の位置から、目標合焦画像の被写界深度を規定する距離DDO1及びDDO2が最終的に決定される。
尚、スライダーバー771及び773を1つにまとめ、1つのスライダーバー上のマーカの位置を調整することによって、目標合焦画像における前方被写界深度及び後方被写界深度の深さを同時に調整するようにしても良い。この場合、前方被写界深度の深さと後方被写界深度の深さとの比は、固定値(例えば1)とされる。
上述した距離DDO、DDO1及びDDO2の指定方法は例示であり、ユーザ所望の距離DDO、DDO1及びDDO2を指定することができるのであれば、どのような指定方法を採用しても良い。例えば、距離DDO、DDO1及びDDO2を表す数値をユーザが直接入力することによって、距離DDO、DDO1及びDDO2を指定することも可能である。
[目標合焦曲線について]
図22のステップS105にて採用可能な目標合焦曲線の導出方法について説明する。一般に、通常の光学系によって得られる画像のぼけの大きさBは、式(11)にて表されることが知られている。通常の光学系におけるレンズ及び撮像素子等の関係を図27に示す。
式(11)において、
Lは、合焦基準距離DDOに対応する、完全に合焦している被写体の被写体距離であり、
Tは、被写体距離Lと注目被写体の被写体距離との差であり、
Bは、許容錯乱円の直径の倍数であって、被写体距離(L+T)又は(L−T)における注目被写体の画像上のぼけ半径の2倍の値を有し、
mは、許容錯乱円の直径に対する撮像素子の対角線長の比であり、
Dは、レンズの有効口径であって、レンズの焦点距離をレンズのF値で割ったものであり、
Wは、被写体距離Lにおける撮影範囲(実空間上の撮影範囲)の対角線長である。
通常の光学系において被写体距離Lを決定すれば、式(11)に基づき、任意の被写体距離における被写体の画像上のぼけの大きさを計算することができる。このような特性を踏まえ、撮像装置1では、目標合焦曲線を生成するための計算式として式(12)を用いることができる。
式(12)において、
Rは、注目被写体の、目標合焦画像上におけるぼけ半径を表す。ここにおける注目被写体の被写体距離は、(DDO+ΔDD)又は(DDO−ΔDD)にて表される。
DDOは、上述の如く設定された合焦基準距離であり、
ΔDDは、合焦基準距離と注目被写体の被写体距離との差である。
また、式(12)において、
mは、許容錯乱円の直径に対する撮像素子11の対角線長の比であり、
Dは、レンズ10L(図1参照)の有効口径であって、レンズ10Lの焦点距離をレンズ10LのF値で割ったものであり、
Wは、合焦基準距離における、撮像装置1の撮影範囲(実空間上の撮影範囲)の対角線長であり、
kDPは、被写界深度調整用の係数である。
式(12)におけるmは、光学系10及び撮像素子11の特性に応じて予め定まる固定値であり、35mmフィルム換算における許容錯乱円の直径が1/30mmであるとすると、例えば約1300である。また、撮像装置1は、式(12)におけるDの値を当然に認識可能であると共に、合焦基準距離DDOから対角線長Wを導出可能である。
上記式(12)に従って目標合焦曲線を生成するようにすれば、係数kDPの調整により、目標合焦画像の被写界深度を調整可能である。また、通常の光学系にて得た画像の合焦特性(合焦曲線形状)と同様の合焦特性を目標合焦画像に持たせることができるようになるため、目標合焦画像は、通常の光学系で撮影したような自然な画像となる。
具体的には、上述の如く決定された距離DDO、DDO1及びDDO2に基づき(図23参照)、被写体距離DDO1及びDDO2における被写体の、目標合焦画像上におけるボケ半径を基準半径rREFと一致させるための係数kDPを求め、求めた係数kDPに従って目標合焦曲線を導出する。
即ち、下記式(13a)及び式(13b)を満たす係数kDP1及びkDP2を求める。そして、距離DDO未満の被写体距離とぼけ半径Rとの関係が下記式(14a)を満たし且つ距離DDO以上の被写体距離とぼけ半径Rとの関係が下記式(14b)を満たす曲線を、目標合焦曲線として導出する。これによって得られた目標合焦曲線は、概ね折れ線となる。
尚、式(14a)及び(14b)に従わないような目標合焦曲線を導出することも可能である。但し、目標合焦画像におけるぼけ半径が、被写体距離が距離DDOである時に最小となるという条件、目標合焦画像におけるぼけ半径が、被写体距離が距離DDOを起点として減少又は増大するにつれて増大するという条件、及び、目標合焦画像におけるぼけ半径が、被写体距離が距離DDO1及び距離DDO2である時に基準半径rREFと一致するという条件を全て満たすように、目標合焦曲線は導出される。
[第5実施例]
次に、第5実施例を説明する。第4実施例では、深度拡大画像から目標合焦画像が生成されるが、第5実施例では、深度拡大画像の生成を介することなく原画像から目標合焦画像を直接生成する。
図28は、原画像から目標合焦画像を生成する動作の手順を表すフローチャートである。この動作は、原画像の撮影後の任意時点にて実行される。目標合焦画像の元なる原画像の画像データが記録媒体16に記録されているか否かは任意であるが、第5実施例における以下の説明では、原画像の画像データが記録媒体16に記録されていることを想定する。また、被写体距離マップが記録媒体16に記録されているか否かは任意であるが、第5実施例における以下の説明では、被写体距離マップが記録媒体16に記録されていることを想定する。
第5実施例では、ステップS101a、S102〜S105、S106a及びS107〜S110の各処理が順次実行される。これらの処理の内、S102〜S105及びS107〜S110の処理は第4実施例で述べたそれらと同じものであり(図22参照)、第4実施例にて述べた、それらの処理に関する説明が第5実施例にも適用される。尚、第4実施例の記載事項を第5実施例に適用する際、適宜、ステップの記号S101及びS106はS101a及びS106aに読み替えられる。以下、S102〜S105及びS107〜S110の処理に対する重複する説明を割愛し、ステップS101a及びS106aの処理について説明する。
ステップS101aにおいて、主制御部13は、記録媒体16の記録データを読み出すことにより、記録媒体16に記録されている原画像を表示部15の表示画面上に表示させる。その後、ステップS102〜S105の処理を経てステップS106aの処理が実行される。
ステップS106aにおいて、主制御部13は、ステップS103にて読み出した被写体距離マップとステップS105にて導出した目標合焦曲線730(図23参照)とを用いて、原画像から目標合焦画像を生成する。詳細は後述されるが、この生成に際して、既知情報である原画像の合焦曲線(601R、601G及び601B:図4参照)も参照されうる。
ステップS106aにて目標合焦画像を生成した後、ステップS107〜S110の処理が実行される。この際、第4実施例で述べたように、ステップS108からステップS104に戻ってステップS104以降の処理が再度実行されうる。
[S106a:目標合焦画像の生成方法]
原画像から目標合焦画像を生成するための動作を説明する。図29は、この動作の手順を表すフローチャートである。主制御部13は、原画像の全画素位置の夫々を個別に注目画素位置として捉え、注目画素位置ごとに、ステップS151〜S155の処理を実行する。以下では、1つの注目画素位置に対するステップS151〜S155の処理を説明する。
まずステップS151において、被写体距離マップ(図28のステップS103にて取得された被写体距離マップ)から注目画素位置における被写体距離ddを取得する。
続くステップS152では、原画像の注目画素位置におけるPSFが導出される。原画像の注目画素位置におけるPSFは、色信号ごとに導出される。R、G及びB信号に対して導出された、原画像の注目画素位置におけるPSFを、夫々、PSFORG:R、PSFORG:G及びPSFORG:Bにて表す。
PSFORG:R、PSFORG:G及びPSFORG:Bの導出方法として、以下の第1又は第2の導出方法を採用可能である。第1の導出方法は、第4実施例におけるステップS122(図24参照)のそれと類似している。
第1の導出方法では、原画像の合焦曲線601R、601G及び601Bと被写体距離ddに基づいて、PSFORG:R、PSFORG:G及びPSFORG:Bを導出する。第1の導出方法では、図30に示す如く、合焦曲線601Rに沿った、被写体距離ddに対応するぼけ半径RDORG:Rと、合焦曲線601Gに沿った、被写体距離ddに対応するぼけ半径RDORG:Gと、合焦曲線601Bに沿った、被写体距離ddに対応するぼけ半径RDORG:Bとが求められ、ぼけ半径RDORG:R、RDORG:G及びRDORG:Bに対応するPSFが、夫々、PSFORG:R、PSFORG:G及びPSFORG:Bとして求められる。より具体的には例えば、σ=RDORG:R/2、σ=RDORG:G/2、σ=RDORG:B/2を上記式(10)に代入して得た関数PSFVが、夫々、PSFORG:R、PSFORG:G、PSFORG:Bとして求められる。
第2の導出方法では、第1実施例にて述べた合焦色及び非合焦色の特定処理を介したPSF演算を用いて、PSFORG:R、PSFORG:G及びPSFORG:Bを導出する。つまり、注目画素位置に対して図9のステップS21〜S28の処理を実行し、得られたPSFof1’及びPSFof2’よりPSFORG:R、PSFORG:G及びPSFORG:Bを導出する。例えば、赤が合焦色であると共に緑及び青が非合焦色であり且つ緑に対応する非合焦色画像がIof1である場合、PSFof1’ 及びPSFof2’を逆フーリエ変換することで得られた空間領域上のPSFof1及びPSFof2が、夫々、PSFORG:G及びPSFORG:Bとして求められ、且つ、合焦色に対応するPSFORG:Rは1とされる。
第2の導出方法に対して第2又は第3実施例にて述べた方法を適用することもできる。即ち、図18のステップS41〜S49及びS63の処理によって、各画素位置におけるR信号のPSF、G信号のPSF及びB信号のPSFをガウス関数として近似的に求め、近似的に求められたガウス関数としてのPSFの内の、注目画素位置におけるR、G及びB信号のPSFを、夫々、PSFORG:R、PSFORG:G及びPSFORG:Bとして求めるようにしてもよい。
ステップS153の処理は図24のステップS123のそれと同じであり、ステップS153において、目標合焦画像の注目画素位置におけるPSFがPSFTGとして導出される。
続くステップS154では、ステップS152にて求められた原画像のPSF(PSFORG:R、PSFORG:G及びPSFORG:B)とステップS153にて求められた目標合焦画像のPSF(PSFTG)とを線形演算することによって、原画像を目標合焦画像に変換するための補正関数を導出する。ステップS154にて導出される補正関数は、R信号についての補正関数FCR、G信号についての補正関数FCG及びB信号についての補正関数FCBから成り、それらは「FCR=PSFTG/PSFORG:R」、「FCG=PSFTG/PSFORG:G」及び「FCB=PSFTG/PSFORG:B」によって表される。
その後、ステップS155において、補正関数FCR、FCG及びFCBに基づき原画像を空間フィルタリングすることにより、目標合焦画像の注目画素位置におけるRGB信号を生成する。
実際には、ステップS154及びS155において、補正関数FCRに応じたフィルタ係数が導出され、そのフィルタ係数を有する空間フィルタを用いて原画像の注目画素位置におけるR信号をフィルタリングする。これによって得られた空間フィルタの出力信号が、目標合焦画像の注目画素位置におけるR信号として生成される。同様にして、補正関数FCG及びFCBに基づくフィルタリングにより、目標合焦画像の注目画素位置におけるG及びB信号が生成される。
第5実施例の如く処理しても、第4実施例と同様の効果が得られる。
[第6実施例]
次に、第6実施例を説明する。第6実施例では、第4又は第5実施例にて述べた方法に対する変形方法などを説明する。第6実施例にて述べた事項は、第4又は第5実施例と組み合わせて実施される。
――縮小画像の利用――
第4又は第5実施例では、被写界深度指定操作に従って深度拡大画像又は原画像から目標合焦画像が生成及び表示され、その操作によって指定される合焦基準距離及び/又は被写界深度の深さが変更される度に、リアルタイムに目標合焦画像が再生成されて表示画像が更新される(図22又は図28参照)。このような表示画像の更新により被写界深度の調整が容易となるが、ここで表示のために生成される目標合焦画像は、最終的にステップS110にて記録されるべき目標合焦画像の縮小画像であってもよい。撮像装置1に搭載される表示部15の表示画面は、通常比較的小さいため、被写界深度の調整用のために生成及び表示される画像の解像度は低くても支障がないからである。
つまり、以下のように第4実施例を変形しても良い。図22のステップS106において深度拡大画像から目標合焦画像を生成する際、深度拡大画像として深度拡大画像の縮小画像を用いることによって目標合焦画像の縮小画像を生成し、ステップS107においては、その目標合焦画像の縮小画像を表示する。その後、ユーザによる確定操作がなされた場合、確定操作がなされた時点における目標合焦曲線に従い、通常サイズの深度拡大画像を用いてステップS106の処理を再度実行することで通常サイズの目標合焦画像を生成する。その後、得られた通常サイズの目標合焦画像を圧縮処理を介して記録媒体16に記録する(ステップS109及びS110)。
同様に、以下のように第5実施例を変形しても良い。図28のステップS106aにおいて原画像から目標合焦画像を生成する際、原画像として原画像の縮小画像を用いることによって目標合焦画像の縮小画像を生成し、ステップS107においては、その目標合焦画像の縮小画像を表示する。その後、ユーザによる確定操作がなされた場合、確定操作がなされた時点における目標合焦曲線に従い、通常サイズの原画像を用いてステップS106aの処理を再度実行することで通常サイズの目標合焦画像を生成する。その後、得られた通常サイズの目標合焦画像を圧縮処理を介して記録媒体16に記録する(ステップS109及びS110)。
尚、通常サイズの原画像、深度拡大画像及び目標合焦画像とは、画像サイズの縮小がなされていない原画像、深度拡大画像及び目標合焦画像を指し、原画像、深度拡大画像及び目標合焦画像の縮小画像とは、画像サイズの縮小がなされた原画像、深度拡大画像及び目標合焦画像を指す。通常サイズの原画像の画素数は、原画像の縮小画像のそれよりも大きい。深度拡大画像及び目標合焦画像についても同様である。画像サイズの縮小は、画素の間引きなどを用いた解像度変換によって実現される。
――目標合焦画像の被写界深度の自動設定――
第4及び第5実施例では、目標合焦画像における被写界深度がユーザの指示に従って設定されているが、それを主制御部13が自動的に設定するようにしてもよい。
例えば、深度拡大画像又は原画像の画像データに基づき深度拡大画像又は原画像の画像領域の中から人物を検出する人物検出部、又は、深度拡大画像又は原画像の画像データに基づき深度拡大画像又は原画像の画像領域の中から人物の顔を検出する顔検出部を主制御部13に設けておき、人物検出部又は顔検出部の検出結果に応じて、主制御部13が自動的に暫定的な距離DDO、DDO1及びDDO2の値又は最終的な距離DDO、DDO1及びDDO2の値を決定するようにしても良い。画像データに基づく人物検出方法及び画像データに基づく顔検出方法として、公知の任意の方法を用いることができる。
具体的には、人物検出部又は顔検出部によって人物又は顔が検出された場合、その人物又は顔の画像データが存在する画像上の位置を検出し、検出した位置における被写体距離(平均的な被写体距離)を被写体距離マップから抽出して、抽出した被写体距離を暫定的な合焦基準距離DDOに設定する。換言すれば、抽出した被写体距離を距離DDOの初期値に設定する。一方で、予め定めておいた所定の距離差を暫定的に距離差(DDO−DDO1)及び(DDO2−DDO)に設定する。換言すれば、所定の距離差を距離差(DDO−DDO1)及び(DDO2−DDO)の初期値に設定する。これにより、距離DDO、DDO1及びDDO2の初期値が決定される。
この後、主制御部13は、距離DDO、DDO1及びDDO2の初期値に従った目標合焦曲線を求めて該目標合焦曲線に従った目標合焦画像を生成及び表示する。ユーザが満足した場合はユーザの確定操作によって、この目標合焦画像が圧縮処理を介して記録媒体16に記録される(図22のステップS108〜S110を参照)。この場合、距離DDO、DDO1及びDDO2の初期値は、結果的に、最終的な距離DDO、DDO1及びDDO2の値と一致する。
ユーザは、第4実施例で示したようなタッチパネル操作又は操作部17への操作によって、距離DDO、DDO1及びDDO2の値をそれらの初期値から変更することができる。その変更が成された場合、変更後の距離DDO、DDO1及びDDO2の値に従って、目標合焦曲線の導出を介して目標合焦画像が生成及び表示される。
人物又は顔を被写体に含めた撮影は、通常、人物又は顔に注目した撮影であるため、人物又は顔にピントが合い且つ背景がぼけたような、被写界深度の浅い画像の取得が望まれることが多い。従って、人物検出部又は顔検出部によって人物又は顔が検出された場合において距離差(DDO−DDO1)及び(DDO2−DDO)に設定される初期値は、比較的小さな値に設定される。
目標合焦画像の被写界深度を自動的に設定する方法は、上記方法に限定されない。例えば、被写体距離マップに含まれる各画素位置における推定被写体距離の内、最小の推定被写体距離を距離DDOの初期値に設定すると共に、所定の距離差を距離差(DDO−DDO1)及び(DDO2−DDO)の初期値に設定することにより、目標合焦画像の被写界深度の自動設定を実現してもよい。この場合も、距離DDO、DDO1及びDDO2の初期値に従った目標合焦画像が生成及び表示されるが、ユーザの指示によって距離DDO、DDO1及びDDO2の値はそれらの初期値から変更されうる。
――目標合焦画像の生成に関わるブロック図――
次に、第4又は第5実施例に述べた処理を担う部位の構成例を説明する。図31は、その処理を担う部位のブロック図である。図31の符号61〜62によって参照される各部位は、主制御部13に設けられる。尚、第4及び第5実施例における主制御部13には、図21に示した部位(符号51〜56によって参照される部位)の全部又は一部も更に備えられている。
目標被写界深度設定部61は、上述の被写界深度指定操作に基づき、或いは、第6実施例で上述した自動設定方法に従い、目標合焦画像の合焦基準距離(DDO)並びに前方被写界深度の深さ(DDO−DDO1)及び後方被写界深度の深さ(DDO2−DDO)を設定する。この設定内容に従い、目標合焦画像の被写界深度(目標被写界深度)を表す目標合焦曲線が生成される。
画像補正部62は、図22のステップS106の処理又は図28のステップS106aの処理を実行する。即ち、目標合焦曲線に従い、被写体距離マップを用いて深度拡大画像又は原画像から目標合焦画像を生成する。
本実施形態の説明文中に示した具体的な数値は、単なる例示であって、当然の如く、それらを様々な数値に変更することができる。
撮像装置1は、ハードウェア、或いは、ハードウェアとソフトウェアの組み合わせによって実現可能である。特に、主制御部13内で実行される処理の全部又は一部は、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせによって実現可能である。ソフトウェアを用いて撮像装置1を構成する場合、ソフトウェアにて実現される部位についてのブロック図は、その部位の機能ブロック図を表すことになる。