以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
(第1の実施形態)
まず、図1を参照して、本発明の第1の実施形態おける撮像装置の構成について説明する。図1は、本実施形態における撮像装置(デジタルカメラ)100のブロック図である。本実施形態は、撮影画像に適用する補正処理、より具体的には画像信号からPSFを推定し、推定したPSFに基づいて画像のボケやブレを補正する方法に関する。従って、撮像装置100における撮影や記録に関する構成は必須ではない。なお本実施形態において、「ボケ」は画像の合焦ずれによるボケ(焦点ボケ)を含み、「ブレ」は手ブレや被写体ブレなどを含むが、これらに限定されるものではない。
図1において、レンズ群101は、フォーカスレンズを含むズームレンズ(撮像光学系)である。本実施形態の撮像装置100は、撮像光学系と撮像装置本体とが一体的に構成されている。ただし本実施形態は、これに限定されるものではなく、撮像装置本体と、撮像装置本体に着脱可能な撮像光学系(交換レンズ)とを備えた撮像システムにも適用可能である。
シャッタ102は、絞り機能を有し、レンズ群101と撮像部103との間に設けられている。撮像部103は、CMOSセンサやCCDセンサなどの撮像素子を有し、レンズ群101を介して撮像面に形成される光学像を画素単位で電気信号(アナログ信号)に変換する(光電変換を行う)。A/D変換器104は、撮像部103から出力されるアナログ信号をデジタル信号(画像データ)に変換する。
画像処理部(画像処理装置)105は、A/D変換器104から出力される画像データに対し、色補間(デモザイク)、ホワイトバランス調整、γ補正などの各種の画像処理を行う。また画像処理部105は、撮影画像のブレやボケを補正する補正処理を行う。画像メモリ106は、画像データを一時的に記憶する。メモリ制御部107は、画像メモリ106の読み書きを制御する。D/A変換器108は、画像データをアナログ信号に変換する。表示部109は、LCDや有機ELディスプレイなどの表示装置を有し、各種GUI、ライブビュー画像、および、記録媒体112から読み出して再生した画像などを表示する。記録媒体112は、半導体メモリカードやカード型ハードディスクなどの着脱可能な記録手段である。コーデック部110は、画像メモリ106に記憶されている画像データを記録媒体112に記録するために予め定められた方法で符号化し、または、画像ファイルに含まれる符号化画像データを例えば表示のために復号する。インタフェース(I/F)111は、記録媒体112を撮像装置100と機械的かつ電気的に接続する。
システム制御部50は、CPUやMPUなどのプログラマブルなプロセッサを有する。システム制御部50は、例えば不揮発性メモリ121や内蔵する不揮発性メモリに記憶されたプログラムを実行して必要なブロックや回路を制御することにより、撮像装置100の各機能を実現する。顔検出部113は、撮影画像に含まれる顔領域を検出し、検出された顔領域のそれぞれについて、位置、大きさ、および、信頼度などの顔情報を求める。なお顔検出部113は、ニューラルネットワークに代表される学習を用いた手法や、目、鼻、口などの特徴部位を画像領域からテンプレートマッチングを用い探し出して類似度が高い場合に顔とみなす手法など、任意の方法を用いて顔領域を検出することができる。
動きベクトル検出部124は、画像処理部105から出力された画像信号と、画像メモリ106に記録されている、直前に撮影された画像の画像信号とを用いて、撮影画像の各領域における動きベクトルを検出(算出)する。動きベクトルの算出方法は、公知の技術を用いることができる。動きベクトルは、例えば、次のように算出することができる。まず、撮影画像を所定の大きさのブロックに分割する。続いて、テンプレートマッチング法を用いて、撮影画像の各ブロックに対応する領域を、直前に撮影された画像内から検出する。そして、対応する領域同士を結ぶベクトルを、各ブロックにおける動きベクトルとする。
操作部120は、ユーザが撮像装置100に各種の指示を入力するためのボタンやスイッチなどの入力デバイスである。表示部109がタッチディスプレイである場合、操作部120はタッチパネルを含む。また操作部120は、音声入力や視線入力など、非接触で指示を入力するタイプの入力デバイスを含んでもよい。不揮発性メモリ121は、電気的に消去・記録可能なEEPROMなどである。不揮発性メモリ121は、各種の設定値やGUIデータを記憶する。また不揮発性メモリ121は、システム制御部50がMPUやCPUである場合、システム制御部50が実行するためのプログラムを記憶する。システムメモリ122は、システム制御部50の動作用の定数や変数、および、不揮発性メモリ121から読み出されたプログラムなどを展開するために用いられる。測距部123は、撮像装置100から被写体までの距離を測定する距離測定手段である。
次に、撮像装置100による被写体撮影の際の基本動作について説明する。撮像部103は、シャッタ102が開いた状態で、レンズ群101を介して撮像面に形成された被写体像(光学像)を光電変換し、アナログ画像信号としてA/D変換器104へ出力する。A/D変換器104は、撮像部103から出力されるアナログ画像信号をデジタル画像信号(画像データ)に変換し、画像データを画像処理部105に出力する。
画像処理部105は、A/D変換器104からの画像データ、または、メモリ制御部107からの画像データに対して、同時化処理(デモザイク処理)やγ補正などの各種画像処理を行う。また画像処理部105は、撮影で得られた画像データを用いて輝度やコントラストなどに関する所定の演算処理を行い、得られた演算結果に基づいてシステム制御部50が焦点調節や露光制御を行う。焦点調節や露出制御には、顔検出部113や測距部123の検出結果を用いてもよい。本実施形態の撮像装置100は、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、および、AE(自動露出)処理を行う。また画像処理部105は、後述する方法を用いて、PSFに基づくブレやボケの補正処理を行う。
画像処理部105から出力された画像データは、メモリ制御部107を介して画像メモリ106に書き込まれる。画像メモリ106は、撮像部103から出力された画像データや、表示部109に表示するための画像データを格納する。D/A変換器108は、画像メモリ106に格納されている画像表示用のデータをアナログ信号に変換して表示部109に供給する。表示部109は、LCDなどの表示装置にD/A変換器108からのアナログ信号に応じた表示を行う。コーデック部110は、画像メモリ106に記録された画像データをJPEGやMPEGなどの規格に基づき符号化する。システム制御部50は符号化した画像データに対して予め定められたヘッダなどを付与して画像ファイルを形成し、インタフェース111を介して記録媒体112に記録する。
撮像装置100は、撮影スタンバイ状態において動画撮影を行い、撮影動画を表示部109に表示し続けることにより表示部109を電子ビューファインダ(EVF)として機能させることができる。この場合、シャッタ102は開いた状態であり、撮像部103のいわゆる電子シャッタを用いて例えば30フレーム/秒の撮影を行う。そして、操作部120に含まれるシャッタボタンが半押しされると、システム制御部50は前述のAF制御およびAE制御を行う。また、操作部120に含まれるシャッタボタンが全押しされると、システム制御部50は本撮影により記録用の静止画撮影を実行し、記録媒体112に撮影画像を記録する。また、動画撮影ボタンなどにより動画撮影が指示された場合、システム制御部50は記録媒体112への動画記録を開始する。
次に、図2および図3を参照して、画像処理部105によるブレやボケの補正処理に関する機能について説明する。図2は、画像処理部105のブロック図である。図3は、画像処理部105による補正処理(本実施形態の画像処理方法)のフローチャートである。図3の各ステップは、画像処理部105の各部により実行される。
なお、図2に示される機能ブロックの少なくとも一つは、マイクロプロセッサとソフトウエアとの組み合わせより実現される。または、機能ブロックの少なくとも一つは、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)のようなハードウエアにより実現されてもよい。PLDは、FPGA(Field−Programmable Gate Array)、PLA(Programmable Logic Array)などを含むが、これに限定されるものではない。
ブレやボケの補正処理は、ブレやボケの補正処理の実行が指定された状態で撮影された画像や、メニュー画面などからブレやボケの補正処理の実施が指示された、例えば記録媒体112に記録済の画像に対して実施することができる。なお、ブレやボケの補正処理において必要な撮影時の情報は、不揮発性メモリ121またはシステムメモリ122から読み出し、または、画像ファイルのヘッダやメタデータなどから取得することができる。
図2に示されるように、画像処理部105は、画像信号生成部201、PSF推定領域抽出部202、PSF推定部203、画像補正部204、画像合成部205、劣化特性推定部206、および、合成比率算出部207を有する。本実施形態において、画像補正部204、画像合成部205、および、合成比率算出部207により補正処理部が構成される。
まず、図3のステップS301において、画像信号生成部201は、画素あたり一色(R、G、Bのいずれか一つ)の情報を有する画像信号に対して同時化処理(デモザイク処理)を行い、各画素が三色(RGB)の情報を有する画像信号を生成する。画像信号生成部201は、生成した画像信号を、PSF推定領域抽出部202、画像補正部204、および、画像合成部205へ出力する。
続いてステップS302において、PSF推定領域抽出部202は、画像信号生成部201から出力された画像信号(入力画像)の中から、PSF推定処理に用いる部分領域としてPSF推定領域を選択する。そしてPSF推定領域抽出部202は、入力画像から、選択したPSF推定領域の画像信号を抽出する。PSF推定領域の選択方法として、入力画像中の主被写体領域を検出して、その被写体検出領域を選択する方法を用いることができる。または、操作部120を介してユーザにPSF推定領域を指定させるようにしてもよい。PSF推定領域抽出部202は、抽出した画像信号をPSF推定部203へ出力する。またPSF推定領域抽出部202は、選択したPSF推定領域の位置に関する情報を合成比率算出部207へ出力する。
続いてステップS303において、PSF推定部203は、入力されたPSF推定領域の画像信号に基づいて、PSF推定領域におけるブレやボケに関する特性(劣化特性)を表すPSF(点拡がり関数)を推定する(PSF推定処理)。すなわちPSF推定部203は、画像の部分領域としてのPSF推定領域からPSFを推定する。そしてPSF推定部203は、推定したPSFに関する情報を画像補正部204へ出力する。本実施形態において、PSF推定処理は、公知の技術を用いることができる。以下、一例として、反復法を用いたPSF推定処理の概要を説明する。
撮影画像のうち、PSF推定領域の画像信号をB、推定する対象となるPSFをK、PSF推定領域におけるブレやボケの無い画像(潜像)をLとして、撮影画像のノイズを無視すると、以下の式(1)の関係が成り立つ。
式(1)において、Convは畳み込み演算を表す。式(1)は、KとLの両方が未知数であるため、解析的に解くことはできない。そこで、次のような推定を行う。
まず、適当な潜像Lの初期値を定める。潜像Lの初期値としては、撮影画像に対してショックフィルタ等を用いてエッジ強調処理を施した画像を用いることができる。
続いて、以下の式(2)で表されるエネルギー関数E(K)において、Lを固定、Kを未知数として、エネルギー関数E(K)を最小化するKを算出する。
式(2)において、σは正則化項を表し、ここではPSFの各要素の二乗和を取るL2ノルムを用いている。
続いて、算出したKを用いて、以下の式(3)で表されるエネルギー関数E(L)において、Kを固定、Lを未知数として、エネルギー関数E(L)を最小化するLを算出する。
式(3)において、σは正則化項を表し、ここでは潜像Lの各画素値の二乗和を取るL2ノルムを用いている。
そして、算出したLを用いてエネルギー関数E(K)を最小化するKを算出し、算出したKを用いてエネルギー関数E(L)を最小化するLを算出するという処理を、算出したKが一定の値に収束するまで反復的に行うことによりPSFを推定する。以上が、反復法を用いたPSF推定方法の概要である。
続いて、図3のステップS304において、画像補正部204は、入力されたPSFに関する情報に基づいて、画像信号生成部201により生成された画像信号に対してブレやボケなどの劣化の補正処理を行う(画像補正処理)。そして画像補正部204は、補正した画像信号を画像合成部205へ出力する。本実施形態において、PSFに基づく補正方法は、公知の技術を用いることができる。一例として、ウィナーデコンボリューションを用いた補正処理の概要を説明する。推定したPSFをK、撮影画像をB、潜像をLとすると、潜像Lは以下の式(4)のように表すことができる。
式(4)において、f()は逆フーリエ変換、*は複素共役、λはブレやボケの無い画像に含まれるノイズ成分の比率(SN)をそれぞれ示している。なお、前述のウィナーデコンボリューションの他に、以下の式(5)のように表される逆フィルタを用いる手法を採用してもよい。
また、推定したPSFからエッジ強調のフィルタを作成してフィルタ処理を行うことによりエッジを強調させる補正方法を用いてもよい。
続いて、図3のステップS305において、劣化特性推定部(ブレボケ特性推定部)206は、撮影画像の複数の領域のそれぞれに関するブレやボケなどの劣化特性(ブレボケ特性)を推定し、劣化特性量(ブレボケ特性量)を算出する。この特性推定処理の詳細については後述する。劣化特性推定部206は、推定した劣化特性に関する評価値(劣化特性量)を、合成比率算出部207へ出力する。
続いてステップS306において、合成比率算出部207は、撮影画像の各領域における画像合成比率を算出する。撮影画像の各領域における画像合成比率は、劣化特性推定部206により推定されたブレやボケの特性を表す評価値(劣化特性評価値)と、PSF推定領域抽出部202により選択されたPSF推定領域の位置に関する情報とに基づいて算出することができる。ここで画像合成比率とは、画像合成部205が、画像信号生成部201から出力された補正処理前の撮影画像と、画像補正部204から出力された補正処理後の画像(補正画像)とを合成する際の合成比率を表す。なお、合成比率の算出方法の詳細については後述する。合成比率算出部207は、算出した合成比率を、画像合成部205へ出力する。
続いてステップS307において、画像合成部205は、画像信号生成部201から出力された画像信号と、画像補正部204から出力された補正後の画像信号とを合成比率算出部207により算出された画像合成比率に基づいて合成し、合成画像を生成する。ここで、合成画像の画像信号をI、画像信号生成部201により生成された画像信号をI0、画像補正部204により生成された補正後の画像信号をI1、合成比率をm、画像の位置を(x、y)で表すものとする。画像合成部205は、以下の式(6)を用いて画像信号を合成する。
画像合成部205が合成した画像信号を出力すると、システム制御部50による制御に基づいて、合成された画像信号が記録媒体112へ記録される。以上が、本実施形態における補正処理の流れである。
次に、図4を参照して、劣化特性推定部206が撮影画像の各領域におけるブレやボケの特性を推定する処理(特性推定処理)、および、合成比率算出部207が画像合成比率を算出する処理(合成比率算出処理)の詳細をそれぞれ説明する。図4は、特性推定処理および合成比率算出処理の説明図である。
劣化特性推定部206は、画像の各領域におけるボケ(焦点ボケ)の大きさ、ならびにブレの大きさおよびブレの方向をそれぞれ推定し、ブレやボケなどの劣化特性に関する評価値を出力する。ここで、ボケの特性(ボケに関する劣化特性)は、測距部123により測定された、画像の各領域における撮像装置100と被写体との間の距離の情報に基づいて算出することができる。具体的には、撮影の際に行ったAF制御において合焦位置として決定された合焦点に関する距離情報と、画像の各領域とにおける距離情報とを比較する。画像の各領域における距離情報が合焦点における距離情報と近い場合、焦点ボケの程度が小さく、距離情報が異なる程、焦点ボケの程度は大きい。したがって、劣化特性推定部206は、画像の各領域における被写体距離と、合焦点における被写体距離との差分値を、所定の正規化係数によって正規化し、ボケの特性評価値を出力する。
ブレ(手ブレや被写体ブレ)の大きさおよび方向は、動きベクトル検出部124により検出された動きベクトルに基づいて推定することができる。具体的には、動きベクトルの方向がブレの生じている方向を表し、動きベクトルの大きさがブレの大きさを表す。したがって、劣化特性推定部206は、画像の各領域における動きベクトルの大きさおよび方向を、所定の正規化係数によって正規化し、ブレの大きさおよび方向に関する特性評価値を出力する。
次に、合成比率算出部207が画像合成比率を算出する方法について説明する。ここで、合成比率算出部207は、PSF推定領域に関するブレやボケなどの劣化特性と、画像の複数の領域のそれぞれに関するブレやボケなどの劣化特性との比較結果に基づいて、画像の領域ごとに合成比率を算出する。画像の複数の領域のうち、PSF推定領域に関する劣化特性と近い劣化特性を有する特定領域に対しては、PSF推定領域により推定されたPSFに基づいて補正を行うことができるため、補正画像の比率が高くなるようにする。一方、PSF推定領域に関する劣化特性と異なる劣化特性を有する特定領域に対しては、推定したPSFに基づく補正では誤った補正がなされる可能性があるため、補正画像の比率を低くし、誤った補正により生じうる弊害を低減する。
具体的には、次のように算出する。図4(a)は、劣化特性推定部206が推定したブレやボケの特性(劣化特性)を示す図である。図4(a)において、α軸はボケの大きさ、β軸はブレの大きさ、γ軸はブレの方向をそれぞれ示す。また、点P0はPSF推定領域における特性評価値を表し、点P0の座標は(α0、β0、γ0)である。点P1は合成比率の算出を行う対象領域における特性評価値を表し、点P1の座標は(α1、β1、γ1)である。合成比率算出部207は、以下の式(7)を用いて、PSF推定領域におけるブレやボケなどの劣化特性と、合成比率の算出対象領域における劣化特性との差分Δを算出する。
式(7)において、a、b、cはそれぞれ、ボケの大きさ、ブレの大きさ、ブレの方向に対する重みである。ボケの大きさ、またはブレの大きさが異なる場合に比べて、ブレの方向が異なる場合、対応するPSFの形状が大きく異なる。このため、ブレの方向の差分に対する重みcは、重みa、bに対して大きな値を取ることが好ましい。
次に、図4(b)を参照して、合成比率の算出方法を説明する。図4(b)において、横軸はブレやボケの特性評価値の差分Δを示し、縦軸は画像合成比率mを示す。図4(b)に示されるように、ブレやボケの特性評価値の差分Δが大きいほど、補正処理の影響が小さくなるように、すなわち画像合成比率が低くなるよう設定する。なお、図4(b)は、特性評価値の差分Δが所定の閾値Th以下である場合、合成比率mを1とする場合を示しているが、合成比率mの算出方法はこれに限定されるものではない。例えば、特性評価値の差分Δが大きくなるにつれて、合成比率mが低い値となるように設定された曲線の特性に基づいて合成比率mを設定してもよい。
合成比率算出部207は、前述の合成比率mの算出処理を、画像の各領域に対して順次実行し、算出した結果を画像合成部205へ出力する。画像合成部205は、前述のように、入力された合成比率に基づいて画像の合成処理を行う。
本実施形態では、画像の各領域におけるブレやボケの特性と、PSF推定領域におけるブレやボケの特性とを比較した結果に基づいて、画像の各領域における画像合成比率を設定する。これにより、推定したPSFに基づく補正を適用した場合に誤った補正を行うこととなる領域では、補正画像を用いない。その結果、補正による弊害を低減することが可能となる。
なお本実施形態では、ブレやボケに関する特性(劣化特性)を表す評価値として、ボケの大きさ、ブレの大きさ、および、ブレの方向の三つの特徴評価値を用いる場合を説明したが、劣化特性の評価方法はこれに限定されるものではない。例えば、画像の各領域においてPSFを推定し、推定したPSFの形状に基づいて、劣化特性を推定するようにしてもよい。この場合、推定したPSFの形状を比較して、形状が近ければPSFに基づいて補正した画像を用いる。一方、形状が異なる場合には、補正した画像を用いないように合成比率を制御する。ここで、画像の各領域において算出するPSFは、劣化特性を評価するために用いられるため、劣化の補正に用いるPSFを推定する場合に比べて推定精度が低くても構わない。したがって、反復法に用いるPSFの収束に対する条件を緩めることにより、演算量を低減させるようにしてもよい。
また、ボケの特性を表す量として、画像信号に含まれるエッジ信号に着目し、エッジ部分における画像信号の変化の勾配情報に基づいて、劣化特性を推定してもよい。エッジ部分における画像信号の変化が緩やかであるほど、ボケやブレなどの劣化が大きいと推定すればよい。これにより、距離情報や動きベクトルに関する情報を取得することができない場合でも、画像劣化の補正を適切に制御することができる。また、画像を撮影時のAF制御で用いる合焦状態を評価する評価値に基づいて、画像の複数の領域のそれぞれに関する劣化特性を推定するようにしてもよい。
また、ブレの特性を評価するため、撮像装置100に設けられたジャイロ(ブレ検出部)によるブレ検出結果(ブレに関する情報)を用いるようにしてもよい。検出されたブレが一方向へシフトするブレである場合、ブレの方向は画像内で一様であると推定できる。検出されたブレが回転ブレである場合、ブレの方向が画像内で非一様であると推定することができる。ブレの方向が非一様である場合、PSF推定領域と異なる位置の画像領域には、PSFに基づく補正を適用しないように補正処理を制御する。
本実施形態は、ブレやボケなどの特性(劣化特性)を表す量(劣化特性評価値)に基づいて、画像の合成比率を定める場合を説明したが、劣化特性の補正の制御方法はこれに限定されるものではない。例えば、PSFに基づいて画像を補正する際に、画像の各領域における劣化特性に基づいて、各領域に対して補正処理を実行するか否かを判定するようにしてもよい。この場合、PSF推定領域における劣化特性とは異なる劣化特性を有する領域では、補正処理を実行しないよう制御すればよい。また、撮影画像と補正画像との合成ではなく、推定したPSFを合成する方法や、PSFに基づいて決定される補正強度または補正量を合成する方法を用いることもできる。この場合、PSF推定領域とは異なる劣化特性を有する領域に対しては、PSFに基づく補正が適用されないように合成比率を定めればよい。
本実施形態は、PSF推定領域が画像中の一箇所である場合を説明したが、PSF推定処理の方法はこれに限定されるものではない。すなわち、画像中の複数の領域においてPSFを推定するようにしてもよい。この場合、画像合成の際には、複数のPSF推定領域の中で、処理対象とする領域における劣化特性と最も近い劣化特性を有するPSF推定領域を選択する。そして、選択したPSF推定領域において推定されたPSFに基づいて補正した補正画像と、補正前の撮影画像とを合成するようにすればよい。または、複数の領域においてPSFを推定し、それぞれのPSFに基づいて補正を行った補正画像同士を合成するようにしてもよい。この場合、合成比率の算出は、以下のように行うことができる。まず、複数のPSF推定領域の中で、処理対象とする領域における劣化特性と最も近い劣化特性を有するPSF推定領域を選択する。そして、選択したPSF推定領域に対応する補正画像の合成比率が高くなるように合成比率を定めればよい。
本実施形態は、劣化特性(劣化特性評価値)の差分の絶対値に基づいて合成比率を定める場合を説明したが、合成比率の算出方法はこれに限定されるものではない。例えば、劣化特性評価値の差分の絶対値に加えて、大小関係の情報を用いることもできる。具体的には、処理対象の領域における劣化特性評価値が、PSF推定領域における劣化特性評価値よりも大きい場合には補正画像に対する合成比率を高く設定し、小さい場合には補正画像に対する合成比率を低く設定するようにしてもよい。これは、PSF推定領域よりもブレやボケなどの劣化が小さい領域に対して、PSFに基づいた補正を適用すると、リンギングなどの目立つ弊害が生じる場合が多いためである。
また、ブレやボケなどの劣化特性に加えて、画像中の被写体を検出した結果を用いて合成比率を算出してもよい。具体的には、劣化特性評価値の差分が所定の閾値以上であり、かつ、PSF推定領域とは異なる被写体に属する領域に対しては、補正画像の合成比率を低く設定するようにする。これにより、被写体間の境界において、誤った補正による弊害が生じることを低減させることができる。
また、画像の各領域に含まれるエッジ信号の情報も用いて合成比率を算出するようにしてもよい。具体的には、劣化特性評価値の差分が所定の閾値以上であり、かつ、振幅の大きなエッジ信号が多く含まれる領域に対しては、補正画像の合成比率を低く設定するようにする。これにより、エッジを多く含む領域において、目立った弊害が生じることを低減させることができる。
(第2の実施形態)
次に、図5および図6を参照して、画像処理部105aによるブレやボケなどの画像劣化の補正処理に関する機能について説明する。図5は、画像処理部105aのブロック図である。図6は、画像処理部105aによる補正処理(本実施形態の画像処理方法)のフローチャートである。図6の各ステップは、画像処理部105aの各部により実行される。
第1の実施形態は、PSFに基づいて補正した画像と補正前の撮影画像とを合成する場合を説明した。一方、本実施形態は、複数の領域に関する複数のPSFを推定し、画像のブレやボケなどの劣化特性に基づいて、推定した複数のPSFの一つを用いて画像の補正処理を行う場合を説明する。なお本実施形態の撮像装置(デジタルカメラ)は、画像処理部105に代えて画像処理部105aを有する点で、第1の実施形態の撮像装置100と異なる。本実施形態における撮像装置の他の構成は、図1を参照して第1の実施形態にて説明した撮像装置100と同様であるため、その説明は省略する。
図5に示されるように、画像処理部105aは、画像信号生成部201、画像補正部204、PSF推定領域抽出部501a、501b、PSF推定部502a、502b、および、PSF選択部503を有する。本実施形態において、画像補正部204およびPSF選択部503により補正処理部が構成される。
図6のステップS601において、図3のステップS301と同様に、画像信号生成部201は、画像信号R、G、Bを生成する。画像信号生成部201は、生成した画像信号を、PSF推定領域抽出部501a、501b、および、画像補正部204へ出力する。
続いてステップS602において、PSF推定領域抽出部501a、501bはそれぞれ、PSF推定領域a、bを選択する。図5に示されるように、画像処理部105aは複数のPSF推定部502a、502bを有する。このため、複数の箇所に関して、PSFの推定処理を行うことができる。例えば、撮影画像が主被写体である前景領域(主被写体領域)と背景領域とを含む場合、主被写体領域と背景領域とのそれぞれから、PSFを推定するようPSF推定領域を選択する。または、複数の人物が並んでいる場合のように複数の主被写体が存在する場合、それぞれの主被写体領域からPSF推定領域を選択するようにしてもよい。または操作部120を介して補正対象の被写体をユーザに選択させた場合、ユーザが選択した被写体領域の複数の箇所をPSF推定領域として選択してもよい。例えば、ユーザが選択した被写体が人物である場合、人物の顔領域および体領域のそれぞれからPSF推定領域を選択する。PSF推定領域抽出部501a、501bは、選択したPSF推定領域a、bの画像信号を抽出し、PSF推定部502a、502bへそれぞれ出力する。またPSF推定領域抽出部501a、501bは、選択したPSF推定領域の位置の情報をPSF選択部503へ出力する。
続いてステップS603において、PSF推定部502a、502bはそれぞれ、PSF推定領域抽出部501a、501bから出力されたPSF推定領域の画像信号に基づいて、PSFを推定する(PSF推定処理)。そしてPSF推定部502a、502bは、推定したそれぞれのPSFを画像補正部204へ出力する。なお、本実施形態におけるPSF推定処理の方法は、図3のステップS303にて説明した第1の実施形態と同様であるため、その説明は省略する。
続いてステップS604において、劣化特性推定部206は、撮影画像の各領域におけるブレやボケなどの劣化特性を推定し、劣化特性量(劣化特性に関する評価値)を算出する。そして劣化特性推定部206は、算出した劣化特性評価値をPSF選択部503へ出力する。なお、劣化特性値の算出方法は、図3のステップS305にて説明した第1の実施形態と同様であるため、その説明は省略する。
続いてステップS605において、PSF選択部503は、劣化特性推定部206から出力された劣化特性評価値に基づいて、画像の各領域に対する補正に用いるPSFとして、PSF推定部502a、502bにより推定されたPSFのいずれか一方を選択する。以下、図7を参照して、PSFの選択方法について説明する。
図7は、劣化特性推定部206が推定したブレやボケの特性(劣化特性評価値)を示す図である。図7において、α軸はボケの大きさ、β軸はブレの大きさ、γ軸はブレの方向をそれぞれ示す。図7において、点Pa、Pbはそれぞれ、PSF推定領域抽出部501a、501bが選択したPSF推定領域におけるブレやボケの特性評価値を示す。点P1は、処理対象の領域におけるブレやボケの特性評価値を示す。
PSF選択部503は、図3のステップS306を参照して説明した方法と同様の方法により、点P1と点Paとの差分Δa、点P1と点Pbとの差分Δbをそれぞれ算出する。そしてPSF選択部503は、Δa<Δbの場合、PSF推定部502aにより推定されたPSFを選択する。一方、PSF選択部503は、Δb<Δaの場合、PSF推定部502bにより推定されたPSFを選択する。なお本実施形態において、PSF選択部503は、差分Δa、Δbの両方が所定の閾値を超えている場合、PSFに基づく補正処理を行わないように、いずれのPSFも選択しない。PSF選択部503は、画像の各領域に対して、前述の選択処理を順次実行し、その結果を画像補正部204へ出力する。
続いて、図6のステップS606において、画像補正部204は、撮影画像の各領域における画像合成比率を算出する。続いて、図6のステップS607において、画像補正部204は、PSF選択部503により選択されたPSFに関する情報に基づいて、画像信号生成部201により生成された画像信号に対する補正処理を行う。そして画像補正部204は、補正した画像信号を画像合成部205へ出力する。なお、補正処理の方法は、図3のステップS304にて説明した第1の実施形態と同様であるため、その説明は省略する。
本実施形態では、画像の各領域におけるブレやボケの特性と、PSF推定領域におけるブレやボケの特性とを比較した結果に基づいて、画像の各領域における補正処理に用いるPSFを選択する。これにより、画像中でのブレやボケの特性が一様でない場合に画像の各領域に対して適したPSFを選択して補正することができる。その結果、補正による弊害を低減することが可能となる。
なお本実施形態は、複数のPSF推定領域を選択し、そのうちのいずれか一つのPSF推定領域で推定されたPSFを選択する方法を説明したが、PSFの選択方法はこれに限定されるものではない。例えば、PSFの選択を切り替える境界が目立たないようにするため、境界領域では互いに異なるPSFに基づいて補正した画像同士を合成し、境界が目立たなくなるように制御してもよい。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
各実施形態によれば、少ない演算量で、劣化特性が領域ごとに異なる画像を適切に補正することが可能な画像処理装置、撮像装置、画像処理方法、プログラム、および、記憶媒体を提供することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。