一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于渐进解码器刷新译码和可扩展译码的编码器、解码器以及数据流的制作方法

2022-07-11 04:56:34 来源:中国专利 TAG:


1.本发明涉及对图片进行译码并且特别地对图片的连续序列进行译码。一些实施例可以利用可扩展译码和/或所谓的渐进解码器刷新(gdr)译码方案来对图片进行译码。一些实施例可以提出可扩展译码以及渐进解码器刷新改进。


背景技术:

2.在当今的视频译码中,一些场景要求非常低的时延传输。每当要求低时延端对端延迟时,因图片而异的比特率改变都是不理想的。典型地,视频以导致下者的方式被编码:编码的图片的大小不仅由于内容的复杂性特性而变化,而且还由于所使用的预测结构而变化。更具体地,典型地,视频使用预测结构来编码,该预测结构基于一些图片被编码为帧内切片(并非依赖于其它图片),并且,其它图片被编码为b或p切片(将其它图片用作参考)。显然,在未对其它图片进行预测的情况下编码的图片导致比当使用时间性相关性并且将图片编码为b或p切片时更大的大小。
3.存在使该典型的编码结构略微漂移的一些技术,其中,图片中的每个被编码,其中,块的某种混合仅使用帧内预测来编码,并且,一些块使用帧间预测来编码。在这样的情况下,不存在仅使用帧内预测来编码的图片,并且,因此(如果帧内预测的块和帧间预测的块的比率跨过所有图片都保持类似)所有图片的大小都保持类似。
4.实现更低端对端延迟是理想的,因为,与其它译码结构途径相比,最大图片的大小更小,并且因此传送它的时间也变得更短。
5.典型地,这样的结构被标识为渐进解码刷新(gdr),因为,它们与典型的译码结构的不同之处在于如下的事实:为了实现清洁(clean)图片,需要对若干图片进行解码,并且,对视频区渐进地进行解码和刷新,直到能够恰当地显示内容为止;而在典型的译码结构中,仅要求特定形式的帧内帧(随机访问点-rap)来呈现,并且能够瞬时地显示内容,而不必对更多的访问单元进行解码。
6.在对图片序列中的帧或图片的访问中,可能在所谓的调入时间与译码效率之间存在折衷。允许缩短调入时间(平均而言或在最差情况下),同时不损害译码效率的机制是理想的。此外,图片可以细分成可以在所谓的刷新周期rp中随时间被刷新的图片区域(例如,图块)。然而,标识什么区域清洁(被刷新)和什么区域未被刷新是不明确的,并且因而带来一些惩罚,诸如帧内预测不能轻易地被制约于还不清洁的(脏的(dirty))区域与清洁区域之间。


技术实现要素:

7.因而,本发明的目的是改进现有的gdr编码器、解码器以及数据流。
8.第一方面涉及一种视频数据流,该视频数据流包括图片的序列,该图片的序列包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期(rp)中的一个或多个后续图片。
视频数据流还包括参数集(sps),该参数集定义多个图片配置,该多个图片配置将图片区(例如,整个帧)细分成第一子区和第二子区,其中,一个对应于包括一个或多个刷新的图片区域(例如,图块)的刷新的子区(例如,一组图片区域),并且,另一个对应于包括一个或多个尚未刷新的图片区域的未刷新的子区。对于在刷新周期内的每个图片,视频数据流还包括用于从多个图片配置标识出对应的一个图片配置的图片配置标识符(reg_conf_idx)。
9.此外,提出了提供一种解码器,该解码器用于从数据流对出自包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期(rp)中的一个或多个后续图片的图片的序列的至少一个图片进行解码。解码器配置成从数据流读取参数集(sps),参数集(sps)定义多个图片配置,该多个图片配置将图片区(例如,整个帧)细分成第一子区和第二子区,其中,一个对应于包括一个或多个刷新的图片区域(例如,图块)的刷新的子区(例如,一组图片区域),并且,另一个对应于包括一个或多个尚未刷新的图片区域的未刷新的子区。对于刷新周期内的每个图片,解码器进一步配置成从数据流读取用于从多个图片配置标识出对应的一个图片配置的图片配置标识符(reg_conf_idx),以便对至少一个图片进行解码。
10.此外,提出了提供一种编码器,该编码器用于将出自包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期(rp)中的一个或多个后续图片的图片的序列的至少一个图片编码到数据流中。编码器配置成将参数集(sps)写入到数据流中,参数集(sps)定义多个图片配置,该多个图片配置将图片区(例如,整个帧)细分成第一子区和第二子区,其中,一个对应于包括一个或多个刷新的图片区域(例如,图块)的刷新的子区(例如,一组图片区域),并且,另一个对应于包括一个或多个尚未刷新的图片区域的未刷新的子区。对于刷新周期内的每个图片,编码器进一步配置成在数据流中设定用于多个图片配置标识出对应的一个图片配置的图片配置标识符(reg_conf_idx)。
11.第二方面涉及一种视频数据流,该视频数据流包括包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期中的一个或多个后续图片的图片的序列,其中,图片的序列的每个图片以相应的图片被细分成的块(例如,ctu)为单位循序地译码到视频数据流中。视频数据流包括隐式信令,其中,相应的图片的刷新的子区基于块译码顺序而在视频数据流中隐式地用信号通知。另外或备选地,对于每个块,视频数据流包括指示是否为下者的语法元素(例如,标志):a)块是位于相应的图片的第一子区中并且最后被译码的最后块(例如,标志:last_ctu_of_gdr_region),和/或b)块是位于相应的图片的第一子区中并且首先被译码的第一块(例如,标志:first_ctu_of_gdr_region),和/或c)块邻接限定第一子区的界线,和/或d)块位于第一子区内侧(例如,标志:gdr_region_flag)。
12.此外,提出了提供一种解码器,该解码器用于从数据流对出自包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期(rp)中的一个或多个后续图片的图片的序列的至少一个图片进行解码,其中,图片的序列的每个图片以相应的图片被细分成的块(例如,ctu)为单位从视频数据流循序地解码。解码器配置成基于块译码顺序而从数据流隐式地推导至少一个图片的刷新的子区。另外或备选地,对于每个块,解码器配置成从数据流读取指示是否为下者的语法元素(例如,标志):
a)块是位于相应的图片的第一子区中并且最后被译码的最后块(例如,标志:last_ctu_of_gdr_region),和/或b)块是位于相应的图片的第一子区中并且首先被译码的第一块(例如,标志:first_ctu_of_gdr_region),和/或c)块邻接限定第一子区的界线,和/或d)块位于第一子区内侧(例如,标志:gdr_region_flag)。
13.此外,提出了提供一种编码器,该编码器用于将出自包括至少一个渐进解码器刷新(gdr)译码的图片和刷新周期(rp)中的一个或多个后续图片的图片的序列的至少一个图片编码到数据流中,其中,图片的序列的每个图片以相应的图片被细分成的块(例如,ctu)为单位循序地编码到视频数据流中。对于每个块,编码器配置成将指示是否为下者的语法元素(例如,标志)写入到数据流中:a)块是位于相应的图片的第一子区中并且最后被译码的最后块(例如,标志:last_ctu_of_gdr_region),和/或b)块是位于相应的图片的第一子区中并且首先被译码的第一块(例如,标志:first_ctu_of_gdr_region),和/或c)块邻接限定第一子区的界线,和/或d)块位于第一子区内侧(例如,标志:gdr_region_flag)。
14.第三方面涉及一种多层可扩展视频数据流,该多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,其中,第二层中的图片的第二序列包括作为起始图片的至少一个渐进解码器刷新(gdr)图片和刷新周期中的一个或多个后续图片。多层可扩展视频数据流包括承载关于第二层的gdr图片的尚未刷新的子区将从第一层的样本进行层间预测的可能性的信息的信号通知。另外,多层可扩展视频数据流包括如下的信息:在被包含在刷新周期中的一个或多个后续图片的尚未刷新的子区中,运动向量预测被禁用,或运动向量预测非时间性地实现,或在gdr图片的尚未刷新的子区中,运动向量预测被禁用,或运动向量预测非时间性地实现。
15.此外,提出了提供一种解码器,该解码器用于对来自多层可扩展视频数据流的至少一个图片进行解码,多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,其中,第二层中的图片的第二序列包括作为起始图片的至少一个渐进解码器刷新(gdr)图片和刷新周期中的一个或多个后续图片。解码器配置成从多层可扩展视频数据流读取承载关于第二层的gdr图片的尚未刷新的子区将从第一层的样本进行层间预测的可能性的信息的信号通知。解码器进一步配置成响应于信号通知而:在被包含在刷新周期中的一个或多个后续图片的尚未刷新的子区中,禁用运动向量预测或非时间性地实现运动向量预测,或在gdr图片的尚未刷新的子区中,禁用运动向量预测或非时间性地实现运动向量预测。
16.此外,提出了提供一种编码器,该编码器用于将至少一个图片编码到多层可扩展
视频数据流中,多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,其中,第二层中的图片的第二序列包括作为起始图片的至少一个渐进解码器刷新(gdr)图片和刷新周期中的一个或多个后续图片。编码器配置成将承载关于第二层的gdr图片的尚未刷新的子区将从第一层的样本进行层间预测的可能性的信息的信号通知和如下的信息写入到多层可扩展视频数据流中:在被包含在刷新周期中的一个或多个后续图片的尚未刷新的子区中,运动向量预测被禁用,或运动向量预测非时间性地实现,或在gdr图片的尚未刷新的子区中,运动向量预测被禁用,或运动向量预测非时间性地实现。
17.第四方面涉及一种多层可扩展视频数据流,该多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,第一层和第二层中的每个包括多个时间性子层。可扩展视频数据流还包括指示第二层(例如,增强层)的哪些时间性子层通过层间预测来译码的信号通知(例如,vps_sub_layer_independent_flag[i][j])。
[0018]
此外,提出了提供一种解码器,该解码器用于对来自多层可扩展视频数据流的至少一个图片进行解码,多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,第一层和第二层中的每个包括多个时间性子层。解码器配置成通过基于从可扩展视频数据流推导的信号通知而使用层间预测来对时间性子层中的一个或多个进行解码,所述信号通知(例如,vps_sub_layer_independent_flag[i][j])指示第二层(例如,增强层)的哪些时间性子层将通过层间预测来译码。
[0019]
此外,提出了提供一种编码器,该编码器用于将至少一个图片编码到多层可扩展视频数据流中,多层可扩展视频数据流包括第一层(例如,基本层)中的图片的第一序列和第二层(例如,增强层)中的图片的第二序列,第一层和第二层中的每个包括多个时间性子层。编码器配置成通过使用层间预测并且将信号通知写入到可扩展视频数据流中来对时间性子层中的一个或多个进行编码,所述信号通知(例如,vps_sub_layer_independent_flag[i][j])指示第二层(例如,增强层)的哪些时间性子层通过层间预测来译码。
[0020]
第五方面涉及一种视频数据流,该视频数据流包括细分成图块的至少一个图片和图块重新排序标志,其中,a)如果数据流中的图块重新排序标志(例如,sps_enforce_raster_scan_flag)具有第一状态,则用信号通知图片的图块将使用按照图块遍历图片的第一译码顺序来译码,和/或b)如果数据流中的图块重新排序标志具有第二状态,则用信号通知图片的图块将使用沿光栅扫描顺序遍历图片的第二译码顺序来译码。
[0021]
此外,提出了提供一种解码器,该解码器配置成从数据流对图片进行解码,其中:a)如果数据流中的图块重新排序标志(例如,sps_enforce_raster_scan_flag)具有第一状态,则解码器配置成使用按照图块遍历图片的第一解码顺序来从数据流对图片的图块进行解码,和/或b)如果数据流中的图块重新排序标志具有第二状态,则解码器配置成使用沿光栅
扫描顺序遍历图片的第二解码顺序来从数据流对图片的图块进行解码。
[0022]
此外,提出了提供一种编码器,该编码器配置成将图片编码到数据流中,其中:a)编码器配置成将数据流中的图块重新排序标志(例如,sps_enforce_raster_scan_flag)设定成第一状态,从而指示图片的图块将使用按照图块遍历图片的第一译码顺序来译码,和/或b)编码器配置成将数据流中的图块重新排序标志设定成第二状态,从而指示图片的图块将使用沿光栅扫描顺序遍历图片的第二译码顺序来译码。
附图说明
[0023]
在下文中,本公开的实施例参考附图而更详细地描述,其中:图1显示根据实施例的渐进解码刷新概念的示意图,图2显示根据实施例的渐进解码刷新概念的示意图,图3显示根据实施例的使用图片区域的列的渐进解码刷新概念的示意图,图4显示根据实施例的使用图片区域的行的渐进解码刷新概念的示意图,图5显示根据实施例的使用图片区域的分组的渐进解码刷新概念的示意图,图6显示根据实施例的使用可扩展多层视频比特流的渐进解码刷新概念的示意图,以及图7显示根据实施例的使用具有多个时间性子层的可扩展多层视频比特流的渐进解码刷新概念的示意图。
具体实施方式
[0024]
同等或等效元素或具有同等或等效功能性的元素在以下的描述中由同等或等效参考标号指代。
[0025]
借助于框图来描绘并且参考所述框图而描述的方法步骤也可以按与所描绘和/或描述的顺序不同的顺序执行。此外,涉及装置的特定特征的方法步骤可以可用所述装置的所述特征替换,并且反之亦然。
[0026]
此外,在本公开中,用语帧和图片可以可互换地使用。
[0027]
图1显示渐进解码刷新(gdr)译码结构的示例,该译码结构与常规译码结构的不同之处在于如下的事实:为了实现清洁图片,需要对若干图片进行解码,并且对视频区渐进地进行解码和刷新,直到能够恰当地显示内容为止。形成对照的是,在常规译码结构中,仅要求呈现特定形式的帧内帧(随机访问点-rap),并且能够瞬时地显示内容,而不必对更多的访问单元进行解码。
[0028]
图1按连续顺序显示图片1011、1012、
……
、101n的序列100。每个图片1011、1012、
……
、101n可以划分成图片区域102,例如划分成图块。图块102可以被帧内译码102a或被帧间译码102b。帧内译码的图片区域102a可以提供访问,解码器可以从该访问开始访问比特流,并且从该访问开始根据渐进解码刷新(gdr)原理而对整个图片进行刷新。因此,包括这样的帧内译码的图片区域102a的帧或图片也可以被称为访问单元(au)。
[0029]
包括帧内译码的图片区域102a的图片也可以被称为gdr图片103。在该示例中,每两个图片可以是gdr图片103。因此,在该示例中,gdr增量(delta)是二。已被帧内译码的图
片区域(即,帧内译码的图片区域102a)也可以分别被称为刷新的图片区域或清洁图片区域。在访问之后还尚未译码的图片区域可以分别被称为未刷新的图片区域或脏的图片区域。
[0030]
变体a:基于全mcts刷新周期(rp)是需要等待直到对所有图片区域102进行刷新并且能够显示清洁图片为止的时间间隔。存在配置这样的比特流的不同形式。在图1中,(九个图块x每两帧新刷新的图块-1)=17帧是刷新周期(rp),即,直到所有图片区域102都被刷新为止的帧数。
[0031]
此外,在该示例中,可以每两个图片存在一个gdr图片103,即,解码器能够从其开始访问比特流并且在完整rp之后对完整图片进行解码的图片。这能够通过随时间彼此独立地对所有图片区域102进行编码(例如,被称为hevc中的mcts)并且在上文中的示例中的图片区域102之间及时使帧内译码的块102a以两帧的距离扩展来实现。
[0032]
变体b:受约束的帧间图块(参见也在上文中表示的附图2)图2显示另外的配置,其中,gdr结构能够通过下者来实现:每18帧具有gdr帧103,并且允许区域之间的依赖性(无mcts),但仅允许依赖于先前刷新的区域。在此情况下,仅一个区域利用帧内块来刷新,并且,另外的区域能够参考及时刷新的区域。这允许作为第一个显示的配置的更好的效率,因为,区域并非利用全mcts来编码。
[0033]
在图2中所显示的非限制性示例中,每18个图片存在一个gdr图片103,而刷新周期(rp)包括17帧。
[0034]
变体c:基于列图3显示另外的非限制性示例,其中,每18个图片呈现一个gdr图片103,而17帧是刷新周期(rp)。如能够看出的,该示例中的帧内译码的图片区域102a可以包括图片列,而非上文中所讨论的图片图块。
[0035]
变体d:基于行图4显示另外的非限制性示例,其中,每18个图片呈现一个gdr图片103,而17帧是刷新周期(rp)。如能够看出的,该示例中的帧内译码的图片区域102a可以包括图片行,而非上文中所讨论的图片图块。
[0036]
总之,对于gdr的所有的上文中所讨论的非限制性示例变体,如下文中的表中所显示的,rp可以是17,并且,gdr周期性可以是δ=2或δ=18。m=图块数量
rp=刷新周期δ=增量gdr,gdr图片之间的距离,即,可能的解码起点。
[0037]
评价gdr技术的另外的重要方面是显示图片所要求的调入时间,该调入时间由rp加上需要等待直到找到gdr图片103为止的时间组成。上文中的表显示在平均和最差情况下的调入时间。
[0038]
不同的gdr场景的问题:1)如上文中所讨论的,配置a是对于相同rp具有最差译码效率的配置,因为,区域被编码为mcts。然而,对于这样的配置的调入时间比对于任何配置b-d的调入时间更短得多。允许缩短调入时间(平均而言或在最差情况下)同时不损害译码效率的机制是理想的。2)如能够在b-c中看出的,区域可能并非以静态方式定义,因此减少在某种程度上使用独立区域(诸如,例如图块)的信令开销和效率惩罚。然而,标识哪些区域清洁(被刷新)并且标识哪些区域尚未被刷新可能不明确,并且因而带来一些惩罚,诸如帧内预测不能轻易地被制约于还不清洁(脏的)的区域与清洁区域之间。
[0039]
1.动态gdr区域信令为了解决因图片而异(即,从尚未刷新的图片区域到刷新的图片区域改变)的区域的问题,能够预想两种发明性途径,以避免必须将更新的pps与每一个图片一起发送的负担:
[0040]
在第一发明性途径中,图片区域的若干配置(例如,呈图块形式)可以在sps(序列参数集)或pps(图片参数集)内用信号通知,并且,切片标头可以指向指示哪个是正在用于给定的au(访问单元)的图块配置的索引。因而,可以给刷新的图片区域和尚未刷新的图片区域的动态信令提供该发明性途径。
[0041]
在本公开中,图片区可以包括整个帧101或图片101。图片区可以划分成图片子区。如在图2中的第四帧中示例性地显示的,第一图片子区101r可以仅包括刷新的图片区域102r。因此,该第一图片子区101r也可以被称为刷新的图片子区101r。另一方面,第二图片子区101u可以仅包括尚未刷新的图片区域102u。因此,该第二图片子区101u也可以被称为尚未刷新的图片子区101u。图片区域102一般可以包括图片图块(图1和图2)、图片图块列(图3)、图片图块线(图4)、译码块(例如,ctu)、译码块线、译码块行、译码块对角线、样本、样本行或样本列中的至少一个。刷新的图片区域102r可以包括刷新的图片图块(图1和图2)、刷新的图片图块列(图3)、刷新的图片图块线(图4)、刷新的译码块(例如,ctu)、刷新的译码
块线、刷新的译码块行、刷新的译码块对角线、刷新的样本、刷新的样本行或刷新的样本列中的至少一个。尚未刷新的图片区域102u可以包括尚未刷新的图片图块(图1和图2)、尚未刷新的图片图块列(图3)、尚未刷新的图片图块线(图4)、尚未刷新的译码块(例如,ctu)、尚未刷新的译码块线、尚未刷新的译码块行、尚未刷新的译码块对角线、尚未刷新的样本、尚未刷新的样本行或尚未刷新的样本列中的至少一个。
[0042]
根据本发明的第一方面的实施例,可以提供视频数据流,该视频数据流包括图片1011、1012、
……
、101n的序列100,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期rp中的一个或多个后续图片。视频数据流还包括参数集(例如,sps或pps),该参数集定义多个图片配置,该多个图片配置将图片区101(例如,整个帧)细分成第一子区101r(例如,包括图块、行、列等等的第一一个或多个图片区域102)和第二子区101u(例如,包括图块、行、列等等的第二一个或多个图片区域102),其中,一个子区对应于包括一个或多个(即,一组)刷新的图片区域(例如,图块)的刷新的子区101r,并且,另一个子区101u对应于包括一个或多个(=一组)尚未刷新的图片区域的未刷新的子区。根据发明性原理,对于刷新周期rp内的每个图片1011、1012、
……
、101n,视频数据流包括用于从多个图片配置标识出对应的一个图片配置的图片配置标识符(例如,region_configuration_idx)。
[0043]
根据另外的实施例,提出了提供一种对应的解码器,该解码器用于从数据流对出自图片1011、1012、
……
、101n的序列100的至少一个图片进行解码,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n,其中,解码器配置成从数据流读取参数集(例如,pps或sps),该参数集定义多个图片配置,该多个图片配置将图片区(例如,整个帧)101细分成第一子区101r和第二子区101u,其中,一个对应于包括一个或多个刷新的图片区域(例如,刷新的图块)102r的刷新的子区(例如,一组刷新的图片区域)101r,并且,另一个对应于包括一个或多个尚未刷新的图片区域102u的未刷新的子区101u。对于刷新周期(rp)内的每个图片1011、1012、
……
、101n,解码器可以进一步配置成从数据流读取用于从多个图片配置标识出对应的一个图片配置的图片配置标识符(region_configuration_idx),以便对至少一个图片1011、1012、
……
、101n进行解码。
[0044]
根据另外的实施例,提出了提供一种对应的编码器,该编码器用于将出自图片1011、1012、
……
、101n的序列100的至少一个图片编码到数据流中,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n,其中,编码器配置成将参数集写入到数据流中,该参数集定义多个图片配置,该多个图片配置将图片区101细分成第一子区101r和第二子区101u,其中,一个对应于包括一个或多个刷新的图片区域102r的刷新的子区101r,并且,另一个对应于包括一个或多个尚未刷新的图片区域102u的未刷新的子区101u。对于刷新周期(rp)内的每个图片1011、1012、
……
、101n,编码器进一步配置成在数据流中设定图片用于从多个图片配置标识出对应的一个图片配置的配置标识符,以便对至少一个图片1011、1012、
……
、101n进行解码。
[0045]
根据另外的实施例,提出了提供一种对应的方法,该方法用于从数据流对出自图片1011、1012、
……
、101n的序列100的至少一个图片进行解码,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n,该方法包括如下的步骤:从数据流读取参数集,该参数集定义多个图片配置,该多个图片配
置将图片区101细分成第一子区101r和第二子区101u,其中,一个对应于包括一个或多个刷新的图片区域102r的刷新的子区101r,并且,另一个对应于包括一个或多个尚未刷新的图片区域102u的未刷新的子区101u。该方法还包括如下的步骤:针对刷新周期(rp)内的每个图片1011、1012、
……
、101n而从数据流读取用于从多个图片配置标识出对应的一个图片配置的图片配置标识符,以便对至少一个图片1011、1012、
……
、101n进行解码。
[0046]
根据另外的实施例,提出了提供一种对应的方法,该方法用于将出自图片1011、1012、
……
、101n的序列100的至少一个图片编码到数据流中,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n,该方法包括如下的步骤:将参数集写入到数据流中,该参数集定义多个图片配置,该多个图片配置将图片区101细分成第一子区101r和第二子区101u,其中,一个对应于包括一个或多个刷新的图片区域102r的刷新的子区101r,并且,另一个对应于包括一个或多个尚未刷新的图片区域102u的未刷新的子区101u。该方法还包括如下的步骤:针对刷新周期(rp)内的每个图片1011、1012、
……
、101n而在数据流中设定用于从多个图片配置标识出对应的一个图片配置的图片配置标识符。
[0047]
如上文中所提到的,图片1011、1012、
……
、101n的序列100可以以不同方式译码。例如,图片1011、1012、
……
、101n的序列100可以以使得帧内预测不跨越第一子区101r与第二子区101u之间的边界方式译码。另外或备选地,图片1011、1012、
……
、101n的序列100可以以使得刷新的子区101r的时间性预测不参考尚未刷新的子区101u的方式译码。另外或备选地,图片1011、1012、
……
、101n的序列100可以以使得上下文模型推导不跨越第一子区101r与第二子区101u之间的边界的方式译码。
[0048]
根据有利的实施例,对应的一个图片配置指示被包含在图片的序列100的当前译码的图片1011、1012、
……
、101n中的刷新的图片区域102r和尚未刷新的图片区域102u。
[0049]
根据另外的有利的实施例,出自多个图片配置的每个图片配置可以包括一组区域索引,该一组区域索引用于用信号通知哪些图片区域102是刷新的图片区域102r和哪些图片区域102是未刷新的图片区域102u。这提供刷新的图片区域102r和尚未刷新的图片区域102u的显式信令。
[0050]
例如,如所显示并且先前参考图1和图2而讨论的,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成一个或多个图块102。在此情况下,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些图片图块102是刷新的图片图块102r和哪些图片图块102是未刷新的图片图块102u的一组图块索引。因而,在一个实施例中,区域配置可以包含一组图块索引。
[0051]
根据另外的实施例,如参考图3而示例性地讨论的,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成图片图块列,其中,出自多个图片配置的每个图片配置包括用于用信号通知哪些图片列是刷新的图片列102r和/或哪些图片列是未刷新的图片列102u的至少一个列索引。因此,区域配置可以包含图块列索引。
[0052]
根据另外的实施例,如参考图4而示例性地讨论的,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成图片图块行,其中,出自多个图片配置的每个图片配置包括用于用信号通知哪些图片行是刷新的图片行102r和/或哪些图片行是未刷新的图片行102u的至少一个行索引。因此,区域配置可以包含图块行索引。
[0053]
图片区域也可以由译码块表示,例如由ctu(译码树单元)表示。
[0054]
根据另外的实施例,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成译码块(例如,ctu)行,其中,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些译码块行是刷新的译码块行102r和/或哪些译码块行是未刷新的译码块行102u的至少一个行译码块索引。因此,区域配置可以包含ctu行索引。
[0055]
根据另外的实施例,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成译码块(例如,ctu)列,其中,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些译码块列是刷新的译码块列102r和/或哪些译码块列是未刷新的译码块列102u的至少一个列译码块索引。因此,区域配置可以包含ctu列索引。
[0056]
根据另外的实施例,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成译码块(例如,ctu)对角线,并且其中,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些译码块对角线是刷新的译码块对角线102r和/或哪些译码块对角线是未刷新的译码块对角线102u的至少一个对角线译码块索引。因此,区域配置可以包含ctu对角线的一个或多个索引。
[0057]
图片区域也可以由样本表示。
[0058]
根据另外的实施例,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成样本行,其中,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些样本行是刷新的样本行102r和/或哪些样本行是未刷新的样本行102u的至少一个样本行索引。因此,区域配置可以包含一个或多个样本行索引。
[0059]
根据另外的实施例,被包含在图片的序列100中的图片1011、1012、
……
、101n可以细分成样本列,其中,出自多个图片配置的每个图片配置可以包括用于用信号通知哪些样本列是刷新的样本列102r和/或哪些样本列是未刷新的样本列102u的至少一个样本列索引。因此,区域配置可以包含一个或多个样本列索引。
[0060]
根据又一另外的实施例,对应的一个图片配置可以在切片标头中和/或在视频数据流的访问单元分割符中用信号通知。
[0061]
然后,切片标头将指示使用哪一种配置:
[0062]
另外或备选地,关于所使用的区域配置的信息被包括到访问单元分割符(aud)中。
[0063]
根据另外的实施例,提出了提供一种视频数据流,该视频数据流包括图片1011、1012、
……
、101n的序列100,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n。图片1011、1012、
……
、101n的序列100的每个图片可以以相应的图片被细分成的块102(例如,ctu)为单位循序地译码到视频数据流中。视频数据流可以包括隐式信令,其中,相应的图片1011、1012、
……
、101n的刷新的
子区102r基于块译码顺序而在视频数据流中隐式地用信号通知。
[0064]
而且,提出了一种相应的解码器,即,用于从数据流对出自图片1011、1012、
……
、101n的序列100的至少一个图片进行解码的解码器,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期rp中的一个或多个后续图片。图片1011、1012、
……
、101n的序列100的每个图片可以以相应的图片被细分成的块102(例如,ctu)为单位从视频数据流循序地解码。解码器可以配置成基于块译码顺序而从数据流隐式地推导至少一个图片的刷新的子区102r。
[0065]
而且,提出了一种相应的编码器,即,用于将出自图片1011、1012、
……
、101n的序列100的至少一个图片编码到数据流中的编码器,序列100包括至少一个渐进解码器刷新(gdr)译码的图片103和刷新周期rp中的一个或多个后续图片。图片1011、1012、
……
、101n的序列100的每个图片可以以相应的图片被细分成的块102(例如,ctu)为单位循序地编码到视频数据流中。编码器可以配置成基于块译码顺序而从数据流隐式地推导至少一个图片的刷新的子区101r。
[0066]
因而,在该途径中,可以使用区域边界的基于ctu的信令。每个ctu(图片区域)102可以包含指示它是否为gdr区域103的最后一个ctu 102的标志(其能够是cabac译码的)。该信令影响例如用于帧内预测和/或cabac重置的样本的可用性。这样的途径的益处是,它更灵活,不限于参数集中所定义的固定网格。
[0067]
因而,根据实施例,语法元素用于指示出自图片1011、1012、
……
、101n的序列100的图片101的刷新的子区101r与尚未刷新的子区101u之间的边界和/或用于指示哪个子区是刷新的子区101r和哪个子区是尚未刷新的子区101u。
[0068]
在每个ctu 102指示它是否为gdr区域103中的最后一个ctu的情况下,标识区域中的最后一个ctu 102是否意味着在行或列方面的最后一个ctu 102是有益的。这样的指示可以在参数集中进行,例如,在sps中进行。在sps中进行。
[0069]
例如,标志region_horizontal_flag等于1可以指示ctu中的最后一个ctu标志指示水平分割。在其它情况下,为竖直分割。
[0070]
因而,根据另外的实施例,提出了一种视频数据流、编码器以及解码器,其中,在语法元素指示下者的情况下:a)块102是位于相应的图片101的刷新的子区101r中并且最后被译码的最后块,视频数据流包括用于指示是否为下者的另外的语法元素(例如,region_horizontal_flag):a1)块102是刷新的子区101r的一行或多行块102的最后译码的块,或a2)块102是刷新的子区101r的一列或多列块102的的最后译码的块。
[0071]
根据另外的实施例,另外的语法元素可以指示最后块是从相应的图片101细分成块102所根据的译码分裂树的水平分割(例如,region_horizontal_flag=1)还是从竖直分割推导。
[0072]
在另外的实施例中,可以指示该区域是否为帧内预测中断,即,另一个区域的近邻不可用于预测或cabac等等。因而,视频数据流可以包括用于指示下者的帧内预测中断指示:例如,如果邻近的图片区域102u被包含在尚未刷新的子区101u中,则所述邻近的图片区域102u的邻近的块102不可用于预测。
[0073]
在上文中所定义的两种情况下,所使用的区域的网格可以与ctu大小对齐。换而言之,刷新的子区101r可以包括布置于与相应的图片101细分成的块102的大小对齐的网格中的一个或多个刷新的图片区域102r。
[0074]
在迄今为止描述的实施例中,区域中的哪个为刷新(清洁)的区域和未刷新的(脏的)区域不一定是已知的。在此情况下,所有区域都被认为是在以下的方面中的全部或一些方面中彼此“独立”:
·
帧内预测中断,即,另一个区域的近邻不可用于预测,
·
空间性/时间性mv预测
·
cabac
[0075]
备选地,该信令隐式地指示:最左区域101r是清洁区域,并且,帧内块的可用性针对该区域而受约束,即,对于以下的方面中的全部或一些,最左区域中的块102不能使用另一个(非最左)区域的块:
·
帧内预测中断,即,另一个区域的近邻不可用于预测,
·
空间性/时间性mv预测
·
cabac
[0076]
因而,根据实施例,隐式信令可以用信号通知以块译码顺序的预确定位置处的第一块102(例如,左上角的第一ctu)是刷新的子区101r的一部分。
[0077]
作为对于刷新的区域102r和尚未刷新的区域102u的上文中所描述的隐式推导的备选方案,本发明的一些实施例可以提供显式信令,其中,提出了一种视频数据流、相应的编码器以及相应的解码器,其中,对于每个块102,视频数据流可以包括指示是否为下者的语法元素:a)块102是位于相应的图片的第一子区101r中并且最后被译码的最后块(例如,标志:last_ctu_of_gdr_region),和/或
b)块102是位于相应的图片的第一子区101r中并且首先被译码的第一块(例如,标志:first_ctu_of_gdr_region),和/或c)块102邻接限定第一子区101r的界线,和/或d)块102位于第一子区101r内侧(例如,标志:gdr_region_flag)。
[0078]
换而言之,作为对于刷新的区域102r和尚未刷新的区域102u的上文中所描述的隐式推导的备选方案,提出了如在以下的实施例中讨论的那样的显式地指示哪个区域是清洁区域102r和哪个区域不是清洁区域102r。
[0079]
在实施例中,除了指示gdr区域103的结束之外,还可以例如通过使用标志(cabac译码的)来在ctu级下指示gdr区域103的开始。u级下指示gdr区域103的开始。
[0080]
这将有助于mcts式刷新途径(参见图1),其中,刷新的区域101r始终被独立地译码。
[0081]
在另一个实施例中,如果启用水平区域分割,则仅可以在图块102的第一ctu列中用信号通知基于ctu的区域开始和/或结束标志,并且,如果启用竖直区域分割,则仅可以在图块102的第一ctu行中用信号通知基于ctu的区域开始和/或结束标志。
[0082]
因而,根据实施例,相应的图片101的图片区域可以竖直地细分成一个或多个切片102,其中,对于每个切片102,语法元素(例如,标志:last_ctu_of_gdr_region//标志:first_ctu_of_gdr_region)用信号通知。
[0083]
根据另外的实施例,相应的图片101的图片区域可以水平地细分成一行或多行块102,其中,语法元素(例如,标志:last_ctu_of_gdr_region//标志:first_ctu_of_gdr_region)i.仅在第一行中用信号通知,或ii.在每一行中用信号通知。
[0084]
在另一个实施例中,基于ctu的(cabac译码的)标志可以用信号通知,从而指示ctu 102是否为gdr刷新区域103的一部分。
[0085]
在另一个实施例中,gdr刷新区域103的ctu开始和/或结束索引可以在切片标头中用信号通知。
[0086]
上文中所描述的实施例的益处之一是,图片区域可以与图块102的使用解耦,并且,由此扫描顺序可能不受影响。在使用gdr的大多数应用中,期望低延迟传输。为了实现低延迟传输,所发送的所有分组都应当具有相同大小,而不仅仅是所有au。典型地,在那些低延迟场景下,每个au可以分割成多个分组,并且,为了实现所有分组都具有相同大小(或非常相似),每个分组应当具有相同量的被刷新(属于清洁区101r)的块102r和相同量的未被刷新(属于脏区101u)的块102u。
[0087]
图5显示图片1011、1012、
……
、101n的序列100的非限制性示例,其中,每个图片1011、1012、
……
、101n可以分割成多个分组501a、501b、
……
、501n。为了实现所有分组都具有相同大小(或非常相似),每个分组501a、501b、
……
、501n可以具有相同量的被刷新(属于清洁区101r)的块102r和相同量的未被刷新(属于脏区101u)的块102u。
[0088]
如果图块曾用于该目的,则将使用图块扫描顺序,并且,因此分组501a、501b、
……
、501n可能不具有相同量的被刷新(属于清洁区101r)的块102r和相同量的未被刷新(属于脏区101u)的块102u。
[0089]
在另一个实施例中,使用图块,但语法元素添加到强制遵循光栅扫描而非图块扫描的参数集。例如,sps_enfoce_raster_scan_flag。在此情况下,将使用光栅扫描,并且将不会在比特流内发生字节对齐,以便使ctu开始新图块。
[0090]
因而,根据实施例,提出了一种视频数据流,该视频数据流包括细分成图块102的至少一个图片101和图块重新排序标志(例如,sps_enforce_raster_scan_flag),其中,a)如果数据流中的图块重新排序标志具有第一状态,则用信号通知图片101的图块102将使用按照图块遍历图片101的第一译码顺序来译码,和/或b)如果数据流中的图块重新排序标志具有第二状态,则用信号通知图片101的图块102将使用沿光栅扫描顺序遍历图片101的第二译码顺序来译码。
[0091]
另外的实施例提出了一种可以配置成从数据流对图片101进行解码的对应的解码器,其中:a)如果数据流中的图块重新排序标志(例如,sps_enforce_raster_scan_flag)具有第一状态,则解码器配置成使用按照图块遍历图片101的第一解码顺序来从数据流对图片101的图块102进行解码,和/或b)如果数据流中的图块重新排序标志具有第二状态,则解码器配置成使用沿光栅扫描顺序遍历图片101的第二解码顺序来从数据流对图片101的图块102进行解码。
[0092]
如在上文中参考图5而提到的,解码器可以配置成使用渐进解码刷新(gdr)途径来对图片101进行解码,其中,图片101可以是图片1011、1012、
……
、101n的序列100的一部分,序列100包括至少一个gdr译码的图片103和一个或多个后续图片,其中,图片101被逐块解码并且划分成多个分组501a、501b、
……
、501n,其中,两个或更多个分组(并且优选地,每个分组)包括相同量的被刷新的块102r和/或相同量的尚未被刷新的块102u。
[0093]
另外的实施例提出了配置成将图片101编码到数据流中的对应的编码器,其中:a)编码器可以配置成将数据流中的图块重新排序标志(例如,sps_enforce_raster_scan_flag)设定成第一状态,从而指示图片101的图块102将使用按照图块遍历图片101的第一译码顺序来译码,和/或b)编码器配置成将数据流中的图块重新排序标志设定成第二状态,从而指示图片101的图块102将使用沿光栅扫描顺序遍历图片101的第二译码顺序来译码。
[0094]
2.可扩展gdr制约在gdr针对可扩展比特流而进行的情况下,也许有可能具有其中实现最高质量的如本文中所讨论的rp,而同时能够实现更小的低质量rp(lqrp),其中,处于最高质量的尚未刷新的区域101u可以用更低层的低质量内容的样本替代。
[0095]
图6显示使用具有第一层(例如,基本层-bl)601和第二层(例如,增强层-el)602的可扩展比特流600的gdr途径的非限制性示例,其中,第二层(例如,增强层-el)602中的尚未刷新的图片子区101u中的缺失的刷新的区域(例如,尚未刷新或未刷新的图片区域)102u能够用第一层(例如,基本层-bl)601的刷新的图片子区201r的刷新的图片区域202r的升采样的样本替代。
[0096]
在一个实施例中,el 602的解码过程将管理定义的gdr区域的状态(自gdr以来是否被刷新过),并且针对每个区域而指示是否针对每层而使其初始化过。如果未使区域初始化,则将实行针对该区域的参考层601的重采样过程,并且,将替代样本值。由此,当在包含el gdr图片103的访问单元处开始解码时,更高层的图片能够立即对用户呈现,从而在rp的进程期间渐进地更新到el质量。
[0097]
然而,比特流中的约束对于运作上文中的规程为必要的。
[0098]
因而,根据实施例,提出了一种多层可扩展视频数据流600,多层可扩展视频数据流600包括第一层(例如,基本层)601中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)602中的图片1011、1012、
……
、101n的第二序列100。第二层602中的图片1011、1012、
……
、101n的第二序列100可以包括作为起始图片的至少一个渐进解码器刷新(gdr)图片103和刷新周期(rp)中的一个或多个后续图片,其中,多层可扩展视频数据流600可以包括信号通知,该信号通知承载关于第二层602的gdr图片103的尚未刷新的子区101u将从第一层601的样本202r进行层间预测的可能性的信息。信号通知可以进一步承载如下的信息:
·
在被包含在刷新周期(rp)中的一个或多个后续图片的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现,或
·
在gdr图片103的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现。
[0099]
在一个实施例中,对于gdr图片103中的未刷新的区域101u,tmvp(时间性运动向量
预测)或子块tmvp(即,基于语法的运动向量预测)可以禁用,使得当样本102u被升采样的bl样本202r替代时,随后的el图片1011、
……
、101n能够使用替代的样本202r来预测,这与使用如在无约束的情况下将发生的错误运动向量相比而显著地减少编码器/解码器漂移。
[0100]
因此,该方面的基本原理提出了提供多层可扩展视频数据流600,其中,从第一层601的样本202r进行的所述层间预测可以包括由第一层601的刷新的样本202r的升采样的版本替代gdr图片103的尚未刷新的子区101u的一个或多个样本102u。
[0101]
另外的实施例提出gdr图片103的整个尚未刷新的子区101u的所有样本102u都可以被第一层601的刷新的样本202r的升采样的版本替代,使得来自第二层602中的译码的图片的第二序列100的图片1011、1012、
……
、101n可以立即可对用户呈现。
[0102]
另外的实施例提出第二层100的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u可以使用来自第一层601的升采样的替代样本202r来通过层内预测(例如,在第二层602内侧)而刷新,升采样的替代样本202r渐进地更新到第二层602的刷新的样本102r。
[0103]
在另一个实施例中,合并列表中的受tmvp或子块tmvp候选影响的组合的运动向量候选被禁止,使得当样本101u被升采样的bl样本202r替代时,随后的el图片不依赖于解码器侧上的不正确的运动向量。
[0104]
在另一个实施例中,相同的约束对于解码器侧运动向量细化(dmvr)(即,基于参考样本值的运动向量细化)是起作用的,这在其它情况下也将导致割断伪影。
[0105]
因而,根据实施例,以下的译码概念中的至少一个被禁用,以便对被包含在刷新周期(rp)中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u进行译码:
·
时间性运动向量预测(tmvp)
·
高级时间性运动向量预测(atmvp)
·
受tmvp影响的候选,例如,合并列表中的受tmvp或子块tmvp影响的运动向量候选
·
解码器侧运动向量细化(dmvr)
[0106]
根据另外的实施例,以下的译码概念中的至少一个被禁用,以便对gdr图片103的尚未刷新的子区101u进行译码:
·
时间性运动向量预测(tmvp)
·
高级时间性运动向量预测(atmvp)
·
受tmvp影响的候选,例如,合并列表中的受tmvp或子块tmvp影响的运动向量候选
·
解码器侧运动向量细化(dmvr)并且其中,dmvr被禁用,以便对被包含在刷新周期rp中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u进行译码。
[0107]
在另一个实施例中,具有gdr的译码的层独立于其它层而被译码,并且,在比特流中表达样本替代能够使用具有用于样本替代的足够的内容的所指示的其它层来实行。因而,根据该实施例,第二层602可以独立于第一层601或独立于任何另外的层而被译码,并且其中,如果在gdr图片103处随机地访问图片1011、1012、
……
、101n的第二序列100,则信号通知指示第二层602的gdr图片103的尚未刷新的子区101u将从第一层601或具有足够的内容的任何预确定的(指示的)另外的层的样本202r进行层间预测。
[0108]
在另一个实施例中,上文的制约可以采取依赖于所标识的刷新的区域和未刷新的区域的比特流要求的形式。
[0109]
此外,根据该方面,进一步提出了提供对应的编码器、解码器、用于编码的方法以及用于解码的方法。
[0110]
根据实施例,提出了提供一种用于对来自多层可扩展视频数据流600的至少一个图片进行解码的解码器,多层可扩展视频数据流600包括第一层(例如,基本层)601中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)602中的图片1011、1012、
……
、101n的第二序列100。第二层602中的图片1011、1012、
……
、101n的第二序列100可以包括作为起始图片的至少一个渐进解码器刷新(gdr)图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n。解码器可以配置成从多层可扩展视频数据流600读取承载关于第二层602的gdr图片103的尚未刷新的子区101u将从第一层601的样本202r进行层间预测的可能性的信息的信号通知,并且其中,解码器进一步配置成响应于信号通知而:
·
在被包含在刷新周期(rp)中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u中禁用运动向量预测或非时间性地实现运动向量预测,或
·
在gdr图片103的尚未刷新的子区101u中禁用运动向量预测或非时间性地实现运动向量预测。
[0111]
根据另外的实施例,提出了提供一种用于将至少一个图片编码到多层可扩展视频数据流600中的编码器,多层可扩展视频数据流600包括第一层(例如,基本层)601中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)602中的图片1011、1012、
……
、101n的第二序列100,其中,第二层602中的图片1011、1012、
……
、101n的第二序列100包括作为起始图片的至少一个渐进解码器刷新(gdr)图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n。编码器可以配置成将承载关于第二层602的gdr图片103的尚未刷新的子区101u将从第一层601的刷新的样本202r进行层间预测的可能性的信息的信号通知写入到多层可扩展视频数据流600中。信号通知可以进一步承载如下的信息:
·
在被包含在刷新周期(rp)中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现,或
·
在gdr图片103的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现。
[0112]
根据另外的实施例,提出了提供一种用于对来自多层可扩展视频数据流600的至少一个图片进行解码的方法,多层可扩展视频数据流600包括第一层(例如,基本层)601中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)602中的图片1011、1012、
……
、101n的第二序列100,其中,第二层602中的图片1011、1012、
……
、101n的第二序列100包括作为起始图片的至少一个渐进解码器刷新(gdr)图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n。该方法包括从多层可扩展视频数据流600读取承载关于第二层602的gdr图片103的尚未刷新的子区101u将从第一层601的刷新的样本202r进行层间预测的可能性的信息的信号通知的步骤。该方法还可以包括响应于信号通知而执行以下的动作中的至少一个的步骤:
·
在被包含在刷新周期(rp)中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u中,禁用运动向量预测或非时间性地实现运动向量预测,或
·
在gdr图片103的尚未刷新的子区101u中,禁用运动向量预测或非时间性地实现运动向量预测。
[0113]
根据另外的实施例,提出了提供一种用于将至少一个图片编码到多层可扩展视频数据流600中的方法,多层可扩展视频数据流600包括第一层(例如,基本层)601中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)602中的图片1011、1012、
……
、101n的第二序列100,其中,第二层602中的图片1011、1012、
……
、101n的第二序列100包括作为起始图片的至少一个渐进解码器刷新(gdr)图片103和刷新周期(rp)中的一个或多个后续图片1012、
……
、101n。该方法包括将承载关于第二层602的gdr图片103的尚未刷新的子区101u将从第一层601的样本202r进行层间预测的可能性的信息的信号通知写入到多层可扩展视频数据流600中的步骤。信号通知可以进一步包含如下的信息:在被包含在刷新周期(rp)中的一个或多个后续图片1012、
……
、101n的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现,或在gdr图片103的尚未刷新的子区101u中,运动向量预测被禁用,或运动向量预测非时间性地实现。
[0114]
3.关于可扩展视频中的层依赖性可扩展视频对于大量流传输系统具有许多益处。例如,通过使用不同版本的内容和/或不同分辨率的相关性,与具有不同版本和/或不同分辨率的若干独立的比特流(同播(simulcast))相比,总体压缩效率大幅度地提高。这可能导致在服务器和cdn处的存储方面大大地节省,从而降低流传输服务的部署成本。
[0115]
然而,传送到终端装置的可扩展比特流的译码效率低于在它将是单层比特流的情况下的对应的译码效率。即,起因于一些信令开销,层间预测伴有效率损失。理想地,应当实行联合优化,该联合优化以与单层版本相比而不会大幅度地增大每个版本的大小为条件而减小若干版本的所要求的存储容量,即,所有版本的总体比特率。这能够通过不论au是否使用层间预测,都评价所描述的优化问题并且针对每一个au而标记来实现。
[0116]
在先前的标准中,这已通过利用更低层中的可丢弃标志来将那些图片标记为可丢弃而进行。备选地,切片也能够标记未使用中间层。
[0117]
然而,那些机制并非非常灵活的,并且通过促进在流中的一些图片的层依赖性方面的独立性(例如,能够如在图7中所显示的示例中那样高效地丢掉层)来阻碍高效文件格式使用,其中,当用户对l1感兴趣时,能够丢掉l0 tid 1,因为,l1 tid1图片不使用层间预测。
[0118]
图7显示本发明的另外的方面的非限制性示例。多层可扩展比特流700可以包括第一层(例如,基本层)701和第二层(例如,增强层)702。比特流700可以相比于示例性地描绘的两个层701、702而包括更多。
[0119]
第一层701和第二层702中的每个可以包括两个或更多个时间性子层。例如,第一层701可以包括第一时间性子层701a和第二时间性子层701b。第二层702可以包括第一时间性子层702a和第二时间性子层702b。
[0120]
如利用箭头710来示例性地描绘的,被包含在层701、702中的一些图片可以被帧内译码。例如,层701的时间性子层701b的图片2012可以通过参考相同层701的不同的时间性子层701b的一个或多个图片2011、2013来被帧内译码。
[0121]
备选地,如利用箭头711来示例性地指示的,被包含在层701、702中的一些其它图
片可以被帧间译码。例如,层702的时间性子层702a的图片1011可以通过参考不同层701的时间性子层701a的图片2011来被帧间译码。例如,第二层(例如,增强层)702的第一时间性子层702a的图片1011可以通过参考第一层(例如,基本层)701的第一时间性子层701a的图片2011来被帧间译码。
[0122]
根据实施例,被包含在层的某一时间性子层中的图片可以仅参考被包含在不同层的时间性子层中但具有相同的时间性子层层次(hierarchy)的图片。例如,被包含在第二层702的第一时间性子层702a中的图片2011可以仅参考也被包含在第一时间性子层701a中但属于第一层701的图片1011。即,第一时间性子层701a、702a具有相同的时间性子层层次。
[0123]
在图7中所显示的非限制性示例中,只有被包含在第二层702的第一子层702a中的图片(在此:具有奇数索引)1011、1013、1015、
……
、101n可以通过参考第一层701的第一子层701a的图片(在此:具有奇数索引)2011、2013、2015、
……
、201n来被帧间译码。
[0124]
可能不用于帧间译码的任何时间性子层可以被丢掉特别地,具有比用于帧间译码的预确定的时间性子层更高的时间性子层层次的任何时间性子层可以被丢掉。
[0125]
因而,如图7的非限制性示例中所显示的,如果用户对第二层702感兴趣,则能够看出仅对被包含在第二层702的第一时间性子层702a中的图片进行帧间译码。即,仅参考被包含在第一层701的第一时间性子层701a中的图片2011、2013、
……
、201n。因此,仅对第一层701的第一时间性子层701a感兴趣。进而,不参考被包含在第一层701的第二时间性子层701b中的图片2012、2014、
……
、201
n-1
,并且,因此对第一层701的第二时间性子层701b不感兴趣并且可以将其丢掉。
[0126]
通常,能够看出,信令开销对比特流700中的更高的时间性子层更不利。例如,实现所描述的特征的高效方式将是例如将每两个图片编码为依赖的,或例如将每四个图片编码为使用层间依赖性(注释:如果图片在具有层间依赖性的情况下被译码,则图片可以被称作为依赖的,并且,如果图片在无层间依赖性的情况下被译码,则图片可以被称作为独立的)。
[0127]
因此,在实施例中,层依赖性进一步指示依赖层内的时间性子层是否依赖于更低层。
[0128]
这能够例如在如下文中所显示的vps(或sps)中进行:
vps_sub_layer_independent_flag[i][j]等于1指定被包含在具有索引i的层中的具有索引j的(时间性)子层不使用层间预测。vps_sub_layer_independent_flag[i][j]等于0指定被包含在具有索引i的层中的具有索引j的(时间性)子层可以使用层间预测。
[0129]
因而,根据实施例,提出了提供一种多层可扩展视频数据流700,多层可扩展视频数据流700包括第一层(例如,基本层)701中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)702中的图片1011、1012、
……
、101n的第二序列100,第一层701和第二
层702中的每个包括多个时间性子层701a、701b;702a、702b。可扩展视频数据流700可以包括指示第二层(例如,增强层)702的哪些时间性子层702a、702b可以通过层间预测来译码的信号通知(例如,vps_sub_layer_independent_flag[i][j])。
[0130]
根据另外的实施例,提出了提供一种用于对来自多层可扩展视频数据流700的至少一个图片进行解码的对应的解码器,多层可扩展视频数据流700包括第一层(例如,基本层)701中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)702中的图片1011、1012、
……
、101n的第二序列100,第一层701和第二层702中的每个包括多个时间性子层701a、701b;702a、702b。解码器可以配置成通过基于从可扩展视频数据流700推导的信号通知(例如,vps_sub_layer_independent_flag[i][j])而使用层间预测来对时间性子层701a、701b;702a、702b中的一个或多个进行解码,所述信号通知指示第二层702的哪些时间性子层702a、702b将通过层间预测来译码。
[0131]
根据另外的实施例,提出了提供一种用于将至少一个图片编码到多层可扩展视频数据流700中的对应的编码器,多层可扩展视频数据流700包括第一层(例如,基本层)701中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)702中的图片1011、1012、
……
、101n的第二序列100,第一层701和第二层702中的每个包括多个时间性子层701a、701b;702a、702b。编码器可以配置成通过使用层间预测来对时间性子层701a、701b;702a、702b中的一个或多个进行编码,并且配置成将信号通知(例如,vps_sub_layer_independent_flag[i][j])写入到可扩展视频数据流700中,所述信号通知指示第二层702的哪些时间性子层702a、702b通过层间预测来译码。
[0132]
根据另外的实施例,提出了提供一种用于对来自多层可扩展视频数据流700的至少一个图片进行解码的对应的方法,多层可扩展视频数据流700包括第一层(例如,基本层)701中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)702中的图片1011、1012、
……
、101n的第二序列100,第一层701和第二层702中的每个包括多个时间性子层701a、701b;702a、702b。该方法包括通过基于从可扩展视频数据流700推导的信号通知而使用层间预测来对时间性子层702a、702b中的一个或多个进行解码的步骤,所述信号通知(例如,vps_sub_layer_independent_flag[i][j])指示第二层702的哪些时间性子层702a、702b将通过层间预测来译码。
[0133]
根据另外的实施例,提出了提供一种用于将至少一个图片编码到多层可扩展视频数据流700中的对应的方法,多层可扩展视频数据流700包括第一层(例如,基本层)701中的图片2011、2012、
……
、201n的第一序列200和第二层(例如,增强层)702中的图片1011、1012、
……
、101n的第二序列100,第一层701和第二层702中的每个包括多个时间性子层701a、701b;702a、702b。该方法包括通过基于从可扩展视频数据流700推导的信号通知而使用层间预测来对时间性子层702a、702b中的一个或多个进行编码的步骤,所述信号通知(例如,vps_sub_layer_independent_flag[i][j])指示第二层702的哪些时间性子层702a、702b通过层间预测来译码。
[0134]
如先前所提到的,时间性子层可以包括时间性子层层次,例如,第一时间性子层、第二时间性子层、第三时间性子层等等。层的时间性子层层次可以借助于被包含在视频数据流700中的上文中所提到的信号通知中的时间性标识符(例如,语法元素)来指示。
[0135]
在上文中进一步参考图7而解释了可以丢掉在预确定的时间性子层层次之上的不
感兴趣的时间性子层(因为,它们不用于帧间预测)。因而,可能存在指示使用层间预测所高达的某一时间性子层层次的一种阈值。这意味着,高达该阈值和低于该阈值的时间性子层可以用于层间预测,而高于该阈值的时间性子层不可以用于层间预测。后者可以被丢掉。该阈值可以由预确定的一个时间性子层指示。例如,可以在视频数据流700中用信号通知层间预测可以仅高达层的第二时间性子层而使用。因而,第二时间性子层形成用于层间预测的阈值。因此,第一时间性子层和第二时间性子层可以被进行层间预测,而具有在预确定的第二时间性子层(阈值)之上的时间性子层层次的任何另外的时间性子层可以被丢掉。
[0136]
前面提到的时间性标识符可以指示阈值,即,可以使用层间预测所高达的时间性子层层次。反过来说,时间性标识符可以指示阈值,即,可以从其而不使用层间预测的时间性子层层次。
[0137]
因而,根据实施例,视频数据流700中的信号通知可以包括预确定的时间性标识符(阈值),可以在不进行层间预测的情况下,从预确定的时间性标识符对第二层702的时间性子层702a、702b进行译码。
[0138]
这意味着,第二层702的包括具有高于预确定的时间性标识符(阈值)的值的时间性标识符的那些时间性子层702a、702b在不进行层间预测的情况下被译码。在图7中所显示的示例中,预确定的时间性标识符参考第一时间性子层702a,因为,仅第一时间性子层702a通过层间预测来译码。因此,第一时间性子层702a上方的所有时间性子层(在此,第二时间性子层702b)以及任何更高的时间性子层(若存在)在不进行层间预测的情况下被译码。
[0139]
进而,第二层702的包括具有高达或低于预确定的时间性标识符(阈值)的值的时间性标识符的那些时间性子层702a、702b利用层间预测来译码。在图7中所显示的示例中,预确定的时间性标识符参考第一时间性子层702a,因为,仅第一时间性子层702a通过层间预测来译码。
[0140]
因此,如果信号通知(例如,vps_sub_layer_independent_flag[i][j])可以指示第二层702的时间性子层702b不使用更低层701的时间性子层701b来进行层间预测,则更低层701的该时间性子层701b可以被标记为可从多层可扩展视频数据流700丢弃或从多层可扩展视频数据流700丢弃或丢掉。
[0141]
在另一个实施例中,启用标志被包括到vps中,以指示sub_layer_independent_flag是否被包括到vps中或所有子层是否默认都依赖于更低层。
[0142]
因而,根据实施例,多层可扩展视频数据流700还可以包括用于指示信号通知(例如,vps_sub_layer_independent_flag[i][j])是否被包括在多层可扩展视频数据流700中的语法元素(例如,vps中的enable_flag)。若不包括,则第二层702的所有时间性子层702a、702b可以默认都依赖于更低层701。
[0143]
如上文中所提到的,实现所描述的特征的高效方式将是例如将每两个图片编码为依赖的或例如将每四个图片编码为使用层间依赖性。
[0144]
因而,根据实施例,编码器可以配置成将图片的第二序列100的连续图片(例如,每两个图片)1012、1014、
……
、101
n-1
的第一预确定行编码为依赖的或将图片的第二序列100的连续图片(例如,每四个图片)的第二预确定行编码为使用层间依赖性。
[0145]
尽管已在设备的情境下描述一些方面,但显然这些方面也表示对应的方法的描述,其中,块或装置对应于方法步骤或方法步骤的特征。类似地,在方法步骤的情境下描述
的方面也表示对应的设备的对应的块或项目或特征的描述。
[0146]
方法步骤的一些或全部可以通过(或使用)如例如微处理器、可编程计算机或电子电路那样的硬件设备来执行。在一些实施例中,最重要的方法步骤中的一个或多个可以由这样的设备执行。
[0147]
依赖于某些实现方式要求,本发明的实施例能够以硬件实现或以软件实现或至少部分地以硬件实现或至少部分地以软件实现。实现方式能够使用数字存储介质(例如,软盘、dvd、蓝光、cd、rom、prom、eprom、eeprom或闪速存储器)来实行,该数字存储介质具有存储于其上的电子可读的控制信号,该控制信号与可编程计算机系统合作(或能够与其合作),使得实行相应的方法。因此,数字存储介质可以是计算机可读的。
[0148]
根据本发明的一些实施例包括数据载体,该数据载体具有电子可读的控制信号,该控制信号能够与可编程计算机系统合作,使得实行本文中所描述的方法之一。
[0149]
一般而言,本发明的实施例能够实现为具有程序代码的计算机程序产品,程序代码是操作性的,以便当计算机程序产品在计算机上运行时,实行方法之一。程序代码可以例如存储于机器可读载体上。
[0150]
其它实施例包括存储于机器可读载体上的用于实行本文中所描述的方法之一的计算机程序。
[0151]
换而言之,因此,发明性方法的实施例是一种计算机程序,该计算机程序具有用于当计算机程序在计算机上运行时实行本文中所描述的方法之一的程序代码。
[0152]
因此,发明性方法的另外的实施例是一种数据载体(或数字存储介质或计算机可读介质),该数据载体包括记录于其上的用于实行本文中所描述的方法之一的计算机程序。数据载体、数字存储介质或所记录的介质典型地是有形和/或非暂时性的。
[0153]
因此,发明性方法的另外的实施例是一种数据流或信号序列,该数据流或信号序列表示用于实行本文中所描述的方法之一的计算机程序。该数据流或信号序列可以例如配置成经由数据通信连接(例如,经由互联网)转移。
[0154]
另外的实施例包括配置成或适于实行本文中所描述的方法之一的处理部件,例如计算机或可编程逻辑装置。
[0155]
另外的实施例包括一种计算机,该计算机具有安装于其上的用于实行本文中所描述的方法之一的计算机程序。
[0156]
根据本发明的另外的实施例包括配置成将用于实行本文中所描述的方法之一的计算机程序转移(例如,电子地或光学地)到接收器的设备或系统。接收器可以例如是计算机、移动装置、存储器装置等等。该设备或系统可以例如包括用于将计算机程序转移到接收器的文件服务器。
[0157]
在一些实施例中,可编程逻辑装置(例如,现场可编程门阵列)可以用于实行本文中所描述的方法的功能性中的一些或全部。在一些实施例中,现场可编程门阵列可以与微处理器合作,以便实行本文中所描述的方法之一。一般而言,该方法优选地通过任何硬件设备来实行。
[0158]
本文中所描述的设备可以使用硬件设备或使用计算机或使用硬件设备和计算机的组合来实现。
[0159]
本文中所描述的方法可以使用硬件设备或使用计算机或使用硬件设备和计算机
的组合来实行。
[0160]
虽然本公开已参考说明性实施例而描述,但本描述不旨在在限制性的意义上解释。说明性实施例的各种修改和组合以及本公开的其它实施例将在参考本描述时对本领域技术人员显而易见。因此,旨在所附权利要求包含任何这样的修改或实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献