JP2004120603A - 画像処理方法および装置並びにプログラム - Google Patents
画像処理方法および装置並びにプログラム Download PDFInfo
- Publication number
- JP2004120603A JP2004120603A JP2002283885A JP2002283885A JP2004120603A JP 2004120603 A JP2004120603 A JP 2004120603A JP 2002283885 A JP2002283885 A JP 2002283885A JP 2002283885 A JP2002283885 A JP 2002283885A JP 2004120603 A JP2004120603 A JP 2004120603A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- frames
- resolution
- interpolation
- motion vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000003672 processing method Methods 0.000 title claims description 18
- 239000013598 vector Substances 0.000 claims abstract description 163
- 238000000034 method Methods 0.000 claims description 55
- 238000004364 calculation method Methods 0.000 claims description 34
- 238000005070 sampling Methods 0.000 claims description 18
- 230000002194 synthesizing effect Effects 0.000 claims description 14
- 239000002131 composite material Substances 0.000 claims description 9
- 238000012935 Averaging Methods 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 31
- 230000001186 cumulative effect Effects 0.000 description 12
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 2
- 241000255925 Diptera Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
- Television Systems (AREA)
Abstract
【課題】動画像からサンプリングされた複数のフレームから、ノイズやアーチファクトを低減しつつも高画質の高解像度フレームを得る。
【解決手段】動画像データM0からサンプリングされたフレームFr1,Fr2を動ベクトルV12に応じて内挿処理して第1の高解像度フレームHFr1を算出する。一方、フレームFr1,Fr2に対して時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する。動ベクトルV12の小数部の値に応じて、重み係数β1,β2を算出する。重み係数β1は小数部が0.5のときに最大値、0,1のときに最小値をとる。重み係数β2は小数部が0.5のときに最小値、0,1のときに最大値をとる。そして、第1および第2の高解像度フレームHFr1,HFr2を重み係数β1,β2に応じて重み付け加算して合成高解像度フレームFrGを得る。
【選択図】 図1
【解決手段】動画像データM0からサンプリングされたフレームFr1,Fr2を動ベクトルV12に応じて内挿処理して第1の高解像度フレームHFr1を算出する。一方、フレームFr1,Fr2に対して時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する。動ベクトルV12の小数部の値に応じて、重み係数β1,β2を算出する。重み係数β1は小数部が0.5のときに最大値、0,1のときに最小値をとる。重み係数β2は小数部が0.5のときに最小値、0,1のときに最大値をとる。そして、第1および第2の高解像度フレームHFr1,HFr2を重み係数β1,β2に応じて重み付け加算して合成高解像度フレームFrGを得る。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、これらのフレームよりも高解像度の1のフレームを作成する画像処理方法および装置並びに画像処理方法をコンピュータに実行させるためのプログラムに関するものである。
【0002】
【従来の技術】
近年のデジタルビデオカメラの普及により、動画像を1フレーム単位で扱うことが可能となっている。このような動画像の一部のフレームをプリント出力する際には、画質を向上させるためにフレームを高解像度にする必要がある。このため、動画からサンプリングした複数のフレームから、1の高解像度フレームを作成する方法が提案されている(特開2000−354244号公報)。この方法によれば、作成の対象となる複数のフレーム間の動ベクトルを求め、この動ベクトルに基づいて、複数のフレームから高解像度フレームを合成する際に、画素間に内挿する信号値を算出する方法である。とくに特開2000−354244号公報に記載された方法では、各フレームを複数のブロックに分割し、フレーム間で対応するブロックの直交座標係数を算出し、この直交座標係数における高周波の情報を他のブロックにおける低周波の情報と合成して内挿される画素値を算出しているため、必要な情報が低減されることなく、高画質の高解像度フレームを得ることができる。また、この方法においては、画素間距離よりもさらに細かい分解能にて動ベクトルを算出しているため、各フレーム間の動きを正確に補償してより高画質の高解像度フレームを得ることができる。
【0003】
【発明が解決しようとする課題】
しかしながら、上記特開2000−354244号公報に記載された方法では、フレームにノイズやアーチファクトが含まれると、作成された高解像度フレームにもノイズやアーチファクトが含まれてしまうため、高解像度フレームの画質が劣化してしまうという問題がある。
【0004】
本発明は上記事情に鑑みなされたものであり、動画像からサンプリングされた複数のフレームから、ノイズやアーチファクトを低減しつつも高画質の高解像度フレームを得ることを目的とする。
【0005】
【課題を解決するための手段】
本発明による第1の画像処理方法は、動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出し、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出し、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出することを特徴とするものである。
【0006】
本発明による第2の画像処理方法は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出し、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、
前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出し、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、
該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出することを特徴とするものである。
【0007】
なお、本発明による第1および第2の画像処理方法においては、第1の高解像度フレームの算出と、第2の高解像度フレームの算出とは並列に行ってもよく、直列に行ってもよい。
【0008】
「動ベクトル」は、基準フレームを構成する各小領域の時間の経過による移動方向および移動量を表すものである。なお、基準フレームの小領域は基準フレームを複数の領域に分割することにより得ることができるが、例えば基準フレームをそれに含まれる被写体毎の領域に分割することにより、小領域を得てもよい。
【0009】
「内挿処理」としては、例えば、上記特開平7−203442号公報に記載された方法を用いることができる。具体的には、基準フレームにおいて高解像度化により増加させるべき画素の画素値を、他のフレームにおける対応する画素の画素値を用いて補間する処理が挙げられる。
【0010】
なお、本発明における補間に用いられる演算としては、スプライン補間演算、線形補間演算等種々の演算方法を用いることができる。
【0011】
「時間フィルタ処理」とは、例えば、各補間演算済みフレームに含まれる高周波のノイズ(いわゆるモスキートノイズ)を低減するために、合成に用いる複数のフレームを加算してフレーム数により除算することにより、時間軸方向のローパスフィルタを構成して高周波のノイズを低減した1のフレームを得る処理である。
【0012】
また、フレームに含まれるノイズ等の影響により、動ベクトルを正確に求めることができない場合がある。このように正確でない動ベクトルに基づいて内挿処理を行ったのでは、内挿する画素位置における画素値を精度よく求めることができない。このため、動ベクトルの信頼度を判定し、判定結果に応じた内挿処理を行って前記第1の高解像フレームを算出することが好ましい。
【0013】
判定結果に応じた内挿処理としては、動ベクトルの信頼度が高い場合には例えば上記特開平7−203442号公報に記載された内挿処理を行い、動ベクトルの信頼度が低い場合には、内挿する画素の近傍の画素値を用いた補間演算等を行うことをいう。
【0014】
また、本発明による第2の画像処理方法においては、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出してもよい。
【0015】
本発明による第1の画像処理装置は、動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出する動ベクトル算出手段と、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出する内挿処理手段と、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とするものである。
【0016】
なお、本発明による第1の画像処理装置においては、前記内挿処理手段を、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記第1の高解像度フレームを算出する手段としてもよい。
【0017】
本発明による第2の画像処理装置は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出する動ベクトル算出手段と、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、さらに、前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出する内挿処理手段と、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、さらに、該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とするものである。
【0018】
なお、本発明による第2の画像処理装置においては、前記内挿処理手段を、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出する手段としてもよい。
【0019】
なお、本発明による第1および第2の画像処理方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【0020】
【発明の効果】
本発明による第1の画像処理方法および装置によれば、2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、基準フレームを構成する複数の小領域についての動ベクトルが算出される。そして、動ベクトルに基づいて、他のフレームが基準フレームに内挿処理されて、各フレームよりも解像度が高い第1の高解像度フレームが算出される。
【0021】
また、2つのフレームのそれぞれに対して補間演算を施すことにより得られた各フレームよりも解像度が高い2つの補間演算済みフレームが算出され、これらの補間演算済みフレームに対して、時間フィルタ処理が施されて第2の高解像度フレームが算出される。
【0022】
そして、動ベクトルの小数部の値に応じて、第1の高解像度フレームおよび第2の高解像度フレームが重み付け加算されて合成高解像度フレームが算出される。
【0023】
また、本発明による第1の画像処理方法および装置によれば、複数のフレームのうち基準となる1の基準フレームおよびこれ以外の複数の他のフレーム間において、基準フレームを構成する小領域についての複数の動ベクトルが算出される。そして、各動ベクトルに基づいて、複数の他のフレームが基準フレームに内挿処理されて、各フレームよりも解像度が高い複数の内挿処理済みフレームが算出される。そして、これら複数の内挿処理済みフレームが各動ベクトルの大きさの小数部の値に基づいて合成されて第1の高解像度フレームが算出される。
【0024】
一方、複数のフレームのそれぞれに対して補間演算を施すことにより得られた各フレームよりも解像度が高い複数の補間演算済みフレームが算出され、これら複数の補間演算済みフレームに対して、各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理が施されて第2の高解像度フレームが算出される。
【0025】
そして、第1の高解像度フレームおよび第2の高解像度フレームが加算平均されて合成高解像度フレームが算出される。
【0026】
ここで、動ベクトルの小数部は0から1の間の値をとるが、本発明において行われる内挿処理は、とくに動ベクトルが小数部を含んでいても、情報を欠落させることなく高解像度フレームを作成できるため、第1の高解像度フレームは動ベクトルの小数部の値に拘わらず高画質の画像を表すものとなる。しかしながら、各フレームに含まれるノイズやアーチファクトは何ら低減されていないため、第1の高解像度フレームには、各フレームに含まれるノイズやアーチファクトはそのまま含まれてしまっている。
【0027】
一方、時間フィルタ処理によりフレームに含まれるノイズやアーチファクトは低減されるが、1つのフレームのみを用いた補間処理では、高周波の情報を十分に再現することはできないため、第2の高解像度フレームは、画像がぼけてしまっている。
【0028】
本発明においては、動ベクトルの小数部の値に応じて、高画質ではあるがノイズやアーチファクトを含むの第1の高解像度フレームと、ノイズやアーチファクトは低減されているが多少画像がぼけている第2の高解像度フレームとを重み付け加算しているため、第1および第2の高解像度フレームの互いの欠点を補完した1の合成高解像度フレームを得ることができる。したがって、高周波情報の欠落を防止しつつもノイズやアーチファクトが低減された高画質の高解像度フレームを得ることができる。
【0029】
また、動ベクトルの信頼度の判定結果に応じた内挿処理を行うことにより、内挿する画素の画素値をより精度よく求めることができるため、合成高解像度フレームをさらに高画質なものとすることができる。
【0030】
【発明の実施の形態】
以下図面を参照して本発明の実施形態について説明する。図1は本発明の第1の実施形態による画像処理装置の構成を示す概略ブロック図である。図1に示すように、本発明の第1の実施の形態による画像処理装置は、動画像データM0から複数のフレームFr1,Fr2…Frnをサンプリングするサンプリング手段1と、サンプリングされた複数のフレームFr1,Fr2…Frnを一時的に記憶する記憶手段2と、合成処理の対象となるフレーム(第1の実施形態においては、フレームFr1,Fr2)について、基準となるフレームFr1と他のフレームFr2との間における動ベクトルV12を算出する動ベクトル算出手段3と、動ベクトルV12に基づいて、後述する重み係数β1,β2を算出する動ベクトル処理手段4と、フレームFr1,Fr2に対して内挿処理を施して第1の高解像度フレームHFr1を算出する内挿処理手段5と、フレームFr1,Fr2に対して補間演算および時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する時間フィルタ処理手段6と、第1の高解像度フレームHFr1に重み係数β1を、第2の高解像度フレームHFr2に重み係数β2を乗算してこれらを加算することにより合成高解像度フレームFrGを得る合成手段7とを備える。
【0031】
なお、第1の実施形態においては、合成高解像度フレームFrGは、フレームFr1,Fr2の2倍の解像度を有するものとする。
【0032】
動ベクトル算出手段3は、フレームFr1を例えば8×8画素の複数の小領域に分割し、フレームFr1の各小領域をフレームFr2上において平行移動し、各小領域とフレームFr2上における対応する小領域との相関値を算出する。具体的には、小領域内における画素値の差の累積和の逆数を相関値として算出する。そして、相関値が最も高く、すなわち小領域内における画素値の差の累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV12として算出する。
【0033】
例えば、図2に示すように、フレームFr1における小領域A1について、フレームFr2における小領域A1′との相関値が最も高い場合には、小領域A1をフレームFr2に投影して得られる小領域A1″を小領域A1′へ移動させるために必要な移動量および移動方向を動ベクトルV12として算出する。ここで、第1の実施形態においては、図3に示すように、フレームFr1における領域A2内の小領域についての動ベクトルV12がx方向にのみ成分を有し、領域A3内の小領域についての動ベクトルV12がy方向にのみ成分を有するものとする。また、領域A2内の小領域についての動ベクトルV12の大きさの小数部が0.5であり、領域A3内の小領域についての動ベクトルV12の大きさの小数部が0であるものとする。
【0034】
動ベクトル処理手段4は、動ベクトル算出手段3において算出されたフレームFr1上の各小領域における動ベクトルV12の大きさの小数部に応じて、後述するように合成手段7において第1の高解像度フレームHFr1および第2の高解像度フレームHFr2に乗算する重み係数β1,β2を算出する。
【0035】
ここで、算出される重み係数β1,β2の特性を図4(a),(b)にそれぞれ示す。図4(a)に示すように、第1の高解像度フレームHFr1に乗算する重み係数β1は、動ベクトルV12の小数部が0または1のときに0となり、動ベクトルV12の小数部が0.5のときに1となるように直線的に変化する。一方、図4(b)に示すように、第2の高解像度フレームHFr2に乗算する重み係数β2は、動ベクトルV12の小数部が0または1のときに1となり、動ベクトルV12の小数部が0.5のときに0となるように直線的に変化する。
【0036】
内挿処理手段5は、動ベクトルV12の方向に基づいて、フレームFr1,Fr2に対して内挿処理を施して第1の高解像度フレームHFr1を算出する。図5(a)、(b)はフレームFr1,Fr2の画素配列を示す図、図6はフレームFr1,Fr2から算出された第1の高解像度フレームHFr1の画素配列を示す図である。図5(a)、(b)に示すように、第1の実施形態においては、フレームFr1が黒丸の画素からなり、フレームFr2が黒三角の画素からなるものとする。
【0037】
第1の実施形態においては、図3に示すようにフレームFr1の領域A2内の各小領域についての動ベクトルV12はx方向にのみ値を有するため、領域A2においては、x方向について黒丸の画素の間にフレームFr2の黒三角の画素が内挿される。一方、y方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒三角の画素が並ぶ画素列については、内挿された黒三角の画素における画素値に基づいて補間演算が行われて、黒三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白三角で表す。
【0038】
一方、領域A3内の各小領域についての動ベクトルV12はy方向にのみ値を有するため、領域A3については、y方向について黒丸の画素の間にフレームFr2の黒三角の画素が内挿される。一方、x方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒三角の画素が並ぶ画素列については、内挿された黒三角の画素における画素値に基づいて補間演算が行われて、黒三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白三角で表す。
【0039】
これにより、図6に示すようにフレームFr1にフレームFr2が内挿されて第1の高解像度フレームHFr1が算出される。
【0040】
時間フィルタ処理手段6は、まず、フレームFr1,Fr2に対して補間演算を行い、補間フレームFr1′,Fr2′を算出する。図7(a),(b)は、補間フレームFr1′,Fr2′の画素配列を示す図である。補間フレームFr1′は、フレームFr1における黒丸の画素の画素値に基づいて、黒丸の画素間における画素値を補間演算により算出することにより得られるものであり、図7(a)においては、補間演算により算出された画素を白丸で示す。
【0041】
一方、補間フレームFr2′は、フレームFr2における黒三角の画素の画素値に基づいて、黒三角の画素間における画素値を補間演算により算出することにより得られるものであり、図7(b)においては、補間演算により算出された画素を白三角で示す。
【0042】
そして、時間フィルタ処理手段6は、補間フレームFr1′,Fr2′に対して時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する。ここで、時間フィルタ処理は、補間フレームFr1′,Fr2の相対応する画素の累積加算平均値を算出する処理である。図8は、第2の高解像度フレームHFr2の画素配列を示す図である。図8において黒四角画素の画素値は、補間フレームFr1′における黒丸画素の画素値と補間フレームFr2′における黒三角画素の画素値との平均値であり、白四角画素の画素値は、補間フレームFr1′における白丸画素の画素値と補間フレームFr2′における白三角画素の画素値との平均値である。
【0043】
合成手段7は、第1の高解像度フレームHFr1に重み係数β1を、第2の高解像度フレームHFr2に重み係数β2をそれぞれ乗算してこれらを加算することにより合成高解像度フレームFrGを算出する。具体的には、第1の高解像度フレームHFr1、第2の高解像度フレームHFr2および合成高解像度フレームFrGについて、各画素の画素値をそれぞれHFr1,HFr2,FrGとすると、下記の式(1)によりFrGを算出する。
FrG=β1×HFr1+β2×HFr2 (1)
【0044】
ここで、第1の実施形態においては、領域A2における動ベクトルV12の大きさの小数部が0.5であるため、領域A2においてはβ1=1、β2=0となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においてはβ1=0、β2=1となる。したがって、図9に示すように合成高解像度フレームFrGは、領域A2においては第1の高解像度フレームHFr1の画素のみからなり、領域A3においては第2の高解像度フレームHFr2の画素のみからなるものとなる。
【0045】
次いで、第1の実施の形態の動作について説明する。図10は第1の実施形態において行われる処理を示すフローチャートである。まず、サンプリング手段1に動画像データM0が入力され(ステップS1)、ここで動画像データM0のサンプリングが行われて複数のフレームFr1,Fr2,…Frnが取得され(ステップS2)、記憶手段2に記憶される(ステップS3)。続いて、処理の対象となる2つのフレームFr1,Fr2が記憶手段2から読み出される(ステップS4)。
【0046】
続いて、動ベクトル算出手段3において、基準となるフレームFr1と他のフレームFr2との間の動ベクトルV12が算出され(ステップS5)、動ベクトル処理手段4において、動ベクトルV12に基づいて重み係数β1,β2が算出される(ステップS6)。
【0047】
また、内挿処理手段5においては、フレームFr1,Fr2に対して内挿処理が施されて第1の高解像度フレームHFr1が算出される(ステップS7)。
【0048】
一方、時間フィルタ処理手段6においては、フレームFr1,Fr2に対して補間演算および時間フィルタ処理が施されて第2の高解像度フレームHFr2が算出される(ステップS8)。
【0049】
なお、ここでは、ステップS6、ステップS7、およびステップS8の順で処理を行っているが、処理の順序は任意であり、またこれらの処理を並列に行ってもよい。
【0050】
そして、合成手段7において、第1の高解像度フレームHFr1に重み係数β1が、第2の高解像度フレームHFr2に重み係数β2がそれぞれ乗算されて、さらにこれらが加算されて合成高解像度フレームFrGが算出され(ステップS9)、処理を終了する。
【0051】
ここで、動ベクトル算出手段3において算出される動ベクトルV12の小数部は0から1の間の値をとるが、内挿処理手段5において行われる内挿処理は、とくに動ベクトルV12が小数部を含んでいても、情報を欠落させることなく第1の高解像度フレームHFr1を作成できるため、第1の高解像度フレームHFr1は動ベクトルV12の小数部の値に拘わらず高画質の画像を表すものとなる。しかしながら、フレームFr1,Fr2に含まれるノイズやアーチファクトは何ら低減されないため、第1の高解像度フレームHFr1には、各フレームFr1,Fr2に含まれるノイズやアーチファクトはそのまま含まれている。
【0052】
一方、時間フィルタ処理手段6において行われる時間フィルタ処理により、各フレームFr1,Fr2に含まれるノイズやアーチファクトは低減されるが、1つのフレームのみを用いた補間処理では、高周波の情報を十分に再現することはできないため、第2の高解像度フレームHFr2は、画像がぼけてしまっている。
【0053】
本実施形態においては、動ベクトルV12の小数部の値に応じて、高画質ではあるがノイズやアーチファクトを含むの第1の高解像度フレームHFr1と、ノイズやアーチファクトは低減されているが多少画像がぼけている第2の高解像度フレームHFr2とを重み付け加算しているため、第1および第2の高解像度フレームHFr1,HFr2の互いの欠点を補完した1の合成高解像度フレームFrGを得ることができる。したがって、動画像データM0からサンプリングしたフレームFr1,Fr2から、高周波情報の欠落を防止しつつもノイズやアーチファクトが低減された高画質の高解像度フレームを得ることができる。
【0054】
次いで、本発明の第2の実施形態について説明する。図11は、本発明の第2の実施形態による画像処理装置の構成を示す概略ブロック図である。図11に示すように、本発明の第2の実施の形態による画像処理装置は、動画像データM0から複数のフレームFr1,Fr2…Frnをサンプリングするサンプリング手段11と、サンプリングされた複数のフレームFr1,Fr2…Frnを一時的に記憶する記憶手段12と、合成処理の対象となるフレーム(第2の実施形態においては、3つのフレームFr1,Fr2,Fr3)について、基準となるフレームFr1と他のフレームFr2,Fr3との間における動ベクトルV12,V13を算出する動ベクトル算出手段13と、動ベクトルV12,V13に基づいて、後述する重み係数β1(12),β1(13),β2(12),β2(13)を算出する動ベクトル処理手段14と、フレームFr1,Fr2,Fr3に対して内挿処理を施して第1の高解像度フレームHFr1を算出する内挿処理手段15と、フレームFr1,Fr2,Fr3に対して補間演算および時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する時間フィルタ処理手段16と、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とを加算平均することにより合成高解像度フレームFrGを得る合成手段17とを備える。
【0055】
なお、第2の実施形態においては、第1の実施形態と同様に、合成高解像度フレームFrGは、フレームFr1,Fr2,Fr3の2倍の解像度を有するものとする。
【0056】
動ベクトル算出手段13は、第1の実施形態における動ベクトル算出手段3と同様に、フレームFr1を例えば8×8画素の複数の小領域に分割し、フレームFr1の各小領域をフレームFr2上において平行移動し、各小領域とフレームFr2上における対応する小領域との相関値を算出する。そして、相関値が最も高く、すなわち小領域内における画素値の差の累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV12として算出する。
【0057】
さらに動ベクトル算出手段13は、フレームFr1の各小領域をフレームFr3上において平行移動し、各小領域とフレームFr3上における対応する小領域との相関値を算出する。そして、相関値が最も高く、すなわち画素値の差の小領域内における累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV13として算出する。
【0058】
ここで、第2の実施形態においては、図12(a)に示すように、フレームFr1における領域A2内の小領域についての動ベクトルV12がx方向にのみ成分を有し、領域A3内の小領域についての動ベクトルV12はy方向にのみ成分を有するものとする。また、領域A2内の小領域についての動ベクトルV12の大きさの小数部が0.5であり、領域A3内の小領域についての動ベクトルV12の大きさの小数部が0であるものとする。
【0059】
また、図12(b)に示すように、フレームFr1における領域A4内の小領域についての動ベクトルV13がx方向にのみ成分を有し、領域A5内の小領域についての動ベクトルV13はy方向にのみ成分を有するものとする。また、領域A4内の小領域についての動ベクトルV13の大きさの小数部が0であり、領域A5内の小領域についての動ベクトルV13の大きさの小数部が0.5であるものとする。
【0060】
動ベクトル処理手段14は、動ベクトル算出手段13において算出されたフレームFr1上の各小領域における動ベクトルV12,V13の大きさの小数部に応じて、後述するように内挿処理手段15において第1および第2の内挿処理済みフレームNFr1,NFr2を合成する際の重み係数β1(12),β1(13)、および時間フィルタ処理手段16において補間演算済みフレームを合成する際の重み係数β2(12),β2(13)を算出する。
【0061】
ここで、算出される重み係数β1(12),β1(13),β2(12),β2(13)の特性は図4(a),(b)に示す重み係数β1,β2と同一である。なお、重み係数β1(12)は、フレームFr1およびフレームFr2に基づいて算出された第1の内挿処理済みフレームNFr12に乗算する重み係数であり、重み係数β1(13)は、フレームFr1およびフレームFr3に基づいて算出された第2の内挿処理済みフレームNFr13に乗算する重み係数である。また、重み係数β2(12)は、フレームFr1およびフレームFr2に基づいて算出された補間フレームFr2′に乗算する重み係数であり、重み係数β2(13)は、フレームFr1およびフレームFr3に基づいて算出された補間フレームFr3′に乗算する重み係数である。
【0062】
内挿処理手段15は、まず、動ベクトルV12の方向に基づいて、フレームFr1,Fr2に対して内挿処理を施して第1の内挿処理済みフレームNFr12を算出する。第1の内挿処理済みフレームNFr12は、第1の実施形態において内挿処理手段15にて算出された第1の高解像度フレームHFr1に対応するものであり、その画素配列は図6に示すものとなる。
【0063】
また、内挿処理手段15は、動ベクトルV13の方向に基づいて、フレームFr1,Fr3に対して内挿処理を施して第2の内挿処理済みフレームNFr13を算出する。図13(a)、(b)はフレームFr1,Fr3の画素配列を示す図、図14はフレームFr1,Fr3から算出された第2の内挿処理済みフレームNFr13の画素配列を示す図、図15は第2の実施形態における内挿処理を説明するための図である。
【0064】
第2の実施形態においては、図13(a)、(b)に示すように、フレームFr1が黒丸の画素からなり、フレームFr3が黒逆三角の画素からなるものとする。第2の実施形態においては、図12に示すようにフレームFr1の領域A4内の各小領域についての動ベクトルV13はx方向にのみ値を有するため、領域A4においては、x方向について黒丸の画素の間にフレームFr3の黒逆三角の画素が内挿される。一方、y方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒逆三角の画素が並ぶ画素列については、内挿された黒逆三角の画素における画素値に基づいて補間演算が行われて、黒逆三角の画素の間に画素が内挿される。ここで、黒逆三角の画素の間に内挿された画素を白逆三角で表す。
【0065】
一方、領域A5内の各小領域についての動ベクトルV13はy方向にのみ値を有するため、領域A5については、y方向について黒丸の画素の間にフレームFr3の黒逆三角の画素が内挿される。一方、x方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒逆三角の画素が並ぶ画素列については、内挿された黒逆三角の画素における画素値に基づいて補間演算が行われて、黒逆三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白逆三角で表す。
【0066】
これにより、図14に示すように画素が内挿されて第2の内挿処理済みフレームNFr13が算出される。
【0067】
続いて、内挿処理手段15は、第1の内挿処理済みフレームNFr12に重み係数β1(12)を、第2の内挿処理済みフレームNFr13に重み係数β1(13)を乗算してこれらを加算することにより第1の高解像度フレームHFr1を算出する。具体的には、第1の内挿処理済みフレームNFr12、第2の内挿処理済みフレームNFr13および第1の高解像度フレームHFr1について、各画素の画素値をそれぞれNFr12,NFr13,HFr1とすると、下記の式(2)によりHFr1を算出する。
HFr1=β1(12)×NFr12+β1(13)×NFr13 (2)
【0068】
ここで、第2の実施形態においては、領域A2内の各小領域についての動ベクトルV12の大きさの小数部が0.5であるため、領域A2においては、β1(12)=1となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においては、β1(12)=0となる。このため、第1の内挿処理済みフレームNFr12に重み係数β1(12)を乗算することにより得られるフレームの画素配列は、図15(a)に示すものとなる。
【0069】
一方、領域A4における動ベクトルV13の大きさの小数部が0であるため、領域A4においてはβ1(13)=0となる。また、領域A5における動ベクトルV13の大きさの小数部が0.5であるため、領域A5においては、β1(13)=0.5となる。このため、第2の内挿処理済みフレームNFr13に重み係数β1(13)を乗算することにより得られるフレームの画素配列は、図15(b)に示すものとなる。
【0070】
したがって、第1の高解像度フレームHFr1は、図15(c)に示すように領域A2および領域A4が重なる領域(A24とする)においては、第1の内挿処理済みフレームNFr12の画素のみからなり、領域A3および領域A5が重なる領域(A35とする)においては、第2の内挿処理済みフレームNFr13の画素のみからなり、さらに、領域A2および領域A5が重なる領域(A25とする)については、第1の内挿処理済みフレームNFr12に第2の内挿処理済みフレームNFr13を内挿することにより算出された画素値の画素からなるものとなる。
【0071】
ここで、領域A25において、第1および第2の内挿処理済みフレームNFr12,NFr13のフレームFr1,Fr2,Fr3の画素値をそのまま用いている画素については、フレームFr1,Fr2,Fr3の画素値をその画素における画素値として用いる。一方、領域A25において、第1および第2の内挿処理済みフレームNFr12,NFr13のフレームFr1,Fr2,Fr3の画素値をそのまま用いていない画素(図15(c)における∴)については、第1の内挿処理済みフレームNFr12における白三角の画素における画素値と、第2の内挿処理済みフレームNFr13における白逆三角の画素における画素値とを動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に応じた重み付け加算を行うことにより算出する。具体的には、下記の式(3)に示すように、動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に応じた重み付け加算を行う。なお、式(3)において、動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和をそれぞれ|V12|,|V13|とする。
(△×|V13|+▽×|V12|)/(|V13|+|V12|) (3)
【0072】
時間フィルタ手段16は、フレームFr1,Fr2,Fr3に対して補間演算を行い、補間フレームFr1′,Fr2′,Fr3′を算出する。図16は、補間フレームFr1′,Fr2′,Fr3′の画素配列を示す図である。補間フレームFr1′は、フレームFr1における黒丸の画素の画素値に基づいて、黒丸の画素間における画素値を補間演算により算出することにより得られるものであり、図16(a)においては、補間演算により算出された画素値を白丸で示す。
【0073】
また、補間フレームFr2′は、フレームFr2における黒三角の画素の画素値に基づいて、黒三角の画素間における画素値を補間演算により算出することにより得られるものであり、図16(b)においては、補間演算により算出された画素値を白三角で示す。なお、補間の前にフレームFr2をフレームFr1に対して平行移動し、フレームFr2の各画素をフレームFr1の各画素に対応付ける処理が行われる。
【0074】
また、補間フレームFr3′は、フレームFr3における黒逆三角の画素の画素値に基づいて、黒逆三角の画素間における画素値を補間演算により算出することにより得られるものであり、図16(c)においては、補間演算により算出された画素値を白逆三角で示す。なお、補間の前にフレームFr3をフレームFr1に対して平行移動し、フレームFr3の各画素をフレームFr1の各画素に対応付ける処理が行われる。
【0075】
続いて、時間フィルタ処理手段16においては、補間フレームFr2′に重み係数β2(12)を、補間フレームFr3′に重み係数β2(13)を乗算して乗算補間フレームFr2″,Fr3″を算出する。
【0076】
具体的には、補間フレームFr2′,Fr3′および乗算補間フレームFr2″,Fr3″について、各画素の画素値をそれぞれFr2′,Fr3′,Fr2″,Fr3″とすると、下記の式(4)、(5)によりFr2″,Fr3″を算出する。
Fr2″=β2(12)×Fr2′ (4)
Fr3″=β2(13)×Fr3′ (5)
【0077】
ここで、第2の実施形態においては、領域A2における動ベクトルV12の大きさの小数部が0.5であるため、領域A2においてはβ2(12)=0となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においてはβ2(12)=1となる。このため、補間フレームFr2′に重み係数β2(12)を乗算することにより得られる乗算補間フレームFr2″の画素配列は、図17(a)に示すものとなる。
【0078】
一方、領域A4における動ベクトルV13の大きさの小数部が0であるため、領域A4においてはβ2(13)=1となる。また、領域A5における動ベクトルV13の大きさの小数部が0.5であるため、領域A5においてはβ2(13)=0となる。このため、補間フレームFr3′に重み係数β2(13)を乗算することにより得られる乗算補間フレームFr3″の画素配列は、図17(b)に示すものとなる。
【0079】
そして、補間フレームFr1′および乗算補間フレームFr2″,Fr3″の相対応する画素同士の累積加算平均値を算出することにより、第2の高解像度フレームHFr2を算出する。なお、補間フレームFr1′については、乗算補間フレームFr2″,Fr3″の双方において画素値が0の画素に対応する画素については、累積加算平均値の算出には使用しないものとする。このため、補間フレームFr1′は、図17(c)に示すように、領域A2,A5が重なり合う領域A25は累積加算平均値の算出には使用されないこととなる。
【0080】
図18は、第2の高解像度フレームHFr2の画素配列を示す図である。図18に示すように第2の高解像度フレームHFr2における、領域A3と領域A5とが重なる領域A35の黒四角画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr2″における黒三角画素の画素値との平均値であり、白四角画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr2″における白三角画素の画素値との平均値である。
【0081】
また、領域A2と領域A4とが重なる領域A24の◆画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr3″における黒逆三角画素の画素値との平均値であり、◇画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr3″における白逆三角画素の画素値との平均値である。
【0082】
また、領域A3と領域A4とが重なる領域A34の★画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr2″における黒三角画素の画素値と乗算補間フレームFr3″における黒逆三角画素の画素値との平均値であり、☆画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr2″における白三角画素の画素値と乗算補間フレームFr3″における白逆三角画素の画素値との平均値である。
【0083】
合成手段17は、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とにおける相対応する画素の画素値を加算平均することにより、合成高解像度フレームFrGを算出する。具体的には、第1の高解像度フレームHFr1、第2の高解像度フレームHFr2および合成高解像度フレームFrGについて、各画素の画素値をそれぞれHFr1,HFr2,FrGとすると、下記の式(6)によりFrGを算出する。
FrG=(HFr1+HFr2)/2 (6)
【0084】
次いで、第2の実施の形態の動作について説明する。図19は第2の実施形態において行われる処理を示すフローチャートである。まず、サンプリング手段11に動画像データM0が入力され(ステップS11)、ここで動画像データM0のサンプリングが行われて複数のフレームFr1,Fr2,…Frnが取得され(ステップS12)、記憶手段2に記憶される(ステップS13)。続いて、処理の対象となる3つのフレームFr1,Fr2,Fr3が記憶手段2から読み出される(ステップS14)。
【0085】
続いて、動ベクトル算出手段13において、基準となるフレームFr1と他のフレームFr2,Fr3との間の動ベクトルV12,V13が算出され(ステップS15)、動ベクトル処理手段14において、動ベクトルV12,V13に基づいて重み係数β1(12),β1(13),β2(12),β2(13)が算出される(ステップS16)。
【0086】
また、内挿処理手段15においては、フレームFr1,Fr2,Fr3に対して内挿処理が施されて第1の高解像度フレームHFr1が算出される(ステップS17)。
【0087】
一方、時間フィルタ処理手段16においては、フレームFr1,Fr2,Fr3に対して補間演算および時間フィルタ処理が施されて第2の高解像度フレームHFr2が算出される(ステップS18)。
【0088】
なお、ここでは、ステップS16、ステップS17、およびステップS18の順で処理を行っているが、処理の順序は任意であり、またこれらの処理を並列に行ってもよい。
【0089】
そして、合成手段17において、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とが加算平均されて合成高解像度フレームFrGが算出され(ステップS19)、処理を終了する。
【0090】
なお、上記第1および第2の実施形態において、動ベクトル算出手段3,13において算出された動ベクトルV12が全ての小領域において常に正しい移動方向および移動量を表すものではない。例えば、フレームFr1に含まれるある被写体(X1とする)と類似する被写体(Y1とする)がフレームFr2に存在し、被写体X1がフレームFr2には含まれない場合、フレームFr2に含まれる類似する被写体Y1に基づいて動ベクトルV12が算出されることとなる。このような場合、算出された動ベクトルV12に基づいて内挿処理を行うと、内挿される画素の画素値が適切なものとはならない。
【0091】
このため、算出された動ベクトルV12の信頼度を判定し、信頼度が低いと判定された場合には、内挿される画素の画素値を採用するか否かをさらに判定してもよい。
【0092】
ここで、動ベクトルV12の信頼度の判定は、動ベクトルV12の算出時に算出される相関値を所定のしきい値と比較し、相関値が所定のしきい値未満の場合には、その動ベクトルV12は信頼できないものとして、内挿される画素の画素値を採用するか否かを判定する。
【0093】
次いで、画素値の採用条件について説明する。図20は、画素値の採用条件を説明するための図である。なお、ここでは簡単のため、x方向のみの内挿処理について説明する。図20に示すように、フレームFr1における画素位置nおよび画素位置n+1の間の内挿画素位置P1にフレームFr2の対応する画素値を内挿する場合において、内挿する画素値が画素位置nの画素値Vnと画素位置n+1の画素値Vn+1との間にあるか否かを判定する。そして、画素値Vnと画素値Vn+1の間(図中矢印の範囲)にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0094】
一方、内挿する画素値が画素値Vnと画素値Vn+1との間にない場合には、内挿画素位置P1の画素値として、画素値Vnと画素値Vn+1を線形補間することにより算出された画素値を用いる。
【0095】
また、内挿画素位置P1の周囲における画素値の変動量に応じて内挿画素位置P1における画素値の採用条件を設けてもよい。図21は、内挿画素位置P1の周囲における画素値の変動量に応じた画素値の採用条件を説明するための図である。まず、図21(a)に示すように、画素位置nの周囲における微分値が正の値となり、画素位置n+1の周囲における微分値が負の値となった場合、内挿画素位置P1の画素値は、画素値Vn,Vn+1よりも値が大きいと推定される。このため、画素位置n,n+1の周囲における画素値の変動量に基づいて、内挿画素位置P1における画素値を推定し、内挿される画素値が推定された画素値Vpと画素値Vn,Vn+1の小さい方の画素値(ここでは画素値Vn)との間にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0096】
逆に、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の小さい方の画素値(ここでは画素値Vn)との間にない場合には、例えば推定された画素値Vpを内挿画素位置P1の画素値として採用する。
【0097】
なお、ここでは推定画素値Vpは、画素位置n−1,nの画素値Vn−1,Vnを結ぶ直線と内挿画素位置P1との交点の値および画素位置n+1,n+2の画素値Vn+1,Vn+2を結ぶ直線と内挿画素位置P1との交点の値のいずれか小さい方の値を用いる。
【0098】
一方、図21(b)に示すように、画素位置nの周囲における微分値が負の値となり、画素位置n+1の周囲における微分値が正の値となった場合、内挿画素位置P1の画素値は、画素値Vn,Vn+1よりも値が小さいと推定される。このため、画素位置n,n+1の周囲における画素値の変動量に基づいて、内挿画素位置P1における画素値を推定し、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の大きい方の画素値(ここでは画素値Vn+1)との間にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0099】
逆に、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の大きい方の画素値(ここでは画素値Vn+1)との間にない場合には、例えば推定された画素値Vpを内挿画素位置P1の画素値として採用する。
【0100】
なお、ここでは推定画素値Vpは、画素位置n−1,nの画素値Vn−1,Vnを結ぶ直線と内挿画素位置P1との交点の値および画素位置n+1,n+2の画素値Vn+1,Vn+2を結ぶ直線と内挿画素位置P1との交点の値の大きい方の値を用いる。
【0101】
さらに、動ベクトルV12が適切でないと判定された場合に、画素位置n,n+1が画像上における例えば人物の肌のようになだらかに画素値が変化する部分にあるか否かを判定し、なだらかな部分にあると判定された場合において、さらに内挿画素位置P1に内挿される画素値がノイズのような高周波成分である場合には、内挿画素位置P1の画素値として、例えば上記図20および図21を用いて説明した方法により画素値を線形補間して、内挿画素位置P1の画素値を求める。
【0102】
ここで、なだらかさの判定は、フレームFr1における内挿画素位置P1の周囲における小領域の画素値の平均値を算出し、この平均値と小領域内の各画素の画素値の差との平方値の累積和を算出する。そして、算出された累積和が所定のしきい値よりも小さい場合には、その小領域はなだらかであるとし、所定のしきい値以上である場合にはその小領域はなだらかでないと判定する。
【0103】
また、内挿画素位置P1の周囲における小領域に対してDCT等の直交変換を施し、変換結果に含まれる高周波成分の含有量を求め、含有量が所定のしきい値よりも小さい場合には、その小領域はなだらかであるとし、所定のしきい値以上である場合にはその小領域はなだらかでないと判定する。
【0104】
このように、動ベクトルV12が適切なものか否かを判定し、動ベクトルV12が適切でない場合には、内挿する画素値の採用条件を設けることにより、適切な内挿処理を行うことができる。
【0105】
また、上記第2の実施形態のように、3以上のフレームから1の合成高解像度フレームFrGを得る場合において、内挿処理時に図15(c)に示すように領域A2と領域A5とが重なる領域A25の画素∴については、第1の内挿処理済みフレームNFr12における白三角の画素における画素値と、第2の内挿処理済みフレームNFr13における白逆三角の画素における画素値とを動ベクトルV12,V13の大きさに応じた重み付け加算を行うことにより算出しているが、動ベクトルV12,V13の大きさが小さい方のフレームFr2,Fr3における画素値(すなわち▲または▼画素の画素値)を画素∴の画素値としてもよい。
【0106】
例えば、動ベクトルV12の大きさ|V12|<動ベクトルV13の大きさ|V13|の場合には、フレームFr2の画素値を画素∴の画素値とし、|V12|>|V13|の場合には、フレームFr3の画素値を画素∴の画素値とすればよい。
【0107】
また、この場合、内挿画素位置P1に対応する小領域における動ベクトルV12,V13の大きさを単に比較するのみでなく、内挿画素位置P1の周囲の複数の内挿画素位置における動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に基づいて、画素∴の画素値を▲画素の画素値とするか▼画素の画素値とするかを決定してもよい。
【0108】
具体的には、内挿画素位置P1の座標を(x,y)、内挿画素位置P1の周囲の4点(以下画素P2〜P5とする)の座標を(x−1,y−1)、(x+1,y−1)、(x−1,y+1)、(x+1,y+1)とし、各画素P2〜P5における動ベクトルV12を求めたときのフレーム間画素差の2乗和をそれぞれ|V12|P2、|V12|P3、|V12|P4、|V12|P5、動ベクトルV13を求めたときのフレーム間画素差の2乗和をそれぞれ|V13|P2、|V13|P3、|V13|P4、|V13|P5とする。
【0109】
そして、|V12|P2+|V12|P3+|V12|P4+|V12|P5(=MSE′12とする)>|V13|P2+|V13|P3+|V13|P4+|V13|P5(=MSE′13とする)の場合には、フレームFr2の画素値を画素∴の画素値とする。逆に、|V12|P2+|V12|P3+|V12|P4+|V12|P5<|V13|P2+|V13|P3+|V13|P4+|V13|P5の場合には、フレームFr3の画素値を画素∴の画素値とする。また、(△×MSE′13+▽×MSE′12)/(MSE′13+MSE′12)を画素∴の画素値として用いてもよい。
【0110】
また、内挿画素位置P1に対応する小領域における動ベクトルV12,V13の大きさを比較するのみでなく、時間的に近いフレームFr2,Fr3の画素値を画素∴の画素値として用いてもよい。第2の実施形態においては、図22に示すように、フレームFr1に時間的に近いフレームはフレームFr2であるため、フレームFr2の黒三角の画素値を画素∴の画素値として用いてもよい。
【0111】
さらに、上記第1および第2の実施形態において、フレームFr1に対するフレームFr2,Fr3のシーンが切り替わったか否かを判定し、切り替わった場合には、フレームFr2,Fr3を合成高解像度フレームFrGの生成には使用しないようにしてもよい。なお、シーンが切り替わったか否かの判定は、フレームFr1とフレームFr2,Fr3との相関値を算出し、相関値が所定のしきい値以上である場合に、シーンが切り替わったと判定すればよい。ここで、相関値としては、フレーム間の画素値の差の平方値の累積和を用いればよい。
【0112】
ここで、シーンが切り替わったと判定された場合には、フレームFr1から合成高解像度フレームFrGを算出する処理を停止し、新たなフレームから別の合成高解像度フレームFrGを算出する処理を行うようにすればよい。
【図面の簡単な説明】
【図1】本発明の第1の実施形態による画像処理装置の構成を示す概略ブロック図
【図2】動ベクトルの算出を説明するための図
【図3】動ベクトルの方向に応じて分割されたフレームFr1を示す図
【図4】重み係数の特性を示すグラフ
【図5】フレームFr1,Fr2の画素配列を示す図
【図6】第1の高解像度フレームHFr1の画素配列を示す図
【図7】補間フレームFr1′,Fr2′の画素配列を示す図
【図8】第2の高解像度フレームHFr2の画素配列を示す図
【図9】合成高解像度フレームFrGの画素配列を示す図
【図10】第1の実施形態において行われる処理を示すフローチャート
【図11】本発明の第2の実施形態による画像処理装置の構成を示す概略ブロック図
【図12】動ベクトルの方向に応じて分割されたフレームFr1を示す図
【図13】フレームFr1,Fr3の画素配列を示す図
【図14】第2の内挿処理済みフレームNFr13の画素列を示す図
【図15】第2の実施形態における内挿処理を説明するための図
【図16】補間フレームFr1′,Fr2′,Fr3′の画素配列を示す図
【図17】乗算補間フレームFr2″,Fr3″および補間フレームFr1′の画素配列を示す図
【図18】第2の実施形態における合成高解像度フレームFrGの画素配列を示す図
【図19】第2の実施形態において行われる処理を示すフローチャート
【図20】画素値の採用条件を説明するための図
【図21】内挿画素位置の周囲における画素値の変動量に応じた画素値の採用条件を説明するための図
【図22】フレームFr1,Fr2,Fr3の時間軸上における位置関係を示す図
【符号の説明】
1,11 サンプリング手段
2,12 記憶手段
3,13 動ベクトル算出手段
4,14 動ベクトル処理手段
5,15 内挿処理手段
6,16 時間フィルタ処理手段
7,17 合成手段
【発明の属する技術分野】
本発明は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、これらのフレームよりも高解像度の1のフレームを作成する画像処理方法および装置並びに画像処理方法をコンピュータに実行させるためのプログラムに関するものである。
【0002】
【従来の技術】
近年のデジタルビデオカメラの普及により、動画像を1フレーム単位で扱うことが可能となっている。このような動画像の一部のフレームをプリント出力する際には、画質を向上させるためにフレームを高解像度にする必要がある。このため、動画からサンプリングした複数のフレームから、1の高解像度フレームを作成する方法が提案されている(特開2000−354244号公報)。この方法によれば、作成の対象となる複数のフレーム間の動ベクトルを求め、この動ベクトルに基づいて、複数のフレームから高解像度フレームを合成する際に、画素間に内挿する信号値を算出する方法である。とくに特開2000−354244号公報に記載された方法では、各フレームを複数のブロックに分割し、フレーム間で対応するブロックの直交座標係数を算出し、この直交座標係数における高周波の情報を他のブロックにおける低周波の情報と合成して内挿される画素値を算出しているため、必要な情報が低減されることなく、高画質の高解像度フレームを得ることができる。また、この方法においては、画素間距離よりもさらに細かい分解能にて動ベクトルを算出しているため、各フレーム間の動きを正確に補償してより高画質の高解像度フレームを得ることができる。
【0003】
【発明が解決しようとする課題】
しかしながら、上記特開2000−354244号公報に記載された方法では、フレームにノイズやアーチファクトが含まれると、作成された高解像度フレームにもノイズやアーチファクトが含まれてしまうため、高解像度フレームの画質が劣化してしまうという問題がある。
【0004】
本発明は上記事情に鑑みなされたものであり、動画像からサンプリングされた複数のフレームから、ノイズやアーチファクトを低減しつつも高画質の高解像度フレームを得ることを目的とする。
【0005】
【課題を解決するための手段】
本発明による第1の画像処理方法は、動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出し、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出し、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出することを特徴とするものである。
【0006】
本発明による第2の画像処理方法は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出し、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、
前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出し、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、
該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出することを特徴とするものである。
【0007】
なお、本発明による第1および第2の画像処理方法においては、第1の高解像度フレームの算出と、第2の高解像度フレームの算出とは並列に行ってもよく、直列に行ってもよい。
【0008】
「動ベクトル」は、基準フレームを構成する各小領域の時間の経過による移動方向および移動量を表すものである。なお、基準フレームの小領域は基準フレームを複数の領域に分割することにより得ることができるが、例えば基準フレームをそれに含まれる被写体毎の領域に分割することにより、小領域を得てもよい。
【0009】
「内挿処理」としては、例えば、上記特開平7−203442号公報に記載された方法を用いることができる。具体的には、基準フレームにおいて高解像度化により増加させるべき画素の画素値を、他のフレームにおける対応する画素の画素値を用いて補間する処理が挙げられる。
【0010】
なお、本発明における補間に用いられる演算としては、スプライン補間演算、線形補間演算等種々の演算方法を用いることができる。
【0011】
「時間フィルタ処理」とは、例えば、各補間演算済みフレームに含まれる高周波のノイズ(いわゆるモスキートノイズ)を低減するために、合成に用いる複数のフレームを加算してフレーム数により除算することにより、時間軸方向のローパスフィルタを構成して高周波のノイズを低減した1のフレームを得る処理である。
【0012】
また、フレームに含まれるノイズ等の影響により、動ベクトルを正確に求めることができない場合がある。このように正確でない動ベクトルに基づいて内挿処理を行ったのでは、内挿する画素位置における画素値を精度よく求めることができない。このため、動ベクトルの信頼度を判定し、判定結果に応じた内挿処理を行って前記第1の高解像フレームを算出することが好ましい。
【0013】
判定結果に応じた内挿処理としては、動ベクトルの信頼度が高い場合には例えば上記特開平7−203442号公報に記載された内挿処理を行い、動ベクトルの信頼度が低い場合には、内挿する画素の近傍の画素値を用いた補間演算等を行うことをいう。
【0014】
また、本発明による第2の画像処理方法においては、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出してもよい。
【0015】
本発明による第1の画像処理装置は、動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出する動ベクトル算出手段と、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出する内挿処理手段と、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とするものである。
【0016】
なお、本発明による第1の画像処理装置においては、前記内挿処理手段を、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記第1の高解像度フレームを算出する手段としてもよい。
【0017】
本発明による第2の画像処理装置は、動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出する動ベクトル算出手段と、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、さらに、前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出する内挿処理手段と、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、さらに、該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とするものである。
【0018】
なお、本発明による第2の画像処理装置においては、前記内挿処理手段を、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出する手段としてもよい。
【0019】
なお、本発明による第1および第2の画像処理方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【0020】
【発明の効果】
本発明による第1の画像処理方法および装置によれば、2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、基準フレームを構成する複数の小領域についての動ベクトルが算出される。そして、動ベクトルに基づいて、他のフレームが基準フレームに内挿処理されて、各フレームよりも解像度が高い第1の高解像度フレームが算出される。
【0021】
また、2つのフレームのそれぞれに対して補間演算を施すことにより得られた各フレームよりも解像度が高い2つの補間演算済みフレームが算出され、これらの補間演算済みフレームに対して、時間フィルタ処理が施されて第2の高解像度フレームが算出される。
【0022】
そして、動ベクトルの小数部の値に応じて、第1の高解像度フレームおよび第2の高解像度フレームが重み付け加算されて合成高解像度フレームが算出される。
【0023】
また、本発明による第1の画像処理方法および装置によれば、複数のフレームのうち基準となる1の基準フレームおよびこれ以外の複数の他のフレーム間において、基準フレームを構成する小領域についての複数の動ベクトルが算出される。そして、各動ベクトルに基づいて、複数の他のフレームが基準フレームに内挿処理されて、各フレームよりも解像度が高い複数の内挿処理済みフレームが算出される。そして、これら複数の内挿処理済みフレームが各動ベクトルの大きさの小数部の値に基づいて合成されて第1の高解像度フレームが算出される。
【0024】
一方、複数のフレームのそれぞれに対して補間演算を施すことにより得られた各フレームよりも解像度が高い複数の補間演算済みフレームが算出され、これら複数の補間演算済みフレームに対して、各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理が施されて第2の高解像度フレームが算出される。
【0025】
そして、第1の高解像度フレームおよび第2の高解像度フレームが加算平均されて合成高解像度フレームが算出される。
【0026】
ここで、動ベクトルの小数部は0から1の間の値をとるが、本発明において行われる内挿処理は、とくに動ベクトルが小数部を含んでいても、情報を欠落させることなく高解像度フレームを作成できるため、第1の高解像度フレームは動ベクトルの小数部の値に拘わらず高画質の画像を表すものとなる。しかしながら、各フレームに含まれるノイズやアーチファクトは何ら低減されていないため、第1の高解像度フレームには、各フレームに含まれるノイズやアーチファクトはそのまま含まれてしまっている。
【0027】
一方、時間フィルタ処理によりフレームに含まれるノイズやアーチファクトは低減されるが、1つのフレームのみを用いた補間処理では、高周波の情報を十分に再現することはできないため、第2の高解像度フレームは、画像がぼけてしまっている。
【0028】
本発明においては、動ベクトルの小数部の値に応じて、高画質ではあるがノイズやアーチファクトを含むの第1の高解像度フレームと、ノイズやアーチファクトは低減されているが多少画像がぼけている第2の高解像度フレームとを重み付け加算しているため、第1および第2の高解像度フレームの互いの欠点を補完した1の合成高解像度フレームを得ることができる。したがって、高周波情報の欠落を防止しつつもノイズやアーチファクトが低減された高画質の高解像度フレームを得ることができる。
【0029】
また、動ベクトルの信頼度の判定結果に応じた内挿処理を行うことにより、内挿する画素の画素値をより精度よく求めることができるため、合成高解像度フレームをさらに高画質なものとすることができる。
【0030】
【発明の実施の形態】
以下図面を参照して本発明の実施形態について説明する。図1は本発明の第1の実施形態による画像処理装置の構成を示す概略ブロック図である。図1に示すように、本発明の第1の実施の形態による画像処理装置は、動画像データM0から複数のフレームFr1,Fr2…Frnをサンプリングするサンプリング手段1と、サンプリングされた複数のフレームFr1,Fr2…Frnを一時的に記憶する記憶手段2と、合成処理の対象となるフレーム(第1の実施形態においては、フレームFr1,Fr2)について、基準となるフレームFr1と他のフレームFr2との間における動ベクトルV12を算出する動ベクトル算出手段3と、動ベクトルV12に基づいて、後述する重み係数β1,β2を算出する動ベクトル処理手段4と、フレームFr1,Fr2に対して内挿処理を施して第1の高解像度フレームHFr1を算出する内挿処理手段5と、フレームFr1,Fr2に対して補間演算および時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する時間フィルタ処理手段6と、第1の高解像度フレームHFr1に重み係数β1を、第2の高解像度フレームHFr2に重み係数β2を乗算してこれらを加算することにより合成高解像度フレームFrGを得る合成手段7とを備える。
【0031】
なお、第1の実施形態においては、合成高解像度フレームFrGは、フレームFr1,Fr2の2倍の解像度を有するものとする。
【0032】
動ベクトル算出手段3は、フレームFr1を例えば8×8画素の複数の小領域に分割し、フレームFr1の各小領域をフレームFr2上において平行移動し、各小領域とフレームFr2上における対応する小領域との相関値を算出する。具体的には、小領域内における画素値の差の累積和の逆数を相関値として算出する。そして、相関値が最も高く、すなわち小領域内における画素値の差の累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV12として算出する。
【0033】
例えば、図2に示すように、フレームFr1における小領域A1について、フレームFr2における小領域A1′との相関値が最も高い場合には、小領域A1をフレームFr2に投影して得られる小領域A1″を小領域A1′へ移動させるために必要な移動量および移動方向を動ベクトルV12として算出する。ここで、第1の実施形態においては、図3に示すように、フレームFr1における領域A2内の小領域についての動ベクトルV12がx方向にのみ成分を有し、領域A3内の小領域についての動ベクトルV12がy方向にのみ成分を有するものとする。また、領域A2内の小領域についての動ベクトルV12の大きさの小数部が0.5であり、領域A3内の小領域についての動ベクトルV12の大きさの小数部が0であるものとする。
【0034】
動ベクトル処理手段4は、動ベクトル算出手段3において算出されたフレームFr1上の各小領域における動ベクトルV12の大きさの小数部に応じて、後述するように合成手段7において第1の高解像度フレームHFr1および第2の高解像度フレームHFr2に乗算する重み係数β1,β2を算出する。
【0035】
ここで、算出される重み係数β1,β2の特性を図4(a),(b)にそれぞれ示す。図4(a)に示すように、第1の高解像度フレームHFr1に乗算する重み係数β1は、動ベクトルV12の小数部が0または1のときに0となり、動ベクトルV12の小数部が0.5のときに1となるように直線的に変化する。一方、図4(b)に示すように、第2の高解像度フレームHFr2に乗算する重み係数β2は、動ベクトルV12の小数部が0または1のときに1となり、動ベクトルV12の小数部が0.5のときに0となるように直線的に変化する。
【0036】
内挿処理手段5は、動ベクトルV12の方向に基づいて、フレームFr1,Fr2に対して内挿処理を施して第1の高解像度フレームHFr1を算出する。図5(a)、(b)はフレームFr1,Fr2の画素配列を示す図、図6はフレームFr1,Fr2から算出された第1の高解像度フレームHFr1の画素配列を示す図である。図5(a)、(b)に示すように、第1の実施形態においては、フレームFr1が黒丸の画素からなり、フレームFr2が黒三角の画素からなるものとする。
【0037】
第1の実施形態においては、図3に示すようにフレームFr1の領域A2内の各小領域についての動ベクトルV12はx方向にのみ値を有するため、領域A2においては、x方向について黒丸の画素の間にフレームFr2の黒三角の画素が内挿される。一方、y方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒三角の画素が並ぶ画素列については、内挿された黒三角の画素における画素値に基づいて補間演算が行われて、黒三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白三角で表す。
【0038】
一方、領域A3内の各小領域についての動ベクトルV12はy方向にのみ値を有するため、領域A3については、y方向について黒丸の画素の間にフレームFr2の黒三角の画素が内挿される。一方、x方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒三角の画素が並ぶ画素列については、内挿された黒三角の画素における画素値に基づいて補間演算が行われて、黒三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白三角で表す。
【0039】
これにより、図6に示すようにフレームFr1にフレームFr2が内挿されて第1の高解像度フレームHFr1が算出される。
【0040】
時間フィルタ処理手段6は、まず、フレームFr1,Fr2に対して補間演算を行い、補間フレームFr1′,Fr2′を算出する。図7(a),(b)は、補間フレームFr1′,Fr2′の画素配列を示す図である。補間フレームFr1′は、フレームFr1における黒丸の画素の画素値に基づいて、黒丸の画素間における画素値を補間演算により算出することにより得られるものであり、図7(a)においては、補間演算により算出された画素を白丸で示す。
【0041】
一方、補間フレームFr2′は、フレームFr2における黒三角の画素の画素値に基づいて、黒三角の画素間における画素値を補間演算により算出することにより得られるものであり、図7(b)においては、補間演算により算出された画素を白三角で示す。
【0042】
そして、時間フィルタ処理手段6は、補間フレームFr1′,Fr2′に対して時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する。ここで、時間フィルタ処理は、補間フレームFr1′,Fr2の相対応する画素の累積加算平均値を算出する処理である。図8は、第2の高解像度フレームHFr2の画素配列を示す図である。図8において黒四角画素の画素値は、補間フレームFr1′における黒丸画素の画素値と補間フレームFr2′における黒三角画素の画素値との平均値であり、白四角画素の画素値は、補間フレームFr1′における白丸画素の画素値と補間フレームFr2′における白三角画素の画素値との平均値である。
【0043】
合成手段7は、第1の高解像度フレームHFr1に重み係数β1を、第2の高解像度フレームHFr2に重み係数β2をそれぞれ乗算してこれらを加算することにより合成高解像度フレームFrGを算出する。具体的には、第1の高解像度フレームHFr1、第2の高解像度フレームHFr2および合成高解像度フレームFrGについて、各画素の画素値をそれぞれHFr1,HFr2,FrGとすると、下記の式(1)によりFrGを算出する。
FrG=β1×HFr1+β2×HFr2 (1)
【0044】
ここで、第1の実施形態においては、領域A2における動ベクトルV12の大きさの小数部が0.5であるため、領域A2においてはβ1=1、β2=0となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においてはβ1=0、β2=1となる。したがって、図9に示すように合成高解像度フレームFrGは、領域A2においては第1の高解像度フレームHFr1の画素のみからなり、領域A3においては第2の高解像度フレームHFr2の画素のみからなるものとなる。
【0045】
次いで、第1の実施の形態の動作について説明する。図10は第1の実施形態において行われる処理を示すフローチャートである。まず、サンプリング手段1に動画像データM0が入力され(ステップS1)、ここで動画像データM0のサンプリングが行われて複数のフレームFr1,Fr2,…Frnが取得され(ステップS2)、記憶手段2に記憶される(ステップS3)。続いて、処理の対象となる2つのフレームFr1,Fr2が記憶手段2から読み出される(ステップS4)。
【0046】
続いて、動ベクトル算出手段3において、基準となるフレームFr1と他のフレームFr2との間の動ベクトルV12が算出され(ステップS5)、動ベクトル処理手段4において、動ベクトルV12に基づいて重み係数β1,β2が算出される(ステップS6)。
【0047】
また、内挿処理手段5においては、フレームFr1,Fr2に対して内挿処理が施されて第1の高解像度フレームHFr1が算出される(ステップS7)。
【0048】
一方、時間フィルタ処理手段6においては、フレームFr1,Fr2に対して補間演算および時間フィルタ処理が施されて第2の高解像度フレームHFr2が算出される(ステップS8)。
【0049】
なお、ここでは、ステップS6、ステップS7、およびステップS8の順で処理を行っているが、処理の順序は任意であり、またこれらの処理を並列に行ってもよい。
【0050】
そして、合成手段7において、第1の高解像度フレームHFr1に重み係数β1が、第2の高解像度フレームHFr2に重み係数β2がそれぞれ乗算されて、さらにこれらが加算されて合成高解像度フレームFrGが算出され(ステップS9)、処理を終了する。
【0051】
ここで、動ベクトル算出手段3において算出される動ベクトルV12の小数部は0から1の間の値をとるが、内挿処理手段5において行われる内挿処理は、とくに動ベクトルV12が小数部を含んでいても、情報を欠落させることなく第1の高解像度フレームHFr1を作成できるため、第1の高解像度フレームHFr1は動ベクトルV12の小数部の値に拘わらず高画質の画像を表すものとなる。しかしながら、フレームFr1,Fr2に含まれるノイズやアーチファクトは何ら低減されないため、第1の高解像度フレームHFr1には、各フレームFr1,Fr2に含まれるノイズやアーチファクトはそのまま含まれている。
【0052】
一方、時間フィルタ処理手段6において行われる時間フィルタ処理により、各フレームFr1,Fr2に含まれるノイズやアーチファクトは低減されるが、1つのフレームのみを用いた補間処理では、高周波の情報を十分に再現することはできないため、第2の高解像度フレームHFr2は、画像がぼけてしまっている。
【0053】
本実施形態においては、動ベクトルV12の小数部の値に応じて、高画質ではあるがノイズやアーチファクトを含むの第1の高解像度フレームHFr1と、ノイズやアーチファクトは低減されているが多少画像がぼけている第2の高解像度フレームHFr2とを重み付け加算しているため、第1および第2の高解像度フレームHFr1,HFr2の互いの欠点を補完した1の合成高解像度フレームFrGを得ることができる。したがって、動画像データM0からサンプリングしたフレームFr1,Fr2から、高周波情報の欠落を防止しつつもノイズやアーチファクトが低減された高画質の高解像度フレームを得ることができる。
【0054】
次いで、本発明の第2の実施形態について説明する。図11は、本発明の第2の実施形態による画像処理装置の構成を示す概略ブロック図である。図11に示すように、本発明の第2の実施の形態による画像処理装置は、動画像データM0から複数のフレームFr1,Fr2…Frnをサンプリングするサンプリング手段11と、サンプリングされた複数のフレームFr1,Fr2…Frnを一時的に記憶する記憶手段12と、合成処理の対象となるフレーム(第2の実施形態においては、3つのフレームFr1,Fr2,Fr3)について、基準となるフレームFr1と他のフレームFr2,Fr3との間における動ベクトルV12,V13を算出する動ベクトル算出手段13と、動ベクトルV12,V13に基づいて、後述する重み係数β1(12),β1(13),β2(12),β2(13)を算出する動ベクトル処理手段14と、フレームFr1,Fr2,Fr3に対して内挿処理を施して第1の高解像度フレームHFr1を算出する内挿処理手段15と、フレームFr1,Fr2,Fr3に対して補間演算および時間フィルタ処理を施して第2の高解像度フレームHFr2を算出する時間フィルタ処理手段16と、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とを加算平均することにより合成高解像度フレームFrGを得る合成手段17とを備える。
【0055】
なお、第2の実施形態においては、第1の実施形態と同様に、合成高解像度フレームFrGは、フレームFr1,Fr2,Fr3の2倍の解像度を有するものとする。
【0056】
動ベクトル算出手段13は、第1の実施形態における動ベクトル算出手段3と同様に、フレームFr1を例えば8×8画素の複数の小領域に分割し、フレームFr1の各小領域をフレームFr2上において平行移動し、各小領域とフレームFr2上における対応する小領域との相関値を算出する。そして、相関値が最も高く、すなわち小領域内における画素値の差の累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV12として算出する。
【0057】
さらに動ベクトル算出手段13は、フレームFr1の各小領域をフレームFr3上において平行移動し、各小領域とフレームFr3上における対応する小領域との相関値を算出する。そして、相関値が最も高く、すなわち画素値の差の小領域内における累積和が最も小さくなったときの小領域の移動方向および移動量を、動ベクトルV13として算出する。
【0058】
ここで、第2の実施形態においては、図12(a)に示すように、フレームFr1における領域A2内の小領域についての動ベクトルV12がx方向にのみ成分を有し、領域A3内の小領域についての動ベクトルV12はy方向にのみ成分を有するものとする。また、領域A2内の小領域についての動ベクトルV12の大きさの小数部が0.5であり、領域A3内の小領域についての動ベクトルV12の大きさの小数部が0であるものとする。
【0059】
また、図12(b)に示すように、フレームFr1における領域A4内の小領域についての動ベクトルV13がx方向にのみ成分を有し、領域A5内の小領域についての動ベクトルV13はy方向にのみ成分を有するものとする。また、領域A4内の小領域についての動ベクトルV13の大きさの小数部が0であり、領域A5内の小領域についての動ベクトルV13の大きさの小数部が0.5であるものとする。
【0060】
動ベクトル処理手段14は、動ベクトル算出手段13において算出されたフレームFr1上の各小領域における動ベクトルV12,V13の大きさの小数部に応じて、後述するように内挿処理手段15において第1および第2の内挿処理済みフレームNFr1,NFr2を合成する際の重み係数β1(12),β1(13)、および時間フィルタ処理手段16において補間演算済みフレームを合成する際の重み係数β2(12),β2(13)を算出する。
【0061】
ここで、算出される重み係数β1(12),β1(13),β2(12),β2(13)の特性は図4(a),(b)に示す重み係数β1,β2と同一である。なお、重み係数β1(12)は、フレームFr1およびフレームFr2に基づいて算出された第1の内挿処理済みフレームNFr12に乗算する重み係数であり、重み係数β1(13)は、フレームFr1およびフレームFr3に基づいて算出された第2の内挿処理済みフレームNFr13に乗算する重み係数である。また、重み係数β2(12)は、フレームFr1およびフレームFr2に基づいて算出された補間フレームFr2′に乗算する重み係数であり、重み係数β2(13)は、フレームFr1およびフレームFr3に基づいて算出された補間フレームFr3′に乗算する重み係数である。
【0062】
内挿処理手段15は、まず、動ベクトルV12の方向に基づいて、フレームFr1,Fr2に対して内挿処理を施して第1の内挿処理済みフレームNFr12を算出する。第1の内挿処理済みフレームNFr12は、第1の実施形態において内挿処理手段15にて算出された第1の高解像度フレームHFr1に対応するものであり、その画素配列は図6に示すものとなる。
【0063】
また、内挿処理手段15は、動ベクトルV13の方向に基づいて、フレームFr1,Fr3に対して内挿処理を施して第2の内挿処理済みフレームNFr13を算出する。図13(a)、(b)はフレームFr1,Fr3の画素配列を示す図、図14はフレームFr1,Fr3から算出された第2の内挿処理済みフレームNFr13の画素配列を示す図、図15は第2の実施形態における内挿処理を説明するための図である。
【0064】
第2の実施形態においては、図13(a)、(b)に示すように、フレームFr1が黒丸の画素からなり、フレームFr3が黒逆三角の画素からなるものとする。第2の実施形態においては、図12に示すようにフレームFr1の領域A4内の各小領域についての動ベクトルV13はx方向にのみ値を有するため、領域A4においては、x方向について黒丸の画素の間にフレームFr3の黒逆三角の画素が内挿される。一方、y方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒逆三角の画素が並ぶ画素列については、内挿された黒逆三角の画素における画素値に基づいて補間演算が行われて、黒逆三角の画素の間に画素が内挿される。ここで、黒逆三角の画素の間に内挿された画素を白逆三角で表す。
【0065】
一方、領域A5内の各小領域についての動ベクトルV13はy方向にのみ値を有するため、領域A5については、y方向について黒丸の画素の間にフレームFr3の黒逆三角の画素が内挿される。一方、x方向については、黒丸の画素が並ぶ画素列については、黒丸の画素における画素値に基づいて補間演算が行われて、黒丸の画素の間に画素が内挿される。ここで、黒丸の画素の間に内挿された画素を白丸で表す。また、内挿により黒逆三角の画素が並ぶ画素列については、内挿された黒逆三角の画素における画素値に基づいて補間演算が行われて、黒逆三角の画素の間に画素が内挿される。ここで、黒三角の画素の間に内挿された画素を白逆三角で表す。
【0066】
これにより、図14に示すように画素が内挿されて第2の内挿処理済みフレームNFr13が算出される。
【0067】
続いて、内挿処理手段15は、第1の内挿処理済みフレームNFr12に重み係数β1(12)を、第2の内挿処理済みフレームNFr13に重み係数β1(13)を乗算してこれらを加算することにより第1の高解像度フレームHFr1を算出する。具体的には、第1の内挿処理済みフレームNFr12、第2の内挿処理済みフレームNFr13および第1の高解像度フレームHFr1について、各画素の画素値をそれぞれNFr12,NFr13,HFr1とすると、下記の式(2)によりHFr1を算出する。
HFr1=β1(12)×NFr12+β1(13)×NFr13 (2)
【0068】
ここで、第2の実施形態においては、領域A2内の各小領域についての動ベクトルV12の大きさの小数部が0.5であるため、領域A2においては、β1(12)=1となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においては、β1(12)=0となる。このため、第1の内挿処理済みフレームNFr12に重み係数β1(12)を乗算することにより得られるフレームの画素配列は、図15(a)に示すものとなる。
【0069】
一方、領域A4における動ベクトルV13の大きさの小数部が0であるため、領域A4においてはβ1(13)=0となる。また、領域A5における動ベクトルV13の大きさの小数部が0.5であるため、領域A5においては、β1(13)=0.5となる。このため、第2の内挿処理済みフレームNFr13に重み係数β1(13)を乗算することにより得られるフレームの画素配列は、図15(b)に示すものとなる。
【0070】
したがって、第1の高解像度フレームHFr1は、図15(c)に示すように領域A2および領域A4が重なる領域(A24とする)においては、第1の内挿処理済みフレームNFr12の画素のみからなり、領域A3および領域A5が重なる領域(A35とする)においては、第2の内挿処理済みフレームNFr13の画素のみからなり、さらに、領域A2および領域A5が重なる領域(A25とする)については、第1の内挿処理済みフレームNFr12に第2の内挿処理済みフレームNFr13を内挿することにより算出された画素値の画素からなるものとなる。
【0071】
ここで、領域A25において、第1および第2の内挿処理済みフレームNFr12,NFr13のフレームFr1,Fr2,Fr3の画素値をそのまま用いている画素については、フレームFr1,Fr2,Fr3の画素値をその画素における画素値として用いる。一方、領域A25において、第1および第2の内挿処理済みフレームNFr12,NFr13のフレームFr1,Fr2,Fr3の画素値をそのまま用いていない画素(図15(c)における∴)については、第1の内挿処理済みフレームNFr12における白三角の画素における画素値と、第2の内挿処理済みフレームNFr13における白逆三角の画素における画素値とを動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に応じた重み付け加算を行うことにより算出する。具体的には、下記の式(3)に示すように、動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に応じた重み付け加算を行う。なお、式(3)において、動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和をそれぞれ|V12|,|V13|とする。
(△×|V13|+▽×|V12|)/(|V13|+|V12|) (3)
【0072】
時間フィルタ手段16は、フレームFr1,Fr2,Fr3に対して補間演算を行い、補間フレームFr1′,Fr2′,Fr3′を算出する。図16は、補間フレームFr1′,Fr2′,Fr3′の画素配列を示す図である。補間フレームFr1′は、フレームFr1における黒丸の画素の画素値に基づいて、黒丸の画素間における画素値を補間演算により算出することにより得られるものであり、図16(a)においては、補間演算により算出された画素値を白丸で示す。
【0073】
また、補間フレームFr2′は、フレームFr2における黒三角の画素の画素値に基づいて、黒三角の画素間における画素値を補間演算により算出することにより得られるものであり、図16(b)においては、補間演算により算出された画素値を白三角で示す。なお、補間の前にフレームFr2をフレームFr1に対して平行移動し、フレームFr2の各画素をフレームFr1の各画素に対応付ける処理が行われる。
【0074】
また、補間フレームFr3′は、フレームFr3における黒逆三角の画素の画素値に基づいて、黒逆三角の画素間における画素値を補間演算により算出することにより得られるものであり、図16(c)においては、補間演算により算出された画素値を白逆三角で示す。なお、補間の前にフレームFr3をフレームFr1に対して平行移動し、フレームFr3の各画素をフレームFr1の各画素に対応付ける処理が行われる。
【0075】
続いて、時間フィルタ処理手段16においては、補間フレームFr2′に重み係数β2(12)を、補間フレームFr3′に重み係数β2(13)を乗算して乗算補間フレームFr2″,Fr3″を算出する。
【0076】
具体的には、補間フレームFr2′,Fr3′および乗算補間フレームFr2″,Fr3″について、各画素の画素値をそれぞれFr2′,Fr3′,Fr2″,Fr3″とすると、下記の式(4)、(5)によりFr2″,Fr3″を算出する。
Fr2″=β2(12)×Fr2′ (4)
Fr3″=β2(13)×Fr3′ (5)
【0077】
ここで、第2の実施形態においては、領域A2における動ベクトルV12の大きさの小数部が0.5であるため、領域A2においてはβ2(12)=0となる。また、領域A3における動ベクトルV12の大きさの小数部が0であるため、領域A3においてはβ2(12)=1となる。このため、補間フレームFr2′に重み係数β2(12)を乗算することにより得られる乗算補間フレームFr2″の画素配列は、図17(a)に示すものとなる。
【0078】
一方、領域A4における動ベクトルV13の大きさの小数部が0であるため、領域A4においてはβ2(13)=1となる。また、領域A5における動ベクトルV13の大きさの小数部が0.5であるため、領域A5においてはβ2(13)=0となる。このため、補間フレームFr3′に重み係数β2(13)を乗算することにより得られる乗算補間フレームFr3″の画素配列は、図17(b)に示すものとなる。
【0079】
そして、補間フレームFr1′および乗算補間フレームFr2″,Fr3″の相対応する画素同士の累積加算平均値を算出することにより、第2の高解像度フレームHFr2を算出する。なお、補間フレームFr1′については、乗算補間フレームFr2″,Fr3″の双方において画素値が0の画素に対応する画素については、累積加算平均値の算出には使用しないものとする。このため、補間フレームFr1′は、図17(c)に示すように、領域A2,A5が重なり合う領域A25は累積加算平均値の算出には使用されないこととなる。
【0080】
図18は、第2の高解像度フレームHFr2の画素配列を示す図である。図18に示すように第2の高解像度フレームHFr2における、領域A3と領域A5とが重なる領域A35の黒四角画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr2″における黒三角画素の画素値との平均値であり、白四角画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr2″における白三角画素の画素値との平均値である。
【0081】
また、領域A2と領域A4とが重なる領域A24の◆画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr3″における黒逆三角画素の画素値との平均値であり、◇画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr3″における白逆三角画素の画素値との平均値である。
【0082】
また、領域A3と領域A4とが重なる領域A34の★画素の画素値は、補間フレームFr1′における黒丸画素の画素値と乗算補間フレームFr2″における黒三角画素の画素値と乗算補間フレームFr3″における黒逆三角画素の画素値との平均値であり、☆画素の画素値は、補間フレームFr1′における白丸画素の画素値と乗算補間フレームFr2″における白三角画素の画素値と乗算補間フレームFr3″における白逆三角画素の画素値との平均値である。
【0083】
合成手段17は、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とにおける相対応する画素の画素値を加算平均することにより、合成高解像度フレームFrGを算出する。具体的には、第1の高解像度フレームHFr1、第2の高解像度フレームHFr2および合成高解像度フレームFrGについて、各画素の画素値をそれぞれHFr1,HFr2,FrGとすると、下記の式(6)によりFrGを算出する。
FrG=(HFr1+HFr2)/2 (6)
【0084】
次いで、第2の実施の形態の動作について説明する。図19は第2の実施形態において行われる処理を示すフローチャートである。まず、サンプリング手段11に動画像データM0が入力され(ステップS11)、ここで動画像データM0のサンプリングが行われて複数のフレームFr1,Fr2,…Frnが取得され(ステップS12)、記憶手段2に記憶される(ステップS13)。続いて、処理の対象となる3つのフレームFr1,Fr2,Fr3が記憶手段2から読み出される(ステップS14)。
【0085】
続いて、動ベクトル算出手段13において、基準となるフレームFr1と他のフレームFr2,Fr3との間の動ベクトルV12,V13が算出され(ステップS15)、動ベクトル処理手段14において、動ベクトルV12,V13に基づいて重み係数β1(12),β1(13),β2(12),β2(13)が算出される(ステップS16)。
【0086】
また、内挿処理手段15においては、フレームFr1,Fr2,Fr3に対して内挿処理が施されて第1の高解像度フレームHFr1が算出される(ステップS17)。
【0087】
一方、時間フィルタ処理手段16においては、フレームFr1,Fr2,Fr3に対して補間演算および時間フィルタ処理が施されて第2の高解像度フレームHFr2が算出される(ステップS18)。
【0088】
なお、ここでは、ステップS16、ステップS17、およびステップS18の順で処理を行っているが、処理の順序は任意であり、またこれらの処理を並列に行ってもよい。
【0089】
そして、合成手段17において、第1の高解像度フレームHFr1と第2の高解像度フレームHFr2とが加算平均されて合成高解像度フレームFrGが算出され(ステップS19)、処理を終了する。
【0090】
なお、上記第1および第2の実施形態において、動ベクトル算出手段3,13において算出された動ベクトルV12が全ての小領域において常に正しい移動方向および移動量を表すものではない。例えば、フレームFr1に含まれるある被写体(X1とする)と類似する被写体(Y1とする)がフレームFr2に存在し、被写体X1がフレームFr2には含まれない場合、フレームFr2に含まれる類似する被写体Y1に基づいて動ベクトルV12が算出されることとなる。このような場合、算出された動ベクトルV12に基づいて内挿処理を行うと、内挿される画素の画素値が適切なものとはならない。
【0091】
このため、算出された動ベクトルV12の信頼度を判定し、信頼度が低いと判定された場合には、内挿される画素の画素値を採用するか否かをさらに判定してもよい。
【0092】
ここで、動ベクトルV12の信頼度の判定は、動ベクトルV12の算出時に算出される相関値を所定のしきい値と比較し、相関値が所定のしきい値未満の場合には、その動ベクトルV12は信頼できないものとして、内挿される画素の画素値を採用するか否かを判定する。
【0093】
次いで、画素値の採用条件について説明する。図20は、画素値の採用条件を説明するための図である。なお、ここでは簡単のため、x方向のみの内挿処理について説明する。図20に示すように、フレームFr1における画素位置nおよび画素位置n+1の間の内挿画素位置P1にフレームFr2の対応する画素値を内挿する場合において、内挿する画素値が画素位置nの画素値Vnと画素位置n+1の画素値Vn+1との間にあるか否かを判定する。そして、画素値Vnと画素値Vn+1の間(図中矢印の範囲)にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0094】
一方、内挿する画素値が画素値Vnと画素値Vn+1との間にない場合には、内挿画素位置P1の画素値として、画素値Vnと画素値Vn+1を線形補間することにより算出された画素値を用いる。
【0095】
また、内挿画素位置P1の周囲における画素値の変動量に応じて内挿画素位置P1における画素値の採用条件を設けてもよい。図21は、内挿画素位置P1の周囲における画素値の変動量に応じた画素値の採用条件を説明するための図である。まず、図21(a)に示すように、画素位置nの周囲における微分値が正の値となり、画素位置n+1の周囲における微分値が負の値となった場合、内挿画素位置P1の画素値は、画素値Vn,Vn+1よりも値が大きいと推定される。このため、画素位置n,n+1の周囲における画素値の変動量に基づいて、内挿画素位置P1における画素値を推定し、内挿される画素値が推定された画素値Vpと画素値Vn,Vn+1の小さい方の画素値(ここでは画素値Vn)との間にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0096】
逆に、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の小さい方の画素値(ここでは画素値Vn)との間にない場合には、例えば推定された画素値Vpを内挿画素位置P1の画素値として採用する。
【0097】
なお、ここでは推定画素値Vpは、画素位置n−1,nの画素値Vn−1,Vnを結ぶ直線と内挿画素位置P1との交点の値および画素位置n+1,n+2の画素値Vn+1,Vn+2を結ぶ直線と内挿画素位置P1との交点の値のいずれか小さい方の値を用いる。
【0098】
一方、図21(b)に示すように、画素位置nの周囲における微分値が負の値となり、画素位置n+1の周囲における微分値が正の値となった場合、内挿画素位置P1の画素値は、画素値Vn,Vn+1よりも値が小さいと推定される。このため、画素位置n,n+1の周囲における画素値の変動量に基づいて、内挿画素位置P1における画素値を推定し、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の大きい方の画素値(ここでは画素値Vn+1)との間にある場合には、フレームFr2の対応する画素の画素値をそのまま内挿画素位置P1の画素値として採用する。
【0099】
逆に、内挿される画素値が、推定された画素値Vpと画素値Vn,Vn+1の大きい方の画素値(ここでは画素値Vn+1)との間にない場合には、例えば推定された画素値Vpを内挿画素位置P1の画素値として採用する。
【0100】
なお、ここでは推定画素値Vpは、画素位置n−1,nの画素値Vn−1,Vnを結ぶ直線と内挿画素位置P1との交点の値および画素位置n+1,n+2の画素値Vn+1,Vn+2を結ぶ直線と内挿画素位置P1との交点の値の大きい方の値を用いる。
【0101】
さらに、動ベクトルV12が適切でないと判定された場合に、画素位置n,n+1が画像上における例えば人物の肌のようになだらかに画素値が変化する部分にあるか否かを判定し、なだらかな部分にあると判定された場合において、さらに内挿画素位置P1に内挿される画素値がノイズのような高周波成分である場合には、内挿画素位置P1の画素値として、例えば上記図20および図21を用いて説明した方法により画素値を線形補間して、内挿画素位置P1の画素値を求める。
【0102】
ここで、なだらかさの判定は、フレームFr1における内挿画素位置P1の周囲における小領域の画素値の平均値を算出し、この平均値と小領域内の各画素の画素値の差との平方値の累積和を算出する。そして、算出された累積和が所定のしきい値よりも小さい場合には、その小領域はなだらかであるとし、所定のしきい値以上である場合にはその小領域はなだらかでないと判定する。
【0103】
また、内挿画素位置P1の周囲における小領域に対してDCT等の直交変換を施し、変換結果に含まれる高周波成分の含有量を求め、含有量が所定のしきい値よりも小さい場合には、その小領域はなだらかであるとし、所定のしきい値以上である場合にはその小領域はなだらかでないと判定する。
【0104】
このように、動ベクトルV12が適切なものか否かを判定し、動ベクトルV12が適切でない場合には、内挿する画素値の採用条件を設けることにより、適切な内挿処理を行うことができる。
【0105】
また、上記第2の実施形態のように、3以上のフレームから1の合成高解像度フレームFrGを得る場合において、内挿処理時に図15(c)に示すように領域A2と領域A5とが重なる領域A25の画素∴については、第1の内挿処理済みフレームNFr12における白三角の画素における画素値と、第2の内挿処理済みフレームNFr13における白逆三角の画素における画素値とを動ベクトルV12,V13の大きさに応じた重み付け加算を行うことにより算出しているが、動ベクトルV12,V13の大きさが小さい方のフレームFr2,Fr3における画素値(すなわち▲または▼画素の画素値)を画素∴の画素値としてもよい。
【0106】
例えば、動ベクトルV12の大きさ|V12|<動ベクトルV13の大きさ|V13|の場合には、フレームFr2の画素値を画素∴の画素値とし、|V12|>|V13|の場合には、フレームFr3の画素値を画素∴の画素値とすればよい。
【0107】
また、この場合、内挿画素位置P1に対応する小領域における動ベクトルV12,V13の大きさを単に比較するのみでなく、内挿画素位置P1の周囲の複数の内挿画素位置における動ベクトルV12,V13を求めたときのフレーム間画素差の2乗和に基づいて、画素∴の画素値を▲画素の画素値とするか▼画素の画素値とするかを決定してもよい。
【0108】
具体的には、内挿画素位置P1の座標を(x,y)、内挿画素位置P1の周囲の4点(以下画素P2〜P5とする)の座標を(x−1,y−1)、(x+1,y−1)、(x−1,y+1)、(x+1,y+1)とし、各画素P2〜P5における動ベクトルV12を求めたときのフレーム間画素差の2乗和をそれぞれ|V12|P2、|V12|P3、|V12|P4、|V12|P5、動ベクトルV13を求めたときのフレーム間画素差の2乗和をそれぞれ|V13|P2、|V13|P3、|V13|P4、|V13|P5とする。
【0109】
そして、|V12|P2+|V12|P3+|V12|P4+|V12|P5(=MSE′12とする)>|V13|P2+|V13|P3+|V13|P4+|V13|P5(=MSE′13とする)の場合には、フレームFr2の画素値を画素∴の画素値とする。逆に、|V12|P2+|V12|P3+|V12|P4+|V12|P5<|V13|P2+|V13|P3+|V13|P4+|V13|P5の場合には、フレームFr3の画素値を画素∴の画素値とする。また、(△×MSE′13+▽×MSE′12)/(MSE′13+MSE′12)を画素∴の画素値として用いてもよい。
【0110】
また、内挿画素位置P1に対応する小領域における動ベクトルV12,V13の大きさを比較するのみでなく、時間的に近いフレームFr2,Fr3の画素値を画素∴の画素値として用いてもよい。第2の実施形態においては、図22に示すように、フレームFr1に時間的に近いフレームはフレームFr2であるため、フレームFr2の黒三角の画素値を画素∴の画素値として用いてもよい。
【0111】
さらに、上記第1および第2の実施形態において、フレームFr1に対するフレームFr2,Fr3のシーンが切り替わったか否かを判定し、切り替わった場合には、フレームFr2,Fr3を合成高解像度フレームFrGの生成には使用しないようにしてもよい。なお、シーンが切り替わったか否かの判定は、フレームFr1とフレームFr2,Fr3との相関値を算出し、相関値が所定のしきい値以上である場合に、シーンが切り替わったと判定すればよい。ここで、相関値としては、フレーム間の画素値の差の平方値の累積和を用いればよい。
【0112】
ここで、シーンが切り替わったと判定された場合には、フレームFr1から合成高解像度フレームFrGを算出する処理を停止し、新たなフレームから別の合成高解像度フレームFrGを算出する処理を行うようにすればよい。
【図面の簡単な説明】
【図1】本発明の第1の実施形態による画像処理装置の構成を示す概略ブロック図
【図2】動ベクトルの算出を説明するための図
【図3】動ベクトルの方向に応じて分割されたフレームFr1を示す図
【図4】重み係数の特性を示すグラフ
【図5】フレームFr1,Fr2の画素配列を示す図
【図6】第1の高解像度フレームHFr1の画素配列を示す図
【図7】補間フレームFr1′,Fr2′の画素配列を示す図
【図8】第2の高解像度フレームHFr2の画素配列を示す図
【図9】合成高解像度フレームFrGの画素配列を示す図
【図10】第1の実施形態において行われる処理を示すフローチャート
【図11】本発明の第2の実施形態による画像処理装置の構成を示す概略ブロック図
【図12】動ベクトルの方向に応じて分割されたフレームFr1を示す図
【図13】フレームFr1,Fr3の画素配列を示す図
【図14】第2の内挿処理済みフレームNFr13の画素列を示す図
【図15】第2の実施形態における内挿処理を説明するための図
【図16】補間フレームFr1′,Fr2′,Fr3′の画素配列を示す図
【図17】乗算補間フレームFr2″,Fr3″および補間フレームFr1′の画素配列を示す図
【図18】第2の実施形態における合成高解像度フレームFrGの画素配列を示す図
【図19】第2の実施形態において行われる処理を示すフローチャート
【図20】画素値の採用条件を説明するための図
【図21】内挿画素位置の周囲における画素値の変動量に応じた画素値の採用条件を説明するための図
【図22】フレームFr1,Fr2,Fr3の時間軸上における位置関係を示す図
【符号の説明】
1,11 サンプリング手段
2,12 記憶手段
3,13 動ベクトル算出手段
4,14 動ベクトル処理手段
5,15 内挿処理手段
6,16 時間フィルタ処理手段
7,17 合成手段
Claims (12)
- 動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出し、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出し、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出することを特徴とする画像処理方法。 - 前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記第1の高解像度フレームを算出することを特徴とする請求項1記載の画像処理方法。
- 動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出し、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、
前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出し、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、
該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出し、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出することを特徴とする画像処理方法。 - 前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出することを特徴とする請求項3記載の画像処理方法。
- 動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出する動ベクトル算出手段と、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出する内挿処理手段と、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とする画像処理装置。 - 前記内挿処理手段は、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記第1の高解像度フレームを算出する手段であることを特徴とする請求項5記載の画像処理装置。
- 動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理装置において、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出する動ベクトル算出手段と、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出し、さらに、前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出する内挿処理手段と、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出し、さらに、該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出する時間フィルタ処理手段と、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出する合成手段とを備えたことを特徴とする画像処理装置。 - 前記内挿処理手段は、前記動ベクトルの信頼度を判定し、該判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出する手段であることを特徴とする請求項7記載の画像処理装置。
- 動画像をサンプリングすることにより得られた連続する2つフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法をコンピュータに実行させるためのプログラムにおいて、
前記2つのフレームのうち基準となる1の基準フレームおよび他のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての動ベクトルを算出する手順と、
前記動ベクトルに基づいて、前記他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い第1の高解像度フレームを算出する手順と、
前記2つのフレームのそれぞれに対して補間演算を施すことにより得られた前記各フレームよりも解像度が高い2つの補間演算済みフレームに対して、時間フィルタ処理を施すことにより第2の高解像度フレームを算出する手順と、
前記動ベクトルの大きさの小数部の値に応じて、前記第1および前記第2の高解像度フレームを重み付け加算して前記合成高解像度フレームを算出する手順とを有するプログラム。 - 前記動ベクトルの信頼度を判定する手順をさらに有し、
前記第1の高解像度フレームを算出する手順は、前記判定結果に応じた内挿処理を行って前記第1の高解像度フレームを算出する手順である請求項9記載のプログラム。 - 動画像をサンプリングすることにより得られた連続する複数のフレームを合成して、該各フレームよりも解像度が高い1の合成高解像度フレームを作成する画像処理方法をコンピュータに実行させるためのプログラムにおいて、
前記複数のフレームのうち基準となる1の基準フレームおよびこれ以外の他の複数のフレーム間において、該基準フレームを構成する複数の小領域のそれぞれについての複数の動ベクトルを算出する手順と、
前記各動ベクトルに基づいて、前記各他のフレームを前記基準フレームに内挿処理して、前記各フレームよりも解像度が高い複数の内挿処理済みフレームを算出する手順と、
前記各動ベクトルの大きさの小数部の値に基づいて前記複数の内挿処理済みフレームを合成して第1の高解像度フレームを算出する手順と、
前記複数のフレームのそれぞれに対して補間演算を施すことにより、前記各フレームよりも解像度が高い複数の補間演算済みフレームを算出する手順と、
該補間演算済みフレームに対して、前記各動ベクトルの大きさの小数部の値に基づいて時間フィルタ処理を施すことにより第2の高解像度フレームを算出する手順と、
前記第1および前記第2の高解像度フレームを加算平均して前記合成高解像度フレームを算出する手順とを有するプログラム。 - 前記動ベクトルの信頼度を判定する手順をさらに有し、
前記内挿処理済みフレームを算出する手順は、前記判定結果に応じた内挿処理を行って前記内挿処理済みフレームを算出する手順である請求項11記載のプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002283885A JP2004120603A (ja) | 2002-09-27 | 2002-09-27 | 画像処理方法および装置並びにプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002283885A JP2004120603A (ja) | 2002-09-27 | 2002-09-27 | 画像処理方法および装置並びにプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004120603A true JP2004120603A (ja) | 2004-04-15 |
Family
ID=32277625
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002283885A Withdrawn JP2004120603A (ja) | 2002-09-27 | 2002-09-27 | 画像処理方法および装置並びにプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004120603A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100727998B1 (ko) | 2005-04-14 | 2007-06-14 | 삼성전자주식회사 | 움직임 보상형 시간적 잡음 제거 방법 및 시스템 |
| KR100772405B1 (ko) | 2005-09-27 | 2007-11-01 | 삼성전자주식회사 | 전역 움직임 추정에 근거한 적응성 잡음 감쇄 방법 및 영상처리 시스템 |
-
2002
- 2002-09-27 JP JP2002283885A patent/JP2004120603A/ja not_active Withdrawn
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100727998B1 (ko) | 2005-04-14 | 2007-06-14 | 삼성전자주식회사 | 움직임 보상형 시간적 잡음 제거 방법 및 시스템 |
| KR100772405B1 (ko) | 2005-09-27 | 2007-11-01 | 삼성전자주식회사 | 전역 움직임 추정에 근거한 적응성 잡음 감쇄 방법 및 영상처리 시스템 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10404917B2 (en) | One-pass video stabilization | |
| US9055217B2 (en) | Image compositing apparatus, image compositing method and program recording device | |
| US20100067818A1 (en) | System and method for high quality image and video upscaling | |
| US20100123792A1 (en) | Image processing device, image processing method and program | |
| CN102113308B (zh) | 图像处理装置、图像处理方法以及集成电路 | |
| JP2003163894A (ja) | 適応動き補償型フレーム及び/又はフィールドレート変換装置及びその方法 | |
| US20080212687A1 (en) | High accurate subspace extension of phase correlation for global motion estimation | |
| KR101140953B1 (ko) | 영상 왜곡 보정 장치 및 방법 | |
| JP6254938B2 (ja) | 画像ノイズ除去装置、および画像ノイズ除去方法 | |
| JP2010093779A (ja) | 動き補償において周期的構造に対処する方法および装置 | |
| JP5081898B2 (ja) | 補間画像生成方法及びシステム | |
| KR20030059399A (ko) | 모자이크 영상 생성장치 및 방법과 모자이크 영상 기반동영상 재생방법 | |
| KR102003460B1 (ko) | 왜곡제거장치 및 방법 | |
| US20090079836A1 (en) | Image processing apparatus, method, and computer program product | |
| KR101517233B1 (ko) | 움직임 추정을 이용한 잡음 제거장치 | |
| US20110075948A1 (en) | Image processing apparatus, image processing method, and computer program | |
| JP2008091979A (ja) | 画像高画質化装置、及びその方法、並びに画像表示装置 | |
| JPH07505033A (ja) | ビデオ画像運動補償システムにおける非線形画像変換,例えばズーム及びパンを補償するための機械的方法 | |
| JP2013074571A (ja) | 画像処理装置および方法、プログラム、並びに記録媒体 | |
| JP2012109656A (ja) | 画像処理装置及び方法、並びに画像表示装置及び方法 | |
| JP4930304B2 (ja) | 画像処理装置、画像処理方法、プログラム、及び記録媒体 | |
| JP2004120603A (ja) | 画像処理方法および装置並びにプログラム | |
| CN113744277A (zh) | 一种基于局部路径优化的视频去抖方法及系统 | |
| CN101088281B (zh) | 学习装置和学习方法 | |
| WO2023174546A1 (en) | Method and image processor unit for processing image data |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060110 |