CN109417633B - 用于编码/解码视频信号的方法和装置 - Google Patents

用于编码/解码视频信号的方法和装置 Download PDF

Info

Publication number
CN109417633B
CN109417633B CN201780040684.XA CN201780040684A CN109417633B CN 109417633 B CN109417633 B CN 109417633B CN 201780040684 A CN201780040684 A CN 201780040684A CN 109417633 B CN109417633 B CN 109417633B
Authority
CN
China
Prior art keywords
block
current
intra prediction
encoding
division
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.)
Active
Application number
CN201780040684.XA
Other languages
English (en)
Other versions
CN109417633A (zh
Inventor
文柱禧
任星元
元栋载
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intellectual Discovery Co Ltd
Original Assignee
Intellectual Discovery Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to CN202311468139.4A priority Critical patent/CN117499647A/zh
Priority to CN202311464483.6A priority patent/CN117499645A/zh
Priority to CN202311473282.2A priority patent/CN117499651A/zh
Priority to CN202311468145.XA priority patent/CN117499648A/zh
Priority to CN202311469935.XA priority patent/CN117499649A/zh
Application filed by Intellectual Discovery Co Ltd filed Critical Intellectual Discovery Co Ltd
Priority to CN202311473250.2A priority patent/CN117499650A/zh
Priority to CN202311466643.0A priority patent/CN117499646A/zh
Publication of CN109417633A publication Critical patent/CN109417633A/zh
Application granted granted Critical
Publication of CN109417633B publication Critical patent/CN109417633B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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

用于编码/解码视频信号的方法和装置
技术领域
本发明涉及用于编码/解码视频信号的方法和装置。
背景技术
近来,对因特网上的多媒体数据(例如视频)的需求迅速增加。然而,频道的带宽操作的速度难以跟随快速增加的多媒体数据量。
发明内容
技术问题
在对图像进行编码/解码时,本发明旨在通过有效地编码/解码编码/解码目标块的划分方法来增强图像的压缩效率。
在对图像进行编码/解码时,本发明旨在通过有效地编码/解码编码/解码目标块的帧内预测模式信息来增强图像的压缩效率。
在对图像进行编码/解码时,本发明旨在通过使用多个帧内预测模式来增强图像的压缩效率。
技术方案
根据本发明,提供了一种用于解码视频信号的方法和装置,该方法包括:解码指示当前解码块是否被划分为两个部分块的划分信息;当划分信息指示当前解码块被划分为两个部分块时,解码指示当前解码块的划分方向的信息;根据划分方向将当前解码块划分为两个部分块。这里,划分信息包括SBT划分信息和ASBT划分信息中的至少一个,SBT划分信息指示当前解码块是否被划分为对称形状的两个部分块,ASBT划分信息指示当前解码块是否被划分为不对称形状的两个部分块。
在根据本发明的用于解码视频信号的方法和装置中,划分方向可以指示水平方向和垂直方向中的一个。
在根据本发明的用于解码视频信号的方法和装置中,该方法还可以包括:基于接近于当前解码块的邻近块的帧内预测模式,确定当前解码块的最可能模式(MPM)候选;解码指示是否存在与当前解码块的帧内预测模式相同的MPM候选的信息;根据该信息导出当前解码块的帧内预测模式。
在根据本发明的用于解码视频信号的方法和装置中,可以根据当前解码块的大小、形状或者相邻块的帧内预测模式可变地确定当前解码块可用的帧内预测模式的数量。
在根据本发明的用于解码视频信号的方法和装置中,可以根据相邻块的帧内预测模式的使用频率来确定MPM候选。
在根据本发明的用于解码视频信号的方法和装置中,当可用于当前解码块的帧内预测模式的数量不同于可用于相邻块的帧内预测模式的数量时,MPM候选可以指示帧内预测模式的角度。
根据本发明,提供了一种用于解码视频信号的方法和装置,该方法包括:解码指示多个帧内预测模式是否用于当前解码块的信息;当确定使用多个帧内预测模式时,解码指示当前解码块的划分形状的信息;并且,解码关于当前解码块中包括的部分块的帧内预测模式的信息。
在根据本发明的用于解码视频信号的方法和装置中,关于部分块的帧内预测模式的信息可以包括指示部分块的帧内预测模式的组合的组合索引信息。
在根据本发明的用于解码视频信号的方法和装置中,可以基于作为直线或对角线的划分线来划分当前解码块。
根据本发明,提供了一种用于对视频信号进行编码的方法和装置,该方法包括:对表示当前编码块是否被划分为两个部分块的划分信息进行编码;当划分信息指示当前编码块被划分为两个部分块时,编码指示当前编码块的划分方向的信息。这里,划分信息包括SBT划分信息和ASBT划分信息中的至少一个,SBT划分信息指示当前编码块是否被划分为对称形状的两个部分块,ASBT划分信息指示当前编码块是否被划分为不对称形状的两个部分块。
在根据本发明的用于编码视频信号的方法和装置中,划分方向可以指示水平方向和垂直方向中的一个。
在根据本发明的用于编码视频信号的方法和装置中,该方法还可以包括:基于接近于当前编码块的邻近块的帧内预测模式,确定当前编码块的最可能模式(MPM)候选;确定当前编码块的帧内预测模式是否与MPM候选相同;以及编码指示是否存在与当前编码块的帧内预测模式相同的MPM候选的信息。
在根据本发明的用于编码视频信号的方法和装置中,基于靠近当前编码块的相邻块的帧内预测模式确定当前编码块的最可能模式(MPM)候选;确定当前编码块的帧内预测模式是否与MPM候选相同;以及编码指示是否存在与当前编码块的帧内预测模式相同的MPM候选的信息。
在根据本发明的用于编码视频信号的方法和装置中,可以根据相邻块的帧内预测模式的使用频率来确定MPM候选。
在根据本发明的用于编码视频信号的方法和装置中,当当前编码块不同于可用于相邻块的帧内预测模式的数量时,MPM候选可指示帧内预测模式的角度。
根据本发明,提供了一种用于编码视频信号的方法和装置,该方法包括:编码指示是否将多个帧内预测模式用于当前编码块的信息;当确定使用多个帧内预测模式时,编码指示当前编码块的划分形状的信息;并且编码关于当前编码块中包括的部分块的帧内预测模式的信息。
在根据本发明的用于编码视频信号的方法和装置中,关于部分块的帧内预测模式的信息可以包括指示部分块的帧内预测模式的组合的组合索引信息。
在根据本发明的用于编码视频信号的方法和装置中,可以基于作为直线或对角线的划分线来划分当前编码块。
有益效果
根据本发明,可以通过有效地编码/解码编码/解码目标块的划分方法来增强图像的压缩效率。
根据本发明,可以通过有效地编码/解码编码/解码目标块的帧内预测模式信息来增强图像的压缩效率。
根据本发明,可以通过使用多个帧内预测模式来增强图像的压缩效率。
附图说明
图1是示出根据本发明的实施例的用于编码图像的装置的框图。
图2是示出根据本发明的实施例的用于解码图像的装置的框图。
图3是示出使用DC模式的帧内预测方法的图。
图4是示出使用平面模式的帧内预测方法的图。
图5是示出使用方向预测模式的帧内预测方法的图。
图6是示出对编码块的QT划分信息进行编码的方法的图。
图7是示出对编码块的BT划分信息进行编码的方法的图。
图8是示出解码用于解码块的QT划分信息的方法的图。
图9是示出解码用于解码块的BT划分信息的方法的图。
图10是示出编码块中的划分状态的示例的图。
图11是示出使用树结构表示图10中所示的输入编码块的最佳划分状态的图。
图12是示出由用于编码的装置控制预测模式的数量或类型的过程的流程图。
图13和14是示出当前编码块中可用的13个方向预测模式的示例的图。
图15和16是示出当前块中可用的21个方向预测模式的示例的图。
图17是示出编码对于当前编码块的最佳帧内预测模式的过程的流程图。
图18是示出设置MPM候选的示例的图。
图19和20是示出量化预测角度的示例的图。
图21是示出从与当前编码块不相邻的相邻块导出MPM候选的示例的图。
图22是示出解码当前解码块的帧内预测模式的过程的流程图。
图23是示出确定当前编码块的最佳划分形状的示例的图。
图24是示出可用于当前编码块的划分形状的示例的图。
图25是示出根据当前编码块的划分形状出现重叠区域的示例的图。
图26是示出对当前编码块的多个帧内预测模式进行编码的方法的流程图。
图27是示出生成组合的示例的图。
图28是示出解码当前编码块的多个帧内预测模式的方法的流程图。
图29是示出编码多个帧内预测模式的过程的另一流程图。
图30是示出将索引重新分配给可用于子预测块的帧内预测模式的示例的图。
图31是示出解码多个帧内预测模式的过程的又一流程图。
具体实施方式
可以对本发明进行各种修改,并且存在本发明的各种实施例,现在将参考附图提供其示例并详细描述。然而,本发明不限于此,并且示例性实施例可以被解释为包括本发明的技术概念和技术范围内的所有修改、等同物或替代物。类似的附图标记表示附图中描述的类似元件。
说明书中使用的术语“第一”、“第二”等可用于描述各种元件,但是这些元件不应被解释为限于这些术语。这些术语仅用于区分一个元件与其他元件。例如,在不脱离本发明的范围的情况下,“第一”元件可以被命名为“第二”元件,并且“第二”元件也可以类似地命名为“第一”元件。术语“和/或”包括多个项目的组合或多个项目中的任何一个。
应当理解,当元件被简称为“连接到”或“耦合到”另一元件而不是“直接连接到”或“直接耦合到”本说明书中的另一元件时,它可以是“直接连接到”或“直接耦合到”另一个元件,或者连接到或耦合到另一个元件,具有插入其间的另一个元件。相反,应该理解,当一个元件被称为“直接耦合”或“直接连接”到另一个元件时,不存在中间元件。
本说明书中使用的术语仅用于描述特定实施例,并不意图限制本发明。除非在上下文中具有明显不同的含义,否则以单数形式使用的表达包括复数的表达。在本说明书中,应理解,诸如“包括”、“具有”等术语旨在表示在说明书中公开的特征、数字、步骤、动作、元件、部分或其组合的存在,并不旨在排除可能存在或可能添加一个或多个其他特征、数字、步骤、动作、元素、部分或其组合的可能性。
在下文中,将参考附图详细描述本发明的优选实施例。在下文中,附图中相同的元件由相同的附图标记表示,并且将省略相同元件的重复描述。
图1是示出根据本发明的实施例的用于编码图像的装置的框图。
参照图1,用于编码图像的装置100可包括图片划分模块110、预测模块120和125、变换模块130、量化模块135、重排模块160、熵编码模块165、逆量化模块140、逆变换模块145、滤波器模块150和存储器155。
图1中所示的组成部分独立地示出,以便表示在用于编码图像的装置中彼此不同的特征函数。因此,并不意味着每个组成部分构成部分离的硬件或软件的组成单元。换句话说,为方便起见,每个组成部分包括每个列举的组成部分。因此,每种组成部分的至少两种组成部分可以组合形成一种组成部分,或者一种组成部分可以被划分成多种组成部分以执行每种功能。如果不脱离本发明的实质,则组合每个组成部分的实施例和划分一个组成部分的实施例也包括在本发明的范围内。
此外,一些组成部分可能不是执行本发明的基本功能的必不可少的组成部分,而是仅改善其性能的选择性组成部分。除了用于改善性能的组成部分之外,本发明可以通过仅包括用于实现本发明的本质的必不可少的组成部分来实施。除了仅用于改善性能的选择性组成部分之外,仅包括必不可少组成部分的结构也包括在本发明的范围内。
图片划分模块110可以将输入图片划分为一个或多个块。这里,块可以表示编码单元(CU)、预测单元(PU)或变换单元(TU)。可以基于四叉树或二叉树或两者来执行划分。四叉树是将上层块划分为四个下层块的方法,每个下层块的宽度和高度是上层块的一半。二叉树是将上层块分成两个下层块的方法,每个下层块的宽度或高度是上层块的一半。通过基于二叉树的划分,块可以是正方形或非正方形。
在下文中,在本发明的实施例中,编码单元可以表示执行编码的单元或执行解码的单元。
预测模块120和125可包括执行帧间预测的帧间预测模块120和执行帧内预测的帧内预测模块125。可以确定是执行用于预测的帧间预测还是帧内预测,并且可以确定根据每种预测方法的详细信息(例如,帧内预测模式、运动矢量、参考图片等)。这里,经受预测的处理单元可以与确定预测方法和详细内容的处理单元不同。例如,预测方法、预测模式等可以由预测单元确定,并且预测可以由变换单元执行。
用于编码的装置可以通过使用诸如用于没有原始块和预测块的残差块的速率-失真优化(RDO)等各种技术来确定编码块的最佳预测模式。例如,RDO可以由下面的等式1确定。
[等式1]
J=(Φ,λ)=D(Φ)+λR(Φ)
在等式1中,D表示由于量化导致的劣化,R表示压缩流的速率,并且J表示RD成本。此外,Φ表示编码模式,λ表示拉格朗日乘数。Λ可以用作用于匹配误差量和比特量之间的单位的比例校正系数。在编码处理中,用于编码的装置可以将RD成本值是最小值的模式确定为编码块的最佳模式。这里,通过同时考虑比特率和误差来确定RD成本值。
在帧内模式中,作为非方向预测模式(或非角度预测模式)的DC模式使用当前块的相邻像素的平均值。图3是示出使用DC模式的帧内预测方法的图。
在用相邻像素的平均值填充预测块之后,可以对位于预测块的边界上的像素执行滤波。例如,可以将利用相邻参考像素的加权和滤波应用于位于预测块的左边界或上边界上的像素。例如,等式2是针对每个部分通过DC模式生成预测像素的示例。在下面的等式1中,区域R1、R2和R3是位于预测块的最外侧(即,边界)的区域,并且加权和滤波可以应用于包括在区域中的像素。
[等式2]
区域R1)Pred[0][0]=(R[-1][0]+2*DCvalue+R[0][-1]+2)>>2
区域R2)Pred[x][0]=(R[x][-1]+3*DC value+2)>>2,x>0
区域R3)Pred[0][y]=(R[0][y]+3*DC value+2)>>2,y>0
区域R4)Pred[x][y]=DC value,x>0,y>0
在等式2中,Wid表示预测块的水平长度,并且Hei表示预测块的垂直长度。x,y表示当预测块的最左上点被设置为(0,0)时每个预测像素的坐标位置。R表示相邻像素。例如,当图3中所示的像素s被定义为R[-1][-1]时,像素a到像素i用R[0][-1]到R[8][-1]表示,像素j到像素r是用R[-1][0]到R[-1][8]表示。在图3所示的示例中,如等式2所示,根据加权和滤波方法,为部分R1至R4中的每一个获得预测像素值Pred。
在非方向模式中的平面模式中,根据距离线性内插当前块的相邻像素,并生成当前块的预测像素。例如,图4是示出使用平面模式的帧内预测方法的图。
例如,假设图4中所示的Pred以8×8编码块被预测。在这种情况下,可以根据垂直方向上的距离,位于Pred上方的像素e与位于Pred下方的像素r(它是位于Pred的左下方的像素r的复制)之间的距离,通过线性内插方法来获得垂直预测值。此外,可以根据水平方向上的距离,位于Pred左侧的像素n与位于Pred右侧的像素i(它是位于Pred右上角的像素i的复制)之间的距离,通过线性内插方法来获得水平预测值。然后,水平和垂直预测值的平均值可以被定义为Pred的值。等式3表示在平面模式下获得预测值Pred的过程。
[等式3]
在等式3中,Wid表示预测块的水平长度,并且Hei表示预测块的垂直长度。x,y表示当预测块的最左上点被设置为(0,0)时每个预测像素的坐标位置。R表示相邻像素。例如,当图4中所示的像素s被定义为R[-1][-1]时,像素a到像素I以R[0][-1]到R[8][-1]被表示,像素j到像素r以R[-1][0]到R[-1][8]被表示。
图5是示出使用方向预测模式的帧内预测方法的图。
在方向预测模式(或角度预测模式)中,在当前块的相邻像素中,生成位于N个预定方向之一中的至少一个像素作为预测样本。
方向预测模式的示例可以包括水平方向模式和垂直方向模式。这里,水平方向模式意味着具有比朝向左上方的45度方向上的角度预测模式更大的水平方向性的模式。垂直方向模式意味着具有比朝向左上方的45度方向上的角度预测模式更大的垂直方向性的模式。具有朝向左上方45度的预测方向的方向预测模式可以被视为水平方向模式或垂直方向模式。图5示出了水平方向模式和垂直方向模式。
参照图5,对于每个方向,存在不对应于整数像素部分的方向。在这种情况下,在使用各种内插方法执行内插之后,例如根据相邻像素和像素之间的距离的线性内插方法、DCT-IF方法、三次卷积内插方法等,像素值可以被放置在与预测块方向对应的像素位置处。
可以将所生成的预测块与原始块之间的残差值(残差块或变换块)输入到变换模块130。残差块是用于变换和量化过程的最小单位。编码块的划分方法也可以应用于变换块。例如,变换块可以被划分成四个或两个部分块。
用于预测的预测模式信息、运动矢量信息等可以由熵编码模块165利用残差值进行编码,并且可以被发送到用于解码的装置。当使用特定编码模式时,原始块按原样编码并发送到解码模块,而不由预测模块120和125生成预测块。
帧间预测模块120可以基于关于当前图片的先前图片和后续图片中的至少一个的信息来预测预测单元,或者在一些情况下,可以基于关于在当前图片中的某些编码区域的信息来预测预测单元。帧间预测模块120可包括参考图片内插模块、运动预测模块和运动补偿模块。
参考图片内插模块可以从存储器155接收参考图片信息,并且可以从参考图片生成整数像素或更小的像素信息。在亮度像素的情况下,具有不同系数的基于8抽头DCT的内插滤波器可用于基于每1/4像素生成关于整数像素或更小像素的像素信息。在色度信号的情况下,具有不同滤波器系数的基于4抽头DCT的内插滤波器可用于基于每1/8像素生成关于整数像素或更小像素的像素信息。
运动预测模块可基于由参考图片内插模块内插的参考图片来执行运动预测。作为用于计算运动矢量的方法,各种方法,例如基于全搜索的块匹配算法(FBMA)、三步搜索(TSS)算法、新的三步搜索(NTS)算法等可以被使用。基于内插像素,运动矢量可以具有基于每1/2或1/4像素的运动矢量值。运动预测模块可以通过改变运动预测方法来预测当前预测单元。作为运动预测方法,可以使用各种方法,诸如跳过方法、合并方法、高级运动矢量预测(AMVP)方法等。
用于编码的装置可以基于关闭块上的运动估计或运动信息来生成关于当前块的运动信息。这里,运动信息可以包括运动矢量、参考图像索引和预测方向中的至少一个。
帧内预测模块125可基于当前块周围的参考像素信息产生预测单元,其是当前图片中的像素信息。当当前预测单元的相邻块是经受帧间预测的块并且因此参考像素是经历帧间预测的像素时,使用经受帧内预测的相邻块的参考像素信息来代替包括在经受帧间预测的块中的参考像素。也就是说,当参考像素不可用时,使用可用参考像素的至少一个参考像素而不是不可用参考像素信息。
帧内预测中的预测模式可包括使用取决于预测方向的参考像素信息的方向预测模式和在执行预测时不使用方向信息的非方向模式。用于预测亮度信息的模式可以与用于预测色度信息的模式不同,并且为了预测色度信息,可以利用用于预测亮度信息或预测的亮度信号信息的帧内预测模式信息。
在帧内预测方法中,可以在根据预测模式将自适应帧内平滑(AIS)滤波器应用于参考像素之后生成预测块。应用于参考像素的AIS滤波器的类型可以变化。为了执行帧内预测方法,可以从当前预测单元周围的预测单元的帧内预测模式预测当前预测单元的帧内预测模式。在通过使用从相邻预测单元预测的模式信息预测当前预测单元的预测模式时,当当前预测单元的帧内预测模式与相邻预测单元的帧内预测模式相同时,指示当前预测单元和相邻预测单元具有相同的预测模式的信息使用预定标志信息被发送。当当前预测单元的预测模式与相邻预测单元的预测模式不同时,执行熵编码以编码当前块的预测模式信息。
此外,可以基于由预测模块120和125生成的预测单元生成残差块,其中,残差块包括关于残差值的信息,该残差值是经过预测的预测单元与预测单元的原始块之间的差值。生成的残差块可以输入到变换模块130。
变换模块130将残差信号变换到频域,以便生成具有变换系数的残差块(或变换块)。这里,为了将残差信号变换到频域,可以使用各种变换技术,诸如离散余弦变换(DCT)、离散正弦变换(DST)、Karhunen-Loeve变换(KLT)等。为了容易地使用变换技术,使用基矢量执行矩阵运算。这里,取决于使用哪种预测模式来编码预测块,可以不同地组合变换技术以用于执行矩阵运算。例如,在执行帧内预测时,根据预测模式,离散余弦变换可以用于水平方向,离散正弦变换可以用于垂直方向。
量化模块135可量化由变换模块130变换到频域中的值。即,量化模块135可量化由变换模块130产生的变换块的变换系数,使得具有量化变换系数的量化变换块可以被生成。这里,量化技术的示例可以包括死区均匀阈值量化(DZUTQ)、量化加权矩阵等。还可以使用改进的量化技术来改进这些量化技术。量化系数可以根据图像的块或重要性而变化。由量化模块135计算的值可以被提供给逆量化模块140和重排模块160。
变换模块130和/或量化模块135可以选择性地包括在用于编码图像的装置100中。也就是说,用于编码图像的装置100可以通过对残差块的残差数据执行变换和量化中的至少一个,或者通过跳过变换和量化来对残差块进行编码。即使用于编码图像的装置100不执行变换和量化之一,或者不执行变换和量化两者,输入到熵编码模块165的块通常被称为变换块(或量化的变换块)。
重排模块160可以关于量化的残差值执行系数值的重排。
重排模块160可以通过系数扫描方法将二维块形式的系数改变为一维矢量形式的系数。例如,重排模块160可以使用预定扫描类型从DC系数扫描到高频域中的系数,以便将系数改变为一维矢量的形式。
熵编码模块165可基于由重排模块160计算的值来执行熵编码。熵编码可使用各种编码方法,例如,指数哥伦布编码、上下文自适应可变长度编码(CAVLC)和上下文-自适应二进制算术编码(CABAC)。
熵编码模块165可以编码各种信息,例如来自重排模块160和预测模块120和125的编码单元的残差值系数信息和块类型信息、预测模式信息、划分单元信息、预测单元信息、传输单元信息、运动矢量信息、参考帧信息、块内插信息、滤波信息等。熵编码模块165可以在每个部分块的基础上以变换块将变换块的系数编码为指示非零系数、绝对值大于1或2的系数、系数的符号等的标志的各种类型。可以通过通过标志编码的系数与变换块的实际系数之间的差的绝对值来编码未被编码到上述标志中的系数。
熵编码模块165可以对从重排模块160输入的编码单元的系数值进行熵编码。
逆量化模块140可以对量化模块135量化的值进行逆量化,并且逆变换模块145可以对由变换模块130变换的值进行逆变换。
同时,逆量化模块140和逆变换模块145可以通过反向使用量化模块135和变换模块130中使用的量化方法和变换方法来分别执行逆量化和逆变换。此外,当仅量化由量化模块135执行并且变换不由变换模块130执行时,仅执行逆量化并且不执行逆变换。当不执行变换和量化时,逆量化模块140和逆变换模块145不执行逆变换和逆量化,或者不包括在用于编码图像的装置100中。
由逆量化模块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可以基于指示非零系数、该绝对值比一个或两个更大的系数、系数的符号等的各种类型的标志,在变换块中基于每部分块来解码变换块的系数。可以通过由标志表示的系数和用信号通知的系数之和来解码不使用上述标志表示的系数。
熵解码模块210可解码关于由用于编码的装置执行的帧内预测和帧间预测的信息。
重排模块215可以基于在用于编码的装置中使用的重排方法,对由熵解码模块210解码的比特流熵执行重排。以一维矢量的形式表示的系数可以被重建并以二维块的形式重排成系数。重排模块215可以通过接收与在用于编码的装置中执行的系数扫描有关的信息以及基于在用于编码的装置中执行的扫描顺序的逆扫描的方法来执行重排。
逆量化模块220可以基于从用于编码的装置接收的量化参数和块的重排的系数值来执行逆量化。
逆变换模块225可以使用预定变换方法对经历逆量化的变换系数执行逆变换。这里,可以基于关于预测方法(帧间/帧内预测)、块的大小/形状、帧内预测模式等的信息来确定变换方法。
预测模块230和235可以基于从熵解码模块210接收的关于预测块生成的信息和关于从存储器245接收的先前解码的块或图片的信息来生成预测块。
预测模块230和235可以包括预测单元确定模块、帧间预测模块和帧内预测模块。预测单元确定模块可以从熵解码模块210接收各种信息,诸如预测单元信息、帧内预测方法的预测模式信息、关于帧间预测方法的运动预测的信息等,可以分离在当前编码单元中预测单元,并且可以确定是否对预测单元执行帧间预测或帧内预测。通过使用从用于编码图像的装置接收的当前预测单元的帧间预测所需的信息,帧间预测模块230可以基于关于包括当前预测单元的当前图片的先前图片和后续图片中的至少一个的信息对当前预测单元执行帧间预测。或者,可以基于关于包括当前预测单元的当前图片中的一些预重建区域的信息来执行帧间预测。
为了执行帧间预测,基于编码单位,可以确定跳过模式、合并模式和AMVP模式中的哪一个被用作编码单元中包括的预测单元的运动预测方法。
帧内预测模块235可基于当前图片中的像素信息产生预测块。当预测单元是经历帧内预测的预测单元时,基于从用于编码图像的装置接收的预测单元的帧内预测模式信息来执行帧内预测。帧内预测模块235可以包括自适应帧内平滑(AIS)滤波器、参考像素内插模块和DC滤波器。AIS滤波器对当前块的参考像素执行滤波,并且可以根据当前预测单元的预测模式来确定是否应用滤波器。从用于编码图像的装置接收的预测单元的预测模式和AIS滤波器信息被用于对当前块的参考像素执行AIS滤波。当当前块的预测模式是不执行AIS滤波的模式时,不应用AIS滤波器。
当预测单元的预测模式是其中基于通过内插参考像素获得的像素值执行帧内预测的预测模式时,参考像素内插模块可内插参考像素以生成以整数值或更小的像素为单位的参考像素。当当前预测单元的预测模式是其中在没有内插参考像素的情况下生成预测块的预测模式时,不内插参考像素。当当前块的预测模式是DC模式时,DC滤波器可以通过滤波生成预测块。
可以将重构的块或图片提供给滤波器模块240。滤波器模块240可以包括去块滤波器、偏移校正模块和ALF。
从用于编码图像的装置,接收的是关于是否将去块滤波器应用于相关块或图片的信息以及当应用去块滤波器时是否应用强滤波器或弱滤波器的信息。用于解码图像的装置的去块滤波器可以从用于编码图像的装置接收关于去块滤波器的信息,并且用于对图像进行解码的装置可以对相关块执行去块滤波。
偏移校正模块可以基于在执行编码时应用于图像的偏移校正的类型、偏移值信息等对重建图像执行偏移校正。
可以基于关于是否应用从用于编码的装置接收的ALF、ALF系数信息等的信息将ALF应用于编码单元。可以将ALF信息提供为包括在特定参数集中。
存储器245可以存储重建的图片或块以用作参考图片或参考块,并且可以将重建的图片提供给输出模块。
可以将编码块划分为一个或多个块。具体地,这里,可以基于四叉树划分、二叉树划分(或双树划分)等将编码块划分为最大大小编码块到最小大小编码块。关于最大大小编码块和最小大小编码块的信息或关于最大大小编码块和最小大小编码块之间的差值的信息可以用信号通知给用于在比特流中解码的装置。
四叉树(QT)划分是将编码块划分为四个块的方法。通过QT划分,编码块可以被划分成四个块,其中水平和垂直长度减少1/2。有关可进行QT划分的编码块的最大大小或最小大小的信息、QT划分的次数(或最大划分深度),最小大小块的划分深度、用于在可进行QT划分的最大大小编码块或当前编码块中的划分的深度等可以通过上层报头用信号通知。这里,上层报头的示例可以包括切片层、图片层、序列层、视频层等。
二叉树(BT)划分是将编码块划分为两个块的方法。通过BT划分,编码块可以在水平或垂直方向上被划分为两个块。例如,编码块可以通过BT划分,划分成其中水平或垂直长度减少1/2的两个块或其中水平或垂直长度以3/4和1/4被减少的两个块。如上所述,BT划分可以表示以1/N(N≥2)的精度划分编码块的方法。关于可以进行BT划分的编码块的最大大小或最小大小的信息、BT划分的次数(或最大划分深度)、最小大小块的划分深度、基于最大大小编码块的用于BT划分的最大深度、当前编码块可用的BT划分深度或划分精度等,可以通过上层报头用信号通知。
BT划分的示例可以包括其中当前块被划分为对称形状的两个块的对称二叉树(SBT)划分,以及其中当前块被划分为不对称形状的两个块的非对称二叉树(ASBT)划分。SBT划分表示使用1/2的精度的划分形状,并且通过SBT划分,当前块可以被划分为相同大小的两个块。相反,ASBT划分表示使用小于1/2(即,1/M,这里,M是大于2的整数)的精度的划分形状,并且通过ASBT划分,当前块可以被划分为不同大小的两个块。在最大大小编码块的基础上,有关SBT或ASBT划分的最大深度、当前编码块可用的SBT或ASBT深度、SBT或ASBT划分的次数(或最大划分深度)、可以进行SBT或ASBT划分的编码块的最大大小或最小大小等的信息,可以通过上层报头用信号通知。
在下文中,为了便于描述,假设QT划分指示当前编码/解码块被划分为四个块并且BT划分指示当前编码/解码块被划分为两个块。此外,假设SBT划分意味着当前编码/解码块被划分成两个块并且划分形状是对称的,并且ASBT划分意味着划分形状是不对称的。
在下文中,将参考附图详细描述QT划分和BT划分。在稍后描述的实施例中,作为当前编码/解码目标的块被称为当前编码块、当前解码块或当前块。这里,根据编码/解码处理,当前编码/解码块可以表示这里包括的编码块(或编码单元)、预测块(或预测单元)、变换块(或变换单元)、以及部分块中的一个。
图6是示出对编码块的QT划分信息进行编码的方法的图。在该实施例中,“当前”编码块表示特定时间的编码目标块。例如,当前编码块可以表示具有执行当前编码的划分深度的块。例如,当输入编码块用于编码时,首先输入的编码块被视为“当前编码块”。之后,当划分编码块时,当对从划分得到的块执行编码时,将来自划分的结果块视为“当前编码块”。
当输入编码块时,在步骤S601将输入编码块视为“当前编码块”。首先输入的编码块可以表示要编码的具有最高划分深度的编码块(即,深度为零的编码块)。
在步骤S602,用于编码的装置可以对关于当前编码块的QT划分信息进行编码。这里,QT划分信息指示是否对当前编码块执行QT划分。当对当前编码块执行QT划分时,QT划分信息被设置为“真”,并且当不对当前编码块执行QT划分时,QT划分信息被设置为“假”。
当在步骤S603确定未对当前编码块执行QT划分时,对当前编码块的QT划分处理结束。相反,当在步骤S603确定对当前编码块执行QT划分时,在步骤S604通过QT划分生成包括在当前编码块中的四个部分块(或子块)。
当当前编码块被划分为四个部分块时,将当前编码块中包括的部分块之一设置为当前部分块,并且在步骤S605根据编码顺序对关于当前部分块的QT划分信息进行编码。这里,部分块的编码顺序可以基于光栅扫描、Z扫描等,或者可以是预定义的顺序。也就是说,根据部分块的编码顺序,对部分块的QT划分信息按顺序编码。
当在步骤S606确定未对当前部分块执行QT划分时,在步骤S607和S608。QT划分处理根据当前部分块是否是当前编码块中的最后一个块以及输入编码块中的最后一个块而结束。例如,当不对当前部分块执行QT划分并且当前部分块是当前编码块和输入编码块中的最后一个块时,QT划分处理结束。相反,当当前部分块不是当前编码块中的最后部分块时,或者当前编码块是当前编码块中的最后部分块但不是输入编码块中的最后部分块时,在步骤S609,以扫描顺序,将后续部分块视为当前部分块,并且执行编码QT划分信息的处理。
相反,当在步骤S606确定对当前部分块执行QT划分时,在步骤S610将当前部分块设置为当前编码块,并且在步骤S604将新设置的当前编码块划分为四个部分块。当新设置的当前编码块被划分成四个部分块时,在步骤S605到S610,对新生成的四个部分块重复执行编码QT划分信息的处理。
用于编码的装置可以基于划分当前编码块的结果,经由上层报头,编码可以进行QT划分的编码块的最大大小、可以进行QT划分的编码块的深度等。
对于后续编码块,可以使用划分当前编码块的结果,确定可以进行QT划分的编码块的最大大小,QT划分所在的编码块的深度。可能的等等。
用于编码的装置可以使用BT划分信息来编码当前编码块是否被划分为两个块。这里,BT划分信息可以是指示当前编码块是否被划分为两个块的信息。当当前编码块被划分成两个块时,用于编码的装置还可以编码指示划分形状是SBT还是ASBT的信息。这里,指示当前编码块的划分形状的信息可以是一位标志,但是不限于此。
作为另一示例,用于编码的装置可以使用SBT划分信息或ASBT划分信息来指示是否对当前编码块执行SBT划分或ASBT划分。这里,SBT划分信息指示当前编码块是否被划分为对称形状的两个块,并且ASBT划分信息指示当前编码块是否被划分为不对称形状的两个块。
这里,在图7中,假设BT划分信息用于编码当前编码块是否被划分为两个块。尽管未示出,但是可以使用SBT划分信息或ASBT划分信息来编码当前编码块是否被划分为两个块。当对SBT划分信息或ASBT划分信息进行编码时,在图7中,BT划分或BT划分信息被替换为SBT/ASBT划分或SBT/ASBT划分信息。例如,为了确定是否对当前编码块执行SBT划分,图7中的BT信息可以用SBT划分信息替换。此外,为了确定是否对当前编码块执行ASBT划分,图7中的BT信息也可以用ASBT划分信息替换。
图7是示出对编码块的BT划分信息进行编码的方法的图。
当输入编码块时,在步骤S701将输入编码块视为“当前编码块”。首先输入的编码块可以表示要编码的具有最高划分深度的编码块(即,深度为零的编码块)。
在步骤S702,用于编码的装置可以对当前编码块的BT划分信息进行编码。这里,BT划分信息指示是否对当前编码块执行BT划分。当对当前编码块执行BT划分时,BT划分信息被设置为“真”,并且当不对当前编码块执行BT划分时,BT划分信息被设置为“假”。
当对SBT划分信息进行编码时,用于编码的装置根据是否对当前编码块执行SBT划分来设置SBT划分信息的值。例如,当当前编码块被划分成对称形状的两个块时,SBT划分信息被设置为“真”。相反,当当前编码块未被划分成两个块或被划分成不对称形状时,SBT划分信息被设置为“假”。
类似地,当编码ASBT划分信息时,用于编码的装置根据是否对当前编码块执行ASBT划分来设置ASBT划分信息的值。例如,当当前编码块被划分成不对称形状的两个块时,ASBT划分信息被设置为“真”。相反,当当前编码块未被划分为两个块或被划分为对称形状时,ASBT划分信息被设置为“假”。
当对BT划分信息进行编码时,不对SBT划分信息和ASBT划分信息进行编码。相反,当未对BT划分信息进行编码时,对SBT划分信息和ASBT划分信息中的至少一个进行编码。这里,当SBT划分信息和ASBT划分信息中的一个表示“假”时,另一个被编码。例如,当SBT划分信息指示“真”时,不编码ASBT划分信息。当SBT划分信息指示“假”时,ASBT划分信息被编码。
当当前编码块被划分为两个部分块时,用于编码的装置可以进一步对划分方向的信息进行编码。这里,划分方向指示当前编码块是在水平方向还是在垂直方向上被划分。
当在步骤S703确定未对当前编码块执行BT划分时,对当前编码块的BT划分处理结束。相反,当在步骤S703确定对当前编码块执行BT划分时,在步骤S704通过BT划分生成当前编码块中包括的两个部分块(或子块)。
当当前编码块被划分为两个部分块时,将当前编码块中包括的部分块之一设置为当前部分块,并且在步骤S705根据编码顺序对当前部分块的BT划分信息进行编码。这里,部分块的编码顺序可以基于光栅扫描、Z扫描等,或者可以是预定义的顺序。也就是说,根据部分块的编码顺序,按顺序编码关于部分块的BT划分信息。
当在步骤S706确定未对当前部分块执行BT划分时,在步骤S707和S708,BT划分处理根据当前部分块是否是当前编码块中的最后一个块和输入编码块中的最后一个块而结束。例如,当不对当前部分块执行BT划分并且当前部分块是当前编码块和输入编码块中的最后一个块时,BT划分处理结束。相反,当当前部分块不是当前编码块中的最后部分块时,或者当前编码块是当前编码块中的最后部分块但不是输入编码块中的最后部分块时,在步骤S709,以扫描顺序,将后续部分块视为当前部分块,并且执行编码BT划分信息的处理。
相反,当在步骤S706对当前部分块执行BT划分时,在步骤S710将当前部分块设置在当前编码块,并且在步骤S704将新设置的当前编码块划分为两个部分块。当新设置的当前编码块被划分为两个部分块时,在步骤S705到S710,对新生成的两个部分块重复执行编码BT划分信息的处理。
用于编码的装置可以基于编码当前编码块的结果,经由上层报头,编码BT划分(或SBT/ASBT划分)可能的编码块的最大大小、BT划分(或SBT/ASBT划分)可能的编码块的深度等。
图8是示出解码用于解码块的QT划分信息的方法的图。在该实施例中,“当前”解码块表示特定时间的解码目标块。例如,当前解码块可以表示具有执行当前解码的划分深度的块。例如,当输入解码块用于解码时,首先输入的解码块被视为“当前解码块”。之后,当划分解码块时,当对从划分得到的块执行解码时,将来自划分的得到的块视为“当前解码块”。
当输入解码块时,在步骤S801将输入解码块视为“当前解码块”。首先输入的解码块可以表示要解码的具有最高划分深度的解码块(即,深度为零的解码块)。
在步骤S802,用于解码的装置可以解码关于当前解码块的QT划分信息。这里,QT划分信息指示是否对当前解码块执行QT划分。当QT划分信息指示“真”时,对当前解码块执行QT划分,并且当QT划分信息指示“假”时,不对当前解码块执行QT划分。
当QT划分信息指示为假时,即,当在步骤S803确定未对当前解码块执行QT划分时,对当前解码块的QT划分处理结束。相反,当QT划分信息指示为真时,即,当在步骤S803确定对当前解码块执行QT划分时,在步骤S804通过步骤QT划分生成当前解码块中包括的四个部分块(或子块)。
当当前解码块被划分为四个部分块时,将当前解码块中包括的部分块之一设置为当前部分块,并在步骤S805根据解码顺序对当前部分块的QT划分信息进行解码。这里,部分块的解码顺序可以基于光栅扫描、Z扫描等,或者可以是预定义的顺序。也就是说,根据部分块的解码顺序,按顺序解码关于部分块的QT划分信息。
当关于当前部分块的QT划分信息指示为假时,即,当在步骤S806确定未对当前部分块执行QT划分时,在步骤S807和S808,QT划分处理根据当前部分块是否是当前解码块和输入解码块的最后块而结束。例如,当不对当前部分块执行QT划分并且当前部分块是当前解码块和输入解码块中的最后一个块时,QT划分处理结束。相反,当当前部分块不是当前解码块中的最后部分块时,或者当前解码块是当前解码块中的最后部分块但不是输入解码块中的最后部分块时,在步骤S809,以扫描顺序,将后续部分块视为当前部分块,并且执行解码QT划分信息的处理。
相反,当关于当前部分块的QT划分信息指示为真时,即,当在步骤S806确定对当前部分块执行QT划分时,在步骤S810将当前部分块设置为当前解码块,在步骤S804,将新设置的当前解码块分成四个部分块。当新设置的当前解码块被划分成四个部分块时,在步骤S805到S810,对新生成的四个部分块重复执行解码QT划分信息的处理。
在该实施例中,当当前解码块的大小等于或小于其中QT划分是可能的最大块大小时,其从上层报头发信号通知,或者当当前解码块的深度时等于或大于其中QT划分是可能的最大块深度时,其从上层报头发信号通知,省略对当前解码块的划分信息的解码,并且不再对当前解码块执行QT划分。
用于解码的装置可以使用BT划分信息、SBT划分信息或ASBT划分信息来确定当前解码块是否被划分为两个块。这里,BT划分信息指示当前解码块是否被划分为两个块,并且SBT划分信息指示当前解码块是否被划分为对称形状的两个块。ASBT划分信息指示当前解码块是否被划分成不对称形状的两个块。
在使用BT划分信息的情况下,当BT划分信息指示当前解码块被划分为两个块时,用于解码的装置进一步解码指示当前解码块的划分形状(例如,对称或不对称形状)的信息。相反,SBT划分信息或ASBT划分信息指示当前解码块的划分形状,使得当解码该信息时,不进一步解码指示当前解码块的划分形状的信息。
在下文中,将参考图9描述编码BT划分信息的方法。然而,图9中所示的实施例可以用于编码SBT划分信息或ASBT划分信息。例如,为了确定是否对当前编码块执行SBT划分,图9中的BT信息可以用SBT划分信息替换。此外,为了确定是否对当前编码块执行ASBT划分,图9中的BT信息可以用ASBT划分信息替换。
图9是示出解码用于解码块的BT划分信息的方法的图。
当输入解码块时,在步骤S901将输入解码块视为当前解码块。首先输入的解码块可以表示要解码的具有最高划分深度的解码块(即,深度为零的解码块)。
在步骤S902,用于解码的装置可以解码关于当前解码块的BT划分信息。这里,BT划分信息指示是否对当前解码块执行BT划分。当BT划分信息指示“真”时,对当前解码块执行BT划分,并且当BT划分信息指示“假”时,不对当前解码块执行BT划分。
当解码SBT划分信息时,SBT划分信息指示是否对当前解码块执行SBT划分。例如,当SBT划分信息指示“真”时,对当前解码块执行SBT划分,并且当SBT划分信息指示“假”时,不对当前解码块执行SBT划分。
当解码ASBT划分信息时,ASBT划分信息指示是否对当前解码块执行ASBT划分。例如,当ASBT划分信息指示“真”时,对当前解码块执行ASBT划分,并且当SBT划分信息指示“假”时,不对当前解码块执行SBT划分。
当解码BT划分信息时,不解码SBT划分信息和ASBT划分信息。相反,当未对BT划分信息进行解码时,对SBT划分信息和ASBT划分信息中的至少一个进行解码。这里,当SBT划分信息和ASBT划分信息中的一个表示“假”时,另一个被解码。例如,当SBT划分信息表示“真”时,ASBT划分信息不被解码,并且当SBT划分信息表示“假”时,ASBT划分信息被解码。
当BT划分信息指示为真时,即,当当前解码块被划分为两个块时,用于解码的装置进一步解码关于划分方向的信息。这里,划分方向指示当前解码块是在水平方向还是在垂直方向上被划分。
当BT划分信息指示为假时,即,当在步骤S903确定未对当前解码块执行BT划分时,对当前解码块的BT划分处理结束。相反,当BT划分信息指示为真时,即,当在步骤S903确定对当前解码块执行BT划分时,在步骤S904可以通过BT划分生成当前解码块中包括的两个部分块(或子块)。
当当前解码块被划分为两个部分块时,将当前解码块中包括的部分块之一设置为当前部分块,并且在步骤S905根据解码顺序对当前部分块的BT划分信息进行解码。这里,部分块的解码顺序可以基于光栅扫描、Z扫描等,或者可以是预定义的顺序。也就是说,根据部分块的解码顺序,按顺序解码关于部分块的BT划分信息。
当在步骤S906确定未对当前部分块执行BT划分时,在步骤S907和S708,BT划分处理根据当前部分块是否是当前解码块以及输入解码块中的最后一个块而结束。例如,当不对当前部分块执行BT划分并且当前部分块是当前解码块和输入解码块中的最后一个块时,BT划分处理结束。相反,当当前部分块不是当前解码块中的最后部分块时,或者当前解码块是当前解码块中的最后部分块但不是输入解码块中的最后部分块时,在步骤S909,以扫描顺序,将后续部分块视为当前部分块,并且执行解码BT划分信息的处理。
相反,当在步骤S906确定对当前部分块执行BT划分时,在步骤S910将当前部分块设置为当前解码块,并且在步骤S904将新设置的当前解码块划分为两个部分块。当新设置的当前解码块被划分成两个部分块时,在步骤S905到S910,对新生成的两个部分块重复执行解码BT划分信息的处理。
在该实施例中,当前解码块的大小等于或小于其中BT划分(或SBT/ASBT划分)是可能的最大块大小,其可以从上层报头发信号通知,或者当当前解码块的深度等于或大于其中BT划分(或SBT/ASBT划分)是可能的最大块深度时,其可以从上层报头发信号通知,解码当前解码块的划分信息被省略,并且不对当前解码块进一步执行BT划分。
在图6至9中所示的示例中,描述了通过使用QT划分或BT划分(或SBT/ASBT划分)递归地划分最大大小的编码/解码块的方法。这里,在将编码/解码块分成多个部分块时,组合使用QT划分方法和BT划分方法。这里,可以不同地设置QT划分和BT划分的顺序。例如,用于编码的装置使用QT划分划分最大编码块,并且当存在其中BT划分被确定为最佳的部分块时,终止QT划分,并且使用BT划分划分部分块。或者,即使使用BT划分生成部分块,当确定QT划分最佳时,再次使用QT划分划分部分块。如上所述,用于编码的装置可以检查每个块的最佳划分方法,并且根据其可以编码指示每个块的最佳划分方法的信息。
作为另一示例,用于解码的装置对QT划分信息或BT划分信息进行解码,从而确定解码块的最佳划分状态。这里,仅当不应用其他方法时,可以应用QT划分方法和BT划分方法中的一个。例如,仅当关于预定块的QT划分信息指示为假或者对包括预定块的上层块执行BT划分时,才解码关于预定块的BT划分信息。
在编码块划分信息中,用于编码的装置可以经由上层报头对指示是否使用每个划分方法的信息进行编码。例如,用于编码的装置可以经由上层报头编码指示是否使用QT划分的信息或指示是否使用BT划分的信息。例如,当确定使用QT划分但不使用BT划分时,仅使用QT划分来划分编码块。在这种情况下,可以省略指示是否对编码块执行BT划分的BT划分信息的编码。作为另一示例,当确定使用QT划分和BT划分时,使用QT和BT划分模式划分编码块。
图10是示出编码块中的划分状态的示例的图。
为了便于描述,当对块执行BT划分时,假设由BT划分生成的部分块不进一步划分为BT块。此外,假设通过SBT划分信息或ASBT划分信息指示当前编码块是否被划分为两个块。在图10所示的示例中,实线表示QT划分方法用于划分,虚线表示SBT划分方法用于划分。点划线表示ASBT划分方法用于划分。
参照图10,通过QT划分,生成与上层块相比水平和垂直线减少1/2的子块,并且通过SBT划分,生成与上层块相比水平线和垂直线中的一个减少了1/2的子块。通过ASBT划分,生成与上层块相比水平和垂直线中的一个减少1/4的子块。在图10中,划分线上标记的数字表示划分顺序。
参照图10,划分线①表示QT划分在首先输入的编码块中是最佳的。划分线②表示SBT水平划分是由划分线①产生的左上部分块中的最佳划分。划分线③表示SBT垂直划分是由划分线②产生的上部分块中的最佳划分。划分线④表示SBT水平划分是由划分链接②产生的下部分块中的最佳划分。划分线⑤表示SBT垂直划分是由划分线①产生的右上部分块中的最佳划分。划分线⑥表示SBT垂直划分是由划分线⑤产生的左部分块中的最佳划分。划分线⑦表示SBT垂直划分是由划分线⑤产生的右部分块中的最佳划分。划分线⑧表示QT划分是由划分线①产生的左下部分块中的最佳划分。划分线⑨表示SBT水平划分是由划分线⑧产生的左上部分块中的最佳划分。划分线⑩表示ASBT 3/4水平划分是由划分线⑨产生的下部分块中的最佳划分。划分线表示SBT水平划分是由划分线⑧产生的左下部分块中的最佳划分。划分线/>表示SBT水平划分是由划分线①产生的右下部分块中的最佳划分。划分线/>表示ASBT 3/4垂直划分是由划分线/>产生的上部分块中的最佳划分。划分线/>表示SBT垂直划分是由划分线/>产生的下部分块中的最佳划分。划分线/>表示ASBT 3/4垂直划分是由划分线/>产生的右部分块中最佳划分。
图11是示出使用树结构表示图10中输入编码块的最佳划分状态的图。
关于QT划分,情况的数量是两个:不执行QT划分;并且根据QT划分,块被划分成四个部分块(即,宽度和高度被划分成1/2)。因此,QT划分信息用0或1表示。关于SBT划分,情况的数量为3:不执行SBT划分;在水平方向上执行划分为两个块;并且在垂直方向上执行划分。因此,SBT划分信息用0、1或2表示。关于ASBT划分,情况的数量为5:不执行ASBT划分;在水平方向上划分为1/4大小;在水平方向上执行划分为3/4大小;在垂直方向上执行划分为1/4大小;并且在垂直方向上执行划分为3/4大小。因此,ASBT划分信息由0、1、2、3或4表示。
如图11所示,在树结构的每个节点上标记QT划分信息和BT划分信息。
基于以上描述,将详细描述一种控制编码/解码块中的帧内预测模式以及编码/解码的数量或类型的方法。
图12是示出由用于编码的装置控制预测模式的数量或类型的过程的流程图。在图12中,步骤显示为一系列,但不必按所示顺序执行步骤。例如,当确定预测块的帧内预测模式的数量或类型的结果没有影响时,可以改变顺序。例如,即使步骤S1201和S1202的顺序改变,当帧内预测模式的数量或类型没有变化时,也可以改变其顺序。而且,可以部分省略图12的步骤。例如,当控制帧内预测模式的数量或类型而不管预测块的形状如何时,省略步骤S1202。
在该实施例中,当前编码块可以表示预测块、包括预测块的编码块等。在下文中,将参考图12详细描述本发明。
在步骤S1201,根据当前编码块的大小,示出了可以控制帧内预测模式的数量或类型。详细地描述这一点,可以根据当前编码块的大小可变地确定当前编码块可用的帧内预测模式的数量。例如,随着当前编码块的大小增加,可用于当前编码块的帧内预测模式的数量增加。例如,假设预测块的最小大小是4×4并且最大大小是256×256,当当前编码块大小等于或大于4×4并且等于或小于32×32时,当前编码块可用的帧内预测模式的数量被设置为35。当当前编码块大小等于或大于64×64并且等于小于256×256时,可用于当前编码块的帧内预测模式的数量被设置为67。
相反,随着当前编码块的大小减小,可用于当前编码块的帧内预测模式的数量增加。例如,假设预测块的最小大小是4×4并且最大大小是256×256,当当前编码块大小等于或大于4×4并且等于或小于32×32时,当前编码块可用的帧内预测模式的数量被设置为67。当当前编码块大小等于或大于64×64并且等于或小于256×256时,可用于当前编码块的帧内预测模式的数量被设置为35。
即,当当前编码块大小满足特定的大小条件时,可用的帧内预测模式的数量被设置为N个。N并不限定于上述的35或67,是1以上的整数。例如,N是4。上述特定的大小条件可以通过将当前编码块的水平方向长度和/或垂直方向长度与特定的临界值进行比较而判断。或者,上述特定的大小条件可以通过将当前编码块的长度×宽度的值(面积)与特定的临界值进行比较而判断。
可以根据将当前编码块的大小与标准大小进行比较的结果来确定当前编码块可用的帧内预测模式的数量。这里,可以在通过上层报头用信号通知标准大小,或者可以从用于编码的装置和用于在相同条件下解码的装置导出标准大小。例如,假设标准大小是32×32,通过应用对数函数将关于标准大小的信息定义为“log232”,并且可以在比特流中发送。当当前编码块的大小小于或大于标准大小时,可用于当前编码块的帧内预测模式的数量可能增加。例如,当当前编码块的大小为32×32时,当前编码块可用的帧内预测模式的数量是19。当当前编码块大小等于或大于64×64并且等于或小于128×128时,可用于当前编码块的帧内预测模式的数量是35。当当前编码块的大小是256×256时,当前编码块可用的帧内预测模式的数量是67。当前编码块大小等于或小于16×16并且等于或大于8×8,当前编码块可用的帧内预测块的数量为35。当当前编码块大小为4×4,则当前编码块可用于的帧内预测块的数量是67。
相反,当当前编码块的大小小于或大于标准大小时,可用于当前编码块的帧内预测模式的数量可能减少。例如,当当前编码块的大小为32×32时,当前编码块可用的帧内预测模式的数量是67。当当前编码块大小等于或大于64×64并且等于或小于128×128时,可用于当前编码块的帧内预测模式的数量是35。当当前编码块的大小是256×256时,当前编码块可用的帧内预测模式的数量是19。当当前编码块大小等于或小于16×16并且等于或大于8×8时,当前编码块可用的帧内预测块的数量是35。当当前编码块的大小是4×4时,可用于当前编码块的帧内预测块的数量是19。
无论当前编码块的大小如何,可用于当前编码块的帧内预测模式可包括非方向帧内预测模式(或非角度预测模式)。也就是说,不管当前编码块的大小如何,可以使用非方向帧内预测模式对当前编码块进行编码。相反,可用于当前编码块的方向预测模式的数量(即,角度预测模式)可以根据当前编码块的大小而变化。随着可用于当前编码块的帧内预测模式的数量减少或增加,可用于当前编码块的方向预测模式的数量也减少或增加。
当可用于当前编码块的方向预测模式的数量减少时,当前编码块可以基于每整数或类似模式使用方向预测模式。这里,基于每个整数的方向预测模式意味着使用基于每个整数的参考样本来执行帧内预测的模式。这里,基于每整数的参考样本可以表示参考样本本身而不是通过参考样本的内插生成的附加参考样本。例如,水平方向、垂直方向或对角线方向上的帧内预测模式可以是基于每个整数的方向预测模式。
或者,可以通过将整个方向预测模式部分(N-1个部分)除以要使用的方向预测模式的数量N来确定可用于当前编码块的方向预测模式。
图13和14是示出当前编码块中可用的13个方向预测模式的示例的图。
参照图13,可用于当前编码块的帧内预测模式可以是基于每个整数的方向预测模式,基于每个整数的与方向预测模式相邻的方向预测模式。例如,在图13中,示出了垂直方向、水平方向和对角线方向三个方向上的帧内预测模式,以及与其相邻的帧内预测模式(具有±1的偏移的帧内预测模式)作为当前编码块可用的方向预测模式。
参照图14,可用于当前编码块的方向预测模式可以是通过将整个方向预测模式部分划分为12个相等部分而以均匀间隔分配的13个方向预测模式。
当当前预测块可用的帧内预测模式的数量增加时,使用基于每个整数的更多方向预测模式和与其相邻的更多帧内预测模式,或者将整个方向预测模式部分划分为更多部分。
例如,图15和16是示出当前块中可用的21个方向预测模式的示例的图。
在图15中,示出了诸如垂直方向、水平方向和对角线方向的三个方向上的帧内预测模式,以及与其相邻的帧内预测模式(具有±2的偏移的帧内预测模式)作为当前编码块可用的帧内预测模式。
在图16中,可用于当前编码块的帧内预测模式是通过将整个方向预测模式部分划分为20个相等部分而以均匀间隔分配的21个方向预测模式。
用于编码的装置可以针对预测块的每个大小对可用帧内预测模式的数量进行编码,并且可以将结果发送到用于解码的装置。这里,指示用于预测块的每个大小的可用帧内预测模式的数量的信息可以被编码在上层报头中。例如,假设预测块的最小大小是4×4并且最大大小是256×256,当确定可用于等于或小于32×32块的预测块的帧内预测模式的数量是64时,通过将对数应用于可用模式的数量而获得的值(log264)被编码并被发送到用于解码的装置。当确定可用于64×64预测块的帧内预测模式的数量是32时,对通过将对数应用于可用模式的数量而获得的值(log232)进行编码。当可用于128×128预测块的帧内预测模式的数量是16时,对通过将对数应用于可用模式的数量而获得的值(log216)进行编码。当可用于256×256预测块的帧内预测模式的数量是八时,对通过将对数应用于可用模式的数量而获得的值(log28)进行编码。
作为另一示例,在上层报头中,可以预设可用于预测块的每个大小的帧内预测模式的数量,可以确定每个预测块的最佳帧内预测模式的数量,以及可以对指示基于每个预测块的可用帧内预测模式的数量的索引信息进行编码。例如,当可用于32×32预测块的帧内预测模式的数量是19、35或67时,指示19、35和67中的哪一个对于32×32预测块是最佳的索引信息被编码。
用于编码的装置可以对指示是否根据预测块的大小调整帧内预测模式的数量或类型的信息进行编码。可以将编码信息通过上层报头发送到用于解码的装置。这里,信息可以是一位标志,但不限于此。用于解码的装置可以基于标记信息预先确定是否针对预测块的每个大小调整帧内预测模式的数量或类型。
即使在上层报头中编码的信息指示根据预测块的大小调整可用帧内预测模式的数量,也通过常规方法或通过根据预测块的大小调整可用帧内预测模式的数量来对当前编码块进行帧内预测。因此,当在上层报头中编码的信息指示根据预测块的大小调整可用帧内预测模式的数量时,用于编码的装置可以进一步在每个预测块的基础上编码指示是否使用传统方法(即,使用固定数量的帧内预测模式)或使用根据预测块的大小调整可用帧内预测模式的数量的方法来编码相关预测块的信息。这里,编码信息可以是一位标志,但不限于此。
在步骤S1202,描述了根据当前编码块的形状来控制帧内预测模式的数量或类型。详细地描述这一点,可以根据当前编码块的形状可变地确定当前编码块可用的帧内预测模式的数量。例如,当当前编码块为非方形(例如,矩形)时,当前编码块被设置为与垂直方向上的帧内预测模式相比更多使用水平方向上的帧内预测模式,或者与水平方向上的帧内预测模式使用更多在垂直方向上的帧内预测模式。
具体地,当当前编码块为非方形时,根据当前编码块的宽度到高度的比,确定当前块可用的水平方向上的帧内预测模式和垂直方向上的帧内预测模式的数量。例如,当当前编码块的大小为8×16时,当前编码块的高度是宽度的两倍。因此,当前编码块可用的水平方向上的帧内预测模式的数量是垂直方向上的帧内预测模式的数量的大约两倍。例如,当具有可用于当前编码块的方向性的帧内预测模式的数量是25时,将当前编码块设置为使用16个水平方向帧内预测模式和9个垂直方向帧内预测模式。
即,当当前编码块为正方形时,可用于当前编码块的水平方向帧内预测模式的数量等于垂直方向帧内预测模式的数量。当当前编码块为垂直方向较长的长方形时,可用于当前编码块的水平方向帧内预测模式的数量大于垂直方向帧内预测模式的数量。此外,当当前编码块为水平方向较长的长方形时,可用于当前编码块的垂直方向帧内预测模式的数量大于水平方向帧内预测模式的数量。例如,当当前编码块为垂直方向较长的长方形时,与在垂直方向帧内预测模式中未使用的M的模式相关的索引转为与可以在水平方向帧内预测模式中追加使用的M个模式相关的索引使用。上述M根据当前编码块的宽度以及高度的比例发生变化。
可以通过将当前编码块的宽度或高度与预设阈值进行比较来确定当前编码块可用的帧内预测模式的数量。这里,可以通过上层报头发信号通知阈值。例如,可以在通过上层报头用信号通知通过将对数应用于阈值而获得的值(Log2)。或者,用于编码的装置和用于解码的装置可以在相同条件下导出阈值。这里,可以为宽度和高度中的每一个设置阈值,或者可以将相同的值用于宽度和高度。例如,当宽度的阈值是32并且当前编码块的宽度小于阈值时,当前编码块在水平方向上的帧内预测模式的数量N中仅使用1/2N。例如,当水平方向上的方向预测模式的数量是33时,当前编码块在水平方向上使用17个方向预测模式。
无论当前编码块的形状如何,可用于当前编码块的帧内预测模式可包括非方向帧内预测模式(或非角度预测模式)。相反,可用于当前编码块的方向预测模式的数量(即,角度预测模式)可以根据当前编码块的形状而变化。随着可用于当前编码块的帧内预测模式的数量减少或增加,可用于当前编码块的方向预测模式的数量也减少或增加。
可用于当前编码块的方向预测模式可被确定为基于每整数或类似模式的方向预测模式。或者,可以通过将整个方向预测模式部分(N-1个部分)除以要使用的方向预测模式的数量N来确定当前编码块可用的方向预测模式。以上已经参照图13至16对此进行了描述,将省略其详细描述。
用于编码的装置可以对指示是否根据预测块的形状调整帧内预测模式的数量或类型的信息进行编码。可以将编码信息通过上层报头发送到用于解码的装置。这里,信息可以是一位标志,但不限于此。用于解码的装置可以基于标记信息预先确定是否针对预测块的每个形状调整帧内预测模式的数量或类型。
即使在上层报头中编码的信息指示根据预测块的形状调整可用帧内预测模式的数量,也通过常规方法或通过根据预测块的形状调整可用帧内预测模式的数量来对当前编码块进行帧内预测。因此,当在上层报头中编码的信息指示根据预测块的形状调整可用帧内预测模式的数量时,用于编码的装置可以进一步在每个预测块的基础上编码指示是否使用传统方法(即,使用固定数量的帧内预测模式)或使用根据预测块的形状调整可用帧内预测模式的数量的方法来编码相关预测块的信息。这里,编码信息可以是一位标志,但不限于此。
图12主要描述编码处理,并且在解码处理中,可以调整当前解码目标块可用的帧内预测模式的数量。用于解码的装置可以基于在比特流中用信号通知的信息,通过考虑当前解码块的大小、形状或相邻块的使用帧内预测模式的图案,来调整当前解码块的可用帧内预测模式的数量。
当确定可用于当前编码块的帧内预测模式的数量时,用于编码的装置确定当前编码块可用的帧内预测模式中的当前编码块的帧内预测模式,并对其上的信息进行编码。在下文中,将详细描述对当前块的帧内预测模式进行编码/解码的方法。
图17是示出对当前编码块编码最佳帧内预测模式的过程的流程图。
参照图17,首先,用于编码的装置可以在步骤S1701确定当前编码块的MPM候选。这里,用于编码的装置可以关于方向预测模式,通过考虑可用于当前编码块的方向预测模式的数量与可用于当前编码块的相邻块的方向预测模式的编码块不同,将量化的方向预测模式(或量化的方向预测模式的角度)设置为MPM候选。
例如,图18是示出设置MPM候选的示例的图。在图18中,示出了使用三个MPM候选。在图18所示的示例中,L可以是与当前编码块的左边相邻的相邻块中具有最高出现频率的帧内预测模式,或者可以是在邻近当前编码块的左侧的预定位置处的相邻块(或任意相邻块)的帧内预测模式。A可以是与当前编码块的顶部相邻的相邻块中具有最高出现频率的帧内预测模式,或者可以是在邻近于当前编码块的顶部的预定位置的相邻块(或任意相邻块)的帧内预测模式。
L、L-1、L+1和A可以指示帧内预测模式的索引。然而,当当前编码块可用的方向预测模式的数量不同于可用于相邻块的方向预测模式的数量时,相邻块使用的方向预测模式可能不被当前编码块使用。例如,在当前编码块可用的帧内预测模式中,模式18表示水平方向上的预测模式,而在可用于相邻块的方向预测模式中,模式18表示左上方向而不是水平方向的预测模式。
为了解决这种不匹配,当将非方向预测模式分配给MPM候选时,完整地使用索引信息。当将方向预测模式分配给MPM候选时,分配对应于方向预测模式的预测角度。当量化角度被设置为MPM候选时,用于编码的装置基于当前编码块的最佳方向预测模式的预测角度是否等于包含在MPM候选中量化角度来确定当前编码块的帧内预测模式。因此,当MPM候选是非方向预测模式时,诸如L、L-1、L+1、A等的帧内预测模式的索引被用作MPM候选。相反,当MPM候选是方向预测模式时,帧内预测模式的角度,例如L'、(L-1)'、(L+1)'、A'等被用作MPM候选。
当当前编码块不能使用对应于相邻块的预测角度的方向预测模式时,可以执行量化,该量化将相邻块的预测角度减小到与可用于当前预测块的方向模式的预测角度最相似的预测角度。因此,当MPM候选是方向预测模式时,表示方向预测模式的量化角度的MPM候选,例如L'、(L-1)'、(L+1)'、A'等被使用。
例如,当周边块的方向模式为水平方向帧内预测模式中的一个时,相应周边块的方向模式被量化成水平方向(horizontal)帧内预测模式,并作为当前编码块的MPM候选包含于MPM列表。当周边块的方向模式为垂直方向帧内预测模式中的一个时,相应周边块的方向模式被量化成垂直方向(vertical)帧内预测模式,并作为当前编码块的MPM候选包含于MPM列表。
例如,图19和20是示出量化预测角度的示例的图。图20示出了可用于靠近当前编码块的相邻块的方向预测模式。图19示出了可用于当前编码块的方向预测模式。比较图参照图19和图20,发现了由图20中的虚线指示的方向预测模式对于当前编码块是不可用的。因此,当使用由虚线指示的方向预测模式对相邻块进行编码时,由虚线指示的方向预测模式的预测角度被变换为对于当前块可用的方向预测模式中的最相似预测模式的预测角度并,将变换后的角度设置为MPM候选。
在以上实施例中,描述了通过考虑到当前编码块可用的帧内预测模式的数量不同于可用于相邻块的帧内预测模式的数量,将预测角度设置为用于方向预测模式的MPM候选。
作为另一示例,当可用于当前编码块的帧内预测模式的数量等于可用于相邻块的帧内预测模式的数量时,MPM候选还指示关于方向预测模式的帧内模式的索引。或者,即使当可用于当前编码块的帧内预测模式的数量不同于可用于相邻块的帧内预测模式的数量时,MPM候选也被设置为指示关于方向预测模式的帧内预测模式的索引。在这种情况下,可以将关闭块的方向预测模式量化(或变换)为可用于当前块的方向预测模块中具有最相似方向的模式的索引。
在关于图18的实施例中,可以根据当前编码块或与当前编码块相邻的相邻块的大小、形状或解码状态,基于与当前编码块不相邻的相邻块的帧内预测模式,导出MPM候选。
例如,图21是示出从与当前编码块不相邻的相邻块导出MPM候选的示例的图。
当与当前编码块相邻的、作为从当前编码块的顶部方向上的连续非正方形块(例如,宽度比高度长的矩形中的块)的顶部相邻块中的每一个的高度比当前编码块的高度短时,用于编码的装置预测顶部相邻块的帧内预测模式与当前编码块的帧内预测模式不同。或者,当与当前编码块的顶部相邻的相邻块的帧内预测模式是垂直方向预测模式之一时,用于编码的装置预测顶部相邻块的帧内预测模式与当前编码块的帧内预测模式不同。
在这种情况下,用于编码的装置可以考虑从与当前编码块相邻的块中的至少一个中导出附加MPM候选,即,左、左上、右上和左下相邻块。或者,用于编码的装置可以从与相邻块相邻而不是与当前编码块相邻的块导出附加MPM候选。例如,在图21所示的示例中,用于编码的装置可以基于第二顶部块(即,第二顶部块)或者更靠近顶部的块而不是与当前编码块的顶部相邻的块(即,第1个顶部)来导出MPM候选。或者,用于编码的装置可以仅使用在特定方向而不是顶部方向上相邻块的帧内预测模式来考虑MPM候选。
此外,当与当前编码块相邻的、作为从当前编码块在左方向上的连续非正方形(例如,高度比宽度长的矩形的块)的左侧相邻块中的每一个的宽度比当前编码块的宽度短时,用于编码的装置预测左相邻块的帧内预测模式与当前编码块的帧内预测模式不同。或者,当与当前编码块的左侧相邻的相邻块的帧内预测模式是水平方向预测模式之一时,用于编码的装置预测左相邻块的帧内预测模式与当前编码块的帧内预测模式不同。
在这种情况下,用于编码的装置可以考虑从与当前编码块相邻的块中的至少一个中导出附加MPM候选,即,顶部、左上、右上和左下相邻块。或者,用于编码的装置可以从与相邻块相邻而不是与当前编码块相邻的块导出附加MPM候选。例如,在图21所示的示例中,用于编码的装置可以基于第二左侧块(即,第二左侧块)或者更靠左边的块而不是与当前编码块的左边相邻的块(即,第一左侧块)来导出MPM候选。或者,用于编码的装置可以仅使用在特定方向而不是左方向上相邻块的帧内预测模式来考虑MPM候选。
当确定当前编码块的MPM候选时,将当前编码块的帧内预测模式与MPM候选进行比较,并且是否存在与当前编码块的帧内预测模式相同的MPM候选被确定。根据确定的结果,用于编码的装置可以在步骤S1702对指示是否存在与当前编码块的帧内预测模式相同的MPM候选的信息进行编码。例如,当存在与当前编码块的帧内预测模式相同的MPM候选时,该信息被编码为真。当不存在与当前编码块的帧内预测模式相同的MPM候选时,该信息被编码为假。
当在步骤S1703确定存在与当前编码块的帧内预测模式相同的MPM候选时,在步骤S1704,用于编码的装置可以编码指定与在MPM候选中当前编码块的帧内预测模式相同MPM候选的索引信息。
相反,当在步骤S1703确定不存在与当前编码块的帧内预测模式相同的MPM候选时,在步骤S1705,用于编码的装置编码在除了设置为MPM候选的帧内预测模式之外的帧内预测模式中对于当前编码块最佳的帧内预测模式。具体地,从可用于当前编码块的所有帧内预测模式中,排除被设置为MPM候选的帧内预测模式,然后分配足以表示剩余帧内预测模式的比特,使得在剩余预测模式中,对应于当前编码块的帧内预测模式被编码。
当在编码剩余帧内预测模式中分配比特时,固定地分配用于表达剩余帧内预测模式的足够比特。或者,将剩余的帧内预测模式划分为N个组,并且不同地设置分配给各个组的比特。例如,当当前编码块可用的帧内预测模式的数量是67并且MPM候选的数量是6时,剩余帧内预测模式的数量是61。这里,当将剩余帧内预测模式划分为两个组时A和B,16个帧内预测模式被分配给组A,并且45个帧内预测模式被分配给组B。这里,可以编码指示当前编码块的帧内预测模式属于哪个组的标记信息。通过将四个比特分配给组A,对当前编码块的帧内预测模式进行编码。B组进一步分为两个子组B-1和B-2。将19个帧内预测模式分配给组B-1,并且将26个帧内预测模式分配给组B-2。通过将5个比特分配给组B-1并将6个比特分配给组B-2,对当前编码块的帧内预测模式进行编码。编码信息可以被编码并发送到在比特流中进行解码的装置。
接下来,将描述由用于解码的装置解码当前解码块的帧内预测模式。
图22是示出解码当前解码块的帧内预测模式的过程的流程图。
参照图22,首先,用于解码的装置可以在步骤S2201确定当前解码块的MPM候选。如在上述编码处理中,用于解码的装置可以通过考虑接近当前解码块的块的帧内预测模式来确定当前解码块的MPM候选。
接下来,在步骤S2202,用于解码的装置可以从比特流中解码指示在MPM候选中是否存在与当前解码块的帧内预测模式相同的MPM候选的信息。该信息可以是一位标志,但不限于此。
基于该信息,当在步骤S2203确定存在与当前解码块的帧内预测模式相同的MPM候选时,用于解码的装置可以解码指定MPM候选中与当前解码块的帧内预测模式相同的MPM候选的索引信息。
相反,当在步骤S2203确定不存在与当前解码块的帧内预测模式相同的MPM候选时,在步骤S2205,用于解码的装置对指示除了被设置为MPM候选的帧内预测模式之外的剩余帧内预测模式中对于当前解码块的最佳预测模式的剩余预测模式信息进行解码。
在以上实施例中,MPM候选用于确定当前编码/解码块的帧内预测模式,但是可以在不使用MPM候选的情况下确定当前编码/解码块的帧内预测模式。在这种情况下,指定当前编码/解码块的帧内预测模式的信息可以被发送到用于在比特流中解码的装置。
可以将编码块划分为一个或多个预测块,并且可以通过附加划分过程将每个预测块划分为一个或多个部分块(或部分预测块)。这里,可以使用不同的帧内预测模式对部分块进行解码。因此,可以使用多个帧内预测模式对预测块进行编码/解码。如上所述,使用两个或更多个帧内预测模式对预测块进行编码/解码被称为使用“多个帧内预测模式”对预测块进行编码/解码。
在下文中,将详细描述以多个帧内预测模式对当前块进行编码/解码的示例。
图23是示出确定当前编码块的最佳划分形状的示例的图。一个或多个预测块可以包括在编码块中。在该实施例中,当前编码块可以表示编码块中包括的预测块之一。在该实施例中,通过划分当前编码块而生成的块被称为“部分块”。
用于编码的装置可以确定当前编码块的最佳部分块划分形状。具体地,用于编码的装置可以对可用于当前编码块的所有划分形状执行RDO,然后可以确定最佳划分形状。可用于当前编码块的划分形状可以预设在用于编码的装置和用于解码的装置中。
例如,图24示出了当前编码块可以使用的划分形状的示例。
在图24中,块2401示出了当前编码块为方形时的划分形状的示例,并且块2402和2403示出了当前编码块是非方形形状时的划分形状的示例。
可以基于块2401、2402或2403中存在的至少一条直线将当前编码块划分为多个部分块。
如图24中的实例中所示,将当前编码块划分为多个区域的划分线可以是与当前编码块的宽度或高度平行或垂直的直线,或者可以是限定对于当前编码块的宽度或高度的锐角或钝角的直线。在图24所示的例子中,在块2401中存在18个划分线(即,有18个划分形状),在块2402和2403中存在20个划分线(即,有20个划分形状)。然而,当前编码块的划分形状不限于所描述的示例。可以通过实施例中未描述的直线或对角线将当前编码块划分为多个部分块。
根据图24中所示的示例,当前编码块可以被划分为矩形、三角形或梯形等的部分块。
用于编码的装置可以针对当前编码块可用的多个划分形状分配每个部分块的帧内预测模式,并且在步骤S2301可以通过RDO确定RD成本值是最小的划分形状作为当前编码块的最佳划分形状。这里,用于编码的装置可以根据当前编码块的大小或形状来调整可用划分形状的数量或类型。例如,随着当前编码块的大小增加,可用于当前编码块的划分形状的数量减少。
即,限制为只有在当前编码块的大小和/或形态满足特定的条件时可以使用特定的划分形状。例如,只有在当前编码块的大小或面积大于8×8时才可以执行三角形形状的划分。此外,对为了用信号通知图24中图示的多种划分形状而必要的信息进行编码。例如,当沿着对角分割当前编码块而生成两个三角形块时,用信号通知用于指示对角分割的方向是两个对角分割方向中的哪一个的信息。
在步骤S2302,用于编码的装置可以确定每个部分块的帧内预测模式。具体地,用于编码的装置可以针对当前编码块可用的多个划分形状,分配每个部分块的帧内预测模式,然后可以通过RDO确定RD成本值最小的帧内预测模式作为每个部分块的最佳帧内预测模式。
当确定每个部分块的帧内预测模式时,用于编码的装置通过将所有可用帧内预测模式应用于部分块来通过RDO计算RD成本值,并确定RD成本值最小的帧内预测模式作为部分块的帧内预测模式。作为另一示例,用于编码的装置可以通过将一些所有可用帧内预测模式应用于部分块来通过RDO计算RD成本值,并且可以将RD成本值最小的帧内预测模式确定为部分块的帧内预测模式。这里,可以在用于编码的装置和用于解码的装置中同等地设置可应用于部分块的一些帧内预测模式。
作为另一示例,一些帧内预测模式可以包括与当前编码块相邻的相邻块的帧内预测模式和预设的附加帧内预测模式中的至少一个。例如,当相邻块的帧内预测模式是非方向模式时,使用所有非方向模式执行RDO,具有高选择频率的一些方向预测模式(例如,垂直方向预测模式、水平方向预测模式等)作为候选。或者,当相邻块的帧内预测模式是方向模式时,使用所有非方向预测模式、相邻块的帧内预测模式、具有与相邻块的帧内预测模式类似方向的帧内预测模式(例如,具有相邻块的帧内预测模式的差值等于或小于阈值的帧内预测模式)等作为候选来执行RDO。
用于编码的装置可以使用针对每个部分块的帧内预测模式对当前编码块执行帧内预测。这里,当当前编码块被对角线划分时,划分线不对应于像素边界,从而出现部分块之间的重叠像素(即,重叠区域)。
例如,图25是示出根据当前编码块的划分形状出现重叠区域的示例的图。
在图25中所示的框2501和2502的情况下,划分线对应于像素边界,使得不发生部分块之间的重叠区域。然而,在块2503至2505的情况下,存在其中划分线不对应于像素边界的部分(即,穿过像素的部分),并且存在部分块之间的重叠像素(即,重叠区域)。
如上所述,当存在部分块之间的重叠区域时,包括在重叠区域中的像素的预测值是从作为包括重叠区域的部分块的帧内预测的结果而生成的预测值的平均值、从预测值的线性内插等获得的。例如,假设当前编码块被划分为第一部分块和第二部分块,则以共同方式包括在第一部分块和第二部分块中的像素的预测值被确定为使用第一部分块的帧内预测模式计算的第一预测值和使用第二部分块的帧内预测模式计算的第二预测值的平均值,或者是通过线性内插第一预测值和第二预测值获得的值。
作为另一示例,可以使用包括重叠区域的部分块之一的帧内预测模式来生成包括在重叠区域中的像素的预测值。这里,在部分块中,可以基于部分块之间预设的优先级、帧内预测模式之间预设的优先级、重叠区域中包括的像素的位置等等,确定要使用的块的帧内预测模式。例如,可以使用包括重叠区域的部分块的帧内预测模式中的具有高优先级的一个来生成包括在重叠区域中的像素的预测值。
接下来,在用于编码的装置中,将描述对当前编码块的多个帧内预测模式进行编码的方法。
图26是示出对当前编码块的多个帧内预测模式进行编码的方法的流程图。
在该实施例中,用于编码的装置可以通过组合用于识别每个部分块的帧内预测模式的索引信息来生成组合索引信息。
例如,图27是示出生成组合索引信息的示例的图。
假设当前编码块被划分成两个部分块,在图27中,帧内预测模式1指示第一部分块的帧内预测模式,第二帧内预测模式指示第二部分块的帧内预测模式。这里,可以根据编码/解码顺序划分第一部分块和第二部分块,并且可以基于是否包括预定位置处的像素、是否接近预定位置处的像素等来确定第一部分块和第二部分块。例如,第一部分块可以是包括当前编码块的左上像素的部分块。
假设第一部分块和第二部分块能够使用N个帧内预测模式(例如,第一部分块可以使用帧内预测模式A1至A(N-1),并且第二部分块可以在使用帧内预测模式B1至B(N-1))时,组合索引信息可以指示第一部分块可以使用的帧内预测模式中的一个以及第二部分块可以使用的帧内预测模式中的一个的组合。例如,索引1可以指示第一部分块的帧内预测模式是A1并且第二部分块的帧内预测模式是B1。
在图27中,描述了使用组合A1至A(N-1)和B1至B(N-1)的N个组合索引,但是可以使用更多组合索引或者可以使用更少的组合索引。在构建组合索引时,将具有高使用频率的预测模式(诸如非方向预测模式、垂直方向预测模式、水平方向预测模式等)分配给低索引信息,并且将具有低使用频率的预测模式,诸如方向预测模式等,分配给高索引信息。
参照图26,首先,在步骤S2601,用于编码的装置对指示在当前编码块上是否使用多模预测的信息进行编码。这里,信息可以是一位标志,但不限于此。该信息指示对于当前编码块使用单个帧内预测模式或多个帧内预测模式是否是最佳的。
当在步骤S2602对当前编码块使用多模预测时,在步骤S2603对指示当前编码块的最佳划分形状的信息进行编码。
此外,在步骤S2604,用于编码的装置对指示分配给每个部分块的最佳帧内预测模式的组合索引信息进行编码。
当在步骤S2602对当前编码块不使用多模预测时,在步骤S2605,用于编码的装置对当前编码块的帧内预测模式进行编码。
可以使用当前编码块的MPM候选对当前编码块上的帧内预测模式进行编码。已经参考图17和图18详细描述了使用MPM候选对当前编码块的帧内预测模式的编码,使得将省略其描述。
图28是示出解码当前编码块的多个帧内预测模式的方法的流程图。
首先,在步骤S2801,用于解码的装置解码指示在当前解码块上是否使用多模预测的信息。这里,信息可以是一位标志,但不限于此。该信息指示对于当前解码块使用单个帧内预测模式或多个帧内预测模式是否是最佳的。
当信息指示在步骤S2802对当前解码块使用多模预测(例如,标志指示“真”)时,在步骤S2803指示当前解码块的最佳划分形状的信息被解码。
此外,在步骤S2804,用于解码的装置可以解码指示为每个部分块分配的最佳帧内预测模式的组合索引信息。
当组合索引信息被解码时,用于解码的装置将由组合索引信息指定的多个帧内预测模式分配给各个部分块。
或者,在步骤S2802当信息指示对当前解码块未使用多模预测(例如,标志指示“假”)时,在步骤S2805用于解码的装置对用于当前解码块的帧内预测模式进行解码。
可以使用当前解码块的MPM候选来解码当前解码块的帧内预测模式。已经参考图18和图22详细描述了使用MPM候选对当前解码块的帧内预测模式的解码,使得将省略其描述。
在图26和图28中,描述了通过组合索引对多个帧内预测模式进行编码/解码。作为另一示例,可以通过对每个部分块的帧内预测模式进行编码/解码来执行多个帧内预测模式的编码/解码。在下文中,将详细描述编码/解码多个帧内预测模式的另一实施例。
图29是示出编码多个帧内预测模式的过程的另一流程图。为了便于描述,在该实施例中,各个部分块的帧内预测模式被称为主预测模式和子预测模式。这里,术语主预测模式和子预测模式用于方便识别各个部分块的帧内预测模式。
可选地,通过考虑部分块的大小、部分块的位置、部分块的形状、部分块的帧内预测模式等,确定主预测模式和子预测模式。例如,假设当前编码块被划分为两个块,则较大的一个部分块的帧内预测模式被称为主预测模式,而另一个部分块的帧内预测模式被称为子预测模式。
此外,使用主预测模式的部分块被称为主部分块,并且使用子预测模式的部分块被称为子部分块。
参照图29,首先,在步骤S2901,用于编码的装置对指示在当前编码块上是否使用多模预测的信息进行编码。这里,信息可以是一位标志,但不限于此。该信息指示对于当前编码块使用单个帧内预测模式或多个帧内预测模式是否是最佳的。
当在步骤S2902对当前编码块使用多模预测时,在步骤S2903对指示当前编码块的最佳划分形状的信息进行编码。
此外,用于编码的装置可以在步骤S2904对主预测模式进行编码。这里,可以使用MPM候选来编码主预测模式。使用MPM候选的方法如参考图18所述。这里,可以基于当前编码块的位置或主部分块的位置来确定用于设置MPM候选的相邻块。作为另一示例,用于编码的装置可以按原样对主预测模式进行编码。
接下来,在步骤S2905,用于编码的装置对子预测模式进行编码。例如,用于编码的装置可以编码指定子预测模式的索引信息。这里,用于编码的装置可以通过考虑主预测模式将索引重新分配给可用于子部分块的每个帧内预测模式。具体地,由于部分块之间的预测模式很可能彼此相似,所以在考虑主要预测模式时,用于编码的装置按照被选择作为子预测模式的最高概率的顺序将索引重新分配给可用于子预测块的帧内预测模式。
例如,图30是示出将索引重新分配给可用于子预测块的帧内预测模式的示例的图。如图30中的示例所示,用于编码的装置可以将0到N-1的索引分配给帧内预测模式A0到A(N-1)。用于编码的装置和用于解码的装置可以用相同的规则重新分配帧内预测模式的索引。
分配给各个子预测模式候选A0至A(N-1)的预测模式可以根据主预测模式而变化。例如,当主预测模式是非方向模式时,很有可能还将子预测模式选择为非方向预测模式。因此,用于编码的装置可以将非方向预测模式分配给低索引,并且可以将方向预测模式分配给高索引。
相反,当主预测模式是方向模式时,很有可能还将子预测模式选择为方向预测模式。因此,用于编码的装置可以将主预测模式或与主预测模式类似的帧内预测模式分配给低索引,并且可以将剩余的方向预测模式和非方向预测模式分配给高索引。
作为另一示例,类似于主预测模式,还可以使用MPM候选对子预测模式进行编码,或者可以按原样对子预测模式进行编码。或者,用于编码的装置可以编码主预测模式和子预测模式之间的差值。在这种情况下,用于解码的装置可以使用主预测模式和差值来解码子预测模式。
当在步骤S2902对当前编码块不使用多模预测时,用于编码的装置可以在步骤S2906对当前编码块的帧内预测模式进行编码。
可以使用当前编码块的MPM候选来编码当前编码块的帧内预测模式。已经参考图17和图18详细描述了使用MPM候选对当前编码块的帧内预测模式的编码,使得将省略其描述。
图31是示出解码多个帧内预测模式的过程的又一流程图。
首先,在步骤S3101,用于解码的装置解码指示在当前解码块上是否使用多模预测的信息。这里,信息可以是一位标志,但不限于此。该信息指示对于当前解码块使用单个帧内预测模式或多个帧内预测模式是否是最佳的。
当在步骤S3102对当前解码块使用多模预测时,在步骤S3103解码指示对当前解码块最佳的划分形状的信息。
此外,在步骤S3104,用于解码的装置对主预测模式进行解码。这里,可以使用MPM候选来解码主预测模式。使用MPM候选的方法如参考图18所述。这里,可以基于当前解码块的位置或主部分块的位置来确定用于设置MPM候选的相邻块。作为另一示例,要从比特流解码的信息可以是按原样编码的主预测模式。
接下来,用于解码的装置可以在步骤S3105解码子预测模式。例如,用于解码的装置可以解码指定子预测模式的索引。这里,用于解码的装置可以通过考虑主预测模式将索引重新分配给可用于子部分块的每个帧内预测模式。具体地,由于部分块之间的预测模式很可能彼此相似,所以在考虑主要预测模式时,用于解码的装置按照被选择作为子预测模式的最高概率的顺序将索引重新分配给可用于子预测块的帧内预测模式。已经参考图30对此进行了描述,因此,将省略详细描述。
作为另一示例,类似于主预测模式,还可以使用MPM候选来解码子预测模式。或者,要从比特流解码的信息可以按原样指示子预测模式。或者,用于解码的装置可以解码主预测模式和子预测模式之间的差值。在这种情况下,用于解码的装置可以使用主预测模式和差值来解码子预测模式。
当在步骤S3102对当前解码块不使用多模预测时,在步骤S3106,用于解码的装置对当前解码块的帧内预测模式进行解码。
可以使用用于当前解码块的MPM候选来解码当前解码块的帧内预测模式。已经参考图18和图22详细描述了使用MPM候选对当前解码块的帧内预测模式的解码,使得将省略其描述。
尽管为了描述清楚,将本发明的示例性方法表示为一系列操作,但是步骤的顺序不限于此。必要时,所示步骤可以同时或以不同顺序执行。为了实现根据本发明的方法,可以向说明性步骤添加其他步骤,可以从说明性步骤中排除一些步骤,或者可以排除一些步骤,同时可以包括附加步骤。
本发明的各种实施方案不旨在列出所有可能的组合,而是为了说明本发明的代表性方面。各种实施方式中描述的内容可以独立地应用或者以两种或更多种的组合应用。
此外,本发明的各种实施例可以通过硬件、固件、软件或其组合来实现。利用硬件实现,可以通过使用从一组专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑设备(PLD)、场可编程门阵列(FPGA)、通用处理器、控制器、微控制器、微处理器等中选择的至少一个来实现该实施例。
本发明的范围包括软件或机器可执行指令(例如,操作系统、应用、固件、程序等),其使得根据各种实施例的方法的操作在设备或计算机上执行,并包括存储在设备或计算机上执行的这种软件或指令的非暂时性计算机可读介质。
工业适用性
本发明可以用于编码/解码图像。

Claims (8)

1.一种图像解码方法,包括:
确定当前块的帧内预测模式;
基于该帧内预测模式生成当前块的预测块;和
基于该预测块重构该当前块,
其中基于当前块的尺寸信息,不同地确定当前块的帧内预测模式,
其中当前块的尺寸信息是当前块的宽度和高度的比率,以及
其中基于该比率,不同地确定可应用到当前块的水平方向帧内预测模式的数目或垂直方向帧内预测模式的数目。
2.根据权利要求1所述的方法,
其中使用当前块的宽度和高度中的至少一个,导出当前块的尺寸信息,
其中如果当前块的尺寸信息被包括在预定范围中,则可将N个帧内预测模式应用到当前块,和
其中N小于M,M是帧内预测模式的总数。
3.根据权利要求2所述的方法,
其中N是1。
4.根据权利要求1所述的方法,
其中,如果当前块的宽度和高度彼此不同,则长边方向帧内预测模式的数目小于可应用到当前块的短边方向帧内预测模式的数目。
5.根据权利要求4所述的方法,
其中可应用到正方形块的水平方向帧内预测模式的数目和垂直方向帧内预测模式的数目相同为K,
其中将K个长边方向帧内预测模式之中的L个帧内预测模式切换到短边方向帧内预测模式。
6.根据权利要求5所述的方法,
其中通过当前块的宽度和高度的比率来确定L。
7.一种图像编码方法,包括:
确定当前块的帧内预测模式;
基于该帧内预测模式生成当前块的预测块;和
基于该预测块编码该当前块,
其中基于当前块的尺寸信息不同地确定当前块的帧内预测模式,
其中当前块的尺寸信息是当前块的宽度和高度的比率,以及
其中基于该比率,不同地确定可应用到当前块的水平方向帧内预测模式的数目或垂直方向帧内预测模式的数目。
8.一种非瞬时计算机可读记录介质,存储有由图像解码设备接收、解码并用来重构图像的比特流,该比特流包括关于当前块的预测的信息,
其中使用所述关于预测的信息来确定当前块的帧内预测模式,
其中使用该帧内预测模式来生成当前块的预测块,
其中使用该预测块来重构该当前块,
其中基于该当前块的尺寸信息,不同地确定当前块的帧内预测模式,
其中当前块的尺寸信息是当前块的宽度和高度的比率,以及
其中基于该比率,不同地确定可应用到当前块的水平方向帧内预测模式的数目或垂直方向帧内预测模式的数目。
CN201780040684.XA 2016-04-29 2017-04-28 用于编码/解码视频信号的方法和装置 Active CN109417633B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN202311464483.6A CN117499645A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311473282.2A CN117499651A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311468145.XA CN117499648A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311469935.XA CN117499649A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311468139.4A CN117499647A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311473250.2A CN117499650A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311466643.0A CN117499646A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2016-0052704 2016-04-29
KR10-2016-0052932 2016-04-29
KR20160052704 2016-04-29
KR20160052932 2016-04-29
PCT/KR2017/004571 WO2017188780A2 (ko) 2016-04-29 2017-04-28 영상 신호 부호화/복호화 방법 및 장치

Related Child Applications (7)

Application Number Title Priority Date Filing Date
CN202311469935.XA Division CN117499649A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311468139.4A Division CN117499647A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311473250.2A Division CN117499650A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311468145.XA Division CN117499648A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311473282.2A Division CN117499651A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311466643.0A Division CN117499646A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311464483.6A Division CN117499645A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置

Publications (2)

Publication Number Publication Date
CN109417633A CN109417633A (zh) 2019-03-01
CN109417633B true CN109417633B (zh) 2023-11-28

Family

ID=60159928

Family Applications (8)

Application Number Title Priority Date Filing Date
CN202311464483.6A Pending CN117499645A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311468139.4A Pending CN117499647A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311473282.2A Pending CN117499651A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311469935.XA Pending CN117499649A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311466643.0A Pending CN117499646A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN201780040684.XA Active CN109417633B (zh) 2016-04-29 2017-04-28 用于编码/解码视频信号的方法和装置
CN202311473250.2A Pending CN117499650A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311468145.XA Pending CN117499648A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法

Family Applications Before (5)

Application Number Title Priority Date Filing Date
CN202311464483.6A Pending CN117499645A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311468139.4A Pending CN117499647A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311473282.2A Pending CN117499651A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311469935.XA Pending CN117499649A (zh) 2016-04-29 2017-04-28 图像解码装置、图像编码装置和用于发送比特流的装置
CN202311466643.0A Pending CN117499646A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN202311473250.2A Pending CN117499650A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法
CN202311468145.XA Pending CN117499648A (zh) 2016-04-29 2017-04-28 图像解码方法、图像编码方法和用于发送比特流的方法

Country Status (5)

Country Link
US (2) US20190141319A1 (zh)
EP (2) EP3783890A1 (zh)
KR (2) KR102583569B1 (zh)
CN (8) CN117499645A (zh)
WO (1) WO2017188780A2 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3025334C (en) * 2016-05-25 2021-07-13 Arris Enterprises Llc Binary ternary quad tree partitioning for jvet coding of video data
US10863186B2 (en) * 2016-08-26 2020-12-08 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
KR102528387B1 (ko) * 2017-01-09 2023-05-03 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR102358760B1 (ko) * 2017-11-30 2022-02-08 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
CN117478912A (zh) * 2018-02-23 2024-01-30 英迪股份有限公司 对图像进行解码或编码的方法和传输图像的数据的方法
EP3766252A4 (en) 2018-03-26 2022-03-30 MediaTek Inc. METHODS AND APPARATUS FOR SIGNALING VIDEO DATA CODING UNIT PARTITIONING
KR20190113654A (ko) * 2018-03-27 2019-10-08 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019225991A1 (ko) * 2018-05-23 2019-11-28 주식회사 케이티 비디오 신호 처리 방법 및 장치
US11533508B2 (en) * 2018-06-08 2022-12-20 Kt Corporation Method and apparatus for encoding/decoding residual data based on a plurality of transformations
US10516885B1 (en) * 2018-07-11 2019-12-24 Tencent America LLC Method and apparatus for video coding
CN117692632A (zh) * 2018-07-31 2024-03-12 寰发股份有限公司 用于视频编解码的利用运动向量差的合并方法和装置
WO2020058893A1 (en) 2018-09-19 2020-03-26 Beijing Bytedance Network Technology Co., Ltd. History based motion vector predictor for intra block copy
KR20200083356A (ko) 2018-12-28 2020-07-08 김기백 인트라 예측 기반의 영상 부호화/복호화 방법 및 장치
CN113709459B (zh) 2019-01-02 2023-06-23 Oppo广东移动通信有限公司 帧内预测方法、装置及计算机存储介质
WO2020180151A1 (ko) * 2019-03-07 2020-09-10 엘지전자 주식회사 비디오 신호를 처리하기 위한 방법 및 장치
WO2020197223A1 (ko) * 2019-03-23 2020-10-01 엘지전자 주식회사 영상 코딩 시스템에서의 인트라 예측 기반 영상 코딩
WO2020197224A1 (ko) * 2019-03-24 2020-10-01 엘지전자 주식회사 인트라 예측 모드 후보 리스트를 구성하는 영상 코딩
WO2020251328A1 (ko) * 2019-06-13 2020-12-17 엘지전자 주식회사 인트라 예측 모드 변환에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020256525A1 (ko) * 2019-06-20 2020-12-24 엘지전자 주식회사 행렬 기반 인트라 예측 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
CN113906754A (zh) * 2019-06-25 2022-01-07 韩国电子通信研究院 图像编码/解码方法和设备
US11323743B2 (en) * 2019-08-26 2022-05-03 Tencent America LLC Interaction between CU partitions and sub-block transform
CN110581995A (zh) * 2019-09-12 2019-12-17 北京奇艺世纪科技有限公司 一种视频处理的方法及装置
CN111935484B (zh) * 2020-09-28 2021-01-19 广州佰锐网络科技有限公司 一种视频帧压缩编码方法及装置
US20240129528A1 (en) * 2021-06-29 2024-04-18 Kt Corporation Video signal encoding/decoding method and apparatus based on intra prediction, and recording medium storing bitstream

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007067469A (ja) * 2005-08-29 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> フレーム内予測符号化制御方法、フレーム内予測符号化制御装置、フレーム内予測符号化制御プログラムおよびそのプログラムを記録した記録媒体
KR20120003406A (ko) * 2010-07-02 2012-01-10 (주)휴맥스 화면내 예측 부호화를 위한 영상 부호화/복호화 장치 및 방법
WO2012093969A1 (en) * 2011-01-07 2012-07-12 Agency For Science, Technology And Research Method and an apparatus for coding an image
CN103491380A (zh) * 2013-07-29 2014-01-01 朱洪波 高灵活变尺寸块帧内预测编码

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1934871B (zh) * 2003-08-25 2011-08-10 新加坡科技研究局 在视频编码中对帧间预测进行模式判定的方法和系统
KR101379255B1 (ko) * 2007-04-06 2014-03-28 삼성전자주식회사 미분 방정식을 이용한 인트라 예측 부호화, 복호화 방법 및장치
KR101518999B1 (ko) * 2007-06-14 2015-05-12 톰슨 라이센싱 코딩된 비트스트림의 수정
US20100034268A1 (en) * 2007-09-21 2010-02-11 Toshihiko Kusakabe Image coding device and image decoding device
KR101483497B1 (ko) * 2008-09-25 2015-01-20 에스케이텔레콤 주식회사 임펄스 신호를 고려한 영상 부호화/복호화 장치 및 방법
US8855191B2 (en) * 2008-11-24 2014-10-07 Broadcast International, Inc. Parallelization of high-performance video encoding on a single-chip multiprocessor
WO2010087589A2 (ko) * 2009-01-29 2010-08-05 엘지전자 주식회사 경계 인트라 코딩을 이용한 비디오 신호 처리 방법 및 장치
KR101452860B1 (ko) * 2009-08-17 2014-10-23 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
CN103370940B (zh) * 2010-12-14 2016-10-12 M&K控股株式会社 以帧间预测模式编码的运动画面的解码方法
US9532058B2 (en) * 2011-06-03 2016-12-27 Qualcomm Incorporated Intra prediction mode coding with directional partitions
TR201906149T4 (tr) * 2011-06-28 2019-05-21 Samsung Electronics Co Ltd İç tahmin ile video kodlamak için usul ve cihaz.
AU2012276407B2 (en) * 2011-06-28 2016-02-18 Samsung Electronics Co., Ltd. Method and apparatus for image encoding and decoding using intra prediction
GB201111035D0 (en) * 2011-06-29 2011-08-10 Advanced Risc Mach Ltd Floating point adder
JP6242793B2 (ja) * 2011-09-15 2017-12-06 ヴィド スケール インコーポレイテッド 空間的予測のためのシステムおよび方法
US9800870B2 (en) * 2011-09-16 2017-10-24 Qualcomm Incorporated Line buffer reduction for short distance intra-prediction
KR101611409B1 (ko) * 2011-09-28 2016-04-14 한국전자통신연구원 인트라 예측 모드 부호화/복호화 방법 및 장치
JP5869681B2 (ja) * 2011-10-07 2016-02-24 パンテック カンパニー リミテッド 候補画面内予測モードを利用した画面内予測モードの符号化/復号化方法及び装置
US20130107949A1 (en) * 2011-10-26 2013-05-02 Intellectual Discovery Co., Ltd. Scalable video coding method and apparatus using intra prediction mode
JP2013098876A (ja) * 2011-11-02 2013-05-20 Sony Corp 画像処理装置および方法
US8693551B2 (en) * 2011-11-16 2014-04-08 Vanguard Software Solutions, Inc. Optimal angular intra prediction for block-based video coding
KR20140022122A (ko) * 2012-08-10 2014-02-21 한국전자통신연구원 율―왜곡 최적화를 이용한 비디오 부호화 방법 및 장치
KR101650742B1 (ko) * 2012-09-28 2016-08-24 인텔 코포레이션 인터-레이어 인트라 모드 예측
CN104272736B (zh) * 2013-01-16 2018-04-17 黑莓有限公司 用于对视频进行编码/解码的方法和设备及其处理器可读介质
JP6287035B2 (ja) * 2013-10-11 2018-03-07 ソニー株式会社 復号装置および復号方法
WO2015057947A1 (en) * 2013-10-17 2015-04-23 Huawei Technologies Co., Ltd. Improved reference pixel selection and filtering for intra coding of depth map
KR20150113524A (ko) * 2014-03-31 2015-10-08 인텔렉추얼디스커버리 주식회사 향상된 화면 내 블록 복사 기반의 예측 모드를 이용한 영상 복호화 장치 및 그 방법
KR101621358B1 (ko) * 2015-04-16 2016-05-17 아주대학교 산학협력단 Hevc 부호화 장치 및 그 인트라 예측 모드 결정 방법
WO2016200984A1 (en) * 2015-06-08 2016-12-15 Vid Scale, Inc. Intra block copy mode for screen content coding
US10491922B2 (en) * 2015-09-29 2019-11-26 Qualcomm Incorporated Non-separable secondary transform for video coding
US20170009431A1 (en) * 2016-09-20 2017-01-12 Caterpillar Inc. Wing shroud retention system for a bucket of a machine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007067469A (ja) * 2005-08-29 2007-03-15 Nippon Telegr & Teleph Corp <Ntt> フレーム内予測符号化制御方法、フレーム内予測符号化制御装置、フレーム内予測符号化制御プログラムおよびそのプログラムを記録した記録媒体
KR20120003406A (ko) * 2010-07-02 2012-01-10 (주)휴맥스 화면내 예측 부호화를 위한 영상 부호화/복호화 장치 및 방법
WO2012093969A1 (en) * 2011-01-07 2012-07-12 Agency For Science, Technology And Research Method and an apparatus for coding an image
CN103491380A (zh) * 2013-07-29 2014-01-01 朱洪波 高灵活变尺寸块帧内预测编码

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Xiaoran Cao等.Rectangular partitioning for Intra prediction in HEVC.《IEEE》.2012,第501-504页. *

Also Published As

Publication number Publication date
CN117499647A (zh) 2024-02-02
WO2017188780A3 (ko) 2018-08-02
EP3451667A2 (en) 2019-03-06
CN109417633A (zh) 2019-03-01
CN117499649A (zh) 2024-02-02
KR20180131571A (ko) 2018-12-10
EP3783890A1 (en) 2021-02-24
WO2017188780A2 (ko) 2017-11-02
KR102391235B1 (ko) 2022-04-27
CN117499646A (zh) 2024-02-02
CN117499650A (zh) 2024-02-02
CN117499648A (zh) 2024-02-02
EP3451667A4 (en) 2020-01-22
CN117499645A (zh) 2024-02-02
US20190141319A1 (en) 2019-05-09
US20230362364A1 (en) 2023-11-09
CN117499651A (zh) 2024-02-02
KR102583569B1 (ko) 2023-09-27
KR20220054723A (ko) 2022-05-03

Similar Documents

Publication Publication Date Title
CN109417633B (zh) 用于编码/解码视频信号的方法和装置
US11095892B2 (en) Method and apparatus for processing video signal
CN109644281B (zh) 用于处理视频信号的方法和设备
CN110024410B (zh) 用于对视频进行编码和解码的方法
CN109661819B (zh) 用于处理视频信号的方法和设备
US20210352296A1 (en) Method and device for encoding and decoding image signal
CN109716775B (zh) 用于处理视频信号的方法和装置
CN116781936A (zh) 对视频进行解码和编码的方法、发送压缩数据的方法
CN117041559A (zh) 对视频进行解码或编码的方法和存储视频数据的设备
CN109983776B (zh) 视频信号处理方法和设备
KR20170124081A (ko) 영상 신호 부호화/복호화 방법 및 장치
CN117813821A (zh) 基于以子块为单元的帧内预测的视频信号编码/解码方法以及用于存储比特流的记录介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant