AMVP模式中的基于子块的运动矢量预测值及MV偏移的制作方法
- 国知局
- 2024-09-14 14:43:07
本技术公开描述了总体上涉及视频编码的实施例。
背景技术:
1、本文所提供的背景描述是出于总体上呈现本技术公开内容的目的。在该背景技术部分以及本说明书的各个方面中所描述的、目前已署名的发明人的工作所进行的程度,并不表明其在提交时有资格作为现有技术,且从未明示或暗示其被承认为本技术公开的现有技术。
2、未压缩的数字图像和/或视频可包括一系列图片,每个图片具有例如为1920×1080的亮度样本及相关联的色度样本的空间大小。该一系列图片可具有例如每秒60幅图片或60hz的固定或可变的图片速率(非正式地,还称为帧率)。未压缩的图像和/或视频具有特定比特率要求。例如,每个样本8位(在60hz帧率下,具有1920×1080亮度样本分辨率)的1080p60 4:2:0视频需要接近1.5gbit/s的带宽。一小时的此类视频需要600gb以上的存储空间。
3、图像和/或视频编码和解码的一个目的可以是通过压缩来减少输入图像和/或视频信号中的冗余。压缩可有助于减小上述带宽和/或存储空间需求,在一些情况下可减小两个数量级或大于两个数量级。虽然本文的描述使用视频编码/解码作为说明性示例,但是在不脱离本技术公开的精神的情况下,相同的技术可以以类似的方式应用于图像编码/解码。可采用无损压缩和有损压缩以及它们的组合。无损压缩指的是可以从已压缩的原始信号中重建原始信号的精确副本的技术。当使用有损压缩时,已重建的信号可能与原始信号不同,但是原始信号和已重建的信号之间的失真足够小,以使已重建的信号可用于预期的应用。在视频的情况下,广泛采用有损压缩。可容忍的失真量取决于应用;例如,某些消费流式应用的用户相比电视分布应用的用户来说可以容忍更高的失真。可实现的压缩率可以反映:更高的可容忍/可容许的失真可产生更高的压缩率。
4、视频编码器和解码器可利用来自多个宽泛类别的技术,这些技术包括例如运动补偿、变换处理、量化和熵编码。
5、视频编解码器技术可包括称为帧内编码的技术。在帧内编码中,在不参考来自先前重建的参考图片的样本或其它数据的情况下表示样本值。在一些视频编解码器中,图片在空间上细分成样本块。当所有样本块都以帧内模式编码时,该图片可以是帧内图片。帧内图片及其派生物(例如,独立解码器刷新图片)可用于重置解码器状态,因此可用作已编码视频码流和视频会话中的第一张图片,或者用作静止图像。帧内块的样本可受到变换,且可以在熵编码之前对变换系数进行量化。帧内预测可以是一种使预变换域中的样本值最小化的技术。在一些情况下,变换之后的dc值越小,且ac系数越小,则在给定的量化步长下表示熵编码之后的块所需的位越少。
6、在例如mpeg-2代编码技术中使用的传统帧内编码不使用帧内预测。然而,一些更新的视频压缩技术包括基于例如在数据块的编码和/或解码期间获得的周围样本数据和/或元数据来尝试执行预测的技术。在下文中这样的技术称为“帧内预测”技术。应注意,在至少一些情况下,帧内预测仅使用来自正在重建的当前图片的参考数据,而不使用来自参考图片的参考数据。
7、帧内预测可以有许多不同形式。当在给定的视频编码技术中可使用不止一种这样的技术时,使用中的特定技术可编码成使用该特定技术的特定帧内预测模式。在一些情况下,帧内预测模式可具有子模式和/或参数,其中,这些子模式和/或参数可单独编码或包含在模式码字中,模式码字限定正在使用的预测模式。给定的模式、子模式和/或参数组合使用哪个码字,可能会影响通过帧内预测的编码效率增益,因此可能会影响用于将码字转换成码流的熵编码技术。
8、h.264引入了某种帧内预测模式,该帧内预测模式在h.265中得到完善,且在诸如联合探索模型(joint exploration model,jem)、下一代视频编码(versatile videocoding,vvc)和基准集(benchmark set,bms)之类的更新的编码技术中进一步得到完善。可使用已经可用的样本的相邻样本值来形成预测块。相邻样本的样本值根据一方向复制到预测块中。对使用的方向的参考可以编码在码流中,或者可以对其本身进行预测。
9、参考图1a,在右下方描绘了从h.265中限定的33种可能的预测方向(对应于35个帧内模式的33个角模式)中已知的9个预测方向的子集。箭头汇聚的点(101)表示正在被预测的样本。箭头表示对样本进行预测所沿的方向。例如,箭头(102)指示从在右上方、与水平方向成45度角的一个或多个样本中预测出样本(101)。类似地,箭头(103)指示从在样本(101)的左下方、与水平方向成22.5度角的一个或多个样本中预测出样本(101)。
10、仍然参考图1a,在左上方描绘了4×4个样本的正方形块(104)(由粗体虚线指示)。正方形块(104)包括16个样本,每个样本用“s”、其在y维度上的位置(例如,行索引)和其在x维度上的位置(例如,列索引)来标记。例如,样本s21是在y维度上(从顶部开始)的第二个样本和在x维度上(从左侧开始)的第一个样本。类似地,样本s44是块(104)中的、在y维度上的第四个样本和x维度上的第四个样本。由于块的大小为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年)中,可表示九个不同的方向。在h.265(2013年)中,增加到33个方向。目前,jem/vvc/bms可支持多达65个方向。已进行实验来识别最可能的方向,且熵编码中的一些技术用于以少量比特来表示那些可能的方向,对于不太可能的方向,接受一定的代价。此外,有时可以从已经解码的相邻块中使用的相邻方向来预测方向本身。
14、图1b示出了示意图(110),其描绘了根据jem的65个帧内预测方向,以说明随着时间的推移,预测方向的数量增加。
15、已编码视频码流中表示方向的帧内预测方向位的映射,可能因视频编码技术的不同而不同。例如,这样的映射的范围可以是简单的直接映射、码字、涉及最可能模式的复杂自适应方案,以及类似技术。然而,在大多数情况下,可存在某些方向,这些方向与某些其它方向相比,在统计上在视频内容中出现的可能性较小。由于视频压缩的目标是减少冗余,因此在一种运作良好的视频编码技术中,那些不太可能的方向相比更可能的方向来说,可由更多的位数表示。
16、图像和/或视频编码和解码可使用带有运动补偿的帧间图片预测来执行。运动补偿可以是有损压缩技术,且可涉及以下技术:来自先前重建的图片或其部分(参考图片)的样本数据块在沿着由运动矢量(此后称为mv)指示的方向在空间上偏移之后,用于预测新重建的图片或图片部分。在一些情况下,参考图片可与当前正在重建的图片相同。mv可具有x和y两个维度,或具有三个维度,第三个维度指示正在使用的参考图片(间接地,第三个维度可以是时间维度)。
17、在一些视频压缩技术中,可根据其它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 video coding(高效视频编码)”,2016年12月)中描述了各种mv预测机制。在h.265提供的多种mv预测机制中,参考图2描述的是下文称为“空间合并”的技术。
19、参考图2,当前块(201)包括在运动搜索过程期间已由编码器找到的样本,可根据已产生空间偏移的相同大小的先前块来预测该样本。可以从与一个或多个参考图片相关联的元数据中导出mv,而非直接对该mv进行编码,例如使用与被标记为a0、a1和b0、b1、b2(分别对应202到206)的五个周围样本中的任一样本相关联的mv,从(按解码次序)最近的参考图片中导出该mv。在h.265中,mv预测可使用来自相邻块正在使用的相同参考图片的预测值。
技术实现思路
1、本技术公开的各方面提供了用于视频编码/解码的方法和装置。在一些示例中,一种用于视频解码的装置包括处理电路。在一个实施例中,处理电路从已编码视频码流接收当前图片中的当前块的位移矢量(dv)偏移信息。当前块包括使用基于子块的时间运动矢量预测(sbtmvp)模式重建的多个子块。可基于当前块的dv和当前块的dv偏移,确定当前块的更新后的dv。dv偏移由dv偏移信息指示。当前块的更新后的dv指示并置参考图片中的并置块。并置块与当前块并置。处理电路基于并置块中的对应子块的运动信息,确定多个子块中的子块的运动信息,并基于多个子块中的子块的运动信息,重建多个子块中的子块。在一些示例中,已编码视频码流中的当前块的已编码信息指示在当前块的已编码信息中具有运动矢量预测值(mvp)信息和运动矢量偏移(mvo)信息的高级运动矢量预测(amvp)模式。处理电路基于当前块的已编码信息中用于amvp模式的mvp信息,从mvp候选列表中选择mvp,以及使用mvp作为sbtmvp候选,来导出dv。
2、在一些示例中,处理电路构建mvp候选列表,mvp候选列表包括基于子块的合并候选列表,基于子块的合并候选列表包括一个或多个sbtmvp候选。在一个示例中,基于子块的合并候选列表包括当前块的处于预定顺序的多个空间相邻块。在另一示例中,基于子块的合并候选包括用作sbtmvp候选的零dv。
3、在一些示例中,为了中心子块运动矢量的可用性,处理电路以预定顺序检查当前块的一个或多个空间相邻块。对于当前块的空间相邻块,响应于空间相邻块的中心子块运动矢量可用,处理电路将空间相邻块作为候选添加到mvp候选列表中。响应于一个或多个空间相邻块中没有空间相邻块具有可用的中心子块运动矢量,处理电路在mvp候选列表中添加零dv。
4、在一些示例中,已编码信息指示仿射amvp模式。处理电路构建包括一个或多个sbtmvp候选的仿射amvp候选列表。
5、在一个示例中,处理电路在仿射amvp候选列表中的第一位置处插入sbtmvp候选。
6、在一些示例中,处理电路检查当前块的空间相邻块中是否存在仿射编码的块。响应于空间相邻块中没有空间相邻块被仿射编码,处理电路在仿射amvp候选列表中的第一位置处插入sbtmvp候选。响应于空间相邻块中存在仿射编码的块,处理电路在仿射amvp候选列表的最后位置处插入sbtmvp候选。
7、在一些示例中,处理电路确定已编码视频码流中的当前块的已编码信息中mvo信息的精度,mvo信息通过自适应运动矢量分辨率(amvr)以该精度编码到已编码视频码流中。处理电路基于mvo信息的精度,确定dv的运动偏移。
8、在一些示例中,处理电路通过amvr,从已编码视频码流中解码出指示mvo信息的精度的索引。
9、在一些示例中,mvo信息的精度以m个像素为单位,m是正整数。
10、在一些示例中,mvo信息的精度是1个像素、2个像素、4个像素和8个像素之一。
11、在一些示例中,处理电路还基于子块的大小,对dv的运动偏移进行缩放。
12、本技术公开的各方面还提供了一种非暂时性计算机可读介质,非暂时性计算机可读介质存储有指令,指令在由用于视频解码的计算机执行时,使得计算机执行用于视频解码的方法。
本文地址:https://www.jishuxx.com/zhuanli/20240914/295633.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表