CN112740694A - 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 - Google Patents

用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 Download PDF

Info

Publication number
CN112740694A
CN112740694A CN201980061565.1A CN201980061565A CN112740694A CN 112740694 A CN112740694 A CN 112740694A CN 201980061565 A CN201980061565 A CN 201980061565A CN 112740694 A CN112740694 A CN 112740694A
Authority
CN
China
Prior art keywords
block
prediction
current block
sub
information
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
CN201980061565.1A
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
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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 filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of CN112740694A publication Critical patent/CN112740694A/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/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/186Methods 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 a colour or a chrominance component
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic 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/124Quantisation

Landscapes

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

Abstract

公开了一种用于对图像进行解码的方法。根据本发明的对图像进行解码的方法可以包括以下步骤:确定当前块的预测模式,并且基于确定的预测模式对当前块执行预测。

Description

用于对图像进行编码/解码的方法和设备以及用于存储比特 流的记录介质
技术领域
本发明涉及一种用于对图像进行编码/解码的方法和设备,以及一种用于存储比特流的记录介质。更具体地,本发明涉及一种用于基于重叠块运动补偿和候选列表对图像进行编码/解码的方法和设备,以及一种用于存储比特流的记录介质。
背景技术
近来,在各种应用领域中,对高分辨率和高质量图像(诸如高清晰度(HD)图像和超高清晰度(UHD)图像)的需求已经增加。然而,与传统图像数据相比,更高分辨率和更高质量的图像数据具有越来越多的数据量。因此,当通过使用介质(诸如传统有线和无线宽带网络)来传输图像数据时,或者当通过使用传统存储介质来存储图像数据时,传输和存储的成本增加。为了解决随着图像数据的分辨率和质量的提高而出现的这些问题,对于更高分辨率和更高质量的图像,需要高效的图像编码/解码技术。
图像压缩技术包括各种技术,包括:帧间预测技术,从当前画面的先前画面或后续画面预测包括在当前画面中的像素值;帧内预测技术,通过使用当前画面中的像素信息来预测包括在当前画面中的像素值;变换和量化技术,用于压缩残差信号的能量;熵编码技术,将短码分配给具有高出现频率的值并将长码分配给具有低出现频率的值等。通过使用这种图像压缩技术,可以有效地压缩图像数据,并且可以传输或存储图像数据。
发明内容
技术问题
本发明的目的是提供一种能够提高压缩效率的图像编码/解码方法和设备,以及一种存储由该方法或设备产生的比特流的记录介质。
本发明的另一目的是提供一种能够通过使用重叠块运动补偿来提高压缩效率的图像编码/解码方法和设备,以及存储由该方法或设备产生的比特流的记录介质。
本发明的另一目的是提供一种能够通过使用候选列表来提高压缩效率的图像编码/解码方法和设备,以及存储由该方法或设备产生的比特流的记录介质。
技术方案
根据本发明,一种图像解码方法包括:确定当前块的预测模式,并基于确定的预测模式针对当前块执行预测。
其中,在当前块的预测模式被确定为帧内预测模式的情况下,通过使用确定的预测模式针对当前块执行预测的步骤包括:推导用于推导当前块的帧内预测模式的第一MPM列表和第二MPM列表,确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中,以及在当前块的帧内预测模式包括在第一MPM列表和第二MPM列表中的至少一个中的情况下,使用第一MPM列表和第二MPM列表确定当前块的帧内预测模式。
其中,确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中的步骤包括:确定当前块的帧内预测模式是否包括在第一MPM列表中,以及在当前块的帧内预测模式不包括在第一MPM列表中的情况下,确定当前块的帧内预测模式是否包括在第二MPM列表中。
其中,第一MPM列表包括平面模式。
所述图像解码方法还包括:在当前块的帧内预测模式不包括在第一MPM列表和第二MPM列表中的至少一个中的情况下使用残差帧内预测模式候选列表确定当前块的帧内预测模式,其中,残差帧内预测模式候选列表包括不被包括在第一MPM列表和第二MPM列表中的至少一个中的帧内预测模式。
其中,在当前块的帧内预测模式被确定为帧间预测模式的情况下,基于确定的预测模式对当前块执行预测的步骤包括:推导当前块的运动信息;使用当前块的运动信息推导基于历史的合并候选;将基于历史的合并候选添加到基于历史的合并候选列表;以及使用基于历史的合并候选列表推导合并候选列表,其中,合并候选列表用于在当前块之后将被解码的块的帧间预测。
其中,基于历史的合并候选列表包括使用在当前块之前已经被解码的块的运动信息推导的基于历史的合并候选。
其中,在当前块之前已经被解码的块和当前块分别属于不同的编码树单元(CTU)的情况下,不将基于当前块的运动信息推导的基于历史的合并候选添加到基于历史的合并候选列表。
其中,仅在仿射模式或基于子块的时间运动矢量推导模式未应用于当前块的情况下,将基于历史的合并候选添加到基于历史的合并候选列表。
其中,将基于历史的合并候选添加到基于历史的合并候选列表的步骤包括:在包括在基于历史的合并候选列表中的候选的数量是预定义值的情况下,删除包括在基于历史的合并候选列表中的候选中的最早包括在基于历史的合并候选列表中的候选;以及以被放置在最后包括在基于历史的合并候选列表中的候选的下一个的方式添加基于历史的合并候选。
其中,使用基于历史的合并候选列表来推导合并候选列表包括:将包括在基于历史的合并候选列表中的候选添加到合并候选列表。
其中,在当前块的预测模式被确定为三角形分区模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:将当前块分区为第一子块和第二子块;产生针对第一子块的第一预测块和针对第二子块的第二预测块;以及使用第一预测块和第二预测块的加权和来产生针对当前块的预测块。
其中,产生针对第一子块的第一预测块和针对第二子块的第二预测块的步骤包括:从比特流获取用于产生第一预测块的第一索引和用于产生第二预测块的第二索引;使用由第一索引指示的第一运动信息产生第一预测块;以及使用由第二索引指示的第二运动信息产生第二预测块。
其中,第一索引和第二索引指示与当前块相邻的邻近块的多条运动信息中的至少一条运动信息。
其中,为了获得加权和,仅对第一子块和第二子块的边界区域执行基于加权的求和。
根据本发明,一种图像编码方法包括:确定当前块的预测模式;以及基于确定的预测模式针对当前块执行预测。
其中,在当前块的预测模式被确定为帧内预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:推导用于推导当前块的帧内预测模式的第一MPM列表和第二MPM列表;确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中;以及在当前块的帧内预测模式包括在第一MPM列表和第二MPM列表中的至少一个中的情况下,使用第一MPM列表和第二MPM列表确定当前块的帧内预测模式。
其中,在当前块的预测模式被确定为帧间预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:推导当前块的运动信息;使用当前块的运动信息推导基于历史的合并候选;将基于历史的合并候选添加到基于历史的合并候选列表;以及使用基于历史的合并候选列表推导合并候选列表,其中,合并候选列表用于在当前块之后将被编码的块的帧间预测。
其中,在当前块的预测模式被确定为三角形分区模式的情况下,基于确定的预测模式对当前块执行预测的步骤包括:将当前块分区为第一子块和第二子块;产生针对第一子块的第一预测块和针对第二子块的第二预测块;以及使用第一预测块和第二预测块的加权和来产生针对当前块的预测块。
根据本发明,提供了一种存储比特流的计算机可读记录介质,其中,所述比特流由图像解码设备接收并用于重建当前画面中的当前块,其中:比特流包括关于当前块的预测模式的信息;关于预测模式的信息用于确定当前块的预测模式;以及确定的预测模式用于执行针对当前块的预测。
有益效果
根据本发明,可以提供一种能够提高压缩效率的图像编码/解码方法和设备,并且可以提供一种存储由该方法或设备产生的比特流的记录介质。
另外,根据本发明,可以提供一种能够通过使用重叠块运动补偿来提高压缩效率的图像编码/解码方法和设备,以及一种存储由该方法或设备产生的比特流的记录介质。
另外,根据本发明,可以提供一种能够通过使用候选列表来提高压缩效率的图像编码/解码方法和设备,以及一种存储由该方法或设备产生的比特流的记录介质。
附图说明
图1是示出应用本发明的编码设备的配置的框图。
图2是示出应用本发明的解码设备的配置的框图。
图3是示意性地示出当对图像进行编码和解码时的分区结构的示图。
图4是示出帧内预测的示例的示图。
图5是示出帧间预测的示例的示图。
图6是示出变换和量化的示例的示图。
图7是示出可用于帧内预测的参考样点的示图。
图8是示出根据本发明实施例的图像编码方法的流程图;
图9是示出根据本发明实施例的图像解码方法的流程图;
图10是用于描述推导针对当前块的空间运动矢量候选的示例的示图;
图11是用于描述推导针对当前块的时间运动矢量候选的示例的示图;
图12是用于描述根据本发明实施例的推导候选列表的示例的示图;
图13是用于描述根据本发明的实施例的推导候选列表的方法的流程图;
图14是用于描述执行基于子块的重叠块运动补偿的示例的示图;
图15是用于描述在计算第一预测块和第二预测块的加权和时应用加权因子的实现示例的示图;以及
图16是用于描述在计算第一预测块和第二预测块的加权和时根据块内的样点位置应用不同的加权因子的实现示例的示图。
具体实施方式
可以对本发明进行各种修改,并且存在本发明的各种实施例,其中,现在将参照附图来提供本发明的各种实施例的示例并对其进行详细描述。然而,本发明不限于此,尽管示例性实施例可被解释为包括本发明的技术构思和技术范围内的所有修改、等同或替代。在各个方面,相似的附图标号指代相同或相似的功能。在附图中,为了清楚,可夸大元件的形状和尺寸。在本发明的以下详细描述中,参照了附图,其中,附图以图示的方式示出了可实践本发明的特定实施例。足够详细地描述了这些实施例以使本领域技术人员能够实施本公开。应当理解的是,本公开的各种实施例尽管不同,但不一定是互斥的。例如,在不脱离本公开的精神和范围的情况下,结合一个实施例在此描述的特定特征、结构和特性可在其他实施例中被实现。另外,应当理解,在不脱离本公开的精神和范围的情况下,可修改每个公开的实施例内的各个元件的位置或布置。因此,以下详细描述不应被视为具有限制意义,并且本公开的范围仅由所附权利要求(在合适的解释的情况下,还连同权利要求所要求保护的等同物的全部范围)来限定。
示出书中使用的术语“第一”、“第二”等可用于描述各种组件,但是组件不应解释为限于这些术语。这些术语仅用于区分一个组件与其他组件。例如,在不脱离本发明的范围的情况下,“第一”组件可被命名为“第二”组件,并且“第二”组件也可被相似地命名为“第一”组件。术语“和/或”包括多个项的组合或多个项中的任意一项。
将理解的是,在本示出书中,当元件被简单称为“连接到”或“耦接到”另一元件而不是“直接连接到”或“直接耦接到”另一元件时,元件可“直接连接到”另一元件或“直接耦接到”另一元件,或者在元件与另一元件之间介入有其他元件的情况下连接到或耦接到另一元件。相反,应当理解,当元件被称为“直接耦接”或“直接连接”到另一元件时,不存在中间元件。
另外,本发明的实施例中所示的构成部分被独立地示出,以表示彼此不同的特征功能。因此,这并不表示每个构成部分都以单独的硬件或软件的构成单元构成。换言之,为了方便,每个构成部分包括列举的构成部分中的每个。因此,每个构成部分的至少两个构成部分可被组合以形成一个构成部分,或者一个构成部分可被分区为多个构成部分以执行每种功能。如果没有脱离本发明的实质,则将每个构成部分被组合的实施例和一个构成部分被分区的实施例也包括在本发明的范围内。
本说明书中使用的术语仅用于描述特定实施例,而不旨在限制本发明。除非在上下文中具有明显不同的含义,否则以单数形式使用的表述包括复数形式的表述。在本说明书中,将理解,诸如“包括”、“具有”等的术语旨在指示存在说明书中公开的特征、编号、步骤、动作、元件、部件或其组合,而并不旨在排除可存在或可添加一个或更多个其他特征、编号、步骤、动作、元件、部件或其组合的可能性。换言之,当特定元素被称为“被包括”时,并不排除除了相应元素之外的元素,而是可在本发明的实施例或本发明的范围中包括附加的元素。
另外,某些构成部分可能不是执行本发明的基本功能的必不可少的构成部分,而是仅提高其性能的选择性构成部分。可通过仅包括用于实现本发明的本质的必不可少的构成部分而不包括用于提高性能的构成部分来实现本发明。仅包括必不可少的构成部分而不包括仅用于提高性能的选择性构成部分的结构也包括在本发明的范围内。
在下文中,将参照附图详细描述本发明的实施例。在描述本发明的示例性实施例时,将不详细描述公知的功能或构建,因为它们可能不必要地模糊对本发明的理解。附图中相同的构成元件由相同的附图标号表示,并且对相同元件的重复描述将被省略。
在下文中,图像可指构成视频的画面,或者可指视频本身。例如,“对图像进行编码或解码或者进行编码和解码两者”可指“对运动画面进行编码或解码或者进行编码和解码两者”,并且可指“对运动画面的图像中的一个图像进行编码或解码或者进行编码和解码两者”。
在下文中,术语“运动画面”和“视频”可用作相同的含义并且可彼此替换。
在下文中,目标图像可以是作为编码目标的编码目标图像和/或作为解码目标的解码目标图像。另外,目标图像可以是输入到编码设备的输入图像、以及输入到解码设备的输入图像。这里,目标图像可与当前画面具有相同的含义。
在下文中,术语“图像”、“画面”、“帧”和“屏幕”可被用作相同的含义并且可彼此替换。
在下文中,目标块可以是作为编码目标的编码目标块和/或作为解码目标的解码目标块。另外,目标块可以是作为当前编码和/或解码的目标的当前块。例如,术语“目标块”和“当前块”可被用作相同的含义并且可彼此替换。
在下文中,术语“块”和“单元”可被用作相同的含义并且可彼此替换。或者“块”可表示特定单元。
在下文中,术语“区域”和“片段”可彼此替换。
在下文中,特定信号可以是表示特定块的信号。例如,原始信号可以是表示目标块的信号。预测信号可以是表示预测块的信号。残差信号可以是表示残差块的信号。
在实施例中,特定信息、数据、标志、索引、元素和属性等中的每个可具有值。信息、数据、标志、索引、元素和属性的值等于“0”可表示逻辑假或第一预定义值。换言之,值“0”、假、逻辑假和第一预定义值可彼此替换。信息、数据、标志、索引、元素和属性的值等于“1”可表示逻辑真或第二预定义值。换言之,值“1”、真、逻辑真和第二预定义值可彼此替换。
当变量i或j用于表示列、行或索引时,i的值可以是等于或大于0的整数、或者是等于或大于1的整数。即,列、行、索引等可从0开始计数,或者可从1开始计数。
术语描述
编码器:表示执行编码的设备。即,表示编码设备。
解码器:表示执行解码的设备。即,表示解码设备。
块:是M×N的样点阵列。这里,M和N可表示正整数,并且块可表示二维形式的样点阵列。块可指单元。当前块可表示在编码时成为目标的编码目标块,或者在解码时成为目标的解码目标块。另外,当前块可以是编码块、预测块、残差块和变换块中的至少一个。
样点:是构成块的基本单元。根据比特深度(Bd),样点可被表示为从0到2Bd-1的值。在本发明中,样点可被用作像素的含义。即,样点、pel、像素可具有彼此相同的含义。
单元:可指编码和解码单元。当对图像进行编码和解码时,单元可以是通过对单个图像进行分区而产生的区域。另外,当在编码或解码期间将单个图像分区为子分区单元时,单元可表示子分区单元。即,图像可被分区为多个单元。当对图像进行编码和解码时,可以执行针对每个单元的预定处理。单个单元可被分区为尺寸小于该单元的尺寸的子单元。依据功能,单元可表示块、宏块、编码树单元、编码树块、编码单元、编码块、预测单元、预测块、残差单元、残差块、变换单元、变换块等。另外,为了将单元与块区分开,单元可包括亮度分量块、与亮度分量块相关联的色度分量块、以及每个颜色分量块的语法元素。单元可具有各种尺寸和形状,具体地,单元的形状可以是二维几何图形,诸如正方形、矩形、梯形、三角形、五边形等。另外,单元信息可包括指示编码单元、预测单元、变换单元等的单元类型以及单元尺寸、单元深度、单元的编码和解码的顺序等中的至少一个。
编码树单元:被配置有亮度分量Y的单个编码树块以及与色度分量Cb和Cr相关的两个编码树块。另外,编码树单元可表示包括块和每个块的语法元素。可通过使用四叉树分区方法、二叉树分区方法和三叉树分区方法中的至少一个对每个编码树单元进行分区,以配置诸如编码单元、预测单元、变换单元等的更低等级的单元。编码树单元可被用作用于指定在对作为输入图像的图像进行编码/解码时成为处理单元的样点块的术语。这里,四叉树可表示四叉分树。
当编码块的尺寸在预定范围内时,可以仅使用四叉树分区进行分区。这里,预定范围可被定义为能够仅使用四叉树分区进行分区的编码块的最大尺寸和最小尺寸中的至少一个。可通过比特流用信号发送指示允许四叉树分区的编码块的最大/最小尺寸的信息,并且可在序列、画面参数、并行块组或条带(片段)中的至少一个单元中用信号发送所述信息。可选地,编码块的最大/最小尺寸可以是编码器/解码器中预定的固定尺寸。例如,当编码块的尺寸与256×256至64×64相应时,仅使用四叉树分区来进行分区是可能的。可选地,当编码块的尺寸大于最大转换块的尺寸时,仅使用四叉树分区来进行分区是可能的。这里,将被分区的块可以是编码块和变换块中的至少一个。在这种情况下,指示编码块的分区的信息(例如,split_flag)可以是指示是否执行四叉树分区的标志。当编码块的尺寸落在预定范围内时,仅使用二叉树或三叉树分区来进行分区是可能的。在这种情况下,四叉树分区的以上描述可以相同方式被应用于二叉树分区或三叉树分区。
编码树块:可用作用于指定Y编码树块、Cb编码树块和Cr编码树块中的任意一个的术语。
邻近块:可表示与当前块相邻的块。与当前块相邻的块可表示与当前块的边界接触的块、或者位于距当前块预定距离内的块。邻近块可表示与当前块的顶点相邻的块。这里,与当前块的顶点相邻的块可表示与水平相邻于当前块的邻近块垂直相邻的块、或者与垂直相邻于当前块的邻近块水平相邻的块。
重建邻近块:可表示与当前块相邻并且已经在空间/时间上被编码或解码的邻近块。这里,重建邻近块可表示重建邻近单元。重建空间邻近块可以是在当前画面内并且已经通过编码或解码或者编码和解码两者而被重建块。重建时间邻近块是在参考画面内的与当前画面的当前块相应的位置处的块或所述块的邻近块。
单元深度:可表示单元的分区程度。在树结构中,最高节点(根节点)可与未被分区的第一单元相应。另外,最高节点可具有最小深度值。在这种情况下,最高节点的深度可以为等级0。深度为等级1的节点可表示通过对第一单元进行首次分区而产生的单元。深度为等级2的节点可表示通过对第一单元进行两次分区而产生的单元。深度为等级n的节点可表示通过对第一单元进行n次分区而产生的单元。叶节点可以是最低节点并且是不能被进一步分区的节点。叶节点的深度可以是最大等级。例如,最大等级的预定义值可以是3。根节点的深度可以是最低的,并且叶节点的深度可以是最深的。另外,当单元被表示为树结构时,单元所存在于的等级可表示单元深度。
比特流:可表示包括编码图像信息的比特流。
参数集:与比特流内的配置之中的头信息相应。视频参数集、序列参数集、画面参数集和自适应参数集中的至少一个可被包括在参数集中。此外,参数集可包括条带(slice)头、并行块(tile)组头和并行块头信息。术语“并行块组”表示一组并行块并且具有与条带相同的含义。
自适应参数集是指可由不同画面、子画面、条带、并行块组、并行块或分块共享和参考的参数集。另外,画面中的子画面、条带、并行块组、并行块或分块可指代不同的自适应参数集以使用不同的自适应参数集中的信息。
关于自适应参数集,画面中的子画面、条带、并行块组、并行块或分块可通过使用相应自适应参数集的标识符来指代不同的自适应参数集。
关于自适应参数集,子画面中的条带、并行块组、并行块或分块可通过使用相应自适应参数集的标识符来指代不同的自适应参数集。
关于自适应参数集,条带中的并行块或分块可以通过使用相应自适应参数集的标识符来指代不同的自适应参数集。
关于自适应参数集,并行块中的分块可以通过使用相应自适应参数集的标识符来指代不同的自适应参数集。
子画面的参数集或头可以包括关于自适应参数集标识符的信息。因此,可以在子画面中使用与自适应参数集标识符相应的自适应参数集。
并行块的参数集或头可以包括自适应参数集标识符,使得可以在并行块中使用与自适应参数集标识符相应的自适应参数集。
分块的头可以包括关于自适应参数集标识符的信息,使得可以在分块中使用与自适应参数集标识符相应的自适应参数集。
画面可被划分为一个或更多个并行块行和一个或更多个并行块列。
画面中的子画面可被划分为一个或更多个并行块行和一个或更多个并行块列。子画面可以是画面中的矩形区域或正方形区域,并且可包括一个或更多个CTU。子画面可包括至少一个并行块、分块和/或条带。
并行块可以是画面中的矩形区域或正方形区域,并且可包括一个或更多个CTU。并行块可以被划分成一个或更多个分块。
分块可指并行块中的一个或更多个CTU行。并行块可以被划分成一个或更多个分块,并且每个块可以具有至少一个CTU行。未被划分成两个或更多个分块的并行块也可以表示分块。
条带可包括画面中的一个或更多个并行块,并且可包括并行块中的一个或更多个分块。
解析:可表示通过执行熵解码来确定语法元素的值,或者可表示熵解码本身。
符号:可表示编码/解码目标单元的语法元素、编码参数和变换系数值中的至少一个。此外,符号可表示熵编码目标或熵解码结果。
预测模式:可以是指示利用帧内预测而被编码/解码的模式或利用帧间预测而被编码/解码的模式的信息。
预测单元:可表示当执行预测(诸如帧间预测、帧内预测、帧间补偿、帧内补偿和运动补偿)时的基本单元。单个预测单元可被分区为具有更小尺寸的多个分区,或者可被分区为多个更低等级的预测单元。多个分区可以是在执行预测或补偿时的基本单元。通过分区预测单元而产生的分区也可以是预测单元。
预测单元分区:可表示通过对预测单元进行分区而获得的形状。
参考画面列表可指包括用于帧间预测或运动补偿的一个或更多个参考画面的列表。存在若干类型的可用的参考画面列表,包括LC(列表组合)、L0(列表0)、L1(列表1)、L2(列表2)、L3(列表3)。
帧间预测指示符可以指当前块的帧间预测的方向(单向预测、双向预测等)。可选地,帧间预测指示符可指用于产生当前块的预测块的参考画面的数量。可选地,帧间预测指示符可指在对当前块进行帧间预测或运动补偿时使用的预测块的数量。
预测列表利用标志指示是否使用特定参考画面列表中的至少一个参考画面来产生预测块。可使用预测列表利用标志来推导帧间预测指示符,并且相反地,可使用帧间预测指示符来推导预测列表利用标志。例如,当预测列表利用标志具有第一值零(0)时,它表示参考画面列表中的参考画面不被用于产生预测块。另一方面,当预测列表利用标志具有第二值一(1)时,它表示参考画面列表被用于产生预测块。
参考画面索引可指的是指示参考画面列表中的特定参考画面的索引。
参考画面可表示由特定块参考以用于特定块的帧间预测或运动补偿的目的的参考画面。可选地,参考画面可以是包括由当前块参考以用于帧间预测或运动补偿的参考块的画面。在下文中,术语“参考画面”和“参考画面”具有相同的含义并且可以互换。
运动矢量可以是用于帧间预测或运动补偿的二维矢量。运动矢量可表示编码/解码的目标块与参考块之间的偏移。例如,(mvX,mvY)可表示运动矢量。这里,mvX可以表示水平分量,并且mvY可以表示垂直分量。
搜索范围可以是在帧间预测期间被搜索以检索运动矢量的二维区域。例如,搜索范围的尺寸可以是M×N。这里,M和N都是整数。
运动矢量候选可以指在对运动矢量进行预测时的预测候选块或预测候选块的运动矢量。另外,运动矢量候选可以被包括在运动矢量候选列表中。
运动矢量候选列表可表示由一个或更多个运动矢量候选组成的列表。
运动矢量候选索引可表示指示运动矢量候选列表中的运动矢量候选的指示符。可选地,它可以是运动矢量预测因子的索引。
运动信息可表示包括运动矢量、参考画面索引、帧间预测指示符、预测列表利用标志、参考画面列表信息、参考画面、运动矢量候选、运动矢量候选索引、合并候选和合并索引中的至少一项的信息。
合并候选列表可表示由一或更多个合并候选组成的列表。
合并候选可表示空间合并候选、时间合并候选、组合合并候选、组合双预测合并候选或零合并候选。合并候选可以包括诸如帧间预测指示符、每个列表的参考画面索引、运动矢量、预测列表利用标志和帧间预测指示符的运动信息。
合并索引可表示指示合并候选列表中的合并候选的指示符。可选地,合并索引可指示在空间上/时间上与当前块相邻的重建块中的块,其中,已从该块推导合并候选。可选地,合并索引可指示合并候选的至少一条运动信息。
变换单元:可表示在对残差信号执行编码/解码(诸如变换、逆变换、量化、反量化、变换系数编码/解码)时的基本单元。单个变换单元可被分区为具有更小尺寸的多个更低等级的变换单元。这里,变换/逆变换可包括第一次变换/第一次逆变换和第二次变换/第二次逆变换中的至少一个。
缩放:可表示将量化的等级乘以因子的处理。可通过对量化的等级进行缩放来产生变换系数。缩放也可被称为反量化。
量化参数:可表示当在量化期间使用变换系数来产生量化的等级时使用的值。量化参数还可表示当在反量化期间通过对量化的等级进行缩放来产生变换系数时使用的值。量化参数可以是被映射在量化步长上的值。
增量量化参数:可表示预测的量化参数与编码/解码目标单元的量化参数之间的差值。
扫描:可表示对单元、块或矩阵内的系数进行排序的方法。例如,将系数的二维矩阵改成为一维矩阵可被称为扫描,将系数的一维矩阵改成为二维矩阵可被称为扫描或逆扫描。
变换系数:可表示在编码器中执行变换之后产生的系数值。变换系数可表示在解码器中执行熵解码和反量化中的至少一个之后产生的系数值。通过对变换系数或残差信号进行量化而获得的量化的等级或者量化的变换系数等级也可落入变换系数的含义内。
量化的等级:可表示在编码器中通过对变换系数或残差信号进行量化而产生的值。可选地,量化的等级可表示作为在解码器中经历反量化的反量化目标的值。相似地,作为变换和量化的结果的量化的变换系数等级也可落入量化的等级的含义内。
非零变换系数:可表示具有除零之外的值的变换系数、或者具有除零之外的值的变换系数等级或量化的等级。
量化矩阵:可表示在为了提高主观图像质量或客观图像质量而执行的量化处理或反量化处理中使用的矩阵。量化矩阵也可被称为缩放列表。
量化矩阵系数:可表示量化矩阵内的每个元素。量化矩阵系数也可被称为矩阵系数。
默认矩阵:可表示在编码器或解码器中预先定义的预定量化矩阵。
非默认矩阵:可表示在编码器或解码器中未被预先定义而是由用户用信号发送的量化矩阵。
统计值:针对具有可计算的特定值的变量、编码参数、常量值等之中的至少一个的统计值可以是相应特定值的平均值、求和值、加权平均值、加权和值、最小值、最大值、最频繁出现的值、中值、插值之中的一个或更多个。
图1是示出根据应用了本发明的实施例的编码设备的配置的框图。
编码设备100可以是编码器、视频编码设备或图像编码设备。视频可包括至少一个图像。编码设备100可顺序地对至少一个图像进行编码。
参照图1,编码设备100可包括运动预测单元111、运动补偿单元112、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190。
编码设备100可通过使用帧内模式或帧间模式或者帧内模式和帧间模式两者来执行输入图像的编码。此外,编码设备100可通过对输入图像进行编码来产生包括编码信息的比特流,并输出产生的比特流。产生的比特流可被存储在计算机可读记录介质中,或者可通过有线/无线传输介质被流传输。当帧内模式被用作预测模式时,切换器115可切换到帧内。可选地,当帧间模式被用作预测模式时,切换器115可切换到帧间模式。这里,帧内模式可表示帧内预测模式,帧间模式可表示帧间预测模式。编码设备100可产生针对输入图像的输入块的预测块。此外,编码设备100可在产生预测块之后使用输入块和预测块的残差对残差块进行编码。输入图像可被称为作为当前编码目标的当前画面。输入块可被称为作为当前编码目标的当前块,或者被称为编码目标块。
当预测模式是帧内模式时,帧内预测单元120可使用已被编码/解码并与当前块相邻的块的样点作为参考样点。帧内预测单元120可通过使用参考样点来对当前块执行空间预测,或者通过执行空间预测来产生输入块的预测样点。这里,帧内预测可表示帧内部的预测。
当预测模式是帧间模式时,运动预测单元111可在执行运动预测时从参考画面检索与输入块最匹配的区域,并且通过使用检索到的区域来推导运动矢量。在这种情况下,搜索区域可被用作所述区域。参考画面可被存储在参考画面缓冲器190中。这里,当执行对参考画面的编码/解码时,参考画面可被存储在参考画面缓冲器190中。
运动补偿单元112可通过使用运动矢量对当前块执行运动补偿来产生预测块。这里,帧间预测可表示帧之间的预测或运动补偿。
当运动矢量的值不是整数时,运动预测单元111和运动补偿单元112可通过将插值滤波器应用于参考画面的部分区域来产生预测块。为了对编码单元执行画面间预测或运动补偿,可确定跳过模式、合并模式、高级运动矢量预测(AMVP)模式和当前画面参考模式之中的哪个模式被用于对包括在相应编码单元中的预测单元的运动预测和运动补偿。然后,依据所确定的模式,可不同地执行画面间预测或运动补偿。
减法器125可通过使用输入块和预测块的差来产生残差块。残差块可被称为残差信号。残差信号可表示原始信号和预测信号之间的差。此外,残差信号可以是通过对原始信号与预测信号之间的差进行变换或量化或者变换和量化而产生的信号。残差块可以是块单元的残差信号。
变换单元130可通过对残差块执行变换来产生变换系数,并输出产生的变换系数。这里,变换系数可以是通过对残差块执行变换而产生的系数值。当变换跳过模式被应用时,变换单元130可跳过对残差块的变换。
可通过将量化应用于变换系数或应用于残差信号来产生量化的等级。在下文中,量化的等级在实施例中也可被称为变换系数。
量化单元140可通过根据参数对变换系数或残差信号进行量化来产生量化的等级,并输出产生的量化的等级。这里,量化单元140可通过使用量化矩阵对变换系数进行量化。
熵编码单元150可通过根据概率分布对由量化单元140计算出的值或者对在执行编码时计算出的编码参数值执行熵编码来产生比特流,并输出产生的比特流。熵编码单元150可对图像的样点信息和用于对图像进行解码的信息执行熵编码。例如,用于对图像进行解码的信息可包括语法元素。
当熵编码被应用时,符号被表示为使得较少数量的比特被分配给具有高产生可能性的符号,并且较多数量的比特被分配给具有低产生可能性的符号,因此,可减小用于将被编码的符号的比特流的尺寸。熵编码单元150可使用诸如指数哥伦布、上下文自适应可变长度编码(CAVLC)、上下文自适应二叉算术编码(CABAC)等的用于熵编码的编码方法。例如,熵编码单元150可通过使用变长编码/码(VLC)表来执行熵编码。此外,熵编码单元150可推导目标符号的二值化方法和目标符号/二叉位的概率模型,并且通过使用推导的二值化方法和上下文模型来执行算术编码。
为了对变换系数等级(量化的等级)进行编码,熵编码单元150可通过使用变换系数扫描方法将二维块形式的系数改成为一维矢量形式。
编码参数可包括在编码器中被编码并且被用信号发送到解码器的诸如语法元素的信息(标志、索引等)以及在执行编码或解码时推推导的信息。编码参数可表示在对图像进行编码或解码时所需要的信息。例如,以下项中的至少一个值或组合形式可被包括在编码参数中:单元/块尺寸、单元/块深度、单元/块分区信息、单元/块形状、单元/块分区结构、是否进行四叉树形式的分区、是否进行二叉树形式的分区、二叉树形式的分区方向(水平方向或垂直方向)、二叉树形式的分区形式(对称分区或非对称分区)、当前编码单元是否通过三叉树分区被分区、三叉树分区的方向(水平方向或垂直方向)、三叉树分区的类型(对称类型或非对称类型)、当前编码单元是否通过多类型树分区被分区、多类型树分区的方向(水平方向或垂直方向)、多类型树分区的类型(对称类型或非对称类型)、多类型树分区的树(二叉树或三叉树)结构、预测模式(帧内预测或帧间预测)、亮度帧内预测模式/方向、色度帧内预测模式/方向、帧内分区信息、帧间分区信息、编码块分区标志、预测块分区标志、变换块分区标志、参考样点滤波方法、参考样点滤波器抽头、参考样点滤波器系数、预测块滤波方法、预测块滤波器抽头、预测块滤波器系数、预测块边界滤波方法、预测块边界滤波器抽头、预测块边界滤波器系数、帧内预测模式、帧间预测模式、运动信息、运动矢量、运动矢量差、参考画面索引、帧间预测角度、帧间预测指示符、预测列表利用标志、参考画面列表、参考画面、运动矢量预测因子索引、运动矢量预测因子候选、运动矢量候选列表、是否使用合并模式、合并索引、合并候选、合并候选列表、是否使用跳过模式、插值滤波器类型、插值滤波器抽头、插值滤波器系数、运动矢量尺寸、运动矢量的表示精度、变换类型、变换尺寸、首次(第一次)变换是否被使用的信息、二次变换是否被使用的信息、首次变换索引、二次变换索引、残差信号是否存在的信息、编码块样式、编码块标志(CBF)、量化参数、量化参数残差、量化矩阵、是否应用帧内环路滤波器、帧内环路滤波器系数、帧内环路滤波器抽头、帧内环路滤波器形状/形式、是否应用去块滤波器、去块滤波器系数、去块滤波器抽头、去块滤波器强度、去块滤波器形状/形式、是否应用自适应样点偏移、自适应样点偏移值、自适应样点偏移类别、自适应样点偏移类型、是否应用自适应环路滤波器、自适应环路滤波器系数、自适应环路滤波器抽头、自适应环路滤波器形状/形式、二值化/逆二值化方法、上下文模型确定方法、上下文模型更新方法、是否执行常规模式、是否执行旁路模式、上下文二叉位、旁路二叉位、有效系数标志、最后有效系数标志、针对系数组的单元的编码标志、最后有效系数的位置、关于系数的值是否大于1的标志、关于系数的值是否大于2的标志、关于系数的值是否大于3的标志、关于其余系数值的信息、符号信息、重建亮度样点、重建色度样点、残差亮度样点、残差色度样点、亮度变换系数、色度变换系数、量化的亮度等级、量化的色度等级、变换系数等级扫描方法、在解码器侧的运动矢量搜索区域的尺寸、在解码器侧的运动矢量搜索区域的形状、在解码器侧的运动矢量搜索的次数、关于CTU尺寸的信息、关于最小块尺寸的信息、关于最大块尺寸的信息、关于最大块深度的信息、关于最小块深度的信息、图像显示/输出顺序、条带标识信息、条带类型、条带分区信息、并行块标识信息、并行块类型、并行块分区信息、并行块组标识信息、并行块组类型、并行块组分区信息、画面类型、输入样点的比特深度、重建样点的比特深度、残差样点的比特深度、变换系数的比特深度、量化的等级的比特深度、以及关于亮度信号的信息或关于色度信号的信息。
这里,用信号发送标志或索引可表示由编码器对相应标志或索引进行熵编码并将其包括在比特流中,并且可表示由解码器从比特流对相应标志或索引进行熵解码。
当编码设备100通过帧间预测执行编码时,编码的当前画面可被用作用于随后被处理的另一图像的参考画面。因此,编码设备100可对编码的当前画面进行重建或解码,或者将重建或解码的图像作为参考画面存储在参考画面缓冲器190中。
量化的等级可在反量化单元160中被反量化,或者可在逆变换单元170中被逆变换。可由加法器175将经过反量化或逆变换的系数或者经过反量化和逆变换两者的系数与预测块相加。通过将经过反量化或逆变换的系数或者经过反量化和逆变换两者的系数与预测块相加,可产生重建块。这里,经过反量化或逆变换的系数或经过反量化和逆变换两者的系数可表示执行了反量化和逆变换中的至少一个的系数,并且可表示重建残差块。
重建块可通过滤波器单元180。滤波器单元180可将去块滤波器、样点自适应偏移(SAO)和自适应环路滤波器(ALF)中的至少一个应用于重建样点、重建块或重建图像。滤波器单元180可被称为环内滤波器。
去块滤波器可去除在块之间的边界中产生的块失真。为了确定是否应用去块滤波器,可基于块中所包括的若干行或列中包括的样点来确定是否将去块滤波器应用于当前块。当将去块滤波器应用于块时,可根据所需的去块滤波强度来应用另一滤波器。
为了补偿编码误差,可通过使用样点自适应偏移将合适的偏移值与样点值相加。样点自适应偏移可以以样点为单位对经过去块的图像与原始图像的偏移进行校正。可使用考虑关于每个样点的边缘信息来应用偏移的方法,或者可使用以下方法:将图像的样点分区为预定数量的区域,确定偏移被应用的区域,并对确定的区域应用偏移。
自适应环路滤波器可基于经滤波的重建图像和原始图像的比较结果来执行滤波。可将包括在图像中的样点分区为预定组,可确定将被应用于每个组的滤波器,并且可对每个组执行差异化滤波。是否应用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可通过根据概率分布对比特流进行熵解码来产生符号。产生的符号可包括量化的等级形式的符号。这里,熵解码方法可以是上述熵编码方法的逆过程。
为了对变换系数等级(量化的等级)进行解码,熵解码单元210可通过使用变换系数扫描方法将单向矢量形式的系数改成为二维块形式。
可在反量化单元220中对量化的等级进行反量化,或者可在逆变换单元230中对量化的等级进行逆变换。量化的等级可以是进行反量化或逆变换或者进行反量化和逆变换两者的结果,并且可被产生为重建残差块。这里,反量化单元220可将量化矩阵应用于量化的等级。
当使用帧内模式时,帧内预测单元240可通过对当前块执行空间预测来产生预测块,其中,空间预测使用与解码目标块相邻并且已经被解码的块的样点值。
当使用帧间模式时,运动补偿单元250可通过对当前块执行运动补偿来产生预测块,其中,运动补偿使用运动矢量以及存储在参考画面缓冲器270中的参考画面。
加法器225可通过将重建残差块与预测块相加来产生重建块。滤波器单元260可将去块滤波器、样点自适应偏移和自适应环路滤波器中的至少一个应用于重建块或重建图像。滤波器单元260可输出重建图像。重建块或重建图像可被存储在参考画面缓冲器270中并且在执行帧间预测时被使用。由滤波器单元260处理的重建块可以是参考画面的一部分。即,参考画面是由滤波器单元260处理的重建块组成的重建图像。存储的参考画面可稍后在帧间预测或运动补偿中被使用。
图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。图3示意性地示出将单个单元分区为多个更低等级的单元的示例。
为了有效地对图像进行分区,当进行编码和解码时,可使用编码单元(CU)。编码单元可被用作当对图像进行编码/解码时的基本单元。此外,编码单元可被用作用于在对图像进行编码/解码时区分帧内预测模式与帧间预测模式的单元。编码单元可以是用于预测、变换、量化、逆变换、反量化、或对变换系数的编码/解码处理的基本单元。
参照图3,图像300按照最大编码单元(LCU)被顺序地分区,并且LCU单元被确定为分区结构。这里,LCU可以以与编码树单元(CTU)相同的含义被使用。单元分区可表示对与该单元相关联的块进行分区。在块分区信息中,可包括单元深度的信息。深度信息可表示单元被分区的次数或程度或者单元被分区的次数和程度两者。可基于树结构将单个单元分区为与深度信息分层地相关联的多个更低等级的单元。换言之,单元和通过对该单元进行分区而产生的更低等级的单元可分别与节点和该节点的子节点相应。分区出的更低等级的单元中的每个可具有深度信息。深度信息可以是表示CU的尺寸的信息,并且可被存储在每个CU中。单元深度表示与对单元进行分区相关的次数和/或程度。因此,更低等级的单元的分区信息可包括关于更低等级的单元的尺寸的信息。
分区结构可表示LCU 310内的编码单元(CU)的分布。可根据是否将单个CU分区为多个(等于或大于2的包括2、4、8、16等的正整数)CU来确定这样的分布。通过分区产生的CU的水平尺寸和垂直尺寸可分别是分区之前的CU的水平尺寸和垂直尺寸的一半,或者可分别具有小于根据分区的次数而进行分区之前的水平尺寸和垂直尺寸的尺寸。CU可以被递归地分区为多个CU。通过递归分区,与分区之前的CU的高度和宽度之中的至少一个相比,分区之后的CU的高度和宽度之中的至少一个可减小。可递归地执行CU的分区,直到预定义的深度或预定义的尺寸为止。例如,LCU的深度可以是0,最小编码单元(SCU)的深度可以是预定义的最大深度。这里,如上所述,LCU可以是具有最大编码单元尺寸的编码单元,并且SCU可以是具有最小编码单元尺寸的编码单元。分区从LCU 310开始,当CU的水平尺寸或垂直尺寸或者水平尺寸和垂直尺寸两者通过分区而减小时,CU深度增加1。例如,对于每个深度,未被分区的CU的尺寸可以为2N×2N。此外,在被分区的CU的情况下,可将尺寸为2N×2N的CU分区为尺寸为N×N的4个CU。随着深度增加1,N的尺寸可减半。
另外,可通过使用CU的分区信息来表示CU是否被分区的信息。分区信息可以是1比特信息。除SCU之外的所有CU可包括分区信息。例如,当分区信息的值为第一值时,可不对CU进行分区,当分区信息的值为第二值时,可对CU进行分区。
参照图3,具有深度0的LCU可以是64×64的块。0可以是最小深度。具有深度3的SCU可以是8×8的块。3可以是最大深度。32×32的块和16×16的块的CU可分别被表示为深度1和深度2。
例如,当单个编码单元被分区为4个编码单元时,分区出的4个编码单元的水平尺寸和垂直尺寸可以是CU在被分区之前的水平尺寸和垂直尺寸的一半尺寸。在一个实施例中,当尺寸为32×32的编码单元被分区为4个编码单元时,分区出的4个编码单元中的每个可具有16×16的尺寸。当单个编码单元被分区为4个编码单元时,可称编码单元可被分区为四叉树形式。
例如,当一个编码单元被分区为两个子编码单元时,两个子编码单元中的每个子编码单元的水平尺寸或垂直尺寸(宽度或高度)可以是原始编码单元的水平尺寸或垂直尺寸的一半。例如,当具有32×32的尺寸的编码单元被垂直分区为两个子编码单元时,该两个子编码单元中的每个可具有16×32的尺寸。例如,当具有8×32的尺寸的编码单元被水平分区为两个子编码单元时,该两个子编码单元中的每个可具有8×16的尺寸。当一个编码单元被分区为两个子编码单元时,可称编码单元被二分区或者通过二叉树分区结构被分区。
例如,当一个编码单元被分区为三个子编码单元时,可以以1:2:1的比例对编码单元的水平尺寸或垂直尺寸进行分区,从而产生水平尺寸或垂直尺寸的比例为1:2:1的三个子编码单元。例如,当尺寸为16×32的编码单元被水平分区为三个子编码单元时,该三个子编码单元以从最上方子编码单元到最下方子编码单元的顺序可分别具有16×8、16×16和16×8的尺寸。例如,当尺寸为32×32的编码单元被垂直分区为三个子编码单元时,该三个子编码单元以从左侧子编码单元到右侧子编码单元的顺序可分别具有8×32、16×32和8×32的尺寸。当一个编码单元被分区为三个子编码单元时,可称编码单元被三分区或者根据三叉树分区结构被分区。
在图3中,编码树单元(CTU)320是四叉树分区结构、二叉树分区结构和三叉树分区结构全部应用于其的CTU的示例。
如上所述,为了对CTU进行分区,可应用四叉树分区结构、二叉树分区结构和三叉树分区结构中的至少一个。可根据预定的优先级顺序将各种树分区结构顺序地应用于CTU。例如,可将四叉树分区结构优先应用于CTU。不能再使用四叉树分区结构进行分区的编码单元可与四叉树的叶节点相应。与四叉树的叶节点相应的编码单元可用作二叉树和/或三叉树分区结构的根节点。即,与四叉树的叶节点相应的编码单元可根据二叉树分区结构或三叉树分区结构被进一步分区,或者可不被进一步分区。因此,通过防止从与四叉树的叶节点相应的编码单元的二叉树分区或三叉树分区得到的编码块经历进一步的四叉树分区,块分区操作和/或用信号发送分区信息的操作可被有效执行。
可使用四分区信息用信号发送与四叉树的节点相应的编码单元被分区的事实。具有第一值(例如,“1”)的四分区信息可指示当前编码单元按照四叉树分区结构被分区。具有第二值(例如,“0”)的四分区信息可指示当前编码单元未按照四叉树分区结构被分区。四分区信息可以是具有预定长度(例如,一个比特)的标志。
在二叉树分区与三叉树分区之间可能没有优先级。即,与四叉树的叶节点相应的编码单元可进一步经历二叉树分区和三叉树分区中的任意分区。另外,通过二叉树分区或三叉树分区产生的编码单元可经历进一步的二叉树分区或进一步的三叉树分区,或者可不被进一步分区。
在二叉树分区和三叉树分区之间不存在优先级的树结构被称为多类型树结构。与四叉树的叶节点相应的编码单元可用作多类型树的根节点。可使用多类型树分区指示信息、分区方向信息和分区树信息中的至少一个来用信号发送是否对与多类型树的节点相应的编码单元进行分区。为了对与多类型树的节点相应的编码单元进行分区,可顺序地用信号发送多类型树分区指示信息、分区方向信息和分区树信息。
具有第一值(例如,“1”)的多类型树分区指示信息可指示当前编码单元将经历多类型树分区。具有第二值(例如,“0”)的多类型树分区指示信息可指示当前编码单元将不经历多类型树分区。
当与多类型树的节点相应的编码单元按照多类型树分区结构被进一步分区时,所述编码单元可包括分区方向信息。分区方向信息可指示当前编码单元将在哪个方向上针对多类型树分区被分区。具有第一值(例如,“1”)的分区方向信息可指示当前编码单元将被垂直分区。具有第二值(例如,“0”)的分区方向信息可指示当前编码单元将被水平分区。
当与多类型树的节点相应的编码单元按照多类型树分区结构被进一步分区时,当前编码单元可包括分区树信息。分区树信息可指示将被用于对多类型树的节点进行分区的树分区结构。具有第一值(例如,“1”)的分区树信息可指示当前编码单元将按照二叉树分区结构被分区。具有第二值(例如,“0”)的分区树信息可指示当前编码单元将按照三叉树分区结构被分区。
分区指示信息、分区树信息和分区方向信息均可以是具有预定长度(例如,一个比特)的标志。
四叉树分区指示信息、多类型树分区指示信息、分区方向信息和分区树信息中的至少任意一个可被熵编码/熵解码。为了对那些类型的信息进行熵编码/熵解码,可使用关于与当前编码单元相邻的邻近编码单元的信息。例如,当前编码单元的左侧邻近编码单元和/或上方邻近编码单元的分区类型(被分区或不被分区、分区树和/或分区方向)与当前编码单元的分区类型相似的可能性很高。因此,可从关于邻近编码单元的信息推导用于对关于当前编码单元的信息进行熵编码/熵解码的上下文信息。关于邻近编码单元的信息可包括四分区信息、多类型树分区指示信息、分区方向信息和分区树信息中的至少任意一个。
作为另一示例,在二叉树分区和三叉树分区中,可优先执行二叉树分区。即,当前编码单元可首先经历二叉树分区,并且随后可将与二叉树的叶节点相应的编码单元设置为用于三叉树分区的根节点。在这种情况下,对于与三叉树的节点相应的编码单元,可既不执行四叉树分区也不执行二叉树分区。
不能按照四叉树分区结构、二叉树分区结构和/或三叉树分区结构被分区的编码单元成为用于编码、预测和/或变换的基本单元。即,所述编码单元不能被进一步分区以用于预测和/或变换。因此,在比特流中可能不存在用于将编码单元分区为预测单元和/或变换单元的分区结构信息和分区信息。
然而,当编码单元(即,用于分区的基本单元)的尺寸大于最大变换块的尺寸时,可递归地对编码单元进行分区,直到将编码单元的尺寸减小到等于或小于最大变换块的尺寸为止。例如,当编码单元的尺寸为64×64时并且当最大变换块的尺寸为32×32时,可将编码单元分区为用于变换的4个32×32的块。例如,当编码单元的尺寸为32×64并且最大变换块的尺寸为32×32时,可将编码单元分区为用于变换的两个32×32的块。在这种情况下,不单独用信号发送编码单元的用于变换的分区,并且可通过编码单元的水平尺寸或垂直尺寸与最大变换块的水平尺寸或垂直尺寸之间的比较来确定编码单元的用于变换的分区。例如,当编码单元的水平尺寸(宽度)大于最大变换块的水平尺寸(宽度)时,可将编码单元垂直地二等分。例如,当编码单元的垂直尺寸(高度)大于最大变换块的垂直尺寸(高度)时,可将编码单元水平地二等分。
编码单元的最大和/或最小尺寸的信息以及变换块的最大和/或最小尺寸的信息可以在编码单元的更高等级被用信号发送或确定。更高等级可以是例如序列级、画面级、条带级、并行块组级、并行块级等。例如,编码单元的最小尺寸可以被确定为4×4。例如,变换块的最大尺寸可以被确定为64×64。例如,变换块的最小尺寸可以被确定为4×4。
与四叉树的叶节点相应的编码单元的最小尺寸(四叉树最小尺寸)的信息和/或从多类型树的根节点到叶节点的最大深度(多类型树的最大树深度)的信息可在编码单元的更高等级被用信号发送或确定。例如,更高等级可以是序列级、画面级、条带级、并行块组级、并行块级等。四叉树的最小尺寸的信息和/或多类型树的最大深度的信息可针对画面内条带和画面间条带中的每个被用信号发送或确定。
可在编码单元的更高等级用信号发送或确定CTU的尺寸与变换块的最大尺寸之间的差信息。例如,所述更高等级可以是序列级、画面级、条带级、并行块组级、并行块级等。可基于编码树单元的尺寸和所述差信息来确定与二叉树的各个节点相应的编码单元的最大尺寸(在下文中,称为二叉树的最大尺寸)的信息。与三叉树的各个节点相应的编码单元的最大尺寸(在下文中,称为三叉树的最大尺寸)可依据条带的类型而变化。例如,针对画面内条带,三叉树的最大尺寸可以是32×32。例如,针对画面间条带,三叉树的最大尺寸可以是128×128。例如,与二叉树的各个节点相应的编码单元的最小尺寸(在下文中,称为二叉树的最小尺寸)和/或与三叉树的各个节点相应的编码单元的最小尺寸(在下文中,称为三叉树的最小尺寸)可被设置为编码块的最小尺寸。
作为另一示例,可在条带级用信号发送或确定二叉树的最大尺寸和/或三叉树的最大尺寸。可选地,可在条带级用信号发送或确定二叉树的最小尺寸和/或三叉树的最小尺寸。
依据上述各种块的尺寸和深度信息,四分区信息、多类型树分区指示信息、分区树信息和/或分区方向信息可被包括在比特流中或可不被包括在比特流中。
例如,当编码单元的尺寸不大于四叉树的最小尺寸时,编码单元不包含四分区信息。因此,可从第二值推断四分区信息。
例如,当与多类型树的节点相应的编码单元的尺寸(水平尺寸和垂直尺寸)大于二叉树的最大尺寸(水平尺寸和垂直尺寸)和/或三叉树的最大尺寸(水平尺寸和垂直尺寸)时,编码单元可不被二叉树分区或三叉树分区。因此,可不用信号发送多类型树分区指示信息,但可从第二值推断多类型树分区指示信息。
可选地,当与多类型树的节点相应的编码单元的尺寸(水平尺寸和垂直尺寸)与二叉树的最大尺寸(水平尺寸和垂直尺寸)相同和/或是三叉树的最大尺寸(水平尺寸和垂直尺寸)的两倍大时,编码单元可不被进一步二分区或三分区。因此,可不用信号发送多类型树分区指示信息,而是可从第二值推导多类型树分区指示信息。这是因为当通过二叉树分区结构和/或三叉树分区结构分区编码单元时,产生小于二叉树的最小尺寸和/或三叉树的最小尺寸的编码单元。
可选地,可以基于虚拟流水线数据单元的尺寸(在下文中,流水线缓冲器尺寸)来限制二叉树分区或三叉树分区。例如,当通过二叉树分区或三叉树分区将编码单元分区为不适合流水线缓冲器尺寸的子编码单元时,相应的二叉树分区或三叉树分区可能受到限制。流水线缓冲器尺寸可以是最大变换块的尺寸(例如,64×64)。例如,当流水线缓冲器尺寸是64×64时,可以限制下面的分区。
-用于编码单元的N×M(N和/或M是128)三叉树分区
-用于编码单元的水平方向的128×N(N<=64)二叉树分区
-用于编码单元的垂直方向的N×128(N<=64)二叉树分区
可选地,当与多类型树的节点相应的编码单元的深度等于多类型树的最大深度时,编码单元可不被进一步二分区和/或三分区。因此,可不用信号发送多类型树分区指示信息,但可从第二值推断多类型树分区指示信息。
可选地,仅当垂直方向二叉树分区、水平方向二叉树分区、垂直方向三叉树分区和水平方向三叉树分区中的至少一个对于与多类型树的节点相应的编码单元是可能的时,可用信号发送多类型树分区指示信息。否则,编码单元可以不被二分区和/或三分区。因此,可不用信号发送多类型树分区指示信息,但可从第二值推断多类型树分区指示信息。
可选地,仅当垂直方向二叉树分区和水平方向二叉树分区两者或垂直方向三叉树分区和水平方向三叉树分区两者对于与多类型树的节点相应的编码单元是可能的时,才可用信号发送分区方向信息。否则,可不用信号发送分区方向信息,但是可从指示可能的分区方向的值推导分区方向信息。
可选地,仅当垂直方向二叉树分区和垂直方向三叉树分区两者或水平方向二叉树分区和水平方向三叉树分区两者对于与多类型树的节点相应的编码树是可能的时,才可用信号发送分区树信息。否则,可以不用信号发送分区树信息,而是从指示可能的分区树结构的值推导分区树信息。
图4是示出帧内预测处理的示图。
图4中从中心到外部的箭头可表示帧内预测模式的预测方向。
可通过使用当前块的邻近块的参考样点来执行帧内编码和/或解码。邻近块可以是重建邻近块。例如,可通过使用包括在重建邻近块中的参考样点的编码参数或值来执行帧内编码和/或解码。
预测块可表示通过执行帧内预测而产生的块。预测块可与CU、PU和TU中的至少一个相应。预测块的单元可具有CU、PU和TU中的一个的尺寸。预测块可以是尺寸为2×2、4×4、16×16、32×32或64×64等的正方形块,或者可以是尺寸为2×8、4×8、2×16、4×16和8×16等的矩形块。
可根据针对当前块的帧内预测模式来执行帧内预测。当前块可具有的帧内预测模式的数量可以是固定值,并且可以是根据预测块的属性不同地确定的值。例如,预测块的属性可包括预测块的尺寸和预测块的形状等。
不管块尺寸为多少,可将帧内预测模式的数量固定为N。或者,帧内预测模式的数量可以是3、5、9、17、34、35、36、65或67等。可选地,帧内预测模式的数量可根据块尺寸或颜色分量类型或者块尺寸和颜色分量类型两者而变化。例如,帧内预测模式的数量可根据颜色分量是亮度信号还是色度信号而变化。例如,随着块尺寸变大,帧内预测模式的数量可增加。可选地,亮度分量块的帧内预测模式的数量可大于色度分量块的帧内预测模式的数量。
帧内预测模式可以是非角度模式或角度模式。非角度模式可以是DC模式或平面模式,并且角度模式可以是具有特定方向或角度的预测模式。帧内预测模式可由模式号、模式值、模式编号、模式角度和模式方向中的至少一个来表示。帧内预测模式的数量可以是大于1的M,包括非角度模式和角度模式。为了对当前块进行帧内预测,可执行确定是否可将包括在重建邻近块中的样点用作当前块的参考样点的步骤。当存在不能用作当前块的参考样点的样点时,通过对包括在重建邻近块中的样点中的至少一个样点值进行复制或执行插值或者执行复制和插值两者而获得的值可被用于替换样点的不可用样点值,因此替换后的样点值被用作当前块的参考样点。
图7是示出能够用于帧内预测的参考样点的示图。
如图7所示,参考样点线0至参考样点线3中的至少一个可以用于当前块的帧内预测。在图7中,片段A和片段F的样点可以分别利用最接近片段B和片段E的样点被填充,而不是从重建邻近块进行检索。可以用信号发送指示将被用于当前块的帧内预测的参考样点线的索引信息。在当前块的上方边界是CTU的边界时,仅参考样点线0可以是可用的。因此,在这种情况下,可以不用信号发送索引信息。当使用除了参考样点线0之外的参考样点线时,可以不执行稍后将描述的针对预测块的滤波。
当进行帧内预测时,可基于帧内预测模式和当前块尺寸/形状将滤波器应用于参考样点和预测样点中的至少一个。
在平面模式的情况下,当产生当前块的预测块时,根据预测目标样点在预测块内的位置,可通过使用当前样点的上方参考样点与左侧参考样点以及当前块的右上方参考样点与左下方参考样点的加权和来产生预测目标样点的样点值。另外,在DC模式的情况下,当产生当前块的预测块时,可使用当前块的上方参考样点与左侧参考样点的平均值。另外,在角度模式的情况下,可通过使用当前块的上方参考样点、左侧参考样点、右上方参考样点和/或左下方参考样点来产生预测块。为了产生预测样点值,可执行实数单元的插值。
在颜色分量之间的帧内预测的情况下,可以基于第一颜色分量的相应重建块来产生第二颜色分量的当前块的预测块。例如,第一颜色分量可以是亮度分量,并且第二颜色分量可以是色度分量。对于颜色分量之间的帧内预测,可基于模板推导第一颜色分量与第二颜色分量之间的线性模型的参数。模板可包括当前块的上方和/或左侧邻近样点以及与其相应的第一颜色分量的重建块的上方和/或左侧邻近样点。例如,可使用模板中的样点中具有最大值的第一颜色分量的样点值及与其相应的第二颜色分量的样点值,以及模板中的样点中具有最小值的第一颜色分量的样点值及与其相应的第二颜色分量的样点值推导线性模型的参数。当推导线性模型的参数时,可将相应重建块应用于线性模型以产生当前块的预测块。根据视频格式,可对第一颜色分量的重建块和相应重建块的邻近样点执行二次采样。例如,当第二颜色分量的一个样点与第一颜色分量的4个样点相应时,可对第一颜色分量的4个样点进行二次采样以计算一个相应样点。在这种情况下,可基于相应二次采样的样点执行线性模型的参数推导和颜色分量之间的帧内预测。是否执行颜色分量之间的帧内预测和/或模板的范围可作为帧内预测模式被用信号发送。
当前块可在水平方向或垂直方向上被分区为两个子块或4个子块。可顺序地重建分区的子块。即,可以对子块执行帧内预测以产生子预测块。另外,可以对子块执行反量化和/或逆变换以产生子残差块。可通过将子预测块添加到子残差块来产生重建子块。重建子块可以用作子子块的帧内预测的参考样点。子块可以是包括预定数量(例如,16)或更多个样点的块。因此,例如,在当前块是8×4块或4×8块时,当前块可被分区为两个子块。此外,在当前块是4×4块时,当前块可不被分区为子块。在当前块具有其它尺寸时,当前块可被分区为4个子块。可以用信号发送关于是否基于子块和/或分区方向(水平或垂直)执行帧内预测的信息。可以限于仅在使用参考样点线0时执行基于子块的帧内预测。当执行基于子块的帧内预测时,可以不执行稍后将描述的针对预测块的滤波。
可以通过对被帧内预测的预测块执行滤波来产生最终预测块。可以通过将预定权重应用于滤波目标样点、左侧参考样点、上方参考样点和/或左上方参考样点来执行滤波。可以基于块尺寸、帧内预测模式和预测块中的滤波目标样点的位置中的至少一个来确定用于滤波的权重和/或参考样点(范围、位置等)。可以仅在预定的帧内预测模式(例如,DC、平面、垂直、水平、对角线和/或相邻对角线模式)的情况下执行滤波。相邻对角线模式可以是给对角线模式加上k或从对角线模式减去k的模式。例如,k可以是8或更小的正整数。
可通过预测与当前块相邻存在的块的帧内预测模式来对当前块的帧内预测模式进行熵编码/熵解码。在当前块与邻近块的帧内预测模式相同时,可通过使用预定标志信息来用信号发送当前块与邻近块的帧内预测模式相同的信息。另外,可用信号发送多个邻近块的帧内预测模式之中的与当前块的帧内预测模式相同的帧内预测模式的指示符信息。在当前块与邻近块的帧内预测模式不同时,可通过基于邻近块的帧内预测模式执行熵编码/熵解码来对当前块的帧内预测模式信息进行熵编码/熵解码。
图5是示出画面间预测处理的实施例的示图。
在图5中,矩形可以表示画面。在图5中,箭头表示预测方向。根据画面的编码类型,可将画面分类为帧内画面(I画面)、预测画面(P画面)和双预测画面(B画面)。
可在不需要画面间预测的情况下通过帧内预测对I画面进行编码。可通过使用在针对当前块的一个方向(即,前向或后向)上存在的参考画面,通过画面间预测来对P画面进行编码。可通过使用在针对当前块的两个方向(即,前向和后向)上存在的参考画面,通过画面间预测来对B画面进行编码。当使用画面间预测时,编码器可执行画面间预测或运动补偿,并且解码器可执行相应运动补偿。
在下文中,将详细描述帧间预测的实施例。
可使用参考画面和运动信息来执行画面间预测或运动补偿。
可通过编码设备100和解码设备200中的每个在画面间预测期间推导当前块的运动信息。可通过使用重建的邻近块的运动信息、同位置块(也称为col块或同位块)的运动信息和/或与同位块相邻的块的运动信息来推导当前块的运动信息。同位块可表示先前重建的同位置画面(也称为col画面或同位画面)内的在空间上与当前块位于相同位置的块。同位画面可以是包括在参考画面列表中的一个或更多个参考画面中的一个画面。
运动信息的推导方法可依据当前块的预测模式而不同。例如,应用于帧间预测的预测模式包括AMVP模式、合并模式、跳过模式、具有运动矢量差的合并模式、子块合并模式、三角形分区模式、帧间-帧内组合预测模式、仿射模式等。这里,合并模式可以被称为运动合并模式。
例如,当AMVP被用作预测模式时,可将重建的邻近块的运动矢量、同位块的运动矢量、与同位块相邻的块的运动矢量和(0,0)运动矢量中的至少一个确定为针对当前块的运动矢量候选,并且通过使用运动矢量候选产生运动矢量候选列表。可通过使用产生的运动矢量候选列表来推导当前块的运动矢量候选。可基于推导的运动矢量候选来确定当前块的运动信息。同位块的运动矢量或与同位块相邻的块的运动矢量可被称为时间运动矢量候选,并且重建的邻近块的运动矢量可被称为空间运动矢量候选。
编码设备100可计算当前块的运动矢量与运动矢量候选之间的运动矢量差(MVD),并且可对运动矢量差(MVD)执行熵编码。另外,编码设备100可对运动矢量候选索引执行熵编码并产生比特流。运动矢量候选索引可指示包括在运动矢量候选列表中的运动矢量候选之中的最佳运动矢量候选。解码设备可对包括在比特流中的运动矢量候选索引执行熵解码,并且可通过使用经过熵解码的运动矢量候选索引从包括在运动矢量候选列表中的运动矢量候选中选择解码目标块的运动矢量候选。另外,解码设备200可将经过熵解码的MVD与通过熵解码而提取的运动矢量候选相加,从而推导解码目标块的运动矢量。
另外,编码设备100可对计算出的MVD的分辨率信息执行熵编码。解码设备200可使用MVD分辨率信息来调整被熵解码的MVD的分辨率。
另外,编码设备100基于仿射模型计算当前块中的运动矢量和运动矢量候选之间的运动矢量差(MVD),并对MVD执行熵编码。解码设备200通过被熵解码的MVD和仿射控制运动矢量候选的总和推导解码的目标块的仿射控制运动矢量来基于每个子块推导运动矢量。
比特流可包括指示参考画面的参考画面索引。参考画面索引可通过编码设备100被熵编码,并且随后作为比特流被用信号发送到解码设备200。解码设备200可基于推导的运动矢量和参考画面索引信息来产生解码目标块的预测块。
推导当前块的运动信息的方法的另一示例可以是合并模式。合并模式可表示合并多个块的运动的方法。合并模式可表示从邻近块的运动信息推导当前块的运动信息的模式。当应用合并模式时,可使用重建的邻近块的运动信息和/或同位块的运动信息来产生合并候选列表。运动信息可包括运动矢量、参考画面索引和画面间预测指示符中的至少一个。预测指示符可指示单向预测(L0预测或L1预测)或双向预测(L0预测和L1预测)。
合并候选列表可以是存储的运动信息的列表。包括在合并候选列表中的运动信息可以是以下至少一个:与当前块相邻的邻近块的运动信息(空间合并候选)、参考画面中的当前块的同位块的运动信息(时间合并候选)、通过合并候选列表中存在的运动信息的组合产生的新运动信息、在当前块之前被编码/解码的块的运动信息(基于历史的合并候选)和零合并候选。
编码设备100可通过对合并标志和合并索引中的至少一个执行熵编码来产生比特流,并且可将比特流用信号发送到解码设备200。合并标志可以是指示是否针对每个块执行合并模式的信息,并且合并索引可以是指示当前块的邻近块中的哪个邻近块是合并目标块的信息。例如,当前块的邻近块可包括位于当前块的左侧的左侧邻近块、被布置在当前块上方的上方邻近块和在时间上与当前块相邻的时间邻近块。
另外,编码设备100对合并候选的运动信息中的用于校正运动矢量的校正信息执行熵编码,并将其用信号发送到解码设备200。解码设备200可以基于校正信息校正通过合并索引选择的合并候选的运动矢量。这里,校正信息可以包括关于是否执行校正的信息、校正方向信息和校正尺寸信息中的至少一个。如上所述,基于用信号发送的校正信息对合并候选的运动矢量进行校正的预测模式可以被称为具有运动矢量差的合并模式。
跳过模式可以是将邻近块的运动信息照原样应用于当前块的模式。当应用跳过模式时,编码设备100可对哪个块的运动信息将被用作当前块的运动信息的事实的信息执行熵编码,以产生比特流,并且可将比特流用信号发送到解码设备200。编码设备100可不将关于运动矢量差信息、编码块标志和变换系数等级中的至少任意一个的语法元素用信号发送到解码设备200。
子块合并模式可以表示以编码块(CU)的子块为单位推导运动信息的模式。当应用子块合并模式时,可使用与参考画面中的当前子块同位的子块的运动信息(基于子块的时间合并候选)和/或仿射控制点运动矢量合并候选来产生子块合并候选列表。
三角形分区模式可以表示通过将当前块分区为对角线方向来推导运动信息,使用推导的运动信息中的每个来推导每个预测样点,并且通过对推导的预测样点中的每个进行加权来推导当前块的预测样点的模式。
帧间-帧内组合预测模式可以表示通过对由帧间预测产生的预测样点和由帧内预测产生的预测样点进行加权来推导当前块的预测样点的模式。
解码设备200可自行校正推导的运动信息。解码设备200可基于由推导的运动信息指示的参考块搜索预定区域,并推导具有最小SAD的运动信息作为校正的运动信息。
解码设备200可使用光流对经由帧间预测推导的预测样点进行补偿。
图6是示出变换和量化处理的示图。
如图6中所示,对残差信号执行变换处理和/或量化处理,以产生量化的等级信号。残差信号是原始块与预测块(即,帧内预测块或帧间预测块)之间的差。预测块是通过帧内预测或帧间预测产生的块。所述变换可以是首次变换、二次变换或者首次变换和二次变换两者。对残差信号的首次变换产生变换系数,并且对变换系数的二次变换产生二次变换系数。
从预先定义的各种变换方案中选择的至少一种方案被用于执行首次变换。例如,所述预定义的变换方案的示例包括离散余弦变换(DCT)、离散正弦变换(DST)和Karhunen-Loève变换(KLT)。通过首次变换产生的变换系数可经历二次变换。可根据当前块和/或当前块的邻近块的编码参数来确定用于首次变换和/或二次变换的变换方案。可选地,可用信号发送指示变换方案的变换信息。基于DCT的变换可以包括例如DCT-2、DCT-8等。基于DST的变换可包括例如DST-7。
可以通过对残差信号或执行首次变换和/或二次变换的结果执行量化来产生量化的等级信号(量化系数)。依据块的帧内预测模式或块尺寸/形状,可以根据对角线右上方扫描、垂直扫描和水平扫描中的至少一个来扫描量化的等级信号。例如,当在对角线右上方扫描中扫描系数时,块形式的系数改变为一维矢量形式。除了对角线右上方扫描之外,依据帧内预测模式和/或变换块的尺寸,可以使用水平地扫描二维块形式的系数的水平扫描或垂直地扫描二维块形式的系数的垂直扫描。扫描的量化的等级系数可以被熵编码以***比特流中。
解码器对比特流进行熵解码以获得量化的等级系数。量化的等级系数可以通过反向扫描以二维块形式被布置。对于反向扫描,可以使用对角线右上方扫描、垂直扫描和水平扫描中的至少一个。
然后可以对量化的等级系数进行反量化,然后根据需要进行二次逆变换,最后根据需要进行首次逆变换,以产生重建残差信号。
可在环内滤波之前针对通过帧内预测或帧间预测重建的亮度分量执行动态范围中的逆映射。动态范围可以被分区为16个相等的片段,并且可以用信号发送每个片段的映射函数。可在条带级或并行块组级用信号发送映射函数。可以基于映射函数推导用于执行逆映射的逆映射函数。在逆映射区域中执行环内滤波、参考画面存储和运动补偿,并且经由使用映射函数的映射将通过帧间预测产生的预测块被转换到映射区域,然后被用于产生重建块。然而,由于在映射区域中执行帧内预测,因此经由帧内预测产生的预测块可以被用于产生重建块而无需映射/逆映射。
在当前块是色度分量的残差块时,可以通过对映射区域的色度分量执行缩放来将残差块转换到逆映射区域。可在条带级或并行块组级用信号发送缩放的可用性。只有当亮度分量的映射可用并且亮度分量的分区和色度分量的分区遵循相同的树结构时,才可以应用缩放。可基于与色差块相应的亮度预测块的样点值的平均值来执行缩放。在这种情况下,在当前块使用帧间预测时,亮度预测块可表示映射的亮度预测块。可通过使用亮度预测块的样点值的平均值所属的片段的索引参考查找表来推导缩放所需的值。最后,通过使用推导的值对残差块进行缩放,可以将残差块转换到逆映射区域。然后,可以在逆映射区域中执行色度分量块恢复、帧内预测、帧间预测、环内滤波和参考画面存储。
可以通过序列参数集用信号发送指示亮度分量和色度分量的映射/逆映射是否可用的信息。
可以基于指示当前画面中的当前块与参考块之间的位移的块矢量来产生当前块的预测块。以这种方式,用于参考当前画面产生预测块的预测模式被称为帧内块复制(IBC)模式。IBC模式可被应用于M×N(M<=64,N<=64)编码单元。IBC模式可包括跳过模式、合并模式、AMVP模式等。在跳过模式或合并模式的情况下,构建合并候选列表,并且用信号发送合并索引,使得可以指定一个合并候选。指定的合并候选的块矢量可以用作当前块的块矢量。合并候选列表可包括空间候选、基于历史的候选、基于两个候选的平均值的候选和零合并候选中的至少一个。在AMVP模式的情况下,可用信号发送差块矢量。另外,可从当前块的左侧邻近块和上方邻近块推导预测块矢量。可以用信号发送将使用的邻近块的索引。IBC模式中的预测块被包括在当前CTU或左侧CTU中并且被限于已经重建的区域中的块。例如,可以限制块矢量的值,使得当前块的预测块按照编码/解码顺序位于当前块所属的64×64块之前的三个64×64块的区域中。通过以这种方式限制块矢量的值,可减少根据IBC模式实施方案的存储器消耗和设备复杂度。
根据本发明的实施例,下面将详细描述使用候选列表对画面(即,图像)进行编码/解码的方法。
可以根据以下实施例中的至少一个或以下实施例的至少一个组合来对画面进行编码/解码。根据以下实施例,可以通过在图像编码/解码处理中有效地决定当前块的参考块来提高图像编码器的编码效率和图像解码器的解码效率。
图8是示出根据本发明实施例的图像编码方法的流程图。图9是示出根据本发明实施例的图像解码方法的流程图。
参照图8,编码设备可推导运动矢量候选(S810),并且可基于推导的运动矢量候选产生运动矢量候选列表(S820)。当产生运动矢量候选列表时,可使用产生的运动矢量候选列表来确定运动矢量(S830),并且可使用确定的运动矢量来执行运动补偿(S840)。此后,编码设备可对关于运动补偿的信息进行熵编码(S850)。
参照图9,解码设备可对从编码设备接收到的关于运动补偿的信息进行熵解码(S910),并且可推导运动矢量候选(S920)。然后,解码设备可基于推导的运动矢量候选产生运动矢量候选列表(S930),并可使用产生的运动矢量候选列表来决定运动矢量(S940)。此后,解码设备可使用确定的运动矢量来执行运动补偿(S950)。
在图8和图9中,针对当前块的运动矢量候选可以表示针对当前块的合并候选,并且基于推导的运动矢量候选产生运动矢量候选列表可以表示基于推导的合并候选产生合并候选列表。
下面将详细描述图8和图9中示出的步骤。
首先,具体描述推导运动矢量候选的步骤(S810和S920)。
针对当前块的运动矢量候选可包括空间运动矢量候选和时间运动矢量候选中的至少一个。
可从当前块的邻域中的重建块推导当前块的空间运动矢量。作为示例,可以将当前块的邻域中的重建块的运动矢量确定为针对当前块的空间运动矢量候选。
图10是用于描述推导针对当前块的空间运动矢量候选的示例的示图。
参照图9,可以从与当前块X相邻的邻近块推导针对当前块的空间运动矢量候选。此时,与当前块相邻的邻近块可以包括与当前块的上方相邻的块(B1)、与当前块的左侧相邻的块(A1)、与当前块的右上角相邻的块(B0)、与当前块的左上角相邻的块(B2)和与当前块的左下角相邻的块(A0)中的至少一个。
可基于是否存在邻近块、是否通过帧间预测对邻近块进行解码等来确定是否存在针对邻近块的运动矢量,或针对邻近块的运动矢量是否可用作针对当前块的空间运动矢量候选。此时,可根据给定优先级决定是否存在针对邻近块的运动矢量,或针对邻近块的运动矢量是否可用作针对当前块的空间运动矢量候选。作为示例,在图9所示的示例中,可以确定是否存在以该顺序位于A0、A1、B0、B1和B2处的块的运动矢量。
在当前块的参考画面和具有运动矢量的邻近块的参考画面彼此不同的情况下,可将通过针对邻近块缩放运动矢量而产生的矢量决定为针对当前块的空间运动矢量候选。此时,可基于当前画面与当前块所参考的参考画面之间的距离和当前画面与邻近块所参考的参考画面之间的距离中的至少一个来执行缩放。作为示例,可通过根据当前画面与当前块所参考的参考画面之间的距离和当前画面与邻近块所参考的参考画面之间的距离之间的比率缩放针对邻近块的运动矢量来推导针对当前块的空间运动矢量候选。
另外,在当前块的参考画面索引和具有运动矢量的邻近块的参考画面索引彼此不同的情况下,可将通过针对邻近块缩放运动矢量而产生的矢量决定为针对当前块的空间运动矢量候选。在此情况下,还可基于当前画面与当前块所参考的参考画面之间的距离以及当前画面与邻近块所参考的参考画面之间的距离中的至少一个来执行缩放。
关于缩放,可基于由具有预定义值的参考画面索引指示的参考画面来缩放针对邻近块的运动矢量,并且因此可将得到的矢量决定为空间运动矢量候选。此时,预定义值可以是0或正整数。作为示例,可根据当前画面与由具有预定义值的参考画面索引指示的当前块的参考画面之间的距离和当前画面与具有预定义值的邻近块的参考画面之间的距离之间的比率来缩放针对邻近块的运动矢量,并且因此可推导针对当前块的空间运动矢量候选。
另外,可基于当前块的编码参数中的至少一个或更多个来推导针对当前块的空间运动矢量候选。
另外,根据本发明的空间运动矢量候选的推导可表示使用邻近块的运动信息推导针对当前块的空间合并候选。
可从包括在与当前画面同位的画面中的重建块推导针对当前块的时间运动矢量候选。此时,同位画面可以是早于当前画面被编码/解码的画面,并且可以是与当前画面处于不同时间序列的画面。
图11是用于描述针对当前块推导时间运动矢量候选的示例的示图。
参照图11,在与当前画面同位的画面中,可从包括与当前块X在空间上同位的块的外部位置的块或包括与当前块X在空间上同位的块的内部位置的块推导针对当前块的时间运动矢量候选。此时,时间运动矢量候选可表示同位块的运动矢量。作为示例,可以从与在空间上与当前块同位的块C的右下角相邻的块H或者包括块C的中心点的块C3推导针对当前块X的时间运动矢量候选。为了推导针对当前块的时间运动矢量候选而使用的块H、块C3等可以被称为“同位块”。
另外,可基于编码参数中的至少一个或更多个推导时间运动矢量候选、同位画面、同位块、预测列表利用标志和参考画面索引中的至少一个。
在包括当前块的当前画面与当前块的参考画面之间的距离和包括同位块的同位画面与同位块的参考画面之间的距离不同的情况下,可通过针对同位块缩放运动矢量来获取针对当前块的时间运动矢量候选。此时,可基于当前画面与由当前块参考的参考画面之间的距离以及同位画面与由同位块参考的参考画面之间的距离中的至少一个来执行缩放。作为示例,可根据当前画面与由当前块参考的参考画面之间的距离以及同位画面与由同位块参考的参考画面之间的距离之间的比率来缩放针对同位块的运动矢量,并且因此可推导针对当前块的时间运动矢量候选。
另外,根据本发明的时间运动矢量候选的推导可表示使用同位块的运动信息推导针对当前块的时间合并候选。
下面将描述推导可以是根据本发明的运动矢量候选的示例的基于历史的运动矢量候选的方法。在以下描述中,候选列表可指包括以上描述的基于历史的运动矢量候选的列表。另外,在以下描述中,候选列表可被定义为基于历史的合并候选列表。
图12是用于描述根据本发明实施例的推导候选列表的示例的示图。
在编码或解码处理中使用或者在编码或解码处理之后产生的当前块的多条块信息中的至少一条可被添加或包括在候选列表中。
此时,块的信息可以是编码参数中的至少一个(诸如帧内预测模式、运动矢量和运动信息)。
作为示例,当前块的多条块信息中的至少一条可仅在当前块不处于仿射模式或不应用基于子块的时间运动矢量推导模式的情况下被包括在候选列表中。
可以在按照每个画面、每个子画面、每个条带、每个并行块、每个分块、每个CTU边界、每个CTU行和每个CTU列执行编码/解码时维持根据本发明的候选列表,并且可以按照每个画面、每个子画面、每个条带、每个并行块、每个分块、每个CTU边界、每个CTU行和每个CTU列使用根据本发明的候选列表。另外,根据本发明的候选列表可以包括先前基于当前块在画面、子画面、条带、并行块、分块、CTU边界、CTU行和CTU列的单元内被编码/解码的块的多条块信息中的至少一条。另外,根据本发明的候选列表可以包括先前按照每个画面、每个子画面、每个条带、每个并行块、每个分块、每个CTU边界、每个CTU行和每个CTU列被编码/解码的多条块信息中的至少一条。以下描述中的候选列表可以表示如上所述的根据本发明的候选列表。
如图12所示,可以决定或选择候选列表或合并候选列表中的候选的多条块信息中的至少一条,以便在对当前块进行编码/解码的处理中被使用。因此,可以使用决定的候选的多条块信息中的至少一条来执行对当前块进行编码/解码的处理。
此时,在对当前块进行编码/解码的处理中使用的多条块信息中的至少一条、或在对当前块进行编码/解码的处理之后产生的当前块的多条块信息中的至少一条可被添加到候选列表中或被包括在候选列表中。在以下描述中,将块信息、候选和块中的至少一个添加到候选列表可被解释为具有与将块信息、候选和块中的至少一个包括在候选列表中相同的含义。
作为示例,在当前块的多条块信息中的至少一条包括在候选列表中时,可将当前块的多条块信息中的至少一条作为第一条目或最后条目添加到候选列表。另外,可以添加块信息使得块信息位于候选列表中的编码器和解码器之间的预定义位置,并且可以添加块信息使得块信息位于从编码器用信号发送到解码器的任意位置。
作为另一示例,在当前块的多条块信息中的至少一条包括在候选列表中时,可考虑候选列表中的候选的最大数量。在包括在候选列表中的候选的数量是候选的最大数量的情况下,当前块的块信息可以不包括在候选列表中。
例如,候选列表中的候选的最大数量可以被确定为P。此时,P可以是0或正整数。作为示例,P可以是5,并且可以基于当前块的编码参数和候选的编码参数中的至少一个被确定。另外,P可以是在编码器/解码器中预定义的值,并且可以是从编码器用信号发送到解码器的值。
作为又一示例,在包括在候选列表中的候选的数量为候选的最大数量的情况下,包括在候选列表中的候选中的最早包括在候选列表中的候选被删除,并且当前块的块信息被包括在最晚包括在候选列表中的候选的下一顺序中。
根据本发明的候选列表中的候选可被添加到或被包括在以下至少一项中:帧内预测模式候选列表、主要最可能模式(MPM)、次要MPM列表、残差帧内预测模式候选列表、运动矢量候选列表和合并候选列表。
此时,主要MPM列表可以是包括以下至少一项的帧内预测模式候选列表:空间邻近块的帧内预测模式、通过从空间邻近块的帧内预测模式减去特定值或将特定值添加到空间邻近块的帧内预测模式而得到的推导的帧内预测模式(推导模式)、和基本帧内预测模式。此时,基本帧内预测模式可以是DC模式、平面模式、垂直模式和水平模式中的至少一个。特定值可以是0、正整数和负整数中的至少一个。可以基于当前块的编码参数和候选块的编码参数中的至少一个来确定特定值。另外,特定值可以是在编码器/解码器中预定义的值,并且可以是从编码器用信号发送到解码器的值。
次要MPM列表可以是由不在主要MPM列表中的帧内预测模式组成的帧内预测模式候选列表。在当前块中不将主要MPM列表中的候选确定为帧内预测模式的情况下,可将次要MPM列表中的候选确定为帧内预测模式。
关于残差帧内预测模式候选列表,在当前块中包括在主要MPM列表和次要MPM列表中的至少一个中的候选未被确定为帧内预测模式的情况下,可将残差帧内预测模式候选列表中的候选确定为帧内预测模式。
因此,帧内预测模式候选列表可表示主要MPM列表、次要MPM列表和残差帧内预测模式候选列表中的至少一个。
当前块的多条信息中的关于帧间预测的编码信息可包括在候选列表中。包括编码信息的候选列表中的候选可在构成运动矢量候选列表或合并候选时被用作候选。即,候选列表中的候选可被包括在运动矢量候选列表或合并候选列表中或被添加到运动矢量候选列表或合并候选列表。此时,关于帧间预测的编码信息可包括运动矢量、参考画面索引和参考画面列表信息中的至少一个。
根据本发明的基于历史的运动矢量候选的推导可以表示使用当前块的运动信息来推导基于历史的合并候选。
例如,基于历史的运动矢量候选的推导可表示推导基于历史的运动矢量候选列表或包括基于历史的运动矢量候选的基于历史的合并候选列表。
图13是用于描述根据本发明实施例的推导候选列表的方法的流程图。
参照图13,根据本发明的对画面进行编码或解码的方法包括:推导当前块的运动信息的步骤(S1310);使用当前块的运动信息推导基于历史的合并候选的步骤(S1320);使用基于历史的合并候选推导基于历史的合并候选列表的步骤(S1330);以及使用基于历史的合并候选推导合并候选列表的步骤(S1340)。
步骤S1330可以是将在S1320中推导的基于历史的合并候选添加到基于历史的合并候选列表的步骤。
另外,步骤S1340中的合并候选列表可用于在当前块之后被编码/解码的块的帧间预测。
作为另一示例,根据本发明的对画面进行编码或解码的方法包括:推导当前块的运动信息的步骤、使用当前块的运动信息推导基于历史的合并候选的步骤、使用基于历史的合并候选推导运动矢量候选的步骤、以及使用基于历史的合并候选推导运动矢量候选列表的步骤。
推导运动矢量候选列表的步骤可以是将推导的基于历史的合并候选添加到基于历史的运动矢量候选列表的步骤。
此时,推导的运动矢量候选列表可用于在当前块之后被编码/解码的块的帧间预测。
接下来,描述基于推导的运动矢量候选或合并候选产生运动矢量候选列表或合并候选列表的步骤(S820和S930)。
作为示例,产生运动矢量候选列表的步骤可包括将运动矢量候选添加到运动矢量候选列表或从运动矢量候选列表去除运动矢量候选的步骤,以及将组合的运动矢量候选添加到运动矢量候选列表的步骤。
作为另一示例,产生运动矢量候选列表的步骤可包括将推导的合并候选添加到合并候选列表或从合并候选列表去除推导的合并候选的步骤,以及将组合的运动矢量候选添加到合并候选列表的步骤。
编码设备和解码设备可按照推导运动矢量候选的顺序将推导的运动矢量候选添加到运动矢量候选列表或合并候选列表。
运动矢量候选列表mvpListLX可表示与参考画面列表L0、L1、L2和L3相应的运动矢量候选列表。例如,与L0相应的运动矢量候选列表可被称作mvpListL0。
可使用以下实施例中的一个来配置针对当前块列表的运动矢量候选。
作为示例,空间运动矢量候选、时间运动矢量候选和基于历史的运动矢量候选列表中的候选中的至少一个可以以推导顺序被添加到运动矢量候选列表。
作为另一示例,推导的空间合并候选、时间合并候选和基于历史的运动矢量候选列表中的候选中的至少一个可顺序地被添加到合并候选列表。
作为又一示例,可将按此顺序的运动矢量候选、推导的空间运动矢量候选、基于历史的运动矢量候选列表中的候选中的至少一个、时间运动矢量候选添加到运动矢量候选列表。
作为又一示例,可将按此顺序的合并候选、推导的空间合并候选、基于历史的合并候选列表中的候选中的至少一个、时间合并候选添加到合并候选列表。
作为又一示例,可在推导的空间运动矢量候选之间添加基于历史的运动矢量候选列表中的候选中的至少一个,并且接着可将时间运动矢量候选添加到运动矢量候选列表。例如,可将以下顺序的运动矢量候选添加到运动矢量候选列表:N个空间运动矢量候选、基于历史的运动矢量候选列表中的候选中的至少一个、M个空间运动矢量候选、时间运动矢量候选。此时,N和M可以是大于0的整数值。
作为又一示例,可在推导的空间合并候选之间添加基于历史的合并候选列表中的候选中的至少一个,并且接着可将时间合并候选添加到合并候选列表。例如,合并候选可以按以下顺序添加到合并候选列表:N个空间合并候选、基于历史的合并候选列表中的候选中的至少一个、M个空间合并候选、时间合并候选。此时,N和M可以是大于0的整数值。
作为又一示例,空间运动矢量候选、时间运动矢量候选和基于历史的运动矢量候选列表中的候选中的至少一个可以以预先确定的任意顺序被添加到运动矢量候选列表。
作为又一示例,可以以预先确定的任意顺序将空间合并候选、时间合并候选和基于历史的合并候选列表中的候选中的至少一个添加到合并候选列表。
可以基于当前块的编码参数和候选的编码参数中的至少一个来决定此时的任意顺序。另外,任意顺序可以是在编码器/解码器中预定义的顺序,并且可以根据从编码器用信号发送到解码器的值被决定。
作为又一示例,除推导的空间运动矢量候选、基于历史的运动矢量候选列表中的候选中的至少一个和时间运动矢量候选以外,可将具有给定值的矢量添加到运动矢量候选列表。
作为又一示例,除推导的空间合并候选、基于历史的合并候选列表中的候选中的至少一个和时间合并候选以外,可将具有给定值的运动信息添加到合并候选列表。
例如,具有给定值的运动信息可以是零(0)运动矢量或零(0)合并候选。
接下来,描述将组合的运动矢量候选添加到运动矢量候选列表的步骤。
作为示例,编码器或解码器可产生使用以下至少一项或更多项被组合的运动矢量候选:存在于运动矢量候选列表中的空间运动矢量候选、基于历史的运动矢量候选列表中的候选中的至少一个、时间运动矢量候选和零运动矢量候选,并且可将产生的组合的运动矢量候选添加到运动矢量候选列表。
作为另一示例,编码器或解码器可产生使用以下至少一项或更多项被组合的合并候选:合并候选列表中存在的空间合并候选、基于历史的合并候选列表中的候选中的至少一个、时间合并候选和零合并候选,并且可将产生的组合的合并候选添加到合并候选列表。
可基于编码参数中的至少一个或更多个产生组合的运动矢量候选或合并候选。另外,可基于编码参数中的至少一个或更多个将组合的运动矢量候选或合并候选添加到运动矢量候选列表或合并候选列表。
接下来,描述确定从运动矢量候选列表预测的运动矢量的步骤(S830和S940)。
作为示例,可将包括在运动矢量候选列表中的运动矢量候选中的由运动矢量候选索引指示的运动矢量候选决定为针对当前块的预测的运动矢量。
编码设备可计算运动矢量与预测的运动矢量之间的差,从而可计算运动矢量差值。解码设备可将预测的运动矢量和运动矢量差相加,从而可计算运动矢量。
作为另一示例,可将包括在合并候选列表中的合并候选中的由合并候选索引指示的合并候选确定为用于针对当前块的运动补偿的合并候选。
接下来,描述使用运动矢量或运动信息执行运动补偿的步骤(S840和S950)。
编码器和解码器可以通过使用确定的合并候选来执行帧间预测或运动补偿。这里,编码/解码的目标块可以包括确定的合并候选的运动信息。
当编码/解码的目标块包括至少一个或多达N个运动矢量/信息时,编码器和解码器可以通过使用相应的运动矢量/信息中的至少一个或多达N个运动矢量/信息来产生至少一个或多达N个预测块,并用作编码/解码的目标块的最终预测块。
在示例中,当编码/解码的目标块包括一个运动矢量/信息时,编码器和解码器可以通过使用相应运动矢量/信息来产生预测块,并且使用产生的预测块作为编码/解码的目标块的最终预测块。
在另一示例中,当编码/解码的目标块包括两个运动矢量/信息时,编码器和解码器可以通过使用两个运动矢量/信息来产生预测块,并且通过预测块的加权和来推导预测块,以便用作编码/解码的目标块的最终预测块。这里,应用于每个预测块的加权因子可以是1/2。
在另一示例中,当编码/解码的目标块包括三个运动矢量/信息时,编码器和解码器可以通过使用三个运动矢量/信息来产生预测块,并且通过三个预测块的加权和来推导预测块,以便用作编码/解码的目标块的最终预测块。这里,应用于每个预测块的加权因子可以是1/3。
在另一示例中,当编码/解码的目标块包括四个运动矢量/信息时,编码器和解码器可以通过使用四个运动矢量/信息来产生预测块,并且通过四个预测块的加权和来推导预测块,以便用作编码/解码的目标块的最终预测块。这里,应用于每个预测块的加权因子可以是1/4。
上述加权因子不限于固定值,并且可以是可变值。应用于每个预测块的加权因子可以彼此相同或不同。为了应用可变加权因子,可以通过比特流用信号发送针对解码的目标块的至少一条加权因子信息。可针对每个预测块用信号发送加权因子信息,或可针对每个参考图像用信号发送加权因子信息。多个预测块可共享一条加权因子信息。
当预测块列表利用标志是第一值时,编码/解码的目标块可以使用相应运动信息。另外,当预测块列表利用标志是第二值时,编码/解码的目标块可以不使用相应运动信息。
在示例中,当编码/解码的目标块可能使用两条运动信息时或者当帧间预测指示符是PRED_BI时,可以根据下面的等式1计算预测块的加权和。
[等式1]
P_BI=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+RF)>>1
在示例中,当编码/解码的目标块可能使用三条运动信息时或者当帧间预测指示符是PRED_TRI时,可以根据下面的等式2计算预测块的加权和。
[等式2]
P_TRI=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+WF_L2*P_L2+OFFSET_L2+RF)/3
在示例中,当编码/解码的目标块可能使用四条运动信息时或者当帧间预测指示符是PRED_QUAD时,可以根据下面的等式3计算预测块的加权和。
[等式3]
P_QUAD=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+WF_L2*P_L2+OFFSET_L2+WF_L3*P_L3+OFFSET_L3+RF)>>2
在以上等式中,P_BI、P_TRI和P_QUAD中的每个可以是编码/解码的目标块的最终预测块,WF_L0、WF_L1、WF_L2和WF_L3中的每个可以是每个预测块的加权因子值,OFFSET_L0、OFFSET_L1、OFFSET_L2和OFFSET_L3中的每个可以是每个预测块的偏移值,并且P_L0、P_L1、P_L2和P_L3可以表示通过使用编码/解码的目标块的L0至L3运动矢量/信息分别产生的预测块。RF可以表示四舍五入因子,并且具有包括0的正整数值或负整数值。另外,L0可以表示参考图像列表0、L1可以表示参考图像列表1、L2可以表示参考图像列表2、并且L3可以表示参考图像列表3。
这里,L2参考图像列表和L3参考图像列表中的至少一个可以包括以下至少一项:长期参考图像、未执行去块滤波的参考图像、未执行样点自适应偏移的参考图像、未执行自适应环路滤波的参考图像、仅执行去块滤波和样点自适应偏移的参考图像、仅执行去块滤波和自适应偏移的参考图像、以及仅执行样点自适应偏移和自适应偏移的参考图像。
当编码/解码的目标块包括至少两个运动矢量/信息时,编码器和解码器可通过使用两个运动矢量/信息来产生预测块,并计算预测块的加权和。当计算预测块的加权和时,可以通过熵编码/解码来使用用于计算加权和的每个预测块的加权因子和偏移中的至少一个。
另外,编码器和解码器可以不对加权因子信息和偏移信息中的至少一个进行熵编码/解码,并且使用邻近块的被编码/解码的加权因子和偏移值中的至少一个作为每个预测块的加权因子和偏移中的至少一个。
另外,编码器和解码器可以不对加权因子信息和偏移信息中的至少一个进行熵编码/解码,并且基于编码/解码的目标块所属的当前图像和每个参考图像的POC来计算加权因子信息和偏移信息中的至少一个。编码器和解码器可在当前图像与参考图像之间的距离变大时使用小加权因子值和小偏移值中的至少一个,并且在当前图像与参考图像之间的距离变小时使用大加权因子值和大偏移值中的至少一个。例如,编码器和解码器可在当前图像与L0参考图像之间的POC差为2时将加权因子值计算为1/3,并且在当前图像与L0参考图像之间的POC差为1时将加权因子值计算为2/3。换言之,编码器和解码器可与POC差成反比地计算每个预测块的加权因数值。
另外,编码器和解码器可基于至少一个编码参数对加权因子信息和偏移信息中的至少一个进行熵编码/解码。另外,编码器和解码器可基于至少一个编码参数计算预测块的加权和。
预测块的加权和可以被应用于预测块内的部分区域。例如,部分区域可以是与预测块的边界相应的区域。另外,可以基于子块来计算预测块的加权和。
可以使用相同的预测块或相同的最终预测块对具有由块信息指示的特定块尺寸的当前块的子块执行帧间预测或运动补偿。
另外,可以使用相同的预测块或相同的最终预测块对具有由块信息指示的特定块深度的当前块的子块执行帧间预测或运动补偿。
另外,当使用运动矢量预测计算预测块的加权和时,编码器和解码器可计算使用存在于运动矢量候选列表中的运动矢量候选中的至少一个或更多个产生的预测块的加权和,并且可使用计算的加权和作为编码/解码的目标块的最终预测块。
作为示例,编码器和解码器可以仅使用空间运动矢量候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为另一示例,编码器和解码器可使用空间运动矢量候选和时间运动矢量候选产生预测块,并且可计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为又一示例,编码器和解码器可以仅使用组合的运动矢量候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为又一示例,编码器和解码器可以仅使用具有特定运动矢量候选索引的运动矢量候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
另外,可以执行计算。计算的加权和可以用作编码/解码的目标块的最终预测块。
另外,当使用合并模式计算预测块的加权和时,编码器和解码器可以使用合并候选列表中存在的合并候选中的至少一个或更多个来计算加权和,并且可以使用计算的加权和作为编码/解码的目标块的最终预测块。
即,编码器和解码器可选择用于选择合并候选的至少一个或更多个合并候选索引,以便从包括在合并候选列表中的合并候选中选择至少一个或更多个合并候选。例如,为了计算加权和,编码器和解码器可选择包括在合并候选列表中的合并候选中的两个合并候选。此时,编码器和解码器可选择两个合并候选索引以用于选择两个合并候选。
作为另一示例,编码器和解码器可以仅使用存在于特定运动矢量候选索引范围内的运动矢量候选来产生预测块,并且可以计算预测块的加权和。
作为示例,编码器和解码器可以仅使用空间合并候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为另一示例,编码器和解码器可以仅使用空间合并候选和时间合并候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为又一示例,编码器和解码器可以仅使用组合的合并候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为又一示例,编码器和解码器可使用由一个或更多个合并候选索引指示的合并候选产生一个或更多个预测块,并且可使用产生的预测块计算加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
作为又一示例,编码器和解码器可以仅使用存在于特定合并候选索引范围内的合并候选来产生预测块,并且可以计算预测块的加权和。编码器和解码器可以使用计算的加权和作为编码/解码的目标块的最终预测块。
编码器和解码器可以使用由当前块保留的运动矢量/信息来执行运动补偿。此时,可以使用至少一个或更多个预测块来产生由运动补偿产生的最终预测块。此时,当前块可以表示当前编码块和当前预测块中的至少一个或两个。
编码器和解码器可对与当前块的内部边界相应的区域执行重叠块运动补偿,并且可产生最终预测块。
与当前块的内部边界相应的区域可以是与当前块的邻近块的边界相邻的当前块的内部区域。此时,当前块的内部边界可以包括当前块的上方边界区域、左侧边界区域、下方边界区域、右侧边界区域、右上角区域、右下角区域、左上角区域和左下角区域中的至少一个或更多个。另外,与当前块的内部边界相应的区域可以是与预测块内的当前块的一个部分相应的区域。
重叠块运动补偿可以表示通过计算使用与当前块的内部边界相应的预测块区域和以与当前块相邻的方式被编码/解码的块的运动信息产生的预测块的加权和来执行运动补偿。
另外,在当前块被分区成子块的情况下,当前块的内部边界可以是与当前块内的子块之间的边界相邻的区域。例如,在当前块被分区成三角形形状的区域的情况下,与当前块的内部边界相应的区域可以是与通过三角形分区产生的对角线边界相邻的区域。在将当前块分区成许多子块(subblocks)之后,可以基于每个子块-块计算加权和。即,可以使用以与当前块相邻的方式基于每个子块被编码/解码的块的运动信息来执行运动补偿。此时,下层块可以表示子块。
另外,当计算加权和时,可以使用基于每个子块-块使用当前块的运动信息产生的第一预测块,并且使用与当前块在空间上相邻的邻近子块的运动信息产生的第二预测块。此时,运动信息的使用可表示运动信息的推导。然后,第一预测块可以表示使用当前块内的编码/解码的目标子块的运动信息产生的预测块。另外,这里的第二预测块可以表示使用与当前块内的编码/解码的目标子块在空间上相邻的邻近子块的运动信息产生的预测块。
另外,为了计算加权和,编码器或解码器可以将当前块分区成两个或更多个子块,并且可以针对每个子块产生预测块。例如,编码器或解码器可以将当前块分区为第一子块和第二子块,并且可以产生针对第一子块的第一预测块和针对第二子块的第二预测块。
可以使用第一预测块和第二预测块的加权和来产生针对当前块的最终预测块。即,对于重叠块运动补偿,除了当前块的运动信息以外,还可以使用不同块的运动信息来产生最终预测块。
另外,在启用高级运动矢量预测(AMVP)模式、合并模式、三角形分区模式、仿射运动补偿模式、解码器侧运动矢量推导模式、自适应运动矢量分辨率模式、局部照度补偿模式和双向光流模式中的至少一个或更多个的情况下,可以将当前块分区成子块,然后可以基于每个子块-块执行重叠块运动补偿。
作为示例,在将当前块应用于当前块的情况下,可对高级时间运动矢量预测符(ATMVP)候选和空间-时间运动矢量预测符(STMVP)候选中的至少一个或预测符(ATMVP)候选和空间-时间运动矢量预测符(STMVP)候选两者执行重叠块运动补偿。
在通过应用上述三角形分区模式来预测当前块的情况下,为了对当前块执行编码/解码,编码器或解码器可以将候选列表中包括的候选中的W个候选确定为用于推导当前块的运动信息的候选。例如,W可以是2。在当前块的尺寸等于或大于M×N的情况下,可以通过应用三角形分区模式来对当前块进行编码/解码。三角形分区模式可以是合并模式的示例。即,在上述示例中,为了执行编码/解码而使用的候选列表可表示合并候选列表。可以在编码单元级用信号发送是否通过应用三角形分区模式来对当前块进行编码/解码。此时,M和N可以是正整数。另外,M和N可以相同并且可以不同。例如,M和N可以是8。
在通过应用三角形分区模式对当前块进行编码/解码的情况下,可以将当前块分区为两个三角形区域。此时,可以对关于用于将当前块分区为两个三角形区域的分区方向的信息进行编码/解码。为了对通过分区产生的两个三角形区域中的每个进行编码/解码,可以从候选列表中选择用于两个三角形区域中的每个的编码/解码的运动信息。
为了推导每个三角形区域的运动信息,可以对每个三角形区域的索引进行编码/解码。例如,在将当前块分区为第一子块和第二子块的情况下,可以对用于对第一区域进行编码/解码的第一索引和用于对第二区域进行编码/解码的第二索引进行编码/解码。此时,当确定参考块针对当前块的两条信息时,由第一索引指示的信息可以是第一参考块针对当前块的信息,并且由第二索引指示的信息可以是第二参考块针对当前块的信息。
可使用通过第一索引和第二索引推导的多条运动信息针对其相应子块产生或推导第一预测块及第二预测块。此时,可以使用产生的第一预测块和第二预测块来产生或推导针对当前块的最终预测块。
当对当前块执行编码/解码时,可以发送指示是否应用重叠块运动补偿的指示符,并且可以以特定等级(诸如并行块头、条带头、块或分块)发送指示符。
下面将参照图14至图16详细描述重叠块运动补偿。
接下来,详细描述对关于运动补偿的信息进行熵编码/解码的处理(S850和S910)。
编码设备可对关于运动补偿的信息进行熵编码,并且解码设备可对包括在比特流中的关于运动补偿的信息进行熵解码。此时,关于被熵编码/解码的运动补偿的信息可以包括以下至少一项:帧间预测指示符(inter_pred_idc)、参考画面索引(ref_idx_l0,ref_idx_l1,ref_idx_l2,ref_idx_l3)、运动矢量候选索引(mvp_l0_idx,mvp_l1_idx,mvp_l2_idx,mvp_l3_idx)、运动矢量差、关于是否应用跳过模式的信息(cu_skip_flag)、关于是否应用合并模式的信息(merge_flag)、合并索引信息(merge_index)、加权因子(wf_l0,wf_l1,wf_l2,wf_l3)、和偏移值(offset_l0,offset_l1,offset_l2,offset_l3)。
当执行帧间预测时,帧间预测指示符可指示针对当前块的帧间预测方向(单向预测、双向预测等)。帧间预测指示符可以表示当前块在产生预测块时使用的参考画面的数量。另外,一个参考画面可以用于多个方向的预测,并且在这种情况下,可以使用N(N是大于0的正整数)个参考画面来执行M(此时,M是等于或大于N的正整数)个方向的预测。另外,帧间预测指示符可指示在对当前块执行帧间预测或运动补偿时使用的预测块的数量。另外,帧间预测指示符可以表示当使用至少一个或更多个参考画面列表(诸如L0和L1)对当前块执行帧间预测或运动补偿时使用的预测块的数量。此时,L0和L1可以分别表示List 0和List 1。另外,帧间预测指示符可以是针对当前块是否参考最多N个参考画面列表的信息。此时,N可以是1或2。可以使用上述一个或两个参考画面列表对当前块执行运动补偿。
参考画面索引可指定每个参考画面列表中的由当前块参考的参考画面。可以针对每个参考画面列表对一个或更多个参考画面索引进行熵编码/解码。可以使用一个或更多个参考画面索引对当前块执行运动补偿。
运动矢量候选索引指示在针对每个参考画面列表或针对每个参考画面索引产生的运动矢量候选列表中针对当前块的运动矢量候选。可针对每个运动矢量候选列表对至少一个或更多个运动矢量候选索引进行熵编码/解码。可以使用至少一个或更多个运动矢量候选索引对当前块执行运动补偿。
运动矢量差指示运动矢量与预测的运动矢量之间的差的值。对于当前块,可对针对每个参考画面列表或每个参考画面索引产生的运动矢量候选列表的一个或更多个运动矢量差进行熵编码/解码。可以使用一个或更多个运动矢量差对当前块执行运动补偿。
关于是否应用跳过模式的信息(cu_skip_flag)可以在信息采用第一值1的情况下指示跳过模式的应用,并且可以在信息采用第二值0的情况下不指示跳过模式的应用。可以基于关于是否应用跳过模式的信息来使用跳过模式,并且可以对当前块执行运动补偿。
关于是否应用合并模式的信息(merge_flag)可以在信息采用第一值1的情况下指示合并模式的应用,并且可以在信息采用第二值0的情况下不指示合并模式的应用。可以基于关于是否应用合并模式的信息来应用合并模式,并且可以对当前块执行运动补偿。
合并索引信息(merge_index)可表示指示合并候选列表中的合并候选的信息。
另外,合并索引信息可表示关于合并索引的信息。
另外,合并索引信息可指示以在空间/时间上与当前块相邻的方式重建的块中的推导合并候选的块。
另外,合并索引信息可指示由合并候选保留的多条运动信息中的至少一条或更多条。例如,在合并索引信息采用第一值0的情况下,合并索引信息可指示合并候选列表中的第一合并候选。在合并索引信息采用第二值1的情况下,合并索引信息可指示合并候选列表中的第二合并候选。在合并索引信息采用第三值2的情况下,合并索引信息可指示合并候选列表中的第三合并候选。以相同方式,在合并索引信息采用第四值至第N值的情况下,合并索引信息可根据合并候选列表中的顺序指示相应合并候选。此时,N可以是0或正整数。
可以通过应用合并模式基于合并模式索引信息来执行当前块的运动补偿。
当执行当前块的运动补偿时,在产生两个或更多个预测块的情况下,可以通过预测块的加权和产生针对当前块的最终预测块。当计算加权和时,可以将加权因子和偏移中的至少一个或两个应用于每个预测块。用于加权和计算的加权和因子(诸如加权因子或偏移)可被熵编码/解码多次,其中,被熵编码/解码的次数与以下至少一项的数量一样多或大于以下至少一项的数量:参考画面列表、参考画面、运动矢量候选索引、运动矢量差、运动矢量、关于是否应用跳过模式的多条信息、关于是否应用合并模式的多条信息和多条合并索引信息。另外,可以基于帧间预测指示符对每个预测块的加权和因子进行熵编码/解码。此时,加权和因子可以包括加权因子和偏移中的至少一个。
另外,编码器或解码器可对视频参数集、序列参数集、画面参数集、自适应参数集、并行块头和条带头中的至少一个中的关于运动补偿的信息中的至少一条或更多条信息进行熵编码/解码。
另外,关于运动补偿的多条信息中的至少一条或更多条信息可用作被编码/解码的邻近块的运动块的多条信息中的至少一条或更多条信息的预测值,因此关于运动补偿的多条信息中的至少一条或更多条信息的差值可被熵编码/解码。可将关于运动补偿的多条信息中的至少一条或更多条信息的预测值和关于运动补偿的多条信息中的至少一条或更多条信息的差值相加,从而可计算关于运动补偿的多条信息中的至少一条或更多条信息的值。
另外,可以不对关于运动补偿的多条信息中的至少一条信息执行熵编码/解码,被编码/解码的关于邻近块的运动补偿的多条信息中的至少一条或更多条信息可以用作针对当前块的运动补偿的多条信息中的至少一条或更多条信息。
另外,可基于至少一个或更多个编码参数推导至少一条或更多条关于运动补偿的信息。
另外,可基于至少一个或更多个编码参数从比特流对至少一条或更多条关于运动补偿的信息进行熵解码。可以基于至少一个或更多个编码参数将至少一条或更多条关于运动补偿的信息熵编码到比特流中。
另外,关于运动补偿的信息还可以包括以下至少一个或更多个:运动矢量、运动矢量分辨率信息、重叠块运动补偿信息、局部照度补偿信息、仿射运动补偿信息、解码器侧运动矢量细化信息和双向光流信息。
运动矢量分辨率信息可以是关于是否对运动矢量和运动矢量差中的至少一个或两个使用特定分辨率的信息。这里的分辨率可以表示精度等级。此时,特定分辨率的测量单位可以是16像素(16pel)、8像素(8pel)、整数像素(整数pel)、1/2像素(1/2pel)、1/4像素(1/4pel)、1/8像素(1/8pel)、1/16像素(1/16pel)、1/32像素(1/32pel)和1/64像素(1/64pel)中的至少一个或更多个。
重叠块运动补偿信息可以是关于在针对编码/解码的目标块产生预测块时是否使用在对编码/解码的目标块执行运动补偿时使用与编码/解码的目标块在空间上相邻的邻近块的运动信息产生的子块的信息。
局部照度补偿信息可以是关于当针对编码/解码的目标块产生预测块时是否应用加权因子和偏移值中的至少一个或两个的信息。此时,加权因子和偏移值可以是基于参考块计算的值。
仿射运动补偿信息可以是关于当对编码/解码的目标块执行运动补偿时是否使用仿射运动模型的信息。此时,仿射运动模型可以是使用多个参数将一个块分区成许多子块并且从代表性运动矢量计算通过分区产生的子块的运动矢量的方法。
解码器侧运动矢量推导信息可以是关于是否在解码器中推导并使用运动补偿所需的运动矢量的信息。此时,关于运动矢量的信息可以不被熵编码/解码。例如,当应用合并模式时,可执行解码器侧运动矢量推导。
双向光流信息可以是关于是否通过基于每个像素校正运动矢量来执行运动补偿的信息。此时,可以不对基于每个像素的运动矢量进行熵编码/解码。另外,运动矢量校正可以表示将运动矢量值从基于每个块的运动矢量改变为基于每个像素的运动矢量的方法。
可使用被熵解码的关于运动补偿的至少一条或更多条信息对当前块执行运动补偿。可使用关于运动补偿的多条信息中的至少一条或更多条信息对当前块执行运动补偿,并且可对关于运动补偿的多条信息中的至少一条或更多条信息进行熵编码。
当对关于运动补偿的信息中的至少一条或更多条信息进行熵编码/解码时,可以使用以下至少一种二值化方法:截断莱斯二值化方法、k阶指数哥伦布(k阶Exp_Golomb)二值化方法、受限k阶指数哥伦布(k阶Exp_Golomb)二值化方法、固定长度二值化方法、一元二值化方法和截断一元二值化方法。
当对关于运动补偿的多条信息中的至少一条或更多条信息进行熵编码/解码时,可以使用关于邻近块的运动补偿的多条信息中的至少一条或更多条信息、或先前被编码/解码的关于运动补偿的多条信息中的至少一条或更多条信息、或关于当前单元/块深度的信息、或关于当前单元/块尺寸的信息来确定上下文模型。
当对关于运动补偿的多条信息中的至少一条或更多条信息进行熵编码/解码时,关于邻近块的运动补偿的多条信息中的至少一条或更多条信息、或先前被编码/解码的关于运动补偿的多条信息中的至少一条或更多条信息、或关于当前单元/块深度的信息、或关于当前单元/块尺寸的信息可用作针对当前块的运动补偿的信息的预测值。
下面将参照图14至图16详细描述重叠块运动补偿。
图14是用于描述基于每个子块-块执行重叠块运动补偿的示例的示图。
参照图14,阴影块可以是应用重叠块运动补偿的区域。阴影块可以是与当前块的内部边界相应的子块或可以是当前块内的子块。另外,由粗线指示的块可以是当前块。
另外,箭头可以表示相邻的邻近子块的运动信息被用于当前子块的运动补偿。此时,与箭头尾部相应的位置可以表示:1)与当前块相邻的邻近子块,或2)与当前块内的当前子块相邻的邻近子块。另外,与箭头头部相应的位置可以表示当前块内的当前子块。
在阴影块中,可以计算第一预测块和第二预测块的加权和。作为在产生第一预测块时使用的运动信息,可以使用当前块内的当前子块的运动信息。作为在产生第二预测块时使用的运动信息,可使用与当前块相邻的邻近子块的运动信息和与当前块内的当前子块相邻的邻近子块的运动信息中的至少一个,或者使用与当前块相邻的邻近子块的运动信息和与当前块内的当前子块相邻的邻近子块的运动信息两者。
另外,为了提高编码效率,用于产生第二预测块的多条运动信息可以是针对当前块内的当前子块的位置的上方块、左侧块、下方块、右侧块、右上方块、右下方块、左上方块和左下方块中的至少一个或更多个的多条运动信息。可以根据当前子块的位置来确定可用邻近子块的位置。例如,在当前子块位于上方边界的情况下,可以使用位于当前子块的上方、右上方和左上方的邻近子块中的至少一个。在当前子块位于左侧边界的情况下,可以使用位于当前子块的左侧、左上方和左下方的邻近子块中的至少一个。
另一方面,子块的尺寸可以是N×M,其中,N和M是正整数。N和M可以彼此相同或不同。例如,子块的尺寸可以是4×4或8×8,并且可以基于每个序列对子块尺寸信息进行熵编码/解码。
另外,在将三角形分区模式应用于当前块的情况下,子块可以是各自具有宽度N和长度M的两个三角形的形式。此时,对角线方向可以是从左上端到右下端的方向和从左下端到右上端的方向中的一个。
另外,可以根据当前块的尺寸来决定子块的尺寸。例如,在当前块的尺寸等于或小于K个样点的尺寸的情况下,可以使用4×4个子块,并且在当前块的尺寸大于K个样点的尺寸的情况下,可以使用8×8个子块。此时,K是正整数,并且例如可以是256。
此时,关于子块的尺寸的信息可在以下至少一项或更多项中被熵编码/解码并被使用:基于每个序列、基于每个画面、基于每个条带、基于每个并行块、基于每个CTU、基于每个CU以及基于每个PU。另外,可以使用在编码器和解码器中预定义的子块的尺寸。
子块可以是正方形、矩形和三角形中的至少一个或更多个的形式。例如,在当前块是正方形或矩形的形式的情况下,子块可以是正方形的形式。
例如,在当前块为矩形形式的情况下,子块可以为矩形形式。
此时,关于子块的形式的信息可以在以下至少一项或更多项中被熵编码/解码和被使用:基于每个序列、基于每个画面、基于每个条带、基于每个并行块、基于每个CTU、基于每个CU和基于每个PU。另外,作为子块的形式,可以使用在编码器和解码器中预定义的形式。
执行重叠块运动补偿的当前块的尺寸可以等于或大于P×Q,其中,P和Q可以是正整数。P和Q可以相同并且彼此不同。另外,P可以大于K1乘以U(子块的水平长度),并且Q可以等于或大于K1乘以V(子块的垂直长度)。此时,U和V中的每个可以是4、8、16、32、64和128中的一个,并且K1可以是1、2和3中的一个。P和Q中的每个可以大于或等于U和V。例如,P和Q的最大乘积可以是128×128,并且U和V可以小于或等于128。例如,当前块可以由一个子块组成。
可对位于当前块的内部上方边界上的子块和位于当前块的内部左侧边界上的子块中的至少一个或位于当前块的内部上方边界上的子块和位于当前块的内部左侧边界上的子块两者执行重叠块运动补偿。
另外,不对与当前块的下方边界和右侧边界相邻的邻近块进行编码/编码,因此,可以不对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块中的至少一个执行重叠块运动补偿,或者不对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块两者执行重叠块运动补偿。
另外,与当前块的下方边界和右侧边界相邻的邻近块可以不被编码/解码,因此,可以使用位于当前块内的至少一个或更多个子块、编码/解码的目标子块的上方子块、左侧子块、下方子块、左上方子块、左下方子块和右上方子块的多条运动信息对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块中的至少一个或它们两者执行重叠块运动补偿。
另外,在将合并模式应用于当前块并且应用先前时间运动矢量预测候选和空间-时间运动矢量预测候选中的至少一个或它们两者的情况下,可以不对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块中的至少一个或它们两者执行重叠块运动补偿。
另外,在当前块处于解码器侧运动矢量推导模式的情况下,可不对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块中的至少一个或它们两者执行重叠块运动补偿。
另外,在当前块处于仿射运动补偿模式的情况下,可不对位于当前块的内部下方边界上的子块和位于当前块的内部右侧边界上的子块中的至少一个或它们两者执行重叠块运动补偿。
另外,可对当前块的颜色分量中的至少一个或更多个执行重叠块运动补偿。此时,颜色分量可以包括亮度分量、色度分量等中的至少一个或更多个。
另外,当执行重叠块运动补偿时,可将用于产生第二预测块的针对邻近子块的运动矢量改变为整数值,并且可执行运动预测。例如,针对编码/解码的目标块的上方子块的邻近子块的运动矢量是(1.2,0.7),实际上用于产生第二预测块的运动矢量可以是最接近的整数值(诸如1,1),而不是(1.2,0.7),或者可以是“0”方向上的整数值(如(1,0))。通过这样做,可以降低重叠块运动补偿的复杂度。
另外,可根据当前块的帧间预测指示符来执行重叠块运动补偿。即,在当前块用于单向预测、双向预测、三向预测和四向预测中的至少一个或更多个的情况下,可以执行重叠块运动补偿。
另外,在当前块用于单向预测的情况下,可以执行重叠运动补偿。即,在对当前块执行双向预测、三向预测和四向预测中的至少一个的情况下,可以不执行重叠运动补偿。当执行重叠运动补偿时的编码和解码的复杂度高于执行一般双向预测的编码和解码的复杂度,因此,仅在执行单向预测的情况下,可以执行重叠块运动补偿以解决该问题。
在当前块或子块不用于单向预测的情况下,可以不对块或子块执行重叠块运动补偿。即,在当前块或子块不用于单向预测的情况下,可以不执行第二预测块的产生。可以这样做以保持运动补偿步骤的复杂度,即,最大程度上与双向预测的复杂度相同。
在当前块用于单向预测的情况下,可使用相邻的邻近子块的运动信息产生第二预测块。即,在当前块用于单向预测的情况下,可以执行重叠块运动补偿。
当使用当前块的子块的运动信息产生第一预测块时,可以使用与当前块相邻的上方块、左上方块、右上方块、左侧块和左下方块中的至少一个或更多个来推导一条运动信息。
当使用当前块的子块的运动信息产生第二预测块时,可使用与当前块相邻的上方块、左上方块、右上方块、左侧块和左下方块中的至少一个或更多个来推导一条运动信息的最大值。
另外,当使用与当前块内的编码/解码的目标子块相邻的邻近子块的运动信息产生第二预测块时,可使用上方子块、左侧子块、下方子块和右侧子块中的至少一个或更多个来推导一条运动信息。
此时,运动信息的推导可表示使用推导的运动信息产生第一预测块或第二预测块,并且产生的第一预测块和第二预测块用于重叠块运动补偿。
可以仅针对与当前块的至少一个或更多个边界相应的子块产生第二预测块。使用产生的第二预测块,可以执行重叠块运动补偿。基于每个小块的运动补偿增加了编码/解码的复杂度,因此可以执行编码器或解码器的操作以最小化由于应用重叠块运动补偿而导致的复杂度的增加。
另外,可仅对与当前块的内部边界相应的区域执行重叠块运动补偿。
另一方面,如果以增加编码/解码的复杂度为代价使编码效率最大化,则可以对当前块内的所有子块执行重叠块运动补偿。
是否仅对与当前块的边界相应的子块执行重叠块运动补偿可通过高等级(诸如参数集、序列参数集、画面参数集、并行块头或条带头)被用信号发送。
运动信息在下文中可表示与特定参考画面列表L0或L1相应的运动矢量和参考画面索引信息(索引)。因此,双向预测块可包含与列表L0相应的运动信息和与列表L1相应的运动信息。
编码器或解码器可从与当前块相邻的邻近块中的一个邻近块推导用于产生第一预测块的一条运动信息并且可使用推导的运动信息,并且可从与当前块相邻的邻近块中的一个邻近块推导用于产生第二预测块的一条运动信息并且可使用推导的运动信息。此时,可以利用以下实施例中的至少一个。
与当前块的内部上方边界相应的区域可选择与内部上方边界相邻的邻近子块的一条运动信息。与当前块的内部左侧边界相应的子块可选择与内部左端边界相邻的邻近子块的一条运动信息。
此时,在任意情况下,可以存在最多一个邻近子块。即,作为与上方边界子块相邻的邻近子块,可以存在一个上方子块,并且作为与左侧边界子块相邻的邻近子块,可以存在一个左侧子块。此时,针对上方边界子块或左侧边界子块的所有运动矢量可以是相同的,并且针对子块的邻近上方子块或邻近左侧子块的运动矢量也可以是相同的。
在这种情况下,在本说明书中使用的术语“子块”可以被解释为具有与“块”相同的含义。另外,在这种情况下,针对上方边界子块或左侧边界子块的邻近子块的运动矢量可以是相同的,并且针对子块的邻近上方子块或邻近左侧子块的运动矢量也可以是相同的。在这种情况下,在本说明书中使用的术语“子块”可以表示由邻近子块组成的一个块。
如果与上方边界子块或左侧边界子块相邻的邻近子块的运动信息的数量等于一,那么可选择这样的一条运动信息。即,在单向预测中与上方边界子块或左侧边界子块相邻的邻近子块被编码,可选择单向运动信息。
在与上方边界子块或左侧边界子块相邻的邻近子块不用于双向预测、三向预测和四向预测中的一个的情况下,可以选择单向运动信息。
如果与上方边界子块或左侧边界子块相邻的邻近子块的运动信息的数量等于二,则可以使用以下实施例中的至少一个来选择一条运动信息。即,在双向预测中对与上方边界子块或左侧边界子块相邻的邻近子块进行编码,可以使用以下实施例中的至少一个来选择运动信息。
作为示例,在当前块的子块的帧间预测指示符指示L0(或L1)预测的情况下,可选择当前块的邻近块的多条运动信息中的与列表L1(或L0)相应的运动信息作为子块的运动信息。
作为另一示例,在当前块的子块的帧间预测指示符指示L0(或L1)预测的情况下,可选择当前块的邻近块的多条运动信息中的与列表L0(或L1)相应的运动信息作为子块的运动信息。
作为又一示例,在用于当前块的子块的第一预测的帧间预测指示符指示L0(或L1)预测的情况下,可选择当前块的邻近块的多条运动信息中的与列表L1(或L0)相应的运动信息作为用于子块的第二预测的运动信息。
作为又一示例,在用于当前块的子块的第一预测的帧间预测指示符指示L0(或L1)预测的情况下,可选择当前块的邻近块的多条运动信息中的与列表L0(或L1)相应的运动信息作为用于子块的第二预测的运动信息。
作为又一示例,为了选择当前块的子块的运动信息,可确定当前块的邻近块的L0(或L1)帧间预测指示符的值。此时,根据邻近块的L0(或L1)帧间预测指示符的值,可选择当前块的邻近块的多条运动信息中的与列表L1(或L0)相应的运动信息作为子块的运动信息。
作为又一示例,为了选择当前块的子块的运动信息,可确定当前块的邻近块的L1(或L0)帧间预测指示符的值。此时,根据邻近块的L1(或L0)帧间预测指示符的值,可选择当前块的邻近块的多条运动信息中的与列表L0(或L1)相应的运动信息作为子块的运动信息。
此时,可以通过用于当前块的子块的编码/解码的索引值来决定邻近块的L0帧间预测指示符和L1帧间预测指示符中的哪一个与将被确定帧间预测指示符的值的帧间预测指示符相应。
作为又一示例,在针对邻近子块的运动矢量中存在对与当前块的子块的参考画面不同的参考画面进行参考的运动矢量的情况下,可选择与此相关联的运动信息。
作为又一示例,可在针对邻近子块的运动矢量中选择与和针对当前块的子块的运动矢量极大不同的运动矢量相应的运动信息。此时,运动矢量之间的差可以是x方向运动矢量之间的差的绝对值与y方向运动矢量之间的差的绝对值之和。
另外,用于邻近子块的L0预测的当前画面与参考画面之间的时间距离可以与用于邻近子块的L1预测的当前画面与参考画面之间的时间距离不同。在此情况下,可基于在时间距离方面接近当前画面的参考画面而对与在时间距离方面相对远离当前画面的参考画面相应的运动矢量执行缩放。接着,可将缩放的运动矢量和与在时间距离方面远离当前画面的参考画面相应的运动矢量进行比较,并且因此可推导运动矢量之间的差。
作为又一示例,可选择邻近子块的L0预测运动信息和L1预测运动信息中的至少一个。
此时,指示是否使用与L0预测和L1预测相应的多条运动信息中的哪条运动信息的信息可从编码器用信号发送到解码器。此信息可在参数集、并行块组头、条带头中或在块等级中被用信号发送。
作为又一示例,可在无任何特定条件的情况下选择与邻近子块的多条运动信息中的L0相应的信息,并且可在无任何特定条件的情况下选择与邻近子块的多条运动信息中的L1相应的信息。
在利用帧内预测对邻近子块(上方子块或左侧子块)进行编码的情况下,可以利用以下实施例中的至少一个。
作为示例,可以将邻近子块的帧内预测模式应用为当前块的帧内预测模式,因此可以产生第二预测块。
作为另一示例,在利用帧内预测对邻近子块进行编码的情况下,可以不对邻近子块执行重叠块运动补偿。
在利用通过组合帧内预测和帧间预测产生的组合预测来对邻近子块(上方子块或左侧子块)进行编码的情况下,可以使用用于邻近子块的帧间预测的运动信息(预测指示符、参考画面、运动矢量等)来产生第二预测块。
对于与当前块的内部上方边界和内部左侧边界相应的区域(下文中称为左上方子块),可使用与上方边界相邻的邻近上方子块、与左侧边界相邻的邻近左侧子块和与左上方边界相邻的邻近左上方子块中的一个邻近子块的一条运动信息来产生第二预测块。此时,可以使用以下实施例中的至少一个来选择运动信息。
以下实施例还可以应用于存在邻近子块的两条运动信息的情况。即,以下实施例还可以应用于对邻近块执行双向预测的情况。另外,以下实施例还可以应用于存在编码/解码的目标子块的两个或更多个邻近子块的情况。
可选择与上方边界、左侧边界或左上方边界邻近的邻近子块的运动信息。此时,哪个子块具有将被选择的运动信息可以在编码器/解码器中被预定义,或者可以被用信号发送到解码器以进行传输。
在相邻的邻近子块中存在仅具有一条运动信息(单向预测)的子块的情况下,可选择邻近子块的运动信息以用于产生第二预测块。即,在存在与上方部分、左侧部分、或左上方部分相邻的邻近子块中的执行单向预测的子块的情况下,可选择邻近子块的运动信息。
可根据邻近子块中的每个的运动信息与当前块的子块的运动信息之间的相似度来选择用于产生第二预测块的运动信息。
可通过选择具有相对低相似度的运动信息并且因此产生第二预测块来增加最终预测块的精度,但问题在于实施方案的复杂度增加。考虑到这个问题,可以选择具有高相似度的运动信息来产生第二预测块。可以使用根据以下实施例的方法中的至少一种来选择用于产生第二预测块的一条运动信息。
作为示例,在存在具有与当前块的子块的帧间预测指示符L0或L1不同的帧间预测指示符的一个邻近子块的情况下,可选择邻近子块的运动信息。
作为另一示例,在存在具有与当前块的子块的帧间预测指示符L0或L1相同的帧间预测指示符的一个邻近子块的情况下,可选择邻近子块的运动信息。
作为又一示例,在针对邻近子块的运动矢量中存在对与当前块的子块的参考画面不同的参考画面进行参考的运动矢量的情况下,可选择与邻近子块相应的运动信息。相反,在针对邻近子块的运动矢量中存在对与当前块的子块的参考画面相同的参考画面进行参考的运动矢量的情况下,可选择与邻近子块相应的运动信息。
作为又一示例,可使用与和针对邻近子块的运动矢量中的针对当前块的子块的运动矢量极大不同的运动矢量相应的运动信息。例如,在运动矢量之间的差处于特定值或高于特定值的情况下,可选择与此相关联的运动信息。这里的特定值可以在编码器/解码器中预定义,或者可以从编码器用信号发送解码器。此时,运动矢量之间的差可以是x方向运动矢量之间的差的绝对值与y方向运动矢量之间的差的绝对值的总和。
另外,用于邻近子块的L0预测的当前画面与参考画面之间的时间距离可与用于邻近子块的L1预测的当前画面与参考画面之间的时间距离不同。在此情况下,可基于在时间距离方面接近当前画面的参考画面而对与在时间距离方面相对远离当前画面的参考画面相应的运动矢量执行缩放。接着,可将缩放的运动矢量与和在时间距离方面远离当前画面的参考画面相应的运动矢量进行比较,并且因此可推导运动矢量之间的差。
在帧间预测仅应用于邻近子块中的一个子块的情况下,可以通过应用上述实施例中的至少一个来选择邻近子块的运动信息中的一条。
在通过组合帧内预测和帧间预测产生的组合预测被编码的子块在邻近子块中的情况下,可以使用用于邻近子块的帧间预测的运动信息来产生第二预测块。
此时,除了上述子块之外,应用帧间预测的另一子块在邻近子块中,可选择用于邻近子块的帧间预测的多条运动信息中的一条,其中,所述多条运动信息包括用于子块的帧间预测的运动信息。此时,可以利用上述实施例中的至少一个。
在邻近上方子块和邻近左侧子块都用于帧内预测的情况下,并且在当前块内与左上方子块相邻的邻近左上方子块用于帧间预测的情况下,可以使用与左上方子块相邻的邻近左上方子块的一条运动信息来产生第二预测块。作为从邻近左上侧子块选择一条运动信息的方法,可以利用上述实施例中的至少一个。
在将帧内预测应用于所有邻近子块的情况下,可以使用邻近子块中的至少一个的帧内预测模式来产生第二预测块。此时,可以预先决定邻近子块中的哪个子块具有将被使用的帧内预测模式,并且可以通过用信号发送的值来决定邻近子块中的哪个子块具有将被使用的帧内预测模式。
另一方面,帧内预测具有比帧间预测更低的复杂度,因此,可以使用所有邻近子块的帧内预测模式来产生与不同帧内预测模式的数量一样多的许多第二预测块。
另外,在将帧内预测应用于所有邻近子块的情况下,可以不对编码/解码的目标子块执行重叠块运动补偿。
在存在与当前块的内部块边界相邻的子块的两个或更多个邻近子块的情况下,可通过使用加权因子对针对邻近子块的运动矢量进行求和来推导一个运动矢量,并且可通过使用推导的运动矢量来产生第二预测块。例如,对于当前块的左上方子块,可使用针对与上方边界相邻的邻近子块和与左侧边界相邻的邻近子块的运动矢量的加权和来推导一个运动矢量。
例如,在针对与上方边界相邻的邻近子块在L0方向上的运动矢量是(x1,y1)并且针对与左侧边界相邻的邻近子块在L0方向上的运动矢量是(x2,y2)的情况下,用于产生针对左上方子块的第二预测块的运动矢量可以被推导为((a1*×1+(1-a1)*×2),(a1*y1+(1-a1)*y2)。此时,a1可以是1/8、1/4、1/2和1中的至少一个。
另外,在至少一个邻近子块用于双向预测的情况下,可针对存在具有相同帧间预测指示符的两个或更多个运动矢量的方向L0或L1推导运动矢量的加权和。另一方面,在既不存在两个也不存在更多个相同的运动矢量的情况下,可以按原样使用运动矢量。可根据与推导的列表L0和L1相应的多条运动信息中的每条与当前块的子块的运动信息之间的相似度来选择用于产生第二预测块的一条运动信息。
可以组合根据上述实施例的至少两种方法,因此可以从与当前块相邻的邻近子块中的至少一个邻近块推导用于产生第二预测块的一条运动信息。
在当前块具有基于每子块的运动矢量并且子块用于单向预测的情况下,可以使用与当前块内的子块相邻的邻近子块的运动信息来产生第二预测块。此时,在当前块的子块是当前块的左侧边界或上方边界上的子块的情况下,可以执行如上所述的推导用于产生第二预测块的运动信息的处理。
另外,在将三角形分区模式应用于当前块、当前块具有基于每个子块-块的运动矢量并且子块用于单向预测的情况下,可使用与当前块相邻的邻近子块的运动信息来产生第一预测块和第二预测块。为了维持子块中的与双向预测的最大复杂度相同的运动补偿的复杂度,可使用以下至少一项来推导用于第二预测块的一条运动信息的最大值:与当前块内的子块相邻的邻近上方子块、邻近左侧子块、邻近下方子块和邻近右侧子块。
作为示例,对于位于当前块的内部下方边界上的下方子块,可使用子块的邻近上方子块、邻近左侧子块和邻近右侧子块中存在于当前块内的子块中的至少一个来推导用于产生第二预测子块的一条运动信息。
作为另一示例,对于位于当前块的内部右侧边界上的右侧子块,可使用子块的邻近左侧子块、邻近上方子块和邻近下方子块中存在于当前块内的子块中的至少一个来推导用于产生第二预测子块的一条运动信息。
作为又一示例,对于位于当前块的内部右下方边界上的子块(在下文中称为“右下端子块”),可以使用子块的邻近上方子块、邻近左侧子块和相邻左上方子块中的至少一个来推导用于产生第二预测子块的一条运动信息。
此时,作为从当前块内的下方块的邻近子块推导一条运动信息的方法,可利用以下实施例中的至少一个。
作为示例,可从邻近子块中选择一个邻近子块的一条运动信息。此时,哪个子块具有将被选择的运动信息可以是预定义的,或者可以在参数集(诸如视频参数集(VPS)或序列参数集(SPS)、画面参数集(PPS)、并行块头、条带头和编码树单元(CTU))中的至少一个或更多个中被用信号发送。
可选地,可以利用根据上述当前块内的子块的运动信息与邻近子块的每条运动信息之间的相似度来选择用于产生第二预测块的一条运动信息的方法中的至少一种。
可选地,可使用利用针对上述当前块内的邻近块的邻近子块的运动矢量的加权和推导一条运动信息的方法中的至少一个。
在存在与当前块相邻的邻近子块和与当前块的子块相邻的当前块内的邻近子块中的至少一个或它们两者的情况下,可以推导用于产生第二预测块的运动信息。
在用于产生第二预测块的运动矢量与用于产生第一预测块的运动矢量不同的情况下,可以推导用于产生第二预测块的运动信息。可选地,在两个运动矢量之间的差等于或高于预定义值的情况下,可推导用于产生第二预测块的运动信息。
此时,两个运动矢量(例如,矢量(x1,y1)和(x2,y2))之间的运动矢量差可以是(x1-x2)的绝对值和(y1-y2)的绝对值的和,并且预定义值可以是大于0的正整数值。可选地,(x1-x2)的绝对值和(y1-y2)的绝对值均大于预定义值,可以推导用于产生第二预测块的运动信息。此时,与(x1-x2)的绝对值进行比较的预定义值和与(y1-y2)的绝对值进行比较的预定义值可以是不同的值。
另外,在用于产生第二预测块的参考画面索引与用于产生第一预测块的参考画面索引不同的情况下,可以推导用于产生第二预测块的运动信息。
另外,基于用于产生第一预测块的帧间预测指示符,在用于产生第二预测块的运动矢量和参考画面索引中的至少一个与用于产生第一预测块的运动矢量和参考画面索引中的至少一个不相同的情况下,可推导用于产生第二预测块的运动信息。
在针对邻近子块的运动矢量中的每个与针对当前块或子块的运动矢量之间的差高于预定义值的情况下,可以仅使用与此相关联的运动矢量来产生第二预测块。因此,在具有邻近子块的所有运动矢量中的每个与针对当前块或子块的运动矢量之间的差等于或低于预定义值的情况下,可以不推导用于产生第二预测块的运动信息。
在当前块处于帧间预测模式并且帧内预测模式应用于与当前块相邻的至少一个或更多个邻近子块的情况下,可以将邻近子块的帧内预测模式应用于当前块的子块,因此可以产生第二预测块。
图15是用于描述在计算第一预测块和第二预测块的加权和时应用加权因子的实现示例的示图。
当计算第一预测块和第二预测块的加权和时,可以根据块内的样点的位置基于每行或每列使用不同的加权因子。然后,可以计算第一预测块和第二预测块内的相同位置处的样点的加权和。此时,当计算用于产生最终预测块的加权和时,可以使用加权因子和偏移中的至少一个或它们两者。
此时,加权因子可以是小于0的负数,并且可以是大于0的正数。然后,偏移可以是0,是小于0的负数,并且是大于0的正数。
另一方面,当计算第一预测块和第二预测块的加权和时,可以基于每个预测块在所有样点位置处使用相同的加权因子。另外,当计算第一预测块和第二预测块的加权和时,可以基于每个预测块在所有样点位置处使用不同的加权因子。
参照图15,可以在第一预测块中给予每行或每列使用加权因子(诸如3/4、7/8、15/16和31/32),并且可以在第二预测块中基于每行或每列使用加权因子(诸如1/4、1/8、1/16和1/32)。此时,关于上述加权因子,可以在属于同一行的样点位置或属于同一列的样点位置中使用相同的加权因子。
加权因子越接近当前子块的边界,将被使用的加权因子可以具有越高的值。另外,每个加权因子可应用于子块内的所有样点。
图15的(a)、图15的(b)、图15的(c)和图15的(d)分别示出了使用邻近上方块的运动信息、邻近下方块的运动信息、邻近左侧块的运动信息和邻近右侧块的运动信息产生第二预测块的示例。此时,上方的第二预测块、下方的第二预测块、左侧的第二预测块和右侧的第二预测块可以表示分别基于邻近上方块的运动信息、邻近下方块的运动信息、邻近左侧块的运动信息和邻近右侧块的运动信息产生的第二预测块。
图16是用于描述在计算第一预测块和第二预测块的加权和时根据块内的样点位置应用不同的加权因子的实现示例的示图。
为了提高编码效率,当计算第一预测块和第二预测块的加权和时,可以根据块内的样点位置使用不同的加权因子。即,可以根据与当前子块在空间上相邻的块的位置利用不同的加权因子来计算加权和。另外,可计算第一预测块和第二预测块内的相同位置的样点的加权和。
参照图16,可以在第一预测块中基于每个样点位置使用加权因子(诸如1/2、3/4、7/8、15/16、31/32、63/64、127/128、255/256、511/512和1023/1024),并且可以在第二预测块中基于每个样点位置使用加权因子(诸如1/2、1/4、1/8、1/16、1/32、1/64、1/128、1/256、1/512和1/1024)。此时,在上方的第二预测块、左侧的第二预测块、下方的第二预测块和右侧的第二预测块中的至少一个或更多个中使用的加权因子可以大于在左上方的第二预测块、左下方的第二预测块、右下端的第二预测块和右上端的第二预测块中的至少一个或更多个中使用的加权因子。
另一方面,在上方的第二预测块、左侧的第二预测块、下方的第二预测块和右侧的第二预测块中的至少一个或更多个中使用的加权因子可以与在左上方的第二预测块、左下方的第二预测块、右下端的第二预测块和右上端的第二预测块中的至少一个或更多个中使用的加权因子相同。
另外,使用同位画面内的同位子块的运动信息产生的第二预测块的加权因子在所有样点位置中可以是相同的。
另外,使用同位画面内的同位子块的运动信息产生的第二预测块的加权因子可以与第一预测块的加权因子相同。
另外,使用以与参考画面内的参考块的下方边界区域和右侧边界区域相邻的方式被编码/解码的块的运动信息产生的第二预测块的加权因子在所有样点位置中可以是相同的。
另外,使用以与参考画面内的参考块的下方边界区域和右侧边界区域相邻的方式被编码/解码的块的运动信息产生的第二预测块的加权因子可以与第一预测块的加权因子相同。
另外,在用于产生第二预测块的运动矢量是从特定位置处的邻近子块被推导的情况下,可以将根据邻近子块位置的位置应用于第二预测块的加权因子设置为在水平方向、垂直方向或水平方向和垂直方向上单调增大或单调减小。
例如,在邻近子块是上方子块的情况下,应用于第二预测块的加权因子可以在从块的上方到下方的方向上单调减小。即,产生第一预测块的当前子块内的样点和邻近块之间的距离越大,加权因子越小。这是因为考虑到距离越大,与当前子块的运动矢量的精度越高,并且从邻近块推导的运动信息的精度越低。
将被使用的加权因子表可在编码器与解码器之间被预定义,并且可通过从编码器发送到解码器的信息、索引等被选择。
另外,为了降低计算的复杂度,加权因子可以根据运动矢量针对当前子块的幅度或运动矢量方向而变化。
例如,在针对当前子块的运动矢量的分量x的绝对值等于或大于预定义值的情况下,1/2、3/4、7/8和15/16可用作左侧邻近子块和右侧邻近子块的加权因子。另一方面,在针对当前子块的运动矢量的分量x的绝对值小于预定义值的情况下,7/8、15/16、31/32和63/64可用作左侧邻近子块和右侧邻近子块的加权因子。此时,预定义值可以是0或正整数。
例如,在针对当前子块的运动矢量的分量y的绝对值等于或大于预定义值的情况下,1/2、3/4、7/8和15/16可用作上方邻近子块和下方邻近子块的加权因子。另一方面,在针对当前子块的运动矢量的分量y的绝对值小于预定义值的情况下,7/8、15/16、31/32和63/64可用作上方邻近子块和下方邻近子块的加权因子。此时,预定义值可以是0或正整数。
例如,在当前子块的运动矢量的分量x和分量y的绝对值的和等于或大于预定义值的情况下,1/2、3/4、7/8和15/16可用作当前子块的加权因子。另一方面,在当前子块的运动矢量的分量x和分量y的绝对值的和小于预定义值的情况下,7/8、15/16、31/32和63/64可用作当前子块的加权因子。此时,预定义值可以是0或正整数。
另一方面,可以不在子块内的所有样点位置执行加权和的计算,并且可以仅在位于与每个块边界相邻的K行/列中的样点上执行加权和的计算。此时,K可以是0或正整数,并且例如,K可以是1、2或4。可选地,可以在子块内的所有样点位置中执行加权和的计算。在这种情况下,加权因子可以从一个样点到另一样点变化,或者可以根据样点之间的距离而不同。
另外,在当前块的尺寸等于或大于N×M的情况下,确定位于与每个块边界相邻的K行/列中的样点的加权和。另外,在当前块被分区为子块并且执行运动补偿的情况下,确定位于与每个块边界相邻的K行/列中的样点的加权和。此时,K可以是0或正整数,并且例如,K可以是1或2。另外,N和M可以是正整数,并且例如,N和M可以等于或大于4或8。N和M可以相同或可以不同。
另外,可以不在子块内的所有样点位置执行加权和的计算,并且可以仅在与每个块边界相邻的样点上执行加权和的计算。例如,在当前块被分区为三角形形状的区域的情况下,可以不对当前块的所有区域执行基于加权的求和,并且可以仅对子块的边界区域执行基于加权的求和。
另外,在不将当前块分区成子块的情况下,可针对当前块推导一条运动信息或帧内预测模式,并且可产生第二预测块。在这种情况下,可以针对当前块内的所有样点位置计算加权和,或者可以仅针对位于与块边界相邻的K行/列中的样点计算加权和。
在仅针对位于与块边界相邻的K行/列中的样点计算第一预测块和第二预测块的加权和的情况下,针对当前块的运动矢量可以补偿块边界上精度的降低,因此可以提高编码效率。另一方面,在针对当前块内的所有样点位置计算加权和的情况下,可以以与双向预测的效果增加的方式类似的方式增加块的预测精度,因此可以提高编码效率。
另外,基于当前块的颜色分量,可以针对位于与每个块边界相邻的K行/列中的样点计算加权和。此时,K可以是0或正整数,并且例如,K可以是1、2或4。另外,在当前块为亮度分量的情况下,可针对位于与每个块边界相邻的两个行/列到四个行/列中的样点计算加权和。另外,在当前块为色度分量的情况下,可针对位于与每个块边界相邻的一个行/列到两个行/列中的样点计算加权和。
另外,在解码器运动矢量推导模式或解码器运动矢量补偿模式应用于当前块的邻近块的情况下,在推导用于产生第二预测块的运动信息时使用的针对邻近块的运动矢量可以是在解码器运动矢量推导或解码器运动矢量补偿之前的运动矢量,而不是针对完全执行了运动矢量推导或运动矢量补偿的块的最终运动矢量。
可以在编码器和解码器中以相同的方法执行以上实施例。
以上实施例中的至少一个或组合可以用于对视频进行编码/解码。
应用于以上实施例的顺序在编码器和解码器之间可以是不同的,或者应用于上述实施例的顺序在编码器和解码器中可以是相同的。
可以对每个亮度信号和色度信号执行以上实施例,或者可以对亮度和色度信号相同地执行以上实施例。
应用本发明的以上实施例的块形式可以具有正方形形式或非正方形形式。
可以依据编码块、预测块、变换块、块、当前块、编码单元、预测单元、变换单元、单元和当前单元中的至少一个的尺寸来应用本发明的以上实施例。这里,尺寸可以被定义为最小尺寸或最大尺寸或最小尺寸和最大尺寸两者,使得应用以上实施例,或者可以被定义为应用以上实施例的固定尺寸。另外,在以上实施例中,第一实施例可以应用于第一尺寸,并且第二实施例可以应用于第二尺寸。换句话说,可以依据尺寸组合应用以上实施例。另外,当尺寸等于或大于最小尺寸并且等于或小于最大尺寸时,可以应用以上实施例。换句话说,当块尺寸包括在特定范围内时,可以应用以上实施例。
例如,在当前块的尺寸为8×8或更大时,可以应用以上实施例。例如,在当前块的尺寸仅为4×4时,可以应用以上实施例。例如,在当前块的尺寸为16×16或更小时,可以应用以上实施例。例如,在当前块的尺寸等于或大于16×16并且等于或小于64×64时,可以应用以上实施例。
可以依据时间层来应用本发明的以上实施例。为了识别可应用以上实施例的时间层,可用信号发送相应标识符,并且可将以上实施例应用于由相应标识符识别的指定时间层。这里,标识符可以被定义为可以应用以上实施例的最低层或最高层或最低层和最高层两者,或者可以被定义为指示应用实施例的特定层。另外,可以定义应用实施例的固定时间层。
例如,在当前图像的时间层是最低层时,可以应用以上实施例。例如,在当前图像的时间层标识符是1时,可以应用以上实施例。例如,在当前图像的时间层是最高层时,可以应用以上实施例。
可以定义应用本发明的以上实施例的条带类型或并行块组类型,并且可以依据相应的条带类型或并行块组类型来应用以上实施例。
在上述实施例中,基于具有一系列步骤或单元的流程图来对方法进行描述,但是本发明不限于步骤的顺序,而是某些步骤可以与其他步骤同时执行或以不同的顺序执行。另外,本领域普通技术人员应当理解,流程图中的步骤并不相互排斥,在不影响本发明的范围的情况下,可以向流程图中添加其他步骤,或者可以从流程图中删除某些步骤。
实施例包括示例的各个方面。可以不对用于各个方面的所有可能的组合进行描述,但是本领域技术人员将能够认识到不同的组合。因此,本发明可以包括在权利要求的范围内的所有替换、修改和改变。
可以以可由各种计算机组件执行的并且被记录在计算机可读记录介质中的程序指令的形式实现本发明的实施例。计算机可读记录介质可以包括独立的程序指令、数据文件、数据结构等或者程序指令、数据文件、数据结构等的组合。记录在计算机可读记录介质中的程序指令可以是为本发明特别设计和构造的,或者是计算机软件技术领域的普通技术人员公知的。计算机可读记录介质的示例包括:磁性记录介质(诸如硬盘、软盘和磁带);光学数据存储介质(诸如CD-ROM或DVD-ROM);磁优化介质(诸如光软盘);以及被特别地构造成存储和实现程序指令的硬件装置(诸如只读存储器(ROM)、随机存取存储器(RAM)、闪存等)。程序指令的示例不仅包括被编译器格式化的机械语言代码,而且包括可以由计算机使用解释器实现的高级语言代码。硬件装置可以被配置为由一个或更多个软件模块操作以执行根据本发明的处理,或者反之亦然。
尽管已经根据诸如详细元件的特定项目以及有限的实施例和附图描述了本发明,但是它们仅被提供以帮助更综合地理解本发明,并且本发明不限于上述实施例。本发明所属领域的技术人员应当理解,可以根据上面的描述进行各种修改和改变。
因此,本发明的精神不应被限于上述实施例,并且所附权利要求及其等同物的整个范围将落入本发明的范围和精神内。
工业适用性
本发明可用于对图像进行编码或解码。

Claims (20)

1.一种图像解码方法,包括:
确定当前块的预测模式;以及
基于确定的预测模式针对当前块执行预测。
2.根据权利要求1所述的图像解码方法,其中,在当前块的预测模式被确定为帧内预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
推导用于推导当前块的帧内预测模式的第一最可能模式MPM列表和第二MPM列表,
确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中,以及
在当前块的帧内预测模式包括在第一MPM列表和第二MPM列表中的至少一个中的情况下,使用第一MPM列表和第二MPM列表确定当前块的帧内预测模式。
3.根据权利要求2所述的图像解码方法,其中,确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中的步骤包括:
确定当前块的帧内预测模式是否包括在第一MPM列表中,以及
在当前块的帧内预测模式不包括在第一MPM列表中的情况下,确定当前块的帧内预测模式是否包括在第二MPM列表中。
4.根据权利要求2所述的图像解码方法,其中,第一MPM列表包括平面模式。
5.根据权利要求2所述的图像解码方法,还包括:
在当前块的帧内预测模式不包括在第一MPM列表和第二MPM列表中的至少一个中的情况下,使用残差帧内预测模式候选列表确定当前块的帧内预测模式,其中,残差帧内预测模式候选列表包括不被包括在第一MPM列表和第二MPM列表中的至少一个中的帧内预测模式。
6.根据权利要求1所述的图像解码方法,其中,在当前块的帧内预测模式被确定为帧间预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
推导当前块的运动信息;
使用当前块的运动信息推导基于历史的合并候选;
将基于历史的合并候选添加到基于历史的合并候选列表;以及
使用基于历史的合并候选列表推导合并候选列表,
其中,合并候选列表用于在当前块之后将被解码的块的帧间预测。
7.根据权利要求6所述的图像解码方法,其中,基于历史的合并候选列表包括使用在当前块之前已经被解码的块的运动信息推导的基于历史的合并候选。
8.根据权利要求7所述的图像解码方法,其中,在当前块之前已经被解码的块和当前块分别属于不同的编码树单元(CTU)的情况下,基于当前块的运动信息推导的基于历史的合并候选不被添加到基于历史的合并候选列表。
9.根据权利要求6所述的图像解码方法,其中,仅在仿射模式或基于子块的时间运动矢量推导模式未应用于当前块的情况下,基于历史的合并候选被添加到基于历史的合并候选列表。
10.根据权利要求6所述的图像解码方法,其中,将基于历史的合并候选添加到基于历史的合并候选列表的步骤包括:
在包括在基于历史的合并候选列表中的候选的数量是预定义值的情况下,删除在基于历史的合并候选列表中包括的候选中的最早包括在基于历史的合并候选列表中的候选;以及
以被放置在最后包括在基于历史的合并候选列表中的候选之后的方式添加基于历史的合并候选。
11.根据权利要求6所述的图像解码方法,其中,使用基于历史的合并候选列表推导合并候选列表的步骤包括:
将包括在基于历史的合并候选列表中的候选添加到合并候选列表。
12.根据权利要求1所述的图像解码方法,其中,在当前块的预测模式被确定为三角形分区模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
将当前块分区为第一子块和第二子块;
产生针对第一子块的第一预测块和针对第二子块的第二预测块;以及
使用第一预测块和第二预测块的加权和来产生针对当前块的预测块。
13.根据权利要求12所述的图像解码方法,其中,产生针对第一子块的第一预测块和针对第二子块的第二预测块的步骤包括:
从比特流获取用于产生第一预测块的第一索引和用于产生第二预测块的第二索引;
使用由第一索引指示的第一运动信息产生第一预测块;以及
使用由第二索引指示的第二运动信息产生第二预测块。
14.根据权利要求13所述的图像解码方法,其中,第一索引和第二索引指示与当前块相邻的邻近块的多条运动信息中的至少一条运动信息。
15.根据权利要求12所述的图像解码方法,其中,为了获得加权和,仅对第一子块和第二子块的边界区域执行基于加权的求和。
16.一种图像编码方法,包括:
确定当前块的预测模式;以及
基于确定的预测模式针对当前块执行预测。
17.根据权利要求16所述的图像编码方法,其中,在当前块的预测模式被确定为帧内预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
推导用于推导当前块的帧内预测模式的第一最可能模式MPM列表和第二MPM列表;
确定当前块的帧内预测模式是否包括在第一MPM列表和第二MPM列表中的至少一个中;以及
在当前块的帧内预测模式包括在第一MPM列表和第二MPM列表中的至少一个中的情况下,使用第一MPM列表和第二MPM列表确定当前块的帧内预测模式。
18.根据权利要求16所述的图像编码方法,其中,在当前块的预测模式被确定为帧间预测模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
推导当前块的运动信息;
使用当前块的运动信息推导基于历史的合并候选;
将基于历史的合并候选添加到基于历史的合并候选列表;以及
使用基于历史的合并候选列表推导合并候选列表,
其中,合并候选列表用于在当前块之后将被编码的块的帧间预测。
19.根据权利要求16所述的图像编码方法,其中,在当前块的预测模式被确定为三角形分区模式的情况下,基于确定的预测模式针对当前块执行预测的步骤包括:
将当前块分区为第一子块和第二子块;
产生针对第一子块的第一预测块和针对第二子块的第二预测块;以及
使用第一预测块和第二预测块的加权和来产生针对当前块的预测块。
20.一种存储比特流的计算机可读记录介质,其中,所述比特流由图像解码设备接收并用于重建当前画面中的当前块,其中:
所述比特流包括关于当前块的预测模式的信息;
关于预测模式的信息用于确定当前块的预测模式;以及
确定的预测模式用于执行针对当前块的预测。
CN201980061565.1A 2018-09-21 2019-09-20 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 Pending CN112740694A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR20180113971 2018-09-21
KR10-2018-0113971 2018-09-21
KR10-2018-0173850 2018-12-31
KR20180173850 2018-12-31
PCT/KR2019/012278 WO2020060317A1 (ko) 2018-09-21 2019-09-20 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Publications (1)

Publication Number Publication Date
CN112740694A true CN112740694A (zh) 2021-04-30

Family

ID=69887651

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980061565.1A Pending CN112740694A (zh) 2018-09-21 2019-09-20 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质

Country Status (4)

Country Link
US (2) US11695926B2 (zh)
KR (1) KR20200034639A (zh)
CN (1) CN112740694A (zh)
WO (1) WO2020060317A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11412211B2 (en) * 2018-05-23 2022-08-09 Kt Corporation Method and apparatus for processing video signal
WO2020005007A1 (ko) * 2018-06-29 2020-01-02 주식회사 케이티 비디오 신호 처리 방법 및 장치
PL3869800T3 (pl) * 2018-11-08 2024-05-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Sposób kodowania/dekodowania sygnału obrazu i urządzenie do tego
CN111526362B (zh) * 2019-02-01 2023-12-29 华为技术有限公司 帧间预测方法和装置
CN114208179A (zh) * 2019-06-24 2022-03-18 Lg电子株式会社 利用色度分量编码块的最大变换大小限制的图像编码/解码方法和装置及发送比特流的方法
WO2022177380A1 (ko) * 2021-02-18 2022-08-25 현대자동차주식회사 인터 예측 기반의 비디오 부호화 및 복호화

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711211B1 (en) 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
US8649436B2 (en) * 2004-08-20 2014-02-11 Sigma Designs Inc. Methods for efficient implementation of skip/direct modes in digital video compression algorithms
WO2012030193A2 (ko) 2010-09-02 2012-03-08 엘지전자 주식회사 영상 부호화 및 복호화 방법과 이를 이용한 장치
WO2013062193A1 (ko) * 2011-10-24 2013-05-02 (주)인터앱 영상 복호화 방법 및 장치
US9681128B1 (en) * 2013-01-31 2017-06-13 Google Inc. Adaptive pre-transform scanning patterns for video and image compression
CN107113425A (zh) * 2014-11-06 2017-08-29 三星电子株式会社 视频编码方法和设备以及视频解码方法和设备
CN113873239A (zh) * 2016-06-24 2021-12-31 株式会社Kt 用于处理视频信号的方法和设备
CN110199523B (zh) * 2017-01-13 2023-06-13 Vid拓展公司 用于帧内平面编码的预测方法
CN116170583A (zh) * 2017-01-16 2023-05-26 世宗大学校产学协力团 影像编码/解码方法
CN117255196A (zh) * 2017-03-22 2023-12-19 韩国电子通信研究院 基于块形式的预测方法和装置

Also Published As

Publication number Publication date
US20230308644A1 (en) 2023-09-28
KR20200034639A (ko) 2020-03-31
US20210352280A1 (en) 2021-11-11
WO2020060317A1 (ko) 2020-03-26
US11695926B2 (en) 2023-07-04

Similar Documents

Publication Publication Date Title
CN111279695B (zh) 用于基于非对称子块的图像编码/解码的方法及装置
CN112740685B (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN112740697B (zh) 图像编码/解码方法和装置及存储比特流的记录介质
CN112369021A (zh) 用于吞吐量增强的图像编码/解码方法和设备以及存储比特流的记录介质
CN116886929A (zh) 对图像编码/解码的方法和设备及存储比特流的记录介质
CN112740680A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
US11695926B2 (en) Method and apparatus for encoding/decoding image, and recording medium for storing bitstream
CN112771862A (zh) 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112673629A (zh) 视频编码/解码方法和装置以及用于存储比特流的记录介质
CN113574875A (zh) 基于帧内块复制的编/解码方法和装置及比特流存储介质
CN112740671A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112438048A (zh) 用于对图像进行编码/解码的方法和设备以及存储比特流的记录介质
CN114788286A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113261286A (zh) 用于推导帧内预测模式的方法和设备
CN114731409A (zh) 图像编码/解码方法和装置、以及存储比特流的记录介质
CN113906740A (zh) 帧间预测信息编码/解码方法和装置
CN114342372A (zh) 帧内预测模式、以及熵编解码方法和装置
CN113940077A (zh) 用于视频编码/解码的虚拟边界信令方法和设备
CN113196758A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113574868A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113826393A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN113228643A (zh) 图像编码/解码方法和设备以及用于存储比特流的记录介质
CN113228645A (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN113228639A (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN113228681A (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