CN117678220A - 用于视频处理的方法、装置和介质 - Google Patents
用于视频处理的方法、装置和介质 Download PDFInfo
- Publication number
- CN117678220A CN117678220A CN202280045666.1A CN202280045666A CN117678220A CN 117678220 A CN117678220 A CN 117678220A CN 202280045666 A CN202280045666 A CN 202280045666A CN 117678220 A CN117678220 A CN 117678220A
- Authority
- CN
- China
- Prior art keywords
- motion
- candidate
- motion candidate
- list
- current video
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 498
- 238000012545 processing Methods 0.000 title claims abstract description 46
- 230000033001 locomotion Effects 0.000 claims abstract description 1276
- 238000006243 chemical reaction Methods 0.000 claims abstract description 25
- 230000007704 transition Effects 0.000 claims abstract description 13
- 239000013598 vector Substances 0.000 claims description 198
- 238000005192 partition Methods 0.000 claims description 151
- 230000008569 process Effects 0.000 claims description 60
- 238000000638 solvent extraction Methods 0.000 claims description 32
- 239000000523 sample Substances 0.000 claims description 31
- 230000003044 adaptive effect Effects 0.000 claims description 19
- 238000013459 approach Methods 0.000 claims description 17
- 230000002123 temporal effect Effects 0.000 claims description 15
- 238000012935 Averaging Methods 0.000 claims description 13
- 230000015654 memory Effects 0.000 claims description 13
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 10
- 238000007670 refining Methods 0.000 claims description 7
- 239000013074 reference sample Substances 0.000 claims description 4
- 238000005286 illumination Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims 3
- 239000000463 material Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 22
- 238000013138 pruning Methods 0.000 description 18
- 230000011664 signaling Effects 0.000 description 11
- 238000010276 construction Methods 0.000 description 9
- 238000009795 derivation Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013139 quantization Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 241000342334 Human metapneumovirus Species 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开的实施例提供了一种用于视频处理的方法。该方法包括:在视频的当前视频块与视频的码流之间的转换期间,基于针对当前视频块的目标运动候选与针对当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中;以及基于该确定执行转换。有利地,所提出对方法可以更有效地填充预测列表。
Description
技术领域
本公开的实施例总体上涉及视频编解码技术,更具体地,涉及预测列表的修剪和具有运动矢量差的合并模式(MMVD)和模板匹配的关联。
背景技术
如今,数字视频功能正被应用于人们生活的各个方面。已经提出了多种类型的视频压缩技术用于视频编码/解码,例如MPEG-2、MPEG-4、ITU-TH263、ITU-TH-264/MPEG-4第10部分高级视频编解码(AVC)、ITU-TH.265高效视频编解码(HEVC)标准、通用视频编解码(VVC)标准。然而,传统视频编解码技术的编解码效率有望进一步提升。
发明内容
在第一方面,提出了一种用于视频处理的方法,该方法包括:在视频的当前视频块和视频的码流之间的转换期间,基于目标运动候选和预测列表中的至少一个现有运动候选之间的比较,确定是否将当前视频块的目标运动候选插入到当前视频块的预测列表中;以及基于该确定执行转换。
根据关于本公开的第一方面的方法,目标运动候选与预测列表中的至少一个现有运动候选被比较,以确定是否将目标运动候选插入到预测列表中。由此,所提出的方法可以有利地、更有效地修剪和填充预测列表,从而可以提高编解码效率。
在第二方面,提出了另一种用于视频处理的方法。该方法包括:在视频的当前视频块与视频的码流之间的转换期间,如果基于模板匹配的运动细化被应用于针对当前视频块的运动候选,则对针对当前视频块的预测列表重新排序;以及基于重新排序的预测列表执行转换。
根据关于本公开的第二方面的方法,预测列表在基于模板匹配的运动细化被应用的情况下被重新排序。因此,所提出的方法可以有利地提高编解码效率和编解码质量。
在第三方面,提出了另一种用于视频处理的方法。该方法包括:在视频的当前视频块与视频的码流之间的转换期间,基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对当前视频块的目标运动信息,隐式运动细化方案是解码器侧运动细化方案,显式运动细化方案被用于确定在码流中被指示的运动差信息;以及基于目标运动信息执行转换。
根据本公开的第三方面的方法实现了MMVD和模板匹配的关联,这可以有利地提高编解码效率并提供更高的编解码增益。
在第四方面,提出了一种用于处理视频数据的装置,该装置包括处理器和其上具有指令的非暂态存储器,该指令在被处理器执行时使处理器执行根据本公开的第一方面、第二方面或第三方面的方法。
在第五方面,提出了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储使处理器执行根据本公开的第一方面、第二方面或第三方面的方法的指令。
在第六方面,提出了一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中该方法包括:基于针对视频的当前视频块的目标运动候选与针对当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中;以及基于该确定生成码流。
在第七方面,提出了一种用于存储视频码流的方法,该方法包括:基于针对视频的当前视频块的目标运动候选与针对当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中;基于该确定生成码流;以及将码流存储在非暂态计算机可读记录介质中。
在第八方面,提出了另一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中该方法包括:如果基于模板匹配的运动细化被应用于针对视频的当前视频块的运动候选,则对针对当前视频块的预测列表重新排序;以及基于该重新排序的预测列表生成码流。
在第九方面,提出了另一种用于存储视频的码流的方法,该方法包括:如果基于模板匹配的运动细化被应用于针对视频的当前视频块的运动候选,则对针对当前视频块的预测列表重新排序;基于该重新排序的预测列表生成码流;以及将该码流存储在非暂态计算机可读记录介质中。
在第十方面,提出了另一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中该方法包括:基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对视频的当前视频块的目标运动信息,隐式运动细化方案是解码器侧运动细化方案,显式运动细化方案被用于确定在码流中被指示的运动差信息;以及基于该目标运动信息生成码流。
在第十一方面,提出了另一种用于存储视频的码流的方法,该方法包括:基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对视频的当前视频块的目标运动信息,隐式运动细化方案是解码器侧运动细化方案,显式运动细化方案被用于确定在码流中被指示的运动差信息;基于该目标运动信息生成码流;以及将该码流存储在非暂态计算机可读记录介质中。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或必要特征,也无意限制本公开的范围。
附图说明
通过参考附图的以下详细描述,本公开的示例实施例的上述和其他目的、特征和优点将变得更加明显。在本公开的示例实施例中,相同的附图标记通常指代相同的组件。
图1示出了根据本公开的一些实施例的示例视频编码系统的框图;
图2示出了根据本公开的一些实施例的第一示例视频编码器的框图;
图3示出了根据本公开的一些实施例的示例视频解码器的框图;
图4是示出了空间合并候选的位置的示意图;
图5是示出了用于空间合并候选的冗余检查的候选对的示意图;
图6是示出了时间合并候选的运动向量缩放的示意图;
图7是示出了时间合并候选C0和C1的候选位置的示意图;
图8是示出了具有运动矢量差的合并模式(MMVD)搜索点的示意图;
图9是示出了解码侧运动向量细化的示意图;
图10示出了按相同角度分组的几何划分模式(GPM)分割的示例;
图11是示出了用于几何划分模式的单向预测MV选择的示意图;
图12是示出了使用几何划分模式的弯曲权重w0的示例生成的示意图;
图13示出了根据本公开的一些实施例的用于视频处理的方法的流程图;
图14示出了根据本公开的一些实施例的另一种用于视频处理的方法的流程图;
图15示出了根据本公开的一些实施例的另一种用于视频处理的方法的流程图;以及
图16示出了其中可以实现本公开的各种实施例的计算设备的框图。
在附图中,相同或相似的附图标记通常指代相同或相似元素。
具体实施方式
现在将参考一些实施例来描述本公开的原理。应当理解的是,描述这些实施例仅出于说明并且帮助本领域技术人员理解和实施本公开的目的,而不暗示对本公开的范围的任何限制。除了下文所述的方式之外,本文所描述的公开内容还可以以各种方式实施。
在以下描述和权利要求中,除非另有定义,否则在本文中使用的所有科学术语和技术术语具有与本公开所属领域的普通技术人员通常理解的含义相同的含义。
本公开中提及的“一个实施例”、“实施例”、“示例实施例”等指示所描述的实施例可以包括特定的特征、结构或特性,但是并非每个实施例都必须包括该特定的特征、结构或特性。此外,这些短语不一定指相同的实施例。此外,当结合示例实施例描述特定的特征、结构或特性时,无论是否明确描述,认为影响与其他实施例相关的这种特征、结构或特性在本领域技术人员的知识范围内。
应当理解的是,尽管术语“第一”和“第二”等可以用于描述各种元素,但这些元素不应受限于这些术语。这些术语仅用于区分一个元素与另一个元素。例如,第一元素可以被称为第二元素,类似地,第二元素可以被称为第一元素,而不脱离示例实施例的范围。如本文中所使用的,术语“和/或”包括一个或多个所列术语的任何和所有组合。
本文中所使用的术语仅用于描述特定实施例的目的,并不旨在限制示例实施例。如本文中所用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另有明确指示。还应理解,术语“包括”、“包含”和/或“具有”在本文中使用时表示存在所述特征、元素和/或组件等,但不排除一个或多个其他特征、元素、组件和/或其组合的存在或添加。
示例环境
图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可以例如基于误差结果来选择多种编码模式(帧内(INTRA)编码或帧间(INTER)编码)中的一种编码模式,并且将所产生的帧内编解码块或帧间编解码块提供给残差生成单元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可以使用例如在码流中接收的帧内预测模式,以从空间相邻块形成预测块。反量化单元303反量化(即,去量化)在码流中提供的、并且由熵解码单元301解码的量化视频块系数。反变换单元303应用反变换。
重建单元306可以例如通过将残差块与由运动补偿单元202或帧内预测单元303生成的相应预测块相加来获取经解码的块。如果需要的话,还可以应用去块效应滤波器以对经解码的块进行滤波,以便去除块效应伪像。经解码的视频块随后被存储在缓冲307中,缓冲307为后续运动补偿/帧内预测提供参考块,并且缓冲307还产生经解码的视频以供在显示设备上呈现。
下文将详细描述本公开的一些示例性实施例。应当注意,在本文件中使用章节标题是为了便于理解,而不是将章节中公开的实施例仅限于该章节。此外,尽管参考通用视频编解码或其他特定视频编解码器描述了一些实施例,但是所公开的技术也适用于其他视频编解码技术。此外,尽管一些实施例详细描述了视频编码步骤,但是应当理解的是取消编码的相应解码步骤将由解码器实现。此外,术语视频处理包括视频编码或压缩、视频解码或解压缩以及视频转码,在该视频转码中视频像素被从一种压缩格式表示为另一种压缩格式或以不同的压缩码率表示。
1.概述
本公开涉及视频编解码技术。具体而言,它是关于视频编解码中的帧间预测和相关技术。它可以应用于现有的视频编解码标准,如HEVC、VVC等。它也可以应用于未来的视频编解码规范或视频编解码器。
2.背景
视频编解码标准主要是通过众所周知的ITU-T和ISO/IEC标准的发展而发展起来的。ITU-T产生了H.261和H.263,ISO/IEC产生了MPEG-1和MPEG-4Visual,两个组织联合产生了H.262/MPEG-2视频和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使用上下文编码,其他bin使用旁路编码。
本环节提供了各类合并候选的导出过程。如HEVC所做,VVC还支持并行导出一定大小区域内所有CU的合并候选列表。
2.1..1.空间候选导出
VVC中空间合并候选的导出与HEVC中相同,除了前两个合并候选的位置被交换。在位于图4所示位置的候选中,最多选择四个合并候选。图4是示出了空间合并候选的位置的示意图400。导出的顺序是B0、A0、B1、A1和B2。位置B2仅在位置B0、A0、B1、A1的一个或多个CU不可用(例如,因为它属于另一个条带或图块)或在帧内编码时才被考虑。添加位置A1的候选后,剩余候选的添加将受到冗余检查,该检查确保具有相同运动信息的候选被排除在列表之外,以便编解码效率提高。图5是示出了用于空间合并候选的冗余检查的候选对的示意图500。为了降低计算复杂性,并非所有可以的候选对都被考虑在所述冗余检查中。相反,仅考虑图5中的箭头链接的对,并且仅当用于冗余检查的相应候选不具有相同的运动信息时,才将候选添加到列表中。
2.1..2.时间候选导出
在该步骤中,仅将一个候选添加到列表中。特别地,在该时间合并候选的导出中,基于属于同位参考图片的同位CU导出缩放的运动向量。用于导出同位CU的参考图片列表在条带头中显式地信号传送。图6是示出了时间合并候选的运动向量缩放的示意图600。时间合并候选的缩放运动向量如图6中的虚线所示被获取,该缩放运动向量使用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),(1,3),(2,3)},其中数字表示合并候选列表的合并索引。每个参考列表分别计算平均的运动向量。如果两个运动向量在一个列表中可用,则即使它们指向不同的参考图片,这两个运动向量也会被平均;如果只有一个运动向量可用,则直接使用该运动向量;如果没有运动向量可用,则保持此列表无效。
当添加成对平均合并候选后合并列表未满时,将零MVP插入到最后,直到遇到最大合并候选数。
2.1..5.合并估计区域
合并估计区域(MER)允许独立导出相同合并估计区域(MER)中CU的合并候选列表。在与当前CU相同的MER内的候选块不被包括用于当前CU的合并候选列表的生成。此外,仅当(xCb+cbWidth)>>Log2ParMrgLevel大于xCb>>Log2ParMrgLevel并且(yCb+cbHeight)>>Log2ParMrgLevel大于(yCb>>Log2ParMrgLevel)并且(xCb,yCb)是当前CU在图片中的左上方亮度样本位置并且(cbWidth,cbHeight)是CU大小时,才更新基于历史的运动向量预测子候选列表的更新过程。MER的大小在编码器侧选择并在序列参数集中以log2_parallel_merge_level_minus2表示。
·具有MVD的合并模式(MMVD)
在合并模式中,隐式导出的运动信息直接用于当前CU的预测样本生成,除此之外,VVC引入了运动向量差合并模式(MMVD)。在发送跳过标志和合并标志后,立即发出MMVD标志来指定MMVD模式是否用于CU。
在MMVD中,在选择合并候选之后,通过信号传送的MVD信息对其进行进一步细化。进一步的信息包括合并候选标志、指定运动幅度的索引和指示运动方向的索引。在MMVD模式中,选择合并列表中前两个候选的一个作为MV基础。合并候选标志被发信号以指定使用哪一个。
距离索引指定运动幅度信息并指示与起点的预定义偏移。图8是示出了具有运动矢量差的合并模式(MMVD)搜索点的示意图。如图8所示,偏移被添加到起始MV的水平分量或分量。距离索引和预定义偏移的关系在表1中指定。
表1-距离索引与预定义偏移的关系
方向索引表示MVD相对于起始点的方向。方向指标可以表示如表所示的四个方向,需要注意的是,MVD标志的含义可以根据起始MVD的信息而变化。当起始MV为非预测MV或双向预测MV,且两个列表都指向当前图片的同一侧时(即两个引用的POC都大于当前图片的POC,或者都小于当前图片的POC),表2中的符号指定起始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 | + | - |
·解码器侧运动矢量细化(DMVR)
为了增加合并模式的MV的精度,在VVC中应用了基于双边匹配的解码器侧运动向量细化。在双向预测操作中,在参考图片列表L0和参考图片列表L1中的初始MV周围搜索细化MV。BM方法计算参考图片列表L0和列表L1中两个候选块之间的失真。图9是示出了解码侧运动向量细化的示意图。如图9所示,计算了基于初始MV周围的每个MV候选的块930和932之间的SAD。SAD最低的MV候选成为细化MV并用于生成双向预测信号。
在VVC中,DMVR可应用于具有以下模式和特性的编解码单元:
-具有双向预测MV的CU级合并模式
-相对于当前图片一个参考图片在过去另一个参考图片在未来
-两个参考图片到当前图片的距离(即POC差)是相同的
-两张参考图片均为短期参考图片
-CU有超过64个血液样本
-CU高度和CU宽度均大于等于8个亮度样本
-BCW权重索引表示权重相等
-当前块未启用WP
-当前块不使用CIIP模式
通过DMVR过程导出的精化MV用于生成帧间预测样本,也用于未来图片编码的时间运动向量预测。而原始MV用于去块过程,也用于未来CU编码的空间运动向量预测。
DMVR的附加功能在以下子条款中提到。
2.1..1.搜索方案
在DVMR中,搜索点围绕初始MV,MV偏移服从MV差镜像规则。换句话说,任何被DMVR检查的点,用候选MV对(MV0,MV1)表示,服从以下两个等式:
MV0′=MV0+MV_offset (1)
MV1′=MV1-MV_offset (2)
其中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 (3)
其中(xmin,ymin)对应于成本最小的分数位置,C对应于成本最小值。通过使用五个搜索点的成本值求解上述公式,(xmin,ymin)被计算为:
xmin=(E(-1,0)-E(1,0))/(2(E(-1,0)+E(1,0)-2E(0,0))) (4)
ymin=(E(0,-1)-E(0,1))/(2((E(0,-1)+E(0,1)-2E(0,0))) (5)
xmin和ymin的值自动限制在-8和8之间,因为所有成本值都是正的,最小值是E(0,0)。这对应于1/16像素MV精度在VVC的一半像素偏移。计算出的分数(xmin,ymin)被添加到整数距离细化MV以获取亚像素精确的细化增量MV。
2.1..2.双线性插值和样本填充
在VVC中,MV的分辨率为1/16亮度样本,使用8抽头插值滤波器对分数位置的样本进行插值。在DMVR中,搜索点以整数样本便宜围绕分数MV,样本偏移量为整数,因此需要对这些分数位置的样本进行插值以进行DMVR搜索过程。为了降低计算复杂度,因此使用双线性插值滤波器生成用于DMVR搜索过程的分数样本。另一个重要影响是,使用双线性滤波器时,与正常运动补偿过程相比,DVMR在2个样本的搜索范围内不会访问更多的参考样本。在DMVR搜索过程中获取细化的MV后,应用正常的8抽头插值滤波器生成最终预测。为了不访问更多的参考样本到正常的MC过程中,将从这些可用样本中填充基于原始MV的插值过程不需要但基于经细化的MV的插值过程需要的样本。
2.1..3.最大DMVR处理单元
当一个CU的宽度和/或高度大于16个亮度样本时,它将被进一步分成宽度和/或高度等于16个亮度样本的子块。DMVR搜索过程的最大单位大小限制为16x16。
·用于帧间预测的几何划分模式(GPM)
在VVC中,支持几何划分模式进行内部预测。几何划分模式被信号传送,使用CU级标志作为一种合并模式,其他合并模式包括常规合并模式、MMVD模式、CIIP模式和子块合并模式。对于每个可以的CU大小w×h=2m×2n,m,n∈{3…6},不包括8x64和64x8,总共支持64个划分。
图10示出了按相同角度分组的几何划分模式(GPM)分割的示例。当使用这种模式时,CU被几何定位的直线划分成两部分(如图10所示)。分割线的位置在数学上由特定划分的角度和偏移参数导出。CU中几何划分的每个部分使用其自身的运动进行相互预测;每个划分只允许进行单向预测,即每个部分都有一个运动向量和一个参考索引。应用单向预测运动约束以确保与传统的双向预测相同,每个CU只需要两个运动补偿预测。每个划分的单向预测运动是使用3.4.1中描述的过程导出的。
如果当前CU使用几何划分模式,则进一步指示几何划分的划分模式(角度和偏移)的几何划分索引和两个合并索引(每个划分一个)。最大GPM候选大小的数目以SPS显式表示,并指定GPM合并指示符的语法二元化。在预测几何划分的每个部分后,沿着几何划分边缘的样本值使用自适应权重的混合处理进行调整,如3.4.2中那样。这是整个CU的预测信号,变换和量化过程将像其他预测模式一样应用于整个CU。最后,如3.4.3中那样存储使用几何划分模式预测的CU的运动场。
2.1..1.单向预测候选名单构建
单向预测候选列表直接来自于3.4.1中根据扩展合并预测过程构建的合并候选列表。表示n作为几何单向预测候选列表中单向预测运动的索引。第n个扩展合并候选的LX运动向量,其X等于n的奇偶校验,用作几何划分模式的第n个单向预测运动向量。在图11中这些运动向量标有“x”。图11是示出了用于几何划分模式的单向预测MV选择的示意图。在不存在第n个扩展合并候选的相应LX运动向量的情况下,使用同一候选的L(1-X)运动向量代替作为几何划分模式的单向预测运动向量。
2.1..2.沿几何划分边缘混合
在利用几何划分的每个部分自身运动进行预测后,对两个预测信号应用混合,导出几何划分边缘周围的样本。基于单个位置与划分边缘之间的距离,导出CU每个位置的混合权重。
位置(x,y)到划分边的距离导出为:
其中i,j是几何划分的角度和偏移,它们取决于信号的几何划分索引。ρx,j和ρy,j的符号依赖于角度索引i。
几何划分的每个部分的权重导出如下:
wIdxL(x,y)=partIdx?32+d(x,y):32-d(x,y) (10)
w1(x,y)=1-w0(x,y) (12)
partIdx取决于角度索引i。图12示出了权重w0的一个示例。图12是示出了使用几何划分模式的弯曲权重w0的示例生成的示意图1200。
2.1..3.几何划分模式的运动场存储
来自第一部分几何划分的Mv1、来自第二部分几何划分的Mv2以及Mv1和Mv2的组合Mv被存储在以几何划分模式编码的运动场CU中。
运动场中每个单独位置的存储运动向量类型确定为:
sType=abs(motionIDx)<32?2∶(motionIDx≤0?(1-partIdx):partIdx) (13)
其中motionIdx等于d(4x+2,4y+2)。partIdx取决于角度索引i。
如果sType等于0或1,则在对应的运动字段中存储Mv0或Mv1,否则如果sType等于2,则存储来自Mv0和Mv2的组合Mv。组合Mv使用以下过程生成:
1)如果Mv1和Mv2来自不同的参考图片列表(一个来自L0,另一个来自L1),则Mv1和Mv2简单地组合以形成双向预测运动向量。
2)否则,如果Mv1和Mv2来自同一个列表,则仅存储单向预测运动Mv2。
2.2具有运动矢量差的几何预测模式(具有MMVD的GMP)
使用具有运动向量差的几何预测模式(具有MMVD的GMP),GPM中的每个几何划分可以决定是否使用MMVD。如果为几何区域选择MMVD,则该区域的MV计算为合并候选和MVD的MV之和。所有其他处理保持与GPM相同。
使用具有MMVD的GMP,MVD以方向和距离对的形式信号传送,遵循MMVD的当前设计。也就是说,有八个候选距离(1/4-像素、1/2-像素、1-像素、2-像素、4-像素、8-像素、16-像素、32-像素)和四个候选方向(向左、向右、向上和向下)。此外,当pic_fpel_mmvd_enabled_flag等于1时,在具有MMVD的GMP中的MVD也像MMVD一样左移2。
2.3基于模版匹配的GPM
提出基于模版匹配的GPM。GPM划分的MV可以通过基于模版匹配的方式被细化。
模板匹配(TM)在解码器侧细化运动。在TM模式下,通过从左侧和上方邻近样本构建模板,并在当前图片中的模板与参考图片中的相应区域之间找到最接近的匹配来细化运动。TM被应用于AMVR模式和具有MMVD的合并模式,GPM、CIIP和子块合并模式禁用。
TM可以扩展到GPM。当CU在GPM中被编解码时,从以与VVC标准相同的方式导出的合并候选列表中选择两个几何划分的两个运动。几何划分的每个运动可以决定是否使用TM进行细化。当选择TM时,使用左侧和上方邻近样本构建模板。然后,通过使用禁用半-像素插值滤波器的合并模式的相同搜索模式,找到当前模板和参考区域之间的最小差异来细化运动。细化的运动用于执行几何划分的运动补偿,并被存储在运动场中。
在语法设计上,当CU以GPM被编解码时,分别通过信号发送两个附加标志来指示运动针对两个几何划分是否被细化。然后,进一步通过信号发送几何划分模式和两个合并索引。
2.4GPM合并列表生成
下面的详细示例应被视为解释一般概念的示例。不应以狭隘的方式解释这些示例。此外,这些示例可以以任何方式组合。
术语“GPM”可以表示一种编解码方法,该方法将一个块划分成两个或多个子区域,其中至少一个子区域是非矩形或非正方形的,或者它不能由将一个块划分成多个矩形子区域的任何现有划分结构(例如,QT/BT/TT)生成。在一个示例中,对于GPM编解码块,基于子区域的划分方式为编解码块导出一个或多个加权掩码,并且编解码块的最终预测信号由与子区域相关联的两个或多个辅助预测信号的加权和生成。
术语“GPM”可指示几何合并模式(GEO)、和/或几何划分模式(GPM)、和/或楔形预测模式、和/或三角形预测模式(TPM)、和/或具有运动向量差的GPM块(GMVD)、和/或具有运动细化的GPM块、和/或基于GPM的任何变体。
术语“块”可以表示编解码块(CB)、CU、PU、TU、PB、TB。
短语“正常/常规合并候选”可以表示扩展合并预测过程生成的合并候选(如3.1节所示)。它还可以表示除GEO合并候选和基于子块的合并候选之外的任何其他高级合并候选。
请注意,GPM块的部分/划分是指CU中几何划分的一部分,例如,图10中GPM块的两个部分由几何位置的直线划分。CU中几何划分的每个部分都使用其自身的运动进行相互预测,但变换是针对整个CU而不是GPM块的每个部分/划分执行的。
还应当注意,GPM/GMVD应用于其它模式(例如,AMVP模式)也可以使用以下方法,其中合并候选列表可以由AMVP候选列表代替。
1.提出了在K不等于M的常规合并候选列表中,等于K的块的GPM/GMVD候选索引可以对应于从索引等于M的常规合并候选导出的运动信息,并且导出的运动信息用于对块进行编码。
1.在一个示例中,M大于K。
2.是否使用索引等于K或M的常规合并候选可以取决于解码信息和/或常规合并候选列表中的候选。
2.修剪过程可以在GPM/GMVD合并列表构建期间应用,其中运动候选可以使用候选索引的奇偶校验来导出。
a.在一个示例中,GPM/GMVD合并列表被构建,然后
GPM/GMVD合并列表被修剪修改。
b.在一个示例中,当在列表构建过程中将候选插入到
GPM/GMVD合并列表中时应用修剪。
c.例如,可以应用完全修剪。
d.例如,可以应用部分修剪。
e.例如,是否将候选插入到GPM/GMVD合并列表中,可以取决于它是否具有与列表中的一个或多个候选相比相似/
不同的运动数据。
f.例如,是否将一个候选插入到GPM/GMVD合并列表中,可以取决于这个候选和列表中的一个或多个候选之间的相似/不同程度。
g.例如,上述比较可以应用于GPM/GMVD合并列表中的候选和所有可用候选之间。
h.例如,上述比较可以应用于GPM/GMVD合并列表中的候选和一个候选之间,其中一个候选可以处于预定义的位置。
i.例如,上述比较可以通过检查运动数据差异来进行,例如预测方向(L0,L1)、运动向量、POC值和/或任何其他预测间模式(例如仿射、BCW、LIC)等。
j.例如,上述比较可以基于运动差是否大于或小于阈值的规则来进行。
k.例如,上述比较可以基于一个规则进行,即两者的运动是否相同。
l.在上述示例中,GMVD候选是表示从相关联的运动信息导出的GPM候选加上所选择的MVD。
3.如果有效GPM合并候选的数目小于阈值,则可以生成至少一个附加GPM合并候选以填充GPM合并候选列表。
1.例如,阈值的值可以通过语法元素获取。
a.例如,语法元素可以是指定GPM合并候选列表中的最大GPM合并候选或常规合并候选的最大数目的值。
2.例如,可以基于GPM合并候选列表中的现有GPM合并候选来生成一个或多个GPM合并候选。
a.例如,对L0运动中的第X个(诸如X=2)预测的L0GPM合并候选在GPM合并列表中可以被平均并作为附加GPM合并候选插入到GPM合并列表中。
b.例如,对L1运动中的第X个(诸如X=2)L1预测的GPM合并候选在GPM合并列表中可以被平均并作为附加GPM合并候选插入到GPM合并列表中。
3.例如,可以通过基于历史的GPM合并候选表生成一个或多个GPM合并候选。
a.例如,基于历史的GPM合并候选表保持有K个长度(诸如K是常数)GPM运动。
b.例如,基于历史GPM合并候选表包含L个(诸如L是常数)先前编码GPM块的运动数据。
1).例如,GPM编解码块的两个部分的两个运动向量两者都入到基于历史GPM合并候选表中。
2).例如,一个GPM编解码块的两个部分的两个运动向量之一入到基于历史GPM合并候选表中。
c.例如,最多M个候选在基于历史GPM合并候选表中可以入到GPM合并列表中。
4.例如,可以基于常规合并候选及其在常规合并候选列表中的位置来生成一个或多个单向预测GPM合并候选。
a.例如,如果常规合并候选的奇偶校验是奇数,则可以提取其L0运动数据以构造GPM合并候选列表。
b.例如,如果常规合并候选的奇偶校验是偶数,则可以提取其L1运动数据以构建GPM合并候选列表。
5.例如,一个或多个单向预测零运动向量可以入到GPM合并列表中。
a.例如,可以插入L0预测的零运动向量。
b.例如,可以插入L1预测的零运动向量。
c.例如,有多少零运动向量入到列表中可以取决于在L0/L1方向上的活动参考图片的数目。
1).例如,零运动向量可以以等于从0到L0/L1方向上的活动参考图片数目的值的参考索引的递增顺序插入。
d.备选地,此外,GPM候选的最大数目可以大于用于常规合并的候选列表。
4.可以维护一个或多个HMVP表,用于继续用GPM/GMVD模式编码的块。
1.在一个示例中,GPM/GMVD编解码块的运动信息(例如,一对运动向量以及相关联的预测列表/参考图片信息)可用于更新HMVP表。
2.在一个示例中,用于GPM/GMVD模式的那些HMVP表独立于用于非GPM/GMVD模式的那些表来维护。
5.来自非相邻空间块的运动信息可用于导出GPM/GMVD编解码块的运动信息。
1.在一个示例中,非相邻空间合并候选可用于构建GPM合并候选列表。
2.例如,可以基于针对不与当前块直接相邻的相邻块的运动数据来生成非相邻空间合并候选。
6.表示块的GPM候选索引等于K。即使存在第K个合并候选的相应LX运动向量(X等于K的奇偶校验),第K个候选的L(1-X)运动向量仍然可以用来导出块的运动信息。
1.在一个示例中,是否使用LX或L(1-X)可以取决于常规/GPM合并候选列表中的合并候选的运动信息。
a.在一个示例中,如果LX运动信息相同于具有小于K的索引的一个或多个GPM候选,则可以使用L(1-X)运动信息。
2.是否插入L0运动或L1运动来构造单向预测GPM合并列表,可以取决于GPM合并列表中已经插入的GPM合并候选的预测方向的累积值。假设X表示L0预测GPM合并候选在当前GPM候选之前要插入的数目,Y表示L1预测合并候选在当前GPM候选之前要插入的数目。
a.例如,当X减去Y不小于阈值(诸如0或1或2)时,L1运动可以从双向预测正常合并候选中提取并入以作为GPM合并候选。
1).另外,在这样的情况下,L1运动预测的正常L1合并候选可以被直接插入以作为GPM合并候选。
2).另外,在这样的情况下,L0预测的正常合并候选可以被投影到L1并入以作为GPM合并候选。
b.例如,当X减去Y不大于阈值(诸如0或-1或-2)时,L0运动可以从双向预测正常合并候选中提取并入以作为GPM合并候选。
1).另外,在这样的情况下,L0运动预测的正常L0合并候选可以被直接插入以作为GPM合并候选。
2).另外,在这样的情况下,一个L1预测的正常合并候选可以被投影到L0并入以作为GPM合并候选。
7.在一个示例中,一个双向预测正常合并候选可以生成两个单向预测GPM合并候选,并将两者添加到GPM/GMVD候选列表。
1.例如,双向预测正常合并候选的L0运动可用于形成单向预测GPM合并候选,而相同正常合并候选的L1运动用于形成另一个单向预测GPM合并候选。
8.在一个示例中,可以允许单向预测GPM合并候选和双向预测GPM合并候选两者。
1.例如,可以允许GPM块的一部分从单向预测编码,而GPM块的另一部分从双向预测编码。
2.例如,GPM块的两个部分都是从双向预测编码的。
3.例如,当一个GPM块的两个部分从单向预测编码时,可以要求一个来自L0预测,另一个来自L1预测。
9.在一个示例中,基于常规MMVD的运动向量可用于构建GPM合并候选列表。
1.例如,L0或L1(但不是两者)运动的基于MMVD的常规运动向量可以入到GPM合并候选列表中。
2.例如,基于常规MMVD的运动向量的L0运动和L1运动两者可以入到GPM合并候选列表中。
3.例如,GPM相关语法元素可以在常规MMVD被用于视频单元的情况下被信号传送。
10.在一个示例中,GPM列表中的GPM合并候选可以基于规则被重新排序。
1.例如,该规则可以定义为从小值到大值对模板成本进行排序。
2.例如,模板成本可以基于当前块的左和/或以上相邻重建样本与参考块的相应邻居之间的样本差之和。
11.在一个示例中,可以将GMVD候选与GMVD候选或GPM候选进行比较。
1.例如,如果第一GMVD候选的最终运动信息(在从基MV和MV差重建MV之后)与第二GMVD或GPM候选的运动信息相同或相似,则修剪第一GMVD候选,即从可以表示的可以候选中移除它。
2.例如,如果第一GMVD候选的最终运动信息(在从基MV和MV差重建MV之后)与第二GMVD或GPM候选的运动信息相同或相似,则修改第一GMVD候选。
a.例如,最终MV可以通过移位值相加。
b.例如,第一GMVD候选可以被修改不止一次,直到其不与第二GMVD或GPM候选相同或相似。
3.比较方法可以在项目符号2中定义。
2.5GPM MMVD合并索引信令
下面的详细实施例应被视为解释一般概念的示例,不应以狭隘的方式解释这些实施例。此外,这些实施例可以以任何方式组合。
术语“GPM”可以表示将一个块划分成两个或多个划分/子区域其中至少一个划分/子区域是非矩形或非正方形的,或者不能由将一个块划分成多个矩形子区域的任何现有划分结构(例如,QT/BT/TT)生成的编解码方法。在一个示例中,对于GPM编解码块,基于子区域的划分方式为编解码块导出一个或多个加权掩码,并且编解码块的最终预测信号由与子区域相关联的两个或多个辅助预测信号的加权和生成。
术语“GPM”可指示几何合并模式(GEO)、和/或几何划分模式(GPM)、和/或楔形预测模式、和/或三角形预测模式(TPM)、和/或具有运动向量差的GPM块(GMVD)、和/或具有运动细化的GPM块、和/或基于GPM的任何变体。
术语“块”可以表示编解码块(CB)、CU、PU、TU、PB、TB。
短语“正常/常规合并候选”可以表示扩展合并预测过程生成的合并候选(如第3.1节所示)。它还可以表示除GEO合并候选和基于子块的合并候选之外的任何其他高级合并候选。
请注意,GPM/GMVD块的部分/划分意味着CU中几何划分的一部分,例如,图10中GPM块的两个部分被几何位置的直线划分。CU中几何划分的每个部分都使用其自身的运动进行相互预测,但变换是针对整个CU而不是GPM块的每个部分/划分执行的。
值得注意的是,术语“与GPM编解码块的一部分相关联的一组运动信息”在以下描述中被使用,即使一部分的运动信息也可以由于加权掩码而应用于另一部分。可以解释为具有K个部分的GPM编解码块的多个(用K表示)运动候选索引。
还应当注意,GPM/GMVD应用于其它模式(例如,AMVP模式)也可以使用以下方法,其中合并候选列表可以由AMVP候选列表代替。
1.在一个示例中,视频单元的多个部分的运动信息可以来自相同的合并候选。
a.在一个示例中,运动信息的两个部分的两个片段可以是相同的。
1)在一个示例中,列表X(例如,X=0或1)运动信息用于两部分。
b.在一个示例中,两个部分的两条运动信息可以来自相同的合并候选,但是两条运动信息可以不同。
1)在一个示例中,列表X运动信息用于两部分之一,并且列表Y运动信息用于另一部分。
c.在一个示例中,视频单元可以通过无MVD的GPM模式进行划分。
d.在一个示例中,视频单元可以通过具有MVD(例如,GMVD)的GPM模式来划分。
e.在一个示例中,合并候选可以是GPM/GMVD合并候选,或普通合并候选,或其它扩展/高级合并候选。
2.在一个示例中,视频单元的多个部分的运动信息是否源自同一合并候选可以取决于非零运动向量差是否应用于GPM块。
a.例如,只有当具有非零运动向量差的GPM(例如,GMVD)被用于视频单元(例如,视频块)时,视频单元的多个部分的运动信息才被允许从相同的合并候选中导出。
b.例如,在视频块由没有运动向量差的GPM编解码的情况下,不允许从同一合并候选中导出视频单元的多个部分的运动信息。
c.例如,GMVD是否用于视频块的指示可以在GPM合并候选索引之前被信号传送。
1)备选地,此外,如何用信号传送运动候选索引(例如,GPM合并候选索引)可以依赖于GMVD的使用。
3.在一个示例中,如果GPM块的两个部分的两个运动信息来自相同的合并候选,则可以应用以下规则中的一个或多个:
a.例如,视频块的至少一部分是用具有MVD的GPM编解码的。
b.例如,如果两个部分都用具有MVD的GPM编解码,那么两个部分的MVD是不相同的。
c.例如,如果两个部分都使用具有MVD的GPM进行编码,则两个部分的两个MVD之间的差异(或绝对差异)应小于(或超过)阈值。
2)例如,可以使用自适应阈值。
a)例如,自适应阈值取决于当前视频单元的大小。
b)例如,自适应阈值取决于当前视频单元中的像素/样本的数目。
3)例如,可以使用固定阈值。
d.例如,如果两个部分中的一个部分用具有MVD的GPM编解码,另一个部分用不具有MVD的GPM编解码,则允许以下一种且仅有一种情况:
4)部分-0采用无MVD的GPM编解码,部分-1采用GPM采用MVD编解码。
5)部分-0用带MVD的GPM编解码,部分-1用不带MVD的GPM编解码。
4.在一个示例中,可以为视频单元(例如,视频块)发出语法元素(例如,标志)信号,指定视频单元的多个部分的运动信息是否源自相同的合并候选。
a.例如,视频单元可以用没有MVD的GPM编解码。
b.例如,视频单元可以用带MVD的GPM(例如,GMVD)进行编码。
c.例如,可以有条件地用信号传送语法元素。
6)它可以基于当前视频单元是否用GMVD编解码。
7)可以基于当前视频单元是否用无MVD的GPM编解码。
8)它可以基于视频块的至少一部分是否存在用运动向量差(例如,GMVD、MMVD、MMVD)进行编码。
a)例如,当A部分(例如,A=0)使用GMVD而B部分(例如,B=1)使用GPM而不使用MVD时,语法元素不被信号传送而是被推断为等于指定当前视频单元的两个部分的运动信息的两个部分被导出的值的差异合并候选。
9)它可以基于所有部分的运动向量差是否相同。
10)可以基于两个运动向量之间的差或绝对差的两部分是否在阈值之内/之上。
a)例如,可以使用自适应阈值。
i.例如,自适应阈值取决于当前视频单元的大小。
ii.例如,自适应阈值取决于当前视频单元中的像素/样本的数目。
b)例如,可以使用固定阈值。
d.例如,语法元素使用基于上下文的算术编码进行编码。
e.备选地,此外,要编码多少候选索引可以取决于语法元素。
5.建议GPM编解码块的运动候选索引中的至少一个不存在于码流中。
a.在一个示例中,第一GPM合并索引被信号传送用于视频块,但是第二GPM合并索引可以不被信号传送。
b.例如,第二GPM合并索引在其被告知当前视频单元的两个部分的两个运动信息都源自同一合并候选的情况下不被信号传送。
c.例如,可以只有一个GPM合并索引用信号传送整个视频块。
d.例如,如何导出其他GPM合并索引可以取决于当前视频单元的所有部分是否使用相同的合并候选。
e.例如,当不存在另一GPM合并索引时,用于另一GPM合并索引的另一部分可以从GPM合并索引中导出。
f.例如,当另一个GPM合并索引不存在时,推断出第一个被信号传送的GPM合并索引相等。
6.在一个示例中,GPM块的指定部分是否用MVD编解码的信号传送可以取决于视频单元的多个部分的运动信息是否来自同一合并候选。
a.例如,可以用信号传送语法元素A(例如,标志),指定GPM块的指定部分是否被MVD编解码(例如,指定部分被GMVD编解码)。
b.另外,语法元素A可以基于视频单元的多个部分的运动信息是否来自相同的合并候选来有条件地发信号。
c.例如,当一个视频单元的所有部分的运动信息是否源自同一合并候选时,语法元素A对于某个部分(例如,第二部分)可以不发信号而是推断为等于指定用MVD编解码的GPM块的这个特定部分的值。
7.在一个示例中,所有部分(例如,GPM块的部分0和部分1)的GPM合并候选索引(例如,merge_gpm_idx0、merge_gpm_idx1)可用于计算合并候选列表合并CandList(X=合并CandList[Px])中位置Px处的合并候选X的运动向量,其中Px指示所发信号的gpm合并候选索引(例如,merge_gpm_idx0、merge_gpm_idx1)。
a.例如,是否应用上述权利要求可以总是应用于没有MVD的GPM编解码块。
b.例如,是否应用上述权利要求可以始终应用于GMVD编解码块。
c.例如,上述权利要求是否应用于GPM或GMVD可以取决于条件(例如,语法元素)。
8.在一个示例中,GPM合并候选索引编码的二元化过程可以对所有待编码候选相同(例如,对应于多个部分)。
a.例如,在二元化过程期间,用于部分-0gpm合并候选索引的输入参数值(例如,cMax)与用于部分-1gpm合并候选索引的输入参数值(例如,cMax)是相同的(例如,cMax=MaxNumGpmMergeCand–1,其中MaxNumGpmMergeCand表示允许的最大GPM合并候选数)。
9.在一个示例中,即使当正常合并候选的最大数目等于一时,GPM/GMVD也可以被应用。
a.例如,在这种情况下,GPM启用/禁用标志可以仍然在SPS级别被信号传送。
b.例如,在这样的情况下,GPM部分的GPM合并候选索引可以不被信号传送而是推断为等于另一GPM部分的GPM合并候选索引。
c.例如,在这样的情况下,GPM合并候选的最大数目可以不是以信号传送而是推断为预定义的数目(诸如一个或两个)。
d.例如,GPM合并候选的最大数目可以被允许等于1,而与正常合并候选的最大数目无关。
e.例如,GPM合并候选的最大数目可以被允许大于正常合并候选的最大数目。
f.例如,是否启用GPM可以不取决于正常合并候选的最大数目是否大于一个或两个。
11)例如,最大GPM合并候选的指示可以不条件于最大正常合并候选的数目是否大于一个或两个。
12)例如,GPM合并候选索引可以不取决于正常合并候选的最大数目是否大于一个或两个。
13)例如,i)GPM是否被启用,和/或ii)最大GPM合并候选的指示,和/或iii)GPM合并候选的索引,可以以正常合并候选的最大数目是否大于零为条件。
14)例如,i)GPM是否被启用,和/或ii)最大GPM合并候选的指示,和/或iii)GPM合并候选的索引,可以被无条件地信号传送。
10.提出:如果从GPM和/或GMVD编解码块中的一部分的第一合并候选导出的运动信息与从第二合并候选导出的运动信息相同,则可以修改该运动信息。
a.例如,MV可以通过诸如(dx,dy)的移动向量来添加。
b.例如,可以改变参考索引。
c.可以迭代地调用修改过程,直到从第一合并候选导出的运动信息与从第一合并候选之前的任何合并候选导出的运动信息不相同。
11.GPM MMVD偏移可以由一个或多个指示来表示。
a.例如,指示可以是变量。
b.例如,指示可以是语法元素。
c.例如,GPM MMVD偏移的指示可以由GMVD索引表示。
a.例如,GPM MMVD偏移可以通过从GPM MMVD表中进行索引而被导出。
b.例如,GPM MMVD表是以GMVD索引为输入,GMVD偏移为输出的一维表。
c.例如,GMVD索引可以通过交互被解释为GMVD方向索引和GMVD距离/步长索引(例如,如下例,其中NUM_TOTAL_DIR表示视频单元中被支持的GPM MMVD方向的数目,NUM_TOTAL_STEP表示视频单元中被支持的GPM MMVD步长/距离的数目)。
i.例如,gmvdIdx=gmvdStepIdx*NUM_TOTAL_DIR+gmvdDirIdx
ii.例如,gmvdIdx=(gmvdStepIdx<<log2(NUM_TOTAL_DIR))+gmvdDirIdx
iii.例如,gmvdStepIdx=gmvdIdx>>log2(NUM_TOTAL_DIR)
iv.例如,gmvdDirIdx=gmvdIdx-(gmvdStepIdx<<log2(NUM_TOTAL_DIR))
v.例如,gmvdIdx=gmvdDirIdx*NUM_TOTAL_STEP+gmvdStepIdx
d.例如,GPM MMVD偏移的指示可以由MMVD方向索引加上MMVD步长/距离索引来表示。
a.例如,GPM MMVD偏移可以基于来自多于一个GPMMMVD表的索引而被导出,例如通过MMVD方向索引和MMVD步长/距离索引分别进行索引。
b.例如,MMVD方向索引可以通过信号被传输为语法元素。
c.例如,MMVD步长/距离索引可以通过信号被传输为语法元素。
12.GMVD信息的指示的信令可以在GPM信息的指示的信令之前。
a.例如,GPM信息可以是经GPM编解码的块的分割方向。
b.例如,GPM信息可以是经GPM编解码的块的几何划分的GPM合并索引。
c.例如,GPM信息可以是经GPM编解码的块的两个几何划分的(多个)GPM合并索引。
d.例如,GMVD信息可以是用于整个经GPM编解码的块的GMVD标志。
e.例如,GMVD信息可以是用于经GPM编解码的块的几何划分的GMVD标志。
f.例如,GMVD信息可以是用于经GPM编解码的块的两个几何划分的GMVD标志。
g.例如,GPM MMVD偏移的指示的信令可以在经GPM编解码的块的分割方向之前。
h.备选地,GMVD信息的指示的信令可以在GPM信息的指示的信令之后。
i.备选地,GMVD信息的指示的信令可以与GPM信息的指示的信令交错。
a.例如,GPM信息的一个或多个指示可以首先通过信号被发送,随后是GMVD信息的一个或多个指示,然后再次是GPM信息的一个或多个指示,依此类推。
b.例如,GMVD信息的一个或多个指示可以首先通过信号被发送,接着是GPM信息的一个或多个指示,然后接着是GMVD信息的一个或多个指示,等等。
13.GPM合并候选索引(例如,merge_gpm_idx0,merge_gpm_idx1)的信令和/或使用可以取决于GPM MMVD是否被用于编解码块。
a.例如,基于规则,两个GPM合并候选索引可以针对两个几何划分通过信号被发送。
b.此外,基于规则,即使GPM合并候选的最大数目等于T(例如T=2),两个GPM合并候选索引也可以针对两个几何划分通过信号被发送。例如,基于规则,两个GPM合并候选索引的二进制化可以相同。
a.例如,两者都使用具有相同cMax值的截断二进制编解码,例如cMax=MaxNumGpmMergeCand-K(例如K=1)。
b.例如,两者都使用具有相同cMax值的固定长度编解码,例如cMax=MaxNumGpmMergeCand-K(例如K=1)。
c.例如,基于规则,两个部分(例如,GPM块的part0和part1)的经信号发送的GPM合并候选索引(例如,merge_gpm_idx0,merge_gpm_idx1)可直接被用于计算合并候选列表mergeCandList(X=mergeCandList[Px])中的位置Px处的合并候选X的运动矢量,其中Px指示经信号传输的gpm合并候选索引(例如,merge_gpm_idx0,merge_gpm_idx1)。
d.例如,上述规则可以是:至少满足以下条件之一。
a.例如,至少一个几何划分使用GPM MMVD。
b.例如,一个几何划分使用GPM MMVD,另一个几何划分使用不具有MMVD的GPM。
c.例如,如果两个几何划分都使用GPM MMVD,则两个几何划分的GMVD索引(和/或GMVD步长索引,和/或GMVD方向索引,和/或GMVD距离索引)是不同的。
d.例如,如果两个几何划分都使用GPM MMVD,则两个几何划分的GMVD偏移是不同的。
e.例如,如果两个几何划分都使用GPM MMVD,则两个几何划分的GMVD偏移量(和/或GMVD索引,和/或GMVD步长索引,和/或GMVD方向索引,和/或GMVD距离索引)的差异大于阈值。
14.建议GPM MMVD可以与基于模版匹配的GPM协调。
a.在一个示例中,如果使用GPM MMVD,基于模版匹配的GPM可以针对块被禁用。
b.在一个示例中,如果GPM MMVD被使用并且用于划分的MVD不等于零,则基于模版匹配的GPM可以针对划分被禁用。
c.在一个示例中,如果使用GPM MMVD,则基于模版匹配的GPM可以针对块被使用。
a.在一个示例中,利用GPM-MMVD通过信号被发送的MVD可以首先被添加到划分的MV,然后通过基于模版匹配的GPM所得到的MV被进一步细化。
b.在一个示例中,划分的MV可以首先通过基于模版匹配的GPM来细化,然后通过信号被传输的MVD可以利用GPM-MMVD被进一步添加到经细化的MV。
15.在一个示例中,仅X模式编解码的邻近重建样本可以被用于构建用于基于模板匹配的运动矢量细化的模板。
a.例如,X指示帧间模式。
b.例如,X指示帧内模式。
c.例如,X指示帧内模式或帧间模式。
d.例如,上述模板生成是针对当前图片中的模板。
e.例如,上述模板生成是针对当前图片中的模板,并且参考图片中的模板是基于当前图片模板样本位置被生成的。
3.问题
现有的视频编解码技术存在几个问题,需要进一步改进以获得更高的编解码增益。
1)更有效的预测列表修剪和填充方法可以为帧间预测而设计。
2)MMVD和模板匹配可以在视频单元预测过程中被关联设计,以获得更高的编解码增益。
4.实施例
下面的详细示例应被视为解释一般概念的示例。不应以狭隘的方式解释这些示例。此外,这些示例可以以任何方式组合。
术语“GPM”可以表示一种编解码方法,该方法将一个块划分成两个或多个划分/子区域,其中至少一个划分/子区域是非矩形或非正方形的,或者它不能由将一个块划分成多个矩形子区域的任何现有划分结构(例如,QT/BT/TT)生成。在一个示例中,对于GPM编解码块,基于子区域的划分方式为编解码块导出一个或多个加权掩码,并且编解码块的最终预测信号由与子区域相关联的两个或多个辅助预测信号的加权和生成。
术语“GPM”可指示几何合并模式(GEO)、和/或几何划分模式(GPM)、和/或楔形预测模式、和/或三角形预测模式(TPM)、和/或具有运动向量差的GPM块(GMVD)、和/或具有运动细化的GPM块、和/或基于GPM的任何变体。
术语“块”可以表示编解码块(CB)、CU、PU、TU、PB、TB。
应当注意,GPM/GMVD应用于其它模式(例如,AMVP模式)也可以使用以下方法,其中合并候选列表可以由AMVP候选列表代替。
短语“正常/常规合并候选”可以表示扩展合并预测过程生成的合并候选(如2.1.1节所示)。它还可以表示除GEO合并候选和基于子块的合并候选之外的任何其他高级合并候选。
术语"TM"可以指在当前图片和/或参考图片中使用至少一个模板的基于模板的方法论。在一个示例中,模板可以包括邻近当前视频单元的重建/预测样本。在另一个示例中,模板可以包括邻近参考视频单元的重建/预测样本。
模板成本可以通过比较当前模板和参考模板之间的差异/误差/失真来确定。模板匹配/细化可以基于模板成本被执行。
本公开中的术语“正在修剪/修剪”可以指对两个候选的冗余检查,例如在运动候选列表(例如,合并列表、AMVP列表、GPM列表、TM列表等)构建过程中。例如,在将新候选插入到运动候选列表之前,将新候选与运动候选列表中的现有候选中的至少一个进行比较,并且仅当满足某些条件(例如,运动/参考索引以某种方式不同于现有候选等)时,才将新候选最终插入到运动候选列表中。
本公开中的术语"预测列表"可以指包含用于视频编解码过程的多于一个运动候选的特定或任何预测列表,例如GPM候选列表、用于附加假设的MHP预测列表、MHP基础假设候选列表、TM预测列表、DMVR预测列表、BDMVR预测列表、仿射AMVP列表、仿射合并列表、常规合并列表、常规AMVP列表、sbTMVP预测列表等。
在下面的讨论中,“新候选”可以指在候选列表构建过程中被认为插入候选列表的候选。“现有候选”可以指在候选列表构建过程中已经在候选列表中的候选。
1.在一个示例中,在预测列表生成/构造的过程中,是否向列表插入新的运动候选可以取决于其自身与预测列表中的至少一个现有候选之间的比较。
a.例如,关于是否将新运动候选插入到预测列表的确定,可以将新运动候选与预测列表中的所有现有候选进行比较。
b.例如,关于是否将新运动候选插入到预测列表的确定,可以首先将新运动候选与预测列表中某些预定义的位置处的最多Y
(Y是预定义值,例如X=1或2)现有候选进行比较。
a.例如,某些预定义的位置最多可以是从预测列表末尾开始的Y个候选。
b.例如,某些预定义的位置可以是从预测列表末尾开始的第一个和第三个候选。
c.例如,某个预定义的位置可以是从预测列表末尾开始的第二个候选。
d.例如,某个预定义的位置可以是从预测列表末尾开始的第一个候选。
c.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用相同的检查。
a.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用运动矢量相同检查。
i.例如,如果新候选的运动矢量和预测列表中的现有候选的运动矢量相同(运动矢量的水平和竖直分量都相同,L0运动和L1运动都相同),则可以不将新候选插入预测列表。
b.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用参考索引相同检查。
i.例如,如果新候选的参考索引和预测列表中的现有候选的参考索引相同(L0运动和L1运动都相同),则新候选可以不插入到预测列表中。
c.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用BCW索引检查。
d.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用LIC标志检查。
e.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用OBMC标志检查。
f.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用运动矢量精度(例如,1/16-像素、1/8-像素、1/4-像素、1/2-像素、1-像素、4-像素精度等)检查。
g.例如,当将新候选与预测列表中的现有候选进行比较时,可以应用插值滤波器(例如,半像素插值滤波器等)检查。
h.例如,当满足上述条件时,新的候选可以不入到预测列表中。
i.例如,可以考虑或不考虑第一条边信息来确定两个候选是否相同。
i.在一个示例中,第一条边信息可以是BCW索引。
ii.在一个示例中,第一条边信息可以是LIC标志。
d.例如,当将新候选与预测列表中的现有候选进行比较时,可以使用一个或多个阈值来确定它们的不同程度。
a.例如,第一阈值可用于确定候选的允许运动矢量差。
i.在一个示例中,如果两个候选的绝对MV差小于或不大于阈值,则将这两个候选视为相同。
b.例如,可以使用第二个阈值来确定候选的参考索引差异。
c.例如,可以从编码器向解码器发送阈值信号。
d.例如,阈值可以取决于解码信息。
e.在一个示例中,解码信息可以包括运动候选的运动矢量精度。
i.在一个示例中,解码信息可以包括BCW信息。
ii.在一个示例中,解码信息可以包括LIC信息。
iii.在一个示例中,解码信息可以包括运动补偿插值滤波器信息。
iv.在一个示例中,解码信息可以包括OBMC信息。
v.例如,解码信息可以包括编解码单元的宽度和/或高度。
vi.例如,解码信息可以包括预测列表生成的类型。
·在一个示例中,针对预测列表A生成的差异检查阈值可以不同于针对预测列表B生成的差异检查阈值,其中A和B是两种预测列表类型。
vii.例如,针对预测列表A生成的差异检查阈值可以与针对预测列表B生成的差异检查阈值相同,其中A和B是两种预测列表类型。
·备选地,用于预测列表A生成的整个差异检查过程(比阈值更多)可以与用于预测列表B生成的差异检查阈值相同。
·例如,A或B可以是GPM候选列表生成。
·例如,A或B可以是针对附加假设的MHP预测列表生成。
·例如,A或B可以是MHP基础假设候选列表生成。
·例如,A或B可以是TM候选列表生成。
·例如,A或B可以是DMVR候选列表生成。
·例如,A或B可以是BDMVR候选列表生成。
·例如,A或B可以是仿射AMVP候选列表生成。
·例如,A或B可以是仿射合并候选列表生成。
·例如,A或B可以常规合并候选列表生成。
·例如,A或B可以是常规的AMVP候选列表生成。
·例如,A或B可以是SbTMVP候选列表生成。
2.在一个示例中,在确定将新候选插入预测列表期间,如何执行修剪过程可以取决于编码/解码信息。
a.例如,是否使用修剪处理可以取决于参考图片列表信息。
a.例如,如果list0和list1中的参考图片信息(例如,POC距离、参考索引等)都参考相同的参考图片,则修剪过程可以不应用于之后的候选。
i.备选地,之后的候选可以不插入到预测列表中。
b.例如,预测列表指的是单向预测列表(例如,GPM列表、用于生成附加假设的MHP预测列表)。
c.例如,预测列表是指双向预测列表。
d.例如,预测列表可以包括单向和双向候选。
b.例如,是否使用相同的运动矢量检查(例如,项目符号1.d)或基于阈值的运动矢量检查(例如,项目符号1.e),可以取决于参考图片列表信息。
a.在一个示例中,如果列表0和列表1中的所有参考图片相同,则可以应用相同的运动矢量检查。
b.在一个示例中,如果列表0和列表1中的所有参考图片相同,则可以应用相同的基于阈值的运动矢量检查。
c.在一个示例中,如果列表0和列表1中的至少一个参考图片不同,则可以应用相同的运动矢量检查。
d.在一个示例中,如果列表0和列表1中的至少一个参考图片不同,则可以应用相同的基于阈值的运动矢量检查。
3.在一个示例中,可以在预测列表的末尾附加一个或多个生成的候选,直到预测列表已满。
a.例如,预测列表是GPM预测列表。
b.例如,预测列表是用于附加假设生成的MHP预测列表。
c.例如,要附加到预测列表的候选数目可以取决于预测列表的最大允许长度。
a.例如,预测列表的最大允许长度可以预先定义。
b.例如,可以在码流中用信号传输预测列表的最大允许长度。
d.例如,如果候选的数目(例如,修剪后)小于预测列表的最大允许长度,则可以将附加候选插入到预测列表中,直到候选的数目达到预测列表的最大长度。
e.例如,可以通过平均列表中的某些可用候选来生成附加候选。
a.此外,修剪过程可以应用于经平均的候选。
b.或者,修剪过程可以不应用于经平均的候选。
c.对候选进行“平均”的过程可以包括对候选的MV进行平均的过程。
f.例如,附加候选可以是零运动候选。
a.例如,可以在预测列表的末尾附加零运动候选。
b.此外,修剪过程可以不应用于列表末尾的零运动候选。
g.备选地,可以在预测列表的末尾附加一个或多个生成的候选,并且填充后的预测列表可以不满。
a.例如,可以将固定数目的平均候选插入到预测列表中。
b.例如,可以将固定数目的零运动候选插入到预测列表中。
4.在一个示例中,在基于模板匹配的运动细化被应用于GPM(或,CIIP、MHP等的附加假设)运动候选的情况下,上述修剪过程(项目符号1至4)可相应地应用于基于模板匹配的预测列表生成。
5.在一个示例中,如果基于模板匹配的运动细化被应用于GPM
(或,CIIP、MHP、附加假设等)运动候选,则候选重新排序过程可在基于模板匹配的GPM列表生成期间被应用。
a.例如,候选重新排序过程可以基于一个准则,其中每个候选的成本值可以根据当前图片邻近样本信息和/或参考图片参考样本信息来评估。
b.例如,候选重新排序过程可以在修剪过程之前应用。
c.例如,候选重新排序过程可以在修剪过程之后应用。
6.在一个示例中,解码器侧运动细化方法,例如基于模版匹配(基于TM)运动细化,以及基于运动矢量差(基于MMVD)的方法可以应用于视频单元。在下面的讨论中,基于TM的方法可以被任何其他解码器侧运动细化方法所取代。
a.例如,基于TM的方法可以指通过基于TM的方法使视频单元的运动预测子/候选被细化(例如,在解码器侧隐式地细化)。
b.例如,基于MMVD的方法可以指运动矢量差被显式地用信号传输并且添加到视频单元的运动预测子/候选。
c.例如,基于TM的方法和基于MMVD的方法两者都可以被允许用于GPM编解码的视频单元。
d.例如,基于TM的方法和基于MMVD的方法两者都可以被允许用于CIIP编解码的视频单元。
e.例如,基于TM的方法和基于MMVD的方法两者可以被允许用于MHP编解码的视频单元(例如,基本假设和/或附加假设)。
f.例如,基于TM的方法和基于MMVD的方法两者都可以被允许用于常规合并编解码的视频单元。
g.例如,与基于TM的方法相关的语法元素可以在与基于MMVD的方法相关的语法元素之后通过信号被传输。
a.例如,是否以及如何用信号传输与TM相关的语法元素,可以取决于MMVD信息。
i.例如,MMVD信息可以指MMVD偏移值。
ii.例如,在零MMVD偏移被应用于视频单元的条件下,与TM相关的语法元素可以针对编解码单元通过信号被传输。
iii.例如,在零MMVD偏移被应用于编解码单元(例如,GPM编解码块)的特定划分/子划分/子块的条件下,与TM相关的语法元素可以针对编解码单元的划分/子划分/子块通过信号被传输。
iv.例如,在编解码单元(例如,GPM编解码块)的所有划分/子划分/子块都以零MMVD偏移进行编解码的条件下,与TM相关的语法元素可以针对编解码单元通过信号被传输。
b.在一个示例中,与TM相关的语法元素可以针对视频单元通过信号被传输,即使与MMVD相关的语法元素通过信号被传输。
i.在一个示例中,通过MMVD方法通过信号传输的MVD可以首先被添加到视频单元的MV,然后通过基于模版匹配的方法进一步细化得到的MV。
c.例如,如果与TM相关的语法元素没有通过信号被传输,它们可以被推断为某些值(指示基于TM的方法没有被应用于该视频单元)。
h.例如,与基于TM的方法相关的语法元素可以在与基于MMVD的方法相关的语法元素之前通过信号被传输。
a.例如,是否以及如何用信号传输MMVD相关的语法元素,可以取决于TM是否被应用于视频单元。
i.例如,在不对视频单元使用基于TM方法的条件下,MMVD相关的语法元素可以针对编解码单元通过信号被传输。
ii.例如,在TM不被应用于编解码单元(例如,GPM编解码块)的特定划分/子划分/子块的条件下,MMVD相关的语法元素可以针对编解码单元的划分/子划分/子块通过信号被传输。
iii.例如,在编解码单元(例如,GPM编解码块)的所有划分
/子划分/子块未利用TM被编解码的条件下,MMVD相关的语法元素可以针对编解码单元通过信号被传输。
b.在一个示例中,MMVD相关的语法元素可以针对视频单元通过信号被传输,即使TM相关的语法元素通过信号被传输。
i.在一个示例中,划分的MV可以首先通过基于模版匹配的方法被细化,然后由MMVD方法通过信号传输的MVD可以被进一步添加到细化的MV。
c.例如,如果与MMVD相关的语法元素没有通过信号被传输,则可以将它们推断为某些值(指示基于MMVD的方法未被应用于该视频单元)。
i.例如,上述基于TM的方法的相关语法元素可以指用于整个视频单元的TM标志,和/或用于视频单元的各个划分/子划分/子块的各个TM标志,和/或基于TM的合并/AMVP候选索引,等等。
j.例如,上述基于MMVD的方法的相关语法元素可以指用于整个视频单元的MMVD标志,和/或针对视频单元的各个划分/
子划分/子块的各个MMVD标志,和/或基于MMVD的合并候选索引,和/或MMVD偏移方向,和/或MMVD偏移距离/步长等。
k.在一个例子中,可以在MMVD过程之前应用基于TM的方法。
运动矢量可以首先通过基于TM的方法被细化,然后添加通过信号传输的MVD。
l.在一个例子中,可以在MMVD过程之后应用基于TM的方法。
运动矢量可以首先添加通过信号传输的MVD,然后由基于TM的方法细化。
7.在一个示例中,如果允许对视频单元使用显式运动细化和/或隐式运动细化(其中视频单元包含多于一个子块/子划分/划分),则不允许视频单元的第一子块/子划分/划分的运动候选(例如,合并索引)和第二子块/子划分/划分的运动候选相同(例如,对于视频单元的至少两个划分应使用不同的运动候选)。
a.备选地,在这种情况下,可以允许视频单元的第一子块/子划分/划分的运动候选和第二子块/子划分/划分的运动候选相同(例如,对于视频单元的所有划分允许相同的运动候选)。
b.例如,不允许视频单元的第一子块/子划分/划分的隐式运动细化的运动候选和第二子块/子划分/划分的隐式运动细化的运动候选相同。
a.或者,可以允许视频单元的第一子块/子划分/划分的隐式运动细化的运动候选和第二子块/子划分/划分的隐式运动细化的运动候选相同。
c.例如,可以允许视频单元的第一子块/子划分/划分的显式运动细化的运动候选和第二子块/子划分/划分的显式运动细化的运动候选相同。
a.或者,不允许视频单元的第一子块/子划分/划分的显式运动细化的运动候选和第二子块/子划分/划分的显式运动细化的运动候选相同。
d.例如,当视频单元的两个子块/子划分/划分的运动候选被允许相同时,
a.相同的运动候选可以被用于视频单元的所有子块/子划分/划分。
b.相同的运动候选可以被用于视频单元的至少两个子块/子划分/划分。
c.可以不通过信号传输而是推断视频块的至少一个子块/子划分/划分的运动候选索引。
d.通过信号传输的运动候选索引的数目可以小于视频单元的子块/子划分/划分的数目。
i.例如,特定预测方法的仅一个运动候选索引可以为整个视频单元通过信号被传输。
e.是否通过信号传输或推断运动候选索引可以取决于语法元素i.例如,指示视频单元的所有子块/子划分/划分是否使用相同候选的语法标志。
ii.例如,指示视频单元的特定子块/子划分/划分是否使用相同候选的语法参数。
f.每个子块/子划分/划分的运动候选索引可以独立地通过信号被传输(例如,不相互依赖)。
e.例如,当需要视频单元的两个子块/子划分/划分的运动候选不同时,
a.视频单元的不同子块/子划分/划分不允许使用相同的运动候选。
b.每个子块/子划分/划分的运动候选索引可以独立地通过信号被传输(例如,不相互依赖)。
c.第二子块/子划分/划分的运动候选索引的编解码/信号值可以小于解码过程中使用的运动候选索引。
i.如何将运动候选索引(在解码过程中)转换为信号指示的运动候选索引(在码流中被编解码)可以取决于第一子块/
子划分/划分的运动候选索引和第二子块/子划分/划分的运动候选索引之间的关系。
f.例如,上述“隐式运动细化”可以指基于TM的方法,或任何其他解码器侧运动细化方案。
g.例如,上述“显式运动细化”可以指基于运动矢量差(基于MMVD)的方法,或任何其它运动细化方案,其将运动差异信息从编码器显式地通过信号传输给解码器。
1.是否和/或如何应用上面公开的方法可以在序列级别/图片组级别/
图片级别/条带级别/图块组级别通过信号被传输,诸如在序列头/
图片头/SPS/VPS/DPS/DCI/PPS/APS/条带头/图块组头中。
1)例如,所公开的方法可以指用于GPM(或CIIP、或MHP等)的基于模版匹配的(基于TM)的运动细化。
2)例如,所公开的方法可以指用于GPM(或CIIP、或MHP等)的基于运动矢量差(基于MMVD)的方法。
3)例如,通过信号传输的语法元素的存在可以取决于图片/条带的宽度和/或高度。
2.是否和/或如何应用上面公开的方法可以在PB/TB/CB/PU/TU/CU/VPDU/CTU/CTU行/条带/图块/子图片/其他种类的包含多于一个样本或像素的区域中通过信号被传输。
3.是否和/或如何应用上面公开的方法可以取决于经编解码的信息,例如块大小、颜色格式、单/双树划分、颜色分量、条带/图片类型。
本公开的实施例与预测列表的修剪以及MMVD和模板匹配的关联有关。如本文所用,术语“GPM”可以表示将一个块拆分为两个或多个划分/子区域的编解码方法。至少一个划分/子区域是非矩形的,或非正方形的,或者它不能由将一个块拆分为多个矩形子区域的任何现有划分结构(例如,QT/BT/TT)被生成。在一个示例中,对于GPM编解码块,基于子区域的拆分方式为编解码块导出一个或多个加权掩码,并且编解码块的最终预测信号由与子区域相关联的两个或多个辅助预测信号的加权总和生成。术语“GPM”可以指示几何合并模式(GEO)、几何划分模式(GPM)、楔形预测模式、三角形预测模式(TPM)、具有运动矢量差的GPM块(GMVD)、具有运动细化的GPM块、或基于GPM的任何变体中的至少一个。而且,术语“块”可以表示编解码树块(CTB)、编解码树单元(CTU)、编解码块(CB)、编解码单元(CU)、预测单元(PU)、变换单元(TU)、预测块(PB)、变换块(TB)、包含多个样本/像素的视频处理单元等。块可以是矩形或非矩形。
图13示出了根据本公开的一些实施例的用于视频处理的方法1300的流程图。该方法1300可以在视频的当前视频块和视频的码流之间的转换期间被实施。如图13所示,该方法1300开始于1302,其中基于针对当前视频块的目标运动候选与针对当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中。作为示例,可以将目标运动候选与位于预测列表末尾的现有运动候选进行比较。如果确定目标运动候选与现有运动候选相同,则目标运动候选可以被确定被丢弃,即,可以不将目标运动候选插入到预测列表中。如果确定目标运动候选与现有运动候选不同,则可以将目标运动候选插入到预测列表中。应当理解,上述图示和/或示例仅用于描述目的。本公开的范围不限于此。
在1304,基于上述确定来执行转换,在一些实施例中,转换可以包括将当前视频块编码到码流中。可替换地或附加地,转换可以包括从码流解码当前视频块。
根据方法1300,将目标运动候选与预测列表中的至少一个现有运动候选进行比较,以确定是否将目标运动候选插入到预测列表中。由此,所提出的解决方案可以更有效地修剪和填充预测列表,从而可以提高编解码效率。
在一些实施例中,预测列表可以包括以下之一:几何划分模式(GPM)候选列表,多假设预测(MHP)基础假设候选列表,模板匹配(TM)候选列表,解码器侧运动矢量细化(DMVR)候选列表,基于块的解码器侧运动矢量细化(BDMVR)候选列表,多遍次解码器侧运动矢量细化(MPDMVR)候选列表,或常规高级运动矢量预测(AMVP)候选列表。应当理解,这里描述的预测列表的可能实现仅仅是说明性的,因此不应该被解释为以任何方式限制本公开。
在一些实施例中,至少一个现有运动候选可以包括预测列表中的所有现有运动候选。也就是说,可以将目标运动候选与预测列表中的每个现有运动候选进行比较,从而确定是否要将目标运动候选插入到预测列表中。由此,可以减少预测列表中的冗余,并且可以提高编解码效率。
在一些实施例中,可以将目标运动候选与预测列表中预定义位置处的一组现有运动候选进行比较,并且一组现有运动候选中包含的现有运动候选的数目可以小于或等于预定义值。在一个示例中,一组现有运动候选可以位于预测列表的末尾。在另一个示例中,一组现有运动候选可以包括从预测列表末尾开始的第一位置处和第三位置处的现有运动候选。附加地或替代地,一组现有运动候选可以包括从预测列表末尾开始的第二位置处的现有运动候选。在又一个实施例中,一组现有运动候选可以包括位于预测列表末尾的现有运动候选。应当理解,上述说明和/或示例仅用于描述目的。本公开的范围不限于此。
在一些实施例中,在1302,确定目标运动候选和至少一个现有运动候选中的第一现有运动候选是否相同,如果目标运动候选和第一现有运动候选相同,则确定目标运动候选不被插入到预测列表中。
在一些实施例中,在1302,确定目标运动候选的运动矢量(MV)和第一现有运动候选的MV是否相同。如果目标运动候选的MV和第一现有运动候选的MV相同,则可以确定目标运动候选和第一现有运动候选相同。在一个示例中,如果目标运动候选的MV的水平分量和第一现有运动候选的MV的水平分量相同,并且目标运动候选的MV的竖直分量和第一现有运动候选的MV的竖直分量相同,则可以确定目标运动候选的MV和第一现有运动候选的MV相同。应当理解,上述说明和/或示例仅用于描述目的。本公开的范围不限于此。
在一些实施例中,在1302,确定目标运动候选的参考索引和第一现有运动候选的参考索引是否相同。如果目标运动候选的参考索引和第一现有运动候选的参考索引相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,确定目标运动候选的具有CU级权重的双向预测(BCW)索引和第一现有运动候选的BCW索引是否相同。如果目标运动候选的BCW索引和第一现有运动候选的BCW索引相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,确定用于目标运动候选的局部照明补偿(LIC)标志和用于第一现有运动候选的LIC标志是否相同,如果用于目标运动候选的LIC标志和用于第一现有运动候选的LIC标志相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,目标运动候选的重叠块运动补偿(OBMC)标志和第一现有运动候选的OBMC标志是否相同。如果目标运动候选的OBMC标志和第一现有运动候选的OBMC标志相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,确定目标运动候选的运动矢量精度和第一现有运动候选的运动矢量精度是否相同。如果目标运动候选的运动矢量精度和第一现有运动候选的运动矢量精度相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,确定用于目标运动候选的插值滤波器和用于第一现有运动候选的插值滤波器是否相同,如果用于目标运动候选的插值滤波器和用于第一现有运动候选的插值滤波器相同,则可以确定目标运动候选和第一现有运动候选相同。
在一些实施例中,在1302,如果满足以下至少两项,则可以确定目标运动候选和第一现有运动候选相同:目标运动候选的MV和第一现有运动候选的MV相同,目标运动候选的参考索引和第一现有运动候选的参考索引相同,目标运动候选的BCW索引和第一现有运动候选的BCW索引相同,目标运动候选的LIC标志和第一现有运动候选的LIC标志相同,目标运动候选的OBMC标志和第一现有运动候选的OBMC标志相同,目标运动候选的运动矢量精度和第一现有运动候选的运动矢量精度相同,或者目标运动候选的插值滤波器和第一现有运动候选的插值滤波器相同。
在一些实施例中,可以在确定目标运动候选的第一条边信息和第一现有运动候选的第一条边信息是否相同的情况下,在1302确定目标运动候选和第一现有运动候选是否相同。或者,可以在不确定目标运动候选的第一条边信息和第一现有运动候选的第一条边信息是否相同的情况下,在1302确定目标运动候选和第一现有运动候选是否相同。在一个示例中,第一条边信息可以是BCW索引或LIC标志。应当理解,以上说明和/或示例仅用于描述目的,本公开的范围不限于此。
在一些实施例中,在1302,通过使用至少一个阈值,确定目标运动候选和至少一个现有运动候选的第一现有运动候选之间的差异。基于该差异来确定是否将目标运动候选插入到预测列表中。作为示例,通过使用至少一个阈值中的第二阈值,确定目标运动候选的参考索引和第一现有运动候选的参考索引之间的参考索引差,从而确定目标运动候选和第一现有运动候选之间的差异。或者,通过使用至少一个阈值中的第一阈值,确定目标运动候选的MV和第一现有运动候选的MV之间的运动矢量差,从而确定目标运动候选和第一现有运动候选之间的差异。在一个示例中,如果运动矢量差的绝对值小于或等于第一阈值,则可以确定目标运动候选不被插入到预测列表中。应当理解,以上说明和/或示例仅用于描述目的。本公开的范围不限于这方面。
在一些实施例中,至少一个阈值中的一个阈值可以在码流中被指示。可选地或附加地,至少一个阈值中的一个阈值可以取决于视频的经编解码的信息。在一个示例中,经编解码的信息可以包括以下中的至少一个:运动候选的运动矢量精度、BCW信息、LIC信息、运动补偿插值滤波器信息、OBMC信息、编解码单元的宽度或编解码单元的高度。可选地或附加地,经编解码的信息可以包括预测列表的类型。
在一些实施例中,至少一个阈值可以包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值。第一类型预测列表可以不同于第二类型预测列表,第三阈值可以不同于第四阈值。可选地,至少一个阈值可以包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值,第一类型预测列表可以不同于第二类型预测列表,第三阈值可以与第四阈值相同。
在一些实施例中,用于生成第一类型预测列表的差异检查过程可以与用于生成第二类型预测列表的差异检查过程相同。在一个示例中,第一类型预测列表或第二类型预测列表可以是几何划分模式(GPM)候选列表。在另一个示例中,第一类型预测列表或第二类型预测列表可以是针对附加假设的多假设预测(MHP)预测列表或MHP基础假设候选列表。在进一步的示例中,第一类型预测列表或第二类型预测列表可以是模板匹配(TM)候选列表。或者,第一类型预测列表或第二类型预测列表可以是解码器侧运动矢量细化(DMVR)候选列表或基于块的解码器侧运动矢量细化(BDMVR)候选列表。在又一个示例中,第一类型的预测列表或第二类型的预测列表可以是多遍次解码器侧运动矢量细化(MPDMVR)候选列表。在另一个示例中,第一类型的预测列表或第二类型的预测列表可以是仿射高级运动矢量预测(AMVP)候选列表或仿射合并候选列表。在又一个示例中,第一类型的预测列表或第二类型的预测列表可以是常规合并候选列表。在又一个示例中,第一类型的预测列表或第二类型的预测列表可以是常规AMVP候选列表。可选地,第一类型的预测列表或第二类型的预测列表可以是基于子块的时间运动矢量预测(SbTMVP)候选列表。
在一些实施例中,在确定是否将目标运动候选插入到预测列表期间如何执行比较可以取决于视频的经编解码的信息。在一个实施例中,比较可以取决于目标运动候选的参考图片列表信息。例如,如果针对目标运动候选的第一图片参考列表中的参考图片信息和针对目标运动候选的第二参考图片列表中的参考图片信息指示不同的参考图片,则可以执行比较。另外,可以不将目标运动候选插入到预测列表中。应当理解,上述说明和/或示例仅用于描述目的,本公开的范围在这方面不受限制。
在一些实施例中,预测列表可以包括以下至少之一:单向预测列表,或双向预测列表。
在一些实施例中,是否使用相同运动矢量检查或基于阈值的运动矢量检查可以取决于目标运动候选的参考图片列表信息。在一个示例中,如果针对目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则可以将相同运动矢量检查应用于目标运动候选。或者,如果针对目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则可以将相同运动矢量检查应用于目标运动候选。在另一个示例中,如果针对目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则基于阈值的运动矢量检查被应用于目标运动候选。或者,如果针对目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则可以将基于阈值的运动矢量检查应用于目标运动候选。
在一些实施例中,在1304,通过在预测列表的末尾附加用于当前视频块的至少一个附加候选来更新预测列表。基于更新的预测列表来执行转换。在一个示例中,预测列表可以是GPM预测列表。或者,预测列表可以是用于附加假设生成的MHP预测列表。应当理解,这里描述的预测列表的可能实现仅仅是说明性的,因此不应当被解释为以任何方式限制本公开。
在一些实施例中,至少一个附加候选的数目可以取决于预测列表的最大允许长度,在一个示例中,可以预定义预测列表的最大允许长度,或者,可以在码流中指示预测列表的最大允许长度。
在一些实施例中,如果预测列表中的现有运动候选的数目小于预测列表的最大允许长度,则可以将至少一个附加候选插入到预测列表中,直到预测列表中的现有运动候选的数目达到预测列表的最大允许长度。
在一些实施例中,可以通过对预测列表中的运动候选进行平均来生成至少一个附加候选。在一个示例中,对预测列表中的运动候选进行平均可以包括对运动候选的MV进行平均处理。在一个实施例中,可以将目标运动候选插入到预测列表中,并与至少一个附加候选中的一个进行进一步比较。或者,可以将目标运动候选插入到预测列表中,而不与至少一个附加候选中的一个进行进一步比较。由此,所提出的方法可以有利地更有效地修剪和填充预测列表,
在一些实施例中,所述至少一个附加候选可以是零运动候选。在这样的情况下,所述至少一个附加候选可以被添加到预测列表的末尾。在一个实施例中,可以将目标运动候选插入到预测列表中,而无需与预测列表末尾的零运动候选进行进一步比较。由此,所提出的方法可以有利地更有效地修剪和填充预测列表,
在一些实施例中,在1304,通过在预测列表的末尾附加用于当前视频块的至少一个附加候选来更新预测列表。基于更新的预测列表来执行转换。在一些实施例中,除了附加至少一个附加候选之外,在预测列表中插入固定数目的平均候选或固定数目的零运动候选,从而更新预测列表。
在一些实施例中,预测列表可以包括基于模板匹配的预测列表,如果基于模板匹配的运动细化被应用于GPM运动候选、组合的帧内和帧间预测(CIIP)运动候选、或MHP附加假设运动候选之一。
在一些实施例中,可以将视频的码流存储在非暂态计算机可读记录介质中,可以通过由视频处理装置执行的方法来生成视频的码流。根据该方法,基于针对当前视频块的目标运动候选与针对当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中。可以基于该确定来生成当前视频块的码流。
在一些实施例中,基于当前视频块的目标运动候选和当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中,基于该确定可以生成当前视频块的码流,该码流可以被存储在非暂态计算机可读记录介质中。
图14示出了根据本公开的一些实施例的另一用于视频处理的方法1400的流程图。该方法1400可以在视频的当前视频块和视频的码流之间的转换期间实现。如图14所示,该方法1400开始于1402,其中如果基于模板匹配的运动细化被应用于针对当前视频块的运动候选,则对针对当前视频块的预测列表重新排序。在一个示例中,运动候选可以是GPM运动候选。在另一个示例中,运动候选可以是CIIP运动候选。或者,运动候选可以是MHP附加假设运动候选。应当理解,这里描述的运动候选的可能实现仅是说明性的,因此不应被解释为以任何方式限制本公开。
在1404,基于重新排序的预测列表执行转换。在一些实施例中,转换可以包括将当前视频块编码到码流中。可替换地或附加地,转换可以包括从码流解码当前视频块。
根据方法1400,在应用基于模板匹配的运动细化的情况下,预测列表被重新排序。因此,所提出的方法可以有利地提高编解码效率和编解码质量。
在一些实施例中,对预测列表重新排序可以是基于以下准则,即预测列表中的每个候选的成本值可以从当前视频块的图片邻近样本信息或参考图片参考样本信息中的至少一项被评估。
在一些实施例中,方法1400还可以包括:在对预测列表重新排序之前,基于针对当前视频块的目标运动候选与预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到预测列表中。作为示例,可以在根据方法1300的修剪过程之前应用候选重新排序过程。或者,方法1400还可以包括:基于针对当前视频块的目标运动候选与重新排序的述预测列表中的至少一个现有运动候选之间的比较,确定是否将目标运动候选插入到重新排序的预测列表中。作为示例,可以在根据方法1300的修剪过程之后应用候选重新排序过程。应当理解,上述说明和/或示例仅用于描述目的。本公开的范围不限于此。
在一些实施例中,视频的码流可以被存储在非暂态计算机可读记录介质中,视频的码流可以通过由视频处理装置执行的方法被生成。根据该方法,如果将基于模板匹配的运动细化应用于当前视频块的运动候选,则对当前视频块的预测列表进行重新排序。可以基于重新排序的预测列表来生成当前视频块的码流。
在一些实施例中,如果基于模板匹配的运动细化被应用于当前视频块的运动候选,则对当前视频块的预测列表进行重新排序。可以基于重新排序的预测列表生成当前视频块的码流。码流可以被存储在非暂态计算机可读记录介质中。
图15示出了根据本公开的一些实施例的另一用于视频处理的方法1500的流程图,该方法1500可以在视频的当前视频块和视频的码流之间的转换期间被实施。
如图15所示,方法1500开始于1502,其中基于目标方案当前视频块的目标运动信息被确定。目标方案可以从隐式运动细化方案和显式运动细化方案被确定。在一个示例中,目标方案可以包括隐式运动细化方案和显式运动细化方案。隐式运动细化方案可以是解码器侧运动细化方案,显式运动细化方案可以被用于确定码流中被指示的运动差信息。作为示例,隐式运动细化方案可以是基于模版匹配的(基于TM)运动细化,用于基于TM方法细化当前视频块的运动预测子或运动候选。显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法,该方法指示码流中当前视频块的运动差信息,并将该运动差信息添加到当前视频块的运动预测子或运动候选。应当理解,以上说明和/或示例的描述仅仅是为了描述的目的。本公开的范围在这方面不受限制。
在1504,基于目标运动信息执行转换。在一些实施例中,转换可以包括将当前视频块编码到码流中。可替换地或附加地,转换可以包括从码流解码当前视频块。
方法1500将MMVD和模板匹配关联起来,可以有利地提高编解码效率并提供更高的编解码增益。
在一些实施例中,隐式运动细化方案和显式运动细化方案两者可以被允许用于以下中的至少一个:GPM编解码视频单元、CIIP编解码视频单元、MHP编解码视频单元或常规合并编解码视频单元。
在一些实施例中,与隐式运动细化方案相关的第一组语法元素可以在码流中在与显式运动细化方案相关的第二组语法元素之后。作为示例,与基于TM的方法相关的语法元素可以在码流中与基于MMVD的方法相关的语法元素之后通过信号被传输。应当理解,以上说明和/或示例的描述仅仅是为了描述的目的。本公开的范围在这方面不受限制。
在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法,是否在码流中指示第一组语法元素可以取决于用于当前视频块的MMVD信息。另外或替代地,如何在码流中指示第一组语法元素可以取决于用于当前视频块的MMVD信息。在一个示例中,MMVD信息可以包括MMVD偏移值。应当理解,MMVD信息可以包括任何其他合适的信息。本公开的范围在这方面不受限制。
在一些实施例中,如果零MMVD偏移被应用于当前视频块,则第一组语法元素可以与当前视频块相关联并在码流中被指示。作为示例,如果零MMVD偏移被应用于当前视频块,则与基于TM的方法相关的语法元素可以针对当前视频块通过信号被传输。
在一些实施例中,如果零MMVD偏移被应用于当前视频块的划分,则第一组语法元素可以与该划分相关联并在码流中被指示。或者,如果零MMVD偏移被应用于当前视频块的子划分,则第一组语法元素可以与该子划分相关联并在码流中被指示。在进一步的实施例中,如果零MMVD偏移被应用于当前视频块的子块,则第一组语法元素可以与该子块相关联并在码流中被指示。作为示例,如果零MMVD偏移被应用于该子块,则可以针对当前视频块的特定子块用信号传输基于TM的方法的相关语法元素。
在一些实施例中,如果当前视频块的所有划分以零MMVD偏移被编解码,则第一组语法元素可以与当前视频块相关联并在码流中被指示。或者,如果当前视频块的所有子划分以零MMVD偏移被编解码,则第一组语法元素可以与当前视频块相关联并在码流中被指示。在进一步的实施例中,如果当前视频块的所有子块以零MMVD偏移被编解码,则第一组语法元素可以与当前视频块相关联并在码流中被指示。
在一些实施例中,第一组语法元素和第二组语法元素两者可以在码流中被指示。
在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。在1502,可以通过将针对当前视频块的MVD添加到针对当前视频块的MV来获得当前视频块的候选MV。MVD可以基于该基于MMVD的方法在码流中被指示。候选MV可以基于隐式运动细化方案被细化,以获得针对目标运动信息的目标MV。
在一些实施例中,如果第一组语法元素不存在于码流中,则第一组语法元素的值指示当前视频块在不使用隐式运动细化方案的情况下被编解码。
在一些实施例中,与隐式运动细化方案相关的第一组语法元素可以在码流中在与显式运动细化方案相关的第二组语法元素之前。作为示例,与基于TM的方法相关的语法元素可以在码流中在与基于MMVD的方法相关的语法元素之前通过信号被传输。
在一些实施例中,是否在码流中指示第二组语法元素可以取决于是否将隐式运动细化方案应用于当前视频块。另外或可替换地,如何在码流中指示第二组语法元素可以取决于是否将隐式运动细化方案应用于当前视频块。
在一些实施例中,如果隐式运动细化方案未被应用于当前视频块,则第二组语法元素可以与当前视频块相关联并在码流中被指示。作为示例,如果隐式运动细化方案未被应用于当前视频块,则可以用信号传输用于当前视频块的与MMVD相关的语法元素。
在一些实施例中,如果隐式运动细化方案未被应用于当前视频块的划分,则第二组语法元素可与该划分相关联并在码流中被指示。或者,如果隐式运动细化方案未被应用于当前视频块的子划分,则第二组语法元素可与该子划分相关联并在码流中被指示。在进一步的实施例中,如果隐式运动细化方案未被应用于当前视频块的子块,则第二组语法元素可与该子块相关联并在码流中被指示。
在一些实施例中,如果隐式运动细化方案未被应用于当前视频块的所有划分,则第二组语法元素可以与当前视频块相关联并在码流中被指示。或者,如果隐式运动细化方案未被应用于当前视频块的所有子划分,则第二组语法元素可以与当前视频块相关联并在码流中被指示。在进一步的实施例中,如果隐式运动细化方案未被应用于当前视频块的所有子块,则第二组语法元素可以与当前视频块相关联并在码流中被指示。
在一些实施例中,第一组语法元素和第二组语法元素两者可以在码流中被指示。
在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。在1502,基于隐式运动细化方案可以细化当前视频块的划分的MV。可以将当前视频块的MVD添加到细化的MV以获得目标运动信息的目标MV,MVD可以基于该基于MMVD的方法在码流中被指示。
在一些实施例中,如果第二组语法元素不存在于码流中,则第二组语法元素的值指示当前视频块可以在不使用显式运动细化方案的情况下被编解码。
在一些实施例中,第一组语法元素可以包括以下至少之一:针对当前视频块的TM标志、针对当前视频块的各个划分的各个TM标志、针对当前视频块的各个子划分的各个TM标志、针对当前视频块的各个子块的各个TM标志、基于TM的合并候选索引或基于TM的AMVP候选索引。
在一些实施例中,第二组语法元素可以包括以下各项中的至少一项:针对当前视频块的MMVD标志、针对当前视频块的各个划分的各个MMVD标志、针对当前视频块的各个子划分的各个MMVD标志、针对当前视频块的各个子块的各个MMVD标志、基于MMVD的合并候选索引、MMVD偏移方向、MMVD偏移距离或MMVD偏移步长。
在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。在1502,基于隐式运动细化方案可以细化当前视频块的划分的MV,可以将当前视频块的MVD添加到细化的MV以获得目标运动信息的目标MV,MVD可以基于该基于MMVD的方法在码流中被指示。
在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。在1502,通过将当前视频块的MVD添加到当前视频块的MV,获得当前视频块的候选MV,MVD可以基于该基于MMVD的方法在码流中被指示。基于隐式运动细化方案可以细化候选MV,以获得目标运动信息的目标MV。
在一些实施例中,隐式运动细化方案可以是基于模版匹配的(基于TM)的运动细化。在一个示例中,基于TM的运动细化可以被用于基于TM的方法细化当前视频块的运动预测子或运动候选。在一些实施例中,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。在一个示例中,基于MMVD的方法可以被用于在码流中指示当前视频块的运动差信息,并将运动差信息添加到当前视频块的运动预测子或运动候选。应当理解,以上说明和/或示例的描述仅仅是为了描述的目的。本公开的范围在这方面不受限制。
在一些实施例中,当前视频块可以包括多个部分,多个部分中的第一部分的第一运动候选可以与多个部分中的第二部分的第二运动候选相同,第二部分可以不同于第一部分;以及基于目标运动信息执行转换。作为示例,来自所有多个部分的运动候选可以相同。或者,多个部分中的至少两个部分的运动候选可以相同。在一个示例中,多个部分可以是多个子块。或者,多个部分可以是多个子划分。在另一个示例中,多个部分可以是多个划分。从而,根据本公开的一些实施例的方法允许块的两个不同部分具有相同的运动候选,这可以有利地提高编解码效率和编解码质量。应当理解,以上说明和/或示例的描述仅仅是为了描述的目的,本公开的范围在这方面不受限制。
在一些实施例中,第一运动候选和第二运动候选可以是用于隐式运动细化方案的运动候选。或者,第一运动候选和第二运动候选可以是用于显式运动细化方案的运动候选。
在一些实施例中,针对多个部分中的至少一个部分的运动候选索引可以不存在于所述码流中。或者,码流中被指示的运动候选索引的数目可以小于多个部分中包含的部分的数目。在一些进一步的实施例中,针对当前视频块,只有一个用于预测方法的运动候选索引在码流中被指示。
在一些实施例中,是否在码流中指示运动候选索引或者是否确定运动候选索引可以取决于语法元素。作为示例,语法元素可以包括以下之一:语法标志,该语法标志指示同一候选是否被用于所有多个部分,或者语法参数,该语法参数指示同一候选是否被用于多个部分的指定部分。
在一些实施例中,多个部分中的每个部分的运动候选索引可以在码流中被独立地指示。也就是说,针对多个部分被索引的运动候选的指示彼此独立。
在一些实施例中,隐式运动细化方案可以是基于模版匹配(基于TM)的方法。作为示例,显式运动细化方案可以是基于运动矢量差(基于MMVD)的方法。应当理解,以上说明和/或示例的描述仅仅是为了描述的目的。本公开的范围在这方面不受限制。
在一些实施例中,是否应用根据本公开的一些实施例的方法可以在以下之一处被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。另外或替代地,如何应用根据本公开的一些实施例的方法可以在以下之一处被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。
在一些实施例中,是否应用根据本公开的一些实施例的方法可以在以下之一中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。另外或替代地,如何应用根据本公开的一些实施例的方法可以在以下之一中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。
在一些实施例中,是否对GPM、CIIP或MHP应用基于TM的运动细化可以在以下之一被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。另外或替代地,如何对GPM、CIIP或MHP应用基于TM的运动细化可以在以下之一被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。
在一些实施例中,是否针对GPM、CIIP或MHP应用基于TM的运动细化可以在以下之一中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。另外或替代地,如何针对GPM、CIIP或MHP应用基于TM的运动细化可以在以下之一中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、带条头或图块组头。
在一些实施例中,是否针对GPM、CIIP或MHP应用基于MMVD的方法在以下一项处被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。此外或替代地,如何针对GPM、CIIP或MHP应用基于MMVD的方法在以下一项处被指示:序列级别、图片组级别、图片级别、条带级别或图块组级别。
在一些实施例中,是否针对GPM、CIIP或MHP应用基于MMVD的方法在以下一项中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。另外或替代地,如何针对GPM、CIIP或MHP应用基于MMVD的方法在以下一项中被指示:序列头、图片头、序列参数集(SPS)、视频参数集(VPS)、依赖参数集(DPS)、解码能力信息(DCI)、图片参数集(PPS)、自适应参数集(APS)、条带头或图块组头。
在一些实施例中,语法元素是否存在可取决于与当前视频块相关联的图片的宽度或图片的高度。另外或替代地,语法元素是否存在可取决于与当前视频块相关联的条带的宽度或条带的高度。
在一些实施例中,是否应用根据本公开的一些实施例的方法可以在以下一项处被指示:预测块(PB)、变换块(TB)、编解码块(CB)、预测单元(PU)、变换单元(TU)、编解码单元(CU)、虚拟流水线数据单元(VPDU)、编解码树单元(CTU)、CTU行、条带、图块、子图片、或包含多于一个样本或像素的区域。附加地或替代地,如何应用根据本公开的一些实施例的方法可以在以下一项处被指示:预测块(PB)、变换块(TB)、编解码块(CB)、预测单元(PU)、变换单元(TU)、编解码单元(CU)、虚拟流水线数据单元(VPDU)、编解码树单元(CTU)、CTU行、条带、图块、子图片或包含多于一个样本或像素的区域
在一些实施例中,根据本公开的一些实施例的方法还可以包括:基于当前视频单元的经编解码的信息,确定是否和/或如何应用根据本公开的一些实施例的方法。经编解码的信息可以包括以下各项中的至少一项:块尺寸、颜色格式、单双树划分、双树划分、颜色分量、条带类型、图片类型等。应当理解,上述说明和/或示例的描述仅仅是为了描述的目的。本公开的范围在这方面不受限制。
在一些实施例中,视频的码流可以被存储在非暂态计算机可读记录介质中。视频的码流可以通过由视频处理装置执行的方法被生成。根据该方法,可以基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定当前视频块的目标运动信息。隐式运动细化方案可以是解码器侧运动细化方案,显式运动细化方案可以被用于确定码流中被指示的运动差信息。当前视频块的码流可以基于目标运动信息被生成。
在一些实施例中,针对当前视频块的目标运动信息可以基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案被确定。隐式运动细化方案可以是解码器侧运动细化方案,显式运动细化方案可以被用于确定在码流中被指示的运动差信息。当前视频块的码流可以基于目标运动信息被生成。该码流可以被存储在非暂态计算机可读记录介质中。
可以根据以下条款来描述本公开的实施方式,这些条款的特征可以以任何合理的方式进行组合。
条款1.一种用于视频处理的方法,包括:在视频的当前视频块与所述视频的码流之间的转换期间,基于针对所述当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;以及基于所述确定执行所述转换。
条款2.根据条款1所述的方法,其中所述预测列表包括以下一项:几何划分模式(GPM)候选列表,多假设预测(MHP)基础假设候选列表,模板匹配(TM)候选列表,解码器侧运动矢量细化(DMVR)候选列表,基于块的解码器侧运动矢量细化(BDMVR)候选列表,多遍次解码器侧运动矢量细化(MPDMVR)候选列表,或常规高级运动矢量预测(AMVP)候选列表。
条款3.根据条款1-2中任一项所述的方法,其中所述至少一个现有运动候选包括所述预测列表中的所有现有运动候选。
条款4.根据条款1-3中任一项所述的方法,其中所述目标运动候选与所述预测列表中预定义位置处的一组现有运动候选被比较,并且所述一组现有运动候选中被包含的现有运动候选的数目小于或等于预定义值。
条款5.根据条款4所述的方法,其中所述一组现有运动候选位于所述预测列表的末尾。
条款6.根据条款4所述的方法,其中所述一组现有运动候选包括从所述预测列表的末尾开始的第一位置和第三位置处的现有运动候选。
条款7.根据条款4所述的方法,其中所述一组现有运动候选包括从所述预测列表的末尾开始的第二位置处的现有运动候选。
条款8.根据条款4所述的方法,其中所述一组现有运动候选包括位于所述预测列表的末尾的现有运动候选。
条款9.根据条款1-8中任一项所述的方法,其中确定是否将所述目标运动候选插入到所述预测列表中包括:确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选是否相同;以及如果所述目标运动候选和所述第一现有运动候选相同,则确定所述目标运动候选不被插入到所述预测列表中。
条款10.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的运动矢量(MV)和针对所述第一现有运动候选的MV是否相同;以及如果针对所述目标运动候选的所述MV和针对所述第一现有运动候选的所述MV相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款11.根据条款10所述的方法,其中确定针对所述目标运动候选的运动矢量(MV)和针对所述第一现有运动候选的MV是否相同包括:如果针对所述目标运动候选的所述MV的水平分量和针对所述第一现有运动候选的所述MV的水平分量相同,并且针对所述目标运动候选的所述MV的竖直分量和针对所述第一现有运动候选的所述MV的竖直分量相同,则确定针对所述目标运动候选的所述MV和针对所述第一现有运动候选的所述MV相同。
条款12.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的参考索引和针对所述第一现有运动候选的参考索引是否相同;以及如果针对所述目标运动候选的所述参考索引和针对所述第一现有运动候选的所述参考索引相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款13.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的具有CU级权重的双向预测(BCW)索引和针对所述第一现有运动候选的BCW索引是否相同;以及如果针对所述目标运动候选的所述BCW索引和针对所述第一现有运动候选的所述BCW索引相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款14.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的局部照明补偿(LIC)标志和针对所述第一现有运动候选的LIC标志是否相同;以及如果针对所述目标运动候选的所述LIC标志和针对所述第一现有运动候选的所述LIC标志相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款15.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的重叠块运动补偿(OBMC)标志和针对所述第一现有运动候选的OBMC标志是否相同;以及如果针对所述目标运动候选的所述OBMC标志和针对所述第一现有运动候选的所述OBMC标志相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款16.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的运动矢量精度和针对所述第一现有运动候选的运动矢量精度是否相同;以及如果针对所述目标运动候选的所述运动矢量精度和针对所述第一现有运动候选的所述运动矢量精度相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款17.根据条款9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:确定针对所述目标运动候选的插值滤波器和针对所述第一现有运动候选的插值滤波器是否相同;以及如果针对所述目标运动候选的所述插值滤波器和针对所述第一现有运动候选的所述插值滤波器相同,则确定所述目标运动候选和所述第一现有运动候选相同。
条款18.根据条款9所述的方法,其中确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选是否相同包括:如果以下至少两项被满足,则确定所述目标运动候选和所述第一现有运动候选相同:针对所述目标运动候选的MV和针对所述第一现有运动候选的MV相同,针对所述目标运动候选的参考索引和针对所述第一现有运动候选的参考索引相同,针对所述目标运动候选的BCW索引和针对所述第一现有运动候选的BCW索引相同,针对所述目标运动候选的LIC标志和针对所述第一现有运动候选的LIC标志相同,针对所述目标运动候选的OBMC标志和针对所述第一现有运动候选的OBMC标志相同,针对所述目标运动候选的运动矢量精度与针对所述第一现有运动候选的运动矢量精度相同,或者针对所述目标运动候选的插值滤波器和针对所述第一现有运动候选的插值滤波器相同。
条款19.根据条款9-18中任一项所述的方法,其中在确定所述目标运动候选的第一条边信息和所述第一现有运动候选的第一条边信息是否相同的情况下、或在不确定所述目标运动候选的第一条边信息和所述第一现有运动候选的第一条边信息是否相同的情况下,所述目标运动候选和所述第一现有运动候选是否相同被确定。
条款20.根据条款19所述的方法,其中所述第一条边信息是BCW索引或LIC标志。
条款21.根据条款1-8中任一项所述的方法,其中确定是否将所述目标运动候选插入到所述预测列表中包括:通过使用至少一个阈值,确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选之间的差异;以及基于所述差异确定是否将所述目标运动候选插入到所述预测列表中。
条款22.根据条款21所述的方法,其中确定所述目标运动候选和所述第一现有运动候选之间的所述差异包括:通过使用所述至少一个阈值中的第一阈值,确定针对所述目标运动候选的MV和针对所述第一现有运动候选的MV之间的运动矢量差。
条款23.根据条款22所述的方法,其中如果所述运动矢量差的绝对值小于或等于所述第一阈值,则确定所述目标运动候选不被插入到所述预测列表中。
条款24.根据条款21-23中任一项所述的方法,其中确定所述目标运动候选和所述第一现有运动候选之间的所述差异包括:通过使用所述至少一个阈值中的第二阈值,确定针对所述目标运动候选的参考索引与针对所述第一现有运动候选的参考索引之间的参考索引差。
条款25.根据条款21-24中任一项所述的方法,其中所述至少一个阈值中的一个阈值在所述码流中被指示。
条款26.根据条款21-25中任一项所述的方法,其中所述至少一个阈值中的一个阈值取决于所述视频的经编解码的信息。
条款27.根据条款26所述的方法,其中所述经编解码的信息包括以下至少一项:运动候选的运动矢量精度,BCW信息,LIC信息,运动补偿插值滤波器信息,OBMC信息,编解码单元的宽度,或所述编解码单元的高度。
条款28.根据条款26-27中任一项所述的方法,其中所述经编解码的信息包括预测列表的类型。
条款29.根据条款28所述的方法,其中所述至少一个阈值包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值,所述第一类型预测列表不同于所述第二类型预测列表,并且所述第三阈值不同于所述第四阈值。
条款30.根据条款28所述的方法,其中所述至少一个阈值包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值,所述第一类型预测列表不同于所述第二类型预测列表,并且所述第三阈值与所述第四阈值相同。
条款31.根据条款30所述的方法,其中用于生成所述第一类型预测列表的差异检查过程与用于生成所述第二类型预测列表的差异检查过程相同。
条款32.根据条款30-31中任一项所述的方法,其中所述第一类型预测列表或所述第二类型预测列表是以下一项:几何划分模式(GPM)候选列表,针对附加假设的多假设预测(MHP)预测列表,MHP基础假设候选列表,模板匹配(TM)候选列表,解码器侧运动矢量细化(DMVR)候选列表,基于块的解码器侧运动矢量细化(BDMVR)候选列表,多遍次解码器侧运动矢量细化(MPDMVR)候选列表,仿射高级运动矢量预测(AMVP)候选列表,仿射合并候选列表,常规合并候选列表,常规AMVP候选列表,或基于子块的时间运动矢量预测(SbTMVP)候选列表。
条款33.根据条款1-32中任一项所述的方法,其中在确定是否将所述目标运动候选插入到所述预测列表期间如何执行所述比较取决于所述视频的经编解码的信息。
条款34.根据条款1-32中任一项所述的方法,其中所述比较取决于所述目标运动候选的参考图片列表信息。
条款35.根据条款34所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的参考图片信息和针对所述目标运动候选的第二参考图片列表中的参考图片信息指示不同的参考图片,则所述比较被执行。
条款36.根据条款35所述的方法,其中所述目标运动候选不被插入到所述预测列表中。
条款37.根据条款1-36中任一项所述的方法,其中所述预测列表包括以下至少一项:单向预测列表,或双向预测列表。
条款38.根据条款33所述的方法,其中是否使用相同运动矢量检查或基于阈值的运动矢量检查取决于所述目标运动候选的参考图片列表信息。
条款39.根据条款38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则所述相同运动矢量检查被应用于所述目标运动候选。
条款40.根据条款38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则所述基于阈值的运动矢量检查被应用于所述目标运动候选。
条款41.根据条款38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则所述相同运动矢量检查被应用于所述目标运动候选。
条款42.根据条款38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则所述基于阈值的运动矢量检查被应用于所述目标运动候选。
条款43.根据条款1-42中任一项所述的方法,其中执行所述转换包括:通过在所述预测列表的末尾附加针对所述当前视频块的至少一个附加候选来更新所述预测列表;以及基于更新的所述预测列表执行所述转换。
条款44.根据条款43所述的方法,其中所述预测列表是GPM预测列表或用于附加假设生成的MHP预测列表。
条款45.根据条款43-44中任一项所述的方法,其中至少一个附加候选的数目取决于所述预测列表的最大被允许长度。
条款46.根据条款45所述的方法,其中所述预测列表的所述最大被允许长度是预定义的,或者所述预测列表的所述最大被允许长度在所述码流中被指示。
条款47.根据条款45-46中任一项所述的方法,其中如果所述预测列表中的现有运动候选的数目小于所述预测列表的所述最大被允许长度,则所述至少一个附加候选被插入到所述预测列表中直到所述预测列表中的现有运动候选的数目达到所述预测列表的所述最大被允许长度为止。
条款48.根据条款47所述的方法,其中所述至少一个附加候选通过对所述预测列表中的运动候选做平均而被生成。
条款49.根据条款48所述的方法,其中在与所述至少一个附加候选中的一个附加候选进一步比较的情况下、或在不与所述至少一个附加候选中的一个附加候选进一步比较的情况下,所述目标运动候选被插入到所述预测列表中。
条款50.根据条款48-49中任一项所述的方法,其中对所述预测列表中的所述运动候选做平均包括针对所述运动候选的MV的平均过程。
条款51.根据条款47所述的方法,其中所述至少一个附加候选是零运动候选。
条款52.根据条款51所述的方法,其中所述至少一个附加候选被附加到所述预测列表的末尾。
条款53.根据条款51-52中任一项所述的方法,其中所述目标运动候选被插入到所述预测列表中,而不与所述预测列表的末尾的零运动候选进一步比较。
条款54.根据条款1-42中任一项所述的方法,其中执行所述转换包括:通过在所述预测列表的末尾附加针对所述当前视频块的至少一个附加候选来更新所述预测列表;以及基于更新的所述预测列表执行所述转换。
条款55.根据条款54所述的方法,其中更新所述预测列表还包括:将固定数目的经平均的候选或固定数目的零运动候选插入到所述预测列表中。
条款56.根据条款1-55中任一项所述的方法,其中如果基于模板匹配的运动细化被应用于以下一项,则所述预测列表包括基于模板匹配的预测列表:GPM运动候选,组合的帧内和帧间预测(CIIP)运动候选,或MHP附加假设运动候选。
条款57.一种用于视频处理的方法,包括:在视频的当前视频块与所述视频的码流之间的转换期间,如果基于模板匹配的运动细化被应用于针对所述当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;以及基于重新排序的所述预测列表执行所述转换。
条款58.根据条款57所述的方法,其中所述运动候选是以下一项:GPM运动候选,CIIP运动候选,或MHP附加假设运动候选。
条款59.根据条款57-58中任一项所述的方法,其中对所述预测列表重新排序是基于以下准则:所述预测列表中的每个候选的成本值从所述当前视频块的图片邻近样本信息或参考图片参考样本信息中的至少一项被评估。
条款60.根据条款57-59中任一项所述的方法,还包括:在对所述预测列表重新排序之前,基于针对所述当前视频块的目标运动候选与所述预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中,或者基于针对所述当前视频块的目标运动候选与重新排序的所述预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到重新排序的所述预测列表中。
条款61.一种用于视频处理的方法,包括:在视频的当前视频块与所述视频的码流之间的转换期间,基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;以及基于所述目标运动信息执行所述转换。
条款62.根据条款61所述的方法,其中所述隐式运动细化方案和所述显式运动细化方案都被允许用于以下至少一项:GPM编解码视频单元,CIIP编解码视频单元,MHP编解码视频单元,或常规合并编解码视频单元。
条款63.根据条款61-62中任一项所述的方法,其中与所述隐式运动细化方案相关的第一组语法元素在所述码流中在与所述显式运动细化方案相关的第二组语法元素之后。
条款64.根据条款63所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,以下至少一项取决于针对所述当前视频块的MMVD信息:是否在所述码流中指示所述第一组语法元素,或者如何在所述码流中指示所述第一组语法元素。
条款65.根据条款64所述的方法,其中所述MMVD信息包括MMVD偏移值。
条款66.根据条款64所述的方法,其中如果零MMVD偏移被应用于所述当前视频块,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示。
条款67.根据条款64所述的方法,其中如果零MMVD偏移被应用于所述当前视频块的划分,则所述第一组语法元素与所述划分相关联并在所述码流中被指示,或者如果零MMVD偏移被应用于所述当前视频块的子划分,则所述第一组语法元素与所述子划分相关联并在所述码流中被指示,或者如果零MMVD偏移被应用于所述当前视频块的子块,则所述第一组语法元素与所述子块相关联并在所述码流中被指示。
条款68.根据条款64所述的方法,其中如果所述当前视频块的所有划分都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示,或者如果所述当前视频块的所有子划分都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示,或者如果所述当前视频块的所有子块都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示。
条款69.根据条款63所述的方法,其中所述第一组语法元素和所述第二组语法元素两者在所述码流中被指示。
条款70.根据条款69所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:通过将针对所述当前视频块的MVD添加到针对所述当前视频块的MV来获得针对所述当前视频块的候选MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示;以及基于所述隐式运动细化方案细化所述候选MV,以获得针对所述目标运动信息的目标MV。
条款71.根据条款63所述的方法,其中如果所述第一组语法元素不存在于所述码流中,则所述第一组语法元素的值指示所述当前视频块在不使用所述隐式运动细化方案的情况下被编解码。
条款72.根据条款61-62中任一项所述的方法,其中与所述隐式运动细化方案相关的第一组语法元素在所述码流中在与所述显式运动细化方案相关的第二组语法元素之前。
条款73.根据条款72所述的方法,其中以下至少一项取决于所述隐式运动细化方案是否被应用于所述当前视频块:是否在所述码流中指示所述第二组语法元素,或者如何在所述码流中指示所述第二组语法元素。
条款74.根据条款73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示。
条款75.根据条款73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块的划分,则所述第二组语法元素与所述划分相关联并在所述码流中被指示,或者如果所述隐式运动细化方案未被应用于所述当前视频块的子划分,则所述第二组语法元素与所述子划分相关联并在所述码流中被指示,或者如果所述隐式运动细化方案未被应用于所述当前视频块的子块,则所述第二组语法元素与所述子块相关联并在所述码流中被指示。
条款76.根据条款73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块的所有划分,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示,或者如果所述隐式运动细化方案未被应用于所述当前视频块的所有子划分,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示,或者如果所述隐式运动细化方案未被应用于所述当前视频块的所有子块,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示。
条款77.根据条款72所述的方法,其中所述第一组语法元素和所述第二组语法元素两者在所述码流中被指示。
条款78.根据条款77所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:基于所述隐式运动细化方案细化针对所述当前视频块的划分的MV;以及将针对所述当前视频块的MVD添加到细化的所述MV以获得针对所述目标运动信息的目标MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示。
条款79.根据条款72所述的方法,其中如果所述第二组语法元素不存在于所述码流中,则所述第二组语法元素的值指示所述当前视频块在不使用所述显式运动细化方案的情况下被编解码。
条款80.根据条款63-79中任一项所述的方法,其中所述第一组语法元素包括以下至少一项:针对所述当前视频块的TM标志,针对所述当前视频块的各个划分的各个TM标志,针对所述当前视频块的各个子划分的各个TM标志,针对所述当前视频块的各个子块的各个TM标志,基于TM的合并候选索引,或基于TM的AMVP候选索引。
条款81.根据条款63-80中任一项所述的方法,其中所述第二组语法元素包括以下至少一项:针对所述当前视频块的MMVD标志,针对所述当前视频块的各个划分的各个MMVD标志,针对所述当前视频块的各个子划分的各个MMVD标志,针对所述当前视频块的各个子块的各个MMVD标志,基于MMVD的合并候选索引,MMVD偏移方向,MMVD偏移距离,或MMVD偏移步长。
条款82.根据条款61-69中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:基于所述隐式运动细化方案细化针对所述当前视频块的划分的MV;以及将针对所述当前视频块的MVD添加到细化的所述MV以获得针对所述目标运动信息的目标MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示。
条款83.根据条款61-69中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:通过将针对所述当前视频块的MVD添加到针对所述当前视频块的MV,获得针对所述当前视频块的候选MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示;以及基于所述隐式运动细化方案细化所述候选MV,以获得针对所述目标运动信息的目标MV。
条款84.根据条款61-83中任一项所述的方法,其中所述隐式运动细化方案是基于模版匹配(TM)的运动细化。
条款85.根据条款84所述的方法,其中所述基于TM的运动细化被用于基于所述基于TM的方法细化针对所述当前视频块的运动预测子或运动候选。
条款86.根据条款61-85中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法。
条款87.根据条款86所述的方法,其中所述基于MMVD的方法被用于在所述码流中指示针对所述当前视频块的所述运动差信息,并将所述运动差信息添加到针对所述当前视频块的运动预测子或运动候选。
条款88.根据条款61所述的方法,其中所述当前视频块包括多个部分,针对所述多个部分中的第一部分的第一运动候选与针对所述多个部分中的第二部分的第二运动候选相同,所述第二部分不同于所述第一部分。
条款89.根据条款88所述的方法,其中所述多个部分是以下一项:多个子块,多个子划分,或多个划分。
条款90.根据条款88-89中任一项所述的方法,其中所述第一运动候选和所述第二运动候选是用于所述隐式运动细化方案的运动候选,或者所述第一运动候选和所述第二运动候选是用于所述显式运动细化方案的运动候选。
条款91.根据条款88-90中任一项所述的方法,其中来自所有所述多个部分的运动候选是相同的。
条款92.根据条款88-90中任一项所述的方法,其中针对所述多个部分中的至少两个部分的运动候选是相同的。
条款93.根据条款88-90中任一项所述的方法,其中针对所述多个部分中的至少一个部分的运动候选索引不存在于所述码流中。
条款94.根据条款88-90中任一项所述的方法,其中在所述码流中被指示的运动候选索引的数目小于被包含在所述多个部分中的部分的数目。
条款95.根据条款94所述的方法,其中,针对所述当前视频块,只有一个用于预测方法的运动候选索引在所述码流中被指示。
条款96.根据条款88-90中任一项所述的方法,其中是否在码流中指示运动候选索引或是否确定所述运动候选索引取决于语法元素。
条款97.根据条款96所述的方法,其中所述语法元素包括以下一项:语法标志,所述语法标志指示同一候选是否被用于所有所述多个部分,或者语法参数,所述语法参数指示同一候选是否被用于所述多个部分的指定部分。
条款98.根据条款88-90中任一项所述的方法,其中针对所述多个部分中的每一个,运动候选索引在所述码流中被独立地指示。
条款99.根据条款88-98中任一项所述的方法,其中所述隐式运动细化方案是基于模版匹配(基于TM)的方法。
条款100.根据条款88-99中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法。
条款101.根据条款1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项处被指示:序列级别,图片组级别,图片级别,条带级别,或图块组级别。
条款102.根据条款1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项中被指示:序列头,图片头,序列参数集(SPS),视频参数集(VPS),依赖参数集(DPS),解码能力信息(DCI),图片参数集(PPS),自适应参数集(APS),条带头,或者图块组头。
条款103.根据条款1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于TM的运动细化在以下一项处被指示:序列级别,图片组级别,图片级别,条带级别,或图块组级别。
条款104.根据条款1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于TM的运动细化在以下一项中被指示:序列头,图片头,序列参数集(SPS),视频参数集(VPS),依赖参数集(DPS),解码能力信息(DCI),图片参数集(PPS),自适应参数集(APS),条带头,或者图块组头。
条款105.根据条款1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于MMVD的方法在以下一项处被指示:序列级别,图片组级别,图片级别,条带级别,或图块组级别。
条款106.根据条款1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于MMVD的方法在以下一项中被指示:序列头,图片头,序列参数集(SPS),视频参数集(VPS),依赖参数集(DPS),解码能力信息(DCI),图片参数集(PPS),自适应参数集(APS),条带头,或者图块组头。
条款107.根据条款101-102中任一项所述的方法,其中语法元素是否存在取决于以下至少一项:与所述当前视频块相关联的图片的宽度,所述图片的高度,与所述当前视频块相关联的条带的宽度,或所述条带的高度。
条款108.根据条款1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项处被指示:预测块(PB),变换块(TB),编解码块(CB),预测单元(PU),变换单元(TU),编解码单元(CU),虚拟流水线数据单元(VPDU),编解码树单元(CTU),CTU行,条带,图块,子图片,或包含多于一个样本或像素的区域。
条款109.根据条款1-100中任一项所述的方法,还包括:基于所述当前视频单元的经编解码的信息,确定是否和/或如何应用所述方法,所述经编解码的信息包括以下至少一项:块尺寸,颜色格式,单双树划分,双树划分,颜色分量,条带类型,或图片类型。
条款110.根据条款1-109中任一项所述的方法,其中所述转换包括将所述当前视频块编码到所述码流中。
条款111.根据条款1-109中任一项所述的方法,其中所述转换包括从所述码流解码所述当前视频块。
条款112.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据条款1-111中任一项所述的方法。
条款113.一种非暂态计算机可读存储介质,存储使处理器执行根据条款1-111中任一项所述的方法的指令。
条款114.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:基于针对所述视频的当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;以及基于所述确定生成所述码流。
条款115.一种用于存储视频的码流的方法,包括:基于针对所述视频的当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;基于所述确定生成所述码流;以及将所述码流存储在非暂态计算机可读记录介质中。
条款116.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:如果基于模板匹配的运动细化被应用于针对所述视频的当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;以及基于重新排序的所述预测列表生成所述码流。
条款117.一种用于存储视频码流的方法,包括:如果基于模板匹配的运动细化被应用于针对所述视频的当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;基于重新排序的所述预测列表生成所述码流;以及将所述码流存储在非暂态计算机可读记录介质中。
条款118.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述视频的当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;以及基于所述目标运动信息生成所述码流。
条款119.一种用于存储视频的码流的方法,包括:基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述视频的当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;基于所述目标运动信息生成所述码流;以及将所述码流存储在非暂态计算机可读记录介质中。
示例设备
图16示出了可以在其中实现本公开的各种实施例的计算设备1600的框图。计算设备1600可以被实现为源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300),或者可以被包括在源设备110(或视频编码器114或200)或目的设备120(或视频解码器124或300)中。
应当理解的是,图16中示出的计算设备1600仅为了说明的目的,而不是以任何方式暗示对本公开实施例的功能和范围的任何限制。
如图16所示,计算设备1600包括通用计算设备1600。计算设备1600可以至少包括一个或多个处理器或处理单元1610、存储器1620、存储单元1630、一个或多个通信单元1640、一个或多个输入设备1650以及一个或多个输出设备1660。
在一些实施例中,计算设备1600可以被实现为具有计算能力的任何用户终端或服务器终端。服务器终端可以是由服务提供商提供的服务器、大型计算设备等。用户终端例如可以是任何类型的移动终端、固定终端或便携式终端,包括移动电话、站、单元、设备、多媒体计算机、多媒体平板计算机、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或其任何组合,并且包括这些设备的附件和外围设备或其任何组合。可以设想的是,计算设备1600可以支持到用户的任何类型的接口(诸如“可穿戴”电路装置等)。
处理单元1610可以是物理处理器或虚拟处理器,并且可以基于存储在存储器1620中的程序实现各种处理。在多处理器系统中,多个处理单元并行地执行计算机可执行指令,以便改善计算设备1600的并行处理能力。处理单元1610也可以被称为中央处理单元(CPU)、微处理器、控制器或微控制器。
计算设备1600通常包括各种计算机存储介质。这样的介质可以是由计算设备1600可访问的任何介质,包括但不限于易失性介质和非易失性介质、或可拆卸介质和不可拆卸介质。存储器1620可以是易失性存储器(例如,寄存器、高速缓存、随机存取存储器(RAM))、非易失性存储器(诸如只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)或闪存)或其任何组合。存储单元1630可以是任何可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如存储器、闪存驱动器、磁盘或其他可以被用于存储信息和/或数据并且可以在计算设备1600中被访问的介质。
计算设备1600还可以包括附加的可拆卸/不可拆卸存储介质、易失性/非易失性存储介质。尽管在图16中未示出,但是可以提供用于从可拆卸的非易失性磁盘读取和/或写入可拆卸的非易失性磁盘的磁盘驱动器,以及用于从可拆卸的非易失性光盘读取和/或写入可拆卸的非易失性光盘的光盘驱动器。在这种情况下,每个驱动器可以经由一个或多个数据介质接口连接到总线(未示出)。
通信单元1640经由通信介质与另一计算设备通信。另外,计算设备1600中的组件的功能可以由可以经由通信连接进行通信的单个计算集群或多个计算机器来实现。因此,计算设备1600可以使用与一个或多个其他服务器、联网个人计算机(PC)或其他通用网络节点的逻辑连接来在联网环境中运行。
输入设备1650可以是各种输入设备中的一种或多种输入设备,诸如鼠标、键盘、轨迹球、语音输入设备等。输出设备1660可以是各种输出设备中的一种或多种输出设备,诸如显示器、扬声器、打印机等。借助于通信单元1640,计算设备1600还可以与一个或多个外部设备(未示出)通信,外部设备诸如是存储设备和显示设备,计算设备1600还可以与一个或多个使用户能够与计算设备1600交互的设备通信,或任何使计算设备1600能够与一个或多个其他计算设备通信的设备(例如网卡、调制解调器等)通信,如果需要的话。这种通信可以经由输入/输出(I/O)接口(未示出)进行。
在一些实施例中,计算设备1600的一些或所有组件也可以被布置在云计算架构中,而不是被集成在单个设备中。在云计算架构中,组件可以被远程提供并且共同工作,以实现本公开中描述的功能。在一些实施例中,云计算提供计算、软件、数据访问和存储服务,这将不要求最终用户知晓提供这些服务的系统或硬件的物理位置或配置。在各种实施例中,云计算使用合适的协议经由广域网(例如互联网)提供服务。例如,云计算提供商通过广域网提供应用程序,可以通过网络浏览器或任何其他计算组件访问这些应用程序。云计算架构的软件或组件以及对应的数据可以存储在远程服务器上。云计算环境中的计算资源可以被合并或分布在远程数据中心的位置。云计算基础设施可以通过共享数据中心提供服务,尽管它们表现为作为用户的单一接入点。因此,云计算架构可与被用于从远程位置的服务提供商处提供本文所述的组件和功能。备选地,它们可以由常规服务器提供,或者直接或以其他方式安装在客户端设备上。
在本公开的实施例中,计算设备1600可以被用于实现视频编码/解码。存储器1620可以包括具有一个或多个程序指令的一个或多个视频编解码模块1625。这些模块能够由处理单元1610访问和执行,以执行本文描述的各种实施例的功能。
在执行视频编码的示例实施例中,输入设备1650可以接收视频数据作为待编码的输入1670。视频数据可以由例如视频编解码模块1625处理,以生成经编码的码流。经编码的码流可以经由输出设备1660作为输出1680被提供。
在执行视频解码的示例实施例中,输入设备1650可以接收经编码的码流作为输入1670。经编码的码流可以由例如视频编解码模块1625处理,以生成经解码的视频数据。经解码的视频数据可以经由输出设备1660作为输出1680被提供。
虽然已经参考本公开的优选实施例具体示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求限定的本申请的精神和范围的情况下,可以在形式和细节上进行各种改变。这些变化旨在由本申请的范围所涵盖。因此,本申请的实施例的前述描述不旨在是限制性的。
Claims (119)
1.一种用于视频处理的方法,包括:
在视频的当前视频块与所述视频的码流之间的转换期间,基于针对所述当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;以及
基于所述确定执行所述转换。
2.根据权利要求1所述的方法,其中所述预测列表包括以下一项:
几何划分模式(GPM)候选列表,
多假设预测(MHP)基础假设候选列表,
模板匹配(TM)候选列表,
解码器侧运动矢量细化(DMVR)候选列表,
基于块的解码器侧运动矢量细化(BDMVR)候选列表,
多遍次解码器侧运动矢量细化(MPDMVR)候选列表,或
常规高级运动矢量预测(AMVP)候选列表。
3.根据权利要求1-2中任一项所述的方法,其中所述至少一个现有运动候选包括所述预测列表中的所有现有运动候选。
4.根据权利要求1-3中任一项所述的方法,其中所述目标运动候选与所述预测列表中预定义位置处的一组现有运动候选被比较,并且所述一组现有运动候选中被包含的现有运动候选的数目小于或等于预定义值。
5.根据权利要求4所述的方法,其中所述一组现有运动候选位于所述预测列表的末尾。
6.根据权利要求4所述的方法,其中所述一组现有运动候选包括从所述预测列表的末尾开始的第一位置和第三位置处的现有运动候选。
7.根据权利要求4所述的方法,其中所述一组现有运动候选包括从所述预测列表的末尾开始的第二位置处的现有运动候选。
8.根据权利要求4所述的方法,其中所述一组现有运动候选包括位于所述预测列表的末尾的现有运动候选。
9.根据权利要求1-8中任一项所述的方法,其中确定是否将所述目标运动候选插入到所述预测列表中包括:
确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选是否相同;以及
如果所述目标运动候选和所述第一现有运动候选相同,则确定所述目标运动候选不被插入到所述预测列表中。
10.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的运动矢量(MV)和针对所述第一现有运动候选的MV是否相同;以及
如果针对所述目标运动候选的所述MV和针对所述第一现有运动候选的所述MV相同,则确定所述目标运动候选和所述第一现有运动候选相同。
11.根据权利要求10所述的方法,其中确定针对所述目标运动候选的运动矢量(MV)和针对所述第一现有运动候选的MV是否相同包括:
如果针对所述目标运动候选的所述MV的水平分量和针对所述第一现有运动候选的所述MV的水平分量相同,并且针对所述目标运动候选的所述MV的竖直分量和针对所述第一现有运动候选的所述MV的竖直分量相同,则确定针对所述目标运动候选的所述MV和针对所述第一现有运动候选的所述MV相同。
12.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的参考索引和针对所述第一现有运动候选的参考索引是否相同;以及
如果针对所述目标运动候选的所述参考索引和针对所述第一现有运动候选的所述参考索引相同,则确定所述目标运动候选和所述第一现有运动候选相同。
13.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的具有CU级权重的双向预测(BCW)索引和针对所述第一现有运动候选的BCW索引是否相同;以及
如果针对所述目标运动候选的所述BCW索引和针对所述第一现有运动候选的所述BCW索引相同,则确定所述目标运动候选和所述第一现有运动候选相同。
14.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的局部照明补偿(LIC)标志和针对所述第一现有运动候选的LIC标志是否相同;以及
如果针对所述目标运动候选的所述LIC标志和针对所述第一现有运动候选的所述LIC标志相同,则确定所述目标运动候选和所述第一现有运动候选相同。
15.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的重叠块运动补偿(OBMC)标志和针对所述第一现有运动候选的OBMC标志是否相同;以及
如果针对所述目标运动候选的所述OBMC标志和针对所述第一现有运动候选的所述OBMC标志相同,则确定所述目标运动候选和所述第一现有运动候选相同。
16.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的运动矢量精度和针对所述第一现有运动候选的运动矢量精度是否相同;以及
如果针对所述目标运动候选的所述运动矢量精度和针对所述第一现有运动候选的所述运动矢量精度相同,则确定所述目标运动候选和所述第一现有运动候选相同。
17.根据权利要求9所述的方法,其中确定所述目标运动候选和所述第一现有运动候选是否相同包括:
确定针对所述目标运动候选的插值滤波器和针对所述第一现有运动候选的插值滤波器是否相同;以及
如果针对所述目标运动候选的所述插值滤波器和针对所述第一现有运动候选的所述插值滤波器相同,则确定所述目标运动候选和所述第一现有运动候选相同。
18.根据权利要求9所述的方法,其中确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选是否相同包括:
如果以下至少两项被满足,则确定所述目标运动候选和所述第一现有运动候选相同:
针对所述目标运动候选的MV和针对所述第一现有运动候选的MV相同,
针对所述目标运动候选的参考索引和针对所述第一现有运动候选的参考索引相同,
针对所述目标运动候选的BCW索引和针对所述第一现有运动候选的BCW索引相同,
针对所述目标运动候选的LIC标志和针对所述第一现有运动候选的LIC标志相同,
针对所述目标运动候选的OBMC标志和针对所述第一现有运动候选的OBMC标志相同,
针对所述目标运动候选的运动矢量精度与针对所述第一现有运动候选的运动矢量精度相同,或者
针对所述目标运动候选的插值滤波器和针对所述第一现有运动候选的插值滤波器相同。
19.根据权利要求9-18中任一项所述的方法,其中在确定所述目标运动候选的第一条边信息和所述第一现有运动候选的第一条边信息是否相同的情况下、或在不确定所述目标运动候选的第一条边信息和所述第一现有运动候选的第一条边信息是否相同的情况下,所述目标运动候选和所述第一现有运动候选是否相同被确定。
20.根据权利要求19所述的方法,其中所述第一条边信息是BCW索引或LIC标志。
21.根据权利要求1-8中任一项所述的方法,其中确定是否将所述目标运动候选插入到所述预测列表中包括:
通过使用至少一个阈值,确定所述目标运动候选和所述至少一个现有运动候选中的第一现有运动候选之间的差异;以及
基于所述差异确定是否将所述目标运动候选插入到所述预测列表中。
22.根据权利要求21所述的方法,其中确定所述目标运动候选和所述第一现有运动候选之间的所述差异包括:
通过使用所述至少一个阈值中的第一阈值,确定针对所述目标运动候选的MV和针对所述第一现有运动候选的MV之间的运动矢量差。
23.根据权利要求22所述的方法,其中如果所述运动矢量差的绝对值小于或等于所述第一阈值,则确定所述目标运动候选不被插入到所述预测列表中。
24.根据权利要求21-23中任一项所述的方法,其中确定所述目标运动候选和所述第一现有运动候选之间的所述差异包括:
通过使用所述至少一个阈值中的第二阈值,确定针对所述目标运动候选的参考索引与针对所述第一现有运动候选的参考索引之间的参考索引差。
25.根据权利要求21-24中任一项所述的方法,其中所述至少一个阈值中的一个阈值在所述码流中被指示。
26.根据权利要求21-25中任一项所述的方法,其中所述至少一个阈值中的一个阈值取决于所述视频的经编解码的信息。
27.根据权利要求26所述的方法,其中所述经编解码的信息包括以下至少一项:
运动候选的运动矢量精度,
BCW信息,
LIC信息,
运动补偿插值滤波器信息,
OBMC信息,
编解码单元的宽度,或
所述编解码单元的高度。
28.根据权利要求26-27中任一项所述的方法,其中所述经编解码的信息包括预测列表的类型。
29.根据权利要求28所述的方法,其中所述至少一个阈值包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值,所述第一类型预测列表不同于所述第二类型预测列表,并且所述第三阈值不同于所述第四阈值。
30.根据权利要求28所述的方法,其中所述至少一个阈值包括用于生成第一类型预测列表的第三阈值和用于生成第二类型预测列表的第四阈值,所述第一类型预测列表不同于所述第二类型预测列表,并且所述第三阈值与所述第四阈值相同。
31.根据权利要求30所述的方法,其中用于生成所述第一类型预测列表的差异检查过程与用于生成所述第二类型预测列表的差异检查过程相同。
32.根据权利要求30-31中任一项所述的方法,其中所述第一类型预测列表或所述第二类型预测列表是以下一项:
几何划分模式(GPM)候选列表,
针对附加假设的多假设预测(MHP)预测列表,
MHP基础假设候选列表,
模板匹配(TM)候选列表,
解码器侧运动矢量细化(DMVR)候选列表,
基于块的解码器侧运动矢量细化(BDMVR)候选列表,
多遍次解码器侧运动矢量细化(MPDMVR)候选列表,
仿射高级运动矢量预测(AMVP)候选列表,
仿射合并候选列表,
常规合并候选列表,
常规AMVP候选列表,或
基于子块的时间运动矢量预测(SbTMVP)候选列表。
33.根据权利要求1-32中任一项所述的方法,其中在确定是否将所述目标运动候选插入到所述预测列表期间如何执行所述比较取决于所述视频的经编解码的信息。
34.根据权利要求1-32中任一项所述的方法,其中所述比较取决于所述目标运动候选的参考图片列表信息。
35.根据权利要求34所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的参考图片信息和针对所述目标运动候选的第二参考图片列表中的参考图片信息指示不同的参考图片,则所述比较被执行。
36.根据权利要求35所述的方法,其中所述目标运动候选不被插入到所述预测列表中。
37.根据权利要求1-36中任一项所述的方法,其中所述预测列表包括以下至少一项:
单向预测列表,或
双向预测列表。
38.根据权利要求33所述的方法,其中是否使用相同运动矢量检查或基于阈值的运动矢量检查取决于所述目标运动候选的参考图片列表信息。
39.根据权利要求38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则所述相同运动矢量检查被应用于所述目标运动候选。
40.根据权利要求38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的所有参考图片和第二参考图片列表中的所有参考图片相同,则所述基于阈值的运动矢量检查被应用于所述目标运动候选。
41.根据权利要求38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则所述相同运动矢量检查被应用于所述目标运动候选。
42.根据权利要求38所述的方法,其中如果针对所述目标运动候选的第一参考图片列表中的至少一个参考图片和第二参考图片列表中的至少一个参考图片不同,则所述基于阈值的运动矢量检查被应用于所述目标运动候选。
43.根据权利要求1-42中任一项所述的方法,其中执行所述转换包括:
通过在所述预测列表的末尾附加针对所述当前视频块的至少一个附加候选来更新所述预测列表;以及
基于更新的所述预测列表执行所述转换。
44.根据权利要求43所述的方法,其中所述预测列表是GPM预测列表或用于附加假设生成的MHP预测列表。
45.根据权利要求43-44中任一项所述的方法,其中至少一个附加候选的数目取决于所述预测列表的最大被允许长度。
46.根据权利要求45所述的方法,其中所述预测列表的所述最大被允许长度是预定义的,或者
所述预测列表的所述最大被允许长度在所述码流中被指示。
47.根据权利要求45-46中任一项所述的方法,其中如果所述预测列表中的现有运动候选的数目小于所述预测列表的所述最大被允许长度,则所述至少一个附加候选被插入到所述预测列表中直到所述预测列表中的现有运动候选的数目达到所述预测列表的所述最大被允许长度为止。
48.根据权利要求47所述的方法,其中所述至少一个附加候选通过对所述预测列表中的运动候选做平均而被生成。
49.根据权利要求48所述的方法,其中在与所述至少一个附加候选中的一个附加候选进一步比较的情况下、或在不与所述至少一个附加候选中的一个附加候选进一步比较的情况下,所述目标运动候选被插入到所述预测列表中。
50.根据权利要求48-49中任一项所述的方法,其中对所述预测列表中的所述运动候选做平均包括针对所述运动候选的MV的平均过程。
51.根据权利要求47所述的方法,其中所述至少一个附加候选是零运动候选。
52.根据权利要求51所述的方法,其中所述至少一个附加候选被附加到所述预测列表的末尾。
53.根据权利要求51-52中任一项所述的方法,其中所述目标运动候选被插入到所述预测列表中,而不与所述预测列表的末尾的零运动候选进一步比较。
54.根据权利要求1-42中任一项所述的方法,其中执行所述转换包括:
通过在所述预测列表的末尾附加针对所述当前视频块的至少一个附加候选来更新所述预测列表;以及
基于更新的所述预测列表执行所述转换。
55.根据权利要求54所述的方法,其中更新所述预测列表还包括:
将固定数目的经平均的候选或固定数目的零运动候选插入到所述预测列表中。
56.根据权利要求1-55中任一项所述的方法,其中如果基于模板匹配的运动细化被应用于以下一项,则所述预测列表包括基于模板匹配的预测列表:
GPM运动候选,
组合的帧内和帧间预测(CIIP)运动候选,或
MHP附加假设运动候选。
57.一种用于视频处理的方法,包括:
在视频的当前视频块与所述视频的码流之间的转换期间,如果基于模板匹配的运动细化被应用于针对所述当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;以及
基于重新排序的所述预测列表执行所述转换。
58.根据权利要求57所述的方法,其中所述运动候选是以下一项:
GPM运动候选,
CIIP运动候选,或
MHP附加假设运动候选。
59.根据权利要求57-58中任一项所述的方法,其中对所述预测列表重新排序是基于以下准则:所述预测列表中的每个候选的成本值从所述当前视频块的图片邻近样本信息或参考图片参考样本信息中的至少一项被评估。
60.根据权利要求57-59中任一项所述的方法,还包括:
在对所述预测列表重新排序之前,基于针对所述当前视频块的目标运动候选与所述预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中,或者
基于针对所述当前视频块的目标运动候选与重新排序的所述预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到重新排序的所述预测列表中。
61.一种用于视频处理的方法,包括:
在视频的当前视频块与所述视频的码流之间的转换期间,基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;以及
基于所述目标运动信息执行所述转换。
62.根据权利要求61所述的方法,其中所述隐式运动细化方案和所述显式运动细化方案都被允许用于以下至少一项:
GPM编解码视频单元,
CIIP编解码视频单元,
MHP编解码视频单元,或
常规合并编解码视频单元。
63.根据权利要求61-62中任一项所述的方法,其中与所述隐式运动细化方案相关的第一组语法元素在所述码流中在与所述显式运动细化方案相关的第二组语法元素之后。
64.根据权利要求63所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,以下至少一项取决于针对所述当前视频块的MMVD信息:
是否在所述码流中指示所述第一组语法元素,或者
如何在所述码流中指示所述第一组语法元素。
65.根据权利要求64所述的方法,其中所述MMVD信息包括MMVD偏移值。
66.根据权利要求64所述的方法,其中如果零MMVD偏移被应用于所述当前视频块,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示。
67.根据权利要求64所述的方法,其中如果零MMVD偏移被应用于所述当前视频块的划分,则所述第一组语法元素与所述划分相关联并在所述码流中被指示,或者
如果零MMVD偏移被应用于所述当前视频块的子划分,则所述第一组语法元素与所述子划分相关联并在所述码流中被指示,或者
如果零MMVD偏移被应用于所述当前视频块的子块,则所述第一组语法元素与所述子块相关联并在所述码流中被指示。
68.根据权利要求64所述的方法,其中如果所述当前视频块的所有划分都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示,或者
如果所述当前视频块的所有子划分都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示,或者
如果所述当前视频块的所有子块都以零MMVD偏移被编解码,则所述第一组语法元素与所述当前视频块相关联并在所述码流中被指示。
69.根据权利要求63所述的方法,其中所述第一组语法元素和所述第二组语法元素两者在所述码流中被指示。
70.根据权利要求69所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:
通过将针对所述当前视频块的MVD添加到针对所述当前视频块的MV来获得针对所述当前视频块的候选MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示;以及
基于所述隐式运动细化方案细化所述候选MV,以获得针对所述目标运动信息的目标MV。
71.根据权利要求63所述的方法,其中如果所述第一组语法元素不存在于所述码流中,则所述第一组语法元素的值指示所述当前视频块在不使用所述隐式运动细化方案的情况下被编解码。
72.根据权利要求61-62中任一项所述的方法,其中与所述隐式运动细化方案相关的第一组语法元素在所述码流中在与所述显式运动细化方案相关的第二组语法元素之前。
73.根据权利要求72所述的方法,其中以下至少一项取决于所述隐式运动细化方案是否被应用于所述当前视频块:
是否在所述码流中指示所述第二组语法元素,或者
如何在所述码流中指示所述第二组语法元素。
74.根据权利要求73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示。
75.根据权利要求73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块的划分,则所述第二组语法元素与所述划分相关联并在所述码流中被指示,或者
如果所述隐式运动细化方案未被应用于所述当前视频块的子划分,则所述第二组语法元素与所述子划分相关联并在所述码流中被指示,或者
如果所述隐式运动细化方案未被应用于所述当前视频块的子块,则所述第二组语法元素与所述子块相关联并在所述码流中被指示。
76.根据权利要求73所述的方法,其中如果所述隐式运动细化方案未被应用于所述当前视频块的所有划分,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示,或者
如果所述隐式运动细化方案未被应用于所述当前视频块的所有子划分,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示,或者
如果所述隐式运动细化方案未被应用于所述当前视频块的所有子块,则所述第二组语法元素与所述当前视频块相关联并在所述码流中被指示。
77.根据权利要求72所述的方法,其中所述第一组语法元素和所述第二组语法元素两者在所述码流中被指示。
78.根据权利要求77所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:
基于所述隐式运动细化方案细化针对所述当前视频块的划分的MV;以及
将针对所述当前视频块的MVD添加到细化的所述MV以获得针对所述目标运动信息的目标MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示。
79.根据权利要求72所述的方法,其中如果所述第二组语法元素不存在于所述码流中,则所述第二组语法元素的值指示所述当前视频块在不使用所述显式运动细化方案的情况下被编解码。
80.根据权利要求63-79中任一项所述的方法,其中所述第一组语法元素包括以下至少一项:
针对所述当前视频块的TM标志,
针对所述当前视频块的各个划分的各个TM标志,
针对所述当前视频块的各个子划分的各个TM标志,
针对所述当前视频块的各个子块的各个TM标志,
基于TM的合并候选索引,或
基于TM的AMVP候选索引。
81.根据权利要求63-80中任一项所述的方法,其中所述第二组语法元素包括以下至少一项:
针对所述当前视频块的MMVD标志,
针对所述当前视频块的各个划分的各个MMVD标志,
针对所述当前视频块的各个子划分的各个MMVD标志,
针对所述当前视频块的各个子块的各个MMVD标志,
基于MMVD的合并候选索引,
MMVD偏移方向,
MMVD偏移距离,或
MMVD偏移步长。
82.根据权利要求61-69中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:
基于所述隐式运动细化方案细化针对所述当前视频块的划分的MV;以及
将针对所述当前视频块的MVD添加到细化的所述MV以获得针对所述目标运动信息的目标MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示。
83.根据权利要求61-69中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法,并且确定所述目标运动信息包括:
通过将针对所述当前视频块的MVD添加到针对所述当前视频块的MV,获得针对所述当前视频块的候选MV,所述MVD基于所述基于MMVD的方法在所述码流中被指示;以及
基于所述隐式运动细化方案细化所述候选MV,以获得针对所述目标运动信息的目标MV。
84.根据权利要求61-83中任一项所述的方法,其中所述隐式运动细化方案是基于模版匹配(TM)的运动细化。
85.根据权利要求84所述的方法,其中所述基于TM的运动细化被用于基于所述基于TM的方法细化针对所述当前视频块的运动预测子或运动候选。
86.根据权利要求61-85中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法。
87.根据权利要求86所述的方法,其中所述基于MMVD的方法被用于在所述码流中指示针对所述当前视频块的所述运动差信息,并将所述运动差信息添加到针对所述当前视频块的运动预测子或运动候选。
88.根据权利要求61所述的方法,其中所述当前视频块包括多个部分,针对所述多个部分中的第一部分的第一运动候选与针对所述多个部分中的第二部分的第二运动候选相同,所述第二部分不同于所述第一部分。
89.根据权利要求88所述的方法,其中所述多个部分是以下一项:
多个子块,
多个子划分,或
多个划分。
90.根据权利要求88-89中任一项所述的方法,其中所述第一运动候选和所述第二运动候选是用于所述隐式运动细化方案的运动候选,或者
所述第一运动候选和所述第二运动候选是用于所述显式运动细化方案的运动候选。
91.根据权利要求88-90中任一项所述的方法,其中来自所有所述多个部分的运动候选是相同的。
92.根据权利要求88-90中任一项所述的方法,其中针对所述多个部分中的至少两个部分的运动候选是相同的。
93.根据权利要求88-90中任一项所述的方法,其中针对所述多个部分中的至少一个部分的运动候选索引不存在于所述码流中。
94.根据权利要求88-90中任一项所述的方法,其中在所述码流中被指示的运动候选索引的数目小于被包含在所述多个部分中的部分的数目。
95.根据权利要求94所述的方法,其中,针对所述当前视频块,只有一个用于预测方法的运动候选索引在所述码流中被指示。
96.根据权利要求88-90中任一项所述的方法,其中是否在码流中指示运动候选索引或是否确定所述运动候选索引取决于语法元素。
97.根据权利要求96所述的方法,其中所述语法元素包括以下一项:
语法标志,所述语法标志指示同一候选是否被用于所有所述多个部分,或者
语法参数,所述语法参数指示同一候选是否被用于所述多个部分的指定部分。
98.根据权利要求88-90中任一项所述的方法,其中针对所述多个部分中的每一个,运动候选索引在所述码流中被独立地指示。
99.根据权利要求88-98中任一项所述的方法,其中所述隐式运动细化方案是基于模版匹配(基于TM)的方法。
100.根据权利要求88-99中任一项所述的方法,其中所述显式运动细化方案是基于运动矢量差(基于MMVD)的方法。
101.根据权利要求1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项处被指示:
序列级别,
图片组级别,
图片级别,
条带级别,或
图块组级别。
102.根据权利要求1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项中被指示:
序列头,
图片头,
序列参数集(SPS),
视频参数集(VPS),
依赖参数集(DPS),
解码能力信息(DCI),
图片参数集(PPS),
自适应参数集(APS),
条带头,或者
图块组头。
103.根据权利要求1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于TM的运动细化在以下一项处被指示:
序列级别,
图片组级别,
图片级别,
条带级别,或
图块组级别。
104.根据权利要求1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于TM的运动细化在以下一项中被指示:
序列头,
图片头,
序列参数集(SPS),
视频参数集(VPS),
依赖参数集(DPS),
解码能力信息(DCI),
图片参数集(PPS),
自适应参数集(APS),
条带头,或者
图块组头。
105.根据权利要求1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于MMVD的方法在以下一项处被指示:
序列级别,
图片组级别,
图片级别,
条带级别,或
图块组级别。
106.根据权利要求1-100中任一项所述的方法,其中是否和/或如何针对GPM、CIIP或MHP中的一项应用基于MMVD的方法在以下一项中被指示:
序列头,
图片头,
序列参数集(SPS),
视频参数集(VPS),
依赖参数集(DPS),
解码能力信息(DCI),
图片参数集(PPS),
自适应参数集(APS),
条带头,或者
图块组头。
107.根据权利要求101-102中任一项所述的方法,其中语法元素是否存在取决于以下至少一项:
与所述当前视频块相关联的图片的宽度,
所述图片的高度,
与所述当前视频块相关联的条带的宽度,或
所述条带的高度。
108.根据权利要求1-100中任一项所述的方法,其中是否和/或如何应用所述方法在以下一项处被指示:
预测块(PB),
变换块(TB),
编解码块(CB),
预测单元(PU),
变换单元(TU),
编解码单元(CU),
虚拟流水线数据单元(VPDU),
编解码树单元(CTU),
CTU行,
条带,
图块,
子图片,或
包含多于一个样本或像素的区域。
109.根据权利要求1-100中任一项所述的方法,还包括:
基于所述当前视频单元的经编解码的信息,确定是否和/或如何应用所述方法,所述经编解码的信息包括以下至少一项:
块尺寸,
颜色格式,
单双树划分,
双树划分,
颜色分量,
条带类型,或
图片类型。
110.根据权利要求1-109中任一项所述的方法,其中所述转换包括将所述当前视频块编码到所述码流中。
111.根据权利要求1-109中任一项所述的方法,其中所述转换包括从所述码流解码所述当前视频块。
112.一种用于处理视频数据的装置,包括处理器和在其上具有指令的非暂态存储器,其中所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-111中任一项所述的方法。
113.一种非暂态计算机可读存储介质,存储使处理器执行根据权利要求1-111中任一项所述的方法的指令。
114.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:
基于针对所述视频的当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;以及
基于所述确定生成所述码流。
115.一种用于存储视频的码流的方法,包括:
基于针对所述视频的当前视频块的目标运动候选与针对所述当前视频块的预测列表中的至少一个现有运动候选之间的比较,确定是否将所述目标运动候选插入到所述预测列表中;
基于所述确定生成所述码流;以及
将所述码流存储在非暂态计算机可读记录介质中。
116.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:
如果基于模板匹配的运动细化被应用于针对所述视频的当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;以及
基于重新排序的所述预测列表生成所述码流。
117.一种用于存储视频码流的方法,包括:
如果基于模板匹配的运动细化被应用于针对所述视频的当前视频块的运动候选,则对针对所述当前视频块的预测列表重新排序;
基于重新排序的所述预测列表生成所述码流;以及
将所述码流存储在非暂态计算机可读记录介质中。
118.一种非暂态计算机可读记录介质,存储视频的通过由视频处理装置执行的方法生成的码流,其中所述方法包括:
基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述视频的当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;以及
基于所述目标运动信息生成所述码流。
119.一种用于存储视频的码流的方法,包括:
基于从隐式运动细化方案和显式运动细化方案中被确定的目标方案,确定针对所述视频的当前视频块的目标运动信息,所述隐式运动细化方案是解码器侧运动细化方案,所述显式运动细化方案被用于确定在所述码流中被指示的运动差信息;
基于所述目标运动信息生成所述码流;以及
将所述码流存储在非暂态计算机可读记录介质中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2021103169 | 2021-06-29 | ||
CNPCT/CN2021/103169 | 2021-06-29 | ||
PCT/CN2022/100469 WO2023273987A1 (en) | 2021-06-29 | 2022-06-22 | Method, apparatus, and medium for video processing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117678220A true CN117678220A (zh) | 2024-03-08 |
Family
ID=84691347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280045666.1A Pending CN117678220A (zh) | 2021-06-29 | 2022-06-22 | 用于视频处理的方法、装置和介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117678220A (zh) |
WO (1) | WO2023273987A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX2018002477A (es) * | 2015-09-02 | 2018-06-15 | Mediatek Inc | Metodo y aparato de derivacion de movimiento de lado de decodificador para codificacion de video. |
WO2019072372A1 (en) * | 2017-10-09 | 2019-04-18 | Huawei Technologies Co., Ltd. | MOTION VECTOR REFINEMENT OF A MOTION VECTOR POINTING TO A FRACTIONAL SAMPLE POSITION |
WO2019074291A1 (ko) * | 2017-10-11 | 2019-04-18 | 엘지전자 주식회사 | 분리 변환 기반 영상 코딩 방법 및 그 장치 |
WO2020008349A1 (en) * | 2018-07-02 | 2020-01-09 | Beijing Bytedance Network Technology Co., Ltd. | Merge index coding |
EP3861723A4 (en) * | 2018-11-10 | 2022-04-20 | Beijing Bytedance Network Technology Co., Ltd. | ROUNDS IN PAIRS OF MEDIUM CANDIDATE BILLS |
-
2022
- 2022-06-22 CN CN202280045666.1A patent/CN117678220A/zh active Pending
- 2022-06-22 WO PCT/CN2022/100469 patent/WO2023273987A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2023273987A1 (en) | 2023-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240196001A1 (en) | Method, device, and medium for video processing | |
WO2022242646A1 (en) | Method, device, and medium for video processing | |
CN117529919A (zh) | 用于视频处理的方法、设备和介质 | |
CN117337564A (zh) | 用于视频处理的方法、装置和介质 | |
CN117813820A (zh) | 用于视频处理的方法、装置和介质 | |
CN117678220A (zh) | 用于视频处理的方法、装置和介质 | |
WO2022214088A1 (en) | Method, device, and medium for video processing | |
WO2022228430A1 (en) | Method, device, and medium for video processing | |
WO2022214092A1 (en) | Method, device, and medium for video processing | |
WO2022214075A1 (en) | Method, device, and medium for video processing | |
WO2022214077A1 (en) | Gpm motion refinement | |
CN117426096A (zh) | 用于视频处理的方法、设备和介质 | |
CN117321995A (zh) | 用于视频处理的方法、设备和介质 | |
CN118285098A (zh) | 用于视频处理的方法、装置和介质 | |
CN117529920A (zh) | 用于视频处理的方法、设备和介质 | |
CN118285095A (zh) | 视频处理方法、设备和介质 | |
CN118285102A (zh) | 用于视频处理的方法、装置和介质 | |
CN117501689A (zh) | 视频处理的方法、设备和介质 | |
CN117321992A (zh) | 自适应运动候选列表 | |
CN117426095A (zh) | 用于视频处理的方法、设备和介质 | |
CN117529913A (zh) | 视频处理的方法、设备和介质 | |
CN117795960A (zh) | 用于视频处理的方法、装置和介质 | |
CN117616756A (zh) | 用于视频处理的方法、设备和介质 | |
CN118251885A (zh) | 用于视频处理的方法、设备和介质 | |
CN117581538A (zh) | 视频处理的方法、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |