视频解码方法、装置、计算机设备和存储介质与流程

文档序号:24387769发布日期:2021-03-23 11:22阅读:51来源:国知局
视频解码方法、装置、计算机设备和存储介质与流程
引用并入本申请要求于2019年9月22日提交的、申请号为62/903,868、发明名称为"mmvd以及可选半样本内插滤波器标志的继承"的美国临时申请的优先权,于2019年9月23日提交的、申请号为62/904,417、发明名称为"mmvd中可选半样本内插滤波器标志的继承"的美国临时申请的优先权,以及于2020年9月15日提交的美国申请第17/022,008号、发明名称为“内插滤波器标志与mmvd距离一致的视频编解码方法和设备”的优先权,其全部内容通过引用并入本申请中。本申请实施例涉及数据处理技术,尤其涉及一种视频解码方法、装置、计算机设备和存储介质。
背景技术
:itu-tvceg(q6/16)和iso/iecmpeg(jtc1/sc29/wg11)在2013年(版本1)、2014年(版本2)、2015年(版本3)和2016年(版本4)中发布了h.265/hevc(高效视频编码)标准。2017年10月,他们发出了联合呼吁,征集针对具有超出hevc(cfp)能力的视频压缩的提案。2018年jvet正式启动了超过hevc的下一代视频编码的标准化,即所谓的通用视频编码(vvc)。在h.265/hevc标准以及未来开发的vvc标准中,描述了用于视频压缩的各种运动矢量(mv)预测机制。这些预测机制包括:用于帧间预测的合并模式、用于根据空间相邻编码单元(cu)的运动信息生成当前cu的控制点运动矢量的仿射模式,基于子块的时域mv预测,基于历史的mv预测,成对平均mv候选,具有运动矢量差的合并(mmvd),自适应运动矢量分辨率,以及可选半样本内插滤波器。但是,在mmvd模式下,可选半样本插值标志的继承可能与mmvd距离不一致,使得最终运动矢量(mv)不在半样本精度内。在此类情况下,需要应用混合的滤波器方案,导致解码过程变得复杂化,计算复杂度增加。技术实现要素:本申请实施例关于一种视频解码方法、装置、计算机设备和存储介质。根据本申请的一方面,提供了一种视频解码方法,包括:接收视频数据的已编码块作为当前块;接收与所述当前块相关联的信令信息,所述信令信息指示在对所述当前块进行编码时使用了具有运动矢量差的合并(mmvd)模式;执行一致性重配置,使得可选半样本内插滤波器标志与mmvd候选的至少一个距离值一致,所述一致性重配置包括重新配置所述可选半样本内插滤波器标志,和/或,所述mmvd候选的至少一个距离值;及,根据所述可选半样本内插滤波器标志,对所述当前块进行重建。根据本申请的另一方面,提供了一种视频解码装置,包括:接收模块,用于接收视频数据的已编码块作为当前块;接收与所述当前块相关联的信令信息,所述信令信息指示在对所述当前块进行编码时使用了具有运动矢量差的合并(mmvd)模式;重配置模块,用于执行一致性重配置,使得可选半样本内插滤波器标志与mmvd候选的至少一个距离值一致,所述一致性重配置包括重新配置所述可选半样本内插滤波器标志,和/或,所述mmvd候选的至少一个距离值;及,重建模块,用于根据所述可选半样本内插滤波器标志,对所述当前块进行重建。根据本申请的另一方面,提供了一种计算机设备,包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现如上所述的视频解码方法。根据本申请的另一方面,提供了一种非暂时性计算机可读介质,其上存储有指令,当所述指令由计算机执行时,使得所述计算机执行如上所述的视频解码方法。根据本申请的另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述视频解码方法。由上述技术方案可见,本发明实施例提供的方法,解决了mmvd模式中编解码时的不一致性问题,确保半样本if与mmvd候选的距离值一致,使得解码过程中只需确认是否应用半样本内插滤波器标志即可,简化了解码过程中的数据处理,提高了解码器的计算效率。附图说明从下面结合附图对示例性实施例的详细描述中,本申请上述的和其它目的、特征和优点将变得显而易见。附图的各种特征未按比例绘制,因为图示是为了清楚起见,以便于本领域技术人员结合详细描述对本申请技术方案进行的理解。在附图中:图1示出了根据本申请实施例的操作环境;图2示出了根据本申请实施例的实现电子设备某些方面的示例性计算机设备;图3示出了根据本申请实施例的视频流应用的示例;图4a示出了根据本申请实施例的继承的仿射运动预测器的位置;图4b示出了根据本申请实施例的控制点运动矢量继承;图4c示出了根据本申请实施例的仿射合并模式中候选的位置;图4d示出了根据本申请实施例的得到子cu运动场的sbtmvp过程;图5示出了根据本申请实施例的在hmvp模式中进行解码的过程;图6示出了根据本申请实施例的解码方法;以及图7示出了根据本申请实施例的编码方法。具体实施方式本申请公开了所要求保护的结构和方法的具体实施例。然而,应当理解的是,所公开的实施例仅是可以以各种形式体现的所要求保护的结构和方法的示例。然而,这些结构和方法可以以许多不同的形式来体现,并且不应被解释为限于本申请所描述的示例性实施例。相反,提供这些示例性实施例是为了使本申请更加全面和完整,并且将范围完全传达给本领域技术人员。在说明书中,可以省略公知的特征和技术的细节,以避免不必要地混淆所呈现的实施例。在本申请中使用的某些首字母缩略词和术语如下列出。未列出的其它首字母缩略词和/或术语可以从h.265/hevc、vvc标准或其它相关文献中找到。amvp增强mvp(其中将用于每个运动块的最佳预测器发信号通知到解码器)amvr自适应运动矢量分辨率bdof双向光流cpmv控制点运动矢量cpmvp控制点运动矢量预测cu编解码单元dmvr解码器侧运动矢量修正fifo先进先出hevc高效视频编解码hmvp基于历史的运动矢量预测器if内插滤波器lic局部光照补偿mmvd合并运动矢量差mv运动矢量mvd运动矢量差mvp运动矢量预测器prof使用光流的预测修正pu预测单元sbtmvp基于子块的时间运动矢量预测器tmvp时间运动矢量预测器vpdu虚拟管道数据单元vtm通用测试模型vtm3vvc测试模型3vvc通用视频编解码(超出hevc)在以下说明书中,术语块可以被称为预测块、编解码块,或编解码单元,即cu。此外,mv分量处于1/2亮度样本位置,意味着此mv分量的分数部分指向1/2亮度样本位置或整数样本位置。图1示出了结合了本申请的某些实施例的操作环境100。如图1中所示,操作环境100可以包括具有视频功能的各种设备。例如,操作环境100可以包括移动设备102、终端设备104和电子设备106。也可以包括其它类型的设备。操作环境100还可以包括服务器120、至少一个用户130以及连接各种设备和服务器120的通信网络140。至少一个用户130可以使用、访问或控制各种设备中的至少一个。移动设备102、终端设备104和电子设备106通常可以被称为终端设备,其可以包括任何用户终端,例如个人数字助理(pda)、移动电话、智能电话、综合消息收发设备(imd)、平板计算机、笔记本计算机、台式计算机和其它计算设备。终端设备还可以包括任何图像或视频捕获设备,例如数码相机、摄像机、安全摄像机、车载摄像机和立体摄像机等,或具有视频功能的任何电子设备,例如数字门铃、自动驾驶传感器、数字语音助理、智能扬声器、智能家电,或者具有视频处理能力的任何工业或商业物联网系统。移动设备102、终端设备104和电子设备106中的任何一个在由正在移动的个人携带时可以是静止的或移动的,并且还可以作为运输的一部分或运输模式的一部分,包括汽车、卡车、出租车、公共汽车、火车、船,飞机、自行车、摩托车或任何类似的适当的运输模式。网络140可以包括任何合适类型的通信网络,并且可以包括有线或无线网络的任何组合,包括但不限于无线蜂窝电话网络、无线局域网(wlan)、蓝牙个域网、以太网局域网、令牌环局域网、广域网和因特网。网络140还可以包括用于语音/数据通信的私有或公共云计算平台。当包括因特网或其它类型的网络时,到因特网的连通可以包括远程无线连接、近程无线连接以及各种有线连接,包括电话线、电缆线、电源线和类似通信路径。服务器120可以包括任何类型的服务器计算机设备,或配置在服务器群集中或分布在不同位置的多个计算机设备。服务器120还可以包括云计算平台上的云服务器。服务器120还可以被称为服务器实体,其可以与任何适当设备(包括电子设备)集成,用于执行所公开的视频解码和应用处理的服务器端功能。图2示出了实现各种终端设备102、104,和/或106,和/或服务器120的某些方面的示例性计算机设备。如图2中所示,计算机设备200可以包括硬件处理器202、存储器204、读卡器206、显示器208、键盘210、射频(rf)接口212、基带214、天线216、编码器222、解码器224、相机226、扬声器232和麦克风234等。图2中所示的组件是说明性的,某些组件可以被省略,并且可以添加其它组件。处理器202可以被提供用于控制计算机设备200。处理器202可以通过至少一个总线或其它电连接连接到其它组件,以向其它组件发送数据并从其它组件接收数据。处理器202可以包括至少一个处理核,例如4核处理器或8核处理器。处理器202可以通过使用数字信号处理(dsp)、现场可编程门阵列(fpga)和可编程逻辑阵列(pla)的至少一种硬件形式来实现。处理器202还可以包括主处理器和协处理器。主处理器可以是中央处理单元(cpu),并且协处理器可以是图形处理单元(gpu),其被配置成负责呈现和绘制显示屏需要显示的内容。在一些实施例中,处理器202可以进一步包括人工智能(ai)处理器。ai处理器被配置成处理与机器学习相关的计算操作。存储器204可以包括至少一个计算机可读存储介质,例如高速随机存取存储器和非易失性存储器,例如至少一个磁盘存储设备或快闪存储设备。存储器204可以存储图像和音频数据形式的数据,并且还可以存储用于处理器202的指令。读卡器206可以包括任何类型的便携式卡接口,例如智能卡接口、通信卡接口(例如,近场通信(nfc)卡),或用户标识符模块(sim)卡,或用于提供用户信息并适于提供用于用户130的认证和授权的认证信息的其它卡接口。此外,显示器208可以是适于显示图像或视频的任何适当的显示技术。例如,显示器208可以包括液晶显示器(lcd)屏幕、有机发光二极管(oled)屏幕等,并且可以是触摸屏。键盘210可以包括物理或虚拟键盘以由用户输入信息,并且还可以包括其它类型的输入/输出设备。扬声器232和麦克风234可以用于为计算机设备200输入和输出音频。rf接口212(连同天线216)可以包括用于接收和传输rf信号的rf电路。rf接口212可以将电信号转换成用于传输的电磁信号,或将接收的电磁信号转换成用于接收的电信号。rf接口212可以通过至少一种无线通信协议与其它电子设备通信。无线通信协议可以包括城域网、各代运动通信网络(2g、3g、4g和5g)、无线局域网(lan)和/或无线局域(wifi)网络。在一些实施例中,rf接口212还可以包括与近场通信(nfc)相关的电路。基带214可以包括用于处理去往和来自rf接口212的信号的电路。此外,相机226可以包括被配置成收集图像或视频的任何类型的成像或视频捕获设备。当计算机设备200是由用户携带的便携式设备时,相机226可以包括前置相机和后置相机。前置相机可以设置在电子设备的前面板上,后置相机设置在电子设备的后表面上。在一些实施例中,存在至少两个后置相机,每个相机是主相机、景深相机、广角相机和长焦相机中的任何一个,以便通过将主相机与景深相机融合来实现背景模糊功能,并且通过将主相机与广角相机融合来实现全景拍摄和虚拟现实(vr)拍摄功能或其它融合拍摄功能。在一些实施例中,相机226可以进一步包括闪光灯。编码器222和解码器224可以被称为电子设备的编解码器电路,该编解码器电路适于执行音频和/或视频数据的编码和解码,或辅助由处理器202执行的编码和解码。如图2中所示的计算机设备200还可以包括实现任何特定系统的附加结构。例如,在实现服务器120时,计算机设备200可以包括数据库和/或基于陆线的网络通信接口,或在实现移动设备102等时,可以包括类似于无线通信系统的移动终端或用户装备的结构。然而,计算机设备200可以包括或省略任何结构,以实现可能需要编码和解码,或编码或解码视频的任何电子设备或装置。回到图1,计算机设备200(即各种设备102、104和/或106中的任何至少一个)可以捕获或收集各种数据(例如,音频数据、环境/操作数据、图像数据和/或视频数据)并通过网络140将数据发送到服务器120。计算机设备200可以在将数据发送到服务器120之前处理或预处理数据,或可以将未处理的数据发送到服务器120。在操作期间,终端设备的用户可以使用视频应用来向和/或从服务器120发送和/或接收视频内容,或各种终端设备的用户可以使用各种视频应用来彼此通信视频内容。在一个实施例中,一个用户可以经由服务器120与另一个用户通信视频内容,或服务器120可以在用户之间建立通信信道,使得一个用户可以经由通信信道直接与另一个用户通信视频。图3示出了本申请的视频流应用的示例。本申请提供的方法和设备可以同样地应用于其它视频可用应用,包括例如视频会议、数字电视、在包括cd、dvd、记忆棒等的数字媒体上存储压缩视频等。如图3中所示,流系统300可以包括视频源单元310、流服务器330、第一客户端流设备350和第二客户端流设备370。视频源单元310可以包括视频捕获设备312,例如数字相机或数字摄像机,其被配置成获取非压缩格式的视频数据流。与已编码视频流数据相比,非压缩格式的视频数据流可以具有高数据量。视频源单元310可以进一步包括实现视频编码器315的视频处理单元314。视频编码器303可以包括硬件、软件或其组合,以启用或实现本申请的各方面,如以下更详细描述的。视频编码器315被配置成处理非压缩格式的视频流数据,以生成已编码视频流数据。与未压缩的视频流数据相比,已编码视频流数据具有较低的数据量,并且可以被传输到并存储在流服务器330上,用于直播或点播。客户端流设备,例如第一客户端流设备350和第二客户端流设备370,可以访问流服务器330以检索已编码视频流数据的副本。客户端流设备370可以包括视频解码器375,例如,由视频处理单元374实现。视频解码器375对已编码视频流数据的输入副本进行解码,并创建可以在显示器372(例如,显示屏)或其它呈现设备上呈现的已解码视频数据的输出流。在一些流系统中,已编码视频数据可以根据某些视频编码/压缩标准被编码。这些标准的示例包括itu-t建议h.265。在示例中,视频数据是根据视频编码标准进行编码,一般称为通用视频编码(vvc)。具体地,视频数据可以以mmvd模式进行编码,并且已编码视频流数据包括视频数据的已编码块以及与该块相关联的信令信息。编码处理包括帧内预测、帧间预测和2d变换编码。编码器可以将视频帧分割成第一图片的块形区域或者随机访问点的第一图片的块形区域,并且仅基于该图片中的信息,使用该块的帧内预测。对于其它图片,使用帧间预测,其中,预测信息是来自其它图片。合并模式可以用于帧间预测。在合并模式中合并标志(包括跳跃标志)发信号通知为真时,则构建来自相邻块的候选运动参数的合并候选列表。然后,发信号通知标识所使用候选的索引。合并模式还允许进行时间预测,在列表中包括了从先前已编码的图片中获得的候选。在解码器处,基于当前块的空时邻域来构建合并候选列表。在合并候选列表中,可以最多加入四个在空间上相邻的mv,以及最多一个来自时间位置相同的两个块的mv,和附加合并候选,包括组合的双向预测候选和零运动矢量候选。在hevc中,跳跃模式可以用于为块指示:运动数据是被推导出来的而不是被明确地发信号通知的,并且预测残差为零,即没有发送变换系数。在hevc中,在帧间预测分片中每个cu的开始处,可以发信号通知“skip_flag”来指示:cu仅含有一个pu(2n×2n);合并模式用于导出运动数据;并且在比特流中不存在残留数据。在将块的运动信息作为合并候选之前,可以执行冗余检查,以检查块的运动信息是否与当前合并候选列表中的元素相同。如果该块与当前合并候选列表中的每个元素均不同,则将该块作为合并候选添加到当前合并候选列表。maxmergecandsnum定义为合并列表的大小,以候选数量表示。根据hevc,在比特流中发信号通知maxmergecandsnum。此外,仿射合并预测(af_merge)模式可以应用于宽度和高度均大于或等于8的cu。可以基于块的控制点的运动矢量来确定块的仿射运动模型。在一些实现中,块的控制点是块的左上角和右上角。在一些实现中,块的控制点进一步包括块的左下角。视频编码器(即视频编码器或视频解码器)可以基于块的控制点的运动矢量来计算块的子块的运动矢量。在仿射合并模式中,视频编码器和视频解码器识别当前块的同一仿射源块。仿射源块可以是在空间上与当前块相邻的仿射已编码块。视频编码器和视频解码器从仿射源块的控制点的运动矢量外推得到当前块的控制点的运动矢量。例如,视频编码器和视频解码器可以构建仿射运动模型,该仿射运动模型描述当前块内位置的mv。仿射运动模型由一组仿射参数定义。视频编码器和视频解码器可以基于当前块的控制点的运动矢量来确定仿射参数。视频编码器和视频解码器可以基于仿射源块的控制点的运动矢量来确定当前块的控制点的运动矢量。可以有最多五个cpmvp候选,并且可以发信号通知索引以指示当前cu使用了哪一个cpmvp候选。三种类型的cpmvp候选用于形成仿射合并候选列表,包括:从相邻cu的cpmv外推得到的继承(inherited)的仿射合并候选;使用相邻cu的平移mv导出的已构建仿射合并候选cpmvp;以及零mv。在vtm-3.0中,最多存在两个继承的仿射候选,这两个继承的仿射候选是从相邻块的仿射运动模型导出的,其中一个是从左相邻cu导出的,另一个是从上方相邻cu导出的。图4a中示出了候选块。对于左预测器,扫描顺序是a0->a1,并且对于上述预测器,扫描次序是b0->b1->b2。仅选择来自每侧的第一个继承的候选。在两个继承的候选之间,不执行修剪检查(pruningcheck)。当识别出相邻仿射cu时,其cpmv被用于导出当前cu的仿射合并列表中的cpmvp候选。如图4b中所示,如果以仿射模式对相邻的左下块a进行编码时,则获得含有块a的cu的左上角、右上角和左下角的运动矢量v2、v3和v4。当用4参数仿射模型对块a进行编码时,可以根据v2和v3计算当前cu的两个cpmv。当用6参数仿射模型对块a进行编码时,可以根据v2、v3和v4计算当前cu的三个cpmv。构建仿射候选是指通过组合每个控制点的相邻平移运动信息来实现。控制点的运动信息可以从指定空间邻域和时间邻域导出,如图4c中所示。cpmvk(k=1,2,3,4)表示第k个控制点。对于cpmv1,检查b2->b3->a2块,并且使用第一可用块的mv。对于cpmv2,检查b1->b0块,并且对于cpmv3,检查a1->a0块。如果tmvp可用,则其可以用作cpmv4。在获取四个控制点的mv之后,基于该运动信息构建仿射合并候选。使用控制点mv的以下组合进行有序构建:{cpmv1,cpmv2,cpmv3}、{cpmv1,cpmv2,cpmv4}、{cpmv1,cpmv3,cpmv4}、{cpmv2,cpmv3,cpmv4}、{cpmv1,cpmv2}、{cpmv1,cpmv3}。三个cpmv的组合构建6参数仿射合并候选,并且两个cpmv的组合构建4参数仿射合并候选。为了避免运动缩放过程,如果控制点的参考索引不同,则丢弃控制点mv的相关组合。vtm进一步支持基于子块的时间运动矢量预测(sbtmvp)方法。类似于hevc中的时间运动矢量预测(tmvp),sbtmvp使用同位(collocated)图片中的运动场(motionfield)以改进当前图片中cu的运动矢量预测和合并模式。tmvp使用的同位图片同样可以用于sbtvmp。然而,sbtmvp主要在以下两个方面与tmvp不同。首先,当tmvp预测cu级的运动时,sbtmvp预测子cu级的运动。第二,当tmvp从同位图片中的同位块(该同位块是相对于当前cu的右下块或中心块)提取时间运动矢量时,sbtmvp在从同位图片提取时间运动信息之前应用运动移位,其中,从来自当前cu的一个空间相邻块的运动矢量获得运动移位。sbtmvp过程如图4d中所示。sbtmvp分两步预测当前cu内的子cu的运动矢量。在第一步骤中,按照a1、b1、b0和a0的次序,检查图4d的顶部图中所示的空间邻域。一旦识别出第一空间相邻块的运动矢量使用同位图片作为其参考图片,就选择此运动矢量作为待应用的运动移位。如果从空间邻域没有识别出此类运动,则将运动移位设定为(0,0)。在第二步骤中,应用在第一步骤中识别出的运动移位,即将其添加到当前块的坐标中,以从同位图片中获得子cu级运动信息(运动矢量和参考索引)。图4d中所示的示例,假定运动移位被设定为块a1的运动。然后,对于每个子cu,使用同位图片中相应块(覆盖中心样本的最小运动网格)的运动信息来导出子cu的运动信息。在识别出同位子cu的运动信息之后,以与hevc的tmvp处理类似的方式,将其转换成当前子cu的运动矢量和参考索引,其中,应用时间运动缩放,以将时间运动矢量的参考图片与当前cu的参考图片对准。在tm-3.0中,使用组合的基于子块的合并列表来标识基于子块的合并模式,该组合的基于子块的合并列表同时含有sbtvmp候选和仿射合并候选。sbtvmp模式可以由序列参数集(sps)标志来启用或禁用。如果启用sbtmvp模式,则加入sbtmvp预测器,将其作为基于子块的合并列表的第一条目,之后是仿射合并候选。在vtm-3.0中,基于子块的合并列表的最大允许大小是5。sbtmvp中使用的子cu大小固定为8×8,并且参照仿射合并模式,sbtmvp模式仅适用于宽度和高度均大于或等于8的cu。附加的sbtmvp合并候选的编码逻辑与其它合并候选的编解码逻辑相同,即,对于p或b分片中的每个cu,执行附加的rd检查以决定是否使用sbtmvp候选。vtm-3.0进一步支持基于历史的mvp(hmvp)方法,其中hmvp候选被定义为先前已编码块的运动信息。在编码/解码过程期间,维护具有多个hmvp候选的表。当遇到新分片时,清空该表。每当存在已帧间编码的非仿射块时,将相关联的运动信息作为新的hmvp候选,添加到表的最后条目。图5中描绘了整个解码流程。在vtm-3.0中,表大小s被设定为6,这指示最多可以往表中添加6个hmvp候选。当将新的运动候选插入到表中时,利用受约束的fifo规则,其中,首先进行冗余校验,以发现表中是否存在相同的hmvp。如果找到相同的hmvp,则从表中移除相同的hmvp,并且向前移动之后所有的hmvp候选,即,使索引减小1。在合并候选列表构建过程中,可以使用hmvp候选。按次序检查表中最近的几个hmvp候选,并将其插入tmvp候选之后的候选列表中。在hmvp候选中修剪空间或时间合并候选,除了子块运动候选(即sbtmvp)之外。为了减少修剪操作的数目,引入了三种简化:1)将待检查的hmpv候选数l设定为:l=(n<=4)?m:(8-n)(1)其中n是表中可用的非子块合并候选的数目,m是表中可用的hmvp候选的数目。2)另外,一旦可用合并候选的总数达到发信号通知的最大允许合并候选减1,则终止来自hmvp列表的合并候选列表构建过程。3)此外,用于组合的双向预测合并候选推导的对数从12减少到6。类似地,hmvp候选也可以用于amvp候选列表构建过程中。将表中最后k个hmvp候选的运动矢量插入到tmvp候选之后。仅使用具有与amvp目标参考图片相同的参考图片的hmvp候选来构建amvp候选列表。对hmvp候选进行修剪。可以生成成对平均候选,其中,对当前合并候选列表中预定义的候选对进行平均,并且预定义对为{(0,1),(0,2),(1,2),(0,3),(1,3),(2,3)},其中数字表示合并候选列表的合并索引。对每个参考列表,分别计算平均运动矢量。如果一个列表中有两个运动矢量可用,即使这两个运动矢量指向不同的参考图片,也对二者进行平均。如果仅有一个运动矢量可用,则直接使用它。如果没有运动矢量可用,则列表无效。在hevc标准中,成对的平均候选替换掉组合候选。在先前提出的一些方法中以及在当前vvc标准中,仅使用一个预定义对{(0,1)}来生成成对的平均mv候选。除了合并模式之外,其中隐式导出的运动信息被直接用于生成当前cu的预测样本,在vvc中包括了具有运动矢量差的合并模式。在发送跳跃标志和合并标志之后,可以立即发信号通知mmvd标志,以指定mmvd模式是否用于cu。在mmvd中,在选择合并候选之后,通过发信号通知的mvd信息,进一步修正合并候选。进一步的信息包括合并候选标志、指定运动幅度的索引以及指示运动方向的索引。在mmvd模式中,选择合并列表中前两个候选中的一个作为mv基础候选。发信号通知合并候选标志以指定使用哪一个。距离索引指定运动幅度信息,并且指示相对于起点的预定义偏移。可以在起始mv的水平分量或垂直分量中添加偏移。在mmvd距离表(表1)中指定了距离索引和预定义偏移的关系。mmvd距离表的第一行列出了距离索引。当全像素mmvd标志为关闭时,mmvd距离表的第二行列出以亮度样本为单位的mv偏移。当全像素mmvd标志为打开时,修改后的mmvd距离表的第三行列出以亮度样本为单位的mv偏移。当全像素mmvd标志slice_fpel_mmvd_enabled_flag等于0时,mmvd偏移的范围是从1/4亮度样本至32亮度样本;当slice_fpel_mmvd_enabled_flag是1时,mmvd偏移的范围是从1亮度样本到128亮度样本。表1方向索引表示mvd相对于起点的方向。方向索引可以表示四个方向,如表2中所示。注意,mvd符号的含义可以根据起始mv的信息而变化。当起始mv是单预测mv或双向预测mv时,两个列表均指向当前图片的同一侧(即两个参考图片的poc均大于当前图片的poc,或均小于当前图片的poc),表2中的符号指定添加到起始mv的mv偏移的符号。当起始mv是双向预测mv时,两个mv指向当前图片的不同侧(即,一个参考图片的poc大于当前图片的poc,而另一个参考图片的poc小于当前图片的poc),表2中的符号指定添加到起始mv的list0mv分量的mv偏移的符号,并且list1mv的符号具有相反的值。表2在hevc中,当分片头中的use_integer_mv_flag等于0时,以四分之一亮度样本为单位发信号通知(cu的运动矢量和预测运动矢量之间的)运动矢量差(mvd)。在vvc中,可以包括cu级自适应运动矢量分辨率(amvr)方案。amvr允许以不同的精度编码cu的mvd。取决于当前cu的模式(正常amvp模式或仿射avmp模式),可以自适应地选择当前cu的mvd,如表3中所示。awvr=0awvr=1awvr=2awvr=3正常amvp模式1/4像素1像素4像素1/2像素仿射amvp模式1/4像素1/16像素1像素-ibcamvp模式-1像素4像素-表3如果当前cu具有至少一个非零mvd分量,则有条件地发信号通知cu级mvd分辨率指示。如果所有mvd分量(即参考列表l0和参考列表l1的水平mvd和垂直mvd)均为零,则推断mvd分辨率为四分之一亮度样本。对于具有至少一个非零mvd分量的cu,发信号通知第一标志以指示是否将四分之一亮度样本mvd精度用于cu。如果第一标志为0,则不需要进一步发信号通知,而是对当前cu使用四分之一亮度样本mvd精度。否则,发信号通知第二标志以指示是否使用半亮度样本。如果第二标志为0,则不需要进一步发信号通知,并且使用半亮度样本mvd精度,并且在运动补偿中使用可选(alternative)半样本内插滤波器。否则,发信号通知第三标志以指示对正常amvpcu使用整数亮度样本还是使用四亮度样本mvd精度。同样的第二标志用于指示仿射amvpcu使用整数亮度样本还是使用1/16亮度样本mvd精度。为了确保已重建mv具有预期的精度(四分之一亮度样本、整数亮度样本或四亮度样本),在将cu的运动矢量预测器与mvd相加之前,将其四舍五入到与mvd相同的精度。运动矢量预测器向零舍入(即,负运动矢量预测器向正无穷大舍入,并且正运动矢量预测器向负无穷大舍入)。在正常amvp模式中,当发信号通知块的amvr精度为1/2亮度样本时,在对该块的运动补偿中使用可选内插滤波器(if)。半样本内插滤波器标志hpelifidx用于指示是否使用可选半样本if。hpelifidx的值导出为:hpelifidx=amvrshift==3?1:0(2)可选半样本if标志hpelifidx可以在内部合并过程期间被继承。空间内部合并候选包括hpelifidx标志以及其它运动信息。hpelifidx的继承也应用于mmvd模式,该标志从基础候选继承。在内插过程中,当hpelifidx等于1,并且相应mv分量的分数部分等于半样本时,将在内插过程中使用半样本if。然而,在mmvd模式中可选半样本内插标志的继承可能具有不一致性问题。当所选择的mmvd基础候选具有半样本精度mv并且其可选半样本if标志等于1时,半样本if标志由所选择的mmvd候选继承,并且mmvdmv偏移被进一步应用于基础候选的mv以生成最终mv。在发信号通知的mmvd距离是1/4样本的情况下,最终mv不再是半样本精度,但是其半样本if标志仍然被设定为1。类似地,如果对具有双向预测的基础候选上的mmvd偏移进行缩放,则最终mv偏移可能不在半样本精度内。在此类情况下,使用此mmvd候选对块进行插值,可以应用混合的内插滤波器类型。分数部分的绝对值等于1/2样本的mv分量,将使用可选半样本if;如果分数部分的绝对值不等于0或1/2样本,则对此类mv分量进行内插时,使用规则的8抽头内插滤波器。不一致性问题可能导致解码过程的复杂化。为了解决mmvd模式中编解码时的不一致性问题,本申请提供了一种编码和/或解码方法以及相应的电子设备,其确保半样本if与mmvd候选的距离值一致。图6示出了根据本申请的某些实施例的由解码器应用的解码方法400。如图6中所示,解码方法包括以下步骤。步骤s410是接收视频数据的已编码块作为当前块。根据某些实施例,已编码视频数据包括与视频中的当前图像相关联的多个已编码块。该块可以是帧内和/或帧间已编码。解码器可以接收用于执行解码的已编码块。步骤s420是接收与当前块相关联的信令信息,该信令信息指示在对当前块进行编码时使用了mmvd模式。根据某些实施例,可以以mmvd模式对视频数据进行编码。已编码视频数据进一步包括信令信息。信令信息可以包括指示mmvd模式的mmvd标志。解码器可以接收信令信息,并且根据mmvd标志,以mmvd模式执行解码。步骤s430是执行一致性重配置,使得可选半样本内插滤波器标志与mmvd候选的距离值一致。根据某些实施例,一致性重配置可以包括重新配置可选半样本内插滤波器标志,和/或,mmvd候选的至少一个距离值。根据某些实施例,为了确保可选半样本内插滤波器标志与mmvd候选的距离值一致,不在mmvd候选中继承可选半样本内插滤波器标志。具体地,如果使用mmvd模式,则当前块的可选半样本if标志值被设定为0,用于指示对所述当前块进行重建时,在运动补偿中不应用半样本内插滤波器。可选地,根据某些其它实施例,解码方法包括确定mmvd候选的mmvd距离是否不在1/2样本位置,即,mmvd距离是否大于0并且小于1/2样本。当mmvd距离大于0且小于1/2个样本时,不从基础候选继承可选半样本内插滤波器标志,而是将mmvd候选的可选半样本if标志值设定为0,用于指示对所述当前块进行重建时,在运动补偿中不应用半样本内插滤波器。可选地,根据某些其它实施例,解码器确定mmvd候选的最终mv的任何分量是否不在1/2亮度样本位置。并且当mmvd候选的最终mv的任何分量不在1/2亮度样本位置时,不从基础候选继承可选半样本内插滤波器标志,而是将mmvd候选的可选半样本if标志值设定为0,用于指示对所述当前块进行重建时,在运动补偿中不应用半样本内插滤波器。可选地,根据某些其它实施例,解码方法包括确定与基础候选相关联的可选半样本if标志值是否等于1。当基础候选具有等于1的可选半样本if标志值时,修改mmvd距离表,以确保mmvd距离表中所有条目的值大于或等于1/2样本。从此基础候选生成的所有mmvd候选将使用修改的mmvd距离表。否则,如果基础候选具有等于0的可选半样本if标志,则使用如表1中所述的原始mmvd距离表。在一个示例中,当基础候选具有等于1的可选半样本if标志时,mmvd距离表可以被修改,如表4中所示。如表4中所示,mmvd距离表中所有条目的值大于或等于1/2样本。表4可选地,根据某些其它实施例,解码方法包括确定是否启用可选半样本内插滤波器。如果启用了可选半样本内插滤波器,则解码器可以仅使用修改后的mmvd距离表,其中所有条目均大于或等于1/2样本。在一个示例中,可以使用如表4中所描述的修改后的mmvd距离表。返回参考图6,解码方法的步骤s440是,根据可选半样本内插滤波器标志,对当前块进行重建。根据某些实施例,解码器可以解码当前已编码块,包括根据可选半样本内插滤波器标志确定是否应用半样本内插滤波器。可选地,可以由编码器执行一致性重配置。如图7中所示,编码方法500使用mmvd模式对视频数据进行编码并生成相关联的信令信息,并且包括以下步骤。步骤s510是使用mmvd模式对视频数据进行编码,以生成当前块的已编码块。步骤s520是生成与当前块相关联的信令信息,包括执行一致性重配置,以使可选半样本内插滤波器标志与mmvd候选的至少一个距离值一致。在某些实施例中,如果基础候选具有等于1的可选半样本if标志值,则编码器可以执行比特流一致性处理,以确保编码器不会为相应的mmvd候选选择数值小于样本的mmvd距离。在某些其它实施例中,如果与当前块的mvd相关联的基础候选具有等于1的可选半样本内插滤波器标志值,则可以由编码器执行比特流一致性处理,以确保mmvd候选的最终运动矢量(mv)的所有分量处于1/2样本位置。当编码器执行比特流一致性时,解码器可以接收符合流一致性的已编码块和信号信息。解码方法400和编码方法500的不同实施例可以在实现中结合。解码方法400和编码方法500可以由相应的解码器或编码器实现。编码器和解码器的示例如图2中所示。编码器222和解码器224可以被实现为适于执行编码方法500或解码方法400的电子设备的电路。本申请含有受版权保护的材料。版权是版权持有人的财产。版权持有人不反对在专利和商标局的正式记录和文件中复制专利文件或专利公开。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1