JP5990790B2 - Decoding method, computer readable medium storing instructions for decoding, decoding system and decoder - Google Patents
Decoding method, computer readable medium storing instructions for decoding, decoding system and decoder Download PDFInfo
- Publication number
- JP5990790B2 JP5990790B2 JP2015093801A JP2015093801A JP5990790B2 JP 5990790 B2 JP5990790 B2 JP 5990790B2 JP 2015093801 A JP2015093801 A JP 2015093801A JP 2015093801 A JP2015093801 A JP 2015093801A JP 5990790 B2 JP5990790 B2 JP 5990790B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- coefficient
- value
- prediction
- vertical
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
本出願は、1996年9月20日付けで提出された米国仮出願第60/026,933号及び1997年2月14付けで提出された米国仮出願第60/038,019号によって付与された優先権に基づくものである。 This application was granted by US Provisional Application No. 60 / 026,933 filed on September 20, 1996 and US Provisional Application No. 60 / 038,019 filed on February 14, 1997. It is based on priority.
ビデオ画像の通信、記憶及び検索のためのプロトコルとしては様々なものが知られている。プロトコルは、常に信号帯域幅を低減させることを特に重視して開発されている。信号帯域幅を低減させることにより、記憶デバイスはより多くの画像を記憶することができ、通信システムは、一定の与えられた通信速度でより多くの画像を送ることができる。信号帯域幅の減少は、信号を用いるシステム全体の容量を増大させる。 Various protocols for communication, storage and retrieval of video images are known. Protocols have been developed with a particular emphasis on always reducing the signal bandwidth. By reducing the signal bandwidth, the storage device can store more images and the communication system can send more images at a given communication speed. The reduction in signal bandwidth increases the overall capacity of the system that uses the signal.
しかしながら、帯域幅の減少には特定の欠点が付随する可能性がある。例えば、或る種の既知のコーディングシステムは損失が大きく、又復号された画像の知覚的品質に影響を及ぼしうる誤差を導く。他のコーディングシステムは、或る種のタイプの画像について大幅な帯域幅減少を達成できるが、他のタイプの画像については全く帯域幅減少を達成できない。従って、コーディング体系の選択については注意深い配慮が求められる。 However, certain disadvantages can accompany the reduction in bandwidth. For example, certain known coding systems are lossy and introduce errors that can affect the perceptual quality of the decoded image. Other coding systems can achieve significant bandwidth reduction for certain types of images, but cannot achieve bandwidth reduction at all for other types of images. Therefore, careful consideration is required when selecting a coding scheme.
従って、当該技術分野においては、知覚的に有意な誤差を導くことなく信号帯域幅を低減させる画像コーディング体系に対するニーズが存在する。 Accordingly, there is a need in the art for an image coding scheme that reduces signal bandwidth without introducing perceptually significant errors.
新しいブロックに先行する3つの画像データブロックから新しい画像データブロックを予測する予測式コーディング体系によって、先行技術の欠点は、大幅に軽減される。この新しいブロックについて、符号器は、新しいブロックに対し水平方向及び垂直方向に隣接するブロックの画像データを検査する。符号器は、2つの隣接するブロックの各々の画像データを、垂直方向に隣接するブロックに対し水平方向に隣接して位置付けされている(新しいブロックより対角線方向に上)第3のブロックの画像データに対し比較する。これらの比較から、水平及び垂直の勾配が決定される。勾配の値に基づき、符号器は、それに最も類似する水平又は垂直方向に隣接するブロックの画像データとなるべき新しいブロックの画像データを予測する。その後、符号器は、新しいブロックについての画像データの実際値と画像データの予測値の間の残留差を決定し、残余を符号化する。復号器は、水平及び垂直勾配に基づき新しいブロックのための画像データを予測しそれに残余を加算して新しいブロックの実際の画像データを再構築する逆予測を実行する。このプロセスには損失が無い。 With the predictive coding scheme that predicts a new image data block from three image data blocks preceding the new block, the disadvantages of the prior art are greatly reduced. For this new block, the encoder examines the image data of blocks adjacent to the new block in the horizontal and vertical directions. The encoder positions the image data of each of the two adjacent blocks horizontally adjacent to the vertically adjacent block (above the new block diagonally), the image data of the third block Compare to. From these comparisons, horizontal and vertical slopes are determined. Based on the slope value, the encoder predicts the image data of a new block to be the image data of the block that is most similar to it in the horizontal or vertical direction. The encoder then determines the residual difference between the actual value of the image data and the predicted value of the image data for the new block and encodes the residue. The decoder performs inverse prediction that predicts the image data for the new block based on the horizontal and vertical gradients and adds the remainder to it to reconstruct the actual image data of the new block. There is no loss in this process.
本発明に従うと、係数データのビデオコーディングは、暗黙的勾配予測によって、及び勾配予測方法により得られた結果を利用する走査技術によって、更に効率よく行うことができる。現時点では、本発明のコーディング体系は、MPEG−4ビデオ検証モデル内に採用されており、MPEG−4ビデオ規格のために考慮されつつある。 According to the present invention, video coding of coefficient data can be performed more efficiently by implicit gradient prediction and by scanning techniques that utilize the results obtained by the gradient prediction method. At present, the coding scheme of the present invention has been adopted in the MPEG-4 video verification model and is being considered for the MPEG-4 video standard.
図1(a)は、本発明の第1の実施形態に従って構築された符号器100を示す。アナログ画像信号が符号器100に供給される。画像信号は、当該技術分野において既知の技術を用いてサンプリングされ、アナログ−デジタル(「A/D」)変換器110によりデジタル信号に変換される。A/D変換器110は、画像の複数の画素に対してデジタル画像信号を生成する。代替的には、画像信号は、デジタル画像信号として符号器に供給することもできる。この場合、A/D変換器110は削除される。
FIG. 1 (a) shows an
デジタル画像信号は、処理回路120に入力される。処理回路120は、多数の機能を実行することができる。標準的には、処理回路120は、画像データをフィルタリングし、画像データを1つの輝度信号成分と2つの色信号成分に分割する。付加的には、処理回路120は、画像データをデータブロックの形にまとめる。デジタル入力信号が、走査方向における複数の画素についての情報を表す場合、処理回路120のデジタル入力は画素ブロックを表し、例えば、データを画像データの8画素×8画素のアレイの形にブロック化することができる。処理回路120は、マクロブロックベースで画像データを出力する。マクロブロックは、標準的に4つの輝度データブロックと2つの色データブロックで構成されている。処理回路120は同様に、個々の設計基準に適合するよう、フィルタリングといったような付加的な機能も実行する。
The digital image signal is input to the
処理回路120の出力は、トランスフォーム回路130に入力される。トランスフォーム回路130は、画素ドメインから係数のドメインへの、離散コサイントランスフォーム(「DCT」)コーディング又は副帯域コーディングといったような画像データのトランスフォームを実行する。画素ブロックが、等価のサイズを持つ係数ブロックへとトランスフォームされる。DCTコーディングにより出力された係数は一般に、単一のDC係数を内含する。残りは、一部が非ゼロであるAC係数である。同様にして、副帯域コーディングによって出力された係数は、様々な周波数での画像の特性を表す:標準的には、副帯域コーディングからの数多くの係数は非常に小さいものである。トランスフォーム回路130は、係数ブロックを出力する。
The output of the
量子化器140が、一定の又は可変的スカラー値(Qp)に従って、トランスフォーム回路130により生成された信号を基準化(scale)する。量子化器140は、信号を符号
化するのに利用可能な量子化レベルの数を低減させることによって、画像信号の帯域幅を減少させる。量子化プロセスは損失が大きい。量子化器140に入力された数多くの小さい係数は細分されゼロまでで打ち切られる。基準化された信号は、量子化器140から出力される。
A
予測回路150は、各ブロックの基準化されたDC係数を予測するため、勾配予測解析を実行する。予測回路150は、基準化されたAC係数を通過させることもできるし、代替的にはブロックのAC係数を予測することもできる。好ましい動作モードでは、予測回路150は、AC係数の予測モード又は通過モードの間での選択を行う。この場合、予測回路150は、動作モードを識別するべくAC予測フラグを生成する。予測回路150は、DC残留信号、AC信号(AC係数又はAC残余のいずれかを表す)及びAC予測フラグを出力する。
The
可変長コーダー160が予測回路150の出力を符号化する。可変長コーダー160は、標準的に、基準化された信号に対しランレングス(run length)コーディングを実行するハフマン符号器である。可変長コーダー160から出力されたビットストリームは、伝送するか、記憶するか、又は当該技術分野において既知の通りのその他の目的で使用することができる。
A
符号器100の中で、予測回路150及び量子化器140は、互いに独立した機能を実行する。従ってその動作順序は重要でない。図1は、予測回路150に対する入力としての量子化器140の出力を例示しているが、回路の順序を逆転することも可能である。予測回路150の出力は、量子化器140に入力できる。
In the
図1(b)において、復号器200は、上述の符号化動作を元に戻す動作を実行する。可変長復号器260が、基準化された信号を回復するための相補的プロセスを用いて、ビットストリームを解析する。符号器100の可変長コーダー160がハフマン符号器を使用していた場合は、ハフマン復号器260が用いられる。
In FIG.1 (b), the
復元回路250は、予測回路150内で実行されるものと同一の勾配解析を実行する。DC残留信号は識別され、DC係数を得るべく予測された係数に加算される。任意には、復元回路250は、AC予測フラグを識別することができ、このフラグの状態に基づいてAC情報をAC係数情報又はAC残留情報のいずれかとして解釈する。AC残留情報が存在する場合、復元回路250は、残留信号を対応する予測信号に付加してAC係数を得る。復元回路250は係数信号を出力する。
The
スカラー回路240が、量子化回路140内の除算のためのベースとして用いられたものと同じスカラーを、回復された信号に乗じる。当然のことながら、ゼロまで分割されたこれらの係数は回復されない。
逆トランスフォーム回路230は、符号器100のトランスフォーム回路130によって応用されたトランスフォームの逆を実行する。DCTトランスフォームが実行された場合、逆DCTトランスフォームが応用される。副帯域コーディングの場合も同様である。逆トランスフォーム回路230は、係数情報を画素ドメインにトランスフォームし戻す。
処理回路220は、輝度信号及び色信号を組み合わせ、特定のアプリケーションにおいて望まれるような任意の機能を実行することができる。処理回路220は、いつでも表示できる状態にある画素のデジタル信号を出力する。この時点で、信号は、デジタルモニター上に表示するのに適合した状態にある。特定のアプリケーションに適合させることが必要である場合、アナログ表示装置上での表示のためデジタル−アナログ変換器210で信号を変換することができる。
The
図2は、予測回路によって処理されたとおりのデータ構造を例示している。トランスフォーム回路から出力されたデータは、マクロブロックの形に組織された複数のブロックを表す。各々のマクロブロックは、標準的には、マクロブロックの輝度成分を表す4つのブロックとマクロブロックの色成分を表す2つのブロックによって占有されている。 FIG. 2 illustrates the data structure as processed by the prediction circuit. The data output from the transform circuit represents a plurality of blocks organized into macroblocks. Each macroblock is typically occupied by four blocks representing the luminance component of the macroblock and two blocks representing the color component of the macroblock.
各ブロックは、ブロックがそこから誘導された空間的領域の係数を表す。DCTトランスフォームが応用された場合、ブロックのDCxのDC係数が、左上コーナーのブロック
の原点にて提供される。水平方向にはDC係数が占有している横列上に又垂直方向にはDC係数が占有している縦行上に最上位係数が提供されている状態で、ブロック全体を通してAC係数が提供されている。
Each block represents the coefficient of the spatial region from which the block was derived. When a DCT transform is applied, the DC coefficient of the block's DC x is provided at the block's origin in the upper left corner. AC coefficients are provided throughout the block, with the top coefficients being provided on the rows occupied by the DC coefficients in the horizontal direction and on the vertical rows occupied by the DC coefficients in the vertical direction. Yes.
図3は、予測回路150の詳細なブロックダイヤグラムを示す。量子化器140は、基準化されたDC及びAC係数を生成する。DC係数は基準化することができ(DC=DC/Qp、標準的にはQp=8)、DC係数予測器300に入力される。DC係数予測器は勾配解析を実行する。
FIG. 3 shows a detailed block diagram of the
任意のブロックXについて、DC係数予測器300は、図2に示されているブロックXに対し水平方向に隣接するブロックA、ブロックXに対し垂直方向に隣接するブロックC及び、即ちブロックCに対し水平方向に隣接しブロックAに対し垂直方向に隣接するブロックであるブロックBのデータを、メモリ内に維持する。DC係数予測器は、ブロックA(DCA)のDC係数をブロックBのDC係数(DCB)と比較する。ブロックA及びブロックBのDC係数の間の差は、垂直勾配である。DC係数予測器300は同様に、ブロックBのDC係数(DCB)とブロックCのDC係数(DCC)を比較する。ブロックC及びブロックBの係数の間の差は水平勾配である。
For any block X, the
ブロックBからの最高の勾配と結び付けられたブロックは、予測のベースとして使用される。垂直勾配が水平勾配よりも大きい場合、ブロックAがブロックXと高い相関関係をもつことになると予想され、従って、DC係数予測器300は、ブロックXの予測のためのベースとしてそれがブロックAを用いる水平予測を利用する。水平勾配が垂直勾配よりも大きい場合、従って、DC係数予測器300は、ブロックXの予測のためのベースとしてそれがブロックCを用いる垂直予測を利用する。DC係数予測器300は、減算器310に対し予測のために使用されたブロックのDC係数(DCA又はDCC)を出力する。DC係数予測器300は、同様に、水平予測又は垂直予測のいずれが実行されるかを示すhor/vert信号320も生成する。
The block associated with the highest gradient from block B is used as the basis for prediction. If the vertical gradient is greater than the horizontal gradient, it is expected that block A will have a high correlation with block X, so DC
減算器310は、ブロックXについてのDC残留信号を得るためブロックXのDC係数からDC係数予測器300によって生成されたDC係数を減算する。DC残余は、予測回路150から可変長コーダー160へ出力される。
The
上述のブロセスは、コーディングすべき画像の内部でのブロックの係数を予測するために利用される。しかしながら、ビデオオブジェクト平面の新しい横列の開始点で係数を予測する場合、予測のための先行ブロックは、通常のプロセスのもとで上にあるラインの最後のブロックである。標準的にはこれらのブロック間にはほとんど相関関係がない。 The process described above is used to predict the coefficients of a block within the image to be coded. However, when predicting coefficients at the start of a new row in the video object plane, the preceding block for prediction is the last block of the line that is up under normal processing. There is typically little correlation between these blocks.
図2中のブロックYがビデオオブジェクト平面の開始縁にあると仮定する。走査方向では、いかなるブロックも水平方向にブロックYと隣接していない。上にある横列内の最終ブロックの画像データは、「水平方向に隣接する」ブロックとして使用されるべく利用可能な状態にあるものの、これは予測のためには用いられない。その代わり、DC係数予測器300は、水平方向に隣接するブロック及びその上にあるブロックのためのDC係数値を、人工的に半強度信号にセットする。DC係数が8ビットのワードによって表される場合、これらのゴーストブロックのDC係数は、128にセットされる。このとき、DC係数予測器300は、上述のプロセスに従って勾配予測を実行する。
Assume that block Y in FIG. 2 is at the starting edge of the video object plane. In the scanning direction, no block is adjacent to block Y in the horizontal direction. Although the image data of the last block in the upper row is available to be used as a “horizontal adjacent” block, it is not used for prediction. Instead, the
上述の通り、予測回路150は、予測無しでAC係数を通過させることができる。しかしながら、好ましい一実施形態においては、予測回路150は、AC係数を予測するために勾配解析を用いる。
As described above, the
予測回路150がAC係数を予測した時点で、AC係数の一部分のみがブロック間の高い相関関係を示し得る。DCTトランスフォームコーディング及び水平予測の場合においては、予測解析に値するほど十分に高い相関関係を示す可能性の高い唯一のAC係数は、
DC係数と同じ縦行内にあるものである(ブロックA内で影のついたもの)。従って、DC係数と同じ縦行内のブロックXの各々のAC係数(ACX(0,1)〜ACX(0,n))について、AC係数予測器330は、ブロックA(ACA(0,1)〜ACA(0,n))の同じ場所に配置されたAC係数に対応する予測を生成する。予測されたAC係数は、AC予測残留信号を得るべく、減算器340においてブロックXの実際のAC係数から減算される。
When the
It is in the same vertical row as the DC coefficient (shaded in block A). Therefore, for each AC coefficient (AC X (0,1) to AC X (0, n)) of the block X in the same column as the DC coefficient, the
DCTトランスフォームコーディング及び垂直予測の場合では、予測解析に値するほどの充分高い相関関係を示す確率の高い唯一のAC係数は、DC係数と同じ横列内にあるものである(ブロックC内で影がついたもの)。DC係数と同じ横列内のブロックXの各々のAC係数(ACX(1,0)〜ACX(n,0))について、AC係数予測器330は、ブロックCのAC係数(ACC(1,0)〜ACC(n,0))に対応する予測を生成する。予測されたAC係数は、AC係数残留信号を得るべく減算器340においてブロックXの実際のAC係数から減算される。AC係数予測器は、水平予測モードと垂直予測モードの間で、hor/vert信号320によって切り替えられる。上述のもの以外のAC係数の勾配予測は実行する必要がない。
In the case of DCT transform coding and vertical prediction, the only AC coefficient that has a high probability of exhibiting a correlation high enough for prediction analysis is the one in the same row as the DC coefficient (with shadows in block C). ) For each AC coefficient (AC X (1, 0) to AC X (n, 0)) of block X in the same row as the DC coefficient,
ブロック間のAC係数の相関関係は、発生する可能性はあるものの、必ず発生するわけではない。従って、AC係数の予測は常に帯域幅効率化を導くわけではない。従って好ましい実施形態においては、予測回路150は、AC係数予測が実行されるモードとAC係数予測が実行されない第2のモードの間の動作モードの選択を可能にする。後者のケースでは、トランスフォーム回路からのAC係数は、変化無く予測回路の中を通過する。
The AC coefficient correlation between blocks may occur, but it does not always occur. Therefore, AC coefficient prediction does not always lead to bandwidth efficiency. Thus, in a preferred embodiment, the
残余がわかった時点で、AC予測解析器350は、予測無しでマクロブロックのAC係数を伝送することによって消費されるはずの帯域幅と、マクロブロックのAC残余信号を伝送することによって消費されるはずの帯域幅を比較する。予測解析器350は、比較的小さい帯域幅を消費する伝送モードを選択する。予測解析器350は、その選択を表示するべくAC予測フラグ信号360を生成する。
When the residual is known, the
「類似種」ブロックに基づいて予測が実行される。輝度データブロックの予測のためのブロックを識別する場合には、輝度データの隣接ブロックのみが考慮される。予測の目的では、介在する色データブロックは全て無視される。色ブロックの係数を予測する場合には、予測のため、類似種の色信号のみが考慮される。色信号の1つのタイプであるCrデ
ータのブロックのためのデータを予測するときには、Crデータの隣接ブロックが考慮さ
れるが、介在する輝度ブロック及び第2のタイプの色信号CDデータは無視される。同様
にして、色信号の第2のタイプであるCDデータのブロックのためのデータを予測すると
きには、CDデータの隣接ブロックが考慮されるが、介在する輝度ブロック及びCrデータは無視される。
Prediction is performed based on “similar species” blocks. When identifying blocks for prediction of luminance data blocks, only adjacent blocks of luminance data are considered. For prediction purposes, all intervening color data blocks are ignored. When predicting color block coefficients, only similar types of color signals are considered for prediction. When predicting data for a block of Cr data that is one type of color signal, adjacent blocks of Cr data are considered, but the intervening luminance block and the second type of color signal CD data are It will be ignored. Similarly, when predicting the data for the C of the D data block which is the second type of color signals is adjacent blocks of C D data are considered, luminance blocks and C r data intervening ignored The
予測回路150は、DC残留信号、AC係数又はAC残余のいずれかを表す信号及びAC予測フラグ信号を出力することができる。
The
図4に示されている復元回路250の中で逆予測動作が実行される。全てのブロックXについて、DC係数予測器400は、ブロックXに先行する隣接ブロックAのデータ、ブロックXより上の隣接ブロックCのデータ及びブロックXより上のブロックであるブロックCに先行するブロックBのデータをメモリ内に保持する。DC係数予測器400は、ブロックAのDC係数をブロックBのDC係数と比較して、垂直勾配を決定する。更に、DC係数予測器400は、ブロックCのDC係数をブロックBのDC係数と比較して水平勾配を決定する。水平勾配が垂直勾配よりも大きい場合、DC係数予測器400は、予測のためのベースとしてブロックCのDC係数を生成する。そうでなければ、DC係数予測器
400はブロックAのDC係数を生成する。DC係数予測400は同様に、水平又は垂直のいずれの予測が使用されているかを識別するhor/vert信号420をも生成する。
An inverse prediction operation is performed in the
復元回路250は、入力ビットストリームからのDC残留信号を識別する。加算器410は、DC係数予測器400によって生成されたDC係数に対してDC残余を加算する。加算器410は、ブロックXのDC係数を出力する。
The
好ましい実施形態においては、復元回路250は、入力ビットストリームからAC予測フラグ360を識別する。AC予測フラグ360が、AC予測が使用されたことを表示した場合、復元回路は、入力ビットストリームからのAC残留信号を識別し、AC係数予測器430を動作させる。DC係数予測器からのhor/vert信号420が、ブロックA又はブロックCのいずれが予測のベースとして用いられるかを識別する。これに応えて、AC係数予測器430は、予測器150のAC係数予測器330と同じ要領でブロックA又はブロックCのAC係数に対応する信号を生成する。加算器440が、予測されたAC係数を、対応する残余に加算し、復元されたAC係数を出力する。
In the preferred embodiment, the
AC予測フラグが、AC予測が使用されなかったことを表示したならば、復元回路250は、ビットストリームからのAC係数信号を識別する。AC係数を復元するのにいかなる算術演算も不要である。
If the AC prediction flag indicates that AC prediction was not used, the
DC予測の高度化は、好ましい実施形態において、予測ブロックからの知覚的に優位なAC係数の一部分のブロックXの、DC係数に対する寄与を誘発することによって達成することができる。例えば、予測ベースとしてブロックAが使用される場合、ブロックXの予測されたDC係数は、次のものとしてセットされる:
DCX=DCA+(4Qp/3)*(AC02A−AC01A/4)
尚、式中Qpは量の基準化因子であり、AC02A及びAC01AはDCTトランスフォーム
によって生成されるブロックAのAC係数である。
Sophistication of DC prediction can be achieved in the preferred embodiment by inducing a contribution to the DC coefficient of block X that is part of the perceptually dominant AC coefficient from the prediction block. For example, if block A is used as the prediction base, the predicted DC coefficients of block X are set as:
DC X = DC A + (4Q p / 3) * (AC 02A -AC 01A / 4)
In the formula, Q p is a quantity normalization factor, and AC 02A and AC 01A are AC coefficients of block A generated by the DCT transform.
同様にして、予測のためのベースとしてブロックCが使用される時、ブロックXの予測されたDC係数は次のようにセットされ得る:
DCX=DCC+(4Qp/3)*(AC20C−AC10C/4)
尚、式中Qpは量の基準化因子であり、AC20C及びAC10CはDCTトランスフォーム
によって生成されるブロックCのAC係数である。
Similarly, when block C is used as the basis for prediction, the predicted DC coefficient of block X may be set as follows:
DC X = DC C + (4Q p / 3) * (AC 20C -AC 10C / 4)
In the formula, Q p is a quantity normalization factor, and AC 20C and AC 10C are AC coefficients of the block C generated by the DCT transform.
本書に記述されている予測及び復元プロセスは、予測のためにどのブロックが使用されているかを識別するのにいかなるオーバーヘッド信号も必要とされないことから、「暗黙の(implicit)」方法と呼ばれる。動作中、ブロックA、B及びCの係数値は、符号器100と復号器200の両方で知られている。かくして、復号器200は、付加的な信号伝送無く符号器の予測動作を復元することができる。予測回路がAC予測のモード間の選択を行わなかった実施形態では、AC予測及び復元は純粋に暗黙のものである。第2の実施形態においてはAC予測フラグの付加に伴って、予測プロセスはもはや純粋に暗黙のものではなくなる。
The prediction and restoration process described in this document is called an “implicit” method because no overhead signal is needed to identify which blocks are used for prediction. In operation, the coefficient values for blocks A, B and C are known by both
予測及び復元回路の符号化/復号化動作は、プログラミングされたマイクロプロセッサ又はデジタル信号プロセッサによってソフトウエア内でも実行され得る。 The encoding / decoding operation of the prediction and reconstruction circuit can also be performed in software by a programmed microprocessor or digital signal processor.
図5は、ソフトウエアで実行された予測回路の動作を例示している。プロセッサは、ブロックAのDC係数をブロックBのDC係数に比較して垂直勾配を決定する(ステップ1000)。プロセッサは同様に、ブロックCのDC係数をブロックBのDC係数に比較し
て水平勾配を決定する(ステップ1010)。
FIG. 5 illustrates the operation of the prediction circuit executed by software. The processor compares the DC coefficient of block A to the DC coefficient of block B to determine the vertical slope (step 1000). The processor similarly compares the DC coefficient of block C with the DC coefficient of block B to determine the horizontal slope (step 1010).
プロセッサは、垂直勾配が水平勾配よりも大きいか否かを決定する(ステップ1020)。そうである場合、プロセッサは、ブロックXのDC残余を、ブロックXの実際のDC係数からブロックAのDC係数を引いたものとして定義づける(ステップ1030)。そうでなければ、プロセッサは、ブロックXのDC残余を、ブロックXの実際のDC係数からブロックCのDC係数を引いたものとして定義づける(ステップ1040)。 The processor determines whether the vertical gradient is greater than the horizontal gradient (step 1020). If so, the processor defines the DC residual of block X as the actual DC coefficient of block X minus the DC coefficient of block A (step 1030). Otherwise, the processor defines the DC residual of block X as the actual DC coefficient of block X minus the DC coefficient of block C (step 1040).
プロセッサがAC予測も実行する場合、プロセッサは、図6に示されているように作動する。ステップ1000〜1040が、図5に関して前述したとおりに行われる。垂直勾配が水平勾配よりも大きい場合、DC係数と同じ縦行の中にあるブロックAからのAC係数は、ブロックXの対応するAC係数を予測するためのベースとして用いられる。従って、ブロックXのこのようなAC係数(ACX(0,1)〜ACX(0,n))の各々について、プロセッサは、ブロックX内の実際のAC係数からブロックA内の対応するAC係数(ACA(0,1)〜ACX(0,n))を引いたものにセットされたAC残余を計算する(ステップ1035)。 If the processor also performs AC prediction, the processor operates as shown in FIG. Steps 1000-1040 are performed as described above with respect to FIG. If the vertical gradient is greater than the horizontal gradient, the AC coefficient from block A in the same column as the DC coefficient is used as a basis for predicting the corresponding AC coefficient of block X. Thus, for each such AC coefficients of the block X (AC X (0,1) ~AC X (0, n)), the processor, corresponding in the block A from the actual AC coefficient in the block X AC The AC residual set to the coefficient (AC A (0,1) to AC X (0, n)) minus is calculated (step 1035).
ブロックCが予測のベースとして用いられる場合、DC係数の同じ横列内のAC係数は、ブロック間の相関関係を示す可能性がある。従って、ブロックXの横列内の各々のAC係数AC(i)について、プロセッサは、ブロックX内の実際のAC係数からブロックC内の対応するAC係数を引いたものにセットされた残余(i)を計算する(ステップ1045)。 If block C is used as the basis for prediction, AC coefficients in the same row of DC coefficients may indicate a correlation between the blocks. Thus, for each AC coefficient AC (i) in the row of block X, the processor sets the residual (i) set to the actual AC coefficient in block X minus the corresponding AC coefficient in block C. Is calculated (step 1045).
プロセッサは同様に、AC係数を予測することによって帯域幅節減が達成されたか否かをも決定する。1つのマクロブロックについて全ての予測がひとたび行われると、プロセッサは、より小さい帯域幅が、符号化された係数又は残余のいずれによって達成されているか否かを決定する(ステップ1050)。残余がより小さい帯域幅を有しているならば、プロセッサは残余を出力する(ステップ1060)。そうでなければ、プロセッサは、係数を出力する(ステップ1070)。 The processor also determines whether bandwidth savings have been achieved by predicting AC coefficients. Once all predictions have been made for a macroblock, the processor determines whether less bandwidth is achieved by the encoded coefficients or the residual (step 1050). If the residue has less bandwidth, the processor outputs the residue (step 1060). Otherwise, the processor outputs a coefficient (step 1070).
好ましい実施形態においては、勾配予測に対し可変長コーダー160の走査方向を拘束することによって、付加的な帯域幅係数が得られる。符号器は、VLCコーディングされたランレベル事象(run-level events)を生成するため、係数ブロックを走査する。しかしながら、自然の画像では、優勢な好ましい走査方向が往々にして存在する。本発明は、ランレングスコーディングを実行するための3つの走査方向の内の1つを選択するべく、勾配予測解析を用いる。
In the preferred embodiment, additional bandwidth coefficients are obtained by constraining the scan direction of the
走査方向の内の第1のものは、上の表1に示されている水平交互走査である。水平交互サーチは、好ましい走査方向が水平方向である場合に利用される。走査は、ブロックのDC残余の位置である原点から開始する。原点から、走査は水平方向に3つの位置を横断する(0〜3)。4番目の位置から、走査は、第2横列の第1の位置まで下方に飛び越す。第2横列の第1の位置から、走査は水平方向に3位置を横断する。その後、走査は、ブロックの第1横列まで飛び越して戻り、横列の残りを横断する。第1横列が終結した時点で、走査は、第3横列へと飛び越す。 The first of the scanning directions is the horizontal alternating scanning shown in Table 1 above. The horizontal alternate search is used when the preferred scanning direction is the horizontal direction. Scanning starts from the origin, which is the DC residual position of the block. From the origin, the scan traverses three positions in the horizontal direction (0-3). From the fourth position, the scan jumps down to the first position in the second row. From the first position in the second row, the scan traverses three positions in the horizontal direction. The scan then jumps back to the first row of blocks and traverses the rest of the row. At the end of the first row, the scan jumps to the third row.
水平交互走査は、同一の要領で、次の5回のパス(横列3〜8)を横断する。i番目の横列内の第1の位置から、走査は水平走査方向に3つの位置を横断する。次に走査は(i−1)横列まで飛び越し、第5の位置から横列の終わりまで走査する。5番目のパスの終結時点で、走査は、第8横列の第5の位置まで飛び越え、その横列の終わりまで横断する
。
The horizontal alternate scan traverses the next five passes (rows 3-8) in the same manner. From the first position in the i th row, the scan traverses three positions in the horizontal scan direction. Next, the scan jumps to (i-1) row and scans from the fifth position to the end of the row. At the end of the fifth pass, the scan jumps to the fifth position of the eighth row and traverses to the end of that row.
走査方向の内の第2のものは、表2に示されている垂直交互走査である。垂直交互サーチは、好ましい走査方向が垂直方向であるとき利用される。垂直交互走査は、水平交互走査に対する相補的プロセスである。 The second of the scanning directions is the vertical alternating scanning shown in Table 2. Vertical alternating search is utilized when the preferred scanning direction is the vertical direction. Vertical alternating scanning is a complementary process to horizontal alternating scanning.
原点から、走査は、垂直方向に3つの位置を横断する(0〜3)。第4の位置から、走査は、第2縦行の第1の位置まで飛び越える。第2縦行の第1の位置から、走査は垂直方向に3つの位置を縦断する。その後、走査はブロックの第1縦行まで飛び越えて戻り、縦行の残りを縦断する。第1縦行の終結時点で、走査は、第3横列まで飛び越す。 From the origin, the scan traverses three positions in the vertical direction (0-3). From the fourth position, the scan jumps to the first position in the second column. From the first position in the second longitudinal row, the scan cuts through three positions vertically. Thereafter, the scan jumps back to the first vertical row of the block and traverses the remainder of the vertical row. At the end of the first column, the scan jumps to the third row.
垂直交互走査は、同じ要領で次の5回のパス(縦行3〜8)を縦断する。i番目の横列の中の第1の位置から、走査は垂直走査方向に3つの位置を縦断する。走査はその後、(i−1)縦行まで飛び越え、第5の位置から縦行の終わりまで走査する。5番目のパスの終結時点で、走査は8番目の縦行の第5の位置まで飛び越え、縦行の終わりまで横断する。
In the vertical alternate scanning, the next five passes (
第3の走査方向は、当該技術分野において周知のものである従来のジグザグ走査である。 The third scan direction is a conventional zigzag scan that is well known in the art.
可変長コーダー160は、実行されたAC予測のタイプに従って、走査タイプを選ぶ。いかなるAC予測も実行されていないことをAC予測フラグ360が表示した場合、可変長コーダー160は、従来のジグザク走査を実行する。AC予測が実行されていることをAC予測フラグが表示した場合、可変長コーダー160は、従来のジグザグ走査を実行する。AC予測が実行されていることをAC予測フラグが表示した場合、可変長コーダー160はhor/vert信号320を参照して、水平予測又は垂直予測のいずれが用いられているかを見極める。水平予測の場合には、垂直対角線方向の走査が利用される。垂直予測が用いられる場合、可変長コーダー160は水平−対角線方向走査を利用する。
The
走査方向を決定するのに付加的なオーバーヘッドは全く必要でない。可変長復号器260は、走査方向を決定する。AC予測フラグ360及びhort/vert信号420は、復元回路250から出力する。AC予測が実行されなかったことをAC予測フラグ360が表示した場合、可変長復号器260は、ジグザクパターンに従って係数をアセンブルする。AC予測が実行されたことをAC予測フラグが表示した場合、可変長復号器260は、勾配予測に基づいて残余をアセンブルする。残余は、水平予測の場合には垂直−対角線走査に従って、又垂直予測の場合には水平−対角線方向走査によってアセンブルされる。もう1つの実施形態では、水平交互及び垂直交互走査は、以下の表3及び4の中にそれぞれ示されているように展開することができる。
No additional overhead is required to determine the scan direction. The
さらにもう1つの実施形態では、水平交互及び垂直交互走査は、それぞれ以下の表5及び6に示されているように展開することができる。 In yet another embodiment, horizontal alternating and vertical alternating scans can be developed as shown in Tables 5 and 6 below, respectively.
表5の水平交互走査は、ブロックのDC残余の位置(位置0)である原点で始まる。この原点から、走査は、水平方向に3つの位置をステップする(位置0〜3)。走査は、原点の下の第2横列の第1の位置まで飛び越す(位置4)。位置4から、水平交互走査は、水平方向に1段ステップし(位置5)、次に、第3横列の第1の位置(位置6)まで飛び越す。走査は水平方向に1位置ステップし(位置7)、第3の位置で第2横列まで戻り(位置8)、横列を横断して1位置だけステップする(位置9)。 The horizontal alternating scan in Table 5 starts at the origin, which is the DC residual position (position 0) of the block. From this origin, the scan steps in three positions in the horizontal direction (positions 0-3). The scan jumps to the first position in the second row below the origin (position 4). From position 4, the horizontal alternating scan steps one step in the horizontal direction (position 5), and then jumps to the first position (position 6) in the third row. The scan steps one position in the horizontal direction (position 7), returns to the second row at the third position (position 8), and steps one position across the row (position 9).
位置9から、水平交互走査は第5の位置で最初の横列まで戻る(位置10)。走査は、第1横列の終わりまで横断してステップする(位置11〜13)。走査は横列の最後で(位置14)第2横列に戻り、第2横列が完了するまで内部に向かって横列を横断して水平方向に走査する(位置15〜17)。位置17から、水平交互走査は、第4の位置で第3横列に戻り(位置18)、原点に向かって水平方向に1ステップ走査し(位置19)、第4横列の最初の位置まで飛び越す(位置20)。 From position 9, the horizontal alternating scan returns to the first row at the fifth position (position 10). The scan steps across to the end of the first row (positions 11-13). The scan returns to the second row at the end of the row (position 14) and scans horizontally across the row inward (positions 15-17) until the second row is complete. From position 17, the horizontal alternating scan returns to the third row at the fourth position (position 18), scans one step in the horizontal direction toward the origin (position 19), and jumps to the first position in the fourth row ( Position 20).
第4横列の第1の位置から、水平交互走査は水平方向に1位置だけステップし(位置21)、次に第5横列の第1の位置まで飛び越し(位置22)、再び水平に1位置だけステップする(位置23)。走査は、第3の位置で第4横列まで戻り(位置24)、1ステップを横断して走査し(位置25)、次に、第5の位置で第3横列まで戻る(位置26)。走査は、第3横列を横断して水平にステップし、横列を完了する(位置27〜29)。 From the first position in the fourth row, the horizontal alternating scan steps one position in the horizontal direction (position 21), then jumps to the first position in the fifth row (position 22), and again only one position horizontally. Step (position 23). The scan returns to the fourth row at the third position (position 24), scans across one step (position 25), and then returns to the third row at the fifth position (position 26). The scan steps horizontally across the third row to complete the row (positions 27-29).
第3横列の終わりから、水平交互走査は、第5の位置で第4横列まで戻る(位置30)。走査は、第4横列を横切って水平にステップして横列を完了する(位置31〜33)。 From the end of the third row, the horizontal alternating scan returns to the fourth row at the fifth position (position 30). The scan steps horizontally across the fourth row to complete the row (positions 31-33).
第4横列の終わりから、水平交互走査は第3の位置で第5横列まで戻る(位置34)。走査は、水平方向に1位置だけステップし(位置35)、次に、第6横列の第1の位置まで飛び越す(位置36)。走査は、1位置を横切ってステップし(位置37)、次に、第7横列の第1の位置まで飛び越す(位置38)。水平交互走査は1位置を横断してステップし(位置39)、次に、第3の位置で第6横列まで戻る(位置40)。走査は、1位置だけ横切ってステップし(位置41)、次に第5の位置で第5横列まで戻る(位置42)。水平交互走査は水平に第5横列を横断してステップしてこの横列を完了する(位置43〜45)。 From the end of the fourth row, the horizontal alternating scan returns to the fifth row at the third position (position 34). The scan steps one position in the horizontal direction (position 35) and then jumps to the first position in the sixth row (position 36). The scan steps across one position (position 37) and then jumps to the first position in the seventh row (position 38). The horizontal alternating scan steps across one position (position 39) and then returns to the sixth row at the third position (position 40). The scan steps across one position (position 41) and then returns to the fifth row at the fifth position (position 42). The horizontal alternating scan steps horizontally across the fifth row to complete this row (positions 43-45).
第5横列の終わりから、水平交互走査は第5の位置で第6横列まで戻り(位置46)、水平方向に横断してステップしてその横列を完了する(位置47〜49)。 From the end of the fifth row, the horizontal alternating scan returns to the sixth row at the fifth position (position 46) and steps across the horizontal to complete the row (positions 47-49).
第6横列の終わりから、水平交互走査は、第7横列の第3の位置まで戻る(位置50)。走査は水平方向に1位置だけステップし(位置51)、次に、第8横列の最初の位置まで飛び越す(位置52)。走査は、水平方向に3位置ステップし(位置53〜55)、次に、第5の位置で第7横列まで戻る(位置56)。水平交互走査は、水平に横断してその横列を完了する(位置57〜59)。第7横列の終わりから、走査は、第8横列の第5の位置まで飛び越し(位置60)、水平方向に横切ってステップしてその横列を完了する(位置61〜63)。 From the end of the sixth row, the horizontal alternating scan returns to the third position of the seventh row (position 50). The scan steps one position in the horizontal direction (position 51) and then jumps to the first position in the eighth row (position 52). The scan is stepped 3 positions in the horizontal direction (positions 53-55) and then returned to the seventh row at the fifth position (position 56). The horizontal alternating scan completes the row across the horizontal (positions 57-59). From the end of the seventh row, the scan jumps to the fifth position of the eighth row (position 60) and steps across the horizontal to complete the row (positions 61-63).
表6の垂直交互走査は、ブロックのDC残余の位置である原点で始まる(位置0)。走査は、垂直方向に3つの場所だけステップする(位置0〜3)。走査は、原点から縦断して第2縦行の第1の位置まで飛び越す(位置4)。位置4から、垂直交互走査は、垂直方向に1段ステップし(位置5)、次に第3縦行の第1の位置まで飛び越す(位置6)。走査は、垂直方向に1位置だけステップし(位置7)、次に、第3の位置で第2縦行まで戻り(位置8)、垂直方向に1位置だけステップする(位置9)。 The vertical alternating scan in Table 6 begins at the origin, which is the position of the DC residual of the block (position 0). The scan steps in three places in the vertical direction (positions 0-3). The scanning is longitudinally cut from the origin and jumps to the first position in the second longitudinal row (position 4). From position 4, the vertical alternating scan steps one step in the vertical direction (position 5) and then jumps to the first position of the third longitudinal row (position 6). The scan steps one position in the vertical direction (position 7), then returns to the second longitudinal row at the third position (position 8) and steps one position in the vertical direction (position 9).
位置9から、垂直交互走査は、第1縦行の第5位置まで戻る(位置10)。走査は、第1縦行の終わりまでステップする(位置11〜13)。走査は、縦行の終わりで第2縦行まで戻り(位置14)、第2縦行が完了するまで縦行の内部に向かって縦行を通って垂直に走査する(位置15〜17)。位置17から、垂直交互走査は、第3縦行、第4位置まで戻り(位置18)、縦行の最上部に向かって垂直方向に1段走査し(位置19)、第4縦行の第1の位置まで飛び越す(位置20)。 From position 9, the vertical alternating scan returns to the fifth position of the first longitudinal row (position 10). Scanning steps to the end of the first column (positions 11-13). The scan returns to the second vertical line at the end of the vertical line (position 14) and scans vertically through the vertical line toward the interior of the vertical line (positions 15-17) until the second vertical line is completed. From position 17, the vertical alternating scan returns to the third vertical line and the fourth position (position 18), scans one stage in the vertical direction toward the top of the vertical line (position 19), and the fourth vertical line Jump to position 1 (position 20).
第4縦行の中の第1の位置から、垂直交互走査は垂直方向に1位置だけステップし(位置21)、次に第5縦行内の最初の位置まで飛び越し(位置22)、再び垂直方向に1位置ステップする(位置23)。走査は第3の位置で第4縦行(位置24)まで戻り、垂直方向に1段ステップし(位置25)、次に、第5の位置で第3縦行まで戻る(位置26)。走査は、垂直に第3縦行を通ってステップしてその縦行を完了する(位置27〜29)。 From the first position in the fourth column, the vertical alternating scan steps one position in the vertical direction (position 21), then jumps to the first position in the fifth column (position 22) and again in the vertical direction Step one position (position 23). Scanning returns to the fourth vertical row (position 24) at the third position, steps one step in the vertical direction (position 25), and then returns to the third vertical row at the fifth position (position 26). The scan is stepped vertically through the third column to complete the column (positions 27-29).
第3縦行の終わりから、垂直交互走査は、第5の位置で第4縦行まで戻る(位置30)。走査は、垂直に第4縦行を通してステップしてその縦行を完了する(位置31〜33)。 From the end of the third column, the vertical alternating scan returns to the fourth column at the fifth position (position 30). The scan is stepped vertically through the fourth column to complete the column (positions 31-33).
第4縦行の終わりから、垂直交互走査は、第3の位置で第5縦行まで戻る(位置34)。走査は垂直方向に1位置だけステップし(位置35)、次に、第6縦行の最初の位置まで飛び越す(位置36)。走査は垂直に1位置ステップし(位置37)、次に、第7縦行の最初の位置まで飛び越す(位置38)。垂直交互走査は、垂直方向に1位置だけステップし(位置39)、次に、第3の位置で第6縦行まで戻る(位置40)。走査は垂直方向に1位置ステップし(位置41)、次に、第5縦行の第5の位置(位置42)まで戻り、垂直方向に第5縦行を縦断してステップしてその縦行を完了する(位置43〜45)。 From the end of the fourth vertical row, the vertical alternating scan returns to the fifth vertical row at the third position (position 34). The scan steps one position in the vertical direction (position 35) and then jumps to the first position in the sixth column (position 36). The scan is stepped vertically one position (position 37) and then jumps to the first position in the seventh column (position 38). The vertical alternate scan steps one position in the vertical direction (position 39) and then returns to the sixth longitudinal row at the third position (position 40). Scanning is stepped one position in the vertical direction (position 41), then returned to the fifth position (position 42) of the fifth vertical row, stepped vertically through the fifth vertical row, and the vertical row Is completed (positions 43 to 45).
第5縦行の終わりから、垂直交互走査は、第6縦行の第5の位置まで戻り(位置46)、垂直方向に第6縦行を縦断してステップしてその縦行を完了する(位置47〜49)。 From the end of the fifth vertical row, the vertical alternate scanning returns to the fifth position of the sixth vertical row (position 46), and the sixth vertical row is cut vertically to complete the vertical row (step 46). Positions 47-49).
第6縦行の終わりから、垂直交互走査は、第7縦行の第3の位置まで戻る(位置50)。走査は垂直方向に1位置だけステップし(位置51)、次に、第8縦行の第1の位置まで飛び越す(位置52)。走査は3つの位置を垂直にステップし(位置53〜55)、次に、第7縦行の第5の位置まで戻る。走査は、第7縦行を通って垂直にステップして縦行を完了する(位置57〜59)。第7縦行の終わりから、垂直交互走査は、第8縦行の第5の位置まで飛び越し(位置60)、垂直に第8縦行を通ってステップしてその縦行を完了する(位置61〜63)。 From the end of the sixth column, the vertical alternating scan returns to the third position of the seventh column (position 50). The scan steps one position in the vertical direction (position 51) and then jumps to the first position of the eighth vertical line (position 52). The scan steps three positions vertically (positions 53-55) and then returns to the fifth position in the seventh column. The scan steps vertically through the seventh column to complete the column (positions 57-59). From the end of the seventh vertical row, the vertical alternating scan jumps to the fifth position of the eighth vertical row (position 60) and steps vertically through the eighth vertical row to complete the vertical row (position 61). ~ 63).
100 符号器、110 アナログ−デジタル変換器、120 処理回路、130 トランスフォーム回路、140 量子化器、150 予測回路、160 可変長コーダー、200 復号器、210 デジタル−アナログ変換器、220 処理回路、230 逆トランスフォーム回路、240 スカラー回路、250 復元回路、320 適合型DC係数予測器、330 適合型AC係数予測器、350 AC予測解析器、400 DC係数予測器、430 AC係数予測器。 100 encoder, 110 analog-digital converter, 120 processing circuit, 130 transform circuit, 140 quantizer, 150 prediction circuit, 160 variable length coder, 200 decoder, 210 digital-analog converter, 220 processing circuit, 230 Inverse transform circuit, 240 scalar circuit, 250 restoration circuit, 320 adaptive DC coefficient predictor, 330 adaptive AC coefficient predictor, 350 AC prediction analyzer, 400 DC coefficient predictor, 430 AC coefficient predictor.
Claims (10)
ブロックXに対し水平方向に隣接するブロックAと、ブロックAに対し垂直方向に隣接するブロックBと、ブロックXに対し垂直方向に隣接するブロックCとが識別され、
ブロックBと、ブロックAとの間のDC係数の垂直勾配が検出され、
ブロックBと、ブロックCとの間のDC係数の水平勾配が検出され、
垂直勾配が水平勾配より小さい場合には、ブロックCのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数が予測され、
そうでない場合は、ブロックAのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数が予測され、
ブロックA、ブロックB、またはブロックCのいずれかがVOPの境界外にある場合、そのブロックに対する逆量子化DC係数に値が割り当てられ、ブロックXについての予測値を算出するのに前記割り当てられた値が使用される、方法。 A method for decoding an encoded signal of a block X of new image data associated with a video object plane (VOP), comprising:
Block A that is horizontally adjacent to block X, block B that is vertically adjacent to block A, and block C that is vertically adjacent to block X are identified,
A vertical slope of the DC coefficient between block B and block A is detected;
A horizontal slope of the DC coefficient between block B and block C is detected;
If the vertical gradient is less than the horizontal gradient, the DC coefficient of block X is predicted using the value of the DC coefficient of block C as a base for predicting the DC coefficient of block X;
Otherwise, the DC coefficient of block X is predicted using the value of the DC coefficient of block A as a base for predicting the DC coefficient of block X,
If any of block A, block B, or block C is outside the VOP boundary, a value is assigned to the inverse quantized DC coefficient for that block, and the assigned value is used to calculate the predicted value for block X. The method by which the value is used.
前記割り当てられた値は8ビットのワードで表される、方法。 The method of claim 1, wherein
The method wherein the assigned value is represented by an 8-bit word.
ブロックXに対し水平方向に隣接するブロックAと、ブロックAに対し垂直方向に隣接するブロックBと、ブロックXに対し垂直方向に隣接するブロックCとが識別され、
ブロックBと、ブロックAとの間のDC係数の垂直勾配が検出され、
ブロックBと、ブロックCとの間のDC係数の水平勾配が検出され、
垂直勾配が水平勾配より小さい場合には、ブロックCのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数が予測され、
そうでない場合は、ブロックAのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数が予測され、
ブロックA、ブロックB、またはブロックCのいずれかがVOPの境界外にある場合、そのブロックに対する逆量子化DC係数に値が割り当てられ、ブロックXについての予測値を算出するのに前記割り当てられた値が使用される、媒体。 A computer readable medium storing instructions for controlling a computer device to decode a block X encoded signal of new image data associated with a video object plane (VOP), said instructions By
Block A that is horizontally adjacent to block X, block B that is vertically adjacent to block A, and block C that is vertically adjacent to block X are identified,
A vertical slope of the DC coefficient between block B and block A is detected;
A horizontal slope of the DC coefficient between block B and block C is detected;
If the vertical gradient is less than the horizontal gradient, the DC coefficient of block X is predicted using the value of the DC coefficient of block C as a base for predicting the DC coefficient of block X;
Otherwise, the DC coefficient of block X is predicted using the value of the DC coefficient of block A as a base for predicting the DC coefficient of block X,
If any of block A, block B, or block C is outside the VOP boundary, a value is assigned to the inverse quantized DC coefficient for that block, and the assigned value is used to calculate the predicted value for block X. The medium on which the value is used.
前記割り当てられた値は8ビットのワードで表される、媒体。 The medium of claim 3,
The medium in which the assigned value is represented by an 8-bit word.
ブロックXに対し水平方向に隣接するブロックAと、ブロックAに対し垂直方向に隣接するブロックBと、ブロックXに対し垂直方向に隣接するブロックCとを識別するモジュールと、
ブロックBと、ブロックAとの間のDC係数の垂直勾配を検出し、ブロックBと、ブロックCとの間のDC係数の水平勾配を検出し、垂直勾配が水平勾配より小さい場合には、ブロックCのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測し、そうでない場合は、ブロックAのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測するモジュールと、
ブロックA、ブロックB、またはブロックCのいずれかがVOPの境界外にある場合、そのブロックに対する逆量子化DC係数に値を割り当て、ブロックXについての予測値を算出するのに前記割り当てた値を使用するモジュールと、
を含む、システム。 A system for decoding an encoded signal of a block X of new image data associated with a video object plane (VOP),
A module for identifying a block A horizontally adjacent to the block X, a block B vertically adjacent to the block A, and a block C vertically adjacent to the block X;
If the vertical gradient of the DC coefficient between block B and block A is detected, and the horizontal gradient of the DC coefficient between block B and block C is detected, and if the vertical gradient is smaller than the horizontal gradient, then the block The DC coefficient value of block A is used as a basis for predicting the DC coefficient of block X to predict the DC coefficient of block X; otherwise, the DC coefficient value of block A is used as the DC coefficient of block X. A module that predicts the DC coefficient of block X using as a basis for prediction;
If any of block A, block B, or block C is outside the VOP boundary, a value is assigned to the inverse quantized DC coefficient for that block, and the assigned value is used to calculate a predicted value for block X. The module to use,
Including the system.
前記割り当てられた値は8ビットのワードで表される、システム。 The system of claim 5, wherein
The system wherein the assigned value is represented by an 8-bit word.
ブロックXに対し水平方向に隣接するブロックAと、ブロックAに対し垂直方向に隣接するブロックBと、ブロックXに対し垂直方向に隣接するブロックCとを識別する手段と、
ブロックBと、ブロックAとの間のDC係数の垂直勾配を検出し、ブロックBと、ブロックCとの間のDC係数の水平勾配を検出し、垂直勾配が水平勾配より小さい場合には、ブロックCのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測し、そうでない場合は、ブロックAのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測する手段と、
ブロックA、ブロックB、またはブロックCのいずれかがVOPの境界外にある場合、そのブロックに対する逆量子化DC係数に値を割り当て、ブロックXについての予測値を算出するのに前記割り当てた値を使用する手段と、
を含む、システム。 A system for decoding an encoded signal of a block X of new image data associated with a video object plane (VOP),
Means for discriminating between block A horizontally adjacent to block X, block B vertically adjacent to block A, and block C vertically adjacent to block X;
If the vertical gradient of the DC coefficient between block B and block A is detected, and the horizontal gradient of the DC coefficient between block B and block C is detected, and if the vertical gradient is smaller than the horizontal gradient, then the block The DC coefficient value of block A is used as a basis for predicting the DC coefficient of block X to predict the DC coefficient of block X; otherwise, the DC coefficient value of block A is used as the DC coefficient of block X. Means for predicting the DC coefficient of block X using as a basis for prediction;
If any of block A, block B, or block C is outside the VOP boundary, a value is assigned to the inverse quantized DC coefficient for that block, and the assigned value is used to calculate a predicted value for block X. Means to use;
Including the system.
前記割り当てられた値は8ビットのワードで表される、システム。 The system of claim 7, wherein
The system wherein the assigned value is represented by an 8- bit word .
ブロックXに対し水平方向に隣接するブロックAと、ブロックAに対し垂直方向に隣接するブロックBと、ブロックXに対し垂直方向に隣接するブロックCとを識別するステップと、
ブロックBと、ブロックAとの間のDC係数の垂直勾配を検出し、ブロックBと、ブロックCとの間のDC係数の水平勾配を検出し、垂直勾配が水平勾配より小さい場合には、ブロックCのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測し、そうでない場合は、ブロックAのDC係数の値をブロックXのDC係数を予測するためのベースとして使用してブロックXのDC係数を予測するステップと、
ブロックA、ブロックB、またはブロックCのいずれかがVOPの境界外にある場合、そのブロックに対する逆量子化DC係数に値を割り当て、ブロックXについての予測値を算出するのに前記割り当てた値を使用するステップと、
を実行する、復号器。 A decoder for decoding an encoded signal of a block X of new image data associated with a video object plane (VOP),
Identifying block A horizontally adjacent to block X, block B vertically adjacent to block A, and block C vertically adjacent to block X;
If the vertical gradient of the DC coefficient between block B and block A is detected, and the horizontal gradient of the DC coefficient between block B and block C is detected, and if the vertical gradient is smaller than the horizontal gradient, then the block The DC coefficient value of block A is used as a basis for predicting the DC coefficient of block X to predict the DC coefficient of block X; otherwise, the DC coefficient value of block A is used as the DC coefficient of block X. Predicting the DC coefficient of block X using as a basis for prediction;
If any of block A, block B, or block C is outside the VOP boundary, a value is assigned to the inverse quantized DC coefficient for that block, and the assigned value is used to calculate a predicted value for block X. The steps to use,
Perform the decoder.
前記割り当てられた値は8ビットのワードで表される、復号器。 The decoder according to claim 9, wherein
The decoder, wherein the assigned value is represented by an 8-bit word.
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US2693396P | 1996-09-20 | 1996-09-20 | |
US2696396P | 1996-09-20 | 1996-09-20 | |
US3801997P | 1997-02-14 | 1997-02-14 | |
US60/026,933 | 1997-08-11 | ||
US60/026,963 | 1997-08-11 | ||
US08/908,044 US6341144B1 (en) | 1996-09-20 | 1997-08-11 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
US60/038,019 | 1997-08-11 | ||
US08/908,044 | 1997-08-11 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013225594A Division JP5770813B2 (en) | 1996-09-20 | 2013-10-30 | Method for decoding MPEG-4 video signal, non-transitory computer readable storage medium, decoder and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015164349A JP2015164349A (en) | 2015-09-10 |
JP5990790B2 true JP5990790B2 (en) | 2016-09-14 |
Family
ID=27487539
Family Applications (13)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25715697A Expired - Fee Related JP4166305B2 (en) | 1996-09-20 | 1997-09-22 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2006244114A Pending JP2007006531A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2006244111A Pending JP2007028656A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaption for image coding and intra coding of video |
JP2006244113A Pending JP2007020214A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2006244110A Expired - Fee Related JP4166805B2 (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2006244112A Expired - Fee Related JP4166806B2 (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2007295566A Pending JP2008104216A (en) | 1996-09-20 | 2007-11-14 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2007295483A Pending JP2008092596A (en) | 1996-09-20 | 2007-11-14 | Video coder providing implicit coefficient prediction and scan adaption for image coding and intra coding of video |
JP2008189103A Expired - Lifetime JP5209394B2 (en) | 1996-09-20 | 2008-07-22 | Encoding method and encoder |
JP2012092410A Expired - Lifetime JP5469193B2 (en) | 1996-09-20 | 2012-04-13 | Target block processing method, system thereof, and computer-readable medium |
JP2012092409A Expired - Lifetime JP5469192B2 (en) | 1996-09-20 | 2012-04-13 | Method for predicting coefficient in decoder, decoding method, video decoder |
JP2013225594A Expired - Lifetime JP5770813B2 (en) | 1996-09-20 | 2013-10-30 | Method for decoding MPEG-4 video signal, non-transitory computer readable storage medium, decoder and program |
JP2015093801A Expired - Lifetime JP5990790B2 (en) | 1996-09-20 | 2015-05-01 | Decoding method, computer readable medium storing instructions for decoding, decoding system and decoder |
Family Applications Before (12)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25715697A Expired - Fee Related JP4166305B2 (en) | 1996-09-20 | 1997-09-22 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2006244114A Pending JP2007006531A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2006244111A Pending JP2007028656A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaption for image coding and intra coding of video |
JP2006244113A Pending JP2007020214A (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2006244110A Expired - Fee Related JP4166805B2 (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2006244112A Expired - Fee Related JP4166806B2 (en) | 1996-09-20 | 2006-09-08 | Video coder providing implicit coefficient prediction and scan adaptation for video image coding and intra coding |
JP2007295566A Pending JP2008104216A (en) | 1996-09-20 | 2007-11-14 | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
JP2007295483A Pending JP2008092596A (en) | 1996-09-20 | 2007-11-14 | Video coder providing implicit coefficient prediction and scan adaption for image coding and intra coding of video |
JP2008189103A Expired - Lifetime JP5209394B2 (en) | 1996-09-20 | 2008-07-22 | Encoding method and encoder |
JP2012092410A Expired - Lifetime JP5469193B2 (en) | 1996-09-20 | 2012-04-13 | Target block processing method, system thereof, and computer-readable medium |
JP2012092409A Expired - Lifetime JP5469192B2 (en) | 1996-09-20 | 2012-04-13 | Method for predicting coefficient in decoder, decoding method, video decoder |
JP2013225594A Expired - Lifetime JP5770813B2 (en) | 1996-09-20 | 2013-10-30 | Method for decoding MPEG-4 video signal, non-transitory computer readable storage medium, decoder and program |
Country Status (1)
Country | Link |
---|---|
JP (13) | JP4166305B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7113234B2 (en) | 2017-06-26 | 2022-08-05 | パナソニックIpマネジメント株式会社 | washing machine |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4213526B2 (en) * | 1997-06-20 | 2009-01-21 | パナソニック株式会社 | Image processing method |
FI116819B (en) * | 2000-01-21 | 2006-02-28 | Nokia Corp | Procedure for transferring images and an image encoder |
US6931061B2 (en) * | 2002-11-13 | 2005-08-16 | Sony Corporation | Method of real time MPEG-4 texture decoding for a multiprocessor environment |
DE602004017689D1 (en) * | 2003-11-21 | 2008-12-24 | Samsung Electronics Co Ltd | Apparatus and method for generating coded block arrays for an alpha channel image and alpha channel coding and decoding apparatus and method. |
JP4802928B2 (en) * | 2006-08-09 | 2011-10-26 | ソニー株式会社 | Image data processing device |
US8059902B2 (en) * | 2006-10-31 | 2011-11-15 | Ntt Docomo, Inc. | Spatial sparsity induced temporal prediction for video compression |
RU2479940C2 (en) | 2007-10-15 | 2013-04-20 | Ниппон Телеграф Энд Телефон Корпорейшн | Image coding and decoding apparatus, image coding and decoding methods, programs therefor and recording medium on which program is recorded |
US20120163456A1 (en) | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
CN107707920B (en) | 2012-04-16 | 2021-06-01 | 韩国电子通信研究院 | Method for decoding video signal |
JP5612722B2 (en) * | 2013-05-16 | 2014-10-22 | 株式会社メガチップス | Image compression device |
CN104602018B (en) * | 2014-10-21 | 2018-09-18 | 腾讯科技(北京)有限公司 | The acquisition methods and device of the movable information of video data, coding method and device |
CN105163117B (en) * | 2015-08-26 | 2019-08-16 | 华为技术有限公司 | A kind of image encoding method and device |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2905756A (en) * | 1956-11-30 | 1959-09-22 | Bell Telephone Labor Inc | Method and apparatus for reducing television bandwidth |
JP2578756B2 (en) * | 1985-09-12 | 1997-02-05 | 松下電器産業株式会社 | High efficiency coding device |
JPS63197185A (en) * | 1987-02-12 | 1988-08-16 | Toshiba Corp | Orthogonal transformation coding system |
US5001559A (en) * | 1989-10-12 | 1991-03-19 | International Business Machines Corporation | Transform coding using coefficient prediction techniques |
KR950010913B1 (en) * | 1992-07-23 | 1995-09-25 | 삼성전자주식회사 | Vlc & vld system |
CN1183769C (en) * | 1996-05-28 | 2005-01-05 | 松下电器产业株式会社 | image predictive coding/decoding device and method and recording medium |
-
1997
- 1997-09-22 JP JP25715697A patent/JP4166305B2/en not_active Expired - Fee Related
-
2006
- 2006-09-08 JP JP2006244114A patent/JP2007006531A/en active Pending
- 2006-09-08 JP JP2006244111A patent/JP2007028656A/en active Pending
- 2006-09-08 JP JP2006244113A patent/JP2007020214A/en active Pending
- 2006-09-08 JP JP2006244110A patent/JP4166805B2/en not_active Expired - Fee Related
- 2006-09-08 JP JP2006244112A patent/JP4166806B2/en not_active Expired - Fee Related
-
2007
- 2007-11-14 JP JP2007295566A patent/JP2008104216A/en active Pending
- 2007-11-14 JP JP2007295483A patent/JP2008092596A/en active Pending
-
2008
- 2008-07-22 JP JP2008189103A patent/JP5209394B2/en not_active Expired - Lifetime
-
2012
- 2012-04-13 JP JP2012092410A patent/JP5469193B2/en not_active Expired - Lifetime
- 2012-04-13 JP JP2012092409A patent/JP5469192B2/en not_active Expired - Lifetime
-
2013
- 2013-10-30 JP JP2013225594A patent/JP5770813B2/en not_active Expired - Lifetime
-
2015
- 2015-05-01 JP JP2015093801A patent/JP5990790B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7113234B2 (en) | 2017-06-26 | 2022-08-05 | パナソニックIpマネジメント株式会社 | washing machine |
Also Published As
Publication number | Publication date |
---|---|
JP2007020214A (en) | 2007-01-25 |
JP4166305B2 (en) | 2008-10-15 |
JP2008283713A (en) | 2008-11-20 |
JP2007020212A (en) | 2007-01-25 |
JP5469192B2 (en) | 2014-04-09 |
JP2007020213A (en) | 2007-01-25 |
JP2014053945A (en) | 2014-03-20 |
JP2007028656A (en) | 2007-02-01 |
JP2012135062A (en) | 2012-07-12 |
JP5469193B2 (en) | 2014-04-09 |
JP4166806B2 (en) | 2008-10-15 |
JP2007006531A (en) | 2007-01-11 |
JP5209394B2 (en) | 2013-06-12 |
JP2008104216A (en) | 2008-05-01 |
JP2015164349A (en) | 2015-09-10 |
JP2012135061A (en) | 2012-07-12 |
JP4166805B2 (en) | 2008-10-15 |
JP5770813B2 (en) | 2015-08-26 |
JPH10224804A (en) | 1998-08-21 |
JP2008092596A (en) | 2008-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5990790B2 (en) | Decoding method, computer readable medium storing instructions for decoding, decoding system and decoder | |
US7869502B2 (en) | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video | |
US20170295367A1 (en) | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video | |
US6005622A (en) | Video coder providing implicit or explicit prediction for image coding and intra coding of video | |
EP1684530A2 (en) | Video coder providing implicit coefficient prediction and scan adaption for image coding and intra coding of video | |
EP0859519A2 (en) | Video coder using implicit or explicit prediction for image coding | |
EP1887804A2 (en) | Video coder providing implicit coefficient predication and scan adaption for image coding and intra coding of video |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160520 |
|
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: 20160621 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160719 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5990790 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
EXPY | Cancellation because of completion of term |