説明

画像処理装置および方法、並びにプログラム

【課題】より確実に画像からぼけを除去できるようにする。
【解決手段】ぼけ検出部23は、ケプストラム解析により入力画像上の被写体のぼけの大きさを検出する。縮小部24は、ぼけの大きさの検出結果に基づいて、ぼけの大きさの分だけ入力画像を縮小し、入力画像からぼけを除去する。拡大部25は、縮小された入力画像を、縮小前のもとの大きさに拡大する。これにより、入力画像の画質を劣化させることなく、より簡単な処理で、より確実に入力画像からぼけを除去することができる。本発明は、画像処理装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理装置および方法、並びにプログラムに関し、特に、より確実に画像上のぼけを除去できるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【0002】
例えば、風景や人物を被写体として画像を撮像する場合に、撮像装置のフォーカスずれや、いわゆる手振れによって、撮像された画像がぼけてしまうことがある。そこで、画像のぼけを除去するべく、角速度センサからの出力に基づいて画像上に生じるぼけの大きさを推定し、そのぼけの特性を打ち消す逆フィルタを生成して、画像上のぼけを除去する撮像装置が提案されている(例えば、特許文献1参照)。
【0003】
このような撮像装置では、生成された逆フィルタを用いたフィルタ処理が、撮像により得られた画像に施されて、画像処理によりぼけが除去される。例えば、一次元的な2画素分のぼけが検出され、そのぼけに対応するFIR(Finite Impulse Response)フィルタの係数が[1,1]であったとすると、逆フィルタの係数として、合成特性が1となるような係数[1,−1]が生成される。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−205800号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した技術では、画像から確実にぼけを除去することは困難であった。例えば、角速度センサを用いても、撮像装置に加えられた振動を精度よく求めることができるわけではないため、画像から完全にぼけを除去できる逆フィルタを生成することはできなかった。また、フィルタを用いてぼけを補正する画像処理は、いわば失われた画像信号を、ノイズに埋もれたぼけのある画像から無理に生成する処理となる。そのため、ぼけた画像に対して、そのぼけを除去する画像処理を施すと、画像の画質が著しく劣化してしまうことが多かった。
【0006】
本発明は、このような状況に鑑みてなされたものであり、より確実に画像からぼけを除去することができるようにするものである。
【課題を解決するための手段】
【0007】
本発明の一側面の画像処理装置は、入力画像に基づいて、前記入力画像上の被写体のぼけの大きさを検出する検出手段と、前記入力画像を前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけを除去する縮小手段と、縮小された前記入力画像を拡大する拡大手段とを備える。
【0008】
前記ぼけの大きさを、前記入力画像上において生じたぼけにより、前記被写体の輪郭が広がった距離を画素数により表したものとし、前記縮小手段には、前記ぼけの大きさの逆数を前記縮小率として前記入力画像を縮小させることができる。
【0009】
前記検出手段には、前記入力画像を用いたケプストラム解析により前記ぼけの大きさを検出させることができる。
【0010】
前記縮小手段には、前記ぼけの大きさが予め定められた閾値以上である場合に、前記入力画像を縮小させ、前記ぼけの大きさが前記閾値未満である場合、前記ぼけの大きさの検出結果に基づいて、前記ぼけが生じる空間周波数特性の逆特性を有するフィルタを生成する生成手段と、前記フィルタを用いたフィルタ処理を前記入力画像に施して、前記入力画像から前記ぼけを除去するフィルタ処理手段とをさらに設けることができる。
【0011】
本発明の一側面の画像処理方法またはプログラムは、入力画像に基づいて、前記入力画像上の被写体のぼけの大きさを検出し、前記入力画像を前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけを除去し、縮小された前記入力画像を拡大するステップを含む。
【0012】
本発明の一側面においては、入力画像に基づいて、前記入力画像上の被写体のぼけの大きさが検出され、前記入力画像が前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけが除去され、縮小された前記入力画像が拡大される。
【発明の効果】
【0013】
本発明の一側面によれば、より確実に画像からぼけを除去することができる。
【図面の簡単な説明】
【0014】
【図1】本発明を適用した画像処理装置の構成例を示す図である。
【図2】垂直アップサンプリング処理部の構成例を示す図である。
【図3】プロファイラ処理部の構成例を示す図である。
【図4】ダブラ処理部の構成例を示す図である。
【図5】ぼけ除去処理の概要を説明する図である。
【図6】ぼけ除去処理を説明するフローチャートである。
【図7】ぼけの大きさの検出について説明する図である。
【図8】垂直アップサンプリング処理を説明するフローチャートである。
【図9】本発明を適用した画像処理装置の他の構成例を示す図である。
【図10】ぼけ除去処理を説明するフローチャートである。
【図11】フィルタ処理によるぼけの除去を説明する図である。
【図12】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して、本発明を適用した実施の形態について説明する。
【0016】
〈第1の実施の形態〉
[画像処理装置の構成]
図1は、本発明を適用した画像処理装置11の構成例を示す図である。
【0017】
画像処理装置11は、例えば、風景や人物などの被写体を撮像する撮像装置であり、ユーザの操作に応じて被写体を撮像し、得られた入力画像を表示する。
【0018】
画像処理装置11は、撮像部21、信号処理部22、ぼけ検出部23、縮小部24、拡大部25、表示制御部26、および表示部27から構成される。
【0019】
撮像部21は、例えば、CCD(Charge Coupled Devices)などの撮像素子からなり、被写体から入射した光を受光して電気信号に変換することにより、入力画像を撮像する。撮像部21は、撮像により得られた入力画像を信号処理部22に供給する。信号処理部22は、撮像部21から供給された入力画像に対して、デモザイク処理やガンマ補正処理などの信号処理を施してぼけ検出部23および縮小部24に供給する。
【0020】
ぼけ検出部23は、信号処理部22から供給された入力画像に基づいて、ケプストラム解析により、入力画像上の被写体に生じたぼけの大きさを検出し、その検出結果を縮小部24に供給する。
【0021】
ここで、入力画像上に生じるぼけとは、例えば、入力画像の撮像時に画像処理装置11に加わる振動、つまりいわゆる手振れによって生じるぼけや、被写体からの光を撮像部21の受光面上に結像させるレンズのフォーカスずれによって生じるぼけをいう。
【0022】
また、ぼけの大きさとは、入力画像上において被写体の輪郭がぼけて広がった距離、すなわち被写体のぼけによる広がりの幅をいう。例えば、直線状の手振れにより、入力画像上の被写体の輪郭が、ぼけがない状態のときにあるべき位置から5画素分だけ所定方向に広がったとする。つまり、入力画像において、本来あるべき被写体の輪郭の位置だけでなく、その位置から5画素だけ離れた位置にもその輪郭があったとする。このような場合、その入力画像のぼけの大きさは、5画素とされる。
【0023】
また、ぼけ検出部23は、FFT(Fast Fourier Transform)演算部31、ケプストラム画像生成部32、および推定PSF(Point Spread Function)生成部33を備えている。
【0024】
FFT演算部31は、信号処理部22から供給された入力画像に高速フーリエ変換を施し、その結果得られたFFT画像をケプストラム画像生成部32に供給する。ケプストラム画像生成部32は、FFT演算部31から供給されたFFT画像に基づいて、ケプストラム画像を生成し、推定PSF生成部33に供給する。
【0025】
推定PSF生成部33は、ケプストラム画像生成部32から供給されたケプストラム画像に基づいて、手振れ等に起因する入力画像の劣化の過程を表す推定PSFを生成することで、入力画像のぼけの大きさを求め、求めたぼけの大きさを縮小部24に供給する。なお、推定PSF生成部33により生成される推定PSFは、点広がり関数とも呼ばれている。
【0026】
縮小部24は、推定PSF生成部33から供給されたぼけの大きさにより定まる縮小率で、信号処理部22からの入力画像を縮小し、その結果得られた縮小画像を拡大部25に供給する。例えば、画素数で表されるぼけの大きさの逆数が、縮小率とされ、間引きなどにより入力画像が縮小(ダウンサンプリング)される。
【0027】
拡大部25は、縮小部24から供給された縮小画像を、もとの入力画像と同じ大きさに拡大し、その結果得られた出力画像を表示制御部26に供給する。拡大部25は、垂直アップサンプリング処理部34および水平アップサンプリング処理部35を備えている。
【0028】
垂直アップサンプリング処理部34は、縮小部24からの縮小画像を、所定の方向(以下、垂直方向と呼ぶ)に拡大して、水平アップサンプリング処理部35に供給する。また、水平アップサンプリング処理部35は、垂直アップサンプリング処理部34からの縮小画像を、垂直方向と直交する方向(以下、水平方向と呼ぶ)に拡大し、その結果得られた出力画像を表示制御部26に供給する。
【0029】
表示制御部26は、水平アップサンプリング処理部35からの出力画像を表示部27に供給し、表示させる。表示部27は、例えば液晶表示装置などからなり、表示制御部26の制御に従って画像を表示させる。
【0030】
[垂直アップサンプリング処理部の構成]
また、図1の垂直アップサンプリング処理部34は、より詳細には、図2に示すように構成される。すなわち、垂直アップサンプリング処理部34は、プロファイラ処理部61、ダブラ処理部62、およびエンハンス処理部63から構成され、縮小部24からの縮小画像は、プロファイラ処理部61およびダブラ処理部62に供給される。
【0031】
プロファイラ処理部61は、縮小部24から供給された縮小画像を用いて、斜め補間処理に用いられるウェイトマップを生成し、ダブラ処理部62に供給する。ここで、斜め補間処理とは、縮小画像の各領域におけるエッジの方向に並ぶ画素が用いられて、縮小画像の画素間に新たな画素を補間することにより、縮小画像を拡大(アップサンプリング)する処理である。
【0032】
また、ウェイトマップとは、縮小画像の各領域において検出されたエッジの方向の確からしさの度合いを示す情報であり、ウェイトマップ上の画素の画素値が大きいほど、その画素と同じ位置の縮小画像の領域には、斜め補間処理がより効果的であることを示している。すなわち、ウェイトマップの画素の画素値が大きいほど、その画素と同じ縮小画像の領域を拡大するときに、画質の向上が期待できる。
【0033】
また、プロファイラ処理部61は、縮小部24からの縮小画像を用いて、画像のエッジおよびテクスチャを強調するエンハンス処理用の重みを生成し、エンハンス処理部63に供給する。なお、テクスチャとは、画像上において物体表面の模様など、画素の画素値がある程度変化し、画素値が急峻に変化するエッジの領域よりは画素値の変化が小さい領域をいう。
【0034】
ダブラ処理部62は、プロファイラ処理部61から供給されたウェイトマップを用いて、斜め補間処理を行い、縮小部24から供給された縮小画像を垂直方向に拡大し、エンハンス処理部63に供給する。なお、以下、斜め補間処理により垂直方向に拡大された縮小画像を、垂直補間画像とも呼ぶこととする。
【0035】
エンハンス処理部63は、プロファイラ処理部61から供給された重みを用いて、ダブラ処理部62からの垂直補間画像にエンハンス処理を施して、水平アップサンプリング処理部35に供給する。
【0036】
[プロファイラ処理部の構成]
また、図2のプロファイラ処理部61およびダブラ処理部62は、より詳細には、図3および図4に示すように構成される。
【0037】
図3は、プロファイラ処理部61のより詳細な構成例を示す図である。
【0038】
プロファイラ処理部61は、方向検出部91、信頼度検出部92、コントラスト計算部93、傾き選択部94、斜め重み付け設定部95、および重み算出部96から構成される。
【0039】
方向検出部91は、縮小部24から供給された縮小画像に基づいて、これから生成しようとする垂直補間画像の各補間画素について、補間画素近傍の領域におけるエッジの方向の分布を示す方向性分布を生成する。方向検出部91は、生成した方向性分布を信頼度検出部92、および傾き選択部94乃至重み算出部96に供給する。
【0040】
ここで、補間画素とは、垂直補間画像上の画素であって、縮小画像に対して補間される画素をいう。また、以下において、垂直補間画像上において、補間されない画素、つまり縮小画像の画素を実在画素とも呼ぶこととする。
【0041】
信頼度検出部92は、縮小部24から供給された縮小画像と、方向検出部91から供給された方向性分布とに基づいて、方向性分布により示される各エッジの方向の確からしさを示す信頼度分布を生成し、傾き選択部94乃至重み算出部96に供給する。
【0042】
コントラスト計算部93は、縮小部24からの縮小画像を用いて、これから生成しようとする垂直補間画像の各補間画素近傍の領域におけるコントラストの強さの度合いを示すコントラスト強度を生成し、重み算出部96に供給する。また、コントラスト計算部93は、生成したコントラスト強度に基づいて、垂直補間画像の各補間画素近傍の領域における、コントラスト強度に基づく重みWeight-contrast-Sからなるコントラスト分布を生成し、ダブラ処理部62、傾き選択部94、および斜め重み付け設定部95に供給する。
【0043】
傾き選択部94は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された、方向性分布、信頼度分布、およびコントラスト分布に基づいて、傾き選択情報を生成し、ダブラ処理部62に供給する。傾き選択情報は、垂直補間画像上の補間画素を生成するために用いるべき画素が並んでいる方向を示す情報である。
【0044】
斜め重み付け設定部95は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された、方向性分布、信頼度分布、およびコントラスト分布に基づいてウェイトマップを生成し、ダブラ処理部62に供給する。重み算出部96は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された、方向性分布、信頼度分布、およびコントラスト強度に基づいて、エンハンス処理用の重みを生成し、エンハンス処理部63に供給する。
【0045】
[ダブラ処理部の構成]
図4は、ダブラ処理部62のより詳細な構成例を示す図である。
【0046】
ダブラ処理部62は、線形補間部121、統計傾斜補間部122、および斜め合成部123から構成される。
【0047】
線形補間部121は、縮小部24から供給された縮小画像に基づいて、縮小画像を垂直方向に線形補間して、垂直補間画像の各補間画素(以下、線形補間画素とも称する)を求め、求めた補間画素と縮小画像とを斜め合成部123に供給する。
【0048】
統計傾斜補間部122は、コントラスト計算部93からのコントラスト分布と、縮小部24から供給された縮小画像における、傾き選択部94からの傾き選択情報により特定される画素とを用いて、垂直補間画像の各補間画素を求め、斜め合成部123に供給する。なお、以下、統計傾斜補間部122により求められた補間画素を統計傾斜補間画素とも称する。
【0049】
斜め合成部123は、斜め重み付け設定部95からのウェイトマップを用いて、線形補間部121からの線形補間画素と、統計傾斜補間部122からの統計傾斜補間画素とを合成し、垂直補間画像の補間画素の画素値を求める。また、斜め合成部123は、求めた補間画素と、線形補間部121からの縮小画像とから垂直補間画像を生成し、エンハンス処理部63に供給する。
【0050】
なお、図1の水平アップサンプリング処理部35のより詳細な構成も、図2乃至図4に示した垂直アップサンプリング処理部34の構成と同様であるため、その図示および説明は省略する。但し、垂直アップサンプリング処理部34では、縮小画像の垂直方向が処理対象とされたのに対し、水平アップサンプリング処理部35においては、縮小画像(垂直補間画像)の水平方向が処理対象とされ、縮小画像が水平方向に補間される。
【0051】
[ぼけ除去処理の説明]
ところで、ユーザの操作により被写体の撮像が指示されると、画像処理装置11は、ぼけ除去処理を開始する。ぼけ除去処理では、図5に示すように、被写体が撮像され、その結果得られた入力画像からぼけが除去される。
【0052】
すなわち、撮像により入力画像IPが得られ、入力画像IPは、ぼけ検出部23および縮小部24に供給される。例えば、入力画像IPの撮像時に、画像処理装置11に振動が加えられた場合には、入力画像IP上の被写体にぼけが生じることになる。
【0053】
ぼけ検出部23は、供給された入力画像IPから、推定PSF151を生成することにより、入力画像IPに生じたぼけの大きさを検出し、その検出結果を縮小部24に供給する。そして、縮小部24は、ぼけ検出部23からの検出結果を用いて、供給された入力画像IPを縮小し、縮小画像SPを生成する。このように、入力画像IPを縮小することにより、入力画像IP上のぼけがより確実に除去される。
【0054】
さらに、拡大部25は、生成された縮小画像SPを、もとの入力画像IPと同じ大きさに拡大する。これにより、ぼけの除去された出力画像OPが得られる。つまり、入力画像IPを、より印刷、観賞に耐え得る出力画像OPに補正することができる。
【0055】
次に、図6のフローチャートを参照して、画像処理装置11により行われるぼけ除去処理について、より詳細に説明する。
【0056】
ステップS11において、撮像部21は入力画像を撮像し、信号処理部22に供給する。信号処理部22は、撮像部21からの入力画像に対して、デモザイク処理やガンマ補正処理などの信号処理を施し、FFT演算部31および縮小部24に供給する。
【0057】
なお、ぼけ除去処理の対象となる入力画像は、いわゆるプレビュー画像として撮像部21により取り込まれる画像とされてもよいし、ユーザにより図示せぬシャッタボタンが押されてプレビュー画像からキャプチャされた画像とされてもよい。
【0058】
ステップS12において、FFT演算部31は、信号処理部22から供給された入力画像に高速フーリエ変換を施し、その結果得られたFFT画像をケプストラム画像生成部32に供給する。このFFT画像は、入力画像に含まれる各周波数成分を示す画像である。
【0059】
ステップS13において、ケプストラム画像生成部32は、FFT演算部31から供給されたFFT画像に基づいて、ケプストラム画像を生成し、推定PSF生成部33に供給する。すなわち、ケプストラム画像生成部32は、FFT画像に対して対数演算、つまりFFT画像のLogをとる演算を行い、その演算結果に対して、逆高速フーリエ変換を施して、ケプストラム画像を得る。
【0060】
ステップS14において、推定PSF生成部33は、ケプストラム画像生成部32からのケプストラム画像に基づいて推定PSFを生成し、入力画像のぼけの大きさを求める。
【0061】
例えば、画像処理装置11に対して直線的な手振れが加えられて、入力画像上にぼけが発生した場合、ケプストラム画像上には2つの輝点が観測され、それらの輝点間の距離が、FFT画像の周波数の周期を示すことが知られている。推定PSF生成部33は、ケプストラム画像上において、1または複数の画素からなる、最も輝度(画素値)が高い領域と、2番目に輝度が高い領域とを、2つの輝点として検出する。
【0062】
そして、推定PSF生成部33は、これから求めようとする推定PSFを、ケプストラム画像(FFT画像)と同じ大きさの画像であるとして、推定PSF上において、ケプストラム画像上の2つの輝点と同じ位置の領域を結ぶ線を線分SGとする。
【0063】
推定PSF生成部33は、線分SGを構成する推定PSF上の画素の画素値の合計値が1となるように、線分SGを構成する各画素の画素値を定めるとともに、線分SGを構成しない推定PSFの画素の画素値も定める。このとき、線分SGを構成しない画素の画素値は、線分SGを構成する画素の画素値よりも小さい値、例えば「0」とされる。
【0064】
このようにして、推定PSFの各画素の画素値を定めることにより、点広がり関数である推定PSFが得られる。この推定PSFは、理想的な点像がぶれによりぼけたときの輝度分布、つまり画像処理装置11に加えられたぶれの軌跡(移動した画像処理装置11の軌跡)を表している。したがって、推定PSF上の線分SGの長さが、入力画像上において被写体の輪郭がぶれにより広がった距離、すなわちぼけの大きさとなる。ぼけの大きさは、線分SGの一方の端点から、他の端点までの間にある画素の数により表される。
【0065】
ここで、ステップS11からステップS14の処理をまとめると、図7に示すように、まず撮像部21により入力画像IPが撮像され、入力画像IPに対して高速フーリエ変換が施される。そして、その結果得られたFFT画像FPに対して対数演算および逆高速フーリエ変換が施され、ケプストラム画像CPが得られる。
【0066】
図7の例では、ケプストラム画像CP上には、2つの輝点L11および輝点L12が観測される。さらに、ケプストラム画像CPから、2つの輝点L11および輝点L12を結ぶ線分SGを示す推定PSF151が生成され、この線分SGの長さが、入力画像に生じたぼけの大きさとして求められる。
【0067】
なお、ぼけの大きさの検出例として、直線的な手振れに起因するぼけの大きさを検出する場合について説明したが、その他、直線的なぼけに限らず、どのようなぼけを検出対象としてもよい。例えば、ぼけ検出部23が入力画像を用いて、画像処理装置11に加えられたぶれ(振動)の軌跡を表す画像を生成し、その画像におけるぶれの軌跡全体を囲む矩形の幅を、ぼけの大きさとして検出してもよい。これは、矩形の幅が、ぼけにより被写体が広がった距離を表しているからである。
【0068】
図6のフローチャートの説明に戻り、推定PSF生成部33は、ぼけの大きさを求めると、求めたぼけの大きさを縮小部24に供給する。
【0069】
ステップS15において、縮小部24は、推定PSF生成部33から供給されたぼけの大きさにより定まる縮小率で、信号処理部22から供給された入力画像を縮小し、縮小画像を生成する。入力画像の縮小(ダウンサンプリング)は、入力画像の画素を間引くことなどにより行われる。
【0070】
例えば、ぼけの大きさがB画素である場合、入力画像上において、被写体の輪郭はB画素分だけ広がっているはずである。そこで、ぼけの大きさBの逆数を縮小率として、入力画像をB分の1に縮小すれば、縮小後の入力画像(縮小画像)においてぼけが観察されなくなるはずである。
【0071】
具体的には、直線状の4画素分のぼけが検出され、そのぼけに相当するFIRフィルタの係数が[1,1,1,1]であったとすると、入力画像は、1/4に縮小される。このように、入力画像に生じたぼけの大きさを検出し、検出されたぼけの大きさの分だけ入力画像を縮小すれば、入力画像からより簡単かつ確実にぼけを除去することができる。
【0072】
縮小部24は、入力画像を縮小すると、その結果得られた縮小画像を垂直アップサンプリング処理部34に供給する。
【0073】
ステップS16において、垂直アップサンプリング処理部34は、垂直アップサンプリング処理を行って、縮小部24からの縮小画像を垂直方向に拡大し、水平アップサンプリング処理部35に供給する。なお、垂直アップサンプリング処理の詳細は後述する。
【0074】
ステップS17において、水平アップサンプリング処理部35は、水平アップサンプリング処理を行って、垂直アップサンプリング処理部34からの垂直補間画像を水平方向に拡大し、その結果得られた出力画像を表示制御部26に供給する。
【0075】
なお、ステップS17において行われる水平アップサンプリング処理は、ステップS16において行われる垂直アップサンプリング処理と同様であるので、その説明は省略する。なお、水平アップサンプリング処理においては、垂直アップサンプリング処理により生成された垂直補間画像が処理対象とされ、その垂直補間画像が水平方向に拡大される。
【0076】
また、水平アップサンプリング処理により最終的に得られる出力画像は、入力画像と同じ大きさの画像とされる。すなわち、ぼけが除去されるように入力画像が縮小され、縮小により得られた縮小画像を、縮小前のもとの大きさに拡大して得られた画像が出力画像であるから、出力画像は、入力画像からぼけを除去した画像ということができる。
【0077】
ステップS18において、表示制御部26は、水平アップサンプリング処理部35から供給された出力画像を表示部27に供給して、表示部27に出力画像を表示させ、ぼけ除去処理は終了する。
【0078】
このようにして、画像処理装置11は、入力画像からぼけの大きさを検出し、そのぼけの大きさの分だけ入力画像を縮小してから、得られた縮小画像を再びもとの大きさに拡大して、ぼけの除去された出力画像を得る。
【0079】
このように、入力画像を縮小してぼけを除去した後、もとの大きさに拡大することにより、より簡単かつ確実に入力画像からぼけを除去することができる。しかも、ぼけを除去する処理によって、出力画像の画質が劣化してしまうようなこともない。
【0080】
すなわち、従来は、入力画像からぼけを検出し、そのぼけの逆特性を有するフィルタを用いたフィルタ処理により入力画像からぼけを除去していた。このとき、ぼけをより確実に除去するには、ぼけの逆特性をより正確に求めることが必要であり、そのためには、精度よくぼけの大きさおよび形状を検出することが不可欠である。
【0081】
ところが、ぼけの大きさおよび形状を精度よく検出することは困難であるため、正確な逆特性のフィルタを生成することはできなかった。その結果、入力画像からぼけを確実に除去することができないばかりか、フィルタ処理を施すことにより、かえって入力画像の画質が劣化してしまうことが多い。
【0082】
これに対して、画像処理装置11では、入力画像からぼけの大きさを検出し、その分だけ入力画像を縮小するだけであるので、ぼけの大まかな大きさが分かれば、縮小という簡単な処理により、より確実にぼけを除去することができる。しかも、入力画像を縮小するだけであるので、複雑な処理も不要であり、入力画像の画質が劣化してしまうこともない。また、縮小時に、ぼけの形状を求める必要もない。
【0083】
さらに、画像処理装置11では、縮小により得られた縮小画像を、再びもとの入力画像の大きさに拡大するため、画像が小さくなることも画質が劣化することもない。特に、縮小画像は、ぼけのない画像であるので、この縮小画像を拡大しても画質の劣化は殆どない。
【0084】
このように、画像処理装置11によれば、画像の縮小および拡大という安定したスケーリング処理により、画質を劣化させることなく、入力画像からぼけを除去することができる。
【0085】
なお、検出されたぼけの大きさが充分小さく、入力画像からぼけを除去する必要がない場合には、入力画像の縮小、拡大が行われず、入力画像がそのまま出力画像として出力されるようにしてもよい。
【0086】
そのような場合、例えば、縮小部24は、推定PSF生成部33から供給されたぼけの大きさが、予め定められた閾値th1以上であるか否かを判定する。そして、縮小部24は、閾値th1以上であると判定された場合に入力画像を縮小し、閾値th1未満であると判定された場合には、信号処理部22からの入力画像を、そのまま出力画像として出力する。
【0087】
また、縮小画像を入力画像の大きさまで拡大すると説明したが、出力画像は必ずしも入力画像と同じ大きさである必要はなく、任意の大きさとされてもよい。
【0088】
さらに、撮像直後の入力画像を対象として、ぼけを除去する処理を行うと説明したが、撮像後、記録媒体等に記録されている入力画像を対象として、ぼけを除去する処理が行われるようにしてもよい。そのような場合、画像処理装置11は、カメラ等の撮像装置である必要はなく、例えば、パーソナルコンピュータなどとされてもよい。
【0089】
[垂直アップサンプリング処理の説明]
次に、図8のフローチャートを参照して、図6のステップS16の処理に対応する垂直アップサンプリング処理について説明する。
【0090】
ステップS41において、方向検出部91は、縮小部24から供給された縮小画像に基づいて方向性分布を生成し、信頼度検出部92、および傾き選択部94乃至重み算出部96に供給する。
【0091】
具体的には、プロファイラ処理部61は、これから生成しようとする垂直補間画像上の補間画素を1つ選択し、その補間画素を注目画素とするとともに、垂直補間画像上の注目画素を中心とする所定の大きさの領域を注目領域とする。
【0092】
方向検出部91は、注目領域内の補間画素を1つ選択して、選択した補間画素をエッジ方向検出画素とするとともに、そのエッジ方向検出画素の位置におけるエッジの方向を検出し、その検出結果を示すエッジ方向情報を生成する。方向検出部91は、注目領域内の全ての補間画素をエッジ方向検出画素として、各補間画素について、エッジ方向を示すエッジ方向情報を生成する。
【0093】
そして、方向検出部91は、注目領域内の各補間画素のエッジ方向情報を、それらの補間画素の配置と同じ配置で並べた情報を方向性分布として生成する。したがって、この方向性分布は、注目領域におけるエッジ方向の分布を示しているということができる。方向検出部91は、垂直補間画像の補間画素を、順次、注目画素として、垂直補間画像上の全ての補間画素について、方向性分布を生成する。
【0094】
ステップS42において、信頼度検出部92は、縮小部24から供給された縮小画像と、方向検出部91から供給された方向性分布とに基づいて信頼度分布を生成し、傾き選択部94乃至重み算出部96に供給する。
【0095】
具体的には、信頼度検出部92は、垂直補間画像上の1つの補間画素を注目画素とし、その注目画素の方向性分布を選択する。また、信頼度検出部92は、方向性分布に含まれる1つのエッジ方向情報を選択し、そのエッジ方向情報により示されるエッジの方向の信頼度(確からしさ)を検出する。
【0096】
例えば、信頼度検出部92は、エッジ方向情報の補間画素の仮の画素値を、垂直補間画像上において、その補間画素に対してエッジ方向情報に示されるエッジの方向に隣接する実在画素の画素値から求める。そして、信頼度検出部92は、求めた画素の仮の画素値と、その画素の周囲にある垂直補間画像上の実在画素の画素値とを用いて、近傍の画素との間に整合性があるか否かを判定し、その判定結果に基づいて、エッジ方向の信頼度を示す信頼度情報を生成する。
【0097】
例えば、処理対象の補間画素について、エッジ方向情報により示されるエッジ方向が確からしいとされた場合には、その補間画素の信頼度情報は「1」とされ、エッジ方向の信頼性が低い、つまり確からしくないとされた場合、信頼度情報は「0」とされる。
【0098】
信頼度検出部92は、方向性分布に含まれる各エッジ方向情報に対応する補間画素について信頼度情報を生成し、それらの補間画素の垂直補間画像上における配置と同じ配置で、各信頼度情報を並べた情報を信頼度分布とする。信頼度分布は、垂直補間画像上の全ての補間画素について生成される。
【0099】
ステップS43において、コントラスト計算部93は、縮小部24からの縮小画像を用いてコントラスト分布を生成する。
【0100】
すなわち、コントラスト計算部93は、上述した注目領域内の補間画素を、順次、エッジ方向検出画素とし、エッジ方向検出画素近傍の領域にある垂直補間画像の各実在画素間の画素値の差分の絶対値に、画素間の距離に応じた重みを乗じた値の総和を算出する。そして、コントラスト計算部93は、得られた総和の値をコントラスト強度とし、注目領域内の各補間画素について、コントラスト強度を求める。このコントラスト強度は、垂直補間画像の補間画素近傍の領域全体におけるコントラストの強さの度合いを示している。
【0101】
コントラスト計算部93は、注目領域内の各補間画素のコントラスト強度を求めると、同様にして垂直補間画像の全ての補間画素を注目画素とし、注目画素により定まる注目領域について各補間画素のコントラスト強度を求め、重み算出部96に供給する。
【0102】
さらに、コントラスト計算部93は、注目領域内の各補間画素について、その補間画素のコントラスト強度に基づく重みWeight-contrast-Sを求め、それらの重みを、補間画素の配置と同じ配置で配列してコントラスト分布とする。
【0103】
したがって、コントラスト分布は、注目領域内の各補間画素の重みの分布を示す情報となる。また、例えば、重みWeight-contrast-Sは、対応する補間画素のコントラスト強度が大きいほど大きくなる。
【0104】
コントラスト計算部93は、垂直補間画像の全ての補間画素を注目画素として、各補間画素のコントラスト分布を生成し、統計傾斜補間部122、傾き選択部94、および斜め重み付け設定部95に供給する。
【0105】
ステップS44において、傾き選択部94は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された、方向性分布、信頼度分布、およびコントラスト分布を用いて傾き選択処理を行い、傾き選択情報を生成する。
【0106】
例えば、傾き選択部94は信頼度分布およびコントラスト分布に基づいて、各注目画素について、注目画素を中心とする注目領域内の補間画素のうち、信頼度情報が「1」であり、かつ重みWeight-contrast-Sが所定の閾値以上である補間画素を抽出する。
【0107】
そして、傾き選択部94は方向性分布に基づいて、例えば、抽出した補間画素のエッジ方向情報により示されるエッジ方向のうち、最も数の多いエッジ方向を、注目画素の補間に用いるべき画素が並ぶ方向であるとして、その方向を示す傾き選択情報を生成する。すなわち、各方向について、注目領域内の一定の条件を満たす補間画素のうち、その方向をエッジ方向とする補間画素の数を求めた場合に、最も画素の数が多かった方向(エッジ方向)が、傾き選択情報により示される方向とされる。
【0108】
傾き選択情報により示される方向は、注目画素の周囲における大局的なエッジ方向であるから、注目画素におけるエッジ方向も、傾き選択情報により示される方向である可能性が高い。そこで、注目画素に対して、傾き選択情報により示される方向に隣接する(並ぶ)画素を用いて、注目画素を生成すれば、より画質の高い垂直補間画像を得ることができる。これは、エッジ方向と垂直な方向よりも、エッジ方向の方が、注目画素に類似する画素(近い色の画素)がある可能性が高く、より精度よく注目画素を予測することができるからである。
【0109】
傾き選択部94は、垂直補間画像上の全ての補間画素について、傾き選択情報を生成すると、傾き選択情報、方向性分布、および信頼度分布を統計傾斜補間部122に供給する。
【0110】
ステップS45において、斜め重み付け設定部95は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された、方向性分布、信頼度分布、およびコントラスト分布に基づいてウェイトマップを生成し、斜め合成部123に供給する。
【0111】
すなわち、斜め重み付け設定部95は、垂直補間画像上の補間画素を、順次、注目画素として、注目画素ごとに、注目領域におけるエッジ方向の顕著性に基づく重みWeight-slantを求める。具体的には、斜め重み付け設定部95は、注目領域内の各補間画素について、補間画素の信頼度情報の値、重みWeight-contrast-S、およびエッジ方向に応じた重みの積を求め、補間画素ごとに求めた積の総和を重みWeight-slantとする。
【0112】
したがって、注目画素の重みWeight-slantは、注目領域内の各補間画素におけるエッジ方向の信頼度が高いほど、かつ重みWeight-contrast-Sが大きいほど(注目領域におけるエッジの方向が顕著であるほど)、大きくなる。斜め重み付け設定部95は、垂直補間画像の各補間画素の重みWeight-slantを求めると、その重みを、補間画素の配置と同じ配置で配列してウェイトマップとする。
【0113】
このようにして得られたウェイトマップの画素の画素値である重みWeight-slantは、エッジ方向の信頼度が高く、その注目画素近傍において、同じエッジ方向の画素が多いほど大きくなる。そのため、重みWeight-slantが大きいほど、注目画素のエッジ方向に並ぶ画素を用いて注目画素の画素値を算出すれば、より確からしい画素値を得ることができる。
【0114】
ステップS46において、重み算出部96は、方向検出部91、信頼度検出部92、およびコントラスト計算部93から供給された方向性分布、信頼度分布、およびコントラスト強度に基づいてエンハンス処理用の重みを生成し、エンハンス処理部63に供給する。
【0115】
例えば、エンハンス処理用の重みとして、エッジの強調に用いられる重みWeight-edgeと、テクスチャの強調に用いられる重みWeight-textureとが、垂直補間画像の補間画素(注目画素)ごとに求められる。
【0116】
具体的には、注目領域内の各補間画素について、補間画素の信頼度情報の値、コントラスト強度に応じた重み、およびエッジ方向に応じた重みの積が求められ、補間画素ごとに求められた積の総和が、注目画素の重みWeight-edgeとされる。なお、重みWeight-edgeの算出に用いられるコントラスト強度に応じた重みは、コントラスト強度が大きいほど大きくなるようにされる。
【0117】
同様に、注目領域内の各補間画素について、補間画素の信頼度情報の値、コントラスト強度に応じた重み、およびエッジ方向に応じた重みの積が求められ、補間画素ごとに求められた積の総和が、注目画素の重みWeight-textureとされる。なお、重みWeight-textureの算出に用いられるコントラスト強度に応じた重みは、テクスチャの領域に含まれる可能性が高い補間画素ほど大きくなるようにされる。
【0118】
ステップS47において、線形補間部121は、縮小部24から供給された縮小画像を垂直方向に線形補間して、垂直補間画像の各補間画素、つまり線形補間画素を求める。例えば、線形補間部121は、垂直補間画像上の注目画素に、垂直方向に隣接する複数の実在画素に対してフィルタ処理を施すことで線形補間を行い、注目画素(線形補間画素)の画素値を求める。そして、線形補間部121は、求めた線形補間画素と、縮小画像とを斜め合成部123に供給する。
【0119】
ステップS48において、統計傾斜補間部122は、コントラスト計算部93からのコントラスト分布と、傾き選択部94からの傾き選択情報、方向性分布、および信頼度分布とを用いて、縮小部24からの縮小画像に対して統計傾斜補間を行う。すなわち、統計傾斜補間により、垂直補間画像の各補間画素、つまり統計傾斜補間画素が求められる。
【0120】
具体的には、統計傾斜補間部122は、垂直補間画像上の注目画素に対して、傾き選択情報により示されるエッジ方向と、その方向に近い他のエッジ方向に隣接する垂直補間画像上の実在画素を、それらのエッジ方向に応じた重みで重み付け加算することにより、統計傾斜補間画素の画素値を求める。
【0121】
なお、この重み付け加算に用いられる重みは、エッジ方向ごとに、注目領域内の同じエッジ方向の補間画素であって、信頼度情報が「1」であり、かつコントラスト分布により示される重みWeight-contrast-Sが所定の値以上である補間画素の数により定まる。
【0122】
統計傾斜補間部122は、統計傾斜補間画素として、垂直補間画像上の各補間画素の画素値を求めると、求めた統計傾斜補間画素を斜め合成部123に供給する。
【0123】
ステップS49において、斜め合成部123は、斜め重み付け設定部95からのウェイトマップを用いて、線形補間部121からの線形補間画素と、統計傾斜補間部122からの統計傾斜補間画素とを合成し、垂直補間画像の補間画素の画素値を求める。
【0124】
すなわち、斜め合成部123は、垂直補間画像の補間画素を順次、注目画素として、注目画素と同じ位置にあるウェイトマップの画素の画素値である重みWeight-slantにより、注目画素と同じ位置の線形補間画素と統計傾斜補間画素とを重み付け加算して、注目画素の画素値を求める。
【0125】
重み付け加算では、重みWeight-slantが大きいほど、つまりエッジの方向が顕著な領域に位置する画素ほど、注目画素の生成への統計傾斜補間画素の寄与率が高くなるようにされる。このようにして得られた各補間画素の画素値と、縮小画像とから、垂直補間画像が生成される。斜め合成部123は、生成した垂直補間画像をエンハンス処理部63に供給する。
【0126】
ステップS50において、エンハンス処理部63は、重み算出部96から供給されたエンハンス処理用の重みを用いて、斜め合成部123からの垂直補間画像にエンハンス処理を施して、水平アップサンプリング処理部35に供給する。垂直補間画像にエンハンス処理が施されると、垂直アップサンプリング処理は終了し、処理は図6のステップS17に進む。
【0127】
具体的には、エンハンス処理部63は、斜め合成部123からの垂直補間画像に対して、テクスチャフィルタ処理を施して、テクスチャ画像を生成する。ここで、テクスチャフィルタ処理とは、垂直補間画像における所定の周波数帯域の成分、つまりテクスチャの領域を強調し、画像全体をより鮮明にする処理をいう。
【0128】
また、エンハンス処理部63は、重みWeight-textureを用いて、得られたテクスチャ画像と、垂直補間画像とを重み付け加算し、テクスチャ混合画像を生成する。なお、この重み付け加算では、テクスチャ成分をより多く含む領域ほど、テクスチャ混合画像の生成に対するテクスチャ画像の寄与率がより高くなるようにされる。また、より詳細には、重みWeight-textureは、垂直補間画像の大きさに合わせてアップサンプリングされて、重み付け加算に用いられる。
【0129】
次に、エンハンス処理部63は、斜め合成部123からの垂直補間画像に対して、エッジフィルタ処理を施して、エッジ画像を生成する。ここで、エッジフィルタ処理とは、垂直補間画像におけるエッジを強調する処理をいう。
【0130】
さらに、エンハンス処理部63は、重みWeight-edgeを用いて、得られたエッジ画像と、テクスチャ混合画像とを重み付け加算し、最終的な垂直補間画像を生成する。なお、この重み付け加算では、エッジ成分をより多く含む領域ほど、最終的な垂直補間画像の生成に対するエッジ画像の寄与率がより高くなるようにされる。また、より詳細には、重みWeight-edgeは、垂直補間画像の大きさに合わせてアップサンプリングされて、重み付け加算に用いられる。
【0131】
以上のように、画像のエッジ方向とその信頼度、およびコントラスト強度に基づいて、エッジ方向を考慮して縮小画像の画素を補間することにより、周囲の画素と調和の取れた画素を得ることができ、垂直補間画像の画質を向上させることができる。
【0132】
なお、拡大部25により縮小画像を拡大する処理は、以上において説明した斜め補間処理に限らず、線形補間処理やクラス分類適応処理など、どのような処理であってもよい。
【0133】
例えば、入力画像として時間的に連続する画像が撮像される場合には、処理対象の入力画像から得られた縮小画像と、その入力画像の直前の時刻の入力画像から得られた出力画像とが用いられて、超解像処理により処理対象の縮小画像が拡大されてもよい。
【0134】
なお、超解像処理の詳細は、例えば、特開2008−140012号公報に記載されている。また、以上において説明した斜め補間処理の詳細は、例えば特開2006−155179号公報に記載されている。
【0135】
〈第2の実施の形態〉
[画像処理装置の構成]
さらに、以上においては、入力画像を縮小および拡大することにより、入力画像のぼけを除去すると説明したが、入力画像上のぼけが小さい場合には、フィルタ処理によっても充分な精度でぼけを除去することができる。そこで、ぼけが小さい場合には、フィルタ処理によりぼけの除去を行い、ぼけがある程度大きい場合には、入力画像の縮小および拡大によりぼけの除去を行うようにしてもよい。
【0136】
そのような場合、画像処理装置11は、例えば、図9に示すように構成される。なお、図9において、図1における場合と対応する部分には同一の符号を付してあり、その説明は適宜、省略する。
【0137】
図9の画像処理装置11は、図1の場合と比べて、フィルタ処理部201が設けられている点、およびぼけ検出部23内に判定部211が設けられている点が異なり、その他の点では一致している。
【0138】
図9の画像処理装置11では、信号処理部22から出力された入力画像は、FFT演算部31、縮小部24、およびフィルタ処理部201に供給される。
【0139】
判定部211は、推定PSF生成部33からのぼけの大きさの検出結果に基づいて、ぼけの大きさが予め定められた閾値以上である場合、ぼけの大きさを縮小部24に供給してぼけを除去させる。また、判定部211は、ぼけの大きさが閾値未満である場合、推定PSF生成部33からの推定PSFをフィルタ処理部201に供給して、ぼけを除去させる。
【0140】
フィルタ処理部201は、判定部211からの推定PSFからフィルタを生成し、そのフィルタを用いたフィルタ処理を、信号処理部22からの入力画像に施して出力画像を生成し、表示制御部26に供給する。
【0141】
フィルタ処理部201は、フィルタ生成部212、FFT演算部213、乗算部214、および逆FFT演算部215から構成される。
【0142】
フィルタ生成部212は、判定部211からの推定PSFを用いて、入力画像に生じたぼけの特性を打ち消す、つまりぼけの逆特性を有するフィルタを生成し、乗算部214に供給する。FFT演算部213は、信号処理部22から供給された入力画像に対して、高速フーリエ変換を施してFFT画像を生成し、乗算部214に供給する。
【0143】
乗算部214は、フィルタ生成部212から供給されたフィルタを用いて、FFT演算部213からのFFT画像にフィルタ処理を施して、逆FFT演算部215に供給する。逆FFT演算部215は、乗算部214から供給されたFFT画像に対して、逆高速フーリエ変換を施して出力画像を生成し、表示制御部26に供給する。
【0144】
また、表示制御部26は、拡大部25または逆FFT演算部215の何れかから供給された出力画像を、入力画像からぼけが除去された画像として表示部27に表示させる。
【0145】
[ぼけ除去処理の説明]
次に、図10のフローチャートを参照して、図9の画像処理装置11により行われるぼけ除去処理について説明する。なお、ステップS81乃至ステップS84の処理のそれぞれは、図6のステップS11乃至ステップS14の処理のそれぞれと同様であるので、その説明は省略する。
【0146】
ステップS84において、推定PSF生成部33により推定PSFが生成されてぼけの大きさが検出されると、生成された推定PSFと、ぼけの大きさとが推定PSF生成部33から判定部211に供給される。
【0147】
すると、ステップS85において、判定部211は、推定PSF生成部33から供給されたぼけの大きさが、閾値以上であるか否かを判定する。
【0148】
ステップS85において、閾値以上であると判定された場合、ぼけはある程度大きく、フィルタ処理では精度よくぼけを除去することが困難であるので、判定部211は推定PSF生成部33からのぼけの大きさを縮小部24に供給する。そして、判定部211は、縮小部24に、入力画像の縮小処理および拡大処理によるぼけの除去を指示し、処理はステップS86に進む。
【0149】
そして、その後、ステップS86乃至ステップS88の処理が行われて、縮小処理および拡大処理によりぼけの除去された出力画像が生成されるが、これらの処理は図6のステップS15乃至ステップS17の処理のそれぞれと同様であるので、その説明は省略する。
【0150】
ステップS88において、水平アップサンプリング処理が行われ、拡大部25から表示制御部26に出力画像が供給されると、その後、処理はステップS92に進む。
【0151】
一方、ステップS85において、ぼけの大きさが閾値未満であると判定された場合、ぼけは小さく、フィルタ処理によっても精度よくぼけを除去することができるので、判定部211は、推定PSF生成部33からの推定PSFをフィルタ生成部212に供給する。そして、判定部211は、フィルタ処理部201にフィルタ処理によるぼけの除去を指示し、処理はステップS89に進む。
【0152】
ステップS89において、フィルタ生成部212は、判定部211からの推定PSFを用いて、ぼけが生じる空間周波数特性の逆特性を有するフィルタWを生成し、乗算部214に供給する。
【0153】
例えば、フィルタ生成部212は、推定PSFに対して高速フーリエ変換を施して画像(関数)Hを得るとともに、得られた画像Hの複素共役を取り、画像(関数)H’を得る。すなわち、画像H上の所定の画素の画素値の複素共役な数(値)が求められ、その求められた値が、その所定の画素と同じ位置にある画像H’の画素の画素値とされる。
【0154】
そして、フィルタ生成部212は、得られた画像Hおよび画像H’を用いて、次式(1)を計算し、ぼけの逆特性を有するフィルタWを生成する。
【0155】
W=(H’)/(H×H’+α) ・・・(1)
【0156】
なお、式(1)において、αは、ぼけのない入力画像の復元の強度、つまり画像の鮮鋭度をコントロールするパラメータであり、例えば、αは「0.03」などとされる。また、より詳細には、式(1)における「H」および「H’」には、画像Hおよび画像H’の同じ位置にある画素の画素値が代入され、その画素に対応するフィルタWの係数が得られる。つまり、フィルタWは、画像Hの画素のそれぞれに対応する係数のそれぞれからなる。
【0157】
このようにして得られたフィルタWは、一般に、Wienerフィルタと呼ばれている。フィルタ生成部212は、フィルタWを生成すると、得られたフィルタWを乗算部214に供給する。
【0158】
ステップS90において、FFT演算部213は、信号処理部22から供給された入力画像に対して、高速フーリエ変換を施してFFT画像を生成し、乗算部214に供給する。
【0159】
ステップS91において、乗算部214は、フィルタ生成部212から供給されたフィルタWを用いて、FFT演算部213からのFFT画像にフィルタ処理を施して、逆FFT演算部215に供給する。
【0160】
すなわち、FFT画像と画像H(画像H’)とは同じ大きさの画像であり、フィルタWの係数は、FFT画像の画素ごとに求められる。乗算部214は、FFT画像の各画素に、その画素に対して求められているフィルタWの係数を乗算することで、FFT画像にフィルタWを用いたフィルタ処理を施す。
【0161】
また、逆FFT演算部215は、乗算部214から供給された、フィルタ処理の施されたFFT画像に対して逆高速フーリエ変換を施すことで、出力画像を生成する。この出力画像は、入力画像からフィルタ処理によりぼけを除去することで得られた画像である。逆FFT演算部215は、得られた出力画像を表示制御部26に供給する。
【0162】
ここで、ステップS89からステップS91の処理をまとめると、図11に示すように、まず推定PSF151に高速フーリエ変換が施されて画像Hが生成され、得られた画像Hの複素共役が取られて画像H’がさらに得られる。そして、画像H、画像H’、および予め設定されたパラメータαから、フィルタWが生成される。
【0163】
また、入力画像IPに高速フーリエ変換が施されてFFT画像FP’が生成され、乗算部214において、得られたFFT画像FP’にフィルタWの係数が乗算され、さらにその結果得られた画像に逆高速フーリエ変換が施されて、出力画像OP’が生成される。
【0164】
図10のフローチャートの説明に戻り、ステップS91において出力画像が生成されると、その後、処理はステップS92に進む。
【0165】
ステップS92において、表示制御部26は、拡大部25の水平アップサンプリング処理部35、または逆FFT演算部215の何れかから供給された出力画像を表示部27に供給して、表示部27に出力画像を表示させ、ぼけ除去処理は終了する。
【0166】
すなわち、入力画像の縮小処理および拡大処理により出力画像が生成された場合には、拡大部25から表示制御部26に出力画像が供給されるので、その出力画像が表示される。これに対して、フィルタ処理により出力画像が生成された場合には、逆FFT演算部215から出力画像が供給されるので、その出力画像が表示される。
【0167】
このようにして、画像処理装置11は、検出されたぼけの大きさに応じて、縮小処理および拡大処理、またはフィルタ処理の何れかの方法により出力画像を生成する。このように、ぼけの大きさに応じて、縮小処理および拡大処理、またはフィルタ処理により出力画像を生成することでも、より簡単かつ確実に入力画像からぼけを除去することができる。また、ぼけを除去する処理によって、出力画像の画質が劣化してしまうようなこともない。
【0168】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0169】
図12は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0170】
コンピュータにおいて、CPU(Central Processing Unit)301,ROM(Read Only Memory)302,RAM(Random Access Memory)303は、バス304により相互に接続されている。
【0171】
バス304には、さらに、入出力インターフェース305が接続されている。入出力インターフェース305には、キーボード、マウス、マイクロホンなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307、ハードディスクや不揮発性のメモリなどよりなる記録部308、ネットワークインターフェースなどよりなる通信部309、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア311を駆動するドライブ310が接続されている。
【0172】
以上のように構成されるコンピュータでは、CPU301が、例えば、記録部308に記録されているプログラムを、入出力インターフェース305及びバス304を介して、RAM303にロードして実行することにより、上述した一連の処理が行われる。
【0173】
コンピュータ(CPU301)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【0174】
そして、プログラムは、リムーバブルメディア311をドライブ310に装着することにより、入出力インターフェース305を介して、記録部308にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部309で受信し、記録部308にインストールすることができる。その他、プログラムは、ROM302や記録部308に、あらかじめインストールしておくことができる。
【0175】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0176】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0177】
11 画像処理装置, 23 ぼけ検出部, 24 縮小部, 25 拡大部, 31 FFT演算部, 32 ケプストラム画像生成部, 33 推定PSF生成部, 201 フィルタ処理部, 211 判定部

【特許請求の範囲】
【請求項1】
入力画像に基づいて、前記入力画像上の被写体のぼけの大きさを検出する検出手段と、
前記入力画像を前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけを除去する縮小手段と、
縮小された前記入力画像を拡大する拡大手段と
を備える画像処理装置。
【請求項2】
前記ぼけの大きさは、前記入力画像上において生じたぼけにより、前記被写体の輪郭が広がった距離を画素数により表したものとされ、
前記縮小手段は、前記ぼけの大きさの逆数を前記縮小率として前記入力画像を縮小する
請求項1に記載の画像処理装置。
【請求項3】
前記検出手段は、前記入力画像を用いたケプストラム解析により前記ぼけの大きさを検出する
請求項2に記載の画像処理装置。
【請求項4】
前記縮小手段は、前記ぼけの大きさが予め定められた閾値以上である場合に、前記入力画像を縮小し、
前記ぼけの大きさが前記閾値未満である場合、前記ぼけの大きさの検出結果に基づいて、前記ぼけが生じる空間周波数特性の逆特性を有するフィルタを生成する生成手段と、
前記フィルタを用いたフィルタ処理を前記入力画像に施して、前記入力画像から前記ぼけを除去するフィルタ処理手段とをさらに備える
請求項3に記載の画像処理装置。
【請求項5】
入力画像に基づいて、前記入力画像上の被写体のぼけの大きさを検出する検出手段と、
前記入力画像を前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけを除去する縮小手段と、
縮小された前記入力画像を拡大する拡大手段と
を備える画像処理装置の画像処理方法であって、
前記検出手段が前記ぼけの大きさを検出し、
前記縮小手段が前記縮小率で前記入力画像を縮小し、
前記拡大手段が縮小された前記入力画像を拡大する
ステップを含む画像処理方法。
【請求項6】
入力画像に基づいて、前記入力画像上の被写体のぼけの大きさを検出し、
前記入力画像を前記ぼけの大きさにより定まる縮小率で縮小することで、前記入力画像上の前記ぼけを除去し、
縮小された前記入力画像を拡大する
ステップを含む処理をコンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2011−35514(P2011−35514A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−177579(P2009−177579)
【出願日】平成21年7月30日(2009.7.30)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】