JPWO2011121894A1 - 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 - Google Patents
画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 Download PDFInfo
- Publication number
- JPWO2011121894A1 JPWO2011121894A1 JP2012508043A JP2012508043A JPWO2011121894A1 JP WO2011121894 A1 JPWO2011121894 A1 JP WO2011121894A1 JP 2012508043 A JP2012508043 A JP 2012508043A JP 2012508043 A JP2012508043 A JP 2012508043A JP WO2011121894 A1 JPWO2011121894 A1 JP WO2011121894A1
- Authority
- JP
- Japan
- Prior art keywords
- image
- prediction
- motion
- generated
- encoding
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 400
- 230000033001 locomotion Effects 0.000 claims abstract description 778
- 239000013598 vector Substances 0.000 claims description 375
- 238000013139 quantization Methods 0.000 claims description 62
- 230000006835 compression Effects 0.000 claims description 55
- 238000007906 compression Methods 0.000 claims description 55
- 238000009499 grossing Methods 0.000 claims description 36
- 238000001914 filtration Methods 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 14
- 230000006837 decompression Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 26
- 230000000694 effects Effects 0.000 description 23
- 230000002123 temporal effect Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 10
- 238000011156 evaluation Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 239000000470 constituent Substances 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 102100035353 Cyclin-dependent kinase 2-associated protein 1 Human genes 0.000 description 2
- 101000911772 Homo sapiens Hsc70-interacting protein Proteins 0.000 description 2
- 101001139126 Homo sapiens Krueppel-like factor 6 Proteins 0.000 description 2
- 102100029860 Suppressor of tumorigenicity 20 protein Human genes 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
即ち、動き補償技術では、既に符号化が完了している符号化済みフレームを参照画像としてメモリに蓄積し、そのメモリに蓄積している参照画像内の所定の探索範囲内で、動き補償予測の対象ブロックである現マクロブロックと最も差分電力が小さいブロック領域を探索する。
そして、最も差分電力が小さいブロック領域の空間位置と現マクロブロックの空間位置との変位を動きベクトルとして符号化する技術である。
最も単純なモデルとしては、例えば、時間的にビデオフレーム間のちょうど真ん中に補間画像を生成する際、動きベクトルの値を半分にした値を補間画像の動きベクトルとして採用し、その動きベクトルを用いて、前後のフレームから動きを補償するという方法がある。
これはビデオフレーム間の動きがリニアであることを仮定した場合のモデルであり、ビデオフレームの間隔が短い程に上記の仮定が成り立ち、また、その動きベクトルが小さい程に上記の仮定が成り立つため、ある程度の補間画像を作成することが可能である。
そのような場合、補間画像に乱れが発生し、その乱れが非常に目立つことが多いため、「動きを正確に表現できていない動きベクトル」を如何に判定して、それらを除外しつつ本来の動きをどこまで正確に推定できるかが重要である。
また、この発明は、画像符号化装置から送信された符号化データから品質が高い画像を再生することができる画像復号装置及び画像復号方法を得ることを目的とする。
実施の形態1.
図1はこの発明の実施の形態1による画像符号化装置を示す構成図である。
図1の画像符号化装置では、入力画像がマクロブロック単位(あるいは、マクロブロックが分割されたサブマクロブロック単位)に分割され、マクロブロック単位(あるいは、サブマクロブロック単位)の入力画像が動き補償予測部2及び減算器3に入力される。符号化処理はマクロブロックごとに実行されるものとし、入力画像を構成するすべてのマクロブロックの符号化処理が終了した時点で、該入力画像の符号化処理が終了するものとする。
以下、この実施の形態1では、説明の便宜上、マクロブロック単位の入力画像が動き補償予測部2及び減算器3に入力されるものとして説明する。動き補償予測部2及び減算器3への入力がサブマクロブロック単位となる場合、「マクロブロック」を「サブマクロブロック」に読み替え、1つのマクロブロックの処理は、その内部のすべてのサブマクロブロックの処理が終了することで終了、とする。
また、図1の画像符号化装置では、「マクロブロックごとに動きパラメータや予測残差情報の符号化を伴う通常のピクチャ符号化を行う」のか、「スキップピクチャ符号化を行う」のか示すピクチャ符号化方法制御情報(制御情報)が動き補償予測部2、符号化モード判定部4、選択スイッチ7、ループフィルタ9及び可変長符号化部11に入力される。
動き補償予測部2はフレームメモリ10に格納されている1フレーム以上の動き補償予測用の参照画像の中から実際に予測に用いる参照画像を選択し、入力画像を構成しているマクロブロックの単位で、動き補償予測処理を実施することで予測画像を生成する処理を実施する。
動き補償予測部2は予測画像を生成する際の予測画像生成方式として、第1の予測画像生成方式(「動き予測モードA」による予測画像生成方式)と、第2の予測画像生成方式(「動き予測モードB」による予測画像生成方式)とを備えており、動き予測モードAと動き予測モードBによって予測画像をそれぞれ生成する。
動き予測モードBの場合、動きパラメータメモリ1に格納されている符号化済みマクロブロックの予測パラメータ符号化対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償予測処理を実施して予測画像Bを生成する。
なお、動き補償予測部2は予測画像生成手段を構成している。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、予測画像Aが生成されないので、符号化対象のマクロブロックの画像と動き予測モードAで生成された予測画像Aの差分を求めて差分画像Aを算出する処理は行わない。
また、符号化モード判定部4は最も符号化効率が高い差分画像を示す予測差分信号を圧縮部5に出力するとともに、その差分画像に係る予測画像の生成に用いられた予測パラメータ(動き予測モード(予測画像識別情報)、動きベクトル(またはダイレクトベクトル)、参照画像の識別番号)を動きパラメータメモリ1に格納し、また、その予測パラメータ(動き予測モード(予測画像識別情報)、動きベクトル(差分画像Aを選択した場合に限り、動きベクトルを予測パラメータに含め、差分画像Bを選択した場合、動きベクトルを予測パラメータに含めない)、参照画像の識別番号)を可変長符号化部11に出力する処理を実施する。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、予測画像Aが生成されないので、差分画像Aの符号化効率を評価する処理は行わない。
なお、減算器3及び符号化モード判定部4から差分画像選択手段が構成されている。
なお、圧縮部5は量子化手段を構成している。
選択スイッチ7はピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、局部復号部6により算出された局部復号予測差分信号を選択して加算器8に出力し、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器8に出力する処理を実施する。
ループフィルタ9はピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、DCTブロック境界に対するブロック歪み除去フィルタ(デブロッキングフィルタ)を用いて、加算器8により生成された局部復号画像に含まれている符号化歪みを補償する歪み補償処理を実施し、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する。
なお、局部復号部6、選択スイッチ7、加算器8及びループフィルタ9から参照画像生成手段が構成されている。
可変長符号化部11は圧縮部5から出力された圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)、符号化モード判定部4から出力された予測パラメータ及びピクチャ符号化方法制御情報をエントロピー符号化して、その符号化結果を示すビットストリーム(符号化データ)を生成し、そのビットストリームを出力する処理を実施する。
なお、可変長符号化部11は可変長符号化手段を構成している。
図8はこの発明の実施の形態1による画像符号化装置の処理内容を示すフローチャートである。
図7において、動きパラメータメモリ21は例えば復号済みマクロブロック(あるいは、復号済みサブマクロブロック)の予測パラメータ(動き予測モード、動きベクトル、参照画像の識別番号)などを格納する例えばRAMなどの記録媒体である。
一方、可変長復号部22から出力されたピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、動きパラメータメモリ21に格納されている復号済みマクロブロックの動きベクトルから復号対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償処理を実施して予測画像Bを生成する処理を実施する。
なお、動き補償部24は予測画像生成手段を構成している。
加算器26は選択スイッチ25により選択された局部復号予測差分信号又はオールゼロ値を動き補償部24により生成された予測画像を示す予測信号に加算することで、復号画像を示す復号画像信号を生成する処理を実施する。
なお、選択スイッチ25、加算器26及びループフィルタ27から復号画像生成手段が構成されている。
フレームメモリ28はループフィルタ27から出力された再生画像(フィルタ処理後の復号画像)を参照画像として格納するRAMなどの記録媒体である。
図9はこの発明の実施の形態1による画像復号装置の処理内容を示すフローチャートである。
最初に、画像符号化装置の処理内容を説明する。
動き補償予測部2は、指定されるピクチャタイプに応じて選択可能な全ての動き予測モード(マクロブロックないしサブブロック内での動きベクトル割り当てパターン)について、それぞれ予測画像を生成する。
図2はピクチャタイプに応じて選択可能な動き予測モードの一例を示す説明図である。
図2において、mc_mode0はマクロブロック(M×L画素ブロック)の全体に対して、1つの動きベクトルを割り当てるモードである。
mc_mode1はマクロブロックを水平方向に等分割し、分割した左右のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。
mc_mode2はマクロブロックを垂直方向に等分割し、分割した上下のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。
mc_mode3はマクロブロックを4分割し、分割した4個のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。mc_mode3におけるマクロブロックを4分割した単位がサブマクロブロックとなり、サブマクロブロックは、さらに、mc_mode0〜mc_mode3のような分割を行って動きベクトル割り当てが可能である。マクロブロックの大きさが十分に大きい場合(例えば、32×32画素ブロックや64×64画素ブロックなど)、サブマクロブロックは16×16画素ブロックに対応するので、それを更に細かく分割することによって木構造の階層分割構造をとるように構成してもよい。本実施の形態1の符号化装置・復号装置は、そのようなサブマクロブロック構造に対しても対応可能である。
ただし、この実施の形態1では、動き補償予測部2が、予測画像を生成する際の予測画像生成方式として、マクロブロックにつき1つの動きベクトルが割り当てられる図2のmc_mode0相当のケースに限定して、動き予測モードAによる予測画像生成方式と、動き予測モードBとを用いる例について説明する。上記のようなサブマクロブロックの階層分割構造に対応する場合は、動き予測モードA、動き予測モードBとも、個々の動きベクトル割り当て単位ブロックに対して適用すればよい。
一方、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば(ステップST1)、動き予測モードAでは予測画像Aを生成せずに、動き予測モードBによって予測画像Bを生成する(ステップST3)。
動き補償予測部2は、フレームメモリ10に格納されている1フレーム以上の動き補償予測用の参照画像の中から1フレームの参照画像を選択して、符号化対象のマクロブロックと参照画像の間で動きベクトルを探索する(参照画像上の所定の動き探索範囲内で動きベクトルを探索する)。
そして、その動きベクトルを用いる動き補償予測処理を実施して予測画像Aを生成する(符号化対象のマクロブロックの画面内位置から、その動きベクトルの分だけ変移した位置の画像領域を用いて、予測画像Aを生成する)。
動き補償予測部2は、動きパラメータメモリ1により格納されている符号化済みマクロブロックの動きベクトルから符号化対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償予測処理を実施して予測画像Bを生成する。
動き予測モードBとしては、例えば、MPEG−4ビジュアル(ISO/IEC 14496−2)や、MPEG−4 AVC/ITU−T H.264(以下、「AVC」と称する)などの標準符号化方式において採用されるダイレクト予測による予測画像生成方式が利用できる。
時間ダイレクトモードは、既に符号化済みの他のピクチャの動きベクトルを参照し、符号化済みピクチャと符号化対象ピクチャとの間の時間差に応じて動きベクトルのスケーリング処理を行うことで、符号化対象のマクロブロックで用いる動きベクトル(ダイレクトベクトル)を算出するものである。
一方、空間ダイレクトモードは、符号化対象のマクロブロックの周囲に位置している少なくとも1つ以上の符号化済みマクロブロックの動きベクトルを参照して、符号化対象のマクロブロックで用いる動きベクトル(ダイレクトベクトル)を算出するものである。
AVCのダイレクト予測では、時間ダイレクトモード又は空間ダイレクトモードのいずれか一方をスライス単位で選択する。
図3において、「P」はPピクチャを表し、「B」はBピクチャを表している。Pピクチャは、1つの動きベクトル割り当て可能ブロックにつき1つの動きベクトルを用いた予測が可能なピクチャである。
また、数字0−3はピクチャの表示順を示し、時間T0,T1,T2,T3の表示画像であることを表している。
ピクチャの符号化処理は、P0,P3,B1,B2の順番で行われるものとする。
この場合、ピクチャB2の時間軸上後方にある符号化済みピクチャのうち、ピクチャB2に一番近いピクチャP3の動きベクトルであって、マクロブロックMB1と空間的に同じ位置にあるマクロブロックMB2の動きベクトルMVを用いる。
この動きベクトルMVはピクチャP0を参照しており(動きベクトルMVはピクチャP0を参照画像として探索した結果の動きベクトルである)、マクロブロックMB1を符号化する際に用いる動きベクトルMVL0,MVL1は、以下の式(1)で求められる。
動きパラメータメモリ1に対する動きベクトルの格納は、図3に示すように、Pピクチャないし、それ以降の動き補償予測に参照画像として用いるピクチャを符号化したときに、その符号化に用いた動きベクトルを1画面分順次格納する。
図4において、currentMBは、符号化対象のマクロブロックを表している。
このとき、符号化対象のマクロブロックの左横の符号化済マクロブロックAの動きベクトルをMVa、符号化対象のマクロブロックの上の符号化済マクロブロックBの動きベクトルをMVb、符号化対象のマクロブロックの右上の符号化済マクロブロックCの動きベクトルをMVcとすると、下記の式(2)に示すように、これらの動きベクトルMVa,MVb,MVcのメディアン(中央値)を求めることにより、符号化対象のマクロブロックの動きベクトルMVを推定することができる。
MV=median(MVa、MVb、MVc) (2)
なお、空間ダイレクトモードの場合も、符号化済みのマクロブロックの動きベクトルMV等を動きパラメータメモリ1に保持しておく必要がある。
以下、この実施の形態1では、動き予測モードBとして、このAVCのダイレクト予測モードを想定する。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、差分画像を算出する処理は行わない。
J=D+λR (3)
ただし、「λ」は正の定数である。
「D」は差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号のマクロブロック内絶対値和、あるいは、差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号が圧縮部5に出力されたとき、局部復号部6から出力される局部復号予測差分信号と入力されたマクロブロックの画像との間の二乗歪み和などが用いられる。
「R」は差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号と、それらの予測差分信号に対応する予測パラメータとが符号化された場合の符号量(または、その推定値)が用いられる。
例えば、差分画像Aのレート歪みコストJの方が小さい場合、その差分画像Aを示す予測差分信号を圧縮部5に出力し、動き予測モードAによる予測画像Aの生成で用いられた予測パラメータ(動き予測モードA、動きベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納するとともに、その予測パラメータを可変長符号化部11に出力する。
差分画像Bのレート歪みコストJの方が小さい場合、その差分画像Bを示す予測差分信号を圧縮部5に出力し、動き予測モードBによる予測画像Bの生成で用いられた予測パラメータ(動き予測モードB、ダイレクトベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納するとともに、その予測パラメータ(動き予測モードB、参照画像の識別番号)を可変長符号化部11に出力する。
なお、符号化モード判定部4は、動き予測モードBで生成された予測画像Bから算出された差分画像Bを示す予測差分信号の電力がゼロにならない場合、DCT処理や量子化処理によって得られる非ゼロ変換係数(圧縮データ)を符号化するため、その予測差分信号を圧縮部5に出力する。
即ち、符号化モード判定部4は、減算器3から出力された差分画像Bを示す予測差分信号の電力がゼロにならない場合でも、その予測差分信号を強制的にゼロ値に置換し、ゼロ値の予測差分信号を圧縮部5に出力する(ステップST7)。または、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、符号化モード判定部4は処理をスキップするようにして、圧縮部5及び局部復号部6がオールゼロの予測差分信号を内部的に生成するように構成してもよい。
また、動き予測モードBによる予測画像Bの生成で用いられた予測パラメータ(動き予測モードB、ダイレクトベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納する。
このため、符号化対象のマクロブロックの符号化に要する符号量はゼロとみなされ、コストJは「D」と概ね等しい値になる。
ただし、圧縮部5は、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、符号化モード判定部4からオールゼロ値の予測差分信号が与えられるため、処理をスキップするように構成してもよい(ステップST9)。あるいは、ピクチャ符号化方法制御情報を受けて、自身が強制的にゼロ値を出力するようにしてもよい。
ただし、局部復号部6は、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、圧縮部5からオールゼロ値の圧縮データが与えられるので、処理をスキップするように構成してもよい(ステップST9)。あるいは、ピクチャ符号化方法制御情報を受けて、自身が強制的にゼロ値を出力するようにしてもよい。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器8に出力する(ステップST9)。
加算器8は、選択スイッチ7により選択された局部復号予測差分信号又はオールゼロ値と、動き補償予測部2により生成された予測画像(最も符号化効率が高い差分画像に係る予測画像)を示す予測信号を加算することで、局部復号画像を示す局部復号画像信号を生成する(ステップST8,ST9)。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、加算部8から予測画像がループフィルタ9に直接入力されるため、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する(ステップST11)。
フレームメモリ10には、ループフィルタ9から出力されたループフィルタ画像(フィルタ処理後の局部復号画像)を参照画像として格納される。
この実施の形態1では、ループフィルタ9における動きブロック境界平滑化処理は、マクロブロック境界におけるオーバラップ動き補償処理を用いる。
図5(a)のマクロブロックXは、現在の処理対象のマクロブロックであり、マクロブロックA,B,C,DはマクロブロックXを取り囲む位置にあるマクロブロックである。
本実施の形態1の動きブロック境界平滑化処理は、フレームの単位で処理を行うことを前提とし、マクロブロックXに対する平滑化処理を行う時点では、既にその周囲のマクロブロックA,B,C,Dについても同様に動きベクトルMVL0,MVL1が決定されている状態であるとする。
このことを利用して、図5(b)に示すマクロブロックX内のブロック境界領域X0〜X3に対して、以下に示すような画像データを再生成する。
u1i=MVL1iの水平成分、v1=MVL1iの垂直成分(i:A,B,C,Dのいずれか)
I(x,y):画素位置(x,y)の画素値
I’(x,y):オーバラップ動き補償処理による画素位置(x,y)の画素値
w0〜w4:重みパラメータ
このような重みで平滑化処理を行うことにより、マクロブロックX内の動きブロック境界のみが平滑化処理対象となり、境界位置に応じて適切な周辺マクロブロックの動きベクトルが考慮される。また、同図の重み値はビットシフトで乗除算が可能であり、演算量を抑えた処理で実現できる。入力画像が輝度信号と色差信号(あるいはRGBなど)からなるカラー画像で、マクロブロックにも各色成分のブロックが含まれる場合は、本平滑化処理は各色成分の特性に合わせて定める重みパラメータにより、それぞれの色成分ブロックに対して実行される。
また、X0〜X3領域で非ゼロの重みを定義する面積は、マクロブロックのサイズが可変となる場合、マクロブロックの大きさに応じて定めるように構成してもよい。
そこで、マクロブロックサイズが大きい場合、よりマクロブロック境界に隣接している画素だけをオーバラップ動き補償処理の対象となるようにしてもよい。
あるいは、マクロブロックサイズに応じて、マクロブロックXの中心付近に対する周辺動きベクトルによる値の重みが小さくなるように、重みパラメータを設計するようにしてもよい。
また、画像符号化装置側で、重みパラメータを最適な値に制御し、可変長符号化部11が、その重みパラメータを符号化してビットストリームに多重化するようにしてもよい。
一方、複雑な動きが多い場合には、マクロブロック境界が不連続な状態になるケースが増加するので、極力周辺のマクロブロックの影響を加味するように、重みパラメータを決める方が望ましいと考えられる。
このような状態は、符号化処理過程で映像信号の性質や符号化ビットレートなどによって変動するので、画像符号化装置側で、重みパラメータを最適な値に制御できれば符号化効率を高めることが可能になる。重みパラメータを符号化する単位は、ピクチャ単位でもよいし、マクロブロックを複数集めたスライス単位でもよい。
ただし、可変長符号化部11は、符号化モード判定部4が差分画像Aを選択している場合、動きベクトルを含んでいる予測パラメータをエントロピー符号化するが、符号化モード判定部4が差分画像Bを選択している場合、動きベクトル(ダイレクトベクトル)を含んでいない予測パラメータをエントロピー符号化する。
一方、上記コスト比較の結果「スキップピクチャ符号化を行う」ことが選択された場合は、可変長符号化部11はピクチャ符号化方法制御情報を符号化するのみで、マクロブロックレベルの一切の符号化データをビットストリームに多重化しない。ただし、重みパラメータを適応的に変化させて符号化する場合は、変化させる単位で重みパラメータ値をビットストリームに多重化する。
可変長符号化部11は、ピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、図6(a)に示すように、ピクチャレベルのヘッダデータに加えて、ピクチャ内の複数のマクロブロックの符号化データ(圧縮データの符号化データ、予測パラメータ)を挿入しているビットストリームを生成して出力する。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図6(b)に示すように、ビットストリームには、マクロブロックの符号化データ(圧縮データの符号化データ)が多重されない。ただし、図6(b)では明記していないが、マクロブロックの符号化データ(動き予測モード及び参照画像の識別番号を示す予測パラメータ)はビットストリームに多重される。
なお、AVCのダイレクト予測では、画像復号装置の動き補償部24が独自にダイレクトベクトルを生成するので、予測パラメータには、動き補償予測部2により生成されたダイレクトベクトルが含められず、ビットストリームに多重されない。
ただし、画像復号装置において、通常ピクチャ符号化が行われているのか、スキップピクチャ符号化が行われているのかを判別することができるようにするために、可変長符号化部11が、画像符号化装置に入力されているピクチャ符号化方法選択情報をピクチャレベルのヘッダデータに多重している。
また、画像符号化装置がオーバラップ動き補償処理の重みパラメータw0〜w7を最適な値に制御していれば、可変長符号化部11が、その重みパラメータw0〜w7をピクチャレベルのヘッダデータに多重する。
この場合、画像符号化装置の処理は、スライス毎に分けて実行するように構成し、ピクチャ符号化方法選択情報は、スライス符号化方法選択情報として、スライスレベルのヘッダデータに多重し、また、重みパラメータw0〜w4もスライスレベルのヘッダデータに多重するように構成すればよい。
また、この実施の形態1では、スキップピクチャ符号化を行う場合に、通常のピクチャ符号化を行う場合の動き予測モードBを、同じように適用する例を示したが、スキップピクチャ符号化を行う場合には、当該ピクチャの符号データを一切ビットストリームに多重しないため、ダイレクトベクトルを求めるブロックの単位は必ずしもマクロブロックに限定する必要はない。スキップピクチャでは、動きベクトル割り当て単位のブロックサイズが小さくなっても動きベクトルの符号は発生しないので、この自由度を高めることにより、スキップピクチャの符号化効率を高めることができる。例えば、スキップピクチャ符号化を行う場合のブロックサイズを、入力画像のサイズやマクロブロックのサイズに応じて、符号化装置・復号装置が共通の規則で定めるように構成したり、ピクチャレベルのヘッダに、スキップピクチャ符号化を行う場合のブロックサイズを符号化して、復号装置側へ伝送するように構成してもよい。(この符号化はピクチャに限定されない。スライス単位でもかまわない)。
この他、動きブロック境界平滑化処理としては、動きベクトル割り当てブロック境界について、動きベクトルの大きさ、参照画像の識別番号の違い、境界での画素ずれの大きさなどに応じてアクティビティ値を求めて、それらアクティビティ値の大きさによって境界に隣接する画素の平滑化フィルタリングを行うような処理を導入してもよい。
可変長復号部22は、図1の画像符号化装置から出力されたビットストリームを入力すると、そのビットストリームにおけるピクチャレベルのヘッダデータを解析して、ピクチャ符号化方法選択情報を復号する(図9のステップST11)。
可変長復号部22は、そのピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば(ステップST12)、ピクチャレベルのヘッダデータ以降のマクロブロック符号化データに対するエントロピー復号処理を実施して、ピクチャ内の複数のマクロブロックの圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)及び予測パラメータを復号する(ステップST13)。
可変長復号部22により復号された圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)は予測誤差復号部23に出力され、予測パラメータは動き補償部24に出力される。
また、ピクチャレベルのヘッダデータ以降のマクロブロック符号化データに対するエントロピー復号処理を実施して、ピクチャ内の複数のマクロブロックの予測パラメータを復号する(ステップST14)。
可変長復号部22により復号された予測パラメータ及び重みパラメータw0〜w4は動き補償部24に出力される。
なお、可変長復号部22により復号されたピクチャ符号化方法選択情報は、動き補償部24、選択スイッチ25及びループフィルタ27に出力される。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器26に出力する(ステップST17)。
動き補償部24は、可変長復号部22から出力されたピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示している場合、可変長復号部22から出力された予測パラメータ内の動き予測モードが動き予測モードAであれば(ステップST18)、図1の動き補償予測部2と同様に、動き予測モードAで予測画像Aを生成する(ステップST19)。
ただし、動き補償部24は、図1の動き補償予測部2と異なり、自ら動きベクトルの探索処理を実施せずに、可変長復号部22から出力された予測パラメータ内の動きベクトルを使用する。
一方、可変長復号部22から出力された予測パラメータ内の動き予測モードが動き予測モードBであれば(ステップST18)、図1の動き補償予測部2と同様に、動き予測モードBで予測画像Bを生成する(ステップST20)
なお、動き補償部24は、当該マクロブロックの予測画像を生成すると、次のマクロブロックの予測画像を動き予測モードBで生成する場合に備えるため、当該マクロブロックの予測画像の生成に用いた動きベクトル(ダイレクトベクトル)や関連情報(動き予測モードB、参照画像の識別番号、予測誤差量など)を1画面分だけ動きパラメータメモリ21に格納する。
動き補償部24は、可変長復号部22から出力されたピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図1の動き補償予測部2と同様に、動き予測モードBで予測画像Bを生成する(ステップST21)。
一方、選択スイッチ25によりオールゼロ値が選択された場合、そのオールゼロ値と動き補償部24により生成された予測画像Bを示す予測信号とを加算することで、復号画像を示す復号画像信号を生成する(ステップST23)。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図1のループフィルタ9と同様に、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する(ステップST25)。
フレームメモリ28には、ループフィルタ27から出力された再生画像(フィルタ処理後の復号画像)が参照画像される。
上記実施の形態1では、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、動き予測モードBがAVCのダイレクト予測モードであるとして、動き補償予測部2が予測画像Bを生成するものについて示したが、動き予測モードBがAVCのダイレクト予測モードであるものに限るものではなく、他のモードとして、動き補償予測部2が予測画像Bを生成するようにしてもよい。
図10は動き補償予測部2による予測画像Bの生成処理(符号化済みピクチャFt−1,Ft+1に対して、時間的にちょうど真ん中にあるピクチャFtをスキップピクチャとして符号化する場合の生成処理)の一例を示す説明図である。
また、図11はマクロブロックXの動きベクトルdf(x,t)の推定内容を示す説明図である。
動き補償予測部2は、図10に示すように、符号化済みピクチャFt−1,Ft+1に対して、時間的にちょうど真ん中にあるピクチャFtをスキップピクチャとして符号化する場合、処理対象のマクロブロックに関し、図10に示す両方向補間を実施する。
このとき、動きベクトルをd(x+vi,t+1),0≦i≦8,(V4=0)とし、予測誤差量をe(x+vi,t+1),0≦i≦8,(V4=0)とすると、下記の式(5)の演算を行うことで、補間画像上での処理該当ブロックにおける符号化済みピクチャFt−1に対する参照ベクトルである動きベクトルdf(x,t)の推定が可能になる。
ここでの動きベクトルdf(x,t)の推定手法は、予測誤差量が小さいほど、ベクトル自体の信頼性が高く、予測残差絶対値和が大きいほど、ベクトル自体の信頼性が低いという性質に基づく手法である。
αはピクチャFtとピクチャFt+1との間の時間間隔で定まる重み係数である。ただし、図11に示すR領域を構成している9つのマクロブロックのうち、フレーム内符号化されるブロックは上記演算から除外する。
領域R内の9つマクロブロックのうち、一定の割合以上がフレーム内符号化のブロックである場合、動きベクトルdf(x,t)が(0,0)であると推定する。
なお、スキップピクチャを生成する推定動きベクトルを求めるにあたっては、あらかじめ空間・時間的に近傍に位置する複数の動きベクトルを推定動きベクトル候補として保持しておき、その中から最適な推定動きベクトルを、符号化装置単独ないし符号化装置と復号装置の連携によって選択して、スキップピクチャの復号画像の生成に利用するように構成してもよい。符号化装置で選択する場合は、推定動きベクトルを求める単位ごとに最適な推定動きベクトルのインデックスをビットストリームに多重化するように構成する。一方、符号化装置と復号装置側で同じ判定方法を用いて選択する場合は、復号装置側に推定動きベクトル選択のための追加処理が必要になる一方、推定動きベクトルのインデックスをビットストリームに多重化する必要がないため、符号化効率を高めることができる。このように構成することにより、推定動きベクトルを複数の候補の中から選択できるようになるため、ある特定の推定方法によって一意に得られる推定動きベクトルの精度が十分でない場合にも品質を維持した符号化を行うことができる効果がある。
即ち、動き補償技術では、既に符号化が完了している符号化済みフレームを参照画像としてメモリに蓄積し、そのメモリに蓄積している参照画像内の所定の探索範囲内で、動き補償予測の対象ブロックである現マクロブロックと最も差分電力が小さいブロック領域を探索する。
そして、最も差分電力が小さいブロック領域の空間位置と現マクロブロックの空間位置との変位を動きベクトルとして符号化する技術である。
最も単純なモデルとしては、例えば、時間的にビデオフレーム間のちょうど真ん中に補間画像を生成する際、動きベクトルの値を半分にした値を補間画像の動きベクトルとして採用し、その動きベクトルを用いて、前後のフレームから動きを補償するという方法がある。
これはビデオフレーム間の動きがリニアであることを仮定した場合のモデルであり、ビデオフレームの間隔が短い程に上記の仮定が成り立ち、また、その動きベクトルが小さい程に上記の仮定が成り立つため、ある程度の補間画像を作成することが可能である。
そのような場合、補間画像に乱れが発生し、その乱れが非常に目立つことが多いため、「動きを正確に表現できていない動きベクトル」を如何に判定して、それらを除外しつつ本来の動きをどこまで正確に推定できるかが重要である。
また、この発明は、画像符号化装置から送信された符号化データから品質が高い画像を再生することができる画像復号装置及び画像復号方法を得ることを目的とする。
実施の形態1.
図1はこの発明の実施の形態1による画像符号化装置を示す構成図である。
図1の画像符号化装置では、入力画像がマクロブロック単位(あるいは、マクロブロックが分割されたサブマクロブロック単位)に分割され、マクロブロック単位(あるいは、サブマクロブロック単位)の入力画像が動き補償予測部2及び減算器3に入力される。符号化処理はマクロブロックごとに実行されるものとし、入力画像を構成するすべてのマクロブロックの符号化処理が終了した時点で、該入力画像の符号化処理が終了するものとする。
以下、この実施の形態1では、説明の便宜上、マクロブロック単位の入力画像が動き補償予測部2及び減算器3に入力されるものとして説明する。動き補償予測部2及び減算器3への入力がサブマクロブロック単位となる場合、「マクロブロック」を「サブマクロブロック」に読み替え、1つのマクロブロックの処理は、その内部のすべてのサブマクロブロックの処理が終了することで終了、とする。
また、図1の画像符号化装置では、「マクロブロックごとに動きパラメータや予測残差情報の符号化を伴う通常のピクチャ符号化を行う」のか、「スキップピクチャ符号化を行う」のか示すピクチャ符号化方法制御情報(制御情報)が動き補償予測部2、符号化モード判定部4、選択スイッチ7、ループフィルタ9及び可変長符号化部11に入力される。
動き補償予測部2はフレームメモリ10に格納されている1フレーム以上の動き補償予測用の参照画像の中から実際に予測に用いる参照画像を選択し、入力画像を構成しているマクロブロックの単位で、動き補償予測処理を実施することで予測画像を生成する処理を実施する。
動き補償予測部2は予測画像を生成する際の予測画像生成方式として、第1の予測画像生成方式(「動き予測モードA」による予測画像生成方式)と、第2の予測画像生成方式(「動き予測モードB」による予測画像生成方式)とを備えており、動き予測モードAと動き予測モードBによって予測画像をそれぞれ生成する。
動き予測モードBの場合、動きパラメータメモリ1に格納されている符号化済みマクロブロックの予測パラメータ符号化対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償予測処理を実施して予測画像Bを生成する。
なお、動き補償予測部2は予測画像生成手段を構成している。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、予測画像Aが生成されないので、符号化対象のマクロブロックの画像と動き予測モードAで生成された予測画像Aの差分を求めて差分画像Aを算出する処理は行わない。
また、符号化モード判定部4は最も符号化効率が高い差分画像を示す予測差分信号を圧縮部5に出力するとともに、その差分画像に係る予測画像の生成に用いられた予測パラメータ(動き予測モード(予測画像識別情報)、動きベクトル(またはダイレクトベクトル)、参照画像の識別番号)を動きパラメータメモリ1に格納し、また、その予測パラメータ(動き予測モード(予測画像識別情報)、動きベクトル(差分画像Aを選択した場合に限り、動きベクトルを予測パラメータに含め、差分画像Bを選択した場合、動きベクトルを予測パラメータに含めない)、参照画像の識別番号)を可変長符号化部11に出力する処理を実施する。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、予測画像Aが生成されないので、差分画像Aの符号化効率を評価する処理は行わない。
なお、減算器3及び符号化モード判定部4から差分画像選択手段が構成されている。
なお、圧縮部5は量子化手段を構成している。
選択スイッチ7はピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、局部復号部6により算出された局部復号予測差分信号を選択して加算器8に出力し、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器8に出力する処理を実施する。
ループフィルタ9はピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、DCTブロック境界に対するブロック歪み除去フィルタ(デブロッキングフィルタ)を用いて、加算器8により生成された局部復号画像に含まれている符号化歪みを補償する歪み補償処理を実施し、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する。
なお、局部復号部6、選択スイッチ7、加算器8及びループフィルタ9から参照画像生成手段が構成されている。
可変長符号化部11は圧縮部5から出力された圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)、符号化モード判定部4から出力された予測パラメータ及びピクチャ符号化方法制御情報をエントロピー符号化して、その符号化結果を示すビットストリーム(符号化データ)を生成し、そのビットストリームを出力する処理を実施する。
なお、可変長符号化部11は可変長符号化手段を構成している。
図8はこの発明の実施の形態1による画像符号化装置の処理内容を示すフローチャートである。
図7において、動きパラメータメモリ21は例えば復号済みマクロブロック(あるいは、復号済みサブマクロブロック)の予測パラメータ(動き予測モード、動きベクトル、参照画像の識別番号)などを格納する例えばRAMなどの記録媒体である。
一方、可変長復号部22から出力されたピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、動きパラメータメモリ21に格納されている復号済みマクロブロックの動きベクトルから復号対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償処理を実施して予測画像Bを生成する処理を実施する。
なお、動き補償部24は予測画像生成手段を構成している。
加算器26は選択スイッチ25により選択された局部復号予測差分信号又はオールゼロ値を動き補償部24により生成された予測画像を示す予測信号に加算することで、復号画像を示す復号画像信号を生成する処理を実施する。
なお、選択スイッチ25、加算器26及びループフィルタ27から復号画像生成手段が構成されている。
フレームメモリ28はループフィルタ27から出力された再生画像(フィルタ処理後の復号画像)を参照画像として格納するRAMなどの記録媒体である。
図9はこの発明の実施の形態1による画像復号装置の処理内容を示すフローチャートである。
最初に、画像符号化装置の処理内容を説明する。
動き補償予測部2は、指定されるピクチャタイプに応じて選択可能な全ての動き予測モード(マクロブロックないしサブブロック内での動きベクトル割り当てパターン)について、それぞれ予測画像を生成する。
図2はピクチャタイプに応じて選択可能な動き予測モードの一例を示す説明図である。
図2において、mc_mode0はマクロブロック(M×L画素ブロック)の全体に対して、1つの動きベクトルを割り当てるモードである。
mc_mode1はマクロブロックを水平方向に等分割し、分割した左右のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。
mc_mode2はマクロブロックを垂直方向に等分割し、分割した上下のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。
mc_mode3はマクロブロックを4分割し、分割した4個のサブブロックに対して、それぞれ異なる動きベクトルを割り当てるモードである。mc_mode3におけるマクロブロックを4分割した単位がサブマクロブロックとなり、サブマクロブロックは、さらに、mc_mode0〜mc_mode3のような分割を行って動きベクトル割り当てが可能である。マクロブロックの大きさが十分に大きい場合(例えば、32×32画素ブロックや64×64画素ブロックなど)、サブマクロブロックは16×16画素ブロックに対応するので、それを更に細かく分割することによって木構造の階層分割構造をとるように構成してもよい。本実施の形態1の符号化装置・復号装置は、そのようなサブマクロブロック構造に対しても対応可能である。
ただし、この実施の形態1では、動き補償予測部2が、予測画像を生成する際の予測画像生成方式として、マクロブロックにつき1つの動きベクトルが割り当てられる図2のmc_mode0相当のケースに限定して、動き予測モードAによる予測画像生成方式と、動き予測モードBとを用いる例について説明する。上記のようなサブマクロブロックの階層分割構造に対応する場合は、動き予測モードA、動き予測モードBとも、個々の動きベクトル割り当て単位ブロックに対して適用すればよい。
一方、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば(ステップST1)、動き予測モードAでは予測画像Aを生成せずに、動き予測モードBによって予測画像Bを生成する(ステップST3)。
動き補償予測部2は、フレームメモリ10に格納されている1フレーム以上の動き補償予測用の参照画像の中から1フレームの参照画像を選択して、符号化対象のマクロブロックと参照画像の間で動きベクトルを探索する(参照画像上の所定の動き探索範囲内で動きベクトルを探索する)。
そして、その動きベクトルを用いる動き補償予測処理を実施して予測画像Aを生成する(符号化対象のマクロブロックの画面内位置から、その動きベクトルの分だけ変移した位置の画像領域を用いて、予測画像Aを生成する)。
動き補償予測部2は、動きパラメータメモリ1により格納されている符号化済みマクロブロックの動きベクトルから符号化対象のマクロブロックの推定ベクトルを生成し、その推定ベクトルを用いる動き補償予測処理を実施して予測画像Bを生成する。
動き予測モードBとしては、例えば、MPEG−4ビジュアル(ISO/IEC 14496−2)や、MPEG−4 AVC/ITU−T H.264(以下、「AVC」と称する)などの標準符号化方式において採用されるダイレクト予測による予測画像生成方式が利用できる。
時間ダイレクトモードは、既に符号化済みの他のピクチャの動きベクトルを参照し、符号化済みピクチャと符号化対象ピクチャとの間の時間差に応じて動きベクトルのスケーリング処理を行うことで、符号化対象のマクロブロックで用いる動きベクトル(ダイレクトベクトル)を算出するものである。
一方、空間ダイレクトモードは、符号化対象のマクロブロックの周囲に位置している少なくとも1つ以上の符号化済みマクロブロックの動きベクトルを参照して、符号化対象のマクロブロックで用いる動きベクトル(ダイレクトベクトル)を算出するものである。
AVCのダイレクト予測では、時間ダイレクトモード又は空間ダイレクトモードのいずれか一方をスライス単位で選択する。
図3において、「P」はPピクチャを表し、「B」はBピクチャを表している。Pピクチャは、1つの動きベクトル割り当て可能ブロックにつき1つの動きベクトルを用いた予測が可能なピクチャである。
また、数字0−3はピクチャの表示順を示し、時間T0,T1,T2,T3の表示画像であることを表している。
ピクチャの符号化処理は、P0,P3,B1,B2の順番で行われるものとする。
この場合、ピクチャB2の時間軸上後方にある符号化済みピクチャのうち、ピクチャB2に一番近いピクチャP3の動きベクトルであって、マクロブロックMB1と空間的に同じ位置にあるマクロブロックMB2の動きベクトルMVを用いる。
この動きベクトルMVはピクチャP0を参照しており(動きベクトルMVはピクチャP0を参照画像として探索した結果の動きベクトルである)、マクロブロックMB1を符号化する際に用いる動きベクトルMVL0,MVL1は、以下の式(1)で求められる。
動きパラメータメモリ1に対する動きベクトルの格納は、図3に示すように、Pピクチャないし、それ以降の動き補償予測に参照画像として用いるピクチャを符号化したときに、その符号化に用いた動きベクトルを1画面分順次格納する。
図4において、currentMBは、符号化対象のマクロブロックを表している。
このとき、符号化対象のマクロブロックの左横の符号化済マクロブロックAの動きベクトルをMVa、符号化対象のマクロブロックの上の符号化済マクロブロックBの動きベクトルをMVb、符号化対象のマクロブロックの右上の符号化済マクロブロックCの動きベクトルをMVcとすると、下記の式(2)に示すように、これらの動きベクトルMVa,MVb,MVcのメディアン(中央値)を求めることにより、符号化対象のマクロブロックの動きベクトルMVを推定することができる。
MV=median(MVa、MVb、MVc) (2)
なお、空間ダイレクトモードの場合も、符号化済みのマクロブロックの動きベクトルMV等を動きパラメータメモリ1に保持しておく必要がある。
以下、この実施の形態1では、動き予測モードBとして、このAVCのダイレクト予測モードを想定する。
ただし、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、差分画像を算出する処理は行わない。
J=D+λR (3)
ただし、「λ」は正の定数である。
「D」は差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号のマクロブロック内絶対値和、あるいは、差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号が圧縮部5に出力されたとき、局部復号部6から出力される局部復号予測差分信号と入力されたマクロブロックの画像との間の二乗歪み和などが用いられる。
「R」は差分画像Aを示す予測差分信号又は差分画像Bを示す予測差分信号と、それらの予測差分信号に対応する予測パラメータとが符号化された場合の符号量(または、その推定値)が用いられる。
例えば、差分画像Aのレート歪みコストJの方が小さい場合、その差分画像Aを示す予測差分信号を圧縮部5に出力し、動き予測モードAによる予測画像Aの生成で用いられた予測パラメータ(動き予測モードA、動きベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納するとともに、その予測パラメータを可変長符号化部11に出力する。
差分画像Bのレート歪みコストJの方が小さい場合、その差分画像Bを示す予測差分信号を圧縮部5に出力し、動き予測モードBによる予測画像Bの生成で用いられた予測パラメータ(動き予測モードB、ダイレクトベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納するとともに、その予測パラメータ(動き予測モードB、参照画像の識別番号)を可変長符号化部11に出力する。
なお、符号化モード判定部4は、動き予測モードBで生成された予測画像Bから算出された差分画像Bを示す予測差分信号の電力がゼロにならない場合、DCT処理や量子化処理によって得られる非ゼロ変換係数(圧縮データ)を符号化するため、その予測差分信号を圧縮部5に出力する。
即ち、符号化モード判定部4は、減算器3から出力された差分画像Bを示す予測差分信号の電力がゼロにならない場合でも、その予測差分信号を強制的にゼロ値に置換し、ゼロ値の予測差分信号を圧縮部5に出力する(ステップST7)。または、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、符号化モード判定部4は処理をスキップするようにして、圧縮部5及び局部復号部6がオールゼロの予測差分信号を内部的に生成するように構成してもよい。
また、動き予測モードBによる予測画像Bの生成で用いられた予測パラメータ(動き予測モードB、ダイレクトベクトル、参照画像の識別番号)を動きパラメータメモリ1に格納する。
このため、符号化対象のマクロブロックの符号化に要する符号量はゼロとみなされ、コストJは「D」と概ね等しい値になる。
ただし、圧縮部5は、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、符号化モード判定部4からオールゼロ値の予測差分信号が与えられるため、処理をスキップするように構成してもよい(ステップST9)。あるいは、ピクチャ符号化方法制御情報を受けて、自身が強制的にゼロ値を出力するようにしてもよい。
ただし、局部復号部6は、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、圧縮部5からオールゼロ値の圧縮データが与えられるので、処理をスキップするように構成してもよい(ステップST9)。あるいは、ピクチャ符号化方法制御情報を受けて、自身が強制的にゼロ値を出力するようにしてもよい。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器8に出力する(ステップST9)。
加算器8は、選択スイッチ7により選択された局部復号予測差分信号又はオールゼロ値と、動き補償予測部2により生成された予測画像(最も符号化効率が高い差分画像に係る予測画像)を示す予測信号を加算することで、局部復号画像を示す局部復号画像信号を生成する(ステップST8,ST9)。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、加算部8から予測画像がループフィルタ9に直接入力されるため、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する(ステップST11)。
フレームメモリ10には、ループフィルタ9から出力されたループフィルタ画像(フィルタ処理後の局部復号画像)を参照画像として格納される。
この実施の形態1では、ループフィルタ9における動きブロック境界平滑化処理は、マクロブロック境界におけるオーバラップ動き補償処理を用いる。
図5(a)のマクロブロックXは、現在の処理対象のマクロブロックであり、マクロブロックA,B,C,DはマクロブロックXを取り囲む位置にあるマクロブロックである。
本実施の形態1の動きブロック境界平滑化処理は、フレームの単位で処理を行うことを前提とし、マクロブロックXに対する平滑化処理を行う時点では、既にその周囲のマクロブロックA,B,C,Dについても同様に動きベクトルMVL0,MVL1が決定されている状態であるとする。
このことを利用して、図5(b)に示すマクロブロックX内のブロック境界領域X0〜X3に対して、以下に示すような画像データを再生成する。
u1i=MVL1iの水平成分、v1 i =MVL1iの垂直成分(i:A,B,C,Dのいずれか)
I(x,y):画素位置(x,y)の画素値
I’(x,y):オーバラップ動き補償処理による画素位置(x,y)の画素値
w0〜w4:重みパラメータ
このような重みで平滑化処理を行うことにより、マクロブロックX内の動きブロック境界のみが平滑化処理対象となり、境界位置に応じて適切な周辺マクロブロックの動きベクトルが考慮される。また、同図の重み値はビットシフトで乗除算が可能であり、演算量を抑えた処理で実現できる。入力画像が輝度信号と色差信号(あるいはRGBなど)からなるカラー画像で、マクロブロックにも各色成分のブロックが含まれる場合は、本平滑化処理は各色成分の特性に合わせて定める重みパラメータにより、それぞれの色成分ブロックに対して実行される。
また、X0〜X3領域で非ゼロの重みを定義する面積は、マクロブロックのサイズが可変となる場合、マクロブロックの大きさに応じて定めるように構成してもよい。
そこで、マクロブロックサイズが大きい場合、よりマクロブロック境界に隣接している画素だけをオーバラップ動き補償処理の対象となるようにしてもよい。
あるいは、マクロブロックサイズに応じて、マクロブロックXの中心付近に対する周辺動きベクトルによる値の重みが小さくなるように、重みパラメータを設計するようにしてもよい。
また、画像符号化装置側で、重みパラメータを最適な値に制御し、可変長符号化部11が、その重みパラメータを符号化してビットストリームに多重化するようにしてもよい。
一方、複雑な動きが多い場合には、マクロブロック境界が不連続な状態になるケースが増加するので、極力周辺のマクロブロックの影響を加味するように、重みパラメータを決める方が望ましいと考えられる。
このような状態は、符号化処理過程で映像信号の性質や符号化ビットレートなどによって変動するので、画像符号化装置側で、重みパラメータを最適な値に制御できれば符号化効率を高めることが可能になる。重みパラメータを符号化する単位は、ピクチャ単位でもよいし、マクロブロックを複数集めたスライス単位でもよい。
ただし、可変長符号化部11は、符号化モード判定部4が差分画像Aを選択している場合、動きベクトルを含んでいる予測パラメータをエントロピー符号化するが、符号化モード判定部4が差分画像Bを選択している場合、動きベクトル(ダイレクトベクトル)を含んでいない予測パラメータをエントロピー符号化する。
一方、上記コスト比較の結果「スキップピクチャ符号化を行う」ことが選択された場合は、可変長符号化部11はピクチャ符号化方法制御情報を符号化するのみで、マクロブロックレベルの一切の符号化データをビットストリームに多重化しない。ただし、重みパラメータを適応的に変化させて符号化する場合は、変化させる単位で重みパラメータ値をビットストリームに多重化する。
可変長符号化部11は、ピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば、図6(a)に示すように、ピクチャレベルのヘッダデータに加えて、ピクチャ内の複数のマクロブロックの符号化データ(圧縮データの符号化データ、予測パラメータ)を挿入しているビットストリームを生成して出力する。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図6(b)に示すように、ビットストリームには、マクロブロックの符号化データ(圧縮データの符号化データ)が多重されない。ただし、図6(b)では明記していないが、マクロブロックの符号化データ(動き予測モード及び参照画像の識別番号を示す予測パラメータ)はビットストリームに多重される。
なお、AVCのダイレクト予測では、画像復号装置の動き補償部24が独自にダイレクトベクトルを生成するので、予測パラメータには、動き補償予測部2により生成されたダイレクトベクトルが含められず、ビットストリームに多重されない。
ただし、画像復号装置において、通常ピクチャ符号化が行われているのか、スキップピクチャ符号化が行われているのかを判別することができるようにするために、可変長符号化部11が、画像符号化装置に入力されているピクチャ符号化方法選択情報をピクチャレベルのヘッダデータに多重している。
また、画像符号化装置がオーバラップ動き補償処理の重みパラメータw0〜w7を最適な値に制御していれば、可変長符号化部11が、その重みパラメータw0〜w7をピクチャレベルのヘッダデータに多重する。
この場合、画像符号化装置の処理は、スライス毎に分けて実行するように構成し、ピクチャ符号化方法選択情報は、スライス符号化方法選択情報として、スライスレベルのヘッダデータに多重し、また、重みパラメータw0〜w4もスライスレベルのヘッダデータに多重するように構成すればよい。
また、この実施の形態1では、スキップピクチャ符号化を行う場合に、通常のピクチャ符号化を行う場合の動き予測モードBを、同じように適用する例を示したが、スキップピクチャ符号化を行う場合には、当該ピクチャの符号データを一切ビットストリームに多重しないため、ダイレクトベクトルを求めるブロックの単位は必ずしもマクロブロックに限定する必要はない。スキップピクチャでは、動きベクトル割り当て単位のブロックサイズが小さくなっても動きベクトルの符号は発生しないので、この自由度を高めることにより、スキップピクチャの符号化効率を高めることができる。例えば、スキップピクチャ符号化を行う場合のブロックサイズを、入力画像のサイズやマクロブロックのサイズに応じて、符号化装置・復号装置が共通の規則で定めるように構成したり、ピクチャレベルのヘッダに、スキップピクチャ符号化を行う場合のブロックサイズを符号化して、復号装置側へ伝送するように構成してもよい。(この符号化はピクチャに限定されない。スライス単位でもかまわない)。
この他、動きブロック境界平滑化処理としては、動きベクトル割り当てブロック境界について、動きベクトルの大きさ、参照画像の識別番号の違い、境界での画素ずれの大きさなどに応じてアクティビティ値を求めて、それらアクティビティ値の大きさによって境界に隣接する画素の平滑化フィルタリングを行うような処理を導入してもよい。
可変長復号部22は、図1の画像符号化装置から出力されたビットストリームを入力すると、そのビットストリームにおけるピクチャレベルのヘッダデータを解析して、ピクチャ符号化方法選択情報を復号する(図9のステップST11)。
可変長復号部22は、そのピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示していれば(ステップST12)、ピクチャレベルのヘッダデータ以降のマクロブロック符号化データに対するエントロピー復号処理を実施して、ピクチャ内の複数のマクロブロックの圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)及び予測パラメータを復号する(ステップST13)。
可変長復号部22により復号された圧縮データ(DCT係数を量子化する際の量子化パラメータを含む)は予測誤差復号部23に出力され、予測パラメータは動き補償部24に出力される。
また、ピクチャレベルのヘッダデータ以降のマクロブロック符号化データに対するエントロピー復号処理を実施して、ピクチャ内の複数のマクロブロックの予測パラメータを復号する(ステップST14)。
可変長復号部22により復号された予測パラメータ及び重みパラメータw0〜w4は動き補償部24に出力される。
なお、可変長復号部22により復号されたピクチャ符号化方法選択情報は、動き補償部24、選択スイッチ25及びループフィルタ27に出力される。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、オールゼロ値を選択して加算器26に出力する(ステップST17)。
動き補償部24は、可変長復号部22から出力されたピクチャ符号化方法制御情報が「通常のピクチャ符号化を行う」旨を示している場合、可変長復号部22から出力された予測パラメータ内の動き予測モードが動き予測モードAであれば(ステップST18)、図1の動き補償予測部2と同様に、動き予測モードAで予測画像Aを生成する(ステップST19)。
ただし、動き補償部24は、図1の動き補償予測部2と異なり、自ら動きベクトルの探索処理を実施せずに、可変長復号部22から出力された予測パラメータ内の動きベクトルを使用する。
一方、可変長復号部22から出力された予測パラメータ内の動き予測モードが動き予測モードBであれば(ステップST18)、図1の動き補償予測部2と同様に、動き予測モードBで予測画像Bを生成する(ステップST20)
なお、動き補償部24は、当該マクロブロックの予測画像を生成すると、次のマクロブロックの予測画像を動き予測モードBで生成する場合に備えるため、当該マクロブロックの予測画像の生成に用いた動きベクトル(ダイレクトベクトル)や関連情報(動き予測モードB、参照画像の識別番号、予測誤差量など)を1画面分だけ動きパラメータメモリ21に格納する。
動き補償部24は、可変長復号部22から出力されたピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図1の動き補償予測部2と同様に、動き予測モードBで予測画像Bを生成する(ステップST21)。
一方、選択スイッチ25によりオールゼロ値が選択された場合、そのオールゼロ値と動き補償部24により生成された予測画像Bを示す予測信号とを加算することで、復号画像を示す復号画像信号を生成する(ステップST23)。
一方、そのピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示していれば、図1のループフィルタ9と同様に、予測画像の動きベクトル割り当て領域に発生するブロック境界(動き予測モードBでは、マクロブロック境界)の不連続性を緩和する動きブロック境界平滑化処理を実施する(ステップST25)。
フレームメモリ28には、ループフィルタ27から出力された再生画像(フィルタ処理後の復号画像)が参照画像される。
上記実施の形態1では、ピクチャ符号化方法制御情報が「スキップピクチャ符号化を行う」旨を示している場合、動き予測モードBがAVCのダイレクト予測モードであるとして、動き補償予測部2が予測画像Bを生成するものについて示したが、動き予測モードBがAVCのダイレクト予測モードであるものに限るものではなく、他のモードとして、動き補償予測部2が予測画像Bを生成するようにしてもよい。
図10は動き補償予測部2による予測画像Bの生成処理(符号化済みピクチャFt−1,Ft+1に対して、時間的にちょうど真ん中にあるピクチャFtをスキップピクチャとして符号化する場合の生成処理)の一例を示す説明図である。
また、図11はマクロブロックXの動きベクトルdf(x,t)の推定内容を示す説明図である。
動き補償予測部2は、図10に示すように、符号化済みピクチャFt−1,Ft+1に対して、時間的にちょうど真ん中にあるピクチャFtをスキップピクチャとして符号化する場合、処理対象のマクロブロックに関し、図10に示す両方向補間を実施する。
このとき、動きベクトルをd(x+vi,t+1),0≦i≦8,(V4=0)とし、予測誤差量をe(x+vi,t+1),0≦i≦8,(V4=0)とすると、下記の式(5)の演算を行うことで、補間画像上での処理該当ブロックにおける符号化済みピクチャFt−1に対する参照ベクトルである動きベクトルdf(x,t)の推定が可能になる。
ここでの動きベクトルdf(x,t)の推定手法は、予測誤差量が小さいほど、ベクトル自体の信頼性が高く、予測残差絶対値和が大きいほど、ベクトル自体の信頼性が低いという性質に基づく手法である。
αはピクチャFtとピクチャFt+1との間の時間間隔で定まる重み係数である。ただし、図11に示すR領域を構成している9つのマクロブロックのうち、フレーム内符号化されるブロックは上記演算から除外する。
領域R内の9つマクロブロックのうち、一定の割合以上がフレーム内符号化のブロックである場合、動きベクトルdf(x,t)が(0,0)であると推定する。
なお、スキップピクチャを生成する推定動きベクトルを求めるにあたっては、あらかじめ空間・時間的に近傍に位置する複数の動きベクトルを推定動きベクトル候補として保持しておき、その中から最適な推定動きベクトルを、符号化装置単独ないし符号化装置と復号装置の連携によって選択して、スキップピクチャの復号画像の生成に利用するように構成してもよい。符号化装置で選択する場合は、推定動きベクトルを求める単位ごとに最適な推定動きベクトルのインデックスをビットストリームに多重化するように構成する。一方、符号化装置と復号装置側で同じ判定方法を用いて選択する場合は、復号装置側に推定動きベクトル選択のための追加処理が必要になる一方、推定動きベクトルのインデックスをビットストリームに多重化する必要がないため、符号化効率を高めることができる。このように構成することにより、推定動きベクトルを複数の候補の中から選択できるようになるため、ある特定の推定方法によって一意に得られる推定動きベクトルの精度が十分でない場合にも品質を維持した符号化を行うことができる効果がある。
Claims (13)
- 入力画像を所定のブロック毎に動き補償予測を用いて圧縮符号化を行う画像符号化装置において、
上記ブロックの動きベクトルを検出する動き検出手段と、上記動き検出手段により検出された動きベクトルを用いて第1の予測画像を生成する第1の予測画像生成手段と、
上記動き検出手段により検出された動きベクトルを保持するメモリと、
上記メモリに保持される動きベクトルをもとに符号化対象のブロックの動きベクトルを生成する動きベクトル生成手段と、
上記動きベクトル生成手段により生成された動きベクトルを用いて第2の予測画像を生成する第2の予測画像生成手段と、
上記第1の予測画像生成手段により生成された第1の予測画像と符号化対象のブロックとの差分画像を符号化するとともに、上記第1の予測画像の生成に用いた動きベクトルを符号化する符号化手段と、
上記差分画像の局部復号画像を生成し、上記局部復号画像を上記第1の予測画像と加算することによって局部復号画像を生成する局部復号手段と、
上記第2の予測画像生成手段により生成された第2の予測画像に対して、ブロック境界に対する平滑化処理を行うフィルタリング手段とを備え、
上記局部復号手段によって得られる上記ブロックの第1の局部復号画像か、上記フィルタリング手段によって得られる画像のいずれかを、1つないし複数の上記ブロックから構成される所定画像領域内の局部復号画像として選択し、その選択結果をビットストリームに多重して符号化伝送することを特徴とする画像符号化装置。 - 入力画像を構成しているブロック毎に、符号化対象のブロックと参照画像の間で動きベクトルを探索し、上記動きベクトルを用いる動き補償予測処理を実施して予測画像を生成する第1の予測画像生成方式を備えるとともに、符号化済みブロックの動きベクトルから符号化対象のブロックのダイレクトベクトルを生成し、上記ダイレクトベクトルを用いる動き補償予測処理を実施して予測画像を生成する第2の予測画像生成方式を備えている予測画像生成手段と、符号化対象のブロックと上記予測画像生成手段により第1の予測画像生成方式で生成された予測画像間の差分画像の符号化効率を評価するとともに、符号化対象のブロックと上記予測画像生成手段により第2の予測画像生成方式で生成された予測画像間の差分画像の符号化効率を評価し、上記符号化効率が高い方の差分画像を選択する差分画像選択手段と、上記差分画像選択手段により選択された差分画像を量子化し、上記差分画像の量子化係数を出力する量子化手段と、上記量子化手段から出力された量子化係数及び上記差分画像選択手段により選択された差分画像に係る予測画像が第1の予測画像生成方式で生成されている予測画像であるのか、第2の予測画像生成方式で生成されている予測画像であるのかを示す予測画像識別情報を可変長符号化するとともに、上記差分画像選択手段により選択された差分画像が第1の予測画像生成方式で生成された予測画像に係る差分画像である場合、上記予測画像生成手段により探索された動きベクトルを可変長符号化して符号化データを生成する可変長符号化手段とを備えた画像符号化装置。
- 予測画像生成手段は、第1の予測画像生成方式と第2の予測画像生成方式の双方の使用を指示する制御情報が入力された場合、第1の予測画像生成方式で予測画像を生成するとともに、第2の予測画像生成方式で予測画像を生成し、第2の予測画像生成方式のみの使用を指示する制御情報が入力された場合、第1の予測画像生成方式では予測画像を生成せずに、第2の予測画像生成方式でのみ予測画像を生成することを特徴とする請求項2記載の画像符号化装置。
- 差分画像選択手段は、第2の予測画像生成方式のみの使用を指示する制御情報が入力された場合、符号化対象のブロックと予測画像生成手段により第2の予測画像生成方式で生成された予測画像間の差分画像を示す予測誤差信号をゼロ値に置き換えることを特徴とする請求項3記載の画像符号化装置。
- 量子化手段は、第2の予測画像生成方式のみの使用を指示する制御情報が入力された場合、差分画像選択手段により選択された差分画像を示す予測誤差信号に対する量子化処理を行わず、ゼロ値の予測誤差信号を可変長符号化手段に出力することを特徴とする請求項4記載の画像符号化装置。
- 量子化手段から出力された量子化係数を逆量子化し、その逆量子化結果が示す差分画像と予測画像生成手段により生成された予測画像を加算して局部復号画像を生成し、上記局部復号画像を参照画像としてフレームメモリに格納する参照画像生成手段を設け、
上記参照画像生成手段は、上記予測画像が第1の予測画像生成方式で生成されている場合、上記局部復号画像に含まれている符号化歪みを補償する歪み補償処理を実施し、上記予測画像が第2の予測画像生成方式で生成されている場合、ブロックの境界に存在している不連続性を緩和するブロック境界平滑化処理を実施することを特徴とする請求項2記載の画像符号化装置。 - 参照画像生成手段は、第2の予測画像生成方式のみの使用を指示する制御情報が入力された場合、量子化手段から出力された量子化係数に対する逆量子化処理を行わず、予測画像生成手段により生成された予測画像を局部復号画像として取り扱うことを特徴とする請求項6記載の画像符号化装置。
- 画像を所定のブロック毎に動き補償予測を用いて圧縮符号化したビットストリームを入力として、上記ブロック毎に復号伸張処理を行う画像復号装置において、
上記ブロック毎に動きベクトルをビットストリームから復号し、当該動きベクトルを用いて第1の予測画像を生成する第1の予測画像生成手段と、
上記ブロック毎に動き補償予測の差分画像の符号化データをビットストリームから復号し、当該符号化データから復号差分画像を生成する復号手段と、
上記第1の予測画像と上記復号差分画像とを加算して復号画像を得る加算手段と、
上記ビットストリームから復号された動きベクトルを保持するメモリと、
上記メモリに保持される動きベクトルをもとに復号対象のブロックの動きベクトルを生成する動きベクトル生成手段と、
上記動きベクトル生成手段により生成された動きベクトルを用いて第2の予測画像を生成する第2の予測画像生成手段と、
上記第2の予測画像生成手段により生成された第2の予測画像に対して、ブロック境界に対する平滑化処理を行うフィルタリング手段とを備え、
1つないし複数の上記ブロックから構成される所定画像領域の単位で、当該画像領域中のすべての上記ブロックが、上記加算手段から出力される復号画像か、上記フィルタリング手段から出力される画像のいずれが最終的な復号画像になるかを示す識別情報をビットストリームから復号して、上記識別情報に基づいて最終復号画像を生成することを特徴とする画像復号装置。 - 符号化データから量子化係数と、画像符号化装置では予測画像が第1の予測画像生成方式で生成されているのか、第2の予測画像生成方式で生成されているのかを示す予測画像識別情報とを復号するとともに、予測画像が第1の予測画像生成方式で生成されている場合、符号化データから動きベクトルを復号する可変長復号手段と、上記可変長復号手段により復号された量子化係数を逆量子化する逆量子化手段と、上記可変長復号手段により復号された予測画像識別情報が、画像符号化装置では予測画像が第1の予測画像生成方式で生成されている旨を示している場合、上記可変長復号手段により復号された動きベクトルを用いる動き補償予測処理を実施して予測画像を生成し、上記可変長復号手段により復号された予測画像識別情報が、上記画像符号化装置側では予測画像が第2の予測画像生成方式で生成されている旨を示している場合、復号済みブロックの動きベクトルから復号対象のブロックのダイレクトベクトルを生成し、上記ダイレクトベクトルを用いる動き補償予測処理を実施して予測画像を生成する予測画像生成手段と、上記予測画像生成手段により生成された予測画像と上記逆量子化手段の逆量子化結果が示す差分画像を加算して、上記画像符号化装置の入力画像に相当する復号画像を生成する復号画像生成手段とを備えた画像復号装置。
- 復号画像生成手段は、可変長復号手段により復号された予測画像識別情報が、画像符号化装置側では予測画像が第2の予測画像生成方式で生成されている旨を示している場合、予測画像生成手段により生成された予測画像を復号画像として取り扱うことを特徴とする請求項9記載の画像復号装置。
- 復号画像生成手段は、可変長復号手段により復号された予測画像識別情報が、画像符号化装置側では予測画像が第1の予測画像生成方式で生成されている旨を示している場合、復号画像に含まれている符号化歪みを補償する歪み補償処理を実施し、上記可変長復号手段により復号された予測画像識別情報が、画像符号化装置側では予測画像が第2の予測画像生成方式で生成されている旨を示している場合、ブロックの境界に存在している不連続性を緩和するブロック境界平滑化処理を実施することを特徴とする請求項9記載の画像復号装置。
- 予測画像生成手段が、入力画像を構成しているブロック毎に、符号化対象のブロックと参照画像の間で動きベクトルを探索し、上記動きベクトルを用いる動き補償予測処理を実施して予測画像を生成する第1の予測画像生成方式を実施する第1の予測画像生成処理ステップと、上記予測画像生成手段が、符号化済みブロックの動きベクトルから符号化対象のブロックのダイレクトベクトルを生成し、上記ダイレクトベクトルを用いる動き補償予測処理を実施して予測画像を生成する第2の予測画像生成方式を実施する第2の予測画像生成処理ステップと、差分画像選択手段が、符号化対象のブロックと上記第1の予測画像生成処理ステップで生成された予測画像間の差分画像の符号化効率を評価するとともに、符号化対象のブロックと上記第2の予測画像生成処理ステップで生成された予測画像間の差分画像の符号化効率を評価し、上記符号化効率が高い方の差分画像を選択する差分画像選択処理ステップと、量子化手段が上記差分画像選択処理ステップで選択された差分画像を量子化し、上記差分画像の量子化係数を出力する量子化処理ステップと、可変長符号化手段が、上記量子化処理ステップで出力された量子化係数及び上記差分画像選択処理ステップで選択された差分画像に係る予測画像が第1の予測画像生成方式で生成されている予測画像であるのか、第2の予測画像生成方式で生成されている予測画像であるのかを示す予測画像識別情報を可変長符号化するとともに、上記差分画像選択手段により選択された差分画像が第1の予測画像生成方式で生成された予測画像に係る差分画像である場合、上記第1の予測画像生成処理ステップで探索された動きベクトルを可変長符号化して符号化データを生成する可変長符号化処理ステップとを備えた画像符号化方法。
- 可変長復号手段が、符号化データから量子化係数と、画像符号化装置では予測画像が第1の予測画像生成方式で生成されているのか、第2の予測画像生成方式で生成されているのかを示す予測画像識別情報とを復号するとともに、予測画像が第1の予測画像生成方式で生成されている場合、符号化データから動きベクトルを復号する可変長復号処理ステップと、逆量子化手段が上記可変長復号処理ステップで復号された量子化係数を逆量子化する逆量子化処理ステップと、予測画像生成手段が、上記可変長復号処理ステップで復号された予測画像識別情報が、画像符号化装置では予測画像が第1の予測画像生成方式で生成されている旨を示している場合、上記可変長復号処理ステップで復号された動きベクトルを用いる動き補償予測処理を実施して予測画像を生成し、上記可変長復号処理ステップで復号された予測画像識別情報が、上記画像符号化装置では予測画像が第2の予測画像生成方式で生成されている旨を示している場合、復号済みブロックの動きベクトルから復号対象のブロックのダイレクトベクトルを生成し、上記ダイレクトベクトルを用いる動き補償予測処理を実施して予測画像を生成する予測画像生成処理ステップと、復号画像生成手段が上記予測画像生成処理ステップで生成された予測画像と上記逆量子化処理ステップでの逆量子化結果が示す差分画像を加算して、上記画像符号化装置の入力画像に相当する復号画像を生成する復号画像生成処理ステップとを備えた画像復号方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010081830 | 2010-03-31 | ||
JP2010081830 | 2010-03-31 | ||
PCT/JP2011/001329 WO2011121894A1 (ja) | 2010-03-31 | 2011-03-07 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2011121894A1 true JPWO2011121894A1 (ja) | 2013-07-04 |
Family
ID=44711665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012508043A Pending JPWO2011121894A1 (ja) | 2010-03-31 | 2011-03-07 | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8948243B2 (ja) |
EP (1) | EP2555523A4 (ja) |
JP (1) | JPWO2011121894A1 (ja) |
KR (1) | KR101420957B1 (ja) |
CN (1) | CN102823250B (ja) |
TW (1) | TW201206203A (ja) |
WO (1) | WO2011121894A1 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009032255A2 (en) * | 2007-09-04 | 2009-03-12 | The Regents Of The University Of California | Hierarchical motion vector processing method, software and devices |
TWI463878B (zh) | 2009-02-19 | 2014-12-01 | Sony Corp | Image processing apparatus and method |
EP2604031B1 (en) * | 2010-08-10 | 2017-03-08 | Google Technology Holdings LLC | Method and apparatus for streaming media content using variable duration media segments |
JP5594841B2 (ja) * | 2011-01-06 | 2014-09-24 | Kddi株式会社 | 画像符号化装置及び画像復号装置 |
JP6048941B2 (ja) | 2012-01-27 | 2016-12-27 | サン パテント トラスト | 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置 |
JP6422011B2 (ja) | 2012-05-11 | 2018-11-14 | サン パテント トラスト | 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 |
JP6399433B2 (ja) * | 2013-05-31 | 2018-10-03 | サン パテント トラスト | 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置 |
JP6437096B2 (ja) * | 2014-08-20 | 2018-12-12 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | ビデオ合成 |
JP6481457B2 (ja) * | 2015-03-26 | 2019-03-13 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法、動画像復号装置、及び動画像復号方法 |
CN115134611A (zh) * | 2015-06-11 | 2022-09-30 | 杜比实验室特许公司 | 使用自适应去块滤波编码和解码图像的方法及其装置 |
WO2017142183A1 (ko) * | 2016-02-15 | 2017-08-24 | 삼성전자(주) | 영상처리장치, 영상처리방법 및 이를 기록한 기록매체 |
CN116567263A (zh) | 2016-05-24 | 2023-08-08 | 韩国电子通信研究院 | 图像编码/解码方法和用于所述方法的记录介质 |
US10567793B2 (en) * | 2016-06-06 | 2020-02-18 | Google Llc | Adaptive overlapped block prediction in variable block size video coding |
US10390033B2 (en) * | 2016-06-06 | 2019-08-20 | Google Llc | Adaptive overlapped block prediction in variable block size video coding |
KR20190029748A (ko) * | 2016-09-22 | 2019-03-20 | 엘지전자 주식회사 | 영상 코딩 시스템에서 인터 예측 방법 및 장치 |
CN108304846B (zh) * | 2017-09-11 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置及存储介质 |
KR20220152299A (ko) * | 2020-03-12 | 2022-11-15 | 인터디지털 브이씨 홀딩스 프랑스 | 비디오 인코딩 및 디코딩을 위한 방법 및 장치 |
US11949877B2 (en) * | 2021-10-01 | 2024-04-02 | Microsoft Technology Licensing, Llc | Adaptive encoding of screen content based on motion type |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003102013A (ja) * | 2001-09-21 | 2003-04-04 | Hitachi Ltd | 復号装置、符号化装置、及び符号化復号装置 |
JP2005102170A (ja) * | 2003-08-14 | 2005-04-14 | Intervideo Inc | ビデオエンコーダにおける離散的余弦変換係数に適応したフィルタリングの方法およびシステム |
JP2005513883A (ja) * | 2001-12-17 | 2005-05-12 | マイクロソフト コーポレーション | スキップマクロブロックコード化 |
JP2007504760A (ja) * | 2003-09-07 | 2007-03-01 | マイクロソフト コーポレーション | インターレース・ビデオおよびプログレッシブ・ビデオのマクロブロックおよび動き情報の符号化および復号における新機軸 |
JP2007513566A (ja) * | 2003-12-02 | 2007-05-24 | ソンギュングァン ユニヴァーシティ | 動画符号化方法及び装置 |
JP2007535221A (ja) * | 2003-12-31 | 2007-11-29 | 中国科学院計算技▲づ▼研究所 | ビデオ画像のスキップマクロブロックの符号化方法 |
JP2009201112A (ja) * | 2008-02-20 | 2009-09-03 | Samsung Electronics Co Ltd | 直接モード符号化及び復号化方法 |
JP2009232324A (ja) * | 2008-03-25 | 2009-10-08 | Panasonic Corp | 画像符号化装置、画像符号化方法および画像符号化プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0817499A3 (en) * | 1996-06-28 | 2002-05-22 | Matsushita Electric Industrial Co., Ltd. | Image coding method using extrapolated pixels in insignificant areas of blocks |
DE69808519T2 (de) * | 1997-06-09 | 2003-06-26 | Hitachi, Ltd. | Verfahren zur Bildsequenzcodierung |
CN1220391C (zh) * | 2001-06-29 | 2005-09-21 | 株式会社Ntt都科摩 | 图像编码装置、图像译码装置、图像编码方法和图像译码方法 |
CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
KR20050053297A (ko) * | 2003-12-02 | 2005-06-08 | 학교법인 성균관대학 | 동영상 부호화 방법 및 장치 |
JP4414904B2 (ja) * | 2004-04-16 | 2010-02-17 | 株式会社エヌ・ティ・ティ・ドコモ | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム |
US8204126B2 (en) | 2008-01-10 | 2012-06-19 | Panasonic Corporation | Video codec apparatus and method thereof |
JP5219089B2 (ja) * | 2009-04-30 | 2013-06-26 | 株式会社メガチップス | 画像データの生成方法 |
-
2011
- 2011-03-07 US US13/638,095 patent/US8948243B2/en active Active
- 2011-03-07 EP EP11762148.2A patent/EP2555523A4/en not_active Ceased
- 2011-03-07 CN CN201180016494.7A patent/CN102823250B/zh active Active
- 2011-03-07 WO PCT/JP2011/001329 patent/WO2011121894A1/ja active Application Filing
- 2011-03-07 KR KR1020127028411A patent/KR101420957B1/ko active IP Right Grant
- 2011-03-07 JP JP2012508043A patent/JPWO2011121894A1/ja active Pending
- 2011-03-22 TW TW100109657A patent/TW201206203A/zh unknown
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003102013A (ja) * | 2001-09-21 | 2003-04-04 | Hitachi Ltd | 復号装置、符号化装置、及び符号化復号装置 |
JP2005513883A (ja) * | 2001-12-17 | 2005-05-12 | マイクロソフト コーポレーション | スキップマクロブロックコード化 |
JP2005102170A (ja) * | 2003-08-14 | 2005-04-14 | Intervideo Inc | ビデオエンコーダにおける離散的余弦変換係数に適応したフィルタリングの方法およびシステム |
JP2007504760A (ja) * | 2003-09-07 | 2007-03-01 | マイクロソフト コーポレーション | インターレース・ビデオおよびプログレッシブ・ビデオのマクロブロックおよび動き情報の符号化および復号における新機軸 |
JP2007513566A (ja) * | 2003-12-02 | 2007-05-24 | ソンギュングァン ユニヴァーシティ | 動画符号化方法及び装置 |
JP2007535221A (ja) * | 2003-12-31 | 2007-11-29 | 中国科学院計算技▲づ▼研究所 | ビデオ画像のスキップマクロブロックの符号化方法 |
JP2009201112A (ja) * | 2008-02-20 | 2009-09-03 | Samsung Electronics Co Ltd | 直接モード符号化及び復号化方法 |
JP2009232324A (ja) * | 2008-03-25 | 2009-10-08 | Panasonic Corp | 画像符号化装置、画像符号化方法および画像符号化プログラム |
Also Published As
Publication number | Publication date |
---|---|
TW201206203A (en) | 2012-02-01 |
US20130022124A1 (en) | 2013-01-24 |
US8948243B2 (en) | 2015-02-03 |
CN102823250A (zh) | 2012-12-12 |
KR101420957B1 (ko) | 2014-07-30 |
KR20130026436A (ko) | 2013-03-13 |
EP2555523A1 (en) | 2013-02-06 |
WO2011121894A1 (ja) | 2011-10-06 |
EP2555523A4 (en) | 2016-05-11 |
CN102823250B (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011121894A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP6242985B2 (ja) | 動画符号化装置 | |
KR100813963B1 (ko) | 동영상의 무손실 부호화, 복호화 방법 및 장치 | |
KR102013093B1 (ko) | 동화상 복호 장치, 동화상 복호 방법, 동화상 부호화 장치, 동화상 부호화 방법 및 기록 매체 | |
KR101365567B1 (ko) | 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치 | |
TWI739509B (zh) | 動態影像預測解碼裝置及動態影像預測解碼方法 | |
TWI722842B (zh) | 影像預測解碼方法 | |
WO2012172668A1 (ja) | 動画像符号化方法及び装置並びに動画復号化方法及び装置 | |
JP2004336369A (ja) | 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム | |
JP4793424B2 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置 | |
KR101543301B1 (ko) | 동영상 부호화/복호화 장치 및 그를 위한 하이브리드 블록 움직임 보상/중첩 블록 움직임 보상 방법 및 장치 | |
JP5442039B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
KR20080013843A (ko) | 동영상의 무손실 부호화, 복호화 방법 및 장치 | |
JP2013077865A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
KR20120008271A (ko) | 주변 화소의 정합을 이용한 예측 움직임 벡터 선택 장치 및 그 방법 | |
KR20140087137A (ko) | 적응적 양 예측 방법 및 장치 | |
JP2012080210A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JPWO2012172668A1 (ja) | 動画像符号化方法及び装置並びに動画復号化方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140408 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140606 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140708 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141008 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20141016 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20141226 |