本公开描述了总体涉及视频编解码的实施例。
背景技术:
1、本文所提供的背景描述旨在整体呈现本技术的背景。在背景技术部分以及本说明书的各个方面中所描述的目前已署名的发明人的工作所进行的程度,并不表明其在提交时作为现有技术,且从未明示或暗示其被承认为本技术的现有技术。
2、可以使用具有运动补偿的帧间图片预测来进行视频编码和解码。未压缩的数字视频可包括一系列图片,每个图片具有例如1920×1080亮度样本及相关的色度样本的空间维度。所述系列图片具有固定的或可变的图片速率(非正式地也可称为帧率),例如每秒60个图片或60hz。未压缩的视频具有特定的比特率要求。例如,以每个样本8比特的1920×1080p60 4:2:0视频(60hz帧率的1920×1080亮度样本分辨率)需要接近1.5gbit/s的带宽。一小时的此类视频需要超过600gb的存储空间。
3、视频编码和解码的一个目的,是通过压缩减少输入视频信号的冗余信息。视频压缩可以帮助降低对上述带宽和/或存储空间的要求,在某些情况下可降低两个或更多数量级。无损压缩和有损压缩,以及两者的组合均可采用。无损压缩是指从压缩的原始信号中重建原始信号精确副本的技术。当使用有损压缩时,重建信号可能与原始信号不同,但是原始信号与重建信号之间的失真小到足以使重建信号可用于预期应用。就视频而言,有损压缩广泛用。可容许失真量取决于应用;例如,某些消费流媒体应用的用户可以容许比电视分发应用的用户更高的失真。压缩比可以反映:较高的可允许/可容忍失真可以产生较高压缩比。
4、视频编码器和解码器可以利用来自若干广泛类别的技术,包括例如运动补偿、变换、量化以及熵编码。
5、视频编解码器技术可包括已知的帧内编码技术。在帧内编码中,在不参考先前重建的参考图片的样本或其它数据的情况下表示样本值。在一些视频编解码器中,图片在空间上被细分为样本块。当所有的样本块都以帧内模式编码时,该图片可以为帧内图片。帧内图片及其衍生(例如独立解码器刷新图片)可用于复位解码器状态,并且因此可用作编码视频比特流和视频会话中的第一图片,或用作静止图像。然后,可以将帧内块的样本进行变换,并且可以在熵编码之前对变换系数进行量化。帧内预测可以是使预变换域中的样本值最小化的技术。在一些情况下,变换后的dc值越小,并且ac系数越小,则在给定的量化步长尺寸下需要越少的比特来表示熵编码之后的块。
6、如同从诸如mpeg-2代编码技术中所获知的,传统帧内编码不使用帧内预测。然而,一些较新的视频压缩技术包括:根据例如周围样本数据和/或元数据进行尝试的技术,该周围样本数据和/或元数据是在空间相邻的编码和/或解码期间获取的,并且在解码顺序上先于数据块。此类技术此后被称为“帧内预测”技术。注意,在至少一些情况下,帧内预测仅使用来自重建中的当前图片的参考数据,而不使用来自参考图片的参考数据。
7、可以有许多不同形式的帧内预测。当在给定视频编码技术中可应用多于一种此类技术时,所使用的技术可以在帧内预测模式下进行编解码。在某些情况下,模式可以具有子模式和/或参数,并且这些可以单独编码或者包含在模式码字中。对于给定模式、子模式和/或参数组合,使用哪个码字可以通过帧内预测对编码效率增益产生影响,并且用于将码字转换为码流的熵编码技术也同样如此。
8、帧内预测的某种模式与h.264一起被引入,在h.265中被修正,并且在诸如联合探测模式(jem)、通用视频编码(vvc)和基准集(bms)的较新的编码技术中被进一步修正。可以使用属于已可用的相邻样本值来形成预测器块。例如,可以根据一个方向将相邻样本的样本值复制到预测器块中。对使用方向的参考可以在码流中编码,或者本身可以被预测。
9、参考图1,在右下方描绘的是在h.265的33个可能的预测器方向(对应于35个帧内模式的33个角度模式)中已知的9个预测器方向的子集。箭头会聚的点(101)表示正在被预测的样本。箭头表示预测样本所根据的方向。例如,箭头(102)指示根据与水平成45度角的右上方的一个或多个样本,预测样本(101)。类似地,箭头(103)指示根据与水平成22.5度角的样本(101)左下方的一个或多个样本,预测样本(101)。
10、仍然参考图1,在左上方示出了一个包括4×4个样本的正方形块(104)(由粗虚线表示)。正方形块(104)由16个样本组成,每个样本用“s”、以及其在y维度(例如,行索引)上的位置和在x维度(例如,列索引)上的位置来标记。例如,样本s21是y维度上的第二个样本(从顶部开始)和x维度上的第一个(从左侧开始)样本。类似地,样本s44在y维度和x维度上都是块(104)中的第四个样本。由于该块为4×4尺寸的样本,因此s44位于右下角。还示出了遵循类似编号方案的参考样本。参考样本用"r"、以及其相对于块(104)的y位置(例如,行索引)和x位置(例如,列索引)来标记。在h.264和h.265中,预测样本与重建中的块相邻;因此不需要使用负值。
11、图片内预测可以从用信号通知的预测方向所分配的相邻样本复制参考样本值来实现。例如,假设已编码视频码流包括信令,对于该块,该信令指示与箭头(102)一致的预测方向——也就是说,根据与水平方向成45度角的右上方的一个或多个预测样本来预测样本。在此类情况下,根据相同的参考样本r05来预测样本s41、s32、s23和s14。然后根据参考样本r08预测样本s44。
12、在某些情况下,例如通过插值,可以合并多个参考样本的值,以便计算参考样本,尤其是当方向不能被45度整除时。
13、随着视频编码技术的发展,可能方向的数量增加。在h.264(2003年)中,可以表示9个不同的方向。这在h.265(2013年)中增加到33个,并且jem/vvc/bms在本公开时可以支持多达65个方向。已经进行了实验来识别最可能的方向,并且可以使用熵编码中的某些技术来以少量比特对那些可能的方向进行表示,接受对可能性较小的方向的某些代价。此外,方向本身有时可以根据用于已解码块的相邻方向来进行预测。
14、图2示出了根据jem描绘65个帧内预测方向的示意图(201),以说明随着时间的推移预测方向的数量增加。
15、将已编码视频码流中的表示帧内预测方向的比特的映射可以随不同的视频编码技术而变化;并且可以例如从预测方向到帧内预测模式、到码字、到涉及最可能模式的复杂自适应方案和类似技术的简单直接映射。然而,在所有情况下,在视频内容中可能存在比某些其它方向在统计上更不可能出现的某些方向。由于视频压缩的目标是减少冗余,在运行良好的视频编码技术中,那些更不可能的方向将可以由比更可能的方向更大的比特数来表示。
技术实现思路
1、本公开的各方面提供了用于视频编码/解码的方法和设备。在一些示例中,用于视频解码的设备包括接收电路和处理电路。
2、根据本公开的一个方面,提供了一种在视频解码器中执行的视频解码的方法。在该方法中,可以从已编码视频码流,接收当前图片中的当前块的已编码信息。当前块可以被分区为多个子块。可以获得包括在已编码信息中的第一标志,其中第一标志指示交叉分量线性模型预测(cclm)是否应用于当前块,其中当前块的色度样本是基于所述当前块的已重建的亮度样本进行预测的。响应于第一标志指示cclm应用于当前块,可以基于所述cclm确定所述当前块的所述多个子块中的每一个中的所述色度样本的相应的预测样本值。还可以基于所述当前块的所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值,重建所述当前块。
3、在一个示例中,基于所述当前块的宽度等于或大于所述当前块的高度,沿宽度方向将所述当前块分区成所述多个子块。
4、在另一示例中,基于所述当前块的宽度小于所述当前块的高度,沿高度方向将所述当前块分区成所述多个子块。
5、在又一示例中,在高度方向和宽度方向上,将所述当前块分区成具有最小子块尺寸的所述多个子块。
6、在该方法中,可以获取编码信息中的语法元素。可以基于语法元素来确定最小子块尺寸。所述语法元素在序列参数集(sps)、图片参数集(pps)、切片和图块之一中。
7、在一些实施例中,基于所述多个子块的第一子块的重建的样本,确定所述多个子块的第二子块中的所述色度样本的所述预测样本值,其中第二子块与所述第一子块相邻。
8、在一些实施例中,响应于所述第一标志指示所述cclm应用于所述当前块,获取包括在所述已编码信息中的第二标志。第二标志指示cclm是否应用于所述多个子块中的每一个。响应于所述第二标志指示所述cclm应用于所述多个子块中的每一个,基于所述cclm确定所述当前块的所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值。
9、在一些实施例中,响应于已重建相邻样本与所述多个子块的第一子块的左侧相邻,基于所述cclm的第一模式,确定所述多个子块的所述第一子块中的所述色度样本的所述预测样本值,其中cclm的所述第一模式指示:基于与所述第一子块的所述左侧相邻的所述已重建相邻样本,确定所述第一子块中的所述色度样本的所述预测样本值。响应于已重建相邻样本与所述多个子块的第二子块的左侧和顶侧相邻,基于所述cclm的第二模式,确定所述多个子块的所述第二子块中的所述色度样本的所述预测样本值,其中cclm的所述第二模式指示基于与所述第二子块的所述左侧和所述顶侧相邻的所述已重建相邻样本,确定所述第二子块中的所述色度样本的所述预测样本值。
10、在一些实施例中,响应于第一标志指示cclm应用于所述当前块,获取包括在已编码信息中的第二标志,其中第二标志指示所述cclm是否应用于多个子块中的每一个。获取包括在所述已编码信息中的索引,其中索引指示所述cclm的cclm模式。cclm模式指示所述cclm应用哪些已重建相邻样本,来生成所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值。响应于第二标志指示cclm应用于所述多个子块中的每一个和索引指示所述cclm模式,使用cclm模式基于所述cclm确定所述当前块的所述多个子块中的每一个中的所述色度样本的相应的预测样本值。
11、在一些实施例中,响应于所述索引指示第一cclm模式,基于与所述多个子块中的相应一个子块的左侧和顶侧相邻的已重建相邻样本,确定所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值。响应于所述索引指示第二cclm模式,基于与所述多个子块中的所述相应一个子块的所述左侧相邻的所述已重建相邻样本,确定所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值。响应于所述索引指示第三cclm模式,基于与所述多个子块中的所述相应一个子块的所述顶侧相邻的所述已重建相邻样本,确定所述多个子块中的每一个中的所述色度样本的所述相应的预测样本值。
12、根据本公开的另一个方面,提供了一种设备。该设备包括处理电路。处理电路可以被配置为执行用于视频编解码的任何方法。
13、本公开的各方面还提供了一种存储指令的非暂时性计算机可读介质,当由用于视频编码的计算机执行指令时,该指令使计算机执行用于视频编码中的任意方法。