CN117813820A - 用于视频处理的方法、装置和介质 - Google Patents

用于视频处理的方法、装置和介质 Download PDF

Info

Publication number
CN117813820A
CN117813820A CN202280050024.0A CN202280050024A CN117813820A CN 117813820 A CN117813820 A CN 117813820A CN 202280050024 A CN202280050024 A CN 202280050024A CN 117813820 A CN117813820 A CN 117813820A
Authority
CN
China
Prior art keywords
gpm
motion
template
candidates
candidate list
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.)
Pending
Application number
CN202280050024.0A
Other languages
English (en)
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.)
Douyin Vision Co Ltd
ByteDance Inc
Original Assignee
Douyin Vision 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 Douyin Vision Co Ltd, ByteDance Inc filed Critical Douyin Vision Co Ltd
Publication of CN117813820A publication Critical patent/CN117813820A/zh
Pending legal-status Critical Current

Links

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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh

Abstract

一种用于视频处理的方法。该方法包括:在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对多个运动候选重排序;以及使用经重排序的多个运动候选执行转换。

Description

用于视频处理的方法、装置和介质
技术领域
本公开的实施例一般涉及视频编解码技术,更具体地,涉及自适应几何划分模式(GPM)候选列表。
背景技术
如今,数字视频能力正被应用于人们生活的各个方面。已经针对视频编码/解码提出了多种类型的视频压缩技术,诸如MPEG-2、MPEG-4、ITU-TH263、ITU-TH-264/MPEG-4第10部分高级视频编解码(AVC)、ITU-TH.265高效视频编解码(HEVC)标准、通用视频编解码(VVC)标准。然而,通常期望进一步提高视频编解码技术的编解码效率。
发明内容
本公开的实施例提供一种用于视频处理的解决方案。
在第一方面,提出了一种用于视频处理的方法。该方法包括:在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对与目标块相关联的多个运动候选重排序;以及使用经重排序的多个运动候选执行转换。与传统技术相比,自适应运动候选列表生成过程被使用以提高合并模式的有效性。此外,可以提高编解码效率。
在第二方面,提出了一种用于处理视频数据的装置。该用于处理视频数据的装置包括处理器和其上具有指令的非暂态存储器,其中指令在由处理器执行时,使处理器在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对与目标块相关联的多个运动候选重排序;以及使用经重排序的多个运动候选执行转换。与传统技术相比,自适应运动候选列表生成过程被使用以提高合并模式的有效性。此外,可以提高编解码效率。
在第三方面,提出了一种用于处理视频数据的装置,该非暂态计算机可读存储介质存储使处理器执行方法的指令,该方法包括:在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对与目标块相关联的多个运动候选重排序;以及使用经重排序的多个运动候选执行转换。与传统技术相比,自适应运动候选列表生成过程被使用以提高合并模式的有效性。此外,可以提高编解码效率。
在第四方面,提出了一种非暂态计算机可读记录介质,该非暂态计算机可读记录介质存储视频的通过由视频处理装置执行的方法生成的码流,其中该方法包括:在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对与目标块相关联的多个运动候选重排序;以及使用经重排序的多个运动候选生成目标块的码流。与传统技术相比,自适应运动候选列表生成过程被使用以提高合并模式的有效性。此外,可以提高编解码效率。
在第五方面,提出了一种用于视频处理的方法。该方法包括确定视频的目标块利用几何划分模式(GPM)被编解码;在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式;响应于编解码模式是几何划分模式(GPM),对与目标块相关联的多个运动候选重排序;使用经重排序的多个运动候选生成目标块的码流;以及将码流存储在非暂态计算机可读记录介质中。与传统技术相比,自适应运动候选列表生成过程被使用以提高合并模式的有效性。此外,可以提高编解码效率。
提供本发明内容是为了以简化的形式介绍以下在详细描述中进一步描述的概念的选择。本发明内容不旨在识别所要求保护的主题的关键特征或基本特征,也不旨在用于限制所要求保护主题的范围。
附图说明
通过参考附图的以下详细描述,本公开的示例实施例的上述和其他目的、特征和优点将变得更加明显。在本公开的示例实施例中,相同的附图标记通常指代相同的组件。
图1示出了根据本公开的一些实施例的示例视频编解码系统的框图;
图2示出了根据本公开的一些实施例的示例视频编码器的框图;
图3示出了根据本公开的一些实施例的示例视频解码器的框图;
图4示出了空间合并候选者的位置的示意图;
图5示出了考虑用于空间合并候选的冗余检查的候选对;
图6示出了用于时间合并候选的运动矢量缩放的图示;
图7示出了时间合并候选C0和C1的候选位置;
图8示出了当前块的VVC空间邻近块;
图9示出了第i轮搜索中的虚拟块的图示;
图10示出了MMVD搜索点;
图11示出了在CIIP权重导出中使用的顶部和左侧邻近块;
图12示出了按相同角度分组的GPM分割的示例;
图13示出了几何划分模式的单向预测MV选择;
图14示出了使用几何划分模式生成弯曲权重w_0的示例;
图15示出了基于三角划分的帧间预测;
图16示出了三角划分模式的单向预测MV选择;
图17示出了混合过程中使用的权重;
图18示出了用于计算SAD的邻近样本;
图19示出了用于计算针对子CU级运动信息的SAD的邻近样本;
图20示出了排序过程;
图21示出了局部光照补偿;
图22示出了针对短边的无二次采样;
图23A和图23B示出了VVC中的SbTMVP过程,其中图23A示出了SbTMVP使用的空间邻近块,图23B示出了通过应用来自空间邻近的运动偏移并缩放来自相应同位子CU的运动信息来导出子CU运动场;
图24示出了基于控制点的仿射运动模型;
图25示出了每个子块的仿射MVF;
图26示出了继承仿射运动预测子的位置;
图27示出了控制点运动矢量继承;
图28示出了针对构建仿射合并模式的候选位置的位置;
图29示出了在初始MV周围的搜索区域上执行的模板匹配;
图30示出了OBMC应用的子块的图示;
图31示出了编码器中的重排序过程;
图32示出了解码器中的重排序过程;
图33示出了搜索区域中的菱形区域;
图34示出了解码侧运动矢量细化;
图35示出了模板和模板的参考样本;
图36示出了参考列表0和参考列表1中的模板和模板的参考样本;
图37示出了使用当前块的子块的运动信息的具有子块运动的块的模板和模版的参考样本;
图38示出了使用每个子模板的运动信息的具有子块运动的块的模板和模版的参考样本;
图39示出了具有OBMC的块的模板和模版的参考样本;
图40示出了根据本公开的实施例的方法的流程图;以及
图41示出了其中可以实现本公开的各种实施例的计算设备的框图。
在所有附图中,相同或相似的附图标记通常指代相同或相似的元素。
具体实施方式
现在将参考一些实施例来描述本公开的原理。应当理解的是,描述这些实施例仅出于说明并且帮助本领域技术人员理解和实施本公开的目的,而不暗示对本公开的范围的任何限制。除了下文所述的方式之外,本文所描述的公开内容还可以以各种方式实施。
在以下描述和权利要求中,除非另有定义,否则在本文中使用的所有科学术语和技术术语具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。
本公开中提及的“一个实施例”、“实施例”、“示例实施例”等指示所描述的实施例可以包括特定的特征、结构或特性,但是并非每个实施例都必须包括该特定的特征、结构或特性。此外,这些短语不一定指同一实施例。此外,当结合示例实施例描述特定的特征、结构或特性时,无论是否明确描述,认为影响与其他实施例相关的这种特征、结构或特性在本领域技术人员的知识范围内。
应当理解的是,尽管术语“第一”和“第二”等可以用于描述各种元素,但这些元素不应受限于这些术语。这些术语仅用于区分一个元素与另一个元素。例如,第一元素可以被称为第二元素,类似地,第二元素可以被称为第一元素,而不脱离示例实施例的范围。如本文中所使用的,术语“和/或”包括一个或多个所列术语的任何和所有组合。
本文中所使用的术语仅用于描述特定实施例的目的,并不旨在限制示例实施例。如本文中所用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另有明确指示。还应理解,术语“包括”、“包含”和/或“具有”在本文中使用时表示存在所述特征、元素和/或组件等,但不排除一个或多个其他特征、元素、组件和/或其组合的存在或添加。
示例环境
图1是图示可以利用本公开的技术的示例视频编解码系统100的框图。如所示出的,视频编解码系统100可以包括源设备110和目的设备120。源设备110也可以称为视频编码设备,并且目的设备120也可以称为视频解码设备。在操作中,源设备110可以被配置为生成经编码的视频数据,并且目的设备120可以被配置为对由源设备110生成的经编码的视频数据进行解码。源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备之类的源。视频捕获设备的示例包括但不限于从视频内容提供商接收视频数据的接口、用于生成视频数据的计算机图形系统和/或其组合。
视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成码流。码流可以包括形成视频数据的编码表示的位序列。码流可以包括编码图片和相关联的数据。编码图片是图片的编码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器和/或发送器。经编码的视频数据可以通过网络130A经由I/O接口116直接传输至目的设备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)标准和其他现有和/或进一步的标准。
图2是示出根据本公开的一些实施例的视频编码器200的示例的方框图,视频编码器200可以是图1所示的系统100中的视频编码器114的示例。
视频编码器200可以被配置为实现本公开的任何或所有技术。在图2的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在一些实施例中,视频编码器200可以包括划分单元201、预测单元202、残差生成单元207、变换单元208、量化单元209、反量化单元210、反变换单元211、重建单元212、缓冲213和熵编解码单元214,该预测单元202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206。
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括块内复制(IBC)单元。IBC单元可以在IBC模式中执行预测,其中至少一个参考图片是当前视频块所位于的图片。
此外,尽管一些组件(诸如运动估计单元204和运动补偿单元205)可以被集成,但是为了解释的目的,这些组件在图2的示例中被分离地示出。
划分单元201可以将图片划分成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块大小。
模式选择单元203可以例如基于误差结果来选择多种编解码模式(帧内编码或帧间编码)中的一种编解码模式,并且将所产生的帧内编解码块或帧间编解码块提供给残差生成单元207以生成残差块数据,并且提供给重建单元212以重建编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以为块选择针对运动矢量的分辨率(例如,亚像素精度或整数像素精度)。
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲213的一个或多个参考帧与当前视频块进行比较来生成针对当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲213的除了与当前视频块相关联的图片之外的图片的经解码样本,来确定针对当前视频块的预测视频块。
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在I条带、P条带还是B条带中。如本文中使用的,“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可以在与当前视频块相关联的语法结构中向视频解码器300指示一值,该值指示当前视频块具有与另一视频块相同的运动信息。
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块和运动矢量差(MVD)。运动矢量差指示在当前视频块的运动矢量与所指示的视频块的运动矢量之间的差异。视频解码器300可以使用所指示的视频块的运动矢量以及运动矢量差来确定当前视频块的运动矢量。
如上所讨论的,视频编码器200可以以预测性的方式通过信号传输运动矢量。可以由视频编码器200实现的预测信令技术的两个示例包括高级运动矢量预测(AMVP)和合并模式信令。
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中其他视频块的经解码样本来生成针对当前视频块的预测数据。针对当前视频块的预测数据可以包括预测视频块和各个语法元素。
残差生成单元207可以通过从当前视频块中减去(例如,由减号指示)当前视频块的(多个)预测视频块来生成针对当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中样本的不同样本部分的残差视频块。
在其他示例中,例如在跳过模式中,针对当前视频块可以不存在针对当前视频块的残差数据,并且残差生成单元207可以不执行减去操作。
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块,来生成针对当前视频块的一个或多个变换系数视频块。
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。
反量化单元210和反变换单元211可以分别对变换系数视频块应用反量化和反变换,以从变换系数视频块重建残差视频块。重建单元212可以将经重建的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样本,以产生与当前视频块相关联的重建视频块,以供存储在缓冲213中。
在重建单元212重建视频块之后,可以执行环路滤波操作以减少视频块中的视频块效应伪像。
熵编解码单元214可以从视频编码器200的其他功能组件接收数据。当熵编解码单元214接收数据时,熵编解码单元214可以执行一个或多个熵编码操作,以生成熵编解码数据并且输出包括该熵编解码数据的码流。
图3是示出根据本公开的一些实施例的视频解码器300的示例的方框图,视频解码器300可以是图1所示的系统100中的视频解码器124的示例。
视频解码器300可以被配置为执行本公开的任何或所有技术。在图3的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在图3的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、反量化单元304、反变换单元305、以及重建单元306和缓冲307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200所描述的编码过程相对的解码过程。
熵解码单元301可以取回经编码的码流。经编码的码流可以包括经熵编码的视频数据(例如,经编码的视频数据块)。熵解码单元301可以对经熵编码的视频数据进行解码,并且运动补偿单元302可以从经熵解码的视频数据中确定运动信息,该运动信息包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息。运动补偿单元302可以例如通过执行AMVP和合并模式来确定该信息。AMVP被使用,包括基于相邻PB的数据和参考图片得出数个最可能的候选项。运动信息通常包括水平和垂直运动矢量位移值、一个或两个参考图片索引,并且在B条带中的预测区域的情况下,还包括哪个参考图片列表与每个索引相关联的标识。如本文所使用的,在一些方面中,“合并模式”可以是指从空间或时间上邻近的块中导出运动信息。
运动补偿单元302可以产生运动补偿块,可能地基于插值滤波器来执行内插。针对以亚像素精度被使用的插值滤波器的标识符可以被包括在语法元素中。
运动补偿单元302可以使用由视频编码器200在视频块的编码期间使用的插值滤波器来计算用于参考块的亚整数像素的内插值。运动补偿单元302可以根据接收到的语法信息来确定由视频编码器200使用的插值滤波器,并且运动补偿单元302可以使用插值滤波器来产生预测块。
运动补偿单元302可以使用至少部分语法信息来确定用于编码经编码视频序列的(多个)帧和/或(多个)条带的块的大小、描述经编码视频序列的图片的每个宏块如何被划分的划分信息、指示每个划分如何被编码的模式、针对每个帧间编解码块的一个或多个参考帧(和参考帧列表)、以及对经编码视频序列进行解码的其他信息。如本文中所使用的,在一些方面,“条带”可以是指在熵编码、信号预测和残差信号重建方面可以独立于同一图片的其他条带而被解码的数据结构。条带可以是整个图片,或者也可以是图片的区域。
帧内预测单元303可以使用例如在码流中接收的帧内预测模式,以从空间相邻块形成预测块。反量化单元304反量化(即,去量化)在码流中提供的、并且由熵解码单元301解码的量化视频块系数。反变换单元305应用反变换。
重建单元306可以例如通过将残差块与由运动补偿单元302或帧内预测单元303生成的相应预测块相加来获得经解码的块。如果需要的话,还可以应用去块效应滤波器以对经解码的块进行过滤,以便去除块效应伪像。经解码的视频块随后被存储在缓冲307中,缓冲307为后续运动补偿/帧内预测提供参考块,并且缓冲307还产生经解码的视频以供在显示设备上呈现。
下文将详细描述本公开的一些示例实施例。应当注意,在本文件中使用章节标题是为了便于理解,而不是将章节中公开的实施例仅限于该章节。此外,尽管参考通用视频编解码或其他特定视频编解码器描述了一些实施例,但是所公开的技术也适用于其他视频编解码技术。此外,尽管一些实施例详细描述了视频编码步骤,但是应当理解的是取消编码的相应解码步骤将由解码器实现。此外,术语视频处理包括视频编解码或压缩、视频解码或解压缩以及视频转码,在该视频转码中视频像素被从一种压缩格式表示为另一种压缩格式或以不同的压缩码率表示。
1.概述
本公开涉及视频编解码技术。具体而言,是关于视频编解码中的帧内/IBC/帧间预测及相关技术。可以适用于现有视频编解码标准,如HEVC、VVC等等。也可以适用于未来的视频编解码标准或视频编解码器。
2.背景
视频编解码标准主要通过众所周知的ITU-T和ISO/IEC标准的发展而演进。ITU-T制定了H.261和H.263,ISO/IEC制定了MPEG-1和MPEG-4Visual,两个组织联合制定了H.262/MPEG-2Video和H.264/MPEG-4高级视频编解码(AVC)和H.265/HEVC标准。自H.262以来,视频编解码标准基于混合视频编解码结构,其中使用了时间预测加变换编解码。为了探索HEVC以外的未来视频编解码技术,VCEG和MPEG于2015年联合创立了联合视频探索团队(JVET)。JVET会议每季度同时举行一次,新的视频编解码标准在2018年4月的JVET会议上被正式命名为多功能视频编解码(VVC),当时发布了VVC测试模型(VTM)的第一个版本。VVC工作草案和测试模型VTM在每次会议后都被更新。VVC项目在2020年7月的会议上实现了技术完成(FDIS)。
2.1扩展合并预测
在VVC中,合并候选列表是通过按顺序包括以下五种类型的候选来构建的:
1)来自空间邻近CU的空间MVP
2)来自同位CU的时间MVP
3)来自FIFO表的基于历史的MVP
4)成对平均MVP
5)零MV。
合并列表的大小在序列参数集头中通过信号传输,并且合并列表的最大允许大小是6。对于合并模式中的每个CU码,使用截断的一元二进制化(TU)对最佳合并候选的索引进行编解码。合并索引的第一个二进制位(bin)使用上下文进行编解码,而旁路编解码用于其他二进制位。
每个类别的合并候选的导出过程在本节中提供。正如在HEVC中所操作的那样,VVC还支持在一定大小的区域内对所有CU的合并候选列表的并行导出。
2.1.1空间候选导出
VVC中空间合并候选的导出与HEVC中的导出相同,只是前两个合并候选的位置被交换。图4示出了显示空间合并候选的位置的示意图400。在位于图4所示位置的候选中,最多选择四个合并候选。导出顺序为B0、A0、B1、A1和B2。只有当位置B0、A0、B1和A1的一个或多于一个CU不可用时(例如,因为它属于另一个条带或图块)或被帧内编解码时,才考虑位置B2。在添加了位置A1处的候选之后,对剩余候选的添加进行冗余检查,该冗余检查确保具有相同运动信息的候选被从列表中排除,从而提高了编解码效率。为了降低计算复杂度,在提到的冗余检查中并没有考虑所有可能的候选对。图5是图示了针对空间合并候选的冗余检查所考虑的候选对的示意图500。相反,只考虑图5中利用箭头链接的对,并且只有用于冗余检查的对应候选不具有相同的运动信息,才将候选添加到列表中。
2.1.2时间候选导出
在这个步骤中,只有一个候选被添加到列表中。特别地,在该时间合并候选的导出中,基于属于同位参考图片的同位CU来导出缩放运动矢量。在条带头中显式地通过信号传输要用于导出同位的CU的参考图片列表。如图6的示意图600中的虚线所示,获得了时间合并候选的缩放运动矢量,该矢量是使用POC距离tb和td从同位的CU的运动矢量缩放而来的,其中tb被定义为当前图片的参考图片与当前图片之间的POC差,td被定义为同位的图片的参考图片与同位的图片之间的POC差。时间合并候选的参考图片索引被设置为等于零。
图7是示出了针对时间合并候选C0和C1的候选位置的示意图700。时间候选的位置在候选C0与C1之间选择,如图7所示。如果位置C0处的CU不可用、被帧内编解码或在CTU的当前行之外,则使用位置C1。否则,在时间合并候选的导出中使用位置C0
2.1.3.基于历史的合并候选导出
基于历史的MVP(HMVP)合并候选被添加到空间MVP和TMVP之后的合并列表中。在该方法中,将先前编解码块的运动信息存储在表中,并用作当前CU的MVP。在编码/解码过程中维护具有多个HMVP候选的表。当遇到新的CTU行时,该表被重置(清空)。每当存在非子块帧间编解码CU时,将相关联的运动信息作为新的HMVP候选添加到表的最后一个条目。
HMVP列表大小S被设置为6,这指示可以向该表添加多达6个基于历史的MVP(HMVP)候选。当将新的运动候选插入到表中时,使用受约束的先进先出(FIFO)规则,其中首先应用冗余检查来发现表中是否存在相同的HMVP。如果找到,则从表中移除相同的HMVP,然后将所有HMVP候选向前运动。
HMVP候选可以用于合并候选列表构建过程。按顺序检查表中最近的几个HMVP候选,并将其插入TMVP候选之后的候选列表中。对HMVP候选应用冗余检查以进行空间或时间合并候选。
为了减少冗余检查操作的数目,引入了以下简化:
1.用于合并列表生成的HMPV候选数目设置为(N<=4)?M:(8-N),其中N指示合并列表中现有候选的数目,M指示表中可用HMVP候选的数目。
2.一旦可用合并候选的总数达到最大允许合并候选减1,则终止来自HMVP的合并候选列表构建过程。
2.1.4.成对平均合并候选导出
成对平均候选是通过对现有合并候选列表中的预定义候选对进行平均来生成的,并且预定义对被定义为{(0,1)、(0,2)、(1,2),(0,3)、(3,1),(2,3)},其中数字表示合并候选列表的合并索引。对于每个参考列表单独计算平均运动矢量。如果两个运动矢量在一个列表中都可用,则即使这两个运动矢量指向不同的参考图片,也会对其进行平均;如果只有一个运动矢量可用,则直接使用该运动矢量;如果没有可用的运动矢量,保持此列表无效。
当添加成对平均合并候选后合并列表未满时,将在最后插入零MVP,直到遇到最大合并候选数目。
2.2新的合并候选
2.2.1非相邻合并候选导出
图8示出了当前块的VVC空间邻近块的示意图800。在VVC中,图8所示的五个空间邻近块以及一个时间邻近块用于导出合并候选。
提出使用与VVC中的样式相同的样式从与当前块不相邻的位置导出附加的合并候选。为了实现这一点,对于每个搜索轮次i,基于当前块生成虚拟块,如下所示:
首先,虚拟块与当前块的相对位置通过以下公式计算:
Offsetx=-i×gridX,Offsety=-i×gridY
其中Offsetx和Offsetty表示虚拟块的左上角相对于当前块的左下角的偏移,gridX和gridY是搜索网格的宽度和高度。
其次,虚拟块的宽度和高度通过以下公式计算:
newWidth=i×2×gridX+currWidth
newHeight=i×2×gridY+currHeight。
其中currWidth和currHeight是当前块的宽度和高度。newWidth和newHeight是新虚拟块的宽度和高度。
gridX和gridY当前分别设置为currWidth和currHeight。
图9示出了第i搜索轮次中的虚拟块的示意图900,其显示了虚拟块与当前块之间的关系。
在生成虚拟块之后,块Ai、Bi、Ci、Di和Ei可以被视为虚拟块的VVC空间邻近块,并且它们的位置是利用VVC中相同的样式获得的。显然,如果搜索轮次i为0,则虚拟块是当前块。在这种情况下,块Ai、Bi、Ci、Di和Ei是在VVC合并模式中使用的空间邻近块。
在构建合并候选列表时,进行修剪以保证合并候选列表中的每个元素是唯一的。最大搜索轮次被设置为1,这意味着使用了五个不相邻的空间邻近块。
非相邻的空间合并候选按B1->A1->C1->D1->E1的顺序插入到时间合并候选之后的合并列表中。
2.2.2 STMVP
提出使用三个空间合并候选和一个时间合并候选来导出平均候选作为STMVP候选。
STMVP被插入在左上方的空间合并候选之前。
STMVP候选与合并列表中所有先前的合并候选一起被修剪。
对于空间候选,使用当前合并候选列表中的前三个候选。
对于时间候选,使用与VTM/HEVC同位位置相同的位置。
对于空间候选,在STMVP之前插入到当前合并候选列表中的第一、第二和第三候选被表示为F、S和T。
具有与TMVP中使用的VTM/HEVC同位位置相同的位置的时间候选表示为Col。
STMVP候选在预测方向X上的运动矢量(表示为mvLX)如下被导出:
1)如果四个合并候选的参考索引都是有效的并且在预测方向X上都等于零(X=0或1),
mvLX=(mvLX_F+mvLX_S+mvLX_T+mvLX_Col)>>2
2)如果四个合并候选中的三个合并候选的参考索引是有效的并且在预测方向X上等于零(X=0或1),
mvLX=(mvLX_F×3+mvLX_S×3+mvLX_Col×2)>>3或
mvLX=(mvLX_F×3+mvLX_T×3+mvLX_Col×2)>>3或
mvLX=(mvLX_S×3+mvLX_T×3+mvLX_Col×2)>>3
3)如果四个合并候选中的两个合并候选的参考索引是有效的并且在预测方向X上等于零(X=0或1),
mvLX=(mvLX_F+mvLX_Col)>>1或
mvLX=(mvLX_S+mvLX_Col)>>1或
mvLX=(mvLX_T+mvLX_Col)>>1
注意:如果时间候选不可用,则STMVP模式关闭。
2.2.3合并列表大小
如果考虑非相邻合并候选和STMVP合并候选两者,则在序列参数集头中通过信号传输合并列表的大小,并且合并列表的最大允许大小被增加(例如,8)。
2.3具有MVD的合并模式(MMVD)
除了将隐式导出的运动信息直接用于当前CU的预测样本生成的合并模式之外,在VVC中引入了具有运动矢量差的合并模式(MMVD)。在发送跳过标志和合并标志之后立即通过信号传输MMVD标志,以指定哪种MMVD模式用于CU。
在MMVD中,合并候选被选择之后,其由通过信号传输的MVD信息进一步细化。进一步的信息包括合并候选标志、指定运动幅度的索引和用于指示运动方向的索引。在MMVD模式中,对于合并列表中的前两个候选,选择一个作为MV基础。通过信号传输合并候选标志以指定使用哪一个。
距离索引指定运动幅度信息,并指示距起点的预定义偏移。图10是示出了具有运动矢量差的合并模式(MMVD)搜索点的示意图1000。如图10所示,偏移被添加到起始MV的水平分量或垂直分量。距离索引和预定义偏移的关系如表1所示。
表1:距离索引与预定义偏移的关系
方向索引表示MVD相对于起点的方向。方向索引可以表示四个方向,如表4所示。注意,MVD符号的含义可以根据起始MV的信息而变化。当起始MV是单向预测MV或双向预测MV时,其中两个列表都指向当前图片的同一侧(即两个参考的POC都大于当前图片的POC或者都小于当前图片的POC),表4中的符号指定了MV偏移加在起始MV上的符号。当起始MV是双向预测MV时,其中两个MV指向当前图片的不同侧(即一个参考的POC大于当前图片的POC,另一个参考的POC小于当前图片的POC),表2中的符号指定添加到起始MV的列表0MV分量的MV偏移的符号,并且列表1MV的符号具有相反的值。
表2:由方向索引指定的MV偏移的符号
方向索引 00 01 10 11
x轴 + N/A N/A
y轴 N/A N/A +
2.3.1每个参考图片列表的MVD导出
首先根据解码后的MVD距离(由mmvd_distance_idx表示)和运动方向(由mmvd_direction_idx表示),得到一个内部MVD(由MmvdOffset表示)。
然后,如果确定了内部MVD,则根据参考图片相对于当前图片的POC距离以及参考图片类型(长期或短期),进一步导出要添加到每个参考图片列表的基础合并候选的最终MVD。更具体地,按顺序执行以下步骤:
-如果基础合并候选是双向预测,则计算列表0中的当前图片和参考图片之间的POC距离,以及列表1中的当前图片和参考图片间的POC距离,分别用POCDiffL0和POCDiffL1表示。
-如果POCDiffL0等于POCDiffL1,则两个参考图片列表的最终MVD都被设置为内部MVD。
-否则,如果Abs(POCDiffL0)大于或等于Abs(POCDiffL1),则参考图片列表0的最终MVD被设置为内部MVD,并且用于参考图片列表1的最终MVD被设置为使用取决于POC距离的两个参考图片(两者都不是长期参考图片)的内部MVD参考图片类型或内部MVD或(零MV减去内部MVD)的缩放MVD。
-否则,如果Abs(POCDiffL0)小于Abs(POCDiffL1),则参考图片列表1的最终MVD被设置为内部MVD,并且用于参考图片列表0的最终MVD被设置为取决于POC距离使用两个参考图片的内部MVD参考图片类型(两者都不是长期参考图片)或内部MVD或(零MV减去内部MVD)的缩放MVD。
-如果基础合并候选是来自参考图片列表X的单向预测,则参考图片列表X的最终MVD被设置为内部MVD,并且参考图片列表Y的最终MVD(Y=1-X)被设置为0。
MMVD也称为终极运动矢量表达(UMVE)。
2.4组合的帧间和帧内预测(CIIP)
在VVC中,当以合并模式对CU进行编解码时,如果CU包含至少64个亮度样本(即,CU宽度乘以CU高度等于或大于64),并且如果CU宽度和CU高度都小于128个亮度样本,则通过信号传输附加标志,以指示组合帧间/帧内预测(CIIP)模式是否应用于当前CU。如其名称所示,CIIP预测将帧间预测信号与帧内预测信号进行组合。CIIP模式中的帧间预测信号Pinter是使用应用于常规合并模式的相同帧间预测过程来导出的;并且在平面模式的常规帧内预测过程之后导出帧内预测信号Pintra。然后,使用加权平均来组合帧内和帧间预测信号,其中取决于顶部和左侧邻近块的编解码模式来如下计算权重值(如在图11的示意图1100中描绘):
-如果顶部邻居可用且已进行帧内编解码,则将isIntraTop设置为1,否则将isIntra top设置为0;
-如果左侧邻居可用且已进行帧内编解码,则将isIntraLeft设置为1,否则将isIntralLeft设置成0;
-如果(isIntraLeft+isIntraTop)等于2,则wt设置为3;
-否则,如果(isIntraLeft+isIntraTop)等于1,则wt设置为2;
-否则,将wt设置为1。
CIIP预测被建立如下:
PCIIP=((4-wt)*Pinter+wt*Pintra+2)>>2
2.5几何划分模式(GPM)
在VVC中,几何划分模式被支持用于帧间预测。使用CU级标志作为一种合并模式来通过信号传输几何划分模式,其他合并模式包括常规合并模式、MMVD模式、CIIP模式和子块合并模式。对于每个可能的CU大小,几何划分模式总共支持64个划分,不包括8x64和64x8。
图12显示了由相同角度分组的GPM分割示例的示意图1200。当使用该模式时,CU通过几何定位的直线分为两部分(图12)。分割线的位置在数学上是从特定划分的角度和偏移参数导出的。CU中的几何划分的每个部分使用其自身的运动进行帧间预测;每个划分只允许单向预测,即每个部分都有一个运动矢量和一个参考索引。应用单向预测运动约束以确保与传统的双向预测相同,每个CU只需要两个运动补偿预测。
如果几何划分模式用于当前CU,则指示几何划分的划分模式(角度和偏移)的几何划分索引和两个合并索引(每个划分一个)被进一步通过信号传输。最大GPM候选大小的数目在SPS中被显式地通过信号传输,并且指定用于GPM合并索引的语法二进制化。在预测了几何划分的每个部分之后,使用具有自适应权重的混合处理来调整沿着几何划分边缘的样本值。这是整个CU的预测信号,并且将像在其他预测模式中一样对整个CU应用变换和量化过程。最后,使用几何划分模式预测的CU的运动场被存储。
2.5.1单向预测候选列表构建
单向预测候选列表直接从根据2.1中的扩展合并预测过程构建的合并候选列表中导出。图13是示出了几何划分模式的单向预测MV选择的示意图。将n表示为几何单向预测候选列表1310中的单向预测运动的索引。第n个扩展合并候选的LX运动矢量,X等于n的奇偶性,被用作几何划分模式的第n个单向预测运动矢量。这些运动矢量在图13中用“x”标记。如果第n个扩展合并候选的对应LX运动矢量不存在,则使用相同候选的L(1-X)运动矢量作为几何划分模式的单向预测运动矢量。
2.5.2沿几何划分边缘的混合
在使用其自身的运动来预测几何划分的每个部分之后,将混合应用于两个预测信号以导出几何划分边缘周围的样本。CU的每个位置的混合权重是基于个体位置和划分边缘之间的距离导出的。
位置(x,y)到划分边缘的距离导出为:
其中i,j是几何划分的角度和偏移的索引,其取决于通过信号传输的几何划分索引。ρx,j和ρy,j的符号取决于角度索引i。
几何划分的每个部分的权重如下导出:
wIdxL(x,y)=partIdx?32+d(x,y):32-d(x,y) (2-5)
w1(x,y)=1-w0(x,y) (2-7)
partIdx取决于角度索引i。图14的示意图1400中示出了权重w0的一个示例。
2.5.3用于几何划分模式的运动场存储
来自几何划分第一部分的Mv1、来自几何划分第二部分的Mv2以及Mv1和Mv2的组合Mv存储在几何划分模式编解码CU的运动场中。
运动场中每个个体位置的存储的运动矢量类型被确定为:
sType=abs(motionIdx)<32?2∶(motionIdx≤0?(1-partIdx):partIdx) (2-8)
其中motionIdx等于d(4x+2,4y+2),这是根据等式(2-1)重新计算的。partIdx取决于角度索引i。
如果sType等于0或1,则Mv0或Mv1被存储在对应运动场中,否则,如果sTType等于2,则存储来自Mv0和Mv2的组合Mv。组合Mv使用以下过程生成:
1)如果Mv1和Mv2来自不同的参考图片列表(一个来自L0,另一个来自L1),则Mv1和Mv2被简单地组合以形成双向预测运动矢量。
2)否则,如果Mv1和Mv2来自同一列表,则仅存储单向预测运动Mv2。
2.6用于帧间预测的三角划分
在VVC中,支持三角划分模式(TPM)用于帧间预测。三角划分模式仅适用于8x8或更大的CU。三角划分模式是使用CU级标志作为一种合并模式来通过信号传输的,其他合并模式包括常规合并模式、MMVD模式、CIIP模式和子块合并模式。
当使用该模式时,使用对角线分割(图15中描绘的CU1510)或反对角线分割(图15中描绘的CU1520),将CU均匀分割为两个三角划分。CU中的每个三角划分使用其自身的运动来进行帧间预测;每个划分只允许单向预测,即每个划分有一个运动矢量和一个参考索引。应用单向预测运动约束以确保与传统的双向预测相同,每个CU只需要两个运动补偿预测。使用2.6.1中描述的过程导出每个划分的单向预测运动。
如果三角划分模式用于当前CU,则进一步通过信号传输指示三角划分的方向(对角线或反对角线)的标志和两个合并索引(每个划分一个)。最大TPM候选大小的数目在条带级别被显式地通过信号传输,并且指定TMP合并索引的语法二值化。在预测每个三角划分之后,使用具有自适应权重的混合处理来调整沿对角线或反对角线边缘的样本值。这是整个CU的预测信号,并且变换和量化处理将像在其他预测模式中一样应用于整个CU。最后,使用三角划分模式预测的CU的运动场如2.6.3中那样存储。
三角划分模式不与SBT结合使用,即,当通过信号传输的三角模式等于1时,在没有通过信号传输的情况下推断cu_SBT_flag为0。
2.6.1单向预测候选列表构建
单向预测候选列表直接从根据2.1中的扩展合并预测过程构建的合并候选列表中导出。图16是示出了用于几何划分模式的单向预测MV选择的示意图。将n表示为三角单向预测候选列表1610中的单向预测运动的索引。第n个扩展合并候选的LX运动矢量,X等于n的奇偶性,被用作三角划分模式的第n个单向预测运动矢量。这些运动矢量在图16中用“x”标记。如果不存在第n个扩展合并候选的对应LX运动矢量,则使用相同候选的L(1-x)运动矢量作为三角划分模式的单向预测运动矢量。
2.6.2沿三角划分边缘混合
在使用其自身的运动预测每个三角划分之后,将混合应用于两个预测信号,以导出对角线或反对角线边缘周围的样本。混合过程中使用以下权重:
针对亮度的7/8、6/8、5/8、4/8、3/8、2/8、1/8},针对色度的{6/8、4/8和2/8},分别如图17的权重图1710和权重图1720所示。
2.6.3运动场存储
使用以下过程生成以三角划分模式编解码的CU的运动矢量:
1)如果Mv1和Mv2来自不同的参考图片列表(一个来自L0,另一个来自L1),则Mv1和Mv2被简单地组合以形成双向预测运动矢量。
2)否则,如果Mv1和Mv2来自同一列表,则仅存储单向预测运动Mv2。
2.7基于模板匹配的自适应合并候选排序
为了提高编解码效率,在构建合并候选列表后,根据模板匹配成本调整每个合并候选的顺序。合并候选根据升序的模板匹配成本排列在列表中。它以子组的形式操作。
图18示出了用于计算SAD(绝对差之和)的邻近样本的示意图1800。模板匹配成本通过当前图片1810中当前CU的邻近样本与其对应参考样本之间的SAD来测量。如果合并候选包括双向预测运动信息,则对应的参考样本是参考列表0 1820中的对应参考样本和参考列表11830中的对应参考样本的平均值,如图18所示。如果合并候选包含子CU级运动信息,当前图片1910中的当前CU的对应参考样本由参考图片1920中的对应参考子块的邻近样本组成,如图19所示。
排序过程以子组的形式进行操作,如图20所示。前三个合并候选在一起进行排序。后面的三个合并候选在一起进行排序。如图20所示,对原始合并候选列表2010进行排序,得到更新后的合并候选列表2020。在该示例中,模板大小(左侧模板的宽度或上方模板的高度)为1,并且子组大小为3。
2.8局部光照补偿(LIC)
局部光照补偿(LIC)是一种解决当前图片与其时间参考图片之间局部光照变化问题的编解码工具。LIC基于线性模型,其中缩放因子和偏移被应用于参考样本以获得当前块的预测样本。具体而言,LIC可以通过以下等式进行数学建模:
P(x,y)=α·Pr(x+vx,y+vy)+β
其中,P(x,y)是当前块在坐标(x,y)处的预测信号;Pr(x+vx,y+vy)是由运动矢量(vx,vy)指向的参考块;并且α和β是应用于参考块的对应缩放因子和偏移。图21示出了LIC过程。在图21中,当对块应用LIC时,采用最小均方误差(LMSE)方法,通过最小化当前块的邻近样本(即图21中的模板T)与其在时间参考图片中对应的参考样本(即,图21中T0或T1)之间的差异,来导出LIC参数的值(即,α和β)。此外,为了降低计算复杂度,对模板样本和参考模板样本二者进行二次采样(自适应二次采样)以导出LIC参数,即,只有图21中的阴影样本用于导出α和β。
为了提高编解码性能,不执行短边的二次采样,如图22所示。
2.9具有CU级别权重的双向预测(BCW)
在HEVC中,通过对从两个不同的参考图片获得的两个预测信号进行平均和/或使用两个不同运动矢量来生成双向预测信号。在VVC中,双向预测模式被扩展到简单平均之外,以允许对两个预测信号进行加权平均。
Pbi-pred=((8-w)*P0+w*P1+4)>>3
在加权平均双向预测中允许五个权重,w∈{-2,3,4,5,10}。对于每个双向预测CU,以两种方式之一确定权重w:1)对于非合并CU,在运动矢量差之后通过信号传输权重索引;2)对于合并CU,基于合并候选索引从邻近块推断权重索引。BCW仅应用于具有256个或更多亮度样本的CU(即CU宽度乘以CU高度大于或等于256)。对于低延迟图片,将使用所有5个权重。对于非低延迟图片,仅使用3个权重(w∈{3,4,5})。
-在编码器处,在不显著增加编码器复杂度的情况下,应用快速搜索算法来找到权重索引。这些算法总结如下。可以参考VTM软件和文档JVET-L0646以获得进一步的细节。当与AMVR组合时,如果当前图片是低延迟图片,则仅有条件地检查1-像素和4-像素运动矢量精度的不等权重。
-当与仿射组合时,在且仅在仿射模式被选择为当前最佳模式的情况下,将针对不相等的权重执行仿射ME。
-当双向预测中的两个参考图片相同时,仅有条件地检查不相等的权重。
-当满足某些条件时,不搜索不等权重,这取决于当前图片与其参考图片之间的POC距离、编解码QP和时间级别。
BCW权重索引是使用一个上下文编解码的二进制位然后是旁路编解码的二进制位来编解码的。第一上下文编解码的二进制位指示是否使用相等的权重;并且如果使用不相等的权重,则使用旁路编解码通过信号传输附加二进制位,以指示使用哪个不相等的权重。
加权预测(WP)是H.264/AVC和HEVC标准支持的一种编解码工具,用于在衰落的情况下对视频内容进行高效编解码。VVC标准中还增加了对WP的支持。WP允许为每个参考图片列表L0和L1中的每个参考图片通过信号传输加权参数(权重和偏移)。然后,在运动补偿期间,应用对应参考图片的权重和偏移。WP和BCW是为不同类型的视频内容而设计的。为了避免WP和BCW之间的交互(这将使VVC解码器设计复杂化),如果CU使用WP,则BCW权重索引不通过信号被传输,并且w被推断为4(即应用相等的权重)。对于合并CU,权重索引是基于合并候选索引从邻近块推断的。这可以应用于正常合并模式和继承仿射合并模式。对于构建的仿射合并模式,基于多达3个块的运动信息来构建仿射运动信息。使用构建的仿射合并模式的CU的BCW索引被简单地设置为等于第一控制点MV的BCW索引。
在VVC中,CIIP和BCW不能联合应用于CU。当使用CIIP模式对CU进行编解码时,当前CU的BCW索引设置为2,例如相等的权重。
2.10基于子块的时间运动矢量预测(SbTMVP)
VVC支持基于子块的时间运动矢量预测(SbTMVP)方法。类似于HEVC中的时间运动矢量预测(TMVP),SbTMVP使用同位图片中的运动场来改进当前图片中CU的运动矢量预测和合并模式。TMVP使用的同一同位图片用于SbTMVP。SbTMVP与TMVP区别于以下两个主要方面:
–TMVP预测CU级别的运动,但是SbTMVP预测子CU级别的运动;
–而TMVP从同位图片中的同位块预取时间运动矢量(同位块是相对于当前CU的右下或中心块),SbTMVP在从同位图片预取时间运动信息之前应用运动移位,其中运动移位是从来自当前CU的空间邻近块之一的运动矢量获得的。
SbTMVP过程如图23A和图23B所示。图23A示出了SbTMVP使用的空间邻近块的示意图2310。SbTMVP分两步预测当前CU内的子CU的运动矢量。在第一步中,检查图23A中的空间邻居A1。如果A1具有使用同位图片作为其参考图片的运动矢量,则该运动矢量被选择为要应用的运动偏移。如果没有标标识出这样的运动,则运动移位被设置为(0,0)。
图23B示出了通过应用来自空间邻居的运动移位并缩放来自对应同位子CU的运动信息来驱动子CU运动场的示意图。在第二步中,应用步骤1中标识的运动移位(即添加到当前图片2320中当前块的坐标),以从同位图片2322获得子CU级运动信息(运动矢量和参考索引),如图23B所示。图23B中的示例假设运动移位设置为块A1的运动。然后,对于每个子CU,同位图片2322中的其对应块(覆盖中心样本的最小运动网格)的运动信息用于导出子CU的运动信息。在标识出同位子CU的运动信息之后,以与HEVC的TMVP过程类似的方式将其转换为当前子CU的参考索引和运动矢量,其中应用时间运动缩放以将时间运动矢量的参考图片与当前CU的参考图片对齐。
在VVC中,包含有SbTMVP候选和仿射合并候选二者的、经组合的基于子块的合并列表被用于基于子块合并模式的信号传输。SbTMVP模式由序列参数集(SPS)标志启用/禁用。如果SbTMVP模式被启用,则SbTMVP预测子被添加为基于子块的合并候选的列表的第一条目,然后是仿射合并候选。在SPS中通过信号传输基于子块的合并列表的大小,并且在VVC中基于子块合并列表的最大允许大小是5。
SbTMVP中使用的子CU大小固定为8x8,并且与仿射合并模式一样,SbTMVP模式仅适用于宽度和高度都大于或等于8的CU。
附加SbTMVP合并候选的编解码逻辑与其他合并候选的相同,即,对于P或B条带中的每个CU,执行附加RD检查以决定是否使用SbTMVP候选。
2.11仿射运动补偿预测
在HEVC中,只有平移运动模型被应用于运动补偿预测(MCP)。而在现实世界中,有很多种运动,例如放大/缩小、旋转、透视运动和其他不规则运动。在VVC中,应用了基于块的仿射变换运动补偿预测。图24示出了基于控制点的仿射运动模型的示意图。如图24所示,块的仿射运动场由两个控制点(4参数)或三个控制点运动矢量(6参数)的运动信息描述。
对于图24中的4参数仿射运动模型2410,块中采样位置(x,y)处的运动矢量导出为:
对于图24中的6参数仿射运动模型2420,块中采样位置(x,y)处的运动矢量导出为:
其中,(mv0x,mv0y)是左上角控制点的运动矢量,(mv1x,mv1y)是右上角控制点运动矢量,以及(mv2x,mv2y)是左下角控制点运动矢量。
为了简化运动补偿预测,应用了基于块的仿射变换预测。图25示出了每个子块的仿射MVF的示意图2500。为了导出每个4×4亮度子块的运动矢量,根据上述等式计算每个子块的中心样本的运动矢量(如图25所示),并四舍五入到1/16分数精度。然后应用运动补偿插值滤波器来生成具有导出的运动矢量的每个子块的预测。色度分量的子块大小也被设置为4×4。4×4色度子块的MV被计算为同位8x8亮度区域中的左上和右下亮度子块的MV的平均值。与平移运动帧间预测一样,还有两种仿射运动帧间预测模式:仿射合并模式和仿射AMVP模式。
2.11.1仿射合并预测
AF_MERGE模式可应用于宽度和高度均大于或等于8的CU。在该模式中,基于空间邻近CU的运动信息来生成当前CU的CPMV。可以有多达五个CPMVP候选,并通过信号传输索引来指示要用于当前CU的一个。以下三种类型的CPVM候选用于形成仿射合并候选列表:
–从邻近CU的CPMV推断的继承仿射合并候选
–使用邻近CU的平移MV导出的构建仿射合并候选CPMVP
–零MV
在VVC中,最多有两个继承的仿射候选,它们是从邻近块的仿射运动模型导出的,一个来自左侧邻近CU,一个从上方邻近CU。图26示出了继承的仿射运动预测子的位置的示意图2600。候选块如图26所示。对于左边的预测子,扫描顺序为A0->A1,对于上面的预测子的扫描顺序为B0->B1->B2。只从每一侧选择第一个继承候选。在两个继承的候选之间不执行修剪检查。当标识出邻近的仿射CU时,其控制点运动矢量用于导出当前CU的仿射合并列表中的CPMVP候选。图27示出了控制点运动矢量继承的示意图。如图27所示,如果以仿射模式对邻近的左下块A 2710进行编解码,则得到包含块A 2710的CU 2720的左上角、右上角和左下角的运动矢量v2,v3和v4。当块A 2710用4参数仿射模型编解码时,根据和计算当前CU的两个CPMV。当块A用6参数仿射模型进行编解码时,当前CU的三个CPMV根据v2,v3和v4被计算。
构建的仿射候选是指通过组合每个控制点的邻近平移运动信息来构建候选。控制点的运动信息是从图28中所示的指定空间邻居和时间邻居导出的,图28示出了所构建的仿射合并模式的候选位置的位置的示意图2800。CPMVk(k=1,2,3,4)表示第k个控制点。对于CPMV1,检查B2->B3->A2块,并使用第一个可用块的MV。对于CPMV2,检查B1->B0块,对于CPMV3,检查A1->A0块。TMVP用作CPMV4(如果可用)。
在得到四个控制点的MV之后,基于这些运动信息构建仿射合并候选。控制点MV的以下组合用于按顺序构建:
{CPMV1,CPMV2,CPMV3},{CPMV1,CPMV2,CPMV4},{CPMV1,CPMV3,CPMV4},{CPMV2,CPMV3,CPMV4},{CPMV1,CPMV2},{CPMV1,CPMV3}
3个CPMV的组合构建6参数仿射合并候选,2个CPMV组合构建4参数仿射合并候选。为了避免运动缩放过程,如果控制点的参考索引不同,则丢弃控制点MV的相关组合。
在检查了继承的仿射合并候选和构建的仿射合并候选之后,如果列表仍然不满,则将零MV插入到列表的末尾。
2.11.2仿射AMVP预测
仿射AMVP模式可应用于宽度和高度均大于或等于16的CU。在码流中通过信号传输CU级别的仿射标志以指示是否使用仿射AMVP模式,然后通过信号传输另一个标志以指示是4参数仿射还是6参数仿射。在该模式中,在码流中通过信号传输当前CU的CPMV与其预测CPMVP的差。仿射AVMP候选列表大小为2,并且通过按顺序使用以下四种类型的CPVM候选来生成:
–从邻近CU的CPMV推断的继承仿射AMVP候选
–使用邻近CU的平移MV导出的构建仿射AMVP候选CPMVP
–来自邻近CU的平移MV
–零MV
继承的仿射AMVP候选的检查顺序与继承的仿射合并候选的检查次序相同。唯一的区别在于,对于AVMP候选,仅考虑具有与当前块中相同的参考图片的仿射CU。当将继承的仿射运动预测子插入候选列表时,不应用修剪过程。
构建的AMVP候选是从图28所示的指定空间邻居中导出的。使用与仿射合并候选构建中相同的检查顺序。此外,还检查邻近块的参考图片索引。使用检查顺序中的第一个块,该块被帧间编解码并且具有与当前CU中相同的参考图片。只有一个。当当前CU是用4参数仿射模式编解码的并且mv0和mv1都可用时,它们被添加为仿射AMVP列表中的一个候选。当用6参数仿射模式对当前CU进行编解码并且所有三个CPMV都可用时,它们被添加为仿射AMVP列表中的一个候选。否则,构建的AMVP候选将设置为不可用。
如果在插入有效的继承仿射AMVP候选和构建的AMVP候选之后仿射AMVP列表候选仍然小于2,并且将按顺序添加mv0,mv1和mv2为平移MV,以在可用时预测当前CU的所有控制点MV。最后,如果仿射AMVP列表仍然未满,则使用零MV来填充该列表。
2.12模板匹配(TM)
模板匹配(TM)是解码器侧MV导出方法,用于通过找到当前图片中的模板(即,当前CU的顶部和/或左侧邻近块)与参考图片中的块(即,与模板大小相同)之间的最接近匹配来细化当前CU的运动信息。图29是示出了在初始MV周围的搜索区域上执行的模板匹配的示意图2900。如图29所示,在[-8,+8]像素搜索范围内,在当前CU的初始运动周围搜索更好的MV。本文采用了先前在JVET-J0021中提出的模板匹配,并进行了两处修改:基于自适应运动矢量精度(AMVR)模式确定搜索步长,在合并模式下TM可以级联双边匹配过程。
在AMVP模式中,基于模板匹配误差来确定MVP候选,以选取达到当前块模板和参考块模板之间的最小差的一个,然后TM仅对该特定MVP候选执行MV细化。TM通过使用迭代菱形搜索,从[-8,+8]像素搜索范围内的全像素MVD精度(或4像素AMVR模式的4像素)开始,对该MVP候选进行细化。AMVP候选可以通过使用具有全像素MVD精度的交叉搜索(或对于4像素AMVR模式为4像素)来进一步细化,然后根据表3中指定的AMVR模式依次使用半像素和四分之一像素。该搜索过程确保MVP候选在TM过程之后仍然保持如AMVR模式所指示的相同MV精度。
表3.AMVR的搜索模式以及与AMVR的合并模式
在合并模式中,类似的搜索方法被应用于由合并索引指示的合并候选。如表3所示,TM可以一直执行到1/8像素MVD精度,或者跳过超过半像素MVD精度的精度,这取决于是否根据合并的运动信息使用替代插值滤波器(当AMVR为半像素模式时使用)。此外,当启用TM模式时,模板匹配可以作为基于块和基于子块的双边匹配(BM)方法之间的独立过程或额外的MV细化过程来工作,这取决于BM是否可以根据其启用条件检查来启用。
在编码器端,TM合并模式将对每个合并候选进行MV细化。
2.13多假设预测(MHP,在JVET-U0100中)
本文采用了先前在JVET-M0425中提出的多假设预测。在帧间AMVP模式、常规合并模式和MMVD模式之上通过信号传输最多两个附加预测子。所得到的总体预测信号与每个附加预测信号迭代地累积。
pn+1=(1-αn+1)pnn+1hn+1
加权因子α根据下表指定:
add_hyp_weight_idx α
0 1/4
1 -1/8
对于帧间AMVP模式,只有在双向预测模式中选择BCW中的非相等权重,才应用MHP。
2.14 JVET-M0425:多假设帧间预测
在多假设帧间预测模式中,除了传统的单/双向预测信号之外,还通过信号传输一个或多个附加预测信号。所得到的总体预测信号是通过逐样本加权叠加来获得的。利用单/双向预测信号puni/bi和第一附加帧间预测信号/假设h3,得到的预测信号p3如下:
p3=(1-α)puni/bi+αh3
加权因子α由新语法元素add_hyp_weight_idx根据以下映射指定:
注意,对于附加预测信号,在测试CE10.1.2.a、CE10.1.2.b和CE10.1.2.d中,取消了预测列表0/列表1的概念,而是使用一个组合列表。该组合列表是通过从列表0和列表1交替插入参考帧来生成的,其中增加了参考索引,省略了已经插入的参考帧,从而避免了重复条目。在测试CE10.1.2.c中,每个PU内只能使用2个不同的参考图片,因此使用哪个参考帧由一个标志指示。
类似于上述,可以使用多于一个的附加预测信号。所得到的总体预测信号与每个附加预测信号迭代地累积。
pn+1=(1-αn+1)pnn+1hn+1
所得到的总体预测信号作为最后一个(即,具有最大索引n的pn)被获得。在该CE内,最多可以使用两个附加预测信号(即,n被限制为2)。注意,由于迭代累积方法,用于存储中间预测信号的所需PU样本缓冲的数目相对于双向预测没有增加(即,两个缓冲就足够了)。
2.14.1多假设运动估计
首先,测试不具有显式地通过信号传输的附加帧间预测参数的帧间模式。对于这些模式中最好的两个(即,具有最低的哈达玛RD成本),搜索附加的帧间预测假设。为此,对于以下参数的所有组合,执行具有16的受限搜索范围的运动估计:
·加权因子α
·附加预测假设的参考框架
为了确定这两个参数的最佳组合,使用了使用哈达玛失真测量和近似码率的简化RD成本。然后,使用前向变换和量化,将所选择的参数组合用于计算更准确的RD成本,该RD成本与当前块的目前找到的最佳编解码模式进行比较。
2.14.2与其他编解码工具的交互
2.14.2.1正常合并模式(非MMVD、非子块)
·可以显式地通过信号传输附加预测信号,但不能在SKIP模式中
·作为合并候选的一部分,还可以从空间邻近块继承附加预测信号,但这限于
ο当前CTU内的邻近块,或者
ο左边CTU的邻近块
·附加预测信号不能从顶部CTU或从时间上同位块继承。
·所有显式通过信号传输的附加预测信号都使用相同的AMVP候选列表,该列表是为第一显式通过信号传输的附加预测信息生成的,因此以下项需要被操作
ο一个合并候选列表的构建过程
ο一个AMVP候选列表构建过程
·显式通过信号传输和继承(合并)的附加预测信号的总和被限制为小于或等于2。
2.14.2.2 MMVD
·可以显式地通过信号传输附加预测信号,但不能在MMVDSKIP模式中
·没有来自合并候选的附加预测信号的继承/合并
·所有显式通过信号传输的附加预测信号都使用相同的AMVP候选列表,该列表是为第一显式通过信号传输的附加预测信息生成的,因此以下项需要被操作
ο一个MMVD列表构建过程
ο一个AMVP候选列表构建过程
2.14.2.3子块合并模式
·附加预测信号可以被显式地通过信号传输,但不在SKIP模式中。
·不存在来自合并候选的附加预测信号的继承/合并。
·所有显式通过信号传输的附加预测信号都使用相同的AMVP候选列表,该列表是为第一显式通过信号传输的附加预测信息生成的,因此以下项需要被操作
ο一个子块合并候选列表构建过程,
ο一个AMVP候选列表构建过程。
2.14.2.4非仿射AMVP模式
·在双向预测的情况下,可以显式地通过信号传输附加预测信号。
·只需要构建两个AMVP候选列表(对于前两个,即非附加预测信号)。
·对于附加预测信号,使用两个AMVP候选列表中的一个:
ο如果附加预测信号的参考图片的POC等于所使用的列表1参考图片的POC,
ο否则,将使用列表0AMVP候选列表。
2.14.2.5仿射AMVP模式
·在双向预测的情况下,可以显式地通过信号传输附加(平移)预测信号。
·需要构建两个仿射AMVP候选列表(对于前两个,即非附加预测信号)。
·对于附加预测信号,使用两个AMVP候选列表中的一个:
ο如果附加预测信号的参考图片的POC等于所使用的列表1参考图片的POC,则使用列表1AMVP候选列表。
ο否则,将使用列表0AMVP候选列表。
·仿射LT mv预测子被用作附加预测信号的mv预测子。
2.14.2.6 BIO
多假设帧间预测不能与一个PU内的BIO一起使用:
·如果存在附加预测信号,则禁用当前PU的BIO
2.14.2.7组合帧内/帧间
多假设帧间预测不能与一个PU内的组合帧内/帧间一起使用:
·如果组合的帧内/帧间与具有附加预测信号的合并候选一起被选择,则这些附加预测信号不被继承/合并。
·附加预测信号不能在组合帧内/帧间模式中被显式地通过信号传输。
2.14.2.8三角模式
多假设帧间预测不能与一个PU内的三角模式一起使用:
·如果三角模式与具有附加预测信号的合并候选一起被选择,则这些附加预测信号不被继承/合并。
·附加预测信号不能在三角模式中被显式地通过信号传输。
2.15重叠块运动补偿
重叠块运动补偿(OBMC)以前已在H.263中使用。在JEM中,与H.263不同,OBMC可以使用CU级别的语法来打开和关闭。当在JEM中使用OBMC时,除了CU的右边界和下边界之外,对所有运动补偿(MC)块边界执行OBMC。此外,它还适用于亮度和色度分量。在JEM中,MC块对应于编解码块。当用子CU模式(包括子CU合并、仿射和FRUC模式)对CU进行编解码时,CU的每个子块都是MC块。为了以统一的方式处理CU边界,在子块级别对所有MC块边界执行OBMC,其中子块大小设置为等于4×4,如图30所示。
当OBMC应用于当前子块时,除了当前运动矢量之外,四个连接的邻近子块的运动矢量如果可用并且与当前运动矢量不相同,则也用于导出当前子块的预测块。这些基于多个运动矢量的多个预测块被组合以生成当前子块的最终预测信号。
将基于邻近子块的运动矢量的预测块表示为PN,其中N指示邻近的上、下、左和右子块的索引,并且基于当前子块的运动矢量的预测块被表示为PC。当PN基于包含与当前子块相同的运动信息的邻近子块的运动信息时,OBMC不是从PN执行的。否则,PN的每个样本都被添加到PC中的同一样本,即PN的四行/列被添加到PC。加权因子{1/4,1/8,1/16,1/32}用于PN,并且加权因子{3/4,7/8,15/16,31/32}用于PC。小的MC块除外,(即,当编解码块的高度或宽度等于4时,或者用子CU模式对CU进行编解码时),其中只有两行/列PN被添加到PC。在这种情况下,加权因子{1/4,1/8}用于PN,而加权因子{3/4,7/8}用于PC。对于基于垂直(水平)邻近子块的运动矢量生成的PN,PN的同一行(列)中的样本被添加到具有相同加权因子的PC
在JEM中,对于大小小于或等于256个亮度样本的CU,通过信号传输CU级别标志,以指示当前CU是否应用OBMC。对于大小大于256个亮度样本或未使用AMVP模式编解码的CU,默认情况下应用OBMC。在编码器处,当OBMC被应用于CU时,其影响在运动估计阶段被考虑在内。OBMC使用顶部邻近块和左侧邻近块的运动信息形成的预测信号用于补偿当前CU的原始信号的顶部和左侧边界,然后应用正常的运动估计过程。
2.16自适应合并候选列表
假设合并候选的数目为8。将前5个合并候选作为第一子组,并将随后的3个合并候选用作第二子组(即最后的子组)。
图31示出了编码器中的重排序过程3100的流程图。对于编码器,在块3102构建合并候选列表后,一些合并候选按合并候选成本的升序自适应地重排序,如图31所示。
更具体地,在块3104,计算除最后的子组之外的所有子组中的合并候选的模板匹配成本;则在块3106,除最后的子组之外对其自己的子组中的合并候选重排序;最后,在框3108,将得到最终合并候选列表。
对于解码器,在构建合并候选列表后,一些/没有合并候选按照合并候选成本的升序被自适应地重排序,如图32所示,图32示出了解码器中重排序过程3200的流程图。在图32中,所选(信号)合并候选所在的子组称为所选子组。
更具体地,在块3202,确定所选择的合并候选是否位于最后的子组中。如果所选合并候选位于最后的子组中,则在框3204,在导出所选合并候选之后终止合并候选列表构建过程,并且在框3206,不执行重排序并且不改变合并候选列表;否则,执行过程如下:
在框3208,在导出所选子组中的所有合并候选之后,终止合并候选列表构建过程;在块3210,计算所选子组中的合并候选的模板匹配成本;在框3212,对所选子组中的合并候选进行重排序;最后,在块3214,将得到新的合并候选列表。
对于编码器和解码器,
模板匹配成本是作为T和RT的函数导出的,其中T是模板中的样本集合,RT是用于模板的参考样本集合。
当导出合并候选的模板的参考样本时,合并候选的运动矢量被四舍五入到整数像素精度。
用于双向预测的模板(RT)的参考样本是通过如下对参考列表0(RT0)中的模板的参考样本和参考列表1(RT1)中模板的参考样本进行加权平均而导出的。
RT=((8-w)*RT0+w*RT1+4)>>3
其中参考列表0(8-w)中参考模板的权重和参考列表1(w)中参考模板的权重由合并候选的BCW索引决定。等于{0,1,2,3,4}的BCW索引分别对应于等于{-2,3,4,5,10}的w。
如果合并候选的局部亮度补偿(LIC)标志为真,则使用LIC方法导出模板的参考样本。
模板匹配成本是基于T和RT的绝对差总和(SAD)来计算的。
模板大小为1。这意味着左边模板的宽度和/或上面模板的高度是1。
如果编解码模式是MMVD,则不重排序用于导出基础合并候选的合并候选。
如果编解码模式是GPM,则用于导出单向预测候选列表的合并候选不被重排序。
2.17 GMVD
在具有运动矢量差分的几何预测模式下,GPM中的每个几何划分都可以决定是否使用GMVD。如果为几何区域选择GMVD,则将该区域的MV计算为合并候选的MV和MVD的总和。所有其他处理都与GPM中保持相同。
利用GMVD,MVD作为一对方向和距离通过信号被传输。有九个候选距离(1/4像素、1/2像素、1像素、2像素、3像素、4像素、6像素、8像素、16像素)和八个候选方向(四个水平/垂直方向和四个对角线方向)。此外,当pic_fpel_MVD_enabled_flag等于1时,GMVD中的MVD也像MMVD中一样左移2。
2.18仿射MMVD
在仿射MMVD中,选择仿射合并候选(称为基础仿射合并候选),由通过信号传输的MVD信息进一步细化控制点的MV。所有控制点的MV的MVD信息在一个预测方向上是相同的。
当起始MV是双向预测MV,其中两个MV指向当前图片的不同侧(即,一个参考的POC大于当前图片的POC,而另一个参考的POC小于当前图片的POC)时,添加到起始MV的列表0MV分量的MV偏移和列表1MV的MV偏移具有相反的值;否则,当起始MV是两个列表都指向当前图片的同一侧的双向预测MV时(即,两个参考的POC都大于当前图片的POC,或者都小于当前图片的POC),添加到起始MV的列表0MV分量的MV偏移和列表1MV的MV偏移是相同的。
2.19多遍次解码器侧运动失量细化
在本文中,多遍次解码器侧运动矢量细化被应用。在第一遍次中,双边匹配(BM)被应用于编解码块。在第二遍次中,BM被应用于编解码块内的每个16x16子块。在第三遍次中,通过应用双向光流(BDOF)来细化每个8x8子块中的MV。细化的MV被存储用于空间运动矢量预测和时间运动矢量预测两者。
2.19.1.第一遍次-基于块的双边匹配MV细化
在第一遍次中,通过将BM应用于编解码块来导出细化的MV。类似于解码器侧运动矢量细化(DMVR),在双向预测操作中,在参考图片列表L0和L1中的两个初始MV(MV0和MV1)周围搜索细化的MV。基于L0和L1中的两个参考块之间的最小双边匹配成本,围绕初始MV导出细化的MV(MV0_pass1和MV1_pass1)。
BM执行局部搜索以导出整数样本精度intDeltaMV。局部搜索应用3×3平方搜索样式,在水平方向的搜索范围[–sHor,sHor]和垂直方向的搜索范围[–sVer,sVer]中循环,其中,sHor和sVer的值由块尺度确定,并且sHor和sVer的最大值为8。
双边匹配成本计算为:bilCost=mvDistanceCost+sadCost。当块尺寸cbW*cbH大于64时,应用MRSAD成本函数来去除参考块之间失真的DC效应。当3×3搜索样式的中心点的bilCost具有最小成本时,intDeltaMV的局部搜索终止。否则,当前最小成本搜索点成为3×3搜索样式的新中心点,并继续搜索最小成本,直到它到达搜索范围的末尾。
进一步应用现有的分数样本细化来导出最终的deltaMV。然后,第一遍次后的细化MV导出为:
·MV0_pass1=MV0+deltaMV
·MV1_pass1=MV1–deltaMV
2.19.2.第二遍次-基于子块的双边匹配MV细化
在第二遍次中,通过将BM应用于16×16网格子块来导出细化的MV。对于每个子块,在参考图片列表L0和L1中在第一遍次获得的两个MV(MV0_pass1和MV1_pass1)周围搜索细化的MV。基于L0和L1中的两个参考子块之间的最小双边匹配成本来导出细化的MV(MV0_pass2(sbIdx2)和MV1_pass2(sbIdx2))。
对于每个子块,BM执行完全搜索以导出整数样本精度intDeltaMV。完全搜索在水平方向上具有搜索范围[–sHor,sHor],并且在垂直方向上具有搜索范围[–sVer,sVer],其中,sHor和sVer的值由块维度确定,并且sHor和sVert的最大值为8。
双边匹配成本是通过将成本因子应用于两个参考子块之间的SATD成本来计算的,如:bilCost=satdCost*costFactor。搜索区(2*sHor+1)*(2*sVer+1)被分为5个菱形搜索区域,如图33中的图3300所示。每个搜索区域都被分配了一个costFactor,该costFactor由每个搜索点与起始MV之间的距离(intDeltaMV)确定,并且每个菱形区域按照从搜索区域的中心开始的顺序进行处理。在每个区域中,搜索点按光栅扫描顺序进行处理,从区域的左上角开始,一直到右下角。在当前搜索区域内的最小bilCost小于等于sbW*sbH的阈值时,终止整像素(int-pel)完全搜索,否则,int-pel完全搜索继续到下一个搜索区域,直到检查完所有搜索点。
进一步应用现有的VVC DMVR分数样本细化来导出最终的deltaMV(sbIdx2)。然后,第二遍次的细化MV被导出为:
·MV0_pass2(sbIdx2)=MV0_pass 1+deltaMV(sbIdx2)
·MV1_pass2(sbIdx2)=MV1_pass1–deltaMV(sbIdx2)
2.19.3.第三遍次-基于子块的双向光流MV细化
在第三遍次中,通过将BDOF应用于8×8网格子块来导出细化的MV。对于每个8×8的子块,BDOF细化被应用以导出缩放的Vx和Vy,而不从第二遍次的父子块的细化MV开始进行剪裁。导出的bioMv(Vx,Vy)被舍入到1/16样本精度,并且在-32与32之间进行剪裁。
第三遍次的细化MV(MV0_pass3(sbIdx3)和MV1_pass3(sbIdx3))被导出为:
·MV0_pass3(sbIdx3)=MV0_pass 2(sbIdx2)+bioMv
·MV1_pass3(sbIdx3)=MV0_pass2(sbIdx2)–bioMv
2.20解码器侧运动矢量细化(DMVR)
为了提高合并模式MV的精度,在VVC中应用了基于双边匹配的解码器侧运动矢量细化。在双向预测操作中,在参考图片列表L0和参考图片列表L1中的初始MV周围搜索细化的MV。BM方法计算参考图片列表L0和列表L1中两个候选块之间的失真。图34是示出了解码侧运动矢量细化的示意图。如图34所示,基于初始MV周围的每个MV候选,计算块3410与块3412之间的SAD,其中,块3410在针对当前图片3402的列表L0中的参考图片3401中,并且块3412在针对当前图片3402的列表L1中的参考图片3403中。具有最低SAD的MV候选成为细化MV,并被用于生成双向预测信号。
在VVC中,DMVR可以适用于利用以下模式和特征编解码的CU:
–具有双向预测MV的CU级合并模式
–相对于当前图片,一张参考图片是过去的,并且另一张参考图片是未来的
–从两个参考图片到当前图片的距离(即POC差)相同
–两张参考图片均为短期参考图片
–CU有超过64个亮度样本
–CU高度和CU宽度均大于或等于8个亮度样本
–BCW权重索引指示相等的权重
–针对当前块未启用WP
–CIIP模式未用于当前块
DMVR过程导出的细化MV用于生成帧间预测样本,并且还用于未来图片编解码的时间运动矢量预测。而原始MV被用于去块过程,并且还被用于未来CU编解码的空间运动矢量预测。
DMVR的附加功能在以下子条款中有所提及。
2.20.1搜索方案
在DVMR中,搜索点围绕初始MV,并且MV偏移服从MV差镜像规则。换句话说,由候选MV对(MV0,MV1)表示的DMVR检查的任何点遵循以下两个等式:
MV0′=MV0+MV_offset
MV1′=MV1-MV_offset
其中,MV_offset表示参考图片之一中的初始MV和细化MV之间的细化偏移。细化搜索范围是从初始MV开始的两个整数亮度样本。搜索包括整数样本偏移搜索阶段和分数样本细化阶段。
整数样本偏移搜索采用25点全搜索。首先计算初始MV对的SAD。如果初始MV对的SAD小于阈值,则DMVR的整数采样级终止。否则,剩余24个点的SAD按光栅扫描顺序进行计算和检查。选择SAD最小的点作为整数样本偏移搜索阶段的输出。为了减少DMVR细化不确定性的影响,提出在DMVR过程中支持原始MV。由初始MV候选参考的参考块之间的SAD减少了SAD值的1/4。
整数样本搜索之后是分数样本细化。为了节省计算复杂度,利用参数误差曲面方程导出了分数样本细化,而不是使用SAD比较进行额外搜索。分数样本细化是基于整数样本搜索阶段的输出有条件地调用的。当整数样本搜索阶段在第一次迭代或第二次迭代搜索中以具有最小SAD的中心结束时,进一步应用分数样本细化。
在基于参数误差表面的亚像素偏移估计中,中心位置成本和距中心四个邻近位置的成本用于拟合以下形式的二维抛物型误差曲面方程
E(x,y)=A(x-xmin)2+B(y-ymin)2+C
其中(xmin,ymin)对应于具有最小成本的分数位置,C对应于最小成本值。通过使用五个搜索点的成本值求解上述方程,(xmin,ymin)计算为:
xmin=(E(-1,0)-E(1,0))/(2(E(-1,0)+E(1,0)-2E(0,0)))
ymin=(E(0,-1)-E(0,1))/(2((E(0,-1)+E(0,1)-2E(0,0)))
xmin和ymin的值自动限制在-8和8之间,因为所有成本值都为正,最小值为E(0,0)。这对应于VVC中具有1/16像素MV精度的半像素偏移。计算的分数(xmin,ymin)被添加到整数距离细化MV以获得亚像素精确的细化delta MV。
2.20.2双线性插值和样本填充
在VVC中,MV的分辨率是1/16亮度样本。使用8抽头插值滤波器对分数位置处的样本进行插值。在DMVR中,搜索点围绕具有整数样本偏移的初始分数像素MV,因此需要对这些分数位置的样本进行插值以进行DMVR搜索过程。为了降低计算复杂度,双线性插值滤波器用于生成DMVR中搜索过程的分数样本。另一个重要的效果是,通过使用双线性滤波器,在2样本搜索范围内,与正常的运动补偿过程相比,DVMR不会访问更多的参考样本。在通过DMVR搜索过程获得细化的MV之后,应用普通的8抽头插值滤波器来生成最终预测。为了不访问正常MC过程的更多参考样本,将从那些可用样本中填充样本,这些样本对于基于原始MV的插值过程是不需要的,但是对于基于精细MV的插值处理是需要的。
2.20.3最大DMVR处理单元
当CU的宽度和/或高度大于16个亮度样本时,它将被进一步分割为宽度和/或者高度等于16个亮度样本的子块。DMVR搜索过程的最大单元尺寸限制为16x16。
2.21自适应合并候选列表
图35示出了模板和模板的参考样本的示意图3500,其中RT表示模板T的参考样本。在下文中,模板是与当前图片3510中的当前块相邻或不相邻的重建样本的集合。根据当前块的相同运动信息导出模板的参考样本。例如,模板的参考样本是取决于运动信息的模板的映射。在这种情况下,模板的参考样本由运动信息的参考索引所指示的参考图片3520中的运动信息的运动矢量来定位。
图36示出了参考列表0和参考列表1中的模板和模板的参考样本的示意图3600。当合并候选利用双向预测时,合并候选的模板的参考样本由RT表示,并且RT可以根据从参考图片列表0中的参考图片3620导出的RT0和从参考图片列表1中的参考图片3630导出的RT1而生成。在一个示例中,RT0包括由参考了参考列表0中的参考图片的合并候选的参考索引所指示的当前图片3610中的当前块的参考图片3620上的参考样本集合,其中合并候选的MV参考了参考列表0。在一个示例中,RT1包括由参考了参考列表1中的参考图片的合并候选的参考索引所指示的当前块的参考图片3630上的参考样本集合,其中合并候选的MV参考了参考列表1。
在一个示例中,用于双向预测的模板的参考样本(RT)是通过对参考列表0中的模板的参考样本(RT0)和参考列表1中模板的参考样本(RT1)进行相等加权平均而导出的。一个例子如下:
RT=(RT0+RT1+1)>>1
在一个示例中,用于双向预测的模板的参考样本(RTbi-pred)是通过对参考列表0中的模板的参考样本(RT0)和参考列表1中模板的参考样本(RT1)进行加权平均而导出的。一个例子如下:
RT=((2N-w)*RT0+w*RT1+2N-1)>>N,例如,N=3。
在一个示例中,诸如(8-w)的参考列表0中的参考模板的权重和诸如(w)之类的参考列表1中的参考样板的权重可以由合并候选的BCW索引决定。
合并候选可以根据一些准则被分为若干组。每组称为一个子组。例如,可以将相邻的空间和时间合并候选作为第一子组,并将剩余的合并候选作为第二子组;在另一个例子中,前N(N≥2)个合并候选也可以作为第一子组,将后面的M(M≥2)的合并候选作为第二子组,将剩下的合并候选当作第三子组。注意,所提出的方法可以应用于合并帧间编解码块(例如,平移运动)、仿射编解码块的候选列表构建过程;或者其他运动候选列表构建过程(例如AMVP列表、IBC AMVP列表和IBC合并列表)。
W和H是当前块(例如亮度块)的宽度和高度。以下描述以合并候选列表构建过程为例:
1.可以根据一个或一些准则在最终合并候选列表中自适应地重排列合并候选。
a.在一个示例中,首先调用当前合并候选列表构建过程的部分或全部过程,然后对列表中的候选进行重排序。
i.备选地,第一子组中的候选可以被重排序,并且它们应该被添加在第二子组中那些候选之前,其中第一子组被添加到第二子组之前。
(i)在一个示例中,可以首先导出第一类别的多个合并候选,然后在第一类别内重排序;继而可以根据第一类别中的重排序的候选(例如如何应用修剪)来确定来自第二类别的合并候选。
ii.备选地,可以将第一类别中的第一合并候选与第二类别中的第二合并候选进行比较,以决定第一或第二合并候选在最终合并候选列表中的顺序。
b.在一个示例中,可以在检索合并候选之前自适应地重排列合并候选。
i.在一个示例中,自适应地排列合并候选的过程可以在获得要在运动补偿过程中使用的合并候选之前进行处理。
c.在一个示例中,如果当前块的宽度大于当前块的高度,则将上述候选添加到左侧候选之前。
d.在一个示例中,如果当前块的宽度小于当前块的高度,则将上述候选添加到左侧候选之后。
e.是否自适应地重排列合并候选可以取决于所选择的合并候选或所选择的合并候选索引。
i.在一个示例中,如果所选择的合并候选在最后的子组中,则不自适应地重排列合并候选。
f.在一个示例中,向合并候选分配成本,以合并候选的成本的升序自适应地重排序合并候选。
i.在一个示例中,合并候选的成本可以是模板匹配成本。
ii.在一个示例中,模板是与当前块相邻或不相邻的重建样本的集合。
iii.模板匹配成本是作为T和RT的函数导出的,其中T是模板中的样本集合,RT是用于模板的参考样本集合。
(i)如何获得合并候选的模板的参考样本可以取决于合并候选的运动信息
a)在一个示例中,当导出模板的参考样本时,合并候选的运动矢量被四舍五入到整数像素精度,其中整数运动矢量可以是其最近的整数运动矢量。
b)在一个示例中,当导出模板的参考样本时,使用N抽头插值滤波来获得子像素位置处的模板的参考样本。例如,N可以是2、4、6或8。
c)在一个示例中,当导出模板的参考样本时,合并候选的运动矢量可以被缩放到给定的参考图片(例如,对于每个参考图片列表,如果可用的话)。
d)例如,如图32所示,在由合并候选的参考索引指示的当前块的参考图片上获得合并候选的模板的参考样本,该参考图片具有合并候选的MV或修改的MV(例如,根据项a)-b))。
e)例如,当合并候选利用双向预测时,合并候选的模板的参考样本由RT表示,并且RT可以根据从参考图片列表O中的参考图片导出的RT0以及从参考图片列表1中的参考图片导出的RT1而生成。
[1]在一个示例中,RT0包括由参考了参考列表0中的参考图片的合并候选的参考索引所指示的当前块的参考图片上的参考样本集合,其中合并候选的MV参考了参考列表0),
[2]在一个示例中,RT1包括由参考了参考列表1中的参考图片的合并候选的参考索引所指示的当前块的参考图片上的参考样本集合,其中合并候选的MV参考1参考列表1)。
[3]示例如图33所示。
f)在一个示例中,用于双向预测的模板的参考样本(RT)是通过对参考列表0中的模板的参考样本(RT0)和参考列表1中模板的参考样本(RT1)进行相等加权平均而导出的。一个示例如下:
RT=(RT0+RT1+1)>>1
g)在一个示例中,用于双向预测的模板的参考样本(RTbi-pred)是通过对参考列表0中的模板的参考样本(RT0)和参考列表1中模板的参考样本(RT1)
进行加权平均而导出的。一个示例如下:
RT=((2N-w)*RT0+w*RT1+2N-1)>>N,例如,N=3。
h)在一个示例中,诸如(8-w)的参考列表0中的参考模板的权重和诸如(w)之类的参考列表1中的参考样板的权重可以由合并候选的BCW索引决定。
[1]在一个示例中,BCW索引等于0,w设置为等于-2。
[2]在一个示例中,BCW索引等于1,w被设置为等于3。
[3]在一个示例中,BCW索引等于2,w被设置为等于4。
[4]在一个示例中,BCW索引等于3,w被设置为等于5。
[5]在一个示例中,BCW索引等于4,w设置为等于10。
i)在一个示例中,如果合并候选的局部照明补偿(LIC)标志为真,则使用LIC方法导出模板的参考样本。
(ii)可以基于T和RT的绝对差之和(SAD)来计算成本。
a)备选地,可以基于T和RT的绝对变换差(SATD)之和来计算成本。
b)备选地,可以基于T和RT的平方差之和(SSD)来计算成本。
c)备选地,可以基于加权SAD/加权SATD/加权SSD来计算成本。
(iii)除了在(ii)中计算的SAD之外,成本还可以考虑RT和与T相邻或不相邻的重建样本之间的连续性(Boundary_SAD)。例如,考虑与T相邻或不相邻的左侧和/或上方的重建样本。
a)在一个示例中,可以基于SAD和Boundary_SAD来计算成本。
[1]在一个示例中,成本可以被计算为(SAD+w*Boundary_SAD)。w可以是预定义的、通过信号传输的或者根据解码的信息导出的。
2.是否和/或如何重排序合并候选可以取决于合并候选的类别。
a.在一个示例中,只有相邻的空间和时间合并候选可以被重排序。
b.在一个示例中,只有相邻的空间合并候选、STMVP合并候选和时间合并候选可以被重排序。
c.在一个示例中,只有相邻的空间、STMVP、时间和非相邻的空间合并候选可以被重排序。
d.在一个示例中,只有相邻的空间、STMVP、时间、非相邻的空间和HMVP合并候选可以被重排序。
e.在一个示例中,只有相邻的空间、STMVP、时间、非相邻的空间的HMVP和成对平均合并候选可以被重排序。
f.在一个示例中,只有相邻的空间、时间、HMVP和成对平均合并候选可以被重排序。
g.在一个示例中,只有相邻的空间、时间和HMVP合并候选可以被重排序。
h.在一个示例中,只有相邻的空间合并候选可以被重排序。
i.在一个示例中,只有第一个子组可以被重排序。
j.在一个示例中,最后的子组无法重排序。
k.在一个示例中,只有前N个合并候选可以被重排序。
i.在一个示例中,N被设置为等于5。
l.在一个示例中,对于不被重排序的候选,它们将根据初始顺序排列在合并候选列表中。
m.在一个示例中,未被重排序的候选可以被置于待重排序的候选之后。
n.在一个示例中,未被重排序的候选可以被置于待重排序的候选之前。
o.在一个例子中,上面的一些项目(a~k)的组合可以被重排序。
p.不同的子组可以单独重排序。
q.不同子组中的两个候选不能进行比较和/或重排序。
r.如果第一子组在第二子组之前,则在重排序之后,第一子组中的第一候选需要放在第二子组中的第二候选之前。
3.是否和/或如何重排序合并候选可以取决于编解码模式。
a.在一个示例中,如果编解码模式是常规合并模式,则可以对合并候选进行重排序。
b.在一个示例中,如果编解码模式是MMVD,则不重排序用于导出基础合并候选的合并候选。
i.备选地,对于MMVD模式和其他合并模式,重排序方法可以不同。
c.在一个示例中,如果编解码模式是CIIP,则用于与帧内预测组合的合并候选是基于重排序的合并候选的。
i.备选地,对于CIIP模式和其他合并模式,重排序方法可以不同。
d.在一个示例中,如果编解码模式是GPM,则用于导出单向预测候选列表的合并候选不被重排序。
i.备选地,对于GPM模式和其他合并模式,重排序方法可以不同。
e.在一个示例中,如果编解码模式是三角划分模式,则不重排序用于导出单向预测候选列表的合并候选。
i.备选地,对于三角模式和其他合并模式,重排序方法可以不同。
f.在一个示例中,如果编解码模式是基于子块的合并模式,则对基于部分或全部子块的候选合并进行重排序。
i.备选地,对于基于子块的合并模式和其他合并模式,重排序方法可以不同。
ii.在一个示例中,不对基于单向预测子块的合并候选进行重排序。
iii.在一个示例中,SbTMVP候选不被重排序。
iv.在一个示例中,所构建的仿射候选不被重排序。
v.在一个示例中,零填充仿射候选不被重排序。
4.是否和/或如何重排序合并候选可以取决于相邻的空间和/或STMVP和/或时间合并候选的可用数目。
5.合并候选是否需要重排序可以取决于解码的信息(例如CU的宽度和/或高度)。
a.在一个示例中,如果高度大于或等于M,宽度大于或等于N,并且宽度*高度大于或等于R,则可以对合并候选进行重排序。
i.在一个示例中,M、N和R被设置为等于8、8和128。
ii.在一个示例中,M、N和R被设置为等于16、16和512。
b.在一个示例中,如果高度大于或等于M并且宽度大于或等于N,则可以对合并候选进行重排序。
i.在一个示例中,M和N被设置为等于8和8。
ii.在一个示例中,M和N被设置为等于16和16。
6.子组尺寸可以是自适应的。
a.在一个示例中,根据表示为N的相邻空间和/或STMVP和/或时间合并候选的可用数目来决定子组尺寸。
i.在一个示例中,如果N小于M并且大于Q,则子组尺寸被设置为N;
ii.在一个示例中,如果N小于或等于Q,则不执行重排序;
iii.在一个示例中,如果N大于或等于M,则子组尺寸被设置为M。
iv.在一个示例中,M和Q分别被设置为等于5和1。
(i)备选地,M和/或Q可以是预定义的,通过信号传输的,或者根据解码的信息导出的。
b.在一个示例中,根据表示为N的相邻空间和时间合并候选的可用数目来决定子组尺寸。
i.在一个示例中,如果N小于M并且大于Q,则子组尺寸被设置为N;
ii.在一个示例中,如果N小于或等于Q,则不执行重排序;
iii.在一个示例中,如果N大于或等于M,则子组尺寸被设置为M。
iv.在一个示例中,M和Q分别被设置为等于5和1。
7.模板形状可以是自适应的。
a.在一个示例中,模板可以仅包括留给当前块的相邻样本。
b.在一个示例中,模板可以仅包括当前块上方的相邻样本。
c.在一个示例中,根据CU形状来选择模板形状。
d.在一个示例中,根据CU高度来选择左侧模板的宽度。
i.例如,如果H<=M,则左模板尺寸为w1xH;否则,左侧模板尺寸为w2xH。
e.在一个示例中,M、w1和w2分别被设置为等于8、1和2。
f.在一个示例中,根据CU宽度来选择上方模板的高度。
i.例如,如果W<=N,则上方模板尺寸为Wxh1;否则,上方模板尺寸为Wxh2。
(i)在一个示例中,N、h1和h2分别被设置为等于8、1和2。
g.在一个示例中,根据CU宽度来选择左模板的宽度。
i.例如,如果W<=N,则左模板尺寸为w1xH;否则,左侧模板尺寸为w2xH。
(i)在一个示例中,N、w1和w2分别被设置为等于8、1和2。
h.在一个示例中,根据CU高度来选择上方模板的高度。
i.例如,如果H<=M,则上方模板尺寸为Wxh1;否则,上方模板尺寸为Wxh2。
(i)在一个示例中,M、h1和h2分别被设置为等于8、1和2。
i.在一个示例中,模板的样本和模板样本的参考样本可以在用于计算成本之前进行二次采样或下采样。
i.是否进行和/或如何进行二次采样可以取决于CU尺寸。
ii.在一个示例中,不对CU的短边执行二次采样。
8.在以上示例中,合并候选是包括在最终合并候选列表中的一个候选(例如,在修剪之后)。
a.备选地,合并候选是从给定的空间或时间块或HMVP列表导出的一个候选,或者以其他方式导出,即使它可以不包括在最终合并候选列表中。
9.模板可以包括特定颜色成分的样本。
a.在一个示例中,模板仅包括亮度分量的样本。
10.是否应用自适应合并候选列表重排序可以取决于在VPS/SPS/PPS/序列头/图片头/条带头/CTU/CU中通过信号传输的消息。它也可以是基于信号的区域。例如,将图片均匀地或不均匀地分为CTU/CU的组,并且为每个组编解码一个标志以指示是否应用合并候选列表重排序。
2.22 PCT/CN2021/086213中提出的自适应运动候选列表
1.可以根据一个或一些准则自适应地重排列块的运动候选列表中的运动候选,以导出重排序的运动候选列表,并且根据重排序的运动候选列表对块进行编码/解码。
a.可以根据一个或一些准则自适应地重排列不是常规合并候选列表的块的运动候选列表中的运动候选,以导出重排序的运动候选列表。
b.在一个示例中,是否和/或如何对运动候选进行重排序可以取决于编解码模式(例如,仿射合并、仿射AMVP、规则合并、常规AMVP、GPM、TPM、MMVD、TM合并、CIIP、GMVD、仿射MMVD)。
c.在一个示例中,是否和/或如何对运动候选进行重排序可以取决于运动候选的类别(例如,空间、时间、STMVP、HMVP、成对、SbTMVP、构建仿射、继承仿射)。
d.在一个示例中,运动候选列表可以是AMVP候选列表。
e.在一个示例中,运动候选列表可以是合并候选列表。
f.在一个示例中,运动候选列表可以是仿射合并候选列表。
g.在一个示例中,运动候选列表可以是基于子块的合并候选列表。
h.在一个示例中,运动候选列表可以是GPM合并候选列表。
i.在一个示例中,运动候选列表可以是TPM合并候选列表。
j.在一个示例中,运动候选列表可以是TM合并候选列表。
k.在一个示例中,运动候选列表可以是MMVD编解码块的候选列表。
l.在一个示例中,运动候选列表可以是DMVR编解码块的候选列表。
2.如何自适应地重排列运动候选列表中的运动候选可以取决于解码的信息,例如,运动候选的类别、运动候选列表的类别、编解码工具。
a.在一个示例中,对于不同的运动候选列表,可以使用不同的标准来重排列运动候选列表。
i.在一个示例中,标准可以包括如何选择模板。
ii.在一个示例中,标准可以包括如何计算模板成本。
iii.在一个示例中,标准可以包括候选列表中有多少候选和/或有多少子组需要重排序。
b.在一个示例中,首先自适应地重排列运动候选列表中的运动候选以构建完全重排列的候选列表或部分重排列的候选列表,然后从重排列的候选列表中检索由至少一个索引指示的至少一个运动候选以导出将由当前块使用的最终运动信息。
c.在一个示例中,首先自适应地重排列细化之前的运动候选(例如,对TM编解码块使用TM;对MMVD编解码块添加MVD),以构建完全重排列的候选列表或部分重排列的候选列表。然后,从重排列的候选列表中检索由至少一个索引指示的至少一个运动候选,并且将细化(例如,对TM编解码的块使用TM;对MMVD编解码的块添加MVD)应用于所检索的运动候选,以导出当前块的最终运动信息。
d.在一个示例中,对运动候选列表中的至少一个运动候选应用细化(例如,对TM编解码块使用TM;对MMVD编解码块添加MVD),然后自适应地重排列它们以构建完全重排列的候选列表或部分重排列的候选列表,然后从重排列的候选列表中检索由至少一个索引指示的至少一个运动候选,以在没有针对当前块的任何进一步细化的情况下导出最终的运动信息。
3.在一个示例中,可以基于候选重排序来生成新的MERGE/AMVP运动候选。
i.例如,可以分别对候选的L0运动和L1运动进行重排序。
ii.例如,可以通过组合来自重排序的L0运动的一个和来自重排序L1运动的另一个来构建新的双向预测合并候选。
iii.例如,可以通过重排序的L0或L1运动来生成新的单向预测合并候选。
2.23 PCT/CN2021/086216中提出的自适应运动候选列表
对于子块运动预测,如果子块尺寸是Wsub*Hsub,上方模板的高度是Ht,左模板的宽度是Wt,则上方模板可以被视为具有Wsub*Ht尺寸的若干子模板的构成,左模板可以被视为具有Wt*Hsub尺寸的若干个子模板的构成。在以上述类似的方式导出每个子模板的参考样本之后,导出该模板的参考样本。两个示例如图34和图35所示。
需要注意的是,以下提及的术语不限于现有标准中定义的特定术语。编解码工具的任何变化也适用。例如,术语“GPM”用于表示导出两组运动信息并使用导出的信息和分割样式来获得最终预测的任何编解码工具,例如,TPM也被视为GPM。
注意,所提出的方法可以应用于帧间编解码块(例如,平移运动)、仿射编解码块或IBC编解码块的合并候选列表构建过程;或者其他运动候选列表构建过程(例如正常AMVP列表、仿射AMVP列表和IBC AMVP列表)。
W和H是当前块(例如亮度块)的宽度和高度。
1.在一个示例中,如果编解码模式是TM合并,则可以对部分或全部TM合并候选进行重排序。
a.在一个示例中,如果编解码模式是TM合并,则可以在TM细化过程之前对部分或全部原始TM合并候选进行重排序。
b.备选地,如果编解码模式是TM合并,则可以在TM细化处理之后对部分或全部细化的TM合并候选进行重排序。
c.备选地,如果编解码模式是TM合并,则TM合并候选可以不被重排序。
d.备选地,对于TM合并模式和其他合并模式,重排序方法可以不同。
2.在一个示例中,如果编解码模式是基于子块的合并模式,则可以对基于部分或全部子块的候选合并进行重排序。
a.备选地,对于基于子块的合并模式和其他合并模式,重排序方法可以不同。
b.在一个示例中,模板可以被分为子模板。每个子模板可以具有个体运动信息。
i.在一个示例中,可以基于每个子模板的成本来导出用于重排序候选的成本。例如,用于重排序候选的成本可以计算为所有子模板的成本之和。例如,子模板的成本可以计算为SAD、SATD、SSD或子模板与其对应的参考子模板之间的任何其他失真测量。
c.在一个示例中,为了导出子模板的参考样本,可以使用当前块的第一行和第一列中的子块的运动信息。
i.在一个示例中,子模板的运动信息可以从当前块中的其相邻子块导出(例如,复制)。示例如图37所示。
d.在一个示例中,为了导出子模板的参考样本,可以在不参考当前块中的子块的运动信息的情况下导出该子模板的运动信息。示例如图38所示。
i.在一个示例中,根据当前块的仿射模型来计算每个子模板的运动信息。
(i)在一个示例中,包含根据当前块的仿射模型计算的子模板的每个子块的中心样本的运动矢量被视为子模板的运动矢量。
(ii)在一个示例中,根据当前块的仿射模型计算的每个子模板的中心样本的运动矢量被视为子模板的运动矢量。
(iii)对于4参数仿射运动模型,块中采样位置(x,y)处的运动矢量导出为:
(iv)对于6参数仿射运动模型,块中采样位置(x,y)处的运动矢量导出为:
(v)对于(iii)和(iv),当前块的左上角、右上角和左下角的坐标是(0,0)、(W,0)和(0,H),当前块的左上、右上和左下角的运动矢量是(mv0x,mv0y)、(mv1x,mv1y)和(mv2x,mv2y)。
(vi)在一个示例中,可以将上述等式中的坐标(x,y)设置为等于模板中的位置或子模板的位置。例如,坐标(x,y)可以被设置为等于子模板的中心位置。
e.在一个示例中,该方案可以应用于仿射合并候选。
f.在一个示例中,该方案可以应用于仿射AMVP候选。
g.在一个示例中,该方案可以应用于SbTMVP合并候选。
h.在一个示例中,该方案可以应用于GPM合并候选。
i.在一个示例中,该方案可以应用于TPM合并候选。
j.在一个例子中,该方案可以应用于TM细化合并候选。
k.在一个示例中,该方案可以应用于DMVR细化合并候选。
l.在一个示例中,该方案可以应用于MULTI_PASS_DMVR细化合并候选。
3.在一个示例中,如果编解码模式是MMVD,则用于导出基础合并候选的合并候选可以被重排序。
a.在一个示例中,可以在合并候选由通过信号传输或导出的MVD细化之前,对合并候选应用重排序过程。
b.例如,对于MMVD模式和其他合并模式,重排序方法可以不同。
4.在一个示例中,如果编解码模式是MMVD,则可以对MMVD细化之后的合并候选进行重排序。
a.在一个示例中,可以在合并候选由通过信号传输或导出的MVD细化之后,对合并候选应用重排序过程。
b.例如,对于MMVD模式和其他合并模式,重排序方法可以不同。
5.在一个示例中,如果编解码模式是仿射MMVD,则可以对导出基础合并候选的合并候选进行重排序。
a.在一个示例中,可以在仿射合并候选被通过信号传输或导出的MVD细化之前,对合并候选应用重排序过程。
b.例如,对于仿射MMVD模式和其他合并模式,重排序方法可以不同。
6.在一个示例中,如果编解码模式是仿射MMVD,则可以对仿射MMVD细化之后的合并候选进行重排序。
a.在一个示例中,可以在合并候选由通过信号传输或导出的MVD细化之后,对仿射合并候选应用重排序过程。
b.例如,对于仿射MMVD模式和其他合并模式,重排序方法可以不同。
7.在一个示例中,如果编解码模式是GMVD,则用于导出基础合并候选的合并候选可以被重排序。
a.在一个示例中,可以在合并候选由通过信号传输或导出的MVD细化之前,对合并候选应用重排序过程。
b.例如,对于GMVD模式和其他合并模式,重排序方法可以不同。
8.在一个示例中,如果编解码模式是GMVD,则可以对GMVD细化之后的合并候选进行重排序。
a.在一个示例中,可以在合并候选由通过信号传输或导出的MVD细化之后,对合并候选应用重排序过程。
b.例如,对于GMVD模式和其他合并模式,重排序方法可以不同。
9.在一个示例中,如果编解码模式是GPM,则可以对合并候选进行重排序。
a.在一个示例中,在合并候选被用于导出每个划分的GPM候选列表(也称为GPM的单向预测候选列表)之前,可以对原始合并候选应用重排序过程。
b.在一个示例中,如果编解码模式是GPM,则可以对单向预测候选列表中的合并候选进行重排序。
c.在一个示例中,可以基于重排序来构建GPM单向预测候选列表。
i.在一个示例中,具有双向预测的候选(也称为双向预测候选)可以被分离为两个单向预测候选。
(i)如果原始合并候选的数目是M,则最多可以从它们中分离出2M个单向预测候选。
ii.在一个示例中,从双向预测候选分离的单向预测候选可以被放入初始单向预测候选列表中。
iii.在一个示例中,可以利用模板匹配成本对初始单向预测候选列表中的候选进行重排序。
iv.在一个示例中,具有较小模板匹配成本的前N个单向预测候选可以用作最终GPM单向预测候选。例如,N等于M。
d.在一个示例中,在导出GPM单向预测候选列表之后,构建划分0和划分1的组合双向预测列表,然后对双向预测列表进行重排序。
i.在一个示例中,如果GPM单向预测候选的数目是M,则组合的双向预测候选的数目是M*(M-1)。
e.备选地,对于GPM模式和其他合并模式,重排序方法可以不同。
2.24 PCT/CN2021/086215中提出的自适应运动候选列表
需要注意的是,以下提及的术语不限于现有标准中定义的特定术语。编解码工具的任何变化也适用。例如,术语“GPM”用于表示导出两组运动信息并使用导出的信息和划分样式来获得最终预测的任何编解码工具,例如,TPM也被视为GPM。
注意,所提出的方法可以应用于帧间编解码块(例如,平移运动)、仿射编解码块或IBC编解码块的合并候选列表构建过程;或者其他运动候选列表构建过程(例如正常AMVP列表、仿射AMVP列表和IBC AMVP列表)。
W和H是当前块(例如亮度块)的宽度和高度。
1.用于双向预测的模板或子模板的参考样本(RT)是通过对参考列表0中的模板或子模板的参考样本(RT0)和参考列表1中的模板或子模板的参考样本(RT1)进行相等地加权平均得出的。
一个示例如下:
RT(x,y)=(RT0(x,y)+RT1(x,y)+1)>>1
2.用于双向预测的模板或子模板的参考样本(RT)是通过对参考列表0中的模板或子模板的参考样本(RT0)和参考列表1中的模板或子模板的参考样本(RT1)进行加权平均得出的。
a.一个示例如下:
RT(x,y)=((2N-w)*RT0(x,y)+w*RT1(x,y)+2N-1)>>N,例如,N=3.
b.权重可以由BCW索引确定,也可以被即时推导或预定义或者由加权预测中使用的权重来确定。
c.在一个示例中,参考列表0中诸如(8-w)的参考模板的权重和参考列表1中诸如(w)的参考模板的权重可能由合并候选的BCW索引决定。
i.在一个示例中,BCW索引等于0,w被设置为-2。
ii.在一个示例中,BCW索引等于1,w被设置为3。
iii.在一个示例中,BCW索引等于2,w被设置为4。
iv.在一个示例中,BCW索引等于3,w被设置为5。
v.在一个示例中,BCW索引等于4,w被设置为-10。
3.提出了利用LIC方法导出模板的参考样本。
a.在一个示例中,左侧模板和上方模板的LIC参数与当前块的LIC参数相同。
b.在一个示例中,左侧模板的LIC参数被导出为当前块的LIC参数,其使用其原始运动矢量加上运动矢量偏移量(-Wt,0)作为当前块的运动矢量。
c.在一个示例中,上方模板的LIC参数被导出为当前块的LIC参数,其使用其原始运动矢量加上运动矢量偏移量(0,-Ht)作为当前块的运动矢量。
d.备选地或附加地,如果合并候选的局部照明补偿(LIC)标志为真,则可以应用上述方法
4.提出了利用OBMC方法导出模板或子模板的参考样本。在下面的讨论中,“模板”可能指模板或子模板。
a.在一个示例中,为了导出上方模板的参考样本,使用当前块的第一行中的子块及其上方相邻的邻近子块的运动信息。所有子模板的参考样本构成上方模板的参考样本。一个示例如图39所示。
b.在一个示例中,为了导出左侧模板的参考样本,使用当前块第一列中的子块及其左侧相邻的邻近子块的运动信息。并且所有子模板的参考样本构成左测模板的参考样本。一个示例如图39所示。
c.在一个示例中,子块尺寸为4x4。
d.基于邻近子块的运动矢量的子模板的参考样本表示为PN,其中N表示邻近的上方和左侧子块的索引,基于当前块的子块的运动矢量的子模板的参考样本表示为PC。对于基于垂直(水平)相邻子块的运动矢量生成的PN,PN的同一行(列)中的样本以相同的加权因子添加到PC
i.子模板的参考样本(P)可以导出为P=WN*PN+WC*PC
ii.在一个示例中,如果上方模板的高度或左侧模板的宽度大于或等于4,则权重因子{1/4、1/8、1/16、1/32}用于PN的{第一、第二、第三、第四}行(列),并且权重因子{3/4、7/8、15/16、31/32}用于PC的{第一、第二、第三、第四}行(列)。
iii.在一个示例中,如果上方模板的高度或左侧模板的宽度大于或等于2,则加权因子{1/4,1/8}用于PN的{第一、第二}行(列),加权因子{3/4,7/8}用于PC的{第一、第二}行(列)。
iv.在一个示例中,如果上方模板的高度或左侧模板的宽度大于或等于1,则加权因子{1/4}用于PN的第一行(列),加权因子{3/4}用于PC的第一行(列)。
e.如果在启用OBMC的情况下分配了合并候选,则可以应用上述方法。
5.在一个示例中,如果合并候选使用多假设预测,则可以使用多假设预测方法导出模板的参考样本。
6.模板可以包括(多个)特定颜色分量的样本。
a.在一个示例中,模板仅包括亮度分量的样本。
b.备选地,模板仅包括任何分量的样本,例如Cb/Cr/R/G/B。
7.是否和/或如何重排序运动候选可以取决于运动候选的类别。
a.在一个示例中,只有相邻的空间运动候选和时间运动候选可以被重排序。
b.在一个示例中,只有相邻的空间运动候选、STMVP和相邻的时间运动候选可以被重排序。
c.在一个示例中,只有相邻的空间运动候选、STMVP、相邻的时间运动候选和非相邻的空间运动候选可以被重排序。
d.在一个示例中,只有相邻的空间运动候选、STMVP、相邻的时间运动候选、非相邻的空间运动候选和HMVP可以被重排序。
e.在一个示例中,只有相邻的空间运动候选、STMVP、相邻的时间运动候选、非相邻的空间运动候选、HMVP和成对平均运动候选可以被重排序。
f.在一个示例中,只有相邻的空间运动候选、相邻的时间运动候选、HMVP和成对平均运动候选可以被重排序。
g.在一个示例中,只有相邻的空间运动候选、相邻的时间运动候选和HMVP可以被重排序。
h.在一个示例中,只有相邻的空间运动候选可以被重排序。
i.在一个示例中,基于单向预测子块的运动候选不被重排序。
j.在一个示例中,SbTMVP候选不被重排序。
k.在一个示例中,继承仿射运动候选不被重排序。
l.在一个示例中,重建仿射运动候选不被重排序。
m.在一个示例中,补零的仿射运动候选不被重排序。
n.在一个示例中,仅前N个运动候选可以被重排序。
i.在一个示例中,N被设置为等于5。
8.在一个示例中,运动候选可以被分为多个子组。是否和/或如何对运动候选进行重排序可以取决于运动候选的子组。
a.在一个示例中,只有第一个子组可以被重排序。
b.在一个示例中,最后的子组可能无法重排序。
c.在一个示例中,最后的子组可能无法重排序。但如果最后的子组也是第一个子组,则可以对其进行重排序。
d.不同的子组可以单独重排序。
e.不同子组中的两个候选不能进行比较和/或重排序。
f.如果第一子组在第二子组之前,则在重排序之后,第一子组中的第一候选需要放在第二子组中的第二候选之前。
9.在一个示例中,可以以指定的方式处理未包括在重排序过程中的运动候选。
a.在一个示例中,对于不被重排序的候选,它们将根据初始顺序排列在合并候选列表中。
b.在一个示例中,未被重排序的候选可以被置于待重排序的候选之后。
c.在一个示例中,未被重排序的候选可以被置于待重排序的候选之前。
10.是否应用自适应合并候选列表重排序可以取决于在VPS/SPS/PPS/序列头/图片头/条带头/CTU/CU中通过信号传输的消息。它也可以是基于信令的区域。例如,将图片均匀地或不均匀地划分为CTU/CU的组,并且为每个组编解码一个标志以指示是否应用合并候选列表重排序。
2.25在PCT/CN2021/098268的图像/视频编解码中的编解码数据细化中利用的成本函数
术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、CU、PU、TU、PB、TB或包括多个样本/像素的视频处理单元,块可以是矩形或非矩形。
在本公开中,短语“运动候选”可以表示由合并候选索引指示的常规/扩展合并列表中的合并运动候选,或者由AMVP候选索引指示的常规/扩展AMVP列表中的AMVP运动候选,或者一个AMVP运动候选,或者一个合并运动候选。
在本公开中,如果候选的运动信息根据从编码器发出的信号或在解码器处导出的信息被修改,则运动候选被称为“细化”。例如,运动矢量可以通过DMVR、FRUC、TM合并、TMAMVP、TM GPM、TM CIIP、TM仿射、MMVD、GMVD、仿射MMVD、BDOF等来细化。
在本公开中,短语“编解码数据细化”可以表示细化过程,以便导出或细化针对块的信号/解码/导出的预测模式、预测方向或信号/解码/导出的运动信息、预测和/或重建样本。在一个示例中,细化过程可以包括运动候选重排序。
在以下讨论中,“基于模板编解码的”块可以指在编码/解码过程中使用基于模板匹配的方法来导出或细化编解码信息的块,诸如基于模板匹配的运动推导、基于模板匹配的运动列表重建、LIC、符号预测、基于模板匹配的块矢量(例如,在IBC模式中使用)推导、DIMD、基于模板匹配的非帧间(例如,帧内)预测等。基于模板编解码的方法可以与任何其它编解码工具结合,诸如MMVD、CIIP、GPM、FRUC、仿射、BDOF、DMVR、OBMC等。在又一示例中,“基于模板编解码的”块还可以指代基于某个规则适用邻近重建样本(相邻或非相邻)导出或者细化器解码信息的块,例如2.27中的DIMD方法和2.29中的TIMD方法。
在下面的讨论中,“基于双边编解码的”块可以指在编码/解码过程中使用基于双边匹配的方法来导出或细化编解码信息的块,例如基于双边匹配的运动导出、基于双边匹配的运动列表重建等。基于双边编解码的方法可以与任何其他编解码工具结合,例如MMVD、CIIP、GPM、FRUC、仿射、DMVR等。
W和H是当前块(例如亮度块)的宽度和高度。W*H是当前块(例如亮度块)的尺寸
在下面的讨论中,Shift(x,s)被定义为
Shift(x,s)=(x+offset)>>s,其中偏移量(offset)是整数,例如offset=0或偏offset=1<<(s-1)或offset=(1<<(s-1))-1。
在另一示例中,offset取决于x。例如,offset=(x<0?(1<<(s-1)):((1<<(s-1)–1)。
1.除了误差测量外,提出了在成本计算过程中增加常规项。
a)在一个示例中,成本被定义为:E+W*RI,其中E表示误差函数的输出,W是被施加到由RI表示的常规项的权重。
i.在一个示例中,为了处理基于模板编解码的块/基于双边编解码的块,成本函数被设置为:E+W*RI,其中,E可以是SAD/MRSAD/SATD或者其他,RI是真的运动矢量/运动示例差异的估计位,W是权重,例如,其可以依赖于QP/时间层等。
ii.备选地,成本可以定义为:w0*E+W1*RI,其中E表示误差函数的输出,W1是被施加到由RI表示的常规项的权重,w0是被施加到误差函数的输出的权重。
(i)替代地或附加地,W1可以被设置为0。
b)在一个示例中,常规项可以被乘以权重率。
i.在一个示例中,权重是即时得出的。
ii.在一个示例中,权重设置为在完整RDO过程中使用的lambda
iii.在一个示例中,权重设置为完整RDO过程中使用的lambda的平方根。
c)在一个示例中,成本被计算为E+Shift(W*RI,s),其中s和W是整数。
i.备选地,成本被计算为Shift((E<<s)+W*RI,s),其中s和W是整数。
2.提出了使用不同于SAD/MR-SAD(均值移除的绝对差总和)的误差函数来处理基于模板编解码的块/基于双边编解码的块。
a)在一个示例中,误差函数可以是
i.SATD
ii.MR-SATD
iii.梯度信息
iv.SSE/SSD
v.MR-SSE/MR-SSD
vi.加权SAD/加权MR-SAD
vii.加权SATD/加权MR-SATD
viii.加权SSD/加权MR-SSD
ix.加权SSE/加权MR-SSE
b)替代地或附加地,提出了在诸如上述误差函数和SAD/MR-SAD等不同成本函数中自适应选择误差函数的方法。
i.选择可以即时确定。
3.当使用基于MR-X(例如,X是SATD、SAD、SSE)的误差函数(例如,MR-SAD/MR-SATD等等)时,可以进一步应用以下内容:
a)在一个示例中,可以在考虑要比较的块中的所有样本的情况下计算均值。
b)在一个示例中,可以使用要考虑比较的块中的部分样本来计算均值。
c)在一个示例中,均值和X函数可以依赖于块中的相同样本。
i.在一个示例中,可以使用块中的所有样本计算均值和X函数。
ii.在一个示例中,可以使用块中的部分样本来计算均值和X函数。
d)在一个示例中,均值和X函数可以取决于块中的至少一个不同样本。
i.在一个示例中,均值可以使用所有样本计算,而X函数可以取决于块中的部分样本。
ii.在一个示例中,均值可以使用部分样本计算,而X函数可以取决于块中的所有样本。
4.模板/双边匹配成本可以通过将成本因子应用于误差成本函数来计算。
a)在一个示例中,提出了在基于模板/双边匹配的重排序过程期间偏向前方的运动候选。
i.在一个示例中,第i个位置中的运动候选被分配有比第(i+1)个位置中的运动候选的成本因子更小的成本因子。
ii.在一个示例中,第i组中的运动候选(例如涉及M个运动候选)被分配有比第(i+1)个组中的运动候选(例如涉及N个运动候选)的成本因子更小的成本因子。
(i)在一个示例中,M可以等于N。例如,M=N=2。
(ii)在一个示例中,M可能不等于N。例如,M=2,N=3。
b)在一个示例中,提出了在基于模板/双边匹配的细化过程中倾向更接近原始MV的搜索MV。
i.在一个示例中,每个搜索区域被分配有成本因子,其可以由搜索区域中的每个搜索MV与起始MV之间的距离(例如以整数像素精度MV的增量)来确定。
ii.在一个示例中,每个搜索区域被分配有成本因子,其可以由搜索区域中的中心搜索MV和起始MV之间的距离(例如以整数像素精度MV的增量)来确定。
iii.在一个示例中,每个搜索MV被分配有成本因子,其可以由每个搜索MV和起始MV之间的距离(例如以整数像素精度MV的增量)确定。
5.上述方法可以应用于任何编解码数据细化过程,例如,对于基于模板编解码的块,对于基于双边编解码的块(例如VVC中的DMVR)。
6.对于不同的模板匹配细化方法,模板匹配成本测量可能不同。
a.在一个示例中,模板匹配细化方法可以是基于模板匹配的运动候选重排序。
b.在一个示例中,模板匹配细化方法可以是基于模板匹配的运动推导。
i.在一个示例中,细化方法可以TM AMVP、TM合并和/或FRUC。
c.在一个示例中,模板匹配细化方法可以是基于模板匹配的运动细化。
ii.在一个实例中,细化方法可以是TM GPM、TM CIIP和/或TM仿射。
d.在一个示例中,模板匹配细化方法可以是基于模板匹配的块矢量推导。
e.在一个示例中,模板匹配细化方法可以是基于模板匹配的帧内模式推导。
iii.在一个示例中,细化方法可以是DIMD和/或TIMD。
f.在一个示例中,可以基于当前模板与参考模板之间的绝对差总和(SAD)来计算模板匹配成本测量。
g.在一个示例中,可以基于当前模板与参考模板之间的均值移除的SAD来计算模板匹配成本测量。
h.在一个示例中,SAD与均值移除SAD(MR-SAD)可以根据当前块的尺寸被选择性地利用。
i.在一个实例中,均值移除SAD用于尺寸大于M的块,SAD用于尺寸小于或等于M的块。
(i)在一个示例中,M是64。
i.在一个示例中,SAD和均值移除SAD(MR-SAD)可以根据当前块的LIC标志被选择性地利用。
i.在一个示例中,如果当前块的LIC标志为假,则模板匹配成本测量可以是SAD。
ii.在一个示例中,如果当前块的LIC标志为真,则模板匹配成本测量可以是MR-SAD。
j.在一个示例中,可以基于当前模板与参考模板之间的绝对变换差异之和(SATD)来计算模板匹配成本测量。
k.在一个示例中,可以基于当前模板与参考模板之间的均值移除SATD来计算模板匹配成本测量。
l.在一个示例中,SATD与均值移除SATD(MR-SATD)可以根据当前块的尺寸被选择性地利用。
i.在一个示例中,均值移除SATD用于尺寸大于M的块,并且SATD用于尺寸小于或等于M的块。
(i)在一个示例中,M是64。
m.在一个示例中,SATD与均值移除SATD(MR-SATD)可以根据当前块的LIC标志被选择性地利用。
i.在一个示例中,如果当前块的LIC标志为假,则模板匹配成本测量可以是SATD。
ii.在一个示例中,如果当前块的LIC标志为真,则模
板匹配成本测量可以MR-SATD。
n.在一个示例中,可以基于当前模板与参考模板之间的平方差总和(SSD)来计算模板匹配成本测量。
o.在一个示例中,可以基于当前模板与参考模板之间的均值移除SSD来计算模板匹配成本测量。
p.在一个示例中,SSD与均值移除SSD(MR-SSD)可以根据当前块的尺寸被选择性地利用。
i.在一个实例中,均值移除SSD用于尺寸大于M的块,SSD用于尺寸小于或等于M的块。
(i)在一个示例中,M是64。
q.在一个示例中,模板匹配成本测量可以是当前模板与参考模板之间的加权SAD/加权MR-SAD/选择性加权MR-SAD和SAD/加权SATD/加权MR-SATD/选择性加权MR-SATD和SATD/加权SSD/加权MR-SSD/选择性加权MR-SSD和SSD。
i.在一个示例中,加权意味着在计算当前模板与参考模板之间的失真时,基于其在模板块中的行和列索引对每个样本应用不同的权重。
ii.在一个示例中,加权意味着在计算当前模板与参考模板之间的失真时,基于其在模板块中的位置对每个样本应用不同的权重。
iii.在一个示例中,加权意味着在计算当前模板与参考模板之间的失真时,根据每个样本到当前块的距离对其应用不同的权重。
r.在一个示例中,模板匹配成本可以被计算为如下形式:
tplCost=w1*mvDistanceCost+w2*distortionCost。
i.在一个示例中,distortionCost可以是当前模板与参考模板之间的加权SAD/加权MR-SAD/加权SATD/加权MR-SATD/加权SSD/加权MR-SSD/SAD/MR-SAD/SATD/MR-SATD/SSD/MR-SSD。
ii.在一个示例中,mvDistanceCost可以是在水平方向与垂直方向的搜索点与起始点的绝对mv差总和。
iii.在一个示例中,w1和w2可以是预定的、或者用信号传输的或者根据解码信息导出的。
(i)在一个示例中,w1是设置为4的加权因子,w2是设置为1的加权因子
s.除了(f)中计算的SAD外,成本还可以考虑参考模板同与当前模板相邻邻近或非相邻邻近的重建样本之间的连续性(Boundary_SAD)。例如,考虑邻近当前样本的左侧和/或上方相邻或非相邻的重建样本。
i.在一个示例中,成本可以基于SAD与Boundary_SAD来计算
(i)在一个示例中,成本可以倍计算为(SAD+w*Boundary_SAD)。w可以是预定的、或信号传输的或者根据解码信息得出的。
7.对于不同的双边匹配细化方法,双边匹配成本测量可以不同。
a)在一个示例中,双边匹配细化方法可以是基于双边匹配的运动候选重排序。
b)在一个示例中,双边匹配细化方法可以是基于双边匹配的运动推导。
i.在一个示例中,细化方法可以是BM合并和/或FRUC。
c)在一个示例中,双边匹配细化方法可以是基于双边匹配的运动细化。
i.在一个实例中,细化方法可以是BM GPM、BMCIIP和/或BM仿射。
d)在一个示例中,双边匹配细化方法可以是基于双边匹配的块矢量推导。
e)在一个示例中,双边匹配细化方法可以是基于双边匹配的帧内模式推导。
f)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的绝对差总和(SAD)来计算。
g)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的均值移除SAD来计算。
h)在一个示例中,SAD与均值移除SAD(MR-SAD)可以根据当前块/子块的尺寸被选择性地利用。
i.在一个示例中,均值移除SAD用于尺寸大于M的块/子块,SAD用于尺寸小于或等于M的块/子块。
(i)在一个示例中,M是64。
i)在一个示例中,SAD与均值移除SAD(MR-SAD)可以根据当前块的LIC标志被选择性地利用。
i.在一个示例中,如果当前块的LIC标志为假,则双边匹配成本测量可以是SAD。
ii.在一个示例中,如果当前块的LIC标志为真,则双边匹配成本测量可以是MR-SAD。
j)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的绝对变换差总和(SATD)来计算。
k)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的均值移除SATD来计算。
l)在一个示例中,SATD和均值移除SATD(MR-SATD)可以根据当前块/子块的尺寸被选择性地利用。
i.在一个示例中,均值移除SATD用于尺寸大于M的块/子块,并且SATD用于尺寸小于或等于M的块/子块。
(i)在一个示例中,M是64。
m)在一个示例中,SATD与均值移除SATD(MR-SATD)可以根据当前块的LIC标志被选择性地利用。
i.在一个示例中,如果当前块的LIC标志为假,则双边匹配成本测量可以是SATD。
ii.在一个示例中,如果当前块的LIC标志为真,则双边匹配成本测量可以是MR-SATD。
n)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的平方差总和(SSD)来计算。
o)在一个示例中,双边匹配成本测量可以基于两个参考块/子块之间的均值移除SSD来计算。
p)在一个示例中,SSD与均值移除SSD(MR-SSD)可以根据当前块/子块的尺寸被选择性地利用。
i.在一个示例中,均值移除SSD用于尺寸大于M的块/子块,SSD用于尺寸小于或等于M的块/子块。
(i)在一个示例中,M是64。
q)在一个示例中,SSD与均值移除SSD(MR-SSD)可以根据当前块的LIC标志被选择性地利用。
i.在一个示例中,如果当前块的LIC标志为假,则双边匹配成本测量可以是SSD。
ii.在一个示例中,如果当前块的LIC标志为真,则双边匹配成本测量可以是MR-SSD。
r)在一个实例中,双边匹配成本度量可以是两个参考块/子块之间的加权SAD/加权MR-SAD/选择性加权MR-SAD和SAD/加权SATD/加权MR-SATD/选择性加权MR-SATD和SATD/加权SSD/加权MR-SSD/选择性加权MR-SSD和SSD。
i.在一个示例中,加权意味着在计算两个参考块/子块之间的失真时,基于其在参考块/子块中的行和列索引对每个样本应用不同的权重。
ii.在一个示例中,加权意味着在计算两个参考块/子块之间的失真时,基于其在参考块/子块中的位置对每个样本应用不同的权重。
iii.在一个示例中,加权意味着在计算两个参考块/子块之间的失真时,根据其到参考块/子块的中心位置的距离对每个样本应用不同的权重。
s)在一个示例中,如果MR-SAD/MR-SATD/MR-SSD被用于双边匹配成本测量,则在导出参考块/子块时可以不使用LIC。
t)在一个示例中,双边匹配成本可以计算为如下形式:
bilCost=w1*mvDistanceCost+w2*distortionCost。
i.在一个示例中,distortionCost可以是两个参考块/子块之间的加权SAD/加MR-SAD/加SATD/加MR-SATD/加SSD/加MR-SSD/SAD/MR-SAD/SATD/MR-SATD/SSD/MR-SSD。
ii.在一个示例中,mvDistanceCost可以是水平方向和垂直方向上的搜索点与起始点的绝对mv差总和。
iii.在一个示例中,w1和w2可以是预定的、或者信号传输的、或者根据解码信息得出的。
(i)在一个示例中,w1是设置为4的加权因子,w2是设置为1的加权因子。
8.双边匹配成本或模板匹配成本可以基于由函数修改的预测/参考样本来计算。
a)在一个示例中,预测/参考样本可以在用于计算双边匹配成本或模板匹配成本之前被滤波。
b)在一个示例中,预测/参考样本S可以在用于计算双边匹配成本或模板匹配成本之前被修改为a*S+b。
c)在一个示例中,修改可以取决于块的编解码模式,诸如块是LIC编解码的还是BCW编解码的。
2.26PCT/CN2021/098431中图像/视频编解码中的编解码数据细化中多种成本函数的使用
术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、CU、PU、TU、PB、TB或者包括多个样本/像素的视频处理单元。块可以是矩形或非矩形。
在本公开中,短语“运动候选”可以表示由合并候选索引指示的常规/扩展合并列表中的合并运动候选、或由AMVP候选索引指示的常规/扩展AMVP列表中的AMVP运动候选、或AMVP运动候选、或者合并运动候选。
在本公开中,如果候选的运动信息根据从编码器用信号传输的信息或在解码器处导出的信息被修改,则运动候选被称为“被细化”。例如,运动矢量可以通过DMVR、FRUC、TM合并、TM AMVP、TM GPM、TM CIIP、TM仿射(Affine)、MMVD、GMVD、仿射MMVD、BDOF等被细化。
在本公开中,短语“编解码数据细化”可以表示一种细化过程,其用于导出或细化针对块的通过信号传输的/经解码的/被导出的预测模式、预测方向、或通过信号传输的/经解码的/被导出的运动信息、预测和/或重建样本。在一个示例中,细化过程可以包括运动候选重排序。
在下面的讨论中,“基于模板编解码的”块可以指代在编解码/解码过程中使用基于模板匹配的方法以导出或细化编解码信息的块,基于模板匹配的方法诸如基于模板匹配的运动导出、基于模板匹配的运动列表重建、LIC、符号预测、(例如,在IBC模式中使用的)基于模板匹配的块矢量导出、DIMD、基于模板匹配的非帧间(例如,帧内)预测等。基于模板匹配的方法可以与任何其他编解码工具相结合,诸如MMVD、CIIP、GMP、FRUC、仿射、BDOF、DMVR、OBMC等。在另一示例中,“基于模板编解码的”块也可以指代基于某个规则使用(相邻或非相邻的)邻近重建样本导出或者细化其解码信息的块,诸如2.27中的DIMD方法以及2.29中的TIMD方法。
在下文的讨论中,“基于双边编解码的”块可以指代在编解码/解码过程中使用基于双边匹配的方法导出或者细化编解码信息的块,基于双边匹配的方法诸如基于双边匹配的运动导出、基于双边匹配的运动列表重建等。基于双边编解码的方法可以与任何其他编解码工具相结合,诸如MMVD、CIIP、GPM、FRUC、仿射、DMVR等。
W和H是当前块(例如,亮度块)的宽度和高度。W*H是当前块(例如,亮度块)的大小。
1.成本定义可以依赖于关于在当前块的一个编解码数据细化过程中待评估的两个样本/块的误差/差异的多个误差函数(例如,失真测量方法)的输出。
a)在一个示例中,误差函数可以是:
i.SAD
ii.SATD
iii.MR-SAD
iv.MR-SATD
v.梯度信息
vi.SSE/SSD
vii.MR-SSE/MR-SSD
viii.加权SAD/加权MR-SAD
ix.加权SATD/加权MR-SATD
x.加权SSD/加权MR-SSD
xi.加权SSE/加权MR-SSE
b)在一个示例中,误差函数可以在块级别或子块级别被执行。
i.备选地,此外,对于两个子块,误差函数可以不同。
ii.备选地,此外,块的评估误差的最终输出可以基于子块的输出,例如,应用于每个子块的误差函数的输出之和。
2.当成本定义依赖于多个函数的输出时,以下项可以进一步适用:
a)在一个示例中,成本函数可以依赖于多个误差函数的线性加权和。
b)在一个示例中,成本函数可以依赖于多个误差函数的非线性加权和。
c)在一个示例中,成本函数可以进一步依赖于针对边信息的估计比特。
d)在一个示例中,成本函数可以被定义为:
其中R表示针对边信息的估计比特,Wi和Ei分别表示应用于第i个误差函数的权重和第i个误差函数的输出。
3.多个细化过程可以应用于一个块,其中至少多于两个不同的成本函数被应用于至少两个细化过程。
a)在一个示例中,可以利用第一成本函数调用第一细化过程。基于第一细化过程的输出,第二成本函数进一步被应用于第二细化过程。
b)上述方法可以应用于基于模板编解码的块。
4.是否使用多个细化过程和/或如何选择一个或多个误差函数和/或如何定义成本函数和/或在误差函数中将涉及哪些样本可以取决于当前块的解码信息和/或当前块的邻近的(相邻的或不相邻的)块的解码信息。
a)在一个示例中,如何选择一个或多个误差函数和/或如何定义成本函数可以取决于应用于当前块和/或当前块的邻近块的编解码工具。
i.在一个示例中,编解码工具是LIC。
(i)在一个示例中,SSD和均值移除SSD(MR-SSD)可以根据当前块的LIC标志被选择性地利用。
a)在一个示例中,如果当前块的LIC标志为假,则模板匹配成本度量可以是SSD。
b)在一个示例中,如果当前块的LIC标志为真,则模板匹配成本度量可以是MR-SSD。
(ii)在一个示例中,如果MR-SAD/MR-SATD/MR-SSD被用于模板匹配成本度量,则在导出参考模板时可以不使用LIC过程中所使用的线性函数。
(iii)在一个示例中,如果MR-SAD/MR-SATD/MR-SSD被用于双边匹配成本度量,则在导出参考块时可以不使用在LIC过程中所使用的线性函数。
b)在一个示例中,其可以取决于块尺寸、时间层、低延迟检查标志,等等。
c)在一个示例中,其可以取决于当前块的运动信息与邻近块的运动信息是否相似/相同。
d)在一个示例中,其可以取决于参考图片列表和/或参考图片信息。
i.在一个示例中,对于列表X,可以使用第一误差函数(例如,SAD/SSE),并且对于列表Y(Y=1-X),可以使用第二误差函数(例如,MR-SAD/MR-SSE)。
ii.备选地,此外,最终成本可以基于每个参考图片列表的成本。
5.上述方法可以应用于任何编解码数据细化过程,例如,针对基于模板编解码的块,针对基于双边编解码的块(例如,VVC
中的DMVR)。
2.27 PCT/CN2021/098269中图像/视频编解码的编解码数据细化中使用的样本
术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、CU、PU、TU、PB、TB或者包括多个样本/像素的视频处理单元。块可以是矩形或非矩形。
在本公开中,短语“运动候选”可以表示由合并候选索引指示的常规/扩展合并列表中的合并运动候选、或由AMVP候选索引指示的常规/扩展AMVP列表中的AMVP运动候选、或AMVP运动候选、或者合并运动候选。
在本公开中,如果候选的运动信息根据从编码器用信号传输的或在解码器处导出的信息被修改,则运动候选被称为“被细化”。例如,运动矢量可以通过DMVR、FRUC、TM合并、TM AMVP、TM GPM、TM CIIP、TM仿射(Affine)、MMVD、GMVD、仿射MMVD、BDOF等被细化。
在本公开中,短语“编解码数据细化”可以表示细化过程,以便针对块导出或细化用信号传输/解码/导出的预测模式、预测方向或用信号传输/解码/导出的运动信息、预测和/或重建样本。在一个示例中,细化过程可以包括运动候选重排序。
在下面的讨论中,“基于模板编解码的”块可以指代在编解码/解码过程中使用基于模板匹配的方法以导出或细化编解码信息的块,基于模板匹配的方法诸如基于模板匹配的运动导出、基于模板匹配的运动列表重建、LIC、符号预测、(例如,在IBC模式中使用的)基于模板匹配的块矢量导出、DIMD、基于模板匹配的非帧间(例如,帧内)预测等。基于模板匹配的方法可以与任何其他编解码工具相结合,诸如MMVD、CIIP、GMP、FRUC、仿射、BDOF、DMVR、OBMC等。在另一示例中,“基于模板编解码的”块也可以指代基于某个规则使用(相邻或非相邻)邻近重建样本导出或者细化其解码信息的块,诸如2.27中的DIMD方法以及2.29中的TIMD方法。
在下文的讨论中,“基于双边编解码的”块可以指代在编解码/解码过程中使用基于双边匹配的方法导出或者细化编解码信息的块,基于双边匹配的方法诸如基于双边匹配的运动导出、基于双边匹配的运动列表重建等。基于双边编解码的方法可以与任何其他编解码工具相结合,诸如MMVD、CIIP、GPM、FRUC、仿射、DMVR等。
W和H是当前块(例如,亮度块)的宽度和高度。W*H是当前块(例如,亮度块)的尺寸。
1.在编解码数据细化过程中的误差/成本估计可以取决于对应于当前块的参考样本(例如,在双边匹配中使用的参考块)和对应于当前块的模板的参考样本两者。
a)备选地,它可以取决于对应于当前块的参考样本和当前块的模板中的样本两者。
b)在一个示例中,模板可以是当前块的邻近样本(相邻或非相邻)。
2.多个细化过程可以被应用与具有被应用于至少两个细化过程的不同的目标的一个块。
a)在一个示例中,第一细化过程可以涉及第一模板。基于第一细化过程的输出,第二模板在第二细化过程中被进一步利用。
b)在一个示例中,第一模板可以比第二模板包含更多的样本。
c)在一个示例中,第一模板和第二模板可以包含至少一个不同的样本。
d)在一个示例中,第一细化过程和第二细化过程可以使用不同的成本/误差函数。
3.是否使用多个细化过程,和/或如何选择一个或多个误差函数和/或如何定义成本函数和/或哪些样本要在误差函数中涉及可以取决于当前块的解码信息和/或邻近块(相邻或非相邻)的解码信息。
a)在一个示例中,如何选择一个或多个误差函数和/或如何定义成本函数可以取决于被应用于当前块和/或邻近块的编解码工具。
i.在一个示例中,编解码工具是LIC。
(i)在一个示例中,SSD以及均值移除SSD(MR-SSD)可以根据当前块的LIC标志被选择性地使用。
a)在一个示例中,如果当前块的LIC标志是假,则模板匹配成本测量可以是SSD。
b)在一个示例中,如果当前块的LIC标志是真,则模板匹配成本测量可以是MR-SSD。
(ii)在一个示例中,如果MR-SAD/MR-SATD/MR-SSD被用于模板匹配成本测量,则在导出参考模板时LIC过程中的线性函数可以不被使用。
(iii)在一个示例中,如果MR-SAD/MR-SATD/MR-SSD被用于双边匹配成本测量,则在导出参考模板时LIC过程中的线性函数可以不被使用。
b)在一个示例中,它可以取决于块尺寸(例如,W、H),时间层,低延迟检查标志,等等。
c)在一个示例中,它可以取决于当前块和邻近块的运动信息是否相似/相同。
d)在一个示例中,它可以取决于参考图片列表和/或参考图片信息。
i.在一个示例中,针对列表X,第一误差函数(例如,SAD/SSE)可以被使用,并且针对列表Y(Y=1-X),第二误差函数(例如,MR-SAD/MR-SSE)可以被使用。
ii.替代地或附加地,最终成本可以基于每个参考图片列表的成本。
4.在一个示例中,LIC可以针对参考列表X被启用并且针对参考列表Y被禁用。
a)在一个示例中,当前块的最终预测可以是来自参考列表X的
LIC预测与来自参考列表Y的常规预测的加权平均。
5.上述方法可以被应用与任何编解码数据细化过程,例如,用于基于模板编解码的块、用于基于双边编解码的块(例如,VVC中的DMVR)。
2.28 PCT/CN2021/100754中自适应运动候选列表
应注意,下文提及的术语不被限制为在已有标准中定义的具体术语。编解码工具的任意变形也适用。例如,术语“GPM”被用来表示导出两组运动信息并且使用导出的信息和划分模式来得到最终预测的任意编解码工具,例如,TPM也被看作GPM。
注意,所提出的方法可以被应用于针对帧间编解码块(例如,变换运动)、仿射编解码块、TM编解码块、或者IBC编解码块的合并候选列表构建过程或者其他运动候选列表构建过程(例如,正常AMVP列表、仿射(Affine)AMVP列表、IBC AMVP列表、HMVP表)。
除模板匹配成本之外的成本函数也适用于运动候选重排序。
W和H是当前块(例如,亮度块)的宽度和高度。
1.模板/双边匹配成本C在被用于与另一模板匹配成本进行比较之前可以被计算为f(C)。
a.在一个示例中,f(C)=w*C,其中w被表示为成本因子。
b.在一个示例中,f(C)=w*C+u。
c.在一个示例中,f(C)=Shift((w*C),s)。
d.在一个示例中,w和/或u和/或s是整数。
e.在一个示例中,针对第一运动候选的第一模板匹配成本可以在与针对第二运动候选的第二模板匹配成本进行比较之前乘以成本因子。
f.在一个示例中,提出了针对运动候选的成本因子可能取决于候选在重排序之前的位置。
i.在一个示例中,可以为第i位置处的运动候选分配比第j位置处的运动候选的成本因子更小的成本因子,其中j>i,例如j=i+1。
(i)在一个示例中,第i位置处的运动候选的成本因子为4,第j位置处的运动候选的成本因子为5。
(ii)在一个示例中,第i位置处的运动候选的成本因子为1,第j位置处的运动候选的成本因子为5。
ii.在一个示例中,可以为第i位置处的运动候选分配比第j位置处的运动候选的成本因子更大的成本因子,其中j>i,例如j=i+1。
iii.在一个示例中,第p组中的运动候选(例如包括M个运动候选)可以被分配比第q组中的运动候选(例如包括N个运动候选)的成本因子更小的成本因子,其中q>p,例如q=p+1。
(i)备选地,第p组中的运动候选(例如包括M个运动候选)可以被分配比第q组中的运动候选(例如包括N个运动候选)的成本因子更大的成本因子,其中q>p,例如q=p+1。
(ii)在一个示例中,M可以等于N。例如,M=N=2。
(iii)在一个示例中,M可能不等于N。例如,M=2,N=3。
(iv)在一个示例中,第p组的运动候选的成本因子为4,第q组的运动候选的成本因子为5。
(v)在一个示例中,第p组的运动候选的成本因子为1,第q组的运动候选的成本因子为5。
iv.在一个示例中,成本因子可以不应用于子块运动候选。
v.在一个示例中,成本因子可以不应用于仿射运动候选。
vi.在一个示例中,成本因子可以不应用于SbTMVP运动候选。
g.在一个示例中,一个组/位置中的运动候选的成本因子可以是自适应的。
i.在一个示例中,一个组/位置中的运动候选的成本因子可以取决于邻近编解码块的编解码模式。
(i)在一个示例中,SbTMVP合并候选的成本因子可以取决于邻近仿射编解码块的数目。
(ii)在一个示例中,邻近编解码块可以包括五个空间邻近块(如图4所示)和/或(多个)时间邻近块(如图7所示)中的至少一个。
(iii)在一个示例中,当空间邻近仿射编解码块(如图4所示)的数目为0时,SbTMVP合并候选的成本因子可以为0.2;当空间邻近仿射编解码块(如图4所示)的数目为1时,SbTMVP合并候选的成本因子可以为0.5;当空间邻近仿射编解码块(如图4所示)的数目为2时,SbTMVP合并候选的成本因子可以为0.8;否则,SbTMVP合并候选的成本因子可以为1(这意味着保持不变)。
(iv)在一个示例中,当空间邻近仿射编解码块(图4所示)的数目为0时,SbTMVP合并候选的成本因子可以为0.2;当空间邻近仿射编解码块(图4所示)的数目为1时,SbTMVP合并候选的成本因子可以为0.5;当空间邻近仿射编解码块(图4所示)的数目大于或等于2时,SbTMVP合并候选的成本因子可以为0.8。
(v)在一个示例中,当空间邻近仿射编解码块(如图4所示)的数目为0时,SbTMVP合并候选的成本因子可以为2;当空间邻近仿射编解码块(如图4所示)的数目为1时,SbTMVP合并候选的成本因子可以为5;当空间邻近仿射编解码块(如图4所示)的数目为2时,SbTMVP合并候选的成本因子可以为8;否则,SbTMVP合并候选的成本因子可以为10(其中仿射合并候选的成本因子为10)。
(vi)在一个示例中,当空间邻近仿射编解码块(如图4所示)的数目为0时,SbTMVP合并候选的成本因子可以为2;当空间邻近仿射编解码块(如图4所示)的数目为1时,SbTMVP合并候选的成本因子可以为5;当空间邻近仿射编解码块(如图4所示)的数目大于或等于2(其中仿射合并候选的成本因子为10)时,SbTMVP合并候选的成本因子可以为8。
2.不同编解码模式的子组尺寸可能不同。
a.编解码模式可以包括常规/子块/TM合并模式。
i.对于常规合并模式,子组尺寸可以是K1(例如,K1=5)。
ii.对于子块合并模式,子组尺寸可以是K2(例如,K2=3)。
iii.对于TM合并模式,子组尺寸可以是K3(例如,K3=3)。
b.子组尺寸可以大于或等于针对子块合并模式的在sps/图片/条带头中定义的子块合并候选的最大数目(这意味着将整个列表一起重排序)。
c.子组尺寸可以大于或等于针对TM合并模式的在sps/图片/条带头中定义的TM合并候选的最大数目(这意味着将整个列表一起重排序)。
d.针对编解码模式的子组尺寸可能取决于编解码模式中运动候选的最大数目。
e.针对子块合并模式的子组尺寸可以自适应地取决于邻近仿射编解码块的数目。
i.在一个示例中,邻近编解码块可以包括五个空间邻近块(如图4所示)和/或(多个)时间邻近块(如图7所示)中的至少一个。
ii.在一个示例中,当空间邻近仿射编解码块(如图4所示)的数目为0或1时,针对子块合并模式的子组尺寸可以为3;当空间邻近仿射编解码块(如图4所示)的数目大于1时,子块合并模式的子组尺寸可以为5;
3.针对不同编解码模式的模板尺寸可能不同。
a.编解码模式可以包括常规/子块/TM合并模式。
i.对于常规合并模式,模板尺寸可以是K1(例如,K1=1)。
ii.对于子块合并模式,模板尺寸可以是K2(例如,K2=1、2或4)。
iii.对于TM合并模式,模板尺寸可以是K3(例如,K3=1)。
4.是否和/或如何重排序运动候选可能取决于邻近编解码块的编解码模式。
a.在一个示例中,邻近编解码块可以包括五个空间邻近块(如图4所示)和/或(多个)时间邻近块(如图7所示)中的至少一个。
b.当利用规则合并模式(如图4所示)的空间邻近编解码块的数目大于或等于K(例如,K=1)时,可以重排序常规合并候选。
c.当利用子块合并模式(如图4所示)的空间邻近编解码块的数目大于或等于K(例如,K=1)时,可以重排序子块合并候选。
d.当利用仿射合并模式(如图4所示)的空间邻近编解码块的数目大于或等于K(例如,K=1)时,可以重排序仿射合并候选。
e.当利用仿射合并模式(如图4所示)的空间邻近编解码块的数目大于或等于K(例如,K=1、2或3)时,可以重排序SbTMVP合并候选。
f.当利用TM合并模式(如图4所示)的空间邻近编解码块的数目大于或等于K(例如,K=1)时,可以重排序TM合并候选。
5.可以基于模板/双边匹配等对HMVP表中的HMVP运动候选进行重排序。
a.在一个示例中,为HMVP运动候选分配成本,HMVP候选以HMVP候选成本的降序自适应地重排序。
i.在一个示例中,HMVP候选的成本可以是模板匹配成本。
b.在一个示例中,可以在编解码块之前重排序HMVP运动候选。
i.在一个示例中,HMVP运动候选可以在编解码帧间编解码块之前被重排序。
c.在一个示例中,HMVP运动候选可以根据当前块和/或邻近块的编解码信息以不同的方式重排序。
通用权项
6.是否和/或如何应用上面公开的方法可以在序列级别/图片组级别/图片级别/条带级别/图块组级别被信号传输,诸如在序列头/图片头/SPS/VPS/DPS/DCI/PPS/APS/条带头/图块组头中。
7.是否和/或如何应用上面公开的方法可以在PB/TB/CB/PU/TU/CU/VPDU/CTU/CTU行/条带/图块/子图片/包含多于一个样本或像素的其它种类的区域用信号传输。
8.是否和/或如何应用上面公开的方法可以取决于编解码信息,例如编解码模式、块尺寸、颜色格式、单/双树划分、颜色分量、条带/图片类型。
2.29 JVET-W0097:EE2相关:EE2-3.3、EE2-3.4和EE2-3.5的组合
在JVET-V会议上,提出了几种提高VVC中GPM模式编解码效率的方法,这些方法被纳入探索实验(EE2)以供进一步评价,其主要技术方面描述如下:
EE2-3.3关于具有MMVD的GPM(GPM-MMVD):1)额外的MVD被添加到现有的GPM合并候选;2)MVD以与VVC中的MMVD相同的方式通过信号传输,即一个距离索引加一个方向索引;3)用两个标志通过信号传输,以分别控制MMVD是否应用于每个GPM划分。
EE2-3.4-3.5关于具有模板匹配的GPM(GPM-TM):1)通过基于当前CU的左侧和上方邻近样本细化GPM MV,将模板匹配扩展到GPM模式;2)根据GPM分割方向(划分角度)选择模板样本,如表4所示;3)通过信号传输一个单一标志,以联合控制模板匹配是否应用于两个GPM划分的MV。
表4.第一几何划分和第二几何划分的模板,其中A表示使用上方的样本,L表示使用左侧的样本,并且L+A表示使用左侧和上方的样本。
划分角度 0 2 3 4 5 8 11 12 13 14
第一划分 A A A A L+A L+A L+A L+A A A
第二划分 L+A L+A L+A L L L L L+A L+A L+A
划分角度 16 18 19 20 21 24 27 28 29 30
第一划分 A A A A L+A L+A L+A L+A A A
第二划分 L+A L+A L+A L L L L L+A L+A L+A
组合
本文提出了EE2-3.3(JVET-W0088)、EE2-3.4(JVET-W0065)和EE2-3.5(JVET-W0065)的组合,以进一步提高GPM模式的编解码效率。具体而言,在建议的组合中,EE2-3.3、EE2-3.4和EE2-3.5中的现有设计保持不变,同时进一步应用以下修改以协调两种编解码工具:
1)GPM-MMVD和GPM-TM对于一个GPM CU被排他地启用。这是通过首先通过信号传输GPM-MMVD语法来完成的。当两个GPM-MMVD控制标志都等于假(即,两个GPM划分禁用GPM-MMVD)时,GPM-TM标志通过信号被传输以指示模板匹配是否应用于两个GPM划分。否则(至少一个GPM-MMVD标志等于真),GPM-TM标志的值被推断为假。
2)EE2-3.3和EE2-3.4-3.5中的GPM合并候选列表生成方法以应用EE2-3.4-3.5中的MV修剪方案(其中MV修剪阈值基于当前CU大小被适配)的方式直接组合,以替换EE2-3.3中应用的默认MV修剪方案;附加地,如EE2-3.4-3.5中,添加多个零MV,直到GPM候选列表被完全填充。
GPM候选列表被构建如下:
1.交错的列表-0MV候选和列表-1MV候选直接从规则合并候选列表导出,其中列表-0MV候选优先级高于列表-1MV候选。应用基于当前CU大小的具有自适应阈值的修剪方法以去除冗余MV候选。
2.交错的列表-1MV候选和列表-0MV候选进一步直接从规则合并候选列表中导出,其中列表-1MV候选优先级高于列表-0MV候选。采用同样的具有自适应阈值的修剪方法去除冗余MV候选。
3.填充零MV候选,直到GPM候选列表已满。
2.30自适应GPM候选列表中
术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、CU、PU、TU、PB、TB或者包括多个样本/像素的视频处理单元。块可以是矩形或非矩形。
需要注意的是,下面提到的术语不限于现有标准中定义的特定术语。编解码工具的任何方差也适用。例如,术语“GPM”用于表示导出两组或多组运动信息并使用导出的运动信息和分割模式/加权掩码来获得最终预测的任何编解码工具,例如,TPM也被视为GPM。
注意,所提出的方法可以应用于合并候选列表构建过程,用于经帧间编解码的块(例如平移运动)、经仿射编解码的块、经TM编解码的块、经GPM编解码的块、或经IBC编解码的块;或其他运动候选列表构建过程(例如,普通AMVP列表;仿射AMVP列表;IBCAMVP列表;HMVP表)。
除了模板匹配成本之外的成本函数也适用于运动候选重排序。
以下,模板是一组相邻或非相邻的邻近于当前块的重建/预测样本。模板的参考样本(即参考模板)是模板在参考图片中的映射,依赖于当前块的运动信息。“上方的模板”表示由一组相邻或非相邻的邻近于当前块及其参考模板上方的重建/预测样本构建的模板。“左侧的模板”表示由一组相邻或非相邻的邻近于当前块及其参考模板的左侧的重建/预测样本构建的模板。“上方和左侧的模板”包括上方的模板和左侧的模板。
在下面,在一个示例中,GPM候选列表被称为OGPMList,其中GPM候选直接源自规则合并列表(在基于模板匹配的运动细化之前或没有基于模板匹配的运动细化);细化的GPM候选列表,其中GPM候选通过第一细化方法(例如使用上方模板的模板匹配)被细化,被称为AGPMList;细化的GPM候选列表,其中GPM候选通过第二细化方法(例如使用左侧模板的模板匹配)被细化,被称为LGPMList;细化的GPM候选列表,其中GPM候选通过第三细化方法(例如使用左侧和上方模板的模板匹配)被细化,被称为LAGPMList。
W和H是当前块(例如亮度块)的宽度和高度。
1.提出对于经GPM编解码的块,经编解码的候选索引可以对应于针对经GPM编解码的块的候选列表中具有不同候选索引的候选。
a.可替换地,此外,针对经GPM编解码的块构建的候选列表可以在被使用之前被重排序,并且经编解码的索引对应于重排序的候选列表。
b.可替换地,此外,对于第一类型的经GPM编解码的块,候选列表可以被重排序,而对于第二类型的经GPM编解码的块,候选列表可以不被重排序。
i.在一个示例中,第一类型是基于模板的经GPM编解码的块。
ii.在一个示例中,第二类型是基于MMVD的经GPM编解码的块(例如,GMVD)。
c.可替换地,此外,对于第一类型的经GPM编解码的块,候选列表可以用第一规则重排序,并且对于第二类型的经GPM编解码的块,候选列表可以用第二规则重排序。
d.在一个示例中,用于经GPM编解码的块的重排序方法可以与用于没有经GPM编解码的块的重排序方法相同。
i.或者,用于经GPM编解码的块的重排序方法可以不同于用于没有经GPM编解码的块的重排序方法。
2.提出对于经GPM编解码的块,经编解码的候选索引可以对应于来自用于经GPM编解码的块的细化候选列表的候选。
a.可替换地,此外,为经GPM编解码的块构建的候选列表可以在被使用之前首先被细化,并且经编解码的索引对应于细化的候选列表。
b.可替换地,此外,对于第一类型的经GPM编解码的块,候选列表可以被细化,而对于第二类型的经GPM编解码的块,候选列表可以不被细化。
i.在一个示例中,第一类型是基于模板的经GPM编解码的块。
ii.在一个示例中,第二类型是基于MMVD的经GPM编解码的块(例如,GMVD)。
c.或者,此外,对于第一类型的经GPM编解码的块,候选列表可以用第一规则细化,并且对于第二类型的经GPM编解码的块,候选列表可以用第二规则细化。
d.在一个示例中,经GPM编解码的块的细化方法可以与没有经GPM编解码的块的细化方法相同。
i.或者,经GPM编解码的块的细化方法可以不同于没有经GPM编解码的块的细化方法。
3.在一个示例中,GPM候选可以被划分为子组,是否和/或如何对GPM候选重排序可以取决于GPM候选的子组。
a.在一个示例中,只有第一个子组可以重排序。
b.在一个示例中,最后一个子组不能重排序。
c.在一个示例中,最后一个子组不能重排序。但如果最后一个子组也是第一个子组,则可以重排序。
d.不同的子组可以单独重排序。
e.不能比较和/或重排序不同子组中的两个候选。
f.如果第一子组在第二子组之前,则在重排序之后,必须将第一子组中的第一候选置于第二子组中的第二候选之前。
4.在一个示例中,未包括在重排序过程中的GPM候选可以按指定方式处理。
a.在一个示例中,对于不需要重排序的候选,它们将按照初始顺序排列在合并候选列表中。
b.在一个示例中,可以将不被重排序的候选放在要被重排序的候选之后。
c.在一个示例中,可以将不被重排序的候选放在要被重排序的候选之前。
5.要被重排序的GPM候选列表可以参考
情况1:为两个GPM划分准备的第一候选列表,用于导出每个GPM划分的单独的GPM候选列表。
情况2:用于每个GPM划分的第二GPM候选列表。通常第二GPM候选来自第一候选列表。
a.在一个示例中,在情况1中,重排序方法可以与用于常规合并候选列表的重排序方法相同。
b.在一个示例中,在情况1中,在重排序方法中的模板匹配方法可以以双向预测的方式进行,如果对应的候选是双预测的。
c.在一个示例中,在情况2中,重排序方法中的模板匹配方法不能以双向预测的方式进行。
d.在一个示例中,在情况2中,重排序方法可以对所有GPM划分相同。
e.在一个示例中,在情况2中,重排序方法可以针对不同的GPM划分而不同。
6.在上述示例中,经GPM编解码的块可以是经具有合并模式的GPM编解码的块,经具有AMVP模式的GPM编解码的块。
a.此外,替代地,上述合并候选可以由AMVP候选代替。
通用权项
7.是否和/或如何应用上面公开的方法可以在序列级别/图片组级别/图片级别/条带级别/图块组级别通过信号被传输,诸如在序列头/图片头/SPS/VPS/DPS/DCI/PPS/APS/条带头/图块组头中。
8.是否和/或如何应用上面所公开的方法可以在PB/TB/CB/PU/TU/CU/VPDU/CTU/CTU行/条带/图块/子图片/其它种类的包含多于一个样本或像素的区域中通过信号被传输。
9.是否和/或如何应用上面公开的方法可以取决于经编解码的信息,例如编解码模式、块大小、GPM划分信息、颜色格式、单/双树划分、颜色分量、条带/图片类型。
3.问题
合并模式目前的设计可以进一步改进。
固定的合并候选顺序可能不是最优的。自适应合并候选列表生成过程可以用来提高合并模式的有效性。此外,可以提高编解码效率。
4.本公开的实施例
下面的详细实施例应被视为解释一般概念的示例。这些实施例不应以狭隘的方式来解释。此外,这些实施例可以以任何方式组合。
术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、CU、PU、TU、PB、TB或者包括多个样本/像素的视频处理单元。块可以是矩形或非矩形。
需要注意的是,下面提到的术语不限于现有标准中定义的特定术语。编解码工具的任何方差也适用。例如,术语“GPM”用于表示导出两组或多组运动信息并使用导出的运动信息和分割模式/加权掩码来获得最终预测的任何编解码工具,例如,TPM也被视为GPM。
注意,所提出的方法可以应用于合并候选列表构建过程,用于经帧间编解码的块(例如平移运动)、经仿射编解码的块、经TM编解码的块、经GPM编解码的块、或经IBC编解码的块;或其他运动候选列表构建过程(例如,普通AMVP列表;仿射AMVP列表;IBCAMVP列表;HMVP表)。
除了模板匹配成本之外的成本函数也适用于运动候选重排序。
以下,模板是一组相邻或非相邻的邻近于当前块的重建/预测样本。模板的参考样本(即参考模板)是模板在参考图片中的映射,依赖于当前块的运动信息。“上方的模板”表示由一组相邻或非相邻的邻近于当前块及其参考模板上方的重建/预测样本构建的模板。“左侧的模板”表示由一组相邻或非相邻的邻近于当前块及其参考模板的左侧的重建/预测样本构建的模板。“上方和左侧的模板”包括上方的模板和左侧的模板。
在下面,在一个示例中,GPM候选列表被称为OGPMList,其中GPM候选直接源自规则合并列表(在基于模板匹配的运动细化之前或没有基于模板匹配的运动细化);细化的GPM候选列表,其中GPM候选通过第一细化方法(例如使用上方模板的模板匹配)被细化,被称为AGPMList;细化的GPM候选列表,其中GPM候选通过第二细化方法(例如使用左侧模板的模板匹配)被细化,被称为LGPMList;细化的GPM候选列表,其中GPM候选通过第三细化方法(例如使用左侧和上方模板的模板匹配)被细化,被称为LAGPMList。
关于原GPM候选列表中GPM候选的类型,2.29节GPM候选列表构建过程的第一步导出的GPM候选被称为基于GPM奇偶校验的候选;2.29节GPM候选列表构建过程的第二步导出的GPM候选被称为基于GPM反奇偶校验的候选;2.29节GPM候选列表构建过程的第三步导出的GPM候选被称为被填满的GPM候选。
W和H是当前块(例如亮度块)的宽度和高度。
1.在一个示例中,如果编解码模式是GPM,则合并候选可以被重排序。
a.在一个示例中,OGPMList中的合并候选可以被重排序。
i.在一个示例中,可以重排序OGPMList中的至少两个合并候选。
ii.在一个示例中,至少一种类型的模板可用于OGPMList重排序。
iii.或者,OGPMList中的合并候选不能被重排序。
iv.在一个示例中,第一类型的模板可以仅包括当前块的左侧邻近样本。
v.在一个示例中,第二类型的模板可以仅包括当前块的上方邻近样本。
vi.在一个示例中,第三类型的模板可以包括当前块上方和左侧的邻近样本。
vii.重排序过程可以在解析过程之后,但在MV重建过程之前被调用。
b.在一个示例中,AGPMList中的合并候选可以被重排序。
i.在一个示例中,AGPMList中的至少两个合并候选可以重排序。
ii.在一个示例中,至少一种类型的模板可用于AGPMList重排序。
iii.在一个示例中,第一类型的模板可以仅包括当前块上方的邻近样本。
iv.在一个示例中,第二类型的模板可以包括当前块的左侧和上方的邻近样本。
c.在一个示例中,LGPMList中的合并候选可以被重排序。
i.在一个示例中,LGPMList中的至少两个合并候选可以被重排序。
ii.在一个示例中,至少一种类型的模板可用于LGPMList重排序。
iii.在一个示例中,第一类型的模板可以仅包括当前块左侧的邻近样本。
iv.在一个示例中,第二类型的模板可以包括当前块的左侧和上方的邻近样本。
d.在一个示例中,LAGPMList中的合并候选可以被重排序。
i.在一个示例中,LAGPMList中的至少两个合并候选可以被重排序。
ii.在一个示例中,至少一种类型的模板可用于LAGPMList重排序。
iii.在一个示例中,第一类型的模板可以仅包括当前块左侧的邻近样本。
iv.在一个示例中,第二类型的模板可以仅包括当前块上方的邻近样本。
v.在一个示例中,第三类型的模板可以包括当前块上方和左侧的邻近样本。
e.在一个示例中,是否和/或如何对GPM列表中的合并候选重排序可以取决于编解码信息。
i.在一个示例中,是否对GPM列表中的合并候选重排序可以取决于基于模板匹配的运动细化是应用于GPM划分还是两个GPM划分(即经GPM编解码的CU)。
(i)例如,如果GPM划分或两个GPM划分(即经GPM编解码的CU)的运动不是基于模板匹配被细化的(例如,模板匹配标志等于假),则相应的GPM列表可以不被重排序。
a)例如,如果GPM划分是使用OGPMList中的合并候选被编解码的(例如,没有应用运动细化),则OGPMList中的合并候选可以不被重排序。
(ii)例如,如果GPM划分或两个GPM划分的运动(即经GPM编解码的CU)基于模板匹配被细化(例如,模板匹配标志等于真),则相应的GPM列表可以被重排序。
a)例如,如果GPM划分是使用AGPMList中的合并候选被编解码的(例如,使用上方模板的模板匹配运动细化方法被应用),则AGPMList中的合并候选可以被重排序。
b)例如,如果GPM划分是使用LGPMList中的合并候选被编解码的(例如,使用左侧模板的模板匹配运动细化方法被应用),则LGPMList中的合并候选可以被重排序。
c)例如,如果GPM划分是使用LAGPMList中的合并候选被编解码的(例如,使用左侧模板和上方模板的模版匹配运动细化方法被应用),则LAGPMList中的合并候选可以被重排序。
ii.在一个示例中,如何重排序GPM列表中的合并候选可以取决于GPM划分信息(例如,划分模式、划分角度、划分距离等)。
(i)例如,上方模板可用于在当前GPM划分被第一划分角度(或划分模式、或划分距离等)分割的情况下对合并候选重排序。
(ii)例如,左侧模板可用于在当前GPM划分被第二划分角度(或划分模式、或划分距离等)分割的情况下对合并候选重排序。
(iii)例如,左侧模版和上方的模板可用于在当前GPM划分被第三划分角度(或划分模式、或划分距离等)分割的情况下对合并候选重排序。
(iv)例如,可以指定对应于第一/第二/第三划分角(或划分模式、或划分距离等)的模板类型。
(v)例如,至少一个查找表(即,映射表)被用于映射什么指定的划分角度(或划分模式、或划分距离等)对应于什么类型的模板(例如,上方模板、左侧模板、或上方和左侧模板。)
f.在一个示例中,OGPMList中的合并候选可以不被重排序,并且AGPMList和/或LGPMList和/或LAGPMList中的合并候选可以被重排序。
2.合并候选可以根据一个或一些标准在最终的GPM候选列表中自适应地被重排列。
a.在一个示例中,GPM候选列表可以是
i.OGPMList
ii.AGPMList
iii.LGPMLIst
iv.LAGPMList
b.GPM候选可被分为若干子组。
i.例如,子组中的GPM候选的数量(诸如X=3或5或任何其他整数值)可以是预定义的。
c.在一个示例中,当前GPM候选列表构建过程的部分或全部过程首先被调用,随后在GPM列表中重排序候选。
i.备选地,第一子组中的候选可以被重排序,并且它们应该在第二子组中的那些候选之前被添加,其中第一子组在第二子组之前被添加。
ii.构造过程可以包括修剪方法。
d.在一个示例中,可以在检索合并候选之前自适应地重排列合并候选。
i.在一个示例中,可以在获得要在运动补偿处理中使用的合并候选之前处理自适应地排列合并候选的过程。
e.该准则可以基于模板匹配成本。
i.在一个示例中,当前模板和参考模板之间的成本函数可以是
(i)SAD/MR-SAD
(ii)SATD/MR-SATD
(iii)SSD/MR-SSD
(iv)SSE/MR-SSE
(v)加权SAD/加权MR-SAD
(vi)加权SATD/加权MR-SATD
(vii)加权SSD/加权MR-SSD
(viii)加权SSE/加权MR-SSE
(ix)梯度信息
3.当导出两个几何划分的两个运动时,该过程可以是
a.在一个示例中,如果TM没有应用于一个划分,则可以根据通过信号传输的来自OGPMList/重排序的OGPMList的合并索引导出运动。
b.在一个示例中,如果TM被应用于一个划分,则可以根据通过信号传输的来自AGPMList/重排序的AGPMList或LGPMList/重排序的LGPMLIst或LAGPMList/重排序的LAGPMLIst的合并索引导出运动,这取决于划分角度和划分索引。
i.在一个示例中,如果划分角度为X(例如,0),则对于第一个划分,将使用AGPMList/重排序的AGPMList;对于第二个划分,将使用LAGPMList/重排序的LAGPMLIst。
c.在一个示例中,如果TM被应用于一个划分,则可以根据通过信号传输的来自AGPMList/重排序的AGPMList的合并索引导出运动。
d.在一个示例中,如果TM被应用于一个划分,则可以根据通过信号传输的来自LGPMList/重排序的LGPMLIst的合并索引导出运动。
e.在一个示例中,如果TM被应用于一个划分,则可以根据通过信号传输的来自LAGPMList/重排序的LAGPMLIst的合并索引导出运动。
4.是否和/或如何对GPM候选重排序可以取决于GPM候选的类别。
a.在一个示例中,仅基于GPM奇偶校验的候选可以被重排序。
b.在一个示例中,仅基于GPM奇偶校验和基于GPM反奇偶校验的候选可以被重排序。
c.在一个示例中,被填满的GPM候选可以不被重排序。
d.在一个示例中,不同GPM列表中的两个候选不能被比较和/或重排序。
e.在一个示例中,只有前N个GPM候选可以被重排序。
i.在一个示例中,N被设置为等于5。
5.在上述示例中,经GPM编解码的块可以是经具有合并模式的GPM编解码的块,经具有AMVP模式的GPM编解码的块。
a.此外,替代地,上述合并候选可以由AMVP候选代替。
通用权项
6.是否和/或如何应用上面公开的方法可以在序列级别/图片组级别/图片级别/条带级别/图块组级别通过信号被传输,诸如在序列头/图片头/SPS/VPS/DPS/DCI/PPS/APS/条带头/图块组头中。
7.是否和/或如何应用上面所公开的方法可以在PB/TB/CB/PU/TU/CU/VPDU/CTU/CTU行/条带/图块/子图片/其它种类的包含多于一个样本或像素的区域中通过信号被传输。
8.是否和/或如何应用上面公开的方法可以取决于经编解码的信息,例如编解码模式、块大小、GPM划分信息、颜色格式、单/双树划分、颜色分量、条带/图片类型。
本公开的实施例与自适应GPM候选列表有关。
如本文所用,本文所用的术语“视频单元”或“编解码单元”或“块”可指以下中的一个或多个:颜色分量、子图片、条带、图块、编解码树单元(CTU)、CTU行、CTU组、编解码单元(CU)、预测单元(PU)、变换单元(TU)、编解码树块(CTB)、编解码块(CB)、预测块(PB)、变换块(TB)、块、块的子块、块内的子区域或包括多于一个样本或像素的区域。块可以是矩形或非矩形。
应当注意,下面提到的术语不限于现有标准中定义的特定术语。注意,所提出的方法可以被应用于经帧间编解码的块(例如平移运动)、经仿射编解码的块、经TM编解码的块、经GPM编解码的块或经IBC编解码的块的合并候选列表的构建过程;或其他运动候选列表的构建过程(例如,正常AMVP列表;仿射AMVP列表;IBC AMVP列表;HMVP表)。除了模板匹配成本之外的成本函数也适用于运动候选重排序。在下文中,模板是一组相邻或非相邻的邻近于当前块的重建/预测样本。模板的参考样本(即参考模板)是依赖于当前块的运动信息的参考图片中模板的映射。
图40示出了根据本公开的一些实施例的用于视频处理的方法4000的流程图,该方法4000可以在视频单元和视频单元的码流之间的转换期间实现。
在块4010,在视频的目标块和目标块的码流之间的转换期间,确定被应用于目标块的编解码模式。在块4020,响应于编解码模式是几何划分模式(GPM),对多个运动候选重排序。应该注意,编解码工具的任何方差也可以适用。例如,术语“GPM”可以用于表示导出两组或多组运动信息并使用导出的运动信息和分裂模式/加权掩码来获得最终预测的任何编解码工具,例如,TPM也被视为GPM。
在框4030,使用经重排序的多个运动候选执行转换。在一些实施例中,转换可以包括将目标块编码到码流中。在一些实施例中,转换可以包括从码流解码目标块。
根据本公开的实施例,可以使用自适应运动候选列表生成过程来提高合并模式的有效性。与常规方案相比,本公开的一些实施例可以有利地提高编解码效率。
本公开的实现可以根据以下条款来描述,这些条款的特征可以以任何合理的方式组合。
在一些实施例中,第一单向预测GPM候选列表中的多个运动候选可以被重排序。在一些实施例中,其中GPM候选直接源自规则运动列表(在基于模板匹配的运动细化之前或没有基于模板匹配的运动细化)的第一单向预测GPM候选列表可以被称为OGPMList。在这种情况下,在一些实施例中,第一单向预测GPM候选列表中的至少两个运动候选可以被重排序。或者,如果第一单向预测候选列表中的一组运动候选,则该组运动候选可以不被重排序。
在一些实施例中,至少一种类型的模板可用于对第一单向预测GPM候选列表中的多个运动候选进行重排序。在一些实施例中,与目标相关联的第一模板可包括包括目标块左侧的第一组邻近样本。例如,第一模板可以是左侧模板,其指示由左侧相邻或非相邻邻近当前块及其参考模板的一组重建/预测样本构建的模板。
在一些其他实施例中,与目标块相关联的第二模板可以包括在目标块上方的第二组邻近样本。例如,第二模板可以是上方的模板,其指示由上方相邻或非相邻邻近当前块及其参考模板一组重建/预测样本构建的模板。
在一些实施例中,与目标块相关联的第三模板可以包括目标块左侧的第一组邻近样本和目标块上方的第二组邻近样本。例如,第三模板可以是包括上方模板和左侧模板两者的上方和左侧模板。
在一些示例实施例中,可以在与目标块相关联的解析过程之后和与目标块相关联的运动矢量重建过程之前对多个运动候选重排序。例如,可以在解析过程之后但在MV重建过程之前调用重排序过程。
在一些实施例中,使用目标块的上方模板细化的第二单向预测GPM候选列表中的多个运动候选可以被重排序。在一些实施例中,可以将通过使用上方模板的模板匹配等第一细化方法细化GPM候选的第二单向预测GPM候选列表称为AGPMList。在这种情况下,在一些实施例中,第二单向预测GPM候选列表中的至少两个运动候选可以被重排序。
在一些其他实施例中,至少一种类型的模板可用于对第二单向预测GPM候选列表中的多个运动候选重排序。例如,在一些实施例中,与目标块相关联的第四模板(上方的模板)可包括目标块上方的一组邻近样本。备选地或附加地,与目标块相关联的第五模板(上方和左侧的模板)可包括目标块上方的一组邻近样本和目标块左侧的一组邻近样本。
在一些实施例中,可以对使用目标块的左侧模板细化的第三单向预测GPM候选列表中的多个运动候选重排序。在一些实施例中,可以将通过使用左侧模板的模板匹配等第二细化方法细化GPM候选的第三单向预测GPM候选列表称为LGPMList。在这种情况下,在一些实施例中,可以对第三单向预测GPM候选列表中的至少两个运动候选重排序。
在一些其他实施例中,至少一种类型的模板可用于重排序使用目标块的左侧模板细化的第三单向预测GPM候选列表中的多个运动候选。例如,在一些实施例中,与目标块相关联的第六模板(左侧模板)可包括目标块左侧的一组邻近样本。替代地或附加地,与目标块相关联的第七模板(上方和左侧模板)可包括目标块上方的一组邻近样本和目标块左侧的一组邻近样本。
在一些实施例中,使用目标块的左侧及上方模板细化的第四单向预测GPM候选列表中的多个运动候选可以被重排序。在一些实施例中,通过诸如使用左侧和上方的模板的模板匹配之类的第三细化方法细化GPM候选的第四单向预测GPM候选列表可以被称为LAGPMList。在这种情况下,在一些实施例中,第四单向预测GPM候选列表中的至少两个运动候选可以被重排序。
在一些实施例中,至少一种类型的模板可用于对第四单向预测GPM候选列表中的多个运动候选重排序,该第四单向预测GPM候选列表使用目标块的左侧模板和上方模板进行细化。例如,在一些实施例中,与目标块相关联的第八模板(左侧模板)可包括目标块左侧的一组邻近样本。在一些实施例中,与目标块相关联的第九模板可包括目标块上方的一组邻近样本。在一些实施例中,与目标块相关联的第十模板(上方和左侧模板)可包括目标块左侧的一组邻近样本和目标块上方的一组邻近样本。
在一些实施例中,可以基于与目标块相关联的编解码信息来确定是否对多个运动候选进行重排序。在示例实施例中,可以基于是否将基于模板匹配的运动细化应用于目标块的GPM划分或两个GPM划分(例如,经GPM编解码的CU)来确定是否对多个运动候选重排序。在一些实施例中,如果基于模板匹配的运动细化没有应用于GPM划分,则GPM划分的多个运动候选可以不被重排序。例如,如果GPM划分或两个GPM划分(即经GPM编解码的CU)的运动没有基于模板匹配进行细化(例如,模板匹配标志等于假),则相应的GPM候选列表可以不被重排序。在一些实施例中,如果目标块的GPM划分是使用第一单向预测GPM候选列表中的运动候选被编解码的,则第一单向预测GPM候选列表中的多个运动候选可以不被重排序。例如,如果GPM划分是使用OGPMList中的运动候选被编解码的(例如,不应用运动细化),则OGPMList中的运动候选可以不被重排序。
在一些实施例中,如果基于模板匹配的运动细化被应用于GPM划分,则GPM划分的多个运动候选可以被重排序。例如,如果GPM划分或两个GPM划分(即经GPM编解码的CU)的运动基于模板匹配被细化(例如,模板匹配标志等于真),则相应的GPM候选列表可以被重排序。
在一些实施例中,如果目标块的GPM划分是使用第二单向预测GPM候选列表中的运动候选被编解码的,该第二单向预测GPM候选列表中的多个运动候选可以被重排序。例如,如果GPM划分是使用AGPMList中的运动候选被编解码的(例如,使用上方模板的模板匹配运动细化方法被应用),则AGPMList中的运动候选可以被重排序。
在一些实施例中,如果目标块的GPM划分是使用第三单向预测GPM候选列表中的运动候选被编解码的,该第三单向预测GPM候选列表中的多个运动候选可以被重排序。例如,如果GPM划分是使用LGPMList中的运动候选被编解码的(例如,使用左侧模板的模板匹配运动细化方法被应用),则LGPMList中的运动候选可以被重排序。
在一些实施例中,如果目标块的GPM划分是使用第四单向预测GPM候选列表中的运动候选被编解码的,该第四单向预测GPM候选列表中的多个运动候选可以被重排序。例如,如果GPM划分是使用LAGPMList中的运动候选被编解码的(例如,使用左侧和上方模板的模板匹配运动细化方法被应用),则LAGPMList中的运动候选可以被重排序。
在一些实施例中,如何重排序多个运动候选可以基于与目标块相关联的编解码信息来确定。替代地或备选地,如何重排序多个运动候选可以基于与目标块相关联的GPM划分信息来确定。例如,GPM划分信息可以包括:划分模式、划分角度或划分距离中的一个或多个。需要注意的是,GPM划分信息可以包括与GPM划分相关的其他信息。
在一些实施例中,如果当前GPM划分被以下之一分割:第一划分角度、第一划分模式或第一划分距离,则上方模板可用于重排序多个运动候选。本文中使用的术语“上方模板”可指由在上方相邻或非相邻邻近当前块及其参考模板的一组重建/预测样本构建的模板。
替代地或附加地,如果当前GPM划分被以下之一分割:第二划分角度、第二划分模式或第二划分距离,则可以使用左侧模板来重排序多个运动候选。这里使用的术语“左侧模板”可以指由在左侧相邻或非相邻邻近当前块及其参考模板的一组重建/预测样本构建的模板。
在一些其他实施例中,如果当前GPM划分被以下之一分割:第三划分角度、第三划分模式或第三划分距离,则可以使用左侧和上方模板来重排序多个运动候选。这里使用的术语“上方和左侧模板”可以指包括上方模板和左侧模板两者的模板。
在一些实施例中,可以基于模板的类型和相关联的GPM划分信息之间的对应信息来指定模板的类型。例如,可以根据第一/第二/第三划分角度(或划分模式,或划分距离)来指定模板的类型。仅作为示例,可以使用至少一个表来将相关联的GPM划分信息映射到模板的类型。例如,可以使用至少一个查找表(即映射表)来映射什么指定的划分角度(或划分模式,或划分距离等)对应于什么类型的模板(例如,上方的模板,左侧的模板,或上方和左侧的模板)。
在一些实施例中,第一单向预测GPM候选列表(即,OGPMList)中的第一组运动候选可以不被重排序。替代地或附加地,在以下一个或多个中的第二组运动候选可以被重排序:第二单向预测GPM候选列表(即,AGPMList)、第三单向预测GPM候选列表(即,LGPMList)或第四单向预测GPM候选列表(即,LAGPMList)。
在一些实施例中,GPM候选列表中的多个运动候选可以根据一个或多个准则自适应地重排列,GPM候选列表可以被称为最终GPM候选列表,最终GPM候选列表可以指应用重排序过程后的GPM候选列表。在一些实施例中,GPM候选列表可以包括以下一种或多种:第一单向预测GPM候选列表(即OGPMList)、第二单向预测GPM候选列表(即AGPMList)、第三单向预测GPM候选列表(即LGPMLIst)或第四单向预测GPM候选列表(即LAGPMList)。
在一些实施例中,GPM候选列表中的多个运动候选可以划分为第一数量的子组。例如,子组中的第一数量的运动候选可以是预定义的。仅作为示例,第一数量可以是3或5或任何其他整数值。
在一些其他实施例中,可以在GPM候选列表的构造过程的至少一部分之后对多个运动候选进行重排序。例如,构造过程可以包括修剪方法。在一个示例中,可以首先调用当前GPM候选列表构造过程的部分或全部过程,然后对GPM候选列表中的候选进行重排序。例如,在一些实施例中,在编码器侧,在重排序GPM候选列表之前当前GPM候选列表构建过程的全部过程可以被调用。在一些实施例中,在解码器侧,在重排序GPM候选列表之前当前GPM候选列表构造过程的一部分可以被调用。例如,在构建目标GPM候选组之后GPM候选列表被重排序。或者,如果多个运动候选中的运动候选的第一子组在多个运动候选中的运动候选的第二子组之前被添加,则第一子组可以被重排序,经重排序的运动候选的第一子组可以在第二子组之前被添加到GPM候选列表中。例如,可以对第一子组中的候选进行重排序,并且它们应该在第二子组中的那些候选之前被添加,其中第一子组在第二子组之前被添加。
在一些实施例中,可以在检索目标运动候选之前自适应地重排列/重排序GPM候选列表中的多个运动候选。在一个示例实施例中,可以在获得要在与目标块相关联的运动补偿处理上使用的多个运动候选之前自适应地重排列多个运动候选。例如,可以在获得要在运动补偿处理中使用的运动候选之前处理自适应地排列运动候选的过程。
在一个示例中,当前模板和与目标块相关联的参考模板之间的成本函数包括以下之一:(i)绝对差之和(SAD)/绝对差的平均去除和(MR-SAD),(ii)绝对变换差之和(SATD)/平均去除SATD(MR-SATD),(iii)平方差之和(SSD)/平均去除SSD(MR-SSD),(iv)平方误差之和(SSE)/平均去除SSE(MR-SSE),(v)加权SAD/加权MR-SAD,(vi)加权SATD/加权MR-SATD,(vii)加权SSD/加权MR-SSD,(viii)加权SSE/加权MR-SSE,或(ix)梯度信息。
在一些实施例中,目标块可以包括两个几何划分。在一些实施例中,如果模板匹配(TM)没有应用于一个几何划分,则可以根据来自第一单向预测GPM候选列表或第一重排序的单向预测GPM候选列表的合并索引来导出几何划分的运动。在一个示例中,如果TM没有应用于一个几何划分,则可以根据通过信号传输的来自OGPMList/重排序的OGPMList的合并索引来导出运动。备选地或附加地,如果TM应用于一个几何划分,则可以基于划分角度和划分索引根据来自以下之一的合并索引来导出几何划分的运动:第二单向预测GPM候选列表,重排序的第二单向预测GPM候选列表,第三单向预测GPM候选列表、重排序的第三单向预测GPM候选列表、第四单向预测GPM候选列表或重排序的第四单向预测GPM候选列表。例如,如果TM应用于一个几何划分,则可以根据通过信号传输的依赖于划分角度和划分索引的AGPMList/重排序的AGPMList或LGPMList/重排序的LGPMLIst或LAGPMList/重排序的LAGPMLIst的合并索引导出几何划分的运动。
在一些实施例中,如果划分角是预定值,对于来自两个几何划分的第一几何划分,第二单向预测GPM候选列表或重排序的第二单向预测GPM候选列表可用于导出运动。此外,对于来自两个几何划分的第二几何划分,第四单向预测GPM候选列表或重排序的第四单向预测GPM候选列表可用于导出运动。在一个示例中,如果划分角是X(例如,0),对于第一划分,将使用AGPMList/重排序的AGPMList;对于第二划分,将使用LAGPMList/重排序的LAGPMLIst。
在一些实施例中,如果将TM应用于两个几何划分之一,则可以根据来自以下之一的合并索引导出运动:第二单向预测GPM候选列表、重排序的第二单向预测GPM候选列表、第三单向预测GPM候选列表、重排序的第三单向预测GPM候选列表、第四单向预测GPM候选列表或重排序的第四单向预测GPM候选列表。例如,在一个示例中,如果TM应用于一个划分,则可以根据通过信号传输的来自AGPMList/重排序的AGPMList的合并索引导出运动。在一个示例中,如果TM应用于一个划分,则可以根据通过信号传输的来自LGPMList/重排序的LGPMLIst的合并索引导出运动。在一个示例中,如果TM应用于一个划分,则可以根据通过信号传输的来自LAGPMList/重排序的LAGPMLIst的合并索引导出的运动。
在一些实施例中,可以基于多个运动候选的类别信息来确定是否对多个运动候选重排序。替代地或附加地,可以基于多个运动候选的类别信息来确定如何对多个运动候选重排序。例如,在一个示例实施例中,可以对多个运动候选中基于GPM奇偶校验的候选重排序。在一个示例实施例中,可以对多个运动候选中基于GPM奇偶校验和基于GPM反奇偶校验的候选重排序。在一些其他实施例中,可以不对多个运动候选中的被填满的GPM候选进行重排序。在一些实施例中,可以不对来自不同GPM列表的候选进行比较和/或重排序。替代地或附加地,可以对前N个运动候选进行排序,其中N表示一个整数。仅作为示例,N可以设置为等于5。
在一些实施例中,目标块可以包括具有合并模式的经GPM编解码的块,和/或具有高级运动矢量预测(AMVP)模式的经GPM编解码的块。或者,GPM候选可以包括以下至少之一:多个GPM合并候选,或多个GPM AMVP候选。
在一些实施例中,是否和/或如何对多个运动候选重排序的指示可以在以下之一被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。在一些实施例中,是否和/或如何应用编解码工具的指示可以在以下之一被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。
在一些实施例中,是否和/或如何重排序多个运动候选的指示可以被包括在以下之一中:预测块(PB)、变换块(TB)、编解码块(CB)、预测单元(PU)、变换单元(TU)、编解码单元(CU)、虚拟流水线数据单元(VPDU)、编解码树单元(CTU)、CTU行、条带、图块、子图片、或包含多于一个样本或像素的区域。
在一些实施例中,是否和/或如何重排序多个运动候选可以基于目标块的经编解码的信息来确定,经编解码的信息可以包括以下中的至少一个:块大小、颜色格式、单个和/或双树划分、颜色分量、GPM划分信息、条带类型或图片类型。
在一些实施例中,视频的码流可以存储在非暂态计算机可读记录介质中,视频的码流可以通过由视频处理装置执行的方法生成,根据该方法,确定被应用于视频的目标块的编解码模式,如果编解码模式是几何划分模式(GPM),则对与目标块相关联的多个运动候选重排序。目标块的码流可以使用经重排序的多个运动候选被生成。
在一些实施例中,确定被应用于视频的目标块的编解码模式。如果编解码模式是几何划分模式(GPM),则对与目标块相关联的多个运动候选重排序。目标块的码流使用经重排序的多个运动候选被生成,并被存储在非暂态计算机可读记录介质中。
本公开的实施例可以单独实现,或者,本公开的实施例可以以任何适当的组合来实现。本公开的实现可以鉴于以下条款来描述,这些条款的特征可以以任何合理的方式组合。
条款1.一种用于视频处理的方法,包括:在视频的目标块和所述目标块的码流之间的转换期间,确定被应用于所述目标块的编解码模式;响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;以及使用经重排序的所述多个运动候选执行所述转换。
条款2.根据条款1所述的方法,其中对所述多个运动候选重排序包括:对第一单向预测GPM候选列表中的所述多个运动候选重排序。
条款3.根据条款2所述的方法,其中所述第一单向预测GPM候选列表中的至少两个运动候选被重排序。
条款4.根据条款1所述的方法,其中如果一组运动候选在第一单向预测GPM候选列表中,则所述一组运动候选不被重排序。
条款5.根据条款2所述的方法,其中至少一种类型的模板被用于对第一单向预测GPM候选列表中的所述多个运动候选重排序。
条款6.根据条款2所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
条款7.根据条款2所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本。
条款8.根据条款2所述的方法,其中与所述目标块相关联的第三模板包括所述目标块左侧的一组邻近样本和所述目标块上方的一组邻近样本。
条款9.根据条款2所述的方法,其中对所述多个运动候选重排序包括:在与所述目标块相关联的解析过程之后并且在与所述目标块相关联的运动矢量重建过程之前,对所述多个运动候选重排序。
条款10.根据条款1所述的方法,其中所述对所述多个运动候选重排序包括:对第二单向预测GPM候选列表中的所述多个运动候选重排序,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化。
条款11.根据条款10所述的方法,其中所述第二单向预测GPM候选列表中的至少两个运动候选被重排序。
条款12.根据条款10所述的方法,其中至少一种类型的模板被用于对第二单向预测GPM候选列表中的所述多个运动候选重排序,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化。
条款13.根据条款10所述的方法,其中与所述目标块相关联的第一模板包括所述目标块上方的一组邻近样本。
条款14.根据条款10所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的所述一组邻近样本和所述目标块左侧的一组邻近样本。
条款15.根据条款1所述的方法,其中所述对所述多个运动候选重排序包括:对第三单向预测GPM候选列表中的所述多个运动候选重排序,所述第三单向预测GPM候选列表使用所述目标块的左侧模版被细化。
条款16.根据条款15所述的方法,其中所述第三单向预测GPM候选列表中的至少两个运动候选被重排序。
条款17.根据条款15所述的方法,其中至少一种类型的模板被用于对第三单向预测GPM候选列表中的所述多个运动候选重排序,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化。
条款18.根据条款15所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
条款19.根据条款15所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本和所述目标块左侧的所述一组邻近样本。
条款20.根据条款1所述的方法,其中所述对所述多个运动候选重排序包括:对第四单向预测GPM候选列表中的所述多个运动候选重排序,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
条款21.根据条款20所述的方法,其中所述第四单向预测GPM候选列表中的至少两个运动候选被重排序。
条款22.根据条款20所述的方法,其中至少一种类型的模板被用于对第四单向预测GPM候选列表中的所述多个运动候选重排序,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模板被细化。
条款23.根据条款20所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
条款24.根据条款20所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本。
条款25.根据条款20所述的方法,其中与所述目标块相关联的第三模板包括所述目标块左侧的一组邻近样本和所述目标块上方的一组邻近样本。
条款26.根据条款1所述的方法,还包括以下至少一项:基于与所述目标块相关联的编解码信息,确定是否对所述多个运动候选重排序;或者基于与所述目标块相关联的编解码信息,确定如何对所述多个运动候选重排序。
条款27.根据条款26所述的方法,其中确定是否对所述多个运动候选重排序包括:根据基于模板匹配的运动细化是否被应用于所述目标块的GPM划分或两个GPM划分,确定是否对所述多个运动候选重排序。
条款28.根据条款27所述的方法,其中如果所述基于模板匹配的运动细化未被应用于GPM划分,则所述GPM划分的所述多个运动候选不被重排序。
条款29.根据条款28所述的方法,其中如果所述目标块的GPM划分使用第一单向预测GPM候选列表中的运动候选被编解码,则所述第一单向预测GPM候选列表中的所述多个运动候选不被重排序。
条款30.根据条款27所述的方法,其中如果所述基于模板匹配的运动细化被应用于GPM划分,则所述GPM划分的所述多个运动候选被重排序。
条款31.根据条款30所述的方法,其中如果所述目标块的GPM划分使用第二单向预测GPM候选列表中的运动候选被编解码,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,则所述第二单向预测GPM候选列表中的所述多个运动候选被重排序。
条款32.根据条款30所述的方法,其中如果所述目标块的GPM划分使用第三单向预测GPM候选列表中的运动候选被编解码,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,则所述第三单向预测GPM候选列表中的所述多个运动候选被重排序。
条款33.根据条款30所述的方法,其中如果所述目标块的GPM划分使用第四单向预测GPM候选列表中的运动候选被编解码,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模板被细化,则所述第四单向预测GPM候选列表中的所述多个运动候选被重排序。
条款34.根据条款26所述的方法,其中确定如何对所述多个运动候选重排序包括:基于与所述目标块相关联GPM划分信息,确定如何对所述多个运动候选重排序。
条款35.根据条款34所述的方法,其中如果当前GPM划分通过第一划分角度、第一划分模式或第一划分距离中的一项被分割,则上方模板被用于对所述多个运动候选重排序。
条款36.根据条款34所述的方法,其中如果当前GPM划分通过第二划分角度、第二划分模式或第二划分距离中的一项被分割,则左侧模板被用于对所述多个运动候选重排序。
条款37.根据条款34所述的方法,其中如果当前GPM划分通过第三划分角度、第三划分模式或第三划分距离中的一项被分割,则左侧模板和上方模板被用于对所述多个运动候选重排序。
条款38.根据条款34所述的方法,其中模板的类型基于模板的所述类型和相关联的GPM划分信息之间的对应信息被指定。
条款39.根据条款38所述的方法,其中至少一个表被用于将所述关联的GPM划分信息映射到模板的所述类型。
条款40.根据条款1所述的方法,其中第一单向预测GPM候选列表中的第一组运动候选不被重排序,并且其中以下至少一项中的第二组运动候选被重排序:第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,或者第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
条款41.根据条款1所述的方法,其中对所述多个运动候选重排序包括:根据一个或多个准则自适应地对GPM候选列表中的所述多个运动候选重新排列。
条款42.根据条款41所述的方法,其中所述GPM候选列表包括以下之一:第一单向预测GPM候选列表,第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,或者第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
条款43.根据条款41所述的方法,其中所述GPM候选列表中的所述多个运动候选被划分为第一数目的子组。
条款44.根据条款43所述的方法,其中子组中的所述第一数目的运动候选是预定义的。
条款45.根据条款41所述的方法,其中对所述多个运动候选重排序包括:在所述GPM候选列表的至少一部分的构建过程之后,对所述多个运动候选重排序。
条款46.根据条款45所述的方法,其中如果所述多个运动候选中的运动候选的第一子组在所述多个运动候选中的运动候选的第二子组之前被添加,所述第一子组被重排序,运动候选的经重排序的所述第一子组在所述第二子组之前被添加到所述GPM候选列表中。
条款47.根据条款45所述的方法,其中所述构建过程包括修剪方法。
条款48.根据条款41所述的方法,其中自适应地对所述GPM候选列表中的所述多个运动候选重新排列包括:在检索所述目标运动候选之前,自适应地对所述GPM候选列表中的所述多个运动候选重新排列。
条款49.根据条款48所述的方法,其中在获得在与所述目标块相关联的运动补偿过程中正在被使用的目标运动候选之前,自适应地对所述多个运动候选重新排列。
条款50.根据条款41所述的方法,其中所述一个或多个准则是基于模板匹配成本。
条款51.根据条款50所述的方法,其中当前模板和与所述目标块相关联的参考模板之间的成本函数包括以下之一:绝对差之和(SAD),绝对差的平均去除和(MR-SAD),绝对变换差之和(SATD),平均去除SATD(MR-SATD),平方差之和(SSD),平均去除SSD(MR-SSD),平方误差之和(SSE),平均去除SSE(MR-SSE),加权SAD,加权MR-SAD,加权SATD,加权MR-SATD,加权SSD,加权MR-SSD,加权SSE,加权MR-SSE,或梯度信息。
条款52.根据条款1所述的方法,其中所述目标块包括两个几何划分,并且其中如果模板匹配(TM)未被应用于一个几何划分,则所述几何划分的运动根据来自第一单向预测GPM候选列表或第一经重排序的单向预测GPM候选列表的合并索引被导出。
条款53.根据条款1所述的方法,其中所述目标块包括两个几何划分,并且其中如果TM被应用于一个几何划分,则所述几何划分的运动根据基于划分角和划分索引的来自以下之一的合并索引被导出:第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,经重排序的第二单向预测GPM候选列表,第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,经重排序的第三单向预测GPM候选列表,第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模版和上方模板被细化,或者经重排序的第四单向预测GPM候选列表。
条款54.根据条款53所述的方法,其中如果所述划分角是预定值,则针对来自所述两个几何分割的第一几何分割,所述第二单向预测GPM候选列表或经重排序的所述第二单向预测GPM候选列表被用于导出所述运动,并且针对来自所述两个几何划分的第二几何划分,所述第四单向预测GPM候选列表或经重排序的所述第四单向预测GPM候选列表被用于导出所述运动。
条款55.根据条款1所述的方法,其中所述目标块包括两个几何划分,并且其中如果TM被应用于一个几何划分,则所述几何划分的运动根据来自以下之一的合并索引被导出:第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,经重排序的第二单向预测GPM候选列表,第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,经重排序的第三单向预测GPM候选列表,第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模版和上方模板被细化,或者经重排序的第四单向预测GPM候选列表。
条款56.根据条款1所述的方法,还包括以下至少一项:基于所述多个运动候选的类别信息,确定是否对所述多个运动候选重排序;或者基于所述多个运动候选的类别信息,确定如何对所述多个运动候选重排序。
条款57.根据条款56所述的方法,其中所述多个运动候选中的基于GPM奇偶校验的候选被重排序。
条款58.根据条款56所述的方法,其中所述多个运动候选中的基于GPM奇偶校验的候选和基于GPM反奇偶校验的候选被重排序。
条款59.根据条款26所述的方法,其中所述多个运动候选中的GPM填充候选不被重排序。
条款60.根据条款26所述的方法,其中来自不同GPM候选列表的候选不被比较和/或不被重排序。
条款61.根据条款26所述的方法,其中前N个所述运动候选被排序,并且N表示整数。
条款62.根据条款61所述的方法,其中N被设置为等于5。
条款63.根据条款1所述的方法,其中所述目标块包括以下至少一项:具有合并模式的经GPM编解码的块,或具有高级运动矢量预测(AMVP)模式的经GPM编解码的块。
条款64.根据条款1所述的方法,其中所述多个运动候选包括以下至少一项:多个GPM合并候选,或多个GPM AMVP候选。
条款65.根据条款1所述的方法,其中所述转换包括将所述目标块编码到所述码流中。
条款66.根据条款1所述的方法,其中所述转换包括从所述码流中解码所述目标块。
条款67.根据条款1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示在以下之一处被指示:序列级别,图片组级别,图片级别,条带级别,或图块组级别。
条款68.根据条款1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示在以下之一中被指示:序列头,图片头,序列参数集(SPS),视频参数集(VPS),依赖参数集(DPS),解码能力信息(DCI),图片参数集(PPS),自适应参数集(APS),条带头,或者图块组头。
条款69.根据条款1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示被包括在以下之一中:预测块(PB),变换块(TB),编解码块(CB),预测单元(PU),变换单元(TU),编解码单元(CU),虚拟流水线数据单元(VPDU),编解码树单元(CTU),CTU行,条带,图块,子图片,或包含多个样本或像素的区域。
条款70.根据条款1-64中任一项所述的方法,还包括:基于所述目标块的经编解码的信息,确定是否和/或如何对所述多个运动候选重排序,所述经编解码的信息包括以下至少一项:编解码模式,块大小,颜色格式,单树和/或双树划分,颜色分量,GPM划分信息,条带类型,或图片类型。
条款71.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据条款1-70中任一项所述的方法。
条款72.一种非暂态计算机可读存储介质,存储使处理器执行根据条款1-70中任一项所述的方法的指令。
条款73.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:确定被应用于所述视频的目标块的编解码模式;响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;以及使用经重排序的所述多个运动候选生成所述目标块的码流。
条款74.一种用于存储视频的码流的方法,包括:确定被应用于所述视频的目标块的编解码模式;响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;使用经重排序的所述多个运动候选生成所述目标块的码流;以及将所述码流存储在非暂态计算机可读记录介质中。
示例设备
图41示出了可以在其中实现本公开的各种实施例的计算设备4100的框图。计算设备4100可以被实现为源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300),或者可以被包括在源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300)中。
应当理解的是,图41中示出的计算设备4100仅为了说明的目的,而不是以任何方式暗示对本公开实施例的功能和范围的任何限制。
如图41所示,计算设备4100包括通用计算设备4100。计算设备4100可以至少包括一个或多个处理器或处理单元4110、存储器4120、存储单元4130、一个或多个通信单元4140、一个或多个输入设备4150以及一个或多个输出设备4160。
在一些实施例中,计算设备4100可以被实现为具有计算能力的任何用户终端或服务器终端。服务器终端可以是由服务提供商提供的服务器、大型计算设备等。用户终端例如可以是任何类型的移动终端、固定终端或便携式终端,包括移动电话、站、单元、设备、多媒体计算机、多媒体平板计算机、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或其任何组合,并且包括这些设备的附件和外围设备或其任何组合。可以设想的是,计算设备4100可以支持到用户的任何类型的接口(诸如“可穿戴”电路装置等)。
处理单元4110可以是物理处理器或虚拟处理器,并且可以基于存储在存储器4120中的程序实现各种处理。在多处理器系统中,多个处理单元并行地执行计算机可执行指令,以便改善计算设备4100的并行处理能力。处理单元4110也可以被称为中央处理单元(CPU)、微处理器、控制器或微控制器。
计算设备4100通常包括各种计算机存储介质。这样的介质可以是由计算设备4100可访问的任何介质,包括但不限于易失性介质和非易失性介质、或可拆卸介质和不可拆卸介质。存储器4120可以是易失性存储器(例如,寄存器、高速缓存、随机存取存储器(RAM))、非易失性存储器(诸如只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)或闪存)或其任何组合。存储单元4130可以是任何可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如存储器、闪存驱动器、磁盘或其他可以被用于存储信息和/或数据并且可以在计算设备4100中被访问的介质。
计算设备4100还可以包括附加的可拆卸/不可拆卸存储介质、易失性/非易失性存储介质。尽管在图41中未示出,但是可以提供用于从可拆卸的非易失性磁盘读取和/或写入可拆卸的非易失性磁盘的磁盘驱动器,以及用于从可拆卸的非易失性光盘读取和/或写入可拆卸的非易失性光盘的光盘驱动器。在这种情况下,每个驱动器可以经由一个或多个数据介质接口连接到总线(未示出)。
通信单元4140经由通信介质与另一计算设备通信。另外,计算设备4100中的组件的功能可以由可以经由通信连接进行通信的单个计算集群或多个计算机器来实现。因此,计算设备4100可以使用与一个或多个其他服务器、联网个人计算机(PC)或其他通用网络节点的逻辑连接来在联网环境中运行。
输入设备4150可以是各种输入设备中的一种或多种输入设备,诸如鼠标、键盘、轨迹球、语音输入设备等。输出设备4160可以是各种输出设备中的一种或多种输出设备,诸如显示器、扬声器、打印机等。借助于通信单元4140,计算设备4100还可以与一个或多个外部设备(未示出)通信,外部设备诸如是存储设备和显示设备,计算设备4100还可以与一个或多个使用户能够与计算设备4100交互的设备通信,或任何使计算设备4100能够与一个或多个其他计算设备通信的设备(例如网卡、调制解调器等)通信,如果需要的话。这种通信可以经由输入/输出(I/O)接口(未示出)进行。
在一些实施例中,计算设备4100的一些或所有组件也可以被布置在云计算架构中,而不是被集成在单个设备中。在云计算架构中,组件可以被远程提供并且共同工作,以实现本公开中描述的功能。在一些实施例中,云计算提供计算、软件、数据访问和存储服务,这将不要求最终用户知晓提供这些服务的系统或硬件的物理位置或配置。在各种实施例中,云计算使用合适的协议经由广域网(例如互联网)提供服务。例如,云计算提供商通过广域网提供应用程序,可以通过网络浏览器或任何其他计算组件访问这些应用程序。云计算架构的软件或组件以及对应的数据可以存储在远程服务器上。云计算环境中的计算资源可以被合并或分布在远程数据中心的位置。云计算基础设施可以通过共享数据中心提供服务,尽管它们表现为作为用户的单一接入点。因此,云计算架构可与被用于从远程位置的服务提供商处提供本文所述的组件和功能。备选地,它们可以由常规服务器提供,或者直接或以其他方式安装在客户端设备上。
在本公开的实施例中,计算设备4100可以被用于实现视频编码/解码。存储器4120可以包括具有一个或多个程序指令的一个或多个视频编解码模块4125。这些模块能够由处理单元4110访问和执行,以执行本文描述的各种实施例的功能。
在执行视频编码的示例实施例中,输入设备4150可以接收视频数据作为待编码的输入4170。视频数据可以由例如视频编解码模块4125处理,以生成经编码的码流。经编码的码流可以经由输出设备4160作为输出4180被提供。
在执行视频解码的示例实施例中,输入设备4150可以接收经编码的码流作为输入4170。经编码的码流可以由例如视频编解码模块4125处理,以生成经解码的视频数据。经解码的视频数据可以经由输出设备4160作为输出4180被提供。
虽然已经参考本公开的优选实施例具体示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求限定的本申请的精神和范围的情况下,可以在形式和细节上进行各种改变。这些变化旨在由本申请的范围所涵盖。因此,本申请的实施例的前述描述不旨在是限制性的。

Claims (74)

1.一种用于视频处理的方法,包括:
在视频的目标块和所述目标块的码流之间的转换期间,确定被应用于所述目标块的编解码模式;
响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;以及
使用经重排序的所述多个运动候选执行所述转换。
2.根据权利要求1所述的方法,其中对所述多个运动候选重排序包括:
对第一单向预测GPM候选列表中的所述多个运动候选重排序。
3.根据权利要求2所述的方法,其中所述第一单向预测GPM候选列表中的至少两个运动候选被重排序。
4.根据权利要求1所述的方法,其中如果一组运动候选在第一单向预测GPM候选列表中,则所述一组运动候选不被重排序。
5.根据权利要求2所述的方法,其中至少一种类型的模板被用于对第一单向预测GPM候选列表中的所述多个运动候选重排序。
6.根据权利要求2所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
7.根据权利要求2所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本。
8.根据权利要求2所述的方法,其中与所述目标块相关联的第三模板包括所述目标块左侧的一组邻近样本和所述目标块上方的一组邻近样本。
9.根据权利要求2所述的方法,其中对所述多个运动候选重排序包括:
在与所述目标块相关联的解析过程之后并且在与所述目标块相关联的运动矢量重建过程之前,对所述多个运动候选重排序。
10.根据权利要求1所述的方法,其中所述对所述多个运动候选重排序包括:
对第二单向预测GPM候选列表中的所述多个运动候选重排序,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化。
11.根据权利要求10所述的方法,其中所述第二单向预测GPM候选列表中的至少两个运动候选被重排序。
12.根据权利要求10所述的方法,其中至少一种类型的模板被用于对第二单向预测GPM候选列表中的所述多个运动候选重排序,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化。
13.根据权利要求10所述的方法,其中与所述目标块相关联的第一模板包括所述目标块上方的一组邻近样本。
14.根据权利要求10所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的所述一组邻近样本和所述目标块左侧的一组邻近样本。
15.根据权利要求1所述的方法,其中所述对所述多个运动候选重排序包括:
对第三单向预测GPM候选列表中的所述多个运动候选重排序,所述第三单向预测GPM候选列表使用所述目标块的左侧模版被细化。
16.根据权利要求15所述的方法,其中所述第三单向预测GPM候选列表中的至少两个运动候选被重排序。
17.根据权利要求15所述的方法,其中至少一种类型的模板被用于对第三单向预测GPM候选列表中的所述多个运动候选重排序,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化。
18.根据权利要求15所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
19.根据权利要求15所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本和所述目标块左侧的所述一组邻近样本。
20.根据权利要求1所述的方法,其中所述对所述多个运动候选重排序包括:
对第四单向预测GPM候选列表中的所述多个运动候选重排序,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
21.根据权利要求20所述的方法,其中所述第四单向预测GPM候选列表中的至少两个运动候选被重排序。
22.根据权利要求20所述的方法,其中至少一种类型的模板被用于对第四单向预测GPM候选列表中的所述多个运动候选重排序,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模板被细化。
23.根据权利要求20所述的方法,其中与所述目标块相关联的第一模板包括所述目标块左侧的一组邻近样本。
24.根据权利要求20所述的方法,其中与所述目标块相关联的第二模板包括所述目标块上方的一组邻近样本。
25.根据权利要求20所述的方法,其中与所述目标块相关联的第三模板包括所述目标块左侧的一组邻近样本和所述目标块上方的一组邻近样本。
26.根据权利要求1所述的方法,还包括以下至少一项:
基于与所述目标块相关联的编解码信息,确定是否对所述多个运动候选重排序;或者
基于与所述目标块相关联的编解码信息,确定如何对所述多个运动候选重排序。
27.根据权利要求26所述的方法,其中确定是否对所述多个运动候选重排序包括:
根据基于模板匹配的运动细化是否被应用于所述目标块的GPM划分或两个GPM划分,确定是否对所述多个运动候选重排序。
28.根据权利要求27所述的方法,其中如果所述基于模板匹配的运动细化未被应用于GPM划分,则所述GPM划分的所述多个运动候选不被重排序。
29.根据权利要求28所述的方法,其中如果所述目标块的GPM划分使用第一单向预测GPM候选列表中的运动候选被编解码,则所述第一单向预测GPM候选列表中的所述多个运动候选不被重排序。
30.根据权利要求27所述的方法,其中如果所述基于模板匹配的运动细化被应用于GPM划分,则所述GPM划分的所述多个运动候选被重排序。
31.根据权利要求30所述的方法,其中如果所述目标块的GPM划分使用第二单向预测GPM候选列表中的运动候选被编解码,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,则所述第二单向预测GPM候选列表中的所述多个运动候选被重排序。
32.根据权利要求30所述的方法,其中如果所述目标块的GPM划分使用第三单向预测GPM候选列表中的运动候选被编解码,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,则所述第三单向预测GPM候选列表中的所述多个运动候选被重排序。
33.根据权利要求30所述的方法,其中如果所述目标块的GPM划分使用第四单向预测GPM候选列表中的运动候选被编解码,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模板被细化,则所述第四单向预测GPM候选列表中的所述多个运动候选被重排序。
34.根据权利要求26所述的方法,其中确定如何对所述多个运动候选重排序包括:
基于与所述目标块相关联GPM划分信息,确定如何对所述多个运动候选重排序。
35.根据权利要求34所述的方法,其中如果当前GPM划分通过第一划分角度、第一划分模式或第一划分距离中的一项被分割,则上方模板被用于对所述多个运动候选重排序。
36.根据权利要求34所述的方法,其中如果当前GPM划分通过第二划分角度、第二划分模式或第二划分距离中的一项被分割,则左侧模板被用于对所述多个运动候选重排序。
37.根据权利要求34所述的方法,其中如果当前GPM划分通过第三划分角度、第三划分模式或第三划分距离中的一项被分割,则左侧模板和上方模板被用于对所述多个运动候选重排序。
38.根据权利要求34所述的方法,其中模板的类型基于模板的所述类型和相关联的GPM划分信息之间的对应信息被指定。
39.根据权利要求38所述的方法,其中至少一个表被用于将所述关联的GPM划分信息映射到模板的所述类型。
40.根据权利要求1所述的方法,其中第一单向预测GPM候选列表中的第一组运动候选不被重排序,并且
其中以下至少一项中的第二组运动候选被重排序:
第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,
第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,或者
第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
41.根据权利要求1所述的方法,其中对所述多个运动候选重排序包括:
根据一个或多个准则自适应地对GPM候选列表中的所述多个运动候选重新排列。
42.根据权利要求41所述的方法,其中所述GPM候选列表包括以下之一:
第一单向预测GPM候选列表,
第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,
第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,或者
第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模板和上方模版被细化。
43.根据权利要求41所述的方法,其中所述GPM候选列表中的所述多个运动候选被划分为第一数目的子组。
44.根据权利要求43所述的方法,其中子组中的所述第一数目的运动候选是预定义的。
45.根据权利要求41所述的方法,其中对所述多个运动候选重排序包括:
在所述GPM候选列表的至少一部分的构建过程之后,对所述多个运动候选重排序。
46.根据权利要求45所述的方法,其中如果所述多个运动候选中的运动候选的第一子组在所述多个运动候选中的运动候选的第二子组之前被添加,所述第一子组被重排序,运动候选的经重排序的所述第一子组在所述第二子组之前被添加到所述GPM候选列表中。
47.根据权利要求45所述的方法,其中所述构建过程包括修剪方法。
48.根据权利要求41所述的方法,其中自适应地对所述GPM候选列表中的所述多个运动候选重新排列包括:
在检索所述目标运动候选之前,自适应地对所述GPM候选列表中的所述多个运动候选重新排列。
49.根据权利要求48所述的方法,其中在获得在与所述目标块相关联的运动补偿过程中正在被使用的目标运动候选之前,自适应地对所述多个运动候选重新排列。
50.根据权利要求41所述的方法,其中所述一个或多个准则是基于模板匹配成本。
51.根据权利要求50所述的方法,其中当前模板和与所述目标块相关联的参考模板之间的成本函数包括以下之一:
绝对差之和(SAD),
绝对差的平均去除和(MR-SAD),
绝对变换差之和(SATD),
平均去除SATD(MR-SATD),
平方差之和(SSD),
平均去除SSD(MR-SSD),
平方误差之和(SSE),
平均去除SSE(MR-SSE),
加权SAD,
加权MR-SAD,
加权SATD,
加权MR-SATD,
加权SSD,
加权MR-SSD,
加权SSE,
加权MR-SSE,或
梯度信息。
52.根据权利要求1所述的方法,其中所述目标块包括两个几何划分,并且
其中如果模板匹配(TM)未被应用于一个几何划分,则所述几何划分的运动根据来自第一单向预测GPM候选列表或第一经重排序的单向预测GPM候选列表的合并索引被导出。
53.根据权利要求1所述的方法,其中所述目标块包括两个几何划分,并且
其中如果TM被应用于一个几何划分,则所述几何划分的运动根据基于划分角和划分索引的来自以下之一的合并索引被导出:
第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,
经重排序的第二单向预测GPM候选列表,
第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,
经重排序的第三单向预测GPM候选列表,
第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模版和上方模板被细化,或者
经重排序的第四单向预测GPM候选列表。
54.根据权利要求53所述的方法,其中如果所述划分角是预定值,则针对来自所述两个几何分割的第一几何分割,所述第二单向预测GPM候选列表或经重排序的所述第二单向预测GPM候选列表被用于导出所述运动,并且
针对来自所述两个几何划分的第二几何划分,所述第四单向预测GPM候选列表或经重排序的所述第四单向预测GPM候选列表被用于导出所述运动。
55.根据权利要求1所述的方法,其中所述目标块包括两个几何划分,并且
其中如果TM被应用于一个几何划分,则所述几何划分的运动根据来自以下之一的合并索引被导出:
第二单向预测GPM候选列表,所述第二单向预测GPM候选列表使用所述目标块的上方模板被细化,
经重排序的第二单向预测GPM候选列表,
第三单向预测GPM候选列表,所述第三单向预测GPM候选列表使用所述目标块的左侧模板被细化,
经重排序的第三单向预测GPM候选列表,
第四单向预测GPM候选列表,所述第四单向预测GPM候选列表使用所述目标块的左侧模版和上方模板被细化,或者
经重排序的第四单向预测GPM候选列表。
56.根据权利要求1所述的方法,还包括以下至少一项:
基于所述多个运动候选的类别信息,确定是否对所述多个运动候选重排序;或者
基于所述多个运动候选的类别信息,确定如何对所述多个运动候选重排序。
57.根据权利要求56所述的方法,其中所述多个运动候选中的基于GPM奇偶校验的候选被重排序。
58.根据权利要求56所述的方法,其中所述多个运动候选中的基于GPM奇偶校验的候选和基于GPM反奇偶校验的候选被重排序。
59.根据权利要求26所述的方法,其中所述多个运动候选中的GPM填充候选不被重排序。
60.根据权利要求26所述的方法,其中来自不同GPM候选列表的候选不被比较和/或不被重排序。
61.根据权利要求26所述的方法,其中前N个所述运动候选被排序,并且N表示整数。
62.根据权利要求61所述的方法,其中N被设置为等于5。
63.根据权利要求1所述的方法,其中所述目标块包括以下至少一项:
具有合并模式的经GPM编解码的块,或
具有高级运动矢量预测(AMVP)模式的经GPM编解码的块。
64.根据权利要求1所述的方法,其中所述多个运动候选包括以下至少一项:
多个GPM合并候选,或
多个GPM AMVP候选。
65.根据权利要求1所述的方法,其中所述转换包括将所述目标块编码到所述码流中。
66.根据权利要求1所述的方法,其中所述转换包括从所述码流中解码所述目标块。
67.根据权利要求1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示在以下之一处被指示:
序列级别,
图片组级别,
图片级别,
条带级别,或
图块组级别。
68.根据权利要求1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示在以下之一中被指示:
序列头,
图片头,
序列参数集(SPS),
视频参数集(VPS),
依赖参数集(DPS),
解码能力信息(DCI),
图片参数集(PPS),
自适应参数集(APS),
条带头,或者
图块组头。
69.根据权利要求1-64中任一项所述的方法,其中是否和/或如何对所述多个运动候选重排序的指示被包括在以下之一中:
预测块(PB),
变换块(TB),
编解码块(CB),
预测单元(PU),
变换单元(TU),
编解码单元(CU),
虚拟流水线数据单元(VPDU),
编解码树单元(CTU),
CTU行,
条带,
图块,
子图片,或
包含多个样本或像素的区域。
70.根据权利要求1-64中任一项所述的方法,还包括:
基于所述目标块的经编解码的信息,确定是否和/或如何对所述多个运动候选重排序,所述经编解码的信息包括以下至少一项:
编解码模式,
块大小,
颜色格式,
单树和/或双树划分,
颜色分量,
GPM划分信息,
条带类型,或
图片类型。
71.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-70中任一项所述的方法。
72.一种非暂态计算机可读存储介质,存储使处理器执行根据权利要求1-70中任一项所述的方法的指令。
73.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:
确定被应用于所述视频的目标块的编解码模式;
响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;以及
使用经重排序的所述多个运动候选生成所述目标块的码流。
74.一种用于存储视频的码流的方法,包括:
确定被应用于所述视频的目标块的编解码模式;
响应于所述编解码模式是几何划分模式(GPM),对与所述目标块相关联的多个运动候选重排序;
使用经重排序的所述多个运动候选生成所述目标块的码流;以及
将所述码流存储在非暂态计算机可读记录介质中。
CN202280050024.0A 2021-07-15 2022-07-14 用于视频处理的方法、装置和介质 Pending CN117813820A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2021106622 2021-07-15
CNPCT/CN2021/106622 2021-07-15
PCT/CN2022/105660 WO2023284817A1 (en) 2021-07-15 2022-07-14 Method, apparatus, and medium for video processing

Publications (1)

Publication Number Publication Date
CN117813820A true CN117813820A (zh) 2024-04-02

Family

ID=84919042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280050024.0A Pending CN117813820A (zh) 2021-07-15 2022-07-14 用于视频处理的方法、装置和介质

Country Status (3)

Country Link
US (1) US20240155149A1 (zh)
CN (1) CN117813820A (zh)
WO (1) WO2023284817A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023200643A2 (en) * 2022-04-12 2023-10-19 Dolby Laboratories Licensing Corporation Geometric partition mode in video coding

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10911769B2 (en) * 2017-06-23 2021-02-02 Qualcomm Incorporated Motion-based priority for the construction of candidate lists in video coding
WO2019201264A1 (en) * 2018-04-18 2019-10-24 Mediatek Inc. Candidate reorganizing with advanced control in video coding
US11159788B2 (en) * 2018-08-03 2021-10-26 Mediatek Inc. Method and apparatus of enhanced Intra Block Copying mode for video coding
CN112219400B (zh) * 2018-11-06 2024-03-26 北京字节跳动网络技术有限公司 依赖位置的对运动信息的存储
US11533498B2 (en) * 2019-11-21 2022-12-20 Tencent America LLC Geometric partitioning mode in video coding

Also Published As

Publication number Publication date
US20240155149A1 (en) 2024-05-09
WO2023284817A1 (en) 2023-01-19

Similar Documents

Publication Publication Date Title
CN115086675A (zh) 运动候选推导
US20240155149A1 (en) Method, apparatus, and medium for video processing
CN117529919A (zh) 用于视频处理的方法、设备和介质
WO2022222990A1 (en) Method, device, and medium for video processing
CN117795960A (zh) 用于视频处理的方法、装置和介质
CN117561711A (zh) 用于视频处理的方法、装置和介质
CN117529920A (zh) 用于视频处理的方法、设备和介质
CN117321992A (zh) 自适应运动候选列表
CN117616756A (zh) 用于视频处理的方法、设备和介质
CN117426095A (zh) 用于视频处理的方法、设备和介质
WO2022228430A1 (en) Method, device, and medium for video processing
CN117337564A (zh) 用于视频处理的方法、装置和介质
WO2023060912A1 (en) Method, apparatus, and medium for video processing
WO2024012460A1 (en) Method, apparatus, and medium for video processing
WO2022242645A1 (en) Method, device, and medium for video processing
WO2023078430A1 (en) Method, apparatus, and medium for video processing
CN117426096A (zh) 用于视频处理的方法、设备和介质
CN117678220A (zh) 用于视频处理的方法、装置和介质
CN117652142A (zh) 用于视频处理的方法、设备和介质
CN117678223A (zh) 视频处理的方法、装置和介质
CN117581538A (zh) 视频处理的方法、设备和介质
CN117561714A (zh) 用于视频处理的方法、设备和介质
CN117957837A (zh) 用于视频处理的方法、装置和介质
CN117501690A (zh) 用于视频处理的方法、设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication