用于数字视频内容的自适应通用可变长度码字编码的制作方法

文档序号:7505221阅读:220来源:国知局
专利名称:用于数字视频内容的自适应通用可变长度码字编码的制作方法
技术领域
在许多当前的以及正在出现的产品中使用视频压缩。视频压缩是数字电视机顶盒(STB)、数字卫星系统(DSS)、高分辨率电视(HDTV)解码器、数字通用盘(DVD)播放器、视频会议、因特网视频和多媒体内容以及其它数字视频应用的核心。如果没有视频压缩,则表达数字视频内容所需的比特数将极为巨大,使得难以甚至不能有效地存储、传输或者观看数字视频内容。
数字视频内容包括能够作为影像在电视接收机、计算机监视器或者能够显示数字视频内容的其它电子设备上显示的图像(picture)流。在时间上在一个特定图像之前显示的图像相对于该特定图像在“向后的方向”上。类似地,在时间上在一个特定图像之后显示的图像相对于该特定图像在“向前的方向”上。
每一个图像可以被分成由宏块(MB,macroblock)构成的画片(slice)。一个画片是一组宏块,一个宏块是一个矩形像素组。典型的宏块尺寸是16×16像素。
视频编码背后的一般想法是从数字视频内容中去除“并非根本性”的数据。这样,数据量降低,所需的广播或者传输带宽就降低。在压缩视频数据被传输后,它必需被解码,或者被解压缩。在这个过程中,对传输的视频数据进行处理以产生代入视频数据中以取代在编码过程中被去除的“非根本性的”数据的近似数据。
视频编码将数字视频内容转换为与未压缩的数字视频内容相比能够用较少的空间存储、用较小的带宽传输的压缩形式。这是利用视频内容图像中的时间和空间冗余实现的。数字视频内容可以被存储到存储介质比如硬盘驱动器、DVD或者其它的非易失性存储装置中。
存在许多种压缩数字视频内容的视频编码方法。随之而来,已经开发了多种视频编码标准来规范各种视频编码方法,以使压缩数字视频内容的格式能够为多数视频编码器和解码器所识别。例如,运动图像专家组(MPEG)和国际电信联盟(ITU-T)已经开发了广泛使用的视频编码标准。这些标准的例子包括MPEG-1、MPEG-2、MPEG-4、ITU-T H.261和ITU-T H.263标准。
但是,随着对更高分辨率、更复杂图形内容和更快传输时间的要求的增加,需要更好的视频压缩方法。为此,当前正在开发一种新的视频编码标准。这个新的视频编码标准称为MPEG-4第10部分高级视频编码(AVC)/H.264标准(MPEG-4 Part 10 Advanced Video Coding(AVC)/H.264 standard)。
多数现代视频编码标准,包括MPEG-4 Part 10 AVC/H.264标准,部分地基于通用可变长度码字(UVLC,universal variable lengthcodeword)编码。在UVLC编码中,使用UVLC表来对与特定图像、画片或者宏块相关的顺列体(语法,syntax)或者事件(event)编码。对一个事件的特定结果(outcome)编码所需的比特数取决于其在UVLC表中的位置。UVLC表中的特定结果的位置基于概率分布。这种编码方法产生一个比特流,该比特流然后可以由解码器使用类似的UVLC表解码。
但是,与传统的UVLC编码相关的一个问题是其事件的可能结果(outcome)具有固定的概率分布。换句话说,用同样数量的比特来对一个事件的特定结果编码,而不管其使用频率。但是,在许多应用中,一个可能结果的概率可以在图像间、画片间或者宏块间变化很大。因此,在现有技术中,需要有一种使用自适应UVLC产生比特流的方法,以便在编码方法中使用更少的比特。

发明内容
在许多可能的实施例中的一种中,本发明提供了一种对数字视频内容的事件的可能结果进行编码而产生编码结果的方法。所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内(intra)、预测(predicted)或者双向预测(bi-predicted)图像、画片或宏块。该方法包括用查询表中的条目产生表示编码结果的比特流,基于可能结果的历史概率定期重排所述条目。该查询表中的条目的定期重排与解码器使用的查询表中的条目的定期重排同步,以便表示编码结果的比特流能够被正确地解码。
本发明的另一个实施例提供一种对数字视频内容的事件的可能结果进行解码、产生解码结果的方法。该方法包括对编码器产生的、表示编码结果的比特流进行解码。该方法使用查询表中的基于所述可能结果的历史概率定期重排的条目。通过对每一个所述解码结果在图像、画片或宏块流中的出现进行计数来计算所述可能结果的历史概率。所述查询表中的所述条目的定期重排与编码器所使用的查询表中的条目的定期重排同步,以便表示所述编码结果的比特流能够被正确地解码。
本发明的另一个实施例提供一种对数字视频内容的事件的可能结果进行编码而产生编码结果的编码器。所述数字视频内容包括图像、画片或者宏块的流,所述图像、画片或者宏块分别可以是帧内、预测或者双向预测图像、画片或宏块。所述编码器包括一个查询表,该查询表的条目与所述可能结果相应。每个所述条目与一个独特的码字相关联。所述编码器还包括一个计数器,该计数器对每一个所述编码结果在所述图像、画片或宏块流中的出现进行计数,从而计算所述可能结果的历史概率。所述查询表中的条目基于所述可能结果的历史概率定期重排,并由所述编码器用来产生代表编码结果的比特流。所述查询表中条目的定期重排与解码器所使用的查询表中的条目的定期重排同步,以便能够对编码结果正确地解码。
本发明的另一个实施例提供一种对数字视频内容的事件的可能结果进行解码、产生解码结果的解码器。所述数字视频内容包括图像、画片或者宏块的流,所述图像、画片或者宏块分别可以是帧内、预测或者双向预测图像、画片或宏块。所述解码器包括一个查询表,该查询表的条目与所述可能结果相应。每个所述条目与一个独特的码字相关联。所述解码器还包括一个计数器,该计数器对每一个所述解码结果在所述图像、画片或宏块流中的出现进行计数,从而计算所述可能结果的历史概率。所述查询表中的条目基于所述可能结果的历史概率定期重排,并由所述解码器用来对代表编码结果的比特流进行解码。所述查询表中条目的定期重排与编码器所使用的查询表中的条目的定期重排同步,以便能够对编码结果正确地解码。


附解了本发明的各种实施例,是说明书的一部分。图解的实施例只是本发明的例子,并不对本发明的范围构成限制。
图1图解了根据本发明的一个实施例的三种类型的图像的一个举例的序列,它们是由作为举例的视频编码标准比如MPEG-4 Part 10AVC/H.264标准所定义的。
图2图示了最好分成一个或者多个由宏块构成的画片的每一个图像。
图3图示了根据本发明的一个实施例,自适应UVLC编码方法的图4图解了本发明的实施例中滑动窗口的一种实现方式。
在所有的附图中,相同的附图标记表示类似但不一定完全相同的部件。
具体实施例方式
本说明书提供了一种使用自适应通用可变长度码字(UVLC,universal variable length codeword)编码的产生比特流的方法。该方法可以用在任何借助于查询表产生编码比特流的数字视频编码方案中。尤其是,本发明可以在UVLC和基于上下文的自适应二进制算术编码(CABAC,context-based adaptive binary arithmetic coding)方案中实现,上述UVLC和CABAC编码方案可以在MPEG-4 Part 10AVC/H.264视频编码标准中找到。
如上所述,MPEG-4 Part 10 AVC/H.264标准是数字视频内容编码和压缩的新标准。在这里将建立MPEG-4 Part 10 AVC/H.264标准的文献引为参考,包括Joint Video Team(JVT)于2002年8月10日发布的″Joint Final Committee Draft(JFCD)of Joint Video Specification″。(ITU-T Rec.H.264 & ISO/IEC 14496-10 AVC)。JVC是由来自MEPG和ITU-T的专家组成的。由于MPEG-4 Part 10 AVC/H.264标准的公开性质,本说明书不准备记载MPEG-4 Part 10 AVC/H.264视频编码的现有的各个方面,而是将该标准的规范包括在本说明书中作为参考。
本发明可以用在任何要求生成比特流的通用数字视频编码算法或者系统中。可以对其进行修改以用于对与图像、画片或者宏块相关联的事件进行编码和解码,以最好地服务于特定的标准或者应用。因此,虽然在这里所描述的实施例主要是处理UVLC编码,但是也可以有其它的实施例,例如应用于其它视频编码方案比如CABAC等等。
如图1所示,最好有三种类型的图像可以用在视频编码方法中。定义三种类型的图像是为了支持对所存储的数字视频内容的随机访问,同时使用具有运动补偿的时序预测(temporal prediction)发掘最大程度的冗余缩减。所述三种类型的图像是帧内(I)图像(100)、预测(P)图像(102a,b)和双向预测(B)图像(101a-d)。一个I图像(100)提供用于随机访问所存储的数字视频内容的一个访问点。帧内图像(100)的编码不参考基准图像(reference picture),可以使用中度压缩进行编码。
利用已经被编码为基准图像的I、P或者B图像对预测图像(102a,b)进行编码。相对于被编码的P图像,基准图像可以在向后或者向前的时间方向上。对预测图像(102a,b)的编码可以比帧内图像(100)压缩更多。
用两个时序基准图像(temporal reference picture)对双向预测图像(101a-d)进行编码。本发明的一个方面是,所述两个时序基准图像相对于被编码的B图像可以在相同的时间方向或者不同的时间方向。在三种图像类型中,双向预测图像(101a-d)的压缩程度可以最大。
在图1中图解了三种图像类型之间的参考关系(103)。例如,P图像(102a)可以用已编码的I图像(100)作为其基准图像来被编码。B图像(101a-d)可以用已编码的I图像(100)和已编码的P图像(102a,b)作为其基准图像来被编码,如图1所示。已编码的B图像(101a-d)也可以用作其它待编码的B图像的基准图像。例如,图1所示的B图像(101c)以另两个B图像(101b和101d)为其基准图像。
图1所示的I图像(100)、B图像(101a-d)和P图像(102a,b)的数量和特定顺序只是图像的配置的一个例子,对于实现本发明来说并非必须的。可以使用任何数量、任何顺序的I、B和P图像以最好地服务于特定的应用。MPEG-4 Part 10 AVC/H.264标准对两个基准图像之间的B图像的数量没有任何限制,对两个I图像之间的图像的数量也没有限制。
图2图示了每一个图像(200)最好被分成由宏块构成的画片。一个画片(201)是一组宏块,一个宏块(202)是一个矩形像素组。如图2所示,宏块(202)的尺寸最好是16×16像素。
下面详细说明可以使用的优选UVLC表。表1解释了一种优选的UVLC码字结构。如表1所示,每一个码字有一个码号与之相关。
表1UVLC码字结构

如表1所示,一个码字是能够用来对一个事件的特定结果(outcome)进行编码的一个比特串。码字的按比特计算的长度随着其对应的码号的增加而增加。例如,码号0的码字只有一个比特,而码号11对应的码字的长度为7比特。表1中对码号的码字分配本质上只是举例性质的,可以对其修改以最好地服务于特定的应用。
表2示出了码字和要被编码的优选事件之间的关联(联系)。表2的事件本质上是举例性的,不是仅有的根据本发明的实施例能够被编码的事件类型。如表2所示,要被编码的一些举例的事件或者顺列体(语法,syntax)有游程(RUN)、MB_Type Intra(帧内)、MB_Type Inter(帧间)、Intra_pred_mode(帧间预测模式)、运动矢量数据(motion vectordata,MVD)、编码块模式(coded block pattern,CBP)(帧内(intra)和帧间(inter))、Tcoeff_chroma_DC、Tcoeff_chroma_AC以及Tcoeff_luma。这些事件在MPEG-4 Part 10 AVC/H.264视频编码标准中有详细的说明,因此在本说明书中不作详细讨论。
表2码号和要被编码的事件之间的联系(关联)


如表2所示,每一个事件有几个可能结果。例如,MB_Type(inter)的结果是16×16、16×8、8×16、8×8等。每一个结果被赋予一个与一个码字相关联的码号。编码器然后对特定结果进行编码将其码字置入被发送到解码器的比特流中。解码器然后使用相同的UVLC表解码得到正确的结果。例如,16×16结果(inter_16×16)被赋予一个码号0和一个码字“1”。为了对inter_16×16编码,编码器在比特流中置入一个“1”。类似地,4×4结果(inter_4×4)被赋予一个码号6和一个码字′01011′。为了对inter_4×4编码,编码器在比特流中置入′01011′。
如表1所示,UVLC码字的以比特为单位的长度是1,3,3,5,5,5,5,7,7,7。这假设了要被编码的事件对于其结果的概率分布为1/2,1/8,1/8,1/32,1/32,1/32,1/32,1/128,1/128,…。例如,表3列出了对于表2给出的作为举例的MB_Type(inter)的头15个可能结果及其相关码号、码字长度和假设的概率。
表3MB_Type(inter)事件的头15个可能结果

如表3的例子所示,假设每一个可能结果具有固定概率。这个假设可能不成立。例如,inter_4×4的概率在图像之间、画片之间或者宏块之间变化很大。在表3的例子中,inter_4×4的码号为6,码字长度为5。但是,对于特定的图像、画片或者宏块的序列,inter_4×4可能成为最普遍的编码模式。但是,使用固定的UVLC表则必须用5比特进行编码,而不是用1比特。在这种情况下,如果inter_4×4可以用1比特而不是5比特进行编码,则编码过程会更为有效率,从而潜在地只需要少得多的比特数。另一方面,对于特定序列来说,inter_16×16可能是最少见的。但是,基于固定UVLC表,它却必须总是用1比特进行编码。这个假设说明了事件的实际概率分布与假设的概率分布的差距是如何大,固定的UVLC表的性能并不是最优的。
下面结合表4和表5说明优选的自适应UVLC编码方法。根据本发明的一个实施例,事件的各个结果(例如inter_4×4)根据其概率在UVLC表中上下移动。例如,如果历史表明inter_4×4是最普遍的编码模式,则结果inter_4×4被移动到UVLC表的顶部。同时,其它的可能结果则在UVLC表中被向下推,如表4所示。
表4在inter_4×4已经被移到UVLC表顶部的情况下MB_Type(inter)事件的头15个可能结果

如表4所示,现在,inter_4×4的码号为0,码字长度为1比特。通过这样改变UVLC表,与使用固定UVLC表的情况相比,在编码比特流中要被包括的比特数要少得多。
类似地,如果概率历史后来表明,inter_16×16是表4的例子中的15个可能结果中最少用的帧间编码模式,则将其移动到UVLC表的底部,如表5所示。
表5在inter_4×4已经被移到UVLC表底部的情况下MB_Type(inter)事件的头15个可能结果

如表5所示,inter_16×16的码号为14,码字长度为7。通过这样改变UVLC表,用比inter_16×16更少的比特数对与inter_16×16相比更容易发生的结果进行编码。
最好编码器和解码器都可以得到概率历史信息。这样,解码器所使用的UVLC表可以被正确地更新,码字可以被正确地解码。
重要的是要注意到,在此优选的自适应UVLC编码方法中,概率分布的假设没有改变。而是通过在UVLC表中上下移动事件的结果来用更少的比特数对更常见的结果进行编码,用更多的比特数对不太常见的结果进行编码。这种适应被应用于UVLC表中的所有事件,比如RUN、MB-Type(intra)、MVD等。
下面结合图3描述自适应UVLC编码方法的优选实施方式。编码可以始于缺省的UVLC表(302)比如表3所示者。缺省的UVLC表(302)也可以是用于CABAC编码的查询表或者是用于其它类型的数字视频编码的查询表。在下文以及所附权利要求中,将使用术语“UVLC表”来表示在自适应UVLC编码或者其它类型的数字视频编码比如CABAC编码中使用的任何查询表,除非另外特别指明。
如图3所示,编码器(300)和解码器(301)都具有计数器(303,305),它们最好被设置为对每个可能事件的每个结果的出现进行计数。例如,计数器(303,305)对结果inter_4×4在编码器(300)端和解码器(301)端出现多少次进行计数。在编码器(300)对一个事件的一个结果进行编码后,其相应的计数器(303)最好被自动更新,以反映该特定结果的编码。类似地,在解码器(301)对一个事件的一个结果解码后,其相应的计数器(305)也最好被自动更新,以反映该特定结果的编码。根据本发明的一个实施例,更新计数器(303,305)的规则与编码器(300)和解码器(301)是一样的。因此,计数器(303,305)在编码端和解码端都是同步的。
如图3所示,UVLC表(302,304)被定期更新,以反映计数器(303,305)的结果,换句话说,UVLC表(302,304)根据计数器(303,305)计算的结果的历史概率来从上到下重新排序。计数器(303,305)计数的具有最高概率的结果最好留在UVLC表中的最高位置。这样,它们可以用更短的码字长度被编码。
根据本发明的另一个实施例,UVLC表的更新频率可以变化,以最好地服务于特定的应用。更新频率最好对于编码器UVLC表(302)和解码器UVLC表(304)是一样的,以进行正确的解码。例如,更新频率可以按图像、按帧、按画片或者按宏块。另一个可能是在事件的概率分布有重大变化时可以更新UVLC表(302,304)。根据本发明的一个实施例,这些可能的更新频率不是独有的更新频率。相反,任何最适合特定应用的更新频率都都可在本发明中实现。
下面描述计算一个事件的一个结果的举例的方法。令Prob(i,j)是一个事件的结果j对于议定的更新周期i的概率。例如,议定的更新周期可以是每一帧。用来更新UVLC表(302,304)的事件结果概率计算如下Prob(j)=αProb(i-1,j)+(1-α)Prob(i,j) (1)其中0≤α<1。由于相继帧之间的高度时间相关性,基于被编码帧的更新的UVLC表(302,304)对于即将到来的帧应当相当好。本发明的另一个实施例是,如果检测到场景的变化,则将UVLC表(302,304)切换回其缺省内容,并且重置计数器(303,305)。这是因为,在某些应用中,根据概率历史更新的UVLC表(302,304)对于新的场景来说可能并不理想。但是,根据本发明的另一个实施例,当遇到新场景时不需要切换回缺省UVLC表值。
根据本发明的另一个实施例,对每一种图像类型(I、P和B)使用单独的UVLC表。这些UVLC表最好使用结合图3所描述的方法进行更新。对于每一个UVLC表,可以有单独的计数器,来对特定图像类型相应的结果的出现进行计数。但是,某些应用可能不需要对不同的图像类型使用单独的UVLC表。例如,可以对一种、两种或者三种不同的图像类型使用单个UVLC表。
根据本发明的另一个实施例,在累积概率统计数据时计数器使用滑动窗口来解释视频特性随时间的变化。概率计数器最好舍弃过时的,或者说在滑动窗口范围之外的结果出现数据。在许多应用中,滑动窗口法都是优选的,因为,如果不用滑动窗口,例如,为了改变UVLC表中的顺序,在第1001帧中要产生比第11帧中更为显著的效果。
下面结合图4描述计数器中滑动窗口的实现。在下面的说明中,假设对于一个事件有J个可能结果,所述滑动窗口覆盖n个帧,如图4所示。令N(i,j)为用于帧i的结果j的计数器。则滑动窗口内结果j的总计数器为
N(j)=Σi′=i-n+1iN(i′,j)---(2)]]>因此,结果j的概率等于Prob(j)=N(j)/Σj′=1jN(j′)---(3)]]>滑动窗口适应确保了在有限的时间段上累积统计数据。视频序列的另一个特征是通常,帧与在时间上更接近它们的其它帧的相关度,要高于帧与在时间上更远离它们的其它帧的相关度。这个特征可以通过在更新特定事件的计数器时加入一个加权因子α(其中α<1)来获取。令N(i,j)是帧i的结果j的计数器,则结果j的总计数器现在是N(j)=Σi′=i-n+1iαi-i′N(i′,j)---(4)]]>因此结果j的概率等于Prob(j)=N(j)/Σj′=1jN(j′)---(5)]]>这种加权确保了一个事件的一个结果的当前的出现与较早的出现相比对其概率有更大的影响。但是,加权只是可选的,在某些应用中可以不使用。
自适应UVLC的设计可以应用于CABAC。在CABAC中,可用UVLC编码方法编码的相同事件的结果用自适应二进制码进行编码。码号首先被转换为二进制数据。然后将二进制数据送到自适应二进制算术编码。码号越小,二进制化产生的比特数越少。向每一个事件的结果分配的码号一般是固定的。但是,码号向每一个事件的结果的分配可以根据结果的概率历史加以调整。
使用与针对图3中的自适应UVLC编码进行说明的方法相同的方法实现自适应CABAC。但是,对于CABAC编码,不是更新UVLC表,而是由计数器更新码号向每一个事件的结果的分配。
上述说明的目的只是解释和描述本发明的实施例,目的不在于穷尽本发明或者将本发明限制于这里所公开的具体形式。鉴于上述说明,许多修改和变化都是可能的。本发明的范围应由所附权利要求来限定。
权利要求
1.一种对数字视频内容的事件的可能结果进行编码而产生编码结果的方法,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该方法包括用查询表中的条目产生表示所述编码结果的比特流,所述条目基于所述可能结果的历史概率在所述查询表中定期重排。
2.如权利要求1所述的方法,其中,所述查询表中的所述条目对应于所述可能结果,并分别与一个独特的码字相关联。
3.如权利要求2所述的方法,其中,通过对每一个所述编码结果在所述图像、所述画片或者所述宏块的所述流中的出现进行计数,来计算所述可能结果的历史概率。
4.如权利要求3所述的方法,其中,所述定期重排包括将所述查询表中的所述条目重新分配给不同的码字。
5.如权利要求4所述的方法,其中,所述重新分配包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
6.如权利要求5所述的方法,其中,如果在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值。
7.如权利要求1所述的方法,其中,所述编码是自适应通用可变长度码字编码,所述查询表是通用可变长度码字表。
8.如权利要求1所述的方法,其中,所述编码是基于上下文的自适应二进制算术编码,所述查询表是基于上下文的自适应二进制算术编码表。
9.如权利要求1所述的方法,其中,对所述帧内图像、画片或者宏块使用单独的查询表。
10.如权利要求1所述的方法,其中,对所述预测图像、画片或者宏块使用单独的查询表。
11.如权利要求1所述的方法,其中,对所述双向预测图像、画片或者宏块使用单独的查询表。
12.如权利要求2所述的方法,其中,所述查询表中所述条目的定期重排是每图像一次。
13.如权利要求2所述的方法,其中,所述查询表中所述条目的定期重排是每画片一次。
14.如权利要求2所述的方法,其中,所述查询表中所述条目的定期重排是每宏块一次。
15.如权利要求3所述的方法,其中,所述可能结果的所述历史概率的所述计算忽略在由一个滑动窗口限定的时间之前发生的所述编码结果,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
16.如权利要求3所述的方法,其中,所述可能结果的所述历史概率的所述计算将一个加权因子包括进来,以对时间上接近的图像、画片或者宏块进行补偿。
17.如权利要求1所述的方法,其中,所述查询表中所述条目的所述定期重排与解码器所使用的查询表中条目的定期重排同步,以便所述编码结果能够被成功地解码。
18.一种对数字视频内容的事件的可能结果进行解码、产生解码结果的方法,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该方法包括用查询表中的条目对表示编码结果的比特流进行解码,所述条目基于所述可能结果的历史概率在所述查询表中定期重排。
19.如权利要求18所述的方法,其中,所述查询表中的所述条目对应于所述可能结果,分别与一个独特的码字相关联。
20.如权利要求19所述的方法,其中,通过对每一个所述编码结果在所述图像、所述画片或者所述宏块的所述流中的出现进行计数,来计算所述可能结果的所述历史概率。
21.如权利要求20所述的方法,其中,所述定期重排包括将所述查询表中的所述条目重新分配给不同的码字。
22.如权利要求21所述的方法,其中,所述重新分配包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
23.如权利要求22所述的方法,其中,如果在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值。
24.如权利要求18所述的方法,其中,所述解码是自适应通用可变长度码字解码,所述查询表是通用可变长度码字表。
25.如权利要求18所述的方法,其中,所述解码是基于上下文的自适应二进制算术编码,所述查询表是基于上下文的自适应二进制算术编码表。
26.如权利要求18所述的方法,其中,对所述帧内图像、画片或者宏块使用单独的查询表。
27.如权利要求18所述的方法,其中,对所述预测图像、画片或者宏块使用单独的查询表。
28.如权利要求18所述的方法,其中,对所述双向预测图像、画片或者宏块使用单独的查询表。
29.如权利要求19所述的方法,其中,所述查询表中所述条目的定期重排是每图像一次。
30.如权利要求19所述的方法,其中,所述查询表中所述条目的定期重排是每画片一次。
31.如权利要求19所述的方法,其中,所述查询表中所述条目的定期重排是每宏块一次。
32.如权利要求20所述的方法,其中,所述可能结果的所述历史概率的所述计算忽略在由一个滑动窗口限定的时间之前发生的所述解码结果,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
33.如权利要求20所述的方法,其中,所述可能结果的所述历史概率的所述计算将一个加权因子包括进来,以对时间上接近的图像、画片或者宏块进行补偿。
34.如权利要求18所述的方法,其中,所述查询表中所述条目的所述定期重排与编码器所使用的查询表中条目的定期重排同步。
35.一种对数字视频内容的事件的可能结果进行编码而产生编码结果的编码器,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该编码器包括查询表,其条目对应于所述可能结果,分别与一个独特的码字相关联;计数器,用来对每一个所述编码结果在所述图像、所述画片或者所述宏块的所述流中的出现进行计数,从而计算所述可能结果的历史概率;其中,所述条目基于所述可能结果的所述历史概率在所述查询表中定期重排,并由所述编码器用来产生表示所述编码结果的比特流。
36.如权利要求35所述的编码器,其中,所述定期重排包括将所述查询表中的所述条目重新分配给不同的码字。
37.如权利要求36所述的编码器,其中,所述重新分配包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
38.如权利要求35所述的编码器,其中,如果所述编码器在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值。
39.如权利要求35所述的编码器,其中,所述查询表是通用可变长度码字表。
40.如权利要求35所述的编码器,其中,所述查询表是基于上下文的自适应二进制算术编码表。
41.如权利要求35所述的编码器,其中,对所述帧内图像、画片或者宏块使用单独的查询表。
42.如权利要求35所述的编码器,其中,对所述预测图像、画片或者宏块使用单独的查询表。
43.如权利要求35所述的编码器,其中,对所述双向预测图像、画片或者宏块使用单独的查询表。
44.如权利要求35所述的编码器,其中,所述查询表中所述条目的定期重排是每图像一次。
45.如权利要求35所述的编码器,其中,所述查询表中所述条目的定期重排是每画片一次。
46.如权利要求35所述的编码器,其中,所述查询表中所述条目的定期重排是每宏块一次。
47.如权利要求35所述的编码器,其中,所述计数器包括一个滑动窗口,该滑动窗口允许所述计数器忽略在由该滑动窗口限定的时间之前发生的所述编码结果,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
48.如权利要求35所述的编码器,其中,所述计数器将一个加权因子包括进来,以对时间上接近的图像、画片或者宏块进行补偿。
49.如权利要求35所述的编码器,其中,所述查询表中所述条目的所述定期重排与解码器所使用的查询表中条目的定期重排同步,以便所述编码结果能够被成功地解码。
50.一种对数字视频内容的事件的可能结果进行解码、产生解码结果的解码器,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该解码器包括查询表,其条目对应于所述可能结果,分别与一个独特的码字相关联;以及计数器,用来对每一个所述解码结果在所述图像、所述画片或者所述宏块的所述流中的出现进行计数,从而计算所述可能结果的历史概率;其中,所述条目基于所述可能结果的所述历史概率在所述查询表中定期重排,并由所述解码器用来对表示所述编码结果的比特流进行解码。
51.如权利要求50所述的解码器,其中,所述定期重排包括将所述查询表中的所述条目重新分配给不同的码字。
52.如权利要求51所述的解码器,其中,所述重新分配包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
53.如权利要求50所述的解码器,其中,如果所述解码器在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值。
54.如权利要求50所述的解码器,其中,所述查询表是通用可变长度码字表。
55.如权利要求50所述的解码器,其中,所述查询表是基于上下文的自适应二进制算术解码表。
56.如权利要求50所述的解码器,其中,对所述帧内图像、画片或者宏块使用单独的查询表。
57.如权利要求50所述的解码器,其中,对所述预测图像、画片或者宏块使用单独的查询表。
58.如权利要求50所述的解码器,其中,对所述双向预测图像、画片或者宏块使用单独的查询表。
59.如权利要求50所述的解码器,其中,所述查询表中所述条目的定期重排是每图像一次。
60.如权利要求50所述的解码器,其中,所述查询表中所述条目的定期重排是每画片一次。
61.如权利要求50所述的解码器,其中,所述查询表中所述条目的定期重排是每宏块一次。
62.如权利要求50所述的解码器,其中,所述计数器包括一个滑动窗口,该滑动窗口允许所述计数器忽略在由该滑动窗口限定的时间之前发生的所述解码结果,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
63.如权利要求50所述的解码器,其中,所述计数器将一个加权因子包括进来,以对时间上接近的图像、画片或者宏块进行补偿。
64.如权利要求50所述的解码器,其中,所述查询表中所述条目的所述定期重排与编码器所使用的查询表中条目的定期重排同步。
65.一种对数字视频内容的事件的可能结果进行编码而产生编码结果的编码系统,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该编码系统包括计算装置,用来通过对每一个所述编码结果在所述图像流中的出现进行计数,从而计算所述可能结果的历史概率;产生比特流的装置,其使用查询表中对应于所述可能结果、具有独特的码字、基于所述可能结果的所述历史概率定期重排的条目来产生表示所述编码结果的比特流。
66.如权利要求65所述的系统,还包括用于将所述查询表中的所述条目重新分配给不同的码字的装置。
67.如权利要求66所述的系统,其中,用于将所述查询表中的所述条目重新分配给不同的码字的装置包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
68.如权利要求65所述的系统,还包括如果在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值的装置。
69.如权利要求65所述的系统,还包括对所述帧内图像、画片或者宏块使用单独的查询表的装置。
70.如权利要求65所述的系统,还包括对所述预测图像、画片或者宏块使用单独的查询表的装置。
71.如权利要求65所述的系统,还包括对所述双向预测图像、画片或者宏块使用单独的查询表的装置。
72.如权利要求65所述的系统,还包括对所述查询表中的所述条目每图像重排一次的装置。
73.如权利要求65所述的系统,还包括对所述查询表中的所述条目每画片重排一次的装置。
74.如权利要求65所述的系统,还包括对所述查询表中的所述条目每宏块重排一次的装置。
75.如权利要求65所述的系统,还包括,在计算所述可能结果的所述历史概率时,忽略在由一个滑动窗口限定的时间之前发生的所述编码结果的装置,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
76.如权利要求65所述的系统,还包括将一个加权因子包括进来的装置,以在计算所述可能结果的所述历史概率时,对时间上接近的图像、画片或者宏块进行补偿。
77.如权利要求65所述的系统,还包括使所述查询表中所述条目的所述定期重排与解码器所使用的查询表中条目的定期重排同步的装置,以便所述编码结果能够被成功地解码。
78.一种对数字视频内容的事件的可能结果进行解码、产生解码结果的解码系统,所述数字视频内容包括图像、画片或者宏块的流,图像、画片和宏块分别可以是帧内、预测或者双向预测图像、画片或宏块,该解码系统包括计算装置,用来通过对每一个所述解码结果在所述图像流中的出现进行计数,从而计算所述可能结果的历史概率;对比特流解码的装置,其使用查询表中对应于所述可能结果、具有独特的码字、基于所述可能结果的所述历史概率定期重排的条目来对表示编码结果的比特流进行解码。
79.如权利要求78所述的系统,还包括用于将所述查询表中的所述条目重新分配给不同的码字的装置。
80.如权利要求79所述的系统,其中,用于将所述查询表中的所述条目重新分配给不同的码字的装置包括对出现的历史概率高的结果分配较短的码字,对出现的历史概率低的结果分配较长的码字。
81.如权利要求78所述的系统,还包括如果在所述图像、画片或宏块流中检测到场景变化,则将所述查询表重置到其缺省值的装置。
82.如权利要求78所述的系统,还包括对所述帧内图像、画片或者宏块使用单独的查询表的装置。
83.如权利要求78所述的系统,还包括对所述预测图像、画片或者宏块使用单独的查询表的装置。
84.如权利要求78所述的系统,还包括对所述双向预测图像、画片或者宏块使用单独的查询表的装置。
85.如权利要求78所述的系统,还包括对所述查询表中的所述条目每图像重排一次的装置。
86.如权利要求78所述的系统,还包括对所述查询表中的所述条目每画片重排一次的装置。
87.如权利要求78所述的系统,还包括对所述查询表中的所述条目每宏块重排一次的装置。
88.如权利要求78所述的系统,还包括,在计算所述可能结果的所述历史概率时,忽略在由一个滑动窗口限定的时间之前发生的所述解码结果的装置,所述滑动窗口覆盖可定义数量的所述图像、所述画片或者所述宏块。
89.如权利要求78所述的系统,还包括将一个加权因子包括进来的装置,以在计算所述可能结果的所述历史概率时,对时间上接近的图像、画片或者宏块进行补偿。
90.如权利要求78所述的系统,还包括使所述查询表中所述条目的所述定期重排与编码器所使用的查询表中条目的定期重排同步的装置。
全文摘要
一种对数字视频内容的事件的可能结果进行编码和解码的方法和系统。数字视频内容包括图像、画片或者宏块的流,图像、画片或者宏块分别可以是帧内、预测或者双向预测图像、画片或者宏块。该方法包括使用查询表中的条目产生表示结果的比特流以及对其进行解码,所述条目根据可能结果的历史概率定期重排。通过对每一个编码和解码结果在图像、画片或者宏块中的出现进行计数来计算可能结果的历史概率。使编码器和编码器所使用的查询表中的条目的定期重排同步,以便表示编码结果的比特流能够被正确解码。
文档编号H03M7/42GK1631043SQ03803629
公开日2005年6月22日 申请日期2003年1月22日 优先权日2002年1月22日
发明者王利敏, 克利特·潘索波恩, 雷吉夫·甘德希, 岳宇, 艾杰·鲁特拉 申请人:通用仪器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1