用于算术编解码的块级窗口大小更新的制作方法

文档序号:35931390发布日期:2023-11-05 06:24阅读:46来源:国知局
用于算术编解码的块级窗口大小更新的制作方法

本公开描述了一组高级视频编解码技术。更具体地,所公开的技术涉及用于算术编解码的块级窗口大小更新。


背景技术:

1、本文中提供的背景技术描述是为了大体上呈现本技术的上下文。在此背景技术部分描述的程度上,当前署名的发明人的工作,以及在本技术提交时可能不具有作为现有技术的资格的描述的各方面,既不明确认为也不隐含认为是本技术的现有技术。

2、视频编码和解码可以使用具有运动补偿的图片间预测,未压缩的数字视频可包括一系列的图片,每个图片具有一定的空间维度,例如,具有1920×1080的亮度样本和相关的全色度样本或子采样的色度样本。所述一系列的图片可以具有固定的或可变的图片速率(可替换地称为帧率),例如,每秒60个图片或每秒60个帧。未压缩的视频对于流式传输或数据处理有着特定的比特率要求。例如,具有1920×1080的像素分辨率、每秒60帧的帧率以及每个颜色通道每个像素8比特的4:2:0的色度下采样的视频需要接近1.5gbit/s的带宽。这样的视频一小时需要超过600gb的存储空间。

3、视频编码和解码的一个目的可以是通过压缩来减少未压缩的输入视频信号中的冗余。压缩可有助于降低上述带宽和/或存储空间的要求,在一些情况下,可降低两个或更多的数量级。无损压缩和有损压缩以及其组合均可以用于视频编码和解码。无损压缩是指可以由压缩的原始信号通过解码过程重建原始信号的精确副本的技术。有损压缩是指原始视频信号在编码过程中未完全保持、在解码过程中不可完全恢复的编码/解码过程。当使用有损压缩时,重建的信号可能与原始信号不完全一致,但是使原始信号与重建的信号之间的失真小得足以致使重建的信号可以用于预期应用,虽然有一些信息损失。对于视频,有损压缩广泛应用于许多应用中。有损压缩可容许的失真量取决于应用。例如,与电影或电视广播应用的用户相比,某些视频流式传输应用的消费者用户可以容忍较高的失真。特定编码算法可实现的压缩比可以选择或调节,以反应各种失真容差:可容许的失真越高,通常允许使用可产生较高损失和较高压缩比的编码算法。

4、视频编码器和解码器可以使用几大类技术和步骤,包括例如运动补偿、傅里叶变换、量化和熵编码。

5、视频编解码技术可以包括帧内编码技术。在帧内编码技术中,样本值的表示不参考先前已重建的参考图片中的样本或其它数据。在一些视频编解码技术中,将图片从空间上划分为样本块。当所有的样本块都是通过帧内模式进行编码时,该图片可以称作帧内图片。帧内图片以及他们的衍生图片,例如,独立解码器刷新的图片,可以用于对解码器的状态进行重置,因此可以用作已编码视频码流和视频会话中的第一幅图片,或者作为一副静止图片。然后可以将经过帧内预测的块的样本变换到频域,并且可以在进行熵编码之前,对如此生成的变换系数进行量化。帧内预测表示一种将样本值在预变换域最小化的技术。在一些情况下,变换后的dc值越小以及ac系数越小,给定量化步长大小的情况下,表示熵编码后的块所需的比特数量越少。

6、传统的帧内编码技术,例如,已知的mpeg-2编码技术并不使用帧内预测。然而,一些较新的视频压缩技术包括尝试基于例如邻近的样本数据和/或元数据对块进行编码/解码的技术,所述邻近的样本数据和/或元数据是在对与正在帧内编码或解码中的数据快空间上相邻且解码顺序上在先的数据块进行编码和/或解码的过程中获得的。因此,这种技术称为“帧内预测”技术。请注意,至少在一些情况下,帧内预测仅使用正在重建的当前图片中的参考数据,而不使用其他参考图片中的参考数据。

7、帧内预测可以有很多种不同的形式。当给定的视频编码技术中有一个以上的这种技术可用时,该使用中的技术可以称作帧内预测模式。一个或多个帧内预测模式可以提供在特定的编解码中。在某些情况下,一些模式具有子模式和/或与各种参数相关联,视频块的模式/子模式信息和帧内编码参数可以单独编码或者可以集体包含在模式码字中。某个给定模式/子模式和/或参数的组合使用何种码字,会通过帧内预测影响到编码效率增益,将码字转译为码流所用的熵编码技术同样对其也会产生影响。

8、h.264标准引入了某个模式的帧内预测,h.265标准对其进行了改进,在较新的编码技术中,例如,联合探索模型(jem)、通用视频编码(vvc)、基准集合(bms)等等,对其进一步进行了改进。通常,对于帧内预测,预测子(predictor)块可以使用已经可用的相邻的样本值形成。例如,可以将沿着特定方向和/或行的特定集合的相邻样本的可用值复制到预测子块中。所使用的方向的参考可以编码到码流中,或者其本身可以预测。

9、参考图1a,在其右下方描绘的是h.265标准的33个可能的帧内预测子方向(predictor direction)(对应于h.265标准中规定的35个帧内模式的33个角度模式)中已知的一个具有9个预测子方向的子集。其中,各箭头的汇聚点(101)表示正在预测中的样本。箭头表示使用相邻样本对101处的样本进行预测的方向。例如,箭头(102)表示根据与水平轴成45度角度的右上角的一个或多个相邻样本,对样本(101)进行预测。类似地,箭头(103)表示根据与水平方向成22.5度角度的左下角的一个或多个相邻样本,对样本(101)进行预测。

10、仍参考图1a所示,图1a的左上方描绘的是一个具有4×4个样本的正方形块(104)(用加粗的虚线表示)。正方形块(104)包括16个样本,每个样本标记有“s”、其在y维度上的位置(例如,行索引)以及其在x维度上的位置(例如,列索引)。例如,样本s21是在y维度上的第二个(从上往下数)、x维度上的第一个(从左往右数)样本。类似地,样本s44是在块(104)中x维度和y维度上都是第四的样本。因为该块的大小是4×4个样本,所以s44是在其右下角。图1a进一步示出了示例参考样本,参考样本遵循类似的编号方法。参考样本标记有r、其相对于所述块(104)的y位置(例如,行索引)和x位置(例如,列索引)。在h.264标准和h.265标准中,使用与重建中的块紧邻的预测样本。

11、块104的帧内图片预测可以开始于根据信号表示的预测方向,通过复制相邻样本的参考样本值。例如,假设已编码视频码流中包含有信令,对于所述块104,该信令表示了箭头(102)的预测方向,即,根据与水平方向成45度角度的右上角的一个或多个参考样本对所述块中的样本进行预测。在这种情况下,样本s41、s32、s23、s14是根据同一个参考样本r05进行预测的。样本s44是根据参考样本r08进行预测的。

12、在某些情况下,可以例如通过插值,组合多个参考样本的值,以便计算一个参考样本;特别是当方向不能被45度整除时。

13、随着视频编码技术的不断发展,可能的方向的数量也在增加。在h.264标准(2003年)中,例如,9个不同的方向可用于帧内预测。在h.265标准(2013年)中,增加到33个方向。到本技术发明时,jem/vvc/bms可以支持多达65个方向。目前已经进行了一些实验研究帮助识别最合适的帧内预测方向,一些熵编码技术用很少的比特数对这些最合适的方向进行编码,对于方向,接受一定的比特代价。此外,有时候这些方向本身是可以根据相邻的已解码的块在帧内预测时所使用的相邻方向进行预测的。

14、图1b示出了一个描绘根据jem的65个帧内预测方向的示意图(180),用于说明各种编码技术中预测方向的数量随着时间的变化而增加。

15、在已编码视频码流中将表示帧内预测方向的比特映射到预测方向随视频编码技术的不同而不同;例如,变化范围可以是从简单直接地将帧内预测模式的预测方向映射到码字,到涉及最有可能的模式和类似技术的复杂的自适应方案。然而,在所有这些情况下,依据统计,相对于其它方向而言,某些用于帧内预测的方向比较不可能出现在视频内容中。由于视频压缩的目的是减少冗余,因此,在性能较好的视频编码技术中,与比较可能的方向相比,这些比较不可能出现的方向会用较多的比特来表示。

16、帧内预测或帧间预测可以基于运动补偿。在运动补偿中,来自先前已重建图片或其一部分(参考图片)的样本数据块,在由运动矢量(此后称为mv)指示的方向上空间移位之后,可以用于预测新重建的图片或图片部分(例如,块)。在一些情况下,参考图片可与当前正在重建的图片相同。mv可具有两个维度x和y,或三个维度,第三维度指示使用中的参考图片(即时间维度)。

17、在一些视频压缩技术中,适用于某一样本数据区域的当前mv,可根据其它mv进行预测,例如,根据与正在重建的区域空间相邻、且解码顺序在所述mv之前的另一样本数据区域相关的其它mv进行预测。这样做,通过消除相关联mv冗余,可充分减少对所述mv编码所需的总数据量,从而提高压缩效率。举例来说,mv预测可有效地运作,因为当对源自相机的输入视频信号(称为天然视频)进行编码时,存在如下的统计可能性:比单个mv适用的区域大的区域,在视频序列中类似方向上移动,且因此,可在一些情况下使用从相邻区域的mv导出的类似运动矢量进行预测。这使得给定区域中的实际mv与根据周围mv预测的mv类似或相同。这样的mv,在熵编码之后,与在直接对mv编码而不是根据相邻mv预测的情况下所使用的比特数量相比,可以用较少的比特数表示。在一些情况下,mv预测可以是从原始信号(即:样本流)导出的信号(即:mv)的无损压缩的实例。在其它情况下,mv预测本身可能是有损的,例如是由于在根据周围若干mv计算预测子时的取整误差导致的。

18、h.265/hevc(itu-t h.265建议书,“高效视频编解码(high efficiency videocoding)”,2016年12月)中描述了各种mv预测机制。在h.265规定的多种mv预测机制中,下文描述的是称为“空间合并”的技术。

19、具体地,参考图2所示,当前块(201)包括编码器在运动搜索过程中找到的、可从与当前块大小相同的前一个块(已经空间移位)预测的样本。所述mv不是直接进行编码,而是可以使用与五个周围样本(记作a0、a1、b0、b1、b2(分别是202至206))中任何一个周围样本相关联的mv,从与一个或多个参考图片(例如,最近的(按解码顺序)参考图片)相关联的元数据推导出。在h.265中,mv预测可以使用与其相邻块使用的参考图片相同的参考图像的预测子。

20、开放媒体联盟视频1(aomedia video 1,av1)是一种开放的视频编解码格式,设计用于通过因特网传输视频。它是在vp9的代码基础上开发出来的,是vp9的后续版本,并融入了其它技术。av1码流规范包括参考视频编解码器,例如h.265或高效视频编码(hevc)标准或多功能视频编码(vvc)。


技术实现思路

1、本公开的实施例提供了用于视频编解码的方法和装置,该方法和装置具有用于算术编解码的块级窗口大小更新。概率更新速率可以是解析码流时相关联语法/上下文出现次数的计数的函数。它也可以是相关联语法/上下文的不同符号值的数量的函数。在块级,用预定义的值重启计数的值。特定语法/上下文的概率或累积分布函数(cdf)更新速率可以在块级,用预定义的值重新初始化。

2、在一个实施例中,一种在解码视频码流时更新窗口大小的方法,包括:当更新窗口大小时,确定多个语法的计数;计算概率更新速率为相关联语法的计数的函数;以及在块级,用预定义的值重启计数的值。概率更新速率是相关联语法的不同符号值数量的函数。所述方法包括将语法的概率值从另一帧复制到当前帧;以及用预定义的值重启用于每一帧的计数的每个值。重启是在编码单元(cu)级、预测单元(pu)级、变换单元(tu)级、编码树单元(ctu)级或在指定块大小级。用于重启的块大小用高级语法指定,高级语法包括视频参数集(vps)、图片参数集(pps)、序列参数集(sps)、自适应参数集(aps)、图片头、帧头、条带头、图块头或编码树单元(ctu)头。重启后的计数的预定义的值包括2n的值,其中,n是整数。重启取决于语法,对于不同的语法,用不同的方式控制概率更新速率。概率更新速率应用于特定的语法组,使得取决于语法组,在不同的时间重启概率更新速率,以及取决于语法组,以不同的值重启概率更新速率。在块级发信号通知一标志,以指示所选语法组是否会重启计数器以更新概率更新速率。

3、在另一实施例中,一种用于解码视频码流的装置包括存储指令的存储器和与存储器通信的处理器,其中当处理器执行指令时,处理器被配置为使装置:维护上下文出现次数的计数;基于计数,确定用于上下文的累积分布函数(cdf)更新速率;以及在块级,用计数的预定义的值重新初始化cdf。重新初始化是在编码单元(cu)级、预测单元(pu)级、变换单元(tu)级、编码树单元(ctu)级或在指定块大小级。用于重新初始化的块大小包括高级语法,其中高级语法包括视频参数集(vps)、图片参数集(pps)、序列参数集(sps)、自适应参数集(aps)、图片头、帧头、条带头、图块头或编码树单元(ctu)头。预定义的值包括对应于均匀分布的值。在编码或解码期间,预定义的值在预定的实例中存储。cdf的重新初始化取决于上下文,对于不同的上下文,用不同的方式控制cdf。对于特定的上下文组进行重新初始化。取决于上下文组,重新初始化是在不同的时间,并且取决于上下文组,重新初始化是在不同的值。在块级发信号通知一标志,以指示所选上下文组是否会重新初始化计数器用于更新cdf。上下文被分为不同的组,每组能够一起重新初始化cdf,且由一个标志控制。处理器被配置为使装置:将cdf更新速率从另一帧复制到当前帧;以及用预定义的值重启用于每一帧的计数的每个值。

4、在一些其它实施例中,公开了一种用于处理视频信息的设备。该设备可以包括被配置为执行以上实现中的任一个的电路系统。

5、本公开的实施例还提供了存储指令的非易失性计算机可读介质,这些指令在由计算机执行以用于视频解码和/或编码时,使计算机执行视频解码和/或编码。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1