掌桥专利:专业的专利平台
掌桥专利
首页

使用参考图片重新采样的视频编码和解码

文献发布时间:2024-07-23 01:35:21


使用参考图片重新采样的视频编码和解码

技术领域

本公开属于视频压缩领域,并且至少一个实施方案更具体地涉及使用参考图片重新采样预测图片的块。

背景技术

为了实现高压缩效率,图像和视频译码方案通常采用预测和变换以充分利用视频内容中的空间和时间冗余。一般来讲,帧内或帧间预测用于利用帧内或帧间相关,然后对在原始图像块与预测图像块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵译码。在编码期间,例如,通常使用诸如四叉树之类的各种分区方式将原始图像块分区/分成子块。为了重建视频,通过对应于预测、变换、量化和熵译码的逆过程对压缩数据进行解码。

用于译码和解码的现有方法存在一些局限性。因此,需要改进现有技术。

发明内容

通过本文所述的一般方面解决和处理现有技术的缺点和不足。

第一方面涉及一种方法,该方法包括:针对当前图像,从当前图像的先前重建的块获得运动矢量候选和对参考图片的相关联的参考索引的列表;将运动矢量候选与成本相关联,其中当参考图片的大小不同于当前图像的大小时,将成本设置为默认成本;以及根据与运动矢量候选相关联的成本来对运动矢量候选的列表进行重新排序。

第一方面的一个变型包括基于相邻重建样本根据模板中包括的样本确定成本。在第一方面的一个变型中,默认成本是零。在第一方面的一个变型中,默认成本是任意大值。

第二方面涉及一种方法,该方法用于解码表示视频的图片的块的数据,包括根据第一方面或其变型中的任一者来预测视频的图片的块;以及使用该重建块对图片数据进行解码。

第三方面涉及一种方法,该方法用于编码表示视频的图片的块的数据,包括根据第一方面或其变型中的任一者来预测视频的图片的块;以及使用该重建块对图片数据进行编码。

第四方面涉及一种用于解码图片数据的装置,该装置包括解码器,该解码器被配置为:根据第一方面或其变型中的任一者来预测视频的图片的块;以及使用该重建块对图片数据进行解码。

第五方面涉及一种用于编码图片数据的装置,该装置包括编码器,该编码器被配置为:根据第一方面或其变型中的任一者来预测视频的图片的块;以及使用该重建块对图片数据进行编码。

根据至少一个实施方案的另一个一般方面,提供了一种非暂态计算机可读介质,该非暂态计算机可读介质包括根据所描述的编码实施方案或变型中的任一者生成的数据内容。

根据至少一个实施方案的另一个一般方面,提供了一种计算机程序产品,该计算机程序产品包括指令,当由计算机执行程序时,该指令使计算机执行所述编码/解码实施方案或变型中的任一个实施方案或变型。

附图说明

图1示出了根据实施方案的视频编码器的框图。

图2示出了根据实施方案的视频解码器的框图。

图3示出了在其中实现各个方面和实施方案的系统的示例的框图。

图4示出了编码器侧的参考图片重新采样的原理。

图5示出了解码器侧的参考图片重新采样的原理。

图6示出了局部照明补偿(LIC)的原理。

图7示出了用于用模板匹配对合并候选的自适应重新排序(ARMC-TM)(也称为自适应合并列表(AML))的子组候选重新排序。

图8A示出了用于AML的子组候选重新排序过程。

图8B示出了根据第二实施方案的变型的用于AML的子组候选重新排序过程。

图9示出了在模板匹配的一些情况下所需的隐式重新缩放。

图10示出了用于自适应解码器侧运动矢量修正(自适应DMVR)的过程。

图11示出了模式0的示例中的双边匹配的过程。

图12A示出了将候选添加到列表所需的条件。

图12B示出了根据第五实施方案的将候选添加到列表所需的条件。

图13A示出了根据至少一个实施方案的使用参考图片重新采样的解码的示例的流程图。

图13B示出了根据至少一个实施方案的使用参考图片重新采样的解码的示例的流程图。

具体实施方式

各种实施方案涉及一种视频译码系统,其中,在至少一个实施方案中,提出了使视频译码工具适配于对参考图片重新缩放(RPR)的使用,其中参考图片具有与要译码或解码的当前图片不同的大小。此后提出了不同的实施方案,这些实施方案引入一些工具修改以在启用RPR时增加译码效率并且改善编解码器一致性。其中,提出了基于该原理的编码方法、解码方法、编码装置、解码装置。

此外,尽管描述了与VVC(通用视频译码)的特定草案或与HEVC(高效视频译码)规范或与ECM(增强压缩模型)参考软件相关的原理,但本发明方面不限于VVC或HEVC或ECM,并且可应用于例如其他标准和推荐(无论是预先存在的还是未来开发的)以及任何此类标准和推荐的扩展(包括VVC和HEVC和ECM)。除非另外指明或技术上排除在外,否则本申请中所述的方面可单独或组合使用。

本文使用的首字母缩略词反映了视频译码发展的当前状态,并且因此应当被认为是可以在稍后阶段重新命名而仍然表示相同技术的命名的示例。

图1示出了根据实施方案的视频编码器100的框图。设想了该编码器100的变型,但是为了清楚起见,下文描述了编码器100而没有描述所有预期的变型。在被编码之前,视频序列可以经历预编码处理(101),例如,将颜色变换应用于输入彩色图片(例如,从RGB 4:4:4至YCbCr 4:2:0的转换),或者执行输入图片分量的重新映射,以便获得对压缩更有弹性的信号分布(例如,使用颜色分量中的一者的直方图均衡化),或者在译码之前调整图片的大小。元数据可与预处理相关联并且附接到位流。

在编码器100中,图片由如下文所述的编码器元件进行编码。要被编码的图片在例如CU的单元中进行分区(102)和处理。例如,使用帧内模式或帧间模式对每个单元进行编码。当以帧内模式对单元进行编码时,该单元执行帧内预测(160)。在帧间模式中,执行运动估计(175)和运动补偿(170)。编码器决定(105)要使用帧内模式或帧间模式中的哪一者对单元进行编码,以及通过例如预测模式标志来指示帧内/帧间决策。预测残差例如通过从原始图像块中减去(110)预测块进行计算。

然后,对预测残差进行变换(125)和量化(130)。对量化的变换系数以及运动矢量和其他语法元素进行熵译码(145)以输出位流。编码器可以跳过变换,并将量化直接应用于未变换的残差信号。编码器可以绕过变换和量化两者,即,在不应用变换或量化过程的情况下直接对残差进行译码。

编码器对编码块进行解码,以提供进一步预测的参考。对量化的变换系数进行解量化(140)和逆变换(150)以对预测残差进行解码。通过将解码的预测残差和预测块进行组合(155)重建图像块。向重建图片应用环路滤波器(165)以执行例如解块/SAO(样本自适应偏移)滤波、自适应环路滤波器(ALF)滤波,以减少编码伪影。滤波的图像存储在参考图片缓冲器(180)处。

图2示出了根据实施方案的视频解码器200的框图。在解码器200中,位流由如下文所述的解码器元件进行解码。视频解码器200一般执行与编码步骤相反的解码步骤。编码器100通常还执行视频解码作为对视频数据进行编码的一部分。具体地,解码器的输入包括视频位流,该视频位流可以由视频编码器100生成。首先,对位流进行熵解码(230)以获得变换系数、运动矢量和其他译码信息。图片分区信息指示如何对图片进行分区。因此,解码器可根据解码图片分区信息来划分(235)图片。对变换系数进行解量化(240)和逆变换(250)以对预测残差进行解码。通过将解码的预测残差和预测块进行组合(255)重建图像块。预测块可以从帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)。环内滤波器(265)被应用于重建的图像。滤波的图像存储在参考图片缓冲器(280)处。

解码图片还可经过解码后处理(285),例如,逆颜色变换(例如,从YCbCr 4:2:0到RGB 4:4:4的变换),调整解码图片的大小,或执行在预编码过程(101)中执行的重新映射的逆过程的逆重新映射。解码后处理可以使用在预编码处理中导出并在位流中发信号通知的元数据。

图3示出了在其中实现各个方面和实施方案的系统的示例的框图。系统1000可具体体现为包括上述和下述的各个部件的设备,并且被配置为执行本文档中所述的方面中的一个或多个方面。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板电脑、数字多媒体机顶盒、数字电视机接收器、个人视频录制系统、连接的家用电器和服务器。系统1000的元件可单独地或组合地体现在单个集成电路(IC)、多个IC和/或分立的部件中。例如,在至少一个实施方案中,系统1000的处理和编码器/解码器元件跨多个IC和/或分立的部件分布。在各种实施方案中,系统1000经由例如通信总线或通过专用输入端口和/或输出端口通信地耦接到一个或多个其他系统或其他电子设备。在各种实施方案中,系统1000被配置为实现本文档中所述的方面中的一个或多个方面。

系统1000包括至少一个处理器1010,该至少一个处理器被配置为执行加载在其中的指令以用于实现例如本文档中所述的各个方面。处理器1010可以是通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核心相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其他类型的集成电路(IC)、状态机等。处理器1010可以包括嵌入式存储器、输入输出接口,以及本领域已知的各种其他电路。系统1000包括至少一个存储器1020(例如,易失性存储器设备和/或非易失性存储器设备)。系统1000包括存储设备1040,该存储设备可包括非易失性存储器和/或易失性存储器,包括但不限于电可擦可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备1040可包括内部存储设备、附接的存储设备(包括可拆卸和不可拆卸的存储设备)和/或网络可访问的存储设备。

系统1000包括编码器/解码器模块1030,该编码器/解码器模块被配置为例如处理数据以提供编码的视频或解码的视频,并且编码器/解码器模块1030可包括其自身的处理器和存储器。编码器/解码器模块1030表示可包括在设备中以执行编码和/或解码功能的一个或多个模块。众所周知,设备可包括编码模块和解码模块中的一者或两者。另外地,编码器/解码器模块1030可实现为系统1000的独立元件,或者可结合在处理器1010内作为本领域的技术人员已知的硬件和软件的组合。

待加载到处理器1010或编码器/解码器1030上以执行本文档中所述的各个方面的程序代码可存储在存储设备1040中,并且随后被加载到存储器1020上以供处理器1010执行。根据各种实施方案,处理器1010、存储器1020、存储设备1040和编码器/解码器模块1030中的一者或多者可在本文档中所述的过程的执行期间存储各个项目中的一个或多个项目。此类存储项目可包括但不限于输入视频、解码的视频或部分解码的视频、位流、矩阵、变量以及处理等式、公式、运算和运算逻辑的中间或最终结果。

在一些实施方案中,处理器1010和/或编码器/解码器模块1030内部的存储器用于存储指令以及提供在编码或解码期间所需的用于处理的工作存储器。然而,在其他实施方案中,处理设备(例如,处理设备可以是处理器1010或编码器/解码器模块1030)外部的存储器用于这些功能中的一个或多个功能。外部存储器可以是存储器1020和/或存储设备1040,例如动态易失性存储器和/或非易失性闪存存储器。在若干实施方案中,外部非易失性闪存存储器用于存储例如电视机的操作系统。在至少一个实施方案中,快速外部动态易失性存储器诸如RAM用作视频译码和解码操作的工作存储器,诸如MPEG-2(MPEG是指运动图片专家组,MPEG-2也称为ISO/IEC 13818,并且13818-1也称为H.222,13818-2也称为H.262)、HEVC(HEVC是指高效视频译码,也称为H.265和MPEG-H部分2)或VVC(通用视频译码,由联合视频专家小组(JVET)开发的新标准)。

可通过如框1130中所指示的各种输入设备来提供对系统1000的元件的输入。此类输入设备包括但不限于:(i)射频(RF)部分,其接收例如由广播器通过空中传输的RF信号;(ii)分量(COMP)输入端子(或一组COMP输入端子);(iii)通用串行总线(USB)输入端子;和/或(iv)高清晰度多媒体接口(HDMI)输入端子。图3中未示出的其他示例包括复合视频。

在各种实施方案中,框1130的输入设备具有如本领域中已知的相关联的相应输入处理元件。例如,RF部分可与适用于以下的元件相关联:(i)选择所需的频率(也称为选择信号,或将信号频带限制到一个频带),(ii)下变频选择的信号,(iii)再次频带限制到更窄频带以选择(例如)在某些实施方案中可称为信道的信号频带,(iv)解调下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择所需的数据包流。各种实施方案的RF部分包括用于执行这些功能的一个或多个元件,例如频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可包括执行这些功能中的各种功能的调谐器,这些功能包括例如下变频接收信号至更低频率(例如,中频或近基带频率)或至基带。在一个机顶盒实施方案中,RF部分及其相关联的输入处理元件接收通过有线(例如,电缆)介质传输的RF信号,并且通过滤波、下变频和再次滤波至所需的频带来执行频率选择。各种实施方案重新布置上面所描述的(和其他)元件的顺序,移除这些元件中的一些元件,和/或添加执行相似或不同功能的其他元件。添加元件可包括在现有元件之间插入元件,例如,插入放大器和模数变换器。在各种实施方案中,RF部分包括天线。

另外地,USB和/或HDMI端子可包括用于跨USB和/或HDMI连接将系统1000连接到其他电子设备的相应的接口处理器。应当理解,输入处理的各个方面(例如,Reed-Solomon错误校正)可在必要时例如在独立的输入处理IC内或在处理器1010内实现。类似地,USB或HDMI接口处理方面可在必要时在独立的接口IC内或在处理器1010内实现。解调的、纠错的和解复用的流被提供给各种处理元件,包括例如处理器1010和编码器/解码器1030,它们与存储器和存储元件结合操作以根据需要处理数据流以供在输出设备上呈现。

可在集成外壳内提供系统1000的各种元件,在集成外壳内,使用合适的连接排布结构1140(例如,如在本领域中是已知的内部总线,包括IC间(I2C)总线、接线和印刷电路板),各种元件可互连并且在其间传输数据。

系统1000包括通信接口1050,该通信接口使得能够经由通信信道1060与其他设备通信。通信接口1050可包括但不限于收发器,该收发器被配置为通过通信信道1060传输和接收数据。通信接口1050可包括但不限于调制解调器或网卡,并且通信信道1060可例如在有线和/或无线介质内实现。

在各种实施方案中,使用诸如Wi-Fi网络(例如IEEE 802.11(IEEE是指电气和电子工程师协会))的无线网络来将数据流式传输或以其他方式提供给系统1000。这些实施方案的Wi-Fi信号通过适用于Wi-Fi通信的通信信道1060和通信接口1050接收。这些实施方案的通信信道1060通常连接到接入点或路由器,该接入点或路由器提供对外部网络(包括互联网)的访问,以允许流式传输应用和其他越过运营商的通信。其他实施方案使用机顶盒向系统1000提供流式传输的数据,该机顶盒通过输入框1130的HDMI连接来递送数据。还有其他实施方案使用输入框1130的RF连接向系统1000提供流式传输的数据。如上所述,各种实施方案以非流式传输方式提供数据。另外地,各种实施方案使用除了Wi-Fi以外的无线网络,例如蜂窝网络或蓝牙网络。

系统1000可向各种输出设备(包括显示器1100、扬声器1110和其他外围设备1120)提供输出信号。各种实施方案的显示器1100包括例如触摸屏显示器、有机发光二极管(OLED)显示器、曲面显示器和/或可折叠显示器中的一者或多者。显示器1100可用于电视、平板电脑、膝上型电脑、蜂窝电话(移动电话)或其他设备。显示器1100还可与其他部件集成(例如,如在智能电话中),或者是独立的(例如,用于膝上型计算机的外部监视器)。在实施方案的各种示例中,其他外围设备1120包括独立数字视频光盘(或数字多功能光盘)(DVR,用于这两个术语)、光盘播放器、立体声系统和/或照明系统中的一者或多者。各种实施方案使用一个或多个外围设备1120,该一个或多个外围设备基于系统1000的输出来提供功能。例如,光盘播放器执行播放系统1000的输出的功能。

在各种实施方案中,使用信令诸如AV.Link、消费电子控制(CEC)或允许带有或不带有用户干预的设备到设备控制的其他通信协议,在系统1000与显示器1100、扬声器1110或其他外围设备1120之间传送控制信号。可通过相应的接口1070、1080和1090经由专用连接将输出设备通信地耦接到系统1000。另选地,可经由通信接口1050使用通信信道1060将输出设备连接到系统1000。在电子设备(诸如例如电视机)中,显示器1100和扬声器1110可与系统1000的其他部件集成在单个单元中。在各种实施方案中,显示器接口1070包括显示驱动器,诸如例如定时控制器(T Con)芯片。

例如,如果输入1130的RF部分是独立机顶盒的一部分,则显示器1100和扬声器1110可另选地相对于其他部件中的一个或多个部件而独立。在其中显示器1100和扬声器1110为外部部件的各种实施方案中,可经由专用输出连接(包括例如HDMI端口、USB端口或COMP输出)来提供输出信号。

这些实施方案可以由通过处理器1010实现的计算机软件,或由硬件,或由硬件与软件的组合进行。作为非限制性示例,这些实施方案可以由一个或多个集成电路实现。作为非限制性示例,存储器1020可以是适合于技术环境的任何类型,并且可以使用任何适合的数据存储技术(诸如光存储器设备、磁存储器设备、基于半导体的存储器设备、固定存储器和可移动存储器)来实现。作为非限制性示例,处理器1010可以是适合于技术环境的任何类型,并且可以涵盖微处理器、通用计算机、专用计算机和基于多核架构的处理器中的一者或多者。

视频译码系统可包括用于根据不同译码模式进行编码和解码的多个不同工具。根据速率失真优化为图像的块或者图像或视频的较大区域选择译码模式。其中,工具的示例是参考图片重新采样(RPR)、局部照明补偿(LIC)、用模板匹配对合并候选的自适应重新排序(也称为ARMC-TM或AML)、基于模板的帧内模式推导(TIMD)、自适应解码器侧运动矢量修正(自适应DMVR)和使用双向预测来建立块的运动矢量候选。

图4示出了在编码器侧的参考图片重新采样过程400的原理,而图5示出了在解码器侧的参考图片重新采样过程500的原理。

参考图片重新采样(RPR)是基于图片的重新缩放功能。原理是,当可能时,编码和解码过程可以对更小的图像进行操作,这可以增加总压缩率。

给定由大小为(宽度×高度)的图片组成的原始视频序列,编码器可以针对视频序列的每个帧选择用于对帧进行译码的分辨率(换句话讲,图片大小)。不同的图片参数集(PPS)以图片的不同可能大小在位流中译码,并且切片标头或图片标头指示使用哪个PPS来对包括在视频译码层(VCL)网络抽象层(NAL)单元中的当前图片部分进行解码。

下采样器440和上采样器540功能分别用作预处理(诸如图1中的预编码处理101)或后处理(图2中的解码后处理285)。这些功能一般不由视频译码标准规定。

对于每个帧,编码器选择是以原始分辨率还是缩小的分辨率(例如:图片宽度/高度除以2)进行编码410。例如,可通过编码或考虑原始图片中的空间和时间活动的两个步骤来进行选择。因此,也称为解码图片缓冲器(DPB)的参考图片缓冲器(图1中的180、图2中的280、图4中的420和图5中的520)可包含大小与当前图片的大小不同的参考图片。在DPB中的一个参考图片具有与当前图片不同的大小的情况下,重新缩放功能(图4中的430用于编码器侧并且图5中的530用于解码器侧)在运动补偿过程(图1中的170、图2中的275)期间缩小或放大参考块以构建预测块,用于对块进行编码410或解码510。

可使用不同的机制在不同的级显式地或隐式地启用RPR工具:

-在序列级:在描述一系列图片共有的元素的序列参数集(SPS)中,标志指示RPR可被应用于对至少一个图片进行译码。这是使用名称为ref_pic_resampling_enabled_flag的标志的VVC和ECM中的情况。

-在图片级:如果RPR在序列级被启用(如上所述)并且当前图片使用大小与当前图片大小不同的至少一个参考图片。

-在CU级:如果在图片级启用RPR并且当前CU使用大小与当前图片大小不同的至少一个参考图片。

在下文中,术语“启用RPR”可以理解为在这些级中的任一级。

图6示出了局部照明补偿(LIC)的原理。LIC是用于解决可能存在于当前图片与参考图片之间的局部照明变化的译码工具。LIC基于线性模型,其中缩放因子α和偏移β在运动补偿阶段(图1中的170,图2中的275)之前应用于参考样本,以获得当前块的预测样本。具体地,LIC可通过以下等式在数学上建模:

P(x,y)=α·P

其中P(x,y)是坐标(x,y)处的当前块的预测信号,P

当将LIC应用于当前块时,采用一种方法(例如,最小均方误差(LMSE))以通过最小化当前块的相邻样本(即,模板T)与它们在时间参考图片中的对应参考样本(即,T

然而,在一些视频译码系统中,当参考图片和当前图片具有不同的大小(例如,启用RPR)时,LIC工具可能被禁用。

图7示出了用于用模板匹配对合并候选的自适应重新排序(ARMC-TM)(也称为自适应合并列表(AML))的子组候选重新排序。在帧间模式中,当对运动矢量进行译码时,根据先前重建的块来构建运动矢量候选和相关联的参考索引的列表。在修正过程(如果有的话)之前,可用模板匹配(TM)自适应地对合并候选进行重新排序。在构建合并候选列表之后,将合并候选分成若干连续的子组。根据基于TM的成本值递增地对每个子组中的合并候选进行重新排序。为了简化,最后但不是第一子组中的合并候选可不变,即,不被重新排序。

图8A示出了用于AML的子组候选重新排序过程。该过程800通过对候选的循环和对子组的循环来迭代。在步骤810中,获得重建的模板T。当模板匹配用于子组的候选时,在步骤815的测试的分支“是”中,在步骤820中用参考模板Tref计算预测。然后,在步骤830中,计算模板匹配的成本。通过当前块的模板的样本(T)与其对应参考样本(Tref)之间的绝对差值和(SAD)来测量用于合并候选的模板匹配的成本。模板T包括与当前块相邻的重建样本的集合。通过合并候选的运动信息来定位模板的参考样本,并且与针对当前块预测样本类似地计算模板的参考样本。在步骤840中,根据计算出的成本对子组中的候选进行重新排序。当模板匹配未用于子组的候选时,在步骤835的测试的分支“否”中,如果子组的另外候选中的任一者具有非零成本,则在步骤835中将成本设置为“0”以支持该候选。对于一些子组,模板匹配不被用于该子组的所有候选(候选不被重新排序并且成本值不被使用或者对于子组的所有候选是相同的)。

在解码器侧进行相同的重新排序过程。在编码器侧,在CU级对索引进行译码以指示使用哪个候选来对当前CU进行解码。可将相同过程应用于非合并候选。在这种情况下,可对附加的MVD信息(与运动矢量候选的运动矢量差)进行编码。在双向预测的情况下,列表可包含运动矢量候选对并且可对一个或两个MVD值(MVD0、MVD1)进行译码。在双向预测的情况下,如果一个单一MVD被译码,则另一个MVD可被导出为(-MVD)或被设置为零。

图9示出了在一些情况下所要的隐式重新缩放。在ECM中,在启用RPR并且参考图片或块或模板分别具有与当前图片或块或模板不同的大小的情况下,用于获得参考模板的运动补偿(在图8的步骤820中)可包括使用常规RPR过程的隐式重新缩放,尽管这可能导致显著的复杂性。这就是为什么对于一些候选(例如ECM中的仿射合并候选,在图8的步骤815的分支“否”中),当启用RPR时TM成本被设置为最小成本(例如“0”)的原因,如果模板匹配用于该子组,则这可任意地将该候选移动到该子组候选的顶部。

另一个工具是基于模板的帧内模式推导(TIMD)。利用该工具,对于最可能模式(MPM)的列表中的帧内预测模式的集合,计算模板的预测样本与重建样本之间的绝对变换差值和(SATD)。选择具有最小SATD的前两个帧内预测模式作为TIMD模式。这两个TIMD模式跟与SATD成本成反比的权重融合,并且因此加权的帧内预测用于对当前CU进行译码。构建用于译码的帧内模式的映射并且将其用于导出具有相邻块的最可能模式(MPM)。

如果相邻模式正在使用帧内预测,则从当前映射检索帧内模式。如果相邻模式正在使用帧间预测,则通过使用与参考图片相关联的映射来使用用于重建参考样本的帧内模式而不是帧间预测模式。在ECM中,当启用RPR时,与参考图片相关联的映射可具有与当前图片映射不同的大小,使得与参考图片相关联的映射中的位置应当被适当地重新缩放。这可能导致显著的复杂性。

图10示出了用于自适应解码器侧运动矢量修正(自适应DMVR)的过程1001。在ECM中,使用在双向预测中应用的基于双边匹配(BM)的解码器侧运动矢量修正来提高合并模式的运动矢量的精度。当自适应DMVR应用于当前CU时,在步骤1002中,根据先前解码的MV构建运动矢量对候选(MV0、MV1)和相关联的参考索引的列表(例如名称为“bmListCand”)。在步骤1003中,在CU级对用于解码当前块的运动矢量对候选(MV0和MV1)的索引(合并索引)进行译码。在子块级进行BM过程,例如,当前块被分成16×16子块。在参考图片列表L0和参考图片列表L1中,围绕两个初始MV(MV0和MV1)对经修正的MV进行搜索。基于L0和L1中的两个参考块之间的最小双边匹配成本,围绕初始MV导出经修正的MV。接着,使用经修正的矢量(MV0、MV1)进行常规双向预测1007。

存在两种BM模式(bmDir=0和bmDir=1)。在CU级,标志“bmDir”被译码以指示要应用哪个BM模式并且在步骤1004中被测试。

在模式0中,如图11所示,在步骤1005中,基于初始MV0周围的每个MV0+MVD0候选值计算参考L0中的虚线块与L1中的参考块之间的SAD。具有最低SAD的MVD0候选值允许导出经修正的MV0并且可能用于产生双向预测信号。类似地,在模式1中,在步骤1006,基于初始MV1周围的每个MV1+MVD1候选值计算参考L1中的一个块与L0中的参考块之间的SAD。具有最低SAD的MVD1候选值允许导出经修正的MV1候选并且可能用于产生双向预测信号。

SAD可用考虑围绕初始MV的修正(MVD0或MVD1)的成本函数代替:

bilCost=mvDistanceCost+sadCost(等式2)

在ECM中,在大CU(大小大于64)的情况下,用应用的mrsadCost代替sadCost以去除参考块之间的失真的DC效应。

当在所选择的合并候选中应用多步骤DMVR过程以修正运动矢量时,应用两个附加的修正步骤。在第二步骤中,可分别用对称值MVD和-MVD修正MV0和MV1两者。在第三步骤中,应用双向光流。

图12A示出了将候选添加到列表所需的条件。如在常规合并模式中那样对合并索引进行译码。列表“bmListCand”是运动矢量候选对和参考图片索引的列表。该列表是从空间相邻译码块、时间运动矢量预测(TMVP)、非相邻块、基于历史的运动矢量预测(HMVP)、成对候选中导出的,类似于在对运动矢量候选进行迭代的循环中针对常规合并模式所做的,如步骤1250所示。该过程的区别在于,为了将候选添加到候选列表“bmListCand”中,需要满足一些附加的DMVR条件。根据过程1200使用以下步骤来验证这些条件:

-在步骤1210中,两个参考图片都是短期参考图片,

-在步骤1220中,相对于当前图片,一个参考图片在过去而另一个参考图片在未来,并且任选地,从两个参考图片到当前图片的距离(即,POC差)是相同的,

当满足这些条件1210和1220时,在步骤1240中将候选添加到候选列表“bmListCand”。

用于构建运动候选对的列表(bmListCand)的类似过程已扩展到其他模式,不仅DMVR合并而且AMVP(高级运动矢量预测)模式也用于构建双向预测候选的列表,其中MVD值也可被译码。“bmListCand”中的候选可用双边匹配(BM)成本来重新排序,具有最小成本(bilCost)的成对候选被放置在列表的顶部。

当构建运动矢量候选列表时,可使用协同定位运动矢量,也称为时间运动矢量预测器(TMVP)。根据在每个图片的解码/重建期间构建的运动矢量和相关联的参考索引的映射,在协同定位位置处拾取此类运动矢量。TMVP矢量利用与poc差成比例的值(pocCur-pocRef)进行重新缩放。然后,在DPB中,每个参考图片与其运动矢量映射相关联。在切片或图片标头中,指示将使用来自哪个参考图片的协同定位矢量的映射。在该文档中,“TMVP模式”将对应于其中候选的索引是协同定位运动矢量的情况。

使用上面介绍的工具对参考图片重新缩放的使用并不简单。实际上,在ECM中,在启用RPR的情况下,一些工具可能被禁用,这可能降低译码效率。例如,这是LIC的情况。在AML的情况下,如果模板匹配被(部分地)禁用,则利用模板匹配对最可能的运动矢量候选的选择可能是有偏差的。实际上,如果候选对应于大小与当前图片大小不同的参考图片,则将TM成本设定为零将任意地有利于此模式。在TIMD的情况下,根据大小与当前图片大小不同的参考图片选择帧内模式可能是起反作用的,因为当图片大小不同时信号特性不同。在自适应DMVR模式的情况下,在启用RPR的情况下,参考图片也可具有不同的大小和参考块,这可能危害用于计算SAD或MRSAD的BM过程。

下文描述的实施方案在设计时考虑了前述内容。图1的编码器100、图2的解码器200和图3的系统1000被适配为实现下文描述的实施方案中的至少一个实施方案。

实施方案整体涉及使工具适配于对参考图片重新缩放的使用,其中参考图片具有与要译码或解码的当前图片不同的大小。此后提出了不同的实施方案,这些实施方案引入一些工具修改(特别是用于LIC、AML和TIMD)以在启用RPR时增加译码效率并且改善编解码器一致性。这些修改涉及以下译码工具的统一设计:在启用RPR时使用模板匹配,避免AML中的参考模板重新缩放并使用另一默认成本,修改用于参考图片重新缩放情况的基于模板的帧内模式推导(TIMD),以及适配TMVP模式和自适应DMVR模式。

在第一实施方案中,提出了当启用RPR时统一对使用模板匹配的译码工具的设计。

在该实施方案的第一变型中,为了不增加译码过程,在启用RPR的情况下,换句话讲,当需要附加的重新缩放过程时,禁用使用模板匹配(LIC、AML、TIMD)的刀具。例如,当参考图片具有与当前图片不同的大小时(RPR应用于当前CU),或者如果启用RPR,则禁用LIC。而且,如果启用RPR,或者如果至少一个候选参考索引是具有与当前图片不同的大小的参考图片,则禁用AML(合并候选重新排序)和TIMD。

在该实施方案的第二变型中,为了提高在启用RPR的情况下的译码效率,提出了如下方案:在参考模板预测的构建过程中,当禁用RPR时通过对使用模板匹配的候选执行RPR重新缩放,从而启用使用模板匹配(例如:LIC、AML、TIMD)的工具。例如,在AML的情况下,仿射合并候选为真(图8的步骤815)。

在另一变型中,语法元素可被译码在位流中(例如:SPS、PPS、切片/图片标头等),指示基于模板匹配的工具是否在启用RPR时被启用。

在第二实施方案中,当要使用的参考图片具有与要译码或解码的当前图片不同的大小并且使用模板匹配时,提出了避免AML中的参考模板重新缩放并且使用另一默认成本。对于AML,为了降低当启用RPR时的复杂性,可将模板匹配设置为否(图8B的步骤815b)以避免具有隐式重新缩放的运动补偿。在这种情况下,例如在ECM中,当启用RPR时,模板匹配成本被设置为零或最小成本,这任意地将该候选移动到子组候选的顶部,并且可能不利于已经计算了模板匹配成本的其他候选,因为例如参考具有与当前图片相同的大小。

在变型实施方案中,可使用不同于零的默认匹配成本,如下述图8B的步骤835b所示。在一个变型中,默认匹配成本可被设置为任意大值,使得该候选被放置在子组候选的末端。在另一变型中,该候选的位置不变,仅模板匹配成本已被计算的候选在它们之间被重新排序。实际上,候选列表(在重新排序之前)是以逻辑方式做出的,首先放置最可能的候选。

在这种情况下,例如可将任意大值确定为存储成本值的变量的最大值,诸如带符号的32位整数的最大值(MAX_INT=2147483647)。任意大值的另一示例是该值的分数(例如MAX_INT的值的一半)。任意大值的另一示例是基于最大SAD值的值。对于大小为T

图8B示出了根据第二实施方案的一个变型的用于AML的子组候选重新排序过程。该过程类似于图8A,因此步骤810、820、830、840的描述是相同的。这些变化与步骤815b相关,其中当RPR被启用或模板匹配未被使用时,过程分支到步骤835b,其中成本被默认成本代替。

在第三实施方案中,在TIMD模式中,如果相邻模式正在使用帧间预测,则通过使用与参考图片相关联的映射来替代地使用用于重建参考样本的帧内模式。在启用RPR的情况下,与参考图片相关联的映射可具有与当前图片映射不同的大小,并且映射中的位置应当被相应地重新缩放。此外,从具有不同大小的图片拾取的帧内模式可对应于与具有当前图片大小的相同帧内模式不同的帧内预测。可以优选地用另一种模式代替它。例如,更“模糊”的模式(诸如例如平面模式)可提供更好的结果。

在另一变型中,在这种情况下,可以不融合两个帧内模式,而是仅使用一个帧内模式。例如,选择具有与当前图片相同的图片大小的仅一者,或者仅第一MPM。

在另一变型中,可以从MPM列表中移除来自具有与当前图片不同的大小的参考图片的那些。

在第四实施方案中,例如用于TMVP运动矢量候选的协同定位参考图片被授权具有与当前图片大小不同的大小。例如,在ECM中,例如用于TMVP运动矢量候选的协同定位参考图片不能是大小与当前图片大小不同的参考图片。如果具有更接近于当前图片的图片顺序计数(POC)的参考图片具有与当前图片大小不同的大小,则这可起相反作用,因为可预期其运动与当前图片良好相关。使得用于TMVP运动矢量候选的协同定位参考图片可以是具有不同大小的参考图片,因为当前图片大小允许使用以对应于当前图片大小与参考图片大小之间的比率的缩放比率重新缩放的TMVP运动矢量候选。在一个变型中,还利用与poc差成比例的值(pocCur-pocRef)对其进行重新缩放。在对当前图片中的当前块的位置进行重新缩放之后,将协同定位运动矢量的位置拾取到参考映射中。

图12B示出了根据第五实施方案的将候选添加到列表所需的条件。在该实施方案中,将附加条件添加到图12A的过程1200中,并且需要满足该条件,以将候选添加到运动矢量对的候选列表“bmListCand”中(与图12A相比的附加步骤1230)。

在一个变型实施方案中,条件是L0和L1中的两个参考应当具有相同大小(相同缩放比率)。该条件等同于确定参考图片在被编码之前是否已经用相同的参数进行重新缩放(图4的步骤440)。

在一个变型实施方案中,附加条件是L0和L1中的两个参考应当具有与当前图片相同的大小。

在一个变型实施方案中,如果针对当前切片、图片、子图片、图块或序列启用RPR,则禁用自适应DMVR模式。

在变型实施方案中,如果参考块具有与当前块不同的大小,则在计算SAD或均值移除绝对差值和(MRSAD)之前对参考块进行重新缩放,使得参考块具有与当前块相同的大小。在BM用于对“bmListCand”进行重新排序的情况下,模板被重新缩放为与当前块模板相同的大小。这可在使用具有隐式重新缩放的常规RPR运动补偿的运动补偿过程中完成。

图13A示出了根据至少一个实施方案的使用参考图片重新采样的解码的示例的流程图。该方法例如在图2的解码器200中或在图3的设备1000的解码器1030中实现。在步骤1310中,根据上述实施方案中的至少一者来预测块。在步骤1320中,基于所预测的块对视频的图片的块的图片数据进行解码。

图13B示出了根据至少一个实施方案的使用参考图片重新采样的解码的示例的流程图。该方法例如在图1的编码器100中或在图3的设备1000的编码器1030中实现。在步骤1360中,根据上述实施方案中的至少一者来预测块。在步骤1370中,基于所预测的块对视频的图片的块的图片数据进行编码。

本申请描述了各个方面,包括工具、特征、实施方案、模型、方法等。具体描述了这些方面中的许多方面,并且至少示出个体特性,通常以可能听起来有限的方式描述。然而,这是为了描述清楚,并不限制这些方面的应用或范围。实际上,所有不同的方面可组合和互换以提供进一步的方面。此外,这些方面也可与先前提交中描述的方面组合和互换。

本申请中描述和设想的方面可以许多不同的形式实现。图1、图2和图3提供了一些实施方案,但是考虑了其他实施方案,并且这些图的讨论不限制实施方式的广度。这些方面中的至少一个方面通常涉及视频编码和解码,并且至少一个其他方面通常涉及传输生成或编码的位流。这些和其他方面可实现为方法、装置、其上存储有用于根据所述方法中任一种对视频数据编码或解码的指令的计算机可读存储介质,和/或其上存储有根据所述方法中任一种生成的位流的计算机可读存储介质。

本文描述了各种方法,并且每种方法包括用于实现方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。

本申请中所述的各种方法和其他方面可以用于修改模块,例如,视频编码器100和解码器200的帧内预测模块(160,260),如图1和图2所示。此外,本发明方面不限于VVC或HEVC,并且可应用于例如其他标准和推荐(无论是预先存在的还是未来开发的)以及任何此类标准和推荐的扩展(包括VVC和HEVC)。除非另外指明或技术上排除在外,否则本申请中所述的方面可单独或组合使用。

在本申请中使用各种数值。具体值是为了示例目的,并且所述方面不限于这些具体值。

各种具体实施涉及解码。如本申请中所用,“解码”可涵盖例如对所接收的编码序列执行的过程的全部或部分,以便产生适于显示的最终输出。在各种实施方案中,此类过程包括通常由解码器执行的一个或多个过程。在各种实施方案中,此类过程还包括或另选地包括由本应用中所述的各种具体实施的解码器执行的过程。

作为进一步的示例,在一个实施方案中,“解码”仅是指熵解码,在另一个实施方案中,“解码”仅是指差分解码,并且在又另一个实施方案中,“解码”是指熵解码和差分解码的组合。短语“解码过程”旨在具体地指代操作的子集还是广义地指代更广泛的解码过程基于具体描述的上下文将是清楚的,并且被认为会被本领域的技术人员很好地理解。

各种具体实施涉及编码。以与上面关于“解码”的讨论类似的方式,如在本申请中使用的“编码”可涵盖例如对输入视频序列执行以便产生编码位流的全部或部分过程。在各种实施方案中,此类过程包括通常由编码器执行的一个或多个过程。在各种实施方案中,此类过程还包括或另选地包括由本应用中所述的各种具体实施的编码器执行的过程。

作为进一步的示例,在一个实施方案中,“编码”仅是指熵编码,在另一个实施方案中,“编码”仅是指差分编码,并且在又一个实施方案中,“编码”是指差分编码和熵编码的组合。短语“编码过程”是具体地指代操作的子集还是广义地指代更广泛的编码过程基于具体描述的上下文将是清楚的,并且据信将被本领域的技术人员很好地理解。

注意,本文所使用的语法元素是描述性术语。因此,它们不排除使用其他语法元素名称。

本公开已描述了例如可被传输或存储的各种信息,诸如例如语法。此信息能够以多种方式封装或布置,包括例如视频标准中常见的方式,诸如将信息放入SPS、PPS、NAL单元、标头(例如,NAL单元标头或切片标头)或SEI消息中。其他方式也是可用的,包括例如用于系统级或应用级标准的通用方式,诸如将信息放入以下中的一者或多者:

a.SDP(会话描述协议),其为用于描述多媒体通信会话以用于会话通知和会话邀请的一种格式,例如,如在RFC中所述并与RTP(实时传输协议)传输结合使用。

b.DASH MPD(媒体展示描述)描述符,例如,如在DASH中使用并且通过HTTP传输,一种与表示或表示的集合相关联以向内容表示提供附加特性的描述符。

c.RTP标头扩展,例如,如在RTP流式传输期间使用。

d.ISO基础媒体文件格式,例如,如在OMAF中使用并且使用box,该box是由唯一类型标识符和长度定义的面向对象的构建块,在某些规范中也称为“atom”。

e.通过HTTP传输的HLS(HTTP实时流式传输)清单。例如,清单可与内容的版本或版本集合相关联,以提供版本或版本集合的特性。

当附图呈现为流程图时,应当理解,其还提供了对应装置的框图。类似地,当附图呈现为框图时,应当理解,其还提供了对应的方法/过程的流程图。

各种实施方案是指速率失真优化。具体地,在编码过程期间,通常考虑速率和失真之间的平衡或权衡,这常常考虑到计算复杂性的约束。速率失真优化通常表述为最小化速率失真函数,该速率失真函数是速率和失真的加权和。存在不同的方法解决速率失真优化问题。例如,这些方法可基于对所有编码选项(包括所有考虑的模式或译码参数值)的广泛测试,并且完整评估其译码成本以及重建信号在译码和解码之后的相关失真。更快的方法还可用于降低编码复杂性,特别是对基于预测或预测残差信号而不是重建的残差信号的近似失真的计算。也可使用这两种方法的混合,诸如通过针对可能的编码选项中的仅一些编码选项使用近似失真,而针对其他编码选项使用完全失真。其他方法仅评估可能的编码选项的子集。更一般地,许多方法采用各种技术中任一种来执行优化,但是优化不一定是对译码成本和相关失真两者的完整评估。

本申请描述了各个方面,包括工具、特征、实施方案、模型、方法等。具体描述了这些方面中的许多方面,并且至少示出个体特性,通常以可能听起来有限的方式描述。然而,这是为了描述清楚,并不限制这些方面的应用或范围。实际上,所有不同的方面可组合和互换以提供进一步的方面。此外,这些方面也可与先前提交中描述的方面组合和互换。

本文所述的具体实施和方面可在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单个形式的具体实施的上下文中讨论(例如,仅作为方法讨论),讨论的特征的具体实施也可以其他形式(例如,装置或程序)实现。装置可在例如适当的硬件、软件和固件中实现。方法可在例如通常是指处理设备的处理器中实现,该处理设备包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,诸如例如,计算机、平板电脑、智能电话、移动电话、便携式/个人数字助理以及便于传送最终用户之间的信息的其他设备。

对“一个实施方案”或“实施方案”或“一个具体实施”或“具体实施”的引用以及它们的其他变型,意味着结合实施方案所描述的特定的特征、结构、特性等被包括在至少一个实施方案中。因此,短语“在一个实施方案中”或“在实施方案中”或“在一个具体实施中”或“在具体实施中”的出现以及出现在本申请通篇的各个地方的任何其他变型不一定都是指相同的实施方案。

另外地,本申请可涉及“确定”各种信息片段。确定信息可以包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。

此外,本申请可涉及“访问”各种信息。访问信息可包括例如接收信息、检索信息(例如,从存储器)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一者或多者。

另外地,本申请可涉及“接收”各种信息。与“访问”一样,接收旨在为广义的术语。接收信息可包括例如访问信息或检索信息(例如,从存储器)中的一者或多者。此外,在诸如例如存储信息、处理信息、传输信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,“接收”通常以一种方式或另一种方式参与。

各种实施方案可以是指位流。位流包括例如位的任何系列或序列,且不要求例如传输、接收或存储位。例如,位流可存储在计算机可读介质诸如光盘或存储器上。

在本申请中,术语“重建”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,术语“图像”、“图片”、“帧”、“切片”和“图块”可以互换使用。通常,但不必然,术语“重建”在编码器侧使用,而“解码”在解码器侧使用。而且,术语“参考图片缓冲器”和“解码图片缓冲器”可以互换使用。

应当理解,例如,在“A/B”、“A和/或B”以及“A和B中的至少一者”的情况下,使用以下“/”、“和/或”和“至少一种”中的任一种旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或选择两个选项(A和B)。作为进一步的示例,在“A、B和/或C”和“A、B和C中的至少一者”的情况下,此类短语旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或仅选择第三列出的选项(C),或仅选择第一列出的选项和第二列出的选项(A和B),或仅选择第一列出的选项和第三列出的选项(A和C),或仅选择第二列出的选项和第三列出的选项(B和C),或选择所有三个选项(A和B和C)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。

而且,如本文所用,词语“发信号通知”是指(除了别的以外)向对应解码器指示某物。例如,在某些实施方案中,编码器发信号通知照明补偿参数中的特定一个参数。这样,在一个实施方案中,在编码器侧和解码器侧两者均使用相同的参数。因此,例如,编码器可将特定参数传输(显式发信号通知)到解码器,使得解码器可使用相同的特定参数。相反,如果解码器已具有特定参数以及其他参数,则可在不传输(隐式发信号通知)的情况下使用发信号通知,以简单允许解码器知道和选择特定参数。通过避免传输任何实际功能,在各种实施方案中实现了位节省。应当理解,发信号通知可以各种方式实现。例如,在各种实施方案中,使用一个或多个语法元素、标志等将信息发信号通知至对应解码器。虽然前面涉及词语“发信号通知”的动词形式,但是词语“信号”在本文也可用作名词。

对于本领域的普通技术人员而言将显而易见的是,具体实施可以产生格式化为携带例如可存储或可传输的信息的各种信号。信息可以包括例如用于执行方法的指令或由所描述的具体实施中的一个具体实施产生的数据。例如,信号可以可格式化为携带所描述的实施方案的位流。这样的信号可格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流编码,并且用编码的数据流调制载体。信号携带的信息可以是例如模拟或数字信息。众所周知,信号可通过各种不同的有线或无线链路传输。信号可存储在处理器可读介质上。

描述了多个实施方案。这些实施方案的特征可以在各种权利要求类别和类型中单独地或以任何组合提供。此外,实施方案可包括以下特征、设备或方面中的一者或多者,单独地或以任何组合,跨各种权利要求类别和类型:一种设备,该设备包括根据解码实施方案中的任一者的装置;以及以下项中的至少一者:(i)天线,该天线被配置为接收信号,该信号包括视频块;(ii)频带限制器,该频带限制器被配置为将所接收到的信号限制为包括该视频块的频带;或(iii)显示器,该显示器被配置为显示表示视频块的输出。

相关技术
  • 一种视频编码方法、解码方法、装置及电子设备
  • 一种视频编码、解码方法、装置、电子设备及系统
  • 视频编解码中用于参考图片重采样的参考图片缩放比例
  • 使用用于多视点视频预测的参考画面集的多视点视频编码方法及其装置、使用用于多视点视频预测的参考画面集的多视点视频解码方法及其装置
技术分类

06120116680015