次に本発明の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の実施の形態における撮像装置10の内部構成例を示すブロック図である。撮像装置10は、レンズ11と、絞り12と、撮像素子13と、サンプリング回路21と、A/D(Analog/Digital)変換回路22と、画像処理回路23と、符号化/復号器31と、メモリ32とを備える。また、撮像装置10は、表示ドライバ41と、表示部42と、タイミング生成器51と、操作受付部52と、制御部53と、バス59とを備える。なお、画像処理回路23と、符号化/復号器31と、メモリ32と、表示ドライバ41と、タイミング生成器51と、操作受付部52と、制御部53とは、バス59を介して相互に接続されている。撮像装置10は、例えば、被写体を撮像して静止画または動画を生成するデジタルスチルカメラやデジタルビデオカメラ(例えば、カメラ一体型レコーダ)により実現することができる。
レンズ11は、被写体からの光を集光するためのレンズである。絞り12は、レンズ11により集光された光の光量を調整するものである。すなわち、レンズ11により集光され、絞り12により光量が調整された被写体からの光が、撮像素子13に供給される。
撮像素子13は、タイミング生成器51により駆動され、レンズ11および絞り12を介して入射された被写体からの光を光電変換により電気信号(画像信号)に変換する画像センサであり、この変換された電気信号をサンプリング回路21に出力する。すなわち、レンズ11および絞り12を介して入射された被写体からの光が、撮像素子13のセンサ撮像面上の各受光素子に到達すると、これらの受光素子により光電変換が行われ、電気信号が生成される。なお、撮像素子13は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等により実現される。
サンプリング回路21は、タイミング生成器51により駆動され、撮像素子13から供給された電気信号をサンプリングしてノイズ成分を除去する等のアナログ処理を施すものであり、これらの処理が施されたアナログ信号をA/D変換回路22に供給する。サンプリング回路21により、撮像素子13で発生するノイズを軽減させることができる。なお、サンプリング回路21は、例えば、相関2重サンプリング回路(CDS:Correlated Double Sampling)により実現される。
A/D変換回路22は、タイミング生成器51により駆動され、サンプリング回路21から供給されたアナログ信号をデジタル信号に変換するものであり、この変換されたデジタル信号を画像処理回路23に供給する。なお、撮像素子13、サンプリング回路21およびA/D変換回路22は、特許請求の範囲に記載の撮像部の一例である。
画像処理回路23は、A/D変換回路22から供給されたデジタル信号(画像データ)に所定の画像処理を施すものであり、この画像処理が施された画像データを表示ドライバ41および符号化/復号器31に供給する。具体的には、画像処理回路23に供給されたデジタル信号は、画像処理回路23中の画像メモリ(画像用RAM(Random Access Memory))に一時格納される。そして、画像処理回路23の信号処理用プロセッサが画像メモリに格納されたデジタル信号に対して予めプログラムされた画像処理を施す。なお、画像処理回路23は、例えば、DSP(Digital Signal Processor)により実現される。また、画像処理回路23により実行される処理の詳細については、図2乃至図14等を参照して詳細に説明する。
符号化/復号器31は、画像処理回路23から供給された画像データを符号化し、符号化された画像データをメモリ32に供給して記録させるものである。また、符号化/復号器31は、メモリ32から画像データを読み出して復号し、画像処理回路23に供給する。
メモリ32は、符号化/復号器31により符号化された画像データを記憶するメモリである。また、メモリ32は、記憶されている画像データを符号化/復号器31に供給する。なお、メモリ32は、例えば、半導体メモリ、磁気記録媒体、光磁気記録媒体、光記録媒体等を用いた記録装置により実現される。
表示ドライバ41は、画像処理回路23から供給されたデジタル信号をアナログ信号に変換し、この変換されたアナログ信号に対応する画像を表示部42に表示させるものである。
表示部42は、表示ドライバ41により変換されたアナログ信号に対応する画像を表示するものである。なお、通常の状態では、タイミング生成器51の制御により、画像処理回路23に内蔵されている画像メモリには、一定のフレームレートで絶えずデジタル信号(一定のフレームレートでの画素のストリーム)が上書きされる。そして、画像処理回路23に内蔵されている画像メモリの画像データが、表示ドライバ41を介して表示部42に出力され、その画像データに対応する画像が表示部42に表示される。表示部42は、例えば、LCD(Liquid Crystal Display)等により実現され、ファインダとしての機能も有する。
タイミング生成器51は、信号処理系(撮像素子13、サンプリング回路21、A/D変換回路22、および、画像処理回路23)の動作タイミングを制御するタイミング生成器(タイミングジェネレータ)である。例えば、撮像中の状態においては、一定のフレームレートによる画像取り込みを維持するように、タイミング生成器51が信号処理系を制御する。
操作受付部52は、ユーザによるシャッタ操作やその他のコマンド入力等の操作入力を受け付ける操作受付部であり、受け付けられた操作入力の内容を制御部53に供給する。例えば、操作受付部52には、撮像装置10本体にあるシャッタボタン等の操作ボタン類が備えられている。
制御部53は、撮像装置10全体を制御する制御部であり、ドライバ(図示せず)に記憶されている制御用プログラムを読み出し、この制御用プログラムや操作受付部52から受け付けられたユーザからのコマンド等に基づいて各種の制御を行う。制御部53は、例えば、CPU(Central Processing Unit)により実現される。
次に、画像処理回路23により行われる信号処理について図面を参照して詳細に説明する。本発明の実施の形態で示す信号処理は、画像処理回路23に入力されたデジタル信号(画像信号)のストリームに対して、画像処理回路23内部の演算ユニットが所定のプログラムコードに記述された演算を実行することにより実現される。そこで、以下では、そのプログラム中の各処理単位を機能ブロックとして説明し、各処理により実行される順序をフローチャートで説明する。なお、本発明の実施の形態で説明するプログラムによる実施形態以外にも、以下で示す機能ブロックと同等の処理を実現するハードウェア回路を実装する構成としてもよい。
図2は、本発明の実施の形態における画像処理回路23の機能構成例を示すブロック図である。なお、図2では、画像処理回路23により行われる信号処理全体の構成を示す。画像処理回路23は、復元処理部100と、ホワイトバランス処理部210と、デモザイク処理部220と、ガンマ補正処理部230と、YC変換処理部240とを備える。画像処理回路23には、A/D変換回路22によりデジタイズされたモザイク画像Mが入力画像として入力される。そして、入力されたモザイク画像Mに対して、画像処理回路23が各種の画像処理を施す。このモザイク画像Mは、各画素にR(Red:赤)、G(Green:緑)、B(Blue:青)の何れかの色に対応する強度信号が格納されたものであり、その色配列は、例えば、図3に示すベイヤー(Bayer)配列である。
復元処理部100は、モザイク画像Mに対して光学劣化およびセンサ劣化を復元処理するものである。そして、この復元処理が施されたモザイク画像Mrepは、ホワイトバランス処理部210に供給される。なお、復元処理部100については、図5乃至図14等を参照して詳細に説明する。
ホワイトバランス処理部210は、復元処理が施されたモザイク画像Mrepに対してホワイトバランス処理を施すものである。このホワイトバランス処理は、モザイク画像Mrepに対して、無彩色の被写体領域の色バランスが無彩色になるように、各画素強度の持つ色に応じて適切な係数をかける処理である。このホワイトバランス処理が施されたモザイク画像Mwは、デモザイク処理部220に供給される。
デモザイク処理部220は、ホワイトバランス処理が施されたモザイク画像Mwの各画素位置にR、G、Bの全てのチャネルの強度が揃うようにデモザイク処理(補間処理)を行うものである。このデモザイク処理が施されたRGB画像([Rw,Gw,Bw]T)は、ガンマ補正処理部230に供給される。なお、このデモザイク処理が施されたRGB画像([Rw,Gw,Bw]T)は、R、G、Bの3つの色に対応する画像である。また、行列ATは、行列Aの転置行列を意味する。
ガンマ補正処理部230は、RGB画像([Rm,Gm,Bm]T)に対してガンマ補正を施すものである。このガンマ補正が施されたRGB画像([Ru γ,Gu γ,Bu γ]T)は、YC変換処理部240に供給される。
YC変換処理部240は、ガンマ補正が施されたRGB画像([Ru γ,Gu γ,Bu γ]T)にYCマトリックス処理およびクロマ成分に対する帯域制限を行うことにより、輝度信号(Y)および色差信号(Cr,Cb)を生成するものである。この輝度信号(Y画像)および色差信号(C画像)は、符号化/復号器31または表示ドライバ41に供給される。
図3は、本発明の実施の形態における撮像素子13の受光面に配されるカラーフィルタの一例としてのベイヤー配列を示す図である。このベイヤー配列では、Gの色の画素が市松状に配置され、G以外の画素位置ではRの色の画素が水平方向および垂直方向に1画素おきの正方格子状に配置され、残りの画素位置にBの色の画素が水平方向および垂直方向に1画素おきの正方格子状に配置されている。なお、本発明の実施の形態では、R画素を含む行に存在するG画素をGrで示し、B画素を含む行に存在するG画素をGbで示す。
図4は、本発明の実施の形態における復元処理部100の復元処理の対象となるモザイク画像と、復元処理部100により復元処理が行われたモザイク画像とを模式的に示す図である。これらのモザイク画像は、図3に示すベイヤー配列に対応して各画素が配置されている。ここで、本発明の実施の形態では、復元処理の対象となるモザイク画像を復元処理部100が観測画像として入力し、復元処理が行われたモザイク画像を復元処理部100が復元画像として出力する例について説明する。
図4(a)には、復元処理部100の復元処理の対象となる観測画像300を示し、図4(b)には、復元処理部100により復元処理が行われた復元画像310を示す。図4(a)および(b)では、各画像の一部を破線の矩形で囲んで示し、各矩形内に含まれる画素を丸で示し、各画素のチャネルを示す文字を丸内に付す。ここで、図4(b)に示す復元画像310は、図4(a)に示す観測画像300の解像度が、縦横それぞれ3倍となるように変換された高解像度画像である。このように、復元処理の対象となる観測画像300と、復元処理が行われた後の復元画像310とは解像度が異なる。そこで、図4(a)および(b)では、観測画像300および復元画像310を比較可能とするため、観測画像300および復元画像310に共通して存在する画素を示す丸を太線で示す。すなわち、観測画像300および復元画像310に共通して存在する画素は、観測画像300における画素301乃至309と、復元画像310における画素311乃至319とである。また、図4(a)に示す観測画像300において、復元画像310を構成する各画素の画素位置に対応する位置のうち、画素が存在しない位置を破線の丸で示す。すなわち、観測画像300は、復元画像310との比較では低解像度画像となるため、画素301乃至309の画素位置以外の位置では画素が存在しない。
図5は、本発明の実施の形態における復元処理部100の機能構成例を示すブロック図である。復元処理部100は、想定劣化画像画素値算出部110と、擬似観測画像画素値算出部120と、更新信号算出部130と、復元画像作成部140とを備える。なお、本発明の実施の形態では、光学系による劣化をPSF(Point Spread Function)により定義する。
想定劣化画像画素値算出部110は、復元画像作成部140から出力されたフレーム(復元画像)に基づいて、更新信号作成の際に用いられる想定劣化画像画素値を算出するものであり、算出された想定劣化画像画素値を更新信号算出部130に出力する。この想定劣化画像画素値算出部110は、想定劣化画像画素値を算出する際にチャネル別のボケ関数(例えば、図6に示すPSF)を用いる。なお、想定劣化画像画素値算出部110については、図8を参照して詳細に説明する。
擬似観測画像画素値算出部120は、A/D変換回路22から出力されたフレーム(観測画像)に基づいて、更新信号作成の際に用いられる擬似観測画像画素値を算出するものであり、算出された擬似観測画像画素値を更新信号算出部130に出力する。なお、擬似観測画像画素値算出部120については、図10を参照して詳細に説明する。また、擬似観測画像画素値算出部120は、特許請求の範囲に記載の擬似対象画像画素値算出部の一例である。
更新信号算出部130は、想定劣化画像画素値算出部110から出力された想定劣化画像画素値と、擬似観測画像画素値算出部120から出力された擬似観測画像画素値とに基づいて、復元画像を作成するための更新信号を算出するものである。そして、算出された更新信号を復元画像作成部140に出力する。なお、更新信号算出部130については、図13を参照して詳細に説明する。
復元画像作成部140は、更新信号算出部130から出力された更新信号に基づいて、直前に作成された復元画像を更新して、新たな復元画像を作成するものである。そして、新たに作成された復元画像をホワイトバランス処理部210に出力するとともに、その復元画像を次のフレーム(観測画像)について復元画像を作成する際に用いる。なお、復元画像作成部140については、図14を参照して詳細に説明する。
図6は、本発明の実施の形態における想定劣化画像画素値算出部110が想定劣化画像画素値を算出する際に用いるチャネル別のボケ関数の一例であるPSFの値を表すグラフを示す図である。図6(a)には、2次元PSFの値を表すグラフを示し、図6(b)には、3次元PSFの値を表すグラフを示す。なお、図6(a)に示すグラフにおいて、x軸は画像上における画素の位置(画素位置)を示す軸であり、y軸は画素位置に対する応答の値を示す軸である。また、図6(b)に示すグラフにおいて、x軸およびz軸は画像上における画素位置を示す軸であり、y軸は画素位置に対する応答の値を示す軸である。ここで、図6(a)および(b)に示すy軸の値(画素位置に対する応答の値)は、入力である画素位置に対する出力が、どれだけボケた像として現れるかを示す値である。また、図6(a)および(b)に示すy軸の値は正規分布に従って正規化された値とする。なお、図6(a)および図6(b)に示すPSFは、特許請求の範囲に記載のボケ関数の一例である。
図7は、本発明の実施の形態における想定劣化画像画素値算出部110の処理対象となる復元画像310と、想定劣化画像画素値算出部110により算出される想定劣化画像画素値により構成される想定劣化画像321乃至324とを模式的に示す図である。なお、図7(a)に示す復元画像310は、図4(b)に示す復元画像310と同様であるため、ここでの詳細な説明を省略する。図7(b)には、チャネル毎に算出された想定劣化画像画素値により構成される想定劣化画像の一例である想定劣化画像321乃至324を示す。この想定劣化画像については、図8を参照して詳細に説明する。
図8は、本発明の実施の形態における想定劣化画像画素値算出部110の機能構成例を示すブロック図である。想定劣化画像画素値算出部110は、チャネル別ボケ行列保持部111と、積和部112と、リサンプリング部113とを備える。
チャネル別ボケ行列保持部111は、光学劣化を想定したボケ行列をチャネル毎に保持するものであり、保持されているチャネル別ボケ行列を積和部112に供給する。チャネル別ボケ行列として、例えば、図6(a)および(b)に示すPSFを用いることができる
積和部112は、復元画像作成部140から出力された復元画像における各画素について、チャネル別ボケ行列保持部111に保持されているチャネル別ボケ行列を用いて、想定劣化画像の画素値(想定劣化画像画素値)を計算するものである。そして、計算して求められた想定劣化画像画素値をリサンプリング部113に出力する。
ここで、本発明の実施の形態では、復元画像における各画素のうち、想定劣化画像画素値の算出の際に基準となる画素の位置を注目画素位置と称して説明する。また、この注目画素位置に存在する画素を注目画素と称する。この例では、観測画像を構成する各画素の画素位置に対応する復元画像の位置を注目画素位置とし、この注目画素位置に存在する画素を注目画素とする場合について説明する。例えば、図7(a)に示す例では、復元画像310の画素311乃至319が注目画素であり、画素311乃至319の位置が注目画素位置である。また、観測画像における各画素についても、同様に、注目画素位置および注目画素を用いて説明する。
具体的には、積和部112は、復元画像における注目画素と、この注目画素の近傍に存在する画素とのうち、同じチャネルの画素値と、そのチャネルに対応してチャネル別ボケ行列保持部111に保持されているチャネル別ボケ行列とを積和する。そして、その注目画素位置における想定劣化画像画素値を計算する。なお、注目画素の近傍に存在する画素として、例えば、注目画素を中心とした7画素×7画素の範囲に存在する画素を用いることができる。例えば、図7(a)に示す画素315を注目画素とし、その注目画素位置について想定劣化画像画素値を計算する場合には、画素315を中心とした7画素×7画素の範囲(復元画像310の範囲)が計算対象となる。すなわち、図7(a)に示す画素315の位置を注目画素位置として想定劣化画像画素値を計算する場合には、復元画像310の範囲に含まれる各画素の画素値を用いて、チャネル毎に想定劣化画像画素値を計算する。
ここで、想定劣化画像画素値の計算対象となるチャネルを対象チャネルと称して説明する。例えば、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルGrについて想定劣化画像画素値を計算する場合には、復元画像310の範囲に含まれるチャネルGrの画素値(16個)と、チャネルGrのボケ行列とを用いて積算処理が行われる。この積算結果である積算値を順次加算することにより、チャネルGrについての想定劣化画像画素値が求められる。また、例えば、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルRについて想定劣化画像画素値を計算する場合には、復元画像310の範囲に含まれるチャネルRの画素値(12個)と、チャネルRのボケ行列とを用いて積算処理が行われる。この積算結果である積算値を順次加算することにより、チャネルRについての想定劣化画像画素値が求められる。同様に、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルB、Grのそれぞれについて、復元画像310の範囲に含まれる対象チャネルを用いて、想定劣化画像画素値が計算される。また、他の注目画素位置についても同様に計算される。すなわち、1つの注目画素位置について、4つの想定劣化画像画素値が算出される。この想定劣化画像画素値の算出は、例えば、注目画素位置をラスタ順に移動させながら行われる。すなわち、図7(a)に示す復元画像310では、画素311→画素312→画素313→…→画素314→画素315→画素316→…→画素317→画素318→画素319→…の順序で行われる。
リサンプリング部113は、積和部112により求められた想定劣化画像画素値を注目画素位置に配置する(リサンプリングする)ものであり、このように配置された想定劣化画像画素値を更新信号算出部130に出力する。例えば、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルGrについて求められた想定劣化画像画素値をリサンプリングする場合には、図7(b)に示す想定劣化画像(対象チャネルGr)321の画素331の位置にリサンプリングされる。また、例えば、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルRについて求められた想定劣化画像画素値をリサンプリングする場合には、図7(b)に示す想定劣化画像(対象チャネルR)322の画素332の位置にリサンプリングされる。同様に、図7(a)に示す画素315の位置を注目画素位置とし、対象チャネルB、Grのそれぞれについて求められた想定劣化画像画素値をリサンプリングする場合についても同様に、リサンプリングが行われる。すなわち、対象チャネルBについて求められた想定劣化画像画素値が、図7(b)に示す想定劣化画像(対象チャネルB)323の画素333の位置にリサンプリングされる。また、対象チャネルGrについて求められた想定劣化画像画素値が、図7(b)に示す想定劣化画像(対象チャネルGr)324の画素334の位置にリサンプリングされる。このようにリサンプリングが行われることにより、1つの復元画像310について、4つのチャネルに応じた想定劣化画像321乃至324が求められる。
なお、想定劣化画像画素値算出部110によるリサンプリング処理は、撮像素子13による劣化を想定しない場合には、解像度変換を伴わない画素位置のリサンプリング処理のみが行われる。すなわち、観測画像と同一の解像度の4つの想定劣化画像が作成される。また、観測画像がベイヤー配列でない場合には、リサンプリング処理を省略することができる。観測画像がベイヤー配列でない場合とは、例えば、デモザイク処理が行われた画像を観測画像とする場合である。
図9は、本発明の実施の形態における擬似観測画像画素値算出部120の処理対象となる観測画像300と、擬似観測画像画素値算出部120により算出される擬似観測画像画素値により構成される擬似観測画像341乃至344とを模式的に示す図である。なお、図9(a)に示す観測画像300は、図4(a)に示す観測画像300と同様であるため、ここでの詳細な説明を省略する。図9(b)には、チャネル毎に算出された擬似観測画像画素値により構成される擬似観測画像の一例である擬似観測画像341乃至344を示す。この擬似観測画像については、図10を参照して詳細に説明する。
図10は、本発明の実施の形態における擬似観測画像画素値算出部120の機能構成例を示すブロック図である。擬似観測画像画素値算出部120は、チャネル判定部121および観測画像画素変換部122を備える。ここで、擬似観測画像画素値算出部120は、観測画像を構成する各画素を擬似的に同一のチャネルの画素とした擬似観測画像の各画素値をチャネル毎に算出する。この擬似観測画像の画素値(擬似観測画像画素値)は、チャネルが異なる場合でも画素の高周波成分はほぼ同じ値となるが、画素の低周波成分はチャネルの種類に応じて異なる値となるという性質を利用して算出される。なお、想定劣化画像画素値算出部110について説明した場合と同様に、計算対象となるチャネルを対象チャネルと称して説明する。また、擬似観測画像画素値算出部120は、想定劣化画像画素値算出部110と同様に、1つの注目画素位置について、4つの擬似観測画像画素値を算出する。すなわち、4つの対象チャネル毎に擬似観測画像画素値が求められる。
チャネル判定部121は、A/D変換回路22から出力された観測画像における注目画素と、この注目画素の近傍の各画素との画素値を入力し、その注目画素のチャネルと対象チャネルとが同一であるか否かを判定するものである。そして、チャネル判定部121は、その注目画素のチャネルと対象チャネルとが同一であると判定した場合には、その注目画素の画素値を擬似観測画像画素値として更新信号算出部130に出力する。
一方、チャネル判定部121は、その注目画素のチャネルと対象チャネルとが同一でないと判定した場合には、その注目画素およびその近傍の各画素のうち、対象チャネルの画素値を空間的低周波成分計算部123および127に出力する。また、その注目画素およびその近傍の各画素のうち、注目画素のチャネル(参照チャネル)の画素値を空間的高周波成分計算部124および空間的低周波成分計算部126に出力する。
ここで、参照チャネルは、その注目画素のチャネルと対象チャネルとが同一でない場合に、擬似観測画像画素値を算出する際に用いられるチャネルであり、注目画素のチャネルと同一のチャネルである。例えば、図9(a)に示す画素301、303、307、309の位置を注目画素位置とし、対象チャネルGrについて擬似観測画像画素値を計算する場合には、注目画素(画素301、303、307、309)のチャネルGrと対象チャネルGrとが同一である。このため、注目画素(画素301、303、307、309)の画素値が、擬似観測画像画素値として出力される。すなわち、図9(b)に示す擬似観測画像(対象チャネルGr)341の画素351、353、357、359の擬似観測画像画素値として出力される。一方、例えば、図9(a)に示す画素302の位置を注目画素位置とし、対象チャネルGrについて擬似観測画像画素値を計算する場合には、注目画素(画素302)のチャネルRと対象チャネルGrとが同一でない。このため、画素302およびその近傍の各画素のうち、注目画素(画素302)のチャネル(参照チャネル)Rと、対象チャネルGrとを用いて、擬似観測画像画素値が計算される。この擬似観測画像画素値は、図9(b)に示す擬似観測画像(対象チャネルGr)341の画素352の擬似観測画像画素値として出力される。同様に、図9(a)に示す画素304乃至306、308の位置を注目画素位置とし、対象チャネルGrについて擬似観測画像画素値を計算する場合には、注目画素のチャネルと対象チャネルGrとが同一でない。このため、注目画素およびその近傍の各画素のうち、注目画素のチャネル(参照チャネル)と、対象チャネルGrとを用いて、擬似観測画像画素値が計算される。
図9(b)に示す擬似観測画像341乃至344において、観測画像300の注目画素の画素値が、擬似観測画像画素値として出力される画素位置を太丸で示す。また、図9(b)に示す擬似観測画像341乃至344において、注目画素のチャネル(参照チャネル)と、対象チャネルとを用いて、擬似観測画像画素値が計算される画素位置を二重丸で示す。このように、1つの注目画素位置について、4つの擬似観測画像画素値が求められる。なお、参照チャネルおよび対象チャネルを用いた擬似観測画像画素値の計算は、観測画像画素変換部122により行われる。
観測画像画素変換部122は、注目画素位置における対象チャネルの画素値を推定するものである。この観測画像画素変換部122は、空間的低周波成分計算部123と、空間的高周波成分計算部124と、空間的高周波成分スケーリング係数計算部125と、擬似観測画像画素値計算部129とを備える。また、空間的高周波成分スケーリング係数計算部125は、参照チャネルの空間的高周波成分のスケーリング係数を計算するものであり、空間的低周波成分計算部126および127と、除算器128とを備える。この例では、チャネル間の画素値変化に相関があることに着目し、このチャネル間の画素値変化の相関に基づいて、注目画素位置における対象チャネルの画素値を推定する。すなわち、注目画素のチャネル(参照チャネル)の変化量(参照チャネルの空間的高周波成分)にスケーリングを施し、注目画素位置における対象チャネルの直流成分(対象チャネルの空間的低周波成分)に加算する。これにより、注目画素位置における対象チャネルの画素値を推定する。
空間的低周波成分計算部123は、注目画素の近傍の各画素のチャネル(対象チャネル)の画素値に低域通過フィルタ(ローパスフィルタ)をかけ、注目画素位置における対象チャネルの空間的低周波成分を計算するものである。そして、計算結果である空間的低周波成分ILowFreqを擬似観測画像画素値計算部129に出力する。なお、空間的低周波成分計算部123は、特許請求の範囲に記載の第二チャネル空間的低周波成分計算部の一例である。
空間的高周波成分計算部124は、注目画素位置における参照チャネルの空間的高周波成分を計算するものである。そして、計算結果である空間的高周波成分I'
HighFreqを擬似観測画像画素値計算部129に出力する。具体的には、空間的高周波成分計算部124は、式7に示すように、注目画素の画素値I'と、空間的低周波成分計算部126により計算された注目画素位置における参照チャネルの空間的低周波成分I'
LowFreqとの差分値を計算する。そして、この差分値(空間的高周波成分I'
HighFreq)が、注目画素位置における参照チャネルの空間的高周波成分として擬似観測画像画素値計算部129に出力される。なお、高域通過フィルタ(ハイパスフィルタ)を用いて、注目画素位置における参照チャネルの空間的高周波成分を計算するようにしてもよい。
空間的低周波成分計算部126は、注目画素およびその近傍の各画素の参照チャネルの各画素値に低域通過フィルタをかけ、注目画素位置における参照チャネルの空間的低周波成分を計算するものである。そして、計算結果である空間的低周波成分I'LowFreqqを空間的高周波成分計算部124および除算器128に出力する。
空間的低周波成分計算部127は、注目画素およびその近傍の各画素の対象チャネルの各画素値に低域通過フィルタをかけ、注目画素位置における対象チャネルの空間的低周波成分を計算するものである。そして、計算結果である空間的低周波成分ILowFreqを除算器128に出力する。なお、空間的低周波成分計算部127は、空間的低周波成分計算部123と兼用するようにしてもよい。また、空間的低周波成分計算部127は、特許請求の範囲に記載の第二チャネル空間的低周波成分計算部の一例である。
除算器128は、空間的低周波成分計算部127からの対象チャネルの空間的低周波成分と、空間的低周波成分計算部126からの参照チャネルの空間的低周波成分とに基づいて、参照チャネルの空間的高周波成分のスケーリング係数を計算するものである。このスケーリング係数は、参照チャネルの空間的高周波成分の大きさを調整する係数であり、参照チャネルの空間的高周波成分を正規化するものである。例えば、除算器128は、式8に示すように、空間的低周波成分I
LowFreqと、空間的低周波成分I'
LowFreqqとを除算し、スケーリング係数kを計算する。なお、式9に示すように、注目画素およびその近傍の各画素の対象チャネルの画素値の分散σ
I,Iと、注目画素およびその近傍の各画素の対象チャネルおよび参照チャネルの共分散σ
I,I'との比を用いて、スケーリング係数kを計算するようにしてもよい。
擬似観測画像画素値計算部129は、空間的低周波成分計算部123からの空間的低周波成分と空間的高周波成分計算部124からの空間的高周波成分と除算器128からのスケーリング係数とに基づいて注目画素位置の擬似観測画像画素値を計算するものである。そして、注目画素位置の擬似観測画像画素値を更新信号算出部130に出力する。例えば、擬似観測画像画素値計算部129は、式10に示すように、空間的低周波成分I
LowFreqと、空間的高周波成分I'
HighFreqと、スケーリング係数kとを用いて、注目画素位置の擬似観測画像画素値I
pseudoを計算する。なお、擬似観測画像画素値計算部129は、特許請求の範囲に記載の擬似対象画像画素値計算部の一例である。
図11および図12は、本発明の実施の形態における擬似観測画像画素値算出部120に入力される観測画像を模式的に示す図である。なお、図11および図12に示す観測画像では、復元画像の画素位置に対応する破線の丸(図4、図7および図8に示す)は省略する。また、図11および図12に示す観測画像では、注目画素を太丸で示し、対象チャネルの画素を斜線を付した丸で示す。図11には、注目画素(復元画像における注目画素位置に相当する位置に存在する画素)361と、注目画素361の近傍の各画素とにより構成される観測画像360を示す。また、図11では、注目画素361のチャネル(参照チャネル)をRチャネルとし、対象チャネルをGrとした場合を例にして示す。
図11に示す例では、注目画素361のチャネルRと、対象チャネルGrとが同一でない。このため、注目画素361の近傍の各画素のうち、対象チャネルGrの画素値が空間的低周波成分計算部123および127に出力される。また、注目画素361およびその近傍の各画素のうち、参照チャネルRの画素値が空間的高周波成分計算部124および空間的低周波成分計算部126に出力される。
続いて、空間的低周波成分計算部123および127が、対象チャネル空間的低周波成分計算範囲362(実線の矩形で示す範囲)に含まれる対象チャネルGrの各画素値に低域通過フィルタ(例えば、4×5)をかける。そして、注目画素361の位置における対象チャネルGrの空間的低周波成分を計算する。この場合に、例えば、偶数タップの低域通過フィルタを用いて、注目画素361の位置の位相の空間的低周波成分を直接求めることができる。また、奇数タップの低域通過フィルタを用いて、対象チャネルGrの位置の空間的低周波成分を求めておき、これらの補間により注目画素361の位置の空間的低周波成分を求めるようにしてもよい。
続いて、空間的低周波成分計算部126が、参照チャネル空間的低周波および高周波成分計算範囲363(破線の矩形で示す範囲)に含まれる参照チャネルRの各画素値に低域通過フィルタ(例えば、5×5)をかける。そして、注目画素361の位置における参照チャネルRの空間的低周波成分を計算する。
続いて、除算器128が、注目画素361の位置における対象チャネルGrの空間的低周波成分と、注目画素361の位置における参照チャネルRの空間的低周波成分とに基づいて、参照チャネルRの空間的高周波成分のスケーリング係数を計算する。この計算は、例えば、式8に従って行われる。
続いて、空間的高周波成分計算部124が、注目画素361の位置における参照チャネルRの空間的低周波成分と、注目画素361の参照チャネルRの画素値との差分値を計算する。そして、注目画素361の位置における参照チャネルRの空間的高周波成分を計算する。
続いて、擬似観測画像画素値計算部129が、注目画素361の位置における擬似観測画像画素値を計算する。すなわち、式10に従って、注目画素361の位置における対象チャネルGrの空間的低周波成分と、参照チャネルRの空間的高周波成分と、参照チャネルRの空間的高周波成分のスケーリング係数とを用いて、その位置における擬似観測画像画素値が計算される。そして、注目画素361の位置における擬似観測画像画素値が更新信号算出部130に出力される。
図12には、注目画素371と、注目画素371の近傍の各画素とにより構成される観測画像370を示す。また、図12では、注目画素371のチャネル(参照チャネル)をGbチャネルとし、対象チャネルをGrとした場合を例にして示す。なお、この例は、図11の変形例であり、空間的低周波成分を計算する際に用いられる低域通過フィルタが異なる。そこで、以下では、図11と共通する部分についての説明を省略し、図11と異なる部分を中心にして説明する。
図12に示す例では、注目画素371のチャネル(参照チャネル)Gbと、対象チャネルGrとが同一でない。このため、注目画素371の近傍の各画素のうち、対象チャネルGrの画素値が空間的低周波成分計算部123および127に出力される。また、注目画素371およびその近傍の各画素のうち、参照チャネルGbの画素値が空間的高周波成分計算部124および空間的低周波成分計算部126に出力される。
続いて、空間的低周波成分計算部123および127が、対象チャネル空間的低周波成分計算範囲372(実線の矩形で示す範囲)に含まれる対象チャネルGrの各画素値に低域通過フィルタ(例えば、4×4)をかける。そして、注目画素371の位置における対象チャネルGrの空間的低周波成分を計算する。
続いて、空間的低周波成分計算部126が、参照チャネル空間的低周波および高周波成分計算範囲373(破線の矩形で示す範囲)に含まれる参照チャネルGbの各画素値に低域通過フィルタ(例えば、5×5)をかける。そして、注目画素371の位置における参照チャネルGbの空間的低周波成分を計算する。以下、図11と同様に計算が行われ、注目画素371の位置における擬似観測画像画素値が計算される。そして、注目画素371の位置における擬似観測画像画素値が更新信号算出部130に出力される。
図13は、本発明の実施の形態における更新信号算出部130の機能構成例を示すブロック図である。更新信号算出部130は、減算器131と、リサンプリング部132とを備える。
減算器131は、擬似観測画像画素値算出部120から出力された擬似観測画像画素値から、想定劣化画像画素値算出部110から出力された想定劣化画像画素値を減算するものであり、減算結果である差分値をリサンプリング部132に出力する。上述したように、1つの注目画素位置について、4つの対象チャネル(Gr、R、B、Gb)の擬似観測画像画素値および想定劣化画像画素値が作成される。このため、減算器131には、1つの注目画素位置について作成された4つの擬似観測画像画素値および想定劣化画像画素値が順次入力される。そして、入力された4つの擬似観測画像画素値および想定劣化画像画素値について、対象チャネル毎に順次減算処理が行われる。
リサンプリング部132は、減算器131から出力された差分値を、注目画素位置から復元画像の各画素位置にリサンプリングするものであり、リサンプリングされた差分値を更新信号として復元画像作成部140に出力する。すなわち、1つの注目画素位置(観測画像の画素位置に相当する位置)について対象チャネル毎に算出された4つの差分値が、観測画像の3倍の解像度を有する復元画像の各画素位置にアップサンプリングされる。そして、復元画像の画素位置毎に、リサンプリングされた差分値が更新信号として出力される。
図14は、本発明の実施の形態における復元画像作成部140の機能構成例を示すブロック図である。復元画像作成部140は、行列演算部141と、加算器142とを備える。なお、復元画像作成部140は、例えば、式3および式5に示すBack−projection法およびその簡易型により復元画像を作成するものである。
行列演算部141は、リサンプリング部132から出力された更新信号(擬似観測画像画素値および想定劣化画像画素値の差分値)に所定の行列をかける演算を行うものであり、演算結果を加算器142に出力する。ここで、所定の行列は、例えば、式3および式5に示す行列(例えば、行列λhTまたは行列a)である。
加算器142は、行列演算部141から出力された演算結果の値と、直前に作成された復元画像を構成する各画素位置の画素値(復元画像信号)とを加算するものである。そして、加算結果である加算値が復元画像信号としてホワイトバランス処理部210に出力される。また、この復元画像信号が、次の復元画像信号の作成に用いられる。すなわち、復元画像作成部140により、直前に作成された復元画像が更新され、新たな復元画像が作成される。なお、最初の復元画像としては、例えば、最初に復元処理部100に入力された観測画像を解像度変換した画像を用いることができる。
次に本発明の実施の形態における撮像装置10の動作について図面を参照して説明する。
図15は、本発明の実施の形態における画像処理回路23の処理手順を示すフローチャートである。
ループL901では、A/D変換回路22から順次出力されるフレーム(モザイク画像)について、後続のフレームがなくなるまで、1フレームずつステップS902乃至S907、S910の処理を繰り返す。
最初に、画像処理回路23が、内部の画像メモリに記憶されている1フレーム(モザイク画像)を読み出す(ステップS902)。
次に、復元処理部100が、読み出されたモザイク画像の光学劣化およびセンサ劣化を復元する復元処理を行う(ステップS910)。なお、この復元処理については、図16を参照して詳細に説明する。
次に、ホワイトバランス処理部210が、復元処理が施されたモザイク画像についてホワイトバランス処理を行う(ステップS903)。次に、デモザイク処理部220が、ホワイトバランス処理が施されたモザイク画像について、各画素位置にR、G、Bの全ての情報が揃ったRGB画像を生成するデモザイク処理を行う(ステップS904)。次に、ガンマ補正処理部230が、RGB画像についてガンマ補正処理を行う(ステップS905)。次に、YC変換処理部240が、ガンマ補正されたRGB画像をY画像およびC画像に変換する(ステップS905)。次に、表示部42への表示またはメモリ32への記録のため、Y画像およびC画像が出力される(ステップS907)。そして、後続のフレームの入力がなければ、画像処理回路23の動作を終了する。
図16は、本発明の実施の形態における復元処理部100による復元処理(図15のステップS910)の処理手順を示すフローチャートである。なお、この例では、画素単位に一連の復元処理を行う例を示す。
最初に、復元処理部100が、画像処理回路23内部の画像メモリから読み出されたモザイク画像(観測画像)と、復元画像作成部140から出力されたモザイク画像(復元画像)とを入力する(ステップS911)。
続いて、ループL912では、観測画像および復元画像(2つのモザイク画像)の各注目画素について、ステップS913、S915、S960、S970、ループL914の各処理を行う。また、ループL913では、観測画像および復元画像(2つのモザイク画像)の各注目画素について、4つの対象チャネル毎にステップS930およびS940の各処理を行う。
ループL913では、最初に、想定劣化画像画素値算出部110が、復元画像の注目画素について想定劣化画像画素値を算出する想定劣化画像画素値算出処理を行う(ステップS930)。この想定劣化画像画素値算出処理については、図17を参照して詳細に説明する。なお、ステップS930は、特許請求の範囲に記載の想定劣化画像画素値算出手順の一例である。
続いて、擬似観測画像画素値算出部120が、観測画像の注目画素について擬似観測画像画素値を算出する擬似観測画像画素値算出処理を行う(ステップS940)。この擬似観測画像画素値算出処理については、図18を参照して詳細に説明する。なお、ステップS940は、特許請求の範囲に記載の擬似対象画像画素値算出手順の一例である。ループL913では、4つの対象チャネルについて、想定劣化画像画素値および擬似観測画像画素値の算出が終了するまで繰り返す。4つの対象チャネルについて、想定劣化画像画素値および擬似観測画像画素値の算出が終了した場合には、ループL913は終了して、ステップS960に移行する。
続いて、更新信号算出部130が、想定劣化画像画素値および擬似観測画像画素値に基づいて、更新信号を算出する更新信号算出処理を行う(ステップS960)。この更新信号算出処理については、図20を参照して詳細に説明する。
続いて、復元画像作成部140が、復元画像信号および更新信号に基づいて、復元画像を更新して新たな復元画像を作成する復元画像作成処理を行う(ステップS970)。この復元画像作成処理については、図21を参照して詳細に説明する。なお、ステップS970は、特許請求の範囲に記載の復元画像作成手順の一例である。
ループL912では、各注目画素について、復元画像作成処理が終了するまで繰り返す。そして、各注目画素について、復元画像作成処理が終了した場合には、ループL912は終了して、ステップS914に移行する。
続いて、復元処理部100が、新たな復元画像をホワイトバランス処理部210に出力する(ステップS914)。なお、この例では、画素単位で一連の復元処理を行う例を示したが、フレーム単位で各復元処理を行うようにしてもよい。
図17は、本発明の実施の形態における想定劣化画像画素値算出部110による想定劣化画像画素値算出処理(図16のステップS930)の処理手順を示すフローチャートである。
最初に、積和部112が、復元画像作成部140から出力された復元画像における注目画素およびその近傍の各画素の画素値を入力する(ステップS931)。
続いて、積和部112が、復元画像における注目画素およびその近傍の各画素のうち、対象チャネルと同じチャネルの画素値を、対象チャネルのボケ行列を用いて積和して、その注目画素位置における想定劣化画像画素値を計算する(ステップS932)。
続いて、リサンプリング部113が、想定劣化画像画素値を注目画素位置にリサンプリングし(ステップS933)、リサンプリングされた想定劣化画像画素値を更新信号算出部130に出力する(ステップS934)。
図18は、本発明の実施の形態における擬似観測画像画素値算出部120による擬似観測画像画素値算出処理(図16のステップS940)の処理手順を示すフローチャートである。
最初に、チャネル判定部121が、画像処理回路23内部の画像メモリから読み出された観測画像における注目画素およびその近傍の画素の各画素値を入力する(ステップS941)。
続いて、チャネル判定部121が、観測画像における注目画素のチャネルと対象チャネルとが同一であるか否かを判定する(ステップS942)。そして、観測画像における注目画素のチャネルと対象チャネルとが同一であると判定された場合には(ステップS942)、観測画像における注目画素の画素値を擬似観測画像画素値として更新信号算出部130に出力する(ステップS943)。一方、観測画像における注目画素のチャネルと対象チャネルとが同一でないと判定された場合には(ステップS942)、観測画像画素変換部122が、その注目画素の画素値を擬似観測画像画素値に変換する観測画像画素変換処理を行う(ステップS950)。この観測画像画素変換処理については、図19を参照して詳細に説明する。続いて、求められた擬似観測画像画素値が更新信号算出部130に出力される(ステップS944)。
図19は、本発明の実施の形態における観測画像画素変換部122による観測画像画素変換処理(図18のステップS950)の処理手順を示すフローチャートである。
最初に、観測画像画素変換部122が、チャネル判定部121から出力された観測画像における注目画素およびその近傍の各画素の画素値を入力する(ステップS951)。
続いて、空間的低周波成分計算部123および127が、計算範囲に含まれる対象チャネルの各画素値に低域通過フィルタ(LPF)をかけ、注目画素位置における対象チャネルの空間的低周波成分を計算する(ステップS952)。
続いて、空間的低周波成分計算部126が、計算範囲に含まれる参照チャネルの各画素値に低域通過フィルタをかけ、注目画素位置における参照チャネルの空間的低周波成分を計算する(ステップS953)。
続いて、除算器128が、注目画素位置における対象チャネルの空間的低周波成分を、注目画素位置における参照チャネルの空間的低周波成分で除算して、参照チャネルの空間的高周波成分のスケーリング係数を計算する(ステップS954)。
続いて、空間的高周波成分計算部124が、注目画素位置における参照チャネルの空間的低周波成分と、注目画素の参照チャネルの画素値との差分値を計算し、注目画素位置における参照チャネルの空間的高周波成分を計算する(ステップS955)。
続いて、擬似観測画像画素値計算部129が、注目画素位置における擬似観測画像画素値を計算する(ステップS956)。すなわち、注目画素位置における対象チャネルの空間的低周波成分と、参照チャネルの空間的高周波成分と、参照チャネルの空間的高周波成分のスケーリング係数とを用いて、その位置における擬似観測画像画素値が計算される。
続いて、擬似観測画像画素値計算部129が、求められた擬似観測画像画素値を更新信号算出部130に出力する(ステップS957)。
図20は、本発明の実施の形態における更新信号算出部130による更新信号算出処理(図16のステップS960)の処理手順を示すフローチャートである。
最初に、減算器131が、注目画素位置について算出された想定劣化画像画素値および擬似観測画像画素値を入力する(ステップS961)。続いて、減算器131が、擬似観測画像画素値から想定劣化画像画素値を対象チャネル毎に減算して対象チャネル毎の差分値を計算する(ステップS962)。すなわち、1つの注目画素位置について4つの対象チャネル毎に算出された想定劣化画像画素値および擬似観測画像画素値について、対象チャネル毎の差分値が計算される。
続いて、リサンプリング部132が、対象チャネル毎に求められた差分値を、注目画素位置から復元画像の各画素位置にリサンプリングする(ステップS963)。続いて、リサンプリング部132が、復元画像の各画素位置にリサンプリングされた差分値を更新信号として復元画像作成部140に出力する(ステップS964)。
図21は、本発明の実施の形態における復元画像作成部140による復元画像作成処理(図16のステップS970)の処理手順を示すフローチャートである。
最初に、行列演算部141が、リサンプリング部132から出力された更新信号を入力し(ステップS971)、更新信号に所定の行列をかける演算を行う(ステップS972)。
続いて、加算器142が、行列演算部141から出力された演算結果の値と、直前に作成された復元画像の復元画像信号とを加算する(ステップS973)。続いて、加算器142が、加算結果である加算値を復元画像信号としてホワイトバランス処理部210に出力する(ステップS974)。
以上では、チャネル間の画素値変化に相関があることに着目し、このチャネル間の画素値変化の相関に基づいて、注目画素位置における対象チャネルの画素値を推定する例について説明した。以下では、チャネル間の画素値変化に相関があることに着目し、このチャネル間の相関を直線近似した後に、注目画素位置における参照チャネルの画素値から対象チャネルの画素値を推定する例について説明する。
図22は、注目画素およびその近傍の各画素に関する参照チャネルと、対象チャネルとの画素値分布を表す画素値分布グラフの一例を示す図である。図22に示す画素値分布グラフでは、横軸が対象チャネルの画素値を示し、縦軸が参照チャネルの画素値を示す。また、注目画素およびその近傍の画素の各画素について、対象チャネルと参照チャネルとの隣接する2つの画素の画素値の対応位置を黒丸で示す。なお、図22については、図23を参照して詳細に説明する。
図23は、本発明の実施の形態における擬似観測画像画素値算出部400の機能構成例を示すブロック図である。擬似観測画像画素値算出部400は、擬似観測画像画素値算出部120の代わりに、図5に示す復元処理部100に備えられるものであり、擬似観測画像画素値算出部120の変形例である。なお、復元処理部100における他の構成の変更はないため、ここでは、擬似観測画像画素値算出部400についてのみ説明し、復元処理部100の他の構成の説明を省略する。また、擬似観測画像画素値算出部400は、特許請求の範囲に記載の擬似対象画像画素値算出部の一例である。
擬似観測画像画素値算出部400は、チャネル判定部401と、観測画像画素変換部402を備える。なお、チャネル判定部401は、図10に示すチャネル判定部121とほぼ同様であるため、チャネル判定部121と異なる点を中心にして説明し、共通する点についての説明を省略する。
チャネル判定部401は、注目画素のチャネルと対象チャネルとが同一であるか否かを判定するものである。そして、その注目画素のチャネルと対象チャネルとが同一であると判定した場合には、その注目画素の画素値を擬似観測画像画素値として更新信号算出部130に出力する。一方、チャネル判定部401は、その注目画素のチャネルと対象チャネルとが同一でないと判定した場合には、その注目画素およびその近傍の各画素のうち、対象チャネルの画素値を画素分布線形近似部403に出力する。また、その注目画素およびその近傍の各画素のうち、注目画素のチャネル(参照チャネル)の画素値を画素分布線形近似部403および画素値推定部404に出力する。
観測画像画素変換部402は、画素分布線形近似部403と、画素値推定部404とを備える。
画素分布線形近似部403は、注目画素およびその近傍の画素の各画素値について、対象チャネルと、参照チャネルとの画素値分布を作成し、この画素値分布に基づいて線形近似直線の式を計算するものである。具体的には、注目画素およびその近傍の画素の各画素について、対象チャネルと参照チャネルとの隣接する2つの画素を順次プロットし、図22に示すように、この2つの画素の画素値の対応位置を示す画素値分布を順次作成する。そして、作成された画素値分布に基づいて、近似直線を計算する。例えば、図22に示すように、画素値が分布している場合には、近似直線410が計算により求められる。
画素値推定部404は、画素分布線形近似部403により計算して求められた近似直線の式に、観測画像における注目画素の画素値(参照チャネルの画素値)を代入し、対応する対象チャネルの画素値を計算するものである。そして、近似直線の式により求められた対象チャネルの画素値を、注目画素位置の擬似観測画像画素値として更新信号算出部130に出力する。例えば、注目画素の画素値が、図22に示すI'(p)である場合には、対象チャネルの画素値として、I'(p)の値が計算して求められる。
図24および図25は、本発明の実施の形態における擬似観測画像画素値算出部400に入力される観測画像を模式的に示す図である。なお、図24および図25に示す画素の配列は、図11および図12に示す観測画像と同様である。また、図11および図12に示す観測画像と同様に、注目画素を太丸で示し、対象チャネルの画素を斜線を付した丸で示す。図24には、注目画素421と、注目画素421の近傍の各画素とにより構成される観測画像420を示す。また、図24では、注目画素421のチャネル(参照チャネル)をRチャネルとし、対象チャネルをGrとした場合を例にして示す。
図24に示す例では、注目画素421のチャネルRと、対象チャネルGrとが同一でない。このため、注目画素421の近傍の各画素のうち、対象チャネルGrの画素値が画素分布線形近似部403に出力される。また、注目画素421およびその近傍の各画素のうち、参照チャネルRの画素値が画素分布線形近似部403および画素値推定部404に出力される。
続いて、画素分布線形近似部403が、画素値分布近似直線計算範囲422(実線の矩形で示す範囲)に含まれる対象チャネルGrの画素と、参照チャネルRの画素との組をプロットする。例えば、図24に示すように、互いに隣接する対象チャネルGrと参照チャネルRとの2画素の組をプロットする。なお、図24では、このプロットされた2画素を矩形の破線で囲んで示す。なお、計算範囲422に含まれる対象チャネルGrの画素と、参照チャネルRの画素との何れかを、もう一方の画素位置に補間し、この画素位置において画素値の組を作成するようにしてもよい。続いて、画素分布線形近似部403が、プロットされた各2画素について、対象チャネルと、参照チャネルとの画素値分布を作成し、この画素値分布に基づいて線形近似直線の式を計算するものである。
続いて、画素値推定部404が、画素分布線形近似部403により計算して求められた近似直線の式に、注目画素421の画素値(参照チャネルRの画素値)を代入し、対象チャネルGrの画素値を計算する。そして、注目画素421の位置における擬似観測画像画素値を更新信号算出部130に出力する。
図25には、注目画素431と、注目画素431の近傍の各画素とにより構成される観測画像430を示す。また、図25では、注目画素431のチャネル(参照チャネル)をGbチャネルとし、対象チャネルをGrとした場合を例にして示す。なお、この例は、図24の変形例であり、プロットされる2画素の組が異なる。そこで、以下では、図24と共通する部分についての説明を省略し、図24と異なる部分を中心にして説明する。
図25に示す例では、注目画素431のチャネルGbと、対象チャネルGrとが同一でない。このため、注目画素431の近傍の各画素のうち、対象チャネルGrの画素値が画素分布線形近似部403に出力される。また、注目画素431およびその近傍の各画素のうち、参照チャネルGbの画素値が画素分布線形近似部403および画素値推定部404に出力される。
続いて、画素分布線形近似部403が、画素値分布近似直線計算範囲432(実線の矩形で示す範囲)に含まれる対象チャネルGrの画素と、参照チャネルGbの画素との組をプロットする。例えば、図25に示すように、互いに隣接する対象チャネルGrと参照チャネルGbとの2画素の組をプロットする。なお、図25では、このプロットされた2画素を矩形の破線で囲んで示す。なお、計算範囲432に含まれる対象チャネルGrの画素と、参照チャネルGbの画素との何れかを、もう一方の画素位置に補間し、この画素位置において画素値の組を作成するようにしてもよい。続いて、画素分布線形近似部403が、プロットされた各2画素について、対象チャネルと、参照チャネルとの画素値分布を作成し、この画素値分布に基づいて線形近似直線の式を計算する。そして、図24と同様に、画素値推定部404が、画素分布線形近似部403により計算して求められた近似直線の式に、注目画素431の画素値(参照チャネルGbの画素値)を代入し、対象チャネルGrの画素値を計算する。そして、注目画素431の位置における擬似観測画像画素値を更新信号算出部130に出力する。
図26は、本発明の実施の形態における観測画像画素変換部402による観測画像画素変換処理の処理手順を示すフローチャートである。この観測画像画素変換処理は、図18に示すステップS950の代わりに行われる処理であり、図18に示す他の処理についての説明は省略する。
最初に、観測画像画素変換部402が、チャネル判定部401から出力された観測画像における注目画素およびその近傍の各画素の画素値を入力する(ステップS981)。
続いて、画素分布線形近似部403が、計算範囲に含まれる対象チャネルの画素と、参照チャネルの画素との組をプロットし、これらの画素の組に基づいて画素値分布を作成し、この画素値分布に基づいて線形近似直線の式を計算する(ステップS982)。
続いて、画素値推定部404が、求められた線形近似直線の式に、注目画素の画素値を代入し、注目画素位置における対象チャネルの画素値を計算する(ステップS983)。続いて、画素値推定部404が、求められた注目画素位置における対象チャネルの画素値を擬似観測画像画素値として更新信号算出部130に出力する(ステップS984)。
図23乃至図26では、チャネル間の画素値変化に相関があることに着目し、このチャネル間の相関を直線近似した後に、注目画素位置における参照チャネルの画素値から対象チャネルの画素値を推定する例について説明した。以下では、クロスバイラテラルフィルタを用いて、注目画素位置における対象チャネルの画素値を推定する例について説明する。
図27は、画素値軸重み関数LUT(Look up Table)および空間軸重み関数LUTの例を示す図である。図27(a)には、画素値軸重み関数LUTの一例を示し、図27(b)には、空間軸重み関数LUTの一例を示す。
画素値軸重み関数LUTは、観測画像における異なる2つの画素の画素値の差分値と、この差分値に対する重みφとの関係を示すLUTである。空間軸重み関数LUTは、観測画像における2つの画素の画素間の距離と、この距離に対する重みωとの関係を示すLUTである。ここで、重みφ、ωを求める関数は、引数が小さな場合には大きな値を返す単調減少の特性を有する関数を用いることが好ましい。なお、図27に示す各関数については、図28を参照して詳細に説明する。
図28は、本発明の実施の形態における擬似観測画像画素値算出部500の機能構成例を示すブロック図である。擬似観測画像画素値算出部500は、擬似観測画像画素値算出部120の代わりに、図5に示す復元処理部100に備えられるものであり、擬似観測画像画素値算出部120の変形例である。なお、復元処理部100における他の構成の変更はないため、ここでは、擬似観測画像画素値算出部500についてのみ説明し、復元処理部100の他の構成の説明を省略する。また、擬似観測画像画素値算出部500は、特許請求の範囲に記載の擬似対象画像画素値算出部の一例である。
擬似観測画像画素値算出部500は、チャネル判定部501と、観測画像画素変換部502を備える。なお、チャネル判定部501は、図10に示すチャネル判定部121とほぼ同様であるため、チャネル判定部121と異なる点を中心にして説明し、共通する点についての説明を省略する。
チャネル判定部501は、注目画素のチャネルと対象チャネルとが同一であるか否かを判定するものである。そして、その注目画素のチャネルと対象チャネルとが同一であると判定した場合には、その注目画素の画素値を擬似観測画像画素値として更新信号算出部130に出力する。一方、チャネル判定部501は、その注目画素のチャネルと対象チャネルとが同一でないと判定した場合には、その注目画素およびその近傍の各画素のうち、対象チャネルの画素値を補間部508に出力する。また、注目画素の位置と、近傍の参照チャネルの画素の位置とを減算器505に出力する。さらに、注目画素の画素位置と、近傍の参照チャネルの画素の画素値とを減算器506に出力する。
観測画像画素変換部502は、画素値軸重み関数LUT保持部503と、空間軸重み関数LUT保持部504と、減算器505および506と、積和部507および509と、補間部508と、除算器510とを備える。
画素値軸重み関数LUT保持部503は、積和部507および509による積和処理に用いられる画素値軸重み関数LUTを保持するものであり、保持されている画素値軸重み関数LUTを積和部507および509に供給する。例えば、図27(a)に示す画素値軸重み関数LUTが保持される。
空間軸重み関数LUT保持部504は、積和部507および509による積和処理に用いられる空間軸重み関数LUTを保持するものであり、保持されている空間軸重み関数LUTを積和部507および509に供給する。例えば、図27(b)に示す空間軸重み関数LUTが保持される。
減算器505は、注目画素の位置と、近傍の参照チャネルの画素の位置との減算処理を行い、注目画素の位置と近傍の参照チャネルの画素の位置との距離を計算するものであり、この距離を積和部507および509に出力する。
減算器506は、注目画素の画素値と、近傍の参照チャネルの画素値との減算処理を行い、注目画素の画素値とその近傍の参照チャネルの画素の画素値との差分値を計算するものであり、この差分値を積和部507および509に出力する。
積和部507は、減算器506から出力された差分値と、減算器505から出力された距離とについて積和処理を行うものであり、積和結果である積和値を除算器510に出力する。具体的には、注目画素の近傍の参照チャネルの各画素について、積和部507は、画素値軸重み関数LUT保持部503に保持されている画素値軸重み関数LUTを用いて、減算器506から出力された差分値に対応する重みφを求める。また、空間軸重み関数LUT保持部504に保持されている空間軸重み関数LUTを用いて、減算器505から出力された距離に対応する重みωを求める。そして、注目画素の近傍の参照チャネルの各画素に対応する重みφおよび重みωを積和する。なお、積和部507は、特許請求の範囲に記載の第二積和部の一例である。
補間部508は、注目画素の近傍の参照チャネルの各画素の位置で、対象チャネルの2つの画素の画素値を補間処理するものであり、補間処理の結果である補間値を除算器510に出力する。この補間処理は、注目画素の近傍の参照チャネルの各画素に隣接する対象チャネルの2つの画素の画素値を加算して平均値を計算する処理である。
積和部509は、減算器506から出力された差分値と、減算器505から出力された距離と、補間部508から出力された補間値とについて積和処理を行うものであり、積和結果である積和値を除算器510に出力する。具体的には、積和部507と同様に、注目画素の近傍の参照チャネルの各画素に対応する重みφおよび重みωを求める。そして、そして、注目画素の近傍の参照チャネルの各画素に対応する重みφおよび重みωと、補間部508から出力された補間値との積和を計算する。なお、積和部509は、特許請求の範囲に記載の第一積和部の一例である。
除算器510は、積和部509から出力された積和値を積和部507から出力された積和値で除算するものであり、除算結果である除算値を擬似観測画像画素値として更新信号算出部130に出力する。なお、除算器510は、特許請求の範囲に記載の擬似対象画像画素値計算部の一例である。
以上で示したように、観測画像画素変換部502は、式11に示すクロスバイラテラルフィルタを用いて、注目画素の近傍の参照チャネルの画素値I'(p)から、注目画素の対象チャネルの画素値I
pseudo(p
c)を推定するものである。なお、式11では、注目画素の近傍の計算範囲を計算範囲Ωとし、計算範囲Ωに含まれる参照チャネルの各画素の位置を位置pとし、注目画素の位置を位置p
cとする。また、注目画素と計算範囲Ωに含まれる参照チャネルの各画素との画素値の差分を引数とする重み関数をφとし、計算範囲Ωに含まれる参照チャネルの各画素の位置pと注目画素位置p
cとの距離を引数とする重み関数をωとする。
図29および図30は、本発明の実施の形態における擬似観測画像画素値算出部500に入力される観測画像を模式的に示す図である。なお、図29および図30に示す画素の配列は、図11および図12に示す観測画像と同様である。また、図11および図12に示す観測画像と同様に、注目画素を太丸で示し、対象チャネルの画素を斜線を付した丸で示す。図29には、注目画素521(二重丸で示す)と、注目画素521の近傍の各画素とにより構成される観測画像520を示す。また、図29では、注目画素521のチャネル(参照チャネル)をRチャネルとし、対象チャネルをGrとした場合を例にして示す。
図29に示す例では、注目画素521のチャネルRと、対象チャネルGrとが同一でない。このため、注目画素521の近傍の各画素のうち、対象チャネルGrの画素値が補間部508に出力される。また、注目画素521の位置と、近傍の参照チャネルRの画素の位置とが減算器505に出力される。さらに、注目画素521の画素位置と、近傍の参照チャネルGrの画素の画素値とが減算器506に出力される。
続いて、減算器505が、注目画素521の画素値と、計算範囲530(実線の矩形で示す範囲)に含まれる参照チャネルRの画素のうちの1つの画素523の画素値との差分値を計算する。続いて、積和部507および509が、画素値軸重み関数LUT保持部503に保持されている画素値軸重み関数LUTを用いて、注目画素521の画素値と画素523の画素値との差分値に対応する重みφを求める。
続いて、減算器506が、注目画素521の位置と、計算範囲530に含まれる参照チャネルRの画素のうちの1つの画素523の位置との距離を計算する。続いて、積和部507および509が、空間軸重み関数LUT保持部504に保持されている空間軸重み関数LUTを用いて、注目画素521の位置と画素523の位置との距離に対応する重みωを求める。
続いて、補間部508が、計算対象となった画素523の位置で、対象チャネルGrの2つの画素522および525の画素値を補間処理する。この補間処理は、計算対象となった画素523に隣接する対象チャネルGrの2つの画素522および525を用いて、画素522および525の画素値を加算して平均値を計算する処理である。
続いて、積和部509が、注目画素521および画素523の画素の差分値に対応する重みφと、注目画素521および画素523間の距離に対応する重みωと、補間処理により求められた補間値との積和を計算する。続いて、積和部507が、注目画素521および画素523の画素の差分値に対応する重みφと、注目画素521および画素523間の距離に対応する重みωとの積和を計算する。以上で示したように、積和部507および509の積和処理が、計算範囲530に含まれる参照チャネルRの各画素について順次行われる。この順序として、例えば、図29に示す矢印524のように、画素523、526、528、530、532…の順序(ラスタ順)で行うことができる。
続いて、除算器510が、積和部509から出力された積和値を積和部507から出力された積和値で除算する。そして、除算結果である除算値が、注目画素521の位置における擬似観測画像画素値として更新信号算出部130に出力される。
図30には、注目画素551(二重丸で示す)と、注目画素551の近傍の各画素とにより構成される観測画像550を示す。また、図30では、注目画素551のチャネル(参照チャネル)をGbチャネルとし、対象チャネルをGrとした場合を例にして示す。なお、この例は、図29の変形例であり、参照チャネルが異なる。そこで、以下では、図29と共通する部分についての説明を省略し、図29と異なる部分を中心にして説明する。
図30に示す例では、注目画素551のチャネルGbと、対象チャネルGrとが同一でない。このため、注目画素551の近傍の各画素のうち、対象チャネルGrの画素値が補間部508に出力される。また、注目画素551の位置と、近傍の参照チャネルGbの画素の位置とが減算器505に出力される。さらに、注目画素551の画素位置と、近傍の参照チャネルGrの画素の画素値とが減算器506に出力される。
そして、図29と同様に、積和部507および509の積和処理が、計算範囲570に含まれる参照チャネルGbの各画素について順次行われる。この順序として、例えば、図30に示す矢印554のように、画素553、556、558、560、562…の順序(ラスタ順)で行うことができる。そして、除算器510は、積和部509から出力された積和値を積和部507から出力された積和値で除算する。そして、除算結果である除算値が、注目画素551の位置における擬似観測画像画素値として更新信号算出部130に出力される。
図31は、本発明の実施の形態における観測画像画素変換部502による観測画像画素変換処理の処理手順を示すフローチャートである。この観測画像画素変換処理は、図18に示すステップS950の代わりに行われる処理であり、図18に示す他の処理についての説明は省略する。
最初に、観測画像画素変換部502が、チャネル判定部501から出力された観測画像における注目画素およびその近傍の各画素の画素値を入力する(ステップS1001)。
続いて、ループL1002では、注目画素の近傍の参照チャネルの各画素について、ステップS1003乃至S1009の各処理を行う。
最初に、減算器505が、注目画素の画素値と、注目画素の近傍の参照チャネルの画素値との差分値を計算する(ステップS1003)。続いて、積和部507および509が、画素値軸重み関数LUT保持部503に保持されている画素値軸重み関数LUTを用いて、注目画素およびその近傍の参照チャネルの画素の画素差分値に対応する重みφを求める(ステップS1004)。
続いて、減算器506が、注目画素の位置と、注目画素の近傍の参照チャネルの画素の位置との距離を計算する(ステップS1005)。続いて、積和部507および509が、空間軸重み関数LUT保持部504に保持されている空間軸重み関数LUTを用いて、注目画素およびその近傍の参照チャネルの画素の距離に対応する重みωを求める(ステップS1006)。続いて、補間部508が、計算対象となった参照チャネルの画素の位置で、対象チャネルの2つの画素の画素値を補間処理する(ステップS1007)。
続いて、積和部509が、画素差分値に対応する重みφと、画素間の距離に対応する重みωと、補間処理により求められた補間値との積和を計算する(ステップS1008)。続いて、積和部507が、画素差分値に対応する重みφと、画素間の距離に対応する重みωとの積和を計算する(ステップS1009)。
ループL1002では、注目画素の近傍の参照チャネルの各画素について、積和部507および509の積和処理が終了するまで繰り返す。注目画素の近傍の参照チャネルの各画素について、積和部507および509の積和処理が終了した場合には、ループL1002は終了して、ステップS1010に移行する。
続いて、除算器510が、積和部509から出力された積和値を積和部507から出力された積和値で除算する(ステップS1010)。続いて、除算器510が、求められた注目画素位置における除算値を擬似観測画像画素値として更新信号算出部130に出力する(ステップS1011)。
ここで、図8に示す例では、光学系劣化の再現であるボケ行列の積和と、撮像素子13による劣化の再現であるリサンプリングとをカスケードに行う例について説明した。以下では、リサンプリングされる位置に対応するボケ行列を積和することにより、積和とリサンプリングとを同時に行う例について説明する。
図32は、本発明の実施の形態における想定劣化画像画素値算出部600の機能構成例を示すブロック図である。想定劣化画像画素値算出部600は、チャネル別空間位相別ボケ行列保持部601と、積和・リサンプリング部602とを備える。なお、想定劣化画像画素値算出部600は、図8に示す想定劣化画像画素値算出部110の変形例である。
チャネル別空間位相別ボケ行列保持部601は、観測画像における注目画素位置であるリサンプリング位置の位相に対応する空間位相別ボケ行列を保持するものであり、保持されている空間位相別ボケ行列を積和・リサンプリング部602に供給する。
積和・リサンプリング部602は、復元画像における注目画素と、その近傍に存在する画素とのうち、同じチャネルの画素値と、リサンプリング位置の位相に対応してチャネル別空間位相別ボケ行列保持部601に保持されている空間位相別ボケ行列とを積和する。この積和により、その注目画素位置にリサンプリングされた想定劣化画像画素値を計算する。そして、リサンプリングされた想定劣化画像画素値を更新信号算出部130に出力する。
図33は、本発明の実施の形態における想定劣化画像画素値算出部600による想定劣化画像画素値算出処理の処理手順を示すフローチャートである。この想定劣化画像画素値算出処理は、図16に示すステップS930の代わりに行われる処理であり、図16に示す他の処理についての説明は省略する。
最初に、積和・リサンプリング部602が、復元画像作成部140から出力された復元画像における注目画素およびその近傍の各画素の画素値を入力する(ステップS1021)。
続いて、積和・リサンプリング部602が、復元画像における注目画素と、その近傍に存在する画素とのうち、対象チャネルと同じチャネルの画素値と、リサンプリング位置の位相に対応する空間位相別ボケ行列とを積和する(ステップS1022)。続いて、積和・リサンプリング部602が、リサンプリングされた想定劣化画像画素値を更新信号算出部130に出力する(ステップS1023)。
次に、図13に示す更新信号算出部130の変形例について図面を参照して詳細に説明する。
図34は、本発明の実施の形態における更新信号算出部610の機能構成例を示すブロック図である。更新信号算出部610は、減算器611と、リサンプリング部612と、バンドパスフィルタリング部613と、スケーリング部614とを備える。なお、減算器611およびリサンプリング部612については、図13に示す減算器131およびリサンプリング部132と同様であるため、ここでの説明を省略する。
バンドパスフィルタリング部613は、リサンプリングされた差分値信号についてバンドパスフィルタ処理を行い、更新信号の周波数特性を調整するものであり、この周波数特性が調整された信号をスケーリング部614に出力する。
スケーリング部614は、周波数特性が調整された信号について任意の定数を積算するスケーリング処理を行うものであり、スケーリング処理された信号を更新信号として復元画像作成部140に出力する。
ここで、更新信号算出部610および更新信号算出部130を比較した場合に、更新信号算出部610は、擬似観測画像画素値と想定劣化画像画素値との差分値について、バンドパスフィルタ処理およびスケーリング処理を追加して行う点が異なる。例えば、バンドパスフィルタを用いることにより、更新信号の周波数特性を調整することができる。例えば、撮像素子13のノイズの空間周波数帯域に特徴があれば、その周波数帯域のゲインを落とすことによりノイズの強調を抑えることができる。また、低周波成分を抑えることにより、輪郭部のオーバーシュートやアンダーシュート等の劣化を削減することができる。また、スケーリング処理を行うことにより、復元信号の強度を調節することができる。例えば、大きな値を設定すれば、復元効果を高めることができるが、大きくしすぎた場合には、各処理で生じた何らかの劣化を強調することがあるため、強度は主観画質で調整する必要がある。
なお、この例では、リサンプリング処理、バンドパスフィルタ処理、スケーリング処理の順番で行う例を示すが、この順番を変更して行うようにしてもよい。例えば、解像度変換を伴う場合に、リサンプリング処理の前にバンドパスフィルタ処理を行うと、処理量は少なくなるが、復元処理により劣化が生じた場合には、劣化の空間的伝播が大きくなる場合が想定される。このため、処理内容に応じて、リサンプリング処理、バンドパスフィルタ処理、スケーリング処理の順番を適切に設定することが重要である。また、更新信号算出部610において、バンドパスフィルタ処理およびスケーリング処理のうち、何れか一方を適用するようにしてもよい。
図35は、本発明の実施の形態における更新信号算出部610による更新信号算出処理の処理手順を示すフローチャートである。この更新信号算出処理は、図16に示すステップS960の代わりに行われる処理であり、図16に示す他の処理についての説明は省略する。また、ステップS1031乃至S1033については、図20に示すステップS961乃至S963と同様であるため、ここでの説明を省略する。
バンドパスフィルタリング部613が、リサンプリング部612により復元画像の各画素位置にリサンプリングされた差分値信号についてバンドパスフィルタ処理を行い、更新信号の周波数特性を調整する(ステップS1034)。
続いて、スケーリング部614が、周波数特性が調整された信号について任意の定数を積算するスケーリング処理を行う(ステップS1035)。続いて、スケーリング部614が、スケーリング処理された信号を更新信号として復元画像作成部140に出力する(ステップS1036)。
図36は、本発明の実施の形態における更新信号算出部620の機能構成例を示すブロック図である。更新信号算出部620は、除算器621と、リサンプリング部622とを備える。なお、リサンプリング部622については、図13に示すリサンプリング部132と同様であるため、ここでの説明を省略する。また、更新信号算出部620は、例えば、図40に示す復元画像作成部640と組み合わせて用いられる。
除算器621は、擬似観測画像画素値算出部120から出力された擬似観測画像画素値を、想定劣化画像画素値算出部110から出力された想定劣化画像画素値で除算するものであり、除算結果である除算値をリサンプリング部622に出力する。
図37は、本発明の実施の形態における更新信号算出部620による更新信号算出処理の処理手順を示すフローチャートである。この更新信号算出処理は、図16に示すステップS960の代わりに行われる処理であり、図16に示す他の処理についての説明は省略する。
最初に、除算器621が、注目画素位置について算出された想定劣化画像画素値および擬似観測画像画素値を入力する(ステップS1041)。続いて、除算器621が、擬似観測画像画素値を想定劣化画像画素値で対象チャネル毎に除算して対象チャネル毎の除算値を計算する(ステップS1042)。すなわち、1つの注目画素位置について4つの対象チャネル毎に算出された想定劣化画像画素値および擬似観測画像画素値について、対象チャネル毎の除算値が計算される。
続いて、リサンプリング部132が、対象チャネル毎に求められた除算値を、注目画素位置から復元画像の各画素位置にリサンプリングする(ステップS1043)。続いて、リサンプリング部132が、復元画像の各画素位置にリサンプリングされた除算値を更新信号として復元画像作成部140に出力する(ステップS1044)。
図38は、本発明の実施の形態における更新信号算出部630の機能構成例を示すブロック図である。更新信号算出部630は、除算器631と、リサンプリング部632と、バンドパスフィルタリング部633と、スケーリング部634とを備える。なお、除算器631は、図36に示す除算器621と同様であるため、ここでの説明を省略する。また、リサンプリング部632、バンドパスフィルタリング部633およびスケーリング部634については、図34に示すリサンプリング部612、バンドパスフィルタリング部613およびスケーリング部614と同様であるため、ここでの説明を省略する。また、この例では、図34に示す例と同様に、リサンプリング処理、バンドパスフィルタ処理、スケーリング処理の順番で行う例を示すが、この順番を変更して行うようにしてもよい。また、更新信号算出部630において、バンドパスフィルタ処理およびスケーリング処理のうち、何れか一方を適用するようにしてもよい。なお、更新信号算出部630は、例えば、図40に示す復元画像作成部640と組み合わせて用いられる。
図39は、本発明の実施の形態における更新信号算出部630による更新信号算出処理の処理手順を示すフローチャートである。この更新信号算出処理は、図16に示すステップS960の代わりに行われる処理であり、図16に示す他の処理についての説明は省略する。また、ステップS1051乃至S1053については、図37に示すステップS1041乃至S1043と同様であるため、ここでの説明を省略する。
バンドパスフィルタリング部633が、リサンプリング部632により復元画像の各画素位置にリサンプリングされた除算値信号についてバンドパスフィルタ処理を行い、更新信号の周波数特性を調整する(ステップS1054)。
続いて、スケーリング部634が、周波数特性が調整された信号について任意の定数を積算するスケーリング処理を行う(ステップS1055)。続いて、スケーリング部634が、スケーリング処理された信号を更新信号として復元画像作成部140に出力する(ステップS1056)。
次に、図14に示す復元画像作成部140の変形例について図面を参照して詳細に説明する。
図40は、本発明の実施の形態における復元画像作成部640の機能構成例を示すブロック図である。復元画像作成部640は、行列演算部641と、積算器642とを備える。なお、復元画像作成部640は、例えば、式4および式6に示すLucy Richardson法およびその簡易型により復元画像を作成するものである。
行列演算部641は、リサンプリング部132から出力された更新信号(擬似観測画像画素値および想定劣化画像画素値の差分値)に所定の行列をかける演算を行うものであり、演算結果を積算器642に出力する。ここで、所定の行列は、例えば、式4および式6に示す行列(例えば、行列hまたは行列b)である。
積算器642は、行列演算部641から出力された演算結果の値と、直前に作成された復元画像を構成する各画素位置の画素値(復元画像信号)とを積算するものである。そして、積算結果である積算値が復元画像信号としてホワイトバランス処理部210に出力される。また、この復元画像信号が、次の復元画像信号の作成に用いられる。すなわち、復元画像作成部640により、直前に作成された復元画像が更新され、新たな復元画像が作成される。
図41は、本発明の実施の形態における復元画像作成部640による復元画像作成処理の処理手順を示すフローチャートである。この更新信号算出処理は、図16に示すステップS970の代わりに行われる処理であり、図16に示す他の処理についての説明は省略する。
最初に、行列演算部641が、リサンプリング部132から出力された更新信号を入力し(ステップS1061)、更新信号に所定の行列をかける演算を行う(ステップS1062)。
続いて、積算器642が、行列演算部641から出力された演算結果の値と、直前に作成された復元画像の復元画像信号とを積算する(ステップS1063)。続いて、積算器642が、積算結果である積算値を復元画像信号としてホワイトバランス処理部210に出力する(ステップS1064)。
以上では、1枚の観測画像から一度のフィードバックを行うことにより復元画像を更新し、この更新された復元画像を出力する復元処理について説明した。ここで、例えば、観測画像を基準として1フレーム前の復元画像の位置合わせを行った後に復元処理を行うことにより、更新された復元画像の時間位相を観測画像に合わせることができる。これにより、撮像装置10により動画の撮像動作を行う場合でも、さらに精度の高い復元画像を作成することができる。以下では、復元画像について動き補償処理および動被写体隠蔽処理を行うことにより、復元画像の時間位相を観測画像に合わせる例について図面を参照して詳細に説明する。
図42は、本発明の実施の形態における復元処理部700の機能構成例を示すブロック図である。復元処理部700は、動き検出部710と、動き補償部720と、動被写体検出部730と、動被写体隠蔽部740と、想定劣化画像画素値算出部750と、擬似観測画像画素値算出部760と、更新信号算出部770と、復元画像作成部780とを備える。なお、復元処理部700は、図5に示す復元処理部100の変形例であり、復元処理部100において、動き検出部710、動き補償部720、動被写体検出部730および動被写体隠蔽部740を追加して設けたものである。また、想定劣化画像画素値算出部750、擬似観測画像画素値算出部760、更新信号算出部770および復元画像作成部780については、図5に示すものとほぼ同様であるため、異なる点を中心に説明し、他の説明を省略する。
動き検出部710は、復元画像作成部780から出力されたフレーム(復元画像)と、A/D変換回路22から出力されたフレーム(観測画像)とに基づいて動き情報を検出するものであり、検出された動き情報を動き補償部720に出力する。この動き情報は、2つのフレーム間の動きに関する情報であり、例えば、一画面(1フレーム)について1つの動きパラメータの組(Global Motion)が検出される。この動き情報として、復元の効果を向上させるため、並進成分、回転成分が含まれることが好ましく、さらに拡大縮小成分や台形歪み成分が含まれることが好ましい。この動き情報として、例えば、アフィン行列を用いることができる。なお、動き検出については、1フレームの1画面上において任意サイズのブロック毎に行うことも可能である。ただし、画像上のブロック間の不連続性や画像の折り返りの影響を考慮すると、1フレームの1画面毎に行うことが好ましく、復元精度を向上させることができる。なお、復元処理部700の前工程で動き情報の検出を行い、この検出結果を動き補償部720に供給するようにしてもよい。
ここで、動き情報の検出方法の一例としてアフィン行列の検出方法について説明する。
例えば、復元画像作成部780から出力された復元画像と、A/D変換回路22から出力された観測画像とにおける特徴点の抽出が行われる。例えば、エッジ検出技術を用いて、縦方向または横方向にエッジの勾配が強い点(例えば、コーナー点)を特徴点として抽出することができる。また、画像間の対応点探査を行うことが可能な特徴点を抽出する他の特徴点抽出処理を用いることができる。
続いて、復元画像において抽出された特徴点と、観測画像において抽出された特徴点との対応付けが行われる。この特徴点の対応付けは、復元画像および観測画像について、同じ被写体とみなされる特徴点の対を抽出することである。この特徴点の対応付け方法として、例えば、特徴点の周囲の矩形画像同士の正規化相関等の指標に基づいて、類似する特徴点を対にする手法を用いることができる。また、カメラ運動行列を正しく計算することが可能な他の対応点付け方法を用いることができる。
続いて、抽出された対応点対(対応付けされた特徴点の対)を用いてアフィン行列が算出される。このアフィン行列算出方法として、例えば、RANSAC(RANdom SAmple Consensus)を用いたアフィン行列算出方法を用いることができる。具体的には、抽出された対応点対の中からランダムに対応点対を選択し、この選択された対応点対を用いてアフィン行列を最小2乗推定する操作を繰り返す。そして、算出されたアフィン行列により説明できない対応点対がなるべく少なくなるものを推定結果として選択する。また、アフィン行列算出方法として、例えば、勾配法やブロックマッチング方法等のアフィン行列算出方法を用いるようにしてもよい。
動き補償部720は、動き検出部710により検出された動き情報に基づいて、復元画像の動き補償を行うものである。具体的には、復元画像における各画素位置について、動き検出部710により検出された動き情報に対応する動きの分だけずらした位置に移動させる処理が行われる。
動被写体検出部730は、動き補償部720から出力された動き補償処理が施された復元画像と、A/D変換回路22から出力された観測画像との画素値を比較し、復元画像に含まれる動被写体を検出するものであり、検出結果を動被写体隠蔽部740に出力する。なお、動被写体検出部730については、図43を参照して詳細に説明する。
動被写体隠蔽部740は、動被写体検出部730から出力された動被写体の検出結果に基づいて、動き補償部720から出力された動き補償処理が施された復元画像に含まれる動被写体を隠蔽するものである。そして、動被写体が隠蔽された復元画像を想定劣化画像画素値算出部750および復元画像作成部780に出力する。なお、動被写体隠蔽部740については、図46を参照して詳細に説明する。
図43は、本発明の実施の形態における動被写体検出部730の機能構成例を示すブロック図である。図44は、本発明の実施の形態における撮像素子13のノイズモデルの一例を示す図である。図45は、本発明の実施の形態における動被写体判定モデルの一例を示す図である。なお、図44および図45については、図43を参照して説明する。動被写体検出部730は、減算器731と、絶対値計算器732と、ノイズ量推定部733と、動被写体判定値計算部734とを備える。
減算器731は、A/D変換回路22から出力された観測画像の画素値と、動き補償部720から出力された復元画像の画素値との差分を計算するものであり、計算結果である差分値を絶対値計算器732に出力する。
絶対値計算器732は、減算器731から出力された差分値の絶対値を計算するものであり、計算結果である画素値の絶対差分値(pix_diff)を動被写体判定値計算部734に出力する。
ノイズ量推定部733は、撮像時のデジタルゲイン情報(ゲイン量(ISO感度)、フレーム毎のデシベル等)とノイズモデルとに基づいて、画素値に対応する画素のノイズ量を推定するものであり、推定されたノイズ量を動被写体判定値計算部734に出力する。なお、撮像時のデジタルゲイン情報は、制御部53から供給される。ここで、一般的なノイズモデルとして、RAWデータの画素値pと、ノイズの分散値σ2との関係は、傾きがゲインの関数で表すことができる。例えば、図44に示すグラフで表されることが知られている。そこで、例えば、図44に示すグラフを用いて、ノイズの分散値σ2を推定することができる。
動被写体判定値計算部734は、絶対値計算器732から出力された画素値の絶対差分値(pix_diff)と、ノイズの標準偏差σとに基づいて、動被写体判定値α(0≦α≦1)を計算するものであり、動被写体判定値αを動被写体隠蔽部740に出力する。ここで、図45には、絶対差分値(pix_diff)と、ノイズの標準偏差σとの換算モデルの一例を示す。なお、図45に示すth1(σ)およびth2(σ)は、ノイズ標準偏差σに応じて決定される閾値である。
図46は、本発明の実施の形態における動被写体隠蔽部740の機能構成例を示すブロック図である。動被写体隠蔽部740は、積算器741乃至743と、減算器744と、加算器745とを備え、基準画像(観測画像)の画素値と、被判定画像(復元画像)の画素値との内分画素値を計算し、この計算結果値を動被写体隠蔽処理画素値として出力するものである。
積算器741は、動被写体判定値計算部734から出力された動被写体判定値αに、調整用ゲインGを掛けるものであり、この積算結果Gαを積算器743および減算器744に出力する。なお、調整用ゲインGは、制御部53から供給される。
減算器744は、1から、積算器741から出力された積算結果値Gαを減算するものであり、減算結果(1−Gα)を積算器742に出力する。
積算器742は、A/D変換回路22から出力された観測画像の画素値Aと、減算器744から出力された積算結果値(1−Gα)とを積算するものであり、積算結果A(1−Gα)を加算器745に出力する。
積算器743は、動き補償部720から出力された復元画像の画素値Bと、積算器741から出力された積算結果値Gαとを積算するものであり、積算結果BGαを加算器745に出力する。
加算器745は、積算器742から出力された積算結果A(1−Gα)と、積算器743から出力された積算結果BGαとを加算するものである。そして、加算結果(A(1−Gα)+BGα)を動被写体隠蔽処理画素値として想定劣化画像画素値算出部750および復元画像作成部780に出力する。
このように、動被写体検出部730により観測画像と、動き補償処理が行われた復元画像との画素値が比較され、動被写体判定値が算出される。この動被写体判定値に応じて、動被写体隠蔽部740により、観測画像の画素値と、復元画像の画素値との加重平均が計算される。すなわち、動被写体度の高い程、観測画像の割合が大きくなるように動被写体の隠蔽処理が行われる。なお、観測画像および復元画像間で解像度変換を伴う場合には、観測画像および復元画像の何れかの解像度に合わせた後に、動き補償処理および動被写体隠蔽処理を行う。
このように、位置合わせ後の画像と注目画素間の動被写体を検出し、その領域のフィードバックの制限を行うことにより、同被写体領域での復元処理による劣化を抑制することができる。これにより、復元処理の精度を向上させることができる。
図47は、本発明の実施の形態における復元処理部700による復元処理の処理手順を示すフローチャートである。この復元処理は、図15に示すステップS910の代わりに行われる処理であり、図15に示す他の処理についての説明は省略する。
最初に、復元処理部700が、画像処理回路23内部の画像メモリから読み出されたモザイク画像(観測画像)と、復元画像作成部140から出力されたモザイク画像(復元画像)とを入力する(ステップS1101)。
続いて、動き検出部710が、入力された観測画像および復元画像間の動き情報を検出する(ステップS1102)。
続いて、ループL1103では、観測画像および復元画像(2つのモザイク画像)の各注目画素について、ステップS1104乃至S1107、ループL913、S960、S970、S914の各処理を行う。なお、ループL913、S960、S970、S914の各処理については、図16に示す各処理と同じであるため、ここでの説明を省略する。
ループL1103では、最初に、動き補償部720が、観測画像および復元画像の各注目画素の画素値を入力する(ステップS1101)。続いて、動き補償部720が、動き検出部710により検出された動き情報に基づいて復元画像の動き補償処理を行う(ステップS1105)。続いて、動被写体検出部730が、動き補償が行われた復元画像について動被写体の検出処理を行う(ステップS1106)。続いて、動被写体隠蔽部740が、動被写体検出部730により検出された動被写体について隠蔽処理を行う(ステップS1107)。なお、この例では、画素単位で一連の復元処理を行う例を示したが、フレーム単位で各復元処理を行うようにしてもよい。
ここで、例えば、静止画像を出力する復元処理を行う場合には、復元処理を行うフレームの復元画像を基準として、観測画像の位置合わせをして復元処理を行うことにより、任意フレームの復元画像を得ることができる。このように、静止画を出力する復元処理を行う場合には、動き補償処理および動被写体隠蔽処理を観測画像について行うようにする。この場合の機能構成例を図48に示す。
図48は、本発明の実施の形態における復元処理部800の機能構成例を示すブロック図である。なお、復元処理部800は、図42に示す復元処理部700の変形例であり、動き補償処理および動被写体隠蔽処理を観測画像について行う点が復元処理部700とは異なる。その他の構成については、復元処理部700と同様であるため、同一の機能を備える部分については、図42と同一の符号を付して、ここでの説明を省略する。
このように、1枚の観測画像で複数回の反復処理を行う場合や複数枚の観測画像を入力する場合には、注目画素について観測画像または復元画像の動き検出および動き補償を行う。そして、動き検出および動き補償の後に、異チャネル間のフィードバックを行うことにより、復元効果をさらに向上させることができる。
また、以上では、図42に示す復元処理部700と、図48に示す復元処理部800とについては、動被写体隠蔽処理を行う例を示したが、例えば、動被写体隠蔽処理を行わないようにしてもよい。これにより、比較的簡易的な構成とすることができる。例えば、動被写体隠蔽処理を行わずに、動画を出力する復元処理を行う場合における機能構成例を図49に示す。また、例えば、動被写体隠蔽処理を行わずに、静止画像を出力する復元処理を行う場合における機能構成例を図50に示す。
図49は、本発明の実施の形態における復元処理部810の機能構成例を示すブロック図である。また、図50は、本発明の実施の形態における復元処理部820の機能構成例を示すブロック図である。なお、復元処理部810は、図42に示す復元処理部700の変形例であり、動被写体隠蔽処理を行わない点が復元処理部700とは異なる。また、復元処理部820は、図48に示す復元処理部800の変形例であり、動被写体隠蔽処理を行わない点が復元処理部800とは異なる。その他の構成については、復元処理部700または800と同様であるため、同一の機能を備える部分については、図42または図48と同一の符号を付して、ここでの説明を省略する。
また、以上では、擬似観測画像画素値を算出する場合において、注目画素のチャネル(参照チャネル)と、対象チャネルとが異なる場合には、参照チャネルと近傍の対象チャネルとの画素値を用いて算出する例について説明した。しかしながら、例えば、観測画像のチャネル間の相関性やチャネルの周波数特性に応じて、対象チャネルと参照チャネルとの組み合わせを選択するようにしてもよい。これにより、復元効果を向上させることができる。
図51は、本発明の実施の形態における擬似観測画像画素値算出処理に用いられる参照チャネルと対象チャネルとの関係を示す図である。図51に示す例では、チャネル間の相関が高いが、R、Bチャネルの周波数特性が、Gr、Gbチャネルよりも劣る場合を想定した組み合わせ例を示す。例えば、対象チャネルが、RまたはBである場合には、R、B、GrおよびGbの全てが参照チャネルとして採用される。一方、対象チャネルが、GrまたはGbである場合には、GrおよびGbが参照チャネルとして採用される。すなわち、対象チャネルがGrまたはGbである場合には、参照チャネルとして注目画素以外のチャネルを用いて擬似観測画像画素値算出処理を行うようにすることができる。
ここで、例えば、従来は、観測画像または復元画像に劣化フィルタを施して作成された想定劣化画像から更新信号を算出して画像復元を行う場合には、複数のチャネルから構成されている画像でも一般的にチャネル別に同一チャネル内でフィードバック処理を行う。これに対して、本発明の実施の形態では、同チャネルからのフィードバックに加え、観測画像の異なるチャネルから擬似的に作成した擬似観測画像と想定劣化画像との間で復元処理を行い、チャネル間のフィードバック処理を行う。これにより、復元効果を向上させることができる。言い換えると、劣化画像の復元処理において、画像間のフィードバックに加え、画像内のチャネル間でフィードバックを行うことにより、フィードバックの効果をさらに向上させることができる。
すなわち、本発明の実施の形態では、複数のチャネルからなる観測画像の復元処理を行う場合に、想定劣化画像画素値および擬似観測画像画素値をチャネル毎に算出する。そして、チャネル毎の差分値または除算値に基づいて更新信号を作成し、この更新信号を用いて復元画像を作成する。これにより、想定劣化画像画素値のみを用いて復元処理を行う場合と比較して、復元処理の精度を向上させることができる。また、想定劣化画像画素値については、対象チャネルと同チャネルの画素値を用いて算出し、擬似観測画像画素値については、対象チャネルおよび参照チャネルの画素値を用いて算出する。これにより、対象チャネルと同チャネルの画素値を用いて算出された想定劣化画像画素値のみを用いて復元処理を行う場合と比較して、復元処理の精度を向上させることができる。すなわち、チャネル間の画素値の相関に基づいて擬似観測画像画素値を算出し、これを用いて復元処理を行うため、復元処理の精度を向上させることができる。
また、本発明の実施の形態では、擬似観測画像と想定劣化画像との差分値または除算値を、センサ劣化に応じたリサンプリングを行い復元画像にフィードバックさせて、復元画像を更新する。このフィードバックを異なる組み合わせのチャネル間で行うことにより、同チャネル間のフィードバックのみの場合と比較して高い復元効果を得ることができる。
なお、本発明の実施の形態では、画像処理回路23において、復元処理部100がホワイトバランス処理部210の前となる構成例を示したが、復元処理部100の位置は画像処理回路23の他の位置となるように構成するようにしてもよい。
また、デジタルビデオカメラ、デジタルスチルカメラ等の撮像装置またはプリンタやディスプレイ等の画像処理装置内の信号処理として本発明の実施の形態を適用することができる。また、画像加工・編集用の画像処理装置またはコンピュータプログラム等に本発明の実施の形態を適用することができる。
また、本発明の実施の形態では、撮像素子による劣化を想定した解像度変換として、3倍の例を示したが、任意の倍率を想定することができる。
なお、本発明の実施の形態は本発明を具現化するための一例を示したものであり、上述のように特許請求の範囲における発明特定事項とそれぞれ対応関係を有する。ただし、本発明は実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形を施すことができる。
また、本発明の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disk)、メモリカード、ブルーレイディスク(Blu-ray Disc(登録商標))等を用いることができる。