CN110572666A - 非对称加权Merge和其它编码工具的交互 - Google Patents
非对称加权Merge和其它编码工具的交互 Download PDFInfo
- Publication number
- CN110572666A CN110572666A CN201910487922.2A CN201910487922A CN110572666A CN 110572666 A CN110572666 A CN 110572666A CN 201910487922 A CN201910487922 A CN 201910487922A CN 110572666 A CN110572666 A CN 110572666A
- Authority
- CN
- China
- Prior art keywords
- merge candidate
- prediction
- weight
- block
- merge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000003993 interaction Effects 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 125
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 30
- 239000013598 vector Substances 0.000 claims description 90
- 230000002123 temporal effect Effects 0.000 claims description 22
- 230000003287 optical effect Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000005286 illumination Methods 0.000 claims description 9
- 238000009795 derivation Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 23
- 238000012545 processing Methods 0.000 description 19
- 238000010276 construction Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 7
- 230000011664 signaling Effects 0.000 description 7
- 241000023320 Luma <angiosperm> Species 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000002146 bilateral effect Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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
-
- 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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
描述了视频编码中非对称加权双向预测Merge的设备、系统和方法。在一个典型的方面,一种视频数据解码方法,包括:确定视频数据的当前视频块是从非对称双向预测Merge候选预测的,其中不同的权重被用于第一参考块和第二参考块;并且基于该确定,为当前视频块在启用和禁用编码工具之间做出决定。在当前视频块是从非对称双向预测Merge候选预测的情况下,编码工具不应用到当前视频块。
Description
相关申请的交叉引用
根据适用的专利法和/或《巴黎公约》的规定,本申请及时要求于2018年6月5日提交的国际专利申请号PCT/CN2018/089919的优先权和利益。根据美国法律,将国际专利申请号PCT/CN2018/089919的全部公开以引用方式并入本文,作为本申请公开的一部分。
技术领域
一般来说,本专利文件涉及视频编码技术。
背景技术
运动补偿是视频处理中的一种技术,通过考虑摄像机和/或视频中的对象的运动,给定先前帧和/或将来帧来预测视频中的帧。运动补偿可以用于视频数据的编码和解码中以实现视频压缩。
发明内容
描述了与用于运动补偿的非对称加权双向预测Merge相关的设备、系统和方法。更一般地,所述的本公开技术为视频编码的Merge模式提供增强。
在一个典型的方面,公开的技术可用于提供使用非对称加权双向预测Merge的视频解码方法。该方法包括:确定视频数据的当前块是从非对称双向预测Merge候选预测的,其中不同的权重被用于第一参考块和第二参考块;并且基于该确定,为当前视频块在启用和禁用编码工具之间做出决定。在视频块是从非对称双向预测Merge候选预测的情况下,编码工具不应用到当前视频块。
在另一个典型的方面,公开的技术可用于提供一种使用非对称加权双向预测Merge的视频编码方法。该方法包括:基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中非对称加权包括第一权重和与第一权重不同的第二权重;在构建之后,将Merge候选插入到Merge候选列表中,从至少Merge候选列表中导出运动信息,并且基于运动信息对被帧间编码的视频数据的当前块进行编码。
在另一个典型的方面,公开的技术可用于提供视频数据解码方法。该方法包括:接收被帧间编码的视频数据的当前块;基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中非对称加权包括第一权重和与第一权重不同的第二权重,并且其中Merge候选包括运动矢量和对应的参考图片;在构建之后,将Merge候选插入到Merge候选列表中;从至少Merge候选列表导出运动信息;以及基于运动信息、运动矢量和对应的参考图片解码当前块。
在另一个典型的方面,公开的技术可用于提供使用非对称加权双向预测Merge的视频编码方法。该方法包括:基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中非对称加权包括第一权重和与第一权重不同的第二权重;在构建之后,将Merge候选插入到Merge候选列表中;从至少Merge候选列表导出运动信息;以及基于运动信息编码被帧间编码的视频数据的当前视频块。在当前视频块是从非对称双向预测Merge候选预测的情况下,编码工具不应用到当前视频块。
在又一典型的方面,上述方法以处理器可执行代码的形式实施,并且存储在计算机可读的程序介质中。
在又一典型的方面,公开了一种设备,其被配置为或可操作以执行上述方法。该设备可以包括被编程以实现该方法的处理器。
在又一典型的方面,一种视频解码器装置,其可以实现如本文所述的方法。
在附图、说明书和权利要求书中更详细地描述了所公开技术的上述方面、以及其他方面和特征。
附图说明
图1示出了构建Merge候选列表的示例。
图2示出了空间候选的位置的示例。
图3示出了接受空间Merge候选的冗余检查的候选对的示例。
图4A和图4B示出了基于当前块的大小和形状的第二预测单元(PU)的位置示例。
图5示出了时域Merge候选的运动矢量缩放示例。
图6示出了时域Merge候选的候选位置示例。
图7示出了生成组合的双向预测Merge候选的示例。
图8示出了构建运动矢量预测候选的示例。
图9示出了空间运动矢量候选的运动矢量缩放示例。
图10A和图10B示出了当使用重叠块运动补偿(OBMC)算法时子块的快照示例。
图11示出了用于推导局部照明补偿(LIC)算法参数的相邻样本的示例。
图12示出了模式匹配运动矢量推导(PMMVD)模式中的双边匹配的示例,该模式是基于帧速率上转换(FRUC)算法的特殊Merge模式。
图13示出了FRUC算法中模板匹配的示例。
图14示出了FRUC算法中的单边运动估计的示例。
图15示出了双向光流(BIO)算法使用的光流轨迹的示例。
图16A和图16B示出了使用无块扩展的双向光流(BIO)算法的示例快照。
图17示出了基于双边模板匹配的解码器侧运动矢量优化(DMVR)算法的示例。
图18示出了根据所公开的技术使用非对称加权双向预测Merge的视频解码示例方法的流程图。
图19示出了根据所公开的技术使用非对称加权双向预测Merge的视频编码示例方法的流程图。
图20是说明可用于实现本公开技术的各个部分的计算机系统或其他控制设备的结构的示例的框图。
图21示出了可用于实施本公开技术的各个部分的移动设备的示例实施例的框图。
具体实施方式
由于对高分辨率视频的需求日益增加,视频编码方法和技术在现代技术中无处不在。视频编解码器通常包括压缩或解压缩数字视频的电子电路或软件,并且不断地被改进以提供更高的编码效率。视频编解码器将未压缩的视频转换为压缩格式,或反之亦然。视频质量、用于表示视频的数据量(由比特率决定)、编码和解码算法的复杂度、对数据丢失和错误的敏感度、易于编辑、随机访问和端到端延迟(延迟)之间存在复杂的关系。压缩格式通常符合标准视频压缩规范,例如,高效视频编码(HEVC)标准(也称为H.265或MPEG-H第2部分)、待最终确定的通用视频编码标准或其他当前和/或未来的视频编码标准。
所公开技术的实施例可以应用于现有的视频编码标准(例如,HEVC、H.265)和未来的标准,以提高运行时间性能。它与视频编码中的Merge模式有着特定的关系。在本文件中,使用章节标题来提高描述的可读性,并且不以任何方式将讨论或实施例(和/或实现)仅限于各自的章节。为了便于理解,本文件中使用了章节,并且不将各章节中公开的技术和实施例的范围仅限制在该章节中。
1. HEVC/H.265中的帧间预测的示例
多年来,视频编码标准有了显著的改进,并且现在在某种程度上提供了高编码效率和对更高分辨率的支持。最新标准诸如HEVC和H.265等是基于混合视频编码结构,其中采用了时域预测加变换编码。
1.1预测模式的示例
每个帧间预测的PU(预测单元)都有一个或两个参考图片列表的运动参数。在一些实施例中,运动参数包括运动矢量和参考图片指数。在其他实施例中,两个参考图片列表之一的使用也可以使用inter_pred_idc发信令。在又一实施例中,运动矢量可显式地编码为相对于预测器的增量。
当CU采用跳跃模式编码时,PU与CU相关联,并且没有显著的残差系数,没有编码运动矢量增量或参考图片指数。指定了一种Merge模式,通过该模式,可以从相邻的PU(包括空间和时间候选)中获取当前PU的运动参数。Merge模式可以应用于任何帧间预测的PU,而不仅仅是跳跃模式。Merge模式的另一种选择是运动参数的显式传输,其中每个参考图片列表的运动矢量、对应的参考图片指数以及参考图片列表的使用都会根据每个PU显式地发信令。
当信令指示要使用两个参考图片列表中的一个时,从一个样本块中生成PU。这被称为“单向预测”。单向预测对P条带(slice)和B条带都可用。
当信令指示要使用两个参考图片列表时,从两个样本块中生成PU。这被称为“双向预测”。双向预测仅对B条带可用。
1.1.1构建Merge模式的候选的实施例
当使用Merge模式预测PU时,从比特流中解析指向Merge候选列表中条目的指数,并且使用该指数检索运动信息。此列表的构建可按以下步骤顺序进行概括:
步骤1:初始候选推导
步骤1.1:空间候选推导
步骤1.2:空间候选冗余检查
步骤1.3:时域候选推导
步骤2:附加候选插入
步骤2.1:创建双向预测候选
步骤2.2:插入零运动候选
图1示出了基于上面概括的步骤序列构建Merge候选列表的示例。对于空间Merge候选推导,在位于五个不同位置的候选中最多选择四个Merge候选。对于时域Merge候选推导,在两个候选中最多选择一个Merge候选。由于在解码器处假定每个PU的候选数为常量,因此当候选数未达到片头中发信令的最大Merge候选数(maxNumMergeCand)时,生成附加的候选。由于候选数是恒定的,所以最佳Merge候选的指数使用截断的一元二值化(TU)进行编码。如果CU的大小等于8,则当前CU的所有PU都共享一个Merge候选列表,这与2N×2N预测单元的Merge候选列表相同。
1.1.2构建空间Merge候选
在空间Merge候选的推导中,在位于图2所示位置的候选中最多选择四个Merge候选。推导顺序为A1,B1,B0,A0和B2。只有当位置A1,B1,B0,A0的任何PU不可用(例如,因为它属于另一个条带或片)或是内部编码时,才考虑位置B2。在增加A1位置的候选后,对剩余候选的增加进行冗余检查,其确保具有相同运动信息的候选被排除在列表之外,从而提高编码效率。
为了降低计算的复杂度,在所提到的冗余检查中并不考虑所有可能的候选对。相反,只有与图3中的箭头链接的对才会被考虑,并且只有当用于冗余检查的对应候选没有相同的运动信息时,才将候选添加到列表中。复制运动信息的另一个来源是与2Nx2N不同的分区相关的“第二PU”。例如,图4A和4B分别描述了N×2N和2N×N情况下的第二PU。当当前的PU被划分为N×2N时,对于列表构建不考虑A1位置的候选。在一些实施例中,添加此候选可能导致两个具有相同运动信息的预测单元,这对于在编码单元中仅具有一个PU是冗余的。同样地,当当前PU被划分为2N×N时,不考虑位置B1。
1.1.3构建时域Merge候选
在此步骤中,只有一个候选添加到列表中。特别地,在这个时域Merge候选的推导中,基于与给定参考图片列表中当前图片具有最小POC差异的并置PU导出了缩放运动矢量。用于推导并置PU的参考图片列表在条带头中显式地发信令。
图5示出了时域Merge候选(如虚线所示)的缩放运动矢量的推导示例,其使用POC距离tb和td从并置PU的运动矢量进行缩放,其中tb定义为当前图片的参考图片和当前图片之间的POC差异,并且td定义为并置图片的参考图片与并置图片之间的POC差异。时域Merge候选的参考图片指数设置为零。对于B条带,得到两个运动矢量(一个是对于参考图片列表0,另一个是对于参考图片列表1)并将其组合使其成为双向预测Merge候选。
在属于参考帧的并置PU(Y)中,在候选C0和C1之间选择时域候选的位置,如图6所示。如果位置C0处的PU不可用、内部编码或在当前CTU之外,则使用位置C1。否则,位置C0被用于时域Merge候选的推导。
1.1.4构建附加类型的Merge候选
除了空时Merge候选,还有两种附加类型的Merge候选:组合双向预测Merge候选和零Merge候选。组合双向预测Merge候选是利用空时Merge候选生成的。组合双向预测Merge候选仅用于B条带。通过将初始候选的第一参考图片列表运动参数与另一候选的第二参考图片列表运动参数相结合,生成组合双向预测候选。如果这两个元组提供不同的运动假设,它们将形成新的双向预测候选。
图7示出了此过程的一个示例,其中原始列表(710,在左侧)中具有MVL0和refIdxL0或MVL1和refIdxL1的两个候选被用于创建添加到最终列表(720,在右侧)中的组合双向预测Merge候选。
插入零运动候选以填充Merge候选列表中的其余条目,从而达到MaxNumMergeCand的容量。这些候选具有零空间位移和从零开始并且每次将新的零运动候选添加到列表中时都会增加的参考图片指数。这些候选使用的参考帧的数目对于单向预测和双向预测分别是1帧和2帧。在一些实施例中,对这些候选不执行冗余检查。
1.1.5并行处理的运动估计区域的示例
为了加快编码处理,可以并行执行运动估计,从而同时导出给定区域内所有预测单元的运动矢量。从空间邻域导出Merge候选可能会干扰并行处理,因为一个预测单元在完成相关运动估计之前无法从相邻的PU导出运动参数。为了缓和编码效率和处理延迟之间的平衡,可以定义运动估计区域(MER)。MER的大小可在图片参数集(PPS)中发信令。当定义MER时,落入同一区域的Merge候选标记为不可用,并且因此在列表构建中不考虑。
1.2运动矢量预测的实施例
运动矢量预测利用运动矢量与相邻的PU的空时相关性,其用于运动参数的显式传输。首先通过检查左上方的时域相邻的PU位置的可用性、去掉多余的候选位置并且加上零矢量以使候选列表长度恒定来构建运动矢量候选列表。然后,编码器可以从候选列表中选择最佳的预测器,并发送指示所选候选的对应指数。与Merge指数信令类似,最佳运动矢量候选的指数使用截断的一元进行编码。
1.2.1构建运动矢量预测候选的示例
图8概括了运动矢量预测候选的推导过程,并可以对每个参考图片列表使用refidx作为输入来实现。
在运动矢量预测中,考虑了两种类型的运动矢量候选:空间运动矢量候选和时域运动矢量候选。对于空间运动矢量候选的推导,基于位于先前图2所示的五个不同位置的每个PU的运动矢量最终推导出两个运动矢量候选。
对于时域运动矢量候选的推导,从两个候选中选择一个运动矢量候选,这两个候选是基于两个不同的并置位置推导出的。在作出第一个空时候选列表后,移除列表中重复的运动矢量候选。如果潜在候选的数量大于二,则从列表中移除相关联的参考图片列表中参考图片指数大于1的运动矢量候选。如果空时运动矢量候选数小于二,则会在列表中添加附加的零运动矢量候选。
1.2.2构建空间运动矢量候选
在推导空间运动矢量候选时,在五个潜在候选中最多考虑两个候选,这五个候选来自先前图2所示位置上的PU,这些位置与运动Merge的位置相同。当前PU左侧的推导顺序定义为A0、A1、以及缩放的A0、缩放的A1。当前PU上面的推导顺序定义为B0、B1,B2、缩放的B0、缩放的B1、缩放的B2。因此,每侧有四种情况可以用作运动矢量候选,其中两种情况不需要使用空间缩放,并且两种情况使用空间缩放。四种不同的情况概括如下:
--无空间缩放
(1)相同的参考图片列表,并且相同的参考图片指数(相同的POC)
(2)不同的参考图片列表,但是相同的参考图片(相同的POC)--空间缩放
(3)相同的参考图片列表,但是不同的参考图片(不同的POC)
(4)不同的参考图片列表,并且不同的参考图片(不同的POC)
首先检查无空间缩放的情况,然后检查允许空间缩放的情况。当POC在相邻PU的参考图片与当前PU的参考图片之间不同时,都会考虑空间缩放,而不考虑参考图片列表。如果左侧候选的所有PU都不可用或是内部编码,则允许对上述运动矢量进行缩放,以帮助左侧和上方MV候选的平行推导。否则,不允许对上述运动矢量进行空间缩放。
如图9中的示例所示,对于空间缩放情况,以与时域缩放类似的方式缩放相邻PU的运动矢量。一个区别是,给出当前PU的参考图片列表和指数作为输入;实际的缩放处理与时域缩放处理相同。
1.2.3构建时域运动矢量候选
除了参考图片指数的推导外,时域Merge候选的所有推导过程与空间运动矢量候选的推导过程相同(如图6中的示例所示)。在一些实施例中,向解码器发参考图片指数的信令。
2.联合探索模型(JEM)中帧间预测方法的示例
在一些实施例中,使用名为联合探索模型(JEM)的参考软件来探索未来的视频编码技术。在JEM中,基于子块的预测被用于多种编码工具中,诸如仿射预测、可选时域运动矢量预测(ATMVP)、空时运动矢量预测(STMVP)、双向光流(BIO)、帧速率上转换(FRUC)、局部自适应运动矢量分辨率(LAMVR)、重叠块运动补偿(OBMC)、局部照明补偿(LIC)和解码器侧运动矢量细化(DMVR)。
2.1重叠块运动补偿(OBMC)的示例
在JEM中,可以使用CU级别的语法打开和关闭OBMC。当OBMC用于JEM时,OBMC用于所有运动补偿(MC)块边界,但CU的右边界和底边界除外。此外,它还适用于亮度和色度分量。在JEM中,MC块对应于编码块。当CU用子CU模式(包括子CU Merge、仿射和FRUC模式)编码时,CU的每个子块都是MC块。为了用统一的方式处理CU边界,在所有MC块边界的子块级别执行OBMC,其中子块大小设置为等于4×4,如图10A和10B所示。
图10A示出了在CU/PU边界处的子块,并且阴影线的子块是应用OBMC的地方,同样地,图10B示出了在ATMVP模式下的子PU。
当OBMC应用于当前子块时,除了当前运动矢量外,四个相连的相邻子块的运动矢量(如果可用且与当前运动矢量不同)也可用于推导当前子块的预测块。将这些基于多个运动矢量的多个预测块组合起来,以生成当前子块的最终预测信号。
基于相邻子块运动矢量的预测块表示为PN,其中N表示相邻上、下、左右子块的索引,并且基于当前子块运动矢量的预测块表示为PC。当PN基于包含与当前子块相同的运动信息的相邻子块的运动信息时,OBMC不从PN处执行的。否则,每个PN的样本都添加到PC中的相同样本中,即将PN的四行/列添加到PC。PN使用权重因子{1/4,1/8,1/16,1/32},PC使用权重因子{3/4,7/8,15/16,31/32}。例外情况是小MC块(即编码块的高度或宽度等于4或CU是用子CU模式编码的),对此在PC中只添加PN的两行/列。在这种情况下,PN使用权重因子{1/4,1/8},PC使用权重因子{3/4,7/8}。对于基于垂直(水平)相邻子块的运动矢量生成的PN,将PN的同一行(列)中的样本以相同的权重因子添加到PC中。
在JEM中,对于尺寸小于或等于256亮度样本的CU,会对CU级别标志发信令,以指示当前CU是否应用OBMC。对于尺寸大于256亮度样本或未使用AMVP模式编码的CU,默认情况下应用OBMC。在编码器处,当OBMC应用于CU时,在运动估计阶段会考虑其影响。使用上邻块和左邻块的运动信息通过OBMC形成的预测信号被用来补偿当前CU的原始信号的上边界和左边界,并且然后应用正常的运动估计处理。
2.2局部照明补偿(LIC)的示例
LIC基于用于照明变化的线性模型,使用比例因子a和偏移量b。并且其对每个帧间编码的编码单元(CU)自适应地启用或禁用。
当LIC应用于CU时,采用最小二乘误差法、通过使用当前CU的相邻样本及其对应的参考样本导出参数a和b。图11示出了用于推导IC算法参数的相邻样本的示例。具体来说,如图11所示,使用参考图片中CU的子采样(2:1子采样)相邻样本和对应的样本(由当前CU或子CU的运动信息识别)。推导出IC参数并将其分别应用于每个预测方向。
当使用Merge模式对CU进行编码时,LIC标志以类似于Merge模式下运动信息复制的方式从相邻块复制;否则,将为CU发出LIC标志,以指示LIC是否适用。
当为图片启用LIC时,需要附加的CU级RD检查来确定是否为CU应用LIC。当对CU启用LIC时,对于整数像素运动搜索和分数像素运动搜索,分别使用绝对差的平均去除和(MR-SAD)和绝对Hadamard变换差的平均去除和(MR-SATD),而不使用SAD和SATD。
为了降低编码复杂度,在JEM中应用以下编码方案:
--当当前图片与其参考图片之间没有明显的亮度变化时,对整个图片禁用LIC。为了识别这种情况,在编码器处计算当前图片的柱状图和当前图片的每个参考图片的柱状图。如果当前图片和当前图片的每个参考图片之间的柱状图差小于给定阈值,则对当前图片禁用LIC;否则,对当前图片启用LIC。
2.3模式匹配运动矢量推导(PMMVD)的示例
PMMVD模式是基于帧速率上转换(FRUC)方法的特殊Merge模式。在这种模式下,块的运动信息不会被发信令,而是在解码器侧导出。
对于CU,当其Merge标志为真时,FRUC标志可以被发信令。当FRUC标志为假时,Merge指数可以被发信令并且使用常规Merge模式。当FRUC标志为真时,另一个FRUC模式标志可以被发信令来指示将使用哪种模式(例如,双向匹配或模板匹配)来导出该块的运动信息。
在编码器端,基于对正常Merge候选所做的RD成本选择决定是否对CU使用FRUCMerge模式。例如,通过使用RD成本选择来检查CU的多个匹配模式(例如,双向匹配和模板匹配)。导致最低成本的模式进一步与其它CU模式相比较。如果FRUC匹配模式是最有效的模式,那么对于CU,FRUC标志设置为真,并且使用相关的匹配模式。
通常,FRUC Merge模式中的运动推导处理有两个步骤:首先执行CU级运动搜索,然后执行子CU级运动优化。在CU级,基于双向匹配或模板匹配,导出整个CU的初始运动矢量。首先,生成一个MV候选列表,并且选择导致最低匹配成本的候选作为进一步优化CU级的起点。然后在起始点附近执行基于双向匹配或模板匹配的局部搜索。将最小匹配成本的MV结果作为整个CU的MV值。接着,以导出的CU运动矢量为起点,进一步在子CU级细化运动信息。
例如,对于W×H CU运动信息推导执行以下推导过程。在第一阶段,推导出了整个W×H CU的MV。在第二阶段,该CU进一步被分成M×M子CU。M的值按照等式(1)计算,D是预先定义的划分深度,在JEM中默认设置为3。然后导出每个子CU的MV值。
图12示出在帧速率上转换(FRUC)方法中使用的双向匹配的例子。通过沿当前CU(1200)的运动轨迹在两张不同的参考图片(1210,1211)中找到两个块之间最接近的匹配,使用双向匹配来获得当前CU的运动信息。在连续运动轨迹假设下,指向两个参考块的运动矢量MV0(1201)和MV1(1202)与当前图片和两个参考图片之间的时间距离(例如,TD0(1203)和TD1(1204)成正比。在一些实施例中,当当前图片1200暂时位于两个参考图片(1210,1211)之间并且当前图片到两个参考图片的时间距离相同时,双向匹配成为基于镜像的双向MV。
图13示出在帧速率上转换(FRUC)方法中使用的模板匹配的例子。模板匹配可以用于通过查找当前图片中的模板(例如,当前CU的顶部和/或左侧相邻块)与参考图片1310中的块(例如,与模板大小相同)之间的最接近匹配来获取当前CU 1300的运动信息。除了上述的FRUC Merge模式外,模板匹配也可以应用于AMVP模式。在JEM和HEVC中,AMVP都具有两个候选。通过模板匹配方法,可以导出新的候选。如果通过模板匹配新导出的候选与第一个现有的AMVP候选不同,则将其插入AMVP候选列表的最开始处,并且然后将列表大小设置为2(例如,通过移除第二个现有AMVP候选)。当应用于AMVP模式时,仅应用CU级搜索。
CU级设置的MV候选可以包括以下:(1)初始AMVP候选,如果当前CU处于AMVP模式,(2)所有Merge候选,(3)插值MV场(稍后描述)中的数个MV,以及顶部和左侧相邻运动矢量。
当使用双向匹配时,Merge候选的每个有效MV可以用作输入,以生成假设为双向匹配的MV对。例如,Merge候选在参考列表A处的一个有效MV为(MVa,refa)。然后在另一个参考列表B中找到其配对的双向MV的参考图片refb,以便refa和refb在时间上位于当前图片的不同侧。如果参考列表B中的参考refb不可用,则将参考refb确定为与参考refa不同的参考,并且其到当前图片的时间距离是列表B中的最小距离。确定参考refb后,通过基于当前图片和参考refa、参考refb之间的时间距离缩放MVa导出MVb。
在一些实现中,还可以将来自插值MV场中的四个MV添加到CU级候选列表中。更具体地,添加当前CU的位置(0,0),(W/2,0),(0,H/2)和(W/2,H/2)处插值的MV。当在AMVP模式下应用FRUC时,原始的AMVP候选也添加到CU级的MV候选集。在一些实现中,在CU级,可以将AMVP CU的15个MV和Merge CU的13个MV添加到候选列表中。
在子CU级设置的MV候选包括从CU级搜索确定的MV,(2)顶部、左侧、左上方和右上方相邻的MV,(3)参考图片中并置的MV的缩放版本,(4)一个或多个ATMVP候选(例如,最多四个)和(5)一个或多个STMVP候选(例如,最多四个)。来自参考图片的缩放MV导出如下。两个列表中的参考图片都被遍历。参考图片中子CU的并置位置处的MV被缩放为起始CU级MV的参考。ATMVP和STMVP候选可以是前四个。在子CU级,一个或多个MV(例如,最多17个)被添加到候选列表中。
插值MV场的生成。在对帧进行编码之前,基于单向ME生成整个图片的内插运动场。然后,该运动场可以随后用作CU级或子CU级的MV候选。
在一些实施例中,两个参考列表中每个参考图片的运动场在4×4的块级别上被遍历。图14示出了在FRUC法中的单向运动估计(ME)1400的例子。对于每个4×4块,如果与块相关联的运动通过当前图片中的4×4块,并且该块没有被分配任何内插运动,则根据时间距离TD0和TD1将参考块的运动缩放到当前图片(与HEVC中TMVP的MV缩放相同),并且在当前帧中将该缩放运动指定给该块。如果没有缩放的MV指定给4×4块,则在插值运动场中将块的运动标记为不可用。
插值和匹配成本。当运动矢量指向分数采样位置时,需要运动补偿插值。为了降低复杂度,对双向匹配和模板匹配都使用双线性插值而不是常规的8抽头HEVC插值。
匹配成本的计算在不同的步骤处有点不同。当从CU级的候选集中选择候选时,匹配成本可以是双向匹配或模板匹配的绝对和差(SAD)。在确定起始MV后,双向匹配在子CU级搜索的匹配成本如下:
这里,w是权重系数。在一些实施例中,w可以被经验地设置为4。MV和MVs分别指示当前MV和起始MV。仍然可以将SAD用作模式匹配在子CU级搜索的匹配成本。
在FRUC模式下,MV通过仅使用亮度样本导出。导出的运动将用于亮度和色度的MC帧间预测。确定MV后,对亮度使用8抽头(8-taps)插值滤波器并且对色度使用4抽头(4-taps)插值滤波器执行最终MC。
MV细化是基于模式的MV搜索,以双向匹配成本或模板匹配成本为标准。在JEM中,支持两种搜索模式—无限制中心偏置菱形搜索(UCBDS)和自适应交叉搜索,分别在CU级别和子CU级别进行MV细化。对于CU级和子CU级的MV细化,都在四分之一亮度样本精度下直接搜索MV,接着是八分之一亮度样本MV细化。将CU和子CU步骤的MV细化的搜索范围设置为8个亮度样本。
在双向匹配Merge模式下,应用双向预测,因为CU的运动信息是在两个不同的参考图片中基于当前CU运动轨迹上两个块之间的最近匹配得出的。在模板匹配Merge模式下,编码器可以从列表0的单向预测、列表1的单向预测或者双向预测中为CU做出选择。该选择可以基于如下的模板匹配成本:
如果costBi<=factor*min(cost0,cost1)
则使用双向预测;
否则,如果cost0<=cost1
则使用列表0中的单向预测;
否则,
使用列表1中的单向预测;
这里,cost0是列表0模板匹配的SAD,cost1是列表2模板匹配的SAD,并且cost双向是双向模板匹配的SAD。例如,当factor的值等于1.25时,意味着选择过程朝双向预测偏移。帧间预测方向选择可应用于CU级模板匹配处理。
2.4双向光流(BIO)的示例
双向光流(BIO)方法是在分块运动补偿之上对双向预测进行的样本方向运动细化。在一些实现中,样本级的运动细化不使用信令。
设I(k)为块运动补偿后到参考k(k=0,1)的亮度值,并且分别为I(k)梯度的水平分量和垂直分量。假设光流是有效的,则运动矢量场(vx,vy)由下式给出:
将此光流等式与每个样品运动轨迹的埃尔米特插值相结合,得到一个唯一的三阶多项式,该多项式在末端同时匹配函数值I(k)和其导数该多项式在t=0时的值是BIO预测:
图15示出了双向光流(BIO)方法中的示例光流轨迹。这里,τ0和τ1表示到参考帧的距离。基于Ref0和Ref1的POC计算距离τ0和τ1:τ0=POC(current)-POC(Ref0),τ1=POC(Ref1)-POC(current)。如果两个预测都来自同一个时间方向(都来自过去或都来自未来),则符号是不同的(例如,τ0·τ1<0)。在这种情况下,如果预测不是来自同一时间点(例如,τ0≠τ1),则应用BIO。两个参考区域都具有非零运动(例如,MVx0,MVy0,MVx1,MVy1≠0),并且块运动矢量与时间距离成比例(例如,MVx0/MVx1=MVy0/MVy1=-τ0/τ1)。
通过最小化A点和B点之间的值的差Δ来确定运动矢量场(vx,vy)。图16A-16B示出了运动轨迹与参考帧平面相交的示例。对Δ,模型仅使用局部泰勒展开的第一个线性项:
上述等式中的所有值取决于样本位置,表示为(i′,j′)。假设在局部周围区域的运动是一致的,那么Δ可以在以当前预测点(i,j)为中心的(2M+1)x(2M+1)方形窗口Ω内最小化,其中M等于2:
对于这个优化问题,JEM使用简化方法,首先在垂直方向上最小化,然后在水平方向最小化。结果如下:
其中,
为了避免被零除或很小的值除,可在式(7)和式(8)中引入正则化参数r和m。
r=500·4d-8 等式(10)
m=700·4d-8 等式(11)
这里,d是视频样本的位深度。
为了使BIO的内存访问与常规双向预测运动补偿相同,计算当前块内位置的所有预测和梯度值图16A示出了块2200外部的访问位置示例。如图16A所示,在等式(9)中,以预测区块边界上当前预测点为中心的(2M+1)×(2M+1)的方形窗口Ω需要访问区块外的位置。在JEM中,块外的值设置为等于块内最近的可用值。例如,这可以实现为填充区域2201,如图16B所示。
使用BIO,可以对每个样本的运动场进行细化。为了降低计算复杂度,在JEM中采用了基于块的BIO。运动细化可以基于4x4块计算。在基于块的BIO中,可以对4x4块中所有样本的等式(9)中的sn值进行聚合,然后将sn的聚合值用于推导4x4块的BIO运动矢量偏移。更具体地说,下面的等式可以用于基于块的BIO推导:
这里,bk表示属于预测块的第k个4x4块的样本组。等式(7)和等式(8)中的sn替换为((sn,bk)>>4)以推导相关联的运动矢量偏移。
在某些情况下,由于噪声或不规则运动,BIO的MV团可能不可靠。因此,在BIO中,MV团的大小被固定到一个阈值。该阈值是基于当前图片的参考图片是否全部来自一个方向确定的。例如,如果当前图片的所有参考图片都来自一个方向,该阈值的值被设置为12×214 -d,否则其被设置为12×213-d。
可以使用与HEVC运动补偿处理一致的操作(例如,2D分离有限脉冲响应(FIR))通过运动补偿插值同时计算BIO的梯度。在一些实施例中,2D分离FIR的输入是与运动补偿处理相同的参考帧,以及根据块运动矢量的分数部分的分数位置(fracX,fracY)。对于水平梯度首先使用BIOfilterS对信号进行垂直内插,该BIOfilterS对应于具有去缩放标度位移d-8的分数位置fracY。然后在水平方向上应用梯度滤波器BIOfilterG,该BIOfilterG对应于具有去缩放标度位移18-d的分数位置fracX。对于垂直梯度在垂直方向上使用BIOfilterG应用梯度滤波器,该BIOfilterG对应于具有d-8去缩放标度位移的分数位置fracY。然后,然后在水平方向上使用梯度滤波器BIOfilterS执行信号替换,该BIOfilterS对应于具有去缩放标度位移18-d的分数位置fracX。用于梯度计算BIOfilterG和信号替换BIOfilterS的插值滤波器的长度可以更短(例如,6-tap),以保持合理的复杂度。表1示出了可用在BIO中于计算块运动矢量不同分数位置梯度的示例滤波器。表2示出了可用于在BIO中预测信号生成的插值示例滤波器。
表1 BIO中用于梯度计算的示例滤波器
分数像素位置 | 梯度的插值滤波器(BIOfilterG) |
0 | {8,-39,-3,46,-17,5} |
1/16 | {8,-32,-13,50,-18,5} |
1/8 | {7,-27,-20,54,-19,5} |
3/16 | {6,-21,-29,57,-18,5} |
1/4 | {4,-17,-36,60,-15,4} |
5/16 | {3,-9,-44,61,-15,4} |
3/8 | {1,-4,-48,61,-13,3} |
7/16 | {0,1,-54,60,-9,2} |
1/2 | {-1,4,-57,57,-4,1} |
表2 BIO中用于预测信号生成的示例插值滤波器
分数像素位置 | 用于预测信号的插值滤波器(BIOfilterS) |
0 | {0,0,64,0,0,0} |
1/16 | {1,-3,64,4,-2,0} |
1/8 | {1,-6,62,9,-3,1} |
3/16 | {2,-8,60,14,-5,1} |
1/4 | {2,-9,57,19,-7,2} |
5/16 | {3,-10,53,24,-8,2} |
3/8 | {3,-11,50,29,-9,2} |
7/16 | {3,-11,44,35,-10,3} |
1/2 | {3,-10,35,44,-11,3} |
在JEM中,当两个预测来自不同的参考图片时,BIO可应用于所有的双向预测块。当为CU启用局部照明补偿(LIC)时,可以禁用BIO。
在一些实施例中,在正常MC处理之后将OBMC应用于块。为了降低计算复杂度,在OBMC处理期间可能不应用BIO。这意味着在OBMC处理期间,当使用自己的MV时,将BIO应用于块的MC处理,而当使用相邻块的MV时,BIO不应用于块的MC处理。
2.5解码器侧运动矢量优化(DMVR)的示例
在双向预测操作中,对于一个块区域的预测,将两个分别由列表0的运动矢量(MV)和列表1的MV形成的预测块组合形成单个预测信号。在解码器侧运动矢量细化(DMVR)方法中,通过双边模板匹配处理进一步细化双向预测的两个运动矢量。解码器中应用的双边模板匹配用于在双边模板和参考图片中的重建样本之间执行基于失真的搜索,以便在不传输附加运动信息的情况下获得细化的MV。
在DMVR中,双边模板被生成为两个预测块的加权组合(即平均),其中两个预测块分别来自列表0的初始MV0和列表1的MV1,如图17所示。模板匹配操作包括计算生成的模板与参考图片中的样本区域(在初始预测块周围)之间的成本度量。对于两个参考图片中的每一个,产生最小模板成本的MV被视为该列表的更新MV,以替换原始MV。在JEM中,为每个列表搜索九个MV候选。九个MV候选包括原始MV和8个周边MV,这八个周边MV在水平或垂直方向上或两者与原始MV具有一个亮度样本的偏移。最后,使用图17所示的两个新的MV(即MV0′和MV1′)生成最终的双向预测结果。绝对差异之和(SAD)被用作成本度量。
在不传输附加语法元素的情况下,将DMVR应用于双向预测的Merge模式,其中一个MV来自过去的参考图片,并且另一个MV来自未来的参考图片。在JEM中,当为CU启用LIC、仿射运动、FRUC或子CU Merge候选时,不应用DMVR。
3.使用非对称加权的相关方法的实施例
在现有的实现中,如等式(13)所示,提出了用于帧间编码的广义双向预测(G双向):
P[x]=(1-w)·P0[x+v0]+w·P1[x+vi] 等式(13)
这里,w是权重值,x是当前块的坐标,P0和P1分别是列表0和列表1中的参考图片,并且v0和v1是P0和P1中的运动矢量。G双向模式下的候选权重集包括总共7个权重(W={-1/4,1/4,3/8,1/2,5/8,3/4,5/4}),包括对应于传统的双向预测模式的0.5。指示候选权重集中权重值的条目位置的指数被发信令。每个CU最多有一个指数被发信令,并且对应的权重值在该CU中的所有PU和所有颜色分量中被共享。
为了减少指数的信令开销,每个编码单元(CU)最多分配一个w,在其所有的双向预测单元(PU)中共享。如果CU包含至少一个需要对运动矢量差(MVD)发信令的双向预测PU,则对指数w显式地发信令。否则,不需要对指数发信令。然后,应用以下规则确定CU中每个PU的权重值:
--对于每个需要信令MVD的双向预测PU(即正常预测模式和仿射预测模式),其权重值设置为等于显式发信令的w。
--对于每个使用Merge模式、高级时域运动矢量预测或仿射Merge模式编码的双向预测PU,直接从用于相关联的Merge候选的权重值中推断出其权重值w。
--对于其余的双向预测PU,它们的权重值设置为等于默认的权重值,即0.5。
然而,该方法在AMVP模式下对不同的权值进行复杂的选择,并且与传统方法相比编码时间增加到了300%。此外,信令成本可能高,因为它为AMVP情形显式地对权重指数发信令。
4.非对称加权双向预测Merge的示例方法
图18示出了使用非对称加权双向预测Merge进行视频解码的示例性方法1800的流程图。在一些实现中,方法1800可以包括接收被帧间编码的视频数据的当前块。当前块可以从通过网络连接接收的视频比特流中接收,也可以从本地存储的压缩视频文件中接收。例如,解码过程可以对视频比特流执行解析,以在解析过程中到达与当前块对应的位。
方法1800包括在步骤1810处,确定视频数据的当前视频块是从非对称双向预测Merge候选预测的,其中对第一参考块和第二参考块使用不同的权重。在一些实施例中,Merge候选包括运动矢量和对应的参考图片。在一些实施例中,用于视频解码的非对称加权是基于如下所述的等式(14)中的模型。
方法1800包括在步骤1830处,基于该确定,为当前视频块在启用和禁用编码工具之间做出决定。
在一些实现中,方法1800可能包括从至少Merge候选列表中推导出运动信息。例如,运动信息可以包括运动矢量(和对应的参考帧)。
方法1800包括在步骤1850处,基于Merge候选列表生成当前块。在当前视频块是从非对称双向预测Merge候选预测的情况下,编码工具不应用到当前视频块(例如,禁用编码工具的应用)。
图19示出了使用非对称加权双向预测Merge的视频编码示例性方法的流程图。方法1900包括在步骤1910处,基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选。在一些实施例中,非对称加权包括第一权重和与第一权重不同的第二权重。在一些实施例中,用于视频编码的非对称加权是基于如下所述的等式(14)中的模型。
方法1900包括在步骤1920处,在构建之后将Merge候选插入到Merge候选列表中。
方法1900包括在步骤1930处,从至少Merge候选列表中推导出运动信息。
方法1900包括在步骤1940处,基于运动信息编码被帧间编码的视频数据的当前块。
方法1800和1900可进一步包括第一参考Merge候选和第二参考Merge候选的非对称加权的不同实施例。在一些实施例中,第一参考Merge候选和第二参考Merge候选都可以是双向候选,这样每个候选都可以包括两个运动矢量和对应的运动信息。在其他实施例中,只有第一或第二个参考Merge候选中的一个可以是双向候选。
在一些实施例中,Merge候选基于来自第一参考Merge候选的两个不同运动矢量(和对应运动信息)的非对称加权。在其他实施例中,Merge候选基于来自第二参考Merge候选的两个不同运动矢量的非对称加权。在其他实施例中,Merge候选基于来自第一和第二参考Merge候选的运动矢量的非对称加权。
分别在图18和图19中描述的方法1800和1900可进一步包括使用以下模型进行双向预测:
P[x]=a·P0[x+v0]+b·P1[x+vi] 等式(14)
这里,Pi[x+vi]是参考图片列表i中与位于x处的像素相关联的预测值,并且如果a等于b,则将权重(a,b)定义为对称,否则(a不等于b),则将权重定义为非对称。在一些实施例中,a+b=1。
在一些实施例中,非对称加权双向预测Merge候选可以推导出与现有设计(如HEVC和JEM等)中的Merge候选相同的运动信息,包括预测方向、参考指数、运动矢量(以及权重,如果启用了通用双向预测工具)。然而,与现有的应用对称加权双向预测的Merge候选不同,在Merge候选列表的构建处理中使用非对称加权双向预测(如果未启用GBI),或者通过应用不同的非对称加权考虑更多的Merge候选(如果启用GBI)。
下面的例子说明了使用非对称加权生成双向预测Merge候选的各种实现和运动补偿算法。下文所述的示例可并入上述方法的上下文中,例如方法1800及1900,其可分别在解码器及编码器上实施。
示例1.非对称加权可以应用于一个、部分或所有现有的Merge候选(或未来新设计的Merge候选)。例如,空间Merge候选、时域Merge候选、附加Merge候选、ATMVP、STMVP、PMMVD等可用于生成非对称加权双向预测Merge候选,这些候选将进一步插入Merge列表中。
(a)在一个示例中,可以将非对称加权应用于前N个可用的双向Merge候选,其中N是一个正整数。
(b)在一个示例中,非对称加权只能应用于在当前图片与其两个参考图片之间具有非对称图片顺序计数(POC)(顺序图片)差异的N个双向Merge候选。将AbsPOCDiff(x,y)表示为计算图片x和y之间绝对POC差异的函数,将P0和P1表示为分别来自列表0和列表1的参考图片,并且将Pc表示为当前图片。如果AbsPOCDiff(P0,Pc)不等于AbsPOCDiff(P1,Pc),则将POC差异定义为非对称。
(c)在一个示例中,只能选择某些类型的Merge候选(例如高级时域运动矢量预测或仿射Merge模式)来应用非对称加权。
(d)在一个示例中,可以通过将非对称加权应用于具有对称权重的Merge候选来导出新的Merge候选。如果用现有方法推导的Merge候选已经具有非对称加权,诸如具有从相邻块继承的权重的空间Merge候选,则不会选择此空间Merge候选应用非对称加权。或者,在另一方面,可以通过将不同的非对称加权应用于具有非对称加权的Merge候选来导出新的Merge候选,诸如用现有方法推导出的空间Merge候选或时域Merge候选。
(e)当生成非对称加权双向预测Merge候选时,等式(14)中的权重值w受到如下限制:
(i)当AbsPOCDiff(Pc,P0)<AbsPOCDiff(Pc,P1)时,只能将大于1/2的权重值分配给a。
(ii)当AbsPOCDiff(Pc,P0)>AbsPOCDiff(Pc,P1)时,只能将大于1/2的权重值分配给b。
示例2.可以将一个或一组非对称加权应用于选定的N个双向Merge候选。
(a)在一个示例中,个别的非对称(a,b)被应用于N个Merge候选中的每一个。不同的(a,b)可以被应用于不同的Merge候选。
(b)在一个示例中,几个非对称的(a,b)可以被应用于N个Merge候选中的每一个。一些候选可能共享相同的(a,b)。
(c)在一个示例中,几个非对称的(a,b)可以被应用于前M(M<N)个Merge候选,并且只有一个非对称的(a,b)应用于剩余的N–M个Merge候选。例如,M设置为等于1。
示例3.非对称加权集可以在VPS(视频参数集)、SPS(序列参数集)、PPS(图片参数集)或条带头段中向解码器发信令。或者,非对称加权可以隐式地固定在编码器和解码器中。
(a)在一个示例中,a的非对称加权包括{1/16,2/16,3/16,4/16,5/16,6/16,7/16,9/16,10/16,11/16,12/16,13/16,14/16,15/16}。
(b)在一个示例中,a的非对称重量包括{1/8,2/8,3/8,5/8,6/8,7/8}。
(c)在更一般的情况下,a的非对称加权包括{1/2N,2/2N,….,2N-2/2N,2N-1/2N},其中N是一个正整数,如2、3、4和5。
(d)在一个示例中,a和b的非对称加权也可以为负数。
示例4.将非对称加权双向预测Merge候选插入Merge列表时遵循以下规则:
(a)在一个示例中,相同的规则可以应用于一个条带/片/图片/序列中的所有块。或者,顺序可以从块到块进行调整。
(b)如果非对称加权双向预测Merge候选A是从对称加权双向预测Merge候选B生成的,则在Merge候选列表中的B之后(可能不直接在B之后)插入A。
(c)假设非对称加权双向预测Merge候选A1和A2分别从对称加权双向预测Merge候选B1和B2生成,如果在Merge列表中B1在B2之前,那么在Merge列表中A1也应该A2之前(可能不直接在A2之前),反之亦然。
(d)如果从一个对称加权双向预测Merge候选生成多个具有权重(a1,b1),(a2,b2),…,(aNA,bNA)的非对称加权双向预测Merge候选,则按给定顺序插入,例如按abs(ai–1/2)的升序插入,其中abs(x)计算x的绝对值,并且1<=i<=NA。如果abs(ai–1/2)等于abs(aj–1/2),则它们可以按任意顺序插入。
(e)在一个示例中,刚好在第一个双向预测Merge候选之后插入两个非对称加权双向预测Merge候选,其权重值为(1/4,3/4)和(3/4,1/4)。
(f)在一个示例中,新生成的加权双向预测Merge候选可以添加到用现有方法推导出的某个Merge候选之后,例如刚好在TMVP或ATMVP或STMVP或者联合双向预测Merge候选之后添加。
(g)可以首先构建两个Merge候选列表,一个是使用现有方法,另一个是通过对第一个列表或第一个列表中的部分Merge候选应用非对称加权获得的。在这种情况下,可以为不同的块调用两个候选列表的不同顺序。
示例5.对使用双向预测Merge模式编码的块存储权重值,并且可以由后面编码的块重用。
(a)在一个示例中,空间/时域Merge候选的非对称加权值可以从Merge列表构建过程中对应的空间/时间相邻块的权重值继承。在这种情况下,这些Merge候选本身就是非对称加权的双向预测Merge候选。在一个例子中,这些候选不再用于生成新的非对称加权双向预测Merge候选。只有对称加权才能用于生成非对称加权Merge候选。或者,这些候选也可用于生成新的非对称加权双向预测Merge候选,但具有不同的加权值。
(b)在一个示例中,在Merge列表构建过程中,不继承非对称的权重值。
(c)当启用通用双向预测工具时,上述方法也可适用。
示例6.对于非对称加权双向预测Merge候选,最大Merge列表长度增加L,其中L大于等于0。
(a)如果最多可以将T个非对称加权双向预测Merge候选添加到Merge列表中,则L<=T。
示例7.非对称加权双向预测Merge候选与现有编码工具的融合。
(a)当应用加权预测、局部照明补偿或双向光流时,非对称加权双向预测Merge候选不会插入到Merge候选列表中。在一些实现中,加权预测包括编码工具,它允许编码器在执行运动补偿时指定缩放和偏移的使用,并在特殊情况下(如淡入到黑色、淡入和交叉淡入过渡)提供显著的性能优势。
(b)非对称加权双向预测Merge候选禁用DMVR。
(c)或者,为非对称加权双向预测Merge候选启用DMVR,并且如等式(14)所示生成模板P。
(i)在使用细化的运动信息(在每个参考列表中)进行运动细化和运动补偿后,将对称加权平均应用于最终的双向预测。
(ii)在使用细化的运动信息(在每个参考列表中)进行运动细化和运动补偿后,将非对称加权平均(与非对称加权双向预测Merge候选相同)
应用于最终的双向预测。
示例8.是否以及如何将非对称加权双向预测Merge候选插入Merge候选列表可能取决于当前块的大小和/或形状、和/或编码块信息。
(a)在一个示例中,假设当前块大小为M×N,如果M×N<=T,则非对称加权双向预测Merge候选不会插入到Merge候选列表中;或者,如果M×N>=T,则非对称加权双向预测Merge候选不会插入到Merge候选列表中。T是例如32或64的整数。
(b)或者,它只能在M等于N或M不等于N时适用。
(c)或者,它可以取决于块模式,例如非仿射模式。
(d)或者,它也可能取决于从现有设计中得出的Merge候选的总数(不包括组合的双向预测Merge候选和/或零运动Merge候选)。如果达到了允许的Merge候选的总数,则不需要添加非对称加权的双向预测Merge候选。
示例9.非对称加权双向预测可以应用于所有分量,包括Y,Cb,Cr或R,G,B。或者只适用于一个或一些分量。例如,它仅应用于Y分量。
示例10.如果满足以下一个或多个条件,具有加权值(a1,b1)的非对称加权双向预测Merge候选比具有相同运动信息(关于参考图片R0的MV0,关于参考图片R1的MV1)但不同的加权值(a2,b2)(且a1–b1>a2–b2)的非对称加权双向预测Merge候选具有更高的优先级(或者说,插入到更靠近Merge候选列表前面的Merge候选列表中)。
(a)R0的量化参数(QP)低于R1的QP
(b)R0比R1更接近当前图片
(c)MV0指向的参考块的QP低于MV1指向的参考块的QP
示例11.应当注意的是,所提出的方法也适用于多重假设运动预测。
(a)在一个示例中,对于多个预测块,可以对每个预测块应用不同的权重。
(b)或者,如果是双向预测,则对于每个参考图片列表,可以首先获取两个临时预测块(可以由与一个参考图片列表相关联多个参考块生成),并且可以进一步应用两个权重。
(c)或者,如果是单向预测但是来自两个或两个以上的参考块,也可以应用非对称加权。
示例12.Merge模式下的修剪处理除了考虑运动信息外,还可以考虑权重。
5.公开技术的示例实施
图20是说明可用于实现本公开技术的各个部分的计算机系统或其他控制设备2000的结构的示例的框图,包括(但不限于)方法1800和1900。在图20中,计算机系统2000包括通过互连2025连接的一个或多个处理器2005和存储器2010。互连2025可以表示由适当的桥、适配器或控制器连接的任何一条或多条单独的物理总线、点对点连接或两者。因此,互连2025可以包括例如系统总线、外围组件互连(PCI)总线、超传输或工业标准体系结构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、IIC(I2C)总线或电气与电子工程师协会(IEEE)标准674总线(有时被称为“火线”)。
处理器2005可以包括中央处理器(CPU),来控制例如主机的整体操作。在一些实施例中,处理器2005通过执行存储在存储器2010中的软件或固件来实现这一点。处理器2005可以是或可以包括一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASIC)、可编程逻辑器件(PLD)等,或这些器件的组合。
存储器2010可以是或包括计算机系统的主存储器。存储器2010表示任何适当形式的随机存取存储器(RAM)、只读存储器(ROM)、闪存等,或这些设备的组合。在使用中,存储器2010除其他外可包含一组机器指令,当处理器2005执行该指令时,使处理器2005执行操作以实现本公开技术的实施例。
通过互连2025连接到处理器2005的还有(可选的)网络适配器2015。网络适配器2015为计算机系统提供与远程设备(诸如存储客户机和/或其他存储服务器)通信的能力,并且可以是例如以太网适配器或光纤通道适配器。
图21示出了可以用于实施本公开技术的各个部分的移动设备2100的示例实施例的框图,包括(但不限于)方法1800和1900。移动设备2100可以是笔记本电脑、智能手机、平板电脑、摄像机或其他能够处理视频的设备。移动设备2100包括处理器或控制器2101来处理数据,以及与处理器2101通信的存储器2102来存储和/或缓冲数据。例如,处理器2101可以包括中央处理器(CPU)或微控制器单元(MCU)。在一些实现中,处理器2101可以包括现场可编程门阵列(FPGA)。在一些实现中,移动设备2100包括或与图形处理单元(GPU)、视频处理单元(VPU)和/或无线通信单元通信,以实现智能手机设备的各种视觉和/或通信数据处理功能。例如,存储器2102可以包括并存储处理器可执行代码,当处理器2101执行该代码时,将移动设备2100配置为执行各种操作,例如接收信息、命令和/或数据、处理信息和数据,以及将处理过的信息/数据发送或提供给另一个数据设备,诸如执行器或外部显示器。
为了支持移动设备2100的各种功能,存储器2102可以存储信息和数据,诸如指令、软件、值、图像以及处理器2101处理或引用的其他数据。例如,可以使用各种类型的随机存取存储器(RAM)设备、只读存储器(ROM)设备、闪存设备和其他合适的存储介质来实现存储器2102的存储功能。在一些实现中,移动设备2100包括输入/输出(I/O)单元2103,来将处理器2101和/或内存2102与其他模块、单元或设备进行接口。例如,I/O单元2103可以与处理器2101和内存2102进行接口,以利用与典型数据通信标准兼容的各种无线接口,例如,在云中的一台或多台计算机和用户设备之间。在一些实现中,移动设备2100可以通过I/O单元2103使用有线连接与其他设备进行接口。移动设备2100还可以与其他外部接口(例如数据存储器)和/或可视或音频显示设备2104连接,以检索和传输可由处理器处理、由存储器存储或由显示设备2104或外部设备的输出单元上显示的数据和信息。例如,显示设备2104可以根据所公开的技术显示包含块(CU、PU或TU)的视频帧,其中该块基于是否使用运动补偿算法编码该块来应用块内复制。
在一些实施例中,视频解码器装置可以实现视频解码的方法,其中使用本文所述的非对称加权双向预测Merge进行视频解码。该方法可类似于上述方法1800。
在一些实施例中,视频解码的解码器侧方法可以使用非对称加权双向预测Merge并通过下述方法来提高视频质量:接收被帧间编码的视频数据的当前块;基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中非对称加权包括第一权重和与第一权重不同的第二权重;在上述构建之后将Merge候选插入到Merge候选列表中;从至少Merge候选列表导出运动信息;并且基于运动信息、运动矢量和对应的参考图片解码当前块。
在一些实施例中,视频解码方法可以使用如关于图20和图21所述的在硬件平台上实现的解码装置来实现。在一些实施例中,视频解码操作可以由视频编码器在编码过程中执行,在编码过程中,视频编码器如解码器一样确定重构的视频图像。
从上述来看,应当理解的是,为了便于说明,本发明公开的技术的具体实施例已经在本文中进行了描述,但是可以在不偏离本发明范围的情况下进行各种修改。因此,除了的之外,本发明公开的技术不限于权利要求的限定。
本专利文件中描述的主题的实现和功能操作可以在各种系统、数字电子电路、或计算机软件、固件或硬件中实现,包括本说明书中所公开的结构及其结构等效体,或其中一个或多个的组合。本说明说中描述的主题的实现可以实现为一个或多个计算机程序产品,即一个或多个编码在有形的且非易失的计算机可读介质上的计算机程序指令的模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或其中多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机组。除硬件外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或其中一个或多个的组合。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于该程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台或多台计算机上来执行,这些计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。
本说明书中描述的处理和逻辑流可以通过一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或通过操作耦合到一个或多个大容量存储设备来从其接收数据或将数据传输到一个或多个大容量存储设备,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。
意图在于本说明书和附图仅被视为示例性的,其中示例性意味着示例。如本文所用,“或”旨在包括“和/或”,除非上下文另有明确说明。
虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种功能也可以在多个实施例中单独实施,或在任何合适的子组合中实施。此外,尽管上述特征可以描述为在某些组合中起作用,甚至最初要求是这样,但在某些情况下,可以从组合中移除权利要求组合中的一个或多个特征,并且权利要求的组合可以指向子组合或子组合的变体。
同样,尽管图纸中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或顺序执行此类操作,或执行所有说明的操作。此外,本专利文件所述实施例中各种系统组件的分离不应理解为在所有实施例中都需要这样的分离。
仅描述了一些实现和示例,其他实现、增强和变体可以基于本专利文件中描述和说明的内容做出。
Claims (21)
1.一种视频数据解码方法,包括:
确定所述视频数据的当前视频块是从非对称双向预测Merge候选预测的,其中不同的权重被用于第一参考块和第二参考块;以及
基于所述确定,为所述当前视频块在启用和禁用编码工具之间做出决定,
其中,在所述当前视频块是从非对称双向预测Merge候选预测的情况下,所述编码工具不应用到所述当前视频块。
2.一种视频数据编码方法,包括:
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重;
在所述构建后,将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表中导出运动信息;以及
基于所述运动信息,编码帧间编码的所述视频数据的当前视频块,
其中,在所述当前视频块是从非对称双向预测Merge候选预测的情况下,编码工具不应用到所述当前视频块。
3.根据权利要求1或2所述的方法,其中,所述编码工具包括加权预测、局部照明补偿(LIC)和双向光流中的至少一种。
4.根据权利要求1或2所述的方法,其中,所述编码工具包括解码器侧运动矢量细化(DMVR)。
5.根据权利要求4所述的方法,其中,所述DMVR包括:
在所述当前视频块上执行运动细化和运动补偿;并且
随后基于对称加权,执行所述DMVR方法的最终双向预测步骤。
6.根据权利要求5所述的方法,其中,所述对称加权包括:
将对称加权平均应用于所述DMVR的所述最终双向预测步骤。
7.根据权利要求4所述的方法,其中,所述DMVR包括:
在所述当前视频块上执行运动细化和运动补偿;并且
随后基于非对称加权执行所述DMVR方法的最终双向预测步骤。
8.根据权利要求7所述的方法,其中,所述非对称加权包括:
将非对称加权平均应用于所述DMVR的所述最终双向预测步骤。
9.一种视频数据解码方法,包括:
接收帧间编码的所述视频数据的当前块;
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重,并且其中所述Merge候选包括运动矢量和对应的参考图片;
为所述视频数据的所述解码确定帧间预测方法;
在确定所述帧间预测方法不包括加权预测(WP)、局部照明补偿(LIC)、或双向光流(BIO)时,将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出运动信息;以及
基于所述运动信息、所述运动矢量和所述对应的参考图片,解码所述当前块。
10.一种视频数据编码方法,包括:
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重;
为所述视频数据的所述编码确定帧间预测方法;
在确定所述帧间预测方法不包括加权预测(WP)、局部照明补偿(LIC)、或双向光流(BIO)时,将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出运动信息;以及
基于所述运动信息编码帧间编码的所述视频数据的当前块。
11.根据权利要求9或10所述的方法,还包括基于所述非对称加权为所述Merge候选禁用解码器侧运动矢量细化(DMVR)。
12.一种视频数据解码方法,包括:
接收帧间编码的所述视频数据的当前块;
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重,并且其中所述Merge候选包括颜色分量;
将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出颜色信息;以及
基于所述颜色信息解码所述当前块。
13.一种视频数据编码方法,包括:
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重,并且其中所述Merge候选包括颜色分量;
将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出颜色信息;以及
基于所述颜色信息编码帧间编码的所述视频数据的当前块。
14.根据权利要求12或13所述的方法,其中所述颜色分量在包括或不包括其它颜色分量的情况下,包括Y、Cb、Cr或R、G、B。
15.一种视频数据解码方法,包括:
接收被帧间编码的所述视频数据的当前块;
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重;
将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出多个预测块;以及
基于所述多个预测块解码所述当前块,
其中应用于所述多个预测块中的一个的所述第一权重和所述第二权重不同于应用于所述多个预测块中的另一个的所述第一权重和所述第二权重。
16.一种视频数据编码方法,包括:
基于第一参考Merge候选和第二参考Merge候选的非对称加权构建Merge候选,其中所述非对称加权包括第一权重和与所述第一权重不同的第二权重;
将所述Merge候选插入到Merge候选列表中;
从至少所述Merge候选列表导出多个预测块;以及
编码帧间编码的所述视频数据的当前块,
其中应用于所述多个预测块中的一个的所述第一权重和所述第二权重不同于应用于所述多个预测块中的另一个的所述第一权重和所述第二权重。
17.根据权利要求15或16所述的方法,其中,所述多个预测块是基于双向预测方法导出的。
18.根据权利要求17所述的方法,其中,所述双向预测方法被配置为使用参考图片列表,并且其中从与所述参考图片列表中的一个相关联的多个参考块为每个参考图片列表生成两个临时预测块。
19.根据权利要求15或16所述的方法,其中,所述多个预测块是基于单向预测方法导出的。
20.一种视频系统中的设备,包括处理器和其上具有指令的非暂时性存储器,其中所述处理器执行所述指令时,使所述处理器实现权利要求1至19中任一项所述的方法。
21.一种存储在非暂时性计算机可读介质上的计算机程序产品,所述计算机程序产品包括用于实现权利要求1至19中任一项所述的方法的程序代码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018089919 | 2018-06-05 | ||
CNPCT/CN2018/089919 | 2018-06-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110572666A true CN110572666A (zh) | 2019-12-13 |
CN110572666B CN110572666B (zh) | 2021-11-02 |
Family
ID=67003570
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910487915.2A Active CN110572645B (zh) | 2018-06-05 | 2019-06-05 | 非对称加权双向预测Merge |
CN201910487922.2A Active CN110572666B (zh) | 2018-06-05 | 2019-06-05 | 非对称加权Merge和其它编码工具的交互方法、装置及存储介质 |
CN202211013640.7A Pending CN115334301A (zh) | 2018-06-05 | 2019-06-05 | 非对称加权双向预测Merge |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910487915.2A Active CN110572645B (zh) | 2018-06-05 | 2019-06-05 | 非对称加权双向预测Merge |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211013640.7A Pending CN115334301A (zh) | 2018-06-05 | 2019-06-05 | 非对称加权双向预测Merge |
Country Status (5)
Country | Link |
---|---|
US (3) | US11039165B2 (zh) |
CN (3) | CN110572645B (zh) |
GB (1) | GB2588546B (zh) |
TW (2) | TWI736903B (zh) |
WO (2) | WO2019234578A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115699744A (zh) * | 2020-08-03 | 2023-02-03 | 阿里巴巴集团控股有限公司 | 双向预测校正系统和方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019234578A1 (en) | 2018-06-05 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Asymmetric weighted bi-predictive merges |
WO2019238008A1 (en) | 2018-06-11 | 2019-12-19 | Mediatek Inc. | Method and apparatus of bi-directional optical flow for video coding |
MX2021001833A (es) * | 2018-08-17 | 2021-05-12 | Hfi Innovation Inc | Metodos y aparatos de procesamiento de video con prediccion bidireccional en sistemas de codificacion de video. |
KR102653856B1 (ko) * | 2018-09-13 | 2024-04-01 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 비디오 코딩에서 조건적 디코더측 모션 벡터 정제를 위한 장치 및 방법 |
TW202029755A (zh) * | 2018-09-26 | 2020-08-01 | 美商Vid衡器股份有限公司 | 視訊編碼雙預測 |
WO2020075053A1 (en) | 2018-10-08 | 2020-04-16 | Beijing Bytedance Network Technology Co., Ltd. | Generation and usage of combined affine merge candidate |
WO2020156538A1 (en) | 2019-02-03 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between mv precisions and mv difference coding |
CN113424538A (zh) | 2019-02-14 | 2021-09-21 | 北京字节跳动网络技术有限公司 | 解码器侧细化工具的选择性应用 |
MX2021010830A (es) * | 2019-03-11 | 2021-12-15 | Vid Scale Inc | Codificación de vectores de movimiento en modo de fusión simétrica. |
JP7391109B2 (ja) | 2019-05-11 | 2023-12-04 | 北京字節跳動網絡技術有限公司 | ビデオ処理におけるコーディングツールの選択的使用 |
CN114073090A (zh) * | 2019-07-01 | 2022-02-18 | 交互数字Vc控股法国公司 | 仿射运动补偿的双向光流细化 |
WO2021018031A1 (en) | 2019-07-27 | 2021-02-04 | Beijing Bytedance Network Technology Co., Ltd. | Restrictions of usage of tools according to reference picture types |
EP4011077A4 (en) | 2019-09-13 | 2022-11-30 | Beijing Bytedance Network Technology Co., Ltd. | SAMPLE WEIGHTED BIDIRECTIONAL PREDICTION IN VIDEO CODING |
JP7328445B2 (ja) | 2019-09-19 | 2023-08-16 | 北京字節跳動網絡技術有限公司 | ビデオコーディングにおける参照サンプル位置の導出 |
JP7391199B2 (ja) | 2019-10-05 | 2023-12-04 | 北京字節跳動網絡技術有限公司 | 映像コーディングツールのレベルベースシグナリング |
KR20220074870A (ko) | 2019-10-12 | 2022-06-03 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩에서의 예측 유형 시그널링 |
EP4029245A4 (en) | 2019-10-12 | 2022-11-23 | Beijing Bytedance Network Technology Co., Ltd. | HIGH LEVEL SYNTAX FOR VIDEO CODING TOOLS |
EP4029274A4 (en) * | 2019-10-13 | 2022-11-30 | Beijing Bytedance Network Technology Co., Ltd. | INTERACTION BETWEEN REFERENCE IMAGE RESAMPLING AND VIDEO CODING TOOLS |
BR112022012807A2 (pt) | 2019-12-27 | 2022-09-27 | Beijing Bytedance Network Tech Co Ltd | Método de processamento de vídeo, aparelho para processar dados de vídeo e meios não transitórios legíveis por computador |
CN111263151B (zh) * | 2020-04-26 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、电子设备和计算机可读存储介质 |
US12113987B2 (en) * | 2020-12-22 | 2024-10-08 | Qualcomm Incorporated | Multi-pass decoder-side motion vector refinement |
JP2024537651A (ja) * | 2021-09-24 | 2024-10-16 | インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ | 双予測重み付けを用いたdmvrのための方法及び装置 |
CN118435596A (zh) * | 2021-12-21 | 2024-08-02 | 字节跳动有限公司 | 视频处理方法、装置及介质 |
WO2024000581A1 (zh) * | 2022-07-01 | 2024-01-04 | Oppo广东移动通信有限公司 | 排序方法、解码方法、编码方法、装置、解码器和编码器 |
WO2024010635A1 (en) * | 2022-07-05 | 2024-01-11 | Innopeak Technology, Inc. | System and method for multiple-hypothesis prediction for video coding |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610413A (zh) * | 2009-07-29 | 2009-12-23 | 清华大学 | 一种视频的编码/解码方法及装置 |
CN102364948A (zh) * | 2011-10-28 | 2012-02-29 | 上海国茂数字技术有限公司 | 视频编码合并模式双向补偿方法 |
US20140169472A1 (en) * | 2012-12-19 | 2014-06-19 | Mikhail Fludkov | Motion estimation engine for video encoding |
WO2015056620A1 (ja) * | 2013-10-15 | 2015-04-23 | シャープ株式会社 | 画像復号装置、画像符号化装置 |
CN104702955A (zh) * | 2013-12-05 | 2015-06-10 | 财团法人工业技术研究院 | 屏幕视频的预测编码的方法与系统 |
WO2018012886A1 (ko) * | 2016-07-12 | 2018-01-18 | 한국전자통신연구원 | 영상 부호화/복호화 방법 및 이를 위한 기록 매체 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130050407A (ko) * | 2011-11-07 | 2013-05-16 | 오수미 | 인터 모드에서의 움직임 정보 생성 방법 |
US10244253B2 (en) | 2013-09-13 | 2019-03-26 | Qualcomm Incorporated | Video coding techniques using asymmetric motion partitioning |
WO2015062002A1 (en) | 2013-10-31 | 2015-05-07 | Mediatek Singapore Pte. Ltd. | Methods for sub-pu level prediction |
US10327001B2 (en) * | 2014-06-19 | 2019-06-18 | Qualcomm Incorporated | Systems and methods for intra-block copy |
CN107113424B (zh) * | 2014-11-18 | 2019-11-22 | 联发科技股份有限公司 | 以帧间预测模式编码的块的视频编码和解码方法 |
EP3383040A4 (en) * | 2016-01-11 | 2018-10-17 | Samsung Electronics Co., Ltd. | Image encoding method and apparatus, and image decoding method and apparatus |
US10284845B2 (en) * | 2016-05-25 | 2019-05-07 | Arris Enterprises Llc | JVET quadtree plus binary tree (QTBT) structure with multiple asymmetrical partitioning |
US11277609B2 (en) | 2017-12-29 | 2022-03-15 | Sharp Kabushiki Kaisha | Systems and methods for partitioning video blocks for video coding |
WO2019234578A1 (en) | 2018-06-05 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Asymmetric weighted bi-predictive merges |
-
2019
- 2019-06-03 WO PCT/IB2019/054569 patent/WO2019234578A1/en active Application Filing
- 2019-06-04 GB GB2018866.0A patent/GB2588546B/en active Active
- 2019-06-04 WO PCT/IB2019/054603 patent/WO2019234599A1/en active Application Filing
- 2019-06-05 CN CN201910487915.2A patent/CN110572645B/zh active Active
- 2019-06-05 TW TW108119615A patent/TWI736903B/zh active
- 2019-06-05 CN CN201910487922.2A patent/CN110572666B/zh active Active
- 2019-06-05 TW TW108119600A patent/TWI739113B/zh active
- 2019-06-05 CN CN202211013640.7A patent/CN115334301A/zh active Pending
-
2020
- 2020-08-07 US US16/987,787 patent/US11039165B2/en active Active
-
2021
- 2021-04-01 US US17/220,127 patent/US11706441B2/en active Active
-
2023
- 2023-07-14 US US18/352,628 patent/US20240007664A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610413A (zh) * | 2009-07-29 | 2009-12-23 | 清华大学 | 一种视频的编码/解码方法及装置 |
CN102364948A (zh) * | 2011-10-28 | 2012-02-29 | 上海国茂数字技术有限公司 | 视频编码合并模式双向补偿方法 |
US20140169472A1 (en) * | 2012-12-19 | 2014-06-19 | Mikhail Fludkov | Motion estimation engine for video encoding |
WO2015056620A1 (ja) * | 2013-10-15 | 2015-04-23 | シャープ株式会社 | 画像復号装置、画像符号化装置 |
CN104702955A (zh) * | 2013-12-05 | 2015-06-10 | 财团法人工业技术研究院 | 屏幕视频的预测编码的方法与系统 |
WO2018012886A1 (ko) * | 2016-07-12 | 2018-01-18 | 한국전자통신연구원 | 영상 부호화/복호화 방법 및 이를 위한 기록 매체 |
Non-Patent Citations (2)
Title |
---|
X.CHEN, J.AN, J.ZHENG: "DMVR Extension Based on Template Matching", 《JVET-J0057》 * |
XU CHEN, JICHENG AN, JIANHUA ZHENG: "Decoder-Side Motion Vector Refinement Based on Bilateral Template Matching", 《JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 4TH MEETING: CHENGDU, CN, 15–21 OCTOBER 2016》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115699744A (zh) * | 2020-08-03 | 2023-02-03 | 阿里巴巴集团控股有限公司 | 双向预测校正系统和方法 |
CN115699744B (zh) * | 2020-08-03 | 2024-03-26 | 阿里巴巴达摩院(杭州)科技有限公司 | 双向预测校正系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US11039165B2 (en) | 2021-06-15 |
US20210218985A1 (en) | 2021-07-15 |
TWI739113B (zh) | 2021-09-11 |
CN110572645A (zh) | 2019-12-13 |
TW202019185A (zh) | 2020-05-16 |
WO2019234578A1 (en) | 2019-12-12 |
US11706441B2 (en) | 2023-07-18 |
CN115334301A (zh) | 2022-11-11 |
CN110572645B (zh) | 2022-09-02 |
GB2588546A (en) | 2021-04-28 |
TW202013958A (zh) | 2020-04-01 |
US20240007664A1 (en) | 2024-01-04 |
GB202018866D0 (en) | 2021-01-13 |
WO2019234599A1 (en) | 2019-12-12 |
GB2588546B (en) | 2022-12-28 |
US20200366928A1 (en) | 2020-11-19 |
TWI736903B (zh) | 2021-08-21 |
CN110572666B (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110572666B (zh) | 非对称加权Merge和其它编码工具的交互方法、装置及存储介质 | |
CN111083489B (zh) | 多次迭代运动矢量细化 | |
CN113056914B (zh) | 基于部分位置的差计算 | |
CN110809156B (zh) | 不同解码器侧运动矢量推导模式之间的交互 | |
CN111083484B (zh) | 基于子块的预测 | |
CN110933420A (zh) | 仿射模式中自适应运动矢量分辨率的快速算法 | |
CN110891179B (zh) | 计算运动矢量预测值 | |
CN111010569A (zh) | Bio中的时间梯度计算的改善 | |
CN110740332B (zh) | 基于更新的运动矢量的运动预测 | |
CN113383548A (zh) | Mv精度和mv差编解码之间的相互作用 | |
CN110662076B (zh) | 子块的边界增强 | |
CN111010580B (zh) | 基于运动信息的尺寸限制 | |
CN110809164A (zh) | Bio中的mv精度 | |
CN110876063B (zh) | 交织预测的快速编码方法 | |
CN110881124A (zh) | 两步帧间预测 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |