对包括基本层的比特流预解码和解码的方法和设备的制作方法

文档序号:7620523阅读:311来源:国知局
专利名称:对包括基本层的比特流预解码和解码的方法和设备的制作方法
技术领域
与本发明一致的设备和方法涉及一种对包括基本层的比特流预解码和解码的方法和设备,更具体地说,涉及通过在预解码器中以基本层帧代替特定帧为给定的比特率提取较高品质的视频流。
背景技术
随着包括互联网的信息通信技术的发展,视频通信和文本、语音通信都已急剧地增加。传统的文本通信不能满足各种用户的需要,因而能提供例如文本、图片和音乐等各种类型的信息的多媒体服务业已增加。因为多媒体数据的量通常相对于其他类型数据较大,所以多媒体数据需要大容量的存储介质和用于传输的宽的带宽。因此,压缩编码方法是传输包括文本、视频和音频的多媒体数据所需要的。例如,具有640×480分辨率的24位的真彩色图像每帧需要640×480×24位的容量,即大约7.37兆位的数据。当像这样的图像以每秒30帧的速度被传输时,需要221兆位/秒的带宽。当基于这样的图像的90分钟的电影被存储时,需要1200千兆位的存储空间。因此,压缩编码的方法是传输包括文本、视频和音频的多媒体数据所需的。
在这样压缩编码方法中,数据压缩的基本原理在于去除数据冗余。数据冗余一般被定义为相同的颜色或对象在图像中重复的空间冗余、在运动的图像相邻帧之间几乎没有改变或在音频中同样的声音被重复的时间冗余、或考虑到人类视力和对高频感知的迟钝的心理的视觉冗余。通过去除这样的数据冗余,数据能被压缩。数据压缩主要根据源数据是否被损失分为有损/无损压缩,根据各个的帧是否被独立地压缩分为帧内/帧间压缩,根据压缩所需要的时间与恢复所需要的时间是否相同分为对称压缩/非对称压缩。另外,当压缩/恢复时间延迟不超过50ms时,数据压缩被定义为实时压缩,当帧具有不同分辨率时,数据压缩被定义为可伸缩(scalable)压缩。作为例子,对于文本和媒体数据,无损压缩通常被使用。对于多媒体数据,有损压缩通常被使用。同时,帧间压缩通常被使用以去除空间冗余,帧内压缩通常被使用以去除时间冗余。
传输性能依赖于传输介质而有所不同。当前使用的传输介质具有各种传输速率。例如,超高速通信网络能够每秒传输几十兆位的数据,然而移动通信网络具有每秒384千位的传输速率。在相关领域视频编码方法例如运动图像专家组(MPEG)-1、MPEG-2、H.263、H.264等中,时间冗余通过基于运动估计与补偿的运动补偿被去除,空间冗余通过变换编码被去除。这些方法具有满意的压缩率,但是因为它们在主要算法上使用自反方法,所以它们不具有真正可伸缩比特流的灵活性。因此,近年来,小波视频编码已被积极地研究。可伸缩性(scalability)指对单个压缩比特流部分解码的能力,也就是说,是指再现各种类型的视频的能力。
可伸缩性包括指示视频分辨率的空间可伸缩性、指示视频品质水平的信噪比(SNR)可伸缩性、指示帧速率的时间可伸缩性、及其组合。
空间可伸缩性和SNR可伸缩性能分别使用小波变换和量化来实现。时间可伸缩性使用运动补偿时间滤波(MCTF)或者无约束的MCTF(UMCTF)来被实现。
图1显示了传统的支持上述提到的可伸缩性的视频编码系统的整个构造。参照图1,编码器40通过执行时间滤波、空间变换和量化来将输入视频10编码成比特流20。预解码器50截去从编码器40接收到的比特流20的一部分或者根据提取条件例如由考虑到通信环境和解码器60的性能而确定的品质、分辨率、或帧速率等提取比特流25,因此以简单的方式实现纹理数据(texture data)的可伸缩性。
解码器60对提取的比特流25进行编码器40的逆操作并产生输出视频30。当解码器60的处理能力不足以支持由编码器40产生的整个比特流20的实时编码时,解码器60可提取比特流25。当然,该提取可被预解码器50和解码器60两者执行。
可伸缩视频编码允许比特率、分辨率和帧速率被预解码器50改变,并且以高比特率提供相当高的压缩比。但是,由于几种原因,视频编码与传统的编码方案例如MPEG-4和H.264相比在不足比特率中展现相当低的性能。
降低的性能主要由在低分辨率展现比离散余弦变换(DCT)更低的下降的小波变换的特性产生。另一个重要的原因是在支持各种比特率的可伸缩视频编码中,对于特定比特率编码被最佳化,而在其它比特率编码性能被降低。
因此,有必要开发用于减少品质、分辨率或帧速率降低的有效的预解码方法。

发明内容
说明性的、非限制的本发明实施例克服了上面的缺点或其他没有在上面描述的缺点。另外,本发明不需要克服上述的缺点,说明性的、非限制的本发明的示例性实施例可以不克服上述问题。
本发明提供了一种既在低比特率又在高比特率提供高性能的可伸缩视频编码方法。
本发明也提供了一种用于将通过高效地预解码保留的位分配给另一帧的方法。
根据本发明的一方面,提供了一种用于对包含基本层的比特流预解码的方法,其包括在位于基本层存在的位置的帧中根据预定的标准确定将被跳过的帧;和根据确定的帧和提取条件提取比特流的一部分。
该标准可以是基于连接到解码器的网络的传输条件确定的可传输比特率。
确定将被跳过的帧的步骤包括当比特率低于第一阈值时,确定所有位于基本层位置的帧可被跳过。
确定将被跳过的帧的步骤包括当比特率在第一和第二阈值之间时,确定在位于基本层的位置的帧中高通帧可被跳过。
根据本发明的另一方面,提供了一种用于对包含基本层和具有一些跳过的帧的比特流解码的方法,该方法包括通过将预定的编码解码器应用于关于比特流中的基本层的信息来重构基本层;通过使用除比特流中的基本层之外的信息跳过一些帧产生残余帧;将基本层插入到跳过的帧的位置;和对插入的基本层和残余帧执行逆时间滤波并重构视频序列。
产生残余帧的步骤可包括对比特流中除基本层之外的纹理信息执行逆量化并输出变换系数;以及将变换系数逆变换为空间域中的变换系数。
基本层在被上采样到残余帧的分辨率后可被插入。
通过当差分编码被用于产生残余帧时计算基本层和残余帧的和,并且通过当时间预测编码用于产生残余帧时计算残余帧和使用参考帧标号以及运动矢量获得的预测帧的和,来执行逆时间滤波。
预定的编码解码器可以是H.264(先进的视频编码)编码解码器。可使用逆小波变换来执行上采样。
根据本发明的另一方面,提供了一种用于提取包含基本层的比特流的一部分的预解码器,其包括模式选择模块,用于在位于基本层存在的位置上的帧中根据预定的标准确定将被跳过的帧;和比特流提取模块,用于根据选择的模式和提取条件提取比特流的一部分。
根据本发明的另一方面,提供了一种用于对包含基本层和一些跳过的帧的比特流解码的视频解码器,该视频解码器包括基本层解码器,用于通过将预定的编码解码器应用于关于比特流中的基本层的信息来重构基本层;逆空间变换模块,用于通过使用除比特流中的基本层之外的信息跳过一些帧产生残余帧;和逆时间滤波模块,用于将基本层插入到被跳过的帧的位置,并且为了重构视频序列对插入的基本层和残余帧执行逆时间滤波。


通过参考附图详细地描述示例性实施例,本发明的上面和其他方面将变得更加清楚,其中图1显示了传统的视频编码系统的整个构造;图2是根据本发明实施例的可伸缩视频编码器的示图;图3是用于解释根据本发明示例性实施例的编码器执行的时间滤波处理的示图;图4显示一个实例,其中在最高时间级别的高通帧中每一块根据代价函数(cost function)以不同的方式被编码;图5示出了通过小波变换将输入图像分解为子带的处理的实例;图6是根据本发明示例性实施例的预解码器的示图;图7示出了从编码器接收到的比特流的结构;图8示意性地表示可伸缩比特流的结构;图9表示画面组(GOP)字段的详细结构;图10是解释根据目标比特率应用不同模式的处理的示图;图11显示比特流提取模块的操作的一个实例;图12显示比特流提取模块的操作的另一实例;图13表示GOP字段在根据由比特流提取模块执行的提取处理被改变之前的结构;图14表示根据在模式3下被比特流提取模块执行的提取处理被修改的GOP字段的结构;图15表示根据在模式2下被比特流提取模块执行的提取处理被改变的GOP字段的结构;图16根据本发明示例性实施例的可伸缩的视频解码器的示图;图17表示根据如图14中所示的模式3在一些帧被预解码器跳过之后剩余的GOP字段中帧的运动信息和纹理信息;图18是用于解释使用基本层重构如图17中所示的被跳过的帧的处理;和图19是移动序列的峰值信噪比(PSNR)对比特率的图形。
具体实施例方式
现在将参照附图来更全面地描述本发明,示例性实施例在附图中被示出。参照下面的本发明实施例和附图的详细描述,本发明的不同方面和实现其的方法将被更容易的理解。但是,本发明可以很多不同的形式被实现,不应该被解释为限于在这里阐述的示例性实施例。相反地,这些示例性实施例被提供,以便对本领域的技术人员来说,本公开是彻底完全的,并充分表达本发明的原理,并且本发明仅由所附的权利要求限定。在整个说明书中相同的标号始终表示相同部件。
在整个说明书中,基本层指的是具有比在由可伸缩视频编码器实际产生的比特流中可用的最高分辨率和帧速率低的帧速率和分辨率的视频序列。在本发明示例性实施例中,基本层具有如在下文中将描述的最低帧速率和分辨率,尽管不是必要的。
在说明书中,最低帧速率、最低分辨率、或者最高分辨率基于实际产生的比特流被确定,并且与由可伸缩视频编码器支持的相应物加以区别。
参照图2,根据本发明示例性实施例的可伸缩视频编码器100包括基本层产生模块110、时间滤波模块120、运动估计模块130、空间变换模块150、量化模块160、比特流产生模块170和上采样模块180。
视频序列被输入到基本层产生模块110和时间滤波模块120中。基本层产生模块110将输入视频序列下采样到最低帧速率和最低分辨率以产生基本层,使用预定的编码解码器对基本层进行编码,并将编码的基本层提供给比特流产生模块170。基本层产生模块110将产生的基本层提供给上采样模块180。这里,下采样可以不同的方式被执行。具体地讲,分辨率中的下采样可使用小波变换被执行。
在时间和空间上被下采样的视频序列,即基本层,可被直接发送到上采样模块180。或者,使用相同的编码解码器被编码然后被解码的基本层被提供给上采样模块180,以避免与解码器重构的基本层不匹配。也就是说,在时间和空间上被下采样的视频序列或被编码和解码的视频序列将被提供给上采样模块180,它们都共同地被称为“基本层”。
编码解码器可以是在低比特率提供优良品质的非基于小波的H.263或MPEG-4编码解码器。提供“优良的品质”指得是压缩后重构的图像与原始图像相比几乎没有失真。峰值信噪比(PSNR)通常被用作图像品质的度量。
上采样模块180对由基本层产生模块110产生的基本层上采样到与将经历时间滤波的帧的分辨率相等的分辨率。上采样可通过小波逆变换来执行。
时间滤波模块120在时间轴的方向上把帧分解成低通和高通帧以去除存在于帧中的冗余。在本发明中,时间滤波模块120执行时间轴的方向上的滤波以及使用基本层的上采样的版本与帧之间的差的滤波。时间轴方向上的滤波被称为时间残余编码,使用来自基本层的上采样的版本的差的滤波被称为差分编码。
运动估计模块130使用参考帧来执行运动估计。时间滤波模块120使运动估计模块在需要时执行运动估计并将运动估计的结果返回给时间滤波模块120。作为时间滤波算法,MCFT或UMCFT可被使用。
图3表示在MCTF(使用5/3滤波器)中的时间分解处理。这里,一个GOP包括8个帧,来自前一个或下一个GOP的帧被用作参考。参照图3,首先,在时间级别1,8个帧被分解为4个低通帧(L帧)和4个高通帧(H帧)。使用左侧或右侧或两侧的参考帧来预测H帧。然后,使用两侧的H帧来更新L帧。在更新步骤中,L帧不是原始帧,而是使用H帧被更新以使集中于H帧中的误差均匀地分布在帧中。但是,由于更新步骤不是本发明的实质的特征,所以将在以下描述L帧是没有被更新的原始帧。
接下来,在时间级别2,4个L帧被分解为2个L帧和2个H帧。最后,在时间级别3,在时间级别2的2个L帧被分解为1个L帧60和1个H帧70。然后,在最高时间级别的1个L帧和7个H帧被编码以用于传输。
与在最高时间级别具有最低帧速率的帧相应的间隔以不同于简单的时间残余编码的方式经历滤波。也就是说,在当前GOP之内的时间级别3的L帧60和H帧使用差分编码被滤除。可使用时间相关的帧作为参考通过时间残余编码将H帧70滤除。通过为块选择时间残余编码和差分编码的较好的技术,来对具有预定像素大小的每一块执行滤波。
速率失真(R-D)最佳化被用来选择最佳的编码模式。由于时间残余编码允许使用前向、后向、双向预测模式,从前向编码、后向编码、双向编码和差分编码中为每一块确定将代价函数减到最小的编码模式。
当Eb、Ef、Ebi、和Ei分别表示当使用基本层作为参考的后向预测模式、前向预测模式、双向预测模式、B-intra预测模式被使用时计算的平均绝对差(MAD)时,Bb、Bf、Bbi、和Bi分别表示另外分配给各个编码模式的位,λ表示拉格朗日系数,对各个编码模式的代价函数被等式(1)定义

在Bb、Bf、和Bbi分别代表向后、向前、双向压缩包括运动矢量和参考帧的运动信息而分配的位时,因为运动矢量对帧内编码没有被使用,所以Bi是很小的可以忽略的值。拉格朗日系数λ是根据压缩率确定的常量。
模式选择模块(没有示出)选择使代价函数减少到最小的一种模式,以便于确定在最高时间级别的H帧的编码中的最好的模式。在等式(1)中,希腊字符α表示代表B-intra模式的选择频率的常量。当α=1时,B-intra模式以和其他的编码模式一样的选择频率被选择。随着α的增加,B-intra模式的选择的频率减少。随着α的减少,B-intra模式的选择的频率增加。
图4显示了一个实例,其中在最高时间级别的H帧中的每一块根据代价函数以不同的方法被编码。一帧被分解为16块。MB表示一块,F、B、Bi、Bintra分别表示以前向预测模式、后向预测模式、双向预测模式、B-intra预测模式滤波。
参照图4,因为代价函数Cf是代价函数Cb、Cf、Cbi、和Ci中的最小值,所以块MB0使用前向预测模式被滤波。因为代价函数Ci是最小值,所以块MB15使用B-intra预测模式被滤波。
返回到图2,运动估计模块130使用由时间滤波模块120确定的参考帧被时间滤波模块120调用以对当前帧执行运动估计功能,并确定运动矢量。块匹配算法通常用于运动估计。在块匹配算法中,当前块中的像素与参考帧中的搜索区域的像素相比较,以获得具有最小误差的最佳匹配块,并且从参考帧中的最佳匹配块相对于当前块的位移被确定为运动矢量。尽管固定大小的块匹配用于如图4所示的运动估计,但是分级的可变大小的块匹配(HVSBM)可被使用。运动估计模块130向比特流产生模块170提供包括根据运动估计的结果而获得的块大小、运动矢量、参考帧的标号的运动信息。
空间变换模块150使用支持空间可伸缩性的空间变换,以从时间冗余已经被时间滤波模块120去除的帧中去除空间冗余。小波变换通常用于空间变换。由空间变换得到的系数被称作变换系数。
更详细地讲,空间变换模块150使用小波变换以将时间冗余已经被去除的帧分解为低通和高通子带,并为低通和高通子带产生小波系数。
图5示出通过小波变换将输入的图像或帧分解为两个级别的子带的例子。参照图5,在级别1,小波变换被执行以将输入的图像或帧分解为一个低通子带和三个水平、垂直和对角高通子带。在水平和垂直方向都为低频的低通子带被称为“LL”,而在水平、垂直和既在水平又在垂直的方向上的高通子带被分别称为“LH”、“HL”、“HH”。低通子带能进一步被反复地分解。括号中的数字表示小波变换的级别。
量化模块160量化由空间变换模块150产生的变换系数。量化是通过由预定数量的块划分变换系数将由任意实数代表的变换系数转换为离散值并且将这些离散值与预定的索引相匹配的处理。具体地讲,当小波变换用于空间变换时,嵌入的量化能经常被使用。这样的嵌入的量化算法的实例可包括嵌入式零树小波(EZW)、多级树集合分裂(SPIHT)、嵌入式零块编码(EZBC)。
比特流产生模块170无损地将来自基本层产生模块110的编码的基本层数据、被量化模块量化的变换系数、和由运动估计模块130产生的运动估计信息编码为输出比特流。对于无损编码,各种技术例如算术编码和可变长编码可被使用。
图6是根据本发明示例性实施例的预解码器200的示图。预解码器200也被称为代码转换器或提取器。类似地,通过根据提取条件例如品质、分辨率或帧速率提取从编码器(图2的100)接收的比特流的一部分改变品质、分辨率或帧速率,即实现品质、分辨率或帧速率方面的可伸缩性,被称为预解码、代码转换或提取。
参照图6,预解码器200包括比特流接收模块210、模式确定模块220、比特流提取模块230和比特流发送模块240。
比特流接收模块210经由任何类型的网络接收由编码器100产生的比特流。
图7表示从编码器100接收的比特流400的结构。参照图7,比特流400包括通过无损地对编码的基本层编码得到的基本层比特流450和通过无损地对从量化模块(图2的160)发送的变换系数编码得到的时间和空间可伸缩比特流500。
图8示意性地表示可伸缩比特流500的结构。参照图8,可伸缩比特流500由序列头字段510和包含至少一个GOP字段530到550的数据字段520组成。序列头字段510指定了图像属性,例如帧宽度(2字节)和高度(2字节)、GOP大小(1字节)、帧速率(1字节)。数据字段520指定了表示图像和重构图像所需的其他信息(运动信息)的图像数据。
图9表示每个GOP字段550的详细的结构。参照图9,GOP字段550由GOP头551、指定关于没有参照另一帧而被时间编码的帧的信息的T(0)字段552、指定运动信息和模式信息的运动信息MV字段553和指定关于参考另一帧被编码的帧的信息的“其他T”字段554组成。运动信息包括块的大小、与块相关联的运动矢量和表示被用来计算运动矢量的参考帧的标号。参考帧的标号可是一个表示时间上相关的帧之一的标号或者是当差分编码被使用时表示基本层帧的标号(不被用来表示其他帧的标号)。这样,对于由差分编码创建的块,有参考帧但是没有运动矢量。
MV字段553由与帧相应的MV(1)到MV(n-1)字段组成。其他T字段554包括对帧指定图像的数据的T(1)字段到T(n-1)字段。这里,n表示GOP的大小。虽然参考图9描述了GOP以一个低通帧开始,但是两个或多个低通帧根据在解码器(图2的100)中选择的时间估计模式可存在或可位于不同的位置而不是GOP的开始。
再参照图6,模式确定模块220确定在发送的比特流400中提取可伸缩比特流500的一部分期间将被跳过的帧。帧跳过技术被定义为“增强的跳过模式”。增强的跳过模式的基本的思想是编码器使用时间预测或使用基本层预测对视频信号编码。
预解码器200以低目标比特率跳过所有的与相应于基本层帧相关联的纹理信息和运动信息。纹理信息是由时间残余编码或差分编码产生的帧。运动信息包括运动矢量、参考帧标号和块的大小。
增强的跳过模式被分成三种模式在目标比特率是足够的模式1中,所有的帧没有被跳过而被发送。在目标比特率低于阈值的模式3中,所有的具有相应的基本层的帧被跳过。在以中间比特率操作的模式2中,高通帧从具有相应的基本层的帧中被跳过,而包含实质信息的低通帧不被跳过。
根据各种标准,这种增强的跳过模式可被分为这三种模式。例如,这种增强的跳过模式可根据基于关于连接到解码器的网络的传输条件的信息确定的传输比特率,即,目标比特率,而被分类。
图10是用于解释根据目标比特率确定模式的处理的示图。参照图10,第一阈值θ1和第二阈值θ2为目标比特率而设置。当比特率被确定为超过基于对解码器的传输条件的第一阈值θ1时,模式1被应用。当目标比特率小于第二阈值θ2时,模式3被应用。当目标比特率在第一阈值θ1和第二阈值θ2之间时,模式2被应用。
返回到图6,比特流提取模块230根据由模式确定模块220确定的增强的跳过模式和提取条件来提取比特流400中的可伸缩比特流500的一部分,并产生将被发送到解码器的比特流。这里,提取条件包括品质、分辨率或帧速率,并且可以基于用户输入或关于从比特流发送模块240获得的传输比特率信息被确定。
在本发明中,可伸缩比特流500的一部分根据确定的增强的跳过模式和提取条件被提取。也就是说,当增强的跳过模式被应用以跳过一些帧时,剩余的帧根据提取条件被提取。因而,由被跳过的帧保留的位被分配给剩余的帧,由此改进编码性能。
图11显示了比特流提取模块230的操作的实例。这里,F0、F1、......、和F8表示顺序编号的帧,B表示基本层。F0和F8是使用基本层B经历差分编码的低通帧。
当模式1被模式确定模块220确定时,比特流提取模块230不考虑基本层而将原始纹理信息或纹理信息和运动信息发送到比特流发送模块240。当模式3被确定时,和具有相应的基本层B0、B4和B8的帧F0、F4和F8相关联的纹理信息或纹理信息和运动信息都被跳过并且不被发送到比特流发送模块240。可以使用关于与基本层相关联的帧标号和帧速率的有关信息来检查帧是否具有相应的基本层。该信息可被记录在基本层比特流450的一部分中。
当模式2被模式确定模块220确定时,比特流提取模块230跳过与在帧F0、F4和F8中的高通帧F4相关联的纹理信息和运动信息,同时将与低通帧F0和F8相关联的纹理信息发送到比特流发送模块240。这里,尽管上面描述具有相应的基本层的一个低通帧和一个高通帧存在于一个GOP内,但对本领域普通的技术人员很明显的是,不同数量的低通帧和高通帧可取决于在编码器(图2的100)中产生基本层的方法而存在于不同的位置。
图12显示了比特流提取模块230的操作的另一实例,考虑到增强的跳过模式和提取条件,仅示出了只有从原始可伸缩比特流500中提取的时间级别2的帧。可以以降低的分辨率和图像品质提取特定时间级别的帧或所有帧。
在一些帧被跳过的模式2和模式3中,为了增加用于帧的帧速率、分辨率或品质,由跳过的帧保留的位能被分配到其他帧。
图13表示GOP字段550在根据图11表示的由比特流提取模块230执行的提取处理被修改之前的结构。尽管在模式1中没有帧被跳过(根据帧速率一些帧可被跳过),但是在模式3中,与帧F0相关联的纹理信息T(0)和运动信息MV(4)以及与帧F4相关联的纹理信息T(4)被跳过。帧F8在图13中没有显示,是因为图13只显示在一个GOP中的帧。指定在阴影信息根据模式3被省略后所剩余的信息的修改的GOP字段650的结构在图14中被显示。
同时,在只有关于在具有相应的基本层的帧中的高通帧的信息被跳过的模式2中,运动信息MV(4)和与帧F4相关联的纹理信息T(4)被省略。指定在关于高通帧的信息被省略后剩余的信息的修改的GOP字段550的结构在图15中被表示。
如上所述,比特流提取模块230根据模式信息对每个GOP跳过一些帧以便修改可伸缩比特流500,提取新比特流,并将该比特流发送到比特流发送模块240。比特流发送模块240将通过比特流提取模块230提取的比特流经由有线/无线网络发送到解码器。
图16是根据本发明的示例性实施例的可伸缩视频解码器300的示图。可伸缩的视频解码器300包括比特流解释模块310、逆量化模块320、逆空间变换模块330、逆时间滤波模块340、上采样模块350和基本层解码器360。
参照图16,比特流解释模块310通过解释输入的比特流并从其他层中单独提取关于基本层的信息来执行熵编码的逆操作。关于基本层的信息被提供给基本层解码器360。关于其他层的信息中的纹理信息被发送到反量子变换模块320,同时运动信息和增强的跳过模式信息被发送到逆时间滤波模块340。
基本层解码器360使用预定的编码解码器对关于从比特流解释模块310接收到的基本层的信息解码。该预定的编码解码器是对应于用于编码的编码解码器,例如以低比特率提供极好的性能的H.264或MPEG-4编码解码器。
上采样模块350将由基本层解码器360重构的基本层帧上采样至与将经历逆时间滤波的帧相等的分辨率。上采样操作可以各种方法被执行。上采样模块350可执行在编码器(图2的100)中被执行的分辨率下采样的逆操作。例如,如果降低采样在编码器100中使用小波变换被执行,那么上采样则使用逆小波变换被执行。由于不是实质的部件,所以当基本层的分辨率等于将经历逆时间滤波的帧的分辨率时,上采样模块350可不操作。
逆量化模块320将逆量化应用于从比特流解释模块310接收的纹理信息并输出变换系数。逆量化是从匹配从编码器100接收的量化索引得到量化的系数的处理。索引与量化的系数之间的映射表可从编码器100被接收,或在编码器100和解码器300之间被预先确定。
逆空间变换模块330执行逆空间变换以将变换系数逆变换为空间域中的变换系数。例如,对小波变换,变换系数从小波域被逆变换到空间域。
逆时间滤波模块340使用从比特流解释模块310接收的运动信息和增强的跳过信息以及从基本层解码器360接收的基本层,对空间域的变换系数,即残余帧,执行逆时间滤波,并重构构成视频序列的帧。
逆时间滤波模块340在用相应于被跳过的帧的基本层代替被跳过的帧之后根据增强的跳过模式对被跳过的帧执行逆时间滤波。
图17表示根据如图14所示的模式3被预解码器200跳过的一些帧之后剩余的GOP中的帧的运动信息和纹理信息。也就是说,帧F0和F4被跳过并且不存在于GOP中。因而,在执行逆时间滤波之前,被跳过的帧应该被重构。
图18是解释使用基本层重构如图17中所示的被跳过的帧的处理的示图。
被基本层解码器360重构的基本层可直接被输出为具有最低帧速率和分辨率的视频序列。重构的基本层也被发送到逆时间滤波模块340以重构除基本层之外的帧。
参照图18,被跳过的帧F0、F4和F8使用由基本层解码器360重构的基本层B0、B4和B8。基本层B0、B4和B8的位置(0、4和8)使用与包含在基本层比特流450中的基本层相关联的帧标号或帧速率能被识别。当重构的基本层具有与将经历逆时间滤波的相关的帧不同的分辨率时,基本层被上采样模块350上采样并被插入到帧的位置。使用基本层帧B0、B4和B8重构的帧F0、F4和F8不是残余帧而是完全的低通帧。因而,与在编码器(图2的100)中被执行的时间滤波中的相同,剩余的高通帧F1、F2、F3、F5、F6、和F7将使用用基本层重构的低通帧F0、F4和F8和作为参考的其他预先重构的帧被逆时间滤波。所有重构的帧组成一个视频序列。
这里,逆时间滤波是与在编码器100中执行的时间滤波相逆的操作。当差分编码用于时间滤波时,逆时间滤波通过计算残余帧和相应的基本层的和被执行。另一方面,当时间残余编码用于时间滤波时,逆时间滤波通过计算残余帧和使用参考帧标号以及运动矢量获得的预测的帧之和被执行。
以上已经参照图17和图18描述了根据模式3使用基本层重构被跳过的帧。当模式2被应用以跳过高通帧时,跳过的高通帧可使用基本层被重构。对没有帧被跳过的模式1,逆时间滤波模块340不需要使用基本层。
如在此使用的,术语“模块”指的是,但并不限于,执行特定任务的软件或硬件成分,例如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。模块可方便地被配置以驻留在可寻址存储介质上和被配置以在一个或多个处理器上执行。因而,模块可包括举例来说,组件,例如软件组件、面向对象的软件组件、类组件和任务组件、进程、函数、属性、过程、子例程、程序代码的片断、驱动程序、固件、微码、电路、数据、数据库、数据结构、表、数组和变量。在成分和模块中设置的功能性可被组合成更少的成分和模块,或者进一步分为另外的成分和模块。另外,成分和模块可被实现以便他们在通信系统中运行一个或更多的计算机。
图19是移动序列的PSNR对比特率的图形。如在图19中那样明显,根据本发明的编码方法在高比特率展现与传统的可伸缩视频编码(SVC)相似的性能,但是在低比特率展现了比其高得多的性能。当α=1(时间残余编码或差分编码被使用)时的编码性能在高比特率稍高于但在低比特率稍低于当α=0(只有差分编码被使用)时的性能。但是,在最低比特率(48Kbps)前者与后者相等。
当α=0和增强的跳过模式3被使用时,编码性能与在低比特率当α=0时的编码性能和在高比特率当α=1时的编码性能相似。也就是说,增强的跳过模式另外被使用以既在低比特率又在高比特率得到极好的性能。
根据本发明示例性实施例的可伸缩视频编码既在低比特率又在高比特率提供了高的性能。
另外,根据本发明示例性实施例,重构的视频序列的品质在预解码和将位分配给其他帧期间可通过跳过一些帧的位被改进。
尽管本发明的某些特定示例性实施例已经被详细地描述,但是对本领域的技术人员明显的是,上述的示例性实施例仅作为说明的目的而被提供,并不被解释为本发明的限制。因此,本发明的范围由所附的权利要求给定,而非前面的描述,并且落入权利要求范围内的所有的改变和等同物被确定为包含在其中。
权利要求
1.一种用于对包含至少一个基本层的比特流预解码的方法,所述方法包括在位于该至少一个基本层存在的位置上的帧中根据预定的标准确定至少一个将被跳过的帧;和根据该确定的至少一帧和至少一个提取条件来提取比特流的一部分。
2.如权利要求1所述的方法,其中,预定的标准是基于连接到解码器的网络的传输条件确定的可传输比特率。
3.如权利要求2所述的方法,其中,确定至少一个将被跳过的帧的步骤包括如果比特率低于第一阈值,则确定所有位于该至少一个基本层的位置的帧被跳过。
4.如权利要求2所述的方法,其中,确定至少一个将被跳过的帧的步骤包括如果比特率在第一和第二阈值之间,则确定在位于该至少一个基本层的位置的帧中至少一个高通帧被跳过。
5.一种用于对包含至少一个基本层和至少一个跳过的帧的比特流解码的方法,该方法包括通过将预定的编码解码器应用于关于比特流中的该至少一个基本层的信息来重构该至少一个基本层;通过使用除比特流中的该至少一个基本层之外的信息跳过至少一帧来产生至少一个残余帧;将该至少一个基本层插入到该至少一个跳过的帧的至少一个各自位置;和对插入的该至少一个基本层和该至少一个残余帧执行逆时间滤波并重构视频序列。
6.如权利要求5所述的方法,其中,产生至少一个残余帧的步骤包括对比特流中除该至少一个基本层之外的纹理信息执行逆量化并输出至少一个第一变换系数;和将该至少一个第一变换系数逆变换为空间域中的至少一个第二变换系数。
7.如权利要求5所述的方法,其中,该至少一个基本层在被上采样到相应于残余帧的分辨率后被插入。
8.如权利要求5所述的方法,其中,通过当差分编码用于产生相应的残余帧时计算该至少一个基本层和相应的残余帧的第一和,并且通过当时间预测编码用于产生相应的残余帧时计算相应的残余帧和使用参考帧标号以及运动矢量获得的预测帧的第二和,来执行逆时间滤波。
9.如权利要求5所述的方法,其中,预定的编码解码器是H.264(先进的视频编码)编码解码器。
10.如权利要求7所述的方法,其中,使用逆小波变换来执行上采样。
11.一种用于提取包含至少一个基本层的比特流的一部分的预解码器,该预解码器包括模式选择模块,用于在位于该至少一个基本层存在位置上的帧中根据预定的标准确定至少一个将被跳过的帧;和比特流提取模块,被配置为根据选择的模式和至少一个提取条件来提取比特流的一部分。
12.如权利要求11所述的预解码器,其中,预定的标准是基于连接到解码器的网络的传输条件确定的可传输比特率。
13.如权利要求12所述的预解码器,其中,如果比特率低于第一阈值,则模式选择模块确定跳过位于该至少一个基本层的至少一个各自位置的所有帧。
14.如权利要求12所述的预解码器,其中,如果比特率在第一和第二阈值之间,模式选择模块确定在位于该至少一个基本层的至少一个各自位置的帧中跳过至少一个高通帧。
15.一种用于对包含至少一个基本层和至少一个先前跳过的帧的比特流解码的视频解码器,该视频解码器包括基本层解码器,用于通过将预定的编码解码器应用于关于比特流中的该至少一个基本层的信息来重构该至少一个基本层;逆空间变换模块,通过使用除比特流中的该至少一个基本层之外的信息跳过至少一帧来产生至少一个残余帧;和逆时间滤波模块,用于将该至少一个基本层插入到该至少一个跳过的帧的各自的位置,并且为了重构视频序列对插入的基本层和至少一个残余帧执行逆时间滤波。
16.如权利要求15所述的视频解码器,其中,该至少一个基本层在被上采样到至少一个残余帧的分辨率后被插入。
17.如权利要求15所述的视频解码器,其中,逆时间滤波模块当差分编码用于产生该至少一个残余帧时,计算该至少一个基本层和该至少一个残余帧的和并且当时间的预测的编码用于产生该至少一个残余帧时,计算该至少一个残余帧和使用参考帧标号以及运动矢量获得的预测帧的和。
18.一种在其中记录有计算机可读程序的记录介质,该程序用于执行对包含至少一个基本层的比特流预解码的方法,所述方法包括从位于该至少一个基本层存在的位置上的帧中根据预定的标准确定至少一个将被跳过的帧;和根据该确定的至少一帧和至少一个提取条件来提取比特流的一部分。
全文摘要
提供了一种用于通过在预解码器以基本层代替特定帧来对给定的比特率提取较高品质的视频流的方法和设备。被预解码器执行的预解码的方法包括通过在位于基本层存在的位置上的帧中根据预定的标准确定将被跳过的帧来选择模式,并根据选择的模式和提取条件来提取比特流的一部分。
文档编号H04N7/24GK1722831SQ200510083190
公开日2006年1月18日 申请日期2005年7月13日 优先权日2004年7月15日
发明者韩宇镇 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1