CN111567045A - 使用帧间预测信息的方法和装置 - Google Patents

使用帧间预测信息的方法和装置 Download PDF

Info

Publication number
CN111567045A
CN111567045A CN201880076042.XA CN201880076042A CN111567045A CN 111567045 A CN111567045 A CN 111567045A CN 201880076042 A CN201880076042 A CN 201880076042A CN 111567045 A CN111567045 A CN 111567045A
Authority
CN
China
Prior art keywords
block
inter prediction
prediction information
information
target block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201880076042.XA
Other languages
English (en)
Inventor
李镇浩
姜晶媛
高玄硕
林成昶
李河贤
全东山
金晖容
金在坤
朴都铉
尹庸旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
University Industry Cooperation Foundation of Korea Aerospace University
Original Assignee
Electronics and Telecommunications Research Institute ETRI
University Industry Cooperation Foundation of Korea Aerospace University
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 Electronics and Telecommunications Research Institute ETRI, University Industry Cooperation Foundation of Korea Aerospace University filed Critical Electronics and Telecommunications Research Institute ETRI
Priority claimed from PCT/KR2018/011905 external-priority patent/WO2019074273A1/ko
Publication of CN111567045A publication Critical patent/CN111567045A/zh
Pending legal-status Critical Current

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
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/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/583Motion compensation with overlapping blocks

Landscapes

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

Abstract

公开了一种用于视频解码的方法和装置以及用于视频编码的方法和装置。在执行视频编码或解码时,将被编码或解码的块的帧间预测信息可被推导,并且可使用推导出的帧间预测信息来执行对将被编码或解码的块的帧间预测。可通过多条帧间预测信息的组合来生成组合帧间预测信息,并且可将生成的组合帧间预测信息作为候选添加到用于帧间预测的列表。可选择列表中的候选中的一个候选用于对将被编码或解码的块的帧间预测,并且可使用选择的候选来执行帧间预测。

Description

使用帧间预测信息的方法和装置
技术领域
以下实施例总体上涉及一种视频解码方法和设备以及视频编码方法和设备,并且更具体地,涉及一种在视频编码和解码中使用帧间预测信息的方法和设备。
背景技术
随着信息与通信行业的持续发展,支持高清晰度(HD)分辨率的广播服务已经在全世界普及。通过这种普及,大量用户已经习惯了高分辨率和高清晰度图像和/或视频。
为了满足用户对高清晰度的需求,大量机构已加速了对下一代成像装置的开发。除了高清TV(HDTV)和全高清(FHD)TV之外,用户对UHD TV的兴趣也已增加,其中,UHD TV的分辨率是全高清(FHD)TV的分辨率的四倍以上。随着其兴趣的增加,不断地需要针对具有更高分辨率和更高清晰度的图像的图像编码/解码技术。
图像编码/解码设备和方法可使用帧间预测技术、帧内预测技术、熵编码技术等,以便对高分辨率和高清晰度图像执行编码/解码。帧间预测技术可以是用于使用时间上在前的画面和/或时间上在后的画面对目标画面中包括的像素的值进行预测的技术。帧内预测技术可以是用于使用关于目标画面中的像素的信息对目标画面中包括的像素的值进行预测的技术。熵编码技术可以是用于将短码字分配给频繁出现的符号并且将长码字分配给很少出现的符号的技术。
已开发出各种预测方法来提高帧内预测和/或帧间预测的效率和精度。预测效率可能根据各种可应用的预测方法中的哪种预测方法被用于对块进行编码和/或解码而发生很大变化。
发明内容
技术问题
实施例旨在提供一种针对目标块执行帧间预测的编码设备和方法以及解码设备和方法。
实施例旨在提供一种推导针对目标块的组合帧间预测信息并使用推导出的组合帧间预测信息执行帧间预测的编码设备和方法以及解码设备和方法。
解决方案
根据一方面,提供了一种编码设备,包括:处理单元,用于推导针对目标块的帧间预测信息,并使用推导出的帧间预测信息来针对目标块执行帧间预测,其中,处理单元使用组合帧间预测信息来配置针对目标块的列表,并且其中,处理单元通过将目标块的邻近块的两条或更多条帧间预测信息进行组合来生成组合帧间预测信息。
根据另一方面,提供了一种解码设备,包括:处理单元,用于推导针对目标块的帧间预测信息,并使用推导出的帧间预测信息来针对目标块执行帧间预测,其中,处理单元使用组合帧间预测信息来配置针对目标块的列表,并且其中,处理单元通过将目标块的邻近块的两条或更多条帧间预测信息进行组合来生成组合帧间预测信息。
根据另一方面,提供了一种解码方法,包括:推导针对目标块的帧间预测信息;并且使用推导出的帧间预测信息来针对目标块执行帧间预测,其中,使用组合帧间预测信息来配置针对目标块的列表,并且其中,所述组合帧间预测信息是通过将目标块的邻近块的两条或更多条帧间预测信息进行组合而生成的。
帧间预测信息可包括照度补偿(IC)标志和重叠块运动补偿(OBMC)标志中的至少一个。
所述列表可以是合并列表或高级运动矢量预测(AMVP)列表。
邻近块可包括目标块的空间邻近块和时间邻近块。
当邻近块中的一个邻近块的帧间预测信息不可用时,可推导针对所述一个邻近块的组合帧间预测信息。
当邻近块中的一个邻近块的帧间预测信息未被添加到所述列表时,针对所述一个邻近块推导出的组合帧间预测信息可被添加到所述列表。
组合帧间预测信息的运动矢量可以是使用邻近块的运动矢量的公式的结果。
组合帧间预测信息的运动矢量可以是邻近块的运动矢量的加权平均值。
组合帧间预测信息的运动矢量可以是邻近块的运动矢量基于块尺寸的加权组合的结果。
组合帧间预测信息的运动矢量可以是邻近块的运动矢量的画面顺序计数(POC)加权组合的结果。
组合帧间预测信息的运动矢量可以是邻近块的运动矢量的基于外插的组合的结果。
与特定块的左侧位置相关的第一帧间预测信息以及与特定块的右侧位置相关的第二帧间预测信息可被推导,并且组合帧间预测信息可通过将第一帧间预测信息与第二帧间预测信息进行组合来生成。
用于配置所述列表的方案可以是基于目标块的形状来确定的。
用于配置所述列表的方案可以是基于目标块的划分状态来确定的。
用于配置所述列表的方案可以是基于目标块的位置来确定的。
组合帧间预测信息可按照比邻近块的多条帧间预测信息的优先级低的优先级被添加到所述列表。
组合帧间预测信息可被添加到列表中的在空间邻近块的帧间预测信息之后并且在时间邻近块的帧间预测信息之前的位置。
用于配置所述列表的方案可以是基于目标块的深度来确定的。
有益效果
提供了一种针对目标块执行帧间预测的编码设备和方法以及解码设备和方法。
提供了一种针对目标块推导组合帧间预测信息并使用推导出的组合帧间预测信息执行帧间预测的编码设备和方法以及解码设备和方法。
附图说明
图1是示出被应用了本公开的编码设备的实施例的配置的框图;
图2是示出被应用了本公开的解码设备的实施例的配置的框图;
图3是示意性地示出当图像被编码和解码时图像的分区结构的示图;
图4是示出编码单元(CU)能够包括的预测单元(PU)的形式的示图;
图5是示出能够被包括在CU中的变换单元(TU)的形式的示图;
图6是用于解释帧内预测过程的实施例的示图;
图7是用于解释帧内预测过程中使用的参考样点的位置的示图;
图8是用于解释帧间预测过程的实施例的示图;
图9示出根据实施例的空间候选;
图10示出根据实施例的将空间候选的运动信息添加到合并列表的顺序;
图11示出根据示例的变换和量化处理;
图12是根据实施例的编码设备的配置图;
图13是根据实施例的解码设备的配置图;
图14是示出根据实施例的帧间预测方法的流程图;
图15示出根据示例的目标块的空间邻近块;
图16示出根据示例的目标块的时间邻近块;
图17示出根据示例的右上邻近块的组合帧间预测信息的生成;
图18示出根据示例的上方邻近块的组合帧间预测信息的生成;
图19示出根据示例的邻近块的组合帧间预测信息的生成;
图20示出根据示例的块AL的帧间预测信息的生成;
图21示出根据示例的块AR的帧间预测信息的生成;
图22示出根据示例的目标CU的帧间预测信息的生成;
图23示出宽度和高度相同的CU被垂直划分的情况;
图24示出宽度和高度相同的CU被水平划分的情况;
图25示出宽度大于高度的CU被垂直划分的情况;
图26示出高度大于宽度的CU被水平划分的情况;
图27示出根据示例的时间邻近块的子块和目标块的子块;
图28示出根据示例的目标块的空间邻近块和目标块的子块;
图29示出根据示例的使用双边匹配来推导帧间预测信息;
图30示出根据示例的使用模板匹配模式来推导帧间预测信息;
图31示出根据示例的OBMC的应用;
图32示出根据示例的ATMVP模式下的子PU;
图33是示出根据实施例的目标块预测方法和比特流生成方法的流程图;以及
图34是示出根据实施例的使用比特流的目标块预测方法的流程图。
最佳实施方式
本发明可被各种改变,并且可具有各种实施例,下面将参照附图详细地描述特定实施例。然而,应理解,这些实施例不意图将本发明限制为特定的公开形式,它们包括本发明的精神和范围内所包括的所有变化、等同形式或修改形式。
将参照示出特定实施例的附图对以下示例性实施例进行详细描述。描述这些实施例,使得本公开所属技术领域的普通技术人员能够容易地实践这些实施例。应注意,各种实施例彼此不同,但不需要彼此互斥。例如,在此描述的特定形状、结构和特性可在不脱离与一个实施例相关的多个实施例的精神和范围的情况下被实现为其它实施例。此外,应理解,在不脱离实施例的精神和范围的情况下,能够改变在每个公开的实施例中的各个组件的位置或布置。因此,所附的详细描述并非旨在限制本公开的范围,并且示例性实施例的范围仅由所附的权利要求及其等同物(只要它们被适当地描述)限定。
在附图中,相似的参考标号被用于在各个方面指定相同或相似的功能。附图中的组件的形状、尺寸等可被夸大以使得描述清楚。
诸如“第一”和“第二”的术语可用于描述各种组件,但是组件不受所述术语限制。所述术语仅用于将一个组件与另一个组件区分开。例如,在不脱离本说明书的范围的情况下,第一组件可被称为第二组件。类似地,第二组件可被称为第一组件。术语“和/或”可包括多个相关描述项的组合或者多个相关描述项中的任意一个。
将理解的是,当组件被称为“连接”或“结合”到另一组件时,两个组件可彼此直接连接或结合,或者在两个组件之间可存在中间组件。将理解的是,当组件被称为“直接连接或结合”时,在两个组件之间不存在中间组件。
此外,在实施例中描述的组件被独立地示出以表示不同的特征功能,但是这并不意味着每个组件由一个单独的硬件或软件形成。也就是说,为了方便描述,多个组件被单独地布置和包括。例如,多个组件中的至少两个组件可被集成为单个组件。相反,一个组件可被划分为多个组件。只要不脱离本说明书的本质,多个组件被集成的实施例或一些组件被分离的实施例被包括在本说明书的范围中。
此外,应注意,在示例性实施例中,描述组件“包括”特定组件的表述意指另外的组件可被包括在示例性实施例的实践或技术精神的范围内,但是不排除存在除了所述特定组件之外的组件。
在本说明书中使用的术语仅用于描述特定实施例,并不意图限制本发明。单数表述包括复数表述,除非在上下文中具体指出相反的描述。在本说明书中,应理解,诸如“包括”或“具有”的术语仅意图指示存在特征、数字、步骤、操作、组件、部件或它们的组合,而不意图排除将存在或添加一个或更多个其它特征、数字、步骤、操作、组件、部件或它们的组合的可能。
下面将参照附图来详细描述实施例,使得实施例所属技术领域的普通技术人员能够容易地实践实施例。在实施例的以下描述中,被视为使本说明书的要点模糊的公知功能或配置的详细描述将被省略。此外,相同的参考标号在整个附图中用于指定相同的组件,并且将省略对相同组件的重复描述。
在下文中,“图像”可表示构成视频的单个画面,或者可表示视频本身。例如,“对图像的编码和/或解码”可表示“对视频的编码和/或解码”,并且也可表示“对构成视频的多个图像中的任意一个图像的编码和/或解码”。
在下文中,术语“视频”和“运动画面”可被用于具有相同的含义,并且可彼此互换使用。
在下文中,目标图像可以是作为将被编码的目标的编码目标图像和/或作为将被解码的目标的解码目标图像。此外,目标图像可以是被输入到编码设备的输入图像或者被输入到解码设备的输入图像。
在下文中,术语“图像”、“画面”、“帧”和“屏幕”可被用于具有相同的含义,并且可彼此互换使用。
在下文中,目标块可以是编码目标块(即,将被编码的目标)和/或解码目标块(即,将被解码的目标)。此外,目标块可以是当前块,即,当前将被编码和/或解码的目标。这里,术语“目标块”和“当前块”可被用于具有相同的含义,并且可彼此互换使用。
在下文中,术语“块”和“单元”可被用于具有相同的含义,并且可彼此互换使用。可选地,“块”可表示特定单元。
在下文中,术语“区域”和“区段”可彼此互换使用。
在下文中,特定信号可以是指示特定块的信号。例如,原始信号可以是指示目标块的信号。预测信号可以是指示预测块的信号。残差信号可以是指示残差块的信号。
在以下的实施例中,特定的信息、数据、标志、元素和属性可具有它们各自的值。与所述信息、数据、标志、元素和属性中的每一个相应的值“0”可指示逻辑假或第一预定义值。换句话说,值“0”、假、逻辑假和第一预定义值可彼此互换使用。与所述信息、数据、标志、元素和属性中的每一个相应的值“1”可指示逻辑真或第二预定义值。换句话说,值“1”、真、逻辑真和第二预定义值可彼此互换使用。
当诸如i或j的变量被用于指示行、列或索引时,值i可以是整数0或大于0的整数,或者可以是整数1或大于1的整数。换句话说,在实施例中,行、列和索引中的每一个可从0开始计数,或者可以从1开始计数。
下面,将描述将在实施例中使用的术语。
编码器:编码器表示用于执行编码的装置。
解码器:解码器表示用于执行解码的装置。
单元:“单元”可表示图像编码和解码的单元。术语“单元”和“块”可以被用于具有相同的含义,并且可彼此互换使用。
–“单元”可以是M×N样点阵列。M和N可分别是正整数。术语“单元”通常可表示二维(2D)样点阵列。
–在图像的编码和解码过程中,“单元”可以是通过对一个图像进行分区而生成的区域。单个图像可被分区为多个单元。可选地,一个图像可被分区为子部分,并且单元可表示在对分区出的子部分执行编码或解码时每个分区出的子部分。
–在图像的编码和解码过程中,可根据单元的类型对每个单元执行预定义的处理。
–根据功能,单元类型可被分类为宏单元、编码单元(CU)、预测单元(PU)、残差单元、变换单元(TU)等。可选地,根据功能,单元可表示块、宏块、编码树单元(CTU)、编码树块、编码单元、编码块、预测单元、预测块、残差单元、残差块、变换单元、变换块等。
–术语“单元”可表示包括亮度(luma)分量块、与亮度分量块相应的色度(chroma)分量块、以及用于各个块的语法元素的信息使得单元被指定为与块区分开。
–单元的尺寸和形状可被不同地实现。此外,单元可具有各种尺寸和形状中的任意一种。具体地,单元的形状不仅可包括正方形,还可以包括可以以二维(2D)表示的几何形状(诸如,矩形、梯形、三角形和五边形)。
–此外,单元信息可包括单元的类型(指示编码单元、预测单元、残差单元或变换单元)、单元的尺寸、单元的深度、单元的编码和解码的顺序等中的一个或更多个。
–一个单元可被分区为子单元,每个子单元具有比相关单元的尺寸更小的尺寸。
–深度:深度可表示单元被分区的程度。此外,深度可指示当以树结构表示单元时相应单元存在的等级。
–单元分区信息可包括指示单元的深度的深度。深度可指示单元被分区的次数和/或单元被分区的程度。
–在树结构中,可认为根节点的深度最小并且叶节点的深度最大。
–单个单元可被分层分区为多个子单元,同时所述单个单元具有基于树结构的深度信息。换句话说,单元和通过对该单元进行分区而生成的子单元可分别对应于节点和该节点的子节点。每个被分区出的子单元可具有深度。由于深度指示单元被分区的次数和/或单元被分区的程度,因此子单元的分区信息可包括关于所述子单元的尺寸的信息。
–在树结构中,顶部节点可对应于进行分区之前的初始节点。顶部节点可被称为“根节点”。此外,根节点可具有最小深度值。这里,顶部节点的深度可为等级“0”。
–深度为等级“1”的节点可表示在初始单元被分区一次时所生成的单元。深度为等级“2”的节点可表示在初始单元被分区两次时所生成的单元。
–深度为等级“n”的叶节点可表示在初始单元被分区n次时所生成的单元。
–叶节点可以是不能被进一步分区的底部节点。叶节点的深度可以是最大等级。例如,针对最大等级的预定义值可以是3。
–QT深度可表示四划分的深度。BT深度可表示二划分的深度。TT深度可表示三划分的深度。
–样点:样点可以是构成块的基本单元。可用从根据比特深度(Bd)的0到2Bd-1的值来表示样点。
–样点可以是像素或像素值。
–在下文中,术语“像素”和“样点”可被用于具有相同含义,并且可彼此互换使用。
编码树单元(CTU):CTU可由单个亮度分量(Y)编码树块和与亮度分量编码树块相关的两个色度分量(Cb,Cr)编码树块构成。此外,CTU可表示包括上述块以及用于每个块的语法元素的信息。
–可使用一个或更多个分区方法(诸如四叉树(QT)、二叉树(BT)和三叉树(TT))对每个编码树单元(CTU)进行分区,以便配置子单元,诸如编码单元、预测单元和变换单元。
–“CTU”可被用作指定在图像解码和编码处理中(如在对输入图像进行分区的情况下)作为处理单元的像素块的术语。
编码树块(CTB):“CTB”可被用作指定Y编码树块、Cb编码树块和Cr编码树块中的任意一个的术语。
–邻近(相邻)块:邻近块表示与目标块相邻的块。术语“邻近块”还可指重建邻近块。
在下文中,术语“邻近块”和“相邻块”可被用于具有相同的含义,并且可彼此互换地使用。
–空间邻近块:空间邻近块可以是在空间上与目标块相邻的块。邻近块可包括空间邻近块。
–目标块和空间邻近块可被包括在目标画面中。
–空间邻近块可以是边界接触目标块的块或者位置距目标块预定距离的块。
–空间邻近块可以是与目标块的顶点相邻的块。这里,与目标块的顶点相邻的块可以是与水平相邻于目标块的邻近块垂直相邻的块或者与垂直相邻于目标块的邻近块水平相邻的块。
–时间邻近块:时间邻近块可以是在时间上与目标块相邻的块。邻近块可包括时间邻近块。
–时间邻近块可包括同位块(col块)。
–col块可以是先前重建的同位画面(col画面)中的块。col块在col画面中的位置可与目标块在目标画面中的位置对应。col画面可以是参考画面列表中包括的画面。
–时间邻近块可以是目标块的空间邻近块。
预测单元:预测单元可以是用于预测(诸如帧间预测、帧内预测、帧间补偿、帧内补偿和运动补偿)的基本单元。
–单个预测单元可被划分为具有更小尺寸的多个分区或者子预测单元。所述多个分区也可以是在执行预测或补偿时的基本单元。通过对预测单元进行划分所生成的分区也可以是预测单元。
预测单元分区:预测单元分区可以是预测单元被划分成的形状。
重建的邻近单元:重建的邻近单元可以是在目标单元周围已经被解码和重建的单元。
–重建的邻近单元可以是在空间上与目标单元相邻或者在时间上与目标单元相邻的单元。
–重建的空间邻近单元可以是在目标画面中包括的已经通过编码和/或解码被重建的单元。
–重建的时间邻近单元可以是在参考图像中包括的已经通过编码和/或解码被重建的单元。重建的时间邻近单元在参考图像中的位置可以与目标单元在目标画面中的位置相同,或者可以与目标单元在目标画面中的位置相应。
参数集:参数集可以是比特流的结构中的头信息。例如,参数集可包括顺序参数集、画面参数集、自适应参数集等。
率失真优化:编码设备可使用率失真优化以便通过利用以下项的组合来提供高编码效率:编码单元(CU)的尺寸、预测模式、预测单元(PU)的尺寸、运动信息和变换单元(TU)的尺寸。
–率失真优化方案可计算各个组合的率失真代价以从这些组合中选择最优组合。可使用以下方程式1来计算率失真代价。通常,可将使率失真代价最小化的组合选为在率失真优化方案下的最优组合。
[方程式1]
D+λ*R
–D可表示失真。D可以是在变换单元中的原始变换系数与重建的变换系数之间的差值的平方的平均值(即,均方误差)。
–R可表示所述率,其可使用相关上下文信息来表示比特率。
–λ表示拉格朗日乘数。R不仅可包括编码参数信息(诸如预测模式、运动信息和编码块标志),还可包括由于对变换系数进行编码而生成的比特。
–编码设备可执行诸如帧间预测和/或帧内预测、变换、量化、熵编码、逆量化(反量化)和逆变换的过程,以便计算精确的D和R。这些过程会大大增加编码设备的复杂度。
–比特流:比特流可表示包括编码图像信息的比特的流。
–参数集:参数集可以是比特流的结构中的头信息。
参数集可包括视频参数集、顺序参数集、画面参数集和自适应参数集中的至少一个。此外,参数集可包括关于条带头的信息和关于并行块头的信息。
解析:解析可以是通过对比特流执行熵解码而做出的对语法元素的值的决定。可选地,术语“解析”可表示这种熵解码本身。
符号:符号可以是编码目标单元和/或解码目标单元的语法元素、编码参数和变换系数中的至少一个。此外,符号可以是熵编码的目标或熵解码的结果。
参考画面:参考画面可以是被单元参考以便执行帧间预测或运动补偿的图像。可选地,参考画面可以是包括被目标单元参考以便执行帧间预测或运动补偿的参考单元的图像。
在下文中,术语“参考画面”和“参考图像”可被用于具有相同的含义,并且可彼此互换使用。
参考画面列表:参考画面列表可以是包括被用于帧间预测或运动补偿的一个或更多个参考图像的列表。
–参考画面列表的类型可包括合并的列表(LC)、列表0(L0)、列表1(L1)、列表2(L3)、列表3(L3)等。
–对于帧间预测,可使用一个或更多个参考画面列表。
帧间预测指示符:帧间预测指示符可指示目标单元的帧间预测方向。帧间预测可以是单向预测和双向预测之一。可选地,帧间预测指示符可表示用于生成目标单元的预测单元的参考图像的数量。可选地,帧间预测指示符可表示用于目标单元的帧间预测或运动补偿的预测块的数量。
参考画面索引:参考画面索引可以是指示在参考画面列表中的特定参考图像的索引。
运动矢量(MV):运动矢量可以是用于帧间预测或运动补偿的2D矢量。运动矢量可表示在编码目标图像/解码目标图像与参考图像之间的偏移。
–例如,可以以诸如(mvx,mvy)的形式来表示MV。mvx可指示水平分量,mvy可指示垂直分量。
–搜索范围:搜索范围可以是在帧间预测期间执行针对MV的搜索的2D区域。例如,搜索范围的尺寸可以是M×N。M和N可分别是正整数。
运动矢量候选:运动矢量候选可以是在运动矢量被预测时作为预测候选的块或者作为预测候选的块的运动矢量。
–运动矢量候选可被包括在运动矢量候选列表中。
运动矢量候选列表:运动矢量候选列表可以是使用一个或更多个运动矢量候选配置的列表。
运动矢量候选索引:运动矢量候选索引可以是用于指示运动矢量候选列表中的运动矢量候选的指示符。可选地,运动矢量候选索引可以是运动矢量预测因子的索引。
运动信息:运动信息可以是包括参考画面列表、参考图像、运动矢量候选、运动矢量候选索引、合并候选和合并索引中的至少一个以及运动矢量、参考画面索引和帧间预测指示符的信息。
合并候选列表:合并候选列表可以是使用合并候选配置的列表。
合并候选:合并候选可以是空间合并候选、时间合并候选、组合合并候选、组合双预测合并候选、零合并候选等。合并候选可包括运动信息,诸如帧间预测指示符、用于每个列表的参考画面索引、以及运动矢量。
合并索引:合并索引可以是用于指示合并候选列表中的合并候选的指示符。
–合并索引可指示在空间上与目标单元相邻的重建单元和在时间上与目标单元相邻的重建单元之间的用于推导合并候选的重建单元。
–合并索引可指示合并候选的多条运动信息中的至少一条。
变换单元:变换单元可以是残差信号编码和/或残差信号解码(诸如变换、逆变换、量化、反量化、变换系数编码和变换系数解码)的基本单元。单个变换单元可被分区为具有更小尺寸的多个变换单元。
缩放:缩放可表示将因子乘以变换系数等级的过程。
–作为对变换系数等级进行缩放的结果,可生成变换系数。缩放也可被称为“反量化”。
量化参数(QP):量化参数可以是用于在量化中生成用于变换系数的变换系数等级的值。可选地,量化参数也可以是用于在反量化中通过对变换系数等级进行缩放来生成变换系数的值。可选地,量化参数可以是被映射到量化步长的值。
变量增量(Delta)量化参数:变量增量量化参数是编码/解码目标单元的量化参数与预测出的量化参数之间的差值。
扫描:扫描可表示对单元、块或矩阵中的系数顺序进行排列的方法。例如,用于按照一维(1D)阵列的形式对2D阵列进行排列的方法可被称为“扫描”。可选地,用于按照2D阵列的形式对1D阵列进行排列的方法也可被称为“扫描”或“逆扫描”。
变换系数:变换系数可以是在编码设备执行变换时生成的系数值。可选地,变换系数可以是在解码设备执行熵解码和反量化中的至少一个时生成的系数值。
–在量化被应用于变换系数或者残差信号的量化的等级或量化的变换系数等级也可被包括在术语“变换系数”的含义中。
量化的等级:量化的等级可以是在编码设备对变换系数或残差信号执行量化时生成的值。可选地,量化的等级可以是在解码设备执行反量化时作为反量化的目标的值。
–作为变换和量化的结果的量化的变换系数等级也可被包括在量化的等级的含义中。
非零变换系数:非零变换系数可以是具有除了0之外的值的变换系数,或者可以是具有除了0之外的值的变换系数等级。可选地,非零变换系数可以是值的幅度不为0的变换系数,或者可以是值的幅度不为0的变换系数等级。
量化矩阵:量化矩阵可以是在量化或反量化过程中使用以便提高图像的主观图像质量或客观图像质量的矩阵。量化矩阵也可被称为“缩放列表”。
量化矩阵系数:量化矩阵系数可以是量化矩阵中的每个元素。量化矩阵系数也可被称为“矩阵系数”。
默认矩阵:默认矩阵可以是被编码设备和解码设备预先定义的量化矩阵。
非默认矩阵:非默认矩阵可以是未被编码设备和解码设备预先定义的量化矩阵。非默认矩阵可以由编码设备用信号传送给解码设备。
信令:信令可指示信息从编码设备被发送到解码设备。可选地,信令可表示信息被包括在比特流或存储介质中。由编码设备用信号发送的信息可被解码设备使用。
图1是示出被应用了本公开的编码设备的实施例的配置的框图。
编码设备100可以是编码器、视频编码设备或图像编码设备。视频可包括一个或更多个图像(画面)。编码设备100可顺序地对视频的一个或更多个图像进行编码。
参照图1,编码设备100包括帧间预测单元110、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化(逆量化)单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190。
编码设备100可使用帧内模式和/或帧间模式对目标图像执行编码。
此外,编码设备100可通过对目标图像进行编码来生成包括关于编码的信息的比特流,并且可输出生成的比特流。生成的比特流可被存储在计算机可读存储介质中,并且可通过无线/有线传输介质被流传输。
当帧内模式被用作预测模式时,切换器115可切换到帧内模式。当帧间模式被用作预测模式时,切换器115可切换到帧间模式。
编码设备100可生成目标块的预测块。此外,在已生成了预测块之后,编码设备100可对目标块与预测块之间的残差进行编码。
当预测模式是帧内模式时,帧内预测单元120可将在目标块周围的先前被编码/解码的邻近块的像素用作参考样点。帧内预测单元120可使用所述参考样点对目标块执行空间预测,并且可经由空间预测针对目标块生成预测样点。
帧间预测单元110可包括运动预测单元和运动补偿单元。
当预测模式是帧间模式时,运动预测单元可在运动预测过程中在参考图像中搜索与目标块最匹配的区域,并且可基于找到的区域针对目标块和找到的区域推导出运动矢量。
参考图像可被存储在参考画面缓冲器190中。更具体地讲,当参考图像的编码和/或解码已被处理时,参考图像可被存储在参考画面缓冲器190中。
运动补偿单元可通过使用运动矢量执行运动补偿来生成针对目标块的预测块。这里,运动矢量可以是用于帧间预测的二维(2D)矢量。此外,运动矢量可表示目标图像与参考图像之间的偏移。
当运动矢量具有除了整数之外的值时,运动预测单元和运动补偿单元可通过将插值滤波器应用于参考图像的部分区域来生成预测块。为了执行帧间预测或运动补偿,可确定跳过模式、合并模式、高级运动矢量预测(AMVP)模式和当前画面参考模式中的哪一种模式对应于用于基于CU对CU中包括的PU的运动进行预测并对该运动进行补偿的方法,并且可根据该模式执行帧间预测或运动补偿。
减法器125可生成残差块,其中,残差块是目标块与预测块之间的差。残差块也可被称为“残差信号”。
残差信号可以是原始信号与预测信号之间的差。可选地,残差信号可以是通过对原始信号与预测信号之间的差进行变换或量化而生成的信号或者通过对该差进行变换和量化而生成的信号。残差块可以是针对块单元的残差信号。
变换单元130可通过对残差块进行变换来生成变换系数,并且可输出生成的变换系数。这里,变换系数可以是通过对残差块进行变换而生成的系数值。
当使用变换跳过模式时,变换单元130可省略对残差块进行变换的操作。
通过对变换系数实施量化,可生成量化的变换系数等级或者量化的等级。在下文中,在实施例中,量化的变换系数等级和量化的等级中的每一个也可被称为“变换系数”。
量化单元140可通过根据量化参数对变换系数进行量化来生成量化的变换系数等级或量化的等级。量化单元140可输出生成的量化的变换系数等级或量化的等级。在这种情况下,量化单元140可使用量化矩阵对变换系数进行量化。
熵编码单元150可通过基于由量化单元140计算出的值和/或在编码过程中计算出的编码参数值执行基于概率分布的熵编码来生成比特流。熵编码单元150可输出生成的比特流。
熵编码单元150可对关于图像的像素的信息以及对图像进行解码所需的信息执行熵编码。例如,对图像进行解码所需的信息可包括语法元素等。
编码参数可以是进行编码和/或解码所需的信息。编码参数可包括由编码设备100编码并从编码设备100被传送到解码设备的信息,并且还可包括在编码或解码过程中推导出的信息。例如,被传送到解码设备的信息可包括语法元素。
例如,编码参数可包括值或统计信息,诸如预测模式、运动矢量、参考画面索引、编码块样式、存在或不存在残差信号、变换系数、量化的变换系数、量化参数、块尺寸以及块分区信息。预测模式可以是帧内预测模式或帧间预测模式。
残差信号可表示原始信号与预测信号之间的差。可选地,残差信号可以是通过对原始信号与预测信号之间的差进行变换而生成的信号。可选地,残差信号可以是通过对原始信号与预测信号之间的差进行变换和量化而生成的信号。
当应用熵编码时,可将更少的比特分配给更频繁出现的符号,并且可将更多的比特分配给很少出现的符号。由于通过该分配来表示符号,因此可减少用于将被编码的目标符号的比特串的大小。因此,通过熵编码可提高视频编码的压缩性能。
此外,为了进行熵编码,熵编码单元150可使用诸如指数哥伦布、上下文自适应可变长度编码(CAVLC)或上下文自适应二进制算术编码(CABAC)的编码方法。例如,熵编码单元150可使用可变长度编码/码(VLC)表来执行熵编码。例如,熵编码单元150可推导出用于目标符号的二值化方法。此外,熵编码单元150可推导出用于目标符号/二进制位的概率模型。熵编码单元150可使用推导出的二值化方法、概率模型和上下文模型来执行算术编码。
熵编码单元150可通过变换系数扫描方法将2D块形式的系数变换为1D矢量形式,以便对变换系数等级进行编码。
编码系数不仅可包括由编码设备编码并由编码设备用信号传送到解码设备的诸如语法元素的信息(或标志或索引),还可包括在编码或解码处理中推导出的信息。此外,编码参数可包括对图像进行编码或解码所需的信息。例如,编码参数可包括以下项中的至少一项或以下项的组合:单元/块的尺寸、单元/块的深度、单元/块的分区信息、单元/块的分区结构、指示单元/块是否以四叉树结构被分区的信息、指示单元/块是否以二叉树(BT)结构被分区的信息、二叉树结构的分区方向(水平方向或垂直方向)、二叉树结构的分区形式(对称分区或非对称分区)、指示单元/块是否以三叉树结构被分区的信息、三叉树结构的分区方向(水平方向或垂直方向)、预测方案(帧内预测或帧间预测)、帧内预测模式/方向、参考样点滤波方法、预测块滤波方法、预测块边界滤波方法、用于滤波的滤波器抽头、用于滤波的滤波器系数、帧间预测模式、运动信息、运动矢量、参考画面索引、帧间预测方向、帧间预测指示符、参考画面列表、参考图像、运动矢量预测因子、运动矢量预测候选、运动矢量候选列表、指示合并模式是否被使用的信息、合并候选、合并候选列表、指示跳过模式是否被使用的信息、插值滤波器的类型、插值滤波器的抽头、插值滤波器的滤波器系数、运动矢量的大小、运动矢量表示的精确度、变换类型、变换大小、指示首次变换是否被使用的信息、指示附加(二次)变换是否被使用的信息、首次变换索引、二次变换索引、指示残差信号存在或不存在的信息、编码块样式、编码块标志、量化参数、量化矩阵、关于环路内滤波器的信息、指示环路内滤波器是否被应用的信息、环路内滤波器的系数、环路内滤波器的抽头、环路内滤波器的形状/形式、指示去块滤波器是否被应用的信息、去块滤波器的系数、去块滤波器的抽头、去块滤波器强度、去块滤波器的形状/形式、指示自适应样点偏移是否被应用的信息、自适应样点偏移的值、自适应样点偏移的类别、自适应样点偏移的类型、指示自适应环路滤波器是否被应用的信息、自适应环路滤波器的系数、自适应环路滤波器的抽头、自适应环路滤波器的形状/形式、二值化/反二值化方法、上下文模型、上下文模型决定方法、上下文模型更新方法、指示常规模式是否被执行的信息、指示旁路(bypass)模式是否被执行的信息、上下文二进制位、旁路二进制位、变换系数、变换系数等级、变换系数等级扫描方法、图像显示/输出顺序、条带识别信息、条带类型、条带分区信息、并行块识别信息、并行块类型、并行块分区信息、画面类型、比特深度、关于亮度信号的信息和关于色度信号的信息。
这里,用信号传送标志或索引可表示编码设备100将通过对标志或索引执行熵编码而生成的熵编码的标志或熵编码的索引包括在比特流中,并且可表示解码设备200通过对从比特流提取的熵编码的标志或熵编码的索引执行熵解码来获取标志或索引。
由于编码设备100经由帧间预测执行编码,因此编码的目标图像可被用作用于将被后续处理的另外的图像的参考图像。因此,编码设备100可对编码的目标图像进行重建或解码,并将重建或解码的图像作为参考图像存储在参考画面缓冲器190中。对于解码,可进行对编码的目标图像的反量化和逆变换。
量化的等级可由反量化单元160进行反量化,并且可由逆变换单元170进行逆变换。可由加法器175将已被反量化和/或逆变换的系数与预测块相加。将反量化和/或逆变换的系数和预测块相加,然后可生成重建块。这里,反量化和/或逆变换的系数可表示被执行了反量化和逆变换中的一个或更多个的系数,并且也可以表示重建的残差块。
重建块可通过滤波器单元180进行滤波。滤波器单元180可将去块滤波器、样点自适应偏移(SAO)滤波器和自适应环路滤波器(ALF)中的一个或更多个滤波器应用于重建块或重建画面。滤波器单元180也可被称为“环路滤波器”。
去块滤波器可消除在块之间的边界处出现的块失真。为了确定是否应用去块滤波器,可决定被包括在块中并且包括确定是否对目标块应用去块滤波器所基于的像素的列或行的数量。当去块滤波器被应用于目标块时,所应用的滤波器可根据所需要的去块滤波的强度而不同。换句话说,在不同的滤波器之中,可将考虑去块滤波的强度而决定的滤波器应用于目标块。
SAO可将适当的偏移与像素值相加以便对编码误差进行补偿。SAO可基于像素对被应用去块的图像执行校正,其中,该校正使用原始图像与被应用去块的图像之间的差的偏移。可使用用于将图像中包括的像素划分为特定数量的区域、在划分出的区域之中确定将被应用偏移的区域并将偏移应用于所确定的区域的方法,并且也可使用用于考虑每个像素的边缘信息来应用偏移的方法。
ALF可基于通过将重建图像与原始图像进行比较而获得的值来执行滤波。在图像中包括的像素已被划分为预定数量的群组之后,可确定将被应用于群组的滤波器,并且可针对各个群组不同地执行滤波。可针对每个CU用信号传送与是否应用自适应环路滤波器相关的信息。将被应用于各个块的ALF的形状和滤波器系数对于各个块可以不同。
通过滤波器单元180滤波的重建块或重建图像可被存储在参考画面缓冲器190中。通过滤波器单元180滤波的重建块可以是参考画面的一部分。换句话说,参考画面可以是由通过滤波器单元180滤波的重建块构成的重建画面。存储的参考画面随后可被用于帧间预测。
图2是示出被应用了本公开的解码设备的实施例的配置的框图。
解码设备200可以是解码器、视频解码设备或图像解码设备。
参照图2,解码设备200可包括熵解码单元210、反量化(逆量化)单元220、逆变换单元230、帧内预测单元240、帧间预测单元250、加法器255、滤波器单元260和参考画面缓冲器270。
解码设备200可接收从编码设备100输出的比特流。解码设备200可接收存储在计算机可读存储介质中的比特流,并且可接收通过有线/无线传输介质流传输的比特流。
解码设备200可在帧内模式和/或帧间模式下对比特流执行解码。此外,解码设备200可经由解码来生成重建图像或解码图像,并且可输出重建图像或解码图像。
例如,可通过切换器来执行基于用于进行解码的预测模式而切换到帧内模式或帧间模式的操作。当用于解码的预测模式是帧内模式时,切换器可***作以切换到帧内模式。当用于解码的预测模式是帧间模式时,切换器可***作以切换到帧间模式。
解码设备200可通过对输入的比特流进行解码来获取重建的残差块,并且可生成预测块。当重建的残差块和预测块被获取时,解码设备200可通过将重建的残差块与预测块相加来生成作为被解码的目标的重建块。
熵解码单元210可通过基于比特流的概率分布对比特流执行熵解码来生成符号。生成的符号可包括量化的等级格式符号。这里,熵解码方法可与以上描述的熵编码方法相似。也就是说,熵解码方法可以是以上描述的熵编码方法的逆过程。
量化的系数可由反量化单元220进行反量化。反量化单元220可通过对量化的系数执行反量化来生成反量化的系数。此外,反量化的系数可由逆变换单元230进行逆变换。逆变换单元230可通过对反量化的系数执行逆变换来生成重建的残差块。作为对量化的系数执行反量化和逆变换的结果,可生成重建的残差块。这里,当生成重建的残差块时,反量化单元220可将量化矩阵应用于量化的系数。
当使用帧内模式时,帧内预测单元240可通过执行空间预测来产生预测块,其中,所述空间预测使用在目标块周围的先前被解码的邻近块的像素值。
帧间预测单元250可包括运动补偿单元。可选地,帧间预测单元250可被指定为“运动补偿单元”。
当使用帧间模式时,运动补偿单元250可通过执行运动补偿来产生预测块,其中,所述运动补偿使用运动矢量和被存储在参考画面缓冲器270中的参考图像。
运动补偿单元可在运动矢量具有除了整数之外的值时将插值滤波器应用于参考图像的部分区域,并且可使用被应用了插值滤波器的参考图像来产生预测块。为了执行运动补偿,运动补偿单元可基于CU确定跳过模式、合并模式、高级运动矢量预测(AMVP)模式和当前画面参考模式中的哪一种模式对应于用于CU中包括的PU的运动补偿方法,并且可根据所确定的模式来执行运动补偿。
重建的残差块和预测块可由加法器255彼此相加。加法器255可通过将重建的残差块和预测块相加来产生重建块。
重建块可通过滤波器单元260进行滤波。滤波器单元260可将去块滤波器、SAO滤波器和ALF中的至少一个应用于重建块或重建画面。
通过滤波器单元260滤波的重建块可被存储在参考画面缓冲器270中。通过滤波器单元260滤波的重建块可以是参考画面的一部分。换句话说,参考图像可以是由通过滤波器单元260滤波的重建块构成的图像。存储的参考图像随后可被用于帧间预测。
图3是示意性地示出当图像被编码和解码时图像的分区结构的示图。
图3可示意性地示出单个单元被分区为多个子单元的示例。
为了有效地对图像进行分区,可在编码和解码中使用编码单元(CU)。术语“单元”可被用于共同地指定1)包括图像样点的块和2)语法元素。例如,“单元的分区”可表示“与单元相应的块的分区”。
CU可被用作用于图像编码/解码的基本单元。CU可被用作在图像编码/解码中从帧内模式和帧间模式选择的一个模式被应用到的单元。换句话说,在图像编码/解码中,可确定帧内模式和帧间模式中的哪一个模式将被应用于每个CU。
此外,CU可以是对变换系数进行预测、变换、量化、逆变换、反量化和编码/解码的基本单元。
参照图3,图像300可被顺序地分区为与最大编码单元(LCU)相应的单元,并且图像300的分区结构可根据LCU被确定。这里,LCU可被用于具有与编码树单元(CTU)相同的含义。
对单元进行分区可表示对与单元相应的块进行分区。块分区信息可包括关于单元的深度的深度信息。深度信息可指示单元被分区的次数和/或单元被分区的程度。单个单元可被分层分区为子单元,同时所述单个单元具有基于树结构的深度信息。每个被分区出的子单元可具有深度信息。深度信息可以是指示CU的尺寸的信息。可针对每个CU存储深度信息。每个CU可具有深度信息。
分区结构可表示LCU 310中的用于对图像进行有效编码的编码单元(CU)的分布。可根据单个CU是否将被分区为多个CU来确定这种分布。通过进行分区而产生的CU的数量可以是正整数2或更大,包括2、4、8、16等。根据通过进行分区而产生的CU的数量,通过进行分区而产生的每个CU的水平尺寸和垂直尺寸可小于被分区之前的CU的水平尺寸和垂直尺寸。
每个被分区出的CU可按照相同的方式被递归地分区为四个CU。与被分区之前的CU的水平尺寸和垂直尺寸中的至少一个相比,经由递归分区,每个被分区出的CU的水平尺寸和垂直尺寸中的至少一个可被减小。
可递归地执行CU的分区直到预定义的深度或预定义的尺寸为止。例如,LCU的深度可以是0,最小编码单元(SCU)的深度可以是预定义的最大深度。这里,如上所述,LCU可以是具有最大编码单元尺寸的CU,SCU可以是具有最小编码单元尺寸的CU。
可在LCU 310处开始进行分区,并且每当CU的水平尺寸和/或垂直尺寸通过进行分区而减小时,CU的深度可增加1。
例如,对于各个深度,未被分区的CU可具有2N×2N的尺寸。此外,在CU被分区的情况下,尺寸为2N×2N的CU可被分区为尺寸均为N×N的四个CU。每当深度增加1时,N的值可减半。
参照图3,深度为0的LCU可具有64×64个像素或64×64的块。0可以是最小深度。深度为3的SCU可具有8×8个像素或8×8的块。3可以是最大深度。这里,作为LCU的具有64×64的块的CU可用深度0来表示。具有32×32的块的CU可以用深度1来表示。具有16×16的块的CU可以用深度2来表示。作为SCU的具有8×8的块的CU可以用深度3来表示。
关于相应CU是否被分区的信息可以用CU的分区信息来表示。分区信息可以是1比特信息。除了SCU之外的所有CU可包括分区信息。例如,未被分区的CU的分区信息的值可以是0。被分区的CU的分区信息的值可以是1。
例如,当单个CU被分区为四个CU时,通过进行分区而产生的四个CU中的每个CU的水平尺寸和垂直尺寸可以是在被分区之前的CU的水平尺寸和垂直尺寸的一半。当具有32×32的尺寸的CU被分区为四个CU时,被分区出的四个CU中的每个CU的尺寸可以是16×16。当单个CU被分区为四个CU时,可认为CU已经以四叉树结构被分区。
例如,当单个CU被分区成两个CU时,通过进行分区而产生的两个CU中的每个CU的水平尺寸或垂直尺寸可以是在被分区之前的CU的水平尺寸或垂直尺寸的一半。当具有32×32的尺寸的CU被垂直分区为两个CU时,被分区出的两个CU中的每个CU的尺寸可以是16×32。当单个CU被分区为两个CU时,可认为CU已经以二叉树结构被分区。
可将四叉树分区和二叉树分区两者应用于图3的LCU 310。
图4是示出编码单元(CU)能够包括的预测单元(PU)的形式的示图。
在从LCU分区出的CU中,可将不再被分区的CU划分为一个或更多个预测单元(PU)。这种划分也被称为“分区”。
PU可以是用于预测的基本单元。PU可在跳过模式、帧间模式和帧内模式中的任意一个模式下被编码和解码。可根据各个模式将PU分区为各种形状。例如,以上参照图1描述的目标块和以上参照图2描述的目标块可以均是PU。
在跳过模式下,在CU中可不存在分区。在跳过模式下,可支持2N×2N模式410,而不进行分区,其中,在2N×2N模式410中,PU的尺寸和CU的尺寸彼此相同。
在帧间模式下,在CU中可存在8种类型的分区形状。例如,在帧间模式下,可支持2N×2N模式410、2N×N模式415、N×2N模式420、N×N模式425、2N×nU模式430、2N×nD模式435、nL×2N模式440和nR×2N模式445。
在帧内模式下,可支持2N×2N模式410和N×N模式425。
在2N×2N模式410下,可对尺寸为2N×2N的PU进行编码。尺寸为2N×2N的PU可表示尺寸与CU的尺寸相同的PU。例如,尺寸为2N×2N的PU可具有尺寸64×64、32×32、16×16或8×8。
在N×N模式425下,可对尺寸为N×N的PU进行编码。
例如,在帧内预测中,当PU的尺寸是8×8时,可对四个分区出的PU进行编码。每个分区出的PU的尺寸可以是4×4。
当在帧内模式下对PU进行编码时,可使用多个帧内预测模式中的任意一个对PU进行编码。例如,HEVC技术可提供35个帧内预测模式,PU可在所述35个帧内预测模式中的任意一个下被编码。
可基于率失真代价来确定2N×2N模式410和N×N模式425中的哪一个模式将被用于对PU进行编码。
编码设备100可对尺寸为2N×2N的PU执行编码操作。这里,编码操作可以是在能够被编码设备100使用的多个帧内预测模式中的每个模式下对PU进行编码的操作。通过编码操作,可推导出用于尺寸为2N×2N的PU的最佳帧内预测模式。该最佳帧内预测模式可以是能够被编码设备100使用的多个帧内预测模式之中的在对尺寸为2N×2N的PU进行编码时出现最小率失真代价的帧内预测模式。
此外,编码设备100可顺序地对通过进行N×N分区而获得的各个PU执行编码操作。这里,编码操作可以是在能够被编码设备100使用的多个帧内预测模式中的每个模式下对PU进行编码的操作。通过编码操作,可推导出用于尺寸为N×N的PU的最佳帧内预测模式。该最佳帧内预测模式可以是能够被编码设备100使用的多个帧内预测模式之中的在对尺寸为N×N的PU进行编码时出现最小率失真代价的帧内预测模式。
编码设备100可基于尺寸为2N×2N的PU的率失真代价与尺寸为N×N的PU的率失真代价之间的比较来确定尺寸为2N×2N的PU和尺寸为N×N的PU中的哪一个将被编码。
图5是示出能够被包括在CU中的变换单元(TU)的形式的示图。
变换单元(TU)可以是CU中被用于诸如变换、量化、逆变换、反量化、熵编码和熵解码的过程的基本单元。TU可具有正方形或矩形的形状。
在从LCU分区出的CU中,可将不再被分区为CU的CU分区为一个或更多个TU。这里,TU的分区结构可以是四叉树结构。例如,如图5中所示,可根据四叉树结构将单个CU 510分区一次或更多次。通过这种分区,单个CU 510可由具有各种尺寸的TU组成。
在编码设备100中,尺寸为64×64的编码树单元(CTU)可按照递归四叉树结构被分区为多个更小的CU。单个CU可被分区为具有相同尺寸的四个CU。每个CU可被递归划分,并且可具有四叉树结构。
CU可具有给定的深度。当CU被分区时,通过进行分区而产生的CU可具有从被分区的CU的深度增加1的深度。
例如,CU的深度可具有范围从0到3的值。根据CU的深度,CU的尺寸范围可从64×64的尺寸到8×8的尺寸。
通过对CU的递归分区,可选择产生最小率失真代价的最佳分区方法。
图6是用于解释帧内预测处理的实施例的示图。
从图6中的图的中心径向延伸的箭头表示帧内预测模式的预测方向。此外,出现在箭头附近的数字可表示被分配给帧内预测模式或被分配给帧内预测模式的预测方向的模式值的示例。
可使用与目标块邻近的块的参考样点来执行帧内编码和/或解码。邻近块可以是邻近的重建块。例如,可使用在每个邻近的重建块中包括的参考样点的值或者邻近的重建块的编码参数来执行帧内编码和/或解码。
编码设备100和/或解码设备200可通过基于关于目标图像中的样点的信息对目标块执行帧内预测来产生预测块。当帧内预测被执行时,编码设备100和/或解码设备200可通过基于关于目标图像中的样点的信息执行帧内预测来产生针对目标块的预测块。当帧内预测被执行时,编码设备100和/或解码设备200可基于至少一个重建的参考样点来执行方向预测和/或非方向预测。
预测块可以是作为执行帧内预测的结果而产生的块。预测块可对应于CU、PU和TU中的至少一个。
预测块的单元可具有与CU、PU和TU中的至少一个相应的尺寸。预测块可具有尺寸为2N×2N或N×N的正方形形状。尺寸N×N可包括尺寸4×4、8×8、16×16、32×32、64×64等。
可选地,预测块可以是尺寸为2×2、4×4、8×8、16×16、32×32、64×64等的正方形块或者尺寸为2×8、4×8、2×16、4×16、8×16等的矩形块。
可考虑用于目标块的帧内预测模式执行帧内预测。目标块可具有的帧内预测模式的数量可以是预定义的固定值,并且可以是根据预测块的属性不同地确定的值。例如,预测块的属性可包括预测块的尺寸、预测块的类型等。
例如,不论预测块的尺寸如何,帧内预测模式的数量都可被固定为35。可选地,帧内预测模式的数量可以是例如3、5、9、17、34、35或36。
帧内预测模式可以是非方向模式或方向模式。例如,如图6中所示,帧内预测模式可包括两种非方向模式和33种方向模式。
所述两种非方向模式可包括DC模式和平面模式。
所述方向模式可以是具有特定方向或特定角度的模式。
帧内预测模式中的每一个可用模式编号、模式值和模式角度中的至少一个来表示。帧内预测模式的数量可以是M。M的值可以是1或更大。换句话说,帧内预测模式的数量可以是M,其中,M包括非方向模式的数量和方向模式的数量。
帧内预测模式的数量可被固定为M,而不管块的尺寸如何。可选地,帧内预测模式的数量可根据块的尺寸和/或颜色分量的类型而不同。例如,预测模式的数量可根据颜色分量是亮度信号还是色度信号而不同。例如,块的尺寸越大,帧内预测模式的数量越大。可选地,与亮度分量块相应的帧内预测模式的数量可大于与色度分量块相应的帧内预测模式的数量。
例如,在模式值为26的垂直模式中,可基于参考样点的像素值沿垂直方向执行预测。例如,在模式值为10的水平模式中,可基于参考样点的像素值沿水平方向执行预测。
即使在除了上述模式之外的方向模式中,编码设备100和解码设备200仍可使用依据与方向模式相应的角度的参考样点对目标单元执行帧内预测。
位于相对于垂直模式的右侧的帧内预测模式可被称为“垂直-右侧模式”。位于水平模式下方的帧内预测模式可被称为“水平-下方模式”。例如,在图6中,模式值是27、28、29、30、31、32、33和34之一的帧内预测模式可以是垂直-右侧模式613。模式值是2、3、4、5、6、7、8和9之一的帧内预测模式可以是水平-下方模式616。
非方向模式可包括DC模式和平面模式。例如,DC模式的模式值可以是1。平面模式的模式值可以是0。
方向模式可包括角度模式。在多个帧内预测模式中,除了DC模式和平面模式之外的其余模式可以是方向模式。
当帧内预测模式是DC模式时,可基于多个参考像素的像素值的平均值生成预测块。例如,可基于多个参考像素的像素值的平均值确定预测块的像素的值。
以上描述的帧内预测模式的数量以及各个帧内预测模式的模式值仅是示例性的。可根据实施例、实现和/或要求来不同地定义以上描述的帧内预测模式的数量以及各个帧内预测模式的模式值。
为了对目标块执行帧内预测,可执行检查在重建的邻近块中包括的样点是否可被用作目标块的参考样点的步骤。当在邻近块中的样点之中存在不能被用作目标块的参考样点的样点时,经由使用在重建的邻近块中包括的样点之中的至少一个样点值的插值和/或复制而产生的值可替换不能被用作参考样点的样点的样点值。当经由复制和/或插值而产生的值替换现有样点的样点值时,该样点可被用作目标块的参考样点。
在帧内预测中,可基于帧内预测模式和目标块的尺寸中的至少一个将滤波器应用于参考样点和预测样点中的至少一个。
当帧内预测模式是平面模式时,可在产生目标块的预测块时根据预测目标样点在预测块中的位置使用目标块的上参考样点、目标块的左参考样点、目标块的右上参考样点和目标块的左下参考样点的加权和来产生预测目标块的样点值。
当帧内预测模式是DC模式时,可在产生目标块的预测块时使用目标块上方的参考样点和目标块左侧的参考样点的平均值。
当帧内预测模式是方向模式时,可使用目标块的上参考样点、左参考样点、右上参考样点和/或左下参考样点来产生预测块。
为了产生上述预测样点,可执行基于实数的插值。
目标块的帧内预测模式可从与目标块相邻的邻近块的帧内预测执行预测,并且用于预测的信息可被熵编码/解码。
例如,当目标块和邻近块的帧内预测模式彼此相同时,可使用预定义的标志来用信号传送目标块和邻近块的帧内预测模式是相同的。
例如,可用信号传送用于指示在多个邻近块的帧内预测模式之中与目标块的帧内预测模式相同的帧内预测模式的指示符。
当目标块和邻近块的帧内预测模式彼此不同时,可基于邻近块的帧内预测模式对目标块的帧内预测模式信息进行熵编码/解码。
图7是用于解释在帧内预测过程中使用的参考样点的位置的示图。
图7示出了用于对目标块进行帧内预测的参考样点的位置。参照图7,用于对目标块进行帧内预测的重建参考样点可包括左下参考样点731、左参考样点733、左上角参考样点735、上参考样点737和右上参考样点739。
例如,左参考样点733可表示与目标块的左侧相邻的重建参考像素。上参考样点737可表示与目标块的顶部相邻的重建参考像素。左上角参考样点735可表示位于目标块的左上角处的重建参考像素。左下参考样点731可表示在位于与由左参考样点733组成的左侧样点线相同的线上的样点之中的位于所述左侧样点线下方的参考样点。右上参考样点739可表示在位于与由上参考样点737组成的上方样点线相同的线上的样点之中的位于所述上方样点线右侧的参考样点。
当目标块的尺寸是N×N时,左下参考样点731、左参考样点733、上参考样点737和右上参考样点739的数量可以均是N。
通过对目标块执行帧内预测,可产生预测块。产生预测块的过程可包括确定预测块中的像素的值。目标块和预测块的尺寸可以相同。
用于对目标块进行帧内预测的参考样点可根据目标块的帧内预测模式而改变。帧内预测模式的方向可表示参考样点与预测块的像素之间的依赖关系。例如,指定参考样点的值可被用作预测块中的一个或更多个指定像素的值。在这种情况下,所述指定参考样点和预测块中的所述一个或更多个指定像素可以是位于沿帧内预测模式的方向的直线上的样点和像素。换句话说,所述指定参考样点的值可被复制作为位于与帧内预测模式的方向相反的方向上的像素的值。可选地,在预测块中的像素的值可以是相对于该像素的位置位于帧内预测模式的方向上的参考样点的值。
在示例中,当目标块的帧内预测模式是模式值为26的垂直模式时,上参考样点737可被用于帧内预测。当帧内预测模式是垂直模式时,预测块中的像素的值可以是垂直地位于该像素的位置上方的参考样点的值。因此,与目标块的顶部相邻的上参考样点737可被用于帧内预测。此外,在预测块的一行中的像素的值可与上参考样点737的像素的值相同。
在示例中,当目标块的帧内预测模式是模式值为10的水平模式时,左参考样点733可被用于帧内预测。当帧内预测模式是水平模式时,预测块中的像素的值可以是水平地位于该像素的位置左侧的参考样点的值。因此,与目标块的左侧相邻的左参考样点733可被用于帧内预测。此外,在预测块的一列中的像素的值可与左参考样点733的像素的值相同。
在示例中,当当前块的帧内预测模式的模式值是18时,左参考样点733中的至少一些、左上角参考样点735、以及上参考样点737中的至少一些可被用于帧内预测。当帧内预测模式的模式值是18时,预测块中的像素的值可以是对角地位于该像素的左上角处的参考样点的值。
此外,在模式值为27、28、29、30、31、32、33或34的帧内预测模式被使用的情况下,右上参考样点739中的至少一部分可被用于帧内预测。
此外,在模式值为2、3、4、5、6、7、8或9的帧内预测模式被使用的情况下,左下参考样点731中的至少一部分可被用于帧内预测。
此外,在模式值是范围从11至25的值的帧内预测模式的情况下,左上角参考样点735可被用于帧内预测。
用于确定预测块中的一个像素的像素值的参考样点的数量可以是1或者2或者更多。
如上所述,可根据像素的位置和由帧内预测模式的方向所指示的参考样点的位置来确定预测块中的像素的像素值。当像素的位置以及由帧内预测模式的方向所指示的参考样点的位置是整数位置时,由整数位置所指示的一个参考样点的值可被用于确定预测块中的像素的像素值。
当像素的位置以及由帧内预测模式的方向所指示的参考样点的位置不是整数位置时,可产生基于与该参考样点的位置最接近的两个参考样点的内插参考样点。内插参考样点的值可被用于确定预测块中的像素的像素值。换句话说,当预测块中的像素的位置以及由帧内预测模式的方向所指示的参考样点的位置指示两个参考样点之间的位置时,可产生基于这两个样点的值的内插值。
经由预测而产生的预测块可以与原始目标块不同。换句话说,可能存在预测误差,该预测误差是目标块与预测块之间的差,并且也可能存在在目标块的像素与预测块的像素之间的预测误差。
在下文中,术语“差”、“误差”和“残差”可被用于具有相同的含义,并且可彼此互换使用。
例如,在方向帧内预测的情况下,预测块的像素与参考样点之间的距离越长,则可能发生的预测误差越大。这种预测误差可导致产生的预测块与邻近块之间的不连续性。
为了减少预测误差,可使用针对预测块的滤波操作。滤波操作可被配置为自适应地将滤波器应用于预测块中的被认为具有较大预测误差的区域。例如,被认为具有较大预测误差的区域可以是预测块的边界。此外,在预测块中被认为具有较大预测误差的区域可根据帧内预测模式而不同,并且滤波器的特性也可根据帧内预测模式而不同。
图8是用于解释帧间预测过程的实施例的示图。
图8中示出的矩形可表示图像(或画面)。此外,在图8中,箭头可表示预测方向。也就是说,可根据预测方向对每个图像进行编码和/或解码。
图像可根据编码类型被分类为帧内画面(I画面)、单向预测画面或预测编码画面(P画面)、以及双向预测画面或双向预测编码画面(B画面)。可根据每个画面的编码类型对每个画面进行编码。
当作为将被编码的目标的目标图像是I画面时,目标图像可在不进行参照其它图像的帧间预测的情况下使用图像本身包含的数据被编码。例如,I画面可仅经由帧内预测被编码。
当目标图像是P画面时,可经由使用存在于一个方向上的参考画面的帧间预测对目标图像进行编码。这里,所述一个方向可以是前向方向或后向方向。
当目标图像是B画面时,可经由使用存在于两个方向上的参考画面的帧间预测对图像进行编码,或者可以经由使用存在于前向方向和后向方向之一上的参考画面的帧间预测对图像进行编码。这里,所述两个方向可以是前向方向和后向方向。
使用参考画面进行编码和/或解码的P画面和B画面可被视为使用帧间预测的图像。
下面,将详细地描述根据实施例的在帧间模式下的帧间预测。
可使用运动信息来执行帧间预测。
在帧间模式下,编码设备100可对目标块执行帧间预测和/或运动补偿。解码设备200可对目标块执行与由编码设备100执行的帧间预测和/或运动补偿相应的帧间预测和/或运动补偿。
可由编码设备100和解码设备200在帧间预测期间单独地推导目标块的运动信息。可使用重建的邻近块的运动信息、col块的运动信息和/或与col块相邻的块的运动信息来推导运动信息。
例如,编码设备100或解码设备200可通过将空间候选和/或时间候选的运动信息用作目标块的运动信息来执行预测和/或运动补偿。目标块可表示PU和/或PU分区。
空间候选可以是在空间上与目标块相邻的重建块。
时间候选可以是在先前重建的同位画面(col画面)中的与目标块相应的重建块。
在帧间预测中,编码设备100和解码设备200可通过利用空间候选和/或时间候选的运动信息来提高编码效率和解码效率。空间候选的运动信息可被称为“空间运动信息”。时间候选的运动信息可被称为“时间运动信息”。
下面,空间候选的运动信息可以是包括空间候选的PU的运动信息。时间候选的运动信息可以是包括时间候选的PU的运动信息。候选块的运动信息可以是包括候选块的PU的运动信息。
可使用参考画面执行帧间预测。
参考画面可以是在目标画面之前的画面和在目标画面之后的画面中的至少一个。参考画面可以是用于目标块的预测的图像。
在帧间预测中,可利用用于指示参考画面的参考画面索引(或refIdx)、随后将被描述的运动矢量等来指定参考画面中的区域。这里,在参考画面中指定的区域可指示参考块。
帧间预测可选择参考画面,也可以从参考画面选择与目标块相应的参考块。此外,帧间预测可使用所选择的参考块来产生针对目标块的预测块。
可由编码设备100和解码设备200中的每一个在帧间预测期间推导运动信息。
空间候选可以是1)存在于目标画面中的2)已经在先前经由编码和/或解码而重建并且3)与目标块相邻或位于目标块的拐角处的块。这里,“位于目标块的拐角处的块”可以是与水平相邻于目标块的邻近块垂直相邻的块,或者是与垂直相邻于目标块的邻近块水平相邻的块。此外,“位于目标块的拐角处的块”可具有与“与目标块的拐角相邻的块”相同的含义。“位于目标块的拐角处的块”的含义可被包括在“与目标块相邻的块”的含义中。
例如,空间候选可以是位于目标块左侧的重建块、位于目标块上方的重建块、位于目标块左下角的重建块、位于目标块右上角的重建块或位于目标块左上角的目标块。
编码设备100和解码设备200中的每一个可识别存在于col画面中的在空间上与目标块相应的位置的块。目标块在目标画面中的位置和所识别的块在col画面中的位置可彼此相应。
编码设备100和解码设备200中的每一个可将存在于针对所识别的块的预定义相关位置处的col块确定为时间候选。所述预定义相关位置可以是存在于所识别的块内部和/或外部的位置。
例如,col块可包括第一col块和第二col块。当所识别的块的坐标是(xP,yP)并且所识别的块的尺寸用(nPSW,nPSH)表示时,第一col块可以是位于坐标(xP+nPSW,yP+nPSH)处的块。第二col块可以是位于坐标(xP+(nPSW>>1),yP+(nPSH>>1))处的块。当第一col块不可用时,可选择性地使用第二col块。
可基于col块的运动矢量确定目标块的运动矢量。编码设备100和解码设备200中的每一个可对col块的运动矢量进行缩放。col块的经缩放的运动矢量可被用作目标块的运动矢量。此外,存储在列表中的时间候选的运行信息的运动矢量可以是经缩放的运动矢量。
目标块的运动矢量与col块的运动矢量的比率可与第一距离与第二距离的比率相同。第一距离可以是参考画面与目标块的目标画面之间的距离。第二距离可以是参考画面与col块的col画面之间的距离。
用于推导运动信息的方案可根据目标块的帧间预测模式而改变。例如,作为被应用于帧间预测的帧间预测模式,可存在高级运动矢量预测因子(AMVP)模式、合并模式、跳过模式、当前画面参考模式等。合并模式也可被称为“运动合并模式”。下面将详细描述各个模式。
1)AMVP模式
当使用AMVP模式时,编码设备100可在目标块的邻近区域中搜索相似块。编码设备100可通过使用找到的相似块的运动信息对目标块执行预测来获取预测块。编码设备100可对作为目标块与预测块之间的差的残差块进行编码。
1-1)创建预测运动矢量候选的列表
当AMVP模式被用作预测模式时,编码设备100和解码设备200中的每一个可使用空间候选的运动矢量、时间候选的运动矢量和零矢量来创建预测运动矢量候选的列表。预测运动矢量候选列表可包括一个或更多个预测运动矢量候选。空间候选的运动矢量、时间候选的运动矢量和零矢量中的至少一个可被确定并被用作预测运动矢量候选。
在下文中,术语“预测运动矢量(候选)”和“运动矢量(候选)”可被用于具有相同的含义,并且可彼此互换使用。
在下文中,术语“预测运动矢量候选”和“AMVP候选”可被用于具有相同的含义,并且可彼此互换地使用。
在下文中,术语“预测运动矢量候选列表”和“AMVP候选列表”可被用于具有相同的含义,并且可彼此互换使用。
空间运动候选可包括重建的空间邻近块。换句话说,重建的邻近块的运动矢量可被称为“空间预测运动矢量候选”。
时间运动候选可包括col块和与col块相邻的块。换句话说,col块的运动矢量或与col块相邻的块的运动矢量可被称为“时间预测运动矢量候选”。
零矢量可以是(0,0)运动矢量。
预测运动矢量候选可以是用于对运动矢量进行预测的运动矢量预测因子。此外,在编码设备100中,每个预测运动矢量候选可以是用于运动矢量的初始搜索位置。
1-2)使用预测运动矢量候选的列表搜索运动矢量
编码设备100可使用预测运动矢量候选的列表在搜索范围内确定将被用于对目标块进行编码的运动矢量。此外,编码设备100可在存在于预测运动矢量候选列表中的预测运动矢量候选之中确定将被用作目标块的预测运动矢量的预测运动矢量候选。
将被用于对目标块进行编码的运动矢量可以是可按最小代价编码的运动矢量。
此外,编码设备100可确定是否使用AMVP模式对目标块进行编码。
1-3)对帧间预测信息的传输
编码设备100可产生包括帧间预测所需的帧间预测信息的比特流。解码设备200可使用比特流的帧间预测信息对目标块执行帧间预测。
帧间预测信息可包含1)指示AMVP是否被使用的模式信息、2)预测运动矢量索引、3)运动矢量差(MVD)、4)参考方向和5)参考画面索引。
在下文中,术语“预测运动矢量索引”和“AMVP索引”可被用于具有相同的含义,并且可彼此互换使用。此外,帧间预测信息可包含残差信号。
当模式信息指示AMVP模式被使用时,解码设备200可通过熵解码从比特流获取预测运动矢量索引、MVD、参考方向和参考画面索引。
预测运动矢量索引可指示在预测运动矢量候选列表中包括的预测运动矢量候选之中的将被用于对目标块进行预测的预测运动矢量候选。
1-4)使用帧间预测信息的AMVP模式下的帧间预测
解码设备200可使用预测运动矢量候选列表来推导预测运动矢量候选,并且可基于推导的预测运动矢量候选来确定目标块的运动信息。
解码设备200可使用预测运动矢量索引在预测运动矢量候选列表中包括的预测运动矢量候选之中确定用于目标块的运动矢量候选。解码设备200可从预测运动矢量候选列表中包括的预测运动矢量候选之中选择由预测运动矢量索引所指示的预测运动矢量候选作为目标块的预测运动矢量。
实际将被用于对目标块进行帧间预测的运动矢量可能不与预测运动矢量匹配。为了指示实际将被用于对目标块进行帧间预测的运动矢量与预测运动矢量之间的差,可使用MVD。编码设备100可推导与实际将被用于对目标块进行帧间预测的运动矢量相似的预测运动矢量,以便使用尽可能小的MVD。
MVD可以是目标块的运动矢量与预测运动矢量之间的差。编码设备100可计算MVD,并可对MVD进行熵编码。
可通过比特流将MVD从编码设备100发送到解码设备200。解码设备200可对接收的MVD进行解码。解码设备200可通过对解码的MVD和预测运动矢量进行求和来推导目标块的运动矢量。换句话说,由解码设备200推导出的目标块的运动矢量可以是熵解码的MVD和运动矢量候选之和。
参考方向可指示将被用于对目标块进行预测的参考画面的列表。例如,参考方向可指示参考画面列表L0和参考画面列表L1中的一个。
参考方向仅指示将被用于对目标块进行预测的参考画面列表,并且可不意味着参考画面的方向被限制为前向方向或后向方向。换句话说,参考画面列表L0和参考画面列表L1中的每一个可包括前向方向和/或后向方向上的画面。
参考方向是单向的可意味着使用单个参考画面列表。参考方向是双向的可意味着使用两个参考画面列表。换句话说,参考方向可指示以下情况之一:仅使用参考画面列表L0的情况、仅使用参考画面列表L1的情况、以及使用两个参考画面列表的情况。
参考画面索引可指示在参考画面列表中的参考画面之中的将被用于对目标块进行预测的参考画面。可由编码设备100对参考画面索引进行熵编码。经熵编码的参考画面索引可通过比特流由编码设备100用信号传送到解码设备200。
当两个参考画面列表被用于对目标块进行预测时,单个参考画面索引和单个运动矢量可被用于参考画面列表中的每一个。此外,当两个参考画面列表被用于对目标块进行预测时,可为目标块指定两个预测块。例如,可使用针对目标块的两个预测块的平均值或加权和来产生目标块的(最终)预测块。
可通过预测运动矢量索引、MVD、参考方向和参考画面索引来推导目标块的运动矢量。
解码设备200可基于推导出的运动矢量和参考画面索引来产生针对目标块的预测块。例如,预测块可以是在由参考画面索引所指示的参考画面中的由推导出的运动矢量所指示的参考块。
由于预测运动矢量索引和MVD被编码,而目标块的运动矢量自身不被编码,因此从编码设备100发送到解码设备200的比特的数量可减少,并且编码效率可提高。
可将重建的邻近块的运动信息用于目标块。在特定的帧间预测模式中,编码设备100可不单独对目标块的实际运动信息进行编码。目标块的运动信息不被编码,而是可对额外信息进行编码,其中,所述额外信息使得能够使用重建的邻近块的运动信息来推导目标块的运动信息。由于所述额外信息被编码,因此被发送到解码设备200的比特的数量可减少,并且编码效率可提高。
例如,作为目标块的运动信息不被直接编码的帧间预测模式,可存在跳过模式和/或合并模式。这里,编码设备100和解码设备200中的每一个可使用指示在重建的邻近单元之中的其运动信息将被用作目标单元的运动信息的单元的指示符和/或索引。
2)合并模式
作为用于推导目标块的运动信息的方案,存在合并。术语“合并”可意味着对多个块的运动进行合并。“合并”可意味着一个块的运动信息也被应用于其它块。换句话说,合并模式可以是从邻近块的运动信息推导目标块的运动信息的模式。
当使用合并模式时,编码设备100可使用空间候选的运动信息和/或时间候选的运动信息来预测目标块的运动信息。空间候选可包括在空间上与目标块相邻的重建的空间邻近块。空间上相邻的块可包括左侧相邻块和上方相邻块。时间候选可包括col块。术语“空间候选”和“空间合并候选”可被用于具有相同的含义,并且可彼此互换使用。术语“时间候选”和“时间合并候选”可被用于具有相同的含义,并且可彼此互换使用。
编码设备100可经由预测来获取预测块。编码设备100可对作为目标块与预测块之间的差的残差块进行编码。
2-1)创建合并候选列表
当使用合并模式时,编码设备100和解码设备200中的每一个可使用空间候选的运动信息和/或时间候选的运动信息来创建合并候选列表。运动信息可包括1)运动矢量、2)参考画面索引和3)参考方向。参考方向可以是单向或双向。
合并候选列表可包括合并候选。合并候选可以是运动信息。换句话说,合并候选列表可以是存储多条运动信息的列表。
合并候选可以是多条时间候选和/或空间候选的运动信息。此外,合并候选列表可包括通过对已存在于合并候选列表中的合并候选进行组合而产生的新的合并候选。换句话说,合并候选列表可包括通过对先前存在于合并候选列表中的多条运动信息进行组合而产生的新的运动信息。
合并候选可以是推导帧间预测信息的特定模式。合并候选可以是指示推导帧间预测信息的特定模式的信息。可根据合并候选所指示的特定模式来推导目标块的帧间预测信息。此外,所述特定模式可包括推导一系列帧间预测信息的处理。这种特定模式可以是帧间预测信息推导模式或运动信息推导模式。
可根据通过合并索引在合并候选列表中的合并候选中选择的合并候选所指示的模式来推导目标块的帧间预测信息。
例如,合并候选列表中的运动信息推导模式可以是以下模式中的至少一个:1)针对子块单元的运动信息推导模式;2)仿射运动信息推导模式。此外,合并候选列表可包括零矢量的运动信息。零矢量也可被称为“零合并候选”。
换句话说,合并候选列表中的多条运动信息可以是以下信息中的至少一个:1)空间候选的运动信息、2)时间候选的运动信息、3)通过对先前存在于合并候选列表中的多条运动信息进行组合而产生的运动信息、以及4)零矢量。
运动信息可包括1)运动矢量、2)参考画面索引和3)参考方向。参考方向也可被称为“帧间预测指示符”。参考方向可以是单向或双向。单向参考方向可指示L0预测或L1预测。
可在执行合并模式下的预测之前创建合并候选列表。
可预先定义合并候选列表中的合并候选的数量。编码设备100和解码设备200中的每一个可根据预定义的方案和预定义的优先级将合并候选添加到合并候选列表,使得合并候选列表具有预定义数量的合并候选。可使用预定义的方案和预定义的优先级将编码设备100的合并候选列表和解码设备200的合并候选列表制作为彼此相同。
可基于CU或PU来应用合并。当基于CU或PU执行合并时,编码设备100可将包括预定义的信息的比特流发送到解码设备200。例如,所述预定义的信息可包含1)指示是否针对各个块分区执行合并的信息、以及2)关于在作为针对目标块的空间候选和/或时间候选的块之中的将被执行合并的块的信息。
2-2)使用合并候选列表搜索运动矢量
编码设备100可确定将被用于对目标块进行编码的合并候选。例如,编码设备100可使用合并候选列表中的合并候选对目标块执行预测,并且可产生针对合并候选的残差块。编码设备100可使用在预测和残差块的编码中产生最小代价的合并候选来对目标块进行编码。
此外,编码设备100可确定是否使用合并模式对目标块进行编码。
2-3)对帧间预测信息的传输
编码设备100可产生包括帧间预测所需的帧间预测信息的比特流。编码设备100可通过对帧间预测信息执行熵编码来产生经熵编码的帧间预测信息,并且可将包括经熵编码的帧间预测信息的比特流发送到解码设备200。经熵编码的帧间预测信息可由编码设备100通过比特流用信号传送到解码设备200。
解码设备200可使用比特流的帧间预测信息对目标块执行帧间预测。
帧间预测信息可包含1)指示合并模式是否被使用的模式信息和2)合并索引。
此外,帧间预测信息可包含残差信号。
解码设备200可仅在模式信息指示合并模式被使用时从比特流获取合并索引。
模式信息可以是合并标志。模式信息的单位可以是块。关于块的信息可包括模式信息,并且模式信息可指示合并模式是否被应用于块。
合并索引可指示在合并候选列表中包括的合并候选之中的将被用于对目标块进行预测的合并候选。可选地,合并索引可指示在与目标块在空间上或时间上相邻的邻近块之中的将与目标块合并的块。
编码设备100可从包括在合并候选列表中的合并候选中选择具有最高编码性能的合并候选,并且可设置合并索引的值,使得合并索引指示所选择的合并候选。
2-4)使用帧间预测信息的合并模式的帧间预测
解码设备200可使用在合并候选列表中包括的合并候选之中的由合并索引指示的合并候选对目标块执行预测。
可通过由合并索引指示的合并候选的运动矢量、参考画面索引和参考方向来指定目标块的运动矢量。
3)跳过模式
跳过模式可以是将空间候选的运动信息或时间候选的运动信息在没有改变的情况下应用于目标块的模式。此外,跳过模式可以是不使用残差信号的模式。换句话说,当使用跳过模式时,重建块可以是预测块。
合并模式与跳过模式之间的差异在于是否发送或使用残差信号。也就是说,除了不发送或使用残差信号之外,跳过模式可类似于合并模式。
当使用跳过模式时,编码设备100可通过比特流将与在作为空间候选或时间候选的块之中的其运动信息将被用作目标块的运动信息的块有关的信息发送到解码设备200。编码设备100可通过对该信息执行熵编码来产生经熵编码的信息,并且可通过比特流将经熵编码的信息用信号传送到解码设备200。
此外,当使用跳过模式时,编码设备100可不将其它语法信息(诸如MVD)发送到解码设备200。例如,当使用跳过模式时,编码设备100可不将与MVC、编码块标志和变换系数等级中的至少一个相关的语法元素用信号传送到解码设备200。
3-1)创建合并候选列表
跳过模式也可使用合并候选列表。换句话说,可在合并模式和跳过模式两者中使用合并候选列表。在这方面,合并候选列表也可被称为“跳过候选列表”或“合并/跳过候选列表”。
可选地,跳过模式可使用与合并模式的候选列表不同的额外候选列表。在这种情况下,在以下描述中,可分别用跳过候选列表和跳过候选来替换合并候选列表和合并候选。
可在执行跳过模式下的预测之前创建合并候选列表。
3-2)使用合并候选列表搜索运动矢量
编码设备100可确定将被用于对目标块进行编码的合并候选。例如,编码设备100可使用合并候选列表中的合并候选对目标块执行预测。编码设备100可使用在预测中产生最小代价的合并候选对目标块进行编码。
此外,编码设备100可确定是否使用跳过模式对目标块进行编码。
3-3)对帧间预测信息的传输
编码设备100可产生包括帧间预测所需的帧间预测信息的比特流。解码设备200可使用比特流的帧间预测信息对目标块执行帧间预测。
帧间预测信息可包括1)指示跳过模式是否被使用的模式信息和2)跳过索引。
跳过索引可与以上描述的合并索引相同。
当使用跳过模式时,可在不使用残差信号的情况下对目标块进行编码。帧间预测信息可不包含残差信号。可选地,比特流可不包括残差信号。
解码设备200可仅在模式信息指示跳过模式被使用时从比特流获取跳过索引。如上所述,合并索引和跳过索引可彼此相同。解码设备200可仅在模式信息指示合并模式或跳过模式被使用时从比特流获取跳过索引。
跳过索引可指示在合并候选列表中包括的合并候选之中的将被用于对目标块进行预测的合并候选。
3-4)使用帧间预测信息的跳过模式下的帧间预测
解码设备200可使用在合并候选列表中包括的合并候选之中的由跳过索引指示的合并候选对目标块执行预测。
可通过由跳过索引指示的合并候选的运动矢量、参考画面索引和参考方向来指定目标块的运动矢量。
4)当前画面参考模式
当前画面参考模式可表示这样的预测模式:该预测模式使用目标块所属的目标画面中的先前重建的区域。
可定义用于指定先前重建的区域的矢量。可使用目标块的参考画面索引来确定目标块是否已在当前画面参考模式下被编码。
指示目标块是否是以当前画面参考模式被编码的块的标志或索引可由编码设备100用信号传送到解码设备200。可选地,可通过目标块的参考画面索引来推断目标块是否是以当前画面参考模式被编码的块。
当目标块以当前画面参考模式被编码时,当前画面可被添加到针对目标块的参考画面列表中的固定位置或任意位置。
例如,所述固定位置可以是参考画面索引是0的位置或最后位置。
在目标画面被添加到参考画面列表中的任意位置时,指示这样的任意位置的额外参考画面索引可由编码设备100用信号传送到解码设备200。
在以上描述的AMVP模式、合并模式和跳过模式中,可使用列表的索引来指定在列表中的多条运动信息之中的将被用于对目标块进行预测的运动信息。
为了提高编码效率,编码设备100可仅用信号传送在列表中的元素之中的在对目标块的帧间预测中产生最小代价的元素的索引。编码设备100可对该索引进行编码,并且可用信号传送编码后的索引。
因此,必须能够由编码设备100和解码设备200使用相同的方案基于相同的数据来推导以上描述的列表(即,预测运动矢量候选列表和合并候选列表)。这里,所述相同的数据可包括重建画面和重建块。此外,为了使用索引指定元素,必须固定列表中的元素的顺序。
图9示出根据实施例的空间候选。
在图9中,示出了空间候选的位置。
在图的中央处的大块可表示目标块。五个小块可表示空间候选。
目标块的坐标可以是(xP,yP),目标块的尺寸可用(nPSW,nPSH)来表示。
空间候选A0可以是与目标块的左下角相邻的块。A0可以是占有位于坐标(xP-1,yP+nPSH+1)处的像素的块。
空间坐标A1可以是与目标块的左侧相邻的块。A1可以是在与目标块的左侧相邻的块之中的最下方的块。可选地,A1可以是与A0的顶部相邻的块。A1可以是占有位于坐标(xP-1,yP+nPSH)处的像素的块。
空间候选B0可以是与目标块的右上角相邻的块。B0可以是占有位于坐标(xP+nPSW+1,yP-1)处的像素的块。
空间候选B1可以是与目标块的顶部相邻的块。B1可以是在与目标块的顶部相邻的块之中的最右侧的块。可选地,B1可以是与B0的左侧相邻的块。B1可以是占有位于坐标(xP+nPSW,yP-1)处的像素的块。
空间候选B2可以是与目标块的左上角相邻的块。B2可以是占有位于坐标(xP-1,yP-1)处的像素的块。
对空间候选和时间候选的可用性的确定
为了将空间候选的运动信息或时间候选的运动信息包括在列表中,必须确定空间候选的运动信息或时间候选的运动信息是否可用。
在下文中,候选块可包括空间候选和时间候选。
例如,可通过顺序地应用以下步骤1)至步骤4)来执行所述确定。
步骤1)当包括候选块的PU位于画面的边界外时,候选块的可用性可被设置为“假”。表述“可用性被设置为假”可具有与“设置为不可用”相同的含义。
步骤2)当包括候选块的PU位于条带的边界外时,候选块的可用性可被设置为“假”。当目标块和候选块位于不同条带中时,候选块的可用性可被设置为“假”。
步骤3)当包括候选块的PU位于并行块的边界外时,候选块的可用性可被设置为“假”。当目标块和候选块位于不同并行块中时,候选块的可用性可被设置为“假”。
步骤4)当包括候选块的PU的预测模式是帧内预测模式时,候选块的可用性可被设置为“假”。当包括候选块的PU不使用帧间预测时,候选块的可用性可被设置为“假”。
图10示出根据实施例的将空间候选的运动信息添加到合并列表的顺序。
如图10中所示,当空间候选的多条运动信息被添加到合并列表时,可使用A1、B1、B0、A0和B2的顺序。也就是说,可按照A1、B1、B0、A0和B2的顺序将可用空间候选的多条运动信息添加到合并列表。
用于在合并模式和跳过模式下推导合并列表的方法
如上所述,可设置合并列表中的合并候选的最大数量。可用“N”来指示设置的最大数量。设置的数量可从编码设备100发送到解码设备200。条带的条带头可包括N。换句话说,可通过条带头来设置用于条带的目标块的合并列表中的合并候选的最大数量。例如,N的值基本上可以是5。
可按照以下步骤1)至4)的顺序将多条运动信息(即,合并候选)添加到合并列表中。
步骤1)在空间候选之中,可将可用空间候选添加到合并列表。可按照图10中示出的顺序来将可用空间候选的多条运动信息添加到合并列表。这里,当可用空间候选的运动信息与合并列表中已经存在的其它运动信息重叠时,可不将可用空间候选的运动信息添加到合并列表。检查相应运动信息是否与列表中存在的其它运动信息重叠的操作可被简称为“重叠检查”。
被添加的运动信息的最大条数可以是N。
步骤2)当合并列表中的运动信息的条数小于N并且时间候选可用时,可将时间候选的运动信息添加到合并列表。这里,当可用时间候选的运动信息与合并列表中已经存在的其它运动信息重叠时,可不将时间候选的运动信息添加到合并列表。
步骤3)当合并列表中的运动信息的条数小于N并且目标条带的类型是“B”时,可将通过组合的双向预测(双预测)而产生的组合运动信息添加到合并列表。
目标条带可以是包括目标块的条带。
组合运动信息可以是L0运动信息和L1运动信息的组合。L0运动信息可以是仅参照参考画面列表L0的运动信息。L1运动信息可以是仅参照参考画面列表L1的运动信息。
在合并列表中,可存在一条或更多条L0运动信息。此外,在合并列表中,可存在一条或更多条L1运动信息。
组合运动信息可包括一条或更多条组合运动信息。当产生组合运动信息时,可预先定义所述一条或更多条L0运动信息和所述一条或更多条L1运动信息之中的将被用于产生组合运动信息的步骤的L0运动信息和L1运动信息。可经由使用合并列表中的一对不同运动信息的组合的双向预测按照预定义的顺序来产生一条或更多条组合运动信息。所述一对不同运动信息中的一条运动信息可以是L0运动信息,并且所述一对不同运动信息中的另一条运动信息可以是L1运动信息。
例如,被添加有最高优先级的组合运动信息可以是具有合并索引0的L0运动信息和具有合并索引1的L1运动信息的组合。当具有合并索引0的运动信息不是L0运动信息时或者当具有合并索引1的运动信息不是L1运动信息时,可既不产生也不添加组合运动信息。接下来,被添加有下一优先级的组合运动信息可以是具有合并索引1的L0运动信息和具有合并索引0的L1运动信息的组合。随后的详细组合可符合视频编码/解码领域的其它组合。
这里,当组合运动信息与合并列表中已经存在的其它运动信息重叠时,可不将组合运动信息添加到合并列表。
步骤4)当合并列表中的运动信息的条数小于N时,可将零矢量的运动信息添加到合并列表。
零矢量运动信息可以是运动矢量是零矢量的运动信息。
零矢量运动信息的条数可以是一个或更多个。一条或更多条零矢量运动信息的参考画面索引可彼此不同。例如,第一零矢量运动信息的参考画面索引的值可以是0。第二零矢量运动信息的参考画面索引的值可以是1。
零矢量运动信息的条数可与参考画面列表中的参考画面的数量相同。
零矢量运动信息的参考方向可以是双向的。两个运动矢量可以是零矢量。零矢量运动信息的条数可以是参考画面列表L0中的参考画面的数量和参考画面列表L1中的参考画面的数量中较小的一个。可选地,当参考画面列表L0中的参考画面的数量和参考画面列表L1中的参考画面的数量彼此不同时,作为单向的参考方向可被用于可仅应用于单个参考画面列表的参考画面索引。
编码设备100和/或解码设备200可随后将零矢量运动信息添加到合并列表,同时改变参考画面索引。
当零矢量运动信息与合并列表中已经存在的其它运动信息重叠时,可不将零矢量运动信息添加到合并列表。
上述步骤1)至步骤4)的顺序仅是示例性的,并且可被改变。此外,可根据预定义的条件省略以上步骤中的一些步骤。
用于在AMVP模式下推导预测运动矢量候选列表的方法
可预先定义在预测运动矢量候选列表中的预测运动矢量候选的最大数量。可用N来指示预定义的最大数量。例如,预定义的最大数量可以是2。
可按照以下的步骤1)至步骤3)的顺序将多条运动信息(即,预测运动矢量候选)添加到预测运动矢量候选列表。
步骤1)可将空间候选之中的可用空间候选添加到预测运动矢量候选列表。空间候选可包括第一空间候选和第二空间候选。
第一空间候选可以是A0、A1、经缩放的A0和经缩放的A1中的一个。第二空间候选可以是B0、B1、B2、经缩放的B0、经缩放的B1和经缩放的B2中的一个。
可按照第一空间候选和第二空间候选的顺序将可用空间候选的多条运动信息添加到预测运动矢量候选列表。在这种情况下,当可用空间候选的运动信息与预测运动矢量候选列表中已经存在的其它运动信息重叠时,可不将可用空间候选的运动信息添加到预测运动矢量候选列表。换句话说,当N的值是2时,如果第二空间候选的运动信息与第一空间候选的运动信息相同,则可不将第二空间候选的运动信息添加到预测运动矢量候选列表。
被添加的运动信息的最大条数可以是N。
步骤2)当预测运动矢量候选列表中的运动信息的条数小于N并且时间候选可用时,可将时间候选的运动信息添加到预测运动矢量候选列表。在这种情况下,当可用时间候选的运动信息与预测运动矢量候选列表中已经存在的其它运动信息重叠时,可不将可用时间候选的运动信息添加到预测运动矢量候选列表。
步骤3)当预测运动矢量候选列表中的运动信息的条数小于N时,可将零矢量运动信息添加到预测运动矢量候选列表。
零矢量运动信息可包括一条或更多条零矢量运动信息。所述一条或更多条零矢量运动信息的参考画面索引可彼此不同。
编码设备100和/或解码设备200可顺序地将多条零矢量运动信息添加到预测运动矢量候选列表,同时改变参考画面索引。
当零矢量运动信息与预测运动矢量候选列表中已经存在的其它运动信息重叠时,可不将零矢量运动信息添加到预测运动矢量候选列表。
以上结合合并列表做出的对零矢量运动信息的描述也可应用于零矢量运动信息。将省略其重复的描述。
以上描述的步骤1)至步骤3)的顺序仅是示例性的,并且可被改变。此外,可根据预定义的条件省略步骤中的一些步骤。
图11示出根据示例的变换和量化处理。
如图11中所示,可通过对残差信号执行变换和/或量化处理来产生量化的等级。
残差信号可被产生为原始块与预测块之间的差。这里,预测块可以是经由帧内预测或帧间预测而产生的块。
变换可包括首次变换和二次变换中的至少一个。可通过对残差信号执行首次变换来产生变换系数,并且可通过对变换系数执行二次变换来产生二次变换系数。
可使用预定义的多种变换方法中的至少一种来执行首次变换。例如,所述预定义的多种变换方法可包括离散余弦变换(DCT)、离散正弦变换(DST)、卡洛变换(KLT)等。
可对通过执行首次变换而产生的变换系数执行二次变换。
可基于用于目标块和/或邻近块的编码参数中的至少一个来确定被应用于首次变换和/或二次变换的变换方法。可选地,指示变换方法的变换信息可由编码设备用信号传送到解码设备200。
可通过对经由执行首次变换和/或二次变换而产生的结果执行量化或者对残差信号执行量化来产生量化的等级。
可根据帧内预测模式、块尺寸和块形式中的至少一个,基于右上对角扫描、垂直扫描和水平扫描中的至少一个对量化的等级进行扫描。
例如,可通过使用右上对角扫描对块的系数进行扫描来将系数改变为1D矢量形式。可选地,根据变换块的尺寸和/或帧内预测模式,可使用按照列方向对2D块格式系数进行扫描的垂直扫描或按照行方向对2D块格式系数进行扫描的水平扫描来代替右上对角扫描。
可对扫描后的量化的等级进行熵编码,并且比特流可包括经熵编码的量化的等级。
解码设备200可经由对比特流进行熵解码来产生量化的等级。可经由逆扫描按照2D块的形式对量化的等级进行排列。这里,作为逆扫描的方法,可执行右上对角扫描、垂直扫描和水平扫描中的至少一个。
可对量化的等级执行反量化。可根据是否执行二次逆变换,对通过执行反量化而产生的结果执行二次逆变换。此外,可根据是否将执行首次逆变换,对通过执行二次逆变换而产生的结果执行首次逆变换。可通过对经由执行二次逆变换而产生的结果执行首次逆变换来产生重建的残差信号。
图12是根据实施例的编码设备的配置图。
编码设备1200可与以上描述的编码设备100对应。
编码设备1200可包括通过总线1290彼此通信的处理单元1210、内存1230、用户界面(UI)输入装置1250、UI输出装置1260和存储器1240。电子装置1200还可包括连接到网络1299的通信单元1220。
处理单元1210可以是用于运行存储在内存1230或存储器1240中的处理指令的中央处理器(CPU)或半导体器件。处理单元1210可以是至少一个硬件处理器。
处理单元1210可产生并处理被输入到编码设备1200的、从编码设备1200输出的、或者在编码设备1200中使用的信号、数据或信息,并且可执行与信号、数据或信息相关的检查、比较、确定等。换句话说,在实施例中,可由处理单元1210执行数据或信息的产生和处理以及与数据或信息相关的检查、比较和确定。
处理单元1210可包括帧间预测单元110、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190。
帧间预测单元110、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190中的至少一些可以是程序模块,并且可与外部装置或***进行通信。所述程序模块可以以操作***、应用程序模块或其它程序模块的形式被包括在编码设备1200中。
所述程序模块可被物理地存储在各种类型的公知的存储装置中。此外,所述程序模块中的至少一些也可被存储在能够与编码设备1200进行通信的远程存储装置中。
程序模块可包括但不限于用于执行根据实施例的功能或操作或者用于实现根据实施例的抽象数据类型的例程、子例程、程序、对象、组件和数据结构。
可使用由编码设备1200的至少一个处理器运行的指令或代码来实现所述程序模块。
处理单元1210可运行帧间预测单元110、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190中的指令或代码。
存储单元可表示内存1230和/或存储器1240。内存1230和存储器1240中的每一个可以是各种类型的易失性或非易失性存储介质中的任意一种。例如,内存1230可包括只读存储器(ROM)1231和随机存取存储器(RAM)1232中的至少一个。
存储单元可存储用于编码设备1200的操作的数据或信息。在实施例中,编码设备1200的数据或信息可被存储在存储单元中。
例如,存储单元可存储画面、块、列表、运动信息、帧间预测信息、比特流等。
编码设备1200可被实现在包括计算机可读存储介质的计算机***中。
存储介质可存储编码设备1200的操作所需的至少一个模块。内存1230可存储至少一个模块,并且可被配置为使得所述至少一个模块由处理单元1210运行。
可通过通信单元1220来执行与编码设备1200的数据或信息的通信相关的功能。
例如,通信单元1220可将比特流发送到随后将描述的解码设备1300。
图13是根据实施例的解码设备的配置图。
解码设备1300可对应于以上描述的解码设备200。
解码设备1300可包括通过总线1390彼此通信的处理单元1310、内存1330、用户界面(UI)输入装置1350、UI输出装置1360和存储器1340。解码设备1300还可包括连接到网络1399的通信单元1320。
处理单元1310可以是用于运行存储在内存1330或存储器1340中的处理指令的中央处理器(CPU)或半导体器件。处理单元1310可以是至少一个硬件处理器。
处理单元1310可产生并处理被输入到解码设备1300的、从解码设备1300输出的、或者在解码设备1300中使用的信号、数据或信息,并且可执行与信号、数据或信息相关的检查、比较、确定等。换句话说,在实施例中,可由处理单元1310执行数据或信息的产生和处理以及与数据或信息相关的检查、比较和确定。
处理单元1310可包括熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、帧间预测单元250、加法器255、滤波器单元260和参考画面缓冲器270。
解码设备1300的熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、帧间预测单元250、加法器255、滤波器单元260和参考画面缓冲器270中的至少一些可以是程序模块,并且可与外部装置或***进行通信。所述程序模块可以以操作***、应用程序模块或其它程序模块的形式被包括在解码设备1300中。
程序模块可被物理地存储在各种类型的公知的存储装置中。此外,所述程序模块中的至少一些也可被存储在能够与解码设备1300进行通信的远程存储装置中。
程序模块可包括但不限于用于执行根据实施例的功能或操作或者用于实现根据实施例的抽象数据类型的例程、子例程、程序、对象、组件和数据结构。
可使用由解码设备1300的至少一个处理器运行的指令或代码来实现所述程序模块。
处理单元1310可运行熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、帧间预测单元250、加法器255、滤波器单元260和参考画面缓冲器270中的指令或代码。
存储单元可表示内存1330和/或存储器1340。内存1330和存储器1340中的每一个可以是各种类型的易失性或非易失性存储介质中的任意一种。例如,内存1330可包括ROM1331和RAM 1332中的至少一个。
存储单元可存储用于解码设备1300的操作的数据或信息。在实施例中,解码设备1300的数据或信息可被存储在存储单元中。
例如,存储单元可存储画面、块、列表、运动信息、帧间预测信息、比特流等。
解码设备1300可被实现在包括计算机可读存储介质的计算机***中。
存储介质可存储解码设备1300的操作所需的至少一个模块。内存1330可存储至少一个模块,并且可被配置为使得所述至少一个模块由处理单元1310运行。
可通过通信单元1320来执行与解码设备1300的数据或信息的通信相关的功能。
例如,通信单元1320可从编码设备1200接收比特流。
在以下实施例中,在使用帧间预测进行编码和解码时,将描述用于使用邻近块的帧间预测信息来推导目标块的帧间预测信息的方法。
在使用帧间预测进行编码和解码时,可在先前编码和/或先前解码的画面中搜索目标画面中的目标块的帧间预测信息,以便从视频去除时间冗余。
由于使用邻近块的帧间预测信息来推导目标块的帧间预测信息,因此可减少帧间预测所需的信息量。这里,信息量可以是比特数。
作为用于使用邻近块的帧间预测信息来推导目标块的帧间预测信息的方法,可使用AMVP模式和合并模式。在AMVP模式和合并模式下,可使用在时间上相邻的邻近块和在空间上相邻的邻近块来分别配置AMVP候选列表和合并候选列表。这样的列表中的每个候选可以是帧间预测信息或帧间预测信息的一部分。
在列表的配置中,可将可用邻近块的帧间预测信息用作候选来填充列表。
当不存在邻近块的帧间预测信息时,或者当不能使用邻近块的帧间预测信息时,不能将邻近块的帧间预测信息用作候选。
每个列表中的候选的最大数量可被预先定义。当可用邻近块的多条帧间预测信息不能填满列表中的候选的预定义的最大数量时,可将零矢量运动信息添加到列表。
由于列表中的候选(即,帧间预测信息)与目标块的帧间预测信息之间的相关性较高,因此可提高编码性能。
相反,对于与目标块的帧间预测信息具有低相关性的候选(例如,零矢量运动信息),可在推导帧间预测信息时增加将被用信号发送的比特数。由于被用信号发送的比特数增加,因此编码性能可能下降。
在实施例中,对于不具有帧间预测信息的目标块,编码设备1200和解码设备1300可使用邻近块的帧间预测信息来生成针对目标块的帧间预测信息,并且可将生成的帧间预测信息作为候选添加到相应列表。
在实施例中,可将具有高相关性的帧间预测信息而不是将具有低相关性的帧间预测信息作为候选添加到列表。由于具有高相关性的帧间预测信息作为候选被添加到列表,因此可提高编码效率。
在实施例中,编码设备1200和解码设备1300中的每一个可使用多个邻近块的多条帧间预测信息来配置针对目标块的列表。所述多个邻近块可包括时间邻近块和空间邻近块。编码设备1200和解码设备1300中的每一个可使用多个邻近块的多条帧间预测信息来将与目标块的帧间预测信息具有更高相关性的帧间预测信息添加到列表。通过使用和添加帧间预测信息,可减少用于指示帧间预测信息的索引等的比特数,并且可提高编码性能。
在实施例中,当不存在目标块的帧间预测信息时,编码设备1200和解码设备1300中的每一个可通过将目标块的邻近块的多条帧间预测信息进行组合来生成目标块的帧间预测信息。编码设备1200和解码设备1300中的每一个可将所生成的帧间预测信息作为候选添加到列表。代替与目标块的帧间预测信息具有低相关性的帧间预测信息(例如,零矢量运动信息),而将与目标块的帧间预测信息具有高相关性的帧间预测信息作为候选添加到列表,因此使得能够在帧间预测信息的推导中执行更有效的编码。
在用于递归地划分CU的过程中,CU可被划分为相同尺寸的四个正方形块或相同尺寸的两个块。当CU被划分为两个分区块时,CU可被水平或垂直地划分。可选地,CU可被划分为三个分区块,并且可被水平或垂直地划分。例如,当CU被垂直划分时,从划分生成的分区块的宽度的比例可以是1:2:1。类似地,当CU被水平划分时,分区块的高度的比例可以是1:2:1。
帧间预测中的块的划分可表示在使用从划分生成的各个分区块的运动信息来执行帧间预测时所获得的编码效率比在使用未划分的块的一条运动信息来执行帧间预测时所获得的编码效率高。换句话说,当块被划分时,很有可能两个或四个分区块将具有不同的运动信息。
当目标块是从上层块划分出的块时,在针对目标块推导合并模式下的空间邻近块的运动信息时,可使用上层块中的另一分区块的运动信息。换句话说,可以以与其它分区块的运动信息相同的方式推导目标块的运动信息。在这种情况下,(即使通过从上层块进行划分来生成分区块,)两个分区块具有相同的运动信息,因此编码性能可能降低。
编码设备1200和解码设备1300中的每一个可将较少的比特数分配给列表中的候选之中的具有较高优先级的候选。分配的比特可以是指示相应候选的索引的值。换句话说,可使用比指示具有较低优先级的候选的索引的比特数少的比特数来用信号发送指示具有较高优先级的候选的索引。
编码设备1200和解码设备1300中的每一个可被配置为在配置列表时将较高优先级分配给预期或估计具有较高编码性能的候选。
这里,分配较高优先级可表示1)分配较少的比特数、2)分配较小的索引或者3)候选按照较高优先级被包括在列表中以优先于列表中的其它候选。
此外,编码设备1200和解码设备1300中的每一个可被配置为在配置列表时将较低优先级分配给预期或估计具有较低编码性能的候选。
这里,分配较低优先级可表示1)分配较大的比特数、2)分配较大的索引、3)候选以较低优先级被包括在列表中以在列表中的其它候选之后或者4)候选不被包括在列表中。通过这样的列表配置,编码性能可被提高。
当使用针对分区CU的空间邻近块的运动信息来配置列表时,如果空间邻近块是从包括分区CU的上层CU划分出的块,则编码设备1200和解码设备1300中的每一个可将空间邻近块的运动信息以较低优先级包括在列表中。可选地,如果空间邻近块是从包括分区CU的上层CU划分出的块,则编码设备1200可不将空间邻近块的运动信息包括在列表中。
换句话说,编码设备1200和解码设备1300中的每一个可不将非常可能具有低编码性能的运动信息包括在列表中,并且可将较低优先级分配给非常可能具有低编码性能的运动信息。通过这样的排除和分配,编码设备1200和解码设备1300中的每一个防止期望或估计具有低编码性能的运动信息被选择,或者降低这样的运动信息被选择的可能性,从而提高编码性能。
图14是根据实施例的帧间预测方法的流程图。
帧间预测方法可由编码设备1200和/或解码设备1300执行。
例如,编码设备1200可执行根据实施例的帧间预测方法,以便将针对目标块的多种预测方法的效率进行比较,并且可执行根据实施例的帧间预测方法,以便生成针对目标块的重建块。
目标块可以是上述各种块中的任意一个。例如,目标块可以是编码单元(CU)、预测单元(PU)或变换单元(TU)。
例如,解码设备1300可执行根据实施例的帧间预测方法,以便生成针对目标块的重建块。
下面,处理单元可以是编码设备1200的处理单元1210和/或解码设备1300的处理单元1310。
在步骤1410,处理单元可推导针对目标块的帧间预测信息。
帧间预测信息可包括1)运动矢量、2)参考画面列表、3)参考画面索引、4)合并标志、5)合并索引、6)高级运动矢量预测(AMVP)索引、7)照度补偿(IC)标志以及8)重叠块运动补偿(OBMC)标志。
IC标志可以是指示IC是否将被应用的标志。
OBMC标志可以是指示OBMC是否将被应用的标志。
处理单元可使用至少一种方法来推导帧间预测信息。
所述至少一种方法可包括1)合并模式、2)AMVP模式、3)用于基于子块推导帧间预测信息的方法以及4)用于在解码设备1300中推导帧间预测信息的方法。
处理单元可使用至少一条信息推导帧间预测信息。
所述至少一条信息可包括1)空间邻近块的帧间预测信息、2)时间邻近块的帧间预测信息、3)组合帧间预测信息、4)统一候选列表、5)取决于块形状的自适应候选列表以及6)取决于块划分状态的自适应候选列表。
在步骤1420,处理单元可使用推导出的帧间预测信息针对目标块执行帧间预测。
帧间预测可包括运动补偿和/或运动校正。
处理单元可使用补偿和/或校正中的至少一种执行帧间预测。
所述补偿和/或校正中的至少一种可包括1)运动补偿、2)IC、3)OBMC、4)双向光流(BIO)、5)仿射空间运动补偿以及6)解码设备1300中的运动矢量校正。
使用合并模式来推导帧间预测信息
处理单元可使用合并模式来推导帧间预测信息。在实施例中,合并模式可用AMVP模式或使用列表等的特定帧间预测模式来替换。换句话说,在实施例中描述的使用合并模式来推导帧间预测信息也可被应用于使用AMVP模式或特定帧间预测模式来推导帧间预测信息。
处理单元可配置合并候选列表。合并候选列表中的合并候选的数量可以是N。N可以是正整数。例如,合并候选可以是帧间预测信息,并且可包括运动矢量和参考画面列表。
处理单元可使用空间邻近块的帧间预测信息、时间邻近块的帧间预测信息、以及组合帧间预测信息中的一个或更多个来配置合并候选列表。这里,处理单元可按照特定顺序将多条帧间预测信息添加到合并候选列表。
当配置合并候选列表时,处理单元可将邻近块的多条帧间预测信息作为合并候选添加到合并候选列表。这里,处理单元可按照邻近块的特定顺序将邻近块的多条帧间预测信息添加到合并候选列表。1)当邻近块的帧间预测信息不存在时或者2)当邻近块的帧间预测信息与合并候选列表中存在的帧间预测信息相同时(即,当邻近块的帧间预测信息已经被包括在合并候选列表中时),处理单元可不将邻近块的帧间预测信息添加到合并候选列表。换句话说,当两个邻近块的多条帧间预测信息彼此相同时,可不将具有较低优先级的邻近块的帧间预测信息添加到合并候选列表。
当邻近块中的一个邻近块的帧间预测信息未被添加到合并候选列表时,处理单元可将组合帧间预测信息而不是未被添加的帧间预测信息添加到合并候选列表。例如,当特定邻近块的帧间预测信息不存在时,或者当特定邻近块的帧间预测信息与合并候选列表中的帧间预测信息相同时,处理单元可针对特定邻近块推导组合帧间预测信息,并且可将推导出的组合帧间预测信息添加到合并候选列表。
处理单元可通过将针对目标块的邻近块的两条或更多条帧间预测信息彼此组合来生成组合帧间预测信息。
处理单元可配置帧间预测信息调色板。帧间预测信息调色板可以是具有N条帧间预测信息的列表。N可以是正整数。这里,处理单元可1)将目标块的帧间预测模式添加到帧间预测信息调色板,并且2)根据特定的顺序和方法来管理帧间预测信息调色板中的帧间预测模式。例如,当帧间预测信息调色板被填满信息时,处理单元可以以先进先出(FIFO)方式来管理帧间预测信息调色板。
当目标块的帧间预测信息与帧间预测信息调色板中存在的帧间预测信息相同时(即,当目标块的帧间预测信息已经被包括在帧间预测信息调色板中时),处理单元可不将目标块的帧间预测信息添加到帧间预测信息调色板。
当目标块的帧间预测信息与帧间预测信息调色板中存在的帧间预测信息相同时,处理单元可将帧间预测信息调色板的与目标块的帧间预测信息相同的帧间预测信息移动到帧间预测信息调色板中的第一帧间预测信息的位置。换句话说,处理单元可将特定优先级(诸如最高优先级)分配给帧间预测信息调色板的与目标块的帧间预测信息相同的帧间预测信息,并且可基于分配的优先级调整帧间预测信息调色板中存在的多条帧间预测信息的位置。
处理单元可将针对目标画面中的所有块的帧间预测信息调色板初始化为每个画面的单元。换句话说,目标画面中的块可彼此共享单个帧间预测信息调色板。
处理单元可将帧间预测信息调色板中存在的帧间预测信息用作时间邻近块的帧间预测信息。
图15示出根据示例的目标块的空间邻近块。
在图15中,A至K可指示各个空间邻近块。
空间邻近块的帧间预测信息可以是与图15的A至K对应的位置中的任意一个位置处存在的块的帧间预测信息。
在下文中,术语“块X的帧间预测信息”可被理解为“与位置X对应的帧间预测信息”。
例如,邻近块的尺寸可以是M×N。M和N可各自是2、4、8、16、32、64和128中的至少一个。
左侧邻近块可以是与目标块的左侧相邻的邻近块,并且可以是块A、块B、块C、块D和块E中的一个或更多个。
上方邻近块可以是与目标块的上方相邻的邻近块,并且可以是块G、块H、块I、块J和块K中的一个或更多个。
左上邻近块可以是与目标块的左上角相邻的邻近块,并且可以是块F。
这样的空间邻近块可以是与目标块的边界相邻的块或者是不与目标块的边界相邻的块。
图16示出根据示例的目标块的时间邻近块。
在图16中,L至W可表示各个时间邻近块。
时间邻近块可以是先前画面中的块。先前画面可以是先前重建的col画面。先前画面可以是在目标画面被编码或解码之前已经被执行了编码或解码的画面。
先前画面可以是具有比目标画面的画面顺序计数(POC)大的画面顺序计数(POC)的画面。
时间邻近块在先前画面中的位置可与目标块在目标画面中的位置相同。可选地,时间邻近块在先前画面中的位置可与目标块在目标画面中的位置对应。可选地,时间邻近块在先前画面中的位置可与目标块的右下部分的位置、目标块的中心部分和目标块的特定位置中的至少一个对应。
可选地,时间邻近块可以是与col块相邻的块。例如,时间邻近块可以是与col块的右下顶点相邻的块。
可选地,时间邻近块可以是目标画面中的在时间上在前的块。在时间上在前的块可以是在目标块被编码或解码之前已经被执行编码或解码的块。
时间邻近块可以是用于配置合并候选列表的过程中参考的特定邻近块。这里,所述特定邻近块可以是与合并候选列表中包括的帧间预测信息对应的邻近块。
时间邻近块的帧间预测信息可以是布置在先前画面中的特定位置处的块的帧间预测信息。这里,所述特定位置可以是目标块在目标画面中的位置。
时间邻近块的帧间预测信息可以是布置在目标画面中的特定位置处的块的帧间预测信息。这里,所述特定位置可以是目标块的空间邻近块在目标画面中的位置。
使用组合帧间预测信息来配置合并候选列表
图17示出根据示例的右上邻近块的组合帧间预测信息的生成。
图18示出根据示例的上方邻近块的组合帧间预测信息的生成。
处理单元可使用组合帧间预测信息来配置合并候选列表。组合帧间预测信息可替换邻近块的帧间预测信息或运动信息,并且随后可作为新的合并候选被添加到合并候选列表。
处理单元可通过将与目标块相关的多条帧间预测信息进行组合来生成组合帧间预测信息。例如,与目标块相关的帧间预测信息可以是针对目标块的邻近块的帧间预测信息。与目标块相关的帧间预测信息可以是邻近帧间预测信息。邻近帧间预测信息可以是邻近块的帧间预测信息。
组合帧间预测信息可包含运动信息。组合帧间预测信息的运动信息可包含参考画面列表、参考画面索引、帧间预测指示符、运动矢量、运动矢量候选、运动矢量候选列表和画面顺序计数(POC)中的至少一个。
在实施例中,术语“帧间预测信息”可被替换为“运动信息”和“运动矢量”,并且“组合帧间预测信息”可被替换为“组合运动信息”和“组合运动矢量”。
当生成组合帧间预测信息的部分信息时,处理单元可从多条邻近帧间预测信息中选择将被使用的邻近帧间预测信息。
例如,处理单元可将选择的邻近帧间预测信息的部分信息用作组合帧间预测信息的部分信息。换句话说,处理单元可将选择的邻近帧间预测信息的部分信息的值分配给组合帧间预测信息的部分信息。
例如,所述部分信息可以是IC标志或OBMC标志。
例如,处理单元可使用从多条邻近帧间预测信息中与运动矢量的组合相关地选择的邻近帧间预测信息来生成组合帧间预测信息的部分信息。
例如,处理单元可使用多条邻近帧间预测信息中的用于运动矢量的组合的邻近帧间预测信息(缩放的参考)来生成组合帧间预测信息的部分信息。
例如,参照图15,当使用块B和块J的多条帧间预测信息来生成针对块F的组合帧间预测信息时,可将块B或块J的IC标志和/或OBMC标志用作块F的IC标志和/或OBMC标志。
处理单元可通过将多条邻近运动信息的运动矢量进行组合来生成组合帧间预测信息的运动矢量。邻近运动信息可以是邻近块的运动信息。此外,邻近运动矢量可以是邻近块的运动矢量。
例如,邻近运动信息可以是块(诸如图15中所示的空间邻近块A至K以及图16中所示的时间邻近块L至W)的运动信息。
邻近运动信息可以是与目标块不相邻的每个块的运动信息。与目标块不相邻的块可以是与目标块的邻近块相邻的块。
邻近运动信息可以是与目标块具有上述特定关系的块的运动信息,并且具有所述特定关系的块也可以是与目标块不相邻的块。例如,具有所述特定关系的块可以是与目标块的邻近块相邻的块。邻近块可被***在具有所述特定关系的块与目标块之间。
组合帧间预测信息可以是通过从多个邻近块的多条运动信息中选择一条而获得的结果。这里,可根据指定的条件将多条运动信息中的一条选为组合帧间预测信息。例如,组合帧间预测信息可以是使用多个邻近块的多条运动信息的计算、选择、组合和变换的结果。
例如,组合帧间预测信息可以是下述邻近块的运动信息:对于该邻近块,目标画面的POC与针对该邻近块的参考画面的POC之间的差最小。
例如,组合帧间预测信息可以是合并候选列表中存在的特定运动信息。
组合帧间预测信息可以是通过从多条邻近运动信息中选择并组合一条或更多条邻近运动信息而获得的结果。这里,可根据指定的条件来选择组合帧间预测信息。
例如,组合帧间预测信息的运动矢量可以是多个邻近块中的特定邻近块的运动矢量。这里,所述特定邻近块可以是多个邻近块中的目标画面的POC与针对该邻近块的参考画面的POC之间的差最小的邻近块。组合帧间预测信息的运动矢量可以是使用多个邻近运动矢量的公式的结果。邻近运动矢量可以是邻近块的运动矢量。邻近块的邻近运动矢量可包括多个运动矢量。
当组合帧间预测信息被生成时,处理单元可生成单向组合帧间预测信息或双向组合帧间预测信息。这里,单向组合帧间预测信息可以是前向(L0)帧间预测信息或后向(L1)帧间预测信息,并且双向组合帧间预测信息可以是前向帧间预测信息和后向帧间预测信息。
单向组合帧间预测信息可以是以下项的组合:1)邻近块的多条双向帧间预测信息、2)邻近块的多条单向预测信息以及3)多条组合帧间预测信息中的多条L0帧间预测信息或L1帧间预测信息。
例如,处理单元可通过将两个或更多个时间邻近块进行组合来生成L0(L1)方向帧间预测信息,并且可将生成的单向预测信息添加到合并候选列表。
例如,组合帧间预测信息可以是两个先前块的多条L0(L1)方向帧间预测信息和一个时间邻近块的L0(L1)方向帧间预测信息的组合的结果,并且随后可被添加到合并候选列表。
例如,组合帧间预测信息可以是在合并候选列表配置过程中参考的两个特定邻近块的多条L0(L1)方向帧间预测信息的组合的结果,并且可被添加到合并候选列表。
双向组合帧间预测信息可以是上述前向帧间预测信息和后向帧间预测信息的组合。
组合帧间预测信息的运动矢量可以是邻近运动矢量的组合。例如,邻近运动信息可以是多个邻近块A至W的多条运动信息的组合。例如,组合帧间预测信息的运动矢量可以是多个邻近运动矢量的平均值、最大值、最小值或中值,并且可以是所述平均值、最大值、最小值和中值中的一个或更多个的组合。
可通过将组合运动矢量之和除以组合运动矢量的数量来获得平均值。例如,运动矢量(4,6)和运动矢量(6,10)的平均值可以是(5,8)。
例如,组合帧间预测信息的运动矢量可以是多个邻近运动矢量的加权平均,或者可以是使用多个邻近运动矢量之间的变化的组合。
例如,如图17中所示,对于目标块1710,可存在左上邻近块1720、上方邻近块1730、右上邻近块1740、左侧邻近块1750和左下邻近块1760。通过左上邻近块1720的运动信息1721和上方邻近块1730的运动信息1731的组合,可生成与右上块1740的运动信息1741对应的组合帧间预测信息。这样的组合帧间预测信息可被用作目标块1710的运动信息1711。
例如,如图18中所示,通过左上邻近块1720的运动信息1721和右上邻近块1740的运动信息1741的组合,可生成与上方邻近块1730的运动信息1731对应的组合帧间预测信息。这样的组合帧间预测信息可被用作目标块1710的运动信息1711。
如上所述,组合帧间预测信息的运动矢量可以是邻近运动矢量的加权组合的结果。可将较高权重分配给与目标块具有较高相关性的邻近块的运动矢量。
组合帧间预测信息的运动矢量可以是基于块尺寸的邻近运动矢量的加权组合(即,基于块尺寸的加权组合)的结果。基于块尺寸的加权组合可由以下方程式2表示:
[方程式2]
Figure BDA0002506420770000571
MVLeft可以是目标块的左邻近运动矢量。目标块的左邻近运动矢量可以是与目标块的左侧相邻的邻近块的运动矢量。
“width”可表示目标块的宽度,并且可以是针对目标块的左邻近运动矢量的权重。
MVAbove可以是目标块的上邻近运动矢量。目标块的上邻近运动矢量可以是与目标块的上方相邻的邻近块的运动矢量。
“height”可表示目标块的高度,并且可以是针对目标块的上邻近运动矢量的权重。
组合帧间预测信息的运动矢量可以是基于POC的邻近运动矢量的加权组合(即,基于POC的加权组合)的结果。
例如,随着针对邻近运动信息的参考画面的POC越接近目标画面的POC,针对邻近运动矢量的权重可越大。
使用变化的组合可以是使用两个或更多个运动矢量之间的变化来生成组合块之前的块或组合块之后的块的帧间预测信息。
例如,参照图15,处理单元可通过使用块I的运动矢量与块J的运动矢量之间的变化的组合来推导块K的运动矢量。可通过将块J的运动矢量与块I的运动矢量之间的差和块J的运动矢量相加来获得块K的运动矢量。
可选地,组合帧间预测信息的运动矢量可以是邻近运动矢量的基于外插的组合的结果。
例如,两个邻近运动矢量的基于外插的组合可由以下方程式3表示:
[方程式3]
2×MV0-MV1
MV0可以是第一邻近运动矢量。MV1可以是第二邻近运动矢量。
缩放可被应用于被用于生成组合帧间预测信息的帧间预测信息。
例如,当邻近运动信息指示双向预测时,处理单元可基于L1的运动矢量对L0的运动矢量进行缩放。处理单元可通过将L0的缩放后的运动矢量与L1的运动矢量进行组合来生成组合帧间预测信息。
例如,当邻近运动信息指示双向预测时,处理单元可基于L0的运动矢量对L1的运动矢量进行缩放。处理单元可通过将L1的缩放后的运动矢量与L0的运动矢量进行组合来生成组合帧间预测信息,并且可将生成的组合帧间预测信息添加到合并候选列表。
当针对用于生成组合帧间预测信息的多条邻近运动信息的参考画面彼此不同时,处理单元可通过将缩放应用于帧间预测信息来改变帧间预测信息。
例如,参照图15,当用于组合的邻近块是块B和块J,并且针对块B和块J的参考画面彼此不同时,处理单元可根据块B与针对块B的参考画面之间的时间距离来对块J的运动矢量进行缩放。
例如,参照图15,当用于组合的邻近块是块B和块J,并且针对块B和块J的参考画面彼此不同时,处理单元可根据块J与块J的参考画面之间的时间距离来对块B的运动矢量进行缩放。
在缩放时,处理单元可选择作为用于缩放的参考的邻近运动信息。
处理单元可基于POC选择作为用于缩放的参考的邻近运动信息。处理单元可从多条邻近运动信息中选择下述运动信息作为参考运动信息:对于该运动信息,针对该运动信息的参考画面的POC更接近目标画面的POC。
当组合帧间预测信息被生成时,处理单元可基于指定的条件确定是否执行组合。
当组合帧间预测信息被生成时,处理单元可基于用于组合的多条帧间预测信息或多条运动信息之间的相似度来确定是否执行组合。例如,当相似度小于预定义的阈值时,处理单元可不执行组合。可选地,当相似度大于预定义的阈值时,处理单元可不执行组合。
这里,相似度可指示使用多条运动信息的公式的值或结果。
处理单元可通过基于针对邻近运动信息的参考画面的方向将多条邻近运动信息进行组合来生成组合帧间预测信息。例如,处理单元可通过对相同方向上的邻近运动矢量进行组合来生成组合帧间预测信息。
如上所述,处理单元可通过将多个块的多条帧间预测信息进行组合来生成组合帧间预测信息。这里,所述多个块中的每一个可以是满足指定的条件的块。
在图15中所示的每个块中,特定块的帧间预测信息可被组合帧间预测信息替换。处理单元可推导针对特定块的左侧的位置的第一帧间预测信息,并推导针对特定块的右侧的位置的第二帧间预测信息,并且可通过将第一帧间预测信息与第二帧间预测信息进行组合来生成组合帧间预测信息。产生的组合帧间预测信息可替代特定块的帧间预测信息。这里,针对特定块的左侧的位置的帧间预测信息可以是位于特定块的左侧的块的帧间预测信息。这里,针对特定块的右侧的位置的帧间预测信息可以是位于特定块的右侧的块的帧间预测信息。此外,这样的推导、组合和生成还可被应用于帧间预测信息的一部分,诸如运动信息和运动矢量。
例如,当针对左侧位置的第一帧间预测信息被推导时,如果位于特定块左侧的仅一个块的帧间预测信息可用,则处理单元可使用可用帧间预测信息进行组合。
例如,当针对右侧位置的第二帧间预测信息被推导时,如果位于特定块右侧的仅一个块的帧间预测信息可用,则处理单元可使用可用帧间预测信息进行组合。
例如,当位于特定块的左侧的多个块的多条帧间预测信息可用时,处理单元可通过将可用的多条帧间预测信息进行组合来推导第一帧间预测信息。
例如,当位于特定块的右侧的多个块的多条帧间预测信息可用时,处理单元可通过将可用的多条帧间预测信息进行组合来推导第二帧间预测信息。
例如,当针对左侧位置的第一帧间预测信息被推导时,如果位于特定块的左侧的多个块的多条帧间预测信息可用,则处理单元可从所述多条帧间预测信息中选择特定帧间预测信息作为第一帧间预测信息,并且可将选择的帧间预测信息用于组合帧间预测信息的生成。
例如,如果位于特定块的左侧的多个块的多条帧间预测信息可用,则处理单元可从所述多个块中选择与目标画面具有最短时间距离的块。处理单元可选择所选择的块的帧间预测信息作为第一帧间预测信息。画面之间的时间距离可以是显示画面的顺序位置之间的差。
例如,当针对右侧位置的第二帧间预测信息被推导时,如果位于特定块的右侧的多个块的多条帧间预测信息可用,则处理单元可从所述多条帧间预测信息中选择特定帧间预测信息作为第二帧间预测信息,并且可将选择的帧间预测信息用于组合帧间预测信息的生成。
例如,如果位于特定块的右侧的多个块的多条帧间预测信息可用,则处理单元可从所述多个块中选择与目标画面具有最短时间距离的块。处理单元可选择所选择的块的帧间预测信息作为第二帧间预测信息。
例如,在图15中所示的各个块中,当位于特定块的左侧的多个块的多条帧间预测信息可用时,处理单元可通过将所述多条帧间预测信息进行组合来生成组合帧间预测信息。生成的组合帧间预测信息可替代特定块的帧间预测信息。此外,当位于特定块的右侧的多个块的多条帧间预测信息可用时,处理单元可通过将所述多条帧间预测信息进行组合来生成组合帧间预测信息。
例如,在图16的块N、块O、块P和块Q之中的特定块中,当不同的多个先前画面中的多个同位块的多条帧间预测信息可用时,处理单元可通过将多条可用的帧间预测信息进行组合来生成组合帧间预测信息。生成的组合帧间预测信息可替代特定块的帧间预测信息。这样的同位块可以是针对特定块的col块。换句话说,不同的先前画面中的同位块的位置可与先前画面中的特定块的位置相同。
例如,针对块N的组合帧间预测信息可以是针对同位块L和M的多条帧间预测信息的组合。例如,针对块O的组合帧间预测信息可以是针对同位块U和R的多条帧间预测信息的组合。例如,针对块P的组合帧间预测信息可以是针对同位块V和S的多条帧间预测信息的组合。例如,针对块Q的组合帧间预测信息可以是针对同位块W和T的多条帧间预测信息的组合。
例如,处理单元可通过将一个或更多个空间邻近块的一条或更多条帧间预测信息与一个或更多个时间邻近块的一条或更多条帧间预测信息进行组合来生成组合帧间预测信息。
图19示出根据示例的邻近块的组合帧间预测信息的生成。
在图19中,目标CU可指示目标块。
在图19中,块AL、块A、块AR、块L和块LB可分别是目标块的左上邻近块、上方邻近块、右上邻近块、左侧邻近块和左下邻近块。
上方邻近块可指在目标块上方的多个邻近块中的最右侧(或最左侧)块。左侧邻近块可指在目标块的左侧的多个邻近块中的最下方(或最上方)块。
块A和块AR可被理解为与目标块的上方相邻或位于目标块上方的多个块。块L和块LB可被理解为与目标块的左侧相邻或位于目标块的左侧的多个块。
处理单元可通过将块A和块AR的多条帧间预测信息进行组合来生成第一邻近帧间预测信息,其中,该多条帧间预测信息可被理解为上方帧间预测信息或上方运动矢量。处理单元可通过将块L和块LB的多条帧间预测信息进行组合来生成第二邻近帧间预测信息。这些多条帧间预测信息可被理解为左侧帧间预测信息或左侧运动矢量。处理单元可通过将第一邻近帧间预测信息与第二邻近帧间预测信息进行组合来生成组合帧间预测信息。
当块AL的帧间预测信息不可用时,处理单元可利用生成的组合帧间预测信息替换块AL的帧间预测信息。此外,处理单元可将针对块AL生成的组合帧间预测信息作为新的合并候选添加到合并候选列表。
当上述第一邻近帧间预测信息、第二邻近帧间预测信息和组合帧间预测信息被获取时,可使用前述组合方法和下面将描述的组合方法。
当块A和块AR的多条帧间预测信息中的仅一条可用时,处理单元可将该多条帧间预测信息中的可用帧间预测信息用作第一邻近帧间预测信息。此外,当块L和块LB的多条帧间预测信息中的仅一条可用时,处理单元可将该多条帧间预测信息中的可用帧间预测信息用作第二邻近帧间预测信息。
处理单元可选择块A和块AR的多条帧间预测信息中的任意一条,并且可将选择的帧间预测信息用作第一邻近帧间预测信息。处理单元可选择块L和块LB的多条帧间预测信息中的任意一条,并且可将选择的帧间预测信息用作第二邻近帧间预测信息。
处理单元可选择块A和块AR的多条帧间预测信息中的POC更接近目标画面的POC的帧间预测信息作为第一邻近帧间预测信息。这里,帧间预测信息的POC可以是针对帧间预测信息的运动信息的POC。
处理单元可选择块L和块LB的多条帧间预测信息中的POC更接近目标画面的POC的帧间预测信息作为第二邻近帧间预测信息。
图20示出根据示例的块AL的帧间预测信息的生成。
MV0和MV1可指用于组合帧间预测信息的各个运动矢量。
处理单元可通过将块L和块LB的多条帧间预测信息进行组合来生成组合帧间预测信息。组合帧间预测信息可替换块AL的帧间预测信息,并且可作为合并候选被添加到针对目标块的合并候选列表。
图21示出根据示例的块AR的帧间预测信息的生成。
处理单元可通过将块A和块L的多条帧间预测信息进行组合来生成组合帧间预测信息。组合帧间预测信息可替换块AR的帧间预测信息,并且可作为合并候选被添加到针对目标块的合并候选列表。例如,前述组合可以是基于外插的组合。
图22示出根据示例的目标CU的帧间预测信息的生成。
处理单元可通过将块L和非邻近块的多条帧间预测信息进行组合来生成组合帧间预测信息。组合帧间预测信息可作为合并候选被添加到针对目标块的合并候选列表。例如,前述组合可以是基于外插的组合。
使用合并候选列表中的帧间预测信息来生成组合帧间预测信息
处理单元可通过将合并候选列表中的M条帧间预测信息进行组合来生成组合帧间预测信息,并且可将生成的组合帧间预测信息用于帧间预测,或者可将生成的组合帧间预测信息添加到合并候选列表。
这里,被组合的多条帧间预测信息的运动矢量的方向可彼此相同。
这里,M可以是整数2或更大的整数,并且可小于或等于合并候选列表中的多条帧间预测信息的数量。
例如,当在合并候选列表中存在三条帧间预测信息且M的值为2时能够使用的组合可以是(第一帧间预测信息,第二帧间预测信息)、(第一帧间预测信息,第三帧间预测信息)和(第二帧间预测信息,第三帧间预测信息),并且处理单元可通过根据这些组合将多条帧间预测信息进行组合来生成组合帧间预测信息。
例如,当在合并候选列表中存在四条帧间预测信息且M的值为4时能够使用的组合可以是(第一帧间预测信息,第二帧间预测信息,第三帧间预测信息和第四帧间预测信息),并且处理单元可通过根据该组合将多条帧间预测信息进行组合来生成组合帧间预测信息。
合并候选列表的配置
如上所述,处理单元可在配置合并候选列表时将邻近块的多条帧间预测信息作为合并候选添加到合并候选列表。这里,处理单元可按照邻近块的特定顺序将邻近块的多条帧间预测信息添加到合并候选列表。
返回参照图15,处理单元可在配置合并候选列表时将特定空间邻近块的多条帧间预测信息用作合并候选。特定空间邻近块可以是块A、块B、块F、块J和块K。
处理单元可按照特定顺序将1)组合帧间预测信息、2)基于子块的运动信息推导模式(例如,可选时间运动矢量预测(ATMVP)模式、空间-时间运动矢量预测(STMVP)模式等)以及3)仿射空间运动信息推导模式添加到合并候选列表。
例如,处理单元可按照顺序(B、J、K、A、ATMVP、F、组合帧间预测信息)配置合并候选列表。
例如,处理单元可按照顺序(B、J、K、A、第一组合帧间预测信息、ATMVP、F、第二组合帧间预测信息)配置合并候选列表。这里,第一组合帧间预测信息和第二组合帧间预测信息可在将被参考以生成第一组合帧间预测信息和第二组合帧间预测信息的邻近块、邻近块的数量和组合帧间预测信息的方向性方面彼此不同。
下面,“(α,β,γ,δ,ε)”可指示块的顺序,并且可表示在括号中更早出现的符号的块比稍后出现的符号的块更早地被处理。按照“(α,β,γ,δ,ε)”的顺序配置合并候选列表的表述可表示在合并候选列表的配置中按照块α、块β、块γ、块δ和块ε的顺序执行配置合并候选列表的任务,并且还可表示按照所列出的块的顺序对块进行处理。
这里,处理单元可按照块的顺序对每个块执行以下任务1)至5)。
1)处理单元可确定是否将相应块的帧间预测信息添加到合并候选列表。
2)如果确定将块的帧间预测信息添加到合并候选列表,则处理单元可将该块的帧间预测信息添加到合并候选列表。
3)(如果确定不将块的帧间预测信息添加到合并候选列表),则处理单元可确定是否针对相应块推导组合帧间预测信息。
4)如果确定推导组合帧间预测信息,则处理单元可推导组合帧间预测信息。
5)处理单元可确定是否将组合帧间预测信息添加到合并候选列表。
6)如果确定将组合帧间预测信息添加到合并候选列表,则处理单元可将组合帧间预测信息添加到合并候选列表。
当对一个块执行了任务1)至5)时,可对后续块执行任务1)。
例如,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,处理单元可按照(J,B,A,K,F)的顺序配置合并候选列表。
图23示出宽度和高度相同的CU被垂直划分的情况。
图24示出宽度和高度相同的CU被水平划分的情况。
图25示出宽度大于高度的CU被垂直划分的情况。
图26示出高度大于宽度的CU被水平划分的情况。
宽度与高度之间的比较以及划分的方向可被用于确定邻近块的顺序。
处理单元可基于目标块的形状来确定用于配置合并候选列表的方案。
用于配置合并候选列表的方案可包括配置合并列表所需的邻近块的顺序。邻近块的顺序可以是针对邻近块的多条帧间预测信息的可用性测试和所述多条帧间预测信息的添加的顺序。
当目标块的高度大于目标块的宽度时,处理单元可按照(J,B,K,A,F)的顺序配置合并候选列表,而当目标块的高度小于或等于目标块的宽度时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
当目标块的高度大于目标块的宽度时,处理单元可按照(J,B,A,K,F)的顺序配置合并候选列表,而当目标块的高度小于或等于目标块的宽度时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块的高度大于目标块的宽度时,处理单元可按照(J,K,B,A,F)的顺序配置合并候选列表,当目标块的高度小于目标块的宽度时,处理单元可按照(B,A,J,K,F)的顺序配置合并候选列表,并且当目标块的高度和宽度彼此相等时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块的高度大于目标块的宽度时,处理单元可使用位于目标块上方的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块的高度大于目标块的宽度时,处理单元可按照(F,G,H,I,J,K)的顺序配置合并候选列表。
例如,当目标块的高度小于目标块的宽度时,处理单元可使用位于目标块左侧的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块的高度小于目标块的宽度时,处理单元可按照(A,B,C,D,E,F)的顺序配置合并候选列表。
处理单元可基于目标块的划分的状态来确定用于配置合并候选列表的方案。
划分的状态可表示划分的方向。目标块的划分状态可以是用于生成目标块的划分的类型或方向。可选地,目标块的划分状态可以是应用于目标块的上层块的划分的类型或方向。
例如,当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,B,K,A,F)的顺序配置合并候选列表,而当目标块未作为垂直划分的结果而被获得时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,B,A,K,F)的顺序配置合并候选列表,而当目标块未作为垂直划分的结果而被获得时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,根据垂直划分、水平划分和四划分中的哪一个已经被用于获得目标块,处理单元可选择邻近块的不同顺序中的一个顺序,并且可按照选择的顺序配置合并候选列表。
例如,当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,K,B,A,F)的顺序配置合并候选列表。当目标块作为水平划分的结果而被获得时,处理单元可按照(B,A,J,K,F)的顺序配置合并候选列表。当目标块作为四划分的结果而被获得时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块作为垂直划分的结果而被获得时,处理单元可使用位于目标块上方的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块作为垂直划分的结果而被获得时,处理单元可按照(F,G,H,I,J,K)的顺序配置合并候选列表。
例如,当目标块作为水平划分的结果而被获得时,处理单元可使用位于目标块左侧的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块作为水平划分的结果而被获得时,处理单元可按照(A,B,C,D,E,F)的顺序配置合并候选列表。
处理单元可基于目标块的形状和目标块的划分状态两者来确定用于配置合并候选列表的方案。
例如,当目标块的高度大于目标块的宽度时或者当目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,B,K,A,F)的顺序配置合并候选列表。在其他情况下,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块的高度大于目标块的宽度或者目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,B,A,K,F)的顺序配置合并候选列表。在其他情况下,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块的高度大于目标块的宽度时或者当目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可按照(J,K,B,A,F)的顺序配置合并候选列表。当目标块的高度小于目标块的宽度时或者当目标块作为水平划分的结果而被获得时,处理单元可按照(B,A,J,K,F)的顺序配置合并候选列表。当目标块的高度和宽度彼此相等时并且当目标块作为四划分的结果而被获得时,处理单元可按照(B,J,K,A,F)的顺序配置合并候选列表。
例如,当目标块的高度大于目标块的宽度,或者目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可使用位于目标块上方的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块的高度大于目标块的宽度,或者目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可按照(F,G,H,I,J,K)的顺序配置合并候选列表。
例如,当目标块的高度小于目标块的宽度时或者当目标块作为水平划分的结果而被获得时,处理单元可使用位于目标块左侧的空间邻近块的多条帧间预测信息来配置合并候选列表。当目标块的高度小于目标块的宽度时或者当目标块作为水平划分的结果而被获得时,处理单元可按照(A,B,C,D,E,F)的顺序配置合并候选列表。
处理单元可基于目标块的位置确定用于配置合并候选列表的方案。
目标块的位置可以是目标块在上层块中的相对位置。通过划分上层块,可生成多个分区块,并且目标块可以是多个分区块中的一个。目标块的位置可以是目标块在上层块中的位置,或者是目标块在多个分区块之间的位置。划分可以是二划分或四划分。
例如,在图23中,处理单元可将统一配置方法应用于针对第一分区CU的合并候选列表并将自适应配置方法应用于针对第二分区CU的合并候选列表。
处理单元可基于是否存在组合帧间预测信息来确定用于配置合并候选列表的方案。在合并候选列表的配置中,当存在组合帧间预测信息时,处理单元可调整组合帧间预测信息的优先级。这里,优先级可指组合帧间预测信息在合并候选列表中的位置、组合帧间预测信息的索引或将组合帧间预测信息添加到合并候选列表的顺序。
例如,当按照(B,J,K,A,F)的顺序配置合并候选列表时,如果块B具有组合帧间预测信息,则处理单元可按照(J,K,A,F,B)的顺序配置合并候选列表。换句话说,处理单元可将最低优先级分配给组合帧间预测信息。可选地,在合并候选列表的配置中,处理单元可将组合帧间预测信息添加到合并候选列表中的多条帧间预测信息之后的位置。换句话说,处理单元可将组合帧间预测信息以较低优先级添加到合并候选列表,以在邻近块的多条帧间预测信息之后。
例如,当按照(B,J,K,N,F)的顺序配置合并候选列表并且块N具有时间邻近块时,如果块F具有组合帧间预测信息,则处理单元可按照(B,J,K,F,N)的顺序配置合并候选列表。换句话说,处理单元可将比空间邻近块的多条帧间预测信息的优先级低并且比时间邻近块的帧间预测信息的优先级高的优先级分配给组合帧间预测信息。
可选地,在合并候选列表的配置中,处理单元可将组合帧间预测信息添加到合并候选列表中的在空间邻近块的帧间预测信息之后且在时间邻近块的帧间预测信息之前的位置。可选地,处理单元可将比时间邻近块的帧间预测信息的优先级高的优先级分配给组合帧间预测信息。可选地,在合并候选列表的配置中,处理单元可将组合帧间预测信息添加到合并候选列表中的在时间邻近块的帧间预测信息之前的位置。
例如,当存在多条组合帧间预测信息时,根据上述顺序确定方案,所述多条组合帧间预测信息的顺序可保持不变。
处理单元可基于目标块的深度确定用于配置合并候选列表的方法。目标块的深度可以是基于四叉树(QT)划分的QT深度和基于二叉树(BT)划分的BT深度中的至少一个。
例如,处理单元可基于目标块的深度是否落在特定范围内来确定用于配置合并候选列表的方案。
例如,当目标块的BT深度小于或等于n时,处理单元可使用上述基于目标块的形状配置合并候选列表的方案和上述基于目标块的划分状态配置合并候选列表的方案中的至少一个来配置合并候选列表。例如,n可以是1。
在实施例中,当目标块的QT深度等于或大于n并且目标块的BT深度小于或等于m时,处理单元可使用上述基于目标块的形状配置合并候选列表的方案和上述基于目标块的划分状态配置合并候选列表的方案中的至少一个来配置合并候选列表。例如,n可以是3,并且m可以是1。
处理单元可基于目标块的位置和目标块的深度来确定用于配置合并候选列表的方案。
例如,当目标块的BT深度小于或等于n并且目标块是通过水平划分而生成的分区块中的位于下部的块时,处理单元可使用上述用于基于目标块的形状来配置合并候选列表的方案和上述用于基于目标块的划分状态来配置合并候选列表的方案中的至少一个来配置合并候选列表。这里,n可以是1。
AMVP候选列表的配置
处理单元可使用AMVP模式来推导目标块的帧间预测信息。
处理单元可配置AMVP候选列表。AMVP候选列表中的AMVP候选的数量可以是N。N可以是正整数。例如,AMVP候选列表可包括两个AMVP候选。
例如,这样的AMVP候选可以是帧间预测信息或运动信息。可选地,AMVP候选可包括运动矢量或参考画面列表。
处理单元可使用空间邻近块的帧间预测信息、时间邻近块的帧间预测信息和组合帧间预测信息中的一个或更多个来配置AMVP候选列表。
处理单元可从目标块左侧的邻近块的帧间预测信息推导一个AMVP候选,并且可从目标块上方的邻近块的帧间预测信息推导一个AMVP候选。当AMVP候选列表没有被候选填满时,处理单元可从时间邻近块的帧间预测信息推导另外的AMVP候选。
处理单元可按照邻近块的特定顺序使用邻近块的多条帧间预测信息来推导AMVP候选,并且可将推导出的AMVP候选添加到AMVP候选列表。这里,可按照邻近块的顺序不同地配置AMVP候选列表,并且使用AMVP候选列表的编码和解码的预测效率和编码效率可根据邻近块的顺序而变化。
处理单元可按照左侧邻近块的特定顺序推导AMVP候选。这里,按照左侧邻近块的特定顺序推导AMVP候选可表示使用按照特定顺序选择的邻近块的多条帧间预测信息来推导AMVP候选。
在按照邻近块的特定顺序的AMVP候选的推导中,当当前顺序位置处的邻近块的帧间预测信息可用时,处理单元可使用当前顺序位置处的邻近块的帧间预测信息来推导AMVP候选。当当前顺序位置处的邻近块的帧间预测信息不可用时,处理单元可使用后续顺序位置处的邻近块的帧间预测信息来推导AMVP候选。换句话说,处理单元可使用邻近块中的首先出现且具有可用帧间预测信息的先前邻近块的帧间预测信息来推导AMVP候选。
邻近块的帧间预测信息不可用的事实可表示以下情况1)至3)中的至少一个被满足。
1)不存在邻近块的帧间预测信息的情况
2)邻近块和目标块被包括在不同的条带、并行块或画面中的情况
3)使用帧间预测信息推导出的AMVP候选与已经包括在AMVP列表中的另一AMVP候选相同的情况,即,使用帧间预测信息推导出的AMVP候选是重复AMVP候选的情况
例如,处理单元可在使用左侧邻近块推导AMVP候选时按照(A,B)的顺序推导AMVP候选。换句话说,当块A的帧间预测信息可用时,通过块A的帧间预测信息推导出的AMVP候选可被包括在AMVP列表中,并且当块A的帧间预测信息不可用并且块B的帧间预测信息可用时,通过块B的帧间预测信息推导出的AMVP候选可被包括在AMVP列表中。
例如,处理单元可在使用左侧邻近块推导AMVP候选时按照(B,A)的顺序推导AMVP候选。
例如,处理单元可在使用左侧邻近块推导AMVP候选时按照(A,B,C,D,E)的顺序推导AMVP候选。
处理单元可按照上方邻近块的特定顺序推导AMVP候选。
例如,处理单元可在使用上方邻近块推导AMVP候选时按照(K,J,F)的顺序推导AMVP候选。
例如,处理单元可在使用上方邻近块推导AMVP候选时按照(K,F,J)的顺序推导AMVP候选。
当邻近块的帧间预测信息不存在或不可用时,为了推导AMVP候选,处理单元可使用组合帧间预测信息而不使用邻近块的帧间预测信息。
当使用空间邻近块的帧间预测信息来配置AMVP候选列表时,处理单元可基于目标块的形状来确定用于配置AMVP候选列表的方案。
例如,当目标块的高度大于目标块的宽度时,处理单元可使用以下方案1)至3)中的至少一个来配置AMVP列表。
1)处理单元可从目标块的上方邻近块的帧间预测信息推导一个AMVP候选,并且随后可从目标块的左侧邻近块的帧间预测信息推导一个AMVP候选。
2)处理单元可仅使用目标块的上方邻近块的多条帧间预测信息来配置AMVP候选列表。
3)处理单元可按照(J,B,K,A,F)的顺序或(J,B,A,K,F)的顺序配置AMVP候选列表。
例如,当目标块的高度小于目标块的宽度时,处理单元可使用以下方案4)至6)中的至少一个来配置AMVP列表。
4)处理单元可从目标块的左侧邻近块的帧间预测信息推导一个AMVP候选,并且随后可从目标块的上方邻近块的帧间预测信息推导一个AMVP候选。
5)处理单元可仅使用目标块的左侧邻近块的多条帧间预测信息来配置AMVP候选列表。
6)处理单元可按照(B,J,K,A,F)的顺序或(B,A,J,K,F)的顺序配置AMVP候选列表。
例如,当目标块的高度等于目标块的宽度时,处理单元可使用以下方案7)和8)中的至少一个来配置AMVP候选列表。
7)处理单元可使用上述方案1)至6)中的至少一个来配置AMVP候选列表。
8)处理单元可使用目标块的左侧邻近块的多条帧间预测信息和目标块的上方邻近块的多条帧间预测信息来配置AMVP候选列表。
处理单元可基于目标块的划分状态确定用于配置AMVP候选列表的方案。
例如,当目标块作为垂直划分的结果而被获得时,处理单元可从目标块的上方邻近块的帧间预测信息推导一个AMVP候选,并且随后可从目标块的左侧邻近块的帧间预测信息推导一个AMVP候选。
例如,当目标块作为水平划分的结果而被获得时,处理单元可从目标块的左侧邻近块的帧间预测信息推导一个AMVP候选,并且随后可从目标块的上方邻近块的帧间预测信息推导一个AMVP候选。
例如,处理单元可使用上述用于基于目标块的划分状态确定合并候选列表的方案来配置AMVP候选列表。
处理单元可基于目标块的形状和目标块的划分状态两者来确定用于配置AMVP候选列表的方案。
例如,当目标块的高度大于目标块的宽度或者目标块的高度和宽度彼此相等时,并且当目标块作为垂直划分的结果而被获得时,处理单元可从针对目标块的上方邻近块的帧间预测信息推导一个AMVP候选,并且随后可从针对目标块的左侧邻近块或上方邻近块的帧间预测信息推导一个AMVP候选。
例如,当目标块的高度小于目标块的宽度或者目标块的高度和宽度彼此相等时,并且当目标块作为水平划分的结果而被获得时,处理单元可从针对目标块的左侧邻近块的帧间预测信息推导一个AMVP候选,并且随后可从针对目标块的左侧邻近块或上方邻近块的帧间预测信息推导一个AMVP候选。
处理单元可基于目标块的位置确定用于配置AMVP候选列表的方案。
目标块的位置可以是目标块在上层块中的相对位置。通过划分上层块,可生成多个分区块,并且目标块可以是所述多个分区块中的一个。目标块的位置可以是目标块在上层块中的位置,或者是目标块在多个分区块之间的位置。划分可以是二划分或四划分。
例如,在图23中,处理单元可将统一配置方法应用于针对第一分区CU的AMVP候选列表,并且将自适应配置方法应用于针对第二分区CU的AMVP候选列表。
处理单元可基于目标块的深度确定用于配置AMVP候选列表的方法。目标块的深度可以是基于四叉树(QT)划分的QT深度和基于二叉树(BT)划分的BT深度中的至少一个。
例如,处理单元可基于目标块的深度是否落在特定范围内来确定用于配置AMVP候选列表的方案。
例如,当目标块的BT深度小于或等于n时,处理单元可使用上述基于目标块的形状配置AMVP候选列表的方案和上述基于目标块的划分状态配置AMVP候选列表的方案中的至少一个来配置AMVP候选列表。例如,n可以是1。
例如,当目标块的QT深度等于或大于n并且目标块的BT深度小于或等于m时,处理单元可使用上述基于目标块的形状配置AMVP候选列表的方案和上述基于目标块的划分状态配置AMVP候选列表的方案中的至少一个来配置AMVP候选列表。例如,n可以是3,并且m可以是1。
处理单元可基于目标块的位置和目标块的深度来确定用于配置AMVP候者列表的方案。
例如,当目标块的BT深度小于或等于n并且目标块是通过水平划分而生成的分区块中的位于下部的块时,处理单元可使用上述基于目标块的形状配置AMVP候选列表的方案和上述基于目标块的划分状态配置AMVP候选列表的方案中的至少一个来配置AMVP候选列表。这里,n可以是1。
在合并候选列表和AMVP候选列表的上述配置中所描述的细节可被应用于彼此。例如,关于合并候选和AMVP候选中的一个的推导和添加所描述的特征也可被应用于其它候选的推导和添加。这里将省略重复的描述。
使用子块来推导目标块的帧间预测信息
当推导目标块的帧间预测信息时,处理单元可使用目标块的子块的帧间预测信息。换句话说,处理单元可在推导目标块的帧间预测信息时使用与子块的单位对应的帧间预测信息。
处理单元可将目标块划分成多个子块,并且可推导多个子块中的每一个的帧间预测信息。例如,处理单元可将目标块划分为N个子块,并且可推导针对N个子块的N条帧间预测信息。N可以是正整数。
图27示出根据示例的时间邻近块的子块和目标块的子块。
当时间邻近块的帧间预测信息可用时,处理单元可将时间邻近块分区为多个子块,并且可使用时间邻近块的多个子块的多条帧间预测信息来推导目标块的多个子块的多条帧间预测信息。
处理单元可使用时间邻近块的子块的多条帧间预测信息来推导目标块的子块的多条帧间预测信息。这里,目标块的子块在目标块内的位置和时间邻近块的子块在时间邻近块内的位置可彼此相同。
例如,处理单元可将图16中所示的时间邻近块N分区为4×4的时间子块,并且可使用每个时间子块的帧间预测信息来推导目标块的4×4的子块的多条帧间预测信息。
例如,处理单元可将图16中所示的时间邻近块N分区为2N×N的时间子块,并且可使用每个时间子块的帧间预测信息来推导目标块的2N×N的子块的多条帧间预测信息。
图28示出根据示例的目标块的空间邻近块和目标块的子块。
在图28中,子块由大写字母“A”至“P”指示,并且空间邻近块由小写字母“a”至“h”指示。
处理单元可将目标块划分为多个子块,并且可使用针对目标块的子块的空间邻近块的多条帧间预测信息来推导目标块的子块的多条帧间预测信息。
这里,针对目标块的子块的空间邻近块可包括1)与目标块的相应子块相邻的附加子块以及2)与目标块的相应子块相邻并且也是目标块的空间邻近块的块。此外,空间邻近块可以是在相应子块被编码和/或解码之前被执行编码和/或解码的块。
处理单元可使用子块的空间邻近块的多条帧间预测信息来推导子块的帧间预测信息。处理单元可使用子块的多个空间邻近块的多条帧间预测信息来推导子块的帧间预测信息。例如,子块的帧间预测信息可以是子块的多个空间邻近块的多条帧间预测信息的平均值。
例如,处理单元可使用以下项来推导子块A的帧间预测信息:1)空间邻近块d的帧间预测信息、2)空间邻近块e的帧间预测信息或3)空间邻近块d和空间邻近块e的多条帧间预测信息的平均值。
例如,处理单元可使用作为子块K的空间邻近块的块J、块F、块G和块H中的一个或更多个块的多条帧间预测信息的平均值来推导子块K的帧间预测信息。
当推导目标块的子块的帧间预测信息时,处理单元可同时使用针对目标块的子块的时间邻近块和针对目标块的子块的空间邻近块。
使用双边匹配来推导帧间预测信息
图29示出根据示例的使用双边匹配来推导帧间预测信息。
处理单元可使用双边匹配来推导帧间预测信息。
当执行双边匹配时,处理单元可配置针对目标块的初始运动矢量候选列表,并且可将包括在所配置的初始运动矢量候选列表中的一个或更多个初始运动矢量候选中的至少一个用作初始运动矢量。
例如,处理单元可使用AMVP模式以便配置针对目标块的初始运动矢量候选列表。AMVP模式下的AMVP候选列表中的AMVP候选可以是初始运动矢量候选列表中的一个或更多个初始运动矢量候选。处理单元可将包括在AMVP候选列表中的AMVP候选添加到初始运动矢量候选列表。
例如,处理单元可使用合并模式以便配置针对目标块的初始运动矢量候选列表。合并模式下的合并候选列表中的合并候选可以是初始运动矢量候选列表中的一个或更多个初始运动矢量候选。处理单元可将合并模式下的合并候选添加到初始运动矢量候选列表。
例如,处理单元可将针对目标块的帧率上转换(FRUC)单向运动矢量配置为初始运动矢量候选列表。处理单元可将针对目标块的FRUC单向运动矢量添加到初始运动矢量候选列表。
例如,处理单元可将目标块的邻近块的运动矢量配置为初始运动矢量候选列表。处理单元可将目标块的邻近块的运动矢量添加到初始运动矢量候选列表。
例如,处理单元可将上述运动矢量的组合配置为初始运动矢量候选列表。运动矢量的组合的数量可以是N或更多。N可以是正整数。处理单元可将上述运动矢量的组合添加到初始运动矢量候选列表。
例如,处理单元可在配置初始运动矢量列表时使用针对参考画面列表L0的方向和参考画面列表L1的方向中的至少一个的运动矢量。处理单元可将针对参考画面列表L0的方向和参考画面列表L1的方向中的至少一个的运动矢量添加到初始运动矢量列表。
处理单元可在执行双边匹配时推导针对目标块的初始运动矢量。处理单元可使用初始运动矢量列表来推导初始运动矢量。
在执行双边匹配时,处理单元可使用初始运动矢量列表来推导使初始运动矢量指示块和相对块彼此最佳匹配的双向运动矢量。
初始运动矢量指示块可以是由初始运动矢量指示的块。相对块可以是在与初始运动矢量指示块的方向相反的方向上存在于与初始运动矢量指示块相同的轨迹上的块。换句话说,初始运动矢量指示块的方向和相对块的方向可彼此相反,并且初始运动矢量指示块的轨迹和相对块的轨迹可彼此相同。
例如,如图29中所示,处理单元可对目标画面2910中的目标块2911执行双边匹配。当初始运动矢量列表中存在的运动矢量是参考画面参考0 2920中的MV0时,处理单元可推导运动矢量MV1,其中,1)运动矢量MV1存在于与MV0的方向相反的方向上存在的参考画面参考1 2930中,2)运动矢量MV1存在于与MV0相同的轨迹上,并且3)运动矢量MV1指示与由MV0所指示的块2921最佳匹配的块2931。
换句话说,当处理单元使用针对目标块的初始运动矢量来推导运动矢量MV0并且根据MV0来确定运动矢量MV1时,1)MV1的方向可与MV0的方向相反,并且MV1的运动轨迹可与MV0的运动轨迹相同。
处理单元可改进初始运动矢量。
例如,处理单元可搜索与由推导出的MV0所指示的块相邻的块,并且还可搜索与由推导出的MV1所指示的块相邻的块。处理单元可改进初始运动矢量,使得在与由MV0所指示的块相邻的块以及与由MV1所指示的块相邻的块中最佳匹配的块被指示。
当执行双边匹配时,处理单元可基于子块来推导帧间预测信息。帧间预测信息可包括运动信息和/或运动矢量。
当基于子块推导运动信息时,处理单元可使用上述用于推导针对块的初始运动矢量的方案来推导针对子块的初始运动矢量。
当执行双边匹配时,处理单元可定义块之间的匹配度。也就是说,处理单元可在确定块之间的匹配度时使用特定定义的方案中的一个。
例如,处理单元可确定当两个块之间的绝对差之和(SAD)最小时,所述两个块彼此最佳匹配。也就是说,处理单元可确定随着两个块之间的SAD越小,所述两个块彼此匹配得越好。
例如,处理单元可确定当两个块之间的绝对变换差之和(SATD)最小时,所述两个块彼此最佳匹配。也就是说,处理单元可确定随着两个块之间的SATD越小,所述两个块彼此匹配得越好。
使用模板匹配来推导帧间预测信息
图30示出根据示例的使用模板匹配模式来推导帧间预测信息。
在图30中,示出了目标画面3010中的目标块3011。
处理单元可使用模板匹配来推导帧间预测信息。
当执行模板匹配时,处理单元可将目标块的邻近块用作模板。可基于预定义的方案来设置模板的尺寸和位置。
例如,处理单元可将与目标块3011的上方相邻的邻近块3013用作模板。
例如,处理单元可将与目标块3011的左侧相邻的邻近块3012用作模板。
例如,处理单元可将与目标块3011的上方相邻的邻近块3013或与目标块3011的左侧相邻的邻近块3012用作模板。
在实施例中,当执行模板匹配时,处理单元可使用模板在参考画面中搜索块。在图30中,“参考0(3020)”可以是参考画面。
当执行模板匹配时,处理单元可使用模板来推导帧间预测信息。
处理单元可在参考画面中搜索与模板对应的块。与模板对应的块的形状和尺寸可与模板的形状和尺寸相同。与模板对应的块可以是参考画面中的与模板最佳匹配的块。
处理单元可推导指示与模板对应的块的运动矢量。换句话说,处理单元可推导指示参考画面中的与模板最佳匹配的块的运动矢量。
例如,在图30中,描绘了针对与目标块的上方相邻的邻近块3013找到的与模板对应的块3022以及针对与目标块的左侧相邻的邻近块3012找到的与模板对应的块3021。
处理单元可使用与模板对应的块的运动矢量来推导目标块的运动矢量。处理单元可将与模板对应的块的运动矢量设置为目标块的运动矢量。
这里,找到块的参考画面的方向和由目标块的运动矢量指示的参考画面的方向可彼此相反。
处理单元可改进运动矢量。例如,处理单元可搜索与由当前模板和推导出的运动矢量所指示的块相邻的块,并且可改进运动矢量,使得运动矢量指示所找到的邻近块中的与模板最佳匹配的块。换句话说,改进的运动矢量可以是针对与由推导出的运动矢量所指示的块相邻的块中的与模板最佳匹配的块的运动矢量。
当执行模板匹配时,处理单元可基于子块推导帧间预测信息。帧间预测信息可包括运动信息和运动矢量。
当基于子块推导运动信息时,处理单元可使用上述用于推导针对块的运动矢量的方案来推导针对子块的运动矢量。
当执行模板匹配时,处理单元可定义块之间的匹配度。也就是说,处理单元可在确定块之间的匹配度时使用特定定义的方案中的一个。
例如,处理单元可确定当两个块之间的SAD最小时,所述两个块彼此最佳匹配。也就是说,处理单元可确定随着两个块之间的SAD越小,所述两个块彼此匹配得越好。
例如,处理单元可确定当两个块之间的SATD最小时,所述两个块彼此最佳匹配。也就是说,处理单元可确定随着两个块之间的SATD越小,所述两个块彼此匹配得越好。
用于帧间预测的运动补偿和运动校正
在针对目标块的帧间预测中,处理单元可使用运动补偿、IC、OBMC、BIO、仿射空间运动预测和运动补偿以及在解码设备1300中的运动矢量校正中的至少一个来执行帧间预测。
处理单元可执行运动补偿以针对目标块执行帧间预测。
处理单元可使用推导出的帧间预测信息来生成针对目标块的预测块。运动补偿可以是单向运动补偿或双向运动补偿。
在示例中,处理单元可使用一个参考画面列表L0中存在的一个画面中的块来执行运动补偿。
在示例中,处理单元可通过将一个参考画面列表L0中存在的一个画面中的多个块进行组合来执行运动补偿。
在示例中,处理单元可通过将一个参考画面列表L0中存在的多个画面中的多个块进行组合来执行运动补偿。
在示例中,处理单元可通过将参考画面列表L0中存在的一个画面中的一个块与参考画面列表L1中存在的一个画面中的一个块进行组合来执行运动补偿。
在示例中,处理单元可通过将参考画面列表L0中存在的一个画面中的多个块与参考画面列表L1中存在的一个画面中的多个块进行组合来执行运动补偿。
在示例中,处理单元可通过将参考画面列表L0中存在的多个画面中的多个块与参考画面列表L1中存在的多个画面中的多个块进行组合来执行运动补偿。
处理单元可执行照度补偿(IC)以针对目标块执行帧间预测。
当执行运动补偿时,处理单元可对包括用于运动补偿的参考块的参考画面与包括目标块的目标画面之间的亮度变化和/或照度变化进行补偿。
例如,处理单元可将目标块的邻近样点与参考块的邻近样点之间的变化近似为N个或更多个线性模型,并且可通过将线性模型应用于运动补偿块来执行照度补偿。N可以是正整数。
图31示出根据示例的OBMC的应用。
处理单元可执行OBMC以针对目标块执行帧间预测。
处理单元可通过将第一块与第二块进行组合来生成预测块。第一块可以是经由使用目标块的帧间预测信息的补偿而生成的块。第二块可以是经由使用与目标块相邻的一个或更多个邻近块的一条或更多条帧间预测信息的补偿而生成的一个或更多个块。这里,与目标块相邻的一个或更多个邻近块可包括与目标块的左侧相邻的左侧邻近块、与目标块的右侧相邻的右侧邻近块、与目标块的上方相邻的上方邻近块以及与目标块的下方相邻的下方邻近块。
处理单元可对目标块的每个子块执行OBMC。
处理单元可通过将第一块与第二块进行组合来生成预测块。第一块可以是经由使用目标块的子块的帧间预测信息的补偿而生成的块。第二块可指示经由使用与目标块的子块相邻的一个或更多个邻近子块的一条或更多条帧间预测信息的补偿而生成的一个或更多个块。帧间预测信息可包括运动矢量。这里,与目标块的相应子块相邻的一个或更多个邻近子块可包括与目标块的子块的左侧相邻的左侧邻近子块、与目标块的子块的右侧相邻的右侧邻近子块、与目标块的子块的上方相邻的上方邻近子块以及与目标块的子块的下方相邻的下方邻近子块。
处理单元可仅对目标块的子块中的特定子块执行OBMC。
例如,处理单元可仅对与目标块的内部边界相邻的子块执行OBMC。
在示例中,处理单元可对目标块的所有子块执行OBMC。
例如,处理单元可仅对与目标块的内部左边界相邻的子块执行OBMC。
在示例中,处理单元可仅对与目标块的内部右边界相邻的子块执行OBMC。
在示例中,处理单元可仅对与目标块的内部上边界相邻的子块执行OBMC。
在示例中,处理单元可仅对与目标块的内部下边界相邻的子块执行OBMC。
在图31中,示出了作为目标块的CU被划分为PU1和PU2的示例,OBMC被应用于CU的子块中的以下子块:1)与上边界相邻的子块,2)与左边界相邻的子块以及3)与PU之间的边界相邻的子块。
图32示出根据示例的ATMVP模式下的子PU。
目标块可被划分为多个子块。目标块可以是目标CU,并且子块可以是子PU。处理单元可对目标CU的所有子块执行OBMC。
处理单元可通过将第一块与第二块进行组合来生成预测块。第一块可以是经由使用目标块的每个子块的帧间预测信息的补偿而生成的块。第二块可以是经由使用与目标块的子块相邻的邻近子块的多条帧间预测信息的补偿而生成的块。帧间预测信息可以是运动矢量。这里,与目标块的相应子块相邻的邻近子块可包括与目标块的子块的左侧相邻的左侧邻近子块、与目标块的子块的右侧相邻的右侧邻近子块、与目标块的子块的上方相邻的上方邻近子块以及与目标块的子块的下方相邻的下方邻近子块。
处理单元可执行仿射空间运动预测和补偿以针对目标块执行帧间预测。
在示例中,处理单元可通过将仿射变换方程应用于目标块的左上位置处的第一运动矢量和目标块的右上位置处的第二运动矢量来生成针对目标块中的各个像素的运动矢量,并且可使用生成的运动矢量来执行运动补偿。
在示例中,处理单元可通过将仿射变换方程应用于目标块的左上位置处的第一运动矢量和目标块的右上位置处的第二运动矢量来生成针对目标块中的各个子块的运动矢量,并且可使用生成的运动矢量来执行运动补偿。
为了提供第一运动矢量和第二运动矢量,可使用以下方案1)至3)中的至少一个。
1)可将第一运动矢量和第二运动矢量从编码设备1200发送到解码设备1300(通过比特流)。
2)对于第一运动矢量和第二运动矢量中的每一个,可将其相应运动矢量与邻近运动矢量之间的差从编码设备1200发送到解码设备1300。
3)可使用目标块的邻近块的仿射运动矢量来推导第一运动矢量和第二运动矢量,而无需发送。
处理单元可执行BIO以针对目标块执行帧间预测。
处理单元可使用利用单向块的光流来推导目标块的运动矢量。
处理单元可使用双向光流来推导目标块的运动矢量,其中,该双向光流使用按照显示顺序在目标画面之前的画面中存在的块以及在目标画面之后的画面中存在的块。这里,在目标画面之前的画面中存在的块和在目标画面之后的画面中存在的块可以是具有相反运动并且与目标块相似的块。
处理单元可在解码设备1300上执行运动矢量校正,以针对目标块执行帧间预测。处理单元可使用被发送到解码设备1300的运动矢量来对目标块的运动矢量执行校正。
图33是示出根据实施例的目标块预测方法和比特流生成方法的流程图。
根据本实施例的目标块预测方法和比特流生成方法可由编码设备1200执行。该实施例可以是目标块编码方法或视频编码方法的一部分。
在步骤3310,处理单元1210可推导帧间预测信息。步骤3310可与上面参照图14描述的步骤1410对应。
在步骤3320,处理单元1210可执行使用推导出的帧间预测信息的帧间预测。步骤3320可与上面参照图14描述的步骤1420对应。
在步骤3330,处理单元1210可生成比特流。
比特流可包括关于经过编码的目标块的信息。例如,关于经过编码的目标块的信息可包括目标块的经过变换和量化的系数。
比特流可包括用于推导帧间预测信息的信息和用于帧间预测的信息。
在示例中,比特流可包括指示用于推导帧间预测信息的方法的指示符。
例如,比特流可包括指示在编码设备1200或解码设备1300的列表中存在的候选中的一个候选的索引。
处理单元1210可对用于推导帧间预测信息的信息和用于帧间预测的信息执行熵编码,并且可生成包括多条经过熵编码的信息的比特流。
处理单元1210可将生成的比特流存储在存储器1240中。可选地,通信单元1220可将比特流发送到解码设备1300。
图34是示出根据实施例的使用比特流的目标块预测方法的流程图。
根据本实施例的使用比特流的目标块预测方法可由解码设备1300执行。该实施例可以是目标块解码方法或视频解码方法的一部分。
在步骤3410,通信单元1320可获取比特流。通信单元1320可从编码设备1200接收比特流。
比特流可包括关于经过编码的目标块的信息。例如,关于经过编码的目标块的信息可包括目标块的经过变换和量化的系数。
比特流可包括用于推导帧间预测信息的信息和用于帧间预测的信息。
例如,比特流可包括指示用于推导帧间预测信息的方法的指示符。
例如,比特流可包括指示在编码设备1200和解码设备1300中的每一个的列表中存在的候选中的一个候选的索引。
处理单元1310可将获取的比特流存储在存储器1240中。
处理单元1310可通过对比特流中的多条经过熵编码的信息执行熵解码来获取用于推导帧间预测信息的信息和用于帧间预测的信息。
在步骤3420,处理单元1310可推导帧间预测信息。步骤3420可与上面参照图14描述的步骤1410对应。
在步骤3430,处理单元1310可执行使用推导出的帧间预测信息的帧间预测。步骤3430可与上面参照图14描述的步骤1420对应。
在以上描述的实施例中,虽然已基于作为一系列步骤或单元的流程图描述了方法,但是本公开不限于所述步骤的顺序,并且一些步骤可以按照与已描述的步骤的顺序不同的顺序来执行或者与其它步骤同时执行。此外,本领域技术人员将理解:在流程图中示出的步骤不是排他性的,并且还可包括其它步骤,或者,可在不脱离本公开的范围的情况下删除流程图中的一个或更多个步骤。
以上描述的根据本公开的实施例可被实现为能够由各种计算机装置运行的程序,并且可被记录在计算机可读存储介质上。计算机可读存储介质可单独地或者组合地包括程序指令、数据文件和数据结构。在存储介质上记录的程序指令可被专门设计或配置用于本公开,或者对于计算机软件领域的普通技术人员而言可以是已知的或者可用的。计算机可读存储介质的示例可包括被专门配置用于记录和运行程序指令的所有类型的硬件装置,诸如,磁介质(诸如硬盘、软盘和磁带)、光学介质(诸如致密盘(CD)-ROM和数字多功能盘(DVD))、磁光介质(诸如软光盘、ROM、RAM和闪存)。程序指令的示例包括机器代码(诸如由编译器创建的代码)和能够由计算机使用解释器执行的高级语言代码。硬件装置可被配置为作为一个或更多个软件模块进行操作以执行本公开的操作,反之亦可。
如上所述,虽然已基于特定细节(诸如详细组件和有限数量的实施例和附图)描述了本公开,但是所述特定细节仅被提供用于容易理解本公开,本公开不限于这些实施例,本领域技术人员将根据以上描述实践各种改变和修改。
因此,应理解的是,本实施例的精神不受限于上述实施例,并且所附权利要求及其等同物和对它们的修改落入本公开的范围内。

Claims (20)

1.一种编码设备,包括:
处理单元,用于推导针对目标块的帧间预测信息,并使用推导出的帧间预测信息针对所述目标块执行帧间预测,
其中,处理单元使用组合帧间预测信息来配置针对所述目标块的列表,并且
其中,处理单元通过将所述目标块的邻近块的两条或更多条帧间预测信息进行组合来生成所述组合帧间预测信息。
2.一种解码设备,包括:
处理单元,用于推导针对目标块的帧间预测信息,并使用推导出的帧间预测信息针对所述目标块执行帧间预测,
其中,处理单元使用组合帧间预测信息来配置针对所述目标块的列表,并且
其中,处理单元通过将所述目标块的邻近块的两条或更多条帧间预测信息进行组合来生成所述组合帧间预测信息。
3.一种解码方法,包括:
推导针对目标块的帧间预测信息;并且
使用推导出的帧间预测信息来针对所述目标块执行帧间预测,
其中,使用组合帧间预测信息来配置针对所述目标块的列表,并且
其中,所述组合帧间预测信息是通过将所述目标块的邻近块的两条或更多条帧间预测信息进行组合而生成的。
4.如权利要求3所述的解码方法,其中,所述帧间预测信息包括照度补偿IC标志和重叠块运动补偿OBMC标志中的至少一个。
5.如权利要求3所述的解码方法,其中,所述列表是合并列表或高级运动矢量预测AMVP列表。
6.如权利要求3所述的解码方法,其中,所述邻近块包括所述目标块的空间邻近块和时间邻近块。
7.如权利要求3所述的解码方法,其中,当所述邻近块中的一个邻近块的帧间预测信息不可用时,推导针对所述一个邻近块的组合帧间预测信息。
8.如权利要求3所述的解码方法,其中,当所述邻近块中的一个邻近块的帧间预测信息未被添加到所述列表时,针对所述一个邻近块推导出的组合帧间预测信息被添加到所述列表。
9.如权利要求3所述的解码方法,其中,所述组合帧间预测信息的运动矢量是使用所述邻近块的运动矢量的公式的结果。
10.如权利要求9所述的解码方法,其中,所述组合帧间预测信息的运动矢量是所述邻近块的运动矢量的加权平均值。
11.如权利要求9所述的解码方法,其中,所述组合帧间预测信息的运动矢量是所述邻近块的运动矢量基于块尺寸的加权组合的结果。
12.如权利要求9所述的解码方法,其中,所述组合帧间预测信息的运动矢量是所述邻近块的运动矢量的画面顺序计数POC加权组合的结果。
13.如权利要求9所述的解码方法,其中,所述组合帧间预测信息的运动矢量是所述邻近块的运动矢量的基于外插的组合的结果。
14.如权利要求3所述的解码方法,其中,与特定块的左侧位置相关的第一帧间预测信息以及与所述特定块的右侧位置相关的第二帧间预测信息被推导,并且所述组合帧间预测信息是通过将第一帧间预测信息与第二帧间预测信息进行组合而生成的。
15.如权利要求3所述的解码方法,其中,用于配置所述列表的方案是基于所述目标块的形状来确定的。
16.如权利要求3所述的解码方法,其中,用于配置所述列表的方案是基于所述目标块的划分状态来确定的。
17.如权利要求3所述的解码方法,其中,用于配置所述列表的方案是基于所述目标块的位置来确定的。
18.如权利要求3所述的解码方法,其中,所述组合帧间预测信息按照比所述邻近块的多条帧间预测信息的优先级低的优先级被添加到所述列表。
19.如权利要求3所述的解码方法,其中,所述组合帧间预测信息被添加到所述列表中的在空间邻近块的帧间预测信息之后并且在时间邻近块的帧间预测信息之前的位置。
20.如权利要求3所述的解码方法,其中,用于配置所述列表的方案是基于所述目标块的深度来确定的。
CN201880076042.XA 2017-10-10 2018-10-10 使用帧间预测信息的方法和装置 Pending CN111567045A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
KR20170129156 2017-10-10
KR10-2017-0129156 2017-10-10
KR10-2017-0178140 2017-12-22
KR20170178140 2017-12-22
KR20180071065 2018-06-20
KR10-2018-0071065 2018-06-20
PCT/KR2018/011905 WO2019074273A1 (ko) 2017-10-10 2018-10-10 인터 예측 정보를 사용하는 방법 및 장치

Publications (1)

Publication Number Publication Date
CN111567045A true CN111567045A (zh) 2020-08-21

Family

ID=66285088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880076042.XA Pending CN111567045A (zh) 2017-10-10 2018-10-10 使用帧间预测信息的方法和装置

Country Status (3)

Country Link
US (2) US11082716B2 (zh)
KR (3) KR102427789B1 (zh)
CN (1) CN111567045A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055203A (zh) * 2020-08-22 2020-12-08 浙江大华技术股份有限公司 帧间预测方法、视频编码方法及其相关装置
CN112927311A (zh) * 2021-02-24 2021-06-08 上海哔哩哔哩科技有限公司 样点自适应补偿的边带补偿模式的数据处理方法、装置
CN113965753A (zh) * 2021-12-20 2022-01-21 康达洲际医疗器械有限公司 一种基于码率控制的帧间图像运动估计方法与***
WO2022078150A1 (zh) * 2020-10-18 2022-04-21 腾讯科技(深圳)有限公司 候选运动信息列表确定方法、装置、电子设备及存储介质
WO2023051532A1 (en) * 2021-09-29 2023-04-06 Beijing Bytedance Network Technology Co., Ltd. Method, device, and medium for video processing

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118214854A (zh) * 2017-10-26 2024-06-18 英迪股份有限公司 用于基于非对称子块的图像编码/解码的方法及装置
WO2019190199A1 (ko) * 2018-03-27 2019-10-03 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN110662059B (zh) 2018-06-29 2021-04-20 北京字节跳动网络技术有限公司 使用查找表存储先前编码的运动信息并用其编码后续块的方法和装置
CN114466197A (zh) 2018-06-29 2022-05-10 北京字节跳动网络技术有限公司 用于查找表更新的编码的运动信息的选择
EP3794825A1 (en) 2018-06-29 2021-03-24 Beijing Bytedance Network Technology Co. Ltd. Update of look up table: fifo, constrained fifo
CN110662064B (zh) 2018-06-29 2022-06-14 北京字节跳动网络技术有限公司 Lut中的运动候选的检查顺序
CN110662053B (zh) 2018-06-29 2022-03-25 北京字节跳动网络技术有限公司 使用查找表的视频处理方法、装置和存储介质
WO2020003283A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating luts
CN110662054B (zh) 2018-06-29 2023-01-06 北京字节跳动网络技术有限公司 用于视频处理的方法、装置、计算机可读存储介质
CA3105330C (en) 2018-06-29 2023-12-05 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
TWI734133B (zh) * 2018-07-02 2021-07-21 大陸商北京字節跳動網絡技術有限公司 更新查找表的規則
TW202025760A (zh) 2018-09-12 2020-07-01 大陸商北京字節跳動網絡技術有限公司 要檢查多少個hmvp候選
WO2020084556A1 (en) * 2018-10-24 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Sub-block motion candidate list in video coding
US10958900B2 (en) * 2018-12-06 2021-03-23 Qualcomm Incorporated Derivation of spatial-temporal motion vectors prediction in video coding
WO2020116242A1 (ja) * 2018-12-07 2020-06-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
KR20210095138A (ko) 2018-12-19 2021-07-30 엘지전자 주식회사 이차 변환에 기반한 영상 코딩 방법 및 그 장치
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
JP2022523697A (ja) * 2019-01-28 2022-04-26 オーピー ソリューションズ, エルエルシー 適応的な数の領域を伴う幾何学的分割におけるインター予測
BR112021016896A2 (pt) * 2019-03-08 2021-11-03 Huawei Tech Co Ltd Codificador, decodificador e métodos correspondentes para predição inter
KR20210134038A (ko) * 2019-03-13 2021-11-08 에스지 디제이아이 테크놀러지 코., 엘티디 비디오 처리 방법 및 기기
WO2020192611A1 (en) 2019-03-22 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
CN113994698B (zh) * 2019-06-04 2023-11-24 北京字节跳动网络技术有限公司 有条件地实施运动候选列表构建过程
EP3963890A4 (en) 2019-06-04 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION
CN114128295B (zh) 2019-07-14 2024-04-12 北京字节跳动网络技术有限公司 视频编解码中几何分割模式候选列表的构建
WO2021057996A1 (en) 2019-09-28 2021-04-01 Beijing Bytedance Network Technology Co., Ltd. Geometric partitioning mode in video coding
WO2023008888A1 (ko) * 2021-07-26 2023-02-02 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체
KR20240065097A (ko) * 2021-09-17 2024-05-14 주식회사 윌러스표준기술연구소 Obmc를 이용한 비디오 신호 처리 방법 및 이를 위한 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796725A (zh) * 2014-01-21 2015-07-22 Vixs***公司 具有帧内预测预处理的视频编码器及与其一起使用的方法
US20160219302A1 (en) * 2015-01-26 2016-07-28 Qualcomm Incorporated Overlapped motion compensation for video coding
WO2016175550A1 (ko) * 2015-04-27 2016-11-03 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101960034B1 (ko) * 2011-09-09 2019-03-19 엘지전자 주식회사 인터 예측 방법 및 그 장치
KR101423648B1 (ko) 2011-09-09 2014-07-28 주식회사 케이티 화면 간 예측 수행시 후보 블록 결정 방법 및 이러한 방법을 사용하는 장치
KR101197176B1 (ko) 2011-09-23 2012-11-05 주식회사 케이티 머지 후보 블록 유도 방법 및 이러한 방법을 사용하는 장치
EP2849441B1 (en) 2012-05-10 2019-08-21 LG Electronics Inc. Method and apparatus for processing video signals
KR102070719B1 (ko) 2013-01-23 2020-01-30 한국전자통신연구원 인터 예측 방법 및 그 장치
US9554150B2 (en) 2013-09-20 2017-01-24 Qualcomm Incorporated Combined bi-predictive merging candidates for 3D video coding
US10080029B2 (en) 2013-10-24 2018-09-18 Electronics And Telecommunications Research Institute Video encoding/decoding method and apparatus
US9294765B2 (en) * 2014-01-07 2016-03-22 Vixs Systems, Inc. Video encoder with intra-prediction pre-processing and methods for use therewith
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
CN109845253B (zh) * 2016-10-04 2023-09-12 株式会社Kt 一种用于对二维视频进行解码、编码的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796725A (zh) * 2014-01-21 2015-07-22 Vixs***公司 具有帧内预测预处理的视频编码器及与其一起使用的方法
US20160219302A1 (en) * 2015-01-26 2016-07-28 Qualcomm Incorporated Overlapped motion compensation for video coding
WO2016175550A1 (ko) * 2015-04-27 2016-11-03 엘지전자 주식회사 비디오 신호의 처리 방법 및 이를 위한 장치

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055203A (zh) * 2020-08-22 2020-12-08 浙江大华技术股份有限公司 帧间预测方法、视频编码方法及其相关装置
CN112055203B (zh) * 2020-08-22 2024-04-12 浙江大华技术股份有限公司 帧间预测方法、视频编码方法及其相关装置
WO2022078150A1 (zh) * 2020-10-18 2022-04-21 腾讯科技(深圳)有限公司 候选运动信息列表确定方法、装置、电子设备及存储介质
CN112927311A (zh) * 2021-02-24 2021-06-08 上海哔哩哔哩科技有限公司 样点自适应补偿的边带补偿模式的数据处理方法、装置
CN112927311B (zh) * 2021-02-24 2022-06-03 上海哔哩哔哩科技有限公司 样点自适应补偿的边带补偿模式的数据处理方法、装置
WO2023051532A1 (en) * 2021-09-29 2023-04-06 Beijing Bytedance Network Technology Co., Ltd. Method, device, and medium for video processing
CN113965753A (zh) * 2021-12-20 2022-01-21 康达洲际医疗器械有限公司 一种基于码率控制的帧间图像运动估计方法与***

Also Published As

Publication number Publication date
US20200322628A1 (en) 2020-10-08
KR102427789B1 (ko) 2022-08-02
KR20240074741A (ko) 2024-05-28
US11792424B2 (en) 2023-10-17
US11082716B2 (en) 2021-08-03
KR20190040476A (ko) 2019-04-18
US20210329294A1 (en) 2021-10-21
KR102668840B1 (ko) 2024-05-24
KR20230098547A (ko) 2023-07-04

Similar Documents

Publication Publication Date Title
US11792424B2 (en) Method and device using inter prediction information
CN110463201B (zh) 使用参考块的预测方法和装置
CN109314785B (zh) 用于导出运动预测信息的方法和装置
CN110476425B (zh) 基于块形式的预测方法和装置
CN116320498A (zh) 用于滤波的方法和装置
CN111699682A (zh) 用于使用通道之间的选择性信息共享进行编码和解码的方法和设备
US11985325B2 (en) Method, apparatus, and recording medium for encoding/decoding image by using geometric partitioning
US20230421804A1 (en) Method and device using inter prediction information
CN111684801A (zh) 双向帧内预测方法和设备
CN114450946A (zh) 通过使用几何分区对图像进行编码/解码的方法、设备和记录介质
CN111919448A (zh) 用于使用时间运动信息的图像编码和图像解码的方法和设备
CN108605123B (zh) 通过使用预测对视频进行编码和解码的方法和装置
CN114270865A (zh) 用于对图像进行编码/解码的方法、设备和记录介质
US20220295059A1 (en) Method, apparatus, and recording medium for encoding/decoding image by using partitioning
CN114270828A (zh) 用于使用基于块类型的预测的图像编码和图像解码的方法和设备
CN114556922A (zh) 通过使用分区对图像进行编码/解码的方法、设备和记录介质
CN115066895A (zh) 用于通过使用调色板模式对图像进行编码/解码的方法和装置以及记录介质
CN114342388A (zh) 使用区域分段进行图像编码和图像解码的方法和设备
CN118044194A (zh) 用于图像编码/解码的方法、装置和记录介质
CN118216141A (zh) 通过使用几何分区对图像进行编码/解码的方法、设备和记录介质
CN114270820A (zh) 使用参考画面对图像进行编码/解码的方法、装置和记录介质
CN114788288A (zh) 变换信息编码/解码方法和装置以及比特流存储介质
CN115941949A (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