CN100581252C - 改进熵编码的方法 - Google Patents
改进熵编码的方法 Download PDFInfo
- Publication number
- CN100581252C CN100581252C CN200580045490A CN200580045490A CN100581252C CN 100581252 C CN100581252 C CN 100581252C CN 200580045490 A CN200580045490 A CN 200580045490A CN 200580045490 A CN200580045490 A CN 200580045490A CN 100581252 C CN100581252 C CN 100581252C
- Authority
- CN
- China
- Prior art keywords
- coefficient
- modulus
- last non
- vlc
- piece
- 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.)
- Active
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/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/18—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 a set of transform coefficients
-
- 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Meat, Egg Or Seafood Products (AREA)
- Excavating Of Shafts Or Tunnels (AREA)
- Medicines Containing Material From Animals Or Micro-Organisms (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
- Farming Of Fish And Shellfish (AREA)
Abstract
本发明涉及视频压缩系统中的变换系数数据的熵编码/解码。为了对表示视频图像块的系数进行熵编码,本发明的优选实施例引入了事件,所述事件把块中最后非零系数的位置与绝对值是否大于1相结合。另外不需要宏块之外的信息来确定使用哪个VLC。通常按RUN模式开始编码系数,并且当找到绝对值大于1的第一系数则继续按LEVEL模式进行编码。
Description
技术领域
本发明涉及视频压缩系统中的变换系数数据的熵编码/解码。
技术背景
运动画面的实时传输在多种应用中被采用,如视频会议、网络会议、TV广播和视频电话等。
但是,表示运动画面需要大量的信息,如数字视频通常按画面中每个像素用8比特(1字节)来表示。这种未压缩的视频数据导致巨大的比特量,由于带宽限制,不能通过传统通信网络和传输线路来实时传送。
因此,为了实现实时视频传输,需要很大程度的数据压缩。但数据压缩会损害画面质量。因此,做了很多努力来开发数据压缩技术,使得可在有限带宽的数据连接之上实时传输高质量的视频。
在视频压缩系统中,主要目标是用尽可能少的容量表示视频信息。容量(capacity)用比特来定义,或者按常数值或者按比特/时间单位。在两种情况下,主要目标是降低比特量。
在MPEG*和H.26*标准中描述了最常用的视频编码方法。视频数据在传输之前要经过四个主要处理,即:预测、变换、量化和熵编码。
预测处理显著降低待传输的视频序列中每个画面所需要的比特量。预测处理利用了序列中一部分与该序列中其他部分的相似性。由于该预测器部分对于编码器和解码器都是已知的,因此只需要传输差异。这种差异的表示通常只需要很少的容量。预测主要基于表示运动的向量。通常按方块大小(如16X16像素)来执行预测处理。注意,在某些情况下,像素的预测基于相同画面中的相邻像素,而不是前一画面中的像素。这称作内预测(intra prediction),相对于互预测(interprediction)。
表示成数据块(如4X4像素)的剩余(residual)仍然包含内部关联。利用这一点的公知方法是执行二维的块变换。在H.263中,使用8X8离散余弦变换(DCT),而H.264使用4X4整数类型的变换。这将4X4像素变换为4X4变换系数,而较之像素表示,表示系数需要较少的比特。利用内关联的4X4像素阵列的变换产生变换系数的4X4块,较之原来的4X4像素块具有少得多的非零值。
变换系数的直接表示对许多应用来说依然是代价太高。因此执行量化处理来进一步降低数据表示。这样,变换系数又经过量化。量化的简单版本是用一个整数来除参数值,产生可由较少比特表示的较小的数。应该指出,这种量化处理造成重构的视频序列与未压缩的视频序列有所不同。这种现象被称作“有损编码”。这种量化部分的输出被称作量化变换系数。
熵编码意味着不同类型参数的无损表示,如总数据(overhead data)或系统描述、预测数据(通常是运动向量)和来自量化处理的量化变换系数。后者通常表示最大比特消耗。
编码是在视频画面的块大小的部分上执行的。宏块由几个用于亮度和用于色度的子块组成。通常有两个色度分量(Cr,Cb),较之亮度具有其垂直和水平分辨率的一半。在图1中,宏块由16X16亮度像素和各具有8X8像素的两个色度分量组成。这些分量的每个又划分成4X4的块,用小方块来表示。为了编码的目的,亮度和色度4X4块按8X8子块组合在一起,并用Y0-Y3和Cr、Cb标记。
H.263和H.264描述了现有技术的视频压缩中的量化变换系数的熵编码。
H.263基于可变长编码(VLC)。定义一组事件。事件表示用于一个或多个参数的固定值。对事件分配唯一的比特码。设计码表,使得码的长度匹配每个事件的统计概率。如果比特数Bit_number=-log(p),则得到最佳效率,其中p是事件的统计概率(p在0~1的范围)。VLC编码的例子在表1中示出。
在H.264中引入了改进的方法,即引入“上下文适应性(CA)”的概念。该概念采用了基于前面编码的动态改变模型。作为一个例子,可以根据前面事件的出现来选择更合适的VLC表,并因此使编码更有效。在H.264中描述了两个这样的基于CA的方法:
1.CAVLC,具有适中的上下文适应性,使用VLC表用于编码;
2.CABAC(二进制算数编码),具有更复杂的上下文适应性,并最终使用算数编码。这导致最大压缩,但以高复杂性为代价。
CAVLC被认为具有适中的适应性和复杂性。CABAC使用更精细的适应性,但对于某些应用被认为过于复杂,特别对于实时应用。
发明内容
本发明的一个目的是较之现有技术提供一种改进的熵编码方法以平衡较低的复杂性和高性能。根据本发明的一个方面,提供一种在用于表示宏块中各剩余像素值的块的量化变换系数的视频编码中提供简化的熵编码过程的方法,其中,所述系数被分配到块内按升序的各位置。该方法的特征在于包括步骤:I.指定该块内最后非零系数的第一位置结合所述最后非零系数的模数是否大于1的指示作为第一可变长编码VLC中若干可能事件中的事件;II.如果所述最后非零系数的模数等于1,定义所述最后非零系数作为当前最后非零系数,并且(a).朝着位置的降序方向,指定在所述当前最后非零系数和该块内下一个非零系数之间具有零系数的位置的数量结合所述下一个非零系数的模数是否大于1的指示作为第二VLC中若干可能事件中的事件,并把所述下一个非零系数定义成所述当前最后非零系数,(b).如果所述当前最后非零系数的模数等于1,则重复步骤(a);III.如果所述最后或当前最后非零系数的模数大于1,则(c).根据一个或多个VLC来指定在步骤I~II中没有指定的每个系数的模数和相应的位置。。
本发明的另一个目的是较之现有技术提供一种改进的熵解码方法以平衡较低的复杂性和高性能。根据本发明的另一方面,提供一种在用于表示宏块中各剩余像素值的块的量化变换系数的视频解码中提供简化的熵解码过程的方法,其中,所述系数被分配到块内按升序的各位置。该方法的特征在于包括步骤:IV.解释该块内最后非零系数的第一位置结合所述最后非零系数的模数是否大于1的指示作为第一可变长编码VLC中若干可能事件之中的特定事件;V.如果所述最后非零系数的模数等于1,定义所述最后非零系数作为当前最后非零系数,并且(a).朝着位置的降序方向,解释在所述当前最后非零系数和该块内下一个非零系数之间具有零系数的位置的数量结合所述下一个非零系数的模数是否大于1的指示作为第二VLC中若干可能事件中的特定事件,并把所述下一个非零系数定义成所述当前最后非零系数,(b).如果所述当前最后非零系数的模数等于1,则重复步骤(a);VI.如果所述最后或当前最后非零系数的模数大于1,则(c)根据一个或多个VLC来解释在步骤IV~V中没有解释的每个系数的模数和相应的位置。
附图说明
为了使本发明更容易被理解,下面的讨论将参考附图和表格。其中:
图1示出了16X16亮度像素的宏块和具有8X8像素的两个色度分量;
图2示出了不同的块编码模式的例子;
图3示出了待编码的宏块中的块和其近邻;
图4是示出根据本发明第一实施例的方法的示意性流程图;
图5是示出根据本发明第二实施例的方法的示意性流程图;
表1示出了VLC编码的例子;
表2示出了LEVEL模式的例子;
表3示出了RUN模式的例子。
具体实施方式
本发明提供用于编码/解码已知具有非零变换系数的块中量化变换系数的方法。为了更好地理解本发明,通过例子在下面说明有关哪个块是否有系数的信息的编码,常常被称作块编码模式(CBP)。
图2中示出了通常用于CBP的不同块类型。块A是16X16亮度块,划分成16个经受二维变换的4X4块。A中的黑线指出了还有该16X16块至4个8X8块的划分。每个4X4块将具有16个变换系数。按下述编码非零值:一个比特用于指示在该整个16X16块中是否存在非零系数。在存在系数的情况下,每个8X8块增加一个比特指示是否有非零系数。在存在系数的情况下,每个4X4块增加一个比特来指示是否有非零系数。
块B具有与A同样的划分。黑方块指示了在4X4块中的DC系数。这些块要经受第二4X4变换,以形成一个单独的4X4块。该块具有16个变换系数,而其他的块具有15个系数,因dc系数被移至该DC块。块B是一种特殊类型的内部块。一个比特指出在该4X4DC变换中是否存在非零系数。另一个比特指出在该整个16X16块是否存在非零系数。在存在系数的情况下,每个4X4块增加一个比特指出是否存在AC系数。
块C是8X8亮度系数,划分成4个要经过二维变换的4X4块。黑方块指出了在4X4块中的DC系数。这些DC系数要经受第二2X2变换以形成单独一个2X2块。该块具有4个系数,而其他的块具有15个系数,因dc系数被移至该DC块。这是两个色度系数之一。考虑到有两个色度分量并期望用一个比特指示在所有这些块中是否存在非零色度系数,可使用与用于块B的类似结构。
本发明与上述现有技术的上下文适应性可变长编码(CAVLC)具有某种相似性,如背景技术中所述。在下面,说明根据H.264的CAVLC编码的基本概念。
在编码期间,存在预测处理来预测每个块中的像素值。从待编码的像素数据中按像素减去该预测值,所得到的结果被称作剩余(residual)信号。
为了得到进一步的压缩,剩余信号要经过产生4X4=16个变换系数的4X4变换。这些系数被组织成16个数的串,使得在统计上系数的大小随着在该串中位置序号的增加而降低。为了得到所需要的压缩,在熵编码之前,这些变换系数进一步经过量化处理。这通常导致大多数系数变成0。通常,经量化变换的系数串如下面的样子:
6-40200-1001000000 (1)
在实际CAVLC编码之前,执行CBP8编码,指定哪些8X8块(在图3中用粗体标记)具有变换系数以及那些没有。
在描述CAVLC编码时,图3中块c的量化变换系数被作为例子,其包括上述的系数(1)。
第一步是编码组合参数,该组合参数表示非零系数的数量(N)和到末尾具有绝对值1的系数的数量的组合。对于上述的例子,该参数是(5,2)。如果所有的系数都是0,该组合是(0,0)。该参数利用可变长编码(VLC)码表来编码。为了提高压缩,可以根据上边和左边的4X4块a和b中的N值选择不同的VLC表。
至此,已经指出了最后两个系数具有绝对值1。下一步指定其余的几个:6,-4,2。在这一过程中使用“逆序扫描(reverse orderscanning)”。这意味着按照2、-4、6的顺序来编码。这样做是因为可根据前面已编码系数的大小来改变VLC表。在此例子中,使用“开始”VLC来编码2和4。由于在上面4是定义的阈值,使用不同的VLC编码6。
对每个非零系数,用一个比特进一步指出该系数是正的还是负的。
接下来,对最后的非零系数之前的零系数的数量(TZ)编码。在该例子中,上述TZ=5。N设置了TZ的上限。因此根据N选择合适的VLC表。
最后,对0系数的实际分布进行编码,这也是通过按逆序扫描来完成。这样,指出了在最后的1之前有两个0系数。已经知道总共有五个0系数,并且使用合适的VLC表。然后编码-1之前的两个0系数和2之前的一个0系数。然后完成指定所有非零系数和零系数的位置。
如现有技术,CAVLC指定了4X4块中的非零系数数量与1的数量的组合,本发明引入了事件,所述事件把最后非零系数的位置与绝对值是否大于1相组合。另外,为了确定使用哪个VLC,不使用该宏块之外的信息。通常,当找到绝对值大于1的第一个系数,通过按RUN模式开始并按LEVEL模式继续来进行编码。RUN和LEVEL的例子分别在表1和表2中示出。
通过参考图3和上述(1)的系数来说明本发明的一个实施例。注意,尽管这里只说明了编码,本发明也同样可用于解码,只是需要反过来执行。
在块中的变换系数被量化之后,这些系数通过可以是0、±1、±2等的所谓LEVEL值来表示。LEVEL的绝对值被称作ALEVEL,并且LEVEL的符号(+或-)被称作SIGNLEVEL。
如已经指出的,本发明较之现有技术的CAVLC按更直接的方式来开始,根据块中系数的数量,即根据使用图2中示出的哪一个CBP,定义该最后系数的位置(P),按0~3、0~14或0~15来编号。编码组合事件(combined event),该组合事件指出P以及该最后系数的ALEVEL是否等于1或大于1。对于(1)的情况,该事件是(9,=1)。
为了更好的压缩,根据块a和b的P值来选择VLC表,但仅当这些块在宏块之内。这表示了一种简化,因编码/解码是基于宏块的,这使得不必读取与其他宏块相关联的数据。
进一步根据本发明的实施例,使用哪个VLC依赖于块的大小,从而避免了保存可能发生的P或ALEVEL值的编码以及块a和b中的P值。但是,对a和b的依赖仅发生在当它们与待编码的4X4块位于相同的宏块之内时。
如现有技术的CAVLC使用逆序扫描。如果该最后系数的ALEVEL是1,编码按RUN模式继续。
现在参见例子,对最后的1之前的0系数的数量(R)进行编码(R=2)。结合下一个系数(Next)的绝对值是否等于1或大于1的指示来进行编码。在这种情况行,下一个系数是1。
根据最后编码系数的位置,限制后续RUN的可能值。作为一个例子:如果最后编码的系数在位置4,RUN的值可以在0~4的范围内。因此,由于值1被排除,需要只允许编码五个RUN值的VLC表。在本设计中就使用这种VLC表。
根据本发明的实施例,直接编码ALEVEL(包括值0)。对于上述编码的例子是:
ALEVEL=2(知其大于1)
ALEVEL=0
ALEVEL=4
ALEVEL=6
注意,对于现有技术的CAVLC,可根据前面编码的系数大小改变VLC表。作为一个例子,在H.264级(level)编码中使用的自适应过程中,有6个可用的不同VLC表,称为VLCn,其中n=0,1,2,3,4,5。在块的开始,n被设置成0。对每个编码的系数,可按下述方式来改变用于编码下一个系数的n:
如果ALEVEL>3*2n,n增加1但不超过5。
最后,对每个非零系数,一个比特用于指出该系数是正还是负。
图4是示出根据本发明的方法实施例的示意性流程图。
图4的流程图示意性示出了一种方法,用于在表示宏块中剩余像素值的块的量化变换系数的视频编码中提供简化的熵编码过程。在该方法中,量化变换系数被分配到块内按升序的各位置。
该方法在初始步骤41开始。
接下来,执行第一位置指定步骤42。在该步骤42,确定最后非零系数的模数是否在[1,n]之间,或者当所述最后非零系数大于n时,指出>n。
在步骤42中,如果上述测试为真,宏块内最后非零系数的第一位置连同所述最后非零系数的模数被指定为第一可变长编码(VLC)中若干可能事件中的事件。
接下来,在判定步骤43,判定所述最后非零系数的模数是否在[1,n]之间。
如果该判定步骤43的结果为真,该最后非零系数在定义步骤44被定义为当前最后非零系数。
接下来,执行位置数指定步骤45。在该步骤中,朝着位置的降序方向,把在所述当前最后非零系数和该块中下一个非零系数之间具有零系数的位置的数量连同所述下一个非零系数的模数(当所述下一个非零系数的模数在[1,n]之间)或>n的指示(当所述下一个非零系数的模数大于n)指定为第二VLC中若干可能事件中的事件。步骤45还包括把所述下一个非零系数定义成所述当前最后非零系数。
另一方面,如果判定步骤43的结果为假,即如果当前最后非零系数的模数大于n,执行下面的系数模数指定步骤47。
在完成位置数指定步骤45之后,执行判定步骤46。在判定步骤46,判定所述当前最后非零系数的模数是否在[1,n]之间。
如果判定步骤46的结果为真,则重复位置数指定步骤45。
否则,如果判定步骤46的结果为假,即如果当前最后非零系数的模数大于n,执行系数模数指定步骤47。
如果判定步骤43的结果为假,即如果最后非零系数的模数大于n,也进入系数模数指定步骤47。
在系数模数指定步骤47,那些在上述步骤中没有指定的每个系数的模数和相应的位置根据一个或多个VLC来指定。
有益的是,系数模数指定步骤47还包括,在前面的步骤41~46没有指定的所述各系数的第一或最后次序的系数根据具有[n+1,→]范围内可能模数值的第三VLC来指定,而在步骤I~III没有指定的所述系数的其余各系数根据具有[0,→]范围内可能模数值的第四VLC来指定。
有益的是,常数n具有值1。
有益的是,第一VLC依赖于相对所述块具有固定位置的一个或多个近邻块,如果所述一个或多个近邻块在该宏块之内。
该处理在结束步骤48结束。
图5是示意性示出根据本发明的方法的第二实施例的流程图。
图5的流程图示意性示出了一种方法,用于在表示宏块中剩余像素值的块的量化变换系数的视频解码中提供简化的熵解码过程。在该方法中,量化变换系数被分配到块内按升序的各位置。
该方法在初始步骤51开始。
接下来,执行第一位置解释步骤52。在该步骤52,判定最后非零系数的模数是否在[1,n]之间,或者当所述最后非零系数大于n时,指出>n。
如果为真,宏块内最后非零系数的第一位置连同所述最后非零系数的模数被解释为第一可变长编码(VLC)中若干可能事件中的事件。
接下来,在判定步骤53,判定所述最后非零系数的模数是否在[1,n]之间。
如果该判定步骤53的结果为真,该最后非零系数在定义步骤54被定义为当前最后非零系数。
接下来,执行位置数解释步骤55。在该步骤中,朝着位置的降序方向,把在所述当前最后非零系数和该块中下一个非零系数之间具有零系数的位置的数量连同所述下一个非零系数的模数(当所述下一个非零系数的模数在[1,n]之间)或>n的指示(当所述下一个非零系数的模数大于n)解释成第二VLC中若干可能事件中的事件。步骤55还包括把所述下一个非零系数定义成所述当前最后非零系数。
另一方面,如果判定步骤53的结果为假,即如果当前最后非零系数的模数大于n,执行下面的系数模数解释步骤57。
在完成位置数解释步骤55之后,执行判定步骤56。在判定步骤56,判定所述当前最后非零系数的模数是否在[1,n]之间。
如果判定步骤56的结果为真,则重复位置数解释步骤55。
否则,如果判定步骤56的结果为假,即如果当前最后非零系数的模数大于n,执行系数模数解释步骤57。
如果判定步骤53的结果为假,即如果最后非零系数的模数大于n,也进入系数模数解释步骤57。
在系数模数解释步骤57,那些在上述步骤中没有解释的每个系数的模数和相应的位置根据一个或多个VLC来解释。
有益的是,系数模数解释步骤57还包括,在前面的步骤51~56没有解释的所述各系数的第一或最后次序的系数根据具有[n+1,→]范围内可能模数值的第三VLC来解释,而在步骤I~III没有解释的所述系数的其余各系数根据具有[0,→]范围内可能模数值的第四VLC来解释。
有益的是,常数n具有值1。
有益的是,第一VLC依赖于具有相对于所述块的固定位置的一个或多个近邻块,如果所述一个或多个近邻块在该宏块之内。
该处理在结束步骤58结束。
Claims (8)
1.一种在用于表示宏块中各剩余像素值的块的量化变换系数的视频编码中提供简化的熵编码过程的方法,其中,所述系数被分配到块内按升序的各位置,
该方法的特征在于包括步骤:
I.指定该块内最后非零系数的第一位置结合所述最后非零系数的模数是否大于1的指示作为第一可变长编码VLC中若干可能事件中的事件,
II.如果所述最后非零系数的模数等于1,定义所述最后非零系数作为当前最后非零系数,并且
a.朝着位置的降序方向,指定在所述当前最后非零系数和该块内下一个非零系数之间具有零系数的位置的数量结合所述下一个非零系数的模数是否大于1的指示作为第二VLC中若干可能事件中的事件,并把所述下一个非零系数定义成所述当前最后非零系数,
b.如果所述当前最后非零系数的模数等于1,则重复步骤a,
III.如果所述最后或当前最后非零系数的模数大于1,则
c.根据一个或多个VLC来指定在步骤I~II中没有指定的每个系数的模数和相应的位置。
2.如权利要求1所述的方法,其中步骤III.c还包括:在步骤I~III没有指定的所述各系数的第一或最后次序的系数根据具有不小于2的可能模数值的第三VLC来指定,而在步骤I~III没有指定的所述系数的其余各系数根据具有不小于0的可能模数值的第四VLC来指定。
3.如权利要求1或2所述的方法,其中所述第一VLC依赖于相对所述块具有固定位置的一个或多个近邻块,如果所述一个或多个近邻块在该宏块之内。
4.如权利要求1所述的方法,其中所述第二VLC是RUN编码。
5.一利在用于表示宏块中各剩余像素值的块的量化变换系数的视频解码中提供简化的熵解码过程的方法,其中,所述系数被分配到块内按升序的各位置,
该方法的特征在于包括步骤:
IV.解释该块内最后非零系数的第一位置结合所述最后非零系数的模数是否大于1的指示作为第一可变长编码VLC中若干可能事件之中的特定事件,
V.如果所述最后非零系数的模数等于1,定义所述最后非零系数作为当前最后非零系数,并且
a.朝着位置的降序方向,解释在所述当前最后非零系数和该块内下一个非零系数之间具有零系数的位置的数量结合所述下一个非零系数的模数是否大于1的指示作为第二VLC中若干可能事件中的特定事件,并把所述下一个非零系数定义成所述当前最后非零系数,
b.如果所述当前最后非零系数的模数等于1,则重复步骤a,
VI.如果所述最后或当前最后非零系数的模数大于1,则
c.根据一个或多个VLC来解释在步骤IV~V中没有解释的每个系数的模数和相应的位置。
6.如权利要求5所述的方法,其中步骤VI.c还包括:在步骤IV~VI没有解释的所述各系数的第一或最后次序的系数根据具有不小于2的可能模数值的第三VLC来解释,而在步骤IV~VI没有解释的所述系数的其余各系数根据具有不小于0的可能模数值的第四VLC来解释。
7.如权利要求5或6所述的方法,其中所述第一VLC依赖于相对所述块具有固定位置的一个或多个近邻块,如果所述一个或多个近邻块在该宏块之内。
8.如权利要求5所述的方法,其中所述第二VLC是RUN编码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO20045714A NO322043B1 (no) | 2004-12-30 | 2004-12-30 | Fremgangsmate for forenklet entropikoding |
NO20045714 | 2004-12-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101095359A CN101095359A (zh) | 2007-12-26 |
CN100581252C true CN100581252C (zh) | 2010-01-13 |
Family
ID=35209728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200580045490A Active CN100581252C (zh) | 2004-12-30 | 2005-12-27 | 改进熵编码的方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7843998B2 (zh) |
EP (1) | EP1834487B1 (zh) |
JP (1) | JP2008527789A (zh) |
CN (1) | CN100581252C (zh) |
AT (1) | ATE400969T1 (zh) |
DE (1) | DE602005008111D1 (zh) |
ES (1) | ES2310372T3 (zh) |
NO (1) | NO322043B1 (zh) |
WO (1) | WO2006071125A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104205835A (zh) * | 2012-03-22 | 2014-12-10 | 高通股份有限公司 | 导出最末位置译码的上下文以供视频译码 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8422552B2 (en) * | 2007-03-29 | 2013-04-16 | James Au | Entropy coding for video processing applications |
US8416857B2 (en) * | 2007-03-29 | 2013-04-09 | James Au | Parallel or pipelined macroblock processing |
US8369411B2 (en) * | 2007-03-29 | 2013-02-05 | James Au | Intra-macroblock video processing |
US8837575B2 (en) * | 2007-03-29 | 2014-09-16 | Cisco Technology, Inc. | Video processing architecture |
US8571104B2 (en) * | 2007-06-15 | 2013-10-29 | Qualcomm, Incorporated | Adaptive coefficient scanning in video coding |
US8891615B2 (en) * | 2008-01-08 | 2014-11-18 | Qualcomm Incorporated | Quantization based on rate-distortion modeling for CABAC coders |
US9008171B2 (en) * | 2008-01-08 | 2015-04-14 | Qualcomm Incorporated | Two pass quantization for CABAC coders |
KR101511082B1 (ko) * | 2008-05-09 | 2015-04-13 | 삼성전자주식회사 | 최하위 비트를 이용한 엔트로피 부호화 방법과 그 장치 및엔트로피 복호화 방법과 그 장치 |
EP2154894A1 (en) * | 2008-08-15 | 2010-02-17 | Thomson Licensing | Video coding with coding of the locations of significant coefficients in a block of coefficients |
US9183181B2 (en) | 2011-01-10 | 2015-11-10 | Cisco Technology, Inc. | Integer matrix transform video compression system, method and computer program product |
MX2013003557A (es) | 2010-10-05 | 2013-05-01 | Gen Instrument Corp | Codificacion y decodificacion utilizando seleccion de modelo adaptativo al contexto con escaneo en zigzag. |
US9172963B2 (en) | 2010-11-01 | 2015-10-27 | Qualcomm Incorporated | Joint coding of syntax elements for video coding |
US8976861B2 (en) | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
US9042440B2 (en) | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
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 |
US9490839B2 (en) | 2011-01-03 | 2016-11-08 | Qualcomm Incorporated | Variable length coding of video block coefficients |
US20120230418A1 (en) | 2011-03-08 | 2012-09-13 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US9106913B2 (en) | 2011-03-08 | 2015-08-11 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US8938001B1 (en) | 2011-04-05 | 2015-01-20 | Google Inc. | Apparatus and method for coding using combinations |
US9491469B2 (en) | 2011-06-28 | 2016-11-08 | Qualcomm Incorporated | Coding of last significant transform coefficient |
US9516316B2 (en) | 2011-06-29 | 2016-12-06 | Qualcomm Incorporated | VLC coefficient coding for large chroma block |
US9338456B2 (en) | 2011-07-11 | 2016-05-10 | Qualcomm Incorporated | Coding syntax elements using VLC codewords |
US8891616B1 (en) | 2011-07-27 | 2014-11-18 | Google Inc. | Method and apparatus for entropy encoding based on encoding cost |
PL3402200T3 (pl) * | 2011-10-24 | 2023-04-11 | Gensquare Llc | Aparat do dekodowania obrazu |
US9247257B1 (en) | 2011-11-30 | 2016-01-26 | Google Inc. | Segmentation based entropy encoding and decoding |
US11039138B1 (en) | 2012-03-08 | 2021-06-15 | Google Llc | Adaptive coding of prediction modes using probability distributions |
US9774856B1 (en) | 2012-07-02 | 2017-09-26 | Google Inc. | Adaptive stochastic entropy coding |
US8891888B2 (en) * | 2012-09-05 | 2014-11-18 | Google Inc. | Entropy coding for recompression of images |
US9509998B1 (en) | 2013-04-04 | 2016-11-29 | Google Inc. | Conditional predictive multi-symbol run-length coding |
US9392288B2 (en) | 2013-10-17 | 2016-07-12 | Google Inc. | Video coding using scatter-based scan tables |
US9179151B2 (en) | 2013-10-18 | 2015-11-03 | Google Inc. | Spatial proximity context entropy coding |
CN113810713B (zh) * | 2016-04-29 | 2024-05-10 | 世宗大学校产学协力团 | 用于对图像信号进行编码和解码的方法和装置 |
US11876990B2 (en) | 2021-07-13 | 2024-01-16 | Mediatek Inc. | Video residual decoding apparatus using storage device to store side information and/or state information for syntax element decoding optimization and associated method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US228510A (en) * | 1880-06-08 | Lacing-hook for boots and shoes | ||
US7006631B1 (en) * | 2000-07-12 | 2006-02-28 | Packet Video Corporation | Method and system for embedding binary data sequences into video bitstreams |
DK1467491T3 (da) * | 2002-05-02 | 2007-03-19 | Fraunhofer Ges Forschung | Arithmetical coding of transform coefficients |
US6646578B1 (en) | 2002-11-22 | 2003-11-11 | Ub Video Inc. | Context adaptive variable length decoding system and method |
US7212681B1 (en) * | 2003-01-15 | 2007-05-01 | Cisco Technology, Inc. | Extension of two-dimensional variable length coding for image compression |
US7194137B2 (en) * | 2003-05-16 | 2007-03-20 | Cisco Technology, Inc. | Variable length coding method and apparatus for video compression |
US7471840B2 (en) * | 2004-08-18 | 2008-12-30 | Cisco Technology, Inc. | Two-dimensional variable length coding of runs of zero and non-zero transform coefficients for image compression |
US7620258B2 (en) * | 2004-08-18 | 2009-11-17 | Cisco Technology, Inc. | Extended amplitude coding for clustered transform coefficients |
JP4271134B2 (ja) * | 2004-12-10 | 2009-06-03 | 株式会社東芝 | 可変長符号化デコーダおよびデコード方法 |
US8731051B1 (en) * | 2006-02-10 | 2014-05-20 | Nvidia Corporation | Forward and inverse quantization of data for video compression |
-
2004
- 2004-12-30 NO NO20045714A patent/NO322043B1/no not_active IP Right Cessation
-
2005
- 2005-12-27 DE DE602005008111T patent/DE602005008111D1/de active Active
- 2005-12-27 ES ES05821490T patent/ES2310372T3/es active Active
- 2005-12-27 EP EP05821490A patent/EP1834487B1/en active Active
- 2005-12-27 WO PCT/NO2005/000487 patent/WO2006071125A1/en active Application Filing
- 2005-12-27 CN CN200580045490A patent/CN100581252C/zh active Active
- 2005-12-27 JP JP2007549298A patent/JP2008527789A/ja active Pending
- 2005-12-27 US US11/316,931 patent/US7843998B2/en active Active
- 2005-12-27 AT AT05821490T patent/ATE400969T1/de not_active IP Right Cessation
Non-Patent Citations (2)
Title |
---|
A VLSI architecture design of CAVLC decoder. Wu Di, Gao Wen, Hu Mingzeng, Ji Zhenzhou.ASIC, 2003. Proceedings. 5th International Conference,Vol.Vol.2 . 2003 |
A VLSI architecture design of CAVLC decoder. Wu Di, Gao Wen, Hu Mingzeng, Ji Zhenzhou.ASIC, 2003. Proceedings. 5th International Conference,Vol.Vol.2 . 2003 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104205835A (zh) * | 2012-03-22 | 2014-12-10 | 高通股份有限公司 | 导出最末位置译码的上下文以供视频译码 |
Also Published As
Publication number | Publication date |
---|---|
WO2006071125A1 (en) | 2006-07-06 |
ES2310372T3 (es) | 2009-01-01 |
DE602005008111D1 (de) | 2008-08-21 |
US7843998B2 (en) | 2010-11-30 |
US20060146938A1 (en) | 2006-07-06 |
ATE400969T1 (de) | 2008-07-15 |
CN101095359A (zh) | 2007-12-26 |
NO322043B1 (no) | 2006-08-07 |
EP1834487B1 (en) | 2008-07-09 |
EP1834487A1 (en) | 2007-09-19 |
NO20045714D0 (no) | 2004-12-30 |
JP2008527789A (ja) | 2008-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100581252C (zh) | 改进熵编码的方法 | |
CN101098473B (zh) | 一种图像编码方法及装置 | |
CN101222644B (zh) | 运动图像编码、解码装置以及运动图像编码、解码方法 | |
CN100581232C (zh) | 用于在视频序列中对运动进行编码的方法 | |
CN101904172B (zh) | Vlc方法和设备 | |
CN100542305C (zh) | 图像信息编码装置和方法,以及图像信息解码装置和方法 | |
AU2002334271B9 (en) | Method and system for context-based adaptive binary arithmetic coding | |
US7884742B2 (en) | System and method for efficient compression of digital data | |
CN1332563C (zh) | 一种视频图像跳过宏块的编码方法 | |
JP6749922B2 (ja) | 高効率ビデオ符号化(hevc)画面コンテンツ符号化(scc)における改善されたパレットモード | |
CN104396245A (zh) | 用于对图像进行编码或解码的方法和装置 | |
CN101267563A (zh) | 自适应可变长度编码 | |
KR930018537A (ko) | 디지탈 vtr의 영상신호 대역 압축장치 | |
WO2008140949A1 (en) | Methods and systems for rate-distortion optimized quantization of transform blocks in video encoding | |
JP2007502595A (ja) | ビデオ圧縮の方法と装置 | |
CN100579233C (zh) | 变换域中零的早期检测 | |
CN109874012B (zh) | 一种视频编码方法、编码器、电子设备及介质 | |
CN1825976A (zh) | 译码数字影像序列的方法及装置 | |
CN1874509B (zh) | 基于上下文的自适应二进制算术编码的方法和系统 | |
CN107343199B (zh) | 用于hevc中样点的快速自适应补偿方法 | |
CN101888545B (zh) | 一种低码率信源压缩编码方法 | |
KR100566290B1 (ko) | 스캔 테이블을 이용한 영상 주사방법과 그를 적용한 이산코사인 변환 장치 | |
JP3568392B2 (ja) | 動画像復号化装置 | |
GB2308771A (en) | Video encoding based on inter block correlation | |
KR100832872B1 (ko) | 기하학적 변환을 이용한 영상 부호화 효율 향상 방법 및장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: CISCO SYSTEMS INTERNATIONAL BV Free format text: FORMER OWNER: TANDBERG TELECOM AS Effective date: 20120419 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20120419 Address after: Swiss basil Patentee after: Cisco Systems International Sarl Address before: Norway Lv Sake Patentee before: Tandberg Telecom AS |