CN116156164A - 用于对视频进行解码的方法、设备和可读存储介质 - Google Patents

用于对视频进行解码的方法、设备和可读存储介质 Download PDF

Info

Publication number
CN116156164A
CN116156164A CN202310180336.XA CN202310180336A CN116156164A CN 116156164 A CN116156164 A CN 116156164A CN 202310180336 A CN202310180336 A CN 202310180336A CN 116156164 A CN116156164 A CN 116156164A
Authority
CN
China
Prior art keywords
prediction
video
block
triangle
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310180336.XA
Other languages
English (en)
Other versions
CN116156164B (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
Priority to CN202310180336.XA priority Critical patent/CN116156164B/zh
Publication of CN116156164A publication Critical patent/CN116156164A/zh
Application granted granted Critical
Publication of CN116156164B publication Critical patent/CN116156164B/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/115Selection of the code volume for a coding unit prior to coding
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

提供了一种用于对视频进行解码的方法、设备和可读存储介质。所述方法包括:将视频图片分割为多个编码单元(CU),其中所述多个CU中的至少一个CU进一步被分割为两个预测单元(PU),所述两个PU包括至少一个三角形形状的PU,所述至少一个三角形形状的PU具有以下之一的分割方向:从左上角到右下角和从右上角到左下角;构建单向预测运动矢量候选列表;根据编码信息确定当前CU是否被编码如三角形预测模式;用信号发送指示所述分割方向的分割方向标志;以及用信号发送指示所构建的单向预测运动矢量候选列表中的所选条目的索引值。

Description

用于对视频进行解码的方法、设备和可读存储介质
本申请是申请号为201980081873.0、申请日为2019年12月30日、题目为“用于三角形预测的视频编解码的方法和装置”的发明申请的分案申请。
技术领域
本申请总体涉及视频编解码和压缩,并且具体地但不限于在视频编解码中用于使用三角形预测单元的运动补偿预测的方法和装置。
背景技术
在此定义了以下缩写和首字母缩略词,其中至少一些缩写和首字母缩略词在以下描述内被提及:
国际电信联盟(ITU)、ITU电信标准化部门(ITU-T)、国际标准化组织(ISO/IEC)、国际电工委员会(IEC)、运动图像专家组(MPEG)、高级视频编码(AVC)、高效视频编码(HEVC)、通用视频编码(VVC)、联合探索测试模型(JEM)、VVC测试模型(VTM)、联合视频专家组(JVET)、视频编码专家组(VCEG)、运动矢量(MV)、运动矢量预测(MVP)、运动矢量差(MVD)、运动矢量场(MVF)、高级运动矢量预测(AMVP)、运动矢量竞争(MVC)、时间运动矢量预测(TMVP)、控制点运动矢量(CPMV)、自适应环路滤波器(ALF)、双向预测(B)、块复制(BC)、基于上下文的自适应二进制算术编码(CABAC)、上下文自适应可变长度编码(CAVLC)、编码块(CB)、编码器/解码器(CODEC)、编码图片缓冲器(CPB)、编码树块(CTB)、编码树单元(CTU)、编码单元(CU)、离散余弦变换(DCT)、解码图片缓冲器(DPB)、帧内(I)、帧内块复制(IBC)、预测(P)、预测块(PB)、概率区间分割熵(PIPE)、图片顺序计数(POC)、图片单元(PU)、绝对差总和(SAD)、样点自适应偏移(SAO)、基于语义的上下文自适应二进制算术编码(SBAC)、序列参数集(SPS)、平方差总和(SSD)、变换单元(TU)、四叉树加二叉树(QTBT)、像素或图片元素(pel)、高级时间级运动矢量预测(ATMVP)、最终运动矢量表达(UMVE)、具有运动矢量差的合并模式(MMVD)、索引(IDX)、联合帧间帧内预测(CIIP)、最可能模式(MPM)。
各种电子设备(诸如数字电视、膝上型计算机或台式计算机、平板计算机、数码相机、数字记录设备、数字媒体播放器、视频游戏机、智能电话、视频电话会议设备、视频流设备等)都支持数字视频。电子设备通过实施视频压缩/解压缩来发送、接收、编码、解码和/或存储数字视频数据。数字视频设备实施视频编解码技术,诸如由通用视频编码(VVC)、联合探索测试模型(JEM)、MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、Part 10、高级视频编码(AVC)、ITU-T H.265/高效视频编码(HEVC)定义的标准及此类标准的扩展中所描述的那些技术。
视频编解码通常使用利用了视频图像或序列中存在的冗余的预测方法(例如,帧间预测、帧内预测)。视频编解码技术的重要目标在于将视频数据压缩为使用更低比特率的形式,同时避免或最小化视频质量的降级。随着不断发展的视频服务变得可用,需要具有更好编解码效率的编解码技术。
视频压缩通常包括执行空间(帧内)预测和/或时间(帧间)预测来减少或移除视频数据中固有的冗余。对于基于块的视频编码,将视频帧划分为一个或更多个条带,每个条带具有多个视频块,视频块也可被称为编码树单元(CTU)。每个CTU可包含一个编码单元(CU)或者递归地被划分为更小的CU直到达到预定义的最小CU尺寸为止。每个CU(也称为叶CU)包含一个或多个变换单元(TU)并且每个CU还包含一个或多个预测单元(PU)。可以以帧内、帧间或IBC模式对每个CU进行编码。视频帧的帧内编码(I)条带中的视频块使用关于同一视频帧内的相邻块中的参考样点的空间预测来进行编码。视频帧的帧间编码(P或B)条带中的视频块可使用关于同一视频帧内的相邻块中的参考样点的空间预测或关于其它先前参考视频帧和/或未来参考视频帧中的参考样点的时间预测。
基于先前已被编码的参考块(例如,邻近块)的空间预测或时间预测得出用于待编码的当前视频块的预测块。找到参考块的过程可通过块匹配算法来完成。表示待编码的当前块与预测块之间的像素差的残差数据被称为残差块或预测误差。根据残差块和指向参考帧中的形成预测块的参考块的运动矢量来对帧间编码块进行编码。确定运动矢量的过程通常被称为运动估计。根据帧内预测模式和残差块对帧内编码块进行编码。为了进一步压缩,将残差块从像素域变换到变换域(例如,频域),从而得出残差变换系数,残差变换系数然后可被量化。最初以二维阵列布置的量化的变换系数可被扫描以产生变换系数的一维向量,然后被熵编码为视频比特流以实现甚至更大的压缩。
然后,将已编码的视频比特流保存于计算机可读存储介质(例如,闪存存储器)中,以由具有数字视频能力的另一电子设备访问或者有线或无线地直接发送到电子设备。然后,电子设备执行视频解压缩(其为与上文描述的视频压缩相反的过程),例如,通过对已编码的视频比特流进行解析来从比特流获得语义元素,并且至少部分地基于从比特流获得的语义元素从已编码的视频比特流将数字视频数据重建为其原始格式,并且电子设备在电子设备的显示器上呈现重建的数字视频数据。
随着数字视频质量从高清变为4K×2K或甚至8K×4K,待编码/解码的视频数据量呈指数增长。在如何在保持解码视频数据的图像质量的同时能够更有效率地对视频数据进行编码/解码方面,是一个长久挑战。
在联合视频专家组(JVET)会议中,JVET定义了通用视频编码(VVC)的第一草案和VVC测试模型1(VTM1)编码方法。决定包括使用二划分和三划分编码块结构的具有嵌套多类型树的四叉树作为VVC的初始新编码特征。从那时起,在JVET会议期间已经研发了用于实现编解码方法的参考软件VTM和草拟VVC解码过程。
发明内容
一般来说,本公开描述了在视频编解码中与使用三角形预测单元的运动补偿预测相关的技术的示例。
根据本公开的第一方面,提供了一种用于对视频进行编解码的方法,包括:将视频图片分割为多个编码单元(CU),其中所述多个CU中的至少一个CU进一步被分割为两个预测单元(PU),所述两个PU包括至少一个三角形形状的PU,所述至少一个三角形形状的PU具有以下之一的分割方向:从左上角到右下角和从右上角到左下角;构建单向预测运动矢量候选列表;根据编码信息确定当前CU是否被编码如三角形预测模式;用信号发送指示所述分割方向的分割方向标志;以及用信号发送指示所构建的单向预测运动矢量候选列表中的所选条目的索引值。
根据本公开的第二方面,提供了一种用于对视频进行编解码的方法,包括将视频图片分割为多个编码单元(CU),其中所述多个CU中的至少一个CU进一步被分割为两个预测单元(PU),所述两个PU包括至少一个三角形形状的PU;确定针对当前CU是否将对指示三角形预测模式的三角形预测标志进行解码;以及在确定针对当前CU将对所述三角形预测标志进行解码时,使用基于CABAC来推导所述三角形预测标志;其中用于所述三角形预测标志的所述CABAC的上下文是基于从由以下构成的组合中选择的至少一个推导的:CU区域尺寸;CU形状;以及公共上下文。
根据本公开的第三方面,提供了一种用于对视频进行编解码的设备,包括:处理器;以及存储器,被配置为存储可由处理器执行的指令;其中处理器在执行所述指令时被配置为:将视频图片分割为多个编码单元(CU),其中所述多个CU中的至少一个CU进一步被分割为两个预测单元(PU),所述两个PU包括至少一个三角形形状的PU,所述至少一个三角形形状的PU具有以下之一的分割方向:从左上角到右下角和从右上角到左下角;构建单向预测运动矢量候选列表;根据编码信息确定当前CU是否被编码如三角形预测模式;用信号发送指示所述分割方向的分割方向标志;以及用信号发送指示所构建的单向预测运动矢量候选列表中的所选条目的索引值。
根据本公开的第四方面,提供了一种用于对视频进行编解码的设备,包括:处理器;以及存储器,被配置为存储可由处理器执行的指令;其中处理器在执行所述指令时被配置为:将视频图片分割为多个编码单元(CU),其中所述多个CU中的至少一个CU进一步被分割为两个预测单元(PU),所述两个PU包括至少一个三角形形状的PU;确定针对当前CU是否将对指示三角形预测模式的三角形预测标志进行解码;以及在确定针对当前CU将对所述三角形预测标志进行解码时,使用CABAC来推导所述三角形预测标志;其中用于所述三角形预测标志的所述CABAC的上下文是基于从由以下构成的组合中选择的至少一个推导的:CU区域尺寸;CU形状;以及公共上下文。
附图说明
将通过参照附图中所示的具体示例来呈现本公开的示例的更详细的描述。鉴于这些附图仅描绘了一些示例,并且因此不被认为是对范围的限制,将通过使用附图利用附加的特征和细节来描述和解释示例。
图1是示出根据本公开的一些实施方式的示例性视频编码和解码系统的框图。
图2是示出根据本公开的一些实施方式的示例性视频编码器的框图。
图3是示出根据本公开的一些实施方式的示例性视频解码器的框图。
图4是示出根据本公开的一些实施方式的QTBT结构的示意图。
图5是示出根据本公开的一些实施方式的划分为CTU的图片的示例的示意图。
图6是示出根据本公开的一些实施方式的多类型树划分模式的示意图。
图7是示出根据本公开的一些实施方式的将CU划分为三角形预测单元的示意图。
图8是示出根据本公开的一些实施方式的邻近块的位置的示意图。
图9是示出根据本公开的一些实施方式的利用加权因子集合进行加权的示例的示意图。
图10是示出根据本公开的一些实施方式的用于对三角形预测标志进行编解码的上下文推导的示意图。
图11是示出根据本公开的一些实施方式的PU分区的示例的示意图。
图12是示出根据本公开的一些实施方式的空间合并候选的位置的示意图。
图13是示出根据本公开的一些实施方式的时间合并候选的运动矢量缩放的示意图。
图14是示出根据本公开的一些实施方式的时间合并候选的候选位置的示意图。
图15是示出根据本公开的一些实施方式的用于视频编解码的示例性装置的框图。
图16是示出根据本公开的一些实施方式的用于使用三角形预测的运动补偿预测的视频编解码的示例性过程的流程图。
图17是示出根据本公开的一些实施方式的用于三角形预测标志的视频编解码的示例性过程的流程图。
具体实施方式
现在将详细参照具体实施方式,在附图中示出具体实施方式的示例。在以下详细描述中,阐述了很多非限制性具体细节以便帮助理解本文呈现的主题。但是对于本领域普通技术人员将显而易见的是,可使用各种替代方案。例如,对于本领域普通技术人员将显而易见的是,本文呈现的主题可在具有数字视频能力的许多类型的电子设备上实现。
每个附图中的元件的描述可参考其它附图的元件。相同的附图标记可指代附图中的相同元件,包括相同元件的可替代实施例。
贯穿本说明书对“一个实施例”、“实施例”、“示例”、“一些实施例”、“一些示例”或类似语言的引用表示所描述的特定特征、结构或特性被包括在至少一个实施例或示例中。因此,贯穿本说明书的短语“在一个实施例中”、“在示例中”、“在一些实施例中”和类似语言的实例可以但不一定全部指代相同的实施例。它可包括或者可不包括所公开的所有实施例。除非另有明确说明,否则结合一个或一些实施例描述的特征、结构、元件或特性也适用于其它实施例。
附图中的示意性流程图和/或示意性框图示出了根据各种实施例的不同装置、系统、方法和程序产品的可能实施方式的架构、功能和操作。在这方面,示意性流程图和/或示意性框图中的每个框可表示模块、段或代码的一部分,其包括用于实现指定逻辑功能的代码的一个或更多个可执行指令。然而,相关领域的技术人员将认识到,流程图不一定需要按照所示顺序进行实施,并且能够在没有一个或更多个特定步骤或具有未示出的其它步骤的情况下进行实施。
还应注意,在一些可替代实施方式中,在所标识的框中指出的功能可不按附图中指出的顺序发生。例如,连续示出的两个框实际上可基本同时执行,或者所述框有时可以以相反的顺序执行,这取决于所涉及的功能。其它步骤和方法可被设想为在功能、逻辑或效果上等同于所示附图的一个或更多个框或其部分。
本公开中使用的术语仅用于描述特定示例的目的,并不旨在限制本公开。除非另有明确说明,否则术语“包括”、“包含”、“具有”及其变体意指“包括但不限于”。
还应理解,这些术语指定所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除存在或添加一个或更多个其它特征、整数、步骤、操作、元件、组件和/或其组合。
除非另有明确说明,否则列举的项目列表并不指示任何或所有项目是相互排斥的。
如在本公开和所附权利要求中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,并且应被解释为等同于“一个或更多个”或“至少一个”,除非上下文另有明确说明。
应当理解,如本文所使用的术语“和/或”是指并包括一个或更多个相关联的所列项目的任何和所有可能的组合。例如,“A和/或B”可指以下三种组合中的任何一种:仅存在A,仅存在B,以及A和B两者共存。
字符“/”通常指示相关联的项目的“或”关系,但是也可包括相关联的项目的“与”关系。例如,除非上下文另有说明,否则“A/B”还可包括A和B两者的共存。
在整个公开内容中,除非另有明确说明,否则术语“第一”、“第二”、“第三”等都用作仅用于提及相关元件(例如,设备、组件、组合物、步骤等)的命名,而不指示任何空间或时间顺序。例如,“第一设备”和“第二设备”可指两个单独形成的设备,或者同一设备的两个部分、组件或操作状态,并且可被任意命名。
第一元件和第二元件可独立地存在。例如,一些实施例可仅包括第二元件,而没有任何第一元件。因此,可在描述第一元件之前或者在不描述第一元件的情况下描述第二元件。例如,方法或过程的“第一步骤”可在“第二步骤”之后或与“第二步骤”同时进行或执行。
如本文所使用的,取决于上下文,术语“如果”或“当......时”可被理解为表示“在......时”或“响应于......”。这些术语如果出现在权利要求中,则可不指示相关限制或特征是有条件的或可选的。例如,方法可包括以下步骤:i)当条件X存在时或如果条件X存在,执行功能或动作X',以及ii)当条件Y存在时或如果条件Y存在,执行功能或动作Y'。可能需要利用执行功能或动作X'的能力和执行功能或动作Y'的能力来实现方法,而功能X'和Y'都可在多次执行该方法时在不同时间执行。还可利用检测或评估满足条件X的能力以及检测或评估满足条件Y的能力来实现方法。
术语“模块”、“子模块”、“电路”、“子电路”、“电路系统”、“子电路系统”、“单元”或“子单元”可包括存储可由一个或更多个处理器执行的代码或指令的存储器(共享、专用或组合)。模块可包括具有或不具有存储的代码或指令的一个或更多个电路。模块或电路可包括直接或间接连接的一个或更多个组件。这些组件可以或可不物理地附接到彼此或彼此相邻定位。
单元或模块可纯粹通过软件、纯粹通过硬件或通过硬件和软件的组合来实现。在纯软件实施方式中,例如,单元或模块可包括直接或间接链接在一起的功能上相关的代码块或软件组件,以便执行特定功能。
图1是示出根据本公开的一些实施方式的用于对视频块进行编码和解码的示例性系统10的框图。如图1中所示,系统10包括源设备12,源设备12生成并编码稍后将由目标设备14进行解码的视频数据。源设备12和目标设备14可以是各种各样的电子设备中的任何电子设备,包括台式计算机或膝上型计算机、平板计算机、智能电话、机顶盒、数字电视、相机、显示器设备、数字媒体播放器、视频游戏机、视频流传输设备等。在一些实施方式中,源设备12和目标设备14配备有无线通信能力。
在一些实施方式中,目标设备14可经由链路16接收待解码的编码视频数据。链路16可以是能够将编码视频数据从源设备12移动到目标设备14的任何类型的通信介质或设备。在一个示例中,链路16可以是使源设备12能够实时地将编码视频数据直接发送到目标设备14的通信介质。编码视频数据可根据通信标准(诸如无线通信协议)被调制,并且被发送到目标设备14。通信介质可以是任何无线或有线通信介质,诸如射频(RF)频谱或一个或更多个物理传输线。通信介质可形成基于分组的网络(例如,局域网、广域网或诸如互联网的全球网)的一部分。通信介质可包括路由器、交换机、基站或可有利于促进从源设备12到目标设备14的通信的任何其它装置。
在一些其它实施方式中,编码视频数据可从输出接口22被发送到存储设备32。随后,存储设备32中的编码视频数据可由目标设备14经由输入接口28被访问。存储设备32可包括各种分布式或本地访问的数据存储介质中的任何数据存储介质,诸如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪存存储器、易失性或非易失性存储器、或者用于存储编码视频数据的任何其它合适的数字存储介质。在另一示例中,存储设备32可对应于文件服务器或可保持由源设备12生成的编码视频数据的另一中间存储设备。目标设备14可从存储设备32经由流传输或下载来访问存储的视频数据。文件服务器可以是能够存储编码视频数据并且将编码视频数据发送到目标设备14的任何类型的计算机。示例性文件服务器包括web服务器(例如,用于网站)、FTP服务器、网络附属存储(NAS)设备或本地磁盘驱动器。目标设备14可通过适合于访问存储在文件服务器上的编码视频数据的任何标准数据连接来访问编码视频数据,标准数据连接包括无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或无线信道和有线连接两者的组合。编码视频数据从存储设备32的传输可以是流传输、下载传输或流传输和下载传输两者的组合。
如图1中所示,源设备12包括视频源18、视频编码器20和输出接口22。视频源18可包括诸如以下项的源或此类源的组合:视频捕获设备(例如,摄像机)、包含先前捕获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口、和/或用于生成作为源视频的计算机图形数据的计算机图形系统。作为一个示例,如果视频源18是安全监控系统的摄像机,则源设备12和目标设备14可以是相机电话或视频电话。然而,本公开中所描述的实施方式通常可适用于视频编码/解码,并且可应用于无线和/或有线应用。
可由视频编码器20对捕获、预先捕获或计算机生成的视频进行编码。可经由源设备12的输出接口22直接将编码视频数据发送到目标设备14。还可(或可选地)将编码视频数据存储到存储设备32上以供稍后被目标设备14或其它设备访问,以用于解码和/或回放。输出接口22可进一步包括调制解调器和/或发送器。
目标设备14包括输入接口28、视频解码器30和显示器设备34。输入接口28可包括接收器和/或调制解调器,并且通过链路16接收编码视频数据。通过链路16通信传送或在存储设备32上提供的编码视频数据可包括由视频编码器20生成的各种语义元素以供视频解码器30在对视频数据进行解码时使用。此类语义元素可被包括在通信介质上发送、存储在存储介质上或存储在文件服务器上的编码视频数据内。
在一些实施方式中,目标设备14可包括显示器设备34,显示器设备34可以是集成显示器设备或被配置为与目标设备14通信的外部显示器设备。显示器设备34将解码视频数据显示给用户,并且可以是各种显示器设备中的任何显示器设备,诸如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示器设备。
视频编码器20和视频解码器30可根据专有标准或行业标准(例如,VVC、HEVC、MPEG-4、Part 10、高级视频编码(AVC))或此类标准的扩展进行操作。应当理解,本公开不限于特定的视频编码/解码标准,并且可适用于其它视频编码/解码标准。通常认为源设备12的视频编码器20可被配置为根据这些当前标准或未来标准中的任何标准对视频数据进行编码。类似地,还通常认为目标设备14的视频解码器30可被配置为根据这些当前标准或未来标准中的任何标准对视频数据进行解码。
视频编码器20和视频解码器30可分别被实现为各种合适的编码器电路中的任何电路,诸如一个或更多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分地以软件实现时,电子设备可将用于软件的指令存储于合适的非暂时性计算机可读介质中,并且使用一个或更多个处理器执行硬件中的指令以执行本公开中所公开的视频编码/解码操作。视频编码器20和视频解码器30中的每一个可被包括在一个或更多个编码器或解码器中,编码器或解码器中的任一者可被集成为相应设备中的组合式编码器/解码器(CODEC)的一部分。
图2是示出根据本公开中描述的一些实施方式的示例性视频编码器20的框图。视频编码器20可执行对视频帧内的视频块的帧内预测编码和帧间预测编码。帧内预测编码依赖于空间预测以减少或移除给定视频帧或图片内的视频数据中的空间冗余。帧间预测编码依赖于时间预测以减少或移除视频序列的相邻视频帧或图片内的视频数据中的时间冗余。
如图2中所示,视频编码器20包括视频数据存储器40、预测处理单元41、解码图片缓冲器(DPB)64、加法器50、变换处理单元52、量化单元54和熵编码单元56。预测处理单元41进一步包括运动估计单元42、运动补偿单元44、分割单元45、帧内预测处理单元46和帧内块复制(IBC)单元48和帧内/帧间模式决定单元49。在一些实施方式中,视频编码器20还包括用于视频块重建的反量化单元58、逆变换处理单元60和加法器62。去块滤波器可位于加法器62与DPB 64之间以对块边界进行滤波以从重建视频去除块效应。除了去块滤波器之外,还可使用环路滤波器63来对加法器62的输出进行滤波。视频编码器20可采取固定或可编程硬件单元的形式,或者可分散在固定或可编程硬件单元中的一个或更多个中。
视频数据存储器40可存储将由视频编码器20的组件编码的视频数据。视频数据存储器40中的视频数据可例如从视频源18获得。DPB 64是存储供视频编码器20(例如,以帧内或帧间预测编码模式)在对视频数据进行编码时使用的参考视频数据的缓冲器。视频数据存储器40和DPB 64可以是各种存储器设备中的任何存储器设备。在各种示例中,视频数据存储器40可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
如图2中所示,在接收到视频数据之后,预测处理单元41内的分割单元45将视频数据划分为视频块。此分割还可包括根据与视频数据相关联的预定义的划分结构(诸如四叉树结构)将视频帧划分为条带、区块(tile)或其它更大编码单元(CU)。视频帧可被划分为多个视频块(或被称为分区的视频块集合)。预测处理单元41可基于误差结果(例如,编码速率和失真等级)为当前视频块选择多个可行预测编码模式中的一个,诸如多个帧内预测编码模式中的一个或多个帧间预测编码模式中的一个。预测处理单元41可将所得的帧内预测编码块或帧间预测编码块提供给加法器50以生成残差块,并且提供给加法器62以重建编码块以用于随后作为参考帧的一部分使用。预测处理单元41还将语义元素(诸如运动矢量、帧内模式指示符、分割信息和其它此类语义信息)提供给熵编码单元56。
为了选择用于当前视频块的合适的帧内预测编码模式,预测处理单元41内的帧内预测处理单元46可以与和待编码的当前块在同一帧中的一个或更多个邻近块相关地执行当前视频块的帧内预测编码以提供空间预测。预测处理单元41内的运动估计单元42和运动补偿单元44与一个或更多个参考帧中的一个或更多个预测块相关地执行当前视频块的帧间预测编码以提供时间预测。视频编码器20可执行多个编码遍次,例如,来为视频数据的每个块选择合适的编码模式。
在一些实施方式中,运动估计单元42通过根据视频帧序列内的预定模式生成运动矢量来确定用于当前视频帧的帧间预测模式,运动矢量指示当前视频帧内的视频块的预测单元(PU)相对于参考视频帧内的预测块的位移。由运动估计单元42执行的运动估计是生成估计针对视频块的运动的运动矢量的过程。例如,运动矢量可指示当前视频帧或图片内的视频块的PU相对于与当前帧内正被编码的当前块(或其它编码单元)相关的参考帧内的预测块(或其它编码单元)的位移。预定模式可将序列中的视频帧指定为P帧或B帧。帧内BC单元48可以以与由运动估计单元42确定用于帧间预测的运动矢量类似的方式确定用于帧内BC编码的矢量(例如,块矢量),或可利用运动估计单元42确定块矢量。
在像素差方面,预测块是被认为与待编码视频块的PU紧密匹配的参考帧的块,像素差可由绝对差总和(SAD)、平方差总和(SSD)或其它差度量确定。在一些实施方式中,视频编码器20可计算用于DPB 64中存储的参考帧的子整数像素位置的值。例如,视频编码器20可对参考帧的四分之一像素位置、八分之一像素位置或其它分数像素位置的值进行内插。因此,运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像素精度的运动矢量。
运动估计单元42通过以下来计算针对帧间预测编码帧中的视频块的PU的运动矢量:将PU的位置与从第一参考帧列表(例如,列表0)或第二参考帧列表(例如,列表1)选择的参考帧的预测块的位置进行比较,第一参考帧列表和第二参考帧列表中的每一个标识存储在DPB 64中的一个或更多个参考帧。运动估计单元42将计算的运动矢量发送到运动补偿单元44,然后发送到熵编码单元56。
由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42确定的运动矢量提取或生成预测块。在接收到针对当前视频块的PU的运动矢量后,运动补偿单元44可在参考帧列表中的一个参考帧列表中定位运动矢量所指向的预测块,从DPB 64取回预测块,并且将预测块转发到加法器50。然后,加法器50通过从正被编码的当前视频块的像素值减去由运动补偿单元44提供的预测块的像素值来形成像素差值的残差视频块。形成残差视频块的像素差值可包括亮度差分量或色度差分量或两者。运动补偿单元44还可生成与视频帧的视频块相关联的语义元素以供视频解码器30在对视频帧的视频块进行解码时使用。语义元素可包括例如定义用于识别预测块的运动矢量的语义元素、指示预测模式的任何标记、或本文描述的任何其它语义信息。应注意,运动估计单元42和运动补偿单元44可高度集成,但它们出于概念目的而单独说明。
在一些实施方式中,帧内BC单元48可以以与上文结合运动估计单元42和运动补偿单元44所描述的方式类似的方式生成矢量并提取预测块,但是这些预测块在与正被编码的当前块的同一帧中,并且这些矢量被称为块矢量而非运动矢量。具体地,帧内BC单元48可确定将用于对当前块进行编码的帧内预测模式。在一些示例中,帧内BC单元48可例如在单独的编码遍次期间使用各种帧内预测模式来对当前块进行编码,并且通过率失真分析来测试它们的性能。接下来,帧内BC单元48可在各种测试的帧内预测模式中选择合适的帧内预测模式以使用并相应地生成帧内模式指示符。例如,帧内BC单元48可使用率失真分析针对各种测试的帧内预测模式计算率失真值,并且在测试的模式中选择具有最佳率失真特性的帧内预测模式作为合适的帧内预测模式来使用。率失真分析大体上确定编码块与被编码以生成编码块的原始未编码块之间的失真(或误差)量、以及用于产生编码块的比特率(即,比特数量)。帧内BC单元48可从针对各种编码块的失真和速率计算比率,以确定哪个帧内预测模式展现针对块的最佳率失真值。
在其它示例中,帧内BC单元48可全部或部分地使用运动估计单元42和运动补偿单元44来执行根据本文描述的实施方式的用于帧内BC预测的此类功能。在任一情况下,对于帧内块复制,在像素差方面,预测块可以是被认为与待编码的块紧密匹配的块,像素差可由绝对差总和(SAD)、平方差总和(SSD)或其它差度量确定,并且预测块的识别可包括计算针对子整数像素位置的值。
无论预测块是来自根据帧内预测的同一帧还是来自根据帧间预测的不同帧,视频编码器20可通过从正被编码的当前视频块的像素值减去预测块的像素值来形成像素差值,从而形成残差视频块。形成残差视频块的像素差值可包括亮度分量差和色度分量差两者。
作为如上文所描述的由运动估计单元42和运动补偿单元44执行的帧间预测或由帧内BC单元48执行的帧内块复制预测的替代方案,帧内预测处理单元46可对当前视频块进行帧内预测。具体地,帧内预测处理单元46可确定帧内预测模式以用于对当前块进行编码。为此,帧内预测处理单元46可例如在单独的编码遍次期间使用各种帧内预测模式来对当前块进行编码,并且帧内预测处理单元46(或在一些示例中,模式选择单元)可从测试的帧内预测模式中选择合适的帧内预测模式来使用。帧内预测处理单元46可将指示针对块选择的帧内预测模式的信息提供给熵编码单元56。熵编码单元56可将指示选择的帧内预测模式的信息编码到比特流中。
在预测处理单元41经由帧间预测或帧内预测确定针对当前视频块的预测块之后,加法器50通过从当前视频块减去预测块来形成残差视频块。残差块中的残差视频数据可被包括在一个或更多个变换单元(TU)中并且提供给变换处理单元52。变换处理单元52使用变换(诸如离散余弦变换(DCT)或概念上类似的变换)将残差视频数据变换为残差变换系数。
变换处理单元52可将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步减小比特率。量化过程还可减小与系数中的一些或全部相关联的比特深度。可通过调整量化参数来修改量化程度。在一些示例中,量化单元54可随后执行对包括量化的变换系数的矩阵的扫描。可选地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56使用例如上下文自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)、基于语义的上下文自适应二进制算术编码(SBAC)、概率区间分割熵(PIPE)编码或另一熵编码方法或技术,将量化的变换系数熵编码成视频比特流。然后,编码的比特流可被发送到视频解码器30,或存档于存储设备32中以供稍后发送到视频解码器30或由视频解码器30取回。熵编码单元56还可对用于正被编码的当前视频帧的运动矢量和其它语义元素进行熵编码。
反量化单元58和逆变换处理单元60分别应用反量化和逆变换以在像素域中重建残差视频块以用于生成用于预测其它视频块的参考块。如上文指出的,运动补偿单元44可从存储在DPB 64中的帧的一个或更多个参考块生成运动补偿预测块。运动补偿单元44还可将一个或更多个插值滤波器应用于预测块以计算子整数像素值以用于在运动估计时使用。
加法器62将重建的残差块加到由运动补偿单元44产生的运动补偿预测块来产生参考块以存储在DPB 64中。然后,参考块可由帧内BC单元48、运动估计单元42和运动补偿单元44用作预测块以对后续视频帧中的另一视频块进行帧间预测。
在使用视频编码器20进行视频编码的示例中,将视频帧分割为块以进行处理。对于每个给定的视频块,基于帧间预测或帧内预测形成预测。在帧间预测中,可基于来自先前重建帧的像素,通过运动估计和运动补偿来形成预测因子或预测块。在帧内预测中,可基于当前帧中的重建像素来形成预测因子。通过模式决定,可选择最佳预测因子来预测当前块。
将预测残差或残差块(即,当前块与其预测因子之间的差)发送到变换模块,例如,变换处理单元52。然后将变换系数发送到量化模块(例如,量化单元54)以进行熵约简。将量化的系数反馈到熵编解码模块(例如,熵编码单元56)以产生压缩的视频比特流。如图2中所示,来自帧间和/或帧内预测模块的预测相关信息(诸如,块分割信息、运动矢量、参考图片索引和帧内预测模式等)也经过熵编解码模块(例如,熵编码单元56),然后被保存到比特流中。
在视频编码器20中,可能需要解码器相关模块以便重建像素用于预测目的。首先,通过反量化和逆变换重建预测残差。然后将重建的预测残差与预测因子组合以产生针对当前块的未经滤波的重建像素。
为了提高编解码效率和视觉质量,通常使用环路滤波器63。例如,去块滤波器在AVC、HEVC以及VVC中可用。在HEVC中,可定义被称为SAO(样点自适应偏移)的额外环路滤波器以进一步改进编解码效率。在VVC中,可采用被称为ALF(自适应环路滤波器)的环路滤波器63。
这些环路滤波器操作是可选的。打开环路滤波器通常有助于提高编解码效率和视觉质量。它们也可在编码器决定节省计算复杂度时被关闭。
应注意,帧内预测通常基于未经滤波的重建像素,而帧间预测基于经过滤波的重建像素(如果这些滤波器被编码器打开)。
图3是示出根据本公开的一些实施方式的示例性视频解码器30的框图。视频解码器30包括视频数据存储器79、熵解码单元80、预测处理单元81、反量化单元86、逆变换处理单元88、加法器90和DPB 92。预测处理单元81进一步包括运动补偿单元82、帧内预测单元84、帧内BC单元85和帧内/帧间模式选择单元87。视频解码器30可执行与上文结合图2关于视频编码器20所描述的编码过程基本互逆的解码过程。例如,运动补偿单元82可基于从熵解码单元80接收的运动矢量生成预测数据,而帧内预测单元84可基于从熵解码单元80接收的帧内预测模式指示符生成预测数据。
在使用视频解码器30进行视频解码的示例中,通过熵解码单元80对接收的比特流进行解码以推导量化的系数等级(或量化的系数)和预测相关信息。然后通过反量化单元86和逆变换处理单元88来处理量化的系数等级以获得重建的残差块。基于解码的预测相关信息,通过帧内预测或运动补偿过程来形成预测因子或预测块。通过对重建的残差块和预测因子求和来获得未经滤波的重建像素。在打开环路滤波器的情况下,对这些像素执行滤波操作来推导最终重建视频以用于输出。
在一些示例中,视频解码器30的单元可被分派任务以执行本公开的实施方式。此外,在一些示例中,本公开的实施方式可分散在视频解码器30的多个单元中的一个或更多个单元中。例如,帧内BC单元85可单独地或与视频解码器30的其它单元(诸如,运动补偿单元82、帧内预测单元84和熵解码单元80)组合地执行本公开的实施方式。在一些示例中,视频解码器30可不包括帧内BC单元85,并且帧内BC单元85的功能可由预测处理单元81的其它组件(诸如运动补偿单元82)执行。
视频数据存储器79可存储将由视频解码器30的其它组件进行解码的视频数据,诸如编码视频比特流。存储在视频数据存储器79中的视频数据可例如从存储设备32、从本地视频源(诸如相机)、经由视频数据的有线或无线网络通信,或通过访问物理数据存储介质(例如,闪存驱动器或硬盘)获得。视频数据存储器79可包括存储来自编码视频比特流的编码视频数据的编码图片缓冲器(CPB)。视频解码器30的解码图片缓冲器(DPB)92存储参考视频数据以供视频解码器30(例如,以帧内或帧间预测编码模式)在对视频数据进行解码时使用。视频数据存储器79和DPB 92可由各种存储器设备中的任何存储器设备形成,诸如动态随机存取存储器(DRAM)(包括同步DRAM(SDRAM))、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器设备。出于说明性目的,视频数据存储器79和DPB 92在图3中描绘为视频解码器30的两个不同组件。但是对于本领域的技术人员将显而易见的是,视频数据存储器79和DPB 92可由同一存储器设备或单独存储器设备提供。在一些示例中,视频数据存储器79可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
在解码过程期间,视频解码器30接收表示编码视频帧的视频块和相关联的语义元素的编码视频比特流。视频解码器30可在视频帧级和/或视频块级接收语义元素。视频解码器30的熵解码单元80对比特流进行熵解码以生成量化系数、运动矢量或帧内预测模式指示符、以及其它语义元素。然后,熵解码单元80将运动矢量和其它语义元素转发到预测处理单元81。
当视频帧被编码为帧内预测编码(I)帧或用于其它类型的帧中的帧内编码预测块时,预测处理单元81的帧内预测单元84可基于用信号发送的帧内预测模式和来自当前帧的先前解码块的参考数据来生成用于当前视频帧的视频块的预测数据。
当视频帧被编码为帧间预测编码(即,B或P)帧时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动矢量和其它语义元素产生针对当前视频帧的视频块的一个或更多个预测块。预测块中的每一个可从参考帧列表中的一个参考帧列表内的参考帧产生。视频解码器30可基于存储在DPB 92中的参考帧使用默认构建技术来构建参考帧列表,例如,列表0和列表1。
在一些示例中,当根据本文描述的帧内BC模式对视频块进行编码时,预测处理单元81的帧内BC单元85基于从熵解码单元80接收的块矢量和其它语义元素产生针对当前视频块的预测块。预测块可在由视频编码器20定义的与当前视频块的同一图片的重建区域内。
运动补偿单元82和/或帧内BC单元85通过解析运动矢量和其它语义元素来确定针对当前视频帧的视频块的预测信息,然后使用该预测信息产生针对正被解码的当前视频块的预测块。例如,运动补偿单元82使用接收到的语义元素中的一些语义元素来确定用于对视频帧的视频块进行编码的预测模式(例如,帧内预测或帧间预测)、帧间预测帧类型(例如,B或P)、用于针对帧的参考帧列表中的一个或更多个的构建信息、用于帧的每个帧间预测编码视频块的运动矢量、用于帧的每个帧间预测编码视频块的帧间预测状态、以及用于对当前视频帧中的视频块进行解码的其它信息。
类似地,帧内BC单元85可使用接收到的语义元素中的一些语义元素,例如标记,以确定当前视频块是使用帧内BC模式预测的、帧的哪些视频块在重建区域内且应被存储在DPB 92中的构建信息、用于帧的每个帧内BC预测视频块的块矢量、用于帧的每个帧内BC预测视频块的帧内BC预测状态、以及用于对当前视频帧中的视频块进行解码的其它信息。
运动补偿单元82还可使用如由视频编码器20在视频块的编码期间使用的内插滤波器执行内插,以计算针对参考块的子整数像素的内插值。在这种情况下,运动补偿单元82可从接收到的语义元素确定由视频编码器20使用的内插滤波器,并且使用这些内插滤波器来产生预测块。
反量化单元86使用由视频编码器20针对视频帧中的每个视频块计算的相同的参数,对在比特流中提供且由熵解码单元80熵解码的量化的变换系数进行反量化,以确定量化程度。逆变换处理单元88将逆变换(例如,逆DCT、逆整数变换或概念上类似的逆变换过程)应用于变换系数,以便在像素域中重建残差块。
在运动补偿单元82或帧内BC单元85基于矢量和其它语义元素生成针对当前视频块的预测块之后,加法器90通过将来自逆变换处理单元88的残差块与由运动补偿单元82和帧内BC单元85生成的对应预测块相加,来重建针对当前视频块的解码视频块。环路滤波器91可位于加法器90与DPB 92之间以进一步处理解码视频块。然后,将给定帧中的解码视频块存储在DPB92中,DPB 92存储用于接下来的视频块的后续运动补偿的参考帧。DPB 92或与DPB 92分离的存储器设备还可存储解码视频以用于稍后呈现在显示器设备(例如,图1的显示器设备34)上。
在典型的视频编码过程中,视频序列通常包括帧或图片的有序集合。每一帧可包括三个样点阵列,表示为SL、SCb和SCr。SL是亮度样点的二维阵列。SCb是Cb色度样点的二维阵列。SCr是Cr色度样点的二维阵列。在其它情况下,帧可以是单色的,因此仅包括亮度样点的一个二维阵列。
图4是示出根据本公开的一些实施方式的四叉树加二叉树(QTBT)结构的示意图。
上文所提及的视频编码/解码标准(诸如VVC、JEM、HEVC、MPEG-4、Part 10)在概念上类似。例如,它们都使用基于块的处理。以下阐述一些标准中的块分割方案。
HEVC是以基于混合块的运动补偿变换编码架构为基础。用于压缩的基本单元被称为编码树单元(CTU)。对于4:2:0色度格式,最大CTU尺寸被定义为多达64乘64亮度像素和两个32乘32色度像素的块。每个CTU可包含一个编码单元(CU)或递归地被划分为四个较小CU,直到达到预定义的最小CU尺寸为止。每个CU(也称为叶CU)包含一个或多个预测单元(PU)和变换单元(TU)树。
一般来说,除单色内容外,CTU可包括一个亮度编码树块(CTB)和两个对应的色度CTB;CU可包括一个亮度编码块(CB)和两个对应的色度CB;PU可包括一个亮度预测块(PB)和两个对应的色度PB;并且TU可包括一个亮度变换块(TB)和两个对应的色度TB。然而,可能发生例外,这是因为对于亮度和色度两者,最小TB尺寸是4×4(即,对于4:2:0颜色格式不支持2×2色度TB)并且不管对应的帧内亮度CB中的帧内亮度PB的数量如何,每个帧内色度CB总是仅具有一个帧内色度PB。
对于帧内CU,亮度CB可通过一个或四个亮度PB预测,并且两个色度CB中的每一个色度CB总是通过一个色度PB预测,其中每个亮度PB具有一个帧内亮度预测模式,并且两个色度PB共享一个帧内色度预测模式。此外,对于帧内CU,TB尺寸不能大于PB尺寸。在每个PB中,应用帧内预测以从TB的邻近重建样点预测PB内部的每个TB的样点。对于每个PB,除了33个方向帧内预测模式之外,还支持DC模式和平面模式以分别预测平坦区域和逐渐变化的区域。
对于每个帧间PU,可选择包括帧间、跳过和合并的三种预测模式中的一个。一般而言,引入运动矢量竞争(MVC)方案以从包括空间运动候选和时间运动候选的给定候选集合中选择运动候选。对于运动估计的多个参考使得在2个可能的重建参考图片列表(即列表0和列表1)中找到最佳参考。对于帧间模式(称为AMVP模式,其中AMVP代表高级运动矢量预测),发送帧间预测指示符(列表0、列表1或双向预测)、参考索引、运动候选索引、运动矢量差(MVD)和预测残差。对于跳过模式和合并模式,仅发送合并索引,并且当前PU从由编码的合并索引所参考的邻近PU继承帧间预测指示符、参考索引和运动矢量。在跳过编码的CU的情况下,残差信号也被省略。
联合探索测试模型(JEM)建立在HEVC测试模型之上。HEVC的基本编码和解码流程在JEM中保持不变;然而,最重要的模块(包括块结构、帧内和帧间预测、残差变换、环路滤波器和熵编解码的模块)的设计元素被稍微修改,并且添加了另外的编码工具。JEM中包括以下新的编码特征。
在HEVC中,通过使用表示为编码树的四叉树结构将CTU划分为CU以适应各种局部特性。使用图片间(时间)预测还是使用图片内(空间)预测对图片区域进行编码的决定是在CU级做出的。可根据PU划分类型进一步将每个CU划分为一个、两个或四个PU。在一个PU内部,应用相同的预测过程,并且基于PU将相关信息发送到解码器。在通过基于PU划分类型应用预测过程而获得残差块之后,可根据CU的类似于编码树的另一四叉树结构将CU分割为变换单元(TU)。HEVC结构的关键特征之一是它具有包括CU、PU和TU的多个分割概念。
QTBT结构去除了多个分割类型的概念,即,它去除了对CU、PU和TU概念的区分,并且支持对于CU分割形状的更大灵活性。在QTBT块结构中,CU可具有正方形或矩形形状。如图4中所示,首先通过四元树(即,四叉树)结构对编码树单元(CTU)进行分割。可通过二叉树结构进一步对四叉树叶节点进行分割。在二叉树划分中存在两种划分类型:对称水平划分和对称垂直划分。二叉树叶节点被称为编码单元(CU),并且这样的分区用于预测和变换处理而不再进行任何进一步分割。这意味着CU、PU和TU在QTBT编码块结构中具有相同的块尺寸。在JEM中,CU有时由不同颜色分量的编码块(CB)组成,例如,在4:2:0色度格式的P和B条带的情况下,一个CU包含一个亮度CB和两个色度CB,并且CU有时由单个分量的CB组成,例如,在I条带的情况下,一个CU仅包含一个亮度CB或仅包含两个色度CB。
针对QTBT分割方案定义以下参数。
-CTU size:四叉树的根节点尺寸,与HEVC中的概念相同;
-MinQTSize:允许的最小四叉树叶节点尺寸;
-MaxBTSize:允许的最大二叉树根节点尺寸;
-MaxBTDepth:允许的最大二叉树深度;
-MinBTSize:允许的最小二叉树叶节点尺寸。
在QTBT分割结构的一个示例中,CTU尺寸被设置为128×128亮度样点与两个对应的64×64色度样点块(具有4:2:0色度格式),MinQTSize被设置为16×16,MaxBTSize被设置为64×64,MinBTSize(针对宽度和高度两者)被设置为4×4,并且MaxBTDepth被设置为4。首先将四叉树分割应用于CTU以产生四叉树叶节点。四叉树叶节点可具有从16×16(即,MinQTSize)到128×128(即,CTU size)的尺寸。如果四叉树叶节点是128×128,则由于尺寸超过MaxBTSize(即,64×64),所以它将不通过二叉树被进一步划分。否则,四叉树叶节点可通过二叉树被进一步分割。因此,四叉树叶节点也是二叉树的根节点,并且其二叉树深度为0。当二叉树深度达到MaxBTDepth(即,4)时,不考虑进一步划分。当二叉树节点具有等于MinBTSize的宽度(即,4)时,不考虑进一步水平划分。类似地,当二叉树节点具有等于MinBTSize的高度时,不考虑进一步垂直划分。通过预测和变换处理进一步处理二叉树的叶节点,而不再进行任何进一步分割。在JEM中,最大CTU尺寸为256×256亮度样点。
图4示出了通过使用QTBT方案的块分割的示例以及对应的树表示。实线指示四叉树划分,并且虚线指示二叉树划分。如图4中所示,首先通过四叉树结构对编码树单元(CTU)400进行分割,并且通过四叉树结构或二叉树结构进一步对四个四叉树叶节点402、404、406、408中的三个进行分割。例如,通过四叉树划分进一步对四叉树叶节点406进行分割;通过二叉树划分将四叉树叶节点404进一步分割为两个叶节点404a、404b;并且还通过二叉树划分进一步对四叉树叶节点402进行分割。在二叉树的每个划分(即,非叶)节点中,用信号发送一个标志以指示使用哪个划分类型(即,水平或垂直),其中0指示水平划分并且1指示垂直划分。例如,对于四叉树叶节点404,用信号发送0以指示水平划分,并且对于四叉树叶节点402,用信号发送1以指示垂直划分。对于四叉树划分,不需要指示划分类型,这是因为四叉树划分总是水平和垂直地对块进行划分以产生具有相等尺寸的4个子块。
另外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。当前,对于P和B条带,一个CTU中的亮度和色度CTB共享同一QTBT结构。然而,对于I条带,亮度CTB通过QTBT结构被分割为亮度CU,并且色度CTB通过另一QTBT结构被分割为色度CU。这表示I条带中的CU由亮度分量的编码块或两个色度分量的编码块组成,并且P或B条带中的CU由全部三个颜色分量的编码块组成。
在联合视频专家组(JVET)会议中,JVET定义了通用视频编码(VVC)的第一草案和VVC测试模型1(VTM1)编码方法。决定包括使用二划分和三划分编码块结构的具有嵌套多类型树的四叉树作为VVC的初始新编码特征。
在VVC中,图片分割结构将输入视频划分为被称为编码树单元(CTU)的块。使用具有嵌套多类型树结构的四叉树将CTU划分为编码单元(CU),其中叶编码单元(CU)定义了共享相同的预测模式(例如,帧内或帧间)的区域。这里,术语“单元”定义了图像的覆盖所有分量的区域;术语“块”用于定义覆盖特定分量(例如亮度)的区域,并且在考虑色度采样格式(诸如4:2:0)时可在空间位置上不同。
将图片分割为CTU
图5是示出根据本公开的一些实施方式的划分为CTU的图片的示例的示意图。
在VVC中,图片被划分为CTU序列,并且CTU概念与HEVC的CTU概念相同。对于具有三个样点阵列的图片,CTU由N×N的亮度样点块以及两个对应的色度样点块组成。图5示出划分为CTU 502的图片500的示例。
CTU中的亮度块的最大允许尺寸被指定为128×128(尽管亮度变换块的最大尺寸为64×64)。
使用树结构对CTU进行分割
图6是示出根据本公开的一些实施方式的多类型树划分模式的示意图。
在HEVC中,通过使用表示为编码树的四元树结构将CTU划分为CU以适应各种局部特性。使用图片间(时间)预测还是使用图片内(空间)预测对图片区域进行编码的决定是在叶CU级做出的。可根据PU划分类型进一步将每个叶CU划分为一个、两个或四个PU。在一个PU内部,应用相同的预测过程,并且基于PU将相关信息发送到解码器。在通过基于PU划分类型应用预测过程而获得残差块之后,可根据CU的类似于编码树的另一四元树结构将叶CU划分为变换单元(TU)。HEVC结构的关键特征之一是它具有包括CU、PU和TU的多个分割概念。
在VVC中,使用二划分和三划分分区结构的具有嵌套多类型树的四叉树来代替多个分割单元类型的概念,即,它去除了对CU、PU和TU概念的区分(除具有对于最大变换长度来说太大的尺寸的CU需要这种概念的区分之外),并且支持对于CU分割形状的更大灵活性。在编码树结构中,CU可具有正方形或矩形形状。首先通过四元树(即,四叉树)结构对编码树单元(CTU)进行分割。然后,可通过多类型树结构进一步对四元树叶节点进行分割。如图6所示,在多类型树结构中存在四种划分类型:垂直二划分602(SPLIT_BT_VER)、水平二划分604(SPLIT_BT_HOR)、垂直三划分606(SPLIT_TT_VER)和水平三划分608(SPLIT_TT_HOR)。多类型树叶节点被称为编码单元(CU),并且除非CU对于最大变换长度来说太大,否则此分区用于预测和变换处理而不再进行任何进一步分割。这表示,在大多数情况下,CU、PU和TU在具有嵌套多类型树编码块结构的四叉树中具有相同的块尺寸。当最大支持变换长度小于CU的颜色分量的宽度或高度时,出现例外。在VTM1中,CU由不同颜色分量的编码块(CB)组成,例如,一个CU包含一个亮度CB和两个色度CB(除非视频是单色的,即,仅具有一个颜色分量)。
将CU分割为多个预测单元
在VVC中,对于基于上文所述的结构分割出的每个CU,可对整个CU块或者以下面段落中所解释的子块方式执行块内容的预测。这种预测的操作单元被称为预测单元(或PU)。
在帧内预测(或帧内部预测)的情况下,PU的尺寸通常等于CU的尺寸。换句话说,对整个CU块执行预测。对于帧间预测(或帧之间预测),PU的尺寸可等于或小于CU的尺寸。换句话说,存在CU可被划分为多个PU以用于预测的情况。
PU尺寸小于CU尺寸的一些示例包括仿射预测模式、高级时间级运动矢量预测(ATMVP)模式和三角形预测模式等。
在仿射预测模式下,CU可被划分为多个4×4PU以用于预测。可针对每个4×4PU推导运动矢量并且可相应地对4×4PU执行运动补偿。在ATMVP模式下,CU可被划分为一个或多个8×8PU以用于预测。针对每个8×8PU推导运动矢量并且可相应地对8×8PU执行运动补偿。在三角形预测模式下,CU可被划分为两个三角形形状预测单元。针对每个PU推导运动矢量并且相应地执行运动补偿。对于帧间预测,支持三角形预测模式。下面阐述三角形预测模式的更多细节。
三角形预测模式
图7是示出根据本公开的一些实施方式的将CU划分为三角形预测单元的示意图。
三角形预测模式的概念是针对运动补偿预测引入三角形分区。如图7所示,CU702、704在对角线或反对角线方向上(即,从左上角到右下角的划分或从右上角到左下角的划分)被划分为两个三角形预测单元PU1和PU2。CU中的每个三角形预测单元使用其自己的从单向预测候选列表推导的单向预测运动矢量和参考帧索引进行帧间预测。在预测三角形预测单元之后,对对角线边缘执行自适应加权过程。然后,将变换和量化过程应用于整个CU。注意,该模式仅被应用于当前VVC中的跳过和合并模式。尽管在图7中,CU被示出为正方形块,但是三角形预测模式也可被应用于非正方形(即,矩形)形状CU。
单向预测候选列表可包括一或更多个候选,并且每个候选可以是运动矢量。因此,贯穿本公开,术语“单向预测候选列表”、“单向预测运动矢量候选列表”和“单向预测合并列表”可互换使用。
单向预测运动矢量候选列表
图8是示出根据本公开的一些实施方式的邻近块的位置的示意图。
在一些实例中,单向预测运动矢量候选列表可包括两个到五个单向预测运动矢量候选。在一些其他示例中,有可能是其他数量。它是从邻近块推导的。如图8中所示,单向预测运动矢量候选列表是从包括五个空间邻近块(1到5)和两个时间同位块(6到7)的七个邻近块推导的。将七个邻近块的运动矢量收集到第一合并列表中。然后,根据特定顺序基于第一合并列表运动矢量来形成单向预测候选列表。基于所述顺序,首先在单向预测运动矢量候选列表中放入来自第一合并列表的单向预测运动矢量,接着是双向预测运动矢量的参考图片列表0或L0运动矢量,然后是双向预测运动矢量的参考图片列表1或L1运动矢量,再接着是双向预测运动矢量的L0和L1运动矢量的平均运动矢量。此时,如果候选的数量仍然小于目标数量(其在当前VVC中为5),则将零运动矢量添加到列表以满足目标数量。
针对每个三角形PU基于其运动矢量推导预测因子。值得注意的是,所推导的预测因子覆盖比实际三角形PU更大的区域,使得沿两个三角形PU的共享对角线边缘存在两个预测因子的重叠区域。将自适应加权过程应用于两个预测因子之间的对角线边缘区域,以推导CU的最终预测。当前如下使用两个加权因子集合:
-第一加权因子集合:{7/8,6/8,4/8,2/8,1/8}和{7/8,4/8,1/8}分别用于亮度和色度样点;
-第二加权因子集合:{7/8,6/8,5/8,4/8,3/8,2/8,1/8}和{6/8,4/8,2/8}分别用于亮度和色度样点。
加权因子集合的选择基于两个三角形预测单元的运动矢量的比较。更具体地,当两个三角形预测单元的参考图片彼此不同或者它们的运动矢量差大于16个像素时,使用第二加权因子集合。否则,使用第一加权因子集合。图9示出了根据本公开的一些实施方式的利用加权因子集合进行加权的示例。在图9中,第一加权因子集合用于亮度样点902和色度样点904。
三角形预测模式语义和信令
在当前VVC中,使用三角形预测标志来用信号发送三角形预测模式。当CU以跳过模式或合并模式被编码时,用信号发送此标志。对于给定的CU,如果标志的值为1,则表示使用三角形预测模式对对应CU进行编码。否则,使用除三角形预测模式之外的预测模式对CU进行编码。
根据当前VVC标准草案,在跳过模式或合并模式中有条件地用信号发送三角形预测标志。首先,在序列参数集(或SPS)中用信号发送三角形预测工具启用/禁用标志。仅当此标志为真时,才在CU级用信号发送三角形预测标志。其次,仅在B条带中允许三角形预测工具。因此,仅在B条带中,在CU级用信号发送三角形预测标志。第三,仅针对具有等于或大于特定阈值的尺寸的CU用信号发送三角形预测模式。如果CU具有小于所述阈值的尺寸,则不用信号发送三角形预测标志。第四,仅针对下述CU用信号发送三角形预测标志:此CU未在包括仿射预测模式和ATMVP模式两者的子块合并模式下被编码。在上面列出的四种情况下,如果没有用信号发送三角形预测标志,则在解码器侧将其推断为0。在一些示例中,不在比特流中显式地用信号发送三角形预测标志。相反,当所有其它合并相关模式被用信号发送为禁用时,三角形预测模式被推断为启用。
根据当前VVC标准草案,当用信号发送三角形预测标志时,利用特定上下文使用CABAC的熵编码器用信号发送三角形预测标志。图10示出了根据本公开的一些实施方式的用于对三角形预测标志进行编解码的上下文推导,如图10所示,基于来自邻近块的三角形预测标志值形成上下文。
如图10所示,为了对当前块1000(或当前CU)的三角形预测标志进行编解码(即,编码或解码),推导来自顶部块1004和左侧块1002(或顶部CU和左侧CU)的三角形预测标志,并将它们的值相加。这导致与以下情况对应的三个可能的上下文:
1)左侧块和顶部块都具有三角形预测标志0;
2)左侧块和顶部块都具有三角形预测标志1;
3)其他。
针对三个上下文中的每一个维持单独的概率。一旦针对当前块确定上下文值,就使用与该上下文值对应的CABAC的概率模型对当前块的三角形预测标志进行编解码。
如果三角形预测标志为真,则进一步用信号发送与三角形预测模式相关的表索引值。该索引值可用于推导以下信息:
1)三角形预测分割方向,即块是从左上角到右下角被分割还是从右上角到左下角被分割;以及
2)针对两个分区中的每个分区的单向预测运动矢量候选列表中的运动矢量。
更具体地,这是通过表查找操作来实现的,例如,利用如表1所示的三角形预测合并列表索引信令表。在当前的VVC参考软件VTM中,该表是大小为40乘3的数组,被定义如下。
表1.三角形预测合并列表索引信令表
Figure BDA0004102188720000261
/>
Figure BDA0004102188720000271
该二维数组具有40行和3列。第一列的值指示分割方向,其中0指示一个分割方向,并且1指示另一分割方向。第二和第三列的值是分别针对两个分区(例如,两个三角形分区)中的每一个指向单向预测运动矢量候选列表中的对应单向预测运动矢量的索引值。如先前所说明的,根据当前VVC标准草案,单向预测运动矢量候选列表包括两个到五个单向预测运动矢量。索引值指示该列表中的哪个运动矢量将用于对应的三角形分区。
在三角形预测模式下,被用信号发送的表索引值在0到39的范围内。一旦索引值被解码,它就可用于根据上表查找包括三个数字的一行数据。这三个数字指示三角形预测分割方向以及针对三角形分区的两个运动矢量中的每个运动矢量的单向预测合并列表的合并列表索引值。
在当前VVC标准草案中,为了扩展和/或简化三角形预测模式,将三角形PU的想法扩展到预测单元的其它分区,如示出了根据本公开的一些实施方式的PU分区的示例的图11中所示。除了两个对角线三角形PU分区之外,三角形预测模式中使用的方法或概念可应用于其它PU分区。基本上,给定图11中所示的分区类型,针对每个分区(例如,PU0和PU1)推导两个单向预测因子,并且在两个分区的边界区域周围应用自适应加权。例如,用于三角形PU的方法可应用于水平和/或垂直PU。
常规合并模式运动矢量候选列表
根据当前VVC,在整个CU被预测而不被划分为多于一个PU的常规合并模式下,使用与用于三角形预测模式的过程不同的过程来构建运动矢量候选列表或合并候选列表。
图12是示出根据本公开的一些实施方式的空间合并候选的位置的示意图,如图12所示,首先,基于来自邻近块的运动矢量来选择空间运动矢量候选。在空间合并候选的推导中,在位于如图12中所描绘的位置中的候选中选择最多四个合并候选。推导的顺序是A1→B1→B0→A0→(B2)。仅当位置A1、B1、B0、A0的任何PU不可用或被帧内编解码时才考虑位置B2。
接下来,推导时间合并候选。在时间合并候选的推导中,基于属于给定参考图片列表内的与当前图片具有最小图片顺序计数(POC)差的图片的同位PU来推导经缩放的运动矢量。在条带头中显式地用信号发送将被用于推导同位PU的参考图片列表。图13示出了根据本公开的一些实施方式的时间合并候选的运动矢量缩放,如图13中的虚线所示,获得时间合并候选的经缩放的运动矢量。使用POC距离tb和td从同位PU col_PU的运动矢量对时间合并候选的经缩放的运动矢量进行缩放,其中tb被定义为当前图片curr_pic的参考图片curr_ref与当前图片curr_pic之间的POC差,并且td被定义为同位图片col_pic的参考图片col_ref与同位图片col_pic之间的POC差。时间合并候选的参考图片索引被设置为等于零。在HEVC草案规范中描述了缩放过程的实际实现。对于B条带,获得并组合两个运动矢量(针对参考图片列表0的一个并且针对参考图片列表1的另一个)以形成双向预测合并候选。
图14是示出根据本公开的一些实施方式的时间合并候选的候选位置的示意图。
如图14中所描绘的,在两个候选位置C3和H之间选择同位PU的位置。如果位置H处的PU不可用,或被帧内编解码,或在当前CTU外部,则位置C3用于推导时间合并候选。否则,位置H用于推导时间合并候选。
在将空间和时间运动矢量两者插入到如上文所描述的合并候选列表中之后,添加基于历史的合并候选。所谓的基于历史的合并候选包括来自先前编解码的CU的那些运动矢量,这些运动矢量被维护在单独的运动矢量列表中,并且基于特定规则进行管理。
在插入基于历史的候选之后,如果合并候选列表未满,则将成对平均运动矢量候选进一步添加到列表中。如其名称所示,通过对已经在当前列表中的候选进行平均来构建这种类型的候选。更具体地,基于特定顺序,每次采用合并候选列表中的两个候选,并且将该两个候选的平均运动矢量附加到当前列表。
根据当前VVC,使用以下运动矢量配对顺序来确定每次采用列表中的哪两个候选来推导平均运动矢量候选:
{0,1}→{0,2}→{1,2}→{0,3}→{1,3}→{2,3}。
每对括号中的两个值表示合并候选列表中的运动矢量候选的两个索引值。因此,通过对合并候选列表中的运动矢量候选0和运动矢量候选1求平均来生成第一平均运动矢量候选。通过对合并候选列表中的运动矢量候选0和运动矢量候选2求平均来生成第二平均运动矢量候选,等等。
在插入成对平均运动矢量之后,如果合并候选列表仍未满,则将添加零运动矢量以填满列表。
具有运动矢量差的合并模式(MMVD)/最终运动矢量表达(UMVE)
最终运动矢量表达(UMVE)在VVC中被采用,并且已经被集成到参考软件VTM中。UMVE稍后被重命名为具有MVD的合并模式(MMVD)。利用所提出的运动矢量表达方法,MMVD用于跳过模式或合并模式。
MMVD以与VVC中相同的方式重新使用合并候选。在合并候选中,可选择候选,并且通过所提出的运动矢量表达方法进一步扩展候选。
MMVD提供具有简化信令的新运动矢量表达。表达方法包括起始点、运动幅度和运动方向。
所提出的技术按原样使用合并候选列表。但是仅考虑默认合并类型(MRG_TYPE_DEFAULT_N)的候选用于MMVD的扩展。
基础候选索引(IDX)定义起始点。基础候选索引指示下表中的候选之中的最佳候选。
表2.基础候选IDX
基础候选IDX 0 1 2 3
第N MVP 第一MVP 第二MVP 第三MVP 第四MVP
如果基础候选的数量等于1,则不用信号发送基础候选IDX。
距离索引是运动幅度信息。距离索引指示距起始点的预定义距离。预定义距离如下:
表3.距离IDX
Figure BDA0004102188720000291
方向索引表示MVD相对于起始点的方向。方向索引可表示四个方向,如下表所示。
表4.方向IDX
方向IDX 00 01 10 11
X轴 + N/A N/A
Y轴 N/A N/A +
在发送跳过标志和合并标志之后立即用信号发送MMVD标志。如果跳过和合并标志为真,则对MMVD标志进行解析。如果MMVD标志等于1,则对MMVD语义进行解析;否则,对仿射(AFFINE)标志进行解析。如果仿射标志等于1,则指示仿射模式;否则,针对VTM的跳过/合并模式对跳过/合并索引进行解析。
联合帧间帧内预测(CIIP)
在VTM中,当CU在合并模式中被编解码时,如果CU包含至少64个亮度样点(即,CU宽度乘以CU高度等于或大于64),则用信号发送额外标志以指示联合帧间/帧内预测(CIIP)模式是否应用于当前CU。
为了形成CIIP,首先从两个额外语义元素推导帧内预测模式。可使用多达四个可能的帧内预测模式:DC、平面、水平或垂直。然后,使用常规的帧内和帧间解码过程推导帧间预测和帧内预测信号。最后,执行帧间和帧内预测信号的加权平均以获得CIIP预测。
在帧内预测模式推导中,可使用多达4个帧内预测模式(包含DC、平面(PLANAR)、水平(HORIZONTAL)和垂直(VERTICAL)模式)在CIIP模式中预测亮度分量。如果CU形状非常宽(即,其宽度大于其高度的两倍),则不允许水平模式。如果CU形状非常窄(即,其高度大于其宽度的两倍),则不允许垂直模式。在这些情况下,仅允许3个帧内预测模式。
CIIP模式使用3个最可能模式(MPM)进行帧内预测。CIIP MPM候选列表形成如下:
左侧和顶部邻近块分别被设置为A和B;
块A和块B的帧内预测模式(分别被表示为intraModeA和intraModeB)被如下推导出:
i.令X为A或B;
ii.如果1)块X不可用;或2)块X没有使用CIIP模式或帧内模式被预测;3)块X在当前CTU之外,则intraModeX被设置为DC;
iii.否则,1)如果块X的帧内预测模式是DC或平面,则intraModeX被设置为DC或平面;或者2)如果块X的帧内预测模式是“类似垂直”的角度模式(大于34),则intraModeX被设置为垂直;或者3)如果块X的帧内预测模式是“类似水平”的角度模式(小于或等于34),则intraModeX被设置为水平;
如果intraModeA和intraModeB相同:
i.如果intraModeA是平面或DC,则三个MPM按顺序被设置为{平面,DC,垂直};
ii.否则,三个MPM按顺序被设置为{intraModeA,平面,DC};
否则(intraModeA和intraModeB不同):
i.前两个MPM按顺序被设置为{intraModeA,intraModeB};
ii.按顺序对照前两个MPM候选模式检查平面、DC和垂直的唯一性;一旦找到唯一模式,就将其添加为第三MPM。
如果CU形状如上文所定义非常宽或非常窄,则MPM标志在不被用信号发送的情况下被推断为1。否则,用信号发送MPM标志以指示CIIP帧内预测模式是否是CIIP MPM候选模式之一。
如果MPM标志为1,则进一步用信号发送MPM索引以指示MPM候选模式中的哪一个用于CIIP帧内预测中。否则,如果MPM标志为0,则将帧内预测模式设置为MPM候选列表中的“缺失”模式。例如,如果平面模式不在MPM候选列表中,则平面模式为缺失模式,并且帧内预测模式被设置为平面。由于在CIIP中允许4个可能的帧内预测模式,而MPM候选列表仅包含3个帧内预测模式,所以4个可能模式中的一个模式必为缺失模式。
对于色度分量,总是在无需额外用信号发送的情况下应用DM模式;也就是说,色度使用与亮度相同的预测模式。在此示例中,色度帧内预测模式直接再使用用于亮度分量的帧内预测模式。因此,它被称为推导模式或DM模式。
经CIIP编码的CU的帧内预测模式将被保存并且用于未来邻近CU的帧内模式编解码中。
为了组合帧间预测信号和帧内预测信号,使用应用于常规合并模式的相同帧间预测过程来推导CIIP模式中的帧间预测信号P_inter;并且在常规帧内预测过程之后使用CIIP帧内预测模式来推导帧内预测信号P_intra。然后,使用加权平均来组合帧内和帧间预测信号,其中权重值取决于帧内预测模式,并且其中样点位于编码块中,如下:
如果帧内预测模式是DC或平面模式,或者如果块宽度或高度小于4,则将相等的权重应用于帧内预测和帧间预测信号。
否则,基于帧内预测模式(在这种情况下为水平模式或垂直模式)和块中的样点位置来确定权重。以水平预测模式为例(类似地但在正交方向上推导垂直模式的权重)并将W表示为块的宽度,H表示为块的高度,首先将编码块划分为四个等面积部分,每个部分具有(W/4)×H的尺寸。从最靠近帧内预测参考样点的部分开始并在最远离帧内预测参考样点的部分处结束,四个部分或区域中的每一个部分或区域的权重wt分别被设置为6、5、3和2。使用以下等式来推导最终CIIP预测信号:
PCIIP=((8-wt)*Pinter+wt*Pintra)>>3。
如先前所述,基于大小为40×3的预定义表1来用信号发送三角形预测合并列表索引。表的第一列指示三角形分割方向,并且第二和第三列指示针对CU的两个三角形预测单元中的每一个的单向预测运动矢量候选列表中的运动矢量候选的索引值。该表需要存储在编码器和解码器两端。在本公开的一些示例中,提出了可减小表的大小。
单独用信号发送三角形分割方向和合并列表索引
在用于三角形预测合并列表索引信令的VVC中定义的当前表1可通过数据训练被推导出。在该表中,三角形分割方向和合并列表索引被分组在一起以用于用信号发送。理论上,可能不太可能的是,一个三角形分割方向总是具有比另一个三角形分割方向更高的使用机会。因此,基于本公开,三角形分割方向的信令可与合并列表索引信令分离。
更具体地,根据本公开,在三角形预测模式下,可用信号发送单独的标志,例如称为分割方向标志或三角形分割方向标志,以指示使用两个三角形分割方向中的哪一个。指示单向预测合并列表或单向预测运动矢量候选列表中的所选条目的两个合并列表索引值一起作为表索引值被用信号发送,其中,针对每个三角形分区有一个合并列表索引值。
例如,具有20×2维度的下表5可用于用信号发送两个三角形预测单元的合并列表索引值。在这种情况下,可用信号发送范围从0到19的表索引值,以指示哪些合并列表索引值分别用于两个三角形分区。
表5.简化的三角形预测合并列表索引信令
Figure BDA0004102188720000331
应注意,上表仅示出了一个示例。可使用其他组合顺序。
还应注意,三角形分割方向标志和表索引值(其表示合并列表索引组合)的信令顺序也可变化。换句话说,三角形分割方向标志可在表索引值之前或在表索引值之后被用信号发送。
根据本公开的另一示例,在假设三角形分割方向标志具有值0和具有值1的概率相等(即,50%概率)的情况下,可简单地对三角形分割方向标志进行编码。换句话说,该标志可始终被编码为CABAC的旁路二进制位(bypass bin)。
因此,在一些示例中,方法包括:将视频图片分割为多个编码单元(CU),其中的至少一个进一步被分割为两个预测单元(PU),两个PU包括至少一个三角形形状的PU,至少一个三角形形状的PU具有以下之一的分割方向:从左上角到右下角和从右上角到左下角;构建单向预测运动矢量候选列表;根据编码信息确定当前CU是否被编码如三角形预测模式;用信号发送指示分割方向的分割方向标志;以及用信号发送指示构建的单向预测运动矢量候选列表中的所选条目的索引值。
单独用信号发送合并索引值和分割映射
为了进一步减少存储器需求,根据本公开的另一示例,在三角形预测模式下,可用信号发送额外标志(例如称为映射标志),以指示如何将索引值分配给两个三角形分区或两个索引值与两个三角形分区之间的映射方案。
更具体地,方法基于表5中所示的数据中存在一些对称性的事实。例如,考虑表中前两行{0,1}和{1,0},它们表示单向预测合并列表中的分配给两个三角形分区的相同的两个运动矢量,但具有不同的对应关系。{0,1}指示合并列表中的第一运动矢量候选被分配给第一分区,并且该合并列表中的第二运动矢量候选被分配给第二分区。{1,0}指示合并列表中的第二运动矢量候选被分配给第一分区,并且该列表中的第一运动矢量候选被分配给第二分区。根据本公开的一些示例,这两种情况都可使用{0,1}与映射标志一起被用信号发送,其中,映射标志被用信号发送以区分这两种情况。
表6.进一步简化的三角形预测合并列表索引信令
Figure BDA0004102188720000341
基于上述说明,表可被进一步简化为表6,具有10×2的维度。在这种情况下,用信号发送范围从0到9的表索引值以指示哪些合并列表索引值用于两个三角形分区。映射标志与表索引值一起被用信号发送。例如,如果用信号发送为表索引值0,则它指示{0,1},这表示使用合并列表中的第一运动矢量候选和第二运动矢量候选。如果映射标志为0,则它可指示合并列表中的第一运动矢量候选被分配给第一分区,并且该列表中的第二运动矢量候选被分配给第二分区。否则,如果映射标志为1,则它可指示合并列表中的第二运动矢量候选被分配给第一分区,并且该列表中的第一运动矢量候选被分配给第二分区。
应注意,上表仅示出了一个示例。可使用其他组合顺序。
还应注意,映射标志和表索引值(其表示合并列表索引组合)的信令顺序也可变化。换句话说,映射标志可在表索引值之前或在表索引值之后被用信号发送。
根据本公开的另一示例,在假设映射标志具有值0和具有值1的概率相等(即,50%概率)的情况下,可简单地对该标志进行编码。换句话说,该标志可始终被编码为CABAC的旁路二进制位(bypass bin)。
共享具有成对平均运动矢量的合并列表索引组合表
如先前所解释的,在常规合并模式运动矢量候选列表生成过程期间,在生成成对平均运动矢量时使用运动矢量配对顺序。示例中所示的运动矢量配对顺序为:
{0,1}→{0,2}→{1,2}→{0,3}→{1,3}→{2,3}。
根据本公开的另一示例,可仅定义一个表并且对于a)常规模式成对平均运动矢量生成以及b)三角形预测模式合并列表索引信令两者,可共享该表。
例如,表6可被进一步修改为下面的表7,使得它也可用于常规模式成对平均运动矢量生成。
表7.共享索引组合
Figure BDA0004102188720000351
可注意到,上表7的前六个条目与先前示出的运动矢量配对顺序的条目相同。因此,该六个连续条目可被视为共享区段。
在如先前所描述的另一方面中,根据当前VVC标准草案,基于从邻近块的三角形预测标志值推导出的上下文对三角形预测标志进行编解码。然而,对于实际视频内容,在选择三角形预测模式方面,邻近块之间的相关性可能不高。在对三角形预测标志进行编解码时提出了形成上下文的一些替代方式。
当在当前视频编码标准中选择CIIP模式时,通常不使用三角形预测模式。无论针对当前CU是否选择CIIP模式,总是用信号发送当前CU的三角形预测标志是低效的。
此外,根据当前VVC标准草案,无论MMVD标志是否为真,都用信号发送三角形预测标志。如果MMVD模式不与三角形预测模式一起使用,则还可使信令互斥以提高编码效率。
使用不同上下文对三角形预测标志进行编解码
根据本公开的一些示例,如果针对当前CU需要对三角形预测标志进行编解码(编码或解码),则可与当前VVC标准草案不同地推导上下文以用于CABAC的编解码。
在本公开的一些示例中,基于CU区域尺寸(即,CU高度的值乘以CU宽度的值)来推导上下文。换句话说,类似尺寸的CU可共享相同的上下文。
在本公开的一些其它示例中,基于CU形状(即,CU高度与CU宽度的比率)形成上下文。例如,水平方向的矩形CU(即,CU宽度大于CU高度)可共享第一上下文,并且垂直方向的矩形CU(即,CU高度大于CU宽度)可共享第二上下文,并且正方形CU(即,CU高度等于CU宽度)可共享第三上下文。
在另一示例中,无论水平或垂直方向如何,具有类似的长边与短边比率的矩形CU共享一个上下文,并且正方形CU共享另外的上下文。在这种情况下,可使用多个上下文,其中每个上下文对应于CU长边与CU短边的不同比率和/或CU长边与CU短边的不同比率范围。例如,第一上下文用于CU长边与CU短边的比率大于4的CU;第二上下文用于CU长边与CU短边的比率大于2但小于4的CU;第三上下文用于CU长边与CU短边的比率大于1.5但小于2的CU;第四上下文用于CU长边与CU短边的比率大于1但小于1.5的CU;并且第五上下文用于正方形CU。其他实施方式也是可能的。
根据本公开的又一示例,始终使用一个公共上下文来对三角形预测标志进行编解码,而不管CU参数和/或条件如何。
相对于CIIP标志对三角形预测标志进行编解码
根据本公开的一些示例,如果针对CU选择CIIP预测模式,则可不针对该CU对三角形预测标志进行编解码。因此,仅当针对CU不选择CIIP预测模式时,可针对CU用信号发送三角形预测标志。在没有用信号发送三角形预测标志的情况下,可在解码器侧将其推断为0。
相对于MMVD标志对三角形预测标志进行编解码
根据本公开的一些其它示例,当针对CU选择MMVD预测模式时,可不针对该CU对三角形预测标志进行编解码。因此,仅当针对CU不选择MMVD预测模式时,可针对CU用信号发送三角形预测标志。在没有用信号发送三角形预测标志的情况下,可在解码器侧将其推断为0。
在三角形预测单元的顶部上启用MMVD预测
根据本公开的又一些示例,可在三角形预测单元的顶部上启用MMVD预测模式。在这种情况下,即使针对CU选择MMVD预测模式,也可另外用信号发送三角形预测标志以指示使用三角形预测单元。在MMVD预测模式和三角形预测模式两者对于CU均为真的情况下,可针对两个三角形预测单元中的每一个三角形预测单元另外用信号发送MMVD模式下的MVD相关语义。
图15是示出根据本公开的一些实施方式的用于视频编解码的装置的框图。装置1500可以是终端,诸如移动电话、平板计算机、数字广播终端、平板设备或个人数字助理。
如图15所示,装置1500可包括以下组件中的一个或更多个:处理组件1502、存储器1504、电源组件1506、多媒体组件1508、音频组件1510、输入/输出(I/O)接口1512、传感器组件1514和通信组件1516。
处理组件1502通常控制装置1500的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作有关的操作。处理组件1502可包括用于执行指令以完成上述方法的全部或部分步骤的一个或多个处理器1520。此外,处理组件1502可包括用于促进处理组件1502与其他组件之间的交互的一个或多个模块。例如,处理组件1502可包括用于促进多媒体组件1508与处理组件1502之间的交互的多媒体模块。
存储器1504被配置为存储不同类型的数据以支持装置1500的操作。此类数据的示例包括用于在装置1500上操作的任何应用或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器1504可由任何类型的易失性或非易失性存储设备或其组合来实现,并且存储器1504可以是静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、闪存、磁盘或光盘。
电源组件1506为装置1500的不同组件供电。电源组件1506可包括电源管理系统、一个或更多个电源以及与为装置1500生成、管理和分配电力相关联的其他组件。
多媒体组件1508包括在装置1500和用户之间提供输出接口的屏幕。在一些示例中,屏幕可包括LCD和触摸面板(TP)。如果屏幕包括触摸面板,则屏幕可被实现为从用户接收输入信号的触摸屏。触摸面板可包括用于感测触摸面板上的触摸、滑动和手势的一个或更多个触摸传感器。触摸传感器不仅可感测触摸或滑动动作的边界,而且可检测与触摸或滑动操作相关的持续时间和压力。在一些示例中,多媒体组件1508可包括前置相机和/或后置相机。当装置1500处于诸如拍摄模式或视频模式的操作模式时,前置相机和/或后置相机可接收外部多媒体数据。
音频组件1510被配置为输出和/或输入音频信号。例如,音频组件1510包括麦克风(MIC)。当装置1500处于操作模式(诸如呼叫模式、录音模式和语音识别模式)时,麦克风被配置为接收外部音频信号。接收的音频信号可进一步被存储在存储器1504中或经由通信组件1516被发送。在一些示例中,音频组件1510还包括用于输出音频信号的扬声器。
I/O接口1512提供处理组件1502与外围接口模块之间的接口。上述外围接口模块可以是键盘、点击轮、按钮等。这些按钮可包括但不限于主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1514包括用于在装置1500的不同方面中提供状态评估的一个或更多个传感器。例如,传感器组件1514可检测装置1500的开/关状态和组件的相对位置。例如,组件是装置1500的显示器和键盘。传感器组件1514还可检测装置1500或装置1500的组件的位置变化、用户在装置1500上接触的存在或离开、装置1500的方向或加速度/减速度、以及装置1500的温度变化。传感器组件1514可包括被配置为在没有任何物理触摸的情况下检测附近物体的存在的接近传感器。传感器部件1514还可包括光学传感器,诸如在成像应用中使用的CMOS或CCD图像传感器。在一些示例中,传感器组件1514还可包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
通信组件1516被配置为促进装置1500与其它设备之间的有线或无线通信。装置1500可基于诸如WiFi、4G或其组合的通信标准来接入无线网络。在示例中,通信组件1516经由广播信道从外部广播管理系统接收广播信号或广播相关信息。在示例中,通信组件1516还可包括用于促进短距离通信的近场通信(NFC)模块。例如,NFC模块可基于射频识别(RFID)技术、红外数据协会(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术来实现。
在示例中,装置1500可由专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件中的一个或更多个来实现,以执行上述方法。
非暂时性计算机可读存储介质可以是例如硬盘驱动器(HDD)、固态驱动器(SSD)、闪存、混合驱动器或固态混合驱动器(SSHD)、只读存储器(ROM)、光盘只读存储器(CD-ROM)、磁带、软盘等。
图16是示出根据本公开的一些实施方式的用于使用三角形预测的运动补偿预测的视频编解码的示例性过程的流程图。
在步骤1602,处理器1520将视频图片分割为多个编码单元(CU),其中至少一个CU被进一步分割为两个预测单元(PU),两个PU包括至少一个三角形形状的PU,至少一个三角形形状的PU具有以下之一的分割方向:从左上角到右下角702和从右上角到左下角704。在步骤1604,处理器1520构建单向预测运动矢量候选列表。在步骤1606,处理器1520根据编码信息确定当前CU是否被编码如三角形预测模式。在步骤1608,处理器1520用信号发送指示分割方向的分割方向标志。在步骤1610,处理器1520用信号发送指示所构建的单向预测运动矢量候选列表中的所选条目的索引值。
图17是示出根据本公开的一些实施方式的用于三角形预测标志的视频编解码的示例性过程的流程图。
在步骤1702,处理器1520将视频图片分割为多个编码单元(CU),其中至少一个CU被进一步分割为两个预测单元(PU),两个PU包括至少一个三角形形状的PU。
在步骤1704,处理器1520确定针对当前CU是否将对指示三角形预测模式的三角形预测标志进行解码。
在步骤1706,在确定针对当前CU将对三角形预测标志进行解码时,处理器1520使用CABAC推导三角形预测标志。
基于从由以下构成的组合选择的至少一个来推导用于三角形预测标志的CABAC的上下文:CU区域尺寸;CU形状;以及公共上下文。
在一些示例中,提供一种用于视频编解码的装置。该装置包括处理器1520;以及存储器1504,被配置为存储可由处理器执行的指令;其中处理器在执行指令时被配置为执行如图16所示的方法或如图17所示的方法。
在一些其他示例中,提供了一种非暂时性计算机可读存储介质1504,其具有存储在其中的指令。当指令由处理器1520执行时,指令使处理器执行如图16所示的方法或如图17所示的方法。
本公开的描述已经出于说明的目的被呈现,并且不旨在穷举或限于本公开。受益于在前面的描述和相关联的附图中呈现的教导,许多修改、变化和替代实施方式对于本领域普通技术人员将是显而易见的。
选择和描述示例是为了解释本公开的原理,并且使本领域的其它技术人员能够理解本公开的各种实施方式,并且最好地利用基本原理和具有适合于预期的特定用途的各种修改的各种实施方式。因此,将理解,本公开的范围不限于所公开的实施方式的具体示例,并且修改和其它实施方式旨在被包括在本公开的范围内。

Claims (8)

1.一种用于对视频进行解码的方法,包括:
获取视频图片,其中,所述视频图片被分割为多个编码单元(CU);以及
在当前CU在帧间预测模式下被编码的情况下,
根据编码信息确定当前CU是否在三角形预测模式下被编码;以及
在当前CU在三角形预测模式下被编码的情况下,获取指示分割方向的分割方向语义元素,以及获取与单向预测运动矢量候选相对应的索引值;
其中,所述编码信息包括在序列参数集中的三角形预测工具启用/禁用标志,所述根据编码信息确定当前CU是否在三角形预测模式下被编码,包括:
在所述三角形预测工具启用/禁用标志被用信号发送为假的情况下,推断当前CU的三角形预测模式被禁用。
2.根据权利要求1所述的方法,其中所述单向预测运动矢量候选包括两个单向预测运动矢量候选。
3.根据权利要求1所述的方法,其中所述分割方向语义元素被编码为基于上下文的自适应二进制算术编码(CABAC)的旁路二进制位(bypass bin)。
4.根据权利要求1所述的方法,其中所述根据编码信息确定当前CU是否在三角形预测模式下被编码,包括:
在所述编码信息指示所述三角形预测工具启用/禁用标志为真且所有其它合并相关模式禁用的情况下,推断当前CU在三角形预测模式被编码。
5.根据权利要求1所述的方法,其中所述根据编码信息确定当前CU是否在三角形预测模式下被编码,包括:
根据所述编码信息确定针对当前CU的所述三角形预测标志是0或1。
6.根据权利要求1所述的方法,其中所述编码信息包括由以下构成的组合中选择的至少一个:
指示针对当前CU是否选择联合帧间帧内预测(CIIP)模式的标志;和
在序列参数集中的三角形预测工具启用/禁用标志。
7.一种用于对视频进行解码的设备,包括:
处理器;以及
存储器,被配置为存储可由处理器执行的指令;
其中处理器在执行所述指令时被配置为执行如权利要求1-7中任一项所述的用于视频解码的方法。
8.一种非暂时性计算机可读存储介质,存储用于由具有一个或更多个处理器的计算设备执行的多个程序,其中所述多个程序在由所述一个或更多个处理器执行时使所述计算设备接收比特流并基于所述比特流执行如权利要求1-7中任一项所述的用于视频解码的方法。
CN202310180336.XA 2018-12-30 2019-12-30 用于对视频进行解码的方法、设备和可读存储介质 Active CN116156164B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310180336.XA CN116156164B (zh) 2018-12-30 2019-12-30 用于对视频进行解码的方法、设备和可读存储介质

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862786545P 2018-12-30 2018-12-30
US62/786,545 2018-12-30
US201862787219P 2018-12-31 2018-12-31
US62/787,219 2018-12-31
PCT/US2019/068975 WO2020142447A1 (en) 2018-12-30 2019-12-30 Methods and apparatus of video coding for triangle prediction
CN201980081873.0A CN113196755A (zh) 2018-12-30 2019-12-30 用于三角形预测的视频编解码的方法和装置
CN202310180336.XA CN116156164B (zh) 2018-12-30 2019-12-30 用于对视频进行解码的方法、设备和可读存储介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201980081873.0A Division CN113196755A (zh) 2018-12-30 2019-12-30 用于三角形预测的视频编解码的方法和装置

Publications (2)

Publication Number Publication Date
CN116156164A true CN116156164A (zh) 2023-05-23
CN116156164B CN116156164B (zh) 2023-11-28

Family

ID=71407098

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202111625731.1A Active CN114245115B (zh) 2018-12-30 2019-12-30 用于对视频进行编码的方法和装置
CN201980081873.0A Pending CN113196755A (zh) 2018-12-30 2019-12-30 用于三角形预测的视频编解码的方法和装置
CN202310180336.XA Active CN116156164B (zh) 2018-12-30 2019-12-30 用于对视频进行解码的方法、设备和可读存储介质

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202111625731.1A Active CN114245115B (zh) 2018-12-30 2019-12-30 用于对视频进行编码的方法和装置
CN201980081873.0A Pending CN113196755A (zh) 2018-12-30 2019-12-30 用于三角形预测的视频编解码的方法和装置

Country Status (7)

Country Link
US (3) US11622111B2 (zh)
EP (2) EP3888364A4 (zh)
JP (2) JP7171928B2 (zh)
KR (4) KR20240049624A (zh)
CN (3) CN114245115B (zh)
MX (1) MX2021007977A (zh)
WO (1) WO2020142447A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2021007977A (es) 2018-12-30 2021-08-16 Beijing Dajia Internet Information Tech Co Ltd Metodo y aparato para codificacion de video para prediccion de triangulo.
CN113055689B (zh) * 2019-06-24 2022-11-01 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN110312130B (zh) * 2019-06-25 2021-10-15 浙江大华技术股份有限公司 基于三角模式的帧间预测、视频编码方法及设备

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102044089A (zh) * 2010-09-20 2011-05-04 董福田 一种三维模型的自适应化简、渐进传输和快速绘制的方法
US20130188704A1 (en) * 2012-01-19 2013-07-25 Texas Instruments Incorporated Scalable Prediction Type Coding
US20140098882A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Inter-view predicted motion vector for 3d video
WO2015127581A1 (en) * 2014-02-25 2015-09-03 Mediatek Singapore Pte. Ltd. Methods for switching off the intra prediction filters
US20150341655A1 (en) * 2014-05-22 2015-11-26 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
CN107113440A (zh) * 2014-10-31 2017-08-29 三星电子株式会社 使用高精度跳过编码的视频编码设备和视频解码设备及其方法
KR20170108367A (ko) * 2016-03-17 2017-09-27 세종대학교산학협력단 인트라 예측 기반의 비디오 신호 처리 방법 및 장치
US20180070100A1 (en) * 2016-09-06 2018-03-08 Qualcomm Incorporated Geometry-based priority for the construction of candidate lists
US20180213251A1 (en) * 2015-09-25 2018-07-26 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
CN108353184A (zh) * 2015-11-05 2018-07-31 联发科技股份有限公司 用于视频编解码的使用平均运动矢量的帧间预测的方法和装置
CN108432250A (zh) * 2016-01-07 2018-08-21 联发科技股份有限公司 用于视频编解码的仿射帧间预测的方法及装置
US20180255304A1 (en) * 2015-03-29 2018-09-06 Lg Electronics Inc. Method and device for encoding/decoding video signal
CN108874265A (zh) * 2018-06-21 2018-11-23 北京达佳互联信息技术有限公司 多媒体信息显示方法、装置、计算机设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101595899B1 (ko) * 2008-04-15 2016-02-19 오렌지 선형 형태의 픽셀들의 파티션들로 슬라이스 된 이미지 또는 이미지들의 시퀀스의 코딩 및 디코딩
WO2016090568A1 (en) * 2014-12-10 2016-06-16 Mediatek Singapore Pte. Ltd. Binary tree block partitioning structure
US10230980B2 (en) * 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding
US10462484B2 (en) * 2016-10-07 2019-10-29 Mediatek Inc. Video encoding method and apparatus with syntax element signaling of employed projection layout and associated video decoding method and apparatus
KR20180043151A (ko) * 2016-10-19 2018-04-27 에스케이텔레콤 주식회사 영상 부호화 또는 복호화를 위한 장치 및 방법
WO2018128466A1 (ko) * 2017-01-09 2018-07-12 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR20180082330A (ko) * 2017-01-09 2018-07-18 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
EP3637772A4 (en) * 2017-06-09 2020-12-09 Electronics and Telecommunications Research Institute VIDEO ENCODING / DECODING METHOD AND DEVICE AND RECORDING MEDIUM FOR STORING BITSTREAM
US10760024B2 (en) 2018-07-10 2020-09-01 Iogen Corporation Method and system for upgrading biogas
CN117528077A (zh) * 2018-10-27 2024-02-06 华为技术有限公司 图像预测方法及装置
US10917636B2 (en) * 2018-12-03 2021-02-09 Tencent America LLC Method and apparatus for video coding
US10778977B2 (en) * 2018-12-05 2020-09-15 Qualcomm Incorporated Triangle motion information for video coding
MX2021007977A (es) 2018-12-30 2021-08-16 Beijing Dajia Internet Information Tech Co Ltd Metodo y aparato para codificacion de video para prediccion de triangulo.
US11109041B2 (en) * 2019-05-16 2021-08-31 Tencent America LLC Method and apparatus for video coding

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102044089A (zh) * 2010-09-20 2011-05-04 董福田 一种三维模型的自适应化简、渐进传输和快速绘制的方法
US20130188704A1 (en) * 2012-01-19 2013-07-25 Texas Instruments Incorporated Scalable Prediction Type Coding
US20140098882A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Inter-view predicted motion vector for 3d video
WO2015127581A1 (en) * 2014-02-25 2015-09-03 Mediatek Singapore Pte. Ltd. Methods for switching off the intra prediction filters
US20150341655A1 (en) * 2014-05-22 2015-11-26 Qualcomm Incorporated Maximum palette parameters in palette-based video coding
CN107113440A (zh) * 2014-10-31 2017-08-29 三星电子株式会社 使用高精度跳过编码的视频编码设备和视频解码设备及其方法
US20180255304A1 (en) * 2015-03-29 2018-09-06 Lg Electronics Inc. Method and device for encoding/decoding video signal
US20180213251A1 (en) * 2015-09-25 2018-07-26 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
CN108353184A (zh) * 2015-11-05 2018-07-31 联发科技股份有限公司 用于视频编解码的使用平均运动矢量的帧间预测的方法和装置
CN108432250A (zh) * 2016-01-07 2018-08-21 联发科技股份有限公司 用于视频编解码的仿射帧间预测的方法及装置
KR20170108367A (ko) * 2016-03-17 2017-09-27 세종대학교산학협력단 인트라 예측 기반의 비디오 신호 처리 방법 및 장치
US20180070100A1 (en) * 2016-09-06 2018-03-08 Qualcomm Incorporated Geometry-based priority for the construction of candidate lists
CN108874265A (zh) * 2018-06-21 2018-11-23 北京达佳互联信息技术有限公司 多媒体信息显示方法、装置、计算机设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
POIRIER(TECHNICOLOR) T ET AL: "CE10-related: Multiple prediction unit shapes", 《THE JOINT VIDEO EXPLORATION TEAM OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16》, pages 1 - 3 *
刘梅锋: "一种基于三角形运动分块的HEVC视频编码方法", 《东华理工大学学报(自然科学版)》 *
沈燕飞;李锦涛;朱珍民;张勇东;: "高效视频编码", 计算机学报, no. 11 *

Also Published As

Publication number Publication date
MX2021007977A (es) 2021-08-16
KR20210087553A (ko) 2021-07-12
US20230099500A1 (en) 2023-03-30
KR102658346B1 (ko) 2024-04-18
US11909969B2 (en) 2024-02-20
EP3888364A4 (en) 2022-05-18
EP3888364A1 (en) 2021-10-06
CN116156164B (zh) 2023-11-28
CN113196755A (zh) 2021-07-30
CN117041595A (zh) 2023-11-10
WO2020142447A1 (en) 2020-07-09
CN114245115B (zh) 2023-03-21
CN114245115A (zh) 2022-03-25
EP4277277A2 (en) 2023-11-15
KR20240049624A (ko) 2024-04-16
EP4277277A3 (en) 2024-01-03
US20210329239A1 (en) 2021-10-21
US20240146922A1 (en) 2024-05-02
JP2022517559A (ja) 2022-03-09
KR20240049623A (ko) 2024-04-16
JP2023011832A (ja) 2023-01-24
US11622111B2 (en) 2023-04-04
JP7171928B2 (ja) 2022-11-15
CN117041594A (zh) 2023-11-10
KR20230074855A (ko) 2023-05-31

Similar Documents

Publication Publication Date Title
US11622111B2 (en) Methods and apparatus of video coding for triangle prediction
US11134261B2 (en) Methods and apparatus of video coding for triangle prediction
CN113545050B (zh) 利用三角形预测的视频编解码方法及装置
KR20210078575A (ko) 크로마 성분에 대한 아핀 움직임 벡터 도출을 위한 비디오 코딩 방법 및 장치
US20220239902A1 (en) Methods and apparatuses for video coding using triangle partition
US20220070445A1 (en) Methods and apparatuses for video coding with triangle prediction
US20220014780A1 (en) Methods and apparatus of video coding for triangle prediction
CN117041595B (zh) 用于对视频进行解码的方法、设备、存储介质和程序产品
CN117041594B (zh) 用于对视频进行编码的方法、设备、存储介质和程序产品
CN113994672B (zh) 用于利用三角形预测进行视频编解码的方法和装置
CN116886927B (zh) 视频编码的方法和装置、存储介质和计算机程序产品
CN114080807A (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