具有运动矢量偏移的基于子块的时间运动矢量预测器的制作方法

文档序号:36476749发布日期:2023-12-22 09:31阅读:111来源:国知局
具有运动矢量偏移的基于子块的时间运动矢量预测器的制作方法

本公开描述了总体上涉及视频编解码的实施例。


背景技术:

1、本文所提供的背景描述旨在整体呈现本公开的背景。目前已署名的发明人的某些工作(即已在此背景技术部分中做出描述的工作)以及本说明书的各个方面中所描述的尚未成为申请日之前的现有技术的内容,从未明示或暗示其被承认为本公开的现有技术。

2、未压缩的数字图像和/或视频可包括一系列图片,每个图片具有例如1920x1080亮度样本及相关色度样本的空间维度。该系列图片可以具有固定的或可变的图片速率(也非正式地称为帧率),例如每秒60张图片或60hz。未压缩的图像和/或视频具有特定的比特率要求。例如,每样本8比特的1080p60 4:2:0的视频(1920x1080亮度样本分辨率,60hz帧率)要求接近1.5gbit/s带宽。一小时这样的视频就需要超过600gb的存储空间。

3、图像和/或视频编码和解码的一个目的,可以是通过压缩减少输入图像和/或视频信号中的冗余。压缩可以帮助降低对上述带宽和/或存储空间的要求,在某些情况下可降低两个或更多数量级。尽管本文中的描述使用视频编码/解码作为说明性示例,但在不脱离本公开的精神的情况下,可以以类似的方式将相同的技术应用于图像编码/解码。无损压缩和有损压缩,以及两者的组合均可采用。无损压缩是指可以从压缩的原始信号中重建原始信号精确副本的技术。当使用有损压缩时,重建信号可能与原始信号不完全相同,但是原始信号和重建信号之间的失真足够小,使得重建信号可用于预期应用。有损压缩广泛应用于视频。容许的失真量取决于应用。例如,相比于电视分发应用的用户,某些消费者流媒体应用的用户可以容忍更高的失真。可实现的压缩比可以反映出:较高的允许/容许失真可产生较高的压缩比。

4、视频编码器和解码器可利用几大类技术,例如包括:运动补偿、变换处理、量化和熵编码。

5、视频编解码器技术可包括已知的帧内编码技术。在帧内编码中,在不参考先前重建的参考图片的样本或其他数据的情况下表示样本值。在一些视频编解码器中,图片在空间上被细分为样本块。当所有样本块都以帧内模式编码时,该图片可以为帧内图片。帧内图片及其衍生(例如独立解码器刷新图片)可用于复位解码器状态,并且因此可用作编码视频比特流和视频会话中的第一图片,或用作静止图像。帧内块的样本可用于变换,且可在熵编码之前量化变换系数。帧内预测可以是使预变换域中的样本值最小化的技术。在某些情况下,变换后的dc值越小,且ac系数越小,则在给定的量化步长尺寸下需要越少的比特来表示熵编码之后的块。

6、用于例如mpeg-2代编解码技术中的传统帧内编码未使用帧内预测。然而,一些较新的视频压缩技术包括:试图基于例如周围样本数据和/或元数据来执行预测的技术,其中周围样本数据和/或元数据是在数据块的编码/解码期间获得的。这种技术后来被称为“帧内预测”技术。需要注意的是,至少在某些情况下,帧内预测仅使用正在重建的当前图片的参考数据,而不使用参考图片的参考数据。

7、可存在许多不同形式的帧内预测。当在给定的视频编解码技术中可以使用超过一种这样的技术时,所使用的特定技术可编码为使用该特定技术的特定帧内预测模式。在某些情况下,帧内预测模式可具有子模式和/或参数,且这些子模式和/或参数可单独编码或包含在定义了所使用的预测模式的模式码字中。将哪个码字用于给定模式、子模式和/或参数组合会通过帧内预测影响编解码效率增益,因此用于将码字转换成比特流的熵编码技术也会出现这种情况。

8、h.264引入了一种帧内预测模式,其在h.265中进行了修正,且在诸如联合勘探模式(joint exploration model,jem)、通用视频编解码(versatile video coding,vvc)和基准集(benchmark set,bms)的更新的编解码技术中进一步被修正。通过使用已经可用的样本的相邻样本值可以形成预测块。将相邻样本的样本值按照某一方向复制到预测块中。对所使用方向的引用可以被编码在比特流中,或者本身可以被预测。

9、参照图1a,右下方描绘了来自定义在h.265中的33个可能的预测方向(对应于35个帧内模式中的33个角度模式)中已知的九个预测方向的子集。箭头会聚的点(101)表示正在被预测的样本。箭头表示样本正在被预测的方向。例如,箭头(102)表示根据右上方与水平方向成45度角的一个或多个样本,来预测样本(101)。类似地,箭头(103)表示根据样本(101)左下方与水平方向成22.5度角的一个或多个样本来预测样本(101)。

10、仍然参考图1a,在左上方示出了一个包括4×4个样本的正方形块(104)(由粗虚线表示)。正方形块(104)包括16个样本,每个样本用“s”、以及其在y维度上的位置(例如,行索引)和在x维度上的位置(例如,列索引)来标记。例如,样本s21是y维度上的第二个样本(从顶部开始)和x维度上的第一个(从左侧开始)样本。类似地,样本s44在x维度和y维度上都是块(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年)中,可以表示九种不同的方向。在h.265(2013年)中增加到了33种不同的方向。当前,jem/vvc/bms可以支持多达65个方向。已经进行了实验来识别最可能的方向,并且熵编码中的某些技术被用于使用少量比特来表示那些可能的方向,对于较不可能的方向则接受某些代价。此外,有时可以根据在相邻的、已经解码的块中所使用的相邻方向来预测方向本身。

14、图1b示出了描绘根据jem的65个帧内预测方向的示意图(110),以说明随时间增加的预测方向的数量。

15、表示方向的编码视频比特流中的帧内预测方向比特的映射可以因视频编解码技术的不同而不同。这种映射例如可以从对码字的简单直接映射到包括最可能的模式和类似技术的复杂的自适应方案。然而,在大多数情况下,视频内容中可能存在某些方向,其在统计学上比其它方向更不可能出现。由于视频压缩的目的是减少冗余,所以在运行良好的视频编解码技术中,与更可能的方向相比,那些不太可能的方向将使用更多数量的比特来表示。

16、使用具有运动补偿的帧间图片预测,可以进行图像和/或视频编码和解码。运动补偿可以是一种有损压缩技术,且可涉及如下技术:来自先前重建的图片或重建图片一部分(参考图片)的样本数据块在空间上按运动矢量(motion vector,下文称为mv)指示的方向移位后,用于新重建的图片或图片部分的预测。在某些情况下,参考图片可与当前正在重建的图片相同。mv可具有两个维度x和y,或者三个维度,其中第三个维度表示使用中的参考图片(后者间接地可为时间维度)。

17、在一些视频压缩技术中,应用于某个样本数据区域的mv可根据其它mv来预测,例如根据与正在重建的区域空间相邻的另一个样本数据区域相关的、且按解码顺序在该mv前面的那些mv来预测。这样做可以大大减少编码mv所需的数据量,从而消除冗余信息并增加压缩量。mv预测可以有效地进行,例如,当对从相机导出的输入视频信号(称为自然视频)进行编码时,存在一种统计上的可能性,即面积大于单个mv适用区域的区域,会朝着类似的方向移动,因此,在某些情况下,可以用邻近区域的mv导出的相似运动矢量进行预测。这导致针对给定区域发现的mv与根据周围mv预测的mv相似或相同,并且在熵编码之后,又可以用比直接编码mv时使用的比特数更少的比特数来表示。在某些情况下,mv预测可以是对从原始信号(即:样本流)导出的信号(即mv)进行无损压缩的示例。在其它情况下,mv预测本身可能是有损的,例如由于根据几个周围mv计算预测值时产生的取整误差。

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

19、参照图2,当前块(201)包括编码器在运动搜索处理中发现的样本,该样本可以根据空间移动了相同大小的先前块进行预测。不直接对该mv进行编码,而是通过使用与五个周围样本中的任何一个相关联的mv,从与一个或多个参考图片相关联的元数据中导出该mv,例如从最近的(按解码顺序)参考图片中导出该mv,其中,五个周围样本分别用a0、a1和b0、b1、b2(分别为202到206)表示。在h.265中,mv预测可使用相邻块正在使用的同一参考图片的预测值。


技术实现思路

1、本公开的方面提供了用于视频编码/解码的方法和装置。在一些示例中,一种用于视频解码的装置包括处理电路。在一个实施例中,该处理电路从已编码视频比特流接收当前图片中的当前块的位移矢量(displacement vector,dv)偏移信息。该当前块包括使用基于子块的时间运动矢量预测(subblock-based temporal motion vector prediction,sbtmvp)模式重建的多个子块。可以基于该当前块的dv和该当前块的dv偏移来确定该当前块的更新后的dv。该dv偏移由dv偏移信息指示。该当前块的该更新后的dv指示并置参考图片中的并置块。该并置块与该当前块并置。该处理电路基于该并置块中对应子块的运动信息确定该多个子块中的子块的运动信息,并基于该多个子块中的该子块的该运动信息重构该多个子块中的该子块。

2、在一个实施例中,该处理电路确定该更新后的dv为该dv和该dv偏移的矢量和。

3、在一个实施例中,该dv偏移信息包括在该已编码视频比特流中用信号发送的该dv偏移。

4、在一个实施例中,该dv偏移信息指示至少一个索引,该至少一个索引指示该dv偏移的幅度和该dv偏移的方向。

5、在一个示例中,该至少一个索引包括指示该dv偏移的该幅度的距离索引和指示该dv偏移的该方向的方向索引,该dv偏移的该幅度为一组预定义距离之一,且该dv偏移的该方向为一组预定义方向之一。

6、在一个示例中,在合并运动矢量差(merge motion vector difference,mmvd)模式中使用该一组预定义距离和该一组预定义方向。

7、在一个示例中,对该更新后的dv进行约束,使得该并置块位于该并置参考图片中的限制区域内。该限制区域包括对应于该当前图片中的当前ctu的并置区域,并且该当前ctu包括该当前块。

8、在一个实施例中,接收包括该当前图片的该已编码视频比特流。该当前图片包括该当前块。该当前块包括多个子块。该处理电路基于该已编码视频比特流中的语法元素,确定包括该多个子块的该当前块是以该sbtmvp模式编码的。该处理电路获得指示运动矢量偏移(motion vector offset,mvo)的该当前块的mvo信息。该mvo指示用于调整并置块在并置参考图片中的位置的dv的运动偏移。该处理电路基于该当前块的该dv和该mvo确定该当前块的更新后的dv。该更新后的dv指示该并置参考图片中的该并置块的经调整位置。该处理电路至少基于由该更新后的dv指示的该并置块中对应子块的运动信息导出该多个子块中的相应子块的sbtmvp信息,并基于该多个子块中的该子块的该sbtmvp信息以该sbtmvp模式重构该多个子块。

9、在一个实施例中,该处理电路从已编码视频比特流接收当前图片中的当前块的mv偏移信息。该当前块包括使用sbtmvp模式重建的多个子块。该处理电路确定该当前块的dv,该dv指示与该当前块并置的并置参考图片中的并置块;该处理电路基于该并置块中对应子块的运动信息确定该多个子块中的子块的运动信息,并基于该多个子块中的该子块的该运动信息和由该mv偏移信息指示的该当前块的mv偏移确定该多个子块中的该子块的更新后的运动信息。该处理电路基于该更新后的运动信息重建该多个子块中的该子块。

10、在一个示例中,该mv偏移信息包括在该已编码视频比特流中用信号发送的该mv偏移。

11、在一个示例中,该mv偏移信息指示至少一个索引,该至少一个索引指示该mv偏移的幅度和该mv偏移的方向。

12、在一个示例中,该至少一个索引包括指示该mv偏移的该幅度的距离索引和指示该mv偏移的该方向的方向索引,该mv偏移的该幅度为一组预定义距离之一,且该mv偏移的该方向为一组预定义方向之一。

13、在mmvd模式中使用该一组预定义距离和该一组预定义方向。

14、在一个示例中,该多个子块中的该子块的该运动信息包括与来自第一参考图片列表l0的第一参考图片相关联的第一mv。该处理电路确定更新后的第一mv为该第一mv和该mv偏移的矢量和,该更新后的运动信息包括该更新后的第一mv。

15、在一个示例中,该多个子块中的该子块的该运动信息包括与来自第二参考图片列表l1的第二参考图片相关联的第二mv。该处理电路确定更新后的第二mv为以下之一:(i)该第二mv和该mv偏移的矢量差;或(ii)该第二mv和缩放后的mv偏移的矢量和。该缩放后的mv偏移是基于该mv偏移、该当前图片的图片序列号(picture order count,poc)、该第一参考图片的poc和该第二参考图片的poc。

16、本公开的方面还提供一种存储指令的非暂时性计算机可读介质,该指令在由用于视频解码的计算机执行时使该计算机执行用于视频解码的方法。

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