画面块的编码和解码方法、对应的设备和数据流与流程

文档序号:18329906发布日期:2019-08-03 12:00阅读:253来源:国知局
画面块的编码和解码方法、对应的设备和数据流与流程
公开用于从特殊重构的参考画面解码画面块的方法。还公开对应的编码方法和对应的编码和解码设备。
背景技术
:在视频流传输期间,可用带宽可能随时间改变。因此,流传输应用的输出比特率需要调整,以实时地适合可用带宽,以便避免拥挤。使得能够进行实时比流率调整的一种方式是使用实时编码器,但是需要针对每个客户端分配一个编码系统,例如在关于vod服务有很多客户端的情况下可能是不可接受的。使得能够进行实时比特率调整的另外的方式是使用可伸缩视频编码。在可伸缩编码中,视频源被编码成若干层。在传送期间,为了调整输出比特率,服务器选择要发送的层(模式“推送”)或者解码器请求要发送的层(模式“回拉”)。该方法适于通过异质信道进行流传输,但是与单一层视频编码相比,可伸缩视频编码降低总的压缩效率并且增加编码器和解码器两者的计算复杂性。实现比特率调整的一种简单方法是对相同的视频序列的多个版本进行编码。这些版本具有不同的分辨率和/或质量级别,并且因此具有不同的比特率。在流传输期间,当需要调整输出比特率时,要传送的流可以动态地从一个版本切换到其他版本,以便适合带宽需求或用户的能力,如图1所示。该方案被称为“流切换”。然而,在帧间编码的画面(p或b画面)处的流之间的直接切换可能造成重构的参考画面的失配,并且导致不正确的画面重构。重构的视频的质量可能显著降低。解决该问题的一种方法是使用使用比特流(典型地,i画面或idr画面或cra画面)中的随机访问点(rap)。idr是“瞬间解码器刷新(instantaneousdecoderrefresh)”的英文首字母缩写,cra是“清除随机访问(cleanrandomaccess)”的英文首字母缩写。因为切换只能在这些rap处进行,所以需要频繁地在比特流中分配rap,以便实现提示流切换。然而,对这样的i/idr画面进行编码引入大量的比特率开销。另外,使用位于rap之前的重构的参考画面的rap之后的画面或者被跳过,或者未被正确地解码,因为它们使用的重构的参考画面与如图2所示的编码中所使用的不同。在图2上,ic从重构的参考画面i1和i2重构,同时根据重构的参考图参考画面i1和i2对其进行编码。在avc中,设计特殊画面类型(si/sp)以允许对来自另外的流的画面的相同的重构,并且因此便于流切换。于是,视频画面被编码成切换点处的sp画面而不是如图3所示的帧内编码的画面。sp画面的编码效率高于帧内编码的画面,但是它们与正常的p画面相比仍然效率更低。因此,在分配很多切换点的情况下,总的编码效率仍然降低。在zhou等人的标题为“efficientbitstreamswitchingofh.264codedvideo”并于发表于spievol.5909(2005)会议的文献中,公开了一种方案,该方案使得能够在任何时间进行切换而不需要大量的比特率开销。该方案仅用于ipppgop结构。除了不同比特率的相同视频序列的多个版本之外,还对diff画面进行编码,用于切换发生的当前画面的重构的参考画面,如图4所示。diff画面是当前画面的重构的参考画面和其他流中的时间对应的画面之间的差异。差异画面传送给解码器以补偿失配。因为如在该文献的第5页所提及的那样,仅在切换发生时才传送diff画面,所以以上方案所引入的比特率开销很小。另一方面,该方案仅对从单个重构的参考画面的预测的p画面起作用。另外,该方案需要编码次序和显示次序是相同的。技术实现要素:公开一种用于对画面块进行解码的方法。该方法包含:-将至少一个流s_diff解码成解码数据以及用于标识解码器中的重构的参考画面的一个信息;-从至少所标识的重构的参考画面并且从解码数据重构特殊基准画面;-从至少特殊参考画面重构画面块,其中不显示在被重构时的特殊参考画面。有利地,从第一层解码出所标识的重构的参考画面,并且其中,从依赖于第一层的第二层解码出解码数据和标识解友器画面缓冲器中的重构的参考画面的信息。根据特定特征,第一层是基础层。根据特定实施例,该解码方法还包含对指示第二层的随后解码的画面未使用任何层间预测的标志进行解码。还公开一种用于对画面块进行编码的方法。该编码方法还包含:-根据至少一个重构的参考画面对画面块进行编码;以及-根据另外的重构的参考画面和用于指示解码器画面缓冲器中的另外重构的参考画面将至少一个重构的参考画面编码为特殊参考画面,其中,不显示在被重构时的特殊参考画面。有利地,在第一层中对所标识的重构的参考画面进行编码,并且在依赖于第一层的第二层中对至少一个重构的参考画面和用于标识解码器缓冲器中的另外的重构的参考画面进行编码。根据特定特征,第一层是基础层。根据特定实施例,还包含对指示第二层的随后解码的画面未使用任何层间预测的标志进行编码。公开一种用于对画面块进行解码的解码设备。该解码设备包含:-用于将至少一个流s_diff解码成解码数据以及用于标识解码器中的重构的参考画面的一个信息的部件;-用于从至少所标识的重构的参考画面并且从解码数据重构特殊基准画面的部件;-用于从至少特殊参考画面重构画面块的部件,其中不显示在被重构时的特殊参考画面。该解码设备适于执行所述解码方法的步骤。公开一种用于对画面块进行编码的编码方法。该编码设备包含:-根据至少一个重构的参考画面对画面块进行编码;以及-根据另外的重构的参考画面和用于指示解码器画面缓冲器中的另外重构的参考画面将至少一个重构的参考画面编码为特殊参考画面,其中,不显示在被重构时的特殊参考画面。该编码设备适于所述编码方法的步骤。公开一种数据流。该数据流包含在其中编码的用于标识解码器画面缓冲器中的重构的参考画面的一个信息以及允许从所标识的重构的参考画面重构特殊参考画面的数据,所述特殊参考画面是不被显示的参考画面。公开一种解码方法。该解码方法包含:根据多层流的第一层的解码器画面缓冲器的另外的参考画面和从所述多层流的第二层解码的数据来重构参考画面,并且将所重构的参考画面存储在所述第二层的解码器画面缓冲器中,其中,所述参考画面被指示为不被显示;对指示第二层的随后解码的画面未使用任何层间预测的标志进行解码;以及至少根据所重构的参考图像来重构所述随后解码的画面的画面块。有利地,该解码方法还包含从所述第二层解码用于标识所述另外的参考画面的信息。有利地,在该解码方法中,从所述第二层解码的数据表示所述参考画面和所述另外的参考画面之间的逐个像素差异。有利地,在该解码方法中,第一层是基础层。有利地,在该解码方法中,所述参考画面和所述另外的参考画面是时间对齐的。公开一种编码方法。该编码方法包含:根据多层流的第一层的解码器画面缓冲器的另外的参考画面,在所述多层流的第二层中对所述第二层的解码器画面缓冲器的参考画面进行编码,其中,所述参考画面被指示为将不被显示;对指示所述第二层的随后编码的画面未使用任何层间预测的标志进行编码;以及至少根据所述参考画面对所述随后编码的画面的画面块进行编码。有利地,该编码方法还包含在所述第二层中对用于标识所述另外的参考画面的信息进行编码。有利地,在该编码方法中,在所述第二层中对所述参考画面进行编码包含确定所述参考画面和所述另外的参考画面之间的逐个像素差异,以及对所述逐个像素差异进行编码。有利地,在该编码方法中,第一层是基础层。有利地,在该编码方法中,所述参考画面和所述另外的参考画面是时间对齐的。公开一种解码器。该解码器包含:用于根据多层流的第一层的解码器画面缓冲器的另外的参考画面和从所述多层流的第二层解码的数据来重构参考画面以及将所重构的参考画面存储在所述第二层的解码器画面缓冲器中的部件,其中,所述参考画面被指示为不被显示;用于对指示第二层的随后解码的画面未使用任何层间预测的标志进行解码的部件;以及用于至少根据所重构的参考图像来重构所述随后解码的画面的画面块的部件。有利地,该解码器还包含从所述第二层解码用于标识所述另外的参考画面的信息的部件。有利地,在该解码器中,从所述第二层解码的数据表示所述参考画面和所述另外的参考画面之间的逐个像素差异。有利地,在该解码器中,第一层是基础层。有利地,在该解码器中,所述参考画面和所述另外的参考画面是时间对齐的。公开一种编码器。该编码器包含:用于根据多层流的第一层的解码器画面缓冲器的另外的参考画面,在所述多层流的第二层中对所述第二层的解码器画面缓冲器的参考画面进行编码的部件,其中,所述参考画面被指示为将不被显示;用于对指示所述第二层的随后编码的画面未使用任何层间预测的标志进行编码的部件;以及用于至少根据所述参考画面对所述随后编码的画面的画面块进行编码的部件。有利地,该编码器还包含在所述第二层中对用于标识所述另外的参考画面的信息进行编码的部件。有利地,在该编码器中,在所述第二层中对所述参考画面进行编码包含确定所述参考画面和所述另外的参考画面之间的逐个像素差异,以及对所述逐个像素差异进行编码。有利地,在该编码器中,第一层是基础层。有利地,在该编码器中,所述参考画面和所述另外的参考画面是时间对齐的。公开一种传送装置。该传送装置包含:用于在可伸缩多层流的第二层中传送所述第二层的解码器画面缓冲器的参考画面的经编码的数据的部件,所述参考画面根据所述可伸缩多层流的第一层的解码器画面缓冲器的另外的参考画面来编码,其中,所述参考画面被指示为将不被显示;用于传送指示所述第二层的随后编码的画面未使用任何层间预测的标志的部件;以及用于传送所述随后编码的画面的画面块的经编码的数据的部件,所述画面块至少根据所述参考画面来编码。有利地,该传送装置还包含用于在所述第二层中传送用于标识所述另外的参考画面的信息的部件。有利地,在该传送装置中,所述参考画面和所述另外的参考画面是时间对齐的。附图说明本发明的其他特征和优点将对其一些实施例的描述而呈现,该描述结合以下附图进行:图1和图2例示流切换的一般原理;图3例示根据技术现状的使用si/sp画面的流切换的原理;图4例示根据技术现状的使用diff画面的流切换的原理;图5例示根据本发明的解码方法的流程图;图6图示根据本发明的编码方法的流程图;图7例示根据本发明的使用srp画面的流切换的原理;图8例示根据本发明的解码方法的另一个实施例;图9图示根据本发明的多层视频解码器;图10图示根据本发明的多层视频编码器;以及图11表示根据本发明的多层流。具体实施方式本发明涉及用于对像素的画面块进行解码的方法以及对这样的画面块进行编码的方法。画面块属于画面序列的画面。每个画面包含每个均与至少一项画面数据相关联的像素或画面点。一项画面数据例如是一项亮度数据或者一项色度数据。以下参照画面块来描述编码和解码方法。显然,这些方法可以应用于画面的若干画面块以及序列的若干画面,着眼于对一个或多个画面分别进行编码和解码。画面块是任何形式的像素集合。其可以是方形、矩形。但是本发明不限于这样的形式。在下面的部分中,字块(wordblock)被用于画面块。在hevc中,块指编码单元(cu)。“预测器(predictor)”项指定用于预测其他数据的数据。预测器用于预测画面块。预测器或预测块从属于其预测(空间预测或画面内预测)的块的与画面相同的画面的一个或若干重构的参考样本或者重构的参考画面(时间预测或画面间预测)的一个(单向预测)或若干(双向预测或双预测)参考块来获得。通过运动向量在重构的参考画面中标识参考块。预测还可以被加权,以考虑照明变化模型(也被称为加权预测)。术语“残差”表示从源数据中减去预测器之后所获得的数据。术语“重构”表示在将残差与预测器融合之后所获得的数据(例如像素、块)。融合通常是预测器与残差的求和。然而,融合更一般地并且更特别地包含重构的样本的另外的后滤波阶段和/或将偏移添加到重构的样本的另外的步骤。在重构参考画面时,将其存储在dpb(“编码器画面缓冲器”的英文首字母缩写)中作为新重构的参考画面。在提及对画面解码时,术语“重构”和“解码”经常被用作同义语。因此,“重构的块”也被叫作术语“解码的块”。术语编码要采取最宽泛的含义。编码可能包含应用变换和/或量化数据。其还可能仅仅指熵编码。dct(“离散余弦变换(discretecosinetransform)”)是这样的变换的示例。以相同的方式,术语解码可能包含熵解码以及应用变换和/或逆量化。在解码器侧应用的变换是在编码器侧应用的变换的逆变换。流是形成编码画面的表示的比特的序列以及形成一个或多个编码视频序列的相关联的数据。流是用于指代nal单元流或字节流的总称。nal(“网络抽象层(networkabstractionlayer)”的英文首字母缩写)单元是包含要遵照的数据的类型的指示和包含该数据的字节的语法结构。nal被指定为以适合在各种通信信道或存储介质上运送的方式对该数据进行格式化并且提供头部信息。在nal单元中包含所有数据,其每一个都包含整数数量的字节。nal单元指定用于在面向包的系统和流系统两者中使用的通用格式。除了在字节流格式中每个nal单元之前可以有开始码前缀和额外填充的字节之外,用于面向包的传输和字节流的nal单元的格式是相同的。au(“访问单元(accessunit)”的英文首字母缩写)是根据指定的分类规则彼此相关联、以解码次序连续并且包含恰好一个编码的画面的nal单元的集合。访问单元的解码总是得到解码画面。在图5和图6中,所表示的框仅是功能实体,其未必对应于物理分开的实体。本领域的技术人员将意识到的是,所述原理的方面可以实施为系统、方法或计算机可读取介质。因此,所述原理的方面可以采取完全硬件实施方式的形式、完全软件实施方式(包括固件、常驻软件、微代码等)的形式或者在本文中一般全部称为“电路”、“模块”或“系统”的组合软件和硬件方面的实施方式。另外,所述原理的方面可以采取计算机可读取存储介质的形式。可以利用一个或多个计算机可读取存储介质的任何组合。图中的流程图和/或框图例示根据本发明的各个实施例的系统、方法和计算机程序产品的可能的实现方式的配置、操作和功能。在这点上,流程图或框图中的每个框可以表示模块、片段或代码的一部分,其包含用于实现所指定的逻辑功能的一个或多个可执行的指令。还应当注意到,在一些可替换的实现方式中,在框中所记录的功能可以不以图中所记录的次序来进行。例如,以相继的方式示出的两个框实际上可以基本并行地执行,或者框有时可以以相反的次序来执行,或者框可以以交替的次序来执行,取决于所涉及的功能。还应当注意的是,框图和/或流程图示例的每个框以及框图和/或流程图示例中的框的组合可以通过执行所指定的或能或去拿的基于专用硬件的系统或者专肜硬件和计算机指令的组合来实现。虽然而未明确描述,但是所述实施例可以以任何组合或子组合的方式利用。图5图示根据特定且非限制性的实施例的解码方法的流程图。该方法用于对在流s中编码的当前画面块bc进行解码。画面块bc属于当前画面ic的切片sc。切片是诸如画面块的集合这样的画面的一部分。在步骤10中,将至少一个流s_diff解码成解码数据(例如,残差和编码模式)以及用于标识存储在dpb中的重构的参考画面r2的信息info。在步骤s12中,从所标识的重构的参考图r2和解码画面重构特殊参考画面(其英文首字母缩写是srp)r1’。然后将特殊参考画面放置在dpb中。该参考画面r1’是特殊的,因为其从不被显示,而是仅用于重构其他画面中的块。重构srpr1’包含针对r1’的每个画面块确定预测器以及添加残差。预测器可以根据所标识的重构的参考画面r2(作为与bc同位置的r2中的块或者运动向量所标识的r2中的经运动补偿的块)或者如传统帧内预测那样地根据r1’的相邻的重构的样本来确定。如果r2中的块在r2中的空间位于与ic中的bc的空间位置相同的,则r2中的块与bc是同位置的。根据变形,如果重构的参考画面r2的大小不同于当前画面ic的大小,则重新调节r2以便重构特殊参考画面,使得重新调节的r2画面(可能具有适当的填充)与ic具有相同的大小。在该情况下,从f(r2)重构r1’,其中f是重新调节滤波器。流s_diff可以是流s的一部分,或者可以独立于流s。作为示例,流s_diff对不同于r2另外的重构的参考画面r1和重构的参考画面r2之间的逐个像素差异进行编码。r1例如是重构的参考画面,当前画面块bc根据它进行编码。在该情况下,对流s_diff进行解码包含对差异画面进行解码,其通常通过熵解码、逆量化和变换。变换例如是逆dct。差异画面通常是重构的参考画面r1和重构的参考画面r2之间的差异的近似。近似是由于在编码期间的损失(例如,由于量化)。如果差异画面diff被无损编码,则解码的差异画面diff等于重构的参考画面r1和重构的参考画面r2之间的差异。根据变型,如果r1和r2大小不同,则差异画面是重构的参考画面r1和重新调节的重构的参考画面r2之间的差异。作为示例,如果r2大于r1,则下调(downscale)r2,而如果r2小于r1,则上调(upscale)r2。在该情况下,特殊参考画面r1’等于f(r2)+diff,如果r2和ic大小相同的,那么f是单位矩阵,或者在其他情况下,f是重新调节函数。根据变型,解码方法还包含可选的对与差异画面diff相关联的符号的解码。如果对这样的符号进行解码,则特殊参考画面r1’在符号为正时等于f(r2)+diff,并且在符号为负时等于f(r2)-diff。根据另外的变型,流s_diff针对r1的一些块对这些块和r2中的同位置的块之间的差异进行编码。r1的其他块使用传统的帧内预测(即根据相邻的重构的样本)在s_diff中编码。根据另外的变型,流s_diff针对r1的一些块对这些块和r2中的对应块之间的差异进行编码。r2中的对应块是同位置的块或者经运动补偿的块。r1中的其他块使用传统的帧内预测(即根据相邻的重构的样本)在s_diff中编码。对信息info进行解码使得能够处理不同的使用情况。作为示例,如果当前画面块bc根据两个重构的参考画面r1和r1进行编码,则两个特殊参考画面r1’和r1’以及两个信息info和info在步骤10中被解码。特殊参考画面r1’和r1’分别对应于r2和r2,其中r2和r2是存储在dpb中的两个重构的参考画面,bc根据它们进行重构。因此,info向解码器指示r1’将从r2进行重构,而info指示r1’从r2进行重构。每个特殊画面例如在流s_diff用指示不同于传统的i、p、b画面/切片类型的画面/切片类型的专用标志来标识。该画面/切片类型指示当前au包含不被显示的特殊参考画面。根据变型,每个特殊画面用切片头部中的专用标志来标识。根据变型,画面切片类型是i、p或b,但是切片头部的特殊标志指示重构的画面不被显示但是作为参考存储在dpb中。用于在dpb中标识重构的参考画面r2的信息info例如是在文献iso/iec14496-10(第3.104节)中定义的poc(“画面次序计数”的英文首字母缩写)。根据变型,用于标识重构的参考画面的信息是重构的参考画面索引。在步骤16中,从特殊参考画面r1’重构当前画面块bc。通常,因为就内容而言,特殊参考画面更接近于r1而不是r2,漂移因此而减小。通常,重构画面块包含从流s中解码残差以及将残差添加到预测器。在跳过模式下,残差可以是0。对残差进行解码包含熵解码、逆量化以及应用在编码器侧应用的变换的逆变换。这些步骤对于视频压缩/编码领域的技术人员是公知的,并且不做进一步的公开。用从流s中解码出的运动向量来标识特殊参考画面r1’中的参考块。参考块被用作预测器。在双向预测的情况下,以两个重构的参考画面(可能是同样的重构的参考画面)来标识两个参考块。预测器是这两个参考块的加权和。如果bc是从属于可能不同于在编码中所使用的重构的参考画面r1和r1的两个重构的参考画面r2和r2的两个参考块双向预测的,则两个srpr1’和r1’可能被重构。特殊参考画面r1’和r1’从而被用作bc的参考画面。如果在重构bc时在dpb中r1可用,则bc还可以从一个特殊参考画面r1’和r1来重构。info和符号可以针对每个特殊参考画面(在切片头部中或者在切片片段头部中)进行解码或者可以针对若干特殊参考画面来分组在一个单一头部中。info和符号例如可以从sei消息、vps(视频参数集hevc)中或者从sc的切片头部中被解码。图6图示根据特定且非限制性实施例的编码方法的流程图。该方法用于对流s中的当前画面块bc进行编码。在步骤s20中,从流s1中的至少一个第一重构的参考画面r1对当前画面块bc进行编码。通常,对当前画面块进行编码包含:确定残差;变换残差;以及将所变换的残差量化成量化数据。将量化数据进一步熵编码在流s中。残差通过从当前画面块bc中减去预测器来获得。预测器从第一重构的参考画面r1确定。更精确地,通过运动向量在重构的参考画面r1中确定预测器。如果当前块是从两个参考块双向预测出的,则预测器通过平均这两个参考块来获得。两个参考块属于两个不同的重构的参考画面r1和r1,或者属于同一重构的参考画面。运动向量也被编码在流s中。这些步骤对于视频压缩领域的技术人员是公知的,不做进一步的公开。在步骤s24中,将重构的参考画面r1和信息info编码到流s_diff中。对s_diff的解码是srp。流s_diff可以是流s的一部分,或者可以独立于流s。根据不同于用info标识的r1的第二重构的参考画面r2将重构的参考画面r1编码在s_diff中。根据变型,如果重构的参考画面r2的大小不同于当前画面ic的大小,并且因此不同于r1的大小,则对r2重新调节以便对重构的参考画面r1进行编码,使得重新调节的r2画面(可能通过适当的填充)与ic具有相同的大小。在该情况下,根据f(r2)对r1进行编码,其中f是重新调节滤波器。作为示例,流s_diff对r1和r2之间的逐个像素差异diff进行编码。diff画面通过变换(例如,使用dct)、量化和熵编码进行编码。根据变型,如果r1和r2的大小不同,则差异画面是重构的参考画面r1和重新调节的第二重构的参考画面r2之间的差异。作为示例,如果r2大于r1,则下调r2,而如果r2小于r1,则上调r2。在该情况下,diff=r1-f(r2),当r2和ic大小相同时,f是单位矩阵函数,而在其他情况下是重新调节函数。根据变型,解码方法还包含可选的对与差异画面相关联的符号进行的解码。如果这样的符号被解码,则特殊参考画面r1’在符号为正时等于f(r2)+diff,而在符号为负时等于f(r2)-diff。根据另外的变型,流s_diff针对r1的一些块对这些块和r2中的块(即,与bc同位置的块或者经运动补偿的块)之间的差异进行编码。使用传统的帧内预测(即,根据相邻的重构的样本)将r1的其他块编码到s_diff中。对信息info进行编码使得能够处理不同的使用情况。例如,如果从两个重构的参考画面r1和r1对当前画面块bc进行编码,则两个重构的参考画面根据两个其他重构的参考画面r2和r2进行编码。info向解码器指示将从r2重构特殊参考画面r1’,而info指示将从r2重构另外的特殊参考画面r1’。每个特殊参考画面例如在流s_diff中用指示不同于传统的i、p、b画面/切片类型的画面/切片类型的专用标志来标识。该画面/切片类型指示当前au是将被用于替换dpb中的画面的特殊参考画面。根据变型,每个特殊画面用切片头部中的专用标志来标识。根据变型,画面切片类型是i、p或b,但是切片头部的特殊标志指示重构的画面不被显示但是作为参考存储在dpb中。在特定实施例中,针对dpb的重构的参考画面中的若干或每个可能的对来编码一个特殊参考画面和信息info。因此,在任何时候都可以从dpb的任何画面重构块bc,即使其并非来自在限制漂移的同时根据其进行编码的那个,在重构bc时,如果在dpb中r1不可用,则可以从特殊参考画面r1’而不是r2来重构bc。漂移因此而被限制,因为就内容而言,r1’更接近于r1而不是r2。标识第二重构的参考画面的信息例如是poc。根据变型,标识第二重构的画面的信息是重构的参考画面索引。公开的该解码方法的所有变型和选择都可应用于编码方法。具体地,编码方法包含可选的对与差异画面相关联的符号的编码。info和符号例如从sei消息、vps(视频参数集hevc)解码或者来自sc的切片头部。根据变型,在流切换的背景下使用编码和解码方法,如图7示。在该情况下,画面的第一序列被编码在流s0中。画面的第二序列被编码在流s1中。通常,画面的第二序列与第一序列相同,但是以不同的比特率,即通过使用不同的量化步长进行编码。根据变型,画面的第二序列是第一序列的重新调节的版本,即上调或下调的版本。根据特定实施例,s0和s1具有相同的gop结构(即,相同的解码次序和相同的参考画面列表,如在hevc标准的8.3.1节和8.3.2节中所定义的那样)。除了流s0和s1之外,在每个时刻tn,s1的重构的参考画面被进一步地编码在流s_diff中作为来自如图7所示的s0的在时间上相对应的,即时间对齐的(例如,相同的画面次序计数)重构的参考画面的srp。重构的参考画面与用于标识对应的重构的参考画面的信息info_tn一起编码在s_diff中。注意,对应于的源画面被编码在s1中,并且对应于的源画面被编码在s0中。参考图5公开的解码方法用于对从第一流s0切换到第二流s1之后的画面块bc进行解码。参照图7,从流s0中解码画面并且显示直至时间t2为止。在t2和t3之间发生切换。在切换之后,从流s1中解码并显示画面。在切换时,dbp0包含从s0解码的若干重构的参考画面。dpb0与s0有关。参照图7,pb0包含在切换时间处的三个重构的参考画面和在步骤10中,s_diff1、s_diff2和s_diff3被解码成解码数据(例如,残差或编码模式)以及标识存储在dpb0中的重构的参考画面和的信息info_t0、info_t1和info_t2。在步骤12中,从对应的解码数据和对应的重构的参考画面和重构三个特殊参考画面srp_t0、srp_t1和srp_t2。然后,将重构的srp存储在(可能)不同于dpb0的dpb1中。dpb1与s1有关。根据第一特定实施例,s_diff对和可能被重新调节的在时间上相对应的画面之间的逐个像素差异进行编码。在该情况下,重构的srp是其中diff_t0、diff_t1、diff_t2是从s_diff解码的。如有必要,用f重新调节使得其大小与当前画面ic的大小相同。如果没有进行重新调节,则f是单位矩阵函数。根据第二特定实施例,s_diff使用可能由f重新调节的对进行编码。在该情况下,中的块的预测器是画面中的空间同位置的块或者是中的经运动补偿的块或者从中的空间相邻块(空间帧内预测)得出。在第一特定实施例的情况下,当不需要重新调节时,即当第一和第二流的画面的大小相同时,可以使用相同的差异画面diff_t0、diff_t1和diff_t2从s0切换到s1或者从s1切换到s0。在先前的示例中,如果diff_t0对和流s1中的在时间上相对应的画面之间差异,而不是相反的情况进行编码,则从中减去diff_t0而不是添加,以便重构srp_t0。从而对符号解码以指示是通过添加差异画面还是通过减去差异画面来修改重构的参考画面。在步骤s16中,从dpb1中的重构的参考画面来重构bc。就在切换之后,dpb1包含三个srp。本发明显然不限制于3个重构的参考画面的情况。根据本发明的特定实施例,对于dpb0中的所有重构的参考画面,在步骤12重构特殊参考画面并且存储在dpb1中。根据变型,仅对将被用作切换之后的参考画面的dpb0中的每个重构的参考画面重构srp。根据变型,将标志f13编码(相应地,解码)例如在vps或sei中,指示具有给定的layer_id的随后编码(相应地,解码)的画面未使用任何层间预测。更精确地,在标志之后编码(相应地,解码)的画面未使用任何层间预测。图8例示根据特定且非限制性实施例的解码方法的另一实施例。解码器接收不同的访问单元。首先接收并解码访问单元au1。从解码的au1重构第一画面i1。然后,接收并解码第二访问单元au2。从解码的au2重构第二画面i2。画面i1和i2在它们被信号通知为用作参考画面的情况下属于相同的流s0并且存储在dpb0中。然后,切换发生。可以由向编码器发送接收s_diff流的请求的解码器请求该切换。根据变型,切换由编码器启动。在该切换之后,解码器接收两个au单元s_diff1和s_diff2。s_diff1和s_diff2(步骤10)被编码以便分别使用画面i1和i2来重构(步骤12)srp1和srp2。srp1和srp2是两个特殊的参考画面。然后将srp1和srp2放在与s1相关的dpb1中。然后,解码器接收au3,并对其进行解码。从解码的au3并且可能从dpb1的至少一个画面(时间预测),即srp1或srp2重构画面i3。i3属于第二流s1并且可能被存储在dpb1中以便将来用作重构的参考画面。然后,解码器接收au4并且对其进行解码。从解码的au4并且可能从dpb1的至少一个画面(时间预测)重构画面i4。显示画面i1、i2、i3和i4,但是不显示srp1、srp2。实际上,仅显示两个时间对齐的画面中的一个。srp1与i1是时间对齐的,而srp2与i2是时间对齐的。根据本发明的特定实施例,第一和第二序列的画面以及特殊的参考画面被编码成多层流。作为特定示例,被标识为特殊的参考画面的画面被编码为依赖于例如其中第一序列的画面被编码的基础层这样的另外的层(流s0)的可伸缩流的增强层。如果第一层需要来自第二层的信息用于解码,则第一层依赖于该第二层。增强层允许从s0的重构的参考画面重构将被用作用于重构从s0切换到s1之后的s1的画面的参考画面的特殊参考画面。该增强层例如与svc或shvc编码标准兼容。根据本发明的特定实施例,特殊参考画面通过用于对增强层进行编码的svc或shvc所提供的编码工具/模式的子集来编码。根据本发明的另外的实施例,在svc或shvc编码标准中禁用层内运动向量预测(时间预测)。相反地,激活来自s0层的帧内预测。也可以激活画面内预测。根据另外的实施例,例如通过将hevc标志slice_temporal_mvp_enable_flag设置为假来禁用时间mv预测以对s0和s1编码。这意味着运动向量预测(mv预测)使用来自重构的相邻的编码单元的mv而不是使用先前重构的参考画面的mv来建立。在下面的图9和10中,编码和解码模块被称为编码器和解码器。图9图示根据特定且非限制性实施例的多层编码器。使用作为单层编码器的第一编码器enc0,例如mpeg2、h.264或hevc兼容的编码器将第一序列的画面编码在s0中。本发明不限于所使用的单层编码器。用enc0编码的参考画面被重构为r2,并且被提供为给第三编码器enc2的输入。第二编码器enc1被用于对s1中的第二序列的画面编码。本发明不限于所使用的编码器。用enc1编码的在时间上对应于重构的参考画面r2的参考画面被重构为r1并且提供为给第三编码器enc2的输入。因此,对于enc0的dpb中的每个重构的参考画面r2,重构在时间上对应的参考画面r1。从而,编码器enc2根据可能重新调节为流s_diff的在时间上对应的重构的参考画面r2对重构的参考画面r1编码。根据特定实施例,编码器enc2包含用于从r1中减去r2(可能经过重新调节)的减法器,并且还包含用于对这样获得的可能经过变换和量化的差异画面进行编码的熵编码器。根据变型,从r1的每个块中减去预测器,其中预测器是画面r2中的空间同位置的块(可能经过重新调节)或者r2中的运动补偿的块(可能经过重新调节)或者从r1中的空间相邻的块得出(空间帧内预测)。从而获得残差,并且在可能的变换和量化之后对残差进行进一步的熵编码。在该情况下,编码在s_diff中的不是r1和r2之间的简单的逐个像素差异。标识被用于对重构的参考画面r1进行编码的重构的参考画面r2的信息info也被编码在s_diff中。编码器enc2例如与诸如svc或shvc这样的可伸缩视频编码器兼容。本发明不限于所使用的可伸缩编码器。可伸缩视频编解码标准定义将属于一个层(bl)的au与属于另外的增强层au分离/区分的layer_id指示器。根据特定实施例,来自enc0的au使用不同于被用于对来自enc2的au进行编码的layer_id的给定的layer_id进行编码。来自enc1的au和来自enc2的au具有相同的layer_id。根据有利的实施例,enc1和enc2可以是同一编码模块。图10图示根据特定且非限制性实施例的多层解码器。第一流s0使用作为例如是mpeg2、h.264或hevc兼容的解码器的单层解码器的第一解码器dec0来解码。本发明不限制于所使用的单层解码器。解码器dec0从第一流s0,具体地从存储在dpb0中的参考画面r2重构画面。第二解码器dec1用于从第二流s1重构画面。本发明不限于所使用的解码器。解码器dec2从流s_diff解码(步骤10)用于标识在dpb0中的重构的参考画面r2的信息info。解码器dec2例如与诸如svc或shvc这样的可伸缩视频解码器兼容。本发明不限于所使用的可伸缩解码器。解码器dec2进一步从可能经过重新调节的时间对齐的重构的参考画面r2以及从s_diff解码的数据(例如,残差、编码模式)重构(步骤s12)特殊参考画面r1’。根据特定实施例,解码器dec2包含用于从s_diff解码残差的熵解码器以及用于将残差添加到预测器的加法器,其中,预测器从可能经过重新调节的r2中的同位置或经运动补偿的块或者从r1’中的重构的样本(画面内预测)得出。然后将特殊参考画面r1’放在dpb1中。根据有利的实施例,dec1和dec2可以是同一解码模块。图11例示根据特定且非限制性实施例的多层流。在该图中,虚线表示画面依赖性。具有layer_id=layer_a的au1和au2被接收和解码。参考画面b1和b2根据解码的au进行重构并且存储在layer_a的dpb_a中。在切换时,具有layer_id=layer_b的aus_diff1和s_diff2被接收和解码。然后,解码器dec2根据从s_diff1和s_diff2解码的数据并且还根据分别从s_diff1和s_diff2解码的信息info_1和info_2所标识的b1和b2来重构特殊参考画面e’1和e’2。分别与b1和b2时间对齐的特殊参考画面e’1和e’2存储在layer_b的dpb_b中。然后,接收并解码au3。从该解码的au3并且还从特殊参考画面e’1和e’2重构画面e3。重构的画面e3存储在dpb_b中,因为e3用作e4的重构的参考画面。接收并解码au4。从解码的au4并且还从特殊参考画面e’2以及重构的参考画面e3来重构画面e4。接收并解码随后的au5和au6。从解码出的au5和au6重构对应的画面e5和e6。如果重构的画面被用作参考画面,则dpb_b可能通过添加e5和e6来更新。e’1优选为在对e3进行编码时所使用的重构的参考画面之一的e1的近似。e’2优选为在对e3和e4进行编码时所使用的重构的参考画面之一的e2的近似。有利地,标志f13被编码(相应地,被解码)在例如vps或sei中,指示具有给定layer_id的随后编码(相应地,解码)的解码画面未使用任何层间预测。更准确地,在标志之后编码(相应地,解码)的画面未使用层间预测。将第一和第二序列的画面以及特殊参考画面编码成多层流使得能够重构例如具有相同poc这样的时间对齐的两个参考画面(b1和e’1,或者b2和e’2)。实际上,在多层方法中使用不同的dpb。特别地,对每个层使用一个dpb。因此,时间对齐的重构的参考画面存储在不同的dpb中。由于层的依赖性,对多层流进行解码通常需要在对级别n+1的层进行解码之前对级别n的层进行解码,其中n为整数。层之间的这种依赖性不与流切换应用兼容。有利地,对标志f13进行编码引入层之间的独立性,并且因此呈现适合于流切换应用的可伸缩编码/解码。根据本发明的编码和解码方法使得能够实现灵活的流切换,同时具有仅在切换发生时的较小的比特率开销。这些方法适合于任何gop结构、任何数量的重构的参考画面,甚至在解码次序不同于显示次序时也适合。下面提供在s_diff流的shvc编码标准框架内的语法的示例。slice_typeslice_type的名称0b(b切片)1p(p切片)2i(i切片)3srp(srp切片)添加slice_type以标识特殊参考画面的切片。sign_diff_pic等于1指示应当对预测添加残差,否则指示应当对预测减去残差。pic_order_cnt_diffpic_lsb指定该特殊参考画面的画面次序计数模数maxpicordercntlsb。然后,帧内bl预测将使用具有相同pic_order_cnt的dpb中的参考画面。pic_order_cnt_lsb语法元素的长度是log2_max_pic_order_cnt_lsb_minus4+4比特。pic_order_cnt_diffpic_lsb的值应当是在0到maxpicordercntlsb–1的范围内,并且包含0和maxpicordercntlsb–1。当不存在pic_order_cnt_diffpic_lsb时,pic_order_cnt_diffpic_lsb被推断为等于0。delta_poc_msb_diffpic_cycle_lt用于确定被用于重构该特殊参考画面的dpb中的长期重构的参考画面的画面序列计数值的最高有效位的值。当不存在delta_poc_msb_cycle_lt时,其被推断为等于0。num_layer_id_diffpic_apply指示被用于对该特殊参考画面进行解码的重构的参考画面的num_layer_id。语法的示例(vps_extension):diff_pic_flag_enabled等于1指示对inter_layer_pred_for_non_diff_picture_flag编码。inter_layer_pred_for_non_diff_picture_flag等于1指示类型i、p或b的任何随后画面不使用层间预测,但是类型srp的画面可能使用层间预测,但不是时间层内预测。根据本发明并且在图9和10上所示的视频编码器和解码器例如实现为各种形式的硬件、软件、固件、专用处理器或者其组合。优选地,所述原理可以实现为硬件和软件的组合。而且,软件优选地实现为有形地实施在程序存储设备上的应用程序。应用程序可以上载到包含任何适合架构的机器,并且由该机器执行。优选地,该机器实现在具有诸如一个或多个中央处理单元(cpu)、随机存取存储器(ram)和输入/输出(i/o)接口这样的硬件的计算机平台上。计算机平台还包括操作系统和微指令码。在本文中描述的各种处理和功能可以是微指令码的一部分或经由操作系统妊的应用程序的一部分(或其组合)。另外,各种其他外围设备可以连接到该计算机平台,诸如另外的数据存储设备和打印设备。根据变型,根据本发明的编码和解码设备根据纯粹的硬件实现方式来实现,例如实现为专用组件(例如asic(专用集成电路)或fpga(现场可编程门阵列)或vlsi(超大规模集成电路))的形式,或者实现为集成在设备中的若干电子组件的形式,或者甚至是以硬件元件和软件元件混合的形式。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1