CN114467308A - 视频处理中的参考图片重采样 - Google Patents

视频处理中的参考图片重采样 Download PDF

Info

Publication number
CN114467308A
CN114467308A CN202080066510.2A CN202080066510A CN114467308A CN 114467308 A CN114467308 A CN 114467308A CN 202080066510 A CN202080066510 A CN 202080066510A CN 114467308 A CN114467308 A CN 114467308A
Authority
CN
China
Prior art keywords
block
picture
current
video
motion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202080066510.2A
Other languages
English (en)
Other versions
CN114467308B (zh
Inventor
张凯
张莉
刘鸿彬
许继征
王悦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of CN114467308A publication Critical patent/CN114467308A/zh
Application granted granted Critical
Publication of CN114467308B publication Critical patent/CN114467308B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

一种视觉媒体处理的方法,包含:为当前视频块,确定在基于子块的运动矢量预测(sbTMVP)过程中使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中根据缩放操作计算sbTMVP过程中使用的运动矢量;以及基于使用运动矢量,进行所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。

Description

视频处理中的参考图片重采样
相关申请的交叉引用
在适用专利法和/或根据巴黎公约的规则下,本申请及时要求提交于2019年9月22日的国际专利申请No.PCT/CN2019/107159的优先权和权益。处于美国专利法下的全部目的,前述申请的整个公开通过引用并入作为本申请的公开的一部分。
技术领域
本专利文档涉及图像和视频编解码和解码技术、装置和系统。
背景技术
数字视频占据互联网和其他数字通信网络上的最大带宽。随着连接的能够接收和显示视频的用户装置的数目增加,期望数字视频使用的带宽需求将持续增长。
发明内容
本公开的技术可以由视频解码器或编码器实施例在使用替代时域运动矢量预测的视频解码或编码期间使用。
在一个示例性方面中,公开了一种视频处理方法。方法包含为当前视频块,确定在基于子块的运动矢量预测(sbTMVP)过程中使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中根据缩放操作计算在sbTMVP过程中使用的运动矢量;以及基于使用运动矢量,进行所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
在另一示例性方面中,公开了另一视频处理方法。方法包含为当前视频块,确定在基于子块的时域运动矢量预测(sbTMVP)过程中所使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中关于当前视频块的中心点计算在sbTMVP过程中使用的运动矢量;通过应用一个或多个操作而修改当前视频块的中心点;以及基于使用通过应用一个或多个操作而修改的中心点,进行所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
在又一示例性方面中,公开了另一视频处理方法。方法包含为当前视频块,确定在基于子块的时域运动矢量预测(sbTMVP)过程中所使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中关于共位图片中的对应块中的点计算在sbTMVP过程中使用的运动矢量;通过应用一个或多个操作而修改共位图片中的对应块中的点;以及基于使用通过应用一个或多个操作而修改的共位图片中的对应块中的点,进行所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
在又一方面中,公开了视频处理的另一方法。方法包含:对使用子图片的在视觉媒体数据中包含的视频图片与视觉媒体数据的比特流表示之间的转换,确定与一个或多个子图片有关的规则被所述转换满足;以及根据约束的规则进行所述转换,其中规则指定视频图片中的子图片的尺寸是与视频图片相关联的编解码树单元尺寸的整数倍。
在又一示例性方面中,公开了视频处理的另一方法。方法包含:对使用子图片的在视觉媒体数据中包含的视频图片与视觉媒体数据的比特流表示之间的转换,确定与一个或多个子图片有关的规则被所述转换满足;以及根据约束的规则进行所述转换,其中规则指定视频图片中的全部子图片不重叠,并且视频图片中的全部子图片一起覆盖整个视频图片。
在又一示例性方面中,公开了视频处理的另一方法。方法包含:对视觉媒体的视频单元与视觉媒体数据的比特流表示之间的转换,进行确定在转换期间是否使用参考图片重采样(RPR)技术;基于所述确定进行所述转换,其中对应于所述确定的标志在序列参数集级别被包含在比特流表示中。
在又一示例性方面中,公开了视频处理的另一方法。方法包含基于满足条件,在运动补偿过程期间选择插值滤波以推导视觉媒体数据的当前块的预测块,其中条件至少部分基于确定参考图片的分辨率不同于当前图片的分辨率和/或与参考图片相关联的窗的维度不同于与当前图片相关联的窗的维度;以及进行视觉媒体数据的当前块与当前块的比特流表示之间的转换。
在又一示例性方面中,公开了视频处理的另一方法。方法包含:对视觉媒体数据的当前块与视觉媒体数据的比特流表示之间的转换,确定当前块是组合帧间帧内预测(CIIP)块,其中CIIP块的帧内预测块是使用变换单元(TU)的尺寸生成的,其中,在组合帧间帧内预测(CIIP)块中,当前块的最终预测是基于当前块的帧间预测和当前块的帧内预测的加权和;以及基于所述确定进行所述转换。
在又一示例性方面中,公开了视频编码器设备。视频编码器设备包含处理器,处理器被配置为实现本文中所描述的方法。
在又一示例性方面中,公开了视频解码器设备。视频解码器设备包含处理器,处理器被配置为实现本文中所描述的方法。
在又一方面中,公开了计算机可读介质,其具有代码存储在其上。当由处理器执行代码时,使处理器实现本文档中描述的方法。
本文档中描述了这些和其他方面。
附图说明
图1是Merge候选列表构建的推导过程的示例。
图2示出了空域Merge候选的示例性位置。
图3示出了为空域Merge候选的冗余检查考虑的候选对的示例。
图4A-4B示出了N×2N和2N×N分割的第二PU的示例性位置。
图5是时域Merge候选的运动矢量缩放的示例性图示。
图6示出了时域Merge候选的示例性候选位置,C0和C1。
图7示出了组合双向预测Merge候选的示例。
图8示出了运动矢量预测候选的示例性推导过程。
图9是空域运动矢量候选的运动矢量缩放的示例性图示。
图10示出了CU的替代时域运动矢量预测(ATMVP)运动预测的示例。
图11示出了具有四个子块(A-D)的一个CU及其邻接块(a-d)的示例。
图12是以不同MV精度编码的示例的流程图
图13A-13B示出了135度分割类型(从左顶角到右底角划分)和45度划分模式。将CU划分为两个三角形预测单元(两个划分模式)的图示。
图14示出了邻接块的位置的示例。
图15示出了视频块的上和左块的示例。
图16A-16B示出了2控制点运动矢量(CPMV)和3CPMV的示例。
图17示出了每个子块的仿射MVF的示例。
图18A-18B示出了4和6参数仿射模型的示例。
图19是继承仿射候选的AF_INTER的MVP。
图20示出了构建AF_INTER中的仿射运动预测器的示例。
图21A-21B示出了AF_MERGE中的仿射编解码中的控制点运动矢量的示例。
图22示出了仿射Merge模式的候选位置的示例。
图23示出了帧内图片块复制操作的示例。
图24示出了共位图片中的有效对应区域的示例。
图25示出了基于历史的运动矢量预测的示例性流程图。
图26示出了修改的Merge列表构建过程。
图27示出了在当前块在基本区域之内时的提出有效区域的示例性实施例。
图28示出了在当前块不在基本区域之内时的有效区域的示例性实施例。
图29是视频处理设备的示例的框图。
图30是视频处理方法的示例的流程图。
图31A示出了当前标准中的默认运动信息的标识的位置的示例。
图31B示出了提出标准中的默认运动信息的标识的位置的示例。
图32是可以实现公开的技术的示例性视频处理系统的框图。
图33是视觉媒体处理方法的示例的流程图。
图34是视觉媒体处理方法的示例的流程图。
图35是视觉媒体处理方法的示例的流程图。
图36是视觉媒体处理方法的示例的流程图。
图37是视觉媒体处理方法的示例的流程图。
图38是视觉媒体处理方法的示例的流程图。
图39是视觉媒体处理方法的示例的流程图。
图40是视觉媒体处理方法的示例的流程图。
图41是图示了示例性视频编解码系统的框图。
图42是图示了根据本公开的一些实施例的编码器的框图。
图43是图示了根据本公开的一些实施例的解码器的框图。
具体实施方式
本文档提供了可以由视频比特流的解码器使用的各种技术,以改善解压缩或解码的数字视频或图像的质量。另外,视频编码器还可以在编码的过程期间实现这些技术以便重构用于进一步编码的解码帧。
在本文档中使用章节标题以易于理解,且不将实施例和技术限制到对应的章节。因此,来自一个章节的实施例可以与来自其他章节的实施例组合。
1.概述
本专利文档涉及视频编解码技术。具体地,其涉及视频编解码中的运动矢量编解码。它可以应用于像HEVC之类的现有的视频编解码标准或者待最终确定的标准(通用视频编解码)。它也可以适用于未来的视频编解码标准或视频编码器。
2.引言
视频编解码标准主要是通过众所周知的ITU-T和ISO/IEC标准的发展而得以演进。ITU-T制作了H.261和H.263标准,ISO/IEC制作了MPEG-1和MPEG-4 Visual标准,并且两个组织联合制作了H.262/MPEG-2视频标准和H.264/MPEG-4高级视频编解码(Advanced VideoCoding,AVC)标准和H.265/HEVC标准。从H.262开始,视频编解码标准基于混合视频编解码结构,其中利用时域预测加变换编解码。为了探索HEVC之外的未来视频编解码技术,由VCEG和MPEG于2015年联合成立联合视频探索团队(JVET)。从那时起,JVET采用了许多新方法并将其纳入名为联合勘探模型(JEM)的参考软件。2018年4月,VCEG(Q6/16)和ISO/IEC JTC1SC29/WG11(MPEG)之间的联合视频专家团队(JVET)成立,致力于VVC标准,与HEVC相比,其比特率降低了50%。
最新版本的VVC草案,即,多功能视频编解码(草案3)可以在以下位置找到:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/12_Macao/wg11/JVET-L1001-v2.zip。
名为VTM的VVC的最新参考软件可以在以下位置找到:https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/tags/VTM-3.0rc1
2.1 HEVC/H.265中的帧间预测
每个帧间预测PU具有一个或两个参考图片列表的运动参数。运动参数包含运动矢量和参考图片索引。两个参考图片列表之一的使用还可以使用inter_pred_idc信令通知。运动矢量可以显式编解码为相对于预测器的增量。
当使用跳过(skip)模式来编解码CU时,一个PU与该CU相关联,并且不存在显著的残差系数,不存在编解码的运动矢量增量或参考图片索引。指定Merge模式,由此从邻接PU——包括空域和时域候选——获得用于当前PU的运动参数。Merge模式可以应用于任何帧间预测的PU,而不仅适用于跳过模式。Merge模式的替代方案是运动参数的显式传输(explicit transmission),其中运动矢量(更确切地,相比于运动矢量预测器的运动矢量差(MVD))、每个参考图片列表的对应参考图片索引、参考图片列表使用对每个PU被显式信令通知。这样的模式在本公开中被命名为高级运动矢量预测。
当信令通知指示要使用两个参考图片列表中的一个时,PU从一个样本块产生。这通常被称为“单向预测”。单向预测可用于P条带和B条带。
当信令通知指示要使用两个参考图片列表时,PU从两个样本块产生。这被称为“双向预测”。双向预测仅可用于B条带。
下文提供了在HEVC中规定的帧间预测模式的详细信息。说明将从Merge模式开始。
2.1.1参考图片列表
在HEVC中,术语帧间预测用于表示从当前解码的图片以外的参考图片的数据元素(例如,样本值或运动矢量)推导的预测。像在H.264/AVC中一样,可以从多个参考图片来预测图片。用于帧间预测的参考图片被组织在一个或多个参考图片列表中。参考索引识别应使用列表中的哪些参考图片来创建预测信号。
单个参考图片列表——列表0(List 0)被用于P条带,并且两个参考图片列表——列表0(List 0)和列表1(List 1)被用于B条带。就捕获/显示顺序而言,列表0/1中包含的参考图片可以是来自过去和将来的图片。
2.1.2 Merge模式
2.1.2.1 Merge模式的候选的推导
当使用Merge模式预测PU时,从比特流解析出指向Merge候选列表(Mergecandidates list)中的条目的索引,并且该索引被用于检索运动信息。该列表的构建在HEVC标准中明确并可以根据以下步骤顺序进行总结:
步骤1:初始候选推导
步骤1.1:空域候选推导
步骤1.2:空域候选的冗余检查
步骤1.3:时域候选推导
步骤2:附加候选插入
步骤2.1:创建双向预测候选
步骤2.2:插入零运动候选
在图1中也示意性地描绘了这些步骤。对于空域Merge候选推导,在位于五个不同位置的候选中选择最多四个Merge候选。对于时域Merge候选推导,在两个候选中选择最多一个Merge候选。由于在解码器处假设每个PU的候选的数量为常数,因此当从步骤1获得的候选的数量未达到在条带头中信令通知的Merge候选的最大数量(MaxNumMergeCand)时,生成附加的候选。由于候选的数量是恒定的,因此使用二进制一元截断(TU)来编码最佳Merge候选的索引。如果CU的尺寸等于8,则当前CU的所有PU共享单个Merge候选列表,该单个Merge候选列表与2N×2N预测单元的Merge候选列表相同。
在下文中,详细描述了与前述步骤相关联的操作。
2.1.2.2空域候选推导
在空域Merge候选的推导中,选择位于图2中图示的位置的候选之中最多四个Merge候选。推导的顺序是A1、B1、B0、A0和B2。仅当位置A1、B1、B0、A0的任何PU不可用(例如因为其属于另一条带或片)或是帧内编解码时,才考虑位置B2。在位置A1处的候选被添加后,添加其余候选经受冗余检查,所述冗余检查确保具有相同运动信息的候选被从列表排除,从而改善编解码效率。为了降低计算复杂度,不是全部可能的候选对都在提到的冗余检查中被考虑。反之,仅与图3中的箭头链接的对被考虑,并且仅当用于冗余检查的对应的候选不具有相同的运动信息,才将候选添加到列表。复制运动信息的另一源是与不同于2Nx2N的分割相关联的″第二PU″。作为示例,图4A-4B分别图示了N×2N和2N×N的情况的第二PU。在当前PU被分割为N×2N时,列表构建不考虑位置A1处的候选。事实上,通过添加该候选将导致具有相同运动信息的两个预测单元,其对于仅具有编解码单元中的一个PU是冗余的。相似地,在当前PU被分割为2N×N时不考虑位置B1
2.1.2.3时域候选推导
在此步骤中,只有一个候选被添加到列表中。特别地,在该时域Merge候选的推导中,基于共位(co-located)的PU来推导缩放的运动矢量,该共位的PU属于相对于给定参考图片列表内的当前图片具有最小POC差的图片。在条带头中明确地信令通知用于共位的PU的推导的参考图片列表。如图5中虚线所示,获得了用于时域Merge候选的缩放的运动矢量的推导,该用于时域Merge候选的缩放的运动矢量使用POC距离tb和td而从共位的PU的运动矢量被缩放,其中tb被定义为当前图片的参考图片与该当前图片之间的POC差,并且td被定义为共位图片的参考图片与该共位图片之间的POC差。时域Merge候选的参考图片索引被设置为等于零。在HEVC说明书中描述了缩放过程的实际实现。对于B条带,获得两个运动矢量并将其组合以产生双向预测Merge候选,该两个运动矢量中的一个用于参考图片列表0(list 0)而另一个用于参考图片列表1(list 1)。
图5是时域Merge候选的运动矢量缩放的图示。
在属于参考帧的共位PU(Y)中,在候选C0和C1之间选择时域候选的位置,如图6所示。如果位置C0处的PU不可用、是帧内编解码的或在当前编解码树单元(CTU,又已知为LCU、最大编解码单元)行之外,则使用位置C1。否则,在时域Merge候选的推导中使用位置C0
图6示出了时域Merge候选的候选位置的示例,C0和C1。
2.1.2.4附加候选插入
除了空域和时域Merge候选之外,还存在两种附加类型的Merge候选:组合的双向预测Merge候选和零Merge候选。通过利用空域和时域Merge候选来生成组合的双向预测Merge候选。组合的双向预测Merge候选仅用于B条带。通过将初始候选的第一参考图片列表运动参数与另一个候选的第二参考图片列表运动参矩阵合来生成组合的双向预测候选。如果这两个元组(tuple)提供不同的运动假设,则它们将形成一个新的双向预测候选。作为示例,图7示出了以下情况,其中在该过程中原始列表(在左方)中具有mvL0和refIdxL0或mvL1和refIdxL1的两个候选被用于创建组合的双向预测Merge候选,该组合的双向预测Merge候选被添加到最终列表(在右方)。关于被认为生成这些附加Merge候选的组合有诸多规则。
零运动候选被插入以填充Merge候选列表的其余条目,并因此达到MaxNumMergeCand容量。这些候选具有零空域位移和参考图片索引,参考图片索引始于零且在每次新的零运动候选被添加到列表时增大。
更具体地,按顺序进行以下步骤,直到Merge列表是满的为止:
1.将变量numRef设定为与P条带的列表0相关联的参考图片的数目,或B条带的两个列表中的参考图片的最小数目;
2.添加非重复零运动候选:
对于变量i为0...numRef-1,列表0(如果P条带)或对于两个列表(如果B条带)添加默认运动候选,其中MV设定为(0,0)且参考图片索引设定为i。
3.添加重复零运动候选,其中MV设定为(0,0),列表0的参考图片索引设定为0(如果P条带)且两个列表的参考图片索引设定为0(如果B条带)。
最终,不对这些候选进行冗余检查。
2.1.3 AMVP
AMVP利用运动矢量与邻接PU的空域-时域相关性,该空域-时域相关性用于运动参数的显式传输。对于每个参考图片列表,通过下述操作来构建运动矢量候选列表:首先检查左方、上方在时域上邻接PU位置的可用性,移除冗余候选,并添加零矢量,以使候选列表为恒定长度。然后,编码器可以从候选列表中选择最佳预测器,并传输指示所选候选的对应索引。与Merge索引信令通知类似,使用一元截断来编码最佳运动矢量候选的索引。在这种情况下要编码的最大值是2(参见图8)。在以下的节中,提供了关于运动矢量预测候选的推导过程的细节。
2.1.3.1 AMVP候选的推导
图8概括了运动矢量预测候选的推导过程。
在运动矢量预测中,考虑两种类型的运动矢量候选:空域运动矢量候选和时域运动矢量候选。如图2示出的,对于空域运动矢量候选推导,最终基于位于五个不同位置的每个PU的运动矢量来推导两个运动矢量候选。
对于时域运动矢量候选推导,从基于两个不同的共位位置推导的两个候选中选择一个运动矢量候选。在制作空域-时域候选的第一列表之后,移除列表中的重复的运动矢量候选。如果潜在候选的数量大于2,则从列表中移除其在相关联的参考图片列表内的参考图片索引大于1的运动矢量候选。如果空域-时域运动矢量候选的数量小于2,则将附加的零运动矢量候选添加到列表中。
2.1.3.2空域运动矢量候选
在空域运动矢量候选的推导中,在五个潜在候选之中考虑最多两个候选,五个潜在候选是从位于图2所示的位置中的PU推导的,这些位置与运动合并的位置相同。当前PU的左侧的推导的顺序被定义为A0、A1和缩放的A0、缩放的A1。当前PU的上侧的推导的顺序被定义为B0、B1、B2、缩放的B0、缩放的B1、缩放的B2。因此对于每侧存在可以用作运动矢量候选的四种情况,其中两种情况不需要使用空域缩放,两种情况使用空域缩放。四种不同情况概括如下。
·没有空域缩放
-(1)相同参考图片列表,并且相同参考图片索引(相同POC)
-(2)不同参考图片列表,但是相同参考图片(相同POC)
·空域缩放
-(3)相同参考图片列表,但是不同参考图片(不同POC)
-(4)不同参考图片列表,并且不同参考图片(不同POC)
首先检查无空域缩放情况,然后是空域缩放。当POC在邻接PU的参考图片和当前PU的参考图片不同时考虑空域缩放,而与参考图片列表无关。如果左侧候选的全部PU不可用或是帧内编解码的,则允许上方运动矢量的缩放,以帮助并行推导左侧和上方MV候选。否则,对于上方运动矢量不允许空域缩放。
在空域缩放过程中,以与时域缩放相似的方式缩放邻接PU的运动矢量,如图9所示。主要差异是当前PU的参考图片列表和索引被给定作为输入;实际缩放过程与时域缩放相同。
2.1.3.3时域运动矢量候选
除参考图片索引推导之外,推导时域Merge候选的全部过程与推导空域运动矢量候选(见图6)相同。参考图片索引被信令通知到解码器。
2.2JEM中的基于子CU的运动矢量预测方法
在具有QTBT的JEM中,每个CU可以具有对于每个预测方向至多一组运动参数。通过将大CU划分为子CU并推导大CU的全部子CU的运动信息,在编码器中考虑两个子CU级别运动矢量预测方法。替代时域运动矢量预测(ATMVP)方法允许每个CU在共位参考图片中从小于当前CU的多个块取回多组运动信息。在空时运动矢量预测(STMVP)方法中,通过使用时域运动矢量预测器和空域邻接运动矢量递归地推导子CU的运动矢量。
为了保留子CU运动预测的更准确的运动场,参考帧的运动压缩当前被禁用。
图10示出了CU的ATMVP运动预测的示例。
2.2.1替代时域运动矢量预测
在替代时域运动矢量预测(ATMVP)方法中,通过从小于当前CU的块取回多组运动信息(包含运动矢量和参考索引),修改运动矢量时域运动矢量预测(TMVP)。子CU是正方形N×N块(N被默认设定为4)。
ATMVP在两步中预测CU内的子CU的运动矢量。第一步骤是识别具有所谓的时域矢量的参考图片的对应块。参考图片称为运动源图片。第二步骤是将当前CU划分为子CU,并且从对应于每个子CU的块获取运动矢量以及每个子CU的参考索引。
在第一步骤中,通过当前CU的空域邻接块的运动信息确定参考图片和对应块。为避免邻接块的重复扫描过程,使用当前CU的Merge候选列表中的第一Merge候选。第一可用运动矢量及其相关联的参考索引被设定为时域矢量和对运动源图片的索引。以此方式,在ATMVP中,与TMVP相比,对应块可以更准确地被识别,其中对应块(有时称为共位块)相对于当前CU总是在右底或中心位置。
在第二步骤中,通过对当前CU的坐标加上时域矢量而由运动源图片中的时域矢量识别子CU的对应块。对于每个子CU,其对应块(覆盖中心样点的最小运动网格)的运动信息被用于推导子CU的运动信息。在识别对应的N×N块的运动信息之后,其被以与HEVC的TMVP相同的方式转换为当前子CU的运动矢量和参考索引,其中运动缩放和其他过程适用。例如,解码器检查低延迟条件(即当前图片的全部参考图片的POC都小于当前图片的POC)是否被满足,并且可能地对每个子CU使用运动矢量MVx(对应于参考图片列表X的运动矢量)至预测运动矢量MVy(其中X等于0或1,并且Y等于1-X)。
2.2.2空时运动矢量预测(STMVP)
在此方法中,遵循格栅扫描顺序递归地推导子CU的运动矢量。图11图示了该概念。例如,图11示出了8×8CU,其具有四个4×4子CU A、B、C和D。当前帧中的邻接4×4块被标记为a、b、c和d。
子CU A的运动推导始于识别其两个空域邻域。第一邻域是子CU A上方的N×N块(块c)。如果该块c不可用或是帧内编解码的,则子CU A上方的其他N×N块被检查(从左到右,始于块c)。第二邻域是子CU A左侧的块(块b)。如果块b不可用或是帧内编解码的,则子CUA左侧的其他块被检查(从顶至底,始于块b)。对于每个列表从邻接块获取的运动信息被缩放到给定列表的第一参考帧。接下来,通过以下与HEVC中所指定的TMVP推导的相同过程,推导子块A的时域运动矢量预测器(TMVP)。位置D处的共位块的运动信息被取回并相应地缩放。最终,在检索和缩放运动信息之后,全部可用运动矢量(多至3个)对于每个参考列表被分开地平均。平均运动矢量被分配为当前子CU的运动矢量。
2.2.3子CU运动预测模式信令通知
子CU模式被启用作为附加Merge候选,并且不存在信令通知模式所需的附加语法元素。两个附加Merge候选被添加到每个CU的Merge候选列表,以表示ATMVP模式和STMVP模式。如果序列参数集指示ATMVP和STMVP被启用,则使用多至七个Merge候选。附加Merge候选的编解码逻辑与HM中的Merge候选的编码逻辑相同,这意味着,对于P或B条带中的每个CU,两个附加Merge候选需要两个更多的RD检查。
在JEM,Merge索引的全部二进制数被CABAC上下文编解码。而在HEVC中,仅第一二进制数被上下文编解码,并且其余二进制数被上下文旁路编解码。
2.3VVC中的帧间预测方法
存在用于帧间预测改善的若干新的编解码工具,诸如用于信令通知MVD的适应性运动矢量差异分辨率(AMVR)、仿射预测模式、三角形预测模式(TPM)、ATMVP、归一化双向预测(GBI)、双向光流(BIO)。
2.3.1适应性运动矢量差异分辨率
在HEVC中,当use_integer_mv_flag在条带头中等于0时,(在运动矢量与PU的预测运动矢量之间的)运动矢量差异(MVD)被以四分之一亮度样点为单位信令通知。在VVC中,局部适应性运动矢量分辨率(LAMVR)被引入。在VVC中,MVD可以以四分之一亮度样点、整数亮度样点或四亮度样点(即,1/4-像素,1-像素,4-像素)为单位编解码。MVD分辨率在编解码单元(CU)级别控制,并且MVD分辨率标志对于具有至少一个非零MVD分量的每个CU被有条件地信令通知。
对于具有至少一个非零MVD分量的CU,信令通知第一标志以指示在CU中是否使用四分之一亮度样点MV精度。当第一标志(等于1)指示四分之一亮度样点MV精度不被使用时,信令通知另一标志以指示是否使用整数亮度样点MV精度或四亮度样点MV精度。
当CU的第一MVD分辨率标志为零时,或对CU不编解码(意味着CU中的全部MVD都为零)时,四分之一亮度样点MV分辨率被用于CU。当CU使用整数亮度样点MV精度或四亮度样点MV精度时,CU的AMVP候选列表中的MVP被取整到对应的精度。
在编码器中,使用CU级别RD检查以确定哪个MVD分辨率要被用于CU。即,对于每个MVD分辨率进行三次CU级别RD检查。为加快编码器速度,以下编码方案在JEM中被应用。
·在具有普通四分之一亮度样点MVD分辨率的CU的RD检查期间,当前CU的运动信息(整数亮度样点准确度)被储存。储存的运动信息(在取整之后)被用作进一步在具有整数亮度样点和4亮度样点MVD分辨率的相同CU的RD检查期间的小范围运动矢量细化的起点,使得耗时的运动估计过程不被重复三次。
·具有4亮度样点MVD分辨率的CU的RD检查被有条件地调用。对于CU,当RD成本整数亮度样点MVD分辨率远大于四分之一亮度样点MVD分辨率时,CU的4亮度样点MVD分辨率的RD检查被跳过。
编码过程在图12中示出。首先,测试1/4像素MV,并且RD成本被计算且指代为RDCost0,然后测试整数MV,并且RD成本被指代为RDCost1。如果RDCost1<th*RDCost0(其中th是正值),则测试4像素MV;否则,跳过4像素MV。基本上,当检查整数或4像素MV时,运动信息和RD成本等对于1/4像素MV是已知的,其可以被重复使用以加速整数或4像素MV的编码过程。
2.3.2三角形预测模式
三角形预测模式(TPM)的概念是对于运动补偿预测引入新的三角形分割。如图13A-13B所示,其在对角线或反对角线方向上将CU划分为两个三角形预测单元。CU中的每个三角形预测单元是使用其自身的单向预测运动矢量和参考帧索引帧间预测的,参考帧索引是从单个单向预测候选列表推导的。在预测三角形预测单元之后向对角线边缘应用进行适应性加权过程。然后,变换和量化过程被应用于整个CU。该模式仅应用于Merge模式(跳过模式被视为特殊的Merge模式)。
图13A-13B是将CU划分为两个三角形预测单元(两个划分模式)的图示。例如,图13A示出了135度分割类型(从左顶角到右底角划分)的示例,并且图13B示出了45度划分模式的示例。
2.3.2.1 TPM的单向预测候选列表
单向预测候选列表(名为TPM运动候选列表)由五个单向预测运动矢量候选构成。其被从包含五个空域邻接块(1至5)和两个时域共位块(6至7)的七个邻接块推导,如图14所示。七个邻接块的运动矢量被收集并根据以下顺序放入单向预测候选列表:单向预测运动矢量、双向预测运动矢量的L0运动矢量、双向预测运动矢量的L1运动矢量,以及双向预测运动矢量的L0和L1运动矢量的平均运动矢量。如果候选的数目少于五,则零运动矢量被添加到列表。对TPM在该列表中添加的运动候选被称为TPM候选,从空域/时域块推导的运动信息称为常规运动候选。
更具体地,涉及以下步骤:
1)当添加来自空域邻接块的常规运动候选时,以完整修剪操作从A1、B1、B0、A0、B2、Col和Col2(对应于图14中的块1-7)获取常规运动候选。
2)设定变量numCurrMergeCand=0
3)对于从A1、B1、B0、A0、B2、Col和Col2推导的每个常规运动候选,如果不修剪且numCurrMergeCand小于5,如果常规运动候选是单向预测(来自列表0或列表1),其被直接添加到Merge列表作为TPM候选,且numCurrMergeCand增加1。这样的TPM候选命名为
′原始单向预测候选′。
应用完整修剪
4)对于从A1、B1、B0、A0、B2、Col和Col2推导的每个运动候选,如果不修剪且numCurrMergeCand小于5,如果常规运动候选是双向预测,则来自列表0的运动信息被添加到TPMMerge列表(即,被修改为来自列表0的单向预测)作为新的TPM候选且numCurrMergeCand增加1。这样的TPM候选命名为′截断List0预测候选′。
应用完整修剪。
5)对于从A1、B1、B0、A0、B2、Col和Col2推导的每个运动候选,如果不修剪且numCurrMergeCand小于5,如果常规运动候选是双向预测,则来自列表1的运动信息被添加到TPMMerge列表(即,修改为来自列表1的单向预测),并且numCurrMergeCand增加1。这样的TPM候选命名为′截断的列表1预测候选′。
应用完整修剪。
6)对于从A1、B1、B0、A0、B2、Col和Col2推导的每个运动候选,如果不修剪且numCurrMergeCand小于5,如果常规运动候选是双向预测,
-如果列表0参考图片的条带QP小于列表1参考图片的条带QP,则列表1的运动信息被首先缩放到列表0参考图片,并且两个MV(一个来自原始列表0,而另一个是来自列表1的缩放MV)的平均被添加到TPM Merge列表,这样的候选被称为来自列表0运动候选的平均单向预测,且numCurrMergeCand增加1。
-否则,列表0的运动信息被首先缩放到列表1参考图片,并且两个MV(一个来自原始列表1,而另一个是来自列表0的缩放MV)的平均被添加到TPM Merge列表,这样的TPM候选被称为来自列表1运动候选的平均单向预测,且numCurrMergeCand增加1。
应用完整修剪。
7)如果numCurrMergeCand小于5,则添加零运动矢量候选。
当插入候选到列表时,如果其必须被与全部之前添加的候选比较,以发现其是否相同于它们中的一个,则这样的过程称为完整修剪。
2.3.2.2适应性加权过程
在预测每个三角形预测单元之后,适应性加权过程被应用于两个三角形预测单元之间的对角线边缘以推导整个CU的最终预测。两个加权因数组被定义如下:
·第1加权因数组:{7/8,6/8,4/8,2/8,1/8}和{7/8,4/8,1/8}被分别用于亮度和色度样点;
·第2加权因数组:{7/8,6/8,5/8,4/8,3/8,2/8,1/8}和{6/8,4/8,2/8}被分别用于亮度和色度样点。
基于两个三角形预测单元的运动矢量的比较选择加权因数组。当两个三角形预测单元的参考图片彼此不同或它们的运动矢量差异大于16像素时,使用第2加权因数组。否则,使用第1加权因数组。
2.3.2.3三角形预测模式(TPM)的信令通知
可以首先信令通知指示是否使用TPM的一比特标志。之后,两个划分模式(如图13A-13B中所示)的指示,并且进一步信令通知两个分割中的每一个的所选的Merge索引。
2.3.2.3.1 TPM标志的信令通知
如果亮度块的宽度和高度分别由W和H指代,对于W*H<64,则三角形预测模式被禁用。
当一个块用仿射模式编解码时,三角形预测模式也被禁用。
当一个块用Merge模式编解码时,可以信令通知一比特标志以指示三角形预测模式对于该块被启用还是禁用。
标志以3个上下文编解码,基于以下等式:
Ctx index=((leftblockLavailable&&L is codedwithTPM?)1:0)+((Aboveblock A available&&A is coded with TPM?)1:0);
图15示出了用于TPM标志编解码中的上下文选择的邻接块的示例(A和L)。
2.3.2.3.2两个划分模式的指示的信令通知(如图13所示),以及两个分割中的每一个的所选的Merge索引
注意到,划分模式、两个分割的Merge索引被联合编解码。另外,Merge索引被限制,使得两个分割无法使用相同参考索引。因此,存在2(划分模式)*N(Merge候选的最大数目)*(N-1)个可能性,其中N被设定为5。编解码一个指示,并且划分模式之间的映射、两个Merge索引和编解码指示被从以下定义的阵列推导:
const uint8_tg_TriangleCombination[TRIANGLE_MAX_NUM_CANDS][3]={
{0,1,0},{1,0,1},{1,0,2},{0,0,1},{0,2,0},
{1,0,3},{1,0,4},{1,1,0},{0,3,0},{0,4,0},
{0,0,2},{0,1,2},{1,1,2},{0,0,4},{0,0,3},
{0,1,3},{0,1,4},{1,1,4},{1,1,3},{1,2,1},
{1,2,0},{0,2,1},{0,4,3},{1,3,0},{1,3,2},
{1,3,4},{1,4,0},{1,3,1},{1,2,3},{1,4,1},
{0,4,1},{0,2,3},{1,4,2},{0,3,2},{1,4,3},
{0,3,1},{0,2,4},{1,2,4},{0,4,2},{0,3,4}};
划分模式(45度或135度)=g_TriangleCombination[signaled indication][0];
候选A的Merge索引=g_TriangleCombination[signaled indication][1];
候选B的Merge索引=g_TriangleCombination[signaled indication][2];
一旦推导两个运动候选A和B,两个分割的(PU1和PU2)运动信息可以被从A或B设定。PU1使用Merge候选A还是B的运动信息取决于两个运动候选的预测方向。表1示出了两个用两个分割推导的运动候选A与B之间的关系。
表1:来自推导的两个Merge候选(A,B)的分割的运动信息的推导
Figure BDA0003558313810000171
2.3.2.3.3指示的熵编解码(由merge_triangle_idx指代)
merge_triangle_idx在范围[0,39]内(含端值)。K次指数哥伦布(ExponentialGolomb,EG)编解码被用于merge_triangle_idx的二值化,其中K被设定为1。
K次EG
为在较少比特中编码较大数字(以使用更多比特来编码较小数字为代价),这可以用非负整数参数k归一化。为在k次指数哥伦布编解码中编码非负整数x:
1.使用上述0次指数哥伦布编解码来编码
Figure BDA0003558313810000182
2.以二进制编码x模数2k
表2:指数哥伦布k编解码示例
Figure BDA0003558313810000181
2.3.3仿射运动补偿预测
在HEVC中,仅平移运动模型被应用于运动补偿预测(MCP)。而在实际世界中,存在许多种运动,例如缩放、旋转、透视运动和其他非常规运动。在VVC中,应用具有4参数仿射模型和6参数仿射模型的简化仿射变换运动补偿预测。如图16A-16B所示,块仿射运动场对于4参数仿射模型(图16A)由两个控制点运动矢量(CPMV)描述且对于6参数仿射模型(图16B)由3个CPMV描述。
块的运动矢量场(MVF)由以下等式描述,分别使用等式(1)中的4参数仿射模型(其中4参数被定义为变量a、b、e和f)和等式(2)中的6参数仿射模型(其中4参数被定义为变量a、b、c、d、e和f):
Figure BDA0003558313810000191
Figure BDA0003558313810000192
其中(mvh 0,mvh 0)是左顶角控制点的运动矢量,并且(mvh 1,mvh 1)是右顶角控制点的运动矢量,并且(mvh 2,mvh 2)是左底角控制点的运动矢量,全部三个运动矢量称为控制点运动矢量(CPMV),(x,y)表示相对于当前块内的左顶样点的代表性点的坐标,并且(mvh(x,y),mvv(x,y))是对位于(x,y)的样点推导的运动矢量。CP运动矢量可以被信令通知(如在仿射AMVP模式中)或被实时推导(如在仿射Merge模式中)。w和h是当前块的宽度和高度。实践中,除法是通过具有取整操作的右移实现的。在VTM中,代表性点被定义为子块的中心位置,例如,当相对于当前块内的左顶样点的子块的左顶角的坐标是(xs,ys)时,代表性点的坐标被定位为(xs+2,ys+2)。对于每个子块(即,VTM中的4x4),代表性点被用于推导整个子块的运动矢量。
为了进一步简化运动补偿预测,应用基于子块的仿射变换预测。为了推导每个M×N(在当前VVC中,M和N都被设定为4)子块的运动矢量,如图17所示的每个子块的中心样点的运动矢量被根据等式(1)和(2)计算,并且被取整到1/16分数准确度。然后,应用1/16像素的运动补偿插值滤波以用推导运动矢量生成每个子块的预测。1/16像素的插值滤波由仿射模式引入。
在MCP之后,每个子块的高准确度运动矢量被取整并保存为与普通运动矢量相同的准确度。
2.3.3.1仿射预测的信令通知
相似于平移运动模型,也存在两个模式以信令通知仿射预测的辅助信息。它们是AFFINE_INTER和AFFINE_MERGE模式。
2.3.3.2 AF_INTER模式
对于宽度和高度两者都大于8的CU,可以应用AF_INTER模式。CU级别中的仿射标志在比特流中被信令通知以指示是否使用AF_INTER模式。
在该模式中,对于每个参考图片列表(列表0或列表1),按以下顺序用三种类型的仿射运动预测器构建仿射AMVP候选列表,其中每个候选包含当前块的估计CPMV。在编码器侧找到的最佳CPMV(诸如图20中的mv0mv1mv2)的差异和估计CPMV被信令通知。此外,还信令通知从其推导的估计CPMV的仿射AMVP候选的索引。
1)继承仿射运动预测器
检查顺序相似于HEVC AMVP列表构建中的空域MVP的顺序。首先,从{A1,A0}中的第一块推导左继承仿射运动预测器,{A1,A0}中的第一块是仿射编解码的且具有与当前块中相同的参考图片。第二,从{B1,B0,B2}中的第一块推导以上继承仿射运动预测器,{B1,B0,B2}中的第一块是仿射编解码的且具有与当前块中相同的参考图片。在图19中示出五个块A1、A0、B1、B0、B2。
一旦发现邻接块是以仿射模式编解码的,覆盖邻接块的编解码单元的CPMV被用于推导当前块的CPMV的预测器。例如,如果A1用非仿射模式编解码且A0用4参数仿射模式编解码,则将从A0推导左继承仿射MV预测器。在此情况下,覆盖A0的CU的CPMV(在图21B中,对左顶CPMV指代为
Figure BDA0003558313810000201
并且对右顶CPMV指代为
Figure BDA0003558313810000202
)被用于推导当前块的估计CPMV,对当前块的左顶(具有坐标(x0,y0))、右顶(具有坐标(x1,y1))和右底位置(具有坐标(x2,y2))指代为
Figure BDA0003558313810000203
2)构建的仿射运动预测器
构建的仿射运动预测器由从具有相同参考图片的邻接帧间编解码块推导的控制点运动矢量(CPMV)构成,如图20所示。如果当前仿射运动模型是4参数仿射,则CPMV的数目为2,否则如果当前仿射运动模型是6参数仿射,则CPMV的数目是3。左顶CPMV
Figure BDA0003558313810000204
由组{A,B,C}中的第一块处的MV推导,组{A,B,C}中的第一块是帧间编解码的且具有与当前块中相同的参考图片。右顶CPMV
Figure BDA0003558313810000205
由组{D,E}中的第一块处的MV推导,组{D,E}中的第一块是帧间编解码的且具有与当前块中相同的参考图片。左底CPMV
Figure BDA0003558313810000206
由组{F,G}中的第一块处的MV推导,{F,G}中的第一块是帧间编解码的且具有与当前块中相同的参考图片。
-如果当前仿射运动模型是4参数仿射,则仅当
Figure BDA0003558313810000207
Figure BDA0003558313810000208
都被找到(即,
Figure BDA0003558313810000211
Figure BDA0003558313810000212
被用作当前块的左顶(具有坐标(x0,y0))、右顶(具有坐标(x1,y1))位置的估计CPMV)时,构建的仿射运动预测器才被插入到候选列表中。
-如果当前仿射运动模型是6参数仿射,则仅当
Figure BDA0003558313810000213
Figure BDA0003558313810000214
都被找到(即,
Figure BDA0003558313810000215
Figure BDA0003558313810000216
被用作左顶(具有当前块的坐标(x0,y0))、右顶(具有坐标(x1,y1))和右底(具有坐标(x2,y2))位置的估计CPMV)时,构建的仿射运动预测器才被插入到候选列表中。
当将构建的仿射运动预测器插入到候选列表中时,不应用修剪过程。
3)普通AMVP运动预测器
应用以下,直到仿射运动预测器的数目达到最大值。
1)通过将全部CPMV设定为等于
Figure BDA0003558313810000217
(如果可用)推导仿射运动预测器。
2)通过将全部CPMV设定为等于
Figure BDA0003558313810000218
(如果可用)推导仿射运动预测器。
3)通过将全部CPMV设定为等于
Figure BDA0003558313810000219
(如果可用)推导仿射运动预测器。
4)通过将全部CPMV设定为等于HEVC TMVP(如果可用)推导仿射运动预测器。
5)通过将全部CPMV设定为零MV推导仿射运动预测器。
注意到,
Figure BDA00035583138100002110
在构建的仿射运动预测器中已经被推导。
图18A示出了4参数仿射模型的示例。图18B示出了6参数仿射模型的示例。
图19示出了继承仿射候选的AF_INTER的MVP的示例。
图20示出了构建的仿射候选的AF_INTER的MVP的示例。
在AF_INTER模式中,当使用4/6参数仿射模式时,需要2/3控制点,并且因此对于这些控制点需要编解码2/3MVD,如图18所示。在JVET-K0337中,提出推导MV如下,即,从mvd0预测mvd1和mvd2
Figure BDA00035583138100002111
Figure BDA00035583138100002112
Figure BDA00035583138100002113
其中
Figure BDA00035583138100002114
mvdi和mv1分别是左顶像素(i=0)、右顶像素(i=1)或左底像素(i=2)的预测运动矢量、运动矢量差异和运动矢量,如图18B所示。请注意,添加两个运动矢量(例如,mvA(xA,yA)和mvB(xB,yB))等于两个分开分量的总和,即,newMV=mvA+mvB,并且newMV的两个分量被分别设定为(xA+xB)和(yA+yB)。
2.3.3.3 AF_MERGE模式
当在AF_MERGE模式中应用CU时,其从有效邻域重构块得到用仿射模式编解码的第一块。并且候选块的选择顺序是从左、上、右上、左底到左上,如图21A所示(按顺序指代为A、B、C、D、E)。例如,如果邻域左底块是以仿射模式编解码的(在图21B中指代为A0),则取回包含块A的邻接CU/PU的左顶角、右上角和左底角的控制点(CP)运动矢量mv0 N、mv1 N和或mv2 N。并且当前CU/PU上的左顶角/右顶/左底的运动矢量mv0 C、mv1 C和mv2 C(其仅用于6参数仿射模型)被基于mv0 N、mv1 N和mv2 N计算。在VTM-2.0中,如果当前块是仿射编解码的,则位于左顶角处的子块(例如VTM中的4×4块)储存mv0,位于右顶角处的子块储存mv1。如果当前块是用6参数仿射模型编解码的,则位于左底角的子块储存mv2;否则(用4参数仿射模型),LB储存mv2′。其他子块储存用于MC的MV。
在推导当前CU的CPMV mv0 C、mv1 C和mv2 C之后,根据简化仿射运动模型等式(1)和(2),生成当前CU的MVF。为了识别当前CU是否是用AF_MERGE模式编解码的,当存在以仿射模式编解码的至少一个邻域块时,在比特流中信令通知仿射标志。
在JVET-L0142和JVET-L0632中,用以下步骤构建仿射Merge候选列表:
1)插入继承仿射候选
继承仿射候选是指从其有效邻域仿射编解码块的仿射运动模型推导候选。最多两个继承仿射候选被从邻接块的仿射运动模型推导并被插入到候选列表中。对于左预测器,扫描顺序是{A0,A1};对于上预测器,扫描顺序是{B0,B1,B2}。
2)插入构建的仿射候选
如果仿射Merge候选列表中的候选的数目小于MaxNumAffineCand(例如,5),则构建的仿射候选被插入到候选列表中。构建的仿射候选是指通过组合每个控制点的邻域运动信息来构建候选。
a)首先从图22中所示的指定空域邻域和时域邻域推导控制点的运动信息。CPk(k=1,2,3,4)表示第k个控制点。A0、A1、A2、B0、B1、B2和B3是用于预测CPk(k=1,2,3)的空域位置;T是用于预测CP4的时域位置。
CP1、CP2、CP3和CP4的坐标分别是(0,0)、(W,0)、(H,0)和(W,H),其中W和H是当前块的宽度和高度。
根据以下优先级顺序获取每个控制点的运动信息:
-对于CP1,检查优先级是B2->B3->A2。B2如果可用则被使用。否则,如果B2可用,则使用B3。如果B2和B3两者都不可用,则使用A2。如果全部三个候选不可用,则无法获得CP1的运动信息。
-对于CP2,检查优先级是B1->B0。
-对于CP3,检查优先级是A1->A0。
-对于CP4,使用T。
b)其次,控制点的组合被用于构建仿射Merge候选。
I.需要三个控制点的运动信息来构建6参数仿射候选。可以从以下四个组合之一选择三个控制点:({CP1,CP2,CP4},{CP1,CP2,CP3},{CP2,CP3,CP4},{CP1,CP3,CP4})。组合{CP1,CP2,CP3},{CP2,CP3,CP4},{CP1,CP3,CP4}将被转换为由左顶、右顶和左底控制点表示的6参数运动模型。
II.需要两个控制点的运动信息来构建4参数仿射候选。可以从两个组合之一选择两个控制点:({CP1,CP2},{CP1,CP3})。两个组合将被转换为由左顶和右顶控制点表示的4参数运动模型。
III.构建的仿射候选的组合按以下顺序被插入到候选列表中:
{CP1,CP2,CP3},{CP1,CP2,CP4},{CP1,CP3,CP4},{CP2,CP3,CP4},{CP1,CP2},{CP1,CP3}
i.对于每个组合,检查每个CP的列表X的参考索引,如果它们全部相同,则该组合具有列表X的有效CPMV。如果组合不对列表0和列表1两者具有有效CPMV,则该组合被标记为无效。否则,其有效,并且CPMV被置入子块Merge列表中。
3、)用零运动矢量填充
如果仿射Merge候选列表中的候选的数目小于5,则具有零参考索引的零运动矢量被插入到候选列表中,直到列表是满的为止。
更具体地,对于子块Merge候选列表,具有设定为(0,0)的MV和设定为来自列表0的单向预测的预测方向(对于P条带)和双向预测(对于B条带)的4参数Merge候选。
2.3.4当前图片参考
帧内块复制(又已知为IBC,或帧内图片块补偿)(也称为当前图片参考(CPR))被用在HEVC屏幕内容编解码扩展(SCC)中。该工具对于编解码屏幕内容视频非常高效,因为文本和图形丰富内容中的重复图案在相同图片内频繁发生。以具有相等或相似图案的之前重构的块作为预测器可以有效减少预测误差并因此改善编解码效率。帧内块补偿的示例在图23中图示。
相似于HEVC SCC中的CRP的设计,在VVC中,IBC模式的使用在序列和图片级别信令通知。当在序列参数集(SPS)启用IBC模式时,其可以在图片级别被启用。当IBC模式在图片级别被启用时,当前重构的图片被视为参考图片。因此,基于现有VVC帧间模式不需要块级别的语法改变来信令通知IBC模式的使用。
主要特征:
-其被视为普通帧间模式。因此,Merge模式和跳过模式也对IBC模式可用。Merge候选列表构建被统一,包含来自在IBC模式或HEVC帧间模式中编解码的邻接位置的Merge候选。取决于所选的Merge索引,Merge模式或跳过模式下的当前块可以合并到IBC模式编解码的邻域或以其他普通帧间模式编解码的、以不同图片作为参考图片的邻域。
-IBC模式的块矢量预测和编解码方案重复使用用于运动矢量预测的方案和HEVC帧间模式中的编解码(AMVP和MVD编解码)。
-IBC模式的运动矢量(也称为块矢量)被以整数像素精度编解码,但在解码后在存储器中以1/16像素精度储存,因为在插值和去方块阶段使用四分之一像素精度。当在用于IBC模式的运动矢量预测中使用时,储存的矢量预测器将被右移4。
-搜索范围:其被限制为在当前CTU内。
-当仿射模式/三角形模式/GBI/加权预测启用时,CPR被禁止。
2.3.5 VVC中的Merge列表设计
存在VVC中支持的三种不同Merge列表构建过程:
1)子块Merge候选列表:其包含ATMVP和仿射Merge候选。一个Merge列表构建过程对仿射模式和ATMVP模式两者共享。此处,ATMVP和仿射Merge候选可以按顺序添加。子块Merge列表尺寸在条带头中信令通知,并且最大值为5。
2)单向预测TPM Merge列表:对于三角形预测模式,对于两个分割的一个Merge列表构建过程被共享,即使两个分割可以选择它们自身的Merge候选索引。当构建该Merge列表时,块的空域邻接块和两个时域块被检查。从空域邻域和时域块推导的运动信息在我们的IDF中称为常规运动候选。这些常规运动候选被进一步用于推导多个TPM候选。请注意,在整个块级别进行变换,即使两个分割可以使用不同运动矢量以生成它们自身的预测块。
单向预测TPM Merge列表尺寸固定为5。
3)常规Merge列表:对于其余编解码块,一个Merge列表构建过程被共享。此处,空域/时域/HMVP、成对组合双向预测Merge候选和零运动候选可以被按顺序插入。常规Merge列表尺寸在条带头中信令通知,并且最大值为6。
2.3.5.1子块Merge候选列表
建议将与运动候选有关的全部子块置入除用于非子块Merge候选的常规Merge列表之外的分开的Merge列表。
子块相关的运动候选被置入分开的Merge列表,命名为′子块Merge候选列表′。
在一个示例中,子块Merge候选列表包含仿射Merge候选,和ATMVP候选,和/或基于子块的STMVP候选。
2.3.5.1.1 JVET-L0278
在此投稿中,普通Merge列表中的ATMVP Merge候选被移动到仿射Merge列表的第一位置。使得新的列表(即,基于子块的Merge候选列表)中的全部Merge候选是基于子块编解码工具。
2.3.5.1.2 VTM-3.0中的ATMVP
在VTM-3.0中,除常规Merge候选列表之外,添加已知为子块Merge候选列表(又已知为仿射Merge候选列表)的特殊Merge候选列表。子块Merge候选列表被用候选按以下顺序填充:
a.ATMVP候选(可能可用或不可用);
b.继承仿射候选;
c.构建仿射候选;
d.作为零MV 4参数仿射模型的填充
子块Merge候选列表中的候选的最大数目(指代为ML)推导如下:
1)如果ATMVP使用标志(例如标志可以命名为″sps_sbtmvp_enabled_flag″)打开(等于1),但仿射使用标志(例如标志可以命名为″sps_affine_enabled_flag″)关闭(等于0),则ML被设定为等于1。
2)如果ATMVP使用标志关闭(等于0),并且仿射使用标志关闭(等于0),则ML被设定为等于0。在此情况下,不使用子块Merge候选列表。
3)否则(仿射使用标志打开(等于1),ATMVP使用标志打开或关闭),从编码器向解码器信令通知ML。有效ML为0<=ML<=5。
当构建子块Merge候选列表时,首先检查ATMVP候选。如果以下条件中的任意一个为真,则ATMVP候选被跳过且不被置入子块Merge候选列表。
1)ATMVP使用标志关闭;
2)任何TMVP使用标志(例如当在条带级别信令通知时,标志可以命名为″slice_temporal_mvp_enabled_flag″)关闭;
3)具有参考列表0中的参考索引0的参考图片相同于当前图片(其为CPR)
VTM-3.0中的ATMVP远比在JEM中简单。当生成ATMVP Merge候选时,应用以下过程:
a.按顺序检查邻接块A1、B1、B0、A0,如图22所示,以找到第一帧间编解码但不是CPR编解码的块,指代为块X;
b.初始化TMV=(0,0)。如果存在块X的MV(指代为MV′),参考共位参考图片(如条带头中信令通知的),则TMV被设定为等于MV′。
c.假设当前块的中心点是(x0,y0),则在共位图片中定位(x0,y0)的对应的位置作为M=(x0+MV′x,y0+MV′y)。找到覆盖M的块Z。
i.如果Z是帧内编解码的,则ATMVP不可用;
ii.如果Z是帧间编解码的,则块Z的两个列表的MVZ_0和MVZ_1被缩放到(Ref列表0索引0)和(Ref列表1索引0)作为MVdefault0、MVdefault1,并且被储存。
d.对于每个8x8子块,假设其中心点是(x0S,y0S),则在共位图片中定位(x0S,y0S)的对应的位置作为MS=(x0S+MV′x,y0S+MV′y)。找到覆盖MS的块ZS。
i.如果ZS是帧内编解码的,则MVdefault0、MVdefaultl被分配到子块;
ii.如果ZS是帧间编解码的,则块ZS的两个列表的MVZS_0和MVZS_1被缩放到(Ref列表0索引0)和(Ref列表1索引0),并且被分配到子块;
ATMVP中的MV裁剪和掩码:
当在共位图片中定位诸如M或MS的对应的位置时,其在预定区域之内被裁剪。CTU尺寸为S×S,在VTM-3.0中S=128。假设共位CTU的左顶位置是(xCTU,yCTU),则在(xN,yN)处的对应的位置M或MS将被裁剪到有效区域xCTU<=xN<xCTU+S+4;yCTU<=yN<yCTU+S。
除裁剪之外,(xN,yN)还被掩码为xN=xN&MASK、yN=yN&MASK,其中MASK是等于~(2N-1)的整数,并且N=3,以将最低3比特设定为0。因此xN和yN是作为8的倍数的数字(″~″表示逐位补偿算子)。
图24示出了共位图片中的有效对应区域的示例。
2.3.5.1.3条带头中的语法设计
Figure BDA0003558313810000271
Figure BDA0003558313810000281
2.3.5.2常规Merge列表
不同于Merge列表设计,在VVC中,采用基于历史的运动矢量预测(HMVP)方法。
在HMVP中,储存之前编解码的运动信息。之前编解码的块的运动信息被定义为HMVP候选。多个HMVP候选被储存在命名为HMVP的表中,并且该表在编码/解码过程期间被实时维护。当开始编解码/解码新的条带时清空HMVP表。只要存在帧间编解码块,相关联的运动信息就被添加到表的最后条目作为新的HMVP候选。总体编解码流程在图25中示出。
HMVP候选可以在AMVP和Merge候选列表构建过程两者是使用。图26图示了修改的Merge候选列表构建过程(用图26中的高亮框示出)。当Merge候选列表在TMVP候选插入之后未满时,储存在HMVP表中的HMVP候选可以被用于填充在Merge候选列表中。考虑到一个块通常就运动信息而言与最接近的邻接块具有较高关联,表中的HMVP候选被以索引的降序插入。表中的最后条目被首先添加到列表,而第一条目被最后添加。相似地,对HMVP候选应用冗余移除。一旦可用Merge候选的总数达到允许信令通知的Merge候选的最大数目,Merge候选列表构建过程被终止。
2.4MV取整
在VVC中,当MV右移时,其被要求朝零取整。以公式化方式,对于要右移N比特的MV(MVx,MVy),结果MV′(MVx′,MVy′)将推导为:
MVx′=(MVx+((1<<N)>>1)-(MVx>=0?1:0))>>N;
MVy′=(MVy+((1<<N)>>1)-(MVy>=0?1:0))>>N;
2.5JVET-O2001-v14中的RPR
ARC,又已知为RPR(参考图片重采样)被整合在JVET-O2001-v14中。
在JVET-O2001-v14中的RPR的情况下,如果共位图片具有与当前图片不同的分辨率,则TMVP被禁用。此外,当参考图片具有与当前图片不同的分辨率时,BDOF和DMVR被禁用。
为在参考图片具有与当前图片不同的分辨率时处理普通MC,插值段被定义如下:
8.5.6.3分数样点插值过程
8.5.6.3.1总体
该过程的输入是:
-亮度位置(xSb,ySb),指定相对于当前图片的左顶亮度样点的当前编解码子块的左顶样点,
-变量sbWidth,指定当前编解码子块的宽度,
-变量sbHeight,指定当前编解码子块的高度,
-运动矢量偏移mvOffset,
-细化运动矢量refMvLX,
-所选参考图片样点阵列refPicLX,
-半样点插值滤波索引hpelIfIdx,
-双向光流标志bdofFlag,
-变量cIdx,指定当前块的色彩分量索引。
该过程的输出为:
-预测样点值的(sbWidth+brdExtSize)x(sbHeight+brdExtSize)阵列predSamplesLX。
预测块界限扩展尺寸brdExtSize被推导如下:
brdExtSize=(bdofFlag||(interaffine_flag[xSb][ySb]&&sps_affine_prof_enabled_flag))?2:0 (8-752)
变量fRefWidth,被设定为等于亮度样点中的参考图片的PicOutputWidthL。
变量fRefHeight,被设定为等于亮度样点中的参考图片的PicOutputHeightL。
运动矢量mvLX被设定为(refMvLX-mvOffset)。
-如果cIdx等于0,则以下适用:
-缩放因数和它们的固定点表示被定义为
hori_scale_fp=((fRefWidth<<14)+(PicOutputWidthL>>1))/PicOutputWidthL (8-753)
vert_scale_fp=((fRefHeight<<14)+(PicOutputHeightL>>1))/PicOutputHeightL (8-754)
-使(xIntL,yIntL)为以整样点单位给定的亮度位置,并且(xFracL,yFracL)为以1/16样点单位给定的偏移。这些变量仅在此条款中用于指定参考样点阵列refPicLX之内的分数样点位置。
-参考样点填充的边界块的左顶坐标(xSbIntL,ySbIntL)被设定为(xSb+(mvLX[0]>>4),ySb+(mvLX[1]>>4))。
-对于预测亮度样点阵列predSamplesLX之内的每个亮度样点位置(xL=0..sbWidth-1+brdExtSize,yL=0..sbHeight-1+brdExtSize),对应的预测亮度样点值predSamplesLX[xL][yL]被推导如下:
-使(refxSbL,refySbL)和(refxL,refyL)为以1/16样点单位给出的运动矢量(refMvLX[0],refMvLX[1])所指向的亮度位置。变量refxSbL、refxL、refySbL和refyL推导如下:
refxSbL=((xSb<<4)+refMvLX[0])*hori_scale_fp (8-755)
refxL=((Sign(refxSb)*((Abs(refxSb)+128)>>8)+xL*((hori_scale_fp+8)>>4))+32)>>6 (8-756)
refySbL=((ySb<<4)+refMvLX[1])*vert_scale_fp (8-757)
refyL=((Sign(refySb)*((Abs(refySb)+128)>>8)+yL*((vert_scale_fp+8)>>4))+32)>>6 (8-758)
-变量xIntL、yIntL、xFracL和yFracL推导如下:
xIntL=refxL>>4 (8-759)
yIntL=refyL>>4 (8-760)
xFracL=refxL&15 (8-761)
yFracL=refyL&15 (8-762)
-如果bdofFlag等于真或(sps_affine_prof_enabled_flag等于真且inter_affine_flag[xSb][ySb]等于真),并且以下条件中的一个或多个为真,则通过调用如条款8.5.6.3.3中所指定的亮度整数样点取回过程,以(xIntL+(xFracL>>3)-1),yIntL+(yFracL>>3)-1)和refPicLX作为输入,推导预测亮度样点值predSamplesLX[xL][yL]。
1.xL等于0。
2.xL等于sbWidth+1。
3.yL等于0。
4.yL等于sbHeight+1。
-否则,通过调用如条款8.5.6.3.2中所指定的亮度样点8抽头插值滤波过程,以(xIntL-(brdExtSize>0?1:0),yIntL-(brdExtSize>0?1:0)),(xFracL,yFracL),(xSbIntL,ySbIntL),refPicLX,hpelIfIdx,sbWidth,sbHeight和(xSb,ySb)作为输入,推导预测亮度样点值predSamplesLX[xL][yL]。
-否则(cIdx不等于0),则以下适用:
-使(xIntC,yIntC)为以整样点单位给出的色度位置,且(xFracC,yFracC)为以1/32样点单位给出的偏移。这些变量仅在此条款中用于指定参考样点阵列refPicLX之内的总体分数样点位置。
-参考样点填充的边界块的左顶坐标(xSbIntC,ySbIntC)被设定为((xSb/SubWidthC)+(mvLX[0]>>5),(ySb/SubHeightC)+(mvLX[1]>>5))。
-对于预测色度样点阵列predSamplesLX之内的每个色度样点位置(xC=0..sbWidth-1,yC=0..sbHeight-1),对应的预测色度样点值predSamplesLX[xC][yC]被推导如下:
-使(refxSbC,refySbC)和(refxC,refyC)为以1/32样点单位给出的运动矢量(mvLX[0],mvLX[1])所指向的色度位置。变量refxSbC、refySbC、refxC和refyC推导如下:
refxSbC=((xSb/SubWidthC<<5)+mvLX[0])*hori_scale_fp(8-763)
refxC=((Sign(refxSbC)*((Abs(refxSbC)+256)>>9)+xC*((hori_scale_fp+8)>>4))+16)>>5 (8-764)
refySbC=((ySb/SubHeightC<<5)+mvLX[1])*vert_scale_fp(8-765)
refyC=((Sign(refySbC)*((Abs(refySbC)+256)>>9)+yC*((vert_scale_fp+8)>>4))+16)>>5 (8-766)
-变量xIntC、yIntC、xFracC和yFracC推导如下:
xIntC=refxC>>5 (8-767)
yIntC=refyC>>5 (8-768)
xFracC=refyC&31 (8-769)
yFracC=refyC&31 (8-770)
-通过调用在条款8.5.6.3.4中所指定的过程,以(xIntC,yIntC),(xFracC,yFracC),(xSbIntC,ySbIntC),sbWidth,sbHeight和refPicLX作为输入,推导预测样点值predSamplesLX[xC][yC]。
8.5.6.3.2亮度样点插值滤波过程
该过程的输入是:
-以整样点单位的亮度位置(xIntL,yIntL),
-以分数样点单位的亮度位置(xFracL,yFracL),
-以整样点单位的亮度位置(xSbIntL,ySbIntL),指定相对于参考图片的左顶亮度样点的参考样点填充的边界块的左顶样点,
-亮度参考样点阵列refPicLXL
-半样点插值滤波索引hpelIfIdx,
-变量sbWidth,指定当前子块的宽度,
-变量sbHeight,指定当前子块的高度,
-亮度位置(xSb,ySb),指定相对于当前图片的左顶亮度样点的当前子块的左顶样点,
该过程的输出是预测亮度样点值predSampleLXL
变量shiftl、shift2和shift3推导如下:
-变量shift1被设定为等于Min(4,BitDepthY-8),变量shift2被设定为等于6,并且变量shift3被设定为等于Max(2,14-BitDepthY)。
-变量picW被设定为等于pic_width_in_luma_samples,并且变量picH被设定为等于pic_height_in_luma_samples。
等于xFracL或yFracL的每个1/16分数样点位置p的亮度插值滤波系数fL[p]推导如下:
-如果MotionModelIdc[xSb][ySb]大于0,并且sbWidth和sbHeight都等于4,则亮度插值滤波系数fL[p]在表8-12中指定。
-否则,亮度插值滤波系数fL[p]取决于hpelIfIdx而在表8-11中指定。
以整样点单位的亮度位置(xInti,yInti)对于i=0..7被推导如下:
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
xInti=Clip3(SubPicLeftBoundaryPos,SubPicRightBoundaryPos,xIntL+i-3)(8-771)
yInti=Clip3(SubPicTopBoundaryPos,SubPicBotBoundaryPos,yIntL+i-3)(8-772)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
xInti=Clip3(0,picW-1,sps_ref_wraparound_enabled_flag?
ClipH((sps_ref_wraparound_offset_minus1+1)*MinCbSizeY,picW,xIntL+i-3): (8-773)
xIntL+i-3)
yInti=Clip3(0,picH-1,yIntL+i-3) (8-774)
以整样点单位的亮度位置对于i=0..7被进一步修改如下:
xInti=Clip3(xSbIntL-3,xSbIntL+sbWidth+4,xInti) (8-775)
yInti=Clip3(ySbIntL-3,ySbIntL+sbHeight+4,yInti) (8-776)预测亮度样点值predSampleLXL被推导如下:
-如果xFracL和yFracL都等于0,predSampleLXL的值被推导如下:
predSampleLXL=refPicLXL[xInt3][yInt3]<<shift3 (8-777)
-否则,如果xFracL不等于0且yFracL等于0,则predSampleLXL的值被推导如下:
Figure BDA0003558313810000331
Figure BDA0003558313810000341
-否则,如果xFracL等于0且yFracL不等于0,则predSampleLXL的值被推导如下:
Figure BDA0003558313810000342
-否则,如果xFracL不等于0且yFracL不等于0,则predSampleLXL的值被推导如下:
-样点阵列temp[n],其中n=0..7,被推导如下:
Figure BDA0003558313810000343
-预测亮度样点值predSampleLXL被推导如下:
Figure BDA0003558313810000344
表8-11-每个1/16分数样点位置p的亮度插值滤波系数fLp]的规范。
Figure BDA0003558313810000345
Figure BDA0003558313810000351
表8-12-仿射运动模式的每个1/16分数样点位置p的亮度插值滤波系数fL[p]的规范。
Figure BDA0003558313810000352
8.5.6.3.3亮度整数样点取回过程
该过程的输入是:
-以整样点单位的亮度位置(xIntL,yIntL),
-亮度参考样点阵列refPicLXL
该过程的输出是预测亮度样点值predSampleLXL
变量偏移被设定为等于Max(2,14-BitDepthY)。
变量picW被设定为等于pic_width_in_luma_samples,并且变量picH被设定为等于pic_height_in_luma_samples。
以整样点单位的亮度位置(xInt,yInt)被推导如下:
xInt=Clip3(0,picW-1,sps_ref_wraparound_enabled_flag?(8-782)
ClipH((sps_ref_wraparound_offset_minus1+1)*MinCbSizeY,picW,xIntL):xIntL)
yInt=Clip3(0,picH-1,yIntL) (8-783)
预测亮度样点值predSampleLXL被推导如下:
predSampleLXL=refPicLXL[xInt][yInt]<<shift3 (8-784)
8.5.6.3.4色度样点插值过程
该过程的输入是:
-以整样点单位的色度位置(xIntC,yIntC),
-以1/32分数样点单位的色度位置(xFracC,yFracC),
-以整样点单位的色度位置(xSbIntC,ySbIntC),指定相对于参考图片的左顶色度样点的参考样点填充的边界块的左顶样点,
-变量sbWidth,指定当前子块的宽度,
-变量sbHeight,指定当前子块的高度,
-色度参考样点阵列refPicLXC
该过程的输出是预测色度样点值predSampleLXC
变量shift1、shift2和shift3推导如下:
-变量shift1被设定为等于Min(4,BitDepthC-8),变量shift2被设定为等于6,并且变量shift3被设定为等于Max(2,14-BitDepthC)。
-变量picWC被设定为等于pic_width_in_luma_samples/SubWidthC,并且变量picHC被设定为等于pic_height_in_luma_samples/SubHeightC。
等于xFracC或yFracC的每个1/32分数样点位置p的色度插值滤波系数fC[p]在表8-13中指定。
变量xOffset被设定为(sps_ref_wraparound_offset_minus1+1)*MinCbSizeY)/SubWidthC。
以整样点单位的色度位置(xInti,yInti)对于i=0..3推导如下:
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
xInti=Clip3(SubPicLeftBoundaryPos/SubWidthC,SubPicRightBoundaryPos/SubWidthC,xIntL+i) (8-785)
yInti=Clip3(SubPicTopBoundaryPos/SubHeightC,SubPicBotBoundaryPos/SubHeightC,yIntL+i) (8-786)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
xInti=Clip3(0,picWC-1,sps_ref_wraparound_enabled_flag?ClipH(xOffset,picWC,xIntC+i-1): (8-787)
xIntC+i-1)
yInti=Clip3(0,picHC-1,yIntC+i-1) (8-788)
以整样点单位的色度位置(xInti,yInti)对于i=0..3被进一步修改如下:
xInti=Clip3(xSbIntC-1,xSbIntC+sbWidth+2,xInti) (8-789)
yInti=Clip3(ySbIntC-1,ySbIntC+sbHeight+2,yInti) (8-790)
预测色度样点值predSampleLXC被推导如下:
-如果xFracC和yFracC两者都等于0,则predSampleLXC的值被推导如下:
predSampleLXC=refPicLXC[xInt1][yInt1]<<shift3 (8-791)
-否则,如果xFracC不等于0且yFracC等于0,则predSampleLXC的值被推导如下:
Figure BDA0003558313810000371
-否则,如果xFracC等于0且yFracC不等于0,则predSampleLXC的值被推导如下:
Figure BDA0003558313810000372
-否则,如果xFracC不等于0且yFracC不等于0,则predSampleLXC的值被推导如下:
-样点阵列temp[n],其中n=0..3,被推导如下:
Figure BDA0003558313810000373
-预测色度样点值predSampleLXC被推导如下:
Figure BDA0003558313810000374
Figure BDA0003558313810000381
表8-13-每个1/32分数样点位置p的色度插值滤波系数fC[p]的规范。
Figure BDA0003558313810000382
Figure BDA0003558313810000391
2.6JVET-O2001-v14中的子图片
在JVET-O2001-vE中的子图片的当前语法设计的情况下,子图片的位置和维度被推导如下:
Figure BDA0003558313810000392
subpics_present_flag等于1指示子图片参数当前存在于SPS RBSP语法中。subpics_present_flag等于0指示子图片参数当前不存在于SPS RBSP语法中。
当比特流是子比特流提取过程的结果且仅包含对子比特流提取过程的输入比特流的子图片的子组时,可能要求在SPS的RBSP中将subpics_present_flag的值设定为等于1。
max_subpics_minus1加1指定CVS中可以存在的子图片的最大数目。max_subpics_minus1应在0至254的范围内。255的值为ITU-T|ISO/IEC的未来使用保留。
subpic_grid_col_width_minus1加1旨定子图片标识符网格的每个元的以4样点为单位的宽度。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/4))比特。
变量NumSubPicGridCols被推导如下:
Figure BDA0003558313810000401
subpic_grid_row_height_minus1加1指定子图片标识符网格的每个元的以4样点为单位的高度。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/4))比特。
变量NumSubPicGridRows被推导如下:
Figure BDA0003558313810000402
subpic_grid_idx[i][j]指定网格位置(i,j)的子图片索引。语法元素的长度是Ceil(Log2(max_subpics_minus1+1))比特。
变量SubPicTop[subpic_grid_idx[i][j]]、SubPicLeft[subpic_grid_idx[i][j]]、SubPicWidth[subpic_grid_idx[i][j]]、SubPicHeight[subpic_grid_idx[i][j]]和NumSubPics推导如下:
Figure BDA0003558313810000403
Figure BDA0003558313810000411
subpic_treated_as_pic_flag[i]等于1指定CVS中的每个编解码图片的第i个子图片被视为排除回路内滤波操作的解码过程中的图片。subpic_treated_as_pic_flag[i]等于0指定CVS中的每个编解码图片的第i个子图片不被视为排除回路内滤波操作的解码过程中的图片。当不存在时,subpic_treated_as_pic_flag[i]的值推断为等于0。
2.7JVET-O2001-v14中的CIIP
组合帧间帧内预测(CIIP)被用在VVC中作为特殊Merge候选。其仅可以对于WxH块(W<=64且H<=64)启用。
3.所公开技术和实施例解决的问题的示例
在VVC的当前设计中,ATMVP有以下问题:
1)是否应用ATMVP在条带级别和在CU级别不匹配;
2)在条带头中,即使TMVP被禁用也可以启用ATMVP。与此同时,在TMVP标志之前信令通知ATMVP标志。
3)总是进行掩码,而不考虑MV是否被压缩;
4)有效对应区域可能过大;
5)TMV的推导过于复杂;
6)ATMVP可能在某些情况下不可用,并且期望更好的默认MV。
7)ATMVP中的MV缩放方法可能不是高效的;
8)ATMVP应考虑CPR情况;
9)即使当仿射预测被禁用时,默认零仿射Merge候选也可以被置入列表中。
10)当前图片被视为长期参考图片,而其他图片被视为短期参考图片。对于ATMVP和TMVP候选两者,来自共位图片中的时域块的运动信息将被缩放到具有固定参考索引的参考图片(即,在当前设计中每个参考图片列表为0)。然而,当启用CPR模式时,当前图片也被视为参考图片,并且当前图片可以被添加到具有索引等于0的参考图片列表0(RefPicList0)。
a.对于TMVP,如果时域块用CPR模式编解码且RefPicList0的参考图片是短期参考图片,则TMVP候选被设定为不可用。
b.如果具有索引等于0的RefPicList0的参考图片是当前图片且当前图片是帧内随机访问点(IRAP)图片,则ATMVP候选被设定为不可用。
c.对于块内的ATMVP子块,当从时域块推导子块的运动信息时,如果时域块用CPR模式编解码,则默认ATMVP候选(从由起始TMV和当前块的中心位置识别的时域块推导)被用于填充在子块的运动信息中。
11)MV被右移到整数精度,但不遵循VVC中的取整规则。
12)ATMVP中用于定位不同图片中的对应块(例如,2.3.5.1.2中的TMV)的MV(MVx,MVy)被直接使用,因为其指向共位图片。这是基于全部图片为相同分辨率的假设。然而,当启用RPR时,可能使用不同的图片分辨率。相似问题对推导子块运动信息的共位图片中的对应块的标识也存在。
13)如果一个块宽度或高度大于32,并且最大变换单元尺寸为32,则对于CIIP编解码块,以编解码单元(CU)尺寸生成帧内预测信令通知;而以变换单元(TU)尺寸生成帧间预测信令通知(将当前块递归地划分到多个32x32块)。使用CU来推导帧内预测信令通知导致较低效率。
当前设计存在一些问题。首先,如果具有索引等于0的RefPicList0的参考图片是当前图片且当前图片不是IRAP图片,则仍调用ATMVP过程,但ATMVP过程无法定位任何可用ATMVP候选,因为没有时域运动矢量可以被缩放到当前图片。
4.实施例和技术的示例
以下技术和实施例的项目化列表应被视为示例以解释总体概念。这些技术不应以狭窄方式理解。另外,这些技术可以以任意方式组合在编码器或解码器实施例中。
1.是否允许TMVP和/或是否使用CPR应被考虑,以决定/解析子块Merge候选列表中的候选的最大数目和/或决定是否应将ATMVP候选添加到候选列表。子块Merge候选列表中的候选的最大数目被指代为ML。虽然以下使用替代时域运动矢量预测(ATMVP)讨论了一些示例性实施例,但在替代实施例中,本文档中所公开的技术适用于基于子块的时域运动矢量预测(sbTMVP)。
a)在一个示例中,在确定或解析子块Merge候选列表中的候选的最大数目时,如果ATMVP使用标志关闭(等于0)或TMVP被禁用,则ATMVP被推断为不适用。
i.在一个示例中,ATMVP使用标志打开(等于1)且TMVP被禁用,ATMVP候选不被添加到子块Merge候选列表或ATMVP候选列表。
ii.在一个示例中,ATMVP使用标志打开(等于1)且TMVP被禁用,并且仿射使用标志关闭(等于0),则ML被设定为等于0,意味着子块Merge不适用。
iii.在一个示例中,ATMVP使用标志打开(等于1)且TMVP被启用,并且仿射使用标志关闭(等于0),则ML被设定为等于1。
b)在一个示例中,当决定或解析子块Merge候选列表中的候选的最大数目时,如果ATMVP使用标志关闭(等于0)或当前图片的共位参考图片是当前图片自身,则ATMVP被推断为不适用。
i.在一个示例中,ATMVP使用标志打开(等于1)并且当前图片的共位参考图片是当前图片自身时,ATMVP候选不被添加到子块Merge候选列表或ATMVP候选列表。
ii.在一个示例中,ATMVP使用标志打开(等于1),并且当前图片的共位参考图片是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于0,意味着子块Merge不适用。
iii.在一个示例中,ATMVP使用标志打开(等于1),并且当前图片的共位参考图片不是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于1。
c)在一个示例中,当决定或解析子块Merge候选列表中的候选的最大数目时,如果ATMVP使用标志关闭(等于0),或具有参考列表0中的参考图片索引0的参考图片是当前图片自身,则ATMVP被推断为不适用。
i.在一个示例中,ATMVP使用标志打开(等于1)且共位具有参考列表0中的参考图片索引0的参考图片是当前图片自身,ATMVP候选不被添加到子块Merge候选列表或ATMVP候选列表。
ii.在一个示例中,ATMVP使用标志打开(等于1),并且具有参考列表0中的参考图片索引0的参考图片是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于0,意味着子块Merge不适用。
iii.在一个示例中,ATMVP使用标志打开(等于1)并且具有参考列表0中的参考图片索引0的参考图片不是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于1。
d)在一个示例中,当决定或解析子块Merge候选列表中的候选的最大数目时,如果ATMVP使用标志关闭(等于0),或具有参考列表1中的参考图片索引0的参考图片是当前图片自身,则ATMVP被推断为不适用。
i.在一个示例中,ATMVP使用标志打开(等于1)并且共位具有参考列表1中的参考图片索引0的参考图片是当前图片自身,ATMVP候选不被添加到子块Merge候选列表或ATMVP候选列表。
ii.在一个示例中,ATMVP使用标志打开(等于1),并且具有参考列表1中的参考图片索引0的参考图片是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于0,意味着子块Merge不适用。
iii.在一个示例中,ATMVP使用标志打开(等于1)并且具有参考列表1中的参考图片索引0的参考图片不是当前图片自身,并且仿射使用标志关闭(等于0),则ML被设定为等于1。
2.提出如果TMVP在条带/片/图片级别被禁用,则ATMVP被隐式地禁用,并且不信令通知ATMVP标志。
a)在一个示例中,在TMVP标志之后在条带头/片头/PPS中信令通知ATMVP标志。
b)在一个示例中,ATMVP或/和TMVP标志可以不在条带头/片头/PPS中信令通知,并且仅在SPS头中信令通知。
3.是否和如何掩码ATMVP中的对应的位置取决于是否和如何压缩MV。假设(xN,yN)是用当前块/子块的坐标和共位图片中的起始运动矢量(例如,TMV)计算的对应的位置
a)在一个示例中,如果MV不被要求压缩(例如SPS中信令通知的sps_disable_motioncompression为1),则(xN,yN)不被掩码;否则,(MV可以被压缩)(xN,yN)被掩码为xN=xN&MASK,yN=yN&MASK,其中MASK是等于~(2M-1)的整数,并且M可以是诸如3或4的整数。
b)假设用于MV储存的MV压缩方法导致每个2K x 2K块共享相同运动信息,并且ATMVP过程中的掩码被定义为~(2M-1)。提出K可以不等于M,例如,M=K+1。
c)ATMVP和TMVP中使用的MASK可以相同,或它们可以不同。
4.在一个示例中,MV压缩方法可以是灵活的。
a)在一个示例中,可以在无压缩,8×8压缩(在要点3.a中M=3),或16×16压缩(在要点3.a中M=4)之间选择MV压缩方法
b)在一个示例中,MV压缩方法可以在VPS/SPS/PPS/条带头/片组头中信令通知。
c)在一个示例中,MV压缩方法可以在不同标准配置文件/级别/层级中被不同地设定。
5.ATMVP中的有效对应区域可以是适应性的;
a)例如,有效对应区域可以取决于当前块的宽度和高度;
b)例如,有效对应区域可以取决于MV压缩方法;
i.在一个示例中,如果不使用MV压缩方法,则有效对应区域较小;如果使用MV压缩方法,则有效对应区域较大。
6.ATMVP中的有效对应区域可以基于具有小于CTU区域的尺寸M×N的基本区域。例如,VTM-3.0中的CTU尺寸是128×128,并且基本区域尺寸可以是64×64。假设当前块的宽度和高度是W和H。
a)在一个示例中,如果W<=M且H<=N,意味着当前块在基本区域之内,则ATMVP中的有效对应区域是共位基本区域和共位图片中的扩展。图27示出了示例。
i.例如,假设共位基本区域的左顶位置是(xBR,yBR),则在(xN,yN)处的对应的位置将被裁剪到有效区域xBR<=xN<xBR+M+4;yBR<=yN<yBR+N。
图27示出了在当前块在基本区域(BR)之内时提出有效区域的示例性实施例。
图28示出了在当前块不在基本区域之内时有效区域的示例性实施例。
b)在一个示例中,如果W>M且H>N,意味着当前块不在基本区域之内,则当前块被划分为若干部分。每个部分具有ATMVP中的单独有效对应区域。对于当前块中的位置A,其在共位块中的对应的位置B应在位置A位于的部分中的有效对应区域内。
i.例如,当前块被划分为非重叠基本区域。一个基本区域的有效对应区域是其共位基本区域和共位图片中的扩展。图28示出了示例。
1.例如,假设当前块中的位置A在一个基本区域R中。共位图片中的R的共位基本区域被指代为CR。共位块中的A的对应的位置是位置B。CR的左顶位置是(xCR,yCR),则在(xN,yN)处的位置B将被修剪为有效区域xCR<=xN<xCR+M+4;yCR<=yN<yCR+N。
7.提出ATMVP中用于定位不同图片中的对应块的运动矢量(例如,2.3.5.1.2中的TMV)可以被推导为:
a)在一个示例中,TMV总是设定为等于默认MV,诸如(0,0)。
i.在一个示例中,默认MV在VPS/SPS/PPS/条带头/片组头/CTU/CU中被信令通知。
b)在一个示例中,TMV被设定为用以下方法储存在HMVP表中的一个MV;
i.如果HMVP列表是空的,则TMV被设定为等于默认MV,诸如(0,0)
ii.否则(HMVP列表不为空),
1.TMV可以被设定为等于储存在HMVP表中的第一元素;
2.替代地,TMV可以被设定为等于储存在HMVP表中的最后一个元素;
3.替代地,TMV可以仅设定为等于储存在HMVP表中的特定MV;
a.在一个示例中,特定MV参考参考列表0。
b.在一个示例中,特定MV参考参考列表1。
c.在一个示例中,特定MV参考参考列表0中的特定参考图片,诸如具有索引0的参考图片。
d.在一个示例中,特定MV参考参考列表1中的特定参考图片,诸如具有索引0的参考图片。
e.在一个示例中,特定MV参考共位图片。
4.替代地,如果储存在HMVP表中的特定MV(例如,要点3.中所提到)无法找到,则TMV可以被设定为等于默认MV;
a.在一个示例中,仅搜索储存在HMVP表中的第一元素以找到特定MV。
b.在一个示例中,仅搜索储存在HMVP表中的最后一个元素以找到特定MV。
c.在一个示例中,储存在HMVP表中的一些或全部元素以找到特定MV。
5.替代地,此外,从HMVP获取的TMV不能参考当前图片自身。
6.替代地,此外,从HMVP获取的TMV表如果不参考共位图片则可以被缩放到共位图片。
c)在一个示例中,TMV被设定为一个特定邻接块的一个MV。不参考其他邻接块。
i.特定邻接块可以是图22中的块A0、A1、B0、B1、B2。
ii.如果以下,则TMV可以被设定为等于默认MV:
1.特定邻接块不存在;
2.特定邻接块不是帧间编解码的;
iii.TMV可以仅设定为等于储存在特定邻接块中的特定MV;
1.在一个示例中,特定MV参考参考列表0。
2.在一个示例中,特定MV参考参考列表1。
3.在一个示例中,特定MV参考参考列表0中的特定参考图片,诸如具有索引0的参考图片。
4.在一个示例中,特定MV参考参考列表1中的特定参考图片,诸如具有索引0的参考图片。
5.在一个示例中,特定MV参考共位图片。
6.如果储存在特定邻接块中的特定MV无法找到,则TMV可以被设定为等于默认MV;
iv.从特定邻接块获取的TMV如果不参考共位图片则可以被缩放到共位图片。
v.从特定邻接块获取的TMV不能参考当前图片自身。
8.如2.3.5.1.2中所公开的ATMVP中所使用的MVdefault0和MVdefault1可以被推导为
a)在一个示例中,MVdefault0和MVdefault1被设定为(0,0);
b)在一个示例中,从HMVP推导MVdefaultX(X=0或1),
i.如果HMVP列表是空的,MVdefaultX被设定为等于预定默认MV,诸如(0,0)。
1.预定默认MV可以在VPS/SPS/PPS/条带头/片组头/CTU/CU中被信令通知。
ii.否则(HMVP列表不为空),
1.MVdefaultX可以被设定为等于储存在HMVP表中的第一元素;
2.MVdefaultX可以被设定为等于储存在HMVP表中的最后一个元素;
3.MVdefaultX可以仅设定为等于储存在HMVP表中的特定MV;
a.在一个示例中,特定MV参考参考列表X。
b.在一个示例中,特定MV参考参考列表X中的特定参考图片,诸如具有索引0的参考图片。
4.如果储存在HMVP表中的特定MV无法找到,则MVdefaultX可以被设定为等于预定默认MV;
a.在一个示例中,仅搜索储存在HMVP表中的第一元素。
b.在一个示例中,仅搜索储存在HMVP表中的最后一个元素。
c.在一个示例中,搜索储存在HMVP表中的一些或全部元素。
5.从HMVP表获取的MVdefaultX如果不参考共位图片则可以被缩放到共位图片。
6.从HMVP获取的MVdefaultX不能参考当前图片自身。
c)在一个示例中,从邻接块推导MVdefaultX(X=0或1)。
i.邻接块可以包含块图22中的A0、A1、B0、B1、B2。
1.例如,这些块中的仅一个被用于推导MVdefaultX。
2.替代地,这些块中的一些或全部被用于推导MVdefaultX。
a.按顺序检查这些块直到找到有效MVdefaultX。
3.如果从所选一个或多个邻接块找不到有效MVdefaultX,则穷被设定为等于预定默认MV,诸如(0,0)。
a.可以在VPS/SPS/PPS/条带头/片组头/CTU/CU中信令通知预定默认MV。
ii.如果以下,则从特定邻接块找不到有效MVdefaultX:
1.特定邻接块不存在;
2.特定邻接块不是帧间编解码;
iii.MVdefaultX可以仅设定为等于储存在特定邻接块中的特定MV;
1.在一个示例中,特定MV参考参考列表X。
2.在一个示例中,特定MV参考参考列表X中的特定参考图片,诸如具有索引0的参考图片
iv.从特定邻接块获取的MVdefaultX可以被缩放到特定参考图片,诸如具有参考列表X中的索引0的参考图片。
v.从特定邻接块获取的MVdefaultX不能参考当前图片自身。
9.对于子块或非子块ATMVP候选,如果共位图片中的子块/整个块的时域块是用CPR模式编解码的,则默认运动候选可以替代地被使用。
a)在一个示例中,默认运动候选可以定义为与当前块的中心位置相关联的运动候选(例如,在如2.3.5.1.2中所公开的ATMVP中使用的MVdefault0和/或MVdefault1)。
b)在一个示例中,默认运动候选可以定义为(0,0)运动矢量,并且对于两个参考图片列表参考图片索引等于0(如果可用)。
10.提出ATMVP过程的默认运动信息(例如,在如2.3.5.1.2中所公开的ATMVP中使用的MVdefault0和/或MVdefault1)可以基于在子块运动信息推导过程中使用的位置来推导。使用该提出的方法,对于该子块,不需要进一步推导运动信息,因为将直接分配默认运动信息。
a)在一个示例中,不是使用当前块的中心位置,而是可以使用当前块内的子块(例如,中心子块)的中心位置。
b)如图31B所示给出示例。图31A示出了默认运动信息在当前标准中标识的位置的示例。
11.提出ATMVP候选用以下方法总是可用:
a)假设当前块的中心点是(x0,y0),则在共位图片中定位(x0,y0)的对应的位置为M=(x0+MV′x,y0+MV′y)。找到覆盖M的块Z。如果Z是帧内编解码的,则通过项目6中提出的一些方法推导MVdefault0、MVdefault1。
b)替代地,不定位块Z以得到运动信息,项目8中提出的一些方法被直接应用以得到MVdefault0和MVdefault1。
c)替代地,ATMVP过程中使用的默认运动候选总是可用。如果其基于当前设计(例如,时域块是帧内编解码的)被设定为不可用,则其他运动矢量可以替代地被用于默认运动候选。
i.在一个示例中,可以应用国际申请PCT/CN2018/124639中的方案,其通过引用并入本文。
d)替代地,此外,ATMVP候选是否总是可用取决于其他高级语法信息。
i.在一个示例中,仅当条带/片/图片头或其他视频单元处的ATMVP启用标志被设定为真推断为真时,ATMVP候选才可以总是设定为可用。
ii.在一个示例中,可以仅当条带头/图片头或其他视频单元中的ATMVP启用标志被设定为真且当前图片不是IRAP图片且当前图片不被插入到具有参考索引等于0的RefPicList0中时适用以上方法。
e)固定索引或固定索引组被分配到ATMVP候选。当ATMVP候选总是不可用时,固定索引/组索引可以被推断为其他种类的运动候选(诸如仿射候选)。
12.提出零运动仿射Merge候选是否被置入子块Merge候选列表中应取决于是否启用仿射预测。
a)例如,如果仿射使用标志关闭(sps_affine_enabled_flag等于0),则零运动仿射Merge候选不被置入子块Merge候选列表中。
b)替代地,此外,替代地添加作为非仿射候选的默认运动矢量候选。
13.提出非仿射填充候选可以被置入子块Merge候选列表中。
a)如果不满足子块Merge候选列表,则可以填充零运动非仿射填充候选。
b)当选择这样的填充候选时,当前块的affine_flag应被设定为0。
c)替代地,如果不满足子块Merge候选列表且仿射使用标志关闭,则零运动非仿射填充候选被置入子块Merge候选列表中。
14.假设MV0和MV1表示覆盖对应位置的块的参考列表0和参考列表1中的MV(例如,MV0和MV1可以是章节2.3.5.1.2中所描述的MVZ_0和MVZ_1或MVZS_0和MVZS_1)。MV0′和MV1′表示要对当前块或子块推导的参考列表0和参考列表1中的MV。则MV0′和MV1′应通过缩放推导。
a)MV0,如果共位图片这参考列表1中;
b)MV1,如果共位图片在参考列表0中。
15.当当前图片被视为具有参考图片列表X(PicRefListX,例如,X=0)中的设定为M(例如,0)的索引的参考图片时,ATMVP和/或TMVP启用/禁用标志可以对条带/片或其他种类的视频单元被推断为伪。此处,M可以等于目标参考图片索引,其时域块的运动信息应被缩放到ATMVP/TMVP过程期间的PicRefListX。
a)替代地,此外,仅在当前图片是帧内随机访问点(IRAP)图片时,适用以上方法。
b)在一个示例中,在当前图片被视为具有PicRefListX中的设定为M(例如,0)的索引的参考图片和/或当前图片被视为具有PicRefListY中的设定为N(例如,0)的索引的参考图片时,ATMVP和/或TMVP启用/禁用标志可以被推断为伪。变量M和N表示在TMVP或ATMVP过程中使用的目标参考图片索引。
c)对于ATMVP过程,限制确认比特流应遵循以下规则:推导当前块的运动信息的共位图片不应是当前图片。
d)替代地,当以上条件为真时,ATMVP或TMVP过程不被调用。
16.提出如果具有当前块的参考图片列表X(PicRefListX,例如,X=0)中的设定为M(例如,0)的索引的参考图片是当前图片,则ATMVP仍可以对该块启用。
a)在一个示例中,全部子块的运动信息指向当前图片。
b)在一个示例中,当从时域块获取子块的运动信息时,时域块应用指向时域块的当前图片的至少一个参考图片编解码。
c)在一个示例中,当从时域块获取子块的运动信息时,不应用缩放操作。
17.子块Merge索引的编解码方法一致,无论是否使用ATMVP。
a)在一个示例中,对于前L个二进制数,它们被上下文编解码。对于其余二进制数,它们被旁路编解码。在一个示例中,L被设定为1。
b)替代地,对于全部二进制数,它们被上下文编解码。
18.ATMVP中用于定位不同图片的对应块的MV(MVx,MVy)(例如,2.3.5.1.2中的TMV)可以以如MV缩放过程中的相同取整方法被右移到整数精度(指代为(MVx′,MVy′)。
a)替代地,在ATMVP用于定位不同图片中的对应块的MV(例如,2.3.5.1.2中的TMV)可以以如MV平均过程中的相同取整方法被右移到整数精度。
b)替代地,在ATMVP用于定位不同图片中的对应块的MV(例如,2.3.5.1.2中的TMV)可以以如适应性MV分辨率(AMVR)过程中的相同取整方法被右移到整数精度。
19.在ATMVP用于定位不同图片中的对应块的MV(MVx,MVy)(例如,2.3.5.1.2中的TMV)可以通过朝零取整而被右移到整数精度(指代为(MVx′,MVy′)。
a)例如,MVx′=(MVx+((1<<N)>>1)-(MVx>=0?1:0))>>N;N是表示MV分辨率的整数,例如N=4。
i.例如,MVx′=(MVx+(MVx>=0?7∶8))>>4。
b)例如,MVy′=(MVy+((1<<N)>>1)-(MVy>=0?1:0))>>N;N是表示MV分辨率的整数,例如N=4。
i.例如,MVy′=(MVy+(MVy>=0?7:8))>>4。
20.在一个示例中,要点18和要点19中的MV(MVx,MVy)被用于定位对应块以推导ATMVP中使用的默认运动信息,诸如使用子块的中心位置和移位的MV,或使用当前块的左顶位置和移位的MV。
a)在一个示例中,MV(MVx,MVy)被用于在ATMVP过程期间定位对应块以推导当前块中的子块的运动信息,诸如使用子块的中心位置和移位的MV。
21.要点18、19、20中提出的方法可以应用于与定位具有运动矢量的不同图片或当前图片中的参考块相关联的其他编解码工具。
22.在ATMVP中用于定位不同图片中的对应块的MV(MVx,MVy)(例如,2.3.5.1.2中的TMV),即使其指向共位图片也可以被缩放。
a)在一个示例中,如果共位图片的宽度和/或高度(或其中的一致性窗)不同于当前图片(或其中的一致性窗),则MV可以被缩放。
b)假设共位图片的(一致性窗)的宽度和高度被分别指代为W1和H1。则当前图片(的一致性窗)的宽度和高度被分别指代为W2和H2。则MV(MVx,MVy)可以被缩放为MVx′=MVx*W1/W2且MVy′=MVy*H1/H2。
23.用于在ATMVP过程中推导运动信息的当前块的中心点(诸如2.3.5.1.2中的位置(x0,y0))可以通过缩放和/或添加偏移而被进一步修改。
a)在一个示例中,如果共位图片(或其中的一致性窗)的宽度和/或高度不同于当前图片(或其中的一致性窗),中心点可以被进一步修改。
b)假设共位图片中的一致性窗的左顶位置被指代为X1和Y1。当前图片中限定的一致性窗的左顶位置被指代为X2和Y2。共位图片(的一致性窗)的宽度和高度被分别指代为W1和H1。当前图片(的一致性窗)的宽度和高度被分别指代为W2和H2。则(x0,y0)可以被修改为x0′=(x0-X2)*W1/W2+X1和y0′=(y0-Y2)*H1/H2+Y1。
i.替代地,x0′=x0*W1/W2,y0′=y0*H1/H2。
24.用于在ATMVP过程中推导运动信息的对应的位置(诸如2.3.5.1.2中的位置M)可以通过缩放和/或添加偏移被进一步修改
a)在一个示例中,如果共位图片(或其中的一致性窗)的宽度和/或高度不同于当前图片(或其中的一致性窗),则对应的位置可以被进一步修改。
b)假设共位图片中的一致性窗的左顶位置被指代为X1和Y1。当前图片中限定的一致性窗的左顶位置被指代为X2和Y2。共位图片(的一致性窗)的宽度和高度被分别指代为W1和H1。当前图片(的一致性窗)的宽度和高度被分别指代为W2和H2。则M(x,y)可以被修改为x′=(x-X2)*W1/W2+X1且y′=(y-Y2)*H1/H2+Y1。
i.替代地,x′=x*W1/W2,y′=y*H1/H2。
子图片相关
25.在一个示例中,如果位置(i,j)和(i,j-1)属于不同子图片,则结束于(j-1)列的子图片S的宽度可以被设定为等于j减去子图片S的最左列。
a)基于JVET-O2001-vE的实施例在以下以粗斜体强调。
Figure BDA0003558313810000561
Figure BDA0003558313810000571
26.在一个示例中,结束于(NumSubPicGridRows-1)行的子图片S的高度可以被设定为(NumSubPicGridRows-1)减去子图片S的最顶行然后加一。
a)基于JVET-O2001-vE的实施例在以下强调。
Figure BDA0003558313810000572
Figure BDA0003558313810000581
27.在一个示例中,结束于(NumSubPicGridColumns-1)列的子图片S的宽度可以被设定为(NumSubPicGridColumns-1)减去子图片S的最左列然后加1。
a)基于JVET-O2001-vE的实施例在以下强调。
Figure BDA0003558313810000582
Figure BDA0003558313810000591
28.子图片网格可以是CTU尺寸的整数倍。
a)基于JVET-O2001-vE的实施例在以下强调
subpic_grid_col_width_minus1加1指定以CtbSizeY为单位的子图片标识符网格的每个元的宽度。语法元素的长度是Ceil(Log2(pic_width_max_in_luma_samples/CtbSizeY))比特。
变量NumSubPicGridCols被推导如下:
Figure BDA0003558313810000592
subpic_grid_row_height_minus1加1指定以4样点为单位的子图片标识符网格的每个元的高度。语法元素的长度是Ceil(Log2(pic_height_max_in_luma_samples/CtbSizeY))比特。
变量NumSubPicGridRows被推导如下:
Figure BDA0003558313810000593
29.添加一致性约束以保证子图片不会彼此重叠,并且全部子图片可以覆盖整个图片。
a)基于JVET-O2001-vE的实施例指示如下。
如果以下条件都被满足,则任意subpic_grid_idx[i][j]必须等于idx:
i>=SubPicTop[idx]and i<SubPicTop[idx]+SubPicHeight[idx]。
j>=SubPicLeft[idx]and j<SubPicLeft[idx]+SubPicWidth[idx]。
如果以下条件不都被满足,则任意subpic_grid_idx[i][j]必须不同于idx:
i>=SubPicTop[idx]and i<SubPicTop[idx]+SubPicHeight[idx]。
j>=SubPicLeft[idx]and j<SubPicLeft[idx]+SubPicWidth[idx]。
RPR相关
30.信令通知指代为RPR_flag的语法元素(诸如标志)以指示在视频单元(例如,序列)中是否可以使用RPR。RPR_flag可以在SPS、VPS或DPS中信令通知。
a)在一个示例中,如果信令通知RPR不被使用(例如RPR_flag为0),则在图片参数集(PPS)中全部信令通知的宽度/高度可以与在序列参数集(SPS)中信令通知的最大宽度/最大高度相同。
b)在一个示例中,如果信令通知RPR不被使用(例如RPR_flag为0),则全部宽度/高度在PPS中不被信令通知且被推断为在SPS中信令通知的最大宽度/最大高度。
c)在一个示例中,如果信令通知RPR不被使用(例如RPR_flag为0),则在解码过程中不使用一致性窗信息。否则(信令通知要使用RPR),可以在解码过程中使用一致性窗信息。
31.提出可以取决于参考图片的分辨率是否不同于当前图片,或参考图片的宽度和/或高度是否大于当前图片,来选择在运动补偿过程中用于推导当前块的预测块的插值滤波。
a.在一个示例中,当满足条件A时可以应用具有较少抽头的插值滤波,其中条件A取决于当前图片和/或参考图片的维度。
i.在一个示例中,条件A是参考图片的分辨率不同于当前图片。
ii.在一个示例中,条件A是参考图片的宽度和/或高度大于当前图片。
iii.在一个示例中,条件A是W1>a*W2和/或H1>b*H2,其中(W1,H1)表示参考图片的宽度和高度,并且(W2,H2)表示当前图片的宽度和高度,a和b是两个因数,例如a=b=1.5。
iv.在一个示例中,条件A还可以取决于是否使用双向预测。
1)仅当双向预测被用于当前块时满足条件A。
v.在一个示例中,条件A可以取决于M和N,其中M和N表示当前块的宽度和高度。
1)例如,仅当M*N<=T时满足条件A,其中T是整数诸如64。
2)例如,仅当M<=T1或N<=T2时满足条件A,其中T1和T2是整数,例如T1=T2=4。
3)例如,仅当M<=T1且N<=T2时满足条件A,其中T1和T2是整数,例如T1=T2=4。
4)例如,仅当M*N<=T,或M<=T1或N<=T2时满足条件A,其中T,T1和T2是整数,例如T=64,T1=T2=4。
5)在一个示例中,以上子要点中的小于条件可以替换为大于。
vi.在一个示例中,应用1-抽头滤波。换言之,没有滤波的整数像素被输出作为插值结果。
vii.在一个示例中,当参考图片的分辨率不同于当前图片时应用双线性滤波。
viii.在一个示例中,当参考图片的分辨率不同于当前图片,或参考图片的宽度和/或高度大于当前图片时,应用4-抽头滤波或6-抽头滤波。
1)6-抽头滤波还可以用于仿射运动补偿。
2)4-抽头滤波还可以用于色度样点的插值。
b.是否和/或如何应用要点31中公开的方法可以取决于色彩分量。
i.例如,方法仅应用于亮度分量。
c.是否和/或如何应用要点31中所公开的方法可以取决于插值滤波方向。
i.例如,方法仅应用于水平滤波。
ii.例如,方法仅应用于垂直滤波。
CIIP相关
32.CIIP过程中使用的帧内预测信令通知可以在TU级别而非CU级别进行(例如,使用TU而非CU之外的参考样点)。
a)在一个示例中,如果CU宽度或高度大于最大变换单元尺寸,则CU可以被划分为多个TU,并且可以对每个TU生成帧内/帧间预测,例如,使用TU之外的参考样点。
b)在一个示例中,如果最大变换尺寸K小于64(诸如K=32),则CIIP中使用的帧内预测以递归方式进行,如在普通帧内编解码块中一样。
c)例如,KM×KN CIIP编解码块(M和N是整数)被划分为MN个K×K块,对每个K×K块进行帧内预测。后编解码/解码的K×K块的帧内预测可以取决于之前编解码/解码K×K块的重构样点。
5.附加示例性实施例
5.1实施例#1:SPS/PPS/条带头/片组头中的语法设计的示例
与VTM3.0.1rc1参考软件相比的改变以大尺寸粗体强调如下:
Figure BDA0003558313810000621
Figure BDA0003558313810000631
5.2实施例#2:SPS/PPS/条带头/片组头中的语法设计的示例
7.3.2.1序列参数集RBSP语法
Figure BDA0003558313810000632
Figure BDA0003558313810000641
sps_sbtmvp_enabled_flag等于1指定基于子块的时域运动矢量预测器可以在CVS中在解码全部条带slice_type不等于I的图片中被使用。sps_sbtmvp_enabled_flag等于0指定基于子块的时域运动矢量预测器在CVS中不被使用。当sps_sbtmvp_enabled_flag不存在时,其被推断为等于0。
five_minus_max_num_subblock_merge_cand指定5减去条带中支持的基于子块的合并运动矢量预测(MVP)候选的最大数目。当five_minus_max_num_subblock_merge_cand不存在时,其被推断为等于5-sps_sbtmvp_enabled_flag。基于子块的合并MVP候选的最大数目MaxNumSubblockMergeCand被推导如下:
MaxNumSubblockMergeCand=5-five_minus_max_num_subblock_merge_cand(7-45)
MaxNumSubblockMergeCand的值的范围内应在0至5(含端值)。
8.3.4.2子块Merge模式中的运动矢量和参考索引的推导过程
该过程的输入是:
..[对当前VVC规范草案没有改变]。
该过程的输出为:
...[对当前VVC规范草案没有改变]。
变量numSbX,numSbY和子块Merge候选列表subblockMergeCandList被通过以下顺序步骤推导:
当sps_sbtmvp_enabled_flag等于1且(当前图片是IRAP且参考图片列表0的索引0是当前图片)不为真时,则以下适用:
调用如条款8.3.2.3中所指定的从邻接编解码单元推导Merge候选的过程,以亮度编解码块位置(xCb,yCb)、亮度编解码块宽度cbWidth、亮度编解码块高度cbHeight和亮度编解码块宽度作为输入,并且输出为可用性标志availableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1和availableFlagB2、参考索引refIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1和refIdxLXB2、预测列表使用标志predFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1和predFlagLXB2、以及运动矢量mvLXA0、mvLXA1、mvLXB0、mvLXB1和mvLXB2,其中X为0或1。
调用如条款8.3.4.3中所指定的基于子块的时域Merge候选的推导过程,以亮度位置(xCb,yCb)、亮度编解码块宽度cbWidth、亮度编解码块高度cbHeight、可用性标志availableFlagA0、availableFlagA1、availableFlagB0、availableFlagB1、参考索引refIdxLXA0、refIdxLXA1、refIdxLXB0、refIdxLXB1、预测列表使用标志predFlagLXA0、predFlagLXA1、predFlagLXB0、predFlagLXB1和运动矢量mvLXA0、mvLXA1、mvLXB0、mvLXB1作为输入,并且输出为可用性标志availableFlagSbCol、亮度编解码子块在水平方向的数目numSbX和在垂直方向上的数目numSbY、参考索引refIdxLXSbCol、亮度运动矢量mvLXSbCol[xSbIdx][ySbIdx]和预测列表使用标志predFlagLXSbCol[xSbIdx][ySbIdx],其中xSbIdx=0..numSbX-1,ySbIdx=0..numSbY-1,并且X为0或1。
当sps_affine_enabled_flag等于1时,样点位置(xNbA0,yNbA0)、(xNbA1,yNbA1)、(xNbA2,yNbA2)、(xNbB0,yNbB0)、(xNbB1,yNbB1)、(xNbB2,yNbB2)、(xNbB3,yNbB3)以及变量numSbX和numSbY推导如下:
[对当前VVC规范草案没有改变]。
5.3实施例#3MV取整的示例
语法改变是基于JVET-O2001-vE。
8.5.5.3基于子块的时域Merge候选的推导过程
...
-ColPic之内的共位子块的位置(xColSb,yColSb)被推导如下。
1.以下适用:
yColSb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),ySb+((tempMv[1]+8-(tempMv[1]>=0))>>4))
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
xColSb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
xColSb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xSb+(tempMv[0]+8+(tempMV[0]>=0))>>4))
...
8.5.5.4基于子块的时域Merge基本运动数据的推导过程
...
ColPic之内的共位块的位置(xColCb,yColCb)被推导如下。
-以下适用:
yColCb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),yColCtrCb+((tempMv[1]+8-(tempMv[1]>=0))>>4))
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
xColCb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0,则以下适用:
xColCb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
5.3实施例#3:MV取整的示例。
语法改变是基于JVET-O2001-vE。
8.5.5.3基于子块的时域Merge候选的推导过程
...
-ColPic之内的共位子块的位置(xColSb,yColSb)被推导如下。
1.以下适用:
-yColSb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),ySb+((tempMv[1]+8-(tempMv[1]>=0))>>4))
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
-xColSb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
-xColSb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xSb+(tempMv[0]+8+(tempMV[0]>=0))>>4))
...
8.5.5.4基于子块的时域Merge基本运动数据的推导过程
...ColPic之内的共位块的位置(xColCb,yColCb)被推导如下。
-以下适用:
-yColCb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),yColCtrCb+((tempMv[1]+8-(tempMv[1]>=0))>>4))
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
-xColCb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0,则以下适用:
-xColCb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8+(tempMV[0]>=0))>>4))
5.4实施例#4:MV取整的第二示例。
8.5.5.3基于子块的时域Merge候选的推导过程
该过程的输入是:
-相对于当前图片的左顶亮度样点的当前亮度编解码块的左顶样点的亮度位置(xCb,yCb),
-变量cbWidth,指定亮度样点中的当前编解码块的宽度,
-变量cbHeight,指定亮度样点中的当前编解码块的高度。
-邻接编解码单元的可用性标志availableFlagA1
-邻接编解码单元的参考索引refIdxLXA1,其中X为0或1,
-邻接编解码单元的预测列表使用标志predFlagLXA1,其中X为0或1,
-邻接编解码单元的以1/16分数样点准确度的运动矢量mvLXA1,其中X为0或1。
该过程的输出为:
-可用性标志availableFlagSbCol,
-亮度编解码子块在水平方向的数目numSbX和在垂直方向上的数目numSbY,
-参考索引refIdxL0SbCol和refIdxL1SbCol,
-亮度以1/16分数样点准确度的运动矢量mvL0SbCol[xSbIdx][ySbIdx]和mvL1SbCol[xSbIdx][ySbIdx],其中xSbIdx=0..numSbX-1,ySbIdx=0..numSbY-1,
-预测列表使用标志predFlagL0SbCol[xSbIdx][ySbIdx]和predFlagL1SbCol[xSbIdx][ySbIdx],其中xSbIdx=0..numSbX-1,ySbIdx=0..numSbY-1。
可用性标志availableFlagSbCol被推导如下。
-如果以下条件中的一个或多个为真,则availableFlagSbCol被设定为等于0。
-slice_temporal_mvp_enabled_flag等于0。
-sps_sbtmvp_enabled_flag等于0。
-cbWidth小于8。
-cbHeight小于8。
-否则,应用以下顺序步骤:
1.含有当前编解码块的亮度编解码树块的左顶样点的位置(xCtb,yCtb)和当前亮度编解码块的右下中心样点的位置(xCtr,yCtr)推导如下:
-xCtb=(xCb>>CtuLog2Size)<<CtuLog2Size (8-542)
-yCtb=(yCb>>CtuLog2Size)<<CtuLog2Size (8-543)
-xCtr=xCb+(cbWidth/2) (8-544)
-yCtr=yCb+(cbHeight/2) (8-545)
2.亮度位置(xColCtrCb,yColCtrCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的覆盖由ColPic之内的(xCtr,yCtr)给出的位置的共位亮度编解码块的左顶样点。
3.调用如条款8.5.5.4中所指定的基于子块的时域Merge基本运动数据的推导过程,以位置(xCtb,yCtb)、位置(xColCtrCb、yColCtrCb)、可用性标志availableFlagA1和预测列表使用标志predFlagLXA1、和参考索引refIdxLXA1、和运动矢量mvLXA1,其中X为0和1作为输入,且运动矢量ctrMvLX和共位块的预测列表使用标志ctrPredFlagLX,其中X为0和1,以及时域运动矢量tempMv作为输出。
4.变量availableFlagSbCol被推导如下:
-如果ctrPredFlagL0和ctrPredFlagL1两者都等于0,则availableFlagSbCol被设定为等于0。
-否则,availableFlagSbCol被设定为等于1。
当availableFlagSbCol等于1时,则以下适用:
-变量numSbX、numSbY、sbWidth、sbHeight和refIdxLXSbCol推导如下:
-numSbX=cbWidth>>3 (8-546)
-numSbY=cbHeight>>3 (8-547)
-sbWidth=cbWidth/numSbX (8-548)
-sbHeight=cbHeight/numSbY (8-549)
-refIdxLXSbCol=0 (8-550)
-对于xSbIdx=0..numSbX-1和ySbIdx=0..numSbY-1,运动矢量mvLXSbCol[xSbIdx][ySbIdx]和预测列表使用标志predFlagLXSbCol[xSbIdx][ySbIdx]推导如下:
-亮度位置(xSb,ySb),指定相对于当前图片的左顶亮度样点的当前编解码子块的左顶样点,被推导如下:
-xSb=xCb+xSbIdx*sbWidth+sbWidth/2 (8-551)
-ySb=yCb+ySbIdx*sbHeight+sbHeight/2 (8-552)
-ColPic之内的共位子块的位置(xColSb,yColSb)被推导如下。
1.以下适用:
-yColSb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),ySb+((tempMv[1]+8-(tempMv[1]>=0?1∶0))>>4))(8-553)
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
--xColSb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+8-(tempMv[0]>=0?1:0))>>4))(8-554)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
--xColSb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+8-(tempMv[0]>=0?1:0))>>4))(8-555)
-变量currCb指定覆盖当前图片之内的当前编解码子块的亮度编解码块。
-变量colCb指定覆盖ColPic之内的由((xColSb>>3)<<3,(yColSb>>3)<<3)给出的修改的位置的亮度编解码块。
-亮度位置(xColCb,yColCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的由colCb指定的共位亮度编解码块的左顶样点。
-调用如条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL0和设定为等于1的sbFlag作为输入,并且输出分配到子块的运动矢量mvL0SbCol[xSbIdx][ySbIdx]和availableFlagL0SbCol。
-调用如条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL1和设定为等于1的sbFlag作为输入,并且输出分配到子块的运动矢量mvL1SbCol[xSbIdx][ySbIdx]和availableFlagL1SbCol。
-当availableFlagL0SbCol和availableFlagL1SbCol都等于0,以下对于X为0和1适用:
-mvLXSbCol[xSbIdx][ySbIdx]=ctrMvLX (8-556)
-predFlagLXSbCol[xSbIdx][ySbIdx]=ctrPredFlagLX (8-557)
8.5.5.4基于子块的时域Merge基本运动数据的推导过程
该过程的输入是:
-含有当前编解码块的亮度编解码树块的左顶样点的位置(xCtb,yCtb),
-覆盖右下中心样点的共位亮度编解码块的左顶样点的位置(xColCtrCb,yColCtrCb)。
-邻接编解码单元的可用性标志availableFlagA1
-邻接编解码单元的参考索引refIdxLXA1,
-邻接编解码单元的预测列表使用标志predFlagLXA1
-邻接编解码单元的以1/16分数样点准确度的运动矢量mvLXA1
该过程的输出为:
-运动矢量ctrMvL0和ctrMvL1,
-预测列表使用标志ctrPredFlagL0和ctrPredFlagL1,
-时域运动矢量tempMv。
变量tempMv被设定如下:
-tempMv[0]=0 (8-558)
-tempMv[1]=0 (8-559)
变量currPic指定当前图片。
当availableFlagA1等于真时,则以下适用:
-如果全部以下条件为真,则tempMv被设定为等于mvL0A1
-predFlagL0A1等于1,
-DiffPicOrderCnt(ColPic,RefPicList[0][refIdxL0A1])等于0,
-否则,如果全部以下条件为真,则tempMv被设定为等于mvL1A1
-slice_type等于B,
-predFlagL1A1等于1,
-DiffPicOrderCnt(ColPic,RefPicList[1][refIdxL1A1])等于0。
ColPic之内的共位块的位置(xColCb,yColCb)被推导如下。
-以下适用:
-yColCb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),yColCtrCb+((tempMv[1]+8-(tempMv[1]>=0?1:0))>>4))(8-560)
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
--xColCb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8-(tempMv[0]>=0?1:0))>>4))(8-561)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于o,则以下适用:
--xColCb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+8-(tempMv[0]>=0?1:0))>>4))(8-562)
阵列colPredMode被设定为等于由ColPic指定的共位图片的预测模式阵列CuPredMode[0]。
运动矢量ctrMvL0和ctrMvL1,以及预测列表使用标志ctrPredFlagL0和ctrPredFlagL1推导如下:
-如果colPredMode[xColCb][yColCb]等于MODE_INTER,则以下适用:
-变量currCb指定覆盖当前图片之内的(xCtrCb,yCtrCb)的亮度编解码块。
-变量colCb指定覆盖在ColPic之内由((xColCb>>3)<<3,(yColCb>>3)<<3)给出的修改的位置的亮度编解码块。
-亮度位置(xColCb,yColCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的由colCb指定的共位亮度编解码块的左顶样点。
-调用条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL0和设定为等于1的sbFlag作为输入,并且输出分配到ctrMvL0和ctrPredFlagL0。
-调用条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL1和设定为等于1的sbFlag作为输入,并且输出分配到ctrMvL1和ctrPredFlagL1。
-否则,则以下适用:
-ctrPredFlagL0=0 (8-563)
-ctrPredFlagL1=0 (8-564)
5.5实施例#5:MV取整的第三示例。
8.5.5.3基于子块的时域Merge候选的推导过程
该过程的输入是:
-相对于当前图片的左顶亮度样点的当前亮度编解码块的左顶样点的亮度位置(xCb,yCb),
-变量cbWidth,指定亮度样点中的当前编解码块的宽度,
-变量cbHeight,指定亮度样点中的当前编解码块的高度。
-邻接编解码单元的可用性标志availableFlagA1
-邻接编解码单元的参考索引refIdxLXA1,其中X为0或1,
-邻接编解码单元的预测列表使用标志predFlagLXA1,其中X为0或1,
-邻接编解码单元的以1/16分数样点准确度的运动矢量mvLXA1,其中X为0或1。
该过程的输出为:
-可用性标志availableFlagSbCol,
-亮度编解码子块在水平方向的数目numSbX和在垂直方向上的数目numSbY,
-参考索引refIdxL0SbCol和refIdxL1SbCol,
-亮度以1/16分数样点准确度的运动矢量mvL0SbCol[xSbIdx][ySbIdx]和mvL1SbCol[xSbIdx][ySbIdx],其中xSbIdx=0..numSbX-1,ySbIdx=0..numSbY-1,
-预测列表使用标志predFlagL0SbCol[xSbIdx][ySbIdx]和predFlagL1SbCol[xSbIdx][ySbIdx],其中xSbIdx=0..numSbX-1,ySbIdx=0..numSbY-1。
可用性标志availableFlagSbCol被推导如下。
-如果以下条件中的一个或多个为真,则availableFlagSbCol被设定为等于0。
-slice_temporal_mvp_enabled_flag等于0。
-sps_sbtmvp_enabled_flag等于0。
-cbWidth小于8。
-cbHeight小于8。
-否则,应用以下顺序步骤:
1.含有当前编解码块的亮度编解码树块的左顶样点的位置(xCtb,yCtb)和当前亮度编解码块的右下中心样点的位置(xCtr,yCtr)推导如下:
-xCtb=(xCb>>CtuLog2Size)<<CtuLog2Size (8-542)
-yCtb=(yCb>>CtuLog2Size)<<CtuLog2Size (8-543)
-xCtr=xCb+(cbWidth/2) (8-544)
-yCtr=yCb+(cbHeight/2) (8-545)
2.亮度位置(xColCtrCb,yColCtrCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的覆盖由ColPic之内的(xCtr,yCtr)给出的位置的共位亮度编解码块的左顶样点。
3.调用如条款8.5.5.4中所指定的基于子块的时域Merge基本运动数据的推导过程,以位置(xCtb,yCtb)、位置(xColCtrCb,yColCtrCb)、可用性标志availableFlagA1、和预测列表使用标志predFlagLXA1、和参考索引refIdxLXAl、和运动矢量mvLXA1,其中X为0和1,作为输入,并且运动矢量ctrMvLX和共位块的预测列表使用标志ctrPredFlagLX,其中X为0和1,以及时域运动矢量tempMv作为输出。
4.变量availableFlagSbCol被推导如下:
-如果ctrPredFlagL0和ctrPredFlagL1两者都等于0,则availableFlagSbCol被设定为等于0。
-否则,availableFlagSbCol被设定为等于1。
当availableFlagSbCol等于1时,则以下适用:
-变量numSbX、numSbY、sbWidth、sbHeight和refIdxLXSbCol推导如下:
-numSbX=cbWidth>>3 (8-546)
-numSbY=cbHeight>>3 (8-547)
-sbWidth=cbWidth/numSbX (8-548)
-sbHeight=cbHeight/numSbY (8-549)
-refIdxLXSbCol=0 (8-550)
-对于xSbIdx=0..numSbX-1且ySbIdx=0..numSbY-1,运动矢量mvLXSbCol[xSbIdx][ySbIdx]和预测列表使用标志predFlagLXSbCol[xSbIdx][ySbIdx]推导如下:
-亮度位置(xSb,ySb),指定相对于当前图片的左顶亮度样点的当前编解码子块的左顶样点,被推导如下:
-xSb=xCb+xSbIdx*sbWidth+sbWidth/2 (8-551)
-ySb=yCb+ySbIdx*sbHeight+sbHeight/2 (8-552)
-ColPic之内的共位子块的位置(xColSb,yColSb)被推导如下。
1.以下适用:
-yColSb=Clip3(yCtb,Min(CurPicHeightInSamplesY-1,yCtb+(1<<CtbLog2SizeY)-1),ySb+((tempMv[1]+(tempMv[1]>=0?7∶8))>>4)) (8-553)
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
-xColSb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+(tempMv[0]>=0?7:8))>>4)) (8-554)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
-xColSb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xSb+((tempMv[0]+(tempMv[0]>=0?7:8))>>4)) (8-555)
-变量currCb指定覆盖当前图片之内的当前编解码子块的亮度编解码块。
-变量colCb指定覆盖ColPic之内的由((xColSb>>3)<<3,(yColSb>>3)<<3)给出的修改的位置的亮度编解码块。
-亮度位置(xColCb,yColCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的由colCb指定的共位亮度编解码块的左顶样点。
-调用如条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL0和设定为等于1的sbFlag作为输入,并且输出分配到子块的运动矢量mvL0SbCol[xSbIdx][ySbIdx]和availableFlagL0SbCol。
-调用如条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL1和设定为等于1的sbFlag作为输入,并且输出分配到子块的运动矢量mvL1SbCol[xSbIdx][ySbIdx]和availableFlagL 1SbCol。
-当availableFlagL0SbCol和availableFlagL1SbCol两者都等于0时,以下对于X为0和1适用:
-mvLXSbCol[xSbIdx][ySbIdx]=ctrMvLX (8-556)
-predFlagLXSbCol[xSbIdx][ySbIdx]=ctrPredFlagLX (8-557)
8.5.5.4基于子块的时域Merge基本运动数据的推导过程
该过程的输入是:
-含有当前编解码块的亮度编解码树块的左顶样点的位置(xCtb,yCtb),
-覆盖右下中心样点的共位亮度编解码块的左顶样点的位置(xColCtrCb,yColCtrCb)。
-邻接编解码单元的可用性标志availableFlagA1
-邻接编解码单元的参考索引refIdxLXA1
-邻接编解码单元的预测列表使用标志predFlagLXA1
-邻接编解码单元的以1/16分数样点准确度的运动矢量mvLXA1
该过程的输出为:
-运动矢量ctrMvL0和ctrMvL1,
-预测列表使用标志ctrPredFlagL0和ctrPredFlagL1,
-时域运动矢量tempMv。
变量tempMv被设定如下:
-tempMv[0]=0 (8-558)
-tempMv[1]=0 (8-559)
变量currPic指定当前图片。
当availableFlagA1等于真时,则以下适用:
-如果全部以下条件为真,则tempMv被设定为等于mvL0A1
-predFlagL0A1等于1,
-DiffPicOrderCnt(ColPic,RefPicList[0][refIdxL0A1])等于0,-否则,如果全部以下条件为真,则tempMv被设定为等于mvL1A1
-slice_type等于B,
-predFlagL1A1等于1,
-DiffPicOrderCnt(ColPic,RefPicList[1][refIdxL1A1])等于0。ColPic之内的共位块的位置(xColCb,yColCb)被推导如下。
-以下适用:
-yColCb=Clip3(yCtb,Min(CurPicHeightInSamplesY一1,yCtb+(1<<CtbLog2SizeY)-1),yColCtrCb+((tempMv[1]+(tempMv[1]>=0?7∶8))>>4))(8-560)
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
-xColCb=Clip3(xCtb,Min(SubPicRightBoundaryPos,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+(tempMv[0]>=0?7∶8))>>4))(8-561)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于o,则以下适用:
-xColCb=Clip3(xCtb,Min(CurPicWidthInSamplesY-1,xCtb+(1<<CtbLog2SizeY)+3),xColCtrCb+((tempMv[0]+(tempMv[0]>=0?7∶8))>>4))(8-562)
阵列colPredMode被设定为等于由ColPic指定的共位图片的预测模式阵列CuPredMode[0]。
运动矢量ctrMvL0和ctrMvL1,以及预测列表使用标志ctrPredFlagL0和ctrPredFlagL1推导如下:
-如果colPredMode[xColCb][yColCb]等于MODE_INTER,则以下适用:
-变量currCb指定覆盖当前图片之内的(xCtrCb,yCtrCb)的亮度编解码块。
-变量colCb指定覆盖在ColPic之内由((xColCb>>3)<<3,(yColCb>>3)<<3)给出的修改的位置的亮度编解码块。
-亮度位置(xColCb,yColCb)被设定为等于相对于由ColPic指定的共位图片的左顶亮度样点的由colCb指定的共位亮度编解码块的左顶样点。
-调用条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL0和设定为等于1的sbFlag作为输入,并且输出分配到ctrMvL0和ctrPredFlagL0。
-调用条款8.5.2.12中所指定的共位运动矢量的推导过程,以currCb、colCb、(xColCb,yColCb)、设定为等于0的refIdxL1和设定为等于1的sbFlag作为输入,并且输出分配到ctrMvL1和ctrPredFlagL1。
-否则,则以下适用:
-ctrPredFlagL0=0 (8-563)
-ctrPredFlagL1=0 (8-564)
8.5.6.3分数样点插值过程
8.5.6.3.1总体
该过程的输入是:
-亮度位置(xSb,ySb),指定当前编解码子块的左顶样点相对于当前图片的左顶亮度样点,
-变量sbWidth,指定当前编解码子块的宽度,
-变量sbHeight,指定当前编解码子块的高度,
-运动矢量偏移mvOffset,
-细化运动矢量refMvLX,
-所选参考图片样点阵列refPicLX,
-半样点插值滤波索引hpelIfIdx,
-双向光流标志bdofFlag,
-变量cIdx,指定当前块的色彩分量索引。
该过程的输出为:
-预测样点值的(sbWidth+brdExtSize)x(sbHeight+brdExtSize)阵列predSamplesLX。
预测块界限扩展尺寸brdExtSize被推导如下:
-brdExtSize=(bdofFlag||(interaffine_flag[xSb][ySb]&&sps_affine_prof_enabled_flag))?2∶0 (8-752)
变量fRefWidth被设定为等于亮度样点中的参考图片的PicOutputWidthL。
变量fRefHeight被设定为等于亮度样点中的参考图片的PicOutputHeightL。
运动矢量mvLX被设定为(refMvLX-mvOffset)。
-如果cIdx等于0,则以下适用:
-缩放因数和它们的固定点表示被定义为
-hori_scale_fp=((fRefWidth<<14)+(PicOutputWidthL>>1))/PicOutputWidthL (8-753)
-vert_scale_fp=((fRefHeight<<14)+(PicOutputHeightL>>1))/PicOutputHeightL (8-754)
-使(xIntL,yIntL)为以整样点单位给定的亮度位置,并且(xFracL,yFracL)为以1/16样点单位给定的偏移。这些变量仅在此条款中用于指定参考样点阵列refPicLX之内的分数样点位置。
-参考样点填充的边界块的左顶坐标(xSbIntL,ySbIntL)被设定为(xSb+(mvLX[0]>>4),ySb+(mvLX[1]>>4))。
-对于预测亮度样点阵列predSamplesLX之内的每个亮度样点位置(xL=0..sbWidth-1+brdExtSize,yL=0..sbHeight-1+brdExtSize),对应的预测亮度样点值predSamplesLX[xL][yL]被推导如下:
-使(refxSbL,refySbL)和(refxL,refyL)为以1/16样点单位给出的运动矢量(refMvLX[0],refMvLX[1])所指向的亮度位置。变量refxSbL、refxL、refySbL和refyL推导如下:
-refxSbL=((xSb<<4)+refMvLX[0])*hori_scale_fp(8-755)
-refxL=((Sign(refxSb)*((Abs(refxSb)+128)>>8)+xL*((hori_scale_fp+8)>>4))+32)>>6(8-756)
-refySbL=((ySb<<4)+refMvLX[1])*vert_scale_fp(8-757)
-refyL=((Sign(refySb)*((Abs(refySb)+128)>>8)+yL*((vert_scale_fp+8)>>4))+32)>>6 (8-758)
-变量xIntL、yIntL、xFracL和yFracL推导如下:
-xIntL=refxL>>4 (8-759)
-yIntL=refyL>>4 (8-760)
-xFracL=refxL&15 (8-761)
-yFracL=refyL&15 (8-762)
-如果满足以下全部条件,则using6TapFlag被设定为1:
-cbWidth[0][xSb][ySb]<=4||cbHeight[0][xSb][ySb]<=4||cbWidth[0][xSb][ySb]*cbHeight[0][xSb][ySb]<=64。
-PredFlagL0[xSb][ySb]==1&&PredFlagL 1[xSb][ySb]==1。
-如果bdofFlag等于真或(sps_affine_prof_enabled_flag等于真且inter_affine_flag[xSb][ySb]等于真),并且以下条件中的一个或多个为真,则通过调用如条款8.5.6.3.3中所指定的亮度整数样点取回过程,以(xIntL+(xFracL>>3)-1),yIntL+(yFracL>>3)-1)和refPicLX作为输入,推导预测亮度样点值predSamplesLX[xL][yL]。
1.xL等于0。
2.xL等于sbWidth+1。
3.yL等于0。
4.yL等于sbHeight+1。
-否则,通过调用如条款8.5.6.3.2中所指定的亮度样点8抽头插值滤波过程,以(xIntL-(brdExtSize>0?1:0)、yIntL-(brdExtSize>0?1:0))、(xFracL,yFracL)、(xSbIntL,ySbIntL)、refPicLX、hpelIfIdx、sbWidth、sbHeight和(xSb,ySb)以及using6TapFlag作为输入,推导预测亮度样点值predSamplesLX[xL][yL]。
-否则(cIdx不等于0),则以下适用:
-使(xIntC,yIntC)为以整样点单位给出的色度位置,并且(xFracC,yFracC)为以1/32样点单位给出的偏移。这些变量仅在此条款中用于指定参考样点阵列refPicLX之内的总体分数样点位置。
-参考样点填充的边界块的左顶坐标(xSbIntC,ySbIntC)被设定为((xSb/SubWidthC)+(mvLX[0]>>5),(ySb/SubHeightC)+(mvLX[1]>>5))。
-对于预测色度样点阵列predSamplesLX之内的每个色度样点位置(xC=0..sbWidth-1,yC=0..sbHeight-1),对应的预测色度样点值predSamplesLX[xC][yC]被推导如下:
-使(refxSbC,refySbC)和(refxC,refyC)为以1/32样点单位给出的运动矢量(mvLX[0],mvLX[1])所指向的色度位置。变量refxSbC、refySbC、refxC和refyC推导如下:
-refxSbC=((xSb/SubWidthC<<5)+mvLX[0])*hori_scale_fp (8-763)
-refxC=((Sign(refxSbC)*((Abs(refxSbC)+256)>>9)+xC*((hori_scale_fp+8)>>4))+16)>>5 (8-764)
-refySbC=((ySb/SubHeightC<<5)+mvLX[1])*vert_scale_fp (8-765)
-refyC=((Sign(refySbC)*((Abs(refySbC)+256)>>9)+yC*((vert_scale_fp+8)>>4))+16)>>5 (8-766)
-变量xIntC、yIntC、xFracC和yFracC推导如下:
-xIntC=refxC>>5 (8-767)
-yIntC=refyC>>5 (8-768)
-xFracC=refyC&31 (8-769)
-yFracC=refyC&31 (8-770)
-通过调用在条款8.5.6.3.4中所指定的过程,以(xIntC,yIntC)、(xFracC,yFracC)、(xSbIntC,ySbIntC)、sbWidth、sbHeight和refPicLX作为输入,推导预测样点值predSamplesLX[xC][yC]。
8.5.6.3.2亮度样点插值滤波过程
该过程的输入是:
-以整样点单位的亮度位置(xIntL,yIntL),
-分数样点单位中的亮度位置(xFracL,yFracL),
-以整样点单位的亮度位置(xSbIntL,ySbIntL),指定相对于参考图片的左顶亮度样点的参考样点填充的边界块的左顶样点,
-亮度参考样点阵列refPicLXL
-半样点插值滤波索引hpelIfIdx,
-变量sbWidth,指定当前子块的宽度,
-变量sbHeight,指定当前子块的高度,
-亮度位置(xSb,ySb),指定相对于当前图片的左顶亮度样点的当前子块的左顶样点,
-标志using6TapFlag,指定是否使用6抽头插值滤波。
该过程的输出是预测亮度样点值predSampleLXL
变量shift1、shift2和shift3推导如下:
-变量shift1被设定为等于Min(4,BitDepthy-8),变量shift2被设定为等于6,并且变量shift3被设定为等于Max(2,14-BitDepthY)。
-变量picW被设定为等于pic_width_in_luma_samples,并且变量picH被设定为等于pic_height_in_luma_samples。
亮度插值滤波系数fL[p]对于每个1/16分数样点位置p等于xFracL或yFracL推导如下:
-如果满足以下条件中的至少一个,则亮度插值滤波系数fL[p]在表8-12中指定。
-MotionModelIdc[xSb][ySb]大于0,并且sbWidth和sbHeight两者都等于4,
-using6TapFlag等于1。
-否则,亮度插值滤波系数fL[p]在表8-11中指定,取决于hpelIfIdx。以整样点单位的亮度位置(xInti,yInti)对于i=0..7被推导如下:
-如果subpic_treated_as_pic_flag[SubPicIdx]等于1,则以下适用:
-xInti=Clip3(SubPicLeftBoundaryPos,SubPicRightBoundaryPos,xIntL+i-3)(8-771)
-yInti=Clip3(SubPicTopBoundaryPos,SubPicBotBoundaryPos,yIntL+i-3)(8-772)
-否则(subpic_treated_as_pic_flag[SubPicIdx]等于0),则以下适用:
-xInti=Clip3(0,picW-1,sps_ref_wraparound_enabled_flag?ClipH((sps_ref_wraparound_offset_minus1+1)*MinCbSizeY,picW,xIntL+i-3): (8-773)
xIntL+i-3)
-yInti=Clip3(0,picH-1,yIntL+i-3) (8-774)
以整样点单位的亮度位置对于i=0..7被进一步修改如下:
--xInti=Clip3(xSbIntL-3,xSbIntL+sbWidth+4,xInti)(8-775)
-yInti=Clip3(ySbIntL-3,ySbIntL+sbHeight+4,yInti)(8-776)
预测亮度样点值predSampleLXL被推导如下:
-如果xFracL和yFracL两者都等于0,则predSampleLXL的值被推导如下:
-predSampleLXL=refPicLXL[xInt3][yInt3]<<shift3 (8-777)
-否则,如果xFracL不等于0且yFracL等于0,则predSampleLXL的值被推导如下:
Figure BDA0003558313810000831
-否则,如果xFracL等于0且yFracL不等于0,则predSampleLXL的值被推导如下:
Figure BDA0003558313810000832
-否则,如果xFracL不等于0且yFracL不等于0,则predSampleLXL的值被推导如下:
-样点阵列temp[n],其中n=0..7,被推导如下:
Figure BDA0003558313810000842
-预测亮度样点值predSampleLXL被推导如下:
Figure BDA0003558313810000843
表8-11-每个1/16分数样点位置p的亮度插值滤波系数fL[p]的规范。
Figure BDA0003558313810000841
表8-12-仿射运动模式的每个1/16分数样点位置p的亮度插值滤波系数fL[p]的规范。
Figure BDA0003558313810000851
图29是视频处理设备2600的框图。设备2600可以用于实现本文中所描述的方法中的一个或多个。设备2600可以实施为智能电话、平板计算机、计算机、物联网(IoT)接收器,等等。设备2600可以包含一个或多个处理器2602、一个或多个存储器2604和视频处理硬件2606。(多个)处理器2602可以配置为实现本文档中所描述的一个或多个方法。存储器(多个存储器)2604可以用于储存数据和代码,以实现本文中所描述的方法和技术。视频处理硬件2606可以用于在硬件电路中实现本文档中描述的一些技术。
图30是视频处理的示例性方法3000的流程图。方法包含对当前视频块,基于时域运动矢量预测(TMVP)或当前视频块的当前图片参考编解码(CPR)的使用的状态,确定(3002)子块Merge候选列表中的候选ML的最大数目或启用替代时域运动矢量预测(ATMVP)候选的使用,其中状态是启用或禁用之一,以及基于所述确定的结果进行(3004)当前视频块与当前视频块的比特流表示之间的转换。
应理解,已经公开了若干技术,其将通过允许在编码或解码视频或图像中使用ATMVP编解码工具而使集成在视频处理装置中的视频编码器和解码器实施例受益,诸如智能电话、膝上式计算机、桌面式计算机,以及相似装置。各种实施例和技术可以使用以下基于条款的描述。
1.一种视频处理的方法,包括:为当前视频块,基于时域运动矢量预测(TMVP)的使用的状态或当前视频块的当前图片参考编解码(CPR)的状态,确定子块Merge候选列表中的候选ML的最大数目或启用替代时域运动矢量预测(ATMVP)候选的使用,其中状态是启用或禁用之一,以及基于确定的结果,进行所述当前视频块与所述当前视频块的比特流表示之间的转换。
2.根据条款1所述的方法,其中启用ATMVP候选的使用还基于当前视频块的ATMVP使用的状态。
3.根据权利要求1-2中任一项所述的方法,其中确定ML包含:确定ATMVP和TMVP被禁用;以及通过从子块Merge候选列表排除ATMVP候选确定ML。
4.根据权利要求1-2中任一项所述的方法,其中确定ML包含:
断定ATMVP对当前视频块启用,TMVP对当前视频块禁用,并且仿射编解码对当前视频块禁用;以及
基于所述断定,将ML设定为零。
5.根据权利要求1-2中任一项所述的方法,其中确定ML包含:
断定ATMVP对当前视频块启用,TMVP对当前视频块启用,并且仿射编解码对当前视频块禁用;以及
基于所述断定,将ML设定为1。
6.根据权利要求1-2中任一项所述的方法,其中确定ML是基于当前块的ATMVP使用的状态,以及当前视频块的当前图片的共位参考图片是否是当前图片。
7.根据权利要求1-2中任一项所述的方法,其中确定ML是基于ATMVP的状态,以及具有当前视频块的当前图片的参考图片列表中的参考索引0的参考图片是否是当前图片。
8.根据条款7所述的方法,其中参考图片列表是列表0或列表1。
条款1-8的附加描述可以在章节4中列举的项目1-2中找到。
9.一种视频处理的方法,包括:
对表示视频图片的序列的比特流与视频图片的像素值之间的转换,确定时域运动矢量预测(TMVP)编解码工具与替代TMVP(ATMVP)编解码工具之间的关系,所述视频图片使用基于块的编码,其中视频图片的块被组织为条带或片,以及
基于确定,进行转换;
其中关系指定适用性,如以下中的一个或多个:
(a)在TMVP在条带或片或图片级别处不被允许的情况下,则ATMVP在条带或片或图片级别被禁用;
(b)在TMVP在条带或片或图片级别信令通知的情况下,则ATMVP在TMVP之后在条带或片或图片级别信令通知;
(c)仅在序列级别指定该关系,而不被包含在条带或片或图片级别。
10.根据条款9所述的方法,其中在比特流表示中的单个比特中信令通知该关系。
条款9-10的附加描述可以在章节4中列举的项目3-4找到。
11.一种视频编解码的方法,包括:
对视频区域与比特流表示之间的转换,确定要应用于时域运动矢量预测(TMVP)或先进时域运动矢量预测(ATMVP)编解码的当前块或视频区域的当前子块的坐标的位置的掩码的量;以及
通过基于该量应用掩码,进行视频区域与对应的比特流表示之间的转换。
12.根据条款11所述的方法,其中掩码的量在比特流表示中信令通知。
13.根据权利要求11-12所述的方法,其中在比特流表示的信令通知参数集中的指示将运动压缩指示为禁用的情况下,被设定为无掩码。
14.根据权利要求11-13中任一项所述的方法,其中通过使用值等于~(2M-1)的整数MASK的逐比特AND运算应用掩码,其中M是整数,″~″表示逐位补偿算子。
15.根据权利要求11-14中任一项所述的方法,其中应用掩码包含应用导致共享相同运动信息的视频区域的2K x 2K块的掩码,其中K和M是不同整数。
16.根据权利要求11-15中任一项所述的方法,其中M=3或M=4。
17.根据权利要求11-16中任一项所述的方法,其中M在比特流表示中信令通知。
可以在章节4中列举的项目3-4中找到条款11-17的附加描述。
18.一种视频处理的方法,包括:
在当前视频区域与比特流表示之间的转换期间,确定当前视频区域的替代时域运动矢量预测(ATMVP)的有效对应区域,以及
基于所述有效对应区域进行所述转换,
其中确定是基于以下一个或多个:
(a)基于当前视频区域的特性的适应性确定;
(b)基本区域,具有尺寸MxN像素,其中M和N是整数;
(c)确定用于定位有效对应区域的运动矢量,其中确定运动矢量是基于规则;或
(d)确定ATMVP编解码的默认运动矢量。
19.根据条款18所述的方法,其中当前视频区域是有效对应区域是以下的函数:(a)当前视频区域的宽度或高度,或(b)应用于当前视频区域的运动矢量压缩工具。
20.根据权利要求18-19中任一项所述的方法,其中当前视频区域对应于小于编解码树单元(CTU)区域的尺寸MxN的基本区域。
21.根据条款20所述的方法,其中当前视频块在基本区域之内,并且其中有效对应区域是共位基本区域。
22.根据条款20所述的方法,其中当前视频块在基本区域之内,并且其中有效对应区域与共位基本区域至少部分不重叠。
23.根据条款18所述的方法,其中有效对应区域在与包含当前视频区域的当前图片不同的图片中。
24.根据条款23所述的方法,其中当前视频区域是当前视频块,并且对应于当前视频块的时域运动矢量(TMV)被(1)设定为默认值,或(2)设定为基于历史的运动矢量预测器表中的运动矢量。
25.根据条款23所述的方法,其中确定ATMVP编解码的默认运动矢量包含(1)将默认运动矢量设定为值(0,0),或(2)从基于历史的运动矢量预测器表推导默认运动矢量,或(3)从邻接块推导默认运动矢量。
可以在章节4中列举的项目7-10中找到条款18-25的附加描述。
26.一种视频处理的方法,包括:
使用规则生成视频区域的候选列表或运动矢量;以及
候选列表进行视频区域与视频区域的比特流表示之间的转换,其中规则包含以下一个或多个:
(a)规则1:在转换期间总是考虑对应于替代时域运动矢量预测(ATMVP)模式的候选;
(b)规则2:确定视频区域的子块的子块Merge候选列表中的零运动仿射Merge候选的可用性时使用视频区域的仿射模式的启用状态;
(c)规则3:对视频区域的子块的子块Merge候选列表使用非仿射填充候选;或
(d)规则4:根据替代时域运动矢量预测器方法从覆盖对应位置的块的运动矢量推导视频区域的运动矢量。
27.根据条款26所述的方法,其中视频区域是当前视频块,且规则1还指定通过确定在覆盖当前视频块的中心点的对应位置的对应位置处的块,确定ATMVP默认运动矢量。
28.根据条款26所述的方法,其中规则2还指定在仿射模式启用状态指示仿射模式对当前视频块关闭的情况下,避免将零运动仿射Merge候选添加到子块Merge候选列表中。
可以在章节4中列举的项目11-12中找到条款26-28的附加描述。
29.根据权利要求1-28中任一项所述的方法,其中转换包含从当前视频块或当前视频区域生成比特流。
30.根据权利要求1-28中任一项所述的方法,其中转换包含从比特流表示生成当前视频块或当前视频区域的像素值。
31.如条款1-28中任一项所述的方法,还包括:确定与当前视频块相关的共位图片中的时域块是用CPR模式编解码的,并且其中基于确定时域块是用CPR模式编解码的而使用默认运动候选而非ATMVP候选。
32.根据条款31所述的方法,其中默认运动候选指示当前视频块的中心位置。
33.根据条款31所述的方法,其中默认运动候选是(0,0)运动矢量,并且参考图片索引对于两个参考图片列表都等于零。
34.如条款1-28中任一项所述的方法,还包括:确定当前视频块的位置,其中ATMVP候选的使用的默认运动信息是基于当前视频块的位置的确定。
35.根据条款34所述的方法,其中位置是基于当前视频块的子块的位置。
36.如条款1-28中任一项所述的方法,其中ATMVP候选的使用是基于由条带、片、或图片头提供的指示ATMVP候选的使用的标志。
37.根据条款36所述的方法,其中包含当前视频块的当前图片不是帧内随机访问点(IRAP)图片,并且其中当前图片不被插入到具有等于零的参考索引的RefPicList0中。
38.如条款1-28中任一项所述的方法,其中基于以包含当前视频块的当前图片和参考图片列表X为基础对于条带或片被推断为伪的标志而启用或禁用ATMVP或TMVP,当前图片是具有设定为M的索引的参考图片。
39.如条款1-28中任一项所述的方法,还包括:将具有当前视频块的参考图片列表X中的设定为M的索引的参考图片确定为当前图片,并且其中基于确定具有当前视频块的参考图片列表X中的设定为M的索引的参考图片是当前图片而启用ATMVP。
40.根据条款39所述的方法,其中子块运动信息被定义为指向当前图片。
41.根据条款39所述的方法,还包括:确定子块运动信息是来自时域块,其中时域块是用指向时域块的当前图片的参考图片编解码的。
42.根据条款41所述的方法,其中子块运动信息不被缩放。
43.如条款1-28中任一项所述的方法,其中进行转换包含对准用于编解码的子块Merge索引。
44.根据条款43所述的方法,其中第一数目的二进制数是上下文编解码的,并且第二数目的二进制数是旁路编解码的,第二数目的二进制数不是上下文编解码的。
45.根据条款43所述的方法,其中二进制数是上下文编解码的。
46.一种视频处理的方法,包括:为当前视频块,对于基于右移取整过程的当前视频块与当前视频块的编解码表示之间的转换,确定在替代时域运动矢量预测(ATMVP)过程中用于定位不同图片中的对应块的运动矢量,以及基于所述确定的结果进行当前视频块与当前视频块的编解码表示之间的转换。
47.根据条款46所述的方法,其中右移取整过程相同于用于转换期间的运动矢量缩放的右移取整过程。
48.根据条款46所述的方法,其中右移取整过程通过朝向零取整而导致取整到整数值。
49.如条款46-48中任一项所述的方法,其中ATMVP过程中使用的运动矢量以推导默认运动信息来使用。
以下条款提供在之前章节中的项目(例如,项目24-29)中描述的技术的一些示例性方案。
50.一种视频处理的方法,包括:对使用子图片的视频的视频图片与视频段的编解码表示之间的转换,确定与子块有关的约束的规则被所述转换满足;以及根据约束的规则进行所述转换。
51.根据条款50所述的方法,其中约束的规则指定结束于(j-1)列的子图片S的宽度被设定为等于j减去子图片S的最左列,由于位置(i,.j)和(i,j-1)属于视频图片内的不同子图片。
52.如条款50-51中任一项所述的方法,其中约束的规则指定结束于(NumSubPicGridRows-1)行的子图片S的高度被设定为(NumSubPicGridRows-1)减去子图片S的最顶行加一。
53.如条款50-52中任一项所述的方法,其中约束的规则指定结束于(NumSubPicGridColumns-1)列的子图片S的宽度被设定为(NumSubPicGridColumns-1)减去子图片S的最左列加1。
54.如条款50-53中任一项所述的方法,其中约束的规则指定视频图片中的子图片的尺寸网格是转换期间使用的编解码树单元尺寸的整数倍。
55.如条款50-54中任一项所述的方法,其中约束的规则指定视频图片中的全部子图片不重叠,并且一起覆盖整个视频图片。
以下条款提供之前章节中的项目(例如,项目30-34)中描述的技术的一些示例性方案。
56.一种视频处理的方法,包括:对于视频的视频单元与视频的编解码表示之间的转换,确定在转换期间是否使用参考图片重采样(RPR)模式,以及基于所述确定进行所述转换。
57.根据条款56所述的方法,其中编解码表示中的标志指示RPR模式的使用。
58.如条款56-57中任一项所述的方法,其中在序列级别或视频参数集级别指示RPR模式。
59.如条款56-59中任一项所述的方法,其中RPR模式包括:在转换期间,基于参考图片的分辨率是否不同于当前图片,或参考图片的宽度和/或高度是否大于当前图片,在运动补偿过程期间使用插值滤波以推导视频单元的当前块的预测块。
60.根据条款1至59中任一项所述的方法,其中转换包含从当前视频块的像素值生成编解码表示。
61.如条款1至59中任一项所述的方法,其中转换包含从编解码表示的当前视频块的像素值。
62.一种包括处理器的视频编码器设备,所述处理器配置为实现根据条款1至61中任一项所述的方法。
63.一种包括处理器的视频解码器设备,所述处理器配置为实现根据条款1至61中任一项所述的方法。
64.一种计算机可读介质,具有代码存储在其上、当由处理器执行代码时,使处理器实现根据条款1至61中任一项所述的方法。
图32是示出示例性视频处理系统3200的框图,其中可以实现本文中所描述的各种技术。各种实现方式可以包含系统3200的组件中的一些或全部。系统3200可以包含输入3202,以接收视频内容。视频内容可以被以原始或未压缩格式接收,例如,8或10比特多分量像素值,或可以以压缩或编码格式接收。输入3202可以表示网路接口、外围总线接口或储存接口。网路接口的示例包含有线接口,诸如以太网、无源光线网络(PON)等,以及无线接口,诸如Wi-Fi或蜂窝接口。
系统3200可以包含编解码组件3204,其可以实现本文档中所描述的各种编解码或编码方法。编解码组件3204可以将视频的平均比特率从输入3202降低到编解码组件3204的输出,以产生视频的编解码表示。编解码技术因此有时称为视频压缩或转码编解码技术。编解码组件3204的输出可以储存或经由连接的通信传输,如组件3206所表示。在输入3202接收的视频的储存或通信的比特流(或编解码)表示可以由组件3208用于生成被发送到显示接口3210的像素值或可显示视频。从比特流表示生成用户可观看视频的过程有时称为视频解压缩。另外,虽然某些视频处理操作称为″编解码″操作或工具,应理解,编解码工具或操作在编码器使用,并且逆转编解码的结果的对应解码工具或操作将由解码器执行。
外围总线接口或显示接口的示例可以包含通用串行总线(USB)或高分辨率多媒体接口(HDMI)或Displayport,等等。储存接口的示例包含SATA(串行先进技术附件)、PCI、IDE接口,等等。本文档中所描述的技术可以实施为各种电子装置,诸如智能电话、膝上式计算机、智能电话或能够进行数字数据处理和/或视频显示的其他装置。
所公开技术的一些实施例以基于条款的格式讨论。
章节4的项目22中所描述的技术的一些示例性实施例包含:
A1.一种视觉媒体处理的方法(例如,图33中所示的方法3300),包括:为当前视频块,确定(3302)在基于子块的运动矢量预测(sbTMVP)过程使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中根据缩放操作计算所述sbTMVP过程中使用的所述运动矢量;以及基于使用所述运动矢量,进行(3304)所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
A2.根据条款A1所述的方法,其中所述缩放操作包括以下中的至少一个:应用于所述sbTMVP过程中使用的所述运动矢量的右移操作、左移操作和/或取整操作。
A3.根据条款A2所述的方法,其中所述右移取整操作导致所述运动矢量通过向零取整而取整到整数值。
A4.根据条款A1所述的方法,还包括:
一经确定共位图片的维度或与所述共位图片相关联的窗的维度不同于与所述当前块相关联的当前图片的维度或与所述当前图片相关联的窗的维度,对所述sbTMVP过程中使用的所述运动矢量应用缩放操作。
A5.根据条款A4所述的方法,其中对所述sbTMVP过程中使用的所述运动矢量的所述缩放操作的结果被表达为:
MVx′=MVx*W1/W2且MVy′=MVy*Hl/H2,其中MVx、MVy是定位对应于所述当前视频块的块的运动矢量,其中MVx′、MVy′是所述当前视频块的缩放运动矢量,其中所述共位图片的维度或与所述共位图片相关联的所述窗的维度被指代为W1、H1,并且其中所述当前图片的维度或与所述当前图片相关联的所述窗的维度分别被指代为W2、H2。
章节4的项目中所描述的技术的一些示例性实施例23包含:
B1.一种视觉媒体处理的方法(例如,图34中所示的方法3400),包括:
为当前视频块,确定(3402)在基于子块的时域运动矢量预测(sbTMVP)过程中使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中关于所述当前视频块的中心点计算所述sbTMVP过程中使用的所述运动矢量;
通过应用一个或多个操作来修改(3406)所述当前视频块的中心点;以及
基于使用通过应用所述一个或多个操作而修改的所述中心点,进行(3408)所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
B2.根据条款B1所述的方法,其中所述一个或多个操作包含缩放操作和/或对应于对所述中心点添加偏移的操作。
B3.根据条款B1所述的方法,还包括:
一经确定共位图片的维度或与所述共位图片相关联的窗的维度不同于与所述当前块相关联的当前图片的维度或与所述当前图片相关联的窗的维度,进行所述当前视频块的中心点的附加修改。
B4.根据条款B3所述的方法,其中所述当前视频块的中心点的附加修改被表达为:
x0′=(x0-X2)*W1/W2+X1且y0′=(y0-Y2)*H1/H2+Y1,
其中所述当前视频块的中心点是(x0,y0),并且所述附加修改之后所述当前视频块的中心点的坐标是(x0′,y0′),其中所述共位图片的维度或与所述共位图片相关联的所述窗的维度被指代为W1、H1,并且其中所述当前图片的维度或与所述当前图片相关联的所述窗的维度被分别指代为W2、H2,与所述当前图片相关联的所述窗的左顶位置被指代为(X2,Y2),并且与所述共位图片相关联的所述窗的左顶位置被指代为(X1,Y1)。
B5.根据条款B3所述的方法,其中所述当前视频块的中心点的附加修改被表达为:
x0′=(x0-X2)*W1/W2且y0′=(y0-Y2)*H1/H2,
其中所述当前视频块的中心点是(x0,y0),并且所述附加修改之后所述当前视频块的中心点的坐标是(x0′,y0′),其中所述共位图片的维度或与所述共位图片相关联的所述窗的维度被指代为W1、H1,与所述当前图片相关联的所述窗的左顶位置被指代为(X2,Y2),并且其中所述当前图片的维度或与所述当前图片相关联的所述窗的维度被分别指代为W2、H2。
章节4的项目中所描述的技术的一些示例性实施例24包含:
C1.一种视觉媒体处理的方法(例如,图35中所示的方法3500),包括:
为当前视频块,确定(3502)在基于子块的时域运动矢量预测(sbTMVP)过程中使用的运动矢量,以定位用于所述当前视频块与所述当前视频块的比特流表示之间的转换的共位图片中的对应块,其中关于所述共位图片中的所述对应块中的点计算所述sbTMVP过程中使用的所述运动矢量;
通过应用一个或多个操作修改(3504)所述共位图片中的所述对应块中的所述点;以及
基于使用通过应用所述一个或多个操作而修改的所述共位图片中的所述对应块中的所述点,进行(3506)所述当前视频块与所述视觉媒体数据的比特流表示之间的转换。
C2.根据条款C1所述的方法,其中所述一个或多个操作包含缩放操作和/或对应于对所述共位图片中的所述对应块中的所述点添加偏移的操作。
C3.根据条款C1所述的方法,还包括:
一经确定共位图片的维度或与所述共位图片相关联的窗的维度不同于与所述当前视频块相关联的当前图片的维度或与所述当前图片相关联的窗的维度,进行所述共位图片中的所述对应块中的所述点的附加修改。
C4.根据条款C3所述的方法,其中所述共位图片中的所述对应块中的所述点的所述附加修改被表达为:
x′=(x-X2)*W1/W2+X1且y′=(y-Y2)*H1/H2+Y1,
其中所述共位图片中的所述对应块中的所述点是(x,y),并且所述附加修改之后所述共位图片中的所述对应块中的所述点的坐标是(x′,y′),其中与所述当前图片相关联的窗的宽度和高度被分别指代为W2和H2,与所述共位图片相关联的窗的宽度和高度被分别指代为W1和H1,与所述当前图片相关联的所述窗的左顶位置被指代为(X2,Y2),并且与所述共位图片相关联的所述窗的左顶位置被指代为(X1,Y1)。
C5.根据条款C3所述的方法,其中所述共位图片中的所述对应块中的所述点的所述附加修改被表达为:
x′=(x-X2)*W1/W2且y′=(y-Y2)*H1/H2,其中所述共位图片中的所述对应块中的所述点是(x,y),并且所述附加修改之后所述共位图片中的所述对应块中的所述点的坐标是(x′,y′),其中与所述当前图片相关联的窗的宽度和高度被分别指代为W2和H2,与所述共位图片相关联的窗的宽度和高度被分别指代为W1和H1,并且与所述当前图片相关联的所述窗的左顶位置被指代为(X2,Y2)。
章节4的项目中所描述的技术的一些示例性实施例28包含:
D1.一种视觉媒体处理的方法(例如,图36中所示的方法3600),包括:对视觉媒体数据中包含的视频图片与使用子图片的所述视觉媒体数据的比特流表示之间的转换,确定(3602)与一个或多个子图片有关的规则被所述转换满足;以及根据约束的所述规则进行(3604)所述转换,其中所述规则指定所述视频图片中的子图片的尺寸是与所述视频图片相关联的编解码树单元尺寸的整数倍。
D2.根据条款D1所述的方法,其中所述规则指定所述比特流表示包含对应于所述子图片的宽度的变量。
D3.根据条款D1所述的方法,其中所述规则指定所述比特流表示包含对应于所述子图片的高度的变量。
D4.根据条款D2-D3中任一项或多项所述的方法,其中对应于所述子图片的高度的变量和/或对应于所述子图片的宽度的变量被以亮度编解码树单元尺寸的单位表达。
D5.根据条款D2和D4中任一项或多项所述的方法,其中对应于所述子图片的宽度的变量等于以亮度编解码树块尺寸的单位的所述子图片的宽度与1之差。
D6.根据条款D3和D4中任一项或多项所述的方法,其中对应于所述子图片的高度的变量等于以亮度编解码树单元尺寸的单位的所述子图片的高度与1之差。
D7.根据条款D4所述的方法,其中所述亮度编解码树单元尺寸被定义为亮度编解码树块阵列的宽度或高度。
D8.根据条款D4所述的方法,其中编解码树单元的所述亮度编解码树单元尺寸被定义为变量CtbSizeY,表达为:
CtbSizeY=(1<<(sps_log2_ctu_size_minus5+5)),其中sps_log2_ctu_size_minus5指代语法元素的尺寸。
D9.根据条款D8所述的方法,其中对应于所述子图片的宽度的变量被计算为所述子图片宽度乘以CtbSizeY的宽度。
D10.根据条款D8所述的方法,其中对应于所述子图片的高度的变量被计算为所述子图片宽度乘以CtbSizeY的高度。
D11.根据条款D1所述的方法,其中所述规则指定标志的值指示子图片在所述转换期间的使用。
D12.根据条款D11所述的方法,其中所述标志是布尔(Boolean)值。
D13.根据条款D12所述的方法,其中,当所述标志取值1时指示使用子图片,并且当所述标志取值0时指示不使用子图片。
章节4的项目中所描述的技术的一些示例性实施例29包含:
E1.一种视频处理的方法(例如,图37中所示的方法3700),包括:对于视觉媒体数据中包含的视频图片与使用子图片的所述视觉媒体数据的比特流表示之间的转换,确定(3702)与一个或多个子图片有关的规则被所述转换满足;以及根据约束的所述规则进行(3704)所述转换,其中所述规则指定所述视频图片中的全部子图片是不重叠的,并且所述视频图片中的全部子图片一起覆盖整个所述视频图片。
章节4的项目中所描述的技术的一些示例性实施例30包含:
F1.一种视觉媒体处理的方法(例如,图38中所示的方法3800),包括:对视觉媒体的视频单元与所述视觉媒体数据的比特流表示之间的转换,进行(3802)确定在所述转换期间是否使用参考图片重采样(RPR)技术;以及基于所述确定进行(3804)所述转换,其中对应于所述确定的标志在序列参数集级别被包含在所述比特流表示中。
F2.根据条款F1所述的方法,其中所述标志指示使用所述RPR技术,并且其中所述标志取布尔值。
F3.根据条款F2所述的方法,其中所述标志等于1指定关于所述序列参数集的编解码图片的空域分辨率被推断为可改变,并且所述标志等于0指定关于所述序列参数集的所述编解码图片的空域分辨率被推断为未改变。
F4.根据条款F2所述的方法,其中所述标志等于1指定图片空域分辨率在参考所述序列参数集的编解码层视频序列内是可改变的,并且所述标志等于0指定所述图片空域分辨率在参考所述序列参数集的编解码层视频序列内不改变。
F5.根据条款F1-F4中任一项或多项所述的方法,其中,与所述视频单元相关联的图片的窗信息是否被包含在所述比特流表示中与是否使用所述RPR技术无关。
F6.根据条款F1-F4中任一项或多项所述的方法,其中在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度被推断为跟与相同序列参数集相关联的另一图片参数集(PPS)中的所述视频单元的高度和/或宽度相同。
F7.根据条款F1-F6中任一项或多项所述的方法,其中所述比特流表示被配置为包含与所述视频单元相关联的图片的窗信息而与所述标志的值无关。
F8.根据条款F1-F6中任一项或多项所述的方法,其中所述比特流表示被配置为包含与所述视频单元相关联的图片的窗信息,并且其中所述标志指示在所述转换期间是否使用所述窗信息。
F9.根据条款F1-F4中任一项或多项所述的方法,其中在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度被推断为跟与相同序列参数集相关联的另一图片参数集(PPS)中的所述视频单元的高度和/或宽度相同。
F10.根据条款F-F4中任一项或多项所述的方法,还包括:
一经确定在所述转换期间不使用所述RPR技术,在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度推断为所述视频单元的高度的默认值和/或宽度的默认值。
F11.根据条款F10所述的方法,其中所述视频单元的高度的默认值和/或宽度的默认值被推断为在与所述视频单元相关联的序列参数集(SPS)中指示的视频单元的最大高度和/或最大宽度。
章节4的项目中所描述的技术的一些示例性实施例31包含:
G1.一种视觉媒体处理的方法(例如,图39中所示的方法3900),包括:基于满足条件,在运动补偿过程期间选择(3902)插值滤波以推导视觉媒体数据的当前块的预测块,其中所述条件至少部分基于确定参考图片的分辨率不同于所述当前图片的分辨率和/或与所述参考图片相关联的窗的维度不同于与所述当前图片相关联的窗的维度;以及进行(3904)视觉媒体数据的所述当前块与所述当前块的比特流表示之间的转换。
G2.根据条款G1所述的方法,还包括:
一经确定所述参考图片的分辨率不同于所述当前图片的分辨率或与所述参考图片相关联的窗的维度不同于与所述当前图片相关联的窗的维度,使用与在所述参考图片具有与所述当前图片相同分辨率时使用的另一滤波不同的插值滤波。
G3.根据条款G1所述的方法,其中所述条件是基于确定W1>a*W2和/或H1>b*H2,其中(W1,H1)表示所述参考图片或与所述参考图片相关联的窗的宽度和高度,并且(W2,H2)表示所述当前图片或与所述参考图片相关联的窗的宽度和高度,并且a和b是缩放因数。
G4.根据条款G3所述的方法,其中a=b=1.5。
G5.根据条款G1所述的方法,其中所述条件还基于所述当前块的高度和/或宽度。
G6.根据条款G5所述的方法,其中所述当前块的高度和/或宽度单独地实现一个或多个阈值条件。
G7.根据条款G5所述的方法,其中所述当前块的高度和/或宽度的数学组合实现一个或多个阈值条件。
G8.根据条款G6所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度超出所述一个或多个阈值条件。
G9.根据条款G6所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度错过所述一个或多个阈值条件。
G10.根据条款G7所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度的数学组合超出所述一个或多个阈值条件。
G11.根据条款G7所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度的数学组合错过所述一个或多个阈值条件。
G12.根据条款G1-G11中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于所述当前视频块的色度色彩分量。
G13.根据条款G1-G11中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于所述当前视频块的亮度色彩分量。
G14.根据条款G1-G11中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于水平滤波方向。
G15.根据条款G1-G11中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于垂直滤波方向。
G16.根据条款G1-G11中任一项或多项所述的方法,其中单抽头滤波被选择为所述插值滤波,使得应用所述插值滤波的结果等同于复制整数样点。
G17.根据条款G1-G11中任一项或多项所述的方法,其中当满足所述条件时选择4抽头插值滤波或6抽头插值滤波。
G18.根据条款G1-G11中任一项或多项所述的方法,其中当满足所述条件时双线性滤波被选择为所述插值滤波。
章节4的项目中所描述的技术的一些示例性实施例32包含:
H1.一种视觉媒体处理的方法(例如,图40中所示的方法4000),包括:对视觉媒体数据的当前块与所述视觉媒体数据的比特流表示之间的转换,确定(4002)所述当前块是组合帧间帧内预测(CIIP)块,其中使用变换单元(TU)的尺寸生成所述CIIP块的帧内预测块,其中,在所述组合帧间帧内预测(CIIP)块中,所述当前块的最终预测是基于所述当前块的帧间预测和所述当前块的帧内预测的加权和;以及基于所述确定进行(4004)所述转换。
H2.根据条款H1所述的方法,还包括:
一经确定与所述当前块相关联的编解码单元的维度超出变换单元的最大尺寸,将所述编解码单元划分为多个变换单元;以及
对所述多个变换单元中包含的每个变换单元生成帧内预测块和帧间预测块。
H3.根据条款H2所述的方法,还包括:
一经确定变换单元的最大尺寸小于阈值且与所述当前块相关联的所述编解码单元的维度超出变换单元的最大尺寸,将所述编解码单元递归地划分为多个变换单元;以及
对所述多个变换单元中包含的每个变换单元生成帧内预测块和帧间预测块。
H4.根据条款H3所述的方法,其中第一帧内预测块是基于第二帧内预测块的重构样点,其中基于划分所述当前块而生成所述第一帧内预测块和所述第二帧内预测块。
I1.根据条款A1至H4中任一项或多项所述的方法,其中所述转换包含从所述当前视频块生成所述比特流表示。
I2.根据条款A1至H4中任一项或多项所述的方法,其中所述转换包含从所述比特流表示生成所述当前视频块的样点。
I3.一种包括处理器的视频编码器设备,所述处理器配置为实现根据条款A1至H4中任一项或多项所述的方法。
I4.一种包括处理器的视频解码器设备,所述处理器配置为实现根据条款A1至H4中任一项或多项所述的方法。
I5.一种计算机可读介质,具有代码存储在其上,当由处理器执行所述代码时,使所述处理器实现根据条款A1至H4中任一项或多项所述的方法。
I6.一种计算机可读储存介质,储存根据条款A1至H4中任一项或多项所述的方法生成的比特流表示。
图41是图示了示例性视频编解码系统100的框图,其可以利用本公开的技术。
如图41所示,视频编解码系统100可以包含源装置110和目的地装置120。源装置110生成编码视频数据,其可以称为视频编码装置。目的地装置120可以解码由源装置110生成的编码视频数据,其可以称为视频解码装置。
源装置110可以包含视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包含诸如视频捕获装置的源,从视频内容提供者接收视频数据的接口,和/或用于生成视频数据的计算机图形系统,或这样的源的组合。视频数据可以包括一个或多个图片。视频编码器114将来自视频源112的视频数据编码以生成比特流。比特流可以包含形成视频的编解码表示数据的比特序列。比特流可以包含编解码图片和相关联的数据。编解码图片是图片的编解码表示。相关联的数据可以包含序列参数集、图片参数集和其他语法结构。I/O接口116可以包含调制器/解调器(调制解调器)和/或发射器。编码视频数据可以经由I/O接口116通过网络130a直接传输到目的地装置120。编码视频数据还可以储存到储存介质/服务器130b上以由目的地装置120访问。
目的地装置120可以包含I/O接口126、视频解码器124和显示装置122。
I/O接口126可以包含接收器和/或调制解调器。I/O接口126可以从源装置110或储存介质/服务器130b获取编码视频数据。视频解码器124可以将编码视频数据解码。显示装置122可以向用户解码视频数据显示。显示装置122可以与目的地装置120集成,或可以外部于目的地装置120,目的地装置120配置为与外部显示装置相接。
视频编码器114和视频解码器124可以根据视频压缩标准操作,诸如高效视频编解码(HEVC)标准、多功能视频编解码(VVC)标准和其他当前和/或其他标准。
图42是图示了视频编码器200的示例的框图,其可以是图41中图示的系统100中的视频编码器114。
视频编码器200可以配置为进行本公开的技术的任意或全部。在图42的示例中,视频编码器200包含多个功能组件。本公开中所描述的技术可以在视频编码器200的各种组件之间共享。在一些实施例中,处理器可以配置为进行本公开中所描述的技术的任意或全部。
视频编码器200的功能组件可以包含分割单元201、可以包含模式选择单元203、运动估计单元204运动补偿单元205和帧内预测单元206的预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重构单元212、缓冲器213和熵编码单元214。
在其他示例中,视频编码器200可以包含更多、更少或不同功能组件。在示例中,预测单元202可以包含帧内块复制(IBC)单元。IBC单元可以以IBC模式进行预测,其中至少一个参考图片是当前视频块所位于的图片。
另外,诸如运动估计单元204和运动补偿单元205的一些组件可以高度集成,但在图5的示例中出于解释目的而分开地表示。
分割单元201可以将图片分割为一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
模式选择单元203可以例如基于误差结果选择编解码模式之一(帧内或帧间),并且将所得帧内或帧间编解码块提供到残差生成单元207以生成残差块数据并提供到重构单元212来重构编码块以用作参考图片。在一些示例中,模式选择单元203可以选择组合帧内和帧间预测(CIIP)模式,其中预测是基于帧间预测信令通知和帧内预测信令通知。模式选择单元203还可以帧间预测的情况下选择块的运动矢量的分辨率(例如,子像素或整数像素精度)。
为对当前视频块进行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块比较而为当前视频块生成运动信息。运动补偿单元205可以基于除与当前视频块相关联的图片之外的来自缓冲器213的图片的运动信息和解码样点,确定当前视频块的预测视频块。
运动估计单元204和运动补偿单元205可以对当前视频块进行不同操作,例如,取决于当前视频块在I条带、P条带还是B条带中。
在一些实施例中,运动估计单元204可以对当前视频块进行单向预测,并且运动估计单元204可以在列表0或列表1的参考图片中搜索当前视频块的参考视频块。运动估计单元204可以然后生成指示含有参考视频块的列表0或列表1中的参考图片的参考索引和指示当前视频块与参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块生成当前块的预测视频块。
在其他示例中,运动估计单元204可以进行当前视频块的双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可以在列表1中的参考图片中搜索当前视频块的另一参考视频块。运动估计单元204可以然后生成指示含有参考视频块的列表0和列表1中的参考图片的参考索引和指示参考视频块与当前视频块之间的空域位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块生成当前视频块的预测视频块。
在一些实施例中,运动估计单元204可以对解码器的解码过程输出完整组的运动信息。
在一些实施例中,运动估计单元204可以不对当前视频输出完整组的运动信息。反之,运动估计单元204可以参考另一视频块的运动信息而信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息充分相似于邻接视频块的运动信息。
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差异(MVD)。运动矢量差异指示当前视频块的运动矢量与所指示的视频块的运动矢量之间的差异。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差异来确定当前视频块的运动矢量。
如以上所讨论,视频编码器200可以预测性地信令通知运动矢量。由视频编码器200可以实现的预测性信令通知技术的两个示例包含先进运动矢量预测(AMVP)和Merge模式信令通知。
帧内预测单元206可以对当前视频块进行帧内预测。当帧内预测单元206对当前视频块进行帧内预测时,帧内预测单元206可以基于相同图片中的其他视频块的解码样点生成当前视频块的预测数据。当前视频块的预测数据可以包含预测视频块和各种语法元素。
残差生成单元207可以通过从当前视频块减去(例如,由减号指示)当前视频块的(多个)预测视频块生成当前视频块的残差数据。当前视频块的残差数据可以包含残差视频块,残差视频块对应于当前视频块中的样点的不同样点分量。
在其他示例中,对当前视频块可能不存在当前视频块的残差数据(例如在跳过模式中),并且残差生成单元207可以不进行减法运算。
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块而生成当前视频块的一个或多个变换系数视频块。
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值而量化与当前视频块相关联的变换系数视频块。
逆量化单元210和逆变换单元211可以对变换系数视频块分别应用逆量化和逆变换,以从变换系数视频块重构残差视频块。重构单元212可以将重构的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应的样点,以产生与当前块相关联的重构视频块来储存在缓冲器213中。
在重构单元212重构视频块之后,可以进行回路滤波操作以减少视频块中的视频块状伪影。
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收数据时,熵编码单元214可以进行一个或多个熵编码操作以生成熵编码数据并输出包含熵编码数据的比特流。
图43是图示了视频解码器300的示例的框图,其可以是图41中所示的系统100中的视频解码器114。
视频解码器300可以配置为进行本公开的技术中的任意或全部。在图43的示例中,视频解码器300包含多个功能组件。本公开中所描述的技术可以在视频解码器300的各种组件之间共享。在一些实施例中,处理器可以配置为进行本公开中所描述的技术的任意或全部。
在图43的示例中,视频解码器300包含熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305和重构单元306,以及缓冲器307。在一些实施例中,视频解码器300可以进行解码通过,其总体上反向于关于视频编码器200(例如,图42)所描述的编码通过。
熵解码单元301可以检索编码比特流。编码比特流可以包含熵编解码视频数据(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码视频数据,并且运动补偿单元302可以从熵解码视频数据确定包含运动矢量、运动矢量精度、参考图片列表索引的运动信息,和其他运动信息。运动补偿单元302可以例如通过进行AMVP和Merge模式确定这样的信息。
运动补偿单元302可以产生运动补偿块,可能地基于插值滤波进行插值。要与子像素精度一起使用的插值滤波的标识符可以被包含在语法元素中。
运动补偿单元302可以如由视频编码器20在编码视频块期间一样使用插值滤波,以计算参考块的子整数像素的插值的值。运动补偿单元302可以根据接收的语法信息确定由视频编码器200使用的插值滤波,并且使用插值滤波来产生预测性块。
运动补偿单元302可以使用一些语法信息以确定用于将编码视频序列的(多个)帧和/或(多个)条带进行编码的块的尺寸,描述如何分割编码视频序列的图片的每个宏块的分割信息,指示如何编码每个分割的模式,每个帧间编码块的一个或多个参考帧(和参考帧列表),和解码编码视频序列的其他信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式以从空域邻接块形成预测块。逆量化单元303将在比特流中提供且由熵解码单元301解码的量化视频块系数逆量化(即,去量化)。逆变换单元303应用逆变换。
重构单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的对应的预测块加和以形成解码块。如果期望,还可以应用去方块滤波以滤波解码块,以便去除块状伪影。解码视频块然后储存在缓冲器307中,其为后续运动补偿提供参考块。
在本文件中,术语″视频处理″或″视觉媒体处理″可以指视频编码、视频解码、视频压缩或视频解压缩。例如,可以在从视频的像素表示到相应的比特流表示的转换期间应用视频压缩算法,反之亦然。如语法所定义,当前视频块的比特流表示可以例如对应于在比特流内共位或在比特流中不同位置分布的比特。例如,可以根据变换和编解码的误差残差值并且还使用头中的比特和比特流中的其他字段来对宏块进行编码。此外,如以上解决方案中所描述的,在转换期间,解码器可以在了解一些字段可能存在或不存在的情况下基于确定来解析比特流。类似地,编码器可以确定某些语法字段将被包括或不被包括,并且通过从编解码表示中包括或排除语法字段来相应地生成编解码表示。
本文中描述的公开的和其他解决方案、示例、实施例、模块和功能操作可以以数字电子电路或计算机软件、固件或硬件来实现,包括本文中公开的结构及其结构等同,或其中一种或多种的组合。所公开的实施例和其他实施例可以被实现为一个或多个计算机程序产品,即,在计算机可读介质上编码的计算机程序指令的一个或多个模块,以由数据处理装置执行或控制数据处理装置的操作。所述计算机可读介质可以是机器可读储存设备、机器可读存储基板、存储器设备、实现机器可读传播信号的物质组成或它们中的一个或多个的组合。术语″数据处理设备″涵盖用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机,或者多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一项或多项的组合的代码。传播的信号是人工产生的信号,例如机器产生的电、光或电磁信号,其被产生以对信息进行编码以传输到合适的接收器设备。
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)编写,并且可以以任何形式进行部署,包括独立程序或适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在保存其他程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中,专用于所讨论程序的单个文件中,或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。可以将计算机程序部署为在一台计算机上执行,或者在位于一个站点上或分布在多个站点上并通过通信网络互连的多台计算机上执行。
本文档中描述的过程和逻辑流程可以由一个或多个可编程处理器执行,该可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。处理和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适合于执行计算机程序的处理器包括通用微处理器和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储设备。通常,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据或将数据传输到一个或多个大容量存储设备或两者。但是,计算机不必具有此类设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如EPROM,EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
尽管该专利文件包括许多细节,但是这些细节不应被解释为对任何主题或所要求保护的范围的限制,而是对特定于特定技术的特定实施例的特征的描述。在单独的实施例的上下文中在该专利文件中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合来实现。而且,尽管以上可以将特征描述为以某些组合起作用并且甚至最初如此要求保护,但是在某些情况下,可以从组合中剔除所要求保护的组合中的一个或多个特征,并且可以将所要求保护的组合用于子组合或子组合的变体。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者执行所有示出的操作以实现期望的结果。此外,在该专利文件中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
仅描述了一些实施方式和示例,并且可以基于本专利文件中描述和示出的内容进行其他实施方式、增强和变化。

Claims (35)

1.一种视觉媒体处理的方法,包括:
对视觉媒体的视频单元与所述视觉媒体数据的比特流表示之间的转换,进行确定在所述转换期间是否使用参考图片重采样(RPR)技术;以及
基于所述确定进行所述转换,
其中对应于所述确定的标志在序列参数集级别被包含在所述比特流表示中。
2.根据权利要求1所述的方法,其中所述标志指示使用所述RPR技术,并且其中所述标志取布尔值。
3.根据权利要求2所述的方法,其中所述标志等于1指定关于所述序列参数集的编码图片的空域分辨率被推断为可改变,并且所述标志等于0指定关于所述序列参数集的所述编码图片的空域分辨率被推断为未改变。
4.根据权利要求2所述的方法,其中所述标志等于1指定图片空域分辨率在参考所述序列参数集的编码层视频序列内是可改变的,并且所述标志等于0指定所述图片空域分辨率在参考所述序列参数集的编码层视频序列内不改变。
5.根据权利要求1-4中任一项或多项所述的方法,其中,与所述视频单元相关联的图片的窗信息是否被包含在所述比特流表示中与是否使用所述RPR技术无关。
6.根据权利要求1-4中任一项或多项所述的方法,其中在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度被推断为跟与相同序列参数集相关联的另一图片参数集(PPS)中的所述视频单元的高度和/或宽度相同。
7.根据权利要求1-6中任一项或多项所述的方法,其中所述比特流表示被配置为包含与所述视频单元相关联的图片的窗信息而与所述标志的值无关。
8.根据权利要求1-6中任一项或多项所述的方法,其中所述比特流表示被配置为包含与所述视频单元相关联的图片的窗信息,并且其中所述标志指示在所述转换期间是否使用所述窗信息。
9.根据权利要求1-4中任一项或多项所述的方法,其中在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度被推断为跟与相同序列参数集相关联的另一图片参数集(PPS)中的所述视频单元的高度和/或宽度相同。
10.根据权利要求1-4中任一项或多项所述的方法,还包括:
一经确定在所述转换期间不使用所述RPR技术,在所述图片参数集(PPS)中指示的所述视频单元的高度和/或宽度推断为所述视频单元的高度的默认值和/或宽度的默认值。
11.根据权利要求10所述的方法,其中所述视频单元的高度的默认值和/或宽度的默认值被推断为在与所述视频单元相关联的序列参数集(SPS)中指示的视频单元的最大高度和/或最大宽度。
12.一种视觉媒体处理的方法,包括:
基于满足条件,在运动补偿过程期间选择插值滤波以推导视觉媒体数据的当前块的预测块,其中所述条件至少部分基于确定参考图片的分辨率不同于所述当前图片的分辨率和/或与所述参考图片相关联的窗的维度不同于与所述当前图片相关联的窗的维度;以及
进行视觉媒体数据的所述当前块与所述当前块的比特流表示之间的转换。
13.根据权利要求12所述的方法,还包括:
一经确定所述参考图片的分辨率不同于所述当前图片的分辨率或与所述参考图片相关联的窗的维度不同于与所述当前图片相关联的窗的维度,使用与在所述参考图片具有与所述当前图片相同分辨率时使用的另一滤波不同的插值滤波。
14.根据权利要求12所述的方法,其中所述条件是基于确定W1>a*W2和/或H1>b*H2,其中(W1,H1)表示所述参考图片或与所述参考图片相关联的窗的宽度和高度,并且(W2,H2)表示所述当前图片或与所述参考图片相关联的窗的宽度和高度,并且a和b是缩放因数。
15.根据权利要求14所述的方法,其中a=b=1.5。
16.根据权利要求12所述的方法,其中所述条件还基于所述当前块的高度和/或宽度。
17.根据权利要求16所述的方法,其中所述当前块的高度和/或宽度单独地实现一个或多个阈值条件。
18.根据权利要求16所述的方法,其中所述当前块的高度和/或宽度的数学组合实现一个或多个阈值条件。
19.根据权利要求17所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度超出所述一个或多个阈值条件。
20.根据权利要求17所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度错过所述一个或多个阈值条件。
21.根据权利要求18所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度的数学组合超出所述一个或多个阈值条件。
22.根据权利要求18所述的方法,其中实现所述一个或多个阈值条件包含所述当前块的高度和/或宽度的数学组合错过所述一个或多个阈值条件。
23.根据权利要求12-21中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于所述当前视频块的色度色彩分量。
24.根据权利要求12-21中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于所述当前视频块的亮度色彩分量。
25.根据权利要求12-21中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于水平滤波方向。
26.根据权利要求12-21中任一项或多项所述的方法,其中所选的插值滤波被排他性地应用于垂直滤波方向。
27.根据权利要求12-21中任一项或多项所述的方法,其中单抽头滤波被选择为所述插值滤波,使得应用所述插值滤波的结果等同于复制整数样点。
28.根据权利要求12-21中任一项或多项所述的方法,其中当满足所述条件时选择4抽头插值滤波或6抽头插值滤波。
29.根据权利要求12-21中任一项或多项所述的方法,其中当满足所述条件时双线性滤波被选择为所述插值滤波。
30.根据权利要求1至29中任一项或多项所述的方法,其中所述转换包含从所述当前视频块生成所述比特流表示。
31.根据权利要求1至29中任一项或多项所述的方法,其中所述转换包含从所述比特流表示生成所述当前视频块的样点。
32.一种包括处理器的视频编码器设备,所述处理器配置为实现根据权利要求1至31中任一项或多项所述的方法。
33.一种包括处理器的视频解码器设备,所述处理器配置为实现根据权利要求1至31中任一项或多项所述的方法。
34.一种计算机可读介质,具有代码存储在其上,当由处理器执行所述代码时,使所述处理器实现根据权利要求1至31中任一项或多项所述的方法。
35.一种计算机可读储存介质,储存根据权利要求1至31中任一项或多项所述的方法生成的比特流表示。
CN202080066510.2A 2019-09-22 2020-09-22 视频处理中的参考图片重采样 Active CN114467308B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2019/107159 2019-09-22
CN2019107159 2019-09-22
PCT/CN2020/116703 WO2021052505A1 (en) 2019-09-22 2020-09-22 Reference picture resampling in video processing

Publications (2)

Publication Number Publication Date
CN114467308A true CN114467308A (zh) 2022-05-10
CN114467308B CN114467308B (zh) 2024-04-12

Family

ID=74883937

Family Applications (4)

Application Number Title Priority Date Filing Date
CN202080066588.4A Pending CN114762330A (zh) 2019-09-22 2020-09-22 视频的子图片编码和解码
CN202080066590.1A Pending CN114424536A (zh) 2019-09-22 2020-09-22 基于变换单元的组合帧间帧内预测
CN202080066591.6A Pending CN114424553A (zh) 2019-09-22 2020-09-22 基于子块的帧间预测的缩放方法
CN202080066510.2A Active CN114467308B (zh) 2019-09-22 2020-09-22 视频处理中的参考图片重采样

Family Applications Before (3)

Application Number Title Priority Date Filing Date
CN202080066588.4A Pending CN114762330A (zh) 2019-09-22 2020-09-22 视频的子图片编码和解码
CN202080066590.1A Pending CN114424536A (zh) 2019-09-22 2020-09-22 基于变换单元的组合帧间帧内预测
CN202080066591.6A Pending CN114424553A (zh) 2019-09-22 2020-09-22 基于子块的帧间预测的缩放方法

Country Status (3)

Country Link
US (1) US11695946B2 (zh)
CN (4) CN114762330A (zh)
WO (4) WO2021052507A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020103944A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Sub-block based motion candidate selection and signaling
EP3997877A4 (en) 2019-08-13 2023-05-24 Beijing Bytedance Network Technology Co., Ltd. MOTION ACCURACY IN SUBBLOCK-BASED INTERPREDICTION
CA3165461A1 (en) * 2019-12-20 2021-06-24 Lg Electronics Inc. Prediction weighted table-based image/video coding method and apparatus
BR112022012154A2 (pt) * 2019-12-20 2022-08-30 Lg Electronics Inc Método e dispositivo de codificação de imagem/vídeo baseados em predição ponderada
EP4107956A4 (en) * 2020-03-21 2023-06-21 Beijing Bytedance Network Technology Co., Ltd. COMBINATION OF SUBIMAGES AND EXTENSIBILITY
WO2021254379A1 (en) 2020-06-20 2021-12-23 Beijing Bytedance Network Technology Co., Ltd. Inter layer prediction with different coding block size
WO2022211411A1 (ko) * 2021-04-02 2022-10-06 현대자동차주식회사 적응적 공간해상도를 갖는 블록벡터를 이용하는 비디오 코딩방법 및 장치
WO2024080778A1 (ko) * 2022-10-12 2024-04-18 엘지전자 주식회사 적응적으로 해상도를 변경하는 영상 부호화/복호화 방법, 장치, 및 비트스트림을 전송하는 방법

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140328398A1 (en) * 2013-05-03 2014-11-06 Qualcomm Incorporated Conditionally invoking a resampling process in shvc
CN104641648A (zh) * 2012-09-24 2015-05-20 高通股份有限公司 视频译码中的假想参考解码器参数
US20160100189A1 (en) * 2014-10-07 2016-04-07 Qualcomm Incorporated Intra bc and inter unification
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
CN108293128A (zh) * 2015-11-20 2018-07-17 联发科技股份有限公司 视频编解码系统中全局运动补偿的方法及装置
CN109076236A (zh) * 2016-05-13 2018-12-21 高通股份有限公司 用于视频译码的运动矢量预测的合并候选项
WO2019001006A1 (zh) * 2017-06-28 2019-01-03 华为技术有限公司 一种图像数据的编码、解码方法及装置
WO2019078169A1 (ja) * 2017-10-20 2019-04-25 シャープ株式会社 動画像符号化装置及び動画像復号装置
US20190149838A1 (en) * 2017-11-14 2019-05-16 Qualcomm Incorporated Affine motion vector prediction in video coding
CN109792516A (zh) * 2016-10-04 2019-05-21 联发科技股份有限公司 图像和视频编解码中用于帧内色度编解码的方法及装置
WO2019154417A1 (en) * 2018-02-12 2019-08-15 Mediatek Inc. Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode

Family Cites Families (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
WO2005022920A1 (en) * 2003-08-26 2005-03-10 Thomson Licensing S.A. Method and apparatus for encoding hybrid intra-inter coded blocks
GB0500174D0 (en) 2005-01-06 2005-02-16 Kokaram Anil Method for estimating motion and occlusion
JP4178480B2 (ja) 2006-06-14 2008-11-12 ソニー株式会社 画像処理装置、画像処理方法、撮像装置および撮像方法
US8675738B2 (en) * 2008-08-06 2014-03-18 Mediatek Inc. Video decoding method without using additional buffers for storing scaled frames and system thereof
TWI387317B (zh) * 2008-12-11 2013-02-21 Novatek Microelectronics Corp 產生重新取樣參考畫面之裝置及其方法與影像解碼系統
CN101877785A (zh) * 2009-04-29 2010-11-03 祝志怡 一种基于混合预测的视频编码方法
US9654792B2 (en) 2009-07-03 2017-05-16 Intel Corporation Methods and systems for motion vector derivation at a video decoder
CN103281527B (zh) * 2010-04-15 2015-12-23 华为技术有限公司 图像编解码方法及相关装置
US9215470B2 (en) 2010-07-09 2015-12-15 Qualcomm Incorporated Signaling selected directional transform for video coding
US9124898B2 (en) 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
US8780973B2 (en) * 2010-08-13 2014-07-15 Texas Instruments Incorporated Limiting the maximum size of an encoded video picture using sub-picture based rate control
CN106937122B (zh) 2010-10-28 2020-03-27 韩国电子通信研究院 视频解码方法
WO2012097749A1 (en) 2011-01-19 2012-07-26 Mediatek Inc. Method and apparatus for parsing error robustness of temporal motion vector prediction
KR101961889B1 (ko) 2011-02-09 2019-03-25 엘지전자 주식회사 움직임 정보 저장 방법 및 이를 이용한 시간적 움직임 벡터 예측자 유도 방법
GB2501836B (en) 2011-03-09 2014-08-06 Canon Kk Video encoding
US9143795B2 (en) 2011-04-11 2015-09-22 Texas Instruments Incorporated Parallel motion estimation in video coding
US10123053B2 (en) 2011-05-23 2018-11-06 Texas Instruments Incorporated Acceleration of bypass binary symbol processing in video coding
EP3223523A1 (en) 2011-06-24 2017-09-27 HFI Innovation Inc. Method and apparatus for removing redundancy in motion vector predictors
EP2745514A1 (en) 2011-08-19 2014-06-25 Telefonaktiebolaget LM Ericsson (PUBL) Motion vector processing
US9451252B2 (en) 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
US9420286B2 (en) 2012-06-15 2016-08-16 Qualcomm Incorporated Temporal motion vector prediction in HEVC and its extensions
US20140003504A1 (en) * 2012-07-02 2014-01-02 Nokia Corporation Apparatus, a Method and a Computer Program for Video Coding and Decoding
US9462268B2 (en) 2012-10-09 2016-10-04 Cisco Technology, Inc. Output management of prior decoded pictures at picture format transitions in bitstreams
WO2014107853A1 (en) 2013-01-09 2014-07-17 Mediatek Singapore Pte. Ltd. Methods for disparity vector derivation
US9900576B2 (en) 2013-03-18 2018-02-20 Qualcomm Incorporated Simplifications on disparity vector derivation and motion vector prediction in 3D video coding
US9491460B2 (en) * 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
TWI652936B (zh) 2013-04-02 2019-03-01 Vid衡器股份有限公司 針對可縮放視訊編碼的增強型時間運動向量預測
GB2512829B (en) 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
US9509999B2 (en) * 2013-06-11 2016-11-29 Qualcomm Incorporated Inter-layer prediction types in multi-layer video coding
WO2015003383A1 (en) 2013-07-12 2015-01-15 Mediatek Singapore Pte. Ltd. Methods for inter-view motion prediction
US9628795B2 (en) 2013-07-17 2017-04-18 Qualcomm Incorporated Block identification using disparity vector in video coding
US10244253B2 (en) 2013-09-13 2019-03-26 Qualcomm Incorporated Video coding techniques using asymmetric motion partitioning
US9906813B2 (en) 2013-10-08 2018-02-27 Hfi Innovation Inc. Method of view synthesis prediction in 3D video coding
WO2015082763A1 (en) 2013-12-02 2015-06-11 Nokia Technologies Oy Video encoding and decoding
WO2015085575A1 (en) 2013-12-13 2015-06-18 Mediatek Singapore Pte. Ltd. Methods for background residual prediction
WO2015109598A1 (en) 2014-01-27 2015-07-30 Mediatek Singapore Pte. Ltd. Methods for motion parameter hole filling
US10432928B2 (en) 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
US20150373350A1 (en) 2014-06-20 2015-12-24 Qualcomm Incorporated Temporal motion vector prediction (tmvp) indication in multi-layer codecs
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
WO2016119104A1 (en) 2015-01-26 2016-08-04 Mediatek Inc. Motion vector regularization
CN107079164B (zh) 2014-09-30 2020-07-10 寰发股份有限公司 用于视频编码的自适应运动向量分辨率的方法
US9854237B2 (en) 2014-10-14 2017-12-26 Qualcomm Incorporated AMVP and merge candidate list derivation for intra BC and inter prediction unification
KR20170084055A (ko) * 2014-11-06 2017-07-19 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR102128216B1 (ko) 2014-11-20 2020-06-30 에이치에프아이 이노베이션 인크. 모션 벡터 및 블록 벡터 해상도 제어의 방법
KR20170101983A (ko) 2014-12-31 2017-09-06 노키아 테크놀로지스 오와이 스케일러블 비디오 코딩 및 디코딩을 위한 계층 간 예측
US10230980B2 (en) 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
US10070130B2 (en) 2015-01-30 2018-09-04 Qualcomm Incorporated Flexible partitioning of prediction units
US10057574B2 (en) 2015-02-11 2018-08-21 Qualcomm Incorporated Coding tree unit (CTU) level adaptive loop filter (ALF)
US10958927B2 (en) 2015-03-27 2021-03-23 Qualcomm Incorporated Motion information derivation mode determination in video coding
WO2016165069A1 (en) 2015-04-14 2016-10-20 Mediatek Singapore Pte. Ltd. Advanced temporal motion vector prediction in video coding
WO2016175550A1 (ko) 2015-04-27 2016-11-03 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치
CN107852506A (zh) 2015-05-12 2018-03-27 三星电子株式会社 用于执行帧内预测的图像解码方法及其装置以及用于执行帧内预测的图像编码方法及其装置
US10271064B2 (en) 2015-06-11 2019-04-23 Qualcomm Incorporated Sub-prediction unit motion vector prediction using spatial and/or temporal motion information
WO2017008263A1 (en) 2015-07-15 2017-01-19 Mediatek Singapore Pte. Ltd. Conditional binary tree block partitioning structure
US10674146B2 (en) 2015-09-30 2020-06-02 Lg Electronics Inc. Method and device for coding residual signal in video coding system
US10819987B2 (en) * 2015-11-12 2020-10-27 Lg Electronics Inc. Method and apparatus for coefficient induced intra prediction in image coding system
CN108886619A (zh) 2016-01-07 2018-11-23 联发科技股份有限公司 用于视频编解码系统的仿射合并模式预测的方法及装置
US9955186B2 (en) 2016-01-11 2018-04-24 Qualcomm Incorporated Block size decision for video coding
US10469841B2 (en) 2016-01-29 2019-11-05 Google Llc Motion vector prediction using prior frame residual
US10368083B2 (en) 2016-02-15 2019-07-30 Qualcomm Incorporated Picture order count based motion vector pruning
WO2017143467A1 (en) 2016-02-22 2017-08-31 Mediatek Singapore Pte. Ltd. Localized luma mode prediction inheritance for chroma coding
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10834419B2 (en) * 2016-04-13 2020-11-10 Qualcomm Incorporated Conformance constraint for collocated reference index in video coding
CN105976395B (zh) 2016-04-27 2018-11-09 宁波大学 一种基于稀疏表示的视频目标跟踪方法
CN109792535B (zh) 2016-05-13 2023-03-28 夏普株式会社 预测图像生成装置、运动图像解码装置以及运动图像编码装置
US10560712B2 (en) 2016-05-16 2020-02-11 Qualcomm Incorporated Affine motion prediction for video coding
WO2017209328A1 (ko) * 2016-06-03 2017-12-07 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측 방법 및 장치
JP6938612B2 (ja) 2016-07-12 2021-09-22 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 画像復号方法、画像符号化方法、及び非一時的なコンピュータ可読の記録媒体
CN116506596A (zh) 2016-08-03 2023-07-28 株式会社Kt 视频解码方法、视频编码方法和视频数据的传送方法
US11638027B2 (en) 2016-08-08 2023-04-25 Hfi Innovation, Inc. Pattern-based motion vector derivation for video coding
US10609423B2 (en) 2016-09-07 2020-03-31 Qualcomm Incorporated Tree-type coding for video coding
US10812791B2 (en) 2016-09-16 2020-10-20 Qualcomm Incorporated Offset vector identification of temporal motion vector predictor
CN117221571A (zh) 2016-10-04 2023-12-12 英迪股份有限公司 图像解码方法、图像编码方法以及发送比特流的方法
CN116866569A (zh) 2016-10-04 2023-10-10 株式会社Kt 用于处理视频信号的方法和装置
WO2018066927A1 (ko) 2016-10-06 2018-04-12 엘지전자(주) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN117528111A (zh) 2016-11-28 2024-02-06 英迪股份有限公司 图像编码方法、图像解码方法及用于传送比特流的方法
CN109983773A (zh) 2016-11-29 2019-07-05 联发科技股份有限公司 用于合并模式推导的视频编解码方法和装置
US10681370B2 (en) 2016-12-29 2020-06-09 Qualcomm Incorporated Motion vector generation for affine motion model for video coding
US11394976B2 (en) 2017-01-03 2022-07-19 Lg Electronics Inc. Inter-prediction method and apparatus in image coding system
US10931969B2 (en) 2017-01-04 2021-02-23 Qualcomm Incorporated Motion vector reconstructions for bi-directional optical flow (BIO)
US10701390B2 (en) 2017-03-14 2020-06-30 Qualcomm Incorporated Affine motion information derivation
US11277635B2 (en) 2017-03-17 2022-03-15 Vid Scale, Inc. Predictive coding for 360-degree video based on geometry padding
US10708591B2 (en) 2017-03-20 2020-07-07 Qualcomm Incorporated Enhanced deblocking filtering design in video coding
US10582209B2 (en) 2017-03-30 2020-03-03 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-PU TMVP) for video coding
US20180310017A1 (en) 2017-04-21 2018-10-25 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-pu tmvp) for video coding
US10742975B2 (en) 2017-05-09 2020-08-11 Futurewei Technologies, Inc. Intra-prediction with multiple reference lines
US10523934B2 (en) 2017-05-31 2019-12-31 Mediatek Inc. Split based motion vector operation reduction
JP2020522960A (ja) 2017-06-09 2020-07-30 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 画像符号化/復号化方法、装置、及びビットストリームを保存した記録媒体
US10602180B2 (en) 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
GB2563943B (en) 2017-06-30 2021-02-24 Canon Kk Method and apparatus for encoding or decoding video data in FRUC mode with reduced memory accesses
CN117478885A (zh) 2017-07-03 2024-01-30 Vid拓展公司 用于视频编解码的设备、方法
CN116866561A (zh) 2017-09-29 2023-10-10 Lx 半导体科技有限公司 图像编码/解码方法、存储介质及图像数据的传输方法
KR102595689B1 (ko) 2017-09-29 2023-10-30 인텔렉추얼디스커버리 주식회사 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11166013B2 (en) 2017-10-09 2021-11-02 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
CA3067528A1 (en) 2017-10-20 2019-04-25 Kt Corporation Video signal processing method and device
KR20200095463A (ko) 2017-11-01 2020-08-10 브이아이디 스케일, 인크. 병합 모드를 위한 서브-블록 모션 도출 및 디코더측 모션 벡터 정교화
US10931963B2 (en) 2017-12-07 2021-02-23 Tencent America LLC Method and apparatus for video coding
US11388398B2 (en) 2018-01-11 2022-07-12 Qualcomm Incorporated Video coding using local illumination compensation
US11172229B2 (en) 2018-01-12 2021-11-09 Qualcomm Incorporated Affine motion compensation with low bandwidth
WO2019143602A1 (en) 2018-01-16 2019-07-25 Vid Scale, Inc. Motion compensated bi-prediction based on local illumination compensation
US20190306502A1 (en) 2018-04-02 2019-10-03 Qualcomm Incorporated System and method for improved adaptive loop filtering
US10841575B2 (en) 2018-04-15 2020-11-17 Arris Enterprises Llc Unequal weight planar motion vector derivation
US11115660B2 (en) 2018-04-30 2021-09-07 Mediatek Inc. Method and apparatus of syntax interleaving for separate coding tree in video coding
WO2019229683A1 (en) 2018-05-31 2019-12-05 Beijing Bytedance Network Technology Co., Ltd. Concept of interweaved prediction
WO2019234608A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Partition tree with more than four sub-blocks
KR102605638B1 (ko) 2018-06-07 2023-11-22 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 부분 코스트 계산
WO2019244117A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Unified constrains for the merge affine mode and the non-merge affine mode
JP7096374B2 (ja) 2018-06-21 2022-07-05 北京字節跳動網絡技術有限公司 カラー成分間のサブブロック動きベクトル継承
CN110636299B (zh) 2018-06-21 2022-06-14 北京字节跳动网络技术有限公司 用于处理视频数据的方法、装置及计算机可读记录介质
AU2019296308B9 (en) 2018-06-28 2023-08-03 Huawei Technologies Co., Ltd. Memory access window and padding for motion vector refinement and motion compensation
WO2020003266A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Resetting of look up table per slice/tile/lcu row
US10863193B2 (en) 2018-06-29 2020-12-08 Qualcomm Incorporated Buffer restriction during motion vector prediction for video coding
CN112369035A (zh) 2018-06-30 2021-02-12 金起佰 图像编码/解码方法和设备
WO2020008334A1 (en) 2018-07-01 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Efficient affine merge motion vector derivation
TWI815927B (zh) 2018-07-15 2023-09-21 大陸商北京字節跳動網絡技術有限公司 視頻編解碼的塊尺寸限制
US10897617B2 (en) 2018-07-24 2021-01-19 Qualcomm Incorporated Rounding of motion vectors for adaptive motion vector difference resolution and increased motion vector storage precision in video coding
US10958934B2 (en) 2018-07-27 2021-03-23 Tencent America LLC History-based affine merge and motion vector prediction
ES2926196T3 (es) 2018-09-10 2022-10-24 Lg Electronics Inc Codificación de imágenes basada en la predicción de movimiento afín usando la lista de candidatos de MVP afines
WO2020084554A1 (en) 2018-10-24 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Searching based motion candidate derivation for sub-block motion vector prediction
CN111107354A (zh) 2018-10-29 2020-05-05 华为技术有限公司 一种视频图像预测方法及装置
EP4307678A2 (en) 2018-11-06 2024-01-17 Beijing Bytedance Network Technology Co., Ltd. Side information signaling for inter prediction with geometric partitioning
WO2020103944A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Sub-block based motion candidate selection and signaling
US11032574B2 (en) 2018-12-31 2021-06-08 Tencent America LLC Method and apparatus for video coding
US10742972B1 (en) 2019-03-08 2020-08-11 Tencent America LLC Merge list construction in triangular prediction
US11233988B2 (en) * 2019-05-17 2022-01-25 Qualcomm Incorporated Reference picture resampling and inter-coding tools for video coding
EP3997877A4 (en) 2019-08-13 2023-05-24 Beijing Bytedance Network Technology Co., Ltd. MOTION ACCURACY IN SUBBLOCK-BASED INTERPREDICTION
US11140402B2 (en) * 2019-09-20 2021-10-05 Tencent America LLC Signaling of reference picture resampling with constant window size indication in video bitstream
US11477471B2 (en) * 2020-05-20 2022-10-18 Tencent America LLC Techniques for signaling combination of reference picture resampling and spatial scalability

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104641648A (zh) * 2012-09-24 2015-05-20 高通股份有限公司 视频译码中的假想参考解码器参数
US20140328398A1 (en) * 2013-05-03 2014-11-06 Qualcomm Incorporated Conditionally invoking a resampling process in shvc
US20160100189A1 (en) * 2014-10-07 2016-04-07 Qualcomm Incorporated Intra bc and inter unification
CN108293128A (zh) * 2015-11-20 2018-07-17 联发科技股份有限公司 视频编解码系统中全局运动补偿的方法及装置
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
CN109076236A (zh) * 2016-05-13 2018-12-21 高通股份有限公司 用于视频译码的运动矢量预测的合并候选项
CN109792516A (zh) * 2016-10-04 2019-05-21 联发科技股份有限公司 图像和视频编解码中用于帧内色度编解码的方法及装置
WO2019001006A1 (zh) * 2017-06-28 2019-01-03 华为技术有限公司 一种图像数据的编码、解码方法及装置
WO2019078169A1 (ja) * 2017-10-20 2019-04-25 シャープ株式会社 動画像符号化装置及び動画像復号装置
US20190149838A1 (en) * 2017-11-14 2019-05-16 Qualcomm Incorporated Affine motion vector prediction in video coding
WO2019154417A1 (en) * 2018-02-12 2019-08-15 Mediatek Inc. Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BYEONGDOO CHOI等: "AHG8: Signaling and Filtering for Reference Picture Resampling", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING: GOTHENBURG, SE, 3–12 JULY 2019, JVET-O0332》 *

Also Published As

Publication number Publication date
CN114467308B (zh) 2024-04-12
CN114424553A (zh) 2022-04-29
US11695946B2 (en) 2023-07-04
US20220217382A1 (en) 2022-07-07
WO2021052506A1 (en) 2021-03-25
WO2021052507A1 (en) 2021-03-25
WO2021052504A1 (en) 2021-03-25
CN114762330A (zh) 2022-07-15
CN114424536A (zh) 2022-04-29
WO2021052505A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
CN113170198B (zh) 子块时域运动矢量预测
CN114467308B (zh) 视频处理中的参考图片重采样
CN113424525B (zh) 解码器侧细化工具的尺寸选择性应用
CN113170183A (zh) 用于具有几何分割的帧间预测的修剪方法
CN113170181A (zh) 块内拷贝模式中的仿射继承方法
WO2020135465A1 (en) Modified history based motion prediction
CN113330739A (zh) Lut中的运动候选的插入顺序
CN112970258A (zh) 用于子块预测块的多假设
JP7318099B2 (ja) ビデオコーディングにおける変換ブロック・サイズ制約
CN114450959A (zh) 视频编解码中的几何分割模式
CN113545076A (zh) 基于图片头中的信息启用bio
WO2021110017A1 (en) Merge with motion vector differencing in affine mode
CN113966616A (zh) 使用临近块信息的运动候选列表构建
CN114208184A (zh) 基于子块的帧间预测中的运动精度
CN113261292A (zh) 基于子块的帧间预测中默认运动候选的构造方法
CN113273208A (zh) 仿射预测模式的改进
WO2021036982A1 (en) Coded representation of history-based motion vector prediction tables

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant