以下、図面を参照して、本発明による一実施例の画像縮小装置及び画像拡大装置を順に説明する。
〔画像縮小装置〕
図1は、本発明による一実施例の画像縮小装置のブロック図である。本実施例の画像縮小装置10は、制御部20と、記憶部30とを備える。制御部20は、位置合わせ情報生成部201と、画像縮小部202と、位置合わせ情報修正部203と、分散値決定部204とを備える。本実施例の画像縮小装置10をコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられる記憶部30に記憶される。コンピュータに備えられる制御部20は、中央演算処理装置(CPU)などの制御で実現することができる。即ち、CPUが、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、記憶部30から読み込んで、各構成要素の機能をコンピュータ上で実現させることができる。ここで、各構成要素の機能をハードウェアの一部で実現してもよい。尚、後述の説明で明らかとなるが、記憶部30には、「ブロック分割サイズ情報」、「画像縮小率情報」、「マザーウェーブレット情報」、及び「点広がり関数情報」が格納されている。
位置合わせ情報生成部201は、連続する複数の原画像フレームからなる原画像列を入力して、処理対象の原画像フレームから連続する少なくとも1つの原画像フレームへの位置合わせ情報を生成し、位置合わせ情報修正部203に送出する。位置合わせ情報生成部201の詳細は、図2を参照して後述する。
画像縮小部202は、空間ウェーブレット分解処理を用いて原画像列を所定の画像縮小率で縮小した縮小画像列を生成し、外部に送出するとともに、位置合わせ情報修正部203に送出する。画像縮小部202の詳細は、図3を参照して後述する。
位置合わせ情報修正部203は、生成した位置合わせ情報と縮小画像列を用いて、当該画像縮小率に対応する拡大率で縮小画像列の処理対象の縮小画像フレームを拡大する際に、拡大した標本位置に対して点広がり関数を用いた画素補完を行なって拡大画像を生成し、生成した拡大画像の画素と原画像の画素との差分値を算出し、当該位置合わせ情報の値を点広がり関数の処理範囲内でシフトしながら当該差分値が最小となるシフト量を算出し、該シフト量を当該位置合わせ情報の値に加算することにより前記位置合わせ情報を修正した情報を補助情報(以下、「複数フレーム超解像補助情報」と称する)として生成し、外部に送出する。位置合わせ情報修正部203の詳細は、図4を参照して後述する。
分散値決定部204は、画像縮小部202による空間ウェーブレット分解処理により単一の原画像フレームを用いて縮小画像を生成する際に、空間ウェーブレット分解処理とガウシアンフィルタ処理を用いて縮小画像が持つスペクトラム情報から縮小画像のナイキスト周波数を超える空間高周波成分を含む拡大画像を生成し、生成した拡大画像の画素と、該拡大画像と対応する画像サイズの空間ウェーブレット分解画像の画素との画素差分値を算出し、当該ガウシアンフィルタの分散値をガウシアンフィルタの処理範囲内で可変しながら当該画素差分値が最小となる誤差最小分散値を算出し、該誤差最小分散値を補助情報(以下、「単一フレーム超解像補助情報」と称する)として生成し、外部に送出する。尚、実施例として空間ウェーブレット分解処理を例に説明するが、空間オクターブ分解処理(オクターブ分解フィルタバンク処理とも称される)を行えるものであれば、どのようなものでも使用可能である。分散値決定部204の詳細は、図5を参照して後述する。
図2は、本発明による一実施例の画像縮小装置における位置合わせ情報生成部のブロック図である。位置合わせ情報生成部201は、ブロック分割部2011と、ブロックマッチング処理部2012とを備える。
ブロック分割部2011は、入力される原画像列のうちの被処理フレーム位置の原画像を基準フレーム画像として、記憶部30に格納されるブロック分割サイズ情報を読み出し、ブロック分割サイズ情報で指定されるBx×Byサイズのブロックに分割する。
ブロックマッチング処理部2012は、ブロック分割した基準フレーム画像に対して、その前後フレーム位置の原画像を参照フレーム画像として小数画素精度ブロックマッチングを行い、ブロック毎の位置合わせ情報(つまり、ブロックマッチングによる動き情報に対応する情報)を出力する。代表的な小数画素精度ブロックマッチングとして、パラボラフィッティング法などがある。また、後述するように、階層型位置合わせ処理により位置合わせ情報を生成することもできる。
図3は、本発明による一実施例の画像縮小装置における画像縮小部のブロック図である。画像縮小部202は、ウェーブレット分解部2021と、空間低周波成分抽出部2022と、縮小画像生成部2023とを備える。
ウェーブレット分解部2021は、n階空間ウェーブレット分解法を用いて画像縮小を行う例である(nは、0を含む自然数)。ウェーブレット分解部2021は、記憶部30に予め格納されているマザーウェーブレット情報(つまり、マザーウェーブレットの分解係数を表すフィルタ係数の情報)と、画像縮小率の情報を読み出し、当該被処理フレーム位置の原画像を基準フレーム画像としてマザーウェーブレット情報を用いて当該画像縮小率に対応する分解能でウェーブレット分解を行ない、ウェーブレット分解した画像を空間低周波成分抽出部2022に送出する。
空間低周波成分抽出部2022は、ウェーブレット分解した画像の低周波成分(例えば、n=1として、1階空間ウェーブレット分解を行なった場合には、水平・垂直方向に低周波成分の画像)を抽出して縮小画像生成部2023に送出する。
縮小画像生成部2023は、抽出した低周波成分に対応する縮小画像を生成する。これにより、画像縮小部202に入力される原画像列は、縮小画像列に変換される。尚、マザーウェーブレットを可変として、マザーウェーブレットを変化させることで縮小画像列に含まれる折り返し歪量を制御することもできるため、この場合、可変するマザーウェーブレットの情報をマザーウェーブレット情報として記憶部30に格納する。
図4は、本発明による一実施例の画像縮小装置における位置合わせ情報修正部のブロック図である。位置合わせ情報修正部203は、全画素比較処理部2031と、加算部2034と、補助情報生成部2035とを備えており、全画素比較処理部2031は、画素補完処理部2032と補完誤差算出部2033からなる。
画素補完処理部2032は、生成した位置合わせ情報と縮小画像列を用いて、当該画像縮小率に対応する拡大率で縮小画像列の被処理フレームを拡大する際に、拡大した標本位置に対して点広がり関数を用いた画素補完を行なうことで拡大画像を生成し、当該縮小画像列の被処理フレームに対応する原画像とともに、補完誤差算出部2033に送出する。
補完誤差算出部2033は、生成した拡大画像の画素と原画像の画素との差分値を算出し、画素補完処理部2032に対して当該位置合わせ情報の値を点広がり関数幅を超えない範囲でシフトしながら当該差分値が最小となるシフト量を算出し、加算部2034に送出する。生成した拡大画像の画素と原画像の画素との差分値の算出は、生成した拡大画像の全画素について行うことにより、画素毎に当該最小となるシフト量が算出される。
加算部2034は、画素毎に算出した当該最小となるシフト量を、当該位置合わせ情報の各画素に対する値(同一ブロック内では、各画素に同じ値が付与されている)に加算することにより、画素単位で修正した修正後位置合わせ情報として補助情報生成部2035に送出する。
補助情報生成部2035は、生成した修正後位置合わせ情報と、記憶部30に格納されるブロック分割サイズ情報、画像縮小率情報及び点広がり関数情報とを含めて、複数フレーム超解像補助情報として生成し、外部に送出する。これにより、原画像列を用いて生成した位置合わせ情報を、画素補完における点広がり関数を考慮した位置合わせ情報に修正した複数フレーム超解像補助情報を生成することができる。尚、画像拡大装置側でウェーブレット再構成を用いた拡大処理を行う用途に対しては、マザーウェーブレット情報を複数フレーム超解像補助情報に含めることができる。
図5は、本発明により一実施例の画像縮小装置における分散値決定部のブロック図である。分散値決定部204は、分散値可変制御部2041と、階層別高周波成分ガウシアンフィルタ処理部2042と、空間ウェーブレット再構成部2043と、画像比較処理部2044と、最小誤差分散値決定部2045とを備える。図6を参照しながら、分散値決定部204について説明する。
分散値可変制御部2041は、階層別高周波成分ガウシアンフィルタ処理部2042で用いるガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を所定の範囲内で変化させる制御部であり、例えば初期値をσCH (n)=0.1,σCV (n)=0.1,σCD (n)=0.1として、0.1刻みで10.0まで変化させる。ここで説明する(n)は、分解階数を表し、n=0は、原画像Fであり、nの値は画像縮小率に応じて定めることができる。また、符号CH,CV,CDは、水平、垂直、斜め方向の高周波成分を示す。
階層別高周波成分ガウシアンフィルタ処理部2042は、n階空間ウェーブレット分解画像(原画像Fからn階分の分解画像の水平低周波・垂直低周波の周波数成分CA(n)、水平高周波・垂直低周波成分CH(n)、水平低周波・垂直高周波成分CV(n)、水平高周波・垂直高周波成分CD(n))が入力され、分解階数nの低周波領域成分CA(n)を1階離散ウェーブレット分解して、分解階数n+1における水平、垂直、斜め方向の各高周波領域成分CA(n+1),CH(n+1),CV(n+1),CD(n+1)を生成し(ステップS101)、空間ウェーブレット再構成部2043と協動して、CH(n+1)を空間低周波領域成分、同じサイズのゼロ行列を空間高周波領域成分として水平、垂直方向に2倍拡大し(後述する式(2)により算出される)、ExCH(n)を生成、同様にしてCV(n+1)を基にExCV(n),CD(n+1)を基にExCD(n)を生成し(ステップS102)、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を用いたガウシアンフィルタ処理を行い、GExCH(n),GExCV(n),GExCD(n)を生成し(ステップS103)、低周波領域成分CA(n)を空間低周波領域成分とし、GExCH(n),GExCV(n),GExCD(n)を空間高周波領域成分として、1階離散ウェーブレット再構成により水平、垂直方向に2倍拡大し、GExCA(n−1)を生成して、画像比較処理部2044に送出する(ステップS104)。
尚、原画像F(x,y,t)は、n階空間ウェーブレット分解DWT(n)(F(x,y,t),wavelet_n)を用いて、式(1)のように分解される。tは時間を示す。なお、ここでの説明に用いるウェーブレットをwavelet_nとし、分解階数がn階の水平低周波・垂直低周波の周波数成分をCA(n)(χ,Ψ)、水平高周波・垂直低周波成分をCH(n)(χ,Ψ)、水平低周波・垂直高周波成分をCV(n)(χ,Ψ)、水平高周波・垂直高周波成分をCD(n)(χ,Ψ)とする。水平と垂直の(x,y)を(χ,Ψ)と表示したのは、解像度を変換すると、縦、横とも標本が半分になってしまうので、(x,y)と表示せず、(χ,Ψ)と表示している。
[CA(n),CH(n),CV(n),CD(n)]
=DWT(n)(F(x,y,t),wavelet_n) (1)
式(2)に、CH(n+1)を空間低周波領域成分、同じサイズのゼロ行列を空間高周波領域成分として1階離散ウェーブレット再構成した式を示す。0はゼロ行列を示す。
ExCH(n)
=IDWT(1)(CH(n+1),0,0,0,wavelet_n) (2)
空間ウェーブレット再構成部2043は、階層別高周波成分ガウシアンフィルタ処理部2042で用いるウェーブレット再構成処理の画像を生成する機能部である。
画像比較処理部2044は、階層別高周波成分ガウシアンフィルタ処理部2042から得られるGExCA(n−1)を得た後、CA(n−1)との間の差分値を算出して、最小誤差分散値決定部2045に送出する。
最小誤差分散値決定部2045は、画像比較処理部2044から得られる今回の差分値が前回の差分値より小さければ、今回の差分値と今回使用したガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)をそれぞれ記憶し、分散値可変制御部2041によってガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を変化させながら繰り返し行い、得られたGExCA(n−1)と同じ分解階数のCA(n−1)と比較し、GExCA(n−1)とCA(n−1)との間の差分値が最も小さくなるときのガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を最小誤差分散値として決定し、単一フレーム超解像補助情報として外部に送出する。なお、最小誤差分散値決定部2045は図示しないメモリを有しており、このメモリに今回の差分値と今回使用したガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を記憶する。最初の1回目は前回の差分値が無いことから、今回算出した差分値と今回使用したガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)をそのまま記憶する。また、画像の評価方法としては、平均二乗誤差(MSE:Mean Square Error)があり、この評価方法を用いるとよい。
式(3)にガウシアンフィルタを示す。
Gauss(x,y,σ)=exp(−(x2+y2)/2σ2) (3)
式(3)のσ2は分散を表す。斜め方向高周波領域成分CD(n+1)を水平、垂直方向に2倍拡大してExCD(n)を得た後(図6のステップS102)、式(3)のガウシアンフィルタを用いて式(4)に示すフィルタリング処理を行い(図6のステップS103)、GExCD(n)を得る。なお、式(3)のσは、本処理がExCD(n)のフィルタリングを行う処理内であるため、σCD (n)となる。
また、階層別高周波成分ガウシアンフィルタ処理部2042は、空間ウェーブレット再構成部2043によって階層n+1における水平方向高周波領域成分CH(n+1)、垂直方向高周波領域成分CV(n+1)を、水平、垂直方向に2倍拡大した後、式(5)に示すような方向性拡張したガウシアンフィルタ処理を用いて拡大することができる。
ExGauss(x,y,α,β,σ)
=exp(−(αx2+βy2)/2σ2) (5)
式(5)のα,βは方向性拡張係数であり、水平方向高周波領域成分CH(n)の場合はα=1,β=0、垂直方向高周波領域成分CV(n)の場合はα=0,β=1となる。以下では、σCH (n)を決定する場合のみを説明するが、σCD (n)も同様に決定することができる。
階層n+1における水平方向高周波領域成分CH(n+1)を水平、垂直方向に2倍拡大してExCH(n)を得た後、式(5)の方向性拡張したガウシアンフィルタを用いて、式(6)に示すフィルタリング処理を行い、GExCH(n)を得る。なお、式(5)のσは、本処理がCH(n)のフィルタリングを行う処理内であるため、σCH (n)となる。
したがって、分散値決定部204は、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を計算した後、CA(n),GExCH(n),GExCV(n),GExCD(n)を用いて1階離散ウェーブレット再構成を行い(図6のステップS104)、GExCA(n−1)を得た後に、式(7)に示すように、CA(n−1)の領域とGExCA(n−1)の領域における平均二乗誤差(RMS)の計算を行い、RMS(CA(n−1))及びRMS(GExCA(n−1))を得て、その差分値を計算する(図6のステップS105)。分散値決定部204は、以上の処理をガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)の値を変化させながら行い、Diff_rms(σCH (n),σCV (n),σCD (n))が最小となるガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を求めることができる。
Diff_rms(σCH (n),σCV (n),σCD (n))
=RMS(CA(n−1)(σCH (n),σCV (n),σCD (n)))
−RMS(GExCA(n−1)(σCH (n),σCV (n),σCD (n))
σCH (n)=argmin(Diff_rms(σCH (n)))
σCV (n)=argmin(Diff_rms(σCV (n))) (7)
なお、本実施例では、GExCA(n−1)とCA(n−1)とを比較することにより、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を決定するようにしたが、CH(n)とGExCH(n)、CV(n)とGExCV(n)、及びCD(n)とGExCD(n)のそれぞれを比較することにより、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を決定するようにしてもよい。
例えば、図7は、分散値決定部204における図6に示す動作の変形例の概要を示しており、分散値決定部204は、前述と同様に、n階空間ウェーブレット分解画像(原画像Fからn階分の分解画像の水平低周波・垂直低周波の周波数成分CA(n)、水平高周波・垂直低周波成分CH(n)、水平低周波・垂直高周波成分CV(n)、水平高周波・垂直高周波成分CD(n))が入力され、分解階数nの低周波領域成分CA(n)を1階離散ウェーブレット分解して、分解階数n+1における水平、垂直、斜め方向の各高周波領域成分CA(n+1),CH(n+1),CV(n+1),CD(n+1)を生成し(ステップS201)、空間ウェーブレット再構成部2043と協動して、CH(n+1)を空間低周波領域成分、同じサイズのゼロ行列を空間高周波領域成分として式(2)により水平、垂直方向に2倍拡大しExCH(n)を生成、同様にしてCV(n+1)を基にExCV(n),CD(n+1)を基にExCD(n)を生成し(ステップS202)、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を用いたガウシアンフィルタ処理を行い、GExCH(n),GExCV(n),GExCD(n)を生成する(ステップS203)。本変形例では、分散値決定部204は、CH(n)とGExCH(n)の比較において平均二乗誤差(MSE)が最小となる分散値σCH (n)を求め、CV(n)とGExCV(n)の比較において平均二乗誤差が最小となる分散値σCV (n)を求め、CD(n)とGExCD(n)の比較において平均二乗誤差が最小となる分散値σCD (n)を求める。
このようにして、分散値決定部204では、空間ウェーブレット分解とガウシアンフィルタ処理を用いて縮小画像が持つスペクトラム情報から縮小画像のナイキスト周波数を超える空間高周波成分を生成し、原画像からの空間ウェーブレット分解画像との比較によってガウシアン分散値を最適化した最小誤差分散値を含む単一フレーム超解像補助情報を生成する。
なお、線形(直線)位相特性を持つHaar等のウェーブレット以外のウェーブレットを用いる場合は、ExCH(n),ExCV(n),ExCD(n)の位相に注意する必要がある。ExCH(n),ExCV(n),ExCD(n)を水平、垂直位相(φμ,φν)分だけずらした画像ExCH(n)(χ+φμ,Ψ+φν),ExCV(n)(χ+φμ,Ψ+φν),ExCD(n)(χ+φμ,Ψ+φν)についてGExCH(n),GExCV(n),GExCD(n)を得て、位相を変化させながら最終的にガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を決定するとよい。但し、本実施例では、ガウシアンフィルタの分散値σCH (n),σCV (n),σCD (n)を変化させながらCA(n−1)とGExCA(n−1)を比較するため、この部分で位相ずれによる劣化はある程度吸収される。このため、処理量も多く大規模回路処理となる位相合わせ処理は必ずしも必要ではない。
以上のように、縮小画像列のほかに、単一フレーム補助情報及び複数フレーム超解像補助情報を拡大処理装置側に提供するように構成し、従来のような補助情報を用いることなく単に拡大処理を実行する技法よりも、拡大処理時の画素の位置合わせ精度の高い超解像処理を実現することができる。後述するように、動領域などでは複数フレーム超解像補助情報を用いたほうが、原画像が持つ真の空間高周波に近い成分が得られ、静止領域などでは単一フレーム超解像補助情報を用いたほうが、原画像が持つ真の空間高周波に近い成分が得られ、画素の位置合わせ精度が高くなることが期待できる。そこで、本発明に係る拡大処理装置50は、画像縮小装置10から、縮小画像列のほかに、単一フレーム補助情報及び複数フレーム超解像補助情報を取得し、縮小画像列の拡大処理を行うにあたって、予め定めた点広がり関数を用いた拡大処理で生成した画素補完候補を基準にして、単一フレーム補助情報を用いた画素補完候補と、複数フレーム超解像補助情報を用いた画素補完候補を生成して選別し、より高画質な超解像画像を生成可能とする。
以下、本発明による一実施例の画像拡大装置について説明する。
〔画像拡大装置〕
図8は、本発明による一実施例の画像拡大装置のブロック図である。本実施例の画像拡大装置50は、縮小画像列に対して、単一フレーム補助情報及び複数フレーム超解像補助情報を用いてそれぞれ当該画像縮小率に対応する拡大率で位置合わせを行ない、当該位置合わせを行った拡大後の標本点を画素補完する画素補完候補を生成し、基準画素補完候補を用いて画素補完候補を選別して画素補完後の拡大画像を用いて原画像列に対応する拡大画像列を生成する装置であり、制御部60と、記憶部70とを備える。制御部60は、第1画素補完候補生成部601と、第2画素補完候補生成部602と、画素補完候補選別処理部603と、拡大画像生成部604とを備える。本実施例の画像拡大装置50をコンピュータとして機能させることができ、当該コンピュータに、本発明に係る各構成要素を実現させるためのプログラムは、当該コンピュータの内部又は外部に備えられる記憶部70に記憶される。コンピュータに備えられる制御部70は、中央演算処理装置(CPU)などの制御で実現することができる。即ち、CPUが、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、記憶部70から読み込んで、各構成要素の機能をコンピュータ上で実現させることができる。
第1画素補完候補生成部601は、画像縮小装置10によって生成された縮小画像列に対して、複数フレーム超解像補助情報を用いて当該画像縮小率に対応する拡大率で位置合わせを行ない、当該位置合わせを行った拡大後の標本点について当該点広がり関数に基づく画素補完候補を生成する機能部であり、図9に示すように、位置合わせ処理部6011と、画素補完候補生成部6012とを備える。位置合わせ処理部6011は、画像縮小装置10から、縮小画像列と、修正後位置合わせ情報、ブロック分割サイズ情報、画像縮小率情報及び点広がり関数情報を含む複数フレーム超解像補助情報とを入力し、まず、縮小画像列における被処理フレーム位置の縮小画像について、入力される画像縮小率情報を用いて当該画像縮小率に対応する拡大率で、縮小画像列に対応する被超解像処理フレーム列(つまり、補完を要する標本点が存在するブロックからなる被超解像処理フレーム)を生成し、ブロック分割サイズ情報に基づく個々のブロックにおける画素値について、修正後位置合わせ情報を含む複数フレーム超解像補助情報に基づいて各縮小画像列からの画素の対応付けを行う。画素補完候補生成部6012は、被超解像処理フレーム列において拡大されたブロックにて対応付けされた画素位置ごとに、複数フレーム超解像補助情報に含まれる点広がり関数情報を用いて、生成した被超解像処理フレーム列におけるブロック毎の画素補完候補を生成する。
第2画素補完候補生成部602は、画像縮小装置によって生成された縮小画像列の各縮小画像に対して、空間オクターブ分解後に再構成した再構成画像の高周波成分について当該単一フレーム超解像補助情報を用いてガウシアンフィルタ処理を実行し、当該縮小画像を低周波成分として用いるとともに当該ガウシアンフィルタ処理を実行後の再構成画像の高周波成分を用いて空間オクターブ分解画像を構成し、該空間オクターブ分解画像について空間オクターブ再構成処理を施すことにより、当該ガウシアンフィルタ処理に基づく画素補完候補を生成する機能部であり、図10に示すように、空間ウェーブレット分解処理部6021と、階層別高周波成分ガウシアンフィルタ処理部6022と、空間ウェーブレット再構成処理部6023とを備える。
空間ウェーブレット分解処理部6021は、単一フレーム超解像補助情報がn階分の空間ウェーブレット分解による高周波の画像分解領域ごとのガウシアンフィルタの最適分散値の情報を有するものである場合に、縮小画像に対してn+1階離散ウェーブレット分解を施して、n+1階離散ウェーブレット分解画像を生成する。階層別高周波成分ガウシアンフィルタ処理部6022は、n+1階離散ウェーブレット分解画像を基に行う1階離散ウェーブレット再構成処理について、当該縮小画像をn階の低周波成分として各n階における再構成画像の高周波成分に対して、当該単一フレーム超解像補助情報を用いて階層毎のガウシアンフィルタ処理を実行しながらn階分繰返し施し、ガウシアンフィルタ処理を実行したn階分の空間ウェーブレット分解画像を生成する。空間ウェーブレット再構成処理部6023は、ガウシアンフィルタ処理を実行したn階分の空間ウェーブレット分解画像について空間ウェーブレット再構成処理を施すことにより、被超解像処理フレーム列におけるブロック毎の画素補完候補を生成する。
尚、第2画素補完候補生成部602は、単一フレーム超解像補助情報が1階空間ウェーブレット分解による高周波の画像分解領域ごとのガウシアンフィルタの最適分散値の情報を有するものである場合も、縮小画像に対して1階離散ウェーブレット分解を施し、この縮小画像に対して1階離散ウェーブレット分解した画像について1階離散ウェーブレット再構成処理を施し、当該単一フレーム超解像補助情報を用いてガウシアンフィルタ処理を実行し、当該縮小画像を低周波成分としてガウシアンフィルタ処理を実行後の再構成画像の高周波成分とする空間ウェーブレット分解画像を生成し、ガウシアンフィルタ処理を実行した高周波成分を有する空間ウェーブレット分解画像について空間ウェーブレット再構成処理を施すことにより、被超解像処理フレーム列におけるブロック毎の画素補完候補を生成することができる。
また、単一フレーム超解像補助情報がn階分の空間ウェーブレット分解による高周波の画像分解領域ごとのガウシアンフィルタの最適分散値の情報を有するものであるときに、画像分解領域ごとに階層毎のガウシアンフィルタ処理を実行する際に、縮小画像を用いて再構成した画素値と、ガウシアンフィルタ処理を実行した画素値との差分値を算出して所定の閾値以下となる場合にのみガウシアンフィルタ処理を実行した画素値を利用するのが好適である。
第2画素補完候補生成部602による画素補完候補の生成処理の様子は、前述した図6及び図7と同様となるが、図6に対応する例を図12に示している。図12は、第2画素補完候補生成部602による画素補完候補の生成処理の様子を示す図である。まず、空間ウェーブレット分解処理部6021は、式(8)に示すように、入力される縮小画像列CA(n)について1階離散ウェーブレット分解DWT(1)し、CA(n+1),CH(n+1),CV(n+1),CD(n+1)を得る(ステップS301)。
[CA(n+1),CH(n+1),CV(n+1),CD(n+1)]
=DWT(1)(CA(n),wavelet_n) (8)
そして、階層別高周波成分ガウシアンフィルタ処理部6022は、CA(n+1),CH(n+1),CV(n+1),CD(n+1)と分散値σCH (n),σCV (n),σCD (n)を用いて、水平、垂直、斜め方向拡大成分を計算する。つまり、階層別高周波成分ガウシアンフィルタ処理部6022は、CD(n+1)を空間低周波領域成分とし空間高周波領域成分に同じサイズのゼロ行列として、1階離散ウェーブレット再構成して水平2倍、垂直2倍拡大成分ExCD(n)を算出し、同様にして、CH(n+1)とCV(n+1)から1階離散ウェーブレット再構成して水平2倍、垂直2倍拡大成分ExCH(n),ExCV(n)を生成し、ExCH(n),ExCV(n),ExCD(n)に対し、分散値σCH (n),σCV (n),σCD (n)のガウシアンフィルタ処理を行い、GExCH(n),GExCV(n),GExCD(n)を得る(ステップS303)。
そして、空間ウェーブレット再構成処理部6023は、式(9)に示すように、CA(n),GExCH(n),GExCV(n),GExCD(n)を用いて、1階離散ウェーブレット再構成を行う(ステップS304)。
[CA(n−1)]
=IDWT(1)(CA(n), GExCH(n), GExCV(n), GExCD(n),wavelet_n) (9)
第2画素補完候補生成部602は、以降、n=n−1として、n=0となるまで繰り返す(ステップS305)。
画素補完候補選別処理部603は、予め定めた基準となる画素補完候補である基準点広がり関数画素補完候補を基に、基準点広がり関数画素補完候補、単一フレーム画素補完候補、及び複数フレーム画素補完候補を選別する処理部であり、図11に示すように、基準点広がり関数画素補完候補生成部6031と、第1画素補完候補比較処理部6032と、第2画素補完候補比較処理部6033と、画素補完候補決定部6034とを備える。
基準点広がり関数画素補完候補生成部6031は、縮小画像を基準点広がり関数により拡大することで、被超解像フレーム上にて、補完対象の画素単位で基準点広がり関数画素補完候補を生成して割り付ける。この基準点広がり関数は、縮小対象とする原画像列の各原画像フレームに対して縮小処理を施して構成する縮小画像列について、この「縮小時の劣化」を最も抑制して復元する(原画像に近くなる)点広がり関数を基準点広がり関数として画像縮小装置10側で予め事前に学習しておき、この基準点広がり関数を基準点広がり関数画素補完候補生成部6031が予め保持しているものとする。尚、この基準点広がり関数の情報は、例えば補助情報として事前に伝送したり、逐次、複数フレーム超解像補助情報に含めて伝送したりする態様で、画像縮小装置10から画像拡大装置50に伝送するように構成してもよい。また、基準点広がり関数は、動き量適応型点広がり関数ではない線形拡大処理の点広がり関数を用いるのが好適であり、任意の固定値からなる線形拡大処理の点広がり関数とすることができる。
第1画素補完候補比較処理部6032は、補完対象の画素位置に、基準点広がり関数画素補完候補、及び複数フレーム画素補完候補が存在する場合に、基準点広がり関数画素補完候補及び複数フレーム画素補完候補の画素差分値を算出し、算出した画素差分値が閾値Th_A以上の場合には当該複数フレーム画素補完候補の確度が低いとして判断して棄却する。これは、複数フレーム画素補完候補が基準点広がり関数画素補完候補に近い画素値を有している場合にのみ画素補完候補として採用することを意味する。
第2画素補完候補比較処理部6033は、補完対象の画素位置に、基準点広がり関数画素補完候補、及び単一フレーム画素補完候補が存在する場合に、基準点広がり関数画素補完候補及び単一フレーム画素補完候補の画素差分値を算出し、算出した画素差分値が閾値Th_A(上記と同値の閾値)以上の場合には当該単一フレーム画素補完候補の確度が低いとして判断して棄却する。これは、単一フレーム画素補完候補が基準点広がり関数画素補完候補に近い画素値を有している場合にのみ画素補完候補として採用することを意味する。
画素補完候補決定部6034は、補完対象の画素位置に、基準点広がり関数画素補完候補との比較処理で棄却されているか否かに関わらず、基準点広がり関数画素補完候補が入力され、基準点広がり関数画素補完候補との比較処理で棄却されていない場合には、複数フレーム画素補完候補又は単一フレーム画素補完候補のいずれか一方又は双方が入力される。そこで、画素補完候補決定部6034は、補完対象の画素位置に、複数フレーム画素補完候補及び単一フレーム画素補完候補のいずれか一方が存在するときには、第1画素補完候補比較処理部6032及び第2画素補完候補比較処理部6033で判断された画素補完候補を採用し、一方、補完対象の画素位置に、複数フレーム画素補完候補及び単一フレーム画素補完候補の双方が存在するときには、複数フレーム画素補完候補及び単一フレーム画素補完候補の画素差分値を算出し、算出した画素差分値が閾値Th_B(上記と同値の閾値としてもよい)以上の場合には、複数フレーム画素補完候補及び単一フレーム画素補完候補の双方を棄却して基準点広がり関数画素補完候補を採用し、当該算出した画素差分値が閾値Th_B(上記と同値の閾値としてもよい)未満の場合には、単一フレーム画素補完候補を棄却して、複数フレーム画素補完候補を採用する。画素補完候補決定部6034の処理は、確度の高い基準点広がり関数画素補完候補を基準としつつ、より高画質な画素補完候補を採用するよう選別することを意図したものであるが、複数フレーム画素補完候補及び単一フレーム画素補完候補の画素差分値が閾値Th_B以上の場合にその双方を棄却する理由は、基準点広がり関数画素補完候補との比較処理で棄却されていない場合にて複数フレーム画素補完候補及び単一フレーム画素補完候補の双方の差が大きいことは、いずれの候補も確度が低いと考えられるためである。
画素補完候補決定部6034の処理により、被超解像フレーム上に、基準点広がり関数画素補完候補、単一フレーム画素補完候補又は複数フレーム画素補完候補について最終決定した画素補完候補が拡大画像生成部604に送出される。
拡大画像生成部604は、画素補完候補選別処理部603によって選別された画素補完候補を用いて縮小画像列を拡大する。
ここで、画素補完候補決定部6034によって、基準点広がり関数画素補完候補を基準にして、単一フレーム画素補完候補と複数フレーム画素補完候補を選別することの意義について補足説明する。画像拡大装置50にて、「動領域及び静止領域」を適切に区別して復元した画像を高画質として称することとすると、高画質の画素補完候補は、複数フレーム画素補完候補、単一フレーム画素補完候補、及び基準点広がり関数画素補完候補の順になることは分かっているが、復元対象のブロック内における確度が不明であることから、複数の画素候補があるときなど、「動領域及び静止領域」を適切に区別可能な画素補完候補の選別処理が必要になる。
つまり、複数フレーム超解像補助情報を用いた拡大画素補完候補は、原画像列に対して高精度の位置合わせを行って生成されたものとなるため、動領域については原画像が持つ真の成分の画素補完候補となるが、静止領域については、単一フレーム超解像補助情報を用いた拡大画素補完候補のほうがより原画像が持つ真の成分の画素補完候補となることが想定される。
ただし、複数フレーム画素補完候補の生成における位置合わせは、複数フレームに基づいた画像拡大時のブロック領域単位となり、単一フレーム画素補完候補の生成における最適化された分散値による位置合わせは、単一フレームに基づいた画像拡大時のブロック領域単位(又は画面全体)となることから、少なくとも画像拡大時のブロック領域単位で拡大補完対象の任意の画素位置において、基準点広がり関数画素補完候補及び単一フレーム画素補完候補が存在するが、動領域であるか否かで複数フレーム画素補完候補が存在する場合と存在しない場合が生じることに留意する。また、基準点広がり関数画素補完候補は、動領域(特に、動きぼけが生じる領域)では位置合わせ精度として高精度とはいえない画素補完候補ではあるが、縮小画像から線形処理で得た画素補完候補のため確度(信頼度)は高い。
そこで、本実施例の画像拡大装置50では、画素補完候補決定部6034によって、基準点広がり関数画素補完候補を基準にして、単一フレーム画素補完候補と複数フレーム画素補完候補を選別するため、縮小画像列を拡大画像列に復元する際に、確度の高い高画質となる画素補完候補を適切に選択して拡大画像を生成することができるようになる。
次に、図13〜図23を参照して、画像縮小装置10における位置合わせ情報生成部の別例を説明する。
(位置合わせ情報の生成)
位置合わせ情報生成部201bとして、時間方向及び空間方向の周波数解析にウェーブレット変換を用いる場合について説明する。尚、時間方向及び空間方向の周波数解析には、ウェーブレット変換を用いる場合以外に、他の直交変換又はFFT(Fast Fourier transform)を用いることができる。
[装置構成]
図13は、本発明による一実施例の画像縮小装置における別例の位置合わせ情報生成部のブロック図である。本例の位置合わせ情報生成部201bは、原画像列の時間方向スペクトルパワーを算出して空間方向の周波数分解階層数を決定し、周波数分解階層数に応じた空間解像度で原画像の空間解像度となるまで階層的に位置合わせを行なった情報を位置合わせ情報として生成する機能を有し、具体的には、時間方向高周波領域パワー算出部2011bと、空間分解階数決定部2012bと、空間方向低周波領域パワー算出部2013bと、位置合わせ開始分解能決定部2014bと、階層型位置合わせ処理部2015bとを備える。
時間方向高周波領域パワー算出部2011bは、位置合わせ処理を行う基準フレームF(tC)及び位置合わせ情報の探索に用いる参照フレームF(tR)を含む、時刻t=t0・・・tmにおける複数フレームのフレーム画像列F(t0),・・・,F(tC),・・・,F(tR),・・・,F(tm)を入力し、基準フレームF(tC)における全画素について、この複数フレームを時間方向に予め規定した最大階数の周波領域に分解した後、全画素における時間方向の周波数帯域毎のパワーを算出し、算出した全画素における時間方向の周波数帯域別のパワーから時間方向の高周波領域のパワーの割合を算出して空間分解階数決定部2012bに送出する。
例えば、図14に示すように、時間方向高周波領域パワー算出部2011bは、基準フレームF(tC)及び参照フレームF(tR)を含む、時刻t=t0・・・tmにおけるフレーム画像列F(t0),・・・,F(tC),・・・,F(tR),・・・,F(tm)を入力し、基準フレームF(tC)の全画素について時間方向に予め規定したNmax階(例えば、4階)の離散ウェーブレット分解を行う時間方向1次元Nmax階離散ウェーブレット分解処理部2111bと、基準フレームF(tC)の全画素における時間方向の周波数帯域毎のパワーを算出し、算出した全画素における時間方向の周波数帯域別のパワーから時間方向の高周波領域のパワーの割合を算出して空間分解階数決定部2012bに送出する時間方向周波数帯域別パワー算出部2112bから構成することができる。
空間分解階数決定部2012は、時間方向高周波領域パワー算出部2011bによって算出した時間方向の高周波領域のパワーの割合から、時間方向の高周波領域のパワーの割合が大きいほど、動領域面積が大きく、且つ動き量が大きいと判断し、時間方向の高周波領域のパワーの割合に応じて空間周波数の分解階数Ns(即ち、空間方向の分解能)を決定し、決定した空間周波数の分解階数Nsの情報を空間方向低周波領域パワー算出部2013bに送出する。
空間方向低周波領域パワー算出部2013bは、基準フレームF(tC)及び参照フレームF(tR)と空間周波数の分解階数Nsの情報を入力し、空間周波数の分解階数Nsに基づいて、基準フレームF(tC)及び/又は参照フレームF(tR)に対して空間Ns階離散ウェーブレット分解を実行し、当該フレームにおける空間周波数帯域毎のパワーを算出し、算出した空間周波数帯域毎のパワーから当該フレームにおける空間方向の低周波領域のパワーの割合を算出し、算出した空間方向の低周波領域のパワーの割合と空間Ns階離散ウェーブレット分解したデータを位置合わせ開始分解能決定部2014bに送出する。
尚、基準フレームF(tC)及び参照フレームF(tR)の双方に対して空間Ns階離散ウェーブレット分解を実行することは、後の処理として、固定のブロックサイズ及び探索範囲の大きさで階層型位置合わせ処理を行う際のウェーブレット再構成を階層的に行うことにより、元画像に対して可変のブロックサイズ及び探索範囲の大きさとする階層型位置合わせ処理を行うことができる点で有利であり、特に、位置合わせ処理を階層的に行うための分解能の決定のためには、基準フレームF(tC)及び参照フレームF(tR)のうちの空間方向の低周波領域のパワーの割合が大きいほうを選定するのが好適となる。以下の説明では、基準フレームF(tC)及び参照フレームF(tR)の双方について空間Ns階離散ウェーブレット分解を行う例を説明する。
例えば、図15に示すように、空間方向低周波領域パワー算出部2013bは、基準フレームF(tC)及び参照フレームF(tR)を入力し、空間分解階数決定部2012bによって決定した空間周波数の分解階数Nsに基づいて、基準フレームF(tC)及び参照フレームF(tR)の各々の全画素に対して空間Ns階離散ウェーブレット分解を行う空間方向2次元Ns階離散ウェーブレット分解処理部2131bと、基準フレームF(tC)及び参照フレームF(tR)の各々における空間周波数帯域毎のパワーを算出し、算出した空間周波数帯域毎のパワーから基準フレームF(tC)及び参照フレームF(tR)の各々における空間方向の低周波領域のパワーの割合を算出し、算出した基準フレームF(tC)及び参照フレームF(tR)の各々における空間方向の低周波領域のパワーの割合の大きいほうの情報を位置合わせ開始分解能決定部2014bに送出する空間方向周波数帯域別パワー算出部2132bから構成することができる。
位置合わせ開始分解能決定部2014bは、空間方向低周波領域パワー算出部2013bによって算出した空間方向の低周波領域のパワーの割合の情報から、空間方向の低周波領域のパワーの割合が大きいほど(空間方向の高周波領域のパワーの割合が小さいほど)、動領域面積が大きく、且つ動き量が大きいと判断し、位置合わせ処理を階層的に開始するための分解能(以下、「位置合わせ開始分解能」と称する)が小さい値(即ち、低解像度画像)となるように、空間方向の低周波領域のパワーの割合に応じて位置合わせ開始分解能を決定し、決定した階層的な位置合わせ開始分解能の情報を階層型位置合わせ処理部2015bに送出する。
例えば、図16に示すように、位置合わせ開始分解能決定部2014bは、空間方向低周波領域パワー算出部2013bによって算出した空間方向の低周波領域のパワーの割合から、空間方向の低周波領域のパワーの割合が大きいほど(空間方向の高周波領域のパワーの割合が小さいほど)動領域面積が大きく、且つ動き量が大きいと判断し、位置合わせを開始する階数(以下、「位置合わせ開始階数」と称する)nsが大きな値となるように、空間方向の低周波領域のパワーの割合に応じて位置合わせ開始階数nsを決定し、決定した位置合わせ開始階数nsの情報を階層型位置合わせ処理部2015bに送出する位置合わせ開始階数決定部2141bとして構成することができる。
階層型位置合わせ処理部2015bは、位置合わせ開始階数nsに応じた空間方向に低周波領域の基準フレームF(tC)及び参照フレームF(tR)の画像を得るために、基準フレームF(tC)及び参照フレームF(tR)の空間方向2次元Ns階離散ウェーブレット分解したデータに対して、位置合わせ開始階数nsに応じた空間ns階ウェーブレットの再構成を行い、予め定めたブロックサイズ及び探索範囲の大きさで位置合わせ処理を実行し、続いて空間ns−1階ウェーブレットの再構成を行い、当該予め定めたブロックサイズ及び探索範囲の大きさで位置合わせ処理を再度実行し、最上位の階層(即ち、元の画像レベル)にて当該予め定めたブロックサイズ及び探索範囲の大きさで位置合わせ情報の検出を行うまで階数をデクリメントして繰り返す。この階層型位置合わせ処理の動作は、基準フレームF(tC)及び参照フレームF(tR)を入力し、位置合わせ開始分解能に基づいて、基準フレームF(tC)に対して順次ブロックサイズ及び探索範囲の大きさを縮小しながら位置合わせ処理を行うことと類似した処理となる。ただし、空間ns階ウェーブレット分解及び再構成を経て順次繰り返すことによる階層型位置合わせ処理によれば、階層に応じて順次可変にすべきブロックサイズ及び探索範囲の大きさを用意する必要がなく固定とすることができ、且つ画像シーンに応じた位置合わせ開始階数nsに応じた位置合わせ処理を行うため、高精度化が期待できる。
例えば、図17に示すように、階層型位置合わせ処理部2015bは、位置合わせ開始階数nsに応じた空間方向に低周波領域の基準フレームF(tC)及び参照フレームF(tR)の画像を得るために位置合わせ開始階数nsに応じた空間ns階ウェーブレットの再構成を行い、予め定めたブロックサイズ及び探索範囲の大きさで小数画素精度のブロックマッチングによる位置合わせ処理を行う位置合わせ情報生成部2151bと、この位置合わせ情報の生成処理を最上位の階数に対応する元の画像レベルとなるまで階数をデクリメントして繰り返すために、空間方向低周波領域パワー算出部2013bによって算出した空間Ns階離散ウェーブレット分解データに対して位置合わせ開始階数nsよりも上位の階数の画像となるように空間方向に1階上位のウェーブレット再構成を実行して位置合わせ情報生成部2151bに送出する空間1階ウェーブレット再構成部2152bから構成することができる。従って、位置合わせ情報生成部2151bは、空間1階ウェーブレット再構成部2152bから得られる基準フレームF(tC)及び参照フレームF(tR)の再構成画像を用いて、位置合わせ処理を階層的に繰り返し、最終的な位置合わせ情報を決定して出力することができる。
以下、本例の位置合わせ情報生成部の動作について更に詳細に説明する。
[装置動作]
図18は、本発明による一実施例の画像縮小装置における別例の位置合わせ情報生成部の動作を示す動作フローである。ステップS1にて、位置合わせ情報生成部201bは、基準フレームF(tC)及び参照フレームF(tR)を含む、時刻t=t0・・・tmにおけるフレーム画像列F(t0),・・・,F(tC),・・・,F(tR),・・・,F(tm)を入力して、位置合わせ情報生成部201bが備える記憶部(図示せず)に適宜読み出し可能に格納する。
ステップS2にて、時間方向高周波領域パワー算出部2011bにより、フレーム画像列F(t0),・・・,F(tC),・・・,F(tR),・・・,F(tm)を入力し、基準フレームF(tC)における全画素について時間方向に予め規定した最大階数の周波領域に分解した後、全画素における時間方向の周波数帯域毎のパワーを算出し、算出した全画素における時間方向の周波数帯域別のパワーから時間方向の高周波領域のパワーの割合を算出する。
例えば、図19に示すように、フレーム画像列F(t0),・・・,F(tC),・・・,F(tR),・・・,F(tm)における或る画素R(k,l)について、時間方向に予め規定した最大階数(Nmax)の周波領域に分解した後、全画素における時間方向周波数帯域毎のパワーを算出することができる。例えば、図20に示すように、16フレームのフレーム画像列F(t)を時間方向にNmax階に分解するとすれば、Nmax=1では、低周波領域L1及び高周波領域H1として分割することができ(図20(a)参照)、Nmax=2では、低周波領域L2及び高周波領域H1,H2として分割することができ(図20(b)参照)、Nmax=3では、低周波領域L3及び高周波領域H1,H2,H3として分割することができ(図20(c)参照)、Nmax=4では、低周波領域L4及び高周波領域H1,H2,H3,H4として分割することができる(図20(d)参照)。
ステップS3にて、空間分解階数決定部2012bにより、算出した時間方向の高周波領域のパワーの割合から、時間方向の高周波領域のパワーの割合が大きいほど動領域面積が大きく、且つ動き量が大きいと判断し、空間周波数の分解階数Nsが大きな値となるように、時間方向の高周波領域のパワーの割合に応じて準フレームF(tC)及び参照フレームF(tR)の空間周波数の分解階数Nsを決定する。
例えば、表1に示すように、時間方向の高周波領域のパワーの割合と空間周波数の分解階数Nsとの間で規定されるテーブルを予め保持しておく。
ステップS4にて、空間方向低周波領域パワー算出部2013bにより、基準フレームF(tC)及び参照フレームF(tR)を入力し、空間分解階数決定部2012bによって決定した空間周波数の分解階数Nsに基づいて、基準フレームF(tC)及び参照フレームF(tR)に対して空間Ns階離散ウェーブレット分解を実行し、基準フレームF(tC)及び参照フレームF(tR)における空間周波数帯域毎のパワーをそれぞれ算出し、位置合わせ開始分解能(又は位置合わせ開始階数ns)の決定のために、算出した空間周波数帯域毎のパワーから基準フレームF(tC)及び参照フレームF(tR)における空間周波数帯域毎のパワーの割合の大きいほうを選定する。基準フレームF(tC)又は参照フレームF(tR)における空間周波数帯域毎のパワーの割合のみを算出してもよい。
例えば、図21(a)に示すように、基準フレームF(tC)の全画素に対して空間方向に2次元2階離散ウェーブレット分解を実行して、各周波領域のパワーを算出し、算出した空間周波数帯域毎のパワーから空間方向の低周波領域のパワーの割合を算出することができる。また、図21(b)に示すように、基準フレームF(tC)の空間方向の低周波領域(例えば、LL2)のみを抽出して基準フレームF(tC)の低周波領域のみの画像を再構成することができる。
ステップS5にて、位置合わせ開始分解能決定部2014bにより、空間Ns階離散ウェーブレット分解データ及び空間方向の低周波領域のパワーの割合から、空間方向の低周波領域のパワーの割合が大きいほど(空間方向の高周波領域のパワーの割合が小さいほど)動領域面積が大きく、且つ動き量が大きいと判断し、位置合わせ開始分解能が小さい値(位置合わせ開始階数nsが大きい値)となるように、空間方向の低周波領域のパワーの割合に応じて階層的な位置合わせ開始分解能(又は位置合わせ開始階数ns)を決定する。ただし、ns≦Nsである。
例えば、表2に示すように、空間方向の低周波領域のパワーの割合と位置合わせ開始分解能(又は位置合わせ開始階数ns)との間で規定されるテーブルを予め保持しておく。尚、位置合わせ開始階数が大きくなるにつれて、元の画像が低解像度化することを意味しており、元の画像に対して相対的にブロックサイズ及び位置合わせ情報の探索範囲の大きさが増大することを意味している。例えば、空間分解能1/16,1/8,1/4,1/2とすれば、それぞれ(ブロックサイズ,位置合わせ情報の探索範囲の大きさ)は、(16×16,水平・垂直16画素),(8×8,水平・垂直8画素),(4×4,水平・垂直4画素),(2×2,水平・垂直2画素)などである。ここで、例えば、空間分解能1/16は、元の画像における水平標本化周波数Hs及び垂直標本化周波数Vsにおいて、16画素を1画素として標本化する低解像度化を意味する。
つまり、図22に示すように、空間方向の低周波領域のパワーの割合によって、位置合わせ開始階数nsを関連付けることができる。例えば、Ns=4のとき、低周波領域(LL4)及び高周波領域(LL4以外)のそれぞれのパワーを算出して、全体における低周波領域(LL4)の割合が、99.5%以上であれば、位置合わせ開始階数ns=4として4階層の低周波領域のみの画像を再構成することができる(図22(d)参照)。また、全体における低周波領域(LL4)の割合が、98.0%以上99.5%未満であれば、位置合わせ開始階数ns=3として3階層の低周波領域(この場合、LL3)のみの画像を再構成することができる(図22(c)参照)。同様に、全体における低周波領域(LL4)の割合が、95.0%以上98.0%未満であれば、位置合わせ開始階数ns=2として2階層の低周波領域(この場合、LL2)のみの画像を再構成することができ(図22(b)参照)、全体における低周波領域(LL4)の割合が、95.0%未満であれば、位置合わせ開始階数ns=1として1階層の低周波領域(この場合、LL1)のみの画像を再構成することができる(図22(a)参照)。
ステップS6にて、階層型位置合わせ処理部2015bにより、位置合わせ開始分解能(位置合わせ開始階数ns)に基づいた基準フレームF(tC)及び参照フレームF(tR)の低周波画像に対して、基準フレームF(tC)の低周波画像を所定のブロックサイズに分割し、分割した各ブロックについて、所定の位置合わせ情報の探索範囲の大きさで、小数画素精度のブロックマッチングによる位置合わせ情報の生成処理を行う。
ステップS7にて、階層型位置合わせ処理部2015bにより、基準フレームF(tC)及び参照フレームF(tR)に対してブロックサイズ及び位置合わせ情報の探索範囲の大きさを縮小しながら位置合わせ処理を繰り返す効果を得るために、算出していた基準フレームF(tC)及び参照フレームF(tR)の空間ns階離散ウェーブレット分解データに対して位置合わせ開始階数nsよりも上位の階数の画像となるように空間方向に1階上位のウェーブレット再構成を実行する。
階層型位置合わせ処理部2015bは、空間1階ウェーブレット再構成部2152bから得られる基準フレームF(tC)及び参照フレームF(tR)の再構成画像を用いて、最上位の階層(即ち、元の画像レベルにおける位置合わせ情報)となるまで順次階数をデクリメントして位置合わせ処理を繰り返し(ステップS8)、最終的な位置合わせ情報を決定して出力することができる(ステップS9)。
例えば、図23(a)〜(d)に示すように、位置合わせ開始階数nsが大きいほどブロックサイズが大きくなる様子を示しており、ブロックサイズが大きいほど参照フレームF(tR)における位置合わせ情報の探索範囲の大きさも大きくなる。
つまり、基準フレームF(tC)のns階低周波画像を水平及び垂直のブロックサイズ(Bxns,Byns)の或るブロックBns(上添え字は、階層を示す)に分割し、参照フレームF(tR)の±Sxns,±Synsの範囲(例えば、±2ブロック)で探索し、各ブロックの位置合わせ情報vnsを算出する。次に、基準フレームF(tC)のns−1階低周波画像を、ブロックサイズ(Bxns,Byns)で分割し、参照フレームF(tR)のns階低周波画像上の同じ位置から2×vnsだけずらした場所を中心位置とする水平及び垂直画素数としてそれぞれ±Sxns,±Synsの範囲で探索し、得られた位置合わせ情報に2×vnsをベクトル加算して、ns−1階低周波画像における位置合わせ情報vns−1を算出する。このようにして、最上位の階数(即ち、1階)まで位置合わせ処理を繰り返すことにより、高精度化を図ることができる。
尚、位置合わせ処理は、2次関数近似による小数画素位置のブロックマッチング法を用いて行うのは、最上位の階数(即ち、1階)でのみ行うのが好適であり、次式で与えられる。
尚、探索位置における画素位置をxとしたとき、SSD(x)は、画素位置におけるSSD値(誤差二乗和)を表し、より具体的には、SSD(0)は中心位置におけるSSD値、SSD(−1)は中心位置から−Sx(Sy)画素の位置におけるSSD値、SSD(1)は中心位置から+Sx(Sy)画素の位置におけるSSD値を表す。上記の式から、水平又は垂直方向の小数画素精度の画素位置(小数画素位置)をそれぞれ算出することができる。
このように、時空間方向の周波数パワーに基づいて位置合わせ情報を生成することができる。
次に、本発明による一実施例の画像縮小装置における更に別例の位置合わせ情報生成部について説明する。
(位置合わせ情報の確度判定)
図24は、本発明による一実施例の画像縮小装置における更に別例の位置合わせ情報生成部のブロック図である。本例の位置合わせ情報生成部201cは、原画像フレームをブロック分割したブロック単位で位置合わせ情報を生成し、各ブロック内の小領域のサブブロック単位で位置合わせ情報を生成し、サブブロック単位で検出した位置合わせ情報が、対応するブロック位置のブロック単位の動き量に対して所定の閾値以上、及び/又は一致度評価関数値が所定の閾値以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする確度判定を行ない、有効と判断したサブブロック単位の位置合わせ情報を、対応するブロック単位の位置合わせ情報にベクトル加算して補正することにより、位置合わせ情報修正部203で用いる位置合わせ情報を生成する機能を有し、具体的には、ブロック単位小数画素の位置合わせ処理部2011cと、画素単位小数位置合わせ処理部2012cと、位置合わせ情報確度判定部2013cと、補正位置合わせ情報生成部2014cとを備える。尚、本例の位置合わせ情報生成部201cは、各構成要素が処理するのに必要なデータを格納する記憶部(図示せず)を備える。位置合わせ処理を行う基準フレームをF(tC)、及び位置合わせ情報の探索を行う参照フレームをF(tR)とする。
ブロック単位小数画素の位置合わせ処理部2011cは、原画像列についてブロック単位で位置合わせ情報を算出する。より具体的には、後述するように、ブロック単位小数画素の位置合わせ処理部2011cは、基準フレームF(tC)、及び参照フレームF(tR)を入力して、基準フレームF(tC)を例えば16×16画素のブロックBi,j(i,jは、水平及び垂直のブロック番号)で分割し、参照フレームF(tR)上を探索してブロック単位の位置合わせ情報vBi,jを求め、当該記憶部に保持する。ブロック単位の位置合わせ処理は、小数画素精度の位置合わせ処理を行うのが好適である。
画素単位小数画素の位置合わせ処理部2012cは、ブロックBi,j内の小領域のサブブロック単位(例えば、1画素単位)で位置合わせ情報を算出する。より具体的には、後述するように、画素単位小数画素の位置合わせ処理部2012cは、ブロックBi,j内の画素位置(k,l)について、各画素位置の位置合わせ情報ui,j(k,l)を求め、当該記憶部に保持する。小領域のサブブロック単位(例えば、1画素単位)の位置合わせ情報は、小数画素精度の位置合わせ処理を行うのが好適である。
位置合わせ情報確度判定部2013cは、当該記憶部に保持したブロック単位及びサブブロック単位で検出した位置合わせ情報を読み出し、サブブロック単位で検出した位置合わせ情報が、対応するブロック位置のブロック単位の動き量に対して所定の閾値以上、及び/又は一致度評価関数値が所定の閾値以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする確度判定を行う。位置合わせ情報確度判定部2013cは、確度判定によって得られたサブブロック単位の位置合わせ情報について有効であるか否かを表す情報と、ブロック単位及びサブブロック単位で検出した位置合わせ情報を補正位置合わせ情報生成部2014cに送出する。より具体的には、位置合わせ情報確度判定部2013cは、サブブロック単位で検出した位置合わせ情報が、ブロック単位の動き量の半値以上である場合、及び/又は、一致度評価関数値が一定の閾値以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする。
補正位置合わせ情報生成部2014cは、有効と判断したサブブロック単位の位置合わせ情報を、対応するブロック単位の位置合わせ情報にベクトル加算して補正する。
これにより、ブロック単位で求めた位置合わせ情報に関して、より小領域のサブブロック単位(例えば、画素単位)で再検出し、サブブロック単位(例えば、画素単位)の位置合わせ情報について有効又は無効の判定を行うため、確度の高い位置合わせ情報を得ることができる。また、少なくとも小領域のサブブロック単位(例えば、画素単位)で小数画素精度の位置合わせ処理を行うため、精度の高い位置合わせ情報を得ることができる。
以下、図25を参照して、本発明による一実施例の画像縮小装置における更に別例の位置合わせ情報生成部の動作について詳細に説明する。
ステップS11にて、原画像列を構成する基準フレームF(tC)及び参照フレームF(tR)を入力し、適宜記憶部に保持する。
ステップS12にて、ブロック単位小数画素の位置合わせ処理部2011cにより、まず、ブロック単位(例えば、16×16画素のブロック単位)の小数画素精度の位置合わせ情報の生成を行う。例えば、図26(a)に示すように、基準フレームF(tC)をブロックBi,j(i,jは、列及び行のブロック番号)で分割し、図26(b)に示すように、参照フレームF(tR)上を探索してブロック単位の位置合わせ情報vBi,jを求める。
ステップS13にて、画素単位小数画素の位置合わせ処理部2012cにより、小領域のサブブロック単位(例えば、画素単位)の小数画素精度の位置合わせ処理を行う。以下、画素単位の小数画素精度の位置合わせ処理を行う例を説明する。
ブロックBi,j内の画素位置(k,l)とし、各画素位置の位置合わせ情報ui,j(k,l)を、上述したように、画素単位の小数画素精度位置における位置合わせ情報の生成を行う。画素単位の位置合わせ処理は、2次関数近似(パラボラフィッティング)を用いた一致度評価関数とするブロックマッチング法を用いて、参照フレームF(tR)上をブロック単位の位置合わせ情報vBi,jだけずらした位置を中心とする±Sx’(Sy’)の範囲で探索する。尚、探索範囲の大きさを規定する±Sx’又はSy’の大きさは、±1画素とすることができる。
ステップS14にて、位置合わせ情報確度判定部2013cにより、求めた画素単位の位置合わせ情報ui,j(k,l)が、ブロック単位の動き量に対して所定の閾値以上、及び/又は一致度評価関数値が所定の閾値以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする(ステップS15,S16)。
例えば、求めた画素単位の位置合わせ情報ui,j(k,l)が、ブロック単位の動き量の半値、即ち±(0.5,0.5)以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする(図27参照)。
更に別の例として、求めた画素単位の位置合わせ情報ui,j(k,l)が、SSD値が一定の閾値(例えば、SSD(0)の値)以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする。
更に別の例として、求めた画素単位の位置合わせ情報ui,j(k,l)が、ブロック単位の動き量の半値、即ち±(0.5,0.5)以上である場合、且つSSD値(誤差二乗和)が一定の閾値(例えば、SSD(0)の値)以上である場合には、確度が低いとして無効とし、それ以外は確度が高いとして有効とする。
有効と判断した場合に、補正位置合わせ情報生成部2014cにより、この基準フレームF(tC)における小領域のサブブロック単位(例えば、画素単位)の位置合わせ情報V(i,j,k,l)を、V(i,j,k,l)=vBi,j+ui,j(k,l)として補正する。
尚、補正位置合わせ情報生成部2014cは、無効であるとされた対象の画素単位小数精度位置の位置合わせ情報については、その周囲の有効値(例えば、最も隣接する有効値)で置き換えるか、又は周囲の複数の有効値で平均化するか、又は、ブロック単位の位置合わせ情報で置き換える(即ち、V(i,j,k,l)=vBi,j)ことにより、全ての小領域のサブブロック単位(例えば、画素単位)の位置合わせ情報V(i,j,k,l)を決定することもできる。
このように、本実施例の位置合わせ情報生成部201cであれば、ブロック単位で求めた位置合わせ情報に関して、より小領域のサブブロック単位(例えば、画素単位)にて小数精度で再検出し、サブブロック単位の位置合わせ情報について有効及び無効の判定を行うため、確度の高く、且つ精度も高い位置合わせ情報を得ることができる。
次に、動き量適応型点広がり関数について説明する。
(動き量適応型点広がり関数)
図28は、本発明による一実施例の画像縮小装置で利用可能な点広がり関数を生成する動き量適応型点広がり関数生成装置のブロック図である。通常、画像縮小の際に発生する動きぼけ関数として点広がり関数PSF(Point Spreading Function)を用い、画像拡大の際にその逆関数を利用して超解像を行う。したがって、動き量適応型点広がり関数生成装置300は、原画像列を用いて位置合わせ情報を生成し、この位置合わせ情報に応じて適応的に点広がり関数が変化する動き量適応型点広がり関数を生成する例である。この動き量適応型点広がり関数は、前述した画像縮小装置10における記憶部30に予め記憶しておくことで利用可能となる。
動き量適応型点広がり関数生成装置300は、位置合わせ情報生成部201によって生成した位置合わせ情報に応じて点広がり関数の幅が変化する動き量適応型点広がり関数を用いて、当該位置合わせ情報を修正した情報を補助情報として生成する機能を有し、位置合わせ情報修正部203に組み入れることができる。具体的には、動き量適応型点広がり関数生成装置300は、位置合わせ情報生成部301と、画素対応付け処理部302と、再構成処理部303とを備える。
位置合わせ情報生成部301は、図1で説明した場合と同様に、原画像列を用いて位置合わせ情報を生成する。
画素対応付け処理部302は、原画像列を用いて生成した位置合わせ情報から、図1で説明した場合と同様に生成された縮小画像列について、複数フレーム間で画素の対応付けを行い、超解像元フレーム(縮小画像列のフレーム)の画素を被超解像フレーム(画像拡大するフレーム)上に反映する対応付け情報を生成して再構成処理部303に送出する(図29参照)。
再構成処理部303は、縮小画像の画素を、画像拡大するフレーム上に反映するときの事後確率(被超解像フレーム上に複数の低解像度な超解像元フレームの画素が与えられた時の事後確率)を最大にする高解像度画像の推定を行って高解像度画像を再構成するのに必要な動き量適応型点広がり関数を決定する。この推定にはMAP(Maximum A Posterior)法や、その他の方法を用いることができる。また動き量適応型点広がり関数は、原画像列を用いて生成した位置合わせ情報を基に、PSFを拡張した動きぼけ関数である。詳細に後述するが、再構成処理部303は、動き量適応型点広がり関数として、点広がり関数PSFを模擬する2次元ガウス関数近似を用いて、2次元ガウス関数近似の水平及び垂直方向の動きぼけ量を制御することができる。
従来からのMAP法(以下、「従来MAP法」と称する)は、xを高解像度な画像復元されたフレーム画像ベクトル、yを低解像度な超解像元フレーム画像ベクトル、Nを入力フレーム数とした時の事後確率p(x|y1,y2,・・・,yN)を最大にする高解像度フレーム画像を推定する方法である。
従来MAP法によれば、誤差分布を正規分布と仮定した場合、推定される高解像度フレーム画像x(^)は、式(10)で計算される。
式(10)での第1項では、Dはサブサンプリングを表す行列、Bkは点広がり関数PSF行列、Wkは位置合わせ情報(特に、シーンやカメラの動きを表す動き量にも適用できる)の行列を示す。
ゆえに、式(10)の第1項の||yk−D・Bk・Wk・x||2は、k番目の低解像度の超解像元フレーム画像と、観測信号としての高解像度の画像復元されるフレーム画像にPSFによる解像度変換時の動きぼけとk番目の超解像元フレームからの位置合わせ情報を与えてサブサンプリングした画像との二乗誤差となる。
そして、式(10)の第2項のλ||C・x||2は、λが事前情報の寄与度合いを示す変数量、Cが入力画像の事前情報として与えられる「画像縮小率情報」の行列となる。
ただし、従来MAP法では、「点広がり関数PSF」、「位置合わせ情報」、「画像縮小率情報」は補助情報としては与えられないことに注意する。ゆえに、従来MAP法におけるCは、例えば4近傍のMRF(Markov Random Field)を仮定して、4近傍のラプラシアンカーネルを利用するものであるため、シーンやカメラの動きに十分に対応できていなかった。
本例の動き量適応型点広がり関数生成装置300は、「位置合わせ情報」及び「画像縮小率情報」が補助情報としては与えられない状況下で、式(10)の点広がり関数PSFのBkを、2次元ガウス関数近似による点広がり関数とし、位置合わせ情報(つまり、フレーム間動きベクトルの向きと大きさに対応する情報)に応じて、2次元ガウス関数近似による点広がり関数の拡張を行う。この拡張されたPSF関数を動き量適応型点広がり関数カーネルEBkとする。
式(11)に、動き量適応型点広がり関数カーネルEBkを用いたMAP再構成処理式を示す。
より具体的に、「2次元ガウス関数近似による点広がり関数PSK」と、「動き量適応型点広がり関数(拡張された2次元ガウス関数近似による点広がり関数PSK)」について、詳細に説明する。
〔2次元ガウス関数近似による点広がり関数〕
PSKを、2次元のガウス関数で近似するあたり、式(12)のように、半値幅をwとし、面積が1の規格化ガウス関数の振幅をαとして定義する。
式(12)より、2次元のガウス関数は、式(13)のようになる。ここで、水平方向の基準位置はx0、垂直方向の基準位置はy0となる。
〔動き量適応型点広がり関数(拡張された2次元ガウス関数近以による点広がり関数)〕
動き量適応型点広がり関数生成装置300は、式(13)の点広がり関数を拡張する。位置合わせ情報mの水平方向の動き量をmx、垂直方向の動き量をmyとすると、式(13)のガウス関数における水平方向と垂直方向の半値幅は、式(14)のように制御される。
式(14)は、位置合わせ情報の向きと大きさに応じて点広がり関数の広がり方向と広がり量を制御するものである。
動き量適応型点広がり関数生成装置300の再構成処理では、式(11)のカーネルEBkを式(14)の2次元のガウス関数として、画像拡大倍率に応じて式(14)の半値幅wを決定し、式(13)のλを変化させながら式(13)の繰り返し演算を行い、最適な高解像度画像を求めることができる。
このように、動き量適応型点広がり関数生成装置300で生成した動き量適応型点広がり関数を、図1に示す画像縮小装置10に適用すれば、動き量に対する鮮鋭な位置合わせ情報を生成することができる。
以上の説明では、特定の実施例についてのみ説明したが、画像縮小装置から出力される縮小画像列や各補助情報を符号化・伝送し、画像拡大装置が符号化・伝送された縮小画像列や各補助情報を受信して復号するように構成できることは勿論である。