CN116320476A - 对视频进行解码或编码的方法和发送视频数据的方法 - Google Patents

对视频进行解码或编码的方法和发送视频数据的方法 Download PDF

Info

Publication number
CN116320476A
CN116320476A CN202310355381.4A CN202310355381A CN116320476A CN 116320476 A CN116320476 A CN 116320476A CN 202310355381 A CN202310355381 A CN 202310355381A CN 116320476 A CN116320476 A CN 116320476A
Authority
CN
China
Prior art keywords
motion vector
current block
precision
candidates
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
CN202310355381.4A
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.)
KT Corp
Original Assignee
KT Corp
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 KT Corp filed Critical KT Corp
Publication of CN116320476A publication Critical patent/CN116320476A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/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/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/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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
    • 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/96Tree coding, e.g. quad-tree coding

Abstract

对视频进行解码或编码的方法和发送视频数据的方法,包括:确定当前块运动矢量精度和运动矢量差值;用运动矢量精度缩放运动矢量差值;生成当前块运动矢量候选列表;基于运动矢量候选列表和从比特流通知并指定运动矢量候选之一的第一信息获得运动矢量预测值;用运动矢量预测值和缩放运动矢量差值获得当前块运动矢量;确定运动矢量精度从包括多个运动矢量精度候选的运动矢量精度集中确定时,基于从比特流解析的指定多个运动矢量精度候选之一的索引信息确定当前块运动矢量精度;确定当前块运动矢量精度不使用运动矢量精度集确定时,不从比特流解析索引信息地确定当前块运动矢量精度;基于针对当前块而通知的标志来确定是否使用了运动矢量精度集。

Description

对视频进行解码或编码的方法和发送视频数据的方法
本申请为于2019年6月21日提交、申请号为201780079795.1、发明名称为“视频信号处理方法和装置”的中国专利申请的分案申请。所述母案申请的国际申请日为2017年12月15日,国际申请号为PCT/KR2017/014869,优先权日为2016年12月22日。
技术领域
本发明涉及用于处理视频信号的方法和装置,并且特别地涉及对视频进行解码或编码的方法和发送视频数据的方法。
背景技术
近来,在各种应用领域中对高分辨率和高质量图像例如高清晰度(HD)图像和超高清晰度(UHD)图像的需求已经增加了。然而,与常规图像数据相比,更高分辨率和质量的图像数据的数据量增加。因此,在通过使用介质例如常规的有线和无线宽带网络传输图像数据时,或者在通过使用常规的存储介质存储图像数据时,传输和存储的成本增加了。为了解决随着图像数据的分辨率和质量的提高而出现的这些问题,可以利用高效的图像编码/解码技术。
图像压缩技术包括各种技术,包括:根据当前图片的先前图片或后续图片来对包括在当前图片中的像素值进行预测的帧间预测技术;通过使用当前图片中的像素信息对包括在当前图片中的像素值进行预测的帧内预测技术;将短代码分配给出现频率高的值并且将长代码分配给出现频率低的值的熵编码技术等。可以通过使用这样的图像压缩技术来有效地压缩图像数据,并且可以传输或存储图像数据。
同时,随着对高分辨率图像的需求的增加,对作为新的图像服务的立体图像内容的需求也在增加。正在讨论用于有效地提供具有高分辨率和超高分辨率的立体图像内容的视频压缩技术。
发明内容
技术问题
本发明的目的是提供用于在对视频信号进行编码/解码时对编码/解码目标块高效地执行帧间预测的方法和装置。
本发明的目的是提供用于在对视频信号进行编码/解码时可变地确定运动矢量精度的方法和装置。
本发明的目的是提供用于通过比较块的运动矢量精度来补偿块的运动矢量精度之间的差异的方法和装置。
本发明要实现的技术目的不限于上述技术问题。并且,本领域的技术人员将从以下描述中清楚地理解未提及的其他技术问题。
技术方案
根据本发明的用于对视频信号进行解码的方法和装置可以确定当前块的运动矢量精度、生成当前块的运动矢量候选列表、根据运动矢量候选列表获得当前块的运动矢量预测值、确定运动矢量预测值的精度是否与当前块的运动矢量精度相同、在运动矢量预测值的精度不同于当前块的运动矢量精度的情况下根据当前块的运动矢量精度来缩放运动矢量预测值、以及使用缩放的运动矢量预测值来获得当前块的运动矢量。
根据本发明的用于对视频信号进行编码的方法和装置可以确定当前块的运动矢量精度、生成当前块的运动矢量候选列表、根据运动矢量候选列表获得当前块的运动矢量预测值、确定运动矢量预测值的精度是否与当前块的运动矢量精度相同、在运动矢量预测值的精度不同于当前块的运动矢量精度的情况下根据当前块的运动矢量精度来缩放运动矢量预测值、以及使用缩放的运动矢量预测值来获得当前块的运动矢量。
在根据本发明的用于对视频信号进行编码/解码的方法和装置中,根据包括多个运动矢量精度候选的运动矢量精度集来确定当前块的运动矢量精度。
在根据本发明的用于对视频信号进行编码/解码的方法和装置中,基于指定多个运动矢量精度候选中的一个的索引信息来确定当前块的运动矢量精度。
在根据本发明的用于对视频信号进行编码/解码的方法和装置中,运动矢量差值包括表示整数部分的前缀部分和表示分数部分的后缀部分。
在根据本发明的用于对视频信号进行编码/解码的方法和装置中,基于运动矢量预测值的精度与当前块的运动矢量精度之间的缩放比、通过移位操作来执行缩放。
根据本发明的一方面,提供了一种用于对视频进行解码的方法,所述方法包括:确定当前块的运动矢量精度;获得所述当前块的运动矢量差值;基于所述当前块的运动矢量精度来缩放所述运动矢量差值;生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;基于运动矢量候选列表和第一信息来获得所述当前块的运动矢量预测值,其中所述第一信息是从比特流进行信号通知的并且指定所述运动矢量候选列表中的运动矢量候选中之一;以及使用所述运动矢量预测值和经缩放的运动矢量差值来获得所述当前块的运动矢量,其中,当确定所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,基于从所述比特流解析出的索引信息来确定所述当前块的运动矢量精度,所述索引信息指定所述多个运动矢量精度候选中之一,其中,在确定所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下来确定时,在不从所述比特流解析所述索引信息的情况下确定所述当前块的运动矢量精度,并且其中,基于针对所述当前块而用信号通知的标志来确定是否使用了所述运动矢量精度集。
根据本发明的一方面,提供了一种用于对视频进行编码的方法,所述方法包括:确定当前块的运动矢量精度;获得所述当前块的运动矢量;生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;基于运动矢量候选列表中的运动矢量候选中之一来确定所述当前块的运动矢量预测值;基于所述运动矢量候选列表来确定所述当前块的运动矢量预测值;基于所述运动矢量和所述运动矢量预测值来得出运动矢量差值;以及对经缩放的运动矢量差值进行编码,其中所述经缩放的运动矢量差值是通过基于所述当前块的运动矢量精度对所述运动矢量差值进行缩放而获得的;其中,指定所述运动矢量候选中之一的第一信息被编码在比特流中,其中,当所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,将指定所述多个运动矢量精度候选中之一的索引信息编码到所述比特流中;其中,当所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下确定时,跳过对所述索引信息的编码,以及其中,指示是否使用了所述运动矢量精度集的标志被编码在所述比特流中。
根据本发明的一方面,提供了一种发送视频数据的方法,包括:确定当前块的运动矢量精度;获得所述当前块的运动矢量;生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;基于运动矢量候选列表中的运动矢量候选之一来确定所述当前块的运动矢量预测值;基于所述运动矢量候选列表确定所述当前块的运动矢量预测值;基于所述运动矢量和所述运动矢量预测值得出运动矢量差值;通过对经缩放的运动矢量差值进行编码来生成包括所述视频数据的比特流,所述经缩放的运动矢量差值是通过基于所述当前块的运动矢量精度对所述运动矢量差值进行缩放而获得的;以及发送包括所述视频数据的比特流,其中,指定所述运动矢量候选中之一的第一信息被编码在所述比特流中,其中,当确定所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,将指定所述多个运动矢量精度候选中之一的索引信息编码到所述比特流中,其中,当所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下确定时,跳过对所述索引信息的编码,以及其中,指示是否使用了所述运动矢量精度集的标志被编码在所述比特流中。
上面对本发明简要概述的特征仅是下面对本发明的详细描述的说明性方面,而不限制本发明的范围。
有益效果
根据本发明,可以对编码/解码目标块执行高效的帧间预测。
根据本发明,可以可变地确定运动矢量精度。
根据本发明,可以通过补偿块的运动矢量分辨率之间的差异来导出运动矢量。
本发明能够获得的效果不限于上述效果,并且本领域的技术人员根据下面的描述可以清楚地理解未提及的其他效果。
附图说明
图1是示出根据本发明的实施方式的用于对视频进行编码的装置的框图。
图2是示出根据本发明的实施方式的用于对视频进行解码的装置的框图。
图3是示出根据本发明的实施方式的基于树结构来分层次地分割编码块的示例的图。
图4是示出根据本发明的实施方式的允许基于二叉树的分割的分割类型的图。
图5是示出根据本发明的实施方式的仅允许预定类型的基于二叉树的分割的示例的图。
图6是用于说明根据应用本发明的实施方式的对与可允许的二叉树分割次数有关的信息进行编码/解码的示例的图。
图7是示出根据本发明的实施方式的可应用于编码块的分割模式的图。
图8是示出根据本发明的实施方式的帧间预测方法的流程图。
图9是示出当将合并模式应用于当前块时导出当前块的运动信息的过程的图。
图10示出了当AMVP模式应用于当前块时导出当前块的运动信息的过程。
图11和图12示出了根据当前块的运动矢量精度的运动矢量导出方法。
具体实施方式
可以对本发明进行各种修改,并且存在本发明的各种实施方式,现在将参照附图提供各种实施方式的示例,并且详细描述各种实施方式的示例。然而,本发明不限于此,并且示例性实施方式可以被解释为包括本发明的技术构思和技术范围内的所有修改、等同物或替代方案。在所描述的附图中,相似的附图标记指代相似的元件。
说明书中使用的术语“第一”、“第二”等可以用于描述各种部件,但是这些部件不被解释为限制于这些术语。这些术语仅用于区分一个部件与其他部件。例如,在不偏离本发明的范围的情况下,“第一”部件可以被称为“第二”部件,并且“第二”部件也可以类似地被称为“第一”部件。术语“和/或”包括多个项的组合或者多个术语中的任何一个术语。
应该理解的是,在本说明书中,在元件被简单地称为“连接至”或“耦接至”另一元件而不是“直接连接至”或“直接耦接至”另一元件时,该元件可以“直接连接至”或“直接耦接至”另一元件,或者该元件可以连接至或耦接至另一元件并且有其他元件介于它们之间。相反地,应该理解的是,在元件被称为“直接耦接”或“直接连接”至另一元件时,不存在中间元件。
本说明书中使用的术语仅用于描述特定实施方式,而并不意在限制本发明。以单数形式使用的表述包含复数形式的表述,除非其在上下文中具有明显不同的含义。在本说明书中,应当理解的是,诸如“包括”、“具有”等的术语意在指示本说明书中公开的特征、数字、步骤、动作、元件、部分或其组合的存在,并且不意在排除可以存在或可以添加一个或更多个其他特征、数字、步骤、动作、元件、部分或其组合的可能性。
在下文中,将参照附图详细描述本发明的优选实施方式。在下文中,附图中的相同构成元件由相同的附图标记表示,并且将省略对相同元件的重复描述。
图1是示出根据本发明的实施方式的用于对视频进行编码的装置的框图。
参照图1,用于对视频进行编码的装置100可以包括:图片分割模块110、预测模块120、125、变换模块130、量化模块135、重排模块160、熵编码模块165、逆量化模块140、逆变换模块145、滤波器模块150以及存储器155。
图1中所示的构成部分被独立地示出,以表示在用于对视频进行编码的装置中的彼此不同的特征功能。因此,这并不意味着每个构成部分都是由单独的硬件或软件的构成单元构成。换言之,为了方便起见,每个构成部分包括所列举的构成部分中的每一个。因此,可以将每个构成部分的至少两个构成部分进行组合以形成一个构成部分,或者可以将一个构成部分划分成多个构成部分以执行每个功能。在不偏离本发明的实质的情况下,组合每个构成部分的实施方式和划分一个构成部分的实施方式也被包括在本发明的范围内。
此外,构成部分中的一些可能不是执行本发明的基本功能的必不可少的构成部分,而是仅用于改善本发明的性能的可选构成部分。可以通过排除用于改善性能的构成部分而仅包括用于实现本发明的实质的必不可少的构成部分来实现本发明。排除仅用于改善性能的可选构成部分而仅包括必不可少的构成部分的结构也被包括在本发明的范围内。
图片分割模块110可以将输入图片分割成一个或更多个处理单元。此处,处理单元可以是预测单元(PU)、变换单元(TU)或编码单元(CU)。图片分割模块110可以将一个图片分割成多个编码单元、预测单元和变换单元的组合,并且可以通过使用预定准则(例如,成本函数)选择编码单元、预测单元和变换单元的一个组合来对图片进行编码。
例如,一个图片可以被分割成多个编码单元。可以使用递归树结构例如四叉树结构来将图片分割成编码单元。在一个图片或最大编码单元作为根的情况下被分割成其他编码单元的编码单元可以以子节点对应于所分割的编码单元的数目的方式进行分割。通过预定限制不能再分割的编码单元用作叶节点。即,当假设对于一个编码单元仅正方形分割可行时,一个编码单元可以最多被分割成四个其他编码单元。
在下文中,在本发明的实施方式中,编码单元(coding unit)可以意指执行编码的单元或者执行解码的单元。
预测单元可以是被分割成在单个编码单元中具有相同大小的正方形形状或矩形形状的分区中之一,或者预测单元可以是被分割成使得在单个编码单元中具有不同的形状/大小的分区中之一。
当基于编码单元生成经受帧内预测的预测单元并且编码单元不是最小编码单元时,可以在不将编码单元分割成多个预测单元N×N的情况下执行帧内预测。
预测模块120、125可以包括执行帧间预测的帧间预测模块120和执行帧内预测的帧内预测模块125。可以确定对于预测单元是执行帧间预测还是帧内预测,并且可以确定根据每个预测方法的详细信息(例如,帧内预测模式、运动矢量、参考图片等)。此处,经受预测的处理单元可以不同于针对其确定预测方法和详细内容的处理单元。例如,可以由预测单元确定预测方法、预测模式等,并且可以由变换单元执行预测。所生成的预测块与原始块之间的残差值(残差块)可以被输入至变换模块130。此外,用于预测的预测模式信息、运动矢量信息等可以与残差值一起由熵编码模块165进行编码,并且可以被传输至用于对视频进行解码的装置。在使用特定编码模式时,可以通过对原始块按其原样进行编码而不通过预测模块120、125生成预测块来传输至用于对视频进行解码的装置。
帧间预测模块120可以基于当前图片的先前图片或后续图片中的至少一个的信息来预测预测单元,或者在一些情况下,可以基于当前图片中的一些编码区域的信息来预测预测单元。帧间预测模块120可以包括参考图片插值模块、运动预测模块以及运动补偿模块。
参考图片插值模块可以从存储器155接收参考图片信息,并且可以根据参考图片来生成整像素(integer pixel)的或小于整像素的像素信息。在亮度像素的情况下,可以使用具有不同滤波器系数的基于DCT的8抽头插值滤波器来以1/4像素为单位生成整像素的或小于整像素的像素信息。在色度信号的情况下,可以使用具有不同滤波器系数的基于DCT的4抽头插值滤波器来以1/8像素为单位生成整像素的或小于整像素的像素信息。
运动预测模块可以基于由参考图片插值模块进行插值的参考图片来执行运动预测。作为用于计算运动矢量的方法,可以使用各种方法,例如,基于全搜索的块匹配算法(FBMA)、三步搜索(TSS)和新三步搜索算法(NTS)等。基于插值像素,运动矢量可以具有以1/2像素或1/4像素为单位的运动矢量值。运动预测模块可以通过改变运动预测方法来预测当前预测单元。作为运动预测方法,可以使用各种方法,例如,跳过方法、合并方法、AMVP(高级运动矢量预测)方法、帧内块复制方法等。
帧内预测模块125可以基于作为当前图片中的像素信息的与当前块相邻的参考像素信息来生成预测单元。在当前预测单元的相邻块是经受帧间预测的块并且因此参考像素是经受帧间预测的像素时,可以使用经受帧内预测的相邻块的参考像素信息来替换包括在经受帧间预测的块中的参考像素。即,在参考像素不可用时,可以使用可用参考像素中的至少一个参考像素来替换不可用的参考像素信息。
帧内预测中的预测模式可以包括依赖于预测方向使用参考像素信息的方向性预测模式和在执行预测时不使用方向信息的非方向性预测模式。用于预测亮度信息的模式可以与用于预测色度信息的模式不同,并且为了预测色度信息,可以利用用于预测亮度信息的帧内预测模式信息或者预测的亮度信号信息。
在执行帧内预测时,在预测单元的大小与变换单元的大小相同时,可以基于位于该预测单元的左侧、左上侧和顶部的像素对预测单元执行帧内预测。然而,在执行帧内预测时,在预测单元的大小与变换单元的大小不同时,可以使用基于变换单元的参考像素来执行帧内预测。此外,使用N×N分割的帧内预测可以仅用于最小编码单元。
在帧内预测方法中,可以在依赖于预测模式将AIS(自适应帧内平滑)滤波器应用于参考像素之后生成预测块。应用于参考像素的AIS滤波器的类型可以变化。为了执行帧内预测方法,可以根据与当前预测单元相邻的预测单元的帧内预测模式来预测当前预测单元的帧内预测模式。在通过使用根据相邻预测单元预测到的模式信息来预测当前预测单元的预测模式中,在当前预测单元的帧内预测模式与相邻预测单元的帧内预测模式相同时,可以使用预定标志信息来传输指示当前预测单元的预测模式与相邻预测单元的预测模式彼此相同的信息。在当前预测单元的预测模式与相邻预测单元的预测模式不同时,可以执行熵编码以对当前块的预测模式信息进行编码。
此外,可以基于由预测模块120、125生成的预测单元来生成包括关于残差值的信息的残差块,残差值是经受预测的预测单元与预测单元的原始块之间的差异。可以将所生成的残差块输入到变换模块130。
变换模块130可以通过使用诸如离散余弦变换(Discrete Cosine Transform,DCT)、离散正弦变换(Discrete Sine Transform,DST)和KLT的变换方法来对残差块进行变换,该残差块包括关于原始块与由预测模块120、125生成的预测单元之间的残差值的信息。可以基于用于生成残差块的预测单元的帧内预测模式信息来确定是应用DCT、DST还是KLT以对残差块进行变换。
量化模块135可以对由变换模块130变换到频域的值进行量化。量化系数可以依赖于块或图片的重要性而变化。可以将由量化模块135计算的值提供至逆量化模块140和重排模块160。
重排模块160可以对量化后的残差值的系数进行重排。
重排模块160可以通过系数扫描方法将二维块形式的系数改变成一维矢量形式的系数。例如,重排模块160可以使用锯齿形扫描方法从DC系数扫描至高频域的系数,以将系数改变成一维矢量形式。依赖于变换单元的大小和帧内预测模式,可以使用沿列方向扫描二维块形式的系数的竖直方向扫描或沿行方向扫描二维块形式的系数的水平方向扫描来代替锯齿形扫描。即,可以依赖于变换单元的大小和帧内预测模式来确定使用锯齿形扫描、竖直方向扫描和水平方向扫描中的哪种扫描方法。
熵编码模块165可以基于由重排模块160计算的值来执行熵编码。熵编码可以使用各种编码方法,例如指数哥伦布(Golomb)编码、上下文自适应变长编码(CAVLC)和上下文自适应二进制算术编码(CABAC)。
熵编码模块165可以对来自重排模块160以及预测模块120、125的各种信息进行编码,各种信息例如编码单元的残差值系数信息和块类型信息、预测模式信息、分割单元信息、预测单元信息、变换单元信息、运动矢量信息、参考帧信息、块插值信息、滤波信息等。
熵编码模块165可以对从重排模块160输入的编码单元的系数进行熵编码。
逆量化模块140可以对由量化模块135量化的值进行逆量化,并且逆变换模块145可以对由变换模块130变换的值进行逆变换。可以将由逆量化模块140和逆变换模块145生成的残差值与由预测模块120、125的运动估计模块、运动补偿模块和帧内预测模块预测的预测单元进行组合,使得可以生成重构块。
滤波器模块150可以包括去块滤波器、偏移校正单元以及自适应环路滤波器(ALF)中的至少一个。
去块滤波器可以移除由于重构图片中的块之间的边界而出现的块失真。为了确定是否执行去块,包括在块的若干行或若干列中的像素可以是确定是否对当前块应用去块滤波器的基础。当去块滤波器被应用于块时,可以依赖于所需的去块滤波强度来应用强滤波器或弱滤波器。此外,在应用去块滤波器时,可以并行地处理水平方向滤波和竖直方向滤波。
偏移校正模块可以在经受去块的图片中以像素为单位来校正与原始图片的偏移。为了对特定图片执行偏移校正,可以使用考虑每个像素的边缘信息来施加偏移的方法,或者可以使用下述方法:将图片的像素分割成预定数量的区域,确定要经受进行偏移的区域,并且对所确定的区域施加偏移。
可以基于通过将滤波后的重构图片与原始图片进行比较而获得的值来执行自适应环路滤波(ALF)。可以将包括在图片中的像素分成预定组,可以确定要应用于每个组的滤波器,并且可以针对每个组单独执行滤波。可以通过编码单元(CU)传输关于是否应用ALF和亮度信号的信息。用于ALF的滤波器的形状和滤波器系数可以依赖于每个块而变化。此外,无论应用目标块的特征如何,都可以应用相同形状(固定形状)的用于ALF的滤波器。
存储器155可以存储通过滤波器模块150计算的重构块或重构图片。可以在执行帧间预测时将所存储的重构块或重构图片提供至预测模块120、125。
图2是示出根据本发明的实施方式的用于对视频进行解码的装置的框图。
参照图2,用于对视频进行解码的装置200可以包括:熵解码模块210、重排模块215、逆量化模块220、逆变换模块225、预测模块230、235、滤波器模块240以及存储器245。
当从用于对视频进行编码的装置输入视频比特流时,可以根据用于对视频进行编码的装置的逆处理来对输入比特流进行解码。
熵解码模块210可以根据由用于对视频进行编码的装置的熵编码模块进行的熵编码的逆处理来执行熵解码。例如,对应于由用于对视频进行编码的装置执行的方法,可以应用各种方法,例如指数哥伦布编码、上下文自适应变长编码(CAVLC)和上下文自适应二进制算术编码(CABAC)。
熵解码模块210可以对关于由用于对视频进行编码的装置执行的帧内预测和帧间预测的信息进行解码。
重排模块215可以基于在用于对视频进行编码的装置中使用的重排方法对由熵解码模块210进行熵解码的比特流执行重排。重排模块可以将一维矢量形式的系数重构和重排成二维块形式的系数。重排模块215可以接收与在用于对视频进行编码的装置中执行的系数扫描有关的信息,并且可以经由基于在用于对视频进行编码的装置中执行的扫描顺序对系数进行逆扫描的方法来执行重排。
逆量化模块220可以基于从用于对视频进行编码的装置接收的量化参数和重排后的块的系数来执行逆量化。
逆变换模块225可以执行逆变换,即,逆DCT、逆DST和逆KLT,这是由变换模块对用于对视频进行编码的装置的量化结果执行的变换即DCT、DST和KLT的逆过程。可以基于用于对视频进行编码的装置所确定的变换单元来执行逆变换。用于对视频进行解码的装置的逆变换模块225可以依赖于多条信息例如预测方法、当前块的大小、预测方向等来选择性地执行变换方案(例如DCT、DST、KLT)。
预测模块230、235可以基于从熵解码模块210接收到的关于预测块生成的信息和从存储器245接收到的先前解码的块或图片信息来生成预测块。
如上所述,类似于用于对视频进行编码的装置的操作,在执行帧内预测时,在预测单元的大小与变换单元的大小相同时,可以基于位于预测单元的左侧、左上侧和顶部的像素对预测单元执行帧内预测。在执行帧内预测时,在预测单元的大小与变换单元的大小不同时,可以基于变换单元使用参考像素来执行帧内预测。此外,使用N×N分割的帧内预测可以仅用于最小编码单元。
预测模块230、235可以包括预测单元确定模块、帧间预测模块以及帧内预测模块。预测单元确定模块可以从熵解码模块210接收各种信息,例如预测单元信息、帧内预测方法的预测模式信息、关于帧间预测方法的运动预测的信息等,可以将当前编码单元分成预测单元,并且可以确定对预测单元执行帧间预测还是帧内预测。通过使用从用于对视频进行编码的装置接收的当前预测单元的帧间预测所需的信息,帧间预测模块230可以基于包括当前预测单元的当前图片的先前图片或后续图片中的至少一个的信息来对当前预测单元执行帧间预测。替选地,可以基于包括当前预测单元的当前图片中的一些预先重构区域的信息来执行帧间预测。
为了执行帧间预测,可以针对编码单元来确定跳过模式、合并模式、AMVP模式和帧间块复制模式中的哪一个模式用作包括在编码单元中的预测单元的运动预测方法。
帧内预测模块235可以基于当前图片中的像素信息来生成预测块。当预测单元是经受帧内预测的预测单元时,可以基于从用于对视频进行编码的装置接收到的预测单元的帧内预测模式信息来执行帧内预测。帧内预测模块235可以包括自适应帧内平滑(AIS)滤波器、参考像素插值模块以及DC滤波器。AIS滤波器对当前块的参考像素执行滤波,并且可以依赖于当前预测单元的预测模式来确定是否应用滤波器。可以通过使用从用于对视频进行编码的装置接收到的预测单元的预测模式和AIS滤波器信息来对当前块的参考像素执行AIS滤波。在当前块的预测模式是不执行AIS滤波的模式时,可以不应用AIS滤波器。
在预测单元的预测模式是基于通过对参考像素进行插值而获得的像素值来执行帧内预测的预测模式时,参考像素插值模块可以对参考像素进行插值以生成整像素的或小于整像素的参考像素。在当前预测单元的预测模式是在不对参考像素进行插值的情况下生成预测块的预测模式时,可以不对参考像素进行插值。在当前块的预测模式是DC模式时,DC滤波器可以通过滤波来生成预测块。
可以将重构块或重构图片提供至滤波器模块240。滤波器模块240可以包括去块滤波器、偏移校正模块以及ALF。
可以从用于对视频进行编码的装置接收关于是否将去块滤波器应用于相应的块或图片的信息以及关于在应用去块滤波器时应用强滤波器和弱滤波器中的哪个滤波器的信息。用于对视频进行解码的装置的去块滤波器可以从用于对视频进行编码的装置接收关于去块滤波器的信息,并且可以对相应的块执行去块滤波。
偏移校正模块可以基于在执行编码时应用于图片的偏移校正的类型和偏移值信息来对重构图片执行偏移校正。
可以基于从用于对视频进行编码的装置接收到的关于是否应用ALF的信息和ALF系数信息等来将AFL应用于编码单元。ALF信息可以被提供为被包括在特定参数集中。
存储器245可以存储重构图片或重构块以用作参考图片或参考块,并且可以将重构图片提供至输出模块。
如上面描述的,在本发明的实施方式中,为了便于说明,编码单元被用作表示用于编码的单元的术语,然而,编码单元可以用作执行解码以及编码的单元。
另外,当前块可以表示要进行编码/解码的目标块。并且,依赖于编码/解码步骤,当前块可以表示编码树块(或编码树单元)、编码块(或编码单元)、变换块(或变换单元)、预测块(或预测单元)等。
可以通过将图片划分成具有正方形或非正方形形状的基本块来对图片进行编码/解码。此时,基本块可以称为编码树单元。编码树单元可以被定义为序列或切片(slice)内允许的最大大小的编码单元。可以通过序列参数集、图片参数集或切片头(slice header)来用信号通知关于编码树单元是具有正方形形状还是具有非正方形形状的信息或者关于编码树单元的大小的信息。编码树单元可以被划分成更小大小的分区。此时,如果假设通过划分编码树单元而生成的分区深度是1,则通过划分具有深度1的分区而生成的分区深度可以被定义为2。即,通过划分编码树单元中的深度为k的分区而生成的分区可以被定义为具有深度k+1。
通过划分编码树单元而生成的任意大小的分区可以被定义为编码单元。编码单元可以被递归地划分或划分成用于执行预测、量化、变换或环路滤波等的基本单元。例如,通过划分编码单元而生成的任意大小的分区可以被定义为编码单元,或者可以被定义为变换单元或预测单元,该编码单元、变换单元或预测单元是用于执行预测、量化、变换或环路滤波等的基本单元。
可以基于竖直线和水平线中的至少之一来执行编码树单元或编码单元的分割。另外,分割编码树单元或编码单元的竖直线或水平线的数量可以是至少一个或更多个。例如,可以使用一个竖直线或一个水平线将编码树单元或编码单元划分成两个分区,或者可以使用两个竖直线或两个水平线将编码树单元或编码单元划分成三个分区。替选地,可以通过使用一个竖直线和一个水平线将编码树单元或编码单元分割成具有1/2的长度和宽度的四个分区。
在使用至少一个竖直线或至少一个水平线将编码树单元或编码单元分割为多个分区时,分区可具有统一的大小或不同的大小。替选地,任何一个分区可以具有与其余分区不同的大小。
在下面描述的实施方式中,假设编码树单元或编码单元被划分成四叉树结构或二叉树结构。然而,还可以使用更多数量的竖直线或更多数量的水平线来划分编码树单元或编码单元。
图3是示出根据本发明的实施方式的基于树结构来分层次地分割编码块的示例的图。
以预定的块单元对输入的视频信号进行解码。用于对输入的视频信号进行解码的这样的默认单元是编码块(coding block)。编码块可以是执行帧内/帧间预测、变换以及量化的单元。另外,以编码块为单位确定预测模式(例如,帧内预测模式或帧间预测模式),并且包括在编码块中的预测块可以共享所确定的预测模式。编码块可以是具有在8×8至64×64范围内的任意大小的正方形块或非正方形块,或者可以是具有128×128、256×256或更大的大小的正方形块或非正方形块。
具体地,可以基于四叉树和二叉树中的至少一个来分层次地分割编码块。此处,基于四叉树的分割可以意指将2N×2N的编码块分割成四个N×N的编码块,并且基于二叉树的分割可以意指将一个编码块分割成两个编码块。即使执行基于二叉树的分割,也可以在较低深度中存在正方形形状的编码块。
可以对称地或者非对称地执行基于二叉树的分割。此外,基于二叉树分割的编码块可以是正方形块或非正方形块,例如长方形形状。例如,允许基于二叉树的分割的分割类型可以包括2N×N(水平方向非正方形编码单元)或N×2N(竖直方向非正方形编码单元)的对称类型、nL×2N、nR×2N、2N×nU或2N×nD的非对称类型中的至少之一。
可以将基于二叉树的分割限制地允许为对称类型分割或非对称类型分割中的之一。在这种情况下,使用正方形块构造编码树单元可以与四叉树CU分割对应,并且使用对称非正方形块构造编码树单元可以与二叉树分割对应。使用正方形块和对称非正方形块构造编码树单元可以与四叉树CU分割和二叉树CU分割对应。
可以对不再执行基于四叉树的分割的编码块执行基于二叉树的分割。可以不再对基于二叉树分割的编码块执行基于四叉树的分割。
此外,可以依赖于较高深度的分割类型来确定较低深度的分割。例如,如果在两个或更多个深度中允许基于二叉树的分割,则可以在较低深度中仅允许与较高深度的二叉树分割相同的类型。例如,如果使用2N×N类型执行较高深度中的基于二叉树的分割,则也使用2N×N类型执行较低深度中的基于二叉树的分割。替选地,如果使用N×2N类型执行较高深度中的基于二叉树的分割,则也使用N×2N类型执行较低深度中的基于二叉树的分割。
相比之下,也可以在较低深度中仅允许与较高深度的二叉树分割类型不同的类型。
可以限制仅特定类型的基于二叉树的分割被用于序列、切片、编码树单元或编码单元。作为示例,对于编码树单元,可以仅允许2N×N类型或N×2N类型的基于二叉树的分割。可以在编码器或解码器中预定义可用分割类型。或者可以对关于可用分割类型的信息或关于不可用分割类型的信息进行编码,并且然后通过比特流用信号通知该信息。
图5是示出仅允许特定类型的基于二叉树的分割的示例的图。图5的(a)示出了仅允许N×2N类型的基于二叉树的分割的示例,并且图5的(b)示出了仅允许2N×N类型的基于二叉树的分割的示例。为了实现基于四叉树或二叉树的自适应分割,可以使用下述信息:指示基于四叉树分割的信息、关于允许基于四叉树的分割的编码块的大小/深度的信息、指示基于二叉树的分割的信息、关于允许基于二叉树的分割的编码块的大小/深度的信息、关于不允许基于二叉树的分割的编码块的大小/深度的信息、关于是沿竖直方向还是沿水平方向执行基于二叉树的分割的信息等。
另外,对于编码树单元或特定的编码单元,可以获得关于允许二叉树分割的次数、允许二叉树分割的深度或者允许二叉树分割的深度的数量的信息。这些信息可以以编码树单元或编码单元为单位进行编码,并且可以通过比特流发送到解码器。
例如,可以通过比特流对指示允许二叉树分割的最大深度的语法“max_binary_depth_idx_minus1”进行编码/解码。在这种情况下,max_binary_depth_idx_minus1+1可以指示允许二叉树分割的最大深度。
参照图6中所示的示例,在图6中,已经针对深度为2的编码单元和深度为3的编码单元执行了二叉树分割。因此,可以通过比特流对指示编码树单元中的二叉树分割已经被执行的次数(即,2次)的信息、指示在编码树单元中已经允许二叉树分割的最大深度(即,深度3)或在编码树单元中已经执行二叉树分割的深度的数量(即,2个(深度2和深度3))的信息中的至少之一进行编码/解码。
作为另一示例,可以针对每个序列或每个切片(slice)获得关于允许二叉树分割的次数、允许二叉树分割的深度或允许二叉树分割的深度的数量的信息中的至少之一。例如,该信息可以以序列、图片或切片单元为单位进行编码,并且通过比特流进行传输。因此,第一切片中的二叉树分割的次数、第一切片中允许二叉树分割的最大深度或第一切片中执行二叉树分割的深度的数量中的至少之一可以与第二切片不同。例如,在第一切片中,可以仅针对一个深度允许二叉树分割,而在第二切片中,可以针对两个深度允许二叉树分割。
作为另一示例,可以根据切片或图片的时间水平标识符(TemporalID)不同地设置允许二叉树分割的次数、允许二叉树分割的深度或允许二叉树分割的深度的数量。此处,时间水平标识符(TemporalID)用于标识具有视图、空间、时间或质量中的至少之一的可伸缩性的多个视频层中的每一个。
如图3中所示,可以基于四叉树将分区深度(拆分深度)为k的第一编码块300分割成多个第二编码块。例如,第二编码块310至340可以是具有第一编码块的一半宽度和一半高度的正方形块,并且第二编码块的分区深度可以增加至k+1。
分区深度为k+1的第二编码块310可以被分割成分区深度为k+2的多个第三编码块。可以通过依赖于分割方法选择性地使用四叉树和二叉树中之一来执行第二编码块310的分割。此处,可以基于指示基于四叉树分割的信息和指示基于二叉树分割的信息中的至少之一来确定分割方法。
在基于四叉树对第二编码块310进行分割时,可以将第二编码块310分割成具有第二编码块的一半宽度和一半高度的四个第三编码块310a,并且第三编码块310a的分区深度可以增加至k+2。相比之下,在基于二叉树对第二编码块310进行分割时,可以将第二编码块310分割成两个第三编码块。此处,两个第三编码块中的每一个可以是具有第二编码块的一半宽度和一半高度中的一者的非正方形块,并且分区深度可以增加至k+2。可以依赖于分割方向将第二编码块确定为水平方向或竖直方向的非正方形块,并且可以基于关于是沿竖直方向还是沿水平方向执行基于二叉树的分割的信息来确定分割方向。
同时,第二编码块310可以被确定为不再基于四叉树或二叉树进行分割的叶编码块。在这种情况下,叶编码块可以被用作预测块或变换块。
类似于第二编码块310的分割,第三编码块310a可以被确定为叶编码块,或者可以基于四叉树或二叉树被进一步分割。
同时,可以基于二叉树将基于二叉树分割的第三编码块310b进一步分割成竖直方向的编码块310b-2或水平方向的编码块310b-3,相关编码块的分区深度可以增加至k+3。替选地,第三编码块310b可以被确定为不再基于二叉树进行分割的叶编码块310b-1。在这种情况下,编码块310b-1可以被用作预测块或变换块。然而,可以基于以下信息中的至少之一来限制性地执行上述分割处理:关于允许基于四叉树的分割的编码块的大小/深度的信息、关于允许基于二叉树的分割的编码块的大小/深度的信息以及关于不允许基于二叉树的分割的编码块的大小/深度的信息。
表示编码块的大小的候选的数量可以被限制为预定数量,或者预定单元中的编码块的大小可以具有固定值。作为示例,序列或图片中的编码块的大小可以被限制为具有256×256、128×128或32×32。可以通过序列头或图片头来用信号通知指示序列中或图片中的编码块的大小的信息。
作为基于四叉树和二叉树的分割的结果,编码单元可以被表示为任意大小的正方形或矩形形状。
使用跳过模式、帧内预测、帧间预测或跳过方法中的至少之一来对编码块进行编码。一旦确定了编码块,则可以通过编码块的预测分割来确定预测块。可以通过指示编码块的分割类型的分割模式(Part_mode)来执行编码块的预测分割。可以根据编码块的分割模式来确定预测块的大小或形状。例如,根据分割模式确定的预测块的大小可以等于或小于编码块的大小。
图7是示出当通过帧间预测对编码块进行编码时可以应用于编码块的分割模式的图。
当通过帧间预测对编码块进行编码时,8个分割模式中的一个可以应用于编码块,如图4所示的示例。
当通过帧内预测对编码块进行编码时,可以将分割模式PART_2Nx2N或分割模式PART_NxN应用于编码块。
当编码块具有最小尺寸时,可以应用PART_NxN。这里,可以在编码器和解码器中预定义编码块的最小尺寸。或者,可以经由比特流来用信号通知关于编码块的最小尺寸的信息。例如,通过切片头(slice header)可以用信号通知编码块的最小尺寸,从而可以经由切片(slice)来定义编码块的最小尺寸。
通常,预测块可以具有从64×64到4×4的大小。然而,当通过帧间预测对编码块进行编码时,可以限制预测块不具有4×4大小,以在执行运动补偿时减小存储器带宽。
图8是示出根据本发明的实施方式的帧间预测方法的流程图。
参照图8,确定当前块的运动信息S810。当前块的运动信息可以包括与当前块有关的运动矢量、当前块的参考图片索引或当前块的帧间预测方向中的至少之一。
可以基于通过比特流来用信号通知的信息或与当前块相邻的相邻块的运动信息中的至少之一来获得当前块的运动信息。
图9是示出当将合并模式应用于当前块时导出当前块的运动信息的过程的图。
如果将合并模式应用于当前块,则可以根据当前块的空间相邻块导出空间合并候选S910。空间相邻块可以包括与当前块的顶部、左侧或角(例如,左上角、右上角或左下角中的至少之一)相邻的块中的至少之一。
可以将空间合并候选的运动信息设置为与空间相邻块的运动信息相同。
可以根据当前块的时间相邻块导出时间合并候选S920。时间相邻块可以意味着在并置图片(collocated picture)中包括的共同定位块(co-located block)。并置图片具有与包括当前块的当前图片不同的图片顺序计数(picture order count,POC)。并置图片可以被确定为参考图片列表中的具有预定义索引的图片,或者可以由从比特流用信号通知的索引确定。时间相邻块可以被确定为并置图片中的具有与当前块相同的位置和大小的块或者与具有与当前块相同的位置和大小的块相邻的块。例如,可以将并置图片中的包括具有与当前块相同的位置和大小的块的中心坐标的块或者与块的右下边界相邻的块中的至少之一确定为时间相邻块。
可以基于时间相邻块的运动信息来确定时间合并候选的运动信息。例如,可以基于时间相邻块的运动矢量来确定时间合并候选的运动矢量。另外,时间合并候选的帧间预测方向可以被设置为与时间相邻块的帧间预测方向相同。然而,时间合并候选的参考图片索引可以具有固定值。例如,时间合并候选的参考图片索引可以被设置为“0”。
此后,可以生成包括空间合并候选和时间合并候选的合并候选列表S930。如果合并候选列表中包括的合并候选的数量小于合并候选的最大数量,则可以在合并候选列表中包括将两个或更多个合并候选进行组合的组合合并候选或具有零运动矢量(0,0)的合并候选。
当生成合并候选列表时,可以基于合并候选索引来指定合并候选列表中包括的合并候选中的至少之一S940。
当前块的运动信息可以被设置为与由合并候选索引指定的合并候选的运动信息相同S950。例如,当通过合并候选索引选择空间合并候选时,可以将当前块的运动信息设置为与空间相邻块的运动信息相同。替选地,当通过合并候选索引选择时间合并候选时,可以将当前块的运动信息设置为与时间相邻块的运动信息相同。
图10示出了当AMVP模式应用于当前块时导出当前块的运动信息的过程。
当AMVP模式应用于当前块时,可以根据比特流对当前块的帧间预测方向或参考图片索引中的至少之一进行解码S1010。也就是说,当应用AMVP模式时,可以通过比特流基于编码信息来确定当前块的帧间预测方向或参考图片索引中的至少之一。
可以基于当前块的空间相邻块的运动矢量来确定空间运动矢量候选S1020。空间运动矢量候选可以包括根据当前块的顶部相邻块导出的第一空间运动矢量候选和根据当前块的左相邻块导出的第二空间运动矢量候选中的至少之一。这里,顶部相邻块可以包括与当前块的顶部或右上角相邻的块中的至少之一,并且当前块的左相邻块可以包括与当前块的左侧或左下角相邻的块中的至少之一。与当前块的左上角相邻的块可以被视为顶部相邻块或左相邻块。
当当前块与空间相邻块之间的参考图片不同时,可通过对空间相邻块的运动矢量进行缩放来获得空间运动矢量。
可以基于当前块的时间相邻块的运动矢量来确定时间运动矢量候选S1030。如果当前块与时间相邻块之间的参考图片不同,则可以通过对时间相邻块的运动矢量进行缩放来获得时间运动矢量。
可以生成包括空间运动矢量候选和时间运动矢量候选的运动矢量候选列表S1040。
当生成运动矢量候选列表时,可以基于指定运动矢量候选列表中的至少之一的信息来指定运动矢量候选列表中包括的运动矢量候选中的至少之一S1050。
由信息指定的运动矢量候选被设置为当前块的运动矢量预测值。并且,通过将运动矢量差值与运动矢量预测值相加来获得当前块的运动矢量S1060。此时,可以从比特流中解析运动矢量差值。
当获得当前块的运动信息时,可以基于所获得的运动信息来执行对当前块的运动补偿S820。更具体地,可以基于当前块的帧间预测方向、参考图片索引和运动矢量来执行对当前块的运动补偿。
如在以上示例中,可以基于当前块的运动信息来执行当前块的运动补偿。在这种情况下,运动矢量可以具有整像素单位或分数像素单位的精度(或分辨率)。
整像素单位可以包括N整像素,诸如整像素、2整像素、4整像素等。这里,N可以由1或更大的自然数表示,特别是由2的指数表示。整像素可以表示一个像素精度(即,一个像素单元),2整像素可以表示一个像素精度的两倍(即,两个像素单元),并且4整像素可以表示一个像素精度的四倍(即,四个像素单元)。根据所选择的整像素,运动矢量可以以N像素为单位表示,并且运动补偿可以以N像素为单位执行。
分数像素单位可以包括1/N像素,例如半像素、四分之一像素、八分之一像素等。这里,N可以由1或更大的自然数表示,特别是由2的指数表示。半像素可以表示一个像素的1/2精度(即,半像素单元),四分之一像素可以表示一个像素的1/4精度(即,四分之一像素单元),并且八分之一像素可以表示一个像素的1/8精度(即,八分之一像素单元)。根据所选择的十进制像素,运动矢量可以以1/N像素为单位表示,并且运动补偿可以以1/N像素为单位执行。
图11和图12是示出根据当前块的运动矢量精度的运动矢量导出方法的图。图11示出了AMVP模式下的运动矢量导出方法。图12示出了合并模式下的运动矢量导出方法。
首先,可以确定当前块的运动矢量精度S1110、S1210。
可以以序列、图片、切片或预定块为单位确定运动矢量的精度。这里,预定块可以表示CTU、CU、PU或预定大小/形状的块。CTU可以表示编码器/解码器中允许的最大尺寸的CU。如果在高于块的水平处诸如序列、图片或切片处确定运动矢量精度,则可以根据在较高水平处确定的运动矢量精度来执行对预定块的运动补偿。例如,可以使用其中精度是整像素单位的运动矢量来执行对包括在第一切片中的块的运动补偿,同时可以使用其中精度是四分之一像素单位的运动矢量来执行对包括在第二切片中的块的运动补偿。
为了确定运动矢量的精度,可以通过比特流用信号通知用于确定运动矢量的精度的信息。信息可以是指定多个运动矢量精度中的至少之一的索引信息“mv_resolution_idx”。例如,表1示出了根据mv_resolution_idx的运动矢量精度。
[表1]
mv_resolution_idx 运动矢量像素单位
0 四分之一像素单位
1 半像素单位
2 整像素单位
3 八分之一像素单位
4 2整像素单位
5 4整像素单位
表1中所示的示例仅是可以应用本发明的示例。可以应用于预定单元的运动矢量精度候选的类型和/或数量可以与表1中所示的不同。mv_resolution_idx的值和/或范围也可以根据运动矢量精度候选的类型和/或数量而不同。
在另一示例中,可以根据空间上或时间上与预定单元相邻的单元导出运动矢量精度。这里,预定单元可以表示图片、切片或块,并且相邻单元可以表示在空间上或时间上与预定单元相邻的图片、切片或块。例如,可以将当前块的运动矢量精度设置为等于空间相邻块和/或时间相邻块中的由索引信息指定的块的运动矢量精度。
作为另一示例,可以根据当前块的运动信息自适应地确定当前块的运动矢量精度。例如,可以根据当前块的参考图片的时间顺序或图片顺序计数是否先于当前图片、当前块的参考图片的时间顺序或图片顺序计数是否后于当前图片、或者当前块的参考图片是否是当前图片来自适应地确定当前块的运动矢量精度。
可以选择性地使用多个运动矢量精度候选中的一些。例如,在定义包括至少一个运动矢量精度候选的运动矢量精度集之后,可以通过包括在运动矢量精度集中的至少一个运动矢量精度候选来确定运动矢量精度。
可以以序列、图片、切片或块为单位确定运动矢量精度集。包括在运动矢量精度集中的运动矢量精度候选可以在编码器和解码器中预定义。替选地,可以基于通过比特流用信号通知的编码信息来确定运动矢量精度集。这里,编码信息可以与运动矢量分辨率集中包括的运动矢量精度候选的类型和/或数量中的至少之一有关。作为另一示例,运动矢量精度集可以根据空间上或时间上与预定单元相邻的单元导出。这里,预定单元可以表示图片、切片或块,并且相邻单元可以表示在空间上或时间上与预定单元相邻的图片、切片或块。例如,可以将预定切片的运动矢量精度集设置为等于在空间上与切片相邻的切片的运动矢量精度集。替选地,取决于切片之间的依赖性,可以将独立切片的运动矢量精度集设置为从属切片的运动矢量精度集。
如果确定了运动矢量精度集,则可以将包括在运动矢量精度集中的至少一个运动矢量精度候选确定为运动矢量精度。为此,可以通过比特流用信号通知指定包括在运动矢量精度集中的运动矢量精度候选中的至少之一的索引信息。例如,可以将当前块的运动矢量精度设置为由索引信息指定的包括在运动矢量精度集中的运动矢量精度候选中的候选。
可以根据切片类型、当前块的大小/形状或当前块的运动信息(例如,当前块的参考图片或当前块的预测方向)自适应地确定是否使用运动矢量精度集。替选地,可以通过比特流用信号通知指示是否使用运动矢量精度集的信息(例如,标志)。
如果在高于的块的水平处诸如序列、图片或切片处确定运动矢量精度集,则可以根据在较高水平处确定的运动矢量精度集导出预定块的运动矢量精度。例如,如果在图片水平定义包括四分之一像素和2整像素的运动矢量精度集,则图片中包括的块可以限制地使用四分之一像素或2整像素中的至少之一。
当将多方向预测应用于当前块时,根据多方向预测的多个运动矢量可以具有彼此不同的运动矢量精度。即,当前块的运动矢量中的任何一个的精度可以与另一运动矢量的精度不同。例如,当将双向预测应用于当前块时,前向运动矢量mvL0的精度可以与后向运动矢量mvL1的精度不同。即使当将具有多于三个方向的多方向预测应用于当前块时,多个运动矢量中的至少之一可以具有与另一个不同的精度。因此,可以针对当前块的每个预测方向对用于确定运动矢量精度的信息进行编码/解码。
如果将AMVP模式应用于当前块并且如果可变地确定每个块的运动矢量精度,则从相邻块导出的运动矢量预测值(或运动矢量预测值,MVP)的精度可以不同于当前块的运动矢量精度。为了将运动矢量预测值的精度调整为当前块的运动矢量精度,可以根据当前块的运动矢量精度来缩放运动矢量预测值S1120。可以根据当前块的运动矢量精度来缩放运动矢量预测值。可以通过将运动矢量差异(MVD)与缩放的运动矢量预测值相加来导出当前块的运动矢量S1130。
例如,如果相邻块的运动矢量的像素单位是四分之一像素并且当前块的运动矢量的像素单位是整像素,则从相邻块导出的运动矢量预测值可以以整像素为单位进行缩放,并且可以通过将缩放的运动矢量预测值和运动矢量差值相加来导出具有整像素精度的运动矢量。例如,以下等式1示出了通过以整像素为单位缩放运动矢量预测值来获得运动矢量的示例。
[等式1]
mvLX[0]=((mvpLX[0]>>2)+mvdLX[0])<<2
mvLX[1]=((mvpLX[1]>>2)+mvdLX[1])<<2
在等式1中,mvpLX表示运动矢量预测值,并且mvdLX表示运动矢量差值。另外,mvLX[0]、mvpLX[0]和mvdLX[0]表示竖直方向的运动矢量分量,并且mvLX[1]、mvpLX[1]和mvdLX[1]表示水平方向的运动矢量分量。
作为另一示例,当相邻块的运动矢量的像素单位是2整像素并且当前块的运动矢量的像素单位是四分之一像素时,从相邻块导出的运动矢量预测值可以以四分之一像素为单位进行缩放,并且可以通过将缩放的运动矢量预测值和运动矢量差值相加来导出具有四分之一像素精度的运动矢量。例如,以下等式2示出了当当前图片用作参考图片时获得运动矢量的示例。
[等式2]
mvLX[0]=(mvpLX[0]>>3+mvdLX[0])<<3
mvLX[1]=(mvpLX[1]>>3+mvdLX[1])<<3
在等式1和等式2中,可以根据当前块的运动矢量精度与相邻块的运动矢量精度之间的缩放比来自适应地确定用于缩放运动矢量预测值的移位值。
不同于图11中所示的示例,还可以根据当前块的运动矢量精度来缩放通过将运动矢量预测值和运动矢量差值相加而生成的运动矢量。
可以根据当前块的运动矢量精度对运动矢量差值进行编码/解码。例如,当当前块的运动矢量精度是四分之一像素时,可以以四分之一像素为单位对当前块的运动矢量差值进行编码/解码。
无论当前块的运动矢量精度如何,还可以以预定单位对运动矢量差值进行编码/解码。这里,预定单位可以是在编码器和解码器中预定义的固定像素单位(例如,整像素或四分之一像素),或者可以是在更高水平处例如图片或切片处确定的像素单位。当当前块的运动矢量精度不同于运动矢量差值的精度时,可以通过缩放运动矢量差值或者缩放通过将缩放的运动矢量预测值与运动矢量差值相加而导出的运动矢量来导出当前块的运动矢量。例如,当当前块的运动矢量精度是整像素而运动矢量差值以四分之一像素的精度被编码时,如等式1所示,可以通过缩放通过将缩放的运动矢量预测值与运动矢量差值相加而导出的运动矢量来得到当前块的运动矢量。
根据运动矢量精度,可以不同地确定运动矢量差值的编码/解码方法。例如,如果分辨率以十进制像素为单位,则可以通过将运动矢量差值分成前缀部分和后缀部分来对其进行编码/解码。前缀部分可以表示运动矢量的整数部分,并且后缀部分可以表示运动矢量的分数部分。例如,以下等式3示出了导出前缀部分“predfix_mvd”和后缀部分“suffix_mvd”的示例。
[等式3]
prefix_mvd=MVD/N
suffix_mvd=MVD%N
在等式3中,N可以是固定值,或者可以是根据当前块的运动矢量精度可变地确定的值。例如,N可以与当前块的运动矢量精度成比例。
如果当前块的运动矢量精度是两倍或更多倍的整像素像素单位,则可以对通过将运动矢量差值移位N而获得的值进行编码。例如,如果当前块的运动矢量精度是2整像素,则可以对运动矢量差值的一半进行编码/解码。如果当前块的运动矢量精度是4整像素,则可以对运动矢量差值的四分之一进行编码/解码。在这种情况下,可以通过根据当前块的运动矢量精度缩放解码的运动矢量差值来导出当前块的运动矢量。
如果将合并模式或跳过模式应用于当前块并且可变地确定每个块的运动矢量精度,则可能发生当前块的运动矢量精度不同于空间/时间合并候选块的运动矢量精度。因此,根据当前块的运动矢量精度来缩放空间/时间相邻块的运动矢量S1220,并且可以将缩放的运动矢量设置为空间/时间合并候选的运动信息S1230。例如,根据当前块的运动矢量精度来缩放空间/时间相邻块的运动矢量mvLX[0]和/或mvLX[1],以导出缩放的运动矢量mxLXscale[0]和/或mvLXscale[1],并且可以将缩放的运动矢量设置为空间/时间合并候选的运动矢量。
例如,当与当前块相邻的相邻块的运动矢量精度是四分之一像素并且当前块的运动矢量精度是整像素时,可以如等式4所示缩放相邻块的运动矢量,并且可以将缩放的运动矢量设置为空间合并候选的运动矢量。
[等式4]
mvLXscale[0]=(mvLX[0]>>2)<<2
mvLXscale[1]=(mvLX[1]>>2)<<2
在等式4中,可以根据当前块的运动矢量精度与相邻块的运动矢量精度之间的缩放比来自适应地确定用于缩放相邻块的运动矢量的移位值。
作为另一示例,在选择要与当前块合并的合并候选(即,通过合并索引选择的合并候选)之后,可以检查其的运动矢量精度是否对应于当前块的运动矢量精度。如果选择的合并候选的运动矢量精度与当前块的运动矢量精度不同,则可以根据当前块的运动矢量精度来缩放选择的合并候选的运动矢量。
可以将当前块的运动矢量设置为等于合并候选中的由索引信息选择的合并候选的运动矢量(即,缩放的运动矢量)S1240。
与图12中所示的示例不同,可以考虑空间/时间相邻块的运动矢量精度来确定当前块的合并候选。例如,基于空间相邻块的运动矢量精度与当前块的运动矢量精度之间的差异或缩放比是否等于或大于预定阈值的结果,可以确定空间/时间相邻块是否可用作合并候选。例如,如果空间合并候选的运动矢量精度是2整像素并且当前块的运动矢量精度是四分之一像素,则可能意味着两个块之间的相关性不重要。因此,可以将与当前块的运动矢量精度的精度差异大于阈值的空间/时间相邻块设置为不可用作合并候选。也就是说,仅当空间/时间相邻块的运动矢量精度与当前块的运动矢量精度之间的差异小于阈值时,空间/时间相邻块才可以用作合并候选。不可用作合并候选的空间/时间相邻块可以不被添加到合并候选列表。
当当前块的运动矢量精度与相邻块的运动矢量精度之间的差异或缩放比小于或等于阈值但两个精度彼此不同时,可以将缩放的运动矢量设置为合并候选的运动矢量,或者可以按照上面参照图12描述的实施方式来缩放由合并索引指定的合并候选的运动矢量。
可以从添加到合并候选列表的合并候选的运动矢量导出当前块的运动矢量。如果当前块的运动矢量精度与添加到合并候选列表的合并候选的运动矢量精度不同,
则运动矢量精度差值可以表示运动矢量精度之间的差异,或者可以表示每个均与运动矢量精度对应的对应值之间的差异。这里,对应值可以指示与表1中所示的运动矢量精度对应的索引值,或者可以表示分配给表2中所示的每个运动矢量精度的值。例如,在表2中,分配给四分之一像素的对应值是2,并且分配给整像素的对应值是3,因此两个精度的差异可以被确定为2。
[表2]
Figure BDA0004163187770000271
/>
Figure BDA0004163187770000281
还可以使用运动矢量精度的缩放比而不是运动矢量精度差值来确定时间/空间相邻块的可用性。这里,运动矢量精度的缩放比可以表示两个运动矢量精度之间的比率。例如,四分之一像素与整像素之间的缩放比可以被定义为4。
尽管已经基于一系列步骤或流程图描述了上述实施方式,但是它们不限制本发明的时序,并且可以根据需要同时或以不同顺序执行。此外,构成上述实施方式中的框图的部件(例如,单元、模块等)中的每一个可以由硬件设备或软件以及多个部件来实现。或者,可以由单个硬件设备或软件来组合并且实现多个部件。上述实施方式可以以程序指令的形式实现,所述程序指令可以通过各种计算机部件执行并且被记录在计算机可读记录介质中。计算机可读记录介质可以包括程序命令、数据文件、数据结构等中之一或其组合。计算机可读介质的示例包括磁介质(例如,硬盘、软盘和磁带)、光学记录介质(例如,CD-ROM和DVD)、磁光介质(例如,光磁软盘)、和专门配置成存储和执行程序指令的硬件设备和介质(例如,ROM、RAM、闪速存储器)等。硬件设备可以被配置成作为一个或更多个软件模块来操作,以用于执行根据本发明的处理,并且反之亦然。
工业应用性
本发明可以应用于能够对视频进行编码/解码的电子设备。
本发明还可以通过以下实施方案来实现。
实施方案1.一种用于对视频进行解码的方法,所述方法包括:
确定当前块的运动矢量精度;
生成所述当前块的运动矢量候选列表;
根据所述运动矢量候选列表获得所述当前块的运动矢量预测值;
确定所述运动矢量预测值的精度是否与所述当前块的运动矢量精度相同;
在所述运动矢量预测值的精度不同于所述当前块的运动矢量精度的情况下,根据所述当前块的运动矢量精度来缩放所述运动矢量预测值;以及使用缩放的运动矢量预测值来获得所述当前块的运动矢量。
实施方案2.根据实施方案1所述的方法,其中,根据包括多个运动矢量精度候选的运动矢量精度集来确定所述当前块的运动矢量精度。
实施方案3.根据实施方案2所述的方法,其中,基于指定所述多个运动矢量精度候选中的一个的索引信息来确定所述当前块的运动矢量精度。
实施方案4.根据实施方案1所述的方法,其中,运动矢量差值包括表示整数部分的前缀部分和表示分数部分的后缀部分。
实施方案5.根据实施方案1所述的方法,其中,基于所述运动矢量预测值的精度与所述当前块的运动矢量精度之间的缩放比、通过移位操作来执行所述缩放。
实施方案6.一种用于对视频进行编码的方法,所述方法包括:
确定当前块的运动矢量精度;
生成所述当前块的运动矢量候选列表;
根据所述运动矢量候选列表获得所述当前块的运动矢量预测值;
确定所述运动矢量预测值的精度是否与所述当前块的运动矢量精度相同;
在所述运动矢量预测值的精度不同于所述当前块的运动矢量精度的情况下,根据所述当前块的运动矢量精度来缩放所述运动矢量预测值;以及使用缩放的运动矢量预测值来获得所述当前块的运动矢量。
实施方案7.根据实施方案6所述的方法,其中,根据包括多个运动矢量精度候选的运动矢量精度集来确定所述当前块的运动矢量精度。
实施方案8.根据实施方案7所述的方法,其中,基于指定所述多个运动矢量精度候选中的一个的索引信息来确定所述当前块的运动矢量精度。
实施方案9.根据实施方案6所述的方法,其中,运动矢量差值包括表示整数部分的前缀部分和表示分数部分的后缀部分。
实施方案10.根据实施方案6所述的方法,其中,基于所述运动矢量预测值的精度与所述当前块的运动矢量精度之间的缩放比、通过移位操作来执行所述缩放。
实施方案11.一种用于对视频进行解码的装置,所述装置包括:
帧间预测单元,用于:确定当前块的运动矢量精度;生成所述当前块的运动矢量候选列表;根据所述运动矢量候选列表获得所述当前块的运动矢量预测值;确定所述运动矢量预测值的精度是否与所述当前块的运动矢量精度相同;在所述运动矢量预测值的精度不同于所述当前块的运动矢量精度的情况下根据所述当前块的运动矢量精度来缩放所述运动矢量预测值;以及使用缩放的运动矢量预测值来获得所述当前块的运动矢量。

Claims (7)

1.一种用于对视频进行解码的方法,所述方法包括:
确定当前块的运动矢量精度;
获得所述当前块的运动矢量差值;
基于所述当前块的运动矢量精度来缩放所述运动矢量差值;
生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;
基于所述运动矢量候选列表和第一信息来获得所述当前块的运动矢量预测值,其中所述第一信息是从比特流进行信号通知的并且指定所述运动矢量候选列表中的运动矢量候选中之一;以及
使用所述运动矢量预测值和经缩放的运动矢量差值来获得所述当前块的运动矢量,
其中,当确定所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,基于从所述比特流解析出的索引信息来确定所述当前块的运动矢量精度,所述索引信息指定所述多个运动矢量精度候选中之一,
其中,在确定所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下来确定时,在不从所述比特流解析所述索引信息的情况下确定所述当前块的运动矢量精度,并且
其中,基于针对所述当前块而用信号通知的标志来确定是否使用了所述运动矢量精度集。
2.根据权利要求1所述的方法,其中,所述运动矢量精度候选的数量或类型根据针对所述当前块而用信号通知的第二信息的值而变化。
3.根据权利要求2所述的方法,其中,所述索引信息的最大比特长度根据所述第二信息的值而变化。
4.一种用于对视频进行编码的方法,所述方法包括:
确定当前块的运动矢量精度;
获得所述当前块的运动矢量;
生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;
基于所述运动矢量候选列表中的运动矢量候选中之一来确定所述当前块的运动矢量预测值;
基于所述运动矢量和所述运动矢量预测值来得出运动矢量差值;以及
对经缩放的运动矢量差值进行编码,其中所述经缩放的运动矢量差值是通过基于所述当前块的运动矢量精度对所述运动矢量差值进行缩放而获得的;
其中,指定所述运动矢量候选中之一的第一信息被编码在比特流中,
其中,当所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,将指定所述多个运动矢量精度候选中之一的索引信息编码到所述比特流中;
其中,当所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下确定时,跳过对所述索引信息的编码,以及
其中,指示是否使用了所述运动矢量精度集的标志被编码在所述比特流中。
5.根据权利要求4所述的方法,其中,用于确定所述运动矢量精度候选的数量或类型的第二信息也被编码在所述比特流中。
6.根据权利要求5所述的方法,其中,所述索引信息的最大比特长度是根据所述第二信息的值来确定的。
7.一种发送视频数据的方法,包括:
确定当前块的运动矢量精度;
获得所述当前块的运动矢量;
生成所述当前块的运动矢量候选列表,所述运动矢量候选列表包括运动矢量候选,所述运动矢量候选包括空间运动矢量候选和时间运动矢量候选;
基于所述运动矢量候选列表中的运动矢量候选之一来确定所述当前块的运动矢量预测值;
基于所述运动矢量和所述运动矢量预测值得出运动矢量差值;
通过对经缩放的运动矢量差值进行编码来生成包括所述视频数据的比特流,所述经缩放的运动矢量差值是通过基于所述当前块的运动矢量精度对所述运动矢量差值进行缩放而获得的;以及
发送包括所述视频数据的比特流,
其中,指定所述运动矢量候选中之一的第一信息被编码在所述比特流中,
其中,当所述当前块的运动矢量精度是从包括多个运动矢量精度候选的运动矢量精度集中确定时,将指定所述多个运动矢量精度候选中之一的索引信息编码到所述比特流中,
其中,当所述当前块的运动矢量精度是在不使用所述运动矢量精度集的情况下确定时,跳过对所述索引信息的编码,以及
其中,指示是否使用了所述运动矢量精度集的标志被编码在所述比特流中。
CN202310355381.4A 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法 Pending CN116320476A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20160176441 2016-12-22
KR10-2016-0176441 2016-12-22
PCT/KR2017/014869 WO2018117546A1 (ko) 2016-12-22 2017-12-15 비디오 신호 처리 방법 및 장치
CN201780079795.1A CN110100440B (zh) 2016-12-22 2017-12-15 一种用于对视频进行解码、编码的方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780079795.1A Division CN110100440B (zh) 2016-12-22 2017-12-15 一种用于对视频进行解码、编码的方法

Publications (1)

Publication Number Publication Date
CN116320476A true CN116320476A (zh) 2023-06-23

Family

ID=62626692

Family Applications (5)

Application Number Title Priority Date Filing Date
CN202310355445.0A Pending CN116320477A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法
CN202310358138.8A Pending CN116320480A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法
CN201780079795.1A Active CN110100440B (zh) 2016-12-22 2017-12-15 一种用于对视频进行解码、编码的方法
CN202310354930.6A Pending CN116320475A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法
CN202310355381.4A Pending CN116320476A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CN202310355445.0A Pending CN116320477A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法
CN202310358138.8A Pending CN116320480A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法
CN201780079795.1A Active CN110100440B (zh) 2016-12-22 2017-12-15 一种用于对视频进行解码、编码的方法
CN202310354930.6A Pending CN116320475A (zh) 2016-12-22 2017-12-15 对视频进行解码或编码的方法和发送视频数据的方法

Country Status (5)

Country Link
US (4) US10805608B2 (zh)
KR (1) KR102543752B1 (zh)
CN (5) CN116320477A (zh)
MX (1) MX2019007219A (zh)
WO (1) WO2018117546A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116866565A (zh) * 2018-03-21 2023-10-10 Lx 半导体科技有限公司 图像编码/解码方法、存储介质以及图像数据的传输方法
KR102643116B1 (ko) * 2018-03-30 2024-03-04 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2019225993A1 (ko) * 2018-05-23 2019-11-28 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN110620933B (zh) 2018-06-19 2022-05-31 北京字节跳动网络技术有限公司 不同参考列表的不同精度
TW202017377A (zh) 2018-09-08 2020-05-01 大陸商北京字節跳動網絡技術有限公司 視頻編碼和解碼中的仿射模式
TWI815967B (zh) 2018-09-19 2023-09-21 大陸商北京字節跳動網絡技術有限公司 仿射模式編解碼的模式相關自適應調整運動矢量分辨率
WO2020060354A1 (ko) * 2018-09-21 2020-03-26 엘지전자 주식회사 압축된 움직임 벡터를 제어하는 방법 및 그 장치
WO2020058962A1 (en) * 2018-09-23 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. Signaling of motion vector precision indication with adaptive motion vector resolution
WO2020076047A1 (ko) * 2018-10-09 2020-04-16 삼성전자 주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
EP3861744A4 (en) * 2018-11-13 2021-12-08 Beijing Bytedance Network Technology Co. Ltd. CREATION OF LIST OF MOVEMENT CANDIDATES BASED ON A HISTORY, FOR AN IN-BLOCK COPY
CN113261295A (zh) * 2018-12-31 2021-08-13 北京字节跳动网络技术有限公司 具有MVD的Merge中距离索引与距离之间的映射
US20220078475A1 (en) * 2019-01-01 2022-03-10 Lg Electronics Inc. Method and apparatus for processing video signal on basis of inter prediction
EP3895429A4 (en) 2019-01-31 2022-08-10 Beijing Bytedance Network Technology Co., Ltd. CONTEXT FOR CODE AN ADAPTIVE MOTION VECTOR RESOLUTION IN AFFINE MODE
CN117336505A (zh) * 2019-02-14 2024-01-02 北京字节跳动网络技术有限公司 解码器侧细化工具的尺寸选择性应用
WO2020192747A1 (en) * 2019-03-27 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Motion information precision alignment in affine advanced motion vector prediction
JP7307191B2 (ja) 2019-04-01 2023-07-11 北京字節跳動網絡技術有限公司 履歴に基づく動きベクトル予測のための補間フィルタの使用
KR20220002897A (ko) 2019-04-25 2022-01-07 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 모션 벡터 차에 대한 제한
KR20220023338A (ko) 2019-06-25 2022-03-02 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 모션 벡터 차이에 대한 제약
US11190789B2 (en) 2019-06-30 2021-11-30 Tencent America LLC Method and apparatus for video coding using inter-prediction mode signaling to dertermine motion vectors
CN114270856A (zh) 2019-08-20 2022-04-01 北京字节跳动网络技术有限公司 视频处理中的备选插值滤波器的选择性使用
JP7464742B2 (ja) 2020-03-21 2024-04-09 北京字節跳動網絡技術有限公司 参照ピクチャリサンプリング
WO2021254379A1 (en) 2020-06-20 2021-12-23 Beijing Bytedance Network Technology Co., Ltd. Inter layer prediction with different coding block size

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007171700A (ja) * 2005-12-23 2007-07-05 Toshiba Corp 映像表示装置及び映像表示方法
TWI566586B (zh) * 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
CN107071461B (zh) 2010-12-14 2019-11-12 M&K控股株式会社 用于解码运动画面的设备
US9473789B2 (en) 2010-12-14 2016-10-18 M&K Holdings Inc. Apparatus for decoding a moving picture
US9609349B2 (en) 2010-12-14 2017-03-28 M & K Holdings Inc. Apparatus for decoding a moving picture
KR101377529B1 (ko) * 2011-01-07 2014-04-10 에스케이텔레콤 주식회사 적응적 움직임 벡터 부호화/복호화를 이용한 영상 부호화/복호화 방법 및 장치
JP5837575B2 (ja) * 2011-04-12 2015-12-24 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動画像符号化方法、動画像符号化装置、動画像復号化方法、動画像復号化装置、および動画像符号化復号化装置
WO2012157826A1 (ko) * 2011-05-19 2012-11-22 엘지전자 주식회사 후보 예측 모드 리스트에서 유사 범위 벡터 제거 방법 및 이러한 방법을 사용하는 장치
CA2839560C (en) * 2011-06-16 2016-10-04 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Entropy coding of motion vector differences
US9699456B2 (en) * 2011-07-20 2017-07-04 Qualcomm Incorporated Buffering prediction data in video coding
KR20130030181A (ko) 2011-09-16 2013-03-26 한국전자통신연구원 움직임 벡터 예측기를 이용한 움직임 벡터 부호화/복호화 방법 및 장치
RU2710303C2 (ru) * 2011-11-08 2019-12-25 Кт Корпорейшен Способ декодирования видеосигнала
US20130170553A1 (en) * 2012-01-04 2013-07-04 Qualcomm Incorporated Coding motion vector difference
US9445076B2 (en) * 2012-03-14 2016-09-13 Qualcomm Incorporated Disparity vector construction method for 3D-HEVC
US9349192B2 (en) 2012-04-24 2016-05-24 Lg Electronics Inc. Method and apparatus for processing video signal
WO2013168407A1 (en) * 2012-05-09 2013-11-14 Panasonic Corporation Method of performing motion vector prediction, encoding and decoding methods, and apparatuses thereof
US20130329007A1 (en) * 2012-06-06 2013-12-12 Qualcomm Incorporated Redundancy removal for advanced motion vector prediction (amvp) in three-dimensional (3d) video coding
US9479778B2 (en) * 2012-08-13 2016-10-25 Qualcomm Incorporated Device and method for coding video information using base layer motion vector candidate
US9270991B2 (en) * 2013-01-07 2016-02-23 Qualcomm Incorporated Inter-layer reference picture generation for HLS-only scalable video coding
US9800857B2 (en) * 2013-03-08 2017-10-24 Qualcomm Incorporated Inter-view residual prediction in multi-view or 3-dimensional video coding
US9380305B2 (en) * 2013-04-05 2016-06-28 Qualcomm Incorporated Generalized residual prediction in high-level syntax only SHVC and signaling and management thereof
US9648326B2 (en) * 2013-07-02 2017-05-09 Qualcomm Incorporated Optimizations on inter-layer prediction signalling for multi-layer video coding
US9942560B2 (en) 2014-01-08 2018-04-10 Microsoft Technology Licensing, Llc Encoding screen capture data
US9749642B2 (en) 2014-01-08 2017-08-29 Microsoft Technology Licensing, Llc Selection of motion vector precision
US20150271515A1 (en) * 2014-01-10 2015-09-24 Qualcomm Incorporated Block vector coding for intra block copy in video coding
JP5786988B2 (ja) * 2014-02-25 2015-09-30 富士通株式会社 動画像復号方法、動画像復号装置、及び動画像復号プログラム
JP5786989B2 (ja) * 2014-02-25 2015-09-30 富士通株式会社 動画像符号化方法、動画像符号化装置、及び動画像符号化プログラム
CN103957420B (zh) * 2014-04-30 2017-02-15 华南理工大学 一种h.264运动估计编码的全面运动估计改进算法
WO2015192286A1 (en) * 2014-06-16 2015-12-23 Qualcomm Incorporated Simplified shifting merge candidate and merge list derivation in 3d-hevc
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
US9918105B2 (en) * 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification
CN107113442B (zh) 2014-10-31 2020-08-07 三星电子株式会社 用于对运动矢量进行编码/解码的方法和装置
US20160337662A1 (en) * 2015-05-11 2016-11-17 Qualcomm Incorporated Storage and signaling resolutions of motion vectors
WO2016195453A1 (ko) * 2015-06-05 2016-12-08 한양대학교 산학협력단 영상 부호화 및 복호화 방법과 영상 복호화 장치
US10419755B2 (en) * 2016-05-16 2019-09-17 Qualcomm Incorporated Confusion of multiple filters in adaptive loop filtering in video coding
US10778999B2 (en) * 2016-09-30 2020-09-15 Qualcomm Incorporated Frame rate up-conversion coding mode with affine motion model
US10979732B2 (en) * 2016-10-04 2021-04-13 Qualcomm Incorporated Adaptive motion vector precision for video coding
US10511853B2 (en) * 2016-11-24 2019-12-17 Ecole De Technologie Superieure Method and system for parallel rate-constrained motion estimation in video coding

Also Published As

Publication number Publication date
US20210105484A1 (en) 2021-04-08
US20210105483A1 (en) 2021-04-08
CN110100440A (zh) 2019-08-06
CN116320477A (zh) 2023-06-23
KR20180073464A (ko) 2018-07-02
WO2018117546A1 (ko) 2018-06-28
US11343507B2 (en) 2022-05-24
US20200413063A1 (en) 2020-12-31
CN116320475A (zh) 2023-06-23
US10805608B2 (en) 2020-10-13
KR102543752B1 (ko) 2023-06-14
MX2019007219A (es) 2019-09-05
US20200128250A1 (en) 2020-04-23
CN116320480A (zh) 2023-06-23
CN110100440B (zh) 2023-04-25
US11146791B2 (en) 2021-10-12
US11343506B2 (en) 2022-05-24

Similar Documents

Publication Publication Date Title
CN110100440B (zh) 一种用于对视频进行解码、编码的方法
US11930161B2 (en) Method and apparatus for processing video signal
CN110651472B (zh) 用于视频信号处理的方法和装置
US11457235B2 (en) Method for refining a motion vector derived under a merge mode using a difference vector
CN109479149B (zh) 视频信号处理方法和设备
US20230209080A1 (en) Video signal processing method and device
CN109417640B (zh) 用于处理视频信号的方法和设备
US20230053392A1 (en) Method and apparatus for processing video signal

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