JP5012647B2 - 画像処理装置およびその方法、並びにプログラム - Google Patents
画像処理装置およびその方法、並びにプログラム Download PDFInfo
- Publication number
- JP5012647B2 JP5012647B2 JP2008119200A JP2008119200A JP5012647B2 JP 5012647 B2 JP5012647 B2 JP 5012647B2 JP 2008119200 A JP2008119200 A JP 2008119200A JP 2008119200 A JP2008119200 A JP 2008119200A JP 5012647 B2 JP5012647 B2 JP 5012647B2
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- data
- deblocking
- hybrid
- prediction
- 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
Links
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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- 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/117—Filters, e.g. for pre-processing or post-processing
-
- 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
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- 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/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/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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
Description
特に、離散コサイン変換(Discrete Cosine Transform:DCT)等の直交変換と動き補償とにより圧縮するMEPG(Moving Picture Experts Group)などの方式に準拠した装置が普及している。
VC-1では、浮動小数点精度の離散コサイン変換(DCT)の代わりに整数変換を採用している。
このVC-1では、ピクチャ単位で動きベクトルの画素精度を1/2と1/4のうちのいずれからか選択可能な、いわゆる分数精度画素動き補償を行っている。ちなみに、MPEG‐4パート2では、ストリーム単位でしか画素精度を選択できない。
このメジアン予測の場合、局所的に大きさや向きが大幅に異なる動きベクトルが出現した場合、予測によって逆に符号量が増大するときがある。
VC‐1では、このメジアン予測を用いず、上ないし左のマクロブロックの動きベクトルをそのまま予測値として利用するマクロブロックを指定できる、ハイブリッド動きベクトル予測が行われる。
この場合、図1に示すように、ループフィルタにおいて、ブロック境界の2画素値の平均化が行われる。
I/B/BIフレームの場合、ブロックサイズを8x8の固定で全境界をデブロッキングする。
Pフレームの場合、図2に示すように、ブロックサイズ可変(8x8、8x4、4x8、4x4)であり、デブロッキング実行の条件は次の通りである。
1)ブロックのイントラ係数(intra coeff)がゼロでないブロックの境界、
2)隣接するブロックと動きベクトルの差分があるブロック、
にてデブロッキングが実行される。
動きベクトルの差分計算は、現在のマクロブロックMBCURに隣接する2つのマクロブロック、具体的には、上に隣接するマクロブロックMBABVと左に隣接するマクロブロックMBLFとの動きベクトルデータとの差分を計算する。
すなわち、図3に示すように、隣接する2つのマクロブロックの動きベクトルデータ (above_mv, left_mv) と現在のブロックの動きベクトルデータ (cur_mv) の差分を計算する。
この場合、それぞれの動きベクトルデータ取得時にメモリアクセスが発生する。
(1)ブロック境界で隣接する2つのブロックの動きベクトル同士を比較し、動きベクトルが異なる場合にそのブロック境界でデブロッキングを行う。
(2)あるブロックのデータが、そのブロックが参照する画像のデータのみで構成されず、ビットストリームからデータの追加を行う場合、そのブロックが接するブロック境界でデブロッキングを行う。
隣接する2つのブロックの動きベクトルのデータを比較するためには、2つのブロックの動きベクトルデータがそれぞれ縦方向と横方向データを持つため、4回のメモリアクセスが発生する。
デブロッキング処理部においては、動きベクトルデータのハイブリッド予測情報に応じて、動き補償された復号画像データのデブロッキング処理が行われる。
PARSING)110、イントラMB(マクロブロック)処理部120、インタMB処理部130、動きベクトルデコードおよび予測部140、動き補償部150、加算部160、デブロッキング処理部としてのループフィルタ170、フレームバッファ180、および強度補償部190を有する。
また、図5において、符号200は、デコードされたフレームを示している。
本実施形態の画像処理装置100は、特徴的な構成として、動きベクトル予測部と、動き補償部150と、デブロッキング処理部170とを有する。
動きベクトル予測部は、可変長復号化処理したデータによる動きベクトルのデコード結果によりハイブリッド動きベクトル予測を行う。動きベクトル予測部は、その結果を動きベクトルデータとして生成し、デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む。動き補償部150は、動きベクトルデータを受けて画像データの動き補償を行う。デブロッキング処理部170は、動きベクトルデータのハイブリッド予測情報に応じて、動き補償された復号画像データのデブロッキング処理を行う。
本実施形態の画像処理装置100においては、たとえば図6に示すように、隣接する2つのブロックの動きベクトルデータ (predictor_A, predictor_B) と現在のブロックの動きベクトルデータ (cur_mv) の差分を計算する。
そして、画像処理装置100は、計算の結果、x差分(水平方向の差分)とy差分(垂直方向の差分)の和が所定の値32より大きい場合、比較対象の動きベクトルで現在の動きベクトルを置換するように構成することが可能である。このことにより、デブロッキング処理時におけるメモリの動きベクトルデータへのアクセス回数を削減し、キャッシュミスを低減し、全体処理の高速化が実現される。
以下に、画像処理装置100の各部の構成、機能について具体的に説明する。
DC予測とは、隣接した「左マクロブロック(MB)と左上MBのDC成分の変化量」と「左上MBと上MBのDC成分の変化量」を比較して、より傾きの小さい方向からが現在のMBのDC成分を予測する方式である。
AC予測とは、フレーム間予測を用いずに符号化された画素ブロックについて、単純にDCT(離散コサイン変換)の係数を量子化して符号化するのではない。
AC予測とは、DCT係数行列のうち最上列または最左行の値について、上または左の隣接ブロックの値の差分を符号化することによって符号量を削減する方式である。
逆量子化部123は、得られたDCT(Discrete Cosine Transform:離散コサイン変換)係数データを逆直交変換部124に出力する。
オーバラップスムージング部125は、処理後の画像データをデブロッキング処理部としてのループフィルタ170に出力する。
逆量子化部132は、得られたDCT(Discrete Cosine Transform:離散コサイン変換)係数データを逆直交変換部133に出力する。
動きベクトル予測部142は、予測結果を動きベクトルデータとして生成し、デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように、動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む。 動きベクトル予測部142は、ハイブリッド予測情報を埋め込みに際して、たとえば最下位ビットに0,1で設定する。
動きベクトル予測部142は、ハイブリッド予測情報が埋め込まれた動きベクトルデータを動きベクトル補償部150に出力する。
そして、動きベクトルデータはメモリMRYに格納される。メモリMRYは、デブロッキング処理部としてのループフィルタ170によりアクセスされる。
動きベクトルデータ300の整数部320と小数部330のビット長は規格で規定されていないため、対象となる動画像をデコードするのに十分なビット長があれば、デコーダの実装者が自由に決定することが可能である。
小数部330は動き補償の1/4ピクセル精度を満たすため最低2ビット必要である。整数部320は高精細(HD)の動画像をデコードするための横方向の解像度2048ピクセルを表現できる11ビットで十分である。
そのため、動きベクトルデータを16ビットのデータとして格納するシステムの場合、動きベクトルデータ中に使用されないビットが発生する。
ハイブリッド動きベクトル予測で行う差分計算の結果は、縦方向と横方向の動きベクトルの差分絶対値を加算したものであり、最大16ビットの正の整数である。
本実施形態においては、比較命令を使用してその差分情報を差分があるときに1、ないときに0の1ビットのデータにする。
こうすることで差分情報は1ビットになる。
ハイブリッド動きベクトル予測によって得られた動きベクトルデータ300は、本実施形態の手法で縦または横のどちらかのデータの最下位ビットにそのベクトルの差分情報が埋め込まれる(図8(A))。
動きベクトルデータを動き補償で使用する際は差分情報をマスクして動きベクトルデータのみを取り出して(図8(B))入力する(図8(D))。
また、動きベクトルデータをデブロッキングで使用する際は動きベクトルデータをマスクして差分情報のみを取り出して(図8(C))入力する(図8(E))。
動き補償部150は、加算部160でそのとき処理しているものがPピクチャである場合、フレームバッファ180における過去のフレームに相当する画像データを読み出し、これに所定の演算処理を行って得られた演算データを加算部160に供給する。
また、動き補償部150は、加算部160でそのとき処理しているものがBピクチャである場合、フレームバッファ180における過去および未来のフレームに相当する画像データを読み出し、これに所定の演算処理を行って得られた演算データを加算部160に供給する。
ループフィルタ170は、差分情報が計算の結果、x差分(水平方向の差分)とy差分(垂直方向の差分)の和が所定の値32より大きい場合を示しているときは次の処理を行う。
すなわち、ループフィルタ170は、比較対象の動きベクトルで現在の動きベクトルを置換することにより、デブロッキング処理時におけるメモリの動きベクトルデータへのアクセス回数を削減し、キャッシュミスを低減し、全体処理の高速化を実現している。
ここでは、Pフレームの場合について説明する。
VC-1ビデオデコーダのPフレームでは、次の2つの方法によって各ブロック境界でのデブロッキングの実行の必要性を判定する。
(1)ブロック境界で隣接する2つのブロックの動きベクトル同士を比較し、動きベクトルが異なる場合にそのブロック境界でデブロッキングを行う。
(2)あるブロックのデータが、そのブロックが参照する画像のデータのみで構成されず、ビットストリームからデータの追加を行う場合、そのブロックが接するブロック境界でデブロッキングを行う。
しかしながら、VC-1ビデオデコーダでは、デブロッキングに先行して行われるハイブリッド動きベクトル予測にて隣接する2つのブロックの動きベクトルの比較を行っているため、その結果を利用することが可能である。
本実施形態においては、デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能とすることにより、本来必要のないメモリアクセスをなくし、この動きベクトルデータへの4回のメモリアクセス数を削減している。
図9は横方向80ピクセル、縦方向64ピクセルのフレームを16x16のマクロブロック(MB)単位に分割し、それぞれのMBに識別のためのアルファベットを付して示す図である。
図10は、図9におけるMB‐Mのデブロッキング実行判定時の参照MBについて示す図である。
図11は、動きベクトルを使用したデブロッキング実行判定の基本的な処理を示すフローチャートである。
そのため、MB‐Mのデブロッキング実行判定において、動きベクトルMV_Hのデータへのアクセス時にキャッシュミスの可能性が高くなる。
本実施形態においては、前述したように、デブロッキング実行判定の際の隣接するMBの動きベクトルMVデータの参照によるメモリMRYへのアクセスでのキャッシュミスを避けるため、「ハイブリッドMV予測結果の再利用」を実現している。
そして、動きベクトル予測部142にて、差分の絶対値SUMが閾値32より大きいか否かの判別を行う(ST12)。
ここで、差分の絶対値SUMが閾値32より大きい場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「1」を設定する。
差分の絶対値SUMが閾値32より大きくない場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「0」を設定する。
そして、動き補償部150による動き補償を受けたインタMBの復号画像データは、加算部160を介してデブロッキング処理部としてのループフィルタ170に入力される。
なお、ハイブリッドフラグHYBRIDPREDは、VC−1ストリーム中でハイブリッド予測を行う際に「左」または「上」のいずれのブロックのベクトルを使用するかを指定するためのフラグである。
ループフィルタ170においては、ハイブリッドフラグHYBRIDPREDが「1」である場合には、比較対象の動きベクトルMV_Hで現在の動きベクトルMV_Mを置換する(ST14)。
ループフィルタ170においては、ハイブリッドフラグHYBRIDPREDが「0」である場合には、比較対象の動きベクトルMV_Lで現在の動きベクトルMV_Mを置換する(ST15)。
そして、動きベクトル予測部142にて、差分の絶対値SUMが閾値32より大きいか否かの判別を行う(ST17)。
ここで、差分の絶対値SUMが閾値32より大きい場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「1」を設定する。
差分の絶対値SUMが閾値32より大きくない場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「0」を設定する。
そして、動き補償部150による動き補償を受けたインタMBの復号画像データは、加算部160を介してデブロッキング処理部としてのループフィルタ170に入力される。
ループフィルタ170においては、ハイブリッドフラグHYBRIDPREDが「1」である場合には、比較対象の動きベクトルMV_Hで現在の動きベクトルMV_Mを置換する(ST19)。
ループフィルタ170においては、ハイブリッドフラグHYBRIDPREDが「0」である場合には、比較対象の動きベクトルMV_Lで現在の動きベクトルMV_Mを置換する(ST20)。
このため、本実施形態においては新たなデータをロード/ストアを行うことなくその結果を再利用することができように処理されており、デブロッキングの実行判定処理時に周辺の動きベクトル(MV)データにアクセスする必要がない。
図14は、ハイブリッド動きベクトル予測時に動きベクトルの差分情報を動きベクトル(MV)データに埋め込む処理のフローチャートを示す図である。
そして、動きベクトル予測部142にて、差分の絶対値SUMが0であるか否かの判別を行う(ST22)。ステップST22において、0でないと判別すると、現在の動きベクトルMV_Mを0x1とする(ここでの0xは16進(ヘキサ)を示す)(ST23)。
次に、動きベクトル予測部142にて、差分の絶対値SUMが閾値32より大きいか否かの判別を行う(ST24)。
ここで、差分の絶対値SUMが閾値32より大きい場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「1」を設定する。
差分の絶対値SUMが閾値32より大きくない場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「0」を設定する。
動きベクトル予測部142において、ハイブリッドフラグHYBRIDPREDが「0」である場合には、比較対象の動きベクトルMV_Lの差分情報を現在の動きベクトルMV_Mに埋め込む(ST27)。この場合、動きベクトルMV_Lの情報として、図14の例では、「0xfffefffe」が埋め込まれる。
そして、動きベクトル予測部142にて、差分の絶対値SUMが0であるか否かの判別を行う(ST29)。ステップST29において、0でないと判別すると、現在の動きベクトルMV_Mを0x10000とする(ST30)。
次に、動きベクトル予測部142にて、差分の絶対値SUMが閾値32より大きいか否かの判別を行う(ST31)。
ここで、差分の絶対値SUMが閾値32より大きい場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「1」を設定する。
差分の絶対値SUMが閾値32より大きくない場合には、動きベクトル予測部142は、動きベクトルデータの最下位ビット340にハイブリッドフラグHYBRIDPREDに「0」を設定する。
動きベクトル予測部142において、ハイブリッドフラグHYBRIDPREDが「0」である場合には、比較対象の動きベクトルMV_Lの差分情報を現在の動きベクトルMV_Mに埋め込む(ST27)。この場合、動きベクトルMV_Lの情報として、図14の例では、「0xfffefffe」が埋め込まれる。
動きベクトルデータの使用時には差分情報をマスクし、差分情報の使用時には動きベクトルデータをマスクすることで、双方に影響を与えることなく使用が可能である。
動きベクトル予測部142は、ノイズ低減のためのデブロッキングフィルタをもつようなたとえばビデオコーデックの信号処理において、可変長復号化処理したデータによる動きベクトルのデコード結果によりハイブリッド動きベクトル予測を行う。
動きベクトル予測部142は、その結果を動きベクトルデータとして生成し、デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む。
動き補償部150は、動きベクトルデータを受けて画像データの動き補償を行う。
デブロッキング処理部170は、動きベクトルデータのハイブリッド予測情報に応じて、動き補償された復号画像データのデブロッキング処理を行う。
そして、画像処理Sプチ100においては、たとえば、デブロッキング実行に際して、動きベクトルデコードおよび予測部140におけるハイブリッド動きベクトル予測結果を再利用する。
ハイブリッド動きベクトル予測の場合に、たとえば図6に示すように、隣接する2つのブロックの動きベクトルデータ (predictor_A, predictor_B) と現在のブロックの動きベクトルデータ (cur_mv) の差分を計算する。
計算の結果、x差分(水平方向の差分)とy差分(垂直方向の差分)の和が所定の値32より大きい場合、比較対象の動きベクトルで現在の動きベクトルを置換する。
したがって、本実施形態によれば、以下の効果を得ることができる。
演算結果を再利用することで、デブロッキングの実行の必要性を判定する際の隣接するブロックの動きベクトルデータへのメモリアクセスを削減することができる。デブロッキングの実行の必要性を判定するためには左と上の2つの隣接するブロックの動きベクトルデータが必要であり、それぞれ縦方向と横方向のデータがあるので、1ブロックあたり合計4回のメモリアクセスを削減することができる。
演算結果を再利用することで、デブロッキングの実行の必要性を判定する際の演算を削減することができる。メモリアクセスを行って得た動きベクトルデータ1個につき1回の減算が削減されるので、1ブロックあたり合計4回の減算を削減することができる。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
Claims (9)
- ブロック単位で直交変換を施して量子化された画像圧縮情報を逆量子化する逆量子化部と、
逆量子化された係数データに対して逆直交変換処理を施し、復号画像データを出力する逆直交変換部と、
可変長復号化処理を受けたデータによる動きベクトルのデコード結果によりハイブリッド動きベクトル予測を行い、その結果を動きベクトルデータとして形成し、デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように、上記動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む動きベクトル予測部と、
上記動きベクトル予測部による動きベクトルデータを受けて上記逆直交変換部の出力画像データの動き補償を行う動き補償部と、
上記動きベクトルデータのハイブリッド予測情報に応じて、上記動き補償された復号画像データのデブロッキング処理を行うデブロッキング処理部と、
現在および比較対象の上記動きベクトルデータが隣接または非隣接の状態で格納され、上記デブロッキング処理部によりアクセス可能なメモリと、を有し、
上記動きベクトルデータは、
参照画像上の位置を表す垂直方向と水平方向のそれぞれに対応して形成され、
上記動きベクトル予測部は、
動きベクトルデータを表すビット列の中に、動きベクトルデータを使用する演算に必要のないビットに上記ハイブリッド予測情報を埋め込み、
上記デブロッキング処理部は、
上記埋め込まれたハイブリッド予測情報に応じて、デブロッキングの実行の必要性の判定を行う
画像処理装置。 - 上記動きベクトル予測部は、
比較対象の動きベクトルと現在の動きベクトルとの差分の絶対値が閾値より大きいか否かを示す情報を上記ハイブリッド予測情報として埋め込み、
上記デブロッキング処理部は、
上記埋め込まれたハイブリッド予測情報が、比較対象の動きベクトルと現在の動きベクトルとの差分の絶対値が閾値より大きいことを示しているか否かに応じて、デブロッキングの実行の必要性の判定を行う
請求項1記載の画像処理装置。 - 上記動きベクトルデータは、
固定小数点形式のデータとして形成される
請求項1または2記載の画像処理装置。 - 上記動きベクトルデータは、
符号ビット部、整数部、小数部を含む固定小数点形式であり、最下位ビット側に上記ハイブリッド予測情報が設定される
請求項3記載の画像処理装置。 - ブロック単位で直交変換を施して量子化された画像圧縮情報を逆量子化する逆量子化ステップと、
逆量子化された係数データに対して逆直交変換処理を施し、復号画像データを出力する逆直交変換ステップと、
符号化されたデータを受けて可変長復号化処理を行い、このデータによる動きベクトルをデコードするデコードステップと、
デコード結果によりハイブリッド動きベクトル予測を行い、その結果を動きベクトルデータとして生成する動きベクトル生成ステップと、
デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように、動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む動きベクトル予測ステップと、
現在および比較対象の上記動きベクトルデータをデブロッキング処理でアクセス可能にメモリに隣接または非隣接の状態で格納する格納ステップと、
動きベクトルデータを受けて上記逆直交変換ステップの出力画像データの動き補償を行う動き補償ステップと、
上記動きベクトルデータのハイブリッド予測情報に応じて、上記動き補償された復号画像データのデブロッキング処理を行うデブロッキングステップと、を有し、
上記動きベクトルデータは、
参照画像上の位置を表す垂直方向と水平方向のそれぞれに対応して形成され、
上記動きベクトル予測ステップでは、
動きベクトルデータを表すビット列の中に、動きベクトルデータを使用する演算に必要のないビットに上記ハイブリッド予測情報を埋め込み、
上記デブロッキングステップでは、
上記埋め込まれたハイブリッド予測情報に応じて、デブロッキングの実行の必要性の判定を行う
画像処理方法。 - 上記動きベクトル予測ステップでは、
比較対象の動きベクトルと現在の動きベクトルとの差分の絶対値が閾値より大きいか否かを示す情報を上記ハイブリッド予測情報として埋め込み、
上記デブロッキングステップでは、
上記埋め込まれたハイブリッド予測情報が、比較対象の動きベクトルと現在の動きベクトルとの差分の絶対値が閾値より大きいことを示しているか否かに応じて、デブロッキングの実行の必要性の判定を行う
請求項5記載の画像処理方法。 - 上記動きベクトルデータは、
固定小数点形式のデータとして形成される
請求項5または6記載の画像処理方法。 - 上記動きベクトルデータは、
符号ビット部、整数部、小数部を含む固定小数点形式であり、最下位ビット側に上記ハイブリッド予測情報が設定される
請求項7記載の画像処理方法。 - ブロック単位で直交変換を施して量子化された画像圧縮情報を逆量子化する逆量子化処理と、
逆量子化された係数データに対して逆直交変換処理を施し、復号画像データを出力する逆直交変換処理と、
符号化されたデータを受けて可変長復号化処理を行い、このデータによる動きベクトルをデコードするデコード処理と、
デコード結果によりハイブリッド動きベクトル予測を行い、その結果を動きベクトルデータとして生成する動きベクトル生成処理と、
デブロッキング実行時にハイブリッド動きベクトル予測の結果を再利用可能になるように、動きベクトルデータにデブロッキングの実行の必要性を示すハイブリッド予測情報を埋め込む動きベクトル予測処理と、
現在および比較対象の上記動きベクトルデータをデブロッキング処理でアクセス可能にメモリに隣接または非隣接の状態で格納する格納処理と、
上記動きベクトルデータをデブロッキング処理でアクセス可能にメモリに格納する格納処理と、
動きベクトルデータを受けて上記逆直交変換処理の出力画像データの動き補償を行う動き補償処理と、
上記動きベクトルデータのハイブリッド予測情報に応じて、上記動き補償された復号画像データのデブロッキング処理を行うデブロッキング処理と、を含み、
上記動きベクトルデータは、
参照画像上の位置を表す垂直方向と水平方向のそれぞれに対応して形成され、
上記動きベクトル予測処理では、
動きベクトルデータを表すビット列の中に、動きベクトルデータを使用する演算に必要のないビットに上記ハイブリッド予測情報を埋め込み、
上記デブロッキング処理では、
上記埋め込まれたハイブリッド予測情報に応じて、デブロッキングの実行の必要性の判定を行う
画像処理をコンピュータに実行させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008119200A JP5012647B2 (ja) | 2008-04-30 | 2008-04-30 | 画像処理装置およびその方法、並びにプログラム |
US12/431,869 US8432971B2 (en) | 2008-04-30 | 2009-04-29 | Image processing apparatus, image processing method and image processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008119200A JP5012647B2 (ja) | 2008-04-30 | 2008-04-30 | 画像処理装置およびその方法、並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009272718A JP2009272718A (ja) | 2009-11-19 |
JP5012647B2 true JP5012647B2 (ja) | 2012-08-29 |
Family
ID=41257059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008119200A Expired - Fee Related JP5012647B2 (ja) | 2008-04-30 | 2008-04-30 | 画像処理装置およびその方法、並びにプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8432971B2 (ja) |
JP (1) | JP5012647B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8625914B2 (en) * | 2013-02-04 | 2014-01-07 | Sony Corporation | Image processing system, image processing method and program |
EP2200321A1 (en) | 2008-12-19 | 2010-06-23 | Thomson Licensing | Method for browsing video streams |
US9237355B2 (en) * | 2010-02-19 | 2016-01-12 | Qualcomm Incorporated | Adaptive motion resolution for video coding |
JP5477575B2 (ja) * | 2010-02-23 | 2014-04-23 | 日本電気株式会社 | 超解像化制御のための圧縮復号方法及び超解像化制御のための圧縮復号回路 |
US8976856B2 (en) * | 2010-09-30 | 2015-03-10 | Apple Inc. | Optimized deblocking filters |
US10327008B2 (en) | 2010-10-13 | 2019-06-18 | Qualcomm Incorporated | Adaptive motion vector resolution signaling for video coding |
US8862769B2 (en) | 2010-11-23 | 2014-10-14 | Qualcomm Incorporated | Object-based transport protocol |
US9326007B2 (en) * | 2011-11-10 | 2016-04-26 | Stmicroelectronics Asia Pacific Pte. Ltd. | Motion compensated de-blocking |
US10631005B2 (en) * | 2014-04-21 | 2020-04-21 | Qualcomm Incorporated | System and method for coding in block prediction mode for display stream compression (DSC) |
US10715819B2 (en) * | 2017-04-26 | 2020-07-14 | Canon Kabushiki Kaisha | Method and apparatus for reducing flicker |
WO2019000443A1 (zh) * | 2017-06-30 | 2019-01-03 | 华为技术有限公司 | 一种帧间预测的方法及装置 |
WO2020024152A1 (zh) * | 2018-08-01 | 2020-02-06 | 深圳市大疆创新科技有限公司 | 视频处理设备和方法 |
JP7386883B2 (ja) * | 2019-02-27 | 2023-11-27 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | サブペル動きベクトルしきい値を使用するデブロッキング |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3057746B2 (ja) * | 1990-10-31 | 2000-07-04 | 日本ビクター株式会社 | インターレース動画像の符号化方法 |
US8107535B2 (en) * | 2003-06-10 | 2012-01-31 | Rensselaer Polytechnic Institute (Rpi) | Method and apparatus for scalable motion vector coding |
US8625680B2 (en) | 2003-09-07 | 2014-01-07 | Microsoft Corporation | Bitstream-controlled post-processing filtering |
US7567617B2 (en) * | 2003-09-07 | 2009-07-28 | Microsoft Corporation | Predicting motion vectors for fields of forward-predicted interlaced video frames |
EP1564997A1 (en) * | 2004-02-12 | 2005-08-17 | Matsushita Electric Industrial Co., Ltd. | Encoding and decoding of video images based on a quantization with an adaptive dead-zone size |
KR100843196B1 (ko) * | 2004-12-17 | 2008-07-02 | 삼성전자주식회사 | H.264/avc 비디오 디코더의 디블록킹 필터 |
JP2007036889A (ja) * | 2005-07-28 | 2007-02-08 | Sanyo Electric Co Ltd | 符号化方法 |
-
2008
- 2008-04-30 JP JP2008119200A patent/JP5012647B2/ja not_active Expired - Fee Related
-
2009
- 2009-04-29 US US12/431,869 patent/US8432971B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8432971B2 (en) | 2013-04-30 |
US20090274215A1 (en) | 2009-11-05 |
JP2009272718A (ja) | 2009-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5012647B2 (ja) | 画像処理装置およびその方法、並びにプログラム | |
RU2673277C1 (ru) | Способ и устройство для кодирования или декодирования изображения с предсказанием информации движения между уровнями в соответствии со схемой сжатия информации движения | |
JP4182442B2 (ja) | 画像データの処理装置、画像データの処理方法、画像データの処理方法のプログラム及び画像データの処理方法のプログラムを記録した記録媒体 | |
KR100963864B1 (ko) | 스케일러블 비디오 코딩에서의 계층 간 예측 모드 코딩을위한 방법 및 시스템 | |
TWI461065B (zh) | 重疊平滑與迴路內(in-loop)去區塊(deblocking)之分段處理 | |
KR101455578B1 (ko) | 동화상 부호화 장치 및 동화상 복호 장치 | |
KR101362590B1 (ko) | 화상 처리 장치 및 방법 | |
US20170188033A1 (en) | Method and Apparatus of Bandwidth Estimation and Reduction for Video Coding | |
KR20070111467A (ko) | 중간 루프 필터 데이터를 저장하는 스크래치 패드 | |
JP2013504256A (ja) | シーン切替検出 | |
JP5004180B2 (ja) | 動画像符号化装置および復号装置 | |
JP2007531345A (ja) | 高速サーチ・ブロック・マッチングを用いた動き推定 | |
JP2007013298A (ja) | 画像符号化装置 | |
KR101364532B1 (ko) | 인접 파티션의 크기를 고려한 움직임 벡터 예측 방법,장치, 인코더, 디코더 및 복호화 방법 | |
JP2011010197A (ja) | 画像符号化装置及び画像復号装置 | |
KR101051871B1 (ko) | 디블록킹 필터에서의 경계면 세기 계수 판단 장치 및 방법 | |
JP2006270851A (ja) | 画像符号化装置及び画像復号装置 | |
JP5137532B2 (ja) | 画像符号化装置及び画像符号化方法 | |
KR20130049736A (ko) | 인터 예측 방법 및 장치 | |
KR100899658B1 (ko) | 고속 동작을 위한 mpeg2/h.264 디지털 비디오트랜스코딩 시스템 및 방법 | |
JP4906458B2 (ja) | 画像符号化装置、画像符号化方法 | |
JP4779977B2 (ja) | 画像符号化・復号化装置 | |
WO2011105230A1 (ja) | フィルタ係数符号化装置、フィルタ係数復号装置、動画像符号化装置、動画像復号装置、および、データ構造 | |
JP2009246455A (ja) | 復号装置および復号方法 | |
JP4847423B2 (ja) | 動画像符号化装置、および、コンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120326 |
|
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: 20120508 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120521 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150615 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150615 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |