专利名称:使用基础层的可伸缩性视频编码方法和设备的制作方法
技术领域:
根据本发明的设备和方法涉及视频压缩,更具体地讲,涉及通过使用基础层在可伸缩性视频编解码器中更有效地进行时间滤波。
背景技术:
如互联网的通信技术的发展已经引起除文本和语音通信之外的视频通信的增加。然而,消费者已经不满足现存的基于文本的通信方案。为了满足各种消费者的需求,包含包括文本、图像、音乐等的各种信息的多媒体数据已经被越来越多地被提供。多媒体数据通常容量很大,其需要大容量的存储介质。另外,传输多媒体数据需要宽带宽。例如,具有640×480分辨率的24比特真彩色的画面需要每帧640×480×24比特,即7.37兆比特。在这方面,需要大约1200吉比特的带宽以30帧/秒来传输此数据,需要大约1200吉比特的存储空间来存储90分钟的电影。考虑此,当传输多媒体数据时必须使用压缩编码方案。
数据压缩的基本原理在于去除数据中的冗余。三种类型的数据冗余是空间冗余、时间冗余和知觉视觉冗余。空间冗余是指图像中相同颜色或物体的重复,时间冗余是指运动画面中相邻帧之间很少或没有变化或者音频中相同声音的连续重复,知觉视觉冗余是指人类视觉的限制和不能听到高频。通过消除这些冗余,数据可被压缩。数据压缩类型根据源数据是否丢失被分为有损/无损压缩,根据数据是否相对每一帧被独立地压缩被分为帧内/帧间压缩,根据数据的压缩和恢复是否涉及相同的时间周期被分为对称/非对称压缩。另外,当压缩和解压缩中总的端到端延时不超过50ms时,这被称为实时压缩。当帧具有多种分辨率时,这被称为可伸缩性压缩。无损压缩被主要用于压缩文本数据或医学数据中,有损压缩被主要用于压缩多媒体数据。帧内压缩通常被用于消除空间冗余,帧间压缩被用于消除时间冗余。
传输多媒体数据的传输媒介具有不同的能力。当前使用的传输媒介具有多种传输速度,覆盖能够以每秒几十兆位的速率传输数据的超高速通信网络,具有每秒384千比特的传输速度的移动通信网络等。在如MPEG-1、MPEG-2、MPEG-4、H.263和H.264的传统的视频编码算法中,时间冗余通过运动补偿来消除,空间冗余通过空间变化来消除。这些方案在压缩方面具有很好的性能,但是由于这些方案的主要算法采用递归方法,所以它们对于实际可伸缩的比特流具有很小的灵活性。
为此,近来研究已经聚焦在基于小波的可伸缩性视频编码上。可伸缩性视频编码是指在空域中,即根据分辨率具有可伸缩性的视频编码。可伸缩性具有使压缩的比特流被部分地解码的特性,从而,具有各种分辨率的视频可被播放。
这里的术语“可伸缩性”被用于共同地指可用于控制视频的分辨率的特定可伸缩性、可用于控制视频的质量的信噪比(SNR)可伸缩性以及可用于控制视频的帧率的时间可伸缩性,及其组合。
如上所述,空间可伸缩性可基于小波变换来实现,SNR可伸缩性可基于量化来实现。近来,已经使用运动补偿时间滤波(MCTF)以及无约束运动补偿时间滤波(UMCTF)来实现时间可伸缩性。
图1和2示出使用传统MCTF滤波器的时间可伸缩性的示例性实施例。具体地讲,图1示出编码器中的时间滤波,图2示出解码器中的逆时间滤波。
在图1中,L帧表示低通或平均帧,H帧表示高通或差帧。如图所示,在编码处理中,低时间级上的帧对首先被时间滤波,从而将该帧变换为高于当前时间级的时间级上的L帧和H帧,变换的L帧被再次时间滤波并被变换为高于当前时间级的时间级上的帧。这里,通过参照在不同位置的作为参考帧的L帧或原始视频帧执行运动估计,随后执行时间滤波来产生H帧。图1借助箭头表示H帧参照的参考帧。如图所示,H帧可被双向参照,或向后或向前参照。
其结果是,编码器通过使用最高级上的L帧并保留已经通过空间变换的H帧来产生比特流。图2中深色的帧表示它们已经经过空间变换。
解码器通过输入以最高级到最低级的顺序通过逆空间变换从接收的比特流(图3中显示的20或25)获得的深色的帧的操作来恢复帧。通过使用第三时间级上的L帧和H帧来恢复第二时间级上的两个L帧,通过使用第二时间级上的两个L帧和两个H帧来恢复第一时间级上的四个L帧。最终,通过使用第一时间级上的四个L帧和四个H帧来恢复八个帧。
图3中示出支持可伸缩性的视频编码系统,即可伸缩性视频编码系统的整个结构。编码器40通过时间滤波、空间变换和量化对输入视频10编码,从而产生比特流20。预解码器50基于考虑具有解码器60的通信环境或解码器60方的装置性能的如画面质量、分辨率或帧率的提取条件来提取从编码器40接收的比特流20的纹理数据(texture data)。
解码器60对编码器40进行的操作进行逆操作,并从提取的比特流25恢复输出视频30。基于上述的提取条件的比特流的提取不限于预解码器50;其可由解码器60来处理,或者由预解码器50和解码器60两者来处理。
上述的可伸缩性视频编码技术基于MPEG-21可伸缩性视频编码。此编码技术采用如支持时间可伸缩性的MCTF和UMCTF的时间滤波,以及使用支持空间可伸缩性的小波变换的空间变换。
可伸缩性视频编码的优点在于质量、分辨率和帧率都可在预解码器50方被传输,并且压缩率极好。然而,在比特率不足的情况下,与如MPEG-4、H.264等的传统编码方法相比,性能可能降低。
对于此存在混杂的原因。在低分辨率下,与离散余弦变换(DCT)相比,小波变换的性能降低。由于支持多比特率的可伸缩性视频编码的固有特征,在一比特率下发生最佳性能,由于这个原因,在其他比特率下性能降低。
发明内容
本发明提供一种在较低率和较高率下都表现平稳性能的可伸缩性视频编码方法。
本发明还提供一种基于在将被支持的比特率之中在低率、最低比特率下显示好的性能的编码方法执行压缩,并且使用其他比特率下的结果执行基于小波的可伸缩性视频编码的方法。
本发明还提供一种在基于小波的可伸缩性视频编码时使用在最低比特率下编码的结果来执行运动估计的方法。
根据本发明的一方面,提供一种在基于多层的视频编码方法中通过使用基础层来有效的压缩在更高层上的帧的方法,包括(a)从输入原始视频序列产生基础层帧,该基础层具有与第一更高层帧相同的时间位置;(b)对基础层上采样以具有更高层帧的分辨率;和(c)通过参考具有与第一更高层帧不同时间位置的第二更高层帧以及上采样的基础层帧以块为基础来去除第一更高层帧的冗余。
根据本发明的另一方面,提供一种视频编码方法,包括(a)从输入原始视频序列产生基础层;(b)上采样该基础层以具有当前帧的分辨率;(c)通过选择时间预测和使用上采样的基础层的预测中的任何一个来执行构成当前帧的每一块的时间滤波;(d)空间变换通过时间滤波产生的帧;和(e)量化通过空间变换产生的变换系数。
根据本发明的另一方面,提供一种用视频解码器恢复时间滤波的帧的方法,包括(a)获得低通帧和基础层的和,其中,滤波的帧是低通帧;(b)根据从编码器方传输的模式信息以块为基础恢复高通帧,其中,滤波的帧是高通帧。和(c)通过使用时间参考帧来恢复滤波的帧,其中,滤波的帧具有与最高时间级不同的另一时间级。
根据本发明的另一方面,提供一种视频解码方法,包括(a)使用预定编解码器对输入基础层解码;(b)上采样解码的基础层的分辨率;(c)逆量化除基础层之外的层的纹理信息,并且输出变换系数;(d)将变换系数逆变换为空域中的变换系数;和(e)使用上采样的基础层从作为逆变换的结果产生的帧恢复原始帧。
根据本发明的另一方面,提供一种视频编码器,包括(a)基础层产生模块,从输入原始视频源产生基础层;(b)空间上采样模块,将基础层上采样为当前帧的分辨率;(c)时间滤波模块,使用时间估计和上采样的基础层的估计中的任何一个,并且对当前帧的每一块时间滤波;(d)空间变换模块,空间变换通过时间滤波产生的帧;和(e)量化模块,量化通过空间变换产生的变换系数。
根据本发明的另一方面,提供一种视频解码器,包括(a)基础层解码器,使用预定编解码器对输入基础层解码;(b)空间上采样模块,上采样解码的基础层的分辨率;(c)逆量化模块,逆量化关于除基础层之外的层的纹理信息,并且输出变换系数;(d)逆空间变换模块,将变换系数逆变换为空域中的变换系数;和(e)逆时间滤波模块,通过使用上采样的基础层,从作为逆变换的结果产生的帧恢复原始帧。
通过结合附图其示例性实施例进行的详细描述,本发明的以上和其他方面将会变得更加清楚,其中图1示出编码器方的传统MCTF滤波;图2示出在解码器方传统逆MCTF滤波;图3示出传统可伸缩性视频编码系统的整个结构;图4示出根据本发明示例性实施例的可伸缩性视频编码器的结构;图5示出根据本发明示例性实施例的时间滤波;图6示出根据本发明实施例的模式;图7示出根据成本函数由每一块以不同模式编码最高时间级上出现的高通帧的例子;图8示出通过小波变换输入图像被分解为子带的例子;图9示出根据本发明示例性实施例的比特流示意性结构;图10示出其他层上的比特流的示意性结构;图11示出GOP字段的详细结构;图12示出根据本发明示例性实施例的编码器以带内模式来实现的例子;图13示出根据本发明示例性实施例的可伸缩性视频解码器的结构;和图14是表示移动序列中PSNR对比特率的曲线图。
具体实施例方式
以下将参照附图来详细描述本发明的示例性实施例。通过参照以下将被详细描述的示例性实施例的详细描述以及附图可更容易地理解本发明的优点和特征以及实现其的方法。然而,本发明可以以许多不同形式来实现,并且不应被解释为限于于此阐述的示例性实施例。相反,提供这些示例性实施例,以使此公开将是彻底并且完整的,并且将向本领域的技术人员全面地传达本发明的概念,本发明将仅由所附权利要求限定。说明书中相同的标号始终表示相同的部件。
在本发明的示例性实施例中,根据在低比特率下具有高性能的编码方法,如MPEG-4或H.264来执行基础层的压缩。通过应用基于小波的可伸缩性视频编码以支持高于基础层的比特率下的可伸缩性,基于小波的可伸缩性视频编码的优点被保留,并且低比特率下的性能被改善。
这里,术语“基础层”是指低于由可伸缩性视频编码器产生的比特流的最高帧率的帧率或者具有低于比特流的最高分辨率的分辨率的视频序列。基础层可具有除最高帧率和分辨率之外的任何帧率以及分辨率。尽管基础层不是必须具有低帧率和分辨率的比特流,但是根据本发明实施例的基础层将通过具有最低帧率和分辨率的例子来描述。
在此说明书中,最低帧率和分辨率,或最高分辨率(将被稍后描述)都基于比特流确定,这与由可伸缩性视频编码器固有支持的最低帧率和分辨率或最高分辨率不同。在图4中示出根据本发明示例性实施例的视频可伸缩性编码器100。可伸缩性视频编码器100可包括基础层产生模块110、时间滤波模块120、运动估计模块130、模式选择模块140、空间变换模块150、量化模块160、比特流产生模块170和空间上采样模块180。基础层产生模块110可包括时间下采样模块111、空间下采样模块112、基础层编码器113和基础层解码器114。时间下采样模块111和空间下采样模块112可被并入单一下采样模块115。
输入视频序列被输入到基础层产生模块110和时间滤波模块120。基础层产生模块110将输入视频序列,即具有最高分辨率和帧率的原始视频序列变换为具有由时间滤波支持的最低帧率以及由时间变换支持的最低分辨率的视频序列。
然后,该视频序列被在低比特率下产生极好质量的编解码器压缩,随后被恢复。该恢复的图像被定义为“基础层”。通过上采样此基础层,具有最高分辨率的帧被再次产生并被提供到时间滤波模块120,从而其可被用作B内估计(B-intra estimation)中的参考帧。
现在将更加详细地描述组成基础层产生模块110的特定模块的操作。
时间下采样模块111将具有最高帧率的原始视频序列下采样为具有由编码器100支持的最低帧率的视频序列。此时间下采样可通过传统方法,例如简单跳帧,或跳帧且同时部分地反射剩余帧上的跳过的帧的信息来执行。或者,支持时间分解的可伸缩性滤波方法,如MCTF可被使用。
空间下采样模块112将具有最高分辨率的原始视频序列下采样为具有最低分辨率的视频序列。此空间下采样也可通过传统方法来执行。这是将多个像素简化为单一像素,从而对该多个像素进行预定操作以产生单一像素的处理。可包括如平均、中值和DCT下采样的各种操作。可通过小波变换来提取具有最低分辨率的帧。在本发明的示例性实施例中,优选地视频序列通过小波变换被下采样。本发明的示例性实施例需要时域的下采样和上采样两者。与其他方法相比,小波变换在下采样和上采样中相对均衡,从而产生更好的质量。
基础层编码器113通过使用在低比特率下产生极好质量的编解码器来对具有最低时间和空间分辨率的视频序列编码。这里,术语“极好质量”是指当视频序列以相同比特率被压缩随后被恢复时其比原始有很少失真,峰值信噪比(PSNR)被主要用于确定质量的标准。
非小波家族,如H.264或MPEG-4的编解码器的使用可能是优选的。由基础层编码器113编码的基础层被提供到比特流产生模块170。
基础层解码器114通过使用与基础层编码器113相应的编解码器来对编码的基础层解码并且恢复该基础层。在编码处理之后再次执行解码处理的原因在于通过使解码处理与从参考帧恢复原始视频的处理一致来恢复更准确的图像。然而,基础层解码器114不是必需的。由基础层编码器113产生的基础层可按原样被提供到空间上采样模块180。
空间上采样模块180对具有最低帧率的帧上采样,从而产生最高分辨率。然而,由于小波分解被空间下采样模块112使用,所以优选地使用基于小波的上采样滤波器。
时间滤波模块120将帧分解为沿时间轴的低通帧和高通帧以降低时间冗余。在本发明的示例性实施例中,时间滤波模块120不仅执行时间滤波而且执行通过B内模式(B-intra mode)的差分滤波。因此,“时间滤波”包括时间滤波和通过B内模式的滤波。
低通帧是指不参照任何其他帧编码的帧,高通帧是指由预测帧(通过预测估计)和参考帧之间的差产生的帧。各种方法可涉及确定参考帧。图片组(GOP)内部或外部的帧可被用作参考帧。然而,由于随着参考帧增加运动向量的比特数可增加,所以彼此相邻的两个帧都可被用作参考帧,或者只有它们中的一个可被用作参考帧。在这方面,将在假设最多两个相邻帧可被参考的情况下来描述本发明的示例性实施例,但本发明不受其限制。
运动估计模块130执行基于参考帧的运动估计,时间滤波模块120可控制运动估计模块130以执行运动估计并且每当需要时将结果返回给时间滤波模块120。
MCTF和UMCTF可被用于执行时间滤波。图5示出使用MCTF(5/3滤波器)的本发明示例性实施例的操作。GOP由八个帧组成,该八个帧可在GOP边界外被参照。首先,八个帧被分解为第一时间级的四个低通帧(L)和四个高通帧(H)。高通帧可通过参照左帧和右帧两者,或左帧和右帧中的任何一个来产生。其后,低通帧可使用左和右高通帧来再次更新其本身。此更新不使用低通帧作为原始帧,而是通过使用高通帧来更新该低通帧,从而用来分散集中在高通帧中的错误。然而,此更新不是必需的。以下,将省略更新,并且将描述原始帧变为低通帧的例子。
接下来,第一时间级上的四个低通帧被再次分解为第二时间级上的两个低通帧和两个高通帧。最后,第二时间级上的两个低通帧被分解为第三时间级上的一个低通帧和一个高通帧。其后,更高时间级上的一个低通帧和其他七个高通帧被编码并且随后被传输。
最高时间级上的帧,即具有最低帧率的帧使用与传统时间滤波方法不同的方法被滤波。因此,低通帧70和高通帧80通过由本发明提出的方法在当前GOP内在第三时间级上被滤波。
通过基础层产生模块110具有最高分辨率的上采样后的基础层已经处于最低帧率。其被供应与低通帧70和高通帧80的各自数目一样多。
在时间方向上低通帧70不具有参考帧,因此,其通过获得低通帧70和上采样的基础层B1之间的差在B内模式下被编码。由于在时间方向上高通帧80可参考左和右低通帧两者,所以以块为基础根据预定模式选择由模式选择模块140来确定是时间相关帧还是基础层将被用作参考帧。然后,其根据由时间滤波模块120以块为基础确定的方法被编码。将参照图6来描述模式选择模块140的模式选择。在此说明书中,“块”可以是指宏块或从宏块划分的子块。
在先前例子中,最高时间级为3,并且GOP具有八个帧。然而,本发明的示例性实施例可具有任何数量的时间级以及任何GOP大小。例如,当GOP具有八个帧并且最高时间级为2时,在第二时间级出现的四个帧中,两个L帧执行差分编码,两个H帧根据模式选择执行编码。另外,已经描述仅参照左和右相邻帧中的一个(如图5所示)来确定时间方向上的参考帧。然而,对于本领域的技术人员是明显的,本发明的示例性实施例可被应用到不相邻的左和右帧可被参照多个的情况。
模式选择模块140在最高时间级模式选择下通过使用关于高通帧的预定成本函数以块为基础在时间相关帧和基础层之间选择参考帧。图4示出作为单独部件的模式选择模块140和时间滤波模块120,但是模式选择模块140可被并入时间滤波模块120。
率-失真(R-D)优化可被用于模式选择中。将参照图6对此方法进行更具体地描述。
图6示出四种示例性模式。在前向估计(forward estimation)模式(1)下,搜索最匹配先前帧(不是指紧接的先前帧)的部分的当前帧中的特定块,并且获得用于在两个位置之间位移的运动向量,从而获得时间残差(residual)。
在后向估计模式(2)中,搜索最匹配下一帧(不是指紧接在后面的帧)的部分的当前帧中的特定块,并且获得用于在两个位置之间位移的运动向量,从而获得时间残差。
在双向估计模式(3)中,平均在前向估计模式(1)和后向估计模式(2)中搜索的两个块,或者用权来平均以创建虚拟块,计算虚拟块和当前帧中的特定块之间的差,从而执行时间滤波。因此,双向估计模式需要每一块的两个运动向量。这些前向、后向和双向估计都在时间估计的种类中。模式选择模块140使用模式估计模块130以获得运动向量。
在B内模式(4)中,由空间上采样模块180上采样的基础层被用作参考帧,来自当前帧的差被计算。在这种情况下,基础层是与当前帧在时间上相同的帧,因此,不需要运动估计。在本发明中,术语“差”被使用在B内模式中以与在时间方向上帧之间的术语“残差”区分。
在图6中,在选择后向估计模式中引起的误差(平均绝对差或MAD)被称为“Eb”,在选择前向估计模式中引起的误差被称为“Ef”,在选择双向估计模式中引起的误差被称为“Ebi”,在使用基础层作为参考层中引起的误差被称为Ei,每个消耗的附加比特被分别称为Bb、Bf、Bbi和Bi。与此结合,以下每个成本函数被定义,其中,Bb、Bf、Bbi和Bi是指在压缩包括每一方向上的运动向量和运动帧的运动信息中消耗的比特。然而,由于B内模式不使用运动向量,则Bi非常小并且可被删除。
后向成本Cb=Eb+λ×Bb前向成本Cf=Ef+λ×Bf双向成本Cbi=Ebi+λ×Bbi=Ebi+λ×(Bb+Bf)B内成本Ci=α(Ei+λ×Bi)α×Ei,其中,λ是拉格朗日系数,根据压缩率确定的常数。模式选择模块140使用这些函数来选择具有最低成本的模式,从而使得在最高时间级上用于高通帧的最合适的模式被选择。
不像其他的成本,另一常数α被加到B内成本中。α是表示B内模式的权的常数。如果α为1,则B内模式通过与其它成本函数比较被同等地选择。随着α增大,B内模式被选择的频率减少,而随着α减小,B内模式被选择的频率增加。作为极端的例子,如果α为0,则仅B内模式被选择;如果α太高,则不选择B内模式。用户可通过控制α值来控制B内模式选择的频率。
图7示出在最高时间级上出现的高通帧根据成本函数以块为基础在不同模式下被编码的例子。这里,一帧由16块组成,“MB”代表每一块。F、B、Bi和Bintra表示分别在前向估计模式、后向估计模式、双向估计模式和B内估计模式中进行滤波。
在图7中,由于Cf是Cb、Cf、Cbi和Ci中的最小值,所以块MB0在前向估计模式下被滤波,由于Ci是最小值,所以块MB15在B内模式下被滤波。最后,模式选择模块140将关于通过以上处理选择的模式的信息提供给比特流产生模块170。
参照图4,运动估计模块130被时间滤波模块120或模式选择模块140调用,并且执行基于由时间滤波模块120确定的参考帧的当前帧的运动估计,从而获得运动向量。即,当在参考帧的特定搜索区内以像素(或亚像素)精度移动给定块时误差达到最低值的位移被估计作为运动向量。对于运动估计,固定块可如图7中被使用,但是如等级可伸缩大小块匹配(HVSBM)的等级方法也可被使用。运动估计模块130将作为运动估计的结果的运动向量以及包括参考帧标号的运动信息提供给比特流产生模块170。
空间变换模块150通过使用如小波变换的支持空间可伸缩性的空间变换从已经由时间滤波模块120去除其时间冗余的帧中去除空间冗余。作为空间变换的结果获得的系数被称为变换系数。
为了详细描述使用小波变换的例子,空间变换模块150通过小波变换将其时间冗余已经被去除的帧分解为低通子带和高通子带,并且获得其每个的小波系数。
图8示出通过被分为两个级的小波变换将输入视频或帧分解为子带的例子。存在三个高通子带水平、垂直和对角。“LH”是指水平高通子带,“HL”是指垂直高通子带,“HH”是指水平和垂直高通子带。另外,“LL”是指水平和垂直低通子带。低通子带可被重复分解。括号中的标号表示小波变换的级。
量化模块160量化由空间变换模块150获得的变换系数。术语“量化”表示分离变换系数并从分离的变换系数中取整数部分,并将该整数部分与预定索引匹配。当小波变换被用作空间变换方法时,嵌入式量化包括嵌入式零树小波(EZW)算法、多级数集合分裂(SPIHT)算法和嵌入式零块编码(EZBC)算法。
比特流产生模块170对由基础层编码器113编码的基础层数据、由量化模块160量化的变换系数、由模式选择模块140供应的模式信息以及由运动估计模块130供应的运动信息进行无损编码,并且产生比特流。此无损编码包括算数编码和如可变长度编码的各种熵编码方法。
图9示出根据本发明示例性实施例的比特流300的示意性结构。比特流300可包括对编码的基础层无损编码的基础层比特流400,以及支持空间可伸缩性并对从量化模块160传输的变换系数无损编码的比特流,即其他层比特流500。
如图10所示,其他层比特流500包括序列头字段510和数据字段520;数据字段520包括一个或多个GOP字段530、540和550,序列头字段510记录如帧的宽度(两个字节)和长度(两个字节)、GOP的大小(一个字节)以及帧率(一个字节)的视频的特征。数据字段520记录视频数据和恢复视频所需的其他信息(如运动信息和模式信息)。
图11示出各个GOP字段530、540和550的详细结构。GOP字段530、540和550每个包括GOP头551;T(0)字段552,在其中记录根据B内模式记录的帧;MV字段553,在其中记录运动和模式信息;和“其他T”字段544,记录通过参考另一帧记录的帧的信息。运动信息包括块的大小、每一块的运动向量、以及被参考以获得运动向量的参考帧的标号。模式信息以索引的形式被记录,表示出现在最高时间级上的高通帧在前向、后向、双向估计以及B内模式中的哪个模式下被编码。在此示例性实施例中,已经描述了模式信息与运动向量一起被记录在MV字段553中,但是本发明不受限于其;其可被记录在单独的模式信息字段中。MV字段553按每帧被再分为MV(1)至MV(n-1)字段。其他T字段554被再分为T(1)至T(n-1),在其中记录每一帧的图像。这里,‘n’是指GOP的大小。
已经描述了在已经在编码器110中进行时间滤波之后进行空间滤波,但是在空间变换之后进行时间滤波的方法,即带内机制也可被使用。图12示出使用带内机制的根据本发明示例性实施例的编码器190的例子。由于在带内编码器190中仅进行时间滤波和空间滤波的顺序被改变,所以本领域的技术人员操作本发明没有困难。为了从通过带内机制编码的比特流中恢复原始图像,在带内机制中,解码器也必须在进行逆时间滤波之后进行逆空间变换。
图13示出根据本发明示例性实施例的可伸缩性视频解码器200的结构。可伸缩性视频解码器200包括比特流解释模块210、逆量化模块220、逆空间变换模块230、逆时间滤波模块240、空间上采样模块250和基础层解码器260。
比特流解释模块210解释输入比特流(如比特流300),划分并提取关于基础层和其他层的信息,即与熵编码相逆。基础层信息被提供到逆量化解码器260。其他层信息中,纹理信息被提供到逆量化模块220,运动和模式信息被提供到逆时间滤波模块240。
基础层解码器260使用与用于编码的编解码器相应的预定编解码器来对关于从比特流解释模块210提供的基础层的信息解码。即,基础层解码器260使用与图4的可伸缩性视频编码器100的基础层解码器114相同的模块。
空间上采样模块250将由基础层解码器260解码的基础层的帧上采样为最高分辨率。空间上采样模块250与图4的编码器100的空间下采样模块112相应,其对最低分辨率的帧上采样以具有最高分辨率。如果小波分解被用于空间下采样模块112中,则优选地使用基于小波的上采样滤波器。
顺便说,逆量化模块220逆量化由比特流解释模块210提供的纹理信息,并输出变换系数。逆量化是指搜索与在预定索引中代表的值匹配的量化系数并随后传输其的处理。表映射索引和量化系数可从编码器100被传输,或者其可被编码器和解码器被提前约定。
逆空间变换模块230进行逆空间变换以将变换系数逆变换为空域中的变换系数。例如,当以小波模式进行空间变换时,小波域中的变换系数被逆变换为空域中的变换系数。
逆时间滤波模块240逆时间滤波空域中的变换系数,即差图像,并恢复组成视频序列的帧。对于逆时间滤波,逆时间滤波模块240使用由比特流解释模块210提供的运动向量和运动信息,以及由空间上采样模块250提供的上采样的基础层。
解码器200中的逆时间滤波与图4的编码器100中的时间滤波相逆。即,逆时间滤波序列与图5的例子中的序列相逆。因此,应对最高时间级上的低通帧和高通帧进行逆滤波。例如,如在图5的情况下,低通帧70在B内模式下被编码,因此,逆时间滤波模块240通过组合低通帧70和由空间上采样模块250提供的上采样基础层来恢复原始图像。另外,逆时间滤波模块240以块为基础根据由模式信息指出的模式来对高通帧80逆滤波。如果块的模式信息表示B内模式,则逆时间滤波模块240将块和与该块相应的基础层帧的区相加,从而恢复原始帧的相关区。如果块的模式信息表示除B内模式以外的任何其他模式,则逆时间滤波模块240可根据估计方向通过使用运动信息(参考帧的数量和运动向量)来恢复原始帧的相关区。
由逆时间滤波模块240来恢复与每一块相应的整个区,从而形成恢复帧,视频序列是通过组合这些帧形成的整体。已经描述了向解码器方传输的比特流包括关于基础层和其他层一起的信息。然而,当来自已经接收从编码器100传输的比特流的预解码器方的仅截去的基础层被传输到解码器200时,关于基础层的信息仅出现在输入到解码器方的比特流中。因此,在已经通过比特流解释模块210和基础层编码器260之后恢复的基础层帧将作为视频序列输出。
在这里使用的术语“模块”是指但不限于软件或硬件部分,如现场可编程门阵列(FPGA)或执行特定任务的专用集成电路(ASIC)。模块可有利地被配置以驻留于可寻址存储介质中并且配置以在一个或多个处理器上执行。因此,举例来说,模块可包括组件,如软件组件、面向对象的软件组件、类组件和任务组件、进程、函数、属性、过程、子程序、程序代码段、驱动程序、固件、微代码、电路、数据、数据库、数据结构、表、阵列和变量。在组件和模块中提供的功能性可被组合到更少的组件和模块中,或还可被分离到附加的部件和模块中。另外,部件和模块可被实现以在通信系统内执行一个或多个计算机。
根据本发明的示例性实施例,与使用在编码基础层中的编解码器的功能相同的功能可在最低比特率和最低帧率下获得。由于在更高分辨率和帧率下的差图像通过可伸缩性编码方法被有效编码,所以在更低比特率下实现比传统方法更高的质量,在更高比特率下实现与传统可伸缩性视频编码方法相似的性能。
在本发明的示例性实施例中不在时间差和来自基础层的差之间选择任何有利的一个,而是简单的使用来自基础层编码的差,在低比特率下可获得极好的质量,但是在更高分辨率下与传统可伸缩性视频编码相比将遭受极大地降低的性能。这意味着很难只通过上采样具有最低分辨率的基础层来估计最高分辨率下的原始图像。
如在本发明中提到的,最优地确定从最高分辨率下的时间上相邻帧估计还是从基础层估计的方法根据其是否提供极好的质量,而不管比特率。
图14是在“移动序列”下将PSNR与比特率比较的曲线图。使用根据本发明示例性实施例的方法的结果展示其与传统的在高比特率下的可伸缩性视频编码相似,但是其在低比特率下更好。具体地讲,与当α=0(仅差分编码)相比,当α=1(模式被选择),在高比特率下实现稍高的性能,当时在低比特率下实现稍低的性能。然而,在最低比特率(48kbps)下两者都显示相同的性能。
根据本发明的示例性的实施例,在可伸缩性视频编码中在低比特率和高比特率下都能获得高性能。
根据本发明的示例性实施例,在可伸缩性视频编码中可实现更准确运动估计。
本领域的普通技术人员应该理解,在不脱离由所附权利要求限定的本发明的精神和范围的情况下,在对其进行形式和细节上的各种替换、修改和改变。因此,应理解上述的示例性实施例仅为示例性目的,不被解释为对本发明的限制。
权利要求
1.一种在基于多层的视频编码方法中通过使用基础层来有效的压缩在更高层上的帧的方法,包括从输入原始视频序列产生基础层帧,该基础层具有与第一更高层帧相同的时间位置;对基础层上采样以具有另一更高层帧的分辨率;和通过参考具有与第一更高层帧不同时间位置的第二更高层帧以及上采样的基础层帧以块为基础来去除第一更高层帧的冗余。
2.如权利要求1所述的方法,其中,产生基础层帧包括对于输入原始视频序列执行时间下采样和空间下采样。
3.如权利要求2所述的方法,其中,产生基础层帧还包括采用预定编解码器在对结果编码之后对下采样的结果解码。
4.如权利要求2所述的方法,其中,通过小波变换来执行空间下采样。
5.如权利要求1所述的方法,其中,使用表现比基于小波的可伸缩性视频编解码器更好质量的编码器来执行产生基础层帧。
6.如权利要求1所述的方法,其中,去除第一更高层帧的冗余包括计算并编码与上采样的基础层帧的差,其中,另一更高层帧是低通帧;和根据时间预测和基础层预测之一以块为基础对第二更高层编码,从而预定成本函数被最小化,其中,另一更高层帧是高通帧。
7.如权利要求6所述的方法,其中,预定成本函数在后向估计的情况下通过Eb+λ×Bb来计算,在前向估计的情况下通过Ef+λ×Bf来计算,在双向估计的情况下通过Ebi+λ×Bbi来计算,在使用基础层的估计的情况下通过α×Ei来计算,其中,λ是拉格朗日系数,Eb、Ef、Ebi和Ei是指每一模式的误差,Bb、Bf和Bbi是在每一模式下压缩运动信息中消耗的比特,α是正的常数。
8.一种视频编码方法,包括从输入原始视频序列产生基础层;上采样该基础层以具有当前帧的分辨率;通过选择时间预测和使用上采样的基础层中的一个来执行构成当前帧的每一块的时间滤波;空间变换通过时间滤波产生的帧;和量化通过空间变换产生的变换系数。
9.如权利要求8所述的方法,其中,产生基础层包括对于输入原始视频序列执行时间下采样和空间下采样;和使用预定编解码器在对结果编码之后对下采样的结果解码。
10.如权利要求8所述的方法,其中,执行时间滤波包括计算并编码与下采样的基础层的差,其中,帧之中的更高帧是低通帧;和使用时间预测和基础层预测中的一个以块为基础对更高帧编码,从而预定成本函数被最小化,其中,更高帧是高通帧。
11.一种用视频解码器恢复时间滤波的帧的方法,包括获得低通帧和基础层的和,其中,滤波的帧是低通帧;和根据从编码器传输的模式信息以块为基础恢复高通帧,其中,滤波的帧是高通帧。
12.如权利要求11所述的方法,还包括通过使用时间参考帧来恢复滤波的帧,其中,滤波的帧具有与最高时间级不同的另一时间级。
13.如权利要求11所述的方法,其中,模式信息包括前向估计、后向估计、双向估计和B内模式中的至少一个。
14.如权利要求13所述的方法,其中,恢复高通帧包括获得块和基础层的相关区的和,其中,高通帧的模式信息是B内模式;和根据相关估计模式的运动信息来恢复原始帧,其中,关于高通帧的块的模式信息是时间估计模式之一。
15.一种视频解码方法,包括使用预定编解码器对输入基础层解码;上采样解码的基础层的分辨率;逆量化除基础层之外的层的纹理信息,并且输出变换系数;将变换系数逆变换为空域中的变换系数;和使用上采样的基础层从作为逆变换的结果产生的帧恢复原始帧。
16.如权利要求15所述的方法,其中,恢复原始帧包括获得块和基础层的相关区的和,其中,作为逆变换的结果产生的帧是低通帧;和根据从编码器方传输的模式信息以块为基础恢复高通帧,其中,作为逆变换的结果产生的帧是高通帧。
17.如权利要求16所述的方法,其中,模式信息包括前向估计、后向估计、双向估计和B内模式中的至少一个。
18.如权利要求17所述的方法,其中,恢复高通帧包括获得块和基础层的相关区的和,其中,高通帧的模式信息是B内模式;和根据相关估计模式的模式信息来恢复原始帧,其中,关于高通帧的块的模式信息是时间估计模式中的一个。
19.一种视频编码器,包括基础层产生模块,从输入原始视频源产生基础层;空间上采样模块,将基础层上采样为当前帧的分辨率;时间滤波模块,使用时间估计和上采样的基础层的估计中的一个,并且对当前帧的每一块时间滤波;空间变换模块,空间变换通过时间滤波产生的帧;和量化模块,量化通过空间变换产生的变换系数。
20.如权利要求19所述的视频编码器,其中,基础层产生模块包括下采样模块,进行输入原始视频序列的时间下采样和空间下采样;基础层编码器,使用预定编解码器对下采样的结果编码;和基础层解码器,使用与在编码中使用的编解码器相同的编解码器来对编码的结果解码。
21.如权利要求19所述的视频编码器,其中,时间滤波模块通过计算与上采样基础层的差来对帧中的低通帧编码,和通过最小化预定成本函数,并通过使用时间估计和使用基础层的估计中的一个来对高通帧的每一块编码。
22.一种视频解码器,包括基础层解码器,使用预定编解码器对输入基础层解码;空间上采样模块,上采样解码的基础层的分辨率;逆量化模块,逆量化关于除基础层之外的层的纹理信息,并且输出变换系数;逆空间变换模块,将变换系数逆变换为空域中的变换系数;和逆时间滤波模块,通过使用上采样的基础层,从作为逆变换的结果产生的帧恢复原始帧。
23.如权利要求22所述的视频解码器,其中,逆时间滤波模块获得块和基础层的相关区的和,其中,作为逆变换的结果产生的帧是低通帧;和根据从编码器方传输的模式信息以块为基础恢复高通帧,其中,作为逆变换的结果产生的帧是高通帧。
24.如权利要求23所述的视频解码器,其中,模式信息包括前向估计、后向估计、双向估计和B内模式中的至少一个。
25.如权利要求24所述的视频解码器,其中,逆时间滤波模块获得块和基础层的相关区的和,其中,高通帧的模式信息是B内模式;和根据相关估计模式的运动信息来恢复原始帧,其中,高通帧的块的模式信息是时间估计模式中的一个。
26.一种用于记录执行在基于多层的视频编码方法中通过使用基础层来有效的压缩在更高层上的帧的方法的计算机可读程序的存储介质,该方法包括从输入原始视频序列产生基础层帧,该基础层帧具有与第一更高层帧相同的时间位置;对基础层上采样以具有另一更高层帧的分辨率;和通过参考具有与第一更高层帧不同时间位置的第二更高层帧以及上采样的基础层帧以块为基础来去除第一更高层帧的冗余。
全文摘要
提供了一种通过使用基础层在可伸缩性视频编解码器中更有效地进行时间滤波的方法。在基于多层的视频编码方法中通过使用基础层来有效的压缩在更高层上的帧的方法包括(a)从输入原始视频序列产生基础层帧,该基础层帧具有与第一更高层帧相同的时间位置;(b)对基础层上采样以具有更高层帧的分辨率;和(c)通过参考具有与第一更高层帧不同时间位置的第二更高层帧以及上采样的基础层帧以块为基础来去除第一更高层帧的冗余。
文档编号H04N7/26GK1722838SQ20051008319
公开日2006年1月18日 申请日期2005年7月13日 优先权日2004年7月15日
发明者韩宇镇, 河昊振 申请人:三星电子株式会社