JP5890794B2 - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP5890794B2
JP5890794B2 JP2013038916A JP2013038916A JP5890794B2 JP 5890794 B2 JP5890794 B2 JP 5890794B2 JP 2013038916 A JP2013038916 A JP 2013038916A JP 2013038916 A JP2013038916 A JP 2013038916A JP 5890794 B2 JP5890794 B2 JP 5890794B2
Authority
JP
Japan
Prior art keywords
pixel
block
integer
reference frame
motion estimation
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.)
Expired - Fee Related
Application number
JP2013038916A
Other languages
English (en)
Other versions
JP2014167691A (ja
Inventor
井 一 松
井 一 松
村 周 央 野
村 周 央 野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013038916A priority Critical patent/JP5890794B2/ja
Priority to US13/973,722 priority patent/US20140241429A1/en
Publication of JP2014167691A publication Critical patent/JP2014167691A/ja
Application granted granted Critical
Publication of JP5890794B2 publication Critical patent/JP5890794B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)
  • Television Systems (AREA)

Description

本発明の実施形態は、画像処理装置に関する。
画像の解像度を向上させるために、複数フレームを参照して基準フレームにおける小数位置での画素値を推定する技術が知られている。この技術は超解像とも呼ばれ、動き推定および画像再構成の2つの処理から構成される。動き推定においては、基準フレームと参照フレームとの位置関係を正確に推定する必要がある。
仮に参照フレームから基準フレームに対して動き推定を行うと、対応する基準フレーム内の小数位置に偏りが生じ、生成される超解像画像の画質が劣化してしまうおそれがある。
また、参照フレームおよび基準フレームの両方において小数位置に補間画素を生成し、補間画素同士を比較しても、必ずしも高精度に動き推定を行えるとは限らない。補間画素を生成する際にアーティファクトが発生する場合があるためである。
特開2009−81734号公報
Park et al., "Super-Resolution Image Reconstruction: A Technical Overview." IEEE Signal Processing Magazine, pp.21-36, May 2003
高精度に動き推定を行うことができる画像処理装置を提供する。
実施形態によれば、基準フレームの第1の整数位置の画素と対応する、参照フレームの第2の整数位置の画素を検出する第1の動き推定部と、前記第2の整数位置の画素と対応する、前記基準フレームの前記第1の整数位置からの小数位置を検出し、前記小数位置および前記第2の整数位置にある画素の値を出力する第2の動き推定部と、を備えることを特徴とする画像処理装置が提供される。
第1の実施形態に係る解像度変換装置の概略構成を示すブロック図。 第1の実施形態に係る動き推定部300の概略構成を示すブロック図。 動き推定部300の処理動作の一例を示すフローチャート。 動き推定部300の処理動作を説明する図。 小数精度動き推定部2の内部構成の一例を示すブロック図。 図5の小数精度動き推定部2の処理動作を説明する図。 小数精度動き推定部2の内部構成の別の例を示すブロック図。 図7の小数精度動き推定部2の処理動作を説明する図。 第2の実施形態に係る動き推定部300の概略構成を示すブロック図。 図9の動き推定部、より具体的には、整数精度動き推定部1および小数精度動き推定部2の処理動作を説明する図。 バッファ4に蓄えられる情報を模式的に示す図。 選択部3の処理動作を説明する図。 選択部3の処理動作を説明する図。 選択部3の処理動作を説明する図。 第3の実施形態に係る動き推定部300の概略構成を示すブロック図。 整数精度動き推定部1の処理動作を説明する図。 バッファ4に蓄えられる情報を模式的に示す図。 選択部3の処理動作を説明する図。 選択部3の処理動作を説明する図。 選択部3の処理動作を説明する図。 第4の実施形態に係る解像度変換装置の概略構成を示すブロック図。 動き推定部300の整数精度動き推定部1による処理結果の一例を示す図。 バッファに蓄えられる情報を模式的に示す図。 第5の実施形態に係る解像度変換装置の概略構成を示すブロック図。 逆探索部700の処理動作を説明する図。
以下、実施形態について、図面を参照しながら具体的に説明する。
(第1の実施形態)
図1は、第1の実施形態に係る解像度変換装置の概略を示すブロック図である。この解像度変換装置は、入力映像信号の解像度を拡大して、出力映像信号を生成するものである。解像度変換装置は、フレームメモリ100と、仮拡大部200と、動き推定部300と、画像再構成部400とを備えている。
フレームメモリ100は入力映像信号における複数のフレームを一時的に蓄える。
仮拡大部200は、複数のフレームのうちの1つを基準フレームとして入力する。仮拡大部200は基準フレームを拡大して仮拡大フレームを生成し、これを画像再構成部400へ出力する。拡大の手法に特に制限はなく、例えばキュービックコンボリューション法を適用できる。
動き推定部300は、基準フレームと参照フレームを入力する。参照フレームは、基準フレームの前または後のフレームである。動き推定部300は基準フレームから参照フレームへ動き推定を行う。そして、基準フレームの各画素に対して、類似する参照フレームの画素の値R(b)と、当該参照フレームの画素の位置に対応する基準フレームの小数位置φとを、画像再構成部400へ出力する。
画像再構成部400は、参照フレームの画素の値R(b)と、小数位置φとに基づいて、仮拡大フレームの画素値を更新し、出力映像信号を構成する超解像適用フレームを生成する。より具体的には、参照フレームの画素値と、仮拡大フレームにおける画素値と、基準フレームの小数位置とに基づいて、高解像度な画素値を算出する。このようにして、仮拡大フレームに比べて鮮鋭感が向上した超解像適用フレームが生成される。
通常の映像信号は2次元に画素が並んだ映像を表すが、以下では簡略化のために、1次元に複数の画素が並んだ信号について説明する。そして、基準フレームおよび参照フレームの位置nにある画素値を、それぞれP(n),R(n)と表記する。また、基準フレームおよび参照フレームの位置nにある画素をそれぞれ、基準画素nおよび参照画素nとも表記する。
図2は、第1の実施形態に係る動き推定部300のブロック図である。動き推定部300は、整数精度動き推定部1と、小数精度動き推定部2とを備えている。動き推定部300は、基準フレームの任意の整数位置aに対応する参照フレームの整数位置bの画素値R(b)、および、参照フレームの整数位置bに対応する基準フレームの位置a+φを出力する。ここで、φは絶対値が1未満の小数である。
整数精度動き推定部1には、基準画素aの近傍Neighbor(a)にある画素値{P(v)|v∈Neighbor(a)}、および、参照画素aを中心とした所定の探索範囲SearchRange(a)にある画素値{R(v)|v∈SearchRange(a)}が入力される。そして、整数精度動き推定部1は、これら画素値どうしを比較して整数精度で動き推定を行い、基準画素aと対応する参照画素bを、探索範囲SearchRange(a)内で探索する。これにより、基準画素aと対応する参照画素bが得られる。基準画素aと参照画素bとの対応関係を示す「b−a」を「基準フレームから参照フレームへの動きベクトルMVbr」または単に「動きベクトルMVbr」と呼ぶことにする。
そして、整数精度動き推定部1は、探索範囲SearchRange(a)内の画素のうち、参照画素bの近傍Neighbor(b)にある画素値{R(v)|v∈Neighbor(b)}を、小数精度動き推定部2に出力する。 なお、上記の近傍Neighbor(a),Neighbor(b)とは、整数精度動き推定部1および小数精度動き推定部2による処理を行うための所望の範囲である。
小数精度動き推定部2には、画素値{P(v)|v∈Neighbor(a)}、および、画素値{R(v)|v∈Neighbor(b)}が入力される。そして、小数精度動き推定部2は、これら画素値どうしを比較して小数精度で動き推定を行い、参照画素bと対応する、基準フレームの位置a+φを検出する。この位置a+φは整数位置aおよび小数位置φから構成される。参照画素bと基準画素a+φとの対応関係を示す「a+φ−b」を「参照フレームから基準フレームへの動きベクトルMVrb」または単に「動きベクトルMVrb」と呼ぶ。
そして、小数精度動き推定部2は、基準画素aについて、対応する参照画素bにある画素値R(b)、および、参照画素bに対応する基準フレームの小数位置φを、図1の画像再構成部400へ出力する。
以上の処理を、基準フレームの各画素について行う。すなわち、基準フレームの画素ごとに、画素値R(b)および小数位置φが出力される。
図3は、動き推定部300の処理の一例を示すフローチャートである。また、図4は、動き推定部300の処理を説明する図である。図4では、基準画素aの近傍Neighbor(a)にある3つの画素、および、参照画素aを中心とした探索範囲SearchRange(a)にある7つの画素を、黒丸で模式的に描いている。以下、動き推定部300の処理について、説明する。
まず、整数精度動き推定部1は、基準フレームから参照フレームへ整数精度で動き推定を行って、基準画素aにおける画素パターンと最も類似した画素パターンを持つ、参照画素bを検出する(ステップS1)。これにより、基準フレームから参照フレームへの動きベクトルMVbrが得られる。このことが図4の実線矢印で示されている。
参照画素bを検出するために、例えば整数精度動き推定部1はブロックマッチングを行い、基準画素aと対応する、参照フレームの画素を探索する。すなわち、整数精度動き推定部1は、基準画素aを中心とし、その近傍にある複数の画素をブロックNに設定する。このブロックNは、整数精度動き推定部1に入力される、基準画素aの近傍Neighbor(a)にある画素の一部または全部から構成される。
また、整数精度動き推定部1は、参照フレームの探索範囲の整数位置x(xは変数であり、探索範囲SearchRange(a)のいずれかの位置)を中心とし、その近傍にある複数の画素をブロックMに設定する。このブロックMは、整数精度動き推定部1に入力される、参照フレームの整数位置aを中心とした探索範囲SearchRange(a)にある画素の一部から構成される。基準フレームに設定されるブロックは参照フレームに設定されるブロックと同じサイズにするのがよい。
そして、整数精度動き推定部1は、基準フレームのブロックNにおける各画素値と、参照フレームのブロックMにおける各画素値との差分絶対値和(Sum of Absolute Difference:SAD)を算出する。整数精度動き推定部1は、整数位置xを探索範囲SearchRange(a)で変化させながら差分絶対値和SAD(x)を算出する。そして、整数精度動き推定部1は、差分絶対値和SAD(x)が最小となる整数位置xを、基準画素aと対応する参照画素bとする。
なお、差分絶対値和における差分絶対値には、整数位置aからの距離に応じて重みづけされていてもよい。また、差分絶対値和に代えて差分二乗和を用いてもよい。後の説明で用いられる差分絶対値和についても同様である。
続いて、小数精度動き推定部2は、参照フレームから基準フレームへ小数精度で動き推定を行って、参照画素bにおける画素パターンと最も類似した画素パターンを持つ、基準フレームの位置a+φを検出する(ステップS2)。これにより、参照フレームからの動きベクトルMVrb(図4の破線矢印)、すなわち、参照フレームの整数位置bと対応する位置a+φが得られる。
以上のようにして、基準画素aと対応する参照画素bにある画素の値R(b)、および、小数位置φが生成される。
以下、小数精度動き推定部2による位置a+φの検出手法の具体例を説明する。
図5は、小数精度動き推定部2の部構成の一例を示すブロック図である。また、図6は、図5の小数精度動き推定部2の処理を説明する図である。図6では、小数位置φは、±2/3,±1/3,0のいずれかであり、3つの画素でブロックを形成する例を示している。ただしこれは一例にすぎず、より広範囲で小数位置φを探索してもよいし、より細かく小数位置φを探索してもよい。図5の小数精度動き推定部2は、ブロックマッチングにより小数位置φを検出するものであり、画素補間部21と、探索部22とを有する。
画素補間部21は、基準フレームにおいて、整数位置a近傍の小数位置に補間画素を生成する。補間処理の種類に特に制限はなく、線形補間法やキュービックコンボリューション法等を用いてもよいし、画素パターンに応じた補間フィルタを用いて補間を行ってもよい。図6において、黒丸は整数位置にある画素を示しており、白抜き四角は画素補間部21により生成された小数位置の画素を示している。
探索部22は、ブロックマッチングを行って、参照画素bの画素パターンと最も類似する画素パターンを持つ、基準フレームの位置を探索する。より具体的には、参照画素bを中心とするブロックMの各画素と、基準フレームの整数位置a+小数位置δ(δは変数であり、例えば±2/3,±1/3,0のいずれか)にある画素を中心とするブロックN(δ)の各画素との差分絶対値和SAD(δ)を算出する。探索部22は、小数位置δの値を変化させながら差分絶対値和SAD(δ)を算出し、これが最小となる小数位置δを小数位置φとする。
図6(a)はδ=−2/3におけるブロックN(−2/3)を示している。基準フレームの位置a−2/3にある画素を中心とし、位置a−5/3,a+1/3にある画素と合わせてブロックN(−2/3)が形成される。これら基準フレームの各画素は、画素補間部21により生成されたものである。なお、ブロックMはδの値に関わらず一定である。
そして、探索部22は、参照フレームの位置b−1,b,b+1にある各画素と、基準フレームの位置a−5/3,a−2/3,a+1/3にある各画素と、の差分絶対値和SAD(−2/3)を算出する。
以下同様にして、探索部22は、図6(b)〜(e)に示すように、差分絶対値和SAD(−1/3),SAD(0),SAD(1/3),SAD(2/3)を算出する。そして、探索部22は、差分絶対値和SADが最小となる小数位置δを、基準フレームの小数位置φとする。
図7は、小数精度動き推定部2の他の例を示すブロック図である。また、図8は、図7の小数精度動き推定部2の処理を説明する図である。図7の小数精度動き推定部2は、関数フィッティングにより小数位置φを検出するものであり、コスト算出部23と、フィッティング部24と、最小値検出部25とを有する。
コスト算出部23は、参照画素bにおける画素パターンと、基準画素aの近傍の各整数位置y(yは変数であり、整数位置aの近傍Neighbor(a)の整数位置)における画素パターンとの相違度を示すコストCST(y)を算出する。コストが低いほど両者は類似している。コスト(y)は、例えば参照画素bを中心とする複数画素から形成されるブロックの各画素と、基準フレームの画素yを中心とする複数画素から形成されるブロックの各画素との差分絶対値和である。図8には、y=a,a±1,a±2として、整数位置yとコストCST(y)との関係の一例がプロットされている。
フィッティング部24は、整数位置yとコストCST(y)との関係を予め定めた関数でフィッティングする。フィッティングする関数は、2次関数等でもよいし、図8に示すように2本の1次関数でもよい。
最小値検出部25は、基準フレームの整数位置aの近傍で、フィッティングされた関数が最小となる位置を検出し、この位置を参照フレームの整数位置bと対応する基準フレームの小数位置φとする。この場合、最小値検出部25は任意の精度で小数位置φを検出できる。図8では、2本の1次関数の交点を最小位置φとしている。
その他、小数位置φを検出する手法には種々の変形例が考えられる。例えば、基準フレームおよび参照フレームをフーリエ変換し、その位相特性の相関関係に基づいて小数位置φを検出する位相限定相関法を用いてもよい。
以上に説明した図3のステップS1,S2の処理を、基準フレームの全ての整数位置について行う。そして、動き推定部300により生成された小数位置φおよび画素値R(b)は、図1の画像再構成部400の高解像度化処理に用いられる。
このように、第1の実施形態では、まず、基準画素aと対応する、参照画素bを検出する。次いで、検出された参照画素bと対応する、基準フレームの小数位置φを検出する。よって、1つの整数位置aに対して、近傍の位置a+φと対応する、参照フレームの画素値R(b)が得られる。したがって、基準フレームにおいて対応点が偏るのを抑制できる。また、参照フレームに対して補間を適用しないため、マッチングの精度を向上させることができる。結果として、高品位に解像度変換を行うことができる。
(第2の実施形態)
第1の実施形態は、画素単位で動き推定を行うものであった。これに対し、第2の実施形態は、複数の画素を含むブロック単位で動き推定を行うものである。以下では、基準フレームおよび参照フレームのブロック位置Nにある画素をそれぞれ、基準ブロックNおよび参照ブロックNと表記する。
図9は、第2の実施形態に係る動き推定部300の概略を示すブロック図である。動き推定部300は、整数精度動き推定部1と、小数精度動き推定部2と、選択部3と、バッファ4とを備えている。
整数精度動き推定部1には、基準ブロックAの近傍Neighbor(A)にある画素値{P(v)|v∈Neighbor(A)}、および、参照ブロックAを中心とした所定の探索範囲SearchRange(A)にある画素値{R(v)|v∈SearchRange(A)}が入力される。そして、整数精度動き推定部1は、これらブロックどうしを比較して整数精度で動き推定を行い、基準ブロックAにあるブロックと対応する参照ブロックを、探索範囲SearchRange(A)内で探索する。
これにより、基準ブロックAと対応する参照ブロックBが得られる。基準ブロックAと、参照ブロックBとの対応関係を示す「B−A」を「基準フレームから参照フレームへの動きベクトルMVbr」または単に「動きベクトルMVbr」と呼ぶことにする。動きベクトルMVbrはバッファ4に蓄えられる。そして、整数精度動き推定部1は、探索範囲SearchRange(A)の画素のうち、参照ブロックBの近傍にある画素値{R(v)|v∈Neighbor(B)}を、小数精度動き推定部2に出力する。なお、近傍Neighbor(A),Neighbor(B)とは、整数精度動き推定部1および小数精度動き推定部2による処理を行うための所望の範囲である。
小数精度動き推定部2には、画素値{P(v)|v∈Neighbor(A)}、および、画素値{R(v)|v∈Neighbor(B)}が入力される。そして、小数精度動き推定部2は、これら画素値どうしを比較して小数精度で動き推定を行い、参照ブロックBと対応する、基準フレームの位置A+φを検出する。この位置A+φは、整数ブロック位置Aおよび小数位置φから構成される。参照ブロックBと、位置A+φとの対応関係を示す「A+φ−B」を「参照フレームから基準フレームへの動きベクトルMVrb」または単に「動きベクトルMVrb」と呼ぶ。
そして、小数精度動き推定部2は、基準ブロックAと対応する参照ブロックBの近傍Neighbor(B)にある画素値{R(v)|v∈Neighbor(B)}、および、参照ブロックBに対応する基準フレームの小数位置φを出力する。これらの値は選択部3を介してバッファ4に蓄えられる。
ここで、ブロックAに対応する参照ブロックBが検出されているが、あくまでブロック単位の対応にすぎない。よって、ブロックAの各画素がブロックBの各画素と対応していない可能性もある。
そこで、選択部3は、改めて、基準フレームの画素ごとに、対応する参照フレームの画素を探索する。選択部3は、一定の遅延の後にバッファ4に蓄えられた情報を用いて、1つの処理対象ブロックA0に含まれる各画素aiに対して、基準フレームの位置ai+φ(j)における画素パターンと、参照フレームの整数位置b(j)=ai+B(j)−A(j)における画素パターンとの類似度が最も高くなるjを選択し、ci=b(j),ψi=φ(j)を決定する。最終的には、選択部3は、基準フレームの各画素について、対応する参照フレームの画素値R(c)と、当該画素と対応する基準フレームの小数位置ψとを出力する。
映像信号が一次元である場合、変数jとして、整数ブロック位置A0(j=0、A(0)とも表記)、整数ブロック位置A0の左(j=−1、A(−1)とも表記)および右(j=1、A(1)とも表記)の3つが存在する。
図10は、図9の動き推定部300の処理を説明する図である。同図では、基準フレームおよび参照フレームにおける各整数位置にある画素を黒丸で示している。そして、3画素で1つのブロックを構成している例を示している。
同図の例では、3つの画素a3〜a5により構成される基準ブロックA0(処理対象ブロック)は、3つの画素b2〜b4により構成される参照ブロックB0と対応している。ブロックA0とブロックB0との対応関係は動きベクトルMVbr0(=B0−A0)で表される。同様に、基準ブロックA(−1)と参照ブロックB(−1)とが対応しており、基準ブロックA(+1)と参照ブロックB(+1)とが対応している。このような対応関係は整数精度動き推定部1により判定される。
さらに、図10の例では、参照ブロックB0と対応する基準フレームの小数位置φ0は1/3である。同様に、参照ブロックB(−1)と対応する基準フレームの小数位置φ(−1)は−1/3であり、参照ブロックB(+1)と対応する基準フレームの小数位置φ(+1)は2/3である。このような小数位置は小数精度動き推定部2により検出される。検出手法は第1の実施形態とほぼ同様であるため、説明を省略する。
図11は、バッファ4に蓄えられる情報を模式的に示す図である。選択部3が基準ブロックA0の各画素a3〜a5について処理するために、バッファ4は少なくとも図11に示すような情報を一時的に記憶する。すなわち、バッファ4は、ブロックA0およびその周囲のブロックA(−1),A(+1)について、対応する小数位置φ、動きベクトルMVbrおよび参照ブロックBの近傍の画素値{R(v)|v∈Neighbor(B)}を記憶する。
図11に示す情報に基づいて、選択部3は、ブロックA0の画素ごとに、ブロックA(j)のいずれかについての、動きベクトルMVbr,MVrbを選択する。そして、動きベクトルMVrbに応じて定まる小数位置ψと、各画素の位置および動きベクトルMVbrに応じて定まる参照フレームの画素値R(c)とを出力する。以下、具体的な選択手法を説明する。
図12〜図14は、選択部3の処理を説明する図であり、画素a3と対応する参照フレームの画素を探索する様子を示している。図12〜図14は順にj=−1,0,+1とそれぞれ対応している。
選択部3は、処理対象ブロックA0に含まれる各画素ai(本例では、i=3〜5)に対して、基準フレームの位置ai+φjにおける画素パターンと、参照フレームの整数位置b(j)=ai+B(j)−A(j)における画素パターンとの類似度を算出する。一例として、類似度には差分絶対値和SADを用いることができる。
まず、j=−1である図12について説明する。選択部3は、処理対象ブロックA0に含まれる画素a3に対して、基準フレームの位置a3+φ(−1)における画素パターンと、参照フレームの整数位置b(−1)=a3+B(−1)−A(−1)における画素パターンとの類似度SAD(−1)を算出する。
具体的には、選択部3は、基準フレームの位置a3+φ(−1)=(a3−1/3)の位置に画素を補間処理により生成する。また、ブロックマッチングを行うために、選択部3は、位置(a3−1/3)の周囲の位置(a3−4/3),(a3+2/3)にも画素を補間処理により生成する。そして、生成された3画素が小数精度ブロックに設定される。
一方、画素a3を起点とすると、参照フレームの整数位置b(−1)は、バッファ4に蓄えられている動きベクトルMVbr(−1)により示される、整数位置b4である。よって、整数位置b3〜b5にある3画素が参照ブロックに設定される。
そして、選択部3は、小数精度ブロックの各画素と、参照ブロックの各画素と、の差分絶対値和SAD(−1)を算出する。
以下同様にして、図13および図14に示すように、選択部3は差分絶対値和SAD(0),SAD(+1)を算出する。そして、選択部3はSAD(j)(j=−1〜1)を最小とするjを決定する。仮にSAD(−1)が最小だったとすると、選択部3は画素b4の値R(b4)と、対応する小数位置φ(−1)=−1/3を出力する。
このように、第2の実施形態では、まずブロック単位で対応ブロックを探索する。そのため、動き推定部300の処理負荷を軽減できる。続いて、画素単位で対応画素を探索する。そのため、探索精度の低下を抑制できる。
(第3の実施形態)
第2の実施形態は、ブロック単位で整数精度動き精度および小数精度動き推定を行った後に、画素単位で処理を行うものであった。これに対し、第3の実施形態は、ブロック単位で整数精度動き推定を行った後に、画素単位で処理を行うものである。
図15は、第3の実施形態に係る動き推定部300の概略を示すブロック図である。以下、第2の実施形態との相違点を中心に説明する。動き推定部300では、整数精度動き推定部1の処理結果を、選択部3を介してバッファ4に蓄える。そして、一定の遅延の後、選択部3は、基準フレームの各整数ブロック位置と対応する参照フレームの画素位置cの近傍Neighbor(c)にある画素値{R(v)|v∈Neighbor(c)}を小数精度動き推定部2に出力する。
図16は、整数精度動き推定部1の処理を説明する図である。整数精度動き推定部1は、第2の実施形態と同様にして、基準ブロックAと対応する参照ブロックBを探索する。そして、探索範囲SearchRange(A)の画素のうち、参照ブロックBの近傍にある画素値{R(v)|v∈Neighbor(B)}と、動きベクトルMVbrとを、選択部3を介して、バッファ4に一時的に蓄える。
例えば、整数精度動き推定部1は、ブロックマッチングを行って、基準ブロックA0と対応する参照ブロックB0を探索する。両ブロック間の関係を示す動きベクトルMVbr0、および、ブロックB0の近傍にある画素値{R(v)|v∈Neighbor(B0)}は、バッファ4に蓄えられる。整数精度動き推定部1は、ブロックA0の周囲にあるブロックA(−1),A(+1)についても、同様の処理を行う。
図17は、バッファ4に蓄えられる情報を模式的に示す図である。バッファ4は、選択部3がブロックA0の各画素について処理するために、少なくとも図17に示すような情報を一時的に記憶する。すなわち、バッファ4は、ブロックA0およびその周囲のブロックA(−1),A(+1)について、動きベクトルMVbrおよび参照ブロックBの近傍の画素値{R(v)|v∈Neighbor(B)}を記憶する。
図16に示すように、整数精度動き推定部1により、ブロックAとしては、対応する参照ブロックBが検出されているが、あくまでブロック単位の処理にすぎない。よって、例えばブロックAの画素a4がブロックBの画素b4と対応していない可能性もある。そこで、選択部3は、改めて、基準フレームの画素ごとに、対応する参照フレームの画素を探索する。
図18〜図20は、選択部3の処理を説明する図である。選択部3は、基準ブロックA0に含まれる各整数位置aiにおける画素パターンと、参照フレームの整数位置b(j)=ai+B(j)−A(j)における画素パターンとの類似度が最も高くなるjを選択し、基準フレームの整数位置aiにある画素と対応する、参照フレームの画素を特定する。
まず、j=−1である図18について説明する。図18は、ブロックA0の画素の1つである画素a5と対応する参照フレームの画素を探索する様子を示している。選択部3は、基準フレームの画素a5を中心とする3画素を基準ブロックに設定する。また、バッファに蓄えられている情報を参照すると、b(−1)=b4である。よって、選択部3は、参照フレームの画素b4を中心とする3画素を参照ブロックに設定する。そして、選択部3は、基準ブロックの各画素と、参照ブロックの各画素との差分絶対値和SAD(−1)を算出する。
以下同様にして、図19および図20に示すように、選択部3は、差分絶対値和SAD(0),SAD(+1)を算出する。そして、選択部3はSAD(j)(j=−1〜1)を最小とするjを決定する。仮にSAD(−1)が最小だったとすると、選択部3は参照フレームの画素b4の近傍Neighbor(b4)にある画素値{R(v)|v∈Neighbor(b4)}を小数精度動き推定部2に出力する。小数精度動き推定部2の処理動作は第1の実施形態と同様である。
このように、第3の実施形態では、ブロック単位で整数精度動き推定を行うため、動き推定部300の処理負荷を軽減できる。
(第4の実施形態)
第4の実施形態は、さらに競合判定部500を備える解像度変換装置に関する。なお、以下で「競合」とは、整数精度動き推定の結果、基準フレームの複数の整数位置が、参照フレームの1つの整数位置に対応することをいう。
図21は、第4の実施形態に係る解像度変換装置の概略を示すブロック図である。以下、上述した実施形態との相違点を中心に説明する。この解像度変換装置は、さらに競合判定部500およびバッファ600を備えている。
動き推定部300は、第1〜第3の実施形態の動き推定部を適用できる。ただし、第4の実施形態での動き推定部300は、画素値R(b)および小数位置φに加え、基準フレームの各画素位置aと対応する参照フレームの整数位置b、および、基準フレームの位置a+φにおける画素パターンと参照フレームの整数位置bにおける画素パターンとの類似度S(b,a,φ)を、競合判定部500を介してバッファ600に蓄える。類似度S(b,a,φ)は、例えば第1の実施形態で説明した、差分絶対値SADの最小値や、コストCST(y)の最小値等に基づいて定めることができる。なお、ここでは値が大きいほど類似しているものとする。
図22は、動き推定部300の整数精度動き推定部による処理結果の一例を示す図である。基準フレームの整数位置a0,a1,a2は、参照フレームのb1,b2,b2とそれぞれ対応するものとする。
図23は、バッファ600に蓄えられる情報を模式的に示す図である。バッファ600は、参照フレームの整数位置bをアドレスとし、各参照フレームの整数位置bに対応すると判定された基準フレームの整数位置aと、その類似度S(b,a,φ)を関連付けて記憶する。参照フレームの1つの位置に対して、基準フレームの複数の位置が対応する場合、バッファ600は基準フレームの複数の位置およびその類似度S(b,a,φ)をすべて記憶する。なお、図23には示していないが、画素値R(b)および小数位置φも合わせてバッファに蓄えておく。
例えば、図22では、参照フレームの整数位置b2には、基準フレームの整数位置a1,a2の2つが対応している。そのため、図23に示すように、整数位置b2は、整数位置a1およびその類似度S(b2,a2,φ2)と、整数位置a2およびその類似度S(b2,a1,φ1)とが記憶されている。
そして、競合判定部500は、参照フレームの1つの整数位置bに、基準フレームの複数の整数位置が対応している場合には、類似度が最も大きい整数位置を有効とし、他の整数位置を無効とする。すなわち、競合判定部500は、画素値R(b),小数位置φが有効か無効かを示すフラグFlgを付加して、画像再構成部400に出力する。
図23の例において、仮に類似度S(b2,a1,φ1)が類似度S(b2,a2,φ2)より大きい場合、競合判定部500は、整数位置a1については、有効であることを示す値にフラグFlgを設定するとともに画素値R(b2),φ2を出力する。一方、整数位置a2については、無効であることを示す値にフラグFlgを設定するとともに画素値R(b2),φ1を出力する。
あるいは、競合判定部500は、参照フレームの1つの整数位置bに、基準フレームの複数の整数位置aが対応している場合、すべての整数位置aについて、無効であることを示す値に設定されたフラグFlgを出力するようにしてもよい。
なお、競合判定部500は、ある一定の遅延の後にバッファに情報が蓄えられてから、競合判定の処理を行う。一定の遅延とは、例えば基準フレームのすべての整数位置に対して整数精度動き推定が完了するまでの時間でもよいし、探索範囲が重なるような整数位置に対して整数精度動き推定が完了するまでの時間としてもよい。
このように、第4の実施形態では、競合判定を行って、参照フレームの1つの整数位置には、基準フレームの1つ以下の整数位置のみが対応するようにする。競合が発生すると、動き推定が誤っていて超解像処理後の出力映像信号にアーティファクトが生じる可能性があるが、本実施形態では競合判定を行うため、このようなアーティファクトを軽減し、画質を向上できる。
(第5の実施形態)
第5の実施形態は、逆探索を行って、整数精度動き推定の結果の妥当性を評価するものである。
図24は、第5の実施形態に係る解像度変換装置の概略を示すブロック図である。以下、上述した実施形態との相違点を中心に説明する。この解像度変換装置は、さらに逆探索部700を備えている。
動き推定部300は、第1〜第3の実施形態の動き推定部を適用できる。ただし、第5の実施形態での動き推定部300は、小数位置φおよび整数位置bの周囲Neighbor(b)にある画素値{R(v)|v∈Neighbor(b)}を、逆探索部700に出力する。また、逆探索部700は画素値{P(v)|v∈Neighbor(a)}をフレームメモリ100から取り出す。
例えば、基準フレームから参照フレームへ整数精度動き推定を行った結果、基準フレームの整数位置a0が参照フレームの整数位置b0と対応する、という結果が得られたとする。この結果は必ずしも正しいとは限らない。
よって、逆探索部700は、参照フレームから基準フレームへ逆方向に整数精度動き推定を行って、参照フレームの整数位置b0が基準フレームの整数位置a0と対応するか否かを判定する。より具体的には、逆探索部700は、参照フレームの整数位置b0における画素パターンと最も類似する画素パターンを持つ基準フレームの位置dを探索する。そして、位置dと整数位置a0が一致する場合に、逆探索部700は参照フレームの整数位置b0が基準フレームの整数位置a0と対応すると判断する。
対応していると判定された場合、逆探索部700は、基準フレームの画素a0について、対応する画素の値R(b)と小数位置φに、これらが有効であることを示す値に設定されたフラグFlgを付加して、画像再構成部400へ出力する。
一方、対応していないと判定された場合、整数精度動き探索が誤っている可能性がある。よって、逆探索部700は、基準フレームの画素a0について、対応する画素値R(b)と小数位置φに、これらが無効であることを示す値に設定されたフラグFlgを付加して、画像再構成部400へ出力する。
図25は、逆探索部700の処理を説明する図である。同図では、整数精度動き推定により、基準フレームの整数位置a2は、参照フレームの整数位置b1と対応すると判定されている。さらに、小数精度動き推定により、参照フレームの整数位置b1は、基準フレームの位置a2+φ2に対応すると判定されている。
このとき、逆探索部700は、参照フレームの整数位置b1と対応する基準フレームの整数位置を探索する、逆探索を行う。逆探索の手法としては、例えば第1の実施形態における整数精度動き推定部1による処理と同様に、ブロックマッチングを用いることができる。
ここで基準フレームの全整数位置をブロックマッチングの対象としてもよいが、ブロックマッチングの対象とする基準フレームの整数位置は、位置a2+φ2の近傍、例えば距離が1以上2未満である位置とするのがよい。図25の例では、整数位置a1,a4を対象とする。距離が遠い(2以上)整数位置a0,a5などを対象としない理由は、多くの場合、位置a2+φ2から離れるほど、参照フレームの整数位置b1の画素パターンとの差異は大きくなると考えられるためである。また、距離が近すぎる(1未満)整数位置a3を対象としない理由は、参照フレームの整数位置b1における画素パターンが基準フレームの整数位置a3における画素パターンと最も類似していたとしても、位置a2+φ2は整数位置a2とa3との間に存在しているので、整数精度動き探索が誤りとは言えないためである。
具体的には以下のように処理する。まず、逆探索部700は、参照フレームの整数位置b1を中心とするブロックRの各画素と、基準フレームの整数位置a2を中心とするブロックT0の各画素との差分絶対値和SAD0を算出する。次いで、逆探索部700は、ブロックRの各画素と、基準フレームの整数位置a1を中心とするブロックT1の各画素との差分絶対値和SAD1を算出する。同様に、逆探索部700は、ブロックRの各画素と、基準フレームの整数位置a4を中心とするブロックT2の各画素との差分絶対値和SAD2を算出する。
そして、差分絶対値和SAD0が最小である場合に、逆探索部700は整数精度動き探索が正しいと判定する。この場合、逆探索部700は、フラグFlgを、出力される画素値R(b),φが有効であることを示す値に設定する。これに対し、差分絶対値和SAD0が最小でない場合は、逆探索部700は整数精度動き探索が正しくないと判定する。この場合、逆探索部700は、フラグFlgを、出力される画素値R(b),φが無効であることを示す値に設定する。
このように、第5の実施形態では、逆探索を行って整数精度動き推定が正しいか否かを確認する。よって、超解像処理後の出力映像信号にアーティファクトが生じるのを軽減でき、画質を向上できる。
各実施形態で説明した画像処理装置の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、画像処理装置の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
また、画像処理装置の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1 整数精度動き推定部
2 小数精度動き推定部
3 選択部
4 バッファ
100 フレームメモリ
200 仮拡大部
300 動き推定部
400 画像再構成部
500 競合判定部
600 バッファ
700 逆探索部

Claims (2)

  1. 基準フレームの複数のブロックの整数位置ごとに、前記基準フレームのブロックの整数位置と対応する参照フレームのブロックの整数位置との位置関係を示す第1の動きベクトルを生成する第1の動き推定部と、
    前記参照フレームのブロックの整数位置と対応する前記基準フレームのブロックの小数位置との位置関係を示す第2の動きベクトルを生成する第2の動き推定部と、
    前記基準フレームの第1のブロックの整数位置についての前記第1の動きベクトル、または、前記第1のブロックの周囲にある第2のブロックについての前記第1の動きベクトルに基づく前記参照フレームのブロックのうち、類似度が大きい前記参照フレームのブロックの整数位置にある画素の値と、前記第2の動きベクトルに対応する小数位置と、を出力する選択部と、を備えることを特徴とする画像処理装置。
  2. 基準フレームの各ブロックの整数位置と対応する参照フレームのブロックの整数位置との位置関係を示す第1の動きベクトルを生成する第1の動き推定部と、
    前記基準フレームの第1のブロックについての前記第1の動きベクトル、または、前記第1のブロックの周囲にある第2のブロックについての前記第1の動きベクトルを選択する選択部と、
    前記第1のブロック内の第1の整数位置および選択された前記第1の動きベクトルに応じた前記参照フレームの第2の整数位置と対応する、前記基準フレームの小数位置を検出し、前記小数位置および前記第2の整数位置の画素の値を出力する第2の動き推定部と、を備えることを特徴とする画像処理装置。
JP2013038916A 2013-02-28 2013-02-28 画像処理装置 Expired - Fee Related JP5890794B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013038916A JP5890794B2 (ja) 2013-02-28 2013-02-28 画像処理装置
US13/973,722 US20140241429A1 (en) 2013-02-28 2013-08-22 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013038916A JP5890794B2 (ja) 2013-02-28 2013-02-28 画像処理装置

Publications (2)

Publication Number Publication Date
JP2014167691A JP2014167691A (ja) 2014-09-11
JP5890794B2 true JP5890794B2 (ja) 2016-03-22

Family

ID=51388128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013038916A Expired - Fee Related JP5890794B2 (ja) 2013-02-28 2013-02-28 画像処理装置

Country Status (2)

Country Link
US (1) US20140241429A1 (ja)
JP (1) JP5890794B2 (ja)

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100580194B1 (ko) * 2004-06-11 2006-05-16 삼성전자주식회사 비트 정밀도를 낮춘 부화소 움직임 추정방법 및 장치
JP3880985B2 (ja) * 2004-08-05 2007-02-14 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
JP4317814B2 (ja) * 2004-12-06 2009-08-19 株式会社ルネサステクノロジ 動画像情報の符号化装置及び符号化方法
TWI280805B (en) * 2005-07-20 2007-05-01 Novatek Microelectronics Corp Method and apparatus for cost calculation in decimal motion estimation
US20070025442A1 (en) * 2005-07-28 2007-02-01 Sanyo Electric Co., Ltd. Coding method for coding moving images
KR100727989B1 (ko) * 2005-10-01 2007-06-14 삼성전자주식회사 동영상 부호화시의 인터 모드 결정 방법 및 장치
TWI271106B (en) * 2005-10-25 2007-01-11 Novatek Microelectronics Corp Apparatus and method for motion estimation supporting multiple video compression standards
JP4686388B2 (ja) * 2006-03-20 2011-05-25 株式会社東芝 画像拡大装置及び画像拡大方法
US8374464B2 (en) * 2006-05-31 2013-02-12 Nec Corporation Method, apparatus and program for enhancement of image resolution
JP2008042424A (ja) * 2006-08-04 2008-02-21 Hitachi Ltd 画像マッチング装置及び画像マッチング方法
US20080310514A1 (en) * 2007-06-14 2008-12-18 Texas Instruments Incorporated Adaptive Density Search of Motion Estimation for Realtime Video Compression
EP2048886A1 (en) * 2007-10-11 2009-04-15 Panasonic Corporation Coding of adaptive interpolation filter coefficients
US8279936B1 (en) * 2007-12-11 2012-10-02 Marvell International Ltd. Method and apparatus for fractional pixel expansion and motion vector selection in a video codec
US20110032993A1 (en) * 2008-03-31 2011-02-10 Motokazu Ozawa Image decoding device, image decoding method, integrated circuit, and receiving device
JP5406465B2 (ja) * 2008-04-24 2014-02-05 株式会社Nttドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法及び画像予測復号プログラム
US8724697B2 (en) * 2008-09-26 2014-05-13 Qualcomm Incorporated Locating motion vectors for video data units
KR100994983B1 (ko) * 2008-11-11 2010-11-18 한국전자통신연구원 고속 움직임 탐색 장치 및 그 방법
US8259809B2 (en) * 2009-01-12 2012-09-04 Mediatek Singapore Pte Ltd. One step sub-pixel motion estimation
GB2471323B (en) * 2009-06-25 2014-10-22 Advanced Risc Mach Ltd Motion vector estimator
JP2011050001A (ja) * 2009-08-28 2011-03-10 Sony Corp 画像処理装置および方法
KR20110071047A (ko) * 2009-12-20 2011-06-28 엘지전자 주식회사 비디오 신호 디코딩 방법 및 장치
JP2012104945A (ja) * 2010-11-08 2012-05-31 Sony Corp 画像処理装置と画像処理方法およびプログラム
CN102884794B (zh) * 2011-03-07 2016-08-10 松下知识产权经营株式会社 运动补偿装置、运动图像编码装置、运动图像解码装置、运动补偿方法、以及集成电路
US9143799B2 (en) * 2011-05-27 2015-09-22 Cisco Technology, Inc. Method, apparatus and computer program product for image motion prediction
JP5786478B2 (ja) * 2011-06-15 2015-09-30 富士通株式会社 動画像復号装置、動画像復号方法、及び動画像復号プログラム
TW201406166A (zh) * 2012-07-27 2014-02-01 Novatek Microelectronics Corp 視訊編碼方法與視訊編碼裝置

Also Published As

Publication number Publication date
JP2014167691A (ja) 2014-09-11
US20140241429A1 (en) 2014-08-28

Similar Documents

Publication Publication Date Title
US9898803B2 (en) Image processing apparatus, image processing method, and recording medium storing image processing program
JP5057948B2 (ja) 歪曲補正画像生成ユニットおよび歪曲補正画像生成方法
JP5531194B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US20100123792A1 (en) Image processing device, image processing method and program
US9055217B2 (en) Image compositing apparatus, image compositing method and program recording device
JP6326180B1 (ja) 画像処理装置
US20120093231A1 (en) Image processing apparatus and image processing method
US9674483B2 (en) Method and device for generating a motion-compensated video frame
JP6254938B2 (ja) 画像ノイズ除去装置、および画像ノイズ除去方法
JP2005269419A (ja) 画像変形推定方法および画像変形推定装置
JP2006222493A (ja) 複数の低解像度画像を用いた高解像度画像の生成
JP5198543B2 (ja) 画像処理方法、画像処理装置及び画像処理プログラム
JP4626158B2 (ja) 動きベクトル検出装置、および動きベクトル検出方法、並びにコンピュータ・プログラム
JP5533309B2 (ja) 動きベクトル検出回路、動画像符号化装置及び動きベクトル検出方法
JP5890794B2 (ja) 画像処理装置
JP2019067169A (ja) 移動ベクトル算出方法、装置、プログラム、及びノイズ除去処理を含む移動ベクトル算出方法
JP2017022597A (ja) 画像処理装置、その制御方法、および制御プログラム
US20130315502A1 (en) Image processing apparatus and image processing method
JP5308981B2 (ja) 予測ベクトル補正装置及びプログラム
JP5397250B2 (ja) 画像処理装置および画像処理方法
US9454801B2 (en) Image processing apparatus, method for processing image, and program
WO2015159778A1 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP5401696B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP4250807B2 (ja) フィールド周波数変換装置および変換方法
JP2014192586A (ja) 画像処理装置、画像処理方法及び画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160219

R151 Written notification of patent or utility model registration

Ref document number: 5890794

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees