CN111083490B - 一种视频解码中运动补偿的方法及装置 - Google Patents

一种视频解码中运动补偿的方法及装置 Download PDF

Info

Publication number
CN111083490B
CN111083490B CN201911425007.7A CN201911425007A CN111083490B CN 111083490 B CN111083490 B CN 111083490B CN 201911425007 A CN201911425007 A CN 201911425007A CN 111083490 B CN111083490 B CN 111083490B
Authority
CN
China
Prior art keywords
motion vector
unidirectional
prediction
partition
index value
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.)
Active
Application number
CN201911425007.7A
Other languages
English (en)
Other versions
CN111083490A (zh
Inventor
王祥林
陈漪纹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of CN111083490A publication Critical patent/CN111083490A/zh
Application granted granted Critical
Publication of CN111083490B publication Critical patent/CN111083490B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开提供一种视频解码中运动补偿的方法及装置,包括:获取当前视频图像帧,确定视频图像帧中的编码单元CU;确定采用三角预测模式预测运动矢量时,从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照分割方向进行三角形预测分区分割;确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值;利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量,得到运动补偿预估值。利用第一、二信令通知解码端分区划分方式以及单向预测运动矢量,减少了合并索引表的编码端的内存占用,提高了编码效率,能更高效地实现编码。

Description

一种视频解码中运动补偿的方法及装置
本申请要求在2019年01月03日提交中国专利局、申请号为62/787,738、申请名称为“Triangle Prediction Syntax Coding for Video”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及视频编解码技术领域,特别涉及一种视频解码中运动补偿的方法及装置。
背景技术
在对视频数据进行处理时可以使用各种视频编码技术来压缩视频数据。视频编码是根据一个或多个视频编码标准来执行的。例如,视频编码标准包括多功能视频编码(Versatile Video Coding,VVC)、联合勘探测试模型(JEM)、高效率视频编码(HEVC)、高级视频编码(AVC)、运动图像专家组(MPEG)编码等。视频编码通常利用视频图像或视频序列中存在冗余的预测方法,例如,帧间预测、帧内预测等。视频编码技术的一个重要目标是将视频数据压缩为使用较低比特率的形式,同时避免或最小化对视频质量的下降。
JVET会议定义的VVC编码方法中,图像划分结构将输入视频划分为称为编码树单元(CTU)的块。使用具有嵌套多类型树结构的四叉树将一个CTU划分成多个编码单元(CU),CU可以具有正方形或矩形的形状,该编码单元具有定义共享相同预测模式的区域的叶子编码单元。
在VVC中,对于基于上述结构分区的每个CU,以整个CU或者以对CU划分的子块来执行块内容的预测。这种预测的操作单元称为预测单元(PU)。对于帧内预测或帧间预测,PU的尺寸可以等于或小于CU的尺寸。换句话说,存在CU可以被分割成多个PU以进行运行矢量预测的情况。
小于CU尺寸的PU尺寸的一些示例包括仿射预测模式(affine prediction mode)、ATMVP预测模式和三角预测模式等。
在三角预测模式下,CU可以被分割成两个三角形状预测单元,为每个PU推导出运动矢量,并相应地执行运动补偿。CU中的每个三角预测单元是使用其自身的单向预测运动矢量(uni-prediction motion vector)和参考帧的单向预测运动矢量来进行帧间预测得到PU的运动矢量。
对于每个CU,编码器端和解码器端基于相同的方式推导出单向预测候选列表,单向预测运动矢量候选列表由五个单向预测运动矢量候选组成。该单向预测运动矢量候选列表是从七个邻近块推导出的,该七个邻近块包括五个空域邻近块和两个时域同位块。编码器端和解码器端推导出相同的单向预测候选列表,编码器端确定三角预测分区的方向,即是从左上角到右下角分区,还是从右上角到左下角分区,并从列表中选择一个单向预测运动矢量作为参考帧的单向预测运动矢量,利用分区自身的单向预测运动矢量及参考帧的单向预测运动矢量进行帧间预测得到PU的运动矢量。
编码器端需要将上述确定的三角预测分区的方向及选择的参考帧的单向预测运动矢量的索引值指示给解码器端,在目前的VVC,编码器端和解码器端基于三角预测合并索引列表,通过索引值实现上述指示。三角预测合并索引列表大小为40乘3的数组,以二维数据的形式存储在列表,该二维数据具有40行3列,第一列指示了三角分区方向,并且第二列和第三列指示了用于CU的两个三角预测单元中的每一者的参考帧的运动矢量候选的索引值。
目前编码器和解码器端均需要存储上述三角预测合并索引列表,列表的大小影响内存的占用情况,内存占用率会影响编解码效率,为了更高效地实现编解码,需要减少上述列表对内存占用。
发明内容
本公开提供一种视频解码中运动补偿的方法及装置,用于解决编解码端的合并索引表在内存中占用过高,以至于影响编解码效率的问题。
本公开第一方面提供一种视频解码中运动补偿的方法,包括:
获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
可选地,从编码端接收第二信令之前,还包括:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
其中,根据所述映射关系,确定第二信令中的合并索引值对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
可选地,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值对应的单向预测运动矢量组合;
根据从编码端接收的第三信令中的映射标志位,确定对该单向预测运动矢量组合进行反序;
若是反序映射标志,对该单向预测运动矢量组合内的单向预测运动矢量反序,得到各三角形分区参考的单向预测运动矢量,否则根据该单向预测运动矢量组合得到各三角形分区参考的单向预测运动矢量。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
可选地,从编码端接收第二信令之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
可选地,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,还包括:
从编码端接收第二信令,对所述第二信令中的信息进行CABAC旁路二进制解码得到码字,或者对所述第二信令中的信息中第一个比特位进行CABAC上下文二进制解码,对其他比特位进行CABAC旁路二进制解码得到码字;
根据不同的码字与合并索引值的映射关系,确定所述解码得到的码字所对应的合并索引值。
可选地,还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布解码对不同的码字进行解码得到对应的合并索引值。
可选地,还包括:
从编码端接收第一信令,对所述第一信令中的信息进行CABAC旁路二进制解码得到方向标志;
根据不同的方向标志与三角形预测分区方向的映射关系,确定所述解码得到的方向标志所对应的三角形预测分区方向。
可选地,还包括:
从编码端接收第三信令,对所述第三信令中的信息进行CABAC旁路二进制解码得到映射标志;
根据不同的映射标志与是否对单向预测运动矢量组合进行反序的映射关系,确定所述解码得到的映射标志所对应的是否对单向预测运动矢量组合进行反序的结果。
本公开第二方面提供一种视频编码中运动补偿的方法,包括:
获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
确定CU的单向预测运动矢量候选列表,从所述单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
可选地,将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端之前,还包括:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
根据所述映射关系,确定所述各三角形分区参考的单向预测运动矢量组合对应的合并索引值。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
可选地,将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端,包括:
确定所述各三角形分区参考的单向预测运动矢量组合,根据该组合所在的组合对及所述映射关系确定对应的合并索引值,并将所述合并索引值携带在第二信令指示给解码端;
将指示解码端是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序的映射标志位,携带在第三信令指示给解码端。
可选地,确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
可选地,将所述合并索引值,携带在第二信令指示给解码端之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
可选地,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,还包括:
根据不同的码字与合并索引值的映射关系,确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字;
对确定的码字进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,或者对确定的码字中第一个比特位进行CABAC上下文二进制编码,对其他比特位进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端。
可选地,还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的合并索引值进行编码得到对应的码字。
可选地,将三角形预测分区方向标志,携带在第一信令指示给解码端,包括:
对所述三角形预测分区方向标志进行CABAC旁路二进制编码,将编码后的信息携带在第一信令指示给解码端。
可选地,将映射标志位携带在第三信令指示给解码端,包括:
将所述映射标志位进行CABAC旁路二进制编码,将编码后的信息携带在第三信令指示给解码端。
本公开第三方面提供一种视频解码中运动补偿的装置,该装置包括如下模块:
编码单元确定模块,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
三角形预测分区分割方向确定模块,用于确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
单向预测运动矢量确定模块,用于确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
运动补偿模块,用于利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
单向预测运动矢量确定模块,还用于:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
其中,根据所述映射关系,确定第二信令中的合并索引值对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
单向预测运动矢量确定模块,用于确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
单向预测运动矢量确定模块,用于确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
单向预测运动矢量确定模块,用于根据所述映射关系,确定编码端接收的第二信令中的合并索引值对应的单向预测运动矢量组合;
根据从编码端接收的第三信令中的映射标志位,确定对该单向预测运动矢量组合进行反序;
若是反序映射标志,对该单向预测运动矢量组合内的单向预测运动矢量反序,得到各三角形分区参考的单向预测运动矢量,否则根据该单向预测运动矢量组合得到各三角形分区参考的单向预测运动矢量。
单向预测运动矢量确定模块,还用于:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
单向预测运动矢量确定模块,还用于:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
单向预测运动矢量确定模块,用于根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
单向预测运动矢量确定模块,还用于:
从编码端接收第二信令,对所述第二信令中的信息进行CABAC旁路二进制解码得到码字,或者对所述第二信令中的信息中第一个比特位进行CABAC上下文二进制解码,对其他比特位进行CABAC旁路二进制解码得到码字;
根据不同的码字与合并索引值的映射关系,确定所述解码得到的码字所对应的合并索引值。
单向预测运动矢量确定模块,还用于:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布解码对不同的码字进行解码得到对应的合并索引值。
三角形预测分区分割方向确定模块,还用于:
从编码端接收第一信令,对所述第一信令中的信息进行CABAC旁路二进制解码得到方向标志;
根据不同的方向标志与三角形预测分区方向的映射关系,确定所述解码得到的方向标志所对应的三角形预测分区方向。
单向预测运动矢量确定模块,从编码端接收第三信令,对所述第三信令中的信息进行CABAC旁路二进制解码得到映射标志;
根据不同的映射标志与是否对单向预测运动矢量组合进行反序的映射关系,确定所述解码得到的映射标志所对应的是否对单向预测运动矢量组合进行反序的结果。
本公开第四方面提供一种视频编码中运动补偿的装置,该装置包括如下模块:
编码单元确定模块,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
第一信令确定模块,用于确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
第二信令确定模块,用于确定CU的单向预测运动矢量候选列表,从所述单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
运动补偿模块,用于利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
第二信令确定模块,还用于:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
根据所述映射关系,确定所述各三角形分区参考的单向预测运动矢量组合对应的合并索引值。
第二信令确定模块,用于确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
第二信令确定模块,用于确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
第二信令确定模块,用于确定所述各三角形分区参考的单向预测运动矢量组合,根据该组合所在的组合对及所述映射关系确定对应的合并索引值,并将所述合并索引值携带在第二信令指示给解码端;
将指示解码端是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序的映射标志位,携带在第三信令指示给解码端。
第二信令确定模块,还用于将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
第二信令确定模块,还用于获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
第二信令确定模块,用于根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
第二信令确定模块,还用于根据不同的码字与合并索引值的映射关系,确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字;
对确定的码字进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,或者对确定的码字中第一个比特位进行CABAC上下文二进制编码,对其他比特位进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端。
第二信令确定模块,还用于根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的合并索引值进行编码得到对应的码字。
第一信令确定模块,用于对所述三角形预测分区方向标志进行CABAC旁路二进制编码,将编码后的信息携带在第一信令指示给解码端。
第二信令确定模块,用于将所述映射标志位进行CABAC旁路二进制编码,将编码后的信息携带在第三信令指示给解码端。
本公开第五方面提供一种视频解码中运动补偿的方法的设备,包括:存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器中的程序,实现本公开第一方面提供的方法。
本公开第六方面提供一种视频编码中运动补偿的方法的设备,包括:存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器中的程序,实现本公开第二方面提供的方法。
本公开第七方面提供一种计算机程序介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面提供的方法,或者实现本公开第二方面提供的方法。
利用本公开提供的一种视频解码中运动补偿的方法及装置,可以解决目前编码器和解码器端三角预测合并索引表占用内存过大的问题,通过减小合并索引表占用,提高编解码效率,从而能高效地实现编码。
附图说明
图1为本发明实施例提供的一种视频编码中运动补偿的方法流程图;
图2a为左上-右下划分CU的三角预测分区划分示意图;
图2b为右上-左下划分CU的三角预测分区划分示意图;
图3为本发明实施例提供的一种视频解码中运动补偿的方法流程图;
图4为一种视频解码中运动补偿的装置的模块示意图;
图5为一种视频编码中运动补偿的装置的模块示意图;
图6为一种视频解码中运动补偿的设备示意图;
图7为一种视频编码中运动补偿的设备示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
为了方便理解,下面对本发明实施例中涉及的名词进行解释:
1)MCP(Motion Compensation Prediction,运动补偿预测):是对视频图像进行压缩时所使用的一种帧间编码技术;一个视频序列包含一定数量的图片,通常称为帧(frame),运动补偿是一种描述在编码关系上的相邻帧的差别的方法,具体来说是描述前面一帧的每个子块怎样移动到当前帧中的某个位置去;相邻的帧通常很相似,也就是说,包含了很多冗余,因此运动补偿方法被视频压缩或视频编解码器用来减少视频序列中的空域冗余,也可以用来进行去交织以及运动插值的操作;
2)CABAC编码(Context-adaptive Binary Arithmetic Coding,上下文自适应二进制算术编码):是高效率视频编码、VVC等编码标准中使用的熵编码的形式;CABAC基于算术编码进行了一些创新和更改以适应视频编码标准的需求,具有针对不同上下文的多种概率模式,CABAC首先将所有非二进制符号转换为二进制,然后对于每个二进制(也称为比特)选择要使用的概率模型,并优化概率估计,最后利用算术编码来压缩数据;
3)VVC多功能视频编码(Versatile Video Coding,VCC)在第10界JVET会议(2018年4月10日至20日,美国圣地亚哥)上确定了VVC测试模型1(VTM1)编码方法的初稿。决定包括使用二叉和三叉划分编码块结构的嵌套多类型树的四叉树作为VVC的初始新编码特征。还开发了用于实现VTM编码方法(和草案VVC解码过程)的参考软件VTM。
实施例1
本发明实施例提供一种视频编码中运动补偿的方法,其中,视频编码中运动补偿的方法应用于编码端,视频解码中运动补偿的方法应用于解码端,该方法应用于编码端,如图1所示,包括:
步骤101,获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
编码端获取当前视频图像帧后,将当前视频图像帧分为称为编码树单元CTU,使用具有嵌套多类型树结构的四叉树将一个编码树单元CTU划分成编码块CU。
在本申请实施例中,术语“单元(unit)”定义了覆盖所有分量的图像的区域,具体例如亮度分量或色度分量等。
步骤102,确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
编码端在确定CU后,确定采用帧间预测模式进行运动矢量预测时,可以选择包括帧间(inter)、跳跃(skip)和合并(merge)的三种预测模式之一,其中在选择跳跃模式和合并模式可以根据现有过程确定是否采用三角预测模式确定PU的运动矢量。并将确定的结果通过三角预测标志信号指示给解码端,解码端根据接收的三角预测标志信号确定是否采用三角预测模式进行解码,当给定CU的三角预测标志信号中三角预测标志的值为1,则表示使用三角预测模式对相应的CU进行解码,否则,使用除三角预测模式以外的预测模式解码。
具体的确定是否三角预测模式的过程为现有过程,这里不再详述。
当编码端确定对CU采用三角预测模式预测运动矢量时,将CU划分为至少一个三角形预测分区,作为一种可选的实施方式,在对角线方向或逆对角线方向将CU划分成两个三角预测单元,如图2a所示,为左上-右下划分CU的三角预测分区划分示意图,如图2b所示,为右上-左下划分CU的三角预测分区划分示意图,尽管在图中CU被示为正方形块,但是三角预测模式也被应用于非正方形(即矩形)形状的CU。
作为一种可选的实施方式,两种CU划分方式分别对应两个三角形预测分区方向标志为一个二进制码字,通过码字的两个不同取值指示两个三角形预测分区方向,例如左上-右下划分CU对应正方向标志对应码字0,将正方向标志对应的码字0进行CABAC旁路二进制编码,将编码后的信息通过第一信令指示给解码端;右上-左下划分CU对应反方向标志对应码字1,将反方向标志对应的码字1进行CABAC旁路二进制编码,将编码后的信息通过第一信令指示给解码端。上述两个三角形预测分区方向标志为一个二进制码字的方式,还可以进行反序进行表示。
步骤103,确定CU的单向预测运动矢量候选列表,从所述单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
编码端根据CU中邻近块的单向预测运动矢量候选确定CU的单向预测运动矢量候选列表,具体可以采用现有方式确定CU的单向预测运动矢量候选列表,基本过程如下:
根据CU的位置确定CU的七个邻近块,该七个邻近块包括五个空域邻近块和两个时域同位块,具体位置可以采用现有方式确定,这里不再详述;
将七个邻近块的单向预测运动矢量收集到第一合并列表中,根据特定顺序,基于第一合并列表中单向预测运动矢量来形成单向预测候选列表,根据该顺序,首先将来自第一合并列表的单向预测运动矢量放入单向预测候选列表中,然后依次放入双向预测运动矢量的L0运动矢量、双向预测运动矢量的L1运动矢量、双向预测运动矢量的L0和L1运动矢量的平均运动矢量。此时,当候选数仍小于目标数量(在当前VVC中为5)时,将零运动矢量添加至单向预测候选列表中以满足目标数量。
在确定单向预测运动矢量候选列表后,根据各三角形分区自身的单向预测运动矢量,在单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并需要将选择的各三角形分区参考的单向预测运动矢量通过信令指示给解码端。
作为一种可选的实施方式,本实施例将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端,以使解码端根据三角形分区参考的单向预测运动矢量对应的索引值,确定各三角形分区参考的单向预测运动矢量的合并索引值。
本实施例需要说明的是,不同的三角预测分区从单向预测运动矢量候选列表中选择的参考的单向预测运动矢量是不同的。本实施例中的合并索引值用于指示不同的单向预测运动矢量的组合,合并索引值的取值范围由单向预测运动矢量中单向预测运动矢量的个数决定。
具体的,本实施例中预先建立单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,在建立映射关系时,可以将列表中所有的单向预测运动矢量映射为对应的索引值,也可以将列表中一部分单向预测运动矢量映射为对应的索引值;根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系,根据各三角形分区的单向预测运动矢量确定合并索引值;
所述合并索引值可以为表示单向预测运动矢量对应的索引值组合的二维数组,或该二维数组在合并索引表中的排列顺序对应的位置索引值,但该合并索引值仅对应唯一一组单向预测运动矢量组合。
在确定各三角形分区的单向预测运动矢量映射对应的合并索引值后,根据不同的码字与合并索引值的映射关系,确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字。
作为一种可选的实施方式,根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的合并索引值进行编码得到对应的码字。
作为一种可选的实施方式,利用不同的格伦布编码方式对合并索引值进行编码,以确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字,以获得更好的性能,例如存在10个不同的单向预测运动矢量组合,则合并索引值为10个二维数组,则合并索引值的取值范围为(0~9),对(0~9)范围的合并索引值进行编码,得到不同的合并索引值对应的码字。
1)使用以下表1中所示的默认格伦布编码方式对范围从0到9的合并索引值进行编码;
表1
合并索引值对应码字 合并索引值取值范围
0 0
1 0 X<sub>0</sub> 1~2
1 1 0 X<sub>1</sub> X<sub>0</sub> 3~6
1 1 1 0 X<sub>2</sub> X<sub>1</sub> X<sub>0</sub> 7~9
2)使用以下表2中所示的固定的长度格伦布编码方式对范围从0到9的合并索引值进行编码;
表2
合并索引值对应码字 合并索引值取值范围
0 X<sub>0</sub> 0~1
1 X<sub>2</sub> X<sub>1</sub> X<sub>0</sub> 2~9
3)使用以下表2中所示的分段固定长度格伦布编码方式对范围从0到9的合并索引值进行编码;
表3
合并索引值对应码字 合并索引值取值范围
0 X<sub>1</sub> X<sub>0</sub> 0~3
1 0 X<sub>0</sub> 4~5
1 1 X<sub>1</sub> X<sub>0</sub> 6~9
上述表1、表2、表3中,X0、X1、X2的取值范围均为0或1,采用二进制组合以表示合并索引值对应的码字,上述表中X0、X1、X2的顺序仅示出了一个示例,还可以使用其它顺序,这里不做限制。
对确定的码字进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,或者对确定的码字中第一个比特位进行CABAC上下文二进制编码,对其他比特位进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,将确定的码字进行CABAC旁路二进制编码的过程为现有技术,本领域技术人员应当知晓,这里不再赘述。
步骤104,利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
对于每个三角形预测分区即三角PU,利用自身的单向预测运动矢量及参考的单向预测运动矢量推导出预测变量,根据推导出的预测变量进行运动补偿,其中每个三角PU推导出的预测变量的覆盖区域比实际的三角PU区域更大,因此,沿这两个PU的共享对角线边缘存在这两个预测变量的重叠区域。对两个三角PU的重叠区域的预测变量执行自适应加权处理,目前使用预设的两组加权因子,加权因子组的选择基于两个三角预测单元的预测变量的比较。具体地,当两个三角预测单元的参考图像彼此不同或者其预测变量差大于16个像素时,使用第二加权因子组。否则,将使用第一加权因子组。根据得到的预测变量,然后将变换和量化过程应用于整个CU,最终得到CU的运动补偿预估值,确定运动补偿预估值为本领域人员应当知晓的技术手段,这里不再赘述。
下面给出在步骤103中,根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系,来建立不同的单向预测运动矢量组合与合并索引值的映射关系的几种可选的实施方式:
方式一,确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系;
该方式中预先确定单向预测运动矢量候选列表中所有单向预测运动矢量对应的索引值,例如对于包括5个单向预测运动矢量的单向预测运动矢量候选,建立5个单向预测运动矢量与索引值0~4之间一一对应关系;确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系,合并索引表中存在不同的单向预测运动矢量的所有组合,根据特定顺序将不同的单向预测运动矢量的所有组合进行排序,根据排序顺序建立与合并索引值进行映射关系。因上述索引值为0~4,故存在20个不同的索引值组合,根据特定顺序建立20个索引值组合与合并索引值之间的一一映射关系。
作为一种可选的实施方式,本实施例中的合并索引值为20个二维数组,将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在编码端的内存,合并索引值也可以为20个数组在索引中的位置索引,如表4所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现20个二维数组的表格均可以应用于本实施例。应当注意,上述表中组合的顺序仅示出了一个示例,还可以使用其它组合顺序。
表4
Figure BDA0002353335240000201
本实施例将三角分区方向的通知信令与合并索引值的通知信令解耦,采用第一信令通知解码端三角形预测分区的划分方式,采用第二信令通知各三角形分区参考的单向预测运动矢量,能使得合并索引值不再携带三角预测分区方向,减少了合并索引表的编码端的内存占用,提高了编码效率,能更高效地实现编码。
方式二,确定不同单向预测运动矢量的部分组合,建立部分组合与合并索引值之间的映射关系;
根据当前的VVC,在常规合并模式(其中预测整个CU而不是将其分割成一个以上的PU)下,使用与三角预测模式不同的过程来构建常规合并模式运动矢量候选列表,具体的构建过程为现有过程,这里不再详述。在常规合并模式运动矢量列表生成的过程,如果常规合并模式运动矢量候选列表未满时,将成对的平均运动矢量候选添加到列表中。即通过对当前列表中已有的运动矢量候选进行平均来构建。更具体地,基于特定规则,每次获取列表中的两个运动矢量候选,并且将该两个候选的运动矢量的平均值(平均运动矢量候选)附加到当前列表中。
根据目前的VCC,以下顺序用于确定每次采用列表中的哪两个候选运动矢量来推导平均运动矢量候选。{0,1}→{0,2}→{1,2}→{0,3}→{1,3}→{2,3},每对大括号中的两个值表示当前列表中的运动矢量候选的两个索引值。
本实施例获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表,通过共享该候选运动矢量配对顺序表,生成单向预测运动矢量组合对应的索引值。具体地,根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
由于平均运动矢量的候选运动矢量配对顺序表中运动矢量索引值的取值范围0~3,本实施例方式预先从单向预测运动矢量候选列表中的5个单向预测运动矢量中,选择4个单向预测运动矢量与0~3的映射关系。
在三角预测过程中,根据上述平均运动矢量的候选运动矢量配对顺序表,确定各三角形分区参考的单向预测运动矢量组合对应的索引值组合,并将该索引值组合对应的合并索引值指示给解码端。
作为一种可选的实施方式,本实施例中的常规合并列表中合并索引值为6个二维数组,将常规合并列表中不同的单向预测运动矢量组合与合并索引值的映射关系,以常规合并列表的方式缓存在编码端的内存,如表5所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现6个二维数组的表格均可以应用于本实施例。
表5
Figure BDA0002353335240000221
采用第一信令通知解码端三角形预测分区的划分方式,通知第二信令通知各三角形分区参考的单向预测运动矢量,因常规合并列表中的平均运动矢量共享组合与三角形预测分区的各三角形分区的单向预测运动矢量,进一步减少了合并索引表的编码端的内存占用,提高了编码效率,能更高效地实现编码。
方式三,确定不同单向预测运动矢量的所有组合,建立所有组合中部分组合与合并索引值之间的映射关系;
基于方式一种合并索引表,可以确定二维数组间中存在一些对称性。例如,数组{0,1}和{1,0},它们表示将单向预测运动矢量候选列表中相同的两个运动矢量不同地分配到两个三角形分区。{0,1}指示将单向预测运动矢量候选列表中的第一单向预测运动矢量候选分配给第一三角预测分区,并且将合并列表中的第二单向预测运动矢量候选分配给第二三角预测分区。{1,0}指示将合并列表中的第二单向预测运动矢量候选分配给第一三角预测分区,并且将合并候选列表中的第一单向预测运动矢量候选分配给第二三角预测分区。
本实施例中确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
预先确定单向预测运动矢量候选列表中所有单向预测运动矢量对应的索引值,例如对于包括5个单向预测运动矢量的单向预测运动矢量候选,建立5个单向预测运动矢量的单向预测运动矢量与索引值0~4之间一一对应关系;确定不同的单向预测运动矢量的筛选后的所有组合,确定存在组合对关系的组合,并筛选各组合对中任一组合,建立筛选出的组合与合并索引值之间的映射关系。
其中筛选后组合的顺序可以按照预定规则确定的,编码段和解码段采用相同的预定规则确定;
例如因上述索引值为0~4,故存在20个不同的索引值组合,筛选保留数组中由小到大的索引值组合对后,建立10个不同的索引值组合与合并索引值之间的一一映射关系。
在采用三角预测模式进行预测过程中,确定所述各三角形分区参考的单向预测运动矢量组合,根据该组合所在的组合对及所述映射关系确定对应的合并索引值,并将所述合并索引值携带在第二信令指示给解码端;将指示解码端是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序的映射标志位,携带在第三信令指示给解码端。即通过映射标志位指示解码段具体采用组合对中哪个组合对,需要说明的时,编码段和解码段从组合对中筛选出组合与合并索引值建立映射关系的规则是相同。
本实施例中的合并索引值为10个二维数组,将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在编码端的内存,如表6所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现10个二维数组的表格均可以应用于本实施例。
表6
Figure BDA0002353335240000231
作为一种可选的实施方式,是否需要对单向预测运动矢量的组合对进行反序分别对应两个映射标志,该映射标志位为一个二进制码字,通过码字的两个不同取值指示是否需要对单向预测运动矢量的组合对进行反序,例如需要对单向预测运动矢量的组合对进行反序对应码字0,将码字0进行CABAC旁路二进制编码,将编码后的信息通过第三信令指示给解码端;不需要对单向预测运动矢量的组合对进行反序对应码字1,将码字1进行CABAC旁路二进制编码,将编码后的信息通过第三信令指示给解码端。上述是否需要对单向预测运动矢量的组合对进行反序对应为一个二进制码字的方式,还可以进行反顺序表示。
采用第一信令通知解码端三角形预测分区的划分方式、第二信令通知各三角形分区参考的单向预测运动矢量以及第三信令通知是否进行反序处理,能使得合并索引值不再携带三角预测分区方向并使得合并索引表进一步减半,减少了合并索引表的对编码端的内存占用,提高了编码效率,能更高效地实现编码。
作为一种可选的实施方式,在本实施例提供的上述指示参考的单向预测运动矢量的方式,除可以对上述CU进行两个对角三角分割之外,本实施例同样可以在对于其他CU分割方式进行预测,针对每个分区推导出的单向预测运动矢量,如使用水平和/或竖直分割方式亦可以达到本实施例提供的编码运动补偿的目的,均可用上述将方向指示和合并索引指示进行解耦的方案,这里不再赘述。
作为一种可选的实施方式,在本实施例中,三角形分区参考的单向预测运动矢量对应的索引值确定各三角形分区参考的单向预测运动矢量的合并索引值方式可以通过结构化的方式进行组织而得到合并索引值,上述给出了以合并索引表确定对应的单向预测运动矢量的方式,在给到合并索引值的情况,还可以通过推导公式方式来推导合并索引值,并且这些确定方式可以通过软件、固件或硬件等形式实现。
作为一种可选的实施方式,在本实施例中,第一信令、第二信令以及第三信令的发送顺序不做限制,可以为按一定顺序依次发送到解码端,或同时发送到解码端,这里不做限制。
实施例2
本发明实施例提供一种视频解码中运动补偿的方法,该方法应用于编码端,如图3所示,包括:
步骤201,获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
编码端获取当前视频图像帧后,将当前视频图像帧分为称为编码树单元CTU,使用具有嵌套多类型树结构的四叉树将一个编码树单元CTU划分成编码块CU。
在本申请实施例中,术语“单元(unit)”定义了覆盖所有分量的图像的区域,具体例如亮度分量或色度分量等。
步骤202,确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
编码端在确定CU后,确定采用帧间预测模式进行运动矢量预测时,可以选择包括帧间(inter)、跳跃(skip)和合并(merge)的三种预测模式之一,其中在选择跳跃模式和合并模式可以根据从解码端接收的三角预测标志信号,确定是否采用三角预测模式确定PU的运动矢量,当给定CU的三角预测标志信号中三角预测标志的值为1,则表示使用三角预测模式对相应的CU进行解码,否则,使用除三角预测模式以外的预测模式解码。
具体的确定是否三角预测模式的过程为现有过程,这里不再详述。
作为一种可选的实施方式,从编码端接收第一信令,对所述第一信令中的信息进行CABAC旁路二进制解码得到方向标志;两种CU划分方式分别对应两个三角形预测分区方向标志为一个二进制码字,通过码字的两个不同取值确定两个三角形预测分区方向,例如,对码字0进行CABAC旁路二进制解码,得到左上-右下的划分CU方式,对码字1进行CABAC旁路二进制解码,得到右上-左下的划分CU方式,解码端根据由码字确定的划分方式,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割。
步骤203,确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
解码端根据CU中邻近块的单向预测运动矢量候选确定CU的单向预测运动矢量候选列表,具体可以采用现有方式确定CU的单向预测运动矢量候选列表,基本过程同编码端,这里不再重述。
作为一种可选的实施方式,本实施例将从编码端接收的第二信令携带的合并索引值,确定根据三角形分区参考的单向预测运动矢量对应的索引值,根据索引值确定各三角形分区的单向预测运动矢量。
本实施例需要说明的是,不同的三角预测分区从单向预测运动矢量候选列表中选择的参考的单向预测运动矢量是不同的。本实施例中的合并索引值用于指示不同的单向预测运动矢量的组合,合并索引值的取值范围由单向预测运动矢量中单向预测运动矢量的个数决定。
具体的,本实施例中预先建立单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,在建立映射关系时,可以将列表中所有的单向预测运动矢量映射为对应的索引值,也可以将列表中一部分单向预测运动矢量映射为对应的索引值;根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系,根据合并索引值确定各三角形分区的单向预测运动矢量;
所述合并索引值可以为表示单向预测运动矢量对应的索引值组合的二维数组,或该二维组在合并索引表中的排列顺序对应的位置索引值,但该合并索引值仅对应唯一一组单向预测运动矢量组合。
在确定各三角形分区的单向预测运动矢量映射对应的合并索引值后,根据不同的码字与合并索引值的映射关系,确定合并索引值对应的码字指示的各三角形分区参考的单向预测运动矢量;
作为一种可选的实施方式,根据从编码端接收第二信令,对所述第二信令中的信息进行CABAC旁路二进制解码得到码字,或者对所述第二信令中的信息中第一个比特位进行CABAC上下文二进制解码,对其他比特位进行CABAC旁路二进制解码得到码字。
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的码字进行解码得到对应的合并索引值。
作为一种可选的实施方式,利用不同的格伦布解码方式对合并索引值进行解码,以得到指示码字对应的各三角形分区参考的单向预测运动矢量的合并索引值,以获得更好的性能,例如存在10个不同的单向预测运动矢量组合,则合并索引值为10个二维数组,则合并索引值的取值范围为(0~9),根据格伦布码字表对得到的码字进行解码得到合并索引值,得到不同的合并索引值对应的码字,合并索引值对应的码字表与实施例1中表1~表3提供的格伦布码字表相同,这里不再赘述。
步骤204,利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
对于每个三角形预测分区即三角PU,利用自身的单向预测运动矢量及参考的单向预测运动矢量推导出预测变量,根据推导出的预测变量进行运动补偿,其中每个三角PU推导出的预测变量的覆盖区域比实际的三角PU区域更大,因此,沿这两个PU的共享对角线边缘存在这两个预测变量的重叠区域。对两个三角PU的重叠区域的预测变量执行自适应加权处理,目前使用预设的两组加权因子,加权因子组的选择基于两个三角预测单元的预测变量的比较。具体地,当两个三角预测单元的参考图像彼此不同或者其预测变量差大于16个像素时,使用第二加权因子组。否则,将使用第一加权因子组。根据得到的预测变量,然后将变换和量化过程应用于整个CU,最终得到CU的运动补偿预估值,确定运动补偿预估值为本领域人员应当知晓的技术手段,这里不再赘述。
下面给出在步骤203中,根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系,来建立不同的单向预测运动矢量组合与合并索引值的映射关系的几种可选的实施方式:
方式一,确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系;
该方式中预先确定单向预测运动矢量候选列表中所有索引单向预测运动矢量对应的索引值,例如对于包括5个单向预测运动矢量的单向预测运动矢量候选,建立5个单向预测运动矢量与索引值0~4之间一一对应关系;确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系,合并索引表中存在不同的单向预测运动矢量的所有组合,根据特定顺序将不同的单向预测运动矢量的所有组合进行排序,根据排序顺序建立与合并索引值进行映射关系。因上述索引值为0~4,故存在20个不同的索引值组合,根据特定顺序建立20个索引值组合与合并索引值之间的一一映射关系。
作为一种可选的实施方式,本实施例中的合并索引值为20个二维数组,将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在解码端的内存,合并索引值也可以为20个数组在索引中的位置索引,如实施例1中表4所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现20个二维数组的表格均可以应用于本实施例,应当注意,上述表中组合的顺序仅示出了一个示例,还可以使用其它组合顺序。
本实施例根据接收的三角形预测分区方向的信令与合并索引值的信令解耦,采用接收第一信令确定解码端三角形预测分区的划分方式,采用接收第二信令确定解码端各三角形分区参考的单向预测运动矢量,能使得合并索引值不再携带三角预测分区方向,减少了合并索引表的解码端的内存占用,提高了解码效率,能更高效地实现解码。
方式二,确定不同单向预测运动矢量的部分组合,建立部分组合与合并索引值之间的映射关系;
根据当前的VVC,在常规合并模式(其中预测整个CU而不是将其分割成一个以上的PU)下,使用与三角预测模式不同的过程来构建常规合并模式运动矢量候选列表,具体的构建过程为现有过程,这里不再详述。在常规合并模式运动矢量列表生成的过程,如果常规合并模式运动矢量候选列表未满时,将成对的平均运动矢量候选添加到列表中。即通过对当前列表中已有的运动矢量候选进行平均来构建。更具体地,基于特定规则,每次获取列表中的两个运动矢量候选,并且将该两个候选的运动矢量的平均值(平均运动矢量候选)附加到当前列表中。
根据目前的VCC,以下顺序用于确定每次采用列表中的哪两个候选运动矢量来推导平均运动矢量候选。{0,1}→{0,2}→{1,2}→{0,3}→{1,3}→{2,3},每对大括号中的两个值表示当前列表中的运动矢量候选的两个索引值。
本实施例获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表,通过共享该候选运动矢量配对顺序表,生成单向预测运动矢量组合对应的索引值。具体地,根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
由于平均运动矢量的候选运动矢量配对顺序表中运动矢量索引值的取值范围0~3,本实施例方式预先从单向预测运动矢量候选列表中的5个单向预测运动矢量中,选择4个单向预测运动矢量与0~3的映射关系。
根据上述平均运动矢量的候选运动矢量配对顺序表,由编码端指示的合并索引值,确定各三角形分区参考的单向预测运动矢量组合对应的索引值组合。
作为一种可选的实施方式,本实施例中的常规合并列表中合并索引值为6个二维数组,将常规合并列表中不同的单向预测运动矢量组合与合并索引值的映射关系,以常规合并列表的方式缓存在解码端的内存,如实施例1中表5所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现6个二维数组的表格均可以应用于本实施例。
采用接收第一信令确定解码端三角形预测分区的划分方式,采用接收第二信令确定解码端各三角形分区参考的单向预测运动矢量,因常规合并列表中的平均运动矢量共享组合与三角形预测分区的各三角形分区的单向预测运动矢量,进一步减少了合并索引表的解码端的内存占用,提高了解码效率,能更高效地实现解码。
方式三,确定不同单向预测运动矢量的所有组合,建立所有组合中部分组合与合并索引值之间的映射关系;
基于方式一种合并索引表,可以确定二维数组间中存在一些对称性。例如,数组{0,1}和{1,0},它们表示将单向预测运动矢量候选列表中相同的两个运动矢量不同地分配到两个三角形分区。{0,1}指示将单向预测运动矢量候选列表中的第一单向预测运动矢量候选分配给第一三角预测分区,并且将合并列表中的第二单向预测运动矢量候选分配给第二三角预测分区。{1,0}指示将合并列表中的第二单向预测运动矢量候选分配给第一三角预测分区,并且将合并候选列表中的第一单向预测运动矢量候选分配给第二三角预测分区。
本实施例中确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
预先确定单向预测运动矢量候选列表中所有单向预测运动矢量对应的索引值,例如对于包括5个单向预测运动矢量的单向预测运动矢量候选,建立5个单向预测运动矢量的单向预测运动矢量与索引值0~4之间一一对应关系;确定不同的单向预测运动矢量的筛选后的所有组合,确定存在组合对关系的组合,并筛选各组合对中任一组合,建立筛选出的组合与合并索引值之间的映射关系。
其中筛选后组合的顺序可以按照预定规则确定的,编码段和解码段采用相同的预定规则确定;
例如因上述索引值为0~4,故存在20个不同的索引值组合,筛选保留数组中由小到大的索引值组合对后,建立10个不同的索引值组合与合并索引值之间的一一映射关系。
在采用三角预测模式进行预测过程中,接收第二信令携带的合并索引值,根据合并索引值及所述映射关系确定所述各三角形分区参考的单向预测运动矢量组合,接收第三信令携带的映射标志位,确定是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序;需要说明的是,编码段和解码段从组合对中筛选出组合与合并索引值建立映射关系的规则是相同的。
本实施例中的合并索引值为10个二维数组,将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在解码端的内存,如实施例1中表6所示,该表格仅为一种映射示意,其行数和列数不受具体显示,可以体现10个二维数组的表格均可以应用于本实施例。
作为一种可选的实施方式,是否需要对单向预测运动矢量的组合对进行反序分别对应两个映射标志,该映射标志位为一个二进制码字,通过码字的两个不同取值指示是否需要对单向预测运动矢量的组合对进行反序,例如需要对单向预测运动矢量的组合对进行反序对应码字0,不需要对单向预测运动矢量的组合对进行反序对应码字1,根据第三信令携带的编码后的信息,将编码后的信息进行CABAC旁路二进制解码得到码字0,确定需要对单向预测运动矢量的组合对进行反序,将编码后的信息进行CABAC旁路二进制解码得到码字1,不确定需要对单向预测运动矢量的组合对进行反序,上述二进制码字对应是否需要对单向预测运动矢量的组合对进行反序的方式,还可以进行反顺序表示。
采用接收第一信令确定解码端三角形预测分区的划分方式、接收第二信令确定各三角形分区参考的单向预测运动矢量以及接收第三信令确定是否进行反序处理,能使得合并索引值不再携带三角预测分区方向并使得合并索引表进一步减半,减少了合并索引表的对解码端的内存占用,提高了解码效率,能更高效地实现解码。
作为一种可选的实施方式,在本实施例提供的上述指示参考的单向预测运动矢量的方式,除可以对上述CU进行两个对角三角分割之外,本实施例同样可以在对于其他CU分割方式进行预测,针对每个分区推导出的单向预测运动矢量,如使用水平和/或竖直分割方式亦可以达到本实施例提供的解码运动补偿的目的,均可用上述将方向指示和合并索引指示进行解耦的方案,这里不再赘述。
作为一种可选的实施方式,在本实施例中,各三角形分区参考的单向预测运动矢量的合并索引值对应的三角形分区的单向预测运动矢量确定方式可以通过结构化的方式进行组织而得到三角形分区的单向预测运动矢量,上述给出了以合并索引表确定对应的单向预测运动矢量的方式,在给到合并索引值的情况,还可以通过推导公式方式来推导合并索引值对应的三角形分区的单向预测运动矢量,并且这些确定方式可以通过软件、固件或硬件等形式实现。
作为一种可选的实施方式,在本实施例中,第一信令、第二信令以及第三信令的接收顺序不做限制,可以为按一定顺序依次从编码端接收,或同时从编码端接收,这里不做限制。
实施例3
如图4所示,本公开实施例提供一种视频解码中运动补偿的装置,该装置包括如下模块:
编码单元确定模块301,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
三角形预测分区分割方向确定模块302,用于确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
单向预测运动矢量确定模块303,用于确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
运动补偿模块304,用于利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
实施例4
如图5所示,本公开实施例提供一种视频编码中运动补偿的装置,该装置包括如下模块:
编码单元确定模块401,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
第一信令确定模块402,用于确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
第二信令确定模块403,用于确定CU的单向预测运动矢量候选列表,从所述单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
运动补偿模块404,用于利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
实施例5
本公开实施例提供一种视频解码中运动补偿的设备,包括:处理器501、存储器502、收发器509以及总线系统511;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:
获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
确定CU的单向预测运动矢量候选列表,根据从编码端接收的第二信令中的合并索引值,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
图6是本发明实施例提供的一种视频解码中运动补偿设备示意图,该设备应用于视频解码端,该设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(英文全称:central processing units,英文简称:CPU)501(例如,一个或一个以上处理器)和存储器502,一个或一个以上存储应用程序504或数据506的存储介质503(例如一个或一个以上海量存储设备)。其中,存储器502和存储介质503可以是短暂存储或持久存储。存储在存储介质503的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对信息处理装置中的一系列指令操作。更进一步地,处理器501可以设置为与存储介质503通信,在设备500上执行存储介质503中的一系列指令操作。
设备500还可以包括一个或一个以上电源510,一个或一个以上有线或无线网络接口507,一个或一个以上输入输出接口508,和/或,一个或一个以上操作系统505,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等。
可选地,处理器从编码端接收第二信令之前,还包括:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
其中,根据所述映射关系,确定第二信令中的合并索引值对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
可选地,处理器从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值对应的单向预测运动矢量组合;
根据从编码端接收的第三信令中的映射标志位,确定对该单向预测运动矢量组合进行反序;
若是反序映射标志,对该单向预测运动矢量组合内的单向预测运动矢量反序,得到各三角形分区参考的单向预测运动矢量,否则根据该单向预测运动矢量组合得到各三角形分区参考的单向预测运动矢量。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
可选地,处理器从编码端接收第二信令之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
可选地,处理器从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,处理器还包括:
从编码端接收第二信令,对所述第二信令中的信息进行CABAC旁路二进制解码得到码字,或者对所述第二信令中的信息中第一个比特位进行CABAC上下文二进制解码,对其他比特位进行CABAC旁路二进制解码得到码字;
根据不同的码字与合并索引值的映射关系,确定所述解码得到的码字所对应的合并索引值。
可选地,处理器还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布解码对不同的码字进行解码得到对应的合并索引值。
可选地,处理器还包括:
从编码端接收第一信令,对所述第一信令中的信息进行CABAC旁路二进制解码得到方向标志;
根据不同的方向标志与三角形预测分区方向的映射关系,确定所述解码得到的方向标志所对应的三角形预测分区方向。
可选地,处理器还包括:
从编码端接收第三信令,对所述第三信令中的信息进行CABAC旁路二进制解码得到映射标志;
根据不同的映射标志与是否对单向预测运动矢量组合进行反序的映射关系,确定所述解码得到的映射标志所对应的是否对单向预测运动矢量组合进行反序的结果。
实施例6
本公开实施例提供一种视频编码中运动补偿的方法的设备,包括:处理器601、存储器602、收发器609以及总线系统611;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,包括如下步骤:获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
确定CU的单向预测运动矢量候选列表,从所述单向预测运动矢量候选列表中选择各三角形分区参考的单向预测运动矢量,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
图7是本发明实施例提供的一种视频编码中运动补偿的设备,该设备应用于视频编码端,该设备600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(英文全称:central processing units,英文简称:CPU)601(例如,一个或一个以上处理器)和存储器602,一个或一个以上存储应用程序604或数据606的存储介质603(例如一个或一个以上海量存储设备)。其中,存储器602和存储介质603可以是短暂存储或持久存储。存储在存储介质603的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对信息处理装置中的一系列指令操作。更进一步地,处理器601可以设置为与存储介质603通信,在设备600上执行存储介质603中的一系列指令操作。
设备600还可以包括一个或一个以上电源610,一个或一个以上有线或无线网络接口607,一个或一个以上输入输出接口608,和/或,一个或一个以上操作系统605,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等。
可选地,处理器将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端之前,还包括:
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与合并索引值的映射关系;
根据所述映射关系,确定所述各三角形分区参考的单向预测运动矢量组合对应的合并索引值。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同的单向预测运动矢量的所有组合,建立各组合与合并索引值之间的映射关系。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系,包括:
确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对;
筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系。
可选地,处理器将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端,包括:
确定所述各三角形分区参考的单向预测运动矢量组合,根据该组合所在的组合对及所述映射关系确定对应的合并索引值,并将所述合并索引值携带在第二信令指示给解码端;
将指示解码端是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序的映射标志位,携带在第三信令指示给解码端。
可选地,处理器确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
可选地,处理器将所述合并索引值,携带在第二信令指示给解码端之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
可选地,处理器从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
可选地,处理器还包括:
根据不同的码字与合并索引值的映射关系,确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字;
对确定的码字进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,或者对确定的码字中第一个比特位进行CABAC上下文二进制编码,对其他比特位进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端。
可选地,处理器还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的合并索引值进行编码得到对应的码字。
可选地,处理器将三角形预测分区方向标志,携带在第一信令指示给解码端,包括:
对所述三角形预测分区方向标志进行CABAC旁路二进制编码,将编码后的信息携带在第一信令指示给解码端。
可选地,处理器将映射标志位携带在第三信令指示给解码端,包括:
将所述映射标志位进行CABAC旁路二进制编码,将编码后的信息携带在第三信令指示给解码端。
实施例7
本发明实施例提供一种计算机介质,其上存储有计算机程序,该程序被处理器执行时实现实施例1任一所述方法的步骤,或者实现实施例2任一所述方法的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (23)

1.一种视频解码中运动补偿的方法,其特征在于,包括:
获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对,筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系,得到筛选后的单向预测运动矢量候选列表;
其中,根据所述映射关系,确定第二信令中的合并索引值对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量;
根据从编码端接收的第二信令中的合并索引值,从所述筛选后的单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
2.根据权利要求1所述的方法,其特征在于,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值对应的单向预测运动矢量组合;
根据从编码端接收的第三信令中的映射标志位,确定对该单向预测运动矢量组合进行反序;
若是反序映射标志,对该单向预测运动矢量组合内的单向预测运动矢量反序,得到各三角形分区参考的单向预测运动矢量,否则根据该单向预测运动矢量组合得到各三角形分区参考的单向预测运动矢量。
3.根据权利要求1或2任一所述的方法,其特征在于,确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
4.根据权利要求1所述的方法,其特征在于,从编码端接收第二信令之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
5.根据权利要求4所述的方法,其特征在于,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
6.根据权利要求1所述的方法,其特征在于,还包括:
从编码端接收第二信令,对所述第二信令中的信息进行CABAC旁路二进制解码得到码字,或者对所述第二信令中的信息中第一个比特位进行CABAC上下文二进制解码,对其他比特位进行CABAC旁路二进制解码得到码字;
根据不同的码字与合并索引值的映射关系,确定所述解码得到的码字所对应的合并索引值。
7.根据权利要求6所述的方法,其特征在于,还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布解码对不同的码字进行解码得到对应的合并索引值。
8.根据权利要求1所述的方法,其特征在于,还包括:
从编码端接收第一信令,对所述第一信令中的信息进行CABAC旁路二进制解码得到方向标志;
根据不同的方向标志与三角形预测分区方向的映射关系,确定所述解码得到的方向标志所对应的三角形预测分区方向。
9.根据权利要求2所述的方法,其特征在于,还包括:
从编码端接收第三信令,对所述第三信令中的信息进行CABAC旁路二进制解码得到映射标志;
根据不同的映射标志与是否对单向预测运动矢量组合进行反序的映射关系,确定所述解码得到的映射标志所对应的是否对单向预测运动矢量组合进行反序的结果。
10.一种视频编码中运动补偿的方法,其特征在于,包括:
获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对,筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系,根据所述映射关系,确定所述各三角形分区参考的单向预测运动矢量组合对应的合并索引值,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
11.根据权利要求10所述的方法,其特征在于,将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端,包括:
确定所述各三角形分区参考的单向预测运动矢量组合,根据该组合所在的组合对及所述映射关系确定对应的合并索引值,并将所述合并索引值携带在第二信令指示给解码端;
将指示解码端是否需要对所述合并索引值指示的单向预测运动矢量组合顺序进行反序的映射标志位,携带在第三信令指示给解码端。
12.根据权利要求10或11所述的方法,其特征在于,确定不同的单向预测运动矢量组合与合并索引值的映射关系后,还包括:
将不同的单向预测运动矢量组合与合并索引值的映射关系,以合并索引表的方式缓存在内存。
13.根据权利要求10所述的方法,其特征在于,将所述合并索引值,携带在第二信令指示给解码端之前,还包括:
获取常规合并列表生成过程中,用于指示生成平均运动矢量的候选运动矢量配对顺序表;
根据单向预测运动矢量候选列表中单向预测运动矢量对应的索引值,确定不同的单向预测运动矢量组合与候选运动矢量配对所对应的合并索引值的映射关系。
14.根据权利要求13所述的方法,其特征在于,从所述单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量,包括:
根据所述映射关系,确定编码端接收的第二信令中的合并索引值在候选运动矢量配对顺序表中对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量。
15.根据权利要求10所述的方法,其特征在于,还包括:
根据不同的码字与合并索引值的映射关系,确定指示各三角形分区参考的单向预测运动矢量的合并索引值对应的码字;
对确定的码字进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端,或者对确定的码字中第一个比特位进行CABAC上下文二进制编码,对其他比特位进行CABAC旁路二进制编码,将编码得到的信息携带在第二信令中指示给解码端。
16.根据权利要求15所述的方法,其特征在于,还包括:
根据不同的单向预测运动矢量组合与合并索引值的映射关系,确定合并索引值的取值范围;
根据合并索引值的取值范围,利用格伦布编码对不同的合并索引值进行编码得到对应的码字。
17.根据权利要求10所述的方法,其特征在于,将三角形预测分区方向标志,携带在第一信令指示给解码端,包括:
对所述三角形预测分区方向标志进行CABAC旁路二进制编码,将编码后的信息携带在第一信令指示给解码端。
18.根据权利要求11所述的方法,其特征在于,将映射标志位携带在第三信令指示给解码端,包括:
将所述映射标志位进行CABAC旁路二进制编码,将编码后的信息携带在第三信令指示给解码端。
19.一种视频解码中运动补偿的装置,其特征在于,该装置包括如下模块:
编码单元确定模块,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
三角形预测分区分割方向确定模块,用于确定对所述CU采用三角预测模式预测运动矢量时,根据从编码端接收的第一信令中的三角形预测分区方向标志,确定三角形预测分区的分割方向并按照所述分割方向进行三角形预测分区分割;
单向预测运动矢量候选列表确定模块,根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对,筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系,得到筛选后的单向预测运动矢量候选列表,其中,根据所述映射关系,确定第二信令中的合并索引值对应的单向预测运动矢量组合,得到各三角形分区参考的单向预测运动矢量;
单向预测运动矢量确定模块,用于根据从编码端接收的第二信令中的合并索引值,从所述筛选后的单向预测运动矢量候选列表选择各三角形分区参考的单向预测运动矢量;
运动补偿模块,用于利用各三角形预测分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
20.一种视频编码中运动补偿的装置,其特征在于,该装置包括如下模块:
编码单元确定模块,用于获取当前视频图像帧,确定所述视频图像帧中的编码单元CU;
第一信令确定模块,用于确定对所述CU采用三角预测模式预测运动矢量时,将所述CU划分为至少一个三角形预测分区,并将三角形预测分区方向标志,携带在第一信令指示给解码端;
第二信令确定模块,用于根据预先建立的单向预测运动矢量候选列表中各单向预测运动矢量对应的索引值,确定不同单向预测运动矢量的所有组合中,组合内两个单向预测运动矢量相同,但先后顺序不同关系的组合对,筛选出各组合对中任一组合,并建立筛选出的组合对与合并索引值之间的映射关系,根据所述映射关系,确定所述各三角形分区参考的单向预测运动矢量组合对应的合并索引值,并将指示各三角形分区参考的单向预测运动矢量的合并索引值,携带在第二信令指示给解码端;
运动补偿模块,用于利用各三角分区自身的单向预测运动矢量及参考的单向预测运动矢量进行运动补偿,得到运动补偿预估值。
21.一种视频解码中运动补偿的设备,其特征在于,包括:存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器中的程序,实现如权利要求1~9任一所述方法的步骤。
22.一种视频编码中运动补偿的设备,其特征在于,包括:存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述存储器中的程序,实现如权利要求10~18任一所述方法的步骤。
23.一种计算机程序介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~9任一所述方法的步骤,或者实现如权利要求10~18任一所述方法的步骤。
CN201911425007.7A 2019-01-02 2019-12-31 一种视频解码中运动补偿的方法及装置 Active CN111083490B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962787738P 2019-01-02 2019-01-02
US62/787,738 2019-01-02

Publications (2)

Publication Number Publication Date
CN111083490A CN111083490A (zh) 2020-04-28
CN111083490B true CN111083490B (zh) 2022-05-06

Family

ID=70321498

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911425007.7A Active CN111083490B (zh) 2019-01-02 2019-12-31 一种视频解码中运动补偿的方法及装置

Country Status (1)

Country Link
CN (1) CN111083490B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102972026A (zh) * 2010-07-09 2013-03-13 索尼公司 图像处理装置和图像处理方法
CN104717513A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种双向帧间预测方法及装置
KR20180082330A (ko) * 2017-01-09 2018-07-18 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR20180134764A (ko) * 2017-06-09 2018-12-19 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120300850A1 (en) * 2010-02-02 2012-11-29 Alex Chungku Yie Image encoding/decoding apparatus and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102972026A (zh) * 2010-07-09 2013-03-13 索尼公司 图像处理装置和图像处理方法
CN104717513A (zh) * 2015-03-31 2015-06-17 北京奇艺世纪科技有限公司 一种双向帧间预测方法及装置
KR20180082330A (ko) * 2017-01-09 2018-07-18 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR20180134764A (ko) * 2017-06-09 2018-12-19 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Algorithm description for Versatile Video Coding and Test Model 3 (VTM 3)";Jianle Chen;《Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macao, CN, 3–12 Oct. 2018》;20181224;第1-56页 *

Also Published As

Publication number Publication date
CN111083490A (zh) 2020-04-28

Similar Documents

Publication Publication Date Title
TWI759389B (zh) 用於視訊寫碼之低複雜度符號預測
US11240529B2 (en) Picture prediction method and picture prediction apparatus
US11516496B2 (en) Image encoding/decoding method and apparatus, and recording medium storing bitstream
CN111164974B (zh) 图像编码/解码方法和设备以及非暂时性存储介质
CN112740677A (zh) 用于对图像信号进行编码/解码的方法及其装置
CN112369022A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112771862A (zh) 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN113574875A (zh) 基于帧内块复制的编/解码方法和装置及比特流存储介质
JP2022536383A (ja) 単純化されたmpmリスト生成方法を用いる画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
CN112438048A (zh) 用于对图像进行编码/解码的方法和设备以及存储比特流的记录介质
CN112585976A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112740671A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN113826393A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN113841404A (zh) 视频编码/解码方法和设备以及存储比特流的记录介质
CN111083490B (zh) 一种视频解码中运动补偿的方法及装置
CN114885160A (zh) 视频编解码方法、装置、计算机可读介质及电子设备
CN112740685B (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
KR20240059507A (ko) 처리율 향상을 위한 영상 부호화 방법, 장치 및 비트스트림을 저장한 기록 매체
KR20230166899A (ko) 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN117795957A (zh) 跨分量样点自适应偏移中的编解码增强
CN112740685A (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN118175293A (zh) 图像编码方法、图像解码方法、存储介质和发送方法
CN118175292A (zh) 图像编码方法、图像解码方法、存储介质和发送方法
CN118175294A (zh) 图像编码方法、图像解码方法、存储介质和发送方法
CN118175290A (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