CN116708785A - 图像编码/解码方法以及用于该方法的记录介质 - Google Patents

图像编码/解码方法以及用于该方法的记录介质 Download PDF

Info

Publication number
CN116708785A
CN116708785A CN202310763141.8A CN202310763141A CN116708785A CN 116708785 A CN116708785 A CN 116708785A CN 202310763141 A CN202310763141 A CN 202310763141A CN 116708785 A CN116708785 A CN 116708785A
Authority
CN
China
Prior art keywords
block
motion vector
information
prediction
current 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
CN202310763141.8A
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 CN116708785A publication Critical patent/CN116708785A/zh
Pending legal-status Critical Current

Links

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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • 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/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/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/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/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/174Methods 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 slice, e.g. a line of blocks or a group of 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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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
    • 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/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • 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/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

Abstract

本发明涉及一种图像编码/解码方法以及用于该方法的记录介质。本发明的图像解码方法可包括以下步骤:获取区域信息;基于区域信息确定共享区域;当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块。

Description

图像编码/解码方法以及用于该方法的记录介质
本申请是申请日为2017年7月11日、申请号为201780040562.0、发明名称为“图像编码/解码方法以及用于该方法的记录介质”的专利申请的分案申请。
技术领域
本发明涉及用于对视频进行编码/解码的方法和设备。更具体地,本发明涉及使用粒度信息对视频进行编码和解码的方法和设备。
背景技术
近来,在各种应用领域中对高分辨率且高质量图像(诸如高清(HD)图像和超高清(UHD)图像)的需求已经增加。然而,与传统的图像数据相比,更高分辨率且更高质量的图像数据的数据量有所增加。因此,当通过使用诸如传统有线和无线宽带网络的介质发送图像数据时,或者当通过使用传统存储介质存储图像数据时,发送和存储的成本增加。为了解决随着图像数据的分辨率和质量的提高而出现的这些问题,需要高效的图像编码/解码技术以获得更高分辨率且更高质量的图像。
图像压缩技术包括各种技术,包括:从当前画面的先前画面或后续画面预测包括在当前画面中的像素值的帧间预测技术;通过使用当前画面中的像素信息来预测当前画面中包括的像素值的帧内预测技术;用于压缩残差信号能量的变换和量化技术;将短码分配给具有高出现频率的值并将长码分配给具有低出现频率的值的熵编码技术等。图像数据可通过使用这样的图像压缩技术被有效地压缩,并且可被发送或存储。
在传统的视频编码和解码方法中,由于必须针对所有编码单元(CU)或针对所有预测单元(PU)对关于运动补偿的信息进行编码和解码,因此存在对提高编码效率的限制。
另外,在传统的视频编码和解码方法中,关于运动补偿的信息可在所有CU或所有PU中变化,因此增大了在编码器和解码器中执行帧间预测或运动补偿所需的存储器带宽。
发明内容
技术问题
本发明可提供一种用于对被共同应用于特定区域的关于运动补偿的信息进行编码/解码以提高图像的编码/解码效率的方法和设备。
本发明可提供一种用于对通常被应用于特定区域的关于运动补偿的信息进行熵编码以减小在视频编码器和解码器中执行帧间预测或运动补偿所需的存储器带宽的方法和设备。
技术方案
根据本发明的一种视频解码方法,所述视频解码方法包括:获取粒度信息;基于粒度信息确定共享区域;当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块。
在所述视频解码方法中,粒度信息可以是表示预定块尺寸或预定块深度的信息。
在所述视频解码方法中,确定共享区域的步骤可包括:将块尺寸小于由粒度信息表示的所述预定块尺寸的至少一个块的区域确定为共享区域。
在所述视频解码方法中,确定共享区域的步骤可包括:将块深度深于由粒度信息表示的所述预定块深度的至少一个块的区域确定为共享区域。
在所述视频解码方法中,共享区域的运动信息可以是被共同应用于与共享区域相应的至少一个块的运动信息。
在所述视频解码方法中,共享区域的运动信息可基于预定义的值被确定。
在所述视频解码方法中,共享区域的运动信息可以以视频参数集、序列参数集、画面参数集、自适应参数集、条带头、编码树单元(CTU)和编码单元(CU)中的任意一个级别被熵解码。
在所述视频解码方法中,共享区域的运动信息可包括多个运动矢量候选列表和关于加权和的信息,并且当前块的预测块可通过将关于加权和的信息应用于基于所述多个运动矢量候选列表产生的多个预测块而产生。
根据本发明的一种视频编码方法,所述视频编码方法包括:确定共享区域;当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块;对确定的共享区域的粒度信息进行编码。
在所述视频编码方法中,粒度信息可以是表示预定块尺寸或预定块深度的信息。
在所述视频编码方法中,共享区域的运动信息可以是被共同应用于与共享区域相应的至少一个块的运动信息。
在所述视频编码方法中,共享区域的运动信息可基于预定义的值被确定。
在所述视频编码方法中,共享区域的运动信息可以以视频参数集、序列参数集、画面参数集、自适应参数集、条带头、编码树单元(CTU)和编码单元(CU)中的任意一个级别被编码。
在所述视频编码方法中,共享区域的运动信息可包括多个运动矢量候选列表和关于加权和的信息,并且当前块的预测块可通过将关于加权和的信息应用于基于所述多个运动矢量候选列表产生的多个预测块而产生。
根据本发明的一种视频解码设备,所述视频解码设备包括:熵解码单元,获取粒度信息;帧间预测单元,基于粒度信息确定共享区域,并且当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块。
根据本发明的一种视频编码设备,所述视频编码设备包括:帧间预测单元,确定共享区域,并且当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块;熵编码单元,对确定的共享区域的粒度信息进行编码。
根据本发明的一种存储通过视频编码方法产生的比特流的记录介质,其中,所述视频编码方法包括:确定共享区域;当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块;对确定的共享区域的粒度信息进行编码。
有益效果
在本发明中,提供了一种用于对通常被应用于特定区域的关于运动补偿的信息进行编码/解码以提高画面的编码/解码效率的方法和设备。
在本发明中,提供了一种用于对通常被应用于特定区域的关于运动补偿的信息进行熵编码以减少在视频编码器和解码器中执行帧间预测或运动补偿所需的存储器带宽的方法和设备。
附图说明
图1是示出根据本发明的实施例的编码设备的配置的框图。
图2是示出根据本发明的实施例的解码设备的配置的框图。
图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。
图4是示出可包括在编码单元(CU)中的预测单元(PU)的形式的示图。
图5是示出可包括在编码单元(CU)中的变换单元(TU)的形式的示图。
图6是用于解释帧内预测的处理的实施例的示图。
图7是用于解释帧间预测的处理的实施例的示图。
图8是用于解释根据帧内预测模式的变换集的示图。
图9是用于解释变换处理的示图。
图10是用于解释对量化的变换系数进行扫描的示图。
图11是用于解释块分区的示图。
图12是示出根据本发明的视频编码方法的流程图。
图13是示出根据本发明的视频解码方法的流程图。
图14是示出推导当前块的空间运动矢量候选的示例的示图。
图15是示出根据编码树单元(CTU)中的粒度信息推导并共享空间运动矢量的示例的示图。
图16是示出推导当前块的时间运动矢量候选的示例的示图。
图17示出对相应位置块的运动矢量进行缩放以推导当前块的时间运动矢量候选的示例。
图18是示出产生运动矢量候选列表的示例的示图。
图19是示出将具有预定值的运动矢量添加到运动矢量候选列表的示例的示图。
图20是示出从运动矢量候选列表中去除运动矢量候选的示例的示图。
图21是示出运动矢量候选列表的实施例的示图。
图22是示出根据编码树单元(CTU)中的粒度信息共享运动矢量候选列表的实施例的示图。
图23是示出从运动矢量候选列表推导当前块的预测运动矢量候选的示例的示图。
图24a和图24b是示出关于运动补偿的信息的语法的示例的示图。
图25是示出粒度信息的语法的示例的示图。
图26和图27是示出由粒度信息指示的区域的示图。
图28是示出根据本发明的视频解码方法的示图。
图29是示出根据本发明的视频编码方法的示图。
具体实施方式
可对本发明进行各种修改,并且存在本发明的各种实施例,其中,各种实施例的示例现在将参考附图被提供并被详细描述。然而,尽管示例性实施例可被解释为包括本发明的技术构思和技术范围中的所有修改、等同物或替代物,但是本发明不限于此。在各个方面,类似的附图标记指代相同或相似的功能。在附图中,为了清楚,可夸大元件的形状和尺寸。在本发明的以下详细描述中,参考了附图,其中,附图通过图示的方式示出了可以实践本发明的特定实施例。足够详细地描述了这些实施例,以使本领域技术人员能够实现本公开。应该理解的是,本公开的各种实施例虽然不同,但不一定是相互排斥的。例如,在不脱离本公开的精神和范围的情况下,结合一个实施例在此描述的特定特征、结构和特性可在其他实施例中实现。另外,应当理解,在不脱离本公开的精神和范围的情况下,可修改每个公开的实施例内的各个元件的位置或布置。因此,以下详细描述不应被视为具有限制意义,并且本公开的范围仅由所附权利要求(在合适的解释的情况下,还连同权利要求所要求的等同物的全部范围)来限定。
说明书中使用的术语“第一”、“第二”等可用于描述各种组件,但是组件不应被解释为限于这些术语。这些术语仅用于将一个组件与其他组件区分开。例如,在不脱离本发明的范围的情况下,“第一”组件可被命名为“第二”组件,并且“第二”组件也可被类似地命名为“第一”组件。术语“和/或”包括多个项目的组合或多个项目中的任何一个项目。
应当理解,在本说明书中,当元件被简单地称为“连接到”或“耦接到”另一元件而不是“直接连接到”或“直接耦接到”的另一元件时,它可“直接连接到”或“直接耦接到”另一元件,或者在使元件与另一元件之间介入有其他元件的情况下连接到或耦接到另一元件。相反,应该理解,当一个元件被称为“直接耦接”或“直接连接”到另一个元件时,不存在中间元件。
此外,本发明的实施例中所示的构成部分被独立地示出,以表示彼此不同的特征功能。因此,并不意味着每个构成部分都是以分离的硬件或软件的构成单元而构成的。换言之,为了方便,每个构成部分包括列举的构成部分中的每个。因此,每个构成部分中的至少两个构成部分可以组合以形成一个构成部分,或者一个构成部分可被划分为多个构成部分以执行每个功能。在没有脱离本发明的实质的情况下,组合每个构成部分的实施例和划分一个构成部分的实施例也包括在本发明的范围内。
本说明书中使用的术语仅用于描述特定实施例,并不意图限制本发明。除非在上下文中具有明显不同的含义,否则以单数形式使用的表述包括复数表述。在本说明书中,应理解,诸如“包括”、“具有”等的术语意图表示存在说明书中公开的特征、数字、步骤、动作、元件、部件或其组合,而并不意图排除可能存在或可能添加一个或更多个其他特征、数字、步骤、动作、元素、部件或其组合的可能性。换言之,当特定元素被称为被“包括”时,除了相应元素之外的元素并不被排除,而是附加元素可被包括在本发明的实施例或本发明的范围内。
另外,一些构成部分可能不是执行本发明基本功能的必不可少的构成部分,而是仅改善其性能的选择性构成部分。可通过仅包括用于实现本发明的本质的必不可少的构成部分而不包括用于改善性能的构成部分来实现本发明。仅包括必不可少的构成部分而不包括仅用于提高性能的选择性构成部分的结构也包括在本发明的范围内。
在下文中,将参考附图详细描述本发明的实施例。在描述本发明的示例性实施例时,将不详细描述公知的功能或结构,因为它们可能不必要地模糊对本发明的理解。附图中相同的构成元件由相同的附图标号表示,并且对相同元件的重复描述将被省略。
另外,在下文中,图像可指配置视频的画面,或者可指视频本身。例如,“图像的编码或解码、或者图像的编码和解码两者”可指“视频的编码或解码、或者视频的编码和解码两者”,并且可指“视频的图像中的一个图像的编码或解码、或者所述一个图像的编码和解码两者”。这里,画面和图像可具有相同的含义。
术语描述
编码器:可指执行编码的设备。
解码器:可指执行解码的设备。
解析:可指通过执行熵解码来确定语法元素的值,或者可指熵解码本身。
块:可指MxN矩阵的样本。这里,M和N是正整数,并且块可指二维形式的样本矩阵。
样本:是块的基本单元,并且可指示根据比特深度(Bd)而范围为从0到2Bd-1的值。在本发明中,样本可指像素。
单元:可指图像的编码和解码的单元。在对图像进行编码和解码时,单元可以是通过对一个图像进行分区而产生的区域。另外,当在编码或解码期间将一个图像分区为子划分单元时,单元可指子划分单元。在对图像进行编码和解码时,可执行针对每个单元的预定处理。可将一个单元分区为尺寸小于该单元的尺寸的子单元。根据功能,单元可指块、宏块、编码树单元、编码树块、编码单元、编码块、预测单元、预测块、变换单元、变换块等。另外,为了将单元与块相区分,单元可包括亮度分量块、亮度分量块的色度分量块、以及每个颜色分量块的语法元素。单元可具有各种尺寸和形状,并且具体地,单元的形状可以是二维几何图形,例如矩形、正方形、梯形、三角形、五边形等。另外,单元信息可包括指示编码单元、预测单元、变换单元等的单元类型、单元尺寸、单元深度、单元的编码和解码顺序等中的至少一个。
重建的邻近单元:可指先前在空间上/时间上编码或解码的重建的单元,并且重建的单元与编码/解码目标单元相邻。这里,重建的邻近单元可指重建的邻近块。
邻近块:可指与编码/解码目标块相邻的块。与编码/解码目标块相邻的块可指具有与编码/解码目标块接触的边界的块。邻近块可表示位于编码/解码目标块的相邻顶点处的块。邻近块可指重建的邻近块。
单元深度:可指单元的被分区程度。在树结构中,根节点可以是最高节点,并且叶节点可以是最低节点。
符号:可指编码/解码目标单元的语法元素、编码参数、变换系数的值等。
参数集:可指比特流的结构中的头信息。参数集可包括视频参数集、序列参数集、画面参数集或自适应参数集中的至少一个。另外,参数集可指条带头信息和并行块头信息等。
比特流:可指包括编码的图像信息的比特串。
预测单元:可指在执行帧间预测或帧内预测以及对预测的补偿时的基本单元。可以将一个预测单元分区为多个分区。在这种情况下,多个分区中的每个分区可以是在执行预测和补偿时的基本单元,并且从预测单元分区出的每个分区可以是预测单元。另外,可以将一个预测单元分区为多个小预测单元。预测单元可具有各种尺寸和形状,具体地,预测单元的形状可以是二维几何图形,诸如,矩形、正方形、梯形、三角形、五边形等。
预测单元分区:可指分区出的预测单元的形状。
参考画面列表:可指包括用于帧间预测或运动补偿的至少一个参考画面的列表。参考画面列表的类型可以是列表组合(LC)、列表0(L0)、列表1(L1)、列表2(L2)、列表3(L3)等。至少一个参考画面列表可用于帧间预测。
帧间预测指示符:可指以下项中的一项:在帧间预测的情况下编码/解码目标块的帧间预测方向(单向预测、双向预测等)、用于通过编码/解码目标块产生预测块的参考画面的数量、以及用于通过编码/解码目标块执行帧间预测或运动补偿的参考块的数量。
参考画面索引:可指参考画面列表中的特定参考画面的索引。
参考画面:可指特定单元为了帧间预测或运动补偿所参考的画面。参考图像可被称为参考画面。
运动矢量:是用于帧间预测或运动补偿的二维矢量,并且可指编码/解码目标画面与参考画面之间的偏移。例如,(mvX,mvY)可指示运动矢量,mvX可指示水平分量,mvY可指示垂直分量。
运动矢量候选:可指在预测运动矢量时变为预测候选的单元,或者可指该单元的运动矢量。
运动矢量候选列表:可指通过使用运动矢量候选而配置的列表。
运动矢量候选索引:可表示指示运动矢量候选列表中的运动矢量候选的指示符。运动矢量候选索引可被称为运动矢量预测因子的索引。
运动信息:可指运动矢量、参考画面索引、帧间预测指示符、以及包括参考画面列表信息、参考画面、运动矢量候选、运动矢量候选索引等中的至少一项的信息。
合并候选列表:可指通过使用合并候选配置的列表。
合并候选:可包括空间合并候选、时间合并候选、组合合并候选、组合双向预测合并候选、零合并候选等。合并候选可包括运动信息,诸如,预测类型信息、用于每个列表的参考画面索引、运动矢量等。
合并索引:可表示指示合并候选列表中的合并候选的信息。另外,合并索引可指示在空间上/时间上与当前块相邻的重建块中的推导合并候选的块。另外,合并索引可指示合并候选的多条运动信息中的至少一条。
变换单元:可指在对残差信号执行与变换、逆变换、量化、反量化和变换系数编码/解码类似的编码/解码时的基本单元。一个变换单元可被分区为多个小变换单元。变换单元可具有各种尺寸和形状。具体地,变换单元的形状可以是二维几何图形,诸如,矩形、正方形、梯形、三角形、五边形等。
缩放:可指将因子乘以变换系数等级从而可产生变换系数的处理。缩放也可被称为反量化。
量化参数:可指在量化和反量化期间在对变换系数等级进行缩放时使用的值。这里,量化参数可以是被映射到量化的步长大小的值。
增量量化参数:可指预测出的量化参数与编码/解码目标单元的量化参数之间的差值。
扫描:可指对块或矩阵内的系数顺序进行排序的方法。例如,将二维矩阵排序为一维矩阵的操作可被称为扫描,并且将一维矩阵排序为二维矩阵的操作可被称为扫描或逆扫描。
变换系数:可指在执行变换之后产生的系数值。在本发明中,量化的变换系数等级可被称为变换系数,其中,量化的变换系数等级是被应用了量化的变换系数。
非零变换系数:可指值不是0的变换系数,或者可指值不是0的变换系数等级。
量化矩阵:可指在量化和反量化中被使用以便增强图像的主体质量(subjectquality)或对象质量(object quality)的矩阵。量化矩阵可被称为缩放列表。
量化矩阵系数:可指量化矩阵的每个元素。量化矩阵系数可被称为矩阵系数。
默认矩阵:可指在编码器和解码器中预先定义的预定量化矩阵。
非默认矩阵:可指由用户发送/接收而不是在编码器和解码器中预先定义的量化矩阵。
编码树单元:可包括一个亮度分量(Y)编码树单元和相关的两个色度分量(Cb,Cr)编码树单元。可通过使用诸如四叉树、二叉树等的至少一种分区方法来对每个编码树单元进行分区,以配置诸如编码单元、预测单元、变换单元等的子单元。编码树单元被用作用于指示像素块的术语,其中,像素块是图像的解码/编码处理(如输入图像的分区)中的处理单元。
编码树块:可被用作用于指示Y编码树单元、Cb编码树单元和Cr编码树单元中的一个的术语。
图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中。
运动补偿单元112可通过使用运动矢量执行运动补偿来产生预测块。这里,运动矢量可以是用于帧间预测的二维矢量。另外,运动矢量可指示当前画面与参考画面之间的偏移。这里,帧间预测可以意为帧间帧预测。
当运动矢量的值不是整数时,运动预测单元111和运动补偿单元112可通过将插值滤波器应用于参考画面中的部分区域来产生预测块。为了执行帧间预测或运动补偿,基于编码单元,可确定编码单元中的预测单元的运动预测和补偿方法使用跳过模式、合并模式、AMVP模式和当前画面参考模式之中的哪些方法。可根据每个模式执行帧间预测或运动补偿。这里,当前画面参考模式可指使用具有编码目标块的当前画面的预先重建的区域的预测模式。为了指定预先重建的区域,可定义针对当前画面参考模式的运动矢量。可通过使用编码目标块的参考画面索引来对编码目标块是否以当前画面参考模式被编码进行编码。
减法器125可通过使用输入块和预测块之间的残差来产生残差块。残差块可被称为残差信号。
变换单元130可通过对残差块进行变换来产生变换系数,并且可输出变换系数。这里,变换系数可以是通过对残差块进行变换而产生的系数值。在变换跳过模式下,变换单元130可跳过对残差块的变换。
可通过将量化应用于变换系数来产生量化的变换系数等级。在下文中,在本发明的实施例中,量化的变换系数等级可被称为变换系数。
量化单元140可通过根据量化参数对变换系数进行量化来产生量化的变换系数等级,并且可输出量化的变换系数等级。这里,量化单元140可通过使用量化矩阵来对变换系数进行量化。
熵编码单元150可通过根据概率分布对由量化单元140计算出的值或对在编码处理中计算出的编码参数值等执行熵编码来产生比特流,并且可输出产生的比特流。熵编码单元150可对用于对图像进行解码的信息执行熵编码,并对图像的像素的信息执行熵编码。例如,用于对图像进行解码的信息可包括语法元素等。
当熵编码被应用时,通过将少量比特分配给具有高出现概率的符号并将大量比特分配给具有低出现概率的符号来表示符号,从而减小了编码目标符号的比特流的大小。因此,可通过熵编码来提高图像编码的压缩性能。对于熵编码,熵编码单元150可使用诸如指数哥伦布、上下文自适应可变长度编码(CAVLC)和上下文自适应二进制算术编码(CABAC)的编码方法。例如,熵编码单元150可通过使用可变长度编码/码(VLC)表来执行熵编码。另外,熵编码单元150可推导目标符号的二值化方法和目标符号/二进制位的概率模型,并且随后可通过使用推导出的二值化方法或推导出的概率模型来执行算术编码。
为了对变换系数等级进行编码,熵编码单元150可通过使用变换系数扫描方法将二维块形式系数改变为一维矢量形式。例如,可通过利用右上扫描对块的系数进行扫描,将二维形式系数改变为一维矢量形式。根据变换单元的尺寸和帧内预测模式,可使用垂直方向扫描来在列方向上对二维块形式系数进行扫描,并且可使用水平方向扫描来在行方向上对二维块形式系数进行扫描,而是不使用右上扫描。也就是说,可根据变换单元的尺寸和帧内预测模式确定右上扫描、垂直方向扫描和水平方向扫描中的哪种扫描方法将被使用。
编码参数可包括由编码器编码并被发送到解码器的信息(诸如,语法元素),并且可包括可以在编码或解码过程中推导出的信息。编码参数可指对图像进行编码或解码所必需的信息。例如,编码参数可包括以下项中的至少一个值或组合形式:块尺寸、块深度、块分区信息、单元尺寸、单元深度、单元分区信息、四叉树形式的分区标志、二叉树形式的分区标志、二叉树形式的分区方向、帧内预测模式、帧内预测方向、参考样本滤波方法、预测块边界滤波方法、滤波器抽头、滤波器系数、帧间预测模式、运动信息、运动矢量、参考画面索引、帧间预测方向、帧间预测指示符、参考画面列表、运动矢量预测因子、运动矢量候选列表、关于是否使用运动合并模式的信息、运动合并候选、运动合并候选列表、关于是否使用跳过模式的信息、插值滤波器类型、运动矢量大小、运动矢量表示的准确度、变换类型、变换尺寸、关于是否使用附加(二次)变换的信息、关于是否存在残差信号的信息、编码块模式、编码块标志、量化参数、量化矩阵、环内滤波器信息、关于是否在环内应用滤波器的信息、环内滤波器系数、二值化/逆二值化方法、上下文模型、上下文二进制位、旁路二进制位、变换系数、变换系数等级、变换系数等级扫描方法、图像显示/输出顺序、条带标识信息、条带类型、条带分区信息、并行块标识信息、并行块类型、并行块分区信息、画面类型、比特深度、以及亮度信号或色度信号的信息。
残差信号可指原始信号与预测信号之间的差。或者,残差信号可以是通过对原始信号与预测信号之间的差进行变换而产生的信号。或者,残差信号可以是通过对原始信号与预测信号之间的差进行变换和量化而产生的信号。残差块可以是块单元的残差信号。
当编码设备100通过使用帧间预测执行编码时,编码的当前画面可用作将在之后被处理的另一图像的参考画面。因此,编码设备100可对编码的当前画面进行解码,并且可将解码的图像存储为参考画面。为了执行解码,可对编码的当前画面执行反量化和逆变换。
量化系数可由反量化单元160反量化,并且可由逆变换单元170进行逆变换。可由加法器175将反量化和逆变换后的系数与预测块相加,由此可产生重建块。
重建块可通过滤波器单元180。滤波器单元180可以将去块滤波器、样本自适应偏移(SAO)和自适应环路滤波器(ALF)中的至少一个应用于重建块或重建画面。滤波器单元180可被称为环内滤波器。
去块滤波器可去除在块之间的边界处发生的块失真。为了确定是否操作去块滤波器,可基于块中的若干行或列中包括的像素来确定是否将去块滤波器应用于当前块。当将去块滤波器应用于块时,可根据所需的去块滤波强度应用强滤波器或弱滤波器。另外,在应用去块滤波器时,可并行地处理水平方向滤波和垂直方向滤波。
样本自适应偏移可将最佳偏移值与像素值相加,以便补偿编码误差。样本自适应偏移可针对每个像素对去块滤波后的图像与原始图像之间的偏移进行校正。为了对特定图像执行偏移校正,可使用考虑每个像素的边缘信息来应用偏移的方法,或者使用以下方法:将图像的像素分区为预定数量的区域,确定将被执行偏移校正的区域,并将偏移校正应用于确定的区域。
自适应环路滤波器可基于通过对重建画面和原始画面进行比较而获得的值来执行滤波。可将图像的像素分区为预定组,确定应用于所述预定组中的每个组的一个滤波器,并且可在所述预定组中的每个组执行不同的滤波。可以针对每个编码单元(CU)发送关于自适应环路滤波器是否被应用于亮度信号的信息。应用于每个块的自适应环路滤波器的形状和滤波器系数可以不同。另外,可应用具有相同形式(固定形式)的自适应环路滤波器,而不管目标块的特性如何。
通过滤波器单元180的重建块可存储在参考画面缓冲器190中。
图2是示出根据本发明的实施例的解码设备的配置的框图。
解码设备200可以是视频解码设备或图像解码设备。
参考图2,解码设备200可包括熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、运动补偿单元250、加法器255、滤波器单元260和参考画面缓冲器270。
解码设备200可接收从编码设备100输出的比特流。解码设备200可在帧内模式或帧间模式下对比特流进行解码。另外,解码设备200可通过执行解码来产生重建画面,并且可以输出重建画面。
当在解码中使用的预测模式是帧内模式时,可将切换器切换到帧内。当在解码中使用的预测模式是帧间模式时,可将切换器切换到帧间。
解码设备200可从输入的比特流获得重建的残差块,并且可产生预测块。当获得了重建的残差块以及预测块时,解码设备200可通过将重建的残差块和预测块相加来产生作为解码目标块的重建块。解码目标块可被称为当前块。
熵解码单元210可通过根据概率分布对比特流执行熵解码来产生符号。产生的符号可包括具有量化的变换系数等级的符号。这里,熵解码的方法可类似于上述熵编码的方法。例如,熵解码的方法可以是上述熵编码的方法的逆过程。
为了对变换系数等级进行解码,熵解码单元210可执行变换系数扫描,从而可将一维矢量形式系数改变为二维块形式。例如,可通过利用右上扫描对块的系数进行扫描,将一维矢量形式系数改变为二维块形式。根据变换单元的尺寸和帧内预测模式,可使用垂直方向扫描和水平方向扫描,而不使用右上扫描。也就是说,可根据变换单元的尺寸和帧内预测模式确定使用右上扫描、垂直方向扫描和水平方向扫描中的哪种扫描方法。
量化的变换系数等级可由反量化单元220进行反量化,并且可由逆变换单元230进行逆变换。量化的变换系数等级被反量化并且被逆变换以便产生重建的残差块。这里,反量化单元220可将量化矩阵应用于量化的变换系数等级。
当使用帧内模式时,帧内预测单元240可通过执行空间预测来产生预测块,其中,空间预测使用与解码目标块相邻的先前解码的块的像素值。
当使用帧间模式时,运动补偿单元250可通过执行使用存储在参考画面缓冲器270中的运动矢量和参考画面两者的运动补偿来产生预测块。当运动矢量的值不是整数时,运动补偿单元250可通过将插值滤波器应用于参考画面中的部分区域来产生预测块。为了执行运动补偿,基于编码单元,可确定编码单元中的预测单元的运动补偿方法使用跳过模式、合并模式、AMVP模式和当前画面参考模式之中的哪种方法。另外,可根据模式执行运动补偿。这里,当前画面参考模式可指使用具有解码目标块的当前画面内的先前重建的区域的预测模式。先前重建的区域可不与解码目标块相邻。为了指定先前重建的区域,固定矢量可用于当前画面参考模式。另外,指示解码目标块是否是在当前画面参考模式下编码的块的标志或索引可被用信号发送,并且可通过使用解码目标块的参考画面索引而被推导。针对当前画面参考模式的当前画面可存在于解码目标块的参考画面列表内的固定位置(例如,参考画面索引的位置是0或最后位置)。另外,当前画面可以可变地位于参考画面列表内,并且为此,可以用信号发送指示当前画面的位置的参考画面索引。这里,用信号发送标志或索引可指编码器对相应的标志或索引进行熵编码并将其包括在比特流中,并且解码器从比特流对相应的标志或索引进行熵解码。
可由加法器255将重建的残差块与预测块相加。通过将重建的残差块与预测块相加而产生的块可通过滤波器单元260。滤波器单元260可将去块滤波器、样本自适应偏移和自适应环路滤波器中的至少一个应用于重建块或重建画面。滤波器单元260可输出重建画面。重建画面可存储在参考画面缓冲器270中,并且可用于帧间预测。
图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。图3示意性地示出将一个单元分区为多个子单元的实施例。
为了有效地对图像进行分区,可在编码和解码中使用编码单元(CU)。这里,编码单元可指进行编码的单元。该单元可以是1)语法元素和2)包括图像样本的块的组合。例如,“单元的分区”可指“与单元相关的块的分区”。块分区信息可包括关于单元深度的信息。深度信息可指示单元被分区的次数或单元的分区程度、或者上述两者。
参照图3,针对每个最大编码单元(LCU)顺序地对图像300进行分区,并且针对每个LCU确定分区结构。这里,LCU和编码树单元(CTU)具有相同的含义。一个单元可具有基于树结构的深度信息,并且可被分层地分区。每个分区出的子单元可具有深度信息。深度信息指示单元被分区的次数或单元的分区程度、或者上述两者,因此,深度信息可包括关于子单元的尺寸的信息。
分区结构可指LCU 310中的编码单元(CU)的分布。CU可以是用于有效地对图像进行编码/解码的单元。可基于一个CU是否将被分区为多个(包括2、4、8、16等的等于或大于2的正整数)来确定分布。分区出的CU的宽度尺寸和高度尺寸可以分别是原始CU的宽度尺寸的一半和原始CU的高度尺寸的一半。或者,根据分区的数量,分区出的CU的宽度尺寸和高度尺寸可分别小于原始CU的宽度尺寸和高度尺寸。分区出的CU可被递归地分区为多个进一步被分区出的CU,其中,在同一分区方法中,进一步被分区出的CU的宽度尺寸和高度尺寸小于分区出的CU的宽度尺寸和高度尺寸。
这里,CU的分区可被递归地执行直到预定深度。深度信息可以是指示CU的尺寸的信息,并且可存储在每个CU中。例如,LCU的深度可以是0,并且最小编码单元(SCU)的深度可以是预定的最大深度。这里,LCU可以是如上所述的具有最大尺寸的编码单元,并且SCU可以是具有最小尺寸的编码单元。
每当LCU 310开始被分区,并且通过分区减小了CU的宽度尺寸和高度尺寸时,CU的深度增加1。在不能被分区的CU的情况下,对于每个深度,CU可具有2N×2N的尺寸。在可被分区的CU的情况下,具有2N×2N尺寸的CU可被分区为多个N×N尺寸的CU。每当深度增加1时,N的大小减半。
例如,当一个编码单元被分区为四个子编码单元时,四个子编码单元中的一个子编码单元的宽度尺寸和高度尺寸可以分别是原始编码单元的宽度尺寸的一半和高度尺寸的一半。例如,当32×32尺寸的编码单元被分区为四个子编码单元时,四个子编码单元中的每个子编码单元可具有16×16尺寸。当一个编码单元被分区为四个子编码单元时,编码单元可以以四叉树形式被分区。
例如,当一个编码单元被分区为两个子编码单元时,两个子编码单元中的一个子编码单元的宽度尺寸或高度尺寸可以分别是原始编码单元的宽度尺寸的一半或高度尺寸的一半。例如,当32×32尺寸的编码单元被垂直分区为两个子编码单元时,两个子编码单元中的每个子编码单元可具有16×32尺寸。例如,当32×32尺寸的编码单元被水平分区为两个子编码单元时,两个子编码单元中的每个子编码单元可具有32×16尺寸。当一个编码单元被分区为两个子编码单元时,编码单元可以以二叉树形式被分区。
参照图3,具有最小深度0的LCU的尺寸可以是64×64像素,并且具有最大深度3的SCU的尺寸可以是8×8像素。这里,可由深度0来表示具有64×64像素的CU(其为LCU),可由深度1来表示具有32×32像素的CU,可由深度2来表示具有16×16像素的CU,可由深度3来表示具有8×8像素的CU(SCU)。
另外,可通过CU的分区信息来表示关于CU是否将被分区的信息。分区信息可以是1比特信息。分区信息可包括在除了SCU之外的所有CU中。例如,当分区信息的值是0时,可不对CU进行分区,并且当分区信息的值是1时,可对CU进行分区。
图4是示出可包括在编码单元(CU)中的预测单元(PU)的形式的示图。
从LCU分区出的多个CU中的不再被分区的CU可被分区为至少一个预测单元(PU)。该过程也可以称为分区。
PU可以是用于预测的基本单元。可在跳过模式、帧间模式和帧内模式中的任何一个模式下对PU进行编码和解码。PU可根据模式以各种形式被分区。
另外,编码单元可不被分区为多个预测单元,并且编码单元和预测单元具有相同的尺寸。
如图4所示,在跳过模式下,CU可不被分区。在跳过模式下,可支持与没有分区的CU具有相同尺寸的2N×2N模式410。
在帧间模式下,可在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。
可将一个编码单元分区为一个或更多个预测单元。可将一个预测单元分区为一个或更多个子预测单元。
例如,当一个预测单元被分区为四个子预测单元时,四个子预测单元中的一个子预测单元的宽度尺寸和高度尺寸可以是原始预测单元的宽度尺寸的一半和高度尺寸的一半。例如,当32×32尺寸的预测单元被分区为四个子预测单元时,四个子预测单元中的每个子预测单元可具有16×16尺寸。当一个预测单元被分区为四个子预测单元时,可以以四叉树形式对预测单元进行分区。
例如,当一个预测单元被分区为两个子预测单元时,两个子预测单元中的一个子预测单元的宽度尺寸或高度尺寸可以是原始预测单元的宽度尺寸的一半或高度尺寸的一半。例如,当32×32尺寸的预测单元被垂直分区为两个子预测单元时,两个子预测单元中的每个子预测单元可具有16×32尺寸。例如,当32×32尺寸的预测单元被水平分区为两个子预测单元时,两个子预测单元中的每个子预测单元可具有32×16尺寸。当一个预测单元被分区为两个子预测单元时,可以以二叉树形式对预测单元进行分区。
图5是示出可包括在编码单元(CU)中的变换单元(TU)的形式的示图。
变换单元(TU)可以是CU内的用于变换、量化、逆变换和反量化的基本单元。TU可具有正方形形状或矩形形状等。TU可依赖于CU的尺寸或CU的形式、或者CU的尺寸和CU的形式两者被确定。
从LCU分区出的多个CU之中的不再被分区的CU可被分区为至少一个TU。这里,TU的分区结构可以是四叉树结构。例如,如图5所示,可根据四叉树结构将一个CU 510分区一次或更多次。一个CU被分区至少一次的情况可以被称为递归分区。通过进行分区,一个CU 510可由具有各种尺寸的TU形成。或者,可根据对CU进行分区的垂直线的数量或对CU进行分区的水平线的数量、或以上两者,将CU分区为至少一个TU。CU可被分区为彼此对称的TU,或者可被分区为彼此不对称的TU。为了将CU分区为彼此对称的TU,可以用信号发送TU的尺寸/形状的信息,并且可从CU的尺寸/形状的信息推导出TU的尺寸/形状的信息。
另外,编码单元可不被分区为变换单元,并且编码单元和变换单元可具有相同的尺寸。
可将一个编码单元分区为至少一个变换单元,并且可将一个变换单元分区为至少一个子变换单元。
例如,当一个变换单元被分区为四个子变换单元时,四个子变换单元中的一个子变换单元的宽度尺寸和高度尺寸可以分别是原始变换单元的宽度尺寸的一半和高度尺寸的一半。例如,当32×32尺寸的变换单元被分区为四个子变换单元时,四个子变换单元中的每个子变换单元可具有16×16尺寸。当一个变换单元被分区为四个子变换单元时,变换单元可以以四叉树形式被分区。
例如,当一个变换单元被分区为两个子变换单元时,两个子变换单元中的一个子变换单元的宽度尺寸或高度尺寸可以分别是原始变换单元的宽度尺寸的一半或高度尺寸的一半。例如,当32×32尺寸的变换单元被垂直分区为两个子变换单元时,两个子变换单元中的每个子变换单元可具有16×32尺寸。例如,当32×32尺寸的变换单元被水平分区为两个子变换单元时,两个子变换单元中的每个子变换单元可具有32×16尺寸。当一个变换单元被分区为两个子变换单元时,变换单元可以以二叉树形式被分区。
当执行变换时,可以通过使用预定变换方法中的至少一个来对残差块进行变换。例如,预定变换方法可包括离散余弦变换(DCT)、离散正弦变换(DST)、KLT等。可通过使用预测单元的帧间预测模式信息、预测单元的帧内预测模式信息、以及变换块的尺寸/形状中的至少一个来确定将哪种变换方法应用于对残差块进行变换。可用信号发送指示变换方法的信息。
图6是用于解释帧内预测的处理的实施例的示图。
帧内预测模式可以是非方向模式或方向模式。非方向模式可以是DC模式或平面模式。方向模式可以是具有特定方向或角度的预测模式,并且方向模式的数量可以是M,其中,M等于或大于1。方向模式可被指示为模式编号、模式值和模式角度中的至少一个。
帧内预测模式的数量可以是N(其中,N等于或大于1),包括非方向模式和方向模式。
帧内预测模式的数量可根据块的尺寸而不同。例如,当该尺寸为4x4或8x8时,该数量可以是67,当该尺寸为16x16时,该数量可以是35,当该尺寸为32x32时,该数量可以是19,当该尺寸为64x64时,该数量可以是7。
无论块的尺寸如何,帧内预测模式的数量都可被固定为N。例如,无论块的尺寸如何,该数量都可被固定为35或67中的至少一个。
帧内预测模式的数量可根据颜色分量的类型而不同。例如,预测模式的数量可根据颜色分量是亮度信号还是色度信号而不同。
可通过使用重建的邻近块中包括的样本值或编码参数来执行帧内编码和/或解码。
为了在帧内预测中对当前块进行编码/解码,可识别重建的邻近块中包括的样本是否可用作编码/解码目标块的参考样本。当存在不能用作编码/解码目标块的参考样本的样本时,通过使用重建的邻近块中包括的样本中的至少一个,将样本值复制和/或内插到不能用作参考样本的样本中,由此,不能用作参考样本的样本可被用作编码/解码目标块的参考样本。
在帧内预测中,基于帧内预测模式和编码/解码目标块的尺寸中的至少一个,可将滤波器应用于参考样本或预测样本中的至少一个。这里,编码/解码目标块可指当前块,并且可指编码块、预测块和变换块中的至少一个。应用于参考样本或预测样本的滤波器的类型可根据帧内预测模式或当前块的尺寸/形状中的至少一个而不同。滤波器的类型可根据滤波器抽头的数量、滤波器系数值或滤波器强度中的至少一个而不同。
在帧内预测模式中的非方向平面模式下,当产生编码/解码目标块的预测块时,可通过根据样本位置使用当前样本的上方参考样本、当前样本的左侧参考样本、当前块的右上方参考样本、以及当前块的左下方参考样本的加权和来产生预测块中的样本值。
在帧内预测模式中的非方向DC模式下,当产生编码/解码目标块的预测块时,可通过当前块的上方参考样本和当前块的左侧参考样本的平均值产生所述预测块。另外,可通过使用参考样本值对编码/解码块中与参考样本相邻的一个或更多个上方行以及一个或更多个左侧列执行滤波。
在帧内预测模式中的多方向模式(角度模式)的情况下,预测块可通过使用右上和/或左下参考样本来产生,并且方向模式可以具有不同的方向。为了产生预测样本值,可执行实数单元的内插。
为了执行帧内预测方法,可从与当前预测块相邻的邻近预测块的帧内预测模式预测当前预测块的帧内预测模式。在通过使用从邻近帧内预测模式预测出的模式信息预测当前预测块的帧内预测模式的情况下,当当前预测块和邻近预测块具有相同的帧内预测模式时,可通过使用预定标志信息发送以下信息:当前预测块和邻近预测块具有相同的帧内预测模式。当当前预测块的帧内预测模式与邻近预测块的帧内预测模式不同时,可通过执行熵编码来对编码/解码目标块的帧内预测模式信息进行编码。
图7是用于解释帧间预测的处理的实施例的示图。
图7中所示的四边形形状可指示图像(或画面)。另外,图7的箭头可以指示预测方向。即,可根据预测方向对图像进行编码或解码、或者编码和解码两者。根据编码类型,每个图像可被分类为I画面(帧内画面)、P画面(单向预测画面)、B画面(双向预测画面)等。可根据每个画面的编码类型对每个画面进行编码和解码。
当作为编码目标的图像是I画面时,可在无需帧间预测的情况下对图像本身进行帧内编码。当作为编码目标的图像是P画面时,可通过使用仅在正向方向的参考画面进行帧间预测或运动补偿来对图像进行编码。当作为编码目标的图像是B画面时,可通过使用在正向方向和反向方向两者上的参考画面进行帧间预测或运动补偿来对图像进行编码。可选地,可通过使用在正向方向和反向方向中的一个方向上的参考画面进行帧间预测或运动补偿来对图像进行编码。这里,当使用帧间预测模式时,编码器可执行帧间预测或运动补偿,并且解码器可响应于编码器而执行运动补偿。通过使用参考画面被编码或解码、或者被编码和解码两者的P画面和B画面的图像可被视为用于帧间预测的图像。
在下文中,将详细描述根据实施例的帧间预测。
可通过使用参考画面和运动信息来执行帧间预测或运动补偿。另外,帧间预测可使用上述跳过模式。
参考画面可以是当前画面的先前画面和后续画面中的至少一个。这里,帧间预测可根据参考画面来预测当前画面的块。这里,参考画面可指在对块进行预测时使用的图像。这里,可通过使用指示参考画面的参考画面索引(refIdx)、运动矢量等来指定参考画面内的区域。
帧间预测可选择参考画面和参考画面内的与当前块有关的参考块。可通过使用选择的参考块来产生当前块的预测块。当前块可以是当前画面的块中的作为当前编码或解码目标的块。
可由编码设备100和解码设备200从帧间预测的处理推导出运动信息。此外,推导出的运动信息可用于执行帧间预测。这里,编码设备100和解码设备200可通过使用重建的邻近块的运动信息或同位块(col块)的运动信息、或者以上两者来提高编码效率或解码效率、或者编码效率和解码效率两者。col块可以是先前重建的同位画面(col画面)内的与编码/解码目标块的空间位置有关的块。重建的邻近块可以是当前画面内的块、以及先前通过编码或解码或者编码和解码两者重建的块。另外,重建块可以是与编码/解码目标块相邻的块、或位于编码/解码目标块的外角处的块、或者以上两者。这里,位于编码/解码目标块的外角处的块可以是与水平相邻于编码/解码目标块的邻近块垂直相邻的块。可选地,位于编码/解码目标块的外角处的块可以是与垂直相邻于编码/解码目标块的邻近块水平相邻的块。
编码设备100和解码设备200可分别确定col画面内的存在于空间上与编码/解码目标块有关的位置处的块,并且可基于确定的块来确定预定义的相对位置。所述预定义的相对位置可以是存在于空间上与编码/解码目标块相关的位置处的块的内部位置或外部位置、或者内部位置和外部位置两者。另外,编码设备100和解码设备200可分别基于确定的所述预定义的相对位置推导col块。这里,col画面可以是包括在参考画面列表中的至少一个参考画面中的一个画面。
推导运动信息的方法可根据编码/解码目标块的预测模式而不同。例如,应用于帧间预测的预测模式可包括高级运动矢量预测(AMVP)、合并模式等。这里,合并模式可被称为运动合并模式。
例如,当AMVP被应用为预测模式时,编码设备100和解码设备200可通过使用重建的邻近块的运动矢量或col块的运动矢量、或者以上两者来分别产生运动矢量候选列表。重建的邻近块的运动矢量或col块的运动矢量、或者以上两者可用作运动矢量候选。这里,col块的运动矢量可被称为时间运动矢量候选,重建的邻近块的运动矢量可被称为空间运动矢量候选。
编码设备100可产生比特流,并且比特流可包括运动矢量候选索引。也就是说,编码设备100可通过对运动矢量候选索引进行熵编码来产生比特流。运动矢量候选索引可指示从包括在运动矢量候选列表中的运动矢量候选中选择的最佳运动矢量候选。运动矢量候选索引可通过比特流被从编码设备100发送到解码设备200。
解码设备200可从比特流对运动矢量候选索引进行熵解码,并且可通过使用熵解码出的运动矢量候选索引来在运动矢量候选列表中包括的运动矢量候选中选择解码目标块的运动矢量候选。
编码设备100可计算解码目标块的运动矢量与运动矢量候选之间的运动矢量差(MVD),并且可对MVD进行熵编码。比特流可包括熵编码后的MVD。MVD可通过比特流被从编码设备100发送到解码设备200。这里,解码设备200可从比特流对接收的MVD进行熵解码。解码设备200可通过解码出的MVD和运动矢量候选的和来推导出解码目标块的运动矢量。
比特流可包括指示参考画面等的参考画面索引,并且参考画面索引可被熵编码并通过比特流被从编码设备100发送到解码设备200。解码设备200可通过使用邻近块的运动信息来预测解码目标块的运动矢量,并且可通过使用预测出的运动矢量和运动矢量差来推导解码目标块的运动矢量。解码设备200可基于推导出的运动矢量和参考画面索引信息来产生解码目标块的预测块。
作为推导运动信息的另一种方法,合并模式被使用。合并模式可指多个块的运动的合并。合并模式可指将一个块的运动信息应用于另一块。当合并模式被应用时,编码设备100和解码设备200可以通过使用重建的邻近块的运动信息或col块的运动信息、或者以上两者来分别产生合并候选列表。运动信息可包括以下项中的至少一个:1)运动矢量、2)参考画面索引、以及3)帧间预测指示符。预测指示符可指示单向(L0预测、L1预测)或双向。
这里,合并模式可应用于每个CU或每个PU。当在每个CU或每个PU执行合并模式时,编码设备100可通过对预定义信息进行熵解码来产生比特流,并且可将比特流发送到解码设备200。比特流可包括预定义信息。预定义信息可包括:1)合并标志,其中,合并标志是指示是否针对每个块分区执行合并模式的信息;2)合并索引,其中,合并索引是与编码目标块相邻的邻近块之中的哪个块被合并的信息。例如,与编码目标块相邻的邻近块可包括编码目标块的左邻近块、编码目标块的上邻近块、编码目标块的时间上的邻近块等。
合并候选列表可指示存储运动信息的列表。另外,可在执行合并模式之前产生合并候选列表。存储在合并候选列表中的运动信息可以是以下项中的至少一个:与编码/解码目标块相邻的邻近块的运动信息、参考画面中的相对于编码/解码目标块的同位块的运动信息、通过对存在于合并运动候选列表中的运动信息的预先组合而新产生的运动信息、以及零合并候选。这里,与编码/解码目标块相邻的邻近块的运动信息可被称为空间合并候选。参考画面中的相对于编码/解码目标块的同位块的运动信息可被称为时间合并候选。
跳过模式可以是将邻近块本身的模式信息应用于编码/解码目标块的模式。跳过模式可以是用于帧间预测的模式之一。当使用跳过模式时,编码设备100可对关于哪个块的运动信息被用作编码目标块的运动信息的信息进行熵编码,并且可通过比特流将该信息发送到解码设备200。编码设备100可不将其他信息(例如,语法元素信息)发送到解码设备200。语法元素信息可包括运动矢量差信息、编码块标志和变换系数等级中的至少一个。
在帧内或帧间预测之后产生的残差信号可通过作为量化处理的一部分的变换处理被变换到频域中。这里,初级变换可使用DCT类型2(DCT-II)以及各种DCT、DST核。这些变换核可对残差信号执行在水平和/或垂直方向上执行1D变换的可分离变换,或者可对残差信号执行2D不可分离变换。
例如,在1D变换的情况下,在变换中使用的DCT类型和DST类型可使用如下面的表所示的DCT-II、DCT-V、DCT-VIII、DST-I和DST-VII。例如,如表1和表2所示,可推导通过组成变换集而在变换中使用的DCT或DST类型。
[表1]
变换集 变换
0 DST_VII,DCT-VIII
1 DST-VII,DST-I
2 DST-VII,DCT-V
[表2]
变换集 变换
0 DST_VII,DCT-VIII,DST-I
1 DST-VII,DST-I,DCT-VIII
2 DST-VII,DCT-V,DST-I
例如,如图8所示,根据帧内预测模式,针对水平和垂直方向定义不同的变换集。接下来,编码器/解码器可通过使用当前编码/解码目标块的帧内预测模式和相关变换集的变换来执行变换和/或逆变换。在这种情况下,不对变换集执行熵编码/解码,并且编码器/解码器可根据相同的规则定义变换集。在这种情况下,可以执行指示在变换集的变换中使用哪个变换的熵编码/解码。例如,当块的尺寸等于或小于64×64时,根据帧内预测模式,如表2所示,三个变换集被包括,并且三个变换被用于每个水平方向变换和垂直方向变换以组合并执行总共九种多变换方法。接下来,通过使用最佳变换方法对残差信号进行编码/解码,从而可提高编码效率。这里,为了对关于在一个变换集的三个变换中的哪个变换方法被使用的信息执行熵编码/解码,可使用截断的一元二值化。这里,对于垂直变换和水平变换中的至少一个,可对指示在变换集中的变换之中哪个变换被使用的信息执行熵编码/解码。
如图9所示,在完成上述初级变换之后,编码器可执行二次变换以增加变换系数的能量集中度。二次变换可执行在水平和/或垂直方向上执行1D变换的可分离变换,或者可以执行2D不可分离变换。所使用的变换信息可被发送,或者可由编码器/解码器根据当前编码信息和邻近编码信息推导。例如,与1D变换类似,可定义用于二次变换的变换集。不对变换集执行熵编码/解码,并且编码器/解码器可根据相同的规则定义变换集。在这种情况下,可发送指示在变换集中的变换之中使用哪个变换的信息,并且可通过帧内或帧间预测将该信息应用于至少一个残差信号。
变换候选的数量或类型中的至少一个对于每个变换集是不同的。可基于以下项中的至少一个来可变地确定变换候选的数量或类型中的至少一个:块(CU、PU、TU等)的位置、尺寸、分区形式、和预测模式(帧内/帧间模式)或帧内预测模式的方向/非方向。
解码器可依据二次变换是否被执行来执行二次逆变换,并且可从二次逆变换的结果依据初级逆变换是否被执行来执行初级逆变换。
可将上述初级变换和二次变换应用于亮度/色度分量中的至少一个信号分量,或者可根据任意编码块的尺寸/形状来应用上述初级变换和二次变换。可对指示以下两者的索引执行熵编码/解码:是否使用初级变换/二次变换、以及在任意编码块中使用的初级变换/二次变换。可选地,该索引可默认地由编码器/解码器根据至少一条当前/邻近编码信息推导出。
在帧内或帧间预测之后产生的残差信号在初级变换和/或二次变换之后进行量化处理,并且量化的变换系数进行熵编码处理。这里,如图10所示,可基于帧内预测模式或最小块的尺寸/形状中的至少一个在对角线方向、垂直方向和水平方向上扫描量化的变换系数。
另外,被执行熵解码的量化的变换系数可通过反向扫描以块形式排列,并且可对相关块执行反量化或逆变换中的至少一个。这里,作为逆扫描的方法,可执行对角线方向扫描、水平方向扫描和垂直方向扫描中的至少一个。
例如,当当前编码块的尺寸是8×8时,可对8×8块的残差信号执行初级变换、二次变换和量化,接下来,可根据图10所示的三种扫描顺序方法中的至少一种,针对四个4×4子块中的每个子块对量化的变换系数执行扫描和熵编码。另外,可通过执行熵解码对量化的变换系数执行逆扫描。执行了逆扫描的量化的变换系数在反量化之后变为变换系数,并且二次逆变换或初级逆变换中的至少一个被执行,由此可产生重建的残差信号。
在视频编码处理中,可如图11所示对一个块进行分区,并且可用信号发送与分区信息相应的指示符。这里,分区信息可以是分区标志(split_flag)、四/二叉树标志(QB_flag)、四叉树分区标志(quadtree_flag)、二叉树分区标志(binarytree_flag)、和二叉树分区类型标志(Btype_flag)中的至少一个。这里,split_flag是指示块是否被分区的标志,QB_flag是指示块是以四叉树形式还是以二叉树形式被分区的标志,quadtree_flag是指示块是否以四叉树形式被分区的标志,binarytree_flag是指示块是否以二叉树形式被分区的标志,Btype_flag是指示在二叉树形式的分区的情况下块是被垂直分区还是被水平分区的标志。
当分区标志是1时,它可指示分区被执行,并且当分区标志是0时,它可指示分区未被执行。在四/二叉树标志的情况下,0可指示四叉树分区,并且1可指示二叉树分区。可选地,0可指示二叉树分区,并且1可指示四叉树分区。在二叉树分区类型标志的情况下,0可指示水平方向分区,并且1可指示垂直方向分区。可选地,0可表示垂直方向分区,1可表示水平方向分区。
例如,可通过用信号发送如表3所示的quadtree_flag、binarytree_flag和Btype_flag中的至少一个来推导出图11的分区信息。
[表3]
例如,可通过用信号发送如表4所示的split_flag、QB_flag和Btype_flag中的至少一个来推导出图11的分区信息。
[表4]
可根据块的尺寸/形状仅以四叉树形式或仅以二叉树形式执行分区方法。在这种情况下,split_flag可表示指示以四叉树形式还是以二叉树形式执行分区的标志。可根据块的深度信息推导出块的尺寸/形状,并且可用信号发送深度信息。
当块的尺寸在预定范围内时,可仅以四叉树形式执行分区。这里,预定范围可被定义为可仅以四叉树形式被分区的最大块的尺寸或最小块的尺寸中的至少一个。可通过比特流用信号发送指示允许四叉树形式的分区的最大/最小块的尺寸的信息,并且可以以序列、画面参数或条带(段)中的至少一个为单位来用信号发送该信息。可选地,最大/最小块的尺寸可以是在编码器/解码器中预设的固定尺寸。例如,当块的尺寸范围为256x256到64x64时,可仅以四叉树形式执行分区。在这种情况下,split_flag可以是指示是否以四叉树形式执行分区的标志。
当块的尺寸在预定范围内时,可仅以二叉树形式执行分区。这里,预定范围可被定义为可仅以二叉树形式被分区的最大块的尺寸或最小块的尺寸中的至少一个。可通过比特流用信号发送指示允许二叉树形式的分区的最大/最小块的尺寸的信息,并且可以以序列、画面参数或者条带(段)中的至少一个为单位来用信号发送该信息。可选地,最大/最小块的尺寸可以是在编码器/解码器中预设的固定尺寸。例如,当块的尺寸范围为16×16到8×8时,可仅以二叉树形式执行分区。在这种情况下,split_flag可以是指示是否以二叉树形式执行分区的标志。
在以二叉树形式对一个块进行分区之后,当进一步对分区的块进行分区时,可仅以二叉树形式执行分区。
当不能进一步对分区的块的宽度或长度尺寸进行分区时,可不用信号发送至少一个指示符。
除了基于四叉树的二叉树分区之外,可在二叉树分区之后执行基于四叉树的分区。
基于前述内容,将详细描述根据本发明的视频编码/解码方法。
图12是示出根据本发明的视频编码方法的流程图。图13是示出根据本发明的视频解码方法的流程图。
参照图12,编码设备可在步骤S1201推导运动矢量候选,并且在步骤S1202基于推导出的运动矢量候选产生运动矢量候选列表。当运动矢量候选列表被产生时,编码设备可在步骤S1203通过使用产生的运动矢量候选列表来确定运动矢量,并且在步骤S1204通过使用运动矢量来执行运动补偿。然后,编码设备可在步骤S1205对运动补偿的信息进行熵编码。
参照图13,解码设备可在步骤S1301对从编码设备接收的运动补偿信息进行熵解码,并且在步骤S1302推导运动矢量候选。然后,解码设备可在步骤S1303基于推导出的运动矢量候选产生运动矢量候选列表,并且在步骤S1304通过使用产生的运动矢量候选列表来确定运动矢量。然后,解码设备可在步骤S1305通过使用运动矢量来执行运动补偿。
在下文中,将详细描述图12和13中示出的每个步骤。
首先,将详细描述推导运动矢量候选的步骤S1201和S1302。
当前块的运动矢量候选可包括空间运动矢量候选和时间运动矢量候选中的至少一个。
可从当前块的邻近重建块推导当前块的空间运动矢量。在一个实施例中,可将当前块的邻近重建块的运动矢量确定为当前块的空间运动矢量候选。
图14是示出推导当前块的空间运动矢量候选的示例的示图。
参考图14,可从与当前块X相邻的邻近块推导出当前块的空间运动矢量候选。这里,与当前块相邻的邻近块可包括以下块中的至少一个:与当前块的上侧相邻的块B1、与当前块的左侧相邻的块A1、与当前块的右上角相邻的块B0、与当前块的左上角相邻的块B2、以及与当前块的左下角相邻的块A0。与当前块相邻的邻近块可以是正方形或非正方形的形式。当运动矢量存在于与当前块相邻的邻近块中时,可将邻近块的运动矢量确定为当前块的空间运动矢量候选。可基于邻近块是否存在,或者邻近块是否通过帧间预测被编码,确定运动矢量是否存在于邻近块中,或者邻近块的运动矢量是否可被用作当前块的空间运动矢量候选。这里,可根据预定的优先级顺序来确定运动矢量是否存在于邻近块中或者邻近块的运动矢量是否可被用作当前块的空间运动矢量候选。在一个实施例中,在图14所示的示例中,可按照位于A0、A1、B0、B1和B2处的块的顺序确定运动矢量的可用性。
另外,与当前块相邻的邻近块可被划分为子块单元。这里,可将与当前块相邻的邻近块的子块中的任何一个子块的运动矢量确定为当前块的空间运动矢量候选。另外,可基于与当前块相邻的邻近块的子块的至少一个运动矢量来确定当前块的空间运动矢量候选。这里,可通过使用上述方法来确定邻近块中是否存在子块,或者子块的运动矢量是否可被用作当前块的空间运动矢量候选,因此,可确定当前块的空间运动矢量候选。
另外,可将邻近块的子块的运动矢量的中值、平均值、最小值、最大值、加权平均值和众数中的任何一个确定为当前块的空间运动矢量。
当当前块的参考画面和具有运动矢量的邻近块的参考画面不同时,可通过缩放邻近块的运动矢量来确定当前块的空间运动矢量候选。这里,可基于当前画面和当前块所参考的参考画面之间的距离以及当前画面和邻近块所参考的参考画面之间的距离中的至少一个来执行缩放。在一个实施例中,可通过根据当前画面和当前块所参考的参考画面之间的距离与当前画面和邻近块所参考的参考画面之间的距离的比对邻近块的运动矢量进行缩放来推导当前块的空间运动矢量候选。
当当前块的参考画面索引与具有运动矢量的邻近块的参考画面索引不同时,可通过缩放邻近块的运动矢量来确定当前块的空间运动矢量候选。块。这里,可基于当前画面和当前块所参考的参考画面之间的距离以及当前画面和邻近块所参考的参考画面之间的距离中的至少一个来执行缩放。
关于缩放,可通过基于由具有预定义值的参考画面索引指示的参考画面缩放邻近块的运动矢量,确定空间运动矢量候选。这里,预定义值可以是包括0的正整数。在一个实施例中,可通过根据当前画面与由具有预定义值的参考画面索引指示的当前块的参考画面之间的距离和当前画面与具有预定义值的邻近块的参考画面之间的距离的比对邻近块的运动矢量进行缩放来推导当前块的空间运动矢量候选。
在以下情况中的至少一个情况被满足时,邻近块(A0、A1、B0、B1和B2)的运动矢量可不被确定为当前块的空间运动矢量候选,或者当前块的空间运动矢量候选可从与邻近块(A0、A1、B0、B1和B2)不同的其他位置的块的运动矢量被推导出:
1)当邻近块的参考画面与当前块的参考画面不同时
2)当邻近块的参考画面索引和具有预定义值的参考画面索引不同时(这里,具有预定义值的参考画面索引可以是在编码器/解码器中被预定义的值,或者可以是从当前块的空间邻近块或从同位块推导出的值)。3)当邻近块的参考画面和与具有预定值的参考画面索引相应的参考画面不同时
另外,可基于当前块的编码参数中的至少一个来推导当前块的空间运动矢量候选。
尽管当前块的参考画面列表和邻近块的参考画面列表是不同的,但是可根据当前块的参考画面和邻近块的参考画面是否相同来确定是否执行邻近块的运动矢量的缩放。这里,参考画面列表可包括列表0L0、列表1L1、列表2L2和列表3L3中的至少一个。
简言之,可通过考虑以下项中的至少一个来推导空间运动矢量候选:邻近块的可用性;是否使用帧内预测模式进行编码;参考画面列表是否与当前块的参考画面列表相同;以及参考画面是否与当前块的参考画面相同。当邻近块是可用的并且不通过使用帧内预测模式执行编码时,可通过使用下面的表5中所示的方法来产生当前块的空间运动矢量候选。
[表5]
如以上表5中所示,即使当前块的参考画面列表和邻近块的参考画面列表不同,也可在当前块的参考画面和邻近块的参考画面相同时将邻近块的运动矢量确定为当前块的空间运动矢量候选。
当当前块的参考画面和邻近块的参考画面不同时,无论当前块的参考画面列表和邻近块的参考画面列表是否相同,可通过缩放邻近块的运动矢量来确定当前块的空间运动矢量候选。
当从邻近块推导出当前块的空间运动矢量候选时,可通过考虑当前块的参考画面和邻近块的参考画面是否相同来确定当前块的空间运动矢量候选的推导顺序。在一个实施例中,优选地,可从具有与当前块相同的参考画面的邻近块推导出空间矢量候选。当推导出的空间运动矢量候选的数量(或推导出的运动矢量候选的数量)等于或小于预设的最大值时,可从具有与当前块不同的参考画面的邻近块推导出空间矢量候选。
可选地,可通过考虑当前块和邻近块是否具有相同的参考画面并且通过考虑邻近块的位置来确定当前块的空间运动矢量预测候选。
在一个实施例中,从与当前块的左侧相邻的邻近块A0和A1,可根据参考画面是否相同来推导当前块的空间运动矢量候选。然后,从与当前块的上侧相邻的邻近块B0、B1和B2,可根据参考画面是否相同来推导当前块的空间运动矢量候选。表6示出当前块的空间运动矢量候选的推导顺序的示例。
/>
可预设当前块的空间运动矢量候选的最大数量,使得编码设备和解码设备使用相同的数量。或者,编码设备可对指示当前块的空间运动矢量候选的最大数量的信息进行编码,并且通过比特流将编码后的信息发送到解码设备。在一个实施例中,编码设备可对指示当前块的空间运动矢量候选的最大数量的“maxNumSpatialMVPCand”进行编码,并且通过比特流将编码后的“maxNumSpatialMVPCand”发送到解码设备。这里,“maxNumSpatialMVPCand”可被设置为包括0的正整数。例如,“maxNumSpatialMVPCand”可被设置为2。
可基于运动矢量候选列表的大小或指示可包括在运动矢量候选列表中的运动矢量候选的最大数量的候选数量信息来推导“maxNumSpatialMVPCand”。
“maxNumSpatialMVPCand”可根据时间运动矢量候选的数量来确定。
“maxNumSpatialMVPCand”可通过画面、条带和块中的至少一个单元的比特流被用信号发送,或者可以是在编码器/解码器中预设的值。
基于粒度信息,可在具有比粒度信息更小的尺寸或更深的深度的块中共享空间运动矢量候选。这里,粒度信息可以是指示在关于运动补偿的信息中的可被共享的块尺寸和块深度中的至少一个的信息。
详细地,当当前块的尺寸小于由粒度信息指示的块尺寸时,可从具有由粒度信息指示的尺寸且被重建为与当前块的更高层块相邻的块中的至少一个块推导当前块的空间运动矢量候选。另外,包括在更高层块中的块可共享推导出的空间运动矢量候选。
图15是示出根据编码树单元(CTU)中的粒度信息推导和共享空间运动矢量候选的实施例的示图。参照图15,当粒度信息指示32×32时,块尺寸小于32×32的块1501、1502、1503和1504可从与具有由粒度信息指示的尺寸的更高层块1500相邻的邻近块中的至少一个邻近块推导空间运动矢量,并共享推导出的空间运动矢量候选。
在一个实施例中,当粒度信息是32×32并且编码块的块尺寸是32×32时,块尺寸小于32×32的预测块可从编码块的邻近块的至少一个运动矢量推导预测块的空间运动矢量候选。推导出的空间运动矢量候选可被编码块内的预测块共享。这里,编码块和预测块可指通常表述的块。
当当前块的块深度比由粒度信息指示的块深度更深时,可从具有由粒度信息指示的块深度并且被重建为与当前块的更高层块相邻的块中的至少一个块推导出空间运动矢量候选。另外,包括在更高层块中的块可共享推导出的空间运动矢量候选。在一个实施例中,当粒度信息指示块深度为2并且编码块的块深度为2时,块深度比2深的预测块可基于编码块的邻近块的运动矢量中的至少一个推导预测块的空间运动矢量候选。编码块内的预测块可共享推导出的空间运动矢量候选。这里,共享空间运动矢量候选可以指:共享空间运动矢量候选的块可基于相同的空间运动矢量候选分别产生运动矢量候选列表。
另外,共享空间运动矢量候选可指:共享空间运动矢量候选的块可通过使用单个运动矢量候选列表来执行运动补偿。这里,共享的运动矢量候选列表可包括基于具有由粒度信息指示的块尺寸或块深度的更高层块推导出的空间运动矢量候选中的至少一个。
可从包括在当前画面的同位画面中的重建块推导出当前块的时间运动矢量候选。这里,同位画面可以是在当前画面之前已经被编码/解码的画面,并且可以是具有与当前画面不同的时间顺序的画面。
图16是示出推导当前块的时间运动矢量候选的示例的示图。
参考图16,可通过使用包括与当前块X在空间上同位的块的外部位置的块或者包括与当前块X在空间上同位的块的内部位置的块,在当前画面的同位画面中推导当前块的时间运动矢量候选。这里,时间运动矢量候选可指代同位块的运动矢量。在一个实施例中,可从与当前块在空间上同位的块C的右下角相邻的块H推导出当前块X的时间运动矢量候选,或者可从包括块C的中心点的块C3推导出当前块X的时间运动矢量候选。用于推导当前块的时间运动矢量候选的块H或块C3可被命名为“同位块”。
当前块的同位块可以是正方形或非正方形的形式。
当可从包括块C的外部位置的块H推导出当前块的时间运动矢量候选时,可将块H设置为当前块的同位块。这里,可基于块H的运动矢量推导出当前块的时间运动矢量。当无法从块H推导出当前块的时间运动矢量候选时,包括块C的内部位置的块C3可被设置为当前块的同位块。这里,可基于块C3的运动矢量推导出当前块的时间运动矢量。当无法从块H和块C3推导出时间运动矢量时(例如,当块H和块C3被帧内编码时),当前块的时间运动矢量候选可不被推导,或者可从位置不同于块H和块C3的块被推导出。
在另一实施例中,可从同位画面内的多个块推导当前块的时间运动矢量候选。在一个实施例中,可从块H和块C3推导出当前块的多个时间运动矢量候选。
此外,当前块的同位块可被划分为子块单元。这里,可将当前块的同位块的任何一个子块的运动矢量确定为当前块的时间运动矢量候选。可选地,可基于当前块的同位块的子块的运动矢量中的至少一个来确定当前块的时间运动矢量候选。这里,可根据同位块的子块的运动矢量是否存在,或者同位块的运动矢量是否可被用作当前块的时间运动矢量候选,来确定当前块的时间运动矢量候选。
另外,可将同位块的子块的运动矢量的中值、平均值、最小值、最大值、加权和平均值和众数中的任何一个确定为当前块的时间运动矢量。
在图16中,当前块的时间运动矢量候选可从与同位块的左下角相邻的块推导出,或者从包括同位块的中心点的块推导出。然而,用于推导当前块的时间运动矢量候选的块的位置不限于图16中所示的示例。在一个实施例中,当前块的时间预测候选可从与同位块的上/下边界、左/右边界或拐角相邻的块推导出,或者可从包括同位块内的特定位置的块(例如,与同位块的角落边界相邻的块)推导出。
可通过考虑当前块的参考画面列表(或预测方向)以及位于同位块的内部或外部的块的参考画面列表(或预测方向)来确定同位块的时间运动矢量候选。
在一个实施例中,当当前块可使用的参考画面列表是L0(换言之,帧间预测指示符指示PRED_L0)时,在位于同位块的内部或外部的块之中的使用L0作为参考画面的块的运动矢量可被推导为当前块的时间运动矢量候选。换言之,当当前块可使用的参考画面列表是LX(这里,X是指示参考画面列表的索引的整数,诸如,0、1、2或3)时,在位于同位块的内部或外部的块之中的使用LX作为参考画面的块的运动矢量可被推导为当前块的时间运动矢量候选。
当当前块使用多个参考画面列表时,可通过考虑当前块的参考画面列表和位于同位块的内部或外部的块的参考画面列表是否相同,来确定当前块的时间运动矢量候选。
在一个实施例中,当当前块执行双向预测时(换言之,当帧间预测指示符是PRED_BI时),在位于同位块的内部或外部的块之中的使用L0和L1作为参考画面的块的运动矢量可被推导为当前块的时间运动矢量候选。当当前块执行三向预测时(换言之,当帧间预测指示符是PRED_TRI时),在位于同位块的内部或外部的块之中的使用L0、L1和L2作为参考画面的块的运动矢量可被推导为当前块的时间运动矢量候选。当当前块执行四向预测时(换言之,当帧间预测指示符是PRED_QUAD时),在位于同位块的内部或外部的块之中的使用L0、L1、L2和L3作为参考画面的块的运动矢量可被推导为当前块的时间运动矢量候选。
另外,当当前块被设置为通过使用单个参考画面来执行多方向预测时,可通过考虑同位块和当前块是否具有相同的参考画面列表和相同的预测方向来确定当前块的时间运动预测矢量候选。
在一个实施例中,当当前块针对参考画面列表L0执行双向预测时(换言之,当L0的帧间预测指示符是PRED_BI时),在位于同位块的内部或外部的块之中的通过使用L0作为参考画面来针对L0执行双向预测的块的运动矢量可被推导为当前块的时间运动矢量候选。
另外,可基于编码参数中的至少一个来推导时间运动矢量候选、同位画面、同位块、预测列表利用标志和参考画面索引中的至少一个。
当推导出的空间运动矢量候选的数量小于运动矢量候选的最大数量时,可预先推导时间运动矢量候选。相应地,当推导出的空间运动矢量候选的数量达到运动矢量候选的最大数量时,可省略推导时间运动矢量候选的步骤。
在一个实施例中,当运动矢量候选的最大数量是2并且两个推导出的空间运动矢量候选具有不同的值时,可省略推导时间运动矢量候选的步骤。
在另一实施例中,可基于时间运动矢量候选的最大数量来推导当前块的时间运动矢量候选。这里,可预先设置时间运动矢量候选的最大数量,使得编码设备和解码设备使用相同的值。或者,指示当前块的时间运动矢量候选的最大数量的信息可被编码为比特流,并被发送到解码设备。在一个实施例中,编码设备可对指示当前块的时间运动矢量候选的最大数量的“maxNumTemporalMVPCand”进行编码,并且通过比特流将编码的“maxNumTemporalMVPCand”发送到解码设备。这里,“maxNumTemporalMVPCand”可被设置为包括0的正整数。例如,“maxNumTemporalMVPCand”可被设置为1。
当包括当前块的当前画面与当前块的参考画面之间的距离与包括同位块的共同画面与该同位块的参考画面之间的距离不同时,可通过缩放同位块的运动矢量来获得当前块的时间运动矢量候选。这里,可基于当前画面与当前块所参考的参考画面之间的距离以及同位画面与同位块所参考的参考画面之间的距离中的至少一个来执行缩放。在一个实施例中,可通过根据当前画面和当前块所参考的参考画面之间的距离与同位画面和同位块所参考的参考画面之间的距离的比对同位块的运动矢量进行缩放来推导当前块的时间运动矢量候选。
当当前块的参考画面索引和具有运动矢量的同位块的参考画面索引不同时,可通过缩放同位块的运动矢量来确定当前块的时间运动矢量候选。这里,可基于当前画面与当前块所参考的参考画面之间的距离以及同位画面与同位块所参考的参考画面之间的距离中的至少一个来执行缩放。
关于缩放,可通过基于由具有预定义值的参考画面索引指示的参考画面缩放同位块的运动矢量来确定时间运动矢量候选。这里,预定义值可以是包括0的正整数。在一个实施例中,可通过根据当前画面和由具有预定义值的参考画面索引指示的当前块的参考画面之间的距离与同位画面和同位块的参考画面之间的距离的比对邻近块的运动矢量进行缩放来推导当前块的时间运动矢量候选。
i)当前画面与当前块所参考的参考画面之间的距离以及同位画面与同位块的参考画面之间的距离不同时,ii)当同位块的参考画面索引与预定义值不同时,或者iii)当同位块的参考画面与由具有预定义值的参考画面索引指示的当前块的参考画面不同时,同位块的运动矢量可不被确定为当前块的时间运动矢量候选。
基于粒度信息,可在具有比粒度信息更小的块尺寸或更深的块深度的块中共享时间运动矢量候选。
这里,共享时间运动矢量候选可指:共享时间运动矢量候选的块可基于相同的时间运动矢量候选分别产生运动矢量候选列表。
可选地,共享时间运动矢量候选可指:共享时间运动矢量候选的块可通过使用单个运动矢量候选列表来执行运动补偿。这里,共享的运动矢量候选列表可包括基于具有由粒度信息指示的块尺寸或块深度的更高层块推导出的时间运动矢量候选中的至少一个。
详细地,当当前块的块尺寸小于由粒度信息指示的块尺寸时,可从当前块的具有由粒度信息指示的块尺寸的更高层块的同位块推导当前块的时间运动矢量候选。另外,包括在更高层块中的块可以共享推导出的时间运动矢量候选。
在一个实施例中,当粒度信息是32×32并且编码块的块尺寸是32×32时,块尺寸小于32×32的预测块可从编码块的同位块的运动矢量推导预测块的时间运动矢量候选。编码块内的预测块可共享推导出的时间运动矢量候选。这里,编码块和预测块可指代通常表述的块。
可选地,当当前块的块深度比由粒度信息指示的块深度深时,可从当前块的具有由粒度信息指示的块深度的更高层块的同位块推导当前块的时间运动矢量候选。另外,包括在更高层块中的块可共享推导出的时间运动矢量候选。在一个实施例中,当粒度信息指示块深度为2并且编码块的块深度为2时,块深度大于2的预测块可基于编码块的同位块的运动矢量推导预测块的时间运动矢量候选。编码块内的预测块可共享推导出的时间运动矢量候选。
图17示出缩放用于推导当前块的时间运动矢量候选的同位块的运动矢量的示例。
可基于指示同位画面的显示顺序的画面顺序计数(POC)与同位块的参考画面的POC之间的差值td以及当前画面的POC与当前块的参考画面的POC之间的差值tb中的至少一个来缩放同位块的运动矢量。
在执行缩放之前,可调整td或tb,使得td或tb存在于预定范围内。在一个实施例中,当预定范围表示-128~127并且td或tb小于-128时,可将td或tb调整为-128。当td或tb大于127时,可将td或tb调整为127。当td或tb包括在-128~127的范围内时,不调整td或tb。
可基于td或tb来计算缩放因子DistScaleFactor。这里,可基于下面的公式1来计算缩放因子。
[公式1]
DistScaleFactor=(tb*tx+32)>>6
tx=(16384+Abs(td/2))/td
在公式1中,Abs()表示绝对值函数,并且相应函数的输出值变为输入值的绝对值。
可将基于公式1计算出的缩放因子DistScaleFactor的值调整到预定范围。在一个实施例中,可将DistScaleFactor调整为存在于-1024~1023的范围内。
通过使用缩放因子缩放同位块的运动矢量,可确定当前块的时间运动矢量候选。在一个实施例中,当前块的时间运动矢量候选可通过下面的公式2确定。
[公式2]
Sign(DistScaleFactor*mvCol)*((Abs(DistScaleFactor*mvCol)+127)>>8)
在公式2中,Sign()是输出()中包括的值的符号信息的函数。在一个实施例中,在Sign(-1)的情况下,输出-。在公式2中,mvCol表示同位块的运动矢量,换言之,在被缩放之前的时间运动矢量预测候选。
接下来,将描述基于推导出的运动矢量候选产生运动矢量候选列表的步骤S1202和S1303。
产生运动矢量候选列表的步骤可包括:将运动矢量候选添加到运动矢量候选列表或从运动矢量候选列表中去除运动矢量候选,以及将组合运动矢量候选添加到运动矢量候选列表。
将描述将推导出的运动矢量候选添加到运动矢量候选列表或从运动矢量候选列表中去除推导出的运动矢量候选。编码设备和解码设备可按照运动矢量候选的推导顺序将推导出的运动矢量候选添加到运动矢量候选列表。
可根据当前块的帧间预测方向来确定产生的运动矢量候选列表。在一个实施例中,可针对每个参考画面列表产生单个运动矢量候选列表,或者可针对每个参考画面产生单个运动矢量候选列表。多个参考画面列表或多个参考画面可共享单个运动矢量候选列表。
在稍后将描述的一个实施例中,假设运动矢量候选列表mvpListLX指代与参考画面列表L0、L1、L2和L3相应的运动矢量候选列表。例如,与参考画面列表L0相应的运动矢量候选列表可被命名为mvpListL0。
可预设包括在运动矢量候选列表中的运动矢量候选的数量,使得编码设备和解码设备可使用相同的预设值。可选地,包括在运动矢量候选列表中的运动矢量候选的最大数量可由编码设备编码,并通过比特流发送到解码设备。
在一个实施例中,作为可包括在运动矢量候选列表mvpListLX中的运动矢量候选的最大数量的数值maxNumMVPCandList可以是包括0的正整数。在一个实施例中,maxNumMVPCandList可以是诸如2、3、4、5、6、7、8、9、10、11、12、13、14、15或16的整数。当maxNumMVPCandList为2时,可意指最多两个运动矢量候选可包括在mvpListLX中。因此,首先添加到mvpListLX的运动矢量候选的索引值可被设置为0,并且在该运动矢量候选之后添加的运动矢量候选的索引值可被设置为1。运动矢量候选的最大数量可针对每个运动矢量候选列表被定义,或者可针对所有运动矢量候选列表被共同定义。例如,mvpListL0和mvpListL1的运动矢量候选的最大数量可以是不同的值,或者可以是相同的值。
图18是示出产生运动矢量候选列表的示例的示图。
假设从位于图18的(b)的A1处的块推导出未在空间上被缩放的空间运动矢量候选(1,0),并且从位于图18的(a)的H处的块推导出缩放的时间运动矢量候选(2,3)。这里,如图18的(c)所示的示例,从位于A1处的块推导出的空间运动矢量候选和从位于H处的块推导出的时间运动矢量候选被顺序地添加到运动矢量候选列表。
根据预定顺序将推导出的运动矢量候选添加到运动矢量候选列表。在一个实施例中,在将空间运动矢量候选添加到运动矢量候选列表之后,当包括在运动矢量候选列表中的运动矢量候选的数量小于运动矢量候选的最大数量时,可将时间运动矢量候选添加到运动矢量候选列表。可选地,时间运动矢量候选可通过具有比空间运动矢量候选更高的优先级被添加到运动矢量候选列表。这里,可根据空间运动矢量候选是否与时间运动矢量候选相同,将空间运动矢量候选选择性地添加到运动矢量候选列表。
另外,编码设备和解码设备可根据添加到运动矢量候选列表的顺序将索引分配给运动矢量候选以区分它们。如图18的(c)所示,从位于A1处的块推导出的运动矢量候选的索引值被设置为0,并且从位于H处的块推导出的运动矢量候选的索引值被设置为1。
除了空间运动矢量候选和时间运动矢量候选之外,可将具有预定值的运动矢量添加到运动矢量候选列表。在一个实施例中,当包括在运动矢量列表中的运动矢量候选的数量小于运动矢量候选的最大数量时,可将具有0值的运动矢量添加到运动矢量候选列表。
图19是示出将具有预定值的运动矢量添加到运动矢量候选列表的示例的示图。
在图19所示的示例中,“numMVPCandLX”表示包括在运动矢量候选列表mvpListLX中的运动矢量候选的数量。在一个实施例中,numMVPCandL0可表示包括在运动矢量候选列表mvpListL0中的运动矢量候选的数量。
另外,maxNumMVPCand表示可包括在运动矢量候选列表mvpListLX中的运动矢量候选的最大数量。numMVPCandLX和maxNumMVPCand可具有包括0的整数值。
当numMVPCandLX小于maxNumMVPCand时,具有预定值的运动矢量被添加到运动矢量候选列表,并且numMVPCandLX增加1。这里,添加到运动矢量候选列表的运动矢量可具有固定值,并被最后添加到运动矢量候选列表中。在一个实施例中,具有预定值并且被添加到运动矢量候选列表的运动矢量(0,0)可以是零运动矢量候选。
在一个实施例中,如图19的(a)所示的示例,当numMVPCandLX为1且maxNumMVPCand为2时,具有(0,0)值的单个零运动矢量候选被添加到运动矢量候选列表,并且numMVPCandLX增加1。
当maxNumMVPC和numMVPCandLX之间的差值等于或大于2时,通过按照所述差值重复,可将具有预定值的运动矢量包括在运动矢量候选列表中。
在一个实施例中,当maxNumMVPCand是2并且numMVPCandLX是0时,可将具有预定值的运动矢量添加到运动矢量候选列表,直到numMVPCandLX和maxNumMVPCand变得相等(或相同)。在图19的(b)中,具有(0,0)值的两个零运动矢量候选被添加到运动矢量候选列表。
在另一实施例中,当与具有预定值的运动矢量相同的运动矢量候选不包括在运动矢量候选列表中时,可将具有预定值的运动矢量包括在运动矢量候选列表中。
在一个实施例中,当numMVPCandLX小于maxNumMVPCand并且运动矢量候选列表不包括具有(0,0)值的运动矢量时,如图19的(c)所示,具有(0,0)值的运动矢量被添加到运动矢量候选列表并且numMVPCandLX增加1。
在图19中,例如,添加到运动矢量候选列表的预定义运动矢量的值是(0,0),但是添加到运动矢量候选列表的预定义运动矢量的值不限于示例值。另外,如图19的(b)所示的示例,当多个预定义运动矢量候选被添加时,添加到运动矢量候选列表的多个运动矢量候选可具有不同的值。
编码设备和解码设备可通过去除包括在运动矢量候选列表中的运动矢量候选来调整运动矢量候选列表的大小。
在一个实施例中,编码设备和解码设备可检查运动矢量候选列表内是否存在相同的运动矢量候选。当在运动矢量候选列表内存在相同的运动矢量候选时,除了具有最小运动矢量候选索引的运动矢量候选之外,从运动矢量候选列表去除相同运动矢量候选中的其余运动矢量候选。
确定运动矢量候选是否相同可被应用于空间运动矢量或时间运动矢量,或者可被应用于空间运动矢量和时间运动矢量。
当包括在运动矢量候选列表中的运动矢量候选的数量大于可包括在运动矢量候选列表中的运动矢量候选的最大数量时,可从运动矢量候选列表去除与包括在运动矢量候选列表中的运动矢量候选的数量和运动矢量候选的最大数量之间的差值对应的多个运动矢量候选。
图20是示出从运动矢量候选列表去除运动矢量候选的示例的示图。
当numMVPCandLX等于或大于maxNumMVPCand时,可从运动矢量候选列表去除具有大于maxNumMVPCand-1的索引的运动矢量候选。
在一个实施例中,在如图20所示的示例中,例如,当numMVPCandLX是3并且maxNumMVPCand是2时,从运动矢量候选列表去除已经被分配了大于maxNumMVPCand-1的索引2的运动矢量候选(4,-3)。
基于粒度信息,可在具有比粒度信息更小的块尺寸或更深的块深度的块中共享空间/时间运动矢量候选。
这里,共享空间/时间运动矢量候选可指:共享空间/时间运动矢量候选的块可基于相同的空间/时间运动矢量候选来产生相应的运动矢量候选列表。
可选地,共享空间/时间运动矢量候选可指:共享空间/时间运动矢量候选的块可通过使用单个运动矢量候选列表来执行运动补偿。这里,共享的运动矢量候选列表可包括基于具有由粒度信息指示的块尺寸或块深度的更高层块推导出的空间/时间运动矢量候选中的至少一个。
然后,将描述将组合运动矢量候选添加到运动矢量候选列表。
当包括在运动矢量候选列表中的运动矢量候选的数量小于运动矢量候选的最大数量时,可通过使用包括在运动矢量候选列表中的运动矢量候选中的至少一个将组合的运动矢量添加到运动矢量候选列表中。在一个实施例中,可通过使用包括在运动矢量候选列表中的空间运动矢量候选、时间运动矢量候选和零运动矢量候选中的至少一个来产生组合运动矢量候选,并将产生的组合运动矢量候选包括在运动矢量候选列表中。
可选地,可通过使用未包括在运动矢量候选列表中的运动矢量候选来产生组合运动矢量候选。在一个实施例中,可通过使用未被包括在运动矢量候选列表中的且从用于推导空间运动矢量候选和时间运动矢量候选中的至少一个的块推导出的运动矢量候选,或者通过使用具有预定义值且未被包括在运动矢量候选列表中的运动矢量候选(例如,零运动矢量),产生组合运动矢量候选。
可选地,可基于编码参数中的至少一个来产生组合运动矢量候选,或者可基于编码参数中的至少一个将组合运动矢量候选添加到运动矢量候选列表。
在添加了空间运动矢量候选、时间运动矢量候选和具有预设值的运动矢量候选中的至少一个之后,在运动矢量候选列表中可包括的运动矢量候选的最大数量可增加组合运动矢量的数量或者增加比组合运动矢量的数量小的数量。在一个实施例中,maxNumMVPCandList可具有针对空间运动矢量候选或时间运动矢量候选的第一值,为了另外插入组合运动矢量候选,在添加空间运动矢量候选或时间运动矢量候选之后,maxNumMVPCandList被增加到大于第一值的第二值。
如上所述,基于粒度信息,可在具有比粒度信息更小的块尺寸或更深的块深度的块中共享组合运动矢量候选。
这里,共享组合运动矢量候选可指:共享组合运动矢量候选的块可基于相同的组合运动矢量候选来产生相应的运动矢量候选列表。
可选地,共享组合运动矢量候选可指:共享组合运动矢量候选的块可通过使用单个运动矢量候选列表来执行运动补偿。这里,共享的运动矢量候选列表可包括基于具有由粒度信息指示的块尺寸或块深度的更高层块推导出的组合运动矢量候选中的至少一个。
图21是示出运动矢量候选列表的示例的示图。
当前块可通过使用包括在运动矢量候选列表中的运动矢量候选来执行运动补偿。可通过使用针对单个参考画面列表的单个运动矢量来执行当前块的运动补偿,或者可通过使用针对单个参考画面列表的多个运动矢量来执行当前块的运动补偿。在一个实施例中,当当前块的帧间预测方向在两个方向上时,可通过推导针对各个参考画面列表L0和L1的单个运动矢量来执行当前块的运动补偿,或者可通过推导针对参考画面列表L0的两个运动矢量来执行当前块的运动补偿。
运动矢量候选列表可包括以下运动矢量候选中的至少一个:空间运动矢量候选、时间运动矢量候选、零运动矢量候选、以及通过组合以上项中的两个或更多个而产生的组合运动矢量候选。可通过运动矢量候选索引来标识各个运动矢量候选。
根据当前块的帧间预测方向,可通过单个运动矢量候选索引来标识包括多个运动矢量候选的运动矢量候选集。这里,运动矢量候选集可根据当前块的帧间预测方向的数量N而包括N个运动矢量候选。在一个实施例中,运动矢量候选集可包括多个运动矢量候选,诸如,第一运动矢量候选、第二运动矢量候选、第三运动矢量候选和第四运动矢量候选等。
可以通过组合空间运动矢量候选、时间运动矢量候选和零运动矢量候选中的至少两个来产生运动矢量候选集。在一个实施例中,在图21中,例如,包括两个运动矢量候选的运动矢量候选集被分配给运动矢量候选索引4~13。另外,例如,通过组合空间运动矢量候选mxLXA和mxLXB、时间运动矢量mxLXCol以及零运动矢量mvZero来产生各个运动矢量候选集。
根据参考画面列表LX的预测方向,可从参考画面列表推导至少一个运动矢量。在一个实施例中,当对参考画面列表LX执行单向预测时,可通过使用被分配了运动矢量索引0到3的运动矢量候选中的任何一个来推导当前块的运动矢量。当针对参考画面列表LX执行双向预测时,可通过使用被分配了运动矢量索引4到13的运动矢量候选集来导出当前块的运动矢量。换言之,当编码/解码时,可基于运动矢量候选列表中包括的运动矢量候选来推导至少一个运动矢量。
可通过将运动矢量差值与运动矢量候选相加来推导当前块的运动矢量。在一个实施例中,在图21所示的示例中,例如,当被分配了运动矢量候选索引0至3的运动矢量候选中的任何一个被选择时,通过将运动矢量差值MVD与选择的运动矢量候选相加来推导运动矢量。
当包括多个运动矢量候选的运动矢量候选集被选择时,可基于运动矢量候选集中包括的多个运动矢量候选来推导当前块的多个运动矢量。这里,可对包括在运动矢量候选集中的多个运动矢量的各个运动矢量差值进行编码/解码。这里,可通过将与各个运动矢量候选相应的运动矢量差值相加来推导当前块的多个运动矢量。
在另一实施例中,可对包括在运动矢量候选集中的多个运动矢量候选中的运动矢量候选的运动矢量差值的一部分进行编码/解码。在一个实施例中,可对包括多个运动矢量候选的运动矢量候选集的单个运动矢量差值进行编码/解码。这里,当前块可使用通过将运动矢量差值与运动矢量候选集中包括的运动矢量候选中的任何一个相加而推导出的运动矢量、以及通过运动矢量候选按原样推导出的运动矢量。在图21所示的示例中,例如,对于包括两个运动矢量候选的运动矢量候选集,第一运动矢量和第二运动矢量中的一个可通过将运动矢量差值与两个运动矢量候选中的任何一个相加而被推导出,并且第一运动矢量和第二运动矢量中的另一个与运动矢量候选相同。
在另一实施例中,包括在运动矢量候选集中的多个运动矢量候选可共享相同的运动矢量差值。
帧间预测指示符可指示针对预定参考画面列表的单向预测或多方向预测。在一个实施例中,帧间预测指示符可被表示为指示针对参考画面列表LX的单向预测的PRED_LX、指示针对参考画面列表LX的双向预测的PRED_BI_LX等。这里,X可以是包括0的整数,并表示参考画面列表的索引(诸如,0、1、2、3等)。
在一个实施例中,当针对参考画面列表L0执行单向预测时,帧间预测指示符可被设置为PRED_L0。另外,当针对参考画面列表L1执行单向预测时,帧间预测指示符可被设置为PRED_L1。
当针对参考画面列表L1执行双向预测时,帧间预测指示符可被设置为PRED_BI_L1。当针对参考画面列表L1的帧间预测指示符是PRED_BI_L1时,当前块可通过经由使用运动矢量候选列表推导出两个运动矢量并且通过从参考画面列表L1中包括的参考画面推导出两个预测块,执行帧间预测。这里,可从彼此不同并且包括在参考画面列表L1中的两个参考画面推导出两个预测块中的每个,或者可从包括在参考画面列表L1中的单个参考画面推导出两个预测块中的每个。
帧间预测指示符可被编码/解码为表示当前块的预测方向的总数,或者可被编码/解码为表示每个参考画面列表的预测方向的数量。
在一个实施例中,可针对当前块对指示针对参考画面列表L0的单向预测的帧间预测指示符(PRED_L0)和指示针对参考画面列表L1的双向预测的帧间预测指示符(PRED_BI_L1)进行编码。可选地,当针对参考画面列表L0的单向预测被执行并且针对参考画面列表L1的双向预测被执行时,针对当前块的帧间预测指示符可指示PRED_TRI。
图21中所示的示例示出了针对特定参考画面列表LX的运动矢量候选列表mvpListLX。当存在诸如L0、L1、L2、L3等的多个参考画面列表时,可针对每个参考画面列表产生运动矢量候选列表。因此,可产生至少一个到最大N个预测块,并且产生的预测块可用于当前块的帧间预测或运动补偿。这里,N是等于或大于1的整数,可表示2、3、4、5、6、7、8等。
可将包括在运动矢量候选列表中的运动矢量候选中的至少一个确定为当前块的预测出的运动矢量(或运动矢量预测因子)。确定的预测出的运动矢量可用于计算当前块的运动矢量,并且运动矢量可用于当前块的帧间预测或运动补偿。
当当前块选择包括多个运动矢量候选的运动矢量候选集时,包括在运动矢量候选集中的多个运动矢量候选和基于多个运动矢量候选计算出的当前块的运动矢量可被存储为关于当前块的运动补偿的信息。这里,存储的关于当前块的运动补偿的信息可稍后被用于产生邻近块中的运动矢量候选列表或用于运动补偿。
在图21所示的示例中,例如,针对每个参考画面列表产生运动矢量候选列表。可针对每个参考画面产生运动矢量候选列表。在一个实施例中,当针对参考画面列表LX执行双向预测时,可针对包括在参考画面列表LX中的参考画面之中的用于双向预测的第一参考画面产生第一运动矢量候选列表,并且可针对用于双向预测的第二参考画面产生第二运动矢量候选列表。
图22是示出根据编码树单元(CTU)中的粒度信息共享运动矢量候选列表的实施例的示图。
参照图22,当粒度信息指示128×128时,块尺寸小于128×128的阴影块可共享运动矢量候选列表。这里,共享的运动矢量候选列表可以是针对每个参考画面列表产生的运动矢量候选列表。
另外,可针对每个参考画面索引产生运动矢量候选列表。因此,共享的运动矢量候选列表可以是针对每个参考画面索引产生的运动矢量候选列表。
可以以预定义的数量产生运动矢量候选列表,而不管每个参考画面列表和每个参考画面索引如何。因此,共享的运动矢量候选列表可以是以预定义的数量产生的运动矢量候选列表。这里,预定义的数量可以是包括0的正整数。
然后,将描述从矢量候选列表确定预测运动矢量的步骤S1203和S1304。
可将运动矢量候选列表中包括的运动矢量候选中的由运动矢量候选索引指示的运动矢量候选确定为当前块的预测运动矢量。
图23是示出从运动矢量候选列表推导当前块的预测运动矢量的示例的示图。
在图23中,在运动矢量候选列表中可包括的运动矢量候选的最大数量maxNumMVPC是2,并且包括在运动矢量候选列表中的运动矢量候选的数量也是2。这里,当运动矢量候选索引指示时第一索引时,作为包括在运动矢量候选列表中的第二运动矢量候选的(2,3)(换言之,已经被分配了第一索引的运动矢量候选)可被确定为当前块的预测运动矢量。
编码设备可通过计算运动矢量与预测运动矢量之间的差值来计算运动矢量差值。解码设备可通过将预测运动矢量和运动矢量差值相加来计算运动矢量。
尽管未示出,但是当运动矢量候选索引指示运动矢量候选集时,可从包括在运动矢量候选集中的多个运动矢量候选推导出多个运动矢量。这里,当前块的运动矢量可以是加上了运动矢量差值的运动矢量候选,或者可与运动矢量候选具有相同的值。
在具有由粒度信息指示的块尺寸的块内,可针对块尺寸比由粒度信息指示的块尺寸小的子块相同地确定预测运动矢量。
另外,在具有由粒度信息指示的块深度的块内,可针对块深度比由粒度信息指示的块深度更深的子块相同地确定预测运动矢量。
然后,将描述通过使用运动矢量执行运动补偿的步骤S1204和S1305。
编码设备和解码设备可通过使用预测运动矢量和运动矢量差值来计算运动矢量。当计算出运动矢量时,可通过使用计算出的运动矢量来执行预测或运动补偿。可选地,如图21所示的示例,可将运动矢量预测值按照原样确定为运动矢量。
根据预测方向,当前块可具有至少一个到最大N个运动矢量。可通过使用运动矢量产生至少一个到最大N个预测块来导出当前块的最终预测块。
在一个实施例中,当当前块具有单个运动矢量时,可将通过使用运动矢量产生的预测块确定为当前块的最终预测块。
当当前块具有多个运动矢量时,通过使用多个运动矢量产生多个预测块,并且可基于所述多个预测块的加权和来确定当前块的最终预测块。包括由多个运动矢量指示的多个预测块的参考画面可被包括在相同的参考画面列表中或彼此不同的参考画面列表中。
在一个实施例中,可基于空间运动矢量候选、时间运动矢量候选、具有预定值的运动矢量和组合运动矢量候选中的至少一个来产生多个预测块,并且可基于多个预测块的加权和来确定当前块的最终预测块。
在另一实施例中,可基于由预设运动矢量候选索引指示的运动矢量候选来产生多个预测块,并且可基于多个预测块的加权和来确定当前块的最终预测块。可选地,可基于存在于预设运动矢量候选索引的范围中的运动矢量候选来产生多个预测块,并且可基于多个预测块的加权和来确定当前块的最终预测块。
应用于每个预测块的权重因子可以是1/N(这里,N是产生的预测块的数量)并且具有统一的值。在一个实施例中,当两个预测块被产生时,应用于每个预测块的权重因子可以是1/2,当三个预测块被产生时,应用于每个预测块的权重因子可以是1/3,当四个预测块被产生时,应用于每个预测块的权重因子可以是1/4。可选地,可通过将不同的权重因子应用于每个预测块来确定当前块的最终预测块。
针对每个预测块,权重因子可不具有固定值,并且针对每个预测块,权重因子可具有可变值。这里,应用于每个预测块的权重因子可相同或彼此不同。在一个实施例中,当两个预测块被产生时,应用于两个预测块的权重因子可以是(1/2,1/2),或者可以是诸如(1/3,2/3)、(1/4,3/4)、(2/5,3/5)、(3/8,5/8)等的可变值。权重因子可以是正实数值或负实数值。在一个实施例中,权重因子可包括负实数,诸如,(-1/2,3/2)、(-1/3,4/3)、(-1/4,5/4)等。
为了应用可变权重因子,可通过比特流用信号发送针对当前块的至少一条或多条权重因子信息。可针对每个预测块用信号发送权重因子信息,或者可针对每个参考画面用信号发送权重因子信息。多个预测块可共享一条权重因子信息。
编码设备和解码设备可基于预测块列表利用标志来确定是否使用预测运动矢量。在一个实施例中,当预测块列表利用标志指示1(其中,1是每个参考画面列表的第一值)时,可意指编码设备和解码设备可使用当前块的预测运动矢量来执行帧间预测或运动补偿。当预测块列表利用标志指示0(其中,0是第二值)时,可意指编码设备和解码设备可不使用当前块的预测运动矢量来执行帧间预测或运动补偿。预测块列表利用标志的第一值可被设置为0,并且第二值可被设置为1。以下公式3至公式5示出了当当前块的帧间预测指示符分别是PRED_BI、PRED_TRI和PRED_QUAD并且针对每个参考画面列表的预测方向是单向预测时产生当前块的最终预测块的示例。
[公式3]
P_BI=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+RF)>>1
[公式4]
P_TRI=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+WF_L2*P_L2+OFFSET_L2+RF)/3
[公式5]
P_QUAD=(WF_L0*P_L0+OFFSET_L0+WF_L1*P_L1+OFFSET_L1+WF_L2*P_L2+0FFSET_L2+WF_L3*P_L3+OPFFSET_L3+RF)>>2
在公式3至公式5中,P_BI、P_TRI和P_QUAD可表示当前块的最终预测块,并且LX(X=0,1,2,3)可指代参考画面列表。WF_LX可表示通过使用LX产生的预测块的权重因子值,OFFSET_LX可表示通过使用LX产生的预测块的偏移值。P_LX可表示通过使用当前块的针对LX的运动矢量而产生的预测块。RF可以指舍入因子,并且可被设置为0,或者被设置为正数或负数。LX参考画面列表可以是以下参考画面中的至少一个:长期参考画面、没有执行去块滤波的参考画面、没有执行样本自适应偏移的参考画面、没有执行自适应环路滤波的参考画面、执行了去块滤波和自适应环路滤波的参考画面、执行了去块滤波和样本自适应偏移的参考画面、以及执行了去块滤波、样本自适应偏移和自适应环路滤波的参考画面。这里,LX参考画面列表可以是L2参考画面列表和L3参考画面列表中的至少一个。
当预定参考画面列表的预测方向是多个方向时,可基于预测块的加权和来获得当前块的最终预测块。这里,应用于从相同参考画面列表推导出的预测块的权重因子可具有相同的值,或者可具有不同的值。
多个预测块的权重因子WF_LX和偏移OFFSET_LX中的至少一个可以是将被熵编码/解码的编码参数。在另一实施例中,可从与当前块相邻的编码/解码的邻近块推导出权重因子和偏移。这里,与当前块相邻的邻近块可包括用于推导当前块的空间运动矢量候选的块和用于推导当前块的时间运动矢量候选的块中的至少一个。
在另一实施例中,可基于当前画面和每个参考画面的POC来确定权重因子和偏移。这里,当前画面与参考画面之间的距离越长,权重因子或偏移被设置越小的值。当前画面与参考画面之间的距离越短,权重因子或偏移被设置越大的值。在一个实施例中,当当前画面与参考画面L0之间的POC差为2时,应用于通过参考参考画面L0而产生的预测块的权重因子值可被设置为1/3。当当前画面与参考画面L0之间的POC差为1时,应用于通过参考参考画面L0而产生的预测块的权重因子值可被设置为2/3。如上所示,权重因子值或偏移值可与当前画面和参考画面之间的POC差反相关。在另一实施例中,权重因子值或偏移值可与当前画面和参考画面之间的POC差正相关。
在另一实施例中,可基于至少一个编码参数对权重因子和偏移中的至少一者进行熵编码/解码。另外,可基于至少一个编码参数来计算预测块的加权和。
多个预测块的加权和可被应用于预测块内的部分区域。这里,所述部分区域可以是预测块内的与边界对应的区域。为了将加权和应用于所述部分区域,可以以预测块的子块单元为单位计算加权和。
在具有由粒度信息指示的块尺寸的块内,可通过使用相同的预测块或相同的最终预测块来执行对于块尺寸比由粒度信息指示的块尺寸更小的子块的帧间预测或运动补偿。
另外,在具有由粒度信息指示的块深度的块内,可通过使用相同的预测块或相同的最终预测块来执行对于块深度比由粒度信息指示的块深度更深的子块的帧间预测或运动补偿。
然后,将描述关于运动补偿的信息的熵编码/解码的步骤S1205和S1301。
图24a和图24b是示出关于运动补偿的信息的语法的示图。
编码设备可将关于运动补偿的信息熵编码到比特流,并且解码设备可对包括在比特流中的关于运动补偿的信息进行熵解码。这里,将被熵编码/解码的关于运动补偿的信息可包括以下项中的至少一个:帧间预测指示符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;运动矢量残差;权重因子值wf_l0、wf_l1、wf_l2和wf_l3;以及偏移值offset_l0、offset_l1、offset_l2和offset_l3。
当通过帧间预测对当前块进行编码/解码时,帧间预测指示符可指代帧间预测方向和当前块的预测方向的数量中的至少一个。在一个实施例中,帧间预测指示符可指示单向预测,或者可指示多方向预测,诸如,双向预测、三向预测或四向预测等。帧间预测指示符可指代当产生当前块的预测块时使用的参考画面的数量。另外,单个参考画面可用于多方向预测。这里,可通过使用M个参考画面(N>M)来执行N个方向上的预测。帧间预测指示符可指代在执行当前块的帧间预测或运动补偿时使用的预测块的数量。
因此,根据帧间预测指示符,可确定在产生当前块的预测块时使用的参考画面的数量、在执行当前块的帧间预测或运动补偿时使用的预测块的数量、以及当前块使用的参考画面列表的数量。这里,参考画面列表的数量N是正整数,并且可具有值1、2、3、4或更大值。例如,参考画面列表可包括L0、L1、L2和L3。当前块可通过使用至少一个参考画面列表来执行运动补偿。
在一个实施例中,当前块可通过经由使用至少一个参考画面列表产生至少一个预测块,来执行对当前块的运动补偿。在一个实施例中,可通过经由使用参考画面列表L0产生单个预测块或至少一个预测块来执行运动补偿,或者可通过经由使用参考画面列表L0和L1产生单个预测块或至少一个预测块来执行运动补偿。可选地,可通过经由使用参考画面列表L0、L1和L2产生单个预测块、至少一个预测块或最大N个预测块(这里,N是3或等于或大于2的正整数)来执行运动补偿。可选地,可通过经由使用L0、L1、L2和L3产生单个预测块、至少一个预测块或最大N个预测块(这里,N是4或等于或大于3的正整数)来执行对当前块的运动补偿。
根据当前块的多个预测方向,参考画面指示符可指示一个方向PRED_LX、两个方向PRED_BI、三个方向PRED_TRI、四个方向PRED_QUAD或更多方向。
在一个实施例中,当假设针对每个参考画面列表执行单向预测时,帧间预测指示符PRED_LX可意指:通过使用参考画面列表LX(X是整数,诸如0、1、2、3等)产生单个预测块,并且通过使用产生的单个预测块来执行帧间预测或运动补偿。另外,帧间预测指示符PRED_BI可意指:通过使用参考画面列表L0、L1、L2和L3中的至少一个产生两个预测块,并且通过使用产生的两个预测块来执行帧间预测或运动补偿。另外,帧间预测指示符PRED_TRI可意指:通过使用参考画面列表L0、L1、L2和L3中的至少一个产生三个预测块,并且通过使用产生的三个预测块来执行帧间预测或运动补偿。另外,帧间预测指示符PRED_QUAD可意指:通过使用参考画面列表L0、L1、L2和L3中的至少一个产生四个预测块,并且通过使用产生的四个预测块来执行帧间预测或运动补偿。换言之,可将用于执行当前块的帧间预测的预测块的数量总和设置为帧间预测指示符。
当针对参考画面列表执行多方向预测时,帧间预测指示符PRED_BI可意指:针对参考画面列表L0执行双向预测。另外,帧间预测指示符PRED_TRI可意指:针对参考画面列表L0执行三向预测,或者,帧间预测指示符PRED_TRI可意指:针对参考画面列表L0执行单向预测,并且针对参考画面列表L1执行双向预测,或者,帧间预测指示符PRED_TRI可意指:针对参考画面列表L0执行双向预测,并且针对参考画面列表L1执行单向预测。
因此,帧间预测指示符可意指通过从至少一个参考画面列表产生至少一个到最大N个预测块(这里,N是由帧间预测指示符指示的预测方向的数量)来执行运动补偿,或者,可意指通过从N个参考画面产生至少一个到最大N个预测块并且通过使用产生的预测块来执行当前块的运动补偿。
例如,帧间预测指示符PRED_TRI可意指通过经由使用参考画面列表L0、L1和L2中的至少一个产生三个预测块来执行对当前块的帧间预测或运动补偿,或者可意指通过经由使用参考画面列表L0、L1、L2和L3中的至少三个产生三个预测块来执行对当前块的帧间预测或运动补偿。另外,PRED_QUAD可指代这样的帧间预测指示符,其中,该帧间预测指示符意指:通过经由使用参考画面列表L0、L1、L2和L3中的至少一个产生四个预测块来执行对当前块的帧间预测或运动补偿,或者通过经由使用参考画面列表L0、L1、L2和L3中的至少四个产生四个预测块来执行对当前块的帧间预测或运动补偿。
可根据帧间预测指示符来确定可用的帧间预测方向,并且可基于当前块的尺寸或形状、或尺寸和形状两者来选择性地使用可用的帧间预测方向中的全部或部分。
预测列表利用标志指示是否通过使用相应的参考画面列表来产生预测块。
在一个实施例中,当预测列表利用标志指示1(其中,1是第一值)时,可通过使用相应的参考画面列表来产生预测块。当预测列表利用标志指示2(其中,2是第二值)时,可不通过使用相应的参考画面列表来产生预测块。这里,预测列表利用标志的第一值可被设置为0,第二值可被设置为1。
换言之,当预测列表利用标志指示第一值时,可通过使用与相应的参考画面列表对应的运动信息来产生当前块的预测块。
可基于帧间预测指示符来设置预测列表利用标志。在一个实施例中,当帧间预测指示符指示PRED_LX、PRED_BI、PRED_TRI或PRED_QUAD时,预测列表利用标志predFlagLX可被设置为1(其是第一值)。当帧间预测指示符是PRED_LN(N是非X的正整数)时,预测列表利用标志predFlagLX可被设置为0(其是第二值)。
另外,可基于预测列表利用标志来设置帧间预测指示符。在一个实施例中,当预测列表利用标志predFlagL0和predFlagL1都指示1(其是第一值)时,帧间预测指示符可被设置为PRED_BI。在一个实施例中,当只有预测列表利用标志predFlagL0指示1(其是第一值)时,帧间预测指示符可被设置为PRED_L0。
每个参考画面列表中包括的参考画面的数量可被预定义,或者可在编码设备中被熵编码并被发送到解码设备。在一个实施例中,语法元素“num_ref_idx_lX_active_minus1”(这里,X指示参考画面的索引,诸如0、1、2、3等)可表示参考画面列表(诸如,L0、L1、L2、L3等)中的参考画面的数量。
参考画面索引可以指定每个参考画面列表中的由当前块所参考的参考画面。可对每个参考画面列表的至少一个参考画面索引进行熵编码/解码。当前块可通过使用至少一个参考画面索引来执行运动补偿。
当通过N个参考画面索引选择了N个参考画面时,可通过产生至少一个到N个预测块(或者,等于或大于N个预测块)来执行对当前块的运动补偿。
运动矢量候选索引表示通过每个参考画面列表或每个参考画面索引产生的运动矢量候选列表中的当前块的运动矢量候选。可对每个运动矢量候选列表的至少一个运动矢量候选索引进行熵编码/解码。当前块可通过使用至少一个运动矢量候选索引来执行运动补偿。
在一个实施例中,可通过基于N个运动矢量候选索引产生至少一个到N个预测块(或者,等于或大于N个预测块)来执行对当前块的运动补偿。
运动矢量残差表示运动矢量和预测出的运动矢量之间的差值。可对针对每个参考画面列表或针对每个参考画面索引产生的当前块的运动矢量候选列表的至少一个运动矢量残差进行熵编码/解码。当前块可通过使用至少一个运动矢量残差来执行运动补偿。
在一个实施例中,可通过使用N个运动矢量残差产生至少一个到最大N个预测块(或者,等于或大于N个预测块)来执行对当前块的运动补偿。
当在执行对当前块的运动补偿时产生了至少两个预测块时,可通过每个预测块的加权和来产生当前块的最终预测块。当计算加权和时,可将权重因子和偏移中的至少一个应用于每个预测块。用于计算加权和的至少一个加权和因子(诸如,权重因子和偏移)、或者与参考画面列表、参考画面、运动矢量候选索引、运动矢量残差和运动矢量中的至少一个的数量一样多的加权和因子的数量可被熵编码/解码。这里,加权和因子可包括权重因子和偏移中的至少一个。
可从指定在编码设备和解码设备中预定义的组中的任何一个组的索引信息推导加权和因子。这里,可对用于指定权重因子和偏移中的至少一个的索引信息进行熵编码/解码。可分别针对权重因子和偏移定义在编码器和解码器中预定义的组。预定义的组可包括单个或多个权重因子候选、或者单个或多个偏移候选。另外,可使用用于定义权重因子和偏移之间的映射关系的表。这里,可通过使用单条索引信息从该表中获得预测块的权重因子值和偏移值。可对与被熵编码/解码的权重因子的索引信息匹配的偏移的索引信息进行熵编码/解码。
与加权和因子有关的信息可以以块为单位被熵编码/解码,或者可以以更高级别被熵编码/解码。在一个实施例中,权重因子或偏移可以以诸如CTU、CU、PU等的块为单位被熵编码/解码,或者可以以诸如视频参数集、序列参数集、画面参数集、自适应参数集、条带头等的更高级别被熵编码/解码。
可基于加权和因子与加权和因子预测值之间的差值对加权和因子进行熵编码/解码。在一个实施例中,可对权重因子预测值和权重因子差值进行熵编码/解码,或者可对偏移预测值和偏移差值进行熵编码/解码。这里,权重因子差值可表示权重因子和权重因子预测值之间的差值,偏移差值可表示偏移和偏移预测值之间的差值。
这里,可以以块为单位对加权和因子差值进行熵编码/解码,可以以更高级别对加权和因子预测值进行熵编码/解码。当以画面或条带为单位对权重因子预测值或偏移预测值的加权和因子预测值进行熵编码/解码时,包括在画面中或条带中的块可使用共同的加权和因子预测值。
可通过使用画面、条带或并行块内的特定区域,或者通过使用CTU或CU内的特定区域来推导加权和因子预测值。在一个实施例中,在画面、条带、并行块、CTU和CU内的特定区域的权重因子值或偏移值可被用作权重因子预测值或偏移预测值。这里,可省略对加权和因子预测值的熵编码/解码,并且可对加权和因子差值进行熵编码/解码。
可选地,可从与当前块相邻的编码/解码的邻近块推导出加权和因子预测值。在一个实施例中,可将与当前块相邻的编码/解码的邻近块的权重因子值或偏移值设置为当前块的权重因子预测值或偏移预测值。这里,当前块的邻近块可包括用于推导空间运动矢量候选的块和用于推导时间运动矢量候选的块中的至少一个。
当权重因子预测值和权重因子差值被使用时,解码设备可通过将权重因子预测值和权重因子差值求和来计算预测块的权重因子值。另外,当偏移预测值和偏移差值被使用时,解码设备可通过将偏移预测值和偏移差值求和来计算预测块的偏移值。
加权和因子或加权和因子的差值可基于至少一个编码参数被熵编码/解码。
加权和因子、加权和因子的预测值、或加权和因子的差值可基于编码参数中的至少一个被推导为当前块的加权和因子、加权和因子的预测值、或加权和因子的差值。
不是对关于当前块的加权和因子的信息进行熵编码/解码,而是可将与当前块相邻的编码/解码的块的加权和因子用作当前块的加权和因子。在一个实施例中,可将当前块的权重因子或偏移设置为与和当前块相邻的编码/解码的邻近块的权重因子或偏移相同的值。
当前块可通过使用至少一个加权和因子来执行运动补偿,或者可通过使用至少一个推导出的加权和因子来执行运动补偿。
关于以上运动补偿的至少一条信息可以以CTU、CTU的子CTU中的任何一个单元被熵编码/解码。这里,CTU的子CTU可包括CU和PU中的至少一个单元。CTU的子CTU可以是正方形或非正方形。为了方便,稍后将描述的关于运动补偿的信息可指关于运动补偿的至少一条信息。
当关于运动补偿的信息以CTU被熵编码/解码时,CTU中存在的全部块或部分块可通过使用相应的关于运动补偿的信息来执行运动补偿。
当关于运动补偿的信息以CTU或CTU的子单元被熵编码/解码时,可基于预定块尺寸或预定块深度对关于运动补偿的信息进行熵编码/解码。
这里,关于预定块尺寸或预定块深度的信息可另外被熵编码/解码。或者,关于预定块尺寸或预定块深度的信息可被确定为在编码器和解码器中预设的值,或者可基于至少一个编码参数或基于至少一个其他语法元素值被确定。
关于运动补偿的信息可以以块尺寸等于或大于预定块尺寸的块被熵编码/解码。关于运动补偿的信息可不以块尺寸小于预定块尺寸的块被熵编码/解码。这里,块尺寸等于或大于预定块尺寸的块内的子块可基于关于运动补偿的信息执行运动补偿,其中,关于运动补偿的信息以块尺寸等于或大于预定块尺寸的块被熵编码/解码。换言之,块尺寸等于或大于预定块尺寸的块内的子块可共享关于运动补偿的信息,其中,关于运动补偿的信息包括运动矢量候选、运动矢量候选列表、合并候选、合并候选列表等。
关于运动补偿的信息可以以块深度等于或浅于预定块深度的块被熵编码/解码,并且关于运动补偿的信息可不以块深度比预定块深度深的块被熵编码/解码。这里,块深度等于或者浅于预定块深度的块内的子块可基于关于运动补偿的信息执行运动补偿,其中,关于运动补偿的信息以等于或浅于预定块深度的块深度被熵编码/解码。换言之,块深度等于或浅于预定块深度的块内的子块可共享关于运动补偿的信息,其中,关于运动补偿的信息包括运动矢量候选、运动矢量候选列表、合并候选、合并候选列表等。
在一个实施例中,当CTU的块尺寸是64×64并且关于运动补偿的信息以CTU的32×32子单元被熵编码/解码时,可基于以32×32块单元被熵编码/解码的关于运动补偿的信息,在包括在32×32块单元中并且具有比32×32块单元更小的块尺寸的块中执行运动补偿。
在另一实施例中,当CTU的块尺寸是128×128并且关于运动补偿的信息以CTU的16×16子单元被熵编码/解码时,可基于以16×16块单元被熵编码/解码的关于运动补偿的信息,在包括在16×16块中并且具有比16×16块单元更小的块尺寸的块中执行运动补偿。
在另一实施例中,当CTU的块深度为0并且关于运动补偿的信息以CTU的块深度为1的子单元被熵编码/解码时,可基于以块深度为1的块被熵编码/解码的关于运动补偿的信息,在包括在块深度为1的块中并且具有比块深度为1的块更深的块深度的块中执行运动补偿。
例如,当CTU的块深度为0并且至少一条关于运动补偿的信息以CTU的块深度为2的子单元被熵编码/解码时,可基于以块深度为2的块被熵编码/解码的关于运动补偿的信息,在包括在块深度为2的块中并且块深度等于或深于块深度为2的块的块中执行运动补偿。
这里,块深度的值可以是包括0的正整数。当块深度的值变得越大时,块深度变得越深。可选地,当块深度的值变得越小时,块深度变得越浅。因此,当块深度的值变得越大时,块尺寸变得越小。可选地,当块深度的值变得越小时,块尺寸变得越大。另外,预定块深度的较低等级可指比预定块深度更深的深度,或者预定块深度的较低等级可指在与预定块深度对应的块内较深的深度。
关于运动补偿的信息可以以块为单位被熵编码/解码,或者可以以更高级别被熵编码/解码。在一个实施例中,关于运动补偿的信息可以以诸如CTU、CU、PU等的块单元被熵编码/解码,或者可以以诸如视频参数集、序列参数集、画面参数集、自适应参数集、条带头等的更高级别被熵编码/解码。
可基于关于运动补偿的信息与运动补偿的信息预测值之间的差值来对关于运动补偿的信息进行熵编码/解码。例如,在作为一条关于运动补偿的信息的帧间预测指示符的情况下,可对帧间预测指示符预测值和帧间预测指示符差值进行熵编码/解码。
这里,可以以块为单位对帧间预测指示符差值进行熵编码/解码,可以以更高级别对帧间预测指示符预测值进行熵编码/解码。当以画面或条带为单位对包括帧间预测指示符预测值的运动补偿的信息预测值进行熵编码/解码时,包括在画面或条带中的块可使用共同的关于运动补偿的信息预测值。
可通过使用画面、条带或并行块内的特定区域或者通过使用CTU或CU内的特定区域,推导出运动补偿的信息预测值。在一个实施例中,画面、条带、并行块、CTU或CU内的特定区域的帧间预测指示符可用作帧间预测指示符预测值。这里,可省略对运动补偿的信息预测值的熵编码/解码,并且可对关于运动补偿的信息差值进行熵编码/解码。
可选地,可从与当前块相邻的编码/解码的邻近块推导出关于运动补偿的信息预测值。在一个实施例中,可将与当前块相邻的编码/解码的邻近块的帧间预测指示符预测值设置为当前块的帧间预测指示符。这里,当前块的邻近块可包括用于推导空间运动矢量候选的块和用于推导时间运动矢量候选的块中的至少一个。
当帧间预测指示符预测值和帧间预测指示符差值被使用时,解码设备可通过将帧间预测指示符预测值和帧间预测指示符差值求和来计算预测块的帧间预测指示符值。
可基于至少一个编码参数对关于运动补偿的信息的差值进行熵编码/解码。
可基于至少一个编码参数将关于运动补偿的信息、关于运动补偿的信息的预测值、或关于运动补偿的信息的差值推导为当前块的关于运动补偿的信息、关于运动补偿的信息的预测值、或关于运动补偿的信息的差值。
不是对当前块的关于运动补偿的信息进行熵编码/解码,而是将与当前块相邻的编码/解码块的关于运动补偿的信息用作当前块的关于运动补偿的信息。在一个实施例中,可将当前块的帧间预测指示符设置为与当前块相邻的编码/解码的邻近块的帧间预测指示符相同的值。
关于运动补偿的信息可包括以下项中的至少一个:运动矢量、是否使用跳过模式的信息(skip_flag)、关于是否使用合并模式的信息(merge_flag)、合并索引信息(merge_index)、关于运动矢量分辨率的信息、关于重叠块运动补偿的信息、关于局部照度补偿的信息、关于仿射运动补偿的信息、关于解码器侧运动矢量推导的信息、关于双向光流的信息。
关于运动矢量分辨率的信息可以是表示特定分辨率是否用于运动矢量和运动矢量差值中的至少一个的信息。这里,分辨率可指精度。另外,特定分辨率可被设置为整数像素(整数-pel)单位、1/2像素(1/2-pel)单位、1/4像素(1/4-pel)单位、1/8像素(1/8-pel)单位、1/16像素(1/16-pel)单位、1/32像素(1/32-pel)单位、和1/64像素(1/64-pel)单位中的至少一个。
关于重叠块运动补偿的信息可指这样的信息,其中,该信息表示当执行当前块的运动补偿时是否通过另外使用在空间上与当前块相邻的邻近块的运动矢量来计算当前块的预测块的加权和。
关于局部照度补偿的信息可以是表示在产生当前块的预测块时是否应用了权重因子值和偏移值中的至少一个的信息。这里,权重因子值和偏移值可以是基于参考块计算出的值。
关于仿射运动补偿的信息可以是表示在执行当前块的运动补偿时是否使用仿射运动模型的信息。这里,仿射运动模型可以是通过使用多个参数将单个块划分为多个子块并且通过使用代表性运动矢量计算划分出的子块的运动矢量的模型。
关于解码器侧运动矢量推导的信息可以是表示运动补偿所需的运动矢量是否由解码器推导和使用的信息。可不基于关于解码器侧运动矢量推导的信息对关于运动矢量的信息进行熵编码/解码。当关于解码器侧运动矢量推导的信息表示解码器推导并使用运动矢量时,可对关于合并模式的信息进行熵编码/解码。换言之,关于解码器侧运动矢量推导的信息可表示解码器是否使用合并模式。
关于双向光流的信息可指表示是否通过将运动矢量校正为像素单元或子块单元来执行运动补偿的信息。可不基于关于双向光流的信息对像素单元或子块单元的运动矢量进行熵编码/解码。这里,运动矢量的校正可以指将块单元的运动矢量改变为像素单元或子块单元的运动矢量值。
当前块可通过使用关于运动补偿的至少一条信息来执行运动补偿,并且对至少一条关于运动补偿的信息进行熵编码/解码。
关于运动补偿的信息所应用到的区域可被定义为粒度信息。如上所述,当关于运动补偿的信息以预定块尺寸或预定块深度被熵编码/解码时,预定块尺寸或预定块深度可被表示为粒度信息。粒度信息可包括在关于运动补偿的信息中。
可另外对粒度信息进行熵编码/解码。这里,可以以CTU、CTU的子单元、CU和PU中的至少一个单元对粒度信息进行熵编码/解码。
可基于关于运动补偿的信息、编码参数和其他语法元素值中的至少一个来确定粒度信息。另外,可基于关于运动补偿的信息、编码参数和其他语法元素值中的至少一个来对粒度信息进行熵编码/解码。
图25是示出关于粒度信息的语法的示例的示图。
参考图25,ref_idx_granularity可以是表示粒度信息的语法元素,其中,在CTU中按照所述语法元素应用参考画面索引。
粒度信息可指定共享关于运动补偿的信息的预定区域,或者指定允许独立地/并行地执行多个块的运动补偿的预定区域。粒度信息可被表示为相应区域的尺寸、深度、位置(例如,四个拐角样本之中的至少一个坐标)、形状和划分次数中的至少一个。
可以通过指定块尺寸或预定块深度来表示粒度信息。在一个实施例中,当粒度信息被指定为预定块尺寸时,粒度信息可具有NxM块尺寸,诸如256x256、128x128、64x64、32x32、16x16、8x8等。这里,N或M可指等于或大于0的正整数,N和M可具有相同的值(正方形形状),或者可具有不同的值(非方形形状)。
当粒度信息被指定为预定块深度时,粒度信息可以是正整数,诸如0、1、2、3、......N等。这里,N可指正整数。
粒度信息可以以块为单位被熵编码/解码,或者可以以更高级别被熵编码/解码。在一个实施例中,粒度信息可以以诸如CTU、CTU的子单元、CU、PU等的块为单位被熵编码/解码,或者可以以诸如视频参数集、序列参数集、画面参数集、自适应参数集、条带头等的更高级别被熵编码/解码。
可以基于表示粒度信息和粒度信息预测值之间的差值的粒度信息差值来对粒度信息进行熵编码/解码。在一个实施例中,可对粒度信息预测值和粒度信息差值进行熵编码/解码。
这里,粒度信息差值可以以CTU、CTU的子单元、CU和PU中的任何一个的块为单位被熵编码/解码。粒度信息预测值可以以更高级别被熵编码/解码。当以画面或条带为单位对粒度信息预测值进行熵编码/解码时,包括在画面或条带中的块可使用共同的粒度信息预测值。
可通过使用画面、条带或并行块的特定区域或者通过使用CTU或CU内的特定区域来推导出粒度信息预测值。在一个实施例中,画面、条带、并行块、CTU或CU的特定区域的粒度信息值可用作粒度信息预测值。这里,省略对粒度信息预测值的熵编码/解码,并且对粒度信息差值进行熵编码/解码。
可选地,粒度信息预测值可从与当前块相邻的编码/解码的邻近块推导出。在一个实施例中,可将与当前块相邻的编码/解码的邻近块的粒度信息值设置为当前块的粒度信息预测值。这里,当前块的邻近块可包括用于推导空间运动矢量候选的块和用于推导时间运动矢量候选的块中的至少一个。
另外,可通过使用在编码设备和解码设备中预设的块尺寸或块深度来推导粒度信息预测值。这里,省略对粒度信息预测值的熵编码/解码,并且对粒度信息差值进行熵编码/解码。
当粒度信息预测值和粒度信息差值被使用时,解码设备可通过将粒度信息预测值和粒度信息差值求和来计算当前块的粒度信息值。
不是对当前块的粒度信息进行熵编码/解码,而是可将与当前块相邻的编码/解码块的粒度信息用作当前块的粒度信息。在一个实施例中,可将当前块的粒度信息设置为与当前块相邻的编码/解码的邻近块的粒度信息相同的值。
可选地,可通过使用在编码设备和解码设备中预设的值来推导粒度信息。这里,预设值可以是预设块尺寸或预设块深度。
可将粒度信息熵编码/解码为关于运动补偿的各个信息的标志信息。这里,粒度信息可表示关于运动补偿的每条信息是否在预定块尺寸或预定块深度中具有预设值。这里,预设值可以是在编码设备和解码设备中共同设置的值。在一个实施例中,参考画面索引的粒度信息可表示参考画面索引是否在预定块尺寸或预定块深度中具有预设值。当参考画面索引的粒度信息是第一值时,块尺寸小于预定块尺寸或块深度深于预定块深度的块可将预设值用作参考画面索引。当参考画面索引的粒度信息是第二值时,块尺寸小于预定块尺寸或块深度深于预定块深度的块可不将预设值用作参考画面索引。
另外,当粒度信息以诸如画面、条带等的更高级别被熵编码/解码时,指示将被熵编码/解码的粒度信息是否与应用于当前块的粒度信息相同的标志信息可被熵编码/解码。当熵编码/解码的标志信息是第一值时,应用于当前块的粒度信息可被相同地确定为诸如画面、条带等的更高级别的粒度信息。可选地,当熵编码/解码的标志信息是第二值时,应用于当前块的粒度信息可被另外熵编码/解码。
可选地,当粒度信息从当前块的邻近块的粒度信息被预测时,指示邻近块的粒度信息是否与应用于当前块的粒度信息相同的标志信息可被熵编码/解码。当熵编码/解码的标志信息是第一值时,应用于当前块的粒度信息可被相同地确定为邻近块的粒度信息。可选地,当熵编码/解码的标志信息是第二值时,应用于当前块的粒度信息可被另外熵编码/解码。
可选地,当通过使用编码设备和解码设备中预设的值推导粒度信息时,可对指示通过使用预设值推导出的粒度信息是否与应用于当前块的粒度信息相同的标志信息进行熵编码/解码。当熵编码/解码的标志信息是第一值时,应用于当前块的粒度信息可被相同地确定为在编码设备和解码设备中预设的值。可选地,当熵编码/解码的标志信息是第二值时,应用于当前块的粒度信息可被另外熵编码/解码。
粒度信息可通过指定在编码设备和解码设备中预设的组之一的索引信息被推导出。这里,可对指定粒度信息的索引信息进行熵编码/解码。
当描述的标志信息中的任何一个是第二值,并且应用于当前块的粒度信息被另外熵编码/解码时,另外熵编码/解码的粒度信息可以是将在编码设备和解码设备中预定义的组之一指定为粒度信息的索引信息。这里,根据索引信息指定的预定义的组可以是一组粒度信息值或粒度信息差值。
在下文中,将描述通过使用粒度信息来共享关于运动补偿的信息的实施例。这里,关于运动补偿的信息可包括以下项中的至少一个:运动矢量候选、运动矢量候选列表、合并候选、合并候选列表、帧间预测指示符、参考画面索引、运动矢量候选索引、运动矢量残差、预测列表利用标志、权重因子值、偏移值、关于是否使用跳过模式的信息、关于是否使用合并模式的信息、合并索引信息、关于运动矢量分辨率的信息、关于重叠块运动补偿的信息、关于局部照度补偿的信息、关于仿射运动补偿的信息、关于解码器侧运动矢量推导的信息、以及关于双向光流的信息。
如上所述,粒度信息可以是表示预定块尺寸或预定块深度的信息。
当粒度信息是表示预定块的信息时,块尺寸小于粒度信息的块可基于粒度信息共享关于运动补偿的信息。这里,块尺寸小于粒度信息的块可以是存在于具有由粒度信息指示的块尺寸的块内部的下层块,或者可以是块尺寸与由粒度信息指示的块尺寸相同的块。
当粒度信息是表示预定块深度的信息时,块深度比粒度信息深的块可基于粒度信息共享关于运动补偿的信息。这里,块深度比粒度信息深的块可以是存在于具有由粒度信息指示的块深度的块内部的下层块,或者可以是块深度比由粒度信息指示的块深度深的块或者具有由粒度信息指示的块深度的块。
在一个实施例中,当帧间预测指示符是PRED_LX(X是诸如0、1、2、3等的整数)时,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享参考画面列表LX的参考画面索引。这里,参考画面索引可以是包括0的正整数。
当帧间预测指示符是PRED_BI、PRED_TRI或PRED_QUAD时,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享参考画面列表L0、L1...LX中的至少一个的两个、三个或四个参考画面索引。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享PRED_L0、PRED_L1、PRED_L2、PRED_L3、PRED_BI、PRED_TRI和PRED_QUAD中的至少一个,作为帧间预测指示符。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享0、1、2、3、4或更多个正整数值中的至少一个,作为参考画面索引。
在一个实施例中,当帧间预测指示符是PRED_L0或PRED_L1时,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享0、1、2、3、4或更多个正整数值中的至少一个,作为每个参考画面列表L0或L1的参考画面索引。
在一个实施例中,当帧间预测指示符是PRED_BI时,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享0、1、2、3、4或更多个正整数值中的至少一个,作为各个参考画面列表L0和L1的参考画面索引。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享0、1、2、3、4或更多个正整数值中的至少一个,作为运动矢量候选索引。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息将预设固定值用作运动矢量残差值。这里,预设固定值可以是具有包括(0,0)的整数形式的二维矢量值。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息将预设固定值用作运动矢量预测值。这里,预设固定值可以是具有包括(0,0)的整数形式的二维矢量值。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息将预设固定值用作运动矢量。这里,预设固定值可以是具有包括(0,0)的整数形式的二维矢量值。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享实数值和包括0的整数值中的至少一个,作为权重因子值。
在一个实施例中,块尺寸小于粒度信息的块或块深度深于粒度信息的块可基于粒度信息共享包括0的整数值中的至少一个,作为偏移值。
这里,共享关于运动补偿的信息可意指:块可具有相同的关于运动补偿的信息,或者块可通过使用相同的关于运动补偿的信息来执行运动补偿。
在对粒度信息进行熵编码/解码之后,可对与粒度信息相应的关于运动补偿的信息进行熵编码/解码。这里,将被熵编码/解码的关于运动补偿的信息可被应用于由粒度信息指示的区域(块尺寸小于粒度信息的块或块深度深于粒度信息的块)或者在所述区域中被共享。在一个实施例中,当具有128×128块尺寸的CTU中的指示32×32块尺寸的粒度信息以及与粒度信息相应的参考画面索引被熵编码/解码时,熵编码/解码的参考画面索引可被共同应用于相应CTU内的块尺寸小于32×32块尺寸的块。
另外,可将关于由粒度信息指示的区域中的运动补偿的信息确定为在编码器和解码器中预设的固定值。在一个实施例中,当具有128×128块尺寸的CTU中的指示32×32块尺寸的粒度信息被熵编码/解码时,被确定为预设固定值的参考画面索引可被共同应用于相应CTU内的块尺寸小于32×32块尺寸的块。
图26和图27是示出由粒度信息指示的区域的示图。假设图26和图27中的CTU的块尺寸为64×64,将被熵编码/解码的粒度信息以8×8块尺寸表示,并且在编码器和解码器中预设的固定值被确定为由粒度信息指示的区域中的参考画面索引。
参照图26,由粒度信息指示的区域可指块尺寸等于或小于由粒度信息表示的8×8块尺寸的块。这里,图26的具有阴影区域的块可相应于由粒度信息指示的区域,被确定为预设固定值的参考画面索引可被应用于相应的块。
参照图27,由粒度信息指示的区域可指块尺寸小于由粒度信息表示的8×8块尺寸的块。这里,图27的具有阴影区域的块可相应于由粒度信息指示的区域,被确定为预设固定值的参考画面索引可被应用于相应的块。另外,被确定为预设固定值的参考画面索引可不被应用于暗区域。在一个实施例中,当基于将被熵编码/解码的标志信息而标志信息指示第一值时,可将被预设为固定值的参考画面索引应用于由粒度信息指示的区域(阴影区域)。当标志信息指示第二值时,被预设为固定值的参考画面索引可不被应用于由粒度信息指示的区域(阴影区域)。
当比较块之间的尺寸时,小于预定块可意指:块内存在的样本的总数很小。在一个实施例中,32x 16的块具有512个样本,因此块的尺寸小于具有1024个样本的32x32的块。4x16的块具有64个样本,因此块的尺寸等于8x8的块。
在上文中,由粒度信息指示的区域被描述为块尺寸小于由粒度信息指示的块尺寸的块、或者块尺寸等于或小于由粒度信息指示的块尺寸的块。
然而,不限于此,根据实施例,由粒度信息指示的区域可以是块尺寸大于由粒度信息指示的块尺寸的块、或者块尺寸等于或大于由粒度信息指示的块尺寸的块。换言之,当粒度信息指示8×8块尺寸时,图27中的具有暗区域的块可相应于由粒度信息指示的区域,并且可共享关于运动补偿的信息。
可通过使用编码参数将至少一条关于运动补偿的信息或粒度信息熵编码/解码为比特流,或者可通过使用至少一个编码参数来推导出至少一条关于运动补偿的信息。
当对关于运动补偿的信息或粒度信息进行熵编码/解码时,可使用截断莱斯(Rice)二值化方法、K阶指数哥伦布二值化方法、约束的K阶指数哥伦布二值化方法、固定长度二值化方法、一元二值化方法或截断的一元二值化方法。
当对关于运动补偿的信息或粒度信息进行熵编码/解码时,可通过使用以下信息中的至少一个来确定上下文模型:与当前块相邻的邻近块的关于运动补偿的信息、邻近块的粒度信息、先前编码/解码的关于运动补偿的信息、先前编码/解码的粒度信息、当前块的深度信息和当前块的尺寸信息。
另外,当对关于运动补偿的信息或粒度信息进行熵编码/解码时,可通过将以下信息中的至少一个用作当前块的运动补偿信息或粒度信息的预测值来执行熵编码/解码:邻近块的关于运动补偿的信息、邻近块的粒度信息、先前编码/解码的关于运动补偿的信息、先前编码/解码的粒度信息、当前块的深度信息、以及当前块的尺寸信息。
可针对每个亮度信号和色度信号执行以上帧间编码/解码处理。例如,可将以上帧间编码/解码处理的以下操作中的至少一个不同地应用于亮度信号和色度信号:获得帧间预测指示符;产生运动矢量候选列表;推导运动矢量;以及执行运动补偿。
以上帧间编码/解码处理可相同地应用于亮度信号和色度信号。例如,可将以上帧间编码/解码处理的帧间预测指示符、运动矢量候选列表、运动矢量候选、运动矢量和参考画面中的至少一个相同地应用于色度信号和亮度信号。
可在编码器和解码器中通过相同的方法执行以上方法。例如,可在编码器和解码器中通过相同的方法应用以上帧间编码/解码的以下方法中的至少一个方法:推导运动矢量候选列表;推导运动矢量候选;推导运动矢量;和进行运动补偿。另外,在编码器中应用以上方法的顺序可与在解码器中应用以上方法的顺序不同。
可根据编码块、预测块、块和单元中的至少一个的尺寸来应用本发明的以上实施例。这里,尺寸可被定义为以上实施例被应用于的最小尺寸或最大尺寸、或者最大尺寸和最小尺寸两者,或者尺寸可被定义为以上实施例被应用于的固定尺寸。另外,在以上实施例中,针对第一尺寸,可应用第一实施例,针对第二尺寸,可应用第二实施例。换言之,可根据尺寸组合地应用以上实施例。另外,当尺寸等于或大于最小尺寸,并且等于或小于最大尺寸时,可应用本发明的以上实施例。换言之,当块尺寸包括在预定范围内时,可应用以上实施例。
例如,当编码/解码目标块具有8×8尺寸或更大尺寸时,可应用以上实施例。例如,当编码/解码目标块具有16×16尺寸或更大尺寸时,可应用以上实施例。例如,当编码/解码目标块具有32×32尺寸或更大尺寸时,可应用以上实施例。例如,当编码/解码目标块具有64×64尺寸或更大尺寸时,可应用以上实施例。例如,当编码/解码目标块具有128×128尺寸或更大尺寸时,可应用以上实施例。例如,当编码/解码目标块具有4×4尺寸时,可应用以上实施例。例如,当编码/解码目标块具有8×8尺寸或更小尺寸时,可应用以上实施例。例如,当编码/解码目标块具有16×16尺寸或更小尺寸时,可应用以上实施例。例如,当编码/解码目标块具有8×8尺寸或更大尺寸并且具有16×16尺寸或更小尺寸时,可应用以上实施例。例如,当编码/解码目标块具有16×16尺寸或更大尺寸并且具有64×64尺寸或更小尺寸时,可应用以上实施例。
可以根据时间层来应用本发明的以上实施例。为了识别以上实施例可被应用于的时间层,可用信号发送附加标识符,并且可将以上实施例应用于由相应标识符指定的时间层。这里,标识符可被定义为实施例可被应用于的最小层或最大层、或者最小层和最大层两者,或者标识符可被定义为指示以上实施例可被应用于的特定层。
例如,当当前画面的时间层是最低层时,可应用以上实施例。例如,当当前画面的时间层标识符为0时,可应用以上实施例。例如,当当前画面的时间层标识符等于或大于1时,可应用以上实施例。例如,当当前画面的时间层是最高层时,可应用以上实施例。
如本发明的以上实施例,在产生参考画面列表和修改参考画面列表时使用的参考画面集可使用L0、L1、L2和L3中的至少一个参考画面列表。
根据本发明的以上实施例,当在去块滤波器中计算边界强度时,可使用编码/解码目标块的至少一个至最大N个运动矢量。这里,N是等于或大于1的正整数,并且可以是2、3、4等。
当在预测运动矢量时,运动矢量具有16像素(16-pel)单位、8像素(8-pel)单位、4像素(4-pel)单位、整数像素(整数-pel)单位、1/2像素(1/2-pel)单位、1/4像素(1/4-pel)单位、1/8像素(1/8-pel)单位、1/16像素(1/16-pel)单位、1/32像素(1/32-pel)单位和1/64像素(1/64-pel)中的至少一个时,可应用本发明的以上实施例。另外,当预测运动矢量时,可根据上述像素单位选择性地使用运动矢量。
可定义本发明的以上实施例可被应用于的条带类型,并且可根据相应的条带类型应用本发明的以上实施例。
例如,当条带类型是T(三向预测)-条带时,可通过使用至少三个运动矢量来产生预测块,并且可通过计算至少三个预测块的加权和来将至少三个预测块的加权和用作编码/解码目标块的最终预测块。例如,当条带类型是Q(四向预测)-条带时,可通过使用至少四个运动矢量来产生预测块,由此,通过计算至少四个预测块的加权和,可将至少四个预测块的加权和用作编码/解码目标块的最终预测块。
本发明的以上实施例可被应用于使用运动矢量预测的帧间预测和运动补偿方法,并且可被应用于使用跳过模式或合并模式的帧间预测和运动补偿方法。
本发明的以上实施例可被应用于的块形状可具有正方形形状或非正方形形状。
在上文中,参照图12至图27描述了根据本发明的使用粒度信息的视频编码方法和视频解码方法。在下文中,将参照图28和图29详细描述根据本发明的视频解码方法、视频编码方法、视频解码器、视频编码器和比特流。
图28是示出根据本发明的视频解码方法的示图。
参照图28,首先,在步骤S2810,可获得粒度信息,并且在步骤S2820,可基于粒度信息确定共享区域。这里,共享区域可指运动补偿的信息被共享的块的区域。
然后,在步骤S2830-是,当当前块相应于共享区域时,在步骤S2840,可通过使用共享区域的运动信息来产生当前块的预测块。
这里,粒度信息可以是表示预定块尺寸或预定块深度的信息。
可将块尺寸小于由粒度信息表示的预定块尺寸的至少一个块的区域确定为共享区域。或者,可将块深度深于由粒度信息表示的预定块深度的至少一个块的区域确定为共享区域。
共享区域的运动信息可以是共同应用于与共享区域相应的至少一个块的运动信息。
另外,可基于预定义的值来确定共享区域的运动信息。这里,预定义的值可以是在编码器和解码器中固定的值。
此外,可以以视频参数集、序列参数集、画面参数集、自适应参数集、条带头、编码树单元(CTU)和编码单元(CU)中的任何一个级别推导共享区域的运动信息并对共享区域的运动信息进行熵解码。
共享区域的运动信息可包括多个运动矢量候选列表和关于加权和的信息。这里,可通过将加权和的信息应用于基于多个运动矢量候选列表产生的多个预测块来产生当前块的预测块。
图29是示出根据本发明的视频编码方法的示图。
参照图29,首先,在步骤S2910,可确定共享区域,并且在步骤S2920-是,当当前块相应于共享区域时,在步骤S2930,可通过使用共享区域的运动信息产生当前块的预测块。
然后,在步骤S2940,可对确定的共享区域的粒度信息进行编码。
这里,粒度信息可以是表示预定块尺寸或预定块深度的信息。
共享区域的运动信息可以是被共同应用于与共享区域相应的至少一个块的运动信息。
另外,可基于预定义的值来确定共享区域的运动信息。这里,预定义的值可以是在编码器和解码器中预设的固定值。
此外,可以以视频参数集、序列参数集、画面参数集、自适应参数集、条带头、编码树单元(CTU)和编码单元(CU)中的任何一个级别推导共享区域的运动信息并对共享区域的运动信息进行熵编码。
共享区域的运动信息可包括多个运动矢量候选列表和加权和的信息。这里,可通过将加权和的信息应用于基于多个运动矢量候选列表产生的多个预测块来产生当前块的预测块。
根据本发明的视频解码器可包括熵解码单元和帧间预测单元,其中,熵解码单元获得粒度信息,帧间预测单元基于粒度信息确定共享区域,并且当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块。
根据本发明的视频编码器可包括帧间预测单元和熵编码单元,其中,帧间预测单元确定共享区域,并且当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块,熵编码单元对确定的共享区域的粒度信息进行熵编码。
根据本发明的比特流可以是通过执行以下操作的视频编码方法产生的比特流:确定共享区域;当当前块相应于共享区域时,通过使用共享区域的运动信息产生当前块的预测块,并对确定的共享区域的粒度信息进行编码。
在上述实施例中,基于具有一系列步骤或单元的流程图描述了这些方法,但是本发明不限于这些步骤的顺序。相反,一些步骤可以与其他步骤同时或以不同顺序执行。另外,本领域普通技术人员应该理解,在不影响本发明的范围的情况下,流程图中的步骤不排除彼此,并且其他步骤可被添加到流程图中,或者步骤中的一些步骤可从流程图中删除。
以上描述的内容包括各个方面的示例。当然,出于描述各个方面的目的,不可能描述组件或方法的每个可想到的组合,但是本领域普通技术人员可认识到许多其他组合和排列是可能的。因此,本说明书旨在涵盖落入所附权利要求的精神和范围内的所有这些替换、修改和变化。
计算机可读存储介质可单独地或组合地包括程序指令、数据文件、数据结构等。记录在计算机可读存储介质中的程序指令可以是为本发明特别设计和构造的或者计算机软件领域的技术人员已知的任何程序指令。计算机可读存储介质的示例包括磁记录介质(诸如硬盘、软盘和磁带)、光学数据存储介质(诸如,CD-ROM或DVD-ROM)、磁光介质(诸如光盘)以及被特别构造用于存储和实现程序指令的硬件装置(诸如,只读存储器(ROM)、随机存取存储器(RAM)和闪存)。程序指令的示例不仅包括由编译器格式化的机器语言代码,而且包括可由计算机使用解释器实现的高级语言代码。硬件设备可被配置为由一个或更多个软件模块操作或者反之亦然,以进行根据本发明的处理。
尽管已经在特定项目(诸如,详细元件以及有限的实施例和附图)方面描述了本发明,但是仅提供它们以帮助更一般地理解本发明,并且本发明不限于上述实施例。本发明所属领域的技术人员将理解,可从以上描述进行各种修改和改变。
因此,本发明的精神不应限于上述实施例,并且所附权利要求及其等同物的整个范围将落入本发明的范围和精神内。
工业适用性
本发明可用在用于对图像进行编码/解码的设备中。

Claims (10)

1.一种对视频进行解码的方法,所述方法包括:
为当前块选择L0运动矢量候选和L1运动矢量候选;
通过将L0运动矢量差与所述L0运动矢量候选相加来推导出所述当前块的L0运动矢量;
通过将L1运动矢量差与所述L1运动矢量候选相加来推导出所述当前块的L1运动矢量;
基于所述L0运动矢量获得所述当前块的L0预测块;
基于所述L1运动矢量获得所述当前块的L1预测块;以及
基于所述L0预测块和所述L1预测块的加权和,获得所述当前块的最终预测块,
其中,仅针对L0方向和L1方向中的L0方向经由比特流显式地用信号发送运动矢量差信息。
2.根据权利要求1所述的方法,其中,针对所述L1方向,省略用信号发送所述运动矢量差信息。
3.根据权利要求2所述的方法,其中,所述L0运动矢量差是基于所述运动矢量差信息推导出的,以及
其中,所述L1运动矢量差的大小被设置为与所述L0运动矢量差相同。
4.根据权利要求1所述的方法,其中,所述方法还包括:
从多个运动矢量分辨率候选中选择所述当前块的运动矢量分辨率,以及
其中,所述多个运动矢量分辨率候选包括整数像素单位、半像素单位及四分之一像素单位。
5.根据权利要求4所述的方法,其中,根据所述当前块的运动矢量分辨率调整所述L0运动矢量差或所述L1运动矢量差中的至少一个。
6.根据权利要求1所述的方法,其中,通过将第一权重应用于所述L0预测块并将第二权重应用于所述L1预测块来执行所述加权和,以及
其中,所述第一权重和所述第二权重是基于从所述比特流解码的权重信息来确定的。
7.根据权利要求5所述的方法,其中,基于所述权重信息,将所述第一权重和所述第二权重的集合确定为多个候选集合中的一个候选集合,并且
其中,所述候选集合中的至少一个候选集合包括所述第一权重或所述第二权重为负值的候选。
8.根据权利要求6所述的方法,其中,基于所述当前块的尺寸来确定是否显式地用信号发送索引信息。
9.一种对视频进行编码的方法,所述方法包括:
基于当前块的L0运动矢量获得L0预测块;
基于所述当前块的L1运动矢量获得L1预测块;
基于所述L0预测块和所述L1预测块的加权和,获得所述当前块的最终预测块;
确定所述当前块的L0运动矢量候选和L1运动矢量候选;
通过从所述L0运动矢量中减去所述L0运动矢量候选来推导出L0运动矢量差;以及
通过从所述L1运动矢量中减去所述L1运动矢量候选来推导出L1运动矢量差,
其中,仅针对L0方向和L1方向中的L0方向,将运动矢量差信息编码成比特流。
10.一种存储比特流的方法,所述比特流被存储在计算机可读记录介质中,所述比特流通过根据权利要求9所述的编码方法生成。
CN202310763141.8A 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质 Pending CN116708785A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20160087896 2016-07-12
KR10-2016-0087896 2016-07-12
PCT/KR2017/007416 WO2018012851A1 (ko) 2016-07-12 2017-07-11 영상 부호화/복호화 방법 및 이를 위한 기록 매체
CN201780040562.0A CN109417629B (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780040562.0A Division CN109417629B (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质

Publications (1)

Publication Number Publication Date
CN116708785A true CN116708785A (zh) 2023-09-05

Family

ID=60951849

Family Applications (6)

Application Number Title Priority Date Filing Date
CN202310763141.8A Pending CN116708785A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310760543.2A Pending CN116708784A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN201780040562.0A Active CN109417629B (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310756764.2A Pending CN116708781A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310760123.4A Pending CN116708782A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310760341.8A Pending CN116708783A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质

Family Applications After (5)

Application Number Title Priority Date Filing Date
CN202310760543.2A Pending CN116708784A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN201780040562.0A Active CN109417629B (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310756764.2A Pending CN116708781A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310760123.4A Pending CN116708782A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质
CN202310760341.8A Pending CN116708783A (zh) 2016-07-12 2017-07-11 图像编码/解码方法以及用于该方法的记录介质

Country Status (4)

Country Link
US (2) US11800113B2 (zh)
KR (4) KR102275420B1 (zh)
CN (6) CN116708785A (zh)
WO (1) WO2018012851A1 (zh)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9510009B2 (en) * 2010-05-20 2016-11-29 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
CN107925758B (zh) * 2015-08-04 2022-01-25 Lg 电子株式会社 视频编译系统中的帧间预测方法和设备
CN116567226A (zh) * 2016-08-11 2023-08-08 Lx 半导体科技有限公司 图像编码/解码设备和图像数据的发送设备
US10880552B2 (en) * 2016-09-28 2020-12-29 Lg Electronics Inc. Method and apparatus for performing optimal prediction based on weight index
JP2019017066A (ja) * 2017-07-03 2019-01-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置、符号化方法及び復号方法
US10628165B2 (en) * 2017-08-17 2020-04-21 Agora Lab, Inc. Gain control for multiple description coding
KR101985686B1 (ko) 2018-01-19 2019-06-04 에스케이텔레콤 주식회사 수직 편파 안테나
WO2019151280A1 (ja) * 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019151795A1 (ko) * 2018-01-31 2019-08-08 가온미디어 주식회사 움직임 정보를 처리하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
WO2019210829A1 (en) * 2018-04-30 2019-11-07 Mediatek Inc. Signaling for illumination compensation
US11695967B2 (en) * 2018-06-22 2023-07-04 Op Solutions, Llc Block level geometric partitioning
MX2020013829A (es) 2018-06-29 2022-05-18 Beijing Bytedance Network Tech Co Ltd Poda parcial/total cuando se añade un candidato a hmvp para fusión/amvp.
WO2020003283A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating luts
KR20210025537A (ko) 2018-06-29 2021-03-09 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념
WO2020003270A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
CA3105330C (en) 2018-06-29 2023-12-05 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
TWI747000B (zh) * 2018-06-29 2021-11-21 大陸商北京字節跳動網絡技術有限公司 虛擬Merge候選
CN110662058B (zh) 2018-06-29 2023-06-30 北京字节跳动网络技术有限公司 查找表的使用条件
KR20240007298A (ko) 2018-06-29 2024-01-16 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut에서의 모션 후보들의 검사 순서
KR20240007299A (ko) 2018-06-29 2024-01-16 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 룩업 테이블의 업데이트: fifo, 제약된 fifo
CN110677648B (zh) 2018-07-02 2022-06-07 北京字节跳动网络技术有限公司 处理视频数据的方法、装置及非暂时性存储介质
CN117097893A (zh) * 2018-07-06 2023-11-21 Lg电子株式会社 图像编码/解码设备和图像数据发送设备
WO2020039408A1 (en) * 2018-08-24 2020-02-27 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation using temporal neighbors
CN111064959B (zh) 2018-09-12 2023-09-01 北京字节跳动网络技术有限公司 要检查多少个hmvp候选
EP3837836A4 (en) * 2018-09-18 2021-06-23 Huawei Technologies Co., Ltd. DIVISION WITH HIGH-LEVEL CONSTRAINT
WO2020061423A1 (en) * 2018-09-21 2020-03-26 Vid Scale, Inc. Affine motion estimation for affine model-based video coding
WO2020089823A1 (en) * 2018-10-31 2020-05-07 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation with adaptive sub-block size
WO2020094074A1 (en) * 2018-11-06 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Position-depending ordering of motion candidate list for geometric partitioning mode
KR20210089153A (ko) 2018-11-13 2021-07-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 화면 내 블록 복사를 위한 히스토리 기반 움직임 후보 리스트 구성
US11290743B2 (en) * 2018-12-08 2022-03-29 Qualcomm Incorporated Interaction of illumination compensation with inter-prediction
JP2020098986A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
WO2020130581A1 (ko) * 2018-12-19 2020-06-25 엘지전자 주식회사 이차 변환에 기반한 영상 코딩 방법 및 그 장치
CN113455001B (zh) * 2018-12-27 2024-04-09 英迪股份有限公司 视频编码/解码方法和装置
US10887611B2 (en) * 2018-12-27 2021-01-05 Qualcomm Incorporated Pruning for illumination compensation mode
KR102648159B1 (ko) 2019-01-10 2024-03-18 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut 업데이트의 호출
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
CN113330739A (zh) 2019-01-16 2021-08-31 北京字节跳动网络技术有限公司 Lut中的运动候选的插入顺序
US11683501B2 (en) * 2019-01-17 2023-06-20 Tencent America LLC Method and apparatus for video coding
US11595662B2 (en) * 2019-02-06 2023-02-28 Tencent America LLC Method and apparatus for neighboring block availability in video coding
WO2020164544A1 (en) * 2019-02-13 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Updating of history based motion vector prediction tables
CN113545085A (zh) * 2019-03-03 2021-10-22 北京字节跳动网络技术有限公司 基于图片头中的信息启用dmvr
MX2020014019A (es) * 2019-03-03 2021-03-25 Huawei Tech Co Ltd Un codificador, un decodificador, y metodos correspondientes que son utilizados para proceso de transformada.
CN112954331B (zh) 2019-03-11 2022-07-29 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
WO2020181542A1 (zh) * 2019-03-13 2020-09-17 北京大学 一种视频编码或解码方法、装置、设备及存储介质
WO2020192611A1 (en) 2019-03-22 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
US11089328B2 (en) * 2019-05-22 2021-08-10 Qualcomm Incorporated Bi-directional optical flow in video coding
CN113906760A (zh) * 2019-06-05 2022-01-07 北京字节跳动网络技术有限公司 用于帧间预测的运动信息推导
CN114208171A (zh) * 2019-06-14 2022-03-18 Lg电子株式会社 用于推导用于生成预测样本的权重索引信息的图像解码方法和装置
JP2022536967A (ja) * 2019-06-21 2022-08-22 ヴィド スケール インコーポレイテッド オプティカルフローによる動き補償のための精度精緻化
KR20220003116A (ko) 2019-06-24 2022-01-07 엘지전자 주식회사 머지 후보를 이용하여 예측 샘플을 도출하는 영상 디코딩 방법 및 그 장치
US11399195B2 (en) * 2019-10-30 2022-07-26 Tencent America LLC Range of minimum coding block size in video coding
CN113452870B (zh) * 2020-03-26 2024-04-09 腾讯美国有限责任公司 视频处理方法和装置

Family Cites Families (81)

* 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
KR100345447B1 (ko) * 2000-09-27 2002-07-26 한국전자통신연구원 스트리밍 서비스를 위한 가변 비트율 처리 방법
US20080075166A1 (en) * 2004-07-13 2008-03-27 Dolby Laboratories Licensing Corporation Unbiased Rounding for Video Compression
KR100714696B1 (ko) * 2005-06-24 2007-05-04 삼성전자주식회사 다계층 기반의 가중 예측을 이용한 비디오 코딩 방법 및장치
KR101352978B1 (ko) * 2006-01-16 2014-01-28 고려대학교 산학협력단 향상된 계층간 참조 영상 지정, 복호 방법 및 그 장치
CN102611892B (zh) * 2006-03-16 2014-10-08 华为技术有限公司 在编码过程中实现自适应量化的方法及装置
JP5021739B2 (ja) * 2006-07-12 2012-09-12 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置
KR101553850B1 (ko) * 2008-10-21 2015-09-17 에스케이 텔레콤주식회사 동영상 부호화/복호화 장치 및 그를 위한 적응적 가중치를 사용하는 적응 중첩 블록 움직임 보상 방법 및 장치
KR101452859B1 (ko) * 2009-08-13 2014-10-23 삼성전자주식회사 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
JP2011050001A (ja) * 2009-08-28 2011-03-10 Sony Corp 画像処理装置および方法
AU2010331511B2 (en) * 2009-12-18 2015-01-15 Sharp Kabushiki Kaisha Image filter, encoding device, decoding device, and data structure
WO2011074747A1 (en) * 2009-12-18 2011-06-23 Lg Electronics Inc. Method for partitioning cell identities according to cell type in wireless communication system and an apparatus therefor
WO2011074748A1 (en) * 2009-12-18 2011-06-23 Lg Electronics Inc. Method for partitioning cell identities according to cell type in wireless communication system and an apparatus therefor
US20110150328A1 (en) * 2009-12-21 2011-06-23 Electronics And Telecommunications Research Institute Apparatus and method for blockiing objectionable image on basis of multimodal and multiscale features
KR20120018906A (ko) * 2010-08-24 2012-03-06 삼성전자주식회사 컬러 영상과 깊이 영상의 모션 벡터 공유를 이용한 부호화/복호화 장치 및 방법
WO2012044124A2 (ko) 2010-09-30 2012-04-05 한국전자통신연구원 영상 부호화 방법과 복호화 방법 및 이를 이용한 영상 부호화 장치와 복호화 장치
WO2012090286A1 (ja) * 2010-12-27 2012-07-05 株式会社 東芝 動画像符号化方法及び動画像復号化方法
US9955155B2 (en) * 2010-12-31 2018-04-24 Electronics And Telecommunications Research Institute Method for encoding video information and method for decoding video information, and apparatus using same
KR101929026B1 (ko) * 2011-01-07 2018-12-13 엘지전자 주식회사 영상 정보 부호화 방법 및 복호화 방법과 이를 이용한 장치
KR102450324B1 (ko) * 2011-02-09 2022-10-04 엘지전자 주식회사 영상 부호화 및 복호화 방법과 이를 이용한 장치
GB2488830B (en) * 2011-03-10 2015-07-29 Canon Kk Method and device for encoding image data and method and device for decoding image data
US9247249B2 (en) * 2011-04-20 2016-01-26 Qualcomm Incorporated Motion vector prediction in video coding
WO2012148128A2 (ko) * 2011-04-24 2012-11-01 엘지전자 주식회사 인터 예측 방법과 이를 이용한 인코딩 방법, 디코딩 방법 및 장치
KR20120140592A (ko) * 2011-06-21 2012-12-31 한국전자통신연구원 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치
EP2725793A4 (en) 2011-06-27 2014-12-03 Panasonic Ip Corp America IMAGE DECODING METHOD, IMAGE ENCODING METHOD, IMAGE DECODING DEVICE, IMAGE ENCODING DEVICE, AND IMAGE ENCODING / DECODING DEVICE
DK3606076T3 (da) 2011-06-27 2021-01-18 Samsung Electronics Co Ltd Indkodning og afkodning af bevægelsesinformation
US8964833B2 (en) * 2011-07-19 2015-02-24 Qualcomm Incorporated Deblocking of non-square blocks for video coding
MX2014002347A (es) * 2011-08-29 2014-04-25 Ibex Pt Holdings Co Ltd Aparato para decodificar informacion de movimiento de modo de fusion.
KR20140057683A (ko) * 2011-08-29 2014-05-13 주식회사 아이벡스피티홀딩스 머지 모드에서 영상 부호화 방법
KR102379457B1 (ko) 2011-09-09 2022-03-28 엘지전자 주식회사 인터 예측 방법 및 그 장치
BR112014009435B1 (pt) * 2011-10-19 2023-01-17 Kt Corporation Método para decodificar um sinal de vídeo tendo um bloco atual a ser decodificado com um aparelho de decodificação
TWI679876B (zh) * 2011-10-31 2019-12-11 日商Jvc建伍股份有限公司 動態影像解碼裝置及動態影像解碼方法
RU2632154C1 (ru) 2011-11-08 2017-10-02 Электроникс Энд Телекоммьюникейшнз Рисерч Инститьют Способ и устройство для совместного использования списка кандидатов
EP2777267B1 (en) * 2011-11-11 2019-09-04 GE Video Compression, LLC Efficient multi-view coding using depth-map estimate and update
EP3657796A1 (en) * 2011-11-11 2020-05-27 GE Video Compression, LLC Efficient multi-view coding using depth-map estimate for a dependent view
EP2597872A3 (en) * 2011-11-23 2013-12-25 Humax Co., Ltd. Methods for encoding/decoding of video using common merging candidate set of asymmetric partitions
EP3703371B1 (en) * 2011-12-16 2021-08-04 JVCKENWOOD Corporation Dynamic image encoding device, dynamic image encoding method, dynamic image encoding program, dynamic image decoding device, dynamic image decoding method, and dynamic image decoding program
EP2800371A4 (en) * 2011-12-28 2015-08-12 Jvc Kenwood Corp VIDEO CODING DEVICE, VIDEO PROCESSING AND VIDEO PROGRAM, AND DEVICE, METHOD AND PROGRAM FOR VIDEO CODING
JPWO2013111596A1 (ja) * 2012-01-26 2015-05-11 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動画像符号化方法および動画像符号化装置
SI3833022T1 (sl) * 2012-04-12 2022-06-30 Jvckenwood Corporation Konstruiranje seznama kandidatov za spajanje
CN104170389B (zh) 2012-04-24 2018-10-26 联发科技股份有限公司 运动向量预测器的产生方法和装置及视点间运动向量预测器候选的产生方法
CN104604232A (zh) * 2012-04-30 2015-05-06 数码士控股有限公司 用于编码多视点图像的方法及装置,以及用于解码多视点图像的方法及装置
WO2013189257A1 (en) * 2012-06-20 2013-12-27 Mediatek Inc. Method and apparatus of bi-directional prediction for scalable video coding
KR20140016823A (ko) * 2012-07-24 2014-02-10 한국전자통신연구원 영상의 복호화 방법 및 이를 이용하는 장치
US9906786B2 (en) * 2012-09-07 2018-02-27 Qualcomm Incorporated Weighted prediction mode for scalable video coding
CN105052134B (zh) * 2012-10-01 2019-09-03 Ge视频压缩有限责任公司 一种可伸缩视频编解码方法及计算机可读存储介质
US9197568B2 (en) * 2012-10-22 2015-11-24 Electronics And Telecommunications Research Institute Method for providing quality of service in software-defined networking based network and apparatus using the same
US20140112187A1 (en) * 2012-10-23 2014-04-24 Electronics And Telecommunications Research Institute Apparatus for flow-based network monitoring and network monitoring system
US10136143B2 (en) * 2012-12-07 2018-11-20 Qualcomm Incorporated Advanced residual prediction in scalable and multi-view video coding
US9615090B2 (en) * 2012-12-28 2017-04-04 Qualcomm Incorporated Parsing syntax elements in three-dimensional video coding
US9357211B2 (en) * 2012-12-28 2016-05-31 Qualcomm Incorporated Device and method for scalable and multiview/3D coding of video information
US9800857B2 (en) * 2013-03-08 2017-10-24 Qualcomm Incorporated Inter-view residual prediction in multi-view or 3-dimensional video coding
US9491460B2 (en) * 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
KR20140122198A (ko) * 2013-04-05 2014-10-17 삼성전자주식회사 시점 합성 예측을 이용하기 위한 인터 레이어 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
EP2988509A4 (en) * 2013-04-17 2016-10-05 Samsung Electronics Co Ltd MULTI-VIEW VIDEO ENCODING METHOD USING VIEW SYNTHESIS PREDICTION AND APPARATUS THEREFOR, AND MULTI-VIEW VIDEO DECODING METHOD AND APPARATUS THEREOF
KR20140127177A (ko) * 2013-04-23 2014-11-03 삼성전자주식회사 시점 합성 예측을 이용한 다시점 비디오 부호화 방법 및 그 장치, 다시점 비디오 복호화 방법 및 그 장치
KR20140129607A (ko) * 2013-04-30 2014-11-07 주식회사 칩스앤미디어 동영상 처리 방법 및 장치
US8923640B1 (en) 2013-06-07 2014-12-30 Apple Inc. Coherence groups: region descriptors for low bit rate encoding
US9288507B2 (en) * 2013-06-21 2016-03-15 Qualcomm Incorporated More accurate advanced residual prediction (ARP) for texture coding
US10659817B2 (en) * 2013-07-15 2020-05-19 Hfi Innovation Inc. Method of sample adaptive offset processing for video coding
US9948915B2 (en) * 2013-07-24 2018-04-17 Qualcomm Incorporated Sub-PU motion prediction for texture and depth coding
US10158885B2 (en) * 2013-07-24 2018-12-18 Qualcomm Incorporated Simplified advanced motion prediction for 3D-HEVC
US10244253B2 (en) * 2013-09-13 2019-03-26 Qualcomm Incorporated Video coding techniques using asymmetric motion partitioning
US9473778B2 (en) * 2013-09-27 2016-10-18 Apple Inc. Skip thresholding in pipelined video encoders
WO2015057039A1 (ko) * 2013-10-18 2015-04-23 엘지전자 주식회사 멀티-뷰 비디오 코딩에 있어서, 뷰 합성 예측 방법 및 이를 이용한 머지 후보 리스트 구성 방법
US10368097B2 (en) * 2014-01-07 2019-07-30 Nokia Technologies Oy Apparatus, a method and a computer program product for coding and decoding chroma components of texture pictures for sample prediction of depth pictures
ES2716676T3 (es) * 2014-03-13 2019-06-14 Qualcomm Inc Predicción residual avanzada simplificada para la 3d-hevc
US9649558B2 (en) * 2014-03-14 2017-05-16 Sony Interactive Entertainment Inc. Gaming device with rotatably placed cameras
US9860559B2 (en) * 2014-03-17 2018-01-02 Mediatek Singapore Pte. Ltd. Method of video coding using symmetric intra block copy
US10158884B2 (en) * 2014-03-19 2018-12-18 Qualcomm Incorporated Simplified merge list construction process for 3D-HEVC
CN110351567B (zh) * 2014-06-16 2023-07-14 高通股份有限公司 3d-hevc中的简化移位合并候选者及合并列表导出
US9924191B2 (en) * 2014-06-26 2018-03-20 Qualcomm Incorporated Filters for advanced residual prediction in video coding
US9807410B2 (en) * 2014-07-02 2017-10-31 Apple Inc. Late-stage mode conversions in pipelined video encoders
US10230980B2 (en) * 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding
US11477477B2 (en) * 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
US10958927B2 (en) * 2015-03-27 2021-03-23 Qualcomm Incorporated Motion information derivation mode determination in video coding
WO2016195455A1 (ko) * 2015-06-04 2016-12-08 엘지전자(주) 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
US20180146213A1 (en) * 2015-06-05 2018-05-24 Telefonaktiebolaget Lm Ericsson (Publ) Filtering for video processing
US10887597B2 (en) * 2015-06-09 2021-01-05 Qualcomm Incorporated Systems and methods of determining illumination compensation parameters for video coding
US10356416B2 (en) * 2015-06-09 2019-07-16 Qualcomm Incorporated Systems and methods of determining illumination compensation status for video coding
US10271064B2 (en) * 2015-06-11 2019-04-23 Qualcomm Incorporated Sub-prediction unit motion vector prediction using spatial and/or temporal motion information

Also Published As

Publication number Publication date
US20240056583A1 (en) 2024-02-15
US20190297325A1 (en) 2019-09-26
CN116708781A (zh) 2023-09-05
KR102492816B1 (ko) 2023-01-27
CN109417629B (zh) 2023-07-14
US11800113B2 (en) 2023-10-24
WO2018012851A1 (ko) 2018-01-18
CN109417629A (zh) 2019-03-01
KR20230019179A (ko) 2023-02-07
KR20220042098A (ko) 2022-04-04
KR102379693B1 (ko) 2022-03-29
CN116708782A (zh) 2023-09-05
KR20180007336A (ko) 2018-01-22
KR102275420B1 (ko) 2021-07-09
CN116708783A (zh) 2023-09-05
CN116708784A (zh) 2023-09-05
KR20210088475A (ko) 2021-07-14

Similar Documents

Publication Publication Date Title
CN109417629B (zh) 图像编码/解码方法以及用于该方法的记录介质
US11743470B2 (en) Image encoding/decoding method and recording medium for same
US11509930B2 (en) Image encoding/decoding method and recording medium therefor
CN109804627B (zh) 图像编码/解码方法和设备
CN116016910A (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