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

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

Info

Publication number
CN112335250A
CN112335250A CN201980043787.0A CN201980043787A CN112335250A CN 112335250 A CN112335250 A CN 112335250A CN 201980043787 A CN201980043787 A CN 201980043787A CN 112335250 A CN112335250 A CN 112335250A
Authority
CN
China
Prior art keywords
block
filtering
boundary
current block
size
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
CN201980043787.0A
Other languages
English (en)
Inventor
林成昶
姜晶媛
李河贤
李镇浩
金晖容
金旲衍
郑旭帝
朴烔震
田珉容
李英烈
金南煜
金明峻
郑智延
金在坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Industry Academy Cooperation Foundation of Sejong University
University Industry Cooperation Foundation of Korea Aerospace University
Chips and Media Inc
Original Assignee
Electronics and Telecommunications Research Institute ETRI
Industry Academy Cooperation Foundation of Sejong University
University Industry Cooperation Foundation of Korea Aerospace University
Chips and Media Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electronics and Telecommunications Research Institute ETRI, Industry Academy Cooperation Foundation of Sejong University, University Industry Cooperation Foundation of Korea Aerospace University, Chips and Media Inc filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of CN112335250A publication Critical patent/CN112335250A/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/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
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

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

Abstract

在本说明书中公开了一种视频解码方法。所述视频解码方法包括:用于确定是否对当前块的边界执行滤波的步骤;用于确定针对当前块的边界的滤波强度以及将被用于滤波的样点的数量的步骤;以及用于基于所述滤波强度和将被用于滤波的样点的所述数量对当前块的边界执行滤波的步骤,其中,将被用于滤波的样点的所述数量可基于当前块的尺寸被确定。

Description

用于对图像进行编码/解码的方法和设备以及用于存储比特 流的记录介质
技术领域
本发明涉及一种用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质。更具体地,本发明涉及一种用于通过使用运动约束的并行块集对图像进行编码/解码的方法和设备。
背景技术
近来,在各种应用领域中,对诸如高清(HD)图像和超高清(UHD)图像的高分辨率和高质量图像的需求已经增加。然而,与传统的图像数据相比,更高分辨率和更高质量的图像数据具有增加的数据量。因此,当通过使用诸如传统的有线和无线宽带网络的介质来传输图像数据时,或者当通过使用传统的存储介质来存储图像数据时,传输和存储的成本增加。为了解决随着图像数据的分辨率和质量的提高而出现的这些问题,对于高分辨率和高图像质量的图像,需要高效的图像编码/解码技术。
图像压缩技术包括各种技术,诸如帧间预测技术:从当前画面的先前或后续画面预测当前画面中包括的像素值;帧内预测技术:通过使用当前画面中的像素信息预测当前画面中包括的像素值;变换和量化技术:用于压缩残差信号的能量;熵编码技术:将短码分配给具有高出现频率的值并且将长码分配给具有低出现频率的值;等等。这些图像压缩技术用于有效地压缩图像数据以用于传输或存储。
传统的图像编码/解码方法和设备在执行编码/解码时受到限制,这是因为在执行编码/解码时使用的滤波方法在应用时受到限制。
发明内容
技术问题
本发明旨在提供一种用于执行有效的去块滤波的图像编码/解码方法和设备。
技术方案
一种根据本发明的对图像进行解码的方法,该方法可包括:确定是否对当前块的边界执行滤波;确定关于当前块的所述边界的滤波强度以及在滤波时使用的样点的数量;并且基于所述滤波强度和在滤波时使用的样点的所述数量对当前块的所述边界执行滤波,其中,在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块的所述边界相邻的邻近块的尺寸中的至少一个被确定。
在根据本发明的对图像进行解码的方法中,其中,在当前块的所述边界是垂直边界时,在滤波时使用的样点的所述数量基于当前块的宽度和所述邻近块的宽度中的至少一个被确定。
在根据本发明的对图像进行解码的方法中,其中,在当前块的所述边界是水平边界时,在滤波时使用的样点的所述数量基于当前块的高度和所述邻近块的高度中的至少一个被确定。
在根据本发明的对图像进行解码的方法中,其中,在滤波时使用的样点的所述数量通过对当前块的尺寸和所述邻近块的尺寸中的至少一个与预定义值进行比较被确定。
在根据本发明的对图像进行解码的方法中,其中,所述确定是否对当前块的边界执行滤波通过当前块的所述边界是否与画面边界、条带边界和分块边界中的至少一个相匹配被执行。
在根据本发明的对图像进行解码的方法中,其中,所述滤波强度基于所述邻近块的预测模式和当前块的预测模式被确定。
在根据本发明的对图像进行解码的方法中,其中,当所述邻近块的预测模式和当前块的预测模式彼此不同时,所述滤波强度被确定为弱滤波强度。
在根据本发明的对图像进行解码的方法中,其中,在滤波时使用的样点的所述数量根据当前块的亮度分量和色度分量被独立地确定。
一种根据本发明的对图像进行编码的方法,该方法可包括:确定是否对当前块的边界执行滤波;确定关于当前块的所述边界的滤波强度以及在滤波时使用的样点的数量;并且基于所述滤波强度和在滤波时使用的样点的所述数量对当前块的所述边界执行滤波,其中,在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块相邻的邻近块的尺寸中的至少一个被确定。
在根据本发明的对图像进行编码的方法中,其中,在当前块的所述边界是垂直边界时,在滤波时使用的样点的所述数量基于当前块的宽度和所述邻近块的宽度中的至少一个被确定。
在根据本发明的对图像进行编码的方法中,其中,在当前块的所述边界是水平边界时,在滤波时使用的样点的所述数量基于当前块的高度和所述邻近块的高度中的至少一个被确定。
在根据本发明的对图像进行编码的方法中,其中,在滤波时使用的样点的所述数量通过对当前块的尺寸和所述邻近块的尺寸中的至少一个与预定义值进行比较被确定。
在根据本发明的对图像进行编码的方法中,其中,所述确定是否对当前块的边界执行滤波通过当前块的所述边界是否与画面边界、条带边界和分块边界中的至少一个相匹配被执行。
在根据本发明的对图像进行编码的方法中,其中,所述滤波强度基于所述邻近块的预测模式和当前块的预测模式被确定。
在根据本发明的对图像进行编码的方法中,其中,当所述邻近块的预测模式和当前块的预测模式彼此不同时,所述滤波强度被确定为弱滤波强度。
在根据本发明的对图像进行编码的方法中,其中,在滤波时使用的样点的所述数量根据当前块的亮度分量和色度分量被独立地确定。
一种根据本发明的非暂时性计算机可读的存储介质,其中,所述存储介质存储用于图像解码方法的图像数据,其中,所述图像数据包括关于是否执行滤波的信息,并且在所述图像解码方法中,所述关于是否执行滤波的信息用于确定是否对当前块的边界执行滤波,其中,在所述图像解码方法中,关于当前块的所述边界的滤波强度和在滤波时使用的样点的数量被确定,对当前块的所述边界的滤波基于所述滤波强度和在滤波时使用的样点的所述数量被执行,以及在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块相邻的邻近块的尺寸中的至少一个被确定。
有益效果
本发明提供了在对图像进行编码/解码时被执行以提高图像编码/解码效率的各种滤波方法。
本发明可通过使用比原始图像更接近的参考样点生成预测图像来提高预测效率。
根据本发明,可提高图像编码/解码效率。
根据本发明,可降低图像编码器和解码器的计算复杂度。
附图说明
图1是示出应用了本发明的编码设备的配置的框图的示图。
图2是示出应用了本发明的解码设备的配置的框图的示图。
图3是示意性地示出当对图像进行编码和解码时的分区结构的示图。
图4是示出帧内预测的示例的示图。
图5是示出帧间预测的示例的示图。
图6是示出变换和量化的示例的示图。
图7是示出可用于帧内预测的参考样点的示图。
图8是示出根据本发明的实施例的对彼此相邻的块的边界进行滤波的示图。
图9是示出根据本发明的去块滤波器的示图。
图10是示出根据本发明的实施例的确定是否执行滤波的方法的流程图的示图。
图11是根据本发明的实施例的不对边界执行滤波的示例的示图。
图12是示出根据本发明的实施例的确定滤波强度的方法的流程图的示图。
图13和图14是分别示出根据本发明的实施例的根据预测模式确定滤波强度的方法的示图。
图15是示出根据本发明的实施例的确定执行了OBMC的块的滤波强度的方法的示图。
图16是示出根据本发明的实施例的根据块分区进行滤波的示例的示图。
图17是示出根据本发明的实施例的各种变换区域的示图。
图18是示出通过以立方图形式进行投影以六个表面(左、前、右、后、底和顶)表示360图像的布局示例的示图。
图19和图20是分别示出通过以立方图形式进行投影获得的六个表面被重新布置的示例的示图。
图21是示出与是否对每个边界执行滤波相关的语法和语义以及传输方法在PPS中被定义的示例的示图。
图22是示出根据本发明的实施例的对图像进行解码的方法的流程图的示图。
具体实施方式
可对本发明做出各种修改,并且存在本发明的各种实施例,其中,现在将参照附图提供并详细描述本发明的各种实施例的示例。然而,尽管示例性实施例可被解释为包括本发明的技术构思和技术范围内的所有修改、等同形式或替换形式,但本发明不限于此。相似的参考标号指在各方面相同或相似的功能。在附图中,为了清楚起见,元件的形状和尺寸可被夸大。在本发明的以下详细描述中,对通过图示的方式示出可实施本发明的具体实施例的附图进行参照。这些实施例被足够详细地描述以使本领域技术人员能够实施本公开。应该理解,本公开的各种实施例尽管不同,但不必是相互排他的。例如,在不脱离本公开的精神和范围的情况下,这里结合一个实施例描述的特定特征、结构和特性可在其它实施例中被实施。此外,应该理解,在不脱离本公开的精神和范围的情况下,每个公开的实施例内的各个元件的位置或布置可被修改。因此,以下详细描述不应以限制的含义来理解,并且本公开的范围仅由所附权利要求(在合适的解释的情况下,还连同权利要求所要求保护的等同物的全部范围)来限定。
在说明书中使用的术语“第一”、“第二”等可被用于描述各种组件,但这些组件并不被解释为受限于这些术语。这些术语仅用于将一个组件与其它组件区分开。例如,在不脱离本发明的范围的情况下,“第一”组件可被称为“第二”组件,并且“第二”组件也可类似地被称为“第一”组件。术语“和/或”包括多个项的组合或者是多个术语中的任意一个。
将理解的是,在本说明书中,当元件仅被称为“连接到”或“结合到”另一元件而不是“直接连接到”或“直接结合到”另一元件时,所述元件可“直接连接到”或“直接结合到”所述另一元件,或者在所述元件与所述另一元件之间具有其他元件的情况下连接到或结合到所述另一元件。相反,应该理解,当元件被称为“直接结合”或“直接连接”到另一元件时,不存在中间元件。
此外,在本发明的实施例中示出的组成部件被独立地示出,以呈现彼此不同的特性功能。因此,这并不意味着每个组成部件以单独的硬件或软件的组成单元被组成。换句话说,为了方便,每个组成部件包括枚举的组成部件中的每一个。因此,每个组成部件中的至少两个组成部件可被组合形成一个组成部件,或者一个组成部件可被划分为用于执行每个功能的多个组成部件。在没有脱离本发明的本质的情况下,每个组成部件被组合的实施例以及一个组成部件被划分的实施例也被包括在本发明的范围中。
在本说明书中使用的术语仅用于描述具体实施例,而不旨在限制本发明。以单数使用的表达包括复数表达,除非它在上下文中具有明显不同的含义。在本说明书中,将理解,诸如“包括……的”、“具有……的”等的术语旨在指明存在说明书中所公开的特征、数量、步骤、动作、元件、部件、或其组合,而并不旨在排除可存在或者可添加一个或更多个其它特征、数量、步骤、动作、元件、部件、或其组合的可能性。换句话说,当特定元件被称为“被包括”时,除相应元件以外的元件并不被排除,而是附加的元件可被包括在本发明的实施例中或者是本发明的范围中。
此外,一些组成元件可以不是执行本发明的必要功能的不可缺的组成元件,而是仅提升其性能的可选组成元件。可通过仅包括用于实施本发明的实质的不可缺的组成部件而排除在提升性能时使用的组成元件来实施本发明。仅包括不可缺的组成元件而排除仅在提升性能时使用的可选组成元件的结构也被包括在本发明的范围中。
在下文中,将参照附图详细描述本发明的实施例。在描述本发明的示例性实施例时,因为公知功能或结构会不必要地模糊对本发明的理解,所以将不详细描述他们。附图中的相同的组成元件由相同的参考标号来表示,并且对相同元件的重复描述将被省略。
在下文中,图像可指构成视频的画面,或者可指视频本身。例如,“对图像进行编码或解码或者进行编码和解码两者”可指“对运动画面进行编码或解码或者进行编码和解码两者”,并且可指“对运动画面的图像中的一个图像进行编码或解码或者进行编码和解码两者”。
在下文中,术语“运动画面”和“视频”可被用作相同的含义并且可彼此替换。
在下文中,目标图像可以是作为编码目标的编码目标图像和/或作为解码目标的解码目标图像。此外,目标图像可以是输入到编码设备的输入图像、以及输入到解码设备的输入图像。这里,目标图像可与当前图像具有相同的含义。
在下文中,术语“图像”、“画面”、“帧”和“屏幕”可被用作相同的含义并且彼此替换。
在下文中,目标块可以是作为编码目标的编码目标块和/或作为解码目标的解码目标块。此外,目标块可以是作为当前编码和/或解码的目标的当前块。例如,术语“目标块”和“当前块”可被用作相同的含义并且彼此替换。
在下文中,术语“块”和“单元”可被用作相同的含义并且彼此替换。或者“块”可表示特定单元。
在下文中,术语“区域”和“片段”可彼此替换。
在下文中,特定信号可以是表示特定块的信号。例如,原始信号可以是表示目标块的信号。预测信号可以是表示预测块的信号。残差信号可以是表示残差块的信号。
在实施例中,特定信息、数据、标志、索引、元素和属性等中的每一个可具有值。等于“0”的信息、数据、标志、索引、元素和属性的值可表示逻辑假或第一预定义值。换言之,值“0”、假、逻辑假和第一预定义值可彼此替换。等于“1”的信息、数据、标志、索引、元素和属性的值可表示逻辑真或第二预定义值。换句话说,值“1”、真、逻辑真和第二预定义值可彼此替换。
当变量i或j用于表示列、行或索引时,i的值可以是等于或大于0的整数、或者等于或大于1的整数。也就是说,列、行、索引等可从0开始计数,或者可从1开始计数。
术语描述
编码器:表示执行编码的设备。也就是说,表示编码设备。
解码器:表示执行解码的设备。也就是说,表示解码设备。
块:是M×N的样点阵列。这里,M和N可表示正整数,并且块可表示二维形式的样点阵列。块可指单元。当前块可表示在编码时成为目标的编码目标块,或者在解码时成为目标的解码目标块。此外,当前块可以是编码块、预测块、残差块和变换块中的至少一个。
样点:是构成块的基本单元。根据比特深度(Bd),样点可被表示为从0到2Bd-1的值。在本发明中,样点可被用作像素的含义。也就是说,样点、pel、像素可具有彼此相同的含义。
单元:可指编码和解码单元。当对图像进行编码和解码时,单元可以是通过对单个图像进行分区而生成的区域。此外,当在进行编码或解码期间将单个图像分区为子划分单元时,单元可表示子划分单元。也就是说,图像可被分区为多个单元。当对图像进行编码和解码时,可执行针对每个单元的预定处理。单个单元可被分区为尺寸小于该单元的尺寸的子单元。根据功能,单元可表示块、宏块、编码树单元、编码树块、编码单元、编码块、预测单元、预测块、残差单元、残差块、变换单元、变换块等。此外,为了将单元与块区分开,单元可包括亮度分量块、与亮度分量块相关联的色度分量块、以及每个颜色分量块的语法元素。单元可具有各种尺寸和形状,具体地,单元的形状可以是二维几何图形,诸如正方形形状、长方形形状、梯形形状、三角形形状、五边形形状等。此外,单元信息可包括指示编码单元、预测单元、变换单元等的单元类型以及单元尺寸、单元深度、单元的编码和解码的顺序等中的至少一个。
编码树单元:被配置有亮度分量Y的单个编码树块以及与色度分量Cb和Cr相关的两个编码树块。此外,编码树单元可表示包括块和每个块的语法元素。可通过使用四叉树分区方法、二叉树分区方法和三叉树分区方法中的至少一种方法对每个编码树单元进行分区,以配置诸如编码单元、预测单元、变换单元等的下层单元。编码树单元可被用作用于指定在对作为输入图像的图像进行编码/解码时成为处理单元的样点块的术语。这里,四叉树可表示四元树。
当编码块的尺寸在预定范围内时,可仅使用四叉树分区进行划分。这里,预定范围可被定义为仅可使用四叉树分区进行划分的编码块的最大尺寸和最小尺寸中的至少一个。指示允许进行四叉树分区的编码块的最大尺寸/最小尺寸的信息可通过比特流被用信号传送,并且该信息可以以序列、画面参数、并行块组和条带(片段)中的至少一个为单位被用信号传送。可选地,编码块的最大尺寸/最小尺寸可以是在编码器/解码器中预先确定的固定尺寸。例如,当编码块的尺寸与64×64到256×256相应时,可仅使用四叉树分区进行划分。可选地,当编码块的尺寸大于最大变换块的尺寸时,可仅使用四叉树分区进行划分。这里,将被划分的块可以是编码块和变换块中的至少一个。在这种情况下,指示编码块的划分的信息(例如,split_flag)可以是指示是否执行四叉树分区的标志。当编码块的尺寸落入预定范围内时,可仅使用二叉树分区或三叉树分区进行划分。在这种情况下,以上对四叉树分区的描述可以以相同的方式应用于二叉树分区或三叉树分区。
编码树块:可用作用于指定Y编码树块、Cb编码树块和Cr编码树块中的任意一个的术语。
邻近块:可表示与当前块相邻的块。与当前块相邻的块可表示与当前块的边界接触的块、或者位于距当前块预定距离内的块。邻近块可表示与当前块的顶点相邻的块。这里,与当前块的顶点相邻的块可表示与水平相邻于当前块的邻近块垂直相邻的块、或者与垂直相邻于当前块的邻近块水平相邻的块。
重建的邻近块:可表示与当前块相邻并且已经在空间/时间上被编码或解码的邻近块。这里,重建的邻近块可表示重建的邻近单元。重建的空间邻近块可以是在当前画面内的已经通过编码或解码或者编码和解码两者而被重建的块。重建的时间邻近块是在参考图像内的与当前画面的当前块相应的位置处的块或所述块的邻近块。
单元深度:可表示单元的分区程度。在树结构中,最高节点(根节点)可与未被分区的第一单元相应。此外,最高节点可具有最小深度值。在这种情况下,最高节点的深度可为等级0。深度为等级1的节点可表示通过对第一单元进行一次分区而生成的单元。深度为等级2的节点可表示通过对第一单元进行两次分区而生成的单元。深度为等级n的节点可表示通过对第一单元进行n次分区而生成的单元。叶节点可以是最低节点并且是不能被进一步分区的节点。叶节点的深度可以是最大等级。例如,最大等级的预定义值可以是3。根节点的深度可以是最低的,并且叶节点的深度可以是最深的。此外,当单元被表示为树结构时,单元存在于的等级可表示单元深度。
比特流:可表示包括编码图像信息的比特流。
参数集:与比特流内的配置之中的头信息相应。视频参数集、序列参数集、画面参数集和自适应参数集中的至少一个可被包括在参数集中。此外,参数集可包括条带头、并行块组头和并行块头信息。此外,术语“并行块组”表示包括并行块的组合并具有与条带相同的含义。
自适应参数集可表示在彼此不同的画面、子画面、条带、并行块组、并行块或分块之间可被使用和共享的参数集。另外,在画面内的子画面、条带、并行块组、并行块或分块中,可通过参考彼此不同的自适应参数集来使用自适应参数集内的信息。
另外,在画面内的子画面、条带、并行块组、并行块或分块中,对于自适应参数集,可通过使用彼此不同的自适应参数集的标识符来参考彼此不同的自适应参数集。
另外,在子画面内的条带、并行块组、并行块或分块中,对于自适应参数集,可通过使用彼此不同的自适应参数集的标识符来参考彼此不同的自适应参数集。
另外,在条带内的并行块或分块中,对于自适应参数集,可通过使用彼此不同的自适应参数集的标识符来参考彼此不同的自适应参数集。
另外,在并行块内的分块中,对于自适应参数集,可通过使用彼此不同的自适应参数集的标识符来参考彼此不同的自适应参数集。
通过在子画面的头(header)或参数集中包括关于自适应参数集标识符的信息,可在子画面中使用与相应的自适应参数集标识符相关联的自适应参数集。
通过在并行块的头或参数集中包括关于自适应参数集标识符的信息,可在并行块中使用与相应的自适应参数集标识符相关联的自适应参数集。
通过在分块的头中包括关于自适应参数集标识符的信息,可在分块中使用与相应的自适应参数集标识符相关联的自适应参数集。
解析:可表示通过执行熵解码来确定语法元素的值,或者可表示熵解码本身。
符号:可表示编码/解码目标单元的语法元素、编码参数和变换系数值中的至少一个。此外,符号可表示熵编码目标或熵解码结果。
预测模式:可以是指示利用帧内预测被编码/解码的模式或利用帧间预测被编码/解码的模式的信息。
预测单元:可表示当执行预测(诸如帧间预测、帧内预测、帧间补偿、帧内补偿和运动补偿)时的基本单元。单个预测单元可被分区为具有更小尺寸的多个分区,或者可被分区为多个下层预测单元。多个分区可以是在执行预测或补偿时的基本单元。通过对预测单元进行划分而生成的分区也可以是预测单元。
预测单元分区:可表示通过对预测单元进行分区而获得的形状。
参考画面列表可指包括用于帧间预测或运动补偿的一个或更多个参考画面的列表。存在若干个可使用的参考画面列表的类型,包括LC(列表组合)、L0(列表0)、L1(列表1)、L2(列表2)、L3(列表3)。
帧间预测指示符可指当前块的帧间预测方向(单向预测、双向预测等)。可选地,帧间预测指示符可指用于生成当前块的预测块的参考画面的数量。可选地,帧间预测指示符可指在对当前块执行帧间预测或运动补偿时使用的预测块的数量。
预测列表利用标志指示是否使用特定参考画面列表中的至少一个参考画面来生成预测块。可使用预测列表利用标志来推导帧间预测指示符,并且相反地,可使用帧间预测指示符来推导预测列表利用标志。例如,当预测列表利用标志具有第一值零(0)时,它表示不使用参考画面列表中的参考画面来生成预测块。另一方面,当预测列表利用标志具有第二值1(1)时,它表示使用参考画面列表中的参考画面来生成预测块。
参考画面索引可表示指示参考画面列表中的特定参考画面的索引。
参考画面可表示被特定块参考以进行该特定块的帧间预测或运动补偿的参考画面。可选地,参考画面可以是包括被当前块参考以进行帧间预测或运动补偿的参考块的画面。在下文中,术语“参考画面”和“参考图像”可用作相同的含义并且互换使用。
运动矢量可以是用于帧间预测或运动补偿的二维矢量。运动矢量可表示编码/解码目标块与参考块之间的偏移。例如,(mvX,mvY)可表示运动矢量。这里,mvX可表示水平分量,并且mvY可表示垂直分量。
搜索范围可以是在进行帧间预测期间被搜索以检索运动矢量的二维区域。例如,搜索范围的尺寸可以是M×N。这里,M和N均为整数。
运动矢量候选可指在对运动矢量进行预测时的预测候选块或者预测候选块的运动矢量。此外,运动矢量候选可被包括在运动矢量候选列表中。
运动矢量候选列表可表示由一个或更多个运动矢量候选组成的列表。
运动矢量候选索引可表示在运动矢量候选列表中指示运动矢量候选的指示符。可选地,运动矢量候选索引可以是运动矢量预测因子的索引。
运动信息可表示包括包括以下项中的至少一项的信息:运动矢量、参考画面索引、帧间预测指示符、预测列表利用标志、参考画面列表信息、参考画面、运动矢量候选、运动矢量候选索引、合并候选和合并索引。
合并候选列表可表示由一个或更多个合并候选组成的列表。
合并候选可表示空间合并候选、时间合并候选、组合合并候选、组合双预测合并候选或零合并候选等。合并候选可包括诸如帧间预测指示符、针对每个列表的参考画面索引、运动矢量、预测列表利用标志和帧间预测指示符的运动信息。
合并索引可表示在合并候选列表中指示合并候选的指示符。可选地,合并索引可指示在空间上/时间上与当前块相邻的重建块中的已推导出合并候选的块。可选地,合并索引可指示合并候选的运动信息中的至少一条。
变换单元:可表示在对残差信号执行编码/解码(诸如变换、逆变换、量化、反量化、变换系数编码/解码)时的基本单元。单个变换单元可被分区为具有更小尺寸的多个更低等级的变换单元。这里,变换/逆变换可包括第一变换/第一逆变换和第二变换/第二逆变换中的至少一个。
缩放:可表示将量化的等级乘以因子的处理。可通过对量化的等级进行缩放来生成变换系数。缩放也可被称为反量化。
量化参数:可表示当在量化期间使用变换系数来生成量化的等级时使用的值。量化参数还可表示当在反量化期间通过对量化的等级进行缩放来生成变换系数时使用的值。量化参数可以是被映射在量化步长上的值。
增量量化参数:可表示预测的量化参数与编码/解码目标单元的量化参数之间的差值。
扫描:可表示对单元、块或矩阵内的系数进行排序的方法。例如,将系数的二维矩阵改变为一维矩阵可被称为扫描,并且将系数的一维矩阵改变为二维矩阵可被称为扫描或逆扫描。
变换系数:可表示在编码器中执行变换之后生成的系数值。变换系数可表示在解码器中执行熵解码和反量化中的至少一个之后生成的系数值。通过对变换系数或残差信号进行量化而获得的量化的等级或者量化的变换系数等级也可落入变换系数的含义内。
量化的等级:可表示在编码器中通过对变换系数或残差信号进行量化而生成的值。可选地,量化的等级可表示作为在解码器中将被执行反量化的反量化目标的值。类似地,作为变换和量化的结果的量化的变换系数等级也可落入量化的等级的含义内。
非零变换系数:可表示具有除零之外的值的变换系数、或者具有除零之外的值的变换系数等级或量化的等级。
量化矩阵:可表示在被执行以提高主观图像质量或客观图像质量的量化处理或反量化处理中使用的矩阵。量化矩阵也可被称为缩放列表。
量化矩阵系数:可表示量化矩阵内的每个元素。量化矩阵系数也可被称为矩阵系数。
默认矩阵:可表示在编码器或解码器中预先定义的预定量化矩阵。
非默认矩阵:可表示在编码器或解码器中未被预先定义而是由用户用信号传送的量化矩阵。
统计值:针对具有可计算的特定值的变量、编码参数、常量值等之中的至少一个的统计值可以是相应特定值的平均值、和值、加权平均值、加权和值、最小值、最大值、最频繁出现的值、中值、插值之中的一个或更多个。
图1是示出根据应用了本发明的实施例的编码设备的配置的框图。
编码设备100可以是编码器、视频编码设备或图像编码设备。视频可包括至少一个图像。编码设备100可顺序地对至少一个图像进行编码。
参照图1,编码设备100可包括运动预测单元111、运动补偿单元112、帧内预测单元120、切换器115、减法器125、变换单元130、量化单元140、熵编码单元150、反量化单元160、逆变换单元170、加法器175、滤波器单元180和参考画面缓冲器190。
编码设备100可通过使用帧内模式或帧间模式或者帧内模式和帧间模式两者来对输入图像执行编码。此外,编码设备100可通过对输入图像进行编码来生成包括编码信息的比特流,并输出生成的比特流。生成的比特流可被存储在计算机可读记录介质中,或者可通过有线/无线传输介质被流传输。当帧内模式被用作预测模式时,切换器115可被切换到帧内。可选地,当帧间模式被用作预测模式时,切换器115可被切换到帧间模式。这里,帧内模式可表示帧内预测模式,帧间模式可表示帧间预测模式。编码设备100可生成针对输入图像的输入块的预测块。此外,编码设备100可在生成预测块之后使用输入块和预测块的残差对残差块进行编码。输入图像可被称为作为当前编码目标的当前图像。输入块可被称为作为当前编码目标的当前块,或者被称为编码目标块。
当预测模式是帧内模式时,帧内预测单元120可使用已被编码/解码并与当前块相邻的块的样点作为参考样点。帧内预测单元120可通过使用参考样点来对当前块执行空间预测,或者通过执行空间预测来生成输入块的预测样点。这里,帧内预测可表示帧内部的预测。
当预测模式是帧间模式时,运动预测单元111可在执行运动预测时从参考图像检索与输入块最匹配的区域,并且通过使用检索到的区域来推导运动矢量。在这种情况下,搜索区域可被用作所述区域。参考图像可被存储在参考画面缓冲器190中。这里,当执行了对参考图像的编码/解码时,参考图像可被存储在参考画面缓冲器190中。
运动补偿单元112可通过使用运动矢量对当前块执行运动补偿来生成预测块。这里,帧间预测可表示帧之间的预测或运动补偿。
当运动矢量的值不是整数时,运动预测单元111和运动补偿单元112可通过将插值滤波器应用于参考画面的部分区域来生成预测块。为了对编码单元执行画面间预测或运动补偿,可确定将跳过模式、合并模式、高级运动矢量预测(AMVP)模式和当前画面参考模式之中的哪个模式用于对包括在相应编码单元中的预测单元的运动预测和运动补偿。然后,根据确定的模式,可不同地执行画面间预测或运动补偿。
减法器125可通过使用输入块和预测块的残差来生成残差块。残差块可被称为残差信号。残差信号可表示原始信号与预测信号之间的差。此外,残差信号可以是通过对原始信号与预测信号之间的差进行变换或进行量化或者进行变换和量化而生成的信号。残差块可以是块单元的残差信号。
变换单元130可通过对残差块执行变换来生成变换系数,并输出生成的变换系数。这里,变换系数可以是通过对残差块执行变换而生成的系数值。当变换跳过模式被应用时,变换单元130可跳过对残差块的变换。
可通过将量化应用于变换系数或应用于残差信号来生成量化的等级。在下文中,量化的等级在实施例中也可被称为变换系数。
量化单元140可通过根据参数对变换系数或残差信号进行量化来生成量化的等级,并输出生成的量化的等级。这里,量化单元140可通过使用量化矩阵对变换系数进行量化。
熵编码单元150可通过根据概率分布对由量化单元140计算出的值或者对在执行编码时计算出的编码参数值执行熵编码来生成比特流,并输出生成的比特流。熵编码单元150可对图像的样点信息和用于对图像进行解码的信息执行熵编码。例如,用于对图像进行解码的信息可包括语法元素。
当熵编码被应用时,符号被表示使得较少数量的比特被分配给具有高生成可能性的符号,并且较多数量的比特被分配给具有低生成可能性的符号,因此,可减小用于将被编码的符号的比特流的大小。熵编码单元150可使用诸如指数哥伦布、上下文自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)等的用于熵编码的编码方法。例如,熵编码单元150可通过使用可变长度编码/码(VLC)表来执行熵编码。此外,熵编码单元150可推导目标符号的二值化方法和目标符号/二进制位的概率模型,并且通过使用推导的二值化方法和上下文模型来执行算术编码。
为了对变换系数等级(量化的等级)进行编码,熵编码单元150可通过使用变换系数扫描方法将二维块形式的系数改变为一维矢量形式。
编码参数可包括在编码器中被编码并且被用信号传送到解码器的诸如语法元素的信息(标志、索引等)以及在执行编码或解码时推导的信息。编码参数可表示在对图像进行编码或解码时所需要的信息。例如,以下项中的至少一个值或组合形式可被包括在编码参数中:单元/块尺寸、单元/块深度、单元/块分区信息、单元/块形状、单元/块分区结构、是否进行四叉树形式的分区、是否进行二叉树形式的分区、二叉树形式的分区方向(水平方向或垂直方向)、二叉树形式的分区形式(对称分区或非对称分区)、当前编码单元是否通过三叉树分区被分区、三叉树分区的方向(水平方向或垂直方向)、三叉树分区的类型(对称类型或非对称类型)、当前编码单元是否通过多类型树分区被分区、多类型树分区的方向(水平方向或垂直方向)、多类型树分区的类型(对称类型或非对称类型)、多类型树分区的树(二叉树或三叉树)结构、预测模式(帧内预测或帧间预测)、亮度帧内预测模式/方向、色度帧内预测模式/方向、帧内分区信息、帧间分区信息、编码块分区标志、预测块分区标志、变换块分区标志、参考样点滤波方法、参考样点滤波器抽头、参考样点滤波器系数、预测块滤波方法、预测块滤波器抽头、预测块滤波器系数、预测块边界滤波方法、预测块边界滤波器抽头、预测块边界滤波器系数、帧内预测模式、帧间预测模式、运动信息、运动矢量、运动矢量差、参考画面索引、帧间预测角度、帧间预测指示符、预测列表利用标志、参考画面列表、参考画面、运动矢量预测因子索引、运动矢量预测因子候选、运动矢量候选列表、是否使用合并模式、合并索引、合并候选、合并候选列表、是否使用跳过模式、插值滤波器类型、插值滤波器抽头、插值滤波器系数、运动矢量大小、运动矢量的表示精度、变换类型、变换尺寸、首次(第一次)变换是否被使用的信息、二次变换是否被使用的信息、首次变换索引、二次变换索引、残差信号是否存在的信息、编码块样式、编码块标志(CBF)、量化参数、量化参数残差、量化矩阵、是否应用帧内环路滤波器、帧内环路滤波器系数、帧内环路滤波器抽头、帧内环路滤波器形状/形式、是否应用去块滤波器、去块滤波器系数、去块滤波器抽头、去块滤波器强度、去块滤波器形状/形式、是否应用自适应样点偏移、自适应样点偏移值、自适应样点偏移类别、自适应样点偏移类型、是否应用自适应环路滤波器、自适应环路滤波器系数、自适应环路滤波器抽头、自适应环路滤波器形状/形式、二值化/反二值化方法、上下文模型确定方法、上下文模型更新方法、是否执行常规模式、是否执行旁路模式、上下文二进制位、旁路二进制位、有效系数标志、最后有效系数标志、针对系数组的单元的编码标志、最后有效系数的位置、关于系数的值是否大于1的标志、关于系数的值是否大于2的标志、关于系数的值是否大于3的标志、关于剩余系数值的信息、符号信息、重建的亮度样点、重建的色度样点、残差亮度样点、残差色度样点、亮度变换系数、色度变换系数、量化的亮度等级、量化的色度等级、变换系数等级扫描方法、在解码器侧的运动矢量搜索区域的尺寸、在解码器侧的运动矢量搜索区域的形状、在解码器侧的运动矢量搜索的次数、关于CTU尺寸的信息、关于最小块尺寸的信息、关于最大块尺寸的信息、关于最大块深度的信息、关于最小块深度的信息、图像显示/输出顺序、条带标识信息、条带类型、条带分区信息、并行块标识信息、并行块类型、并行块分区信息、并行块组标识信息、并行块组类型、并行块组分区信息、画面类型、输入样点的比特深度、重建样点的比特深度、残差样点的比特深度、变换系数的比特深度、量化的等级的比特深度、以及关于亮度信号的信息或关于色度信号的信息。
这里,用信号传送标志或索引可表示由编码器对相应的标志或索引进行熵编码并将其包括在比特流中,并且可表示由解码器从比特流对相应的标志或索引进行熵解码。
当编码设备100通过帧间预测执行编码时,编码的当前图像可被用作用于随后被处理的另一图像的参考图像。因此,编码设备100可对编码的当前图像进行重建或解码,或者将重建或解码的图像作为参考图像存储在参考画面缓冲器190中。
量化的等级可在反量化单元160中被反量化,或者可在逆变换单元170中被逆变换。可由加法器175将经过反量化或逆变换的系数或者经过反量化和逆变换两者的系数与预测块相加。通过将经过反量化或逆变换的系数或者经过反量化和逆变换两者的系数与预测块相加,可生成重建块。这里,经过反量化或逆变换的系数或经过反量化和逆变换两者的系数可表示执行了反量化和逆变换中的至少一个的系数,并且可表示重建的残差块。
重建块可通过滤波器单元180。滤波器单元180可将去块滤波器、样点自适应偏移(SAO)和自适应环路滤波器(ALF)中的至少一个应用于重建样点、重建块或重建图像。滤波器单元180可被称为环内滤波器。
去块滤波器可去除在块之间的边界中生成的块失真。为了确定是否应用去块滤波器,可基于块中包括的若干行或列中包括的样点来确定是否将去块滤波器应用于当前块。当将去块滤波器应用于块时,可根据所需的去块滤波强度来应用另一滤波器。
为了补偿编码误差,可通过使用样点自适应偏移将合适的偏移值与样点值相加。样点自适应偏移可以以样点为单位对经过去块的图像与原始图像的偏移进行校正。可使用考虑关于每个样点的边缘信息来应用偏移的方法,或者可使用以下方法:将图像的样点分区为预定数量的区域,确定偏移被应用的区域,并对确定的区域应用偏移。
自适应环路滤波器可基于经过滤波的重建图像和原始图像的比较结果来执行滤波。可将包括在图像中的样点分区为预定组,可确定将被应用于每个组的滤波器,并且可对每个组执行差异化滤波。是否应用ALF的信息可通过编码单元(CU)被用信号传送,并且将被应用于每个块的ALF的形式和系数可变化。
已经通过滤波器单元180的重建块或重建图像可被存储在参考画面缓冲器190中。由滤波器单元180处理的重建块可以是参考图像的一部分。也就是说,参考图像是由通过滤波器单元180处理的重建块组成的重建图像。存储的参考图像可稍后在帧间预测或运动补偿时被使用。
图2是示出根据实施例的并且应用了本发明的解码设备的配置的框图。
解码设备200可以是解码器、视频解码设备或图像解码设备。
参照图2,解码设备200可包括熵解码单元210、反量化单元220、逆变换单元230、帧内预测单元240、运动补偿单元250、加法器255、滤波器单元260和参考画面缓冲器270。
解码设备200可接收从编码设备100输出的比特流。解码设备200可接收存储在计算机可读记录介质中的比特流,或者可接收通过有线/无线传输介质被流传输的比特流。解码设备200可通过使用帧内模式或帧间模式对比特流进行解码。此外,解码设备200可生成通过解码而生成的重建图像或解码图像,并输出重建图像或解码图像。
当在进行解码时使用的预测模式是帧内模式时,切换器可被切换到帧内。可选地,当在解码时使用的预测模式是帧间模式时,切换器可被切换到帧间模式。
解码设备200可通过对输入比特流进行解码来获得重建的残差块,并生成预测块。当重建的残差块和预测块被获得时,解码设备200可通过将重建的残差块与预测块相加来生成成为解码目标的重建块。解码目标块可被称为当前块。
熵解码单元210可通过根据概率分布对比特流进行熵解码来生成符号。生成的符号可包括量化的等级形式的符号。这里,熵解码方法可以是上述熵编码方法的逆过程。
为了对变换系数等级(量化的等级)进行解码,熵解码单元210可通过使用变换系数扫描方法将单向矢量形式的系数改变为二维块形式。
可在反量化单元220中对量化的等级进行反量化,或者可在逆变换单元230中对量化的等级进行逆变换。量化的等级可以是进行反量化或进行逆变换或者进行反量化和逆变换两者的结果,并且可被生成为重建的残差块。这里,反量化单元220可将量化矩阵应用于量化的等级。
当使用帧内模式时,帧内预测单元240可通过对当前块执行空间预测来生成预测块,其中,空间预测使用与解码目标块相邻并且已被解码的块的样点值。
当使用帧间模式时,运动补偿单元250可通过对当前块执行运动补偿来生成预测块,其中,运动补偿使用运动矢量以及存储在参考画面缓冲器270中的参考图像。
加法器225可通过将重建的残差块与预测块相加来生成重建块。滤波器单元260可将去块滤波器、样点自适应偏移和自适应环路滤波器中的至少一个应用于重建块或重建图像。滤波器单元260可输出重建图像。重建块或重建图像可被存储在参考画面缓冲器270中并且在执行帧间预测时被使用。由滤波器单元260处理的重建块可以是参考图像的一部分。也就是说,参考图像是由通过滤波器单元260处理的重建块组成的重建图像。存储的参考图像可稍后在帧间预测或运动补偿时被使用。
图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。图3示意性地示出将单个单元分区为多个下层单元的示例。
为了有效地对图像进行分区,当进行编码和解码时,可使用编码单元(CU)。编码单元可被用作当对图像进行编码/解码时的基本单元。此外,编码单元可被用作用于在对图像进行编码/解码时区分帧内预测模式与帧间预测模式的单元。编码单元可以是用于预测、变换、量化、逆变换、反量化或对变换系数的编码/解码处理的基本单元。
参照图3,图像300按照最大编码单元(LCU)被顺序地分区,并且LCU单元被确定为分区结构。这里,LCU可以以与编码树单元(CTU)相同的含义被使用。单元分区可表示对与该单元相关联的块进行分区。在块分区信息中,可包括单元深度的信息。深度信息可表示单元被分区的次数或程度或者单元被分区的次数和程度两者。可基于树结构将单个单元分区为与深度信息分层地相关联的多个更低等级的单元。换言之,单元和通过对该单元进行分区而生成的更低等级的单元可分别与节点和该节点的子节点相应。分区出的下层单元中的每一个可具有深度信息。深度信息可以是表示CU的尺寸的信息,并且可被存储在每个CU中。单元深度表示与对单元进行分区相关的次数和/或程度。因此,更低等级的单元的分区信息可包括关于更低等级的单元的尺寸的信息。
分区结构可表示LCU 310内的编码单元(CU)的分布。可根据是否将单个CU分区为多个(等于或大于2的正整数,包括2、4、8、16等)CU来确定这样的分布。通过分区生成的CU的水平尺寸和垂直尺寸可分别是分区之前的CU的水平尺寸和垂直尺寸的一半,或者可根据分区的次数而分别具有小于分区之前的水平尺寸和垂直尺寸的尺寸。CU可被递归地分区为多个CU。通过递归分区,与分区之前的CU的高度和宽度之中的至少一个相比,分区之后的CU的高度和宽度之中的至少一个可减小。可递归地执行CU的分区,直到达到预定义的深度或预定义的尺寸为止。例如,LCU的深度可以是0,最小编码单元(SCU)的深度可以是预定义的最大深度。这里,如上所述,LCU可以是具有最大编码单元尺寸的编码单元,并且SCU可以是具有最小编码单元尺寸的编码单元。分区从LCU 310开始,当CU的水平尺寸或垂直尺寸或者水平尺寸和垂直尺寸两者通过分区而减小时,CU深度增加1。例如,对于每个深度,未被分区的CU的尺寸可为2N×2N。此外,在被分区的CU的情况下,可将尺寸为2N×2N的CU分区为尺寸为N×N的四个CU。当深度增加1时,N的大小可减半。
此外,可通过使用CU的分区信息来表示CU是否被分区的信息。分区信息可以是1比特信息。除SCU之外的所有CU可包括分区信息。例如,当分区信息的值是第一值时,可不对CU进行分区,当分区信息的值是第二值时,可对CU进行分区。
参照图3,深度为0的LCU可以是64×64的块。0可以是最小深度。深度为3的SCU可以是8×8的块。3可以是最大深度。32×32的块和16×16的块的CU可分别被表示为深度1和深度2。
例如,当单个编码单元被分区为四个编码单元时,分区出的四个编码单元的水平尺寸和垂直尺寸可以是CU在被分区之前的水平尺寸和垂直尺寸的一半尺寸。在一个实施例中,当尺寸为32×32的编码单元被分区为四个编码单元时,分区出的四个编码单元中的每一个的尺寸可为16×16。当单个编码单元被分区为四个编码单元时,可称编码单元可被分区为四叉树形式。
例如,当一个编码单元被分区为两个子编码单元时,该两个子编码单元中的每一个的水平尺寸或垂直尺寸(宽度或高度)可以是原始编码单元的水平尺寸或垂直尺寸的一半。例如,当尺寸为32×32的编码单元被垂直分区为两个子编码单元时,分区出的两个子编码单元中的每一个可具有16×32的尺寸。例如,当尺寸为8×32的编码单元被水平分区为两个子编码单元时,该两个子编码单元中的每一个可具有8×16的尺寸。当一个编码单元被分区为两个子编码单元时,可称该编码单元被二叉树分区或按照二叉树分区结构被分区。
例如,当一个编码单元被分区为三个子编码单元时,可以以1:2:1的比例对该编码单元的水平尺寸或垂直尺寸进行分区,从而生成水平尺寸或垂直尺寸的比例为1:2:1的三个子编码单元。例如,当尺寸为16×32的编码单元被水平分区为三个子编码单元时,该三个子编码单元以从最上方子编码单元到最下方子编码单元的顺序可分别具有16×8、16×16和16×8的尺寸。例如,当尺寸为32×32的编码单元被垂直划分为三个子编码单元时,该三个子编码单元以从左侧子编码单元到右侧子编码单元的顺序可分别具有8×32、16×32和8×32的尺寸。当一个编码单元被分区为三个子编码单元时,可称该编码单元被三叉树分区或者按照三叉树分区结构被分区。
在图3中,编码树单元(CTU)320是四叉树分区结构、二叉树分区结构和三叉树分区结构全都被应用的CTU的示例。
如上所述,为了对CTU进行分区,可应用四叉树分区结构、二叉树分区结构和三叉树分区结构中的至少一种。可根据预定的优先级顺序将各种树分区结构顺序地应用于CTU。例如,可将四叉树分区结构优先应用于CTU。不可再使用四叉树分区结构进行分区的编码单元可与四叉树的叶节点相应。与四叉树的叶节点相应的编码单元可用作二叉树和/或三叉树分区结构的根节点。也就是说,与四叉树的叶节点相应的编码单元可按照二叉树分区结构或三叉树分区结构被进一步分区,或者可不被进一步分区。因此,通过防止对与四叉树的叶节点相应的编码单元进行二叉树分区或三叉树分区而生成的编码块被执行进一步的四叉树分区,可有效地执行块分区和/或用信号传送分区信息。
可使用四分区信息用信号传送与四叉树的节点相应的编码单元被分区的事实。具有第一值(例如,“1”)的四分区信息可指示当前编码单元按照四叉树分区结构被分区。具有第二值(例如,“0”)的四分区信息可指示当前编码单元不按照四叉树分区结构被分区。四分区信息可以是具有预定长度(例如,一个比特)的标志。
在二叉树分区与三叉树分区之间可以没有优先级。也就是说,与四叉树的叶节点相应的编码单元可进一步被执行二叉树分区和三叉树分区中的任意分区。此外,通过二叉树分区或三叉树分区生成的编码单元可被执行进一步的二叉树分区或进一步的三叉树分区,或者可不被进一步分区。
在二叉树分区和三叉树分区中不存在优先级的树结构被称为多类型树结构。与四叉树的叶节点相应的编码单元可用作多类型树的根节点。可使用多类型树分区指示信息、分区方向信息和分区树信息中的至少一个来用信号传送是否对与多类型树的节点相应的编码单元进行分区。为了对与多类型树的节点相应的编码单元进行分区,可顺序地用信号传送多类型树分区指示信息、分区方向和分区树信息。
具有第一值(例如,“1”)的多类型树分区指示信息可指示当前编码单元将被执行多类型树分区。具有第二值(例如,“0”)的多类型树分区指示信息可指示当前编码单元将不被执行多类型树分区。
当与多类型树的节点相应的编码单元按照多类型树分区结构被进一步分区时,该编码单元可包括分区方向信息。分区方向信息可指示当前编码单元将在哪个方向上根据多类型树分区被分区。具有第一值(例如,“1”)的分区方向信息可指示当前编码单元将被垂直分区。具有第二值(例如,“0”)的分区方向信息可指示当前编码单元将被水平分区。
当与多类型树的节点相应的编码单元按照多类型树分区结构被进一步分区时,当前编码单元可包括分区树信息。分区树信息可指示将被用于对多类型树的节点进行分区的树分区结构。具有第一值(例如,“1”)的分区树信息可指示当前编码单元将按照二叉树分区结构被分区。具有第二值(例如,“0”)的分区树信息可指示当前编码单元将按照三叉树分区结构被分区。
分区指示信息、分区树信息和分区方向信息均可以是具有预定长度(例如,一个比特)的标志。
四叉树分区指示信息、多类型树分区指示信息、分区方向信息和分区树信息中的至少任意一个可被熵编码/熵解码。为了对那些类型的信息进行熵编码/熵解码,可使用关于与当前编码单元相邻的邻近编码单元的信息。例如,当前编码单元的左侧邻近编码单元和/或上方邻近编码单元的分区类型(被分区或未被分区、分区树和/或分区方向)与当前编码单元的分区类型相似的可能性高。因此,可从关于邻近编码单元的信息推导用于对关于当前编码单元的信息进行熵编码/熵解码的上下文信息。关于邻近编码单元的信息可包括四分区信息、多类型树分区指示信息、分区方向信息和分区树信息中的至少任意一种。
作为另一示例,在二叉树分区和三叉树分区中,可优先执行二叉树分区。也就是说,当前编码单元可首先被执行二叉树分区,并且随后可将与二叉树的叶节点相应的编码单元设置为用于三叉树分区的根节点。在这种情况下,对于与三叉树的节点相应的编码单元,可既不执行四叉树分区也不执行二叉树分区。
不能按照四叉树分区结构、二叉树分区结构和/或三叉树分区结构被分区的编码单元成为用于编码、预测和/或变换的基本单元。也就是说,所述编码单元不能被进一步分区以用于预测和/或变换。因此,在比特流中可不存在用于将编码单元分区为预测单元和/或变换单元的分区结构信息和分区信息。
然而,当编码单元(即,用于分区的基本单元)的尺寸大于最大变换块的尺寸时,可递归地对编码单元进行分区,直到将编码单元的尺寸减小到等于或小于最大变换块的尺寸为止。例如,当编码单元的尺寸为64×64时并且当最大变换块的尺寸为32×32时,可将该编码单元分区为用于变换的四个32×32的块。例如,当编码单元的尺寸为32×64并且最大变换块的尺寸为32×32时,可将该编码单元分区为用于变换的两个32×32的块。在这种情况下,不单独用信号传送对用于变换的编码单元的分区,并且可通过编码单元的水平尺寸或垂直尺寸与最大变换块的水平尺寸或垂直尺寸之间的比较来确定对用于变换的编码单元的分区。例如,当编码单元的水平尺寸(宽度)大于最大变换块的水平尺寸(宽度)时,可将编码单元垂直地二等分。例如,当编码单元的垂直尺寸(长度)大于最大变换块的垂直尺寸(长度)时,可将编码单元水平地二等分。
可在编码单元的更高等级用信号传送或确定编码单元的最大尺寸和/或最小尺寸的信息以及变换块的最大尺寸和/或最小尺寸的信息。所述更高等级可以是例如序列等级、画面等级、条带等级、并行块组等级、并行块等级等。例如,可将编码单元的最小尺寸确定为4×4。例如,可将变换块的最大尺寸确定为64×64。例如,可将变换块的最小尺寸确定为4×4。
可在编码单元的更高等级用信号传送或确定与四叉树的叶节点相应的编码单元的最小尺寸(四叉树最小尺寸)的信息和/或从多类型树的根节点到叶节点的最大深度(多类型树的最大树深度)的信息。例如,所述更高等级可以是序列等级、画面等级、条带等级、并行块组等级、并行块等级等。可针对画面内条带和画面间条带中的每一个用信号传送或确定四叉树的最小尺寸的信息和/或多类型树的最大深度的信息。
可在编码单元的更高等级用信号传送或确定CTU的尺寸与变换块的最大尺寸之间的差信息。例如,所述更高等级可以是序列等级、画面等级、条带等级、并行块组等级、并行块等级等。可基于编码树单元的尺寸和所述差信息来确定与二叉树的各个节点相应的编码单元的最大尺寸(在下文中,称为二叉树的最大尺寸)的信息。与三叉树的各个节点相应的编码单元的最大尺寸(在下文中,称为三叉树的最大尺寸)可根据条带的类型而变化。例如,针对画面内条带,三叉树的最大尺寸可以是32×32。例如,针对画面间条带,三叉树的最大尺寸可以是128×128。例如,可将与二叉树的各个节点相应的编码单元的最小尺寸(在下文中,称为二叉树的最小尺寸)和/或与三叉树的各个节点相应的编码单元的最小尺寸(在下文中,称为三叉树的最小尺寸)设置为编码块的最小尺寸。
作为另一示例,可在条带等级用信号传送或确定二叉树的最大尺寸和/或三叉树的最大尺寸。可选地,可在条带等级用信号传送或确定二叉树的最小尺寸和/或三叉树的最小尺寸。
根据上述各种块的尺寸信息和深度信息,四分区信息、多类型树分区指示信息、分区树信息和/或分区方向信息可被包括在比特流中或可不被包括在比特流中。
例如,当编码单元的尺寸不大于四叉树的最小尺寸时,编码单元不包括四分区信息。因此,可从第二值推导四分区信息。
例如,当与多类型树的节点相应的编码单元的尺寸(水平尺寸和垂直尺寸)大于二叉树的最大尺寸(水平尺寸和垂直尺寸)和/或三叉树的最大尺寸(水平尺寸和垂直尺寸)时,编码单元可不被二叉树分区或三叉树分区。因此,可不用信号传送多类型树分区指示信息,而是可从第二值推导多类型树分区指示信息。
可选地,当与多类型树的节点相应的编码单元的尺寸(水平尺寸和垂直尺寸)与二叉树的最大尺寸(水平尺寸和垂直尺寸)相同,和/或是三叉树的最大尺寸(水平尺寸和垂直尺寸)的两倍大时,编码单元可不被进一步二叉树分区或三叉树分区。因此,可不用信号传送多类型树分区指示信息,而是可从第二值推导多类型树分区指示信息。这是因为,当按照二叉树分区结构和/或三叉树分区结构对编码单元进行分区时,生成了小于二叉树的最小尺寸和/或三叉树的最小尺寸的编码单元。
可选地,可基于虚拟管道数据单元的尺寸(在下文中称为管道缓冲器大小)来限制二叉树分区或三叉树分区。例如,当通过二叉树分区或三叉树分区将编码单元划分为不适合管道缓冲器大小的子编码单元时,相应的二叉树分区或三叉树分区可被限制。管道缓冲器大小可以是最大变换块的尺寸(例如,64×64)。例如,当管道缓冲器大小是64×64时,可对下面的划分进行限制。
-对编码单元进行N×M(N和/或M是128)三叉树分区
-对编码单元进行水平方向上的128×N(N<=64)二叉树分区
-对编码单元进行垂直方向上的N×128(N<=64)二叉树分区
可选地,当与多类型树的节点相应的编码单元的深度等于多类型树的最大深度时,编码单元可不被进一步二叉树分区和/或三叉树分区。因此,可不用信号传送多类型树分区指示信息,而是可从第二值推导多类型树分区指示信息。
可选地,只有当垂直方向二叉树分区、水平方向二叉树分区、垂直方向三叉树分区和水平方向三叉树分区中的至少一个对于与多类型树的节点相应的编码单元是可行的时,才可用信号传送多类型树分区指示信息。否则,可不对编码单元进行二叉树分区和/或三叉树分区。因此,可不用信号传送多类型树分区指示信息,而是可从第二值推导多类型树分区指示信息。
可选地,只有当垂直方向二叉树分区和水平方向二叉树分区两者或者垂直方向三叉树分区和水平方向三叉树分区两者对于与多类型树的节点相应的编码单元是可行的时,才可用信号传送分区方向信息。否则,可不用信号传送分区方向信息,而是可从指示可能的分区方向的值推导分区方向信息。
可选地,只有当垂直方向二叉树分区和垂直方向三叉树分区两者或者水平方向二叉树分区和水平方向三叉树分区两者对于与多类型树的节点相应的编码树是可行的时,才可用信号传送分区树信息。否则,可不用信号传送分区树信息,而是可从指示可能的分区树结构的值推导分区树信息。
图4是示出帧内预测处理的示图。
图4中的从中心到外部的箭头可表示帧内预测模式的预测方向。
可通过使用当前块的邻近块的参考样点来执行帧内编码和/或解码。邻近块可以是重建的邻近块。例如,可通过使用包括在重建的邻近块中的参考样点的值或编码参数来执行帧内编码和/或解码。
预测块可指通过执行帧内预测而生成的块。预测块可与CU、PU和TU中的至少一个相应。预测块的单元可具有CU、PU和TU中的一个的尺寸。预测块可以是尺寸为2×2、4×4、16×16、32×32或64×64等的正方形块,或者可以是尺寸为2×8、4×8、2×16、4×16和8×16等的长方形块。
可根据用于当前块的帧内预测模式来执行帧内预测。当前块可具有的帧内预测模式的数量可以是固定值,并且可以是根据预测块的属性被不同地确定的值。例如,预测块的属性可包括预测块的尺寸和预测块的形状等。
不管块尺寸为多少,可将帧内预测模式的数量固定为N。或者,帧内预测模式的数量可以是3、5、9、17、34、35、36、65或67等。可选地,帧内预测模式的数量可根据块尺寸或颜色分量类型或者块尺寸和颜色分量类型两者而变化。例如,帧内预测模式的数量可根据颜色分量是亮度信号还是色度信号而变化。例如,随着块尺寸变大,帧内预测模式的数量可增加。可选地,亮度分量块的帧内预测模式的数量可大于色度分量块的帧内预测模式的数量。
帧内预测模式可以是非角度模式或角度模式。非角度模式可以是DC模式或平面模式,并且角度模式可以是具有特定方向或角度的预测模式。帧内预测模式可由模式编号、模式值、模式数字、模式角度和模式方向中的至少一个来表示。帧内预测模式的数量可以是大于1的M,包括非角度模式和角度模式。为了对当前块进行帧内预测,可执行确定是否可将包括在重建的邻近块中的样点用作当前块的参考样点的步骤。当存在不能用作当前块的参考样点的样点时,通过对包括在重建的邻近块中的样点中的至少一个样点值进行复制或执行插值或者执行复制和插值两者而获得的值可被用于替换样点的不可用样点值,因此,经过替换的样点值被用作当前块的参考样点。
图7是示出能够用于帧内预测的参考样点的示图。
如图7所示,参考样点线0至参考样点线3中的至少一条可用于当前块的帧内预测。在图7中,片段A和片段F的样点可分别用最接近片段B和片段E的样点来填充,而不是从重建的邻近块进行检索。可用信号传送指示将用于当前块的帧内预测的参考样点线的索引信息。在当前块的上边界是CTU的边界时,仅参考样点线0可用。因此,在这种情况下,可不用信号传送索引信息。当使用除了参考样点线0之外的参考样点线时,可不执行稍后将被描述的对预测块的滤波。
当进行帧内预测时,可基于帧内预测模式和当前块尺寸将滤波应用于参考样点和预测样点中的至少一个。
在平面模式的情况下,当生成当前块的预测块时,根据预测块内的预测目标样点的位置,可通过使用当前样点的左上侧参考样点以及当前块的右上侧和左下侧参考样点的加权和来生成预测目标样点的样点值。另外,在DC模式的情况下,当生成当前块的预测块时,可使用当前块的上方参考样点和左侧参考样点的平均值。另外,在角度模式的情况下,可通过使用当前块的上方参考样点、左侧参考样点、右上侧参考样点和/或左下侧参考样点来生成预测块。为了生成预测样点值,可执行实数单位的插值。
在颜色分量之间的帧内预测的情况下,可基于第一颜色分量的相应重建块来生成第二颜色分量的当前块的预测块。例如,第一颜色分量可为亮度分量,并且第二颜色分量可为色度分量。对于颜色分量之间的帧内预测,可基于模板来推导第一颜色分量与第二颜色分量之间的线性模型的参数。模板可包括当前块的上方邻近样点和/或左侧邻近样点以及与当前块相应的第一颜色分量的重建块的上方邻近样点和/或左侧邻近样点。例如,可使用模板中的样点之中具有最大值的第一颜色分量的样点值和与其相应的第二颜色分量的样点值、以及模板中的样点之中具有最小值的第一颜色分量的样点值和与其相应的第二颜色分量的样点值来推导线性模型的参数。当推导线性模型的参数时,可将相应的重建块应用于线性模型以生成当前块的预测块。根据视频格式,可对第一颜色分量的重建块的邻近样点和相应的重建块执行子采样。例如,当第二颜色分量的一个样点与第一颜色分量的四个样点相应时,可对第一颜色分量的四个样点进行子采样以计算一个相应样点。在此情况下,可基于相应的子采样的样点来执行线性模型的参数推导以及颜色分量之间的帧内预测。是否执行颜色分量之间的帧内预测和/或模板的范围可作为帧内预测模式被用信号传送。
当前块可在水平方向或垂直方向上被分区为两个子块或四个子块。分区出的子块可被顺序地重建。也就是说,可对子块执行帧内预测以生成子预测块。另外,可对子块执行反量化和/或逆变换以生成子残差块。可通过将子预测块与子残差块相加来生成重建的子块。重建的子块可用作用于子子块的帧内预测的参考样点。子块可以是包括预定数量(例如,16)或更多个样点的块。因此,例如,在当前块是8×4块或4×8块时,当前块可被分区为两个子块。此外,在当前块是4×4块时,当前块可不被分区为子块。在当前块具有其它尺寸时,当前块可被分区为四个子块。关于是否基于子块和/或分区方向(水平或垂直)执行帧内预测的信息可被用信号传送。基于子块的帧内预测可限于仅在使用参考样点线0时被执行。当执行基于子块的帧内预测时,可不执行稍后将被描述的对预测块的滤波。
可通过对经过帧内预测的预测块执行滤波来生成最终预测块。可通过将预定权重应用于滤波目标样点、左侧参考样点、上方参考样点和/或左上侧参考样点来执行滤波。用于滤波的权重和/或参考样点(范围、位置等)可基于块尺寸、帧内预测模式和预测块中的滤波目标样点的位置中的至少一个被确定。可仅在预定帧内预测模式(例如,DC模式、平面模式、垂直模式、水平模式、对角线模式和/或相邻对角线模式)的情况下执行滤波。相邻对角线模式可以是对对角线模式加上k或从对角线模式减去k的模式。例如,k可以是8或更小的正整数。
可通过预测与当前块相邻存在的块的帧内预测模式来对当前块的帧内预测模式进行熵编码/熵解码。在当前块的帧内预测模式与邻近块的帧内预测模式相同时,可通过使用预定标志信息来用信号传送当前块的帧内预测模式与邻近块的帧内预测模式为相同的信息。此外,可用信号传送多个邻近块的帧内预测模式中的与当前块的帧内预测模式相同的帧内预测模式的指示符信息。在当前块的帧内预测模式与邻近块的帧内预测模式不同时,可通过基于邻近块的帧内预测模式执行熵编码/熵解码来对当前块的帧内预测模式信息进行熵编码/熵解码。
图5是示出画面间预测处理的实施例的示图。
在图5中,矩形可表示画面。在图5中,箭头表示预测方向。可根据画面的编码类型将画面分类为帧内画面(I画面)、预测画面(P画面)和双向预测画面(B画面)。
可在无需画面间预测的情况下通过帧内预测对I画面进行编码。可通过使用针对当前块在一个方向(即,正向或反向)上存在的参考画面,通过画面间预测来对P画面进行编码。可通过使用针对当前块在两个方向(即,正向和反向)上存在的参考画面,通过画面间预测来对B画面进行编码。当画面间预测被使用时,编码器可执行画面间预测或运动补偿,并且解码器可执行相应的运动补偿。
在下文中,将详细描述画面间预测的实施例。
可使用参考画面和运动信息来执行画面间预测或运动补偿。
可通过编码设备100和解码设备200中的每一个在画面间预测期间推导当前块的运动信息。可通过使用重建的邻近块的运动信息、同位块(也称为col块或共同定位块)和/或与该同位块相邻的块的运动信息来推导当前块的运动信息。同位块可表示先前重建的同位画面(也称为col画面或共同定位画面)内的在空间上与当前块位于相同位置的块。同位画面可以是参考画面列表中包括的一个或更多个参考画面中的一个画面。
运动信息的推导方法可根据当前块的预测模式而不同。例如,应用于帧间预测的预测模式包括AMVP模式、合并模式、跳过模式、具有运动矢量差的合并模式、子块合并模式、三角形分区模式、帧间-帧内组合预测模式、仿射模式等。这里,合并模式可被称为运动合并模式。
例如,当AMVP被用作预测模式时,可将重建的邻近块的运动矢量、同位块的运动矢量、与同位块相邻的块的运动矢量和(0,0)运动矢量中的至少一个确定为针对当前块的运动矢量候选,并且通过使用运动矢量候选来生成运动矢量候选列表。可通过使用生成的运动矢量候选列表来推导当前块的运动矢量候选。可基于推导的运动矢量候选确定当前块的运动信息。同位块的运动矢量或与同位块相邻的块的运动矢量可被称为时间运动矢量候选,并且重建的邻近块的运动矢量可被称为空间运动矢量候选。
编码设备100可计算当前块的运动矢量与运动矢量候选之间的运动矢量差(MVD),并且可对运动矢量差(MVD)执行熵编码。此外,编码设备100可对运动矢量候选索引执行熵编码并生成比特流。运动矢量候选索引可指示运动矢量候选列表中包括的运动矢量候选中的最佳运动矢量候选。解码设备可对包括在比特流中的运动矢量候选索引执行熵解码,并且可通过使用经过熵解码的运动矢量候选索引,从包括在运动矢量候选列表中的运动矢量候选中选择解码目标块的运动矢量候选。此外,解码设备200可将经过熵解码的MVD与通过熵解码提取的运动矢量候选相加,从而推导解码目标块的运动矢量。
此外,编码设备100可对计算的MVD的分辨率信息执行熵编码。解码设备200可使用MVD分辨率信息来调整经过熵解码的MVD的分辨率。
此外,编码设备100基于仿射模型计算当前块中的运动矢量和候选运动矢量之间的运动矢量差(MVD),并对MVD执行熵编码。解码装置200通过经由经过熵解码的MVD和仿射控制运动矢量候选之和推导解码目标块的仿射控制运动矢量,来基于每个子块推导运动矢量。
比特流可包括指示参考画面的参考画面索引。参考画面索引可通过编码设备100被熵编码,然后作为比特流被用信号传送到解码设备200。解码设备200可基于推导出的运动矢量和参考画面索引信息生成解码目标块的预测块。
推导当前块的运动信息的方法的另一示例可以是合并模式。合并模式可表示合并多个块的运动信息的方法。合并模式可表示从邻近块的运动信息推导当前块的运动信息的模式。当合并模式被应用时,可使用重建的邻近块的运动信息和/或同位块的运动信息来生成合并候选列表。运动信息可包括运动矢量、参考画面索引和画面间预测指示符中的至少一个。预测指示符可指示单向预测(L0预测或L1预测)或双向预测(L0预测和L1预测)。
合并候选列表可以是存储的运动信息的列表。包括在合并候选列表中的运动信息可以是如下中的至少一个:与当前块相邻的邻近块的运动信息(空间合并候选)、参考画面中的当前块的同位块的运动信息(时间合并候选)、通过合并候选列表中存在的运动信息的组合而生成的新运动信息、在当前块之前经过编码/解码的块的运动信息(基于历史的合并候选)以及零合并候选。
编码设备100可通过对合并标志和合并索引中的至少一个执行熵编码来生成比特流,并且可将比特流用信号传送到解码设备200。合并标志可以是指示是否针对每个块执行合并模式的信息,并且合并索引可以是指示当前块的邻近块中的哪个邻近块是合并目标块的信息。例如,当前块的邻近块可包括在当前块的左侧的左侧邻近块、布置在当前块的上方的上方邻近块和在时间上与当前块相邻的时间邻近块。
此外,编码设备100对合并候选的运动信息中的用于校正运动矢量的校正信息执行熵编码,并将其用信号传送到解码设备200。解码设备200可基于校正信息对通过合并索引选择的合并候选的运动矢量进行校正。这里,校正信息可包括关于是否执行校正的信息、校正方向信息和校正大小信息中的至少一条。如上所述,基于用信号传送的校正信息对合并候选的运动矢量进行校正的预测模式可被称为具有运动矢量差的合并模式。
跳过模式可以是邻近块的运动信息按原样被应用于当前块的模式。当跳过模式被应用时,编码设备100可对如下事实的信息进行熵编码:哪个块的运动信息将被用作当前块的运动信息,以生成比特流,并且可将该比特流用信号传送到解码设备200。编码设备100可不将关于运动矢量差信息、编码块标志和变换系数等级中的至少任意一个的语法元素用信号传送到解码设备200。
子块合并模式可表示以编码块(CU)的子块为单位推导运动信息的模式。当应用子块合并模式时,可使用与参考图像中的当前子块同位的子块的运动信息(基于子块的时间合并候选)和/或仿射控制运动矢量合并候选来生成子块合并候选列表。
三角形分区模式可表示通过将当前块分区为对角线方向来推导运动信息,使用推导出的运动信息中的每一条来推导每个预测样点,并且通过对推导出的预测样点中的每一个进行加权来推导当前块的预测样点的模式。
帧间-帧内组合预测模式可表示通过对经由帧间预测生成的预测样点和经由帧内预测生成的预测样点进行加权来推导当前块的预测样点的模式。
解码设备200可自行校正推导出的运动信息。解码设备200可基于由推导出的运动信息指示的参考块来搜索预定区域,并将具有最小SAD的运动信息推导为校正的运动信息。
解码设备200可对经由使用光流的帧间预测推导出的预测样点进行补偿。
图6是示出变换和量化处理的示图。
如图6中所示,对残差信号执行变换处理和/或量化处理,以产生量化的等级信号。残差信号是原始块与预测块(即,帧内预测块或帧间预测块)之间的差。预测块是通过帧内预测或帧间预测产生的块。变换可以是首次变换、二次变换或者首次变换和二次变换两者。对残差信号进行首次变换产生变换系数,并且对该变换系数进行二次变换产生二次变换系数。
从预先定义的各种变换方案中选择的至少一种方案被用于执行首次变换。例如,所述预先定义的变换方案的示例包括离散余弦变换(DCT)、离散正弦变换(DST)和Karhunen-Loève变换(KLT)。通过首次变换产生的变换系数可被执行二次变换。可根据当前块和/或当前块的邻近块的编码参数来确定用于首次变换和/或二次变换的变换方案。可选地,可用信号传送指示变换方案的变换信息。基于DCT的变换可包括例如DCT-2、DCT-8等。基于DST的变换可包括例如DST-7。
可通过对残差信号或执行首次变换和/或二次变换的结果执行量化来生成量化的等级信号(量化系数)。根据块的帧内预测模式或块尺寸/形状,可根据对角线右上扫描、垂直扫描和水平扫描中的至少一个来扫描量化的等级信号。例如,当按照对角线右上扫描来扫描系数时,块形式的系数改变为一维矢量形式。除了对角线右上扫描之外,可根据变换块的帧内预测模式和/或尺寸来使用水平地扫描二维块形式的系数的水平扫描和垂直地扫描二维块形式的系数的垂直扫描。经过扫描的量化等级系数可被熵编码以被***到比特流中。
解码器对比特流进行熵解码以获得量化等级系数。可通过逆扫描以二维块形式布置量化等级系数。对于逆扫描,可使用对角线右上扫描、垂直扫描和水平扫描中的至少一个。
然后,可对量化等级系数进行反量化,然后根据需要进行二次逆变换,并且最后根据需要进行首次逆变换,以产生重建的残差信号。
可在进行环内滤波之前对通过帧内预测或帧间预测重建的亮度分量执行动态范围内的逆映射。动态范围可被划分为16个相等的块(piece),并且可用信号传送每个块的映射函数。可在条带等级或并行块组等级用信号传送映射函数。可基于映射函数来推导用于执行逆映射的逆映射函数。在逆映射区域中执行环内滤波、参考画面存储和运动补偿,并且通过帧间预测生成的预测块经由使用映射函数的映射被转换为映射区域,然后用于生成重建块。然而,由于在映射区域中执行帧内预测,所以经由帧内预测生成的预测块可用于生成重建块而无需映射/逆映射。
在当前块是色度分量的残差块时,可通过对映射区域的色度分量执行缩放来将残差块转换为逆映射区域。可在条带等级或并行块组等级用信号传送缩放的可用性。只有当用于亮度分量的映射可用并且对亮度分量的划分和对色度分量的划分遵循相同的树结构时,才可应用缩放。可基于与色差块相应的亮度预测块的样点值的平均值来执行缩放。在这种情况下,在当前块使用帧间预测时,亮度预测块可表示经过映射的亮度预测块。可通过使用亮度预测块的样点值的平均值所属的块的索引参考查找表来推导缩放所需的值。最后,通过使用推导出的值对残差块进行缩放,可将残差块转换为逆映射区域。然后,可在逆映射区域中执行色度分量块恢复、帧内预测、帧间预测、环内滤波和参考画面存储。
可通过序列参数集用信号传送指示亮度分量和色度分量的映射/逆映射是否可用的信息。
可基于指示当前画面中的当前块与参考块之间的位移的块矢量来生成当前块的预测块。以这种方式,用于参考当前画面生成预测块的预测模式被称为帧内块复制(IBC)模式。IBC模式可应用于M×N(M<=64,N<=64)编码单元。IBC模式可包括跳过模式、合并模式、AMVP模式等。在跳过模式或合并模式的情况下,构建合并候选列表,并且用信号传送合并索引,使得可指定一个合并候选。指定的合并候选的块矢量可用作当前块的块矢量。合并候选列表可包括空间候选、基于历史的候选、基于两个候选的平均值的候选和零合并候选中的至少一个。在AMVP模式的情况下,可用信号传送差块矢量。另外,可从当前块的左侧邻近块和上方邻近块推导预测块矢量。可用信号传送要使用的邻近块的索引。IBC模式中的预测块被包括在当前CTU或左侧CTU中并且限于已经重建的区域中的块。例如,可限制块矢量的值,使得当前块的预测块位于按编码/解码顺序在当前块所属的64×64块之前的三个64×64块的区域中。通过以这样的方式限制块矢量的值,可减少根据IBC模式实施方案的存储器消耗和装置复杂性。
在下文中,将描述根据本发明的实施例的滤波器。
具体地讲,可通过确定是否对块和块边界执行滤波、滤波边界强度和滤波方法(或类型)来执行滤波。这里,滤波方法可表示通过使用彼此不同的滤波器长度或滤波器系数来执行滤波。另外,滤波器可表示去块滤波器。另外,应用了滤波器的块可表示通过对图像进行分区而获得的至少一个单元,诸如画面、子画面、条带、并行块、分块、编码树单元、编码单元、预测单元、变换单元、编码块、预测块、变换块、子块等。这里,子块可以是通过另外地对编码单元、预测单元和变换单元中的至少一个进行分区而获得的单元,诸如子CU、子PU、子TU等。
画面可被分区为至少一行并行块和至少一列并行块。
画面可被分区为配置有至少一行并行块和至少一列并行块的至少一个子画面。子画面是画面内具有正方形/非正方形形状的区域,并且可包括至少一个CTU。另外,至少一个并行块/分块/条带可被包括在一个子画面内。
并行块为画面内具有正方形或非正方形形状的区域,并且可包括至少一个CTU。另外,并行块可以被分区为至少一个分块。
分块可表示并行块内的至少一行CTU。并行块可被分区为至少一个分块,并且每一分块可包括至少一行CTU。未被分区为至少两个块的并行块可表示分块。
条带可包括画面内的至少一个并行块,并且至少一个分块可被包括在并行块内。
根据本发明的去块滤波器可减少由于预测、变换和量化中的至少一个而在块边界发生的块效应。
此外,根据本发明的滤波器可通过使用与重建的当前块一起发送的关于预测、变换和量化中的至少一个的信息来执行滤波。关于预测、变换和量化中的至少一个的信息可由反量化和逆变换模块传送到加法器,并再被传送到滤波器。
如上所述,作为去除块效应的方法,去块滤波器被使用,并且去块滤波器可以以环路滤波器形式被应用。
去块滤波器可对块(M×N块,这里,M和N是正整数)和块边界执行滤波,或者对块内的子块或子块的边界执行滤波。M×N的形状可表示正方形或非正方形的块形状。块效应通过以每个块为基础执行预测、变换或量化而发生。为了去除此类块效应,可将去块滤波器应用于CU、PU和TU中的至少一个单元的边界。
此外,考虑到M×N块的所有边界,用于去除块效应的滤波方法可根据块尺寸来执行滤波。
根据本发明的去块滤波可被如下执行。
首先,以画面、子画面、条带、并行块、分块、CTU为单位或在块的垂直边界,可对边界周围的重建信号执行1D水平方向滤波。随后,以画面、子画面、条带、并行块、分块、CTU为单位或在块的水平边界,可对边界周围的经过滤波的重建信号执行1D垂直方向滤波。
可选地,首先,以画面、子画面、条带、并行块、分块、CTU为单位或在块的水平边界,可对边界周围的重建信号执行1D垂直方向滤波。随后,以画面、子画面、条带、并行块、分块、CTU为单位或在块的垂直边界,可对边界周围的经过滤波的重建信号执行1D水平方向滤波。
关于水平边界的去块滤波方法可类似于关于垂直边界的去块滤波方法。在本发明中,基于关于垂直边界的去块滤波方法进行描述,但是可以以类似的方式执行或采用关于水平边界的去块滤波方法。
图8是示出根据本发明的实施例的对彼此相邻的块的边界进行滤波的示图。
参考图8,图8的(1)示出了对彼此相邻的块的垂直边界执行滤波的示例。在图8的(1)中,可对当前块B和左侧块A之间的垂直边界执行水平方向滤波。
图8的(2)示出了对彼此相邻的块的水平边界执行滤波的示例。在图8的(2)中,可对当前块B和顶部块A之间的水平边界执行垂直方向滤波。
此外,图8的块A和块B可以是编码树单元、编码单元、预测单元、变换单元、编码树块、编码块、预测块、变换块或子块(子CU、子TU或子PU)中的任一个。
图9是示出根据本发明的去块滤波器的示图。
滤波目标块的编码参数和通过父等级的头用信号传送的编码参数中的至少一个编码参数以及在滤波时使用的重建像素可用作用于去块滤波的输入。输入到本发明的去块滤波器的编码参数可表示图1中描述的编码参数。
可通过使用用于去块滤波而输入的信息来确定滤波边界以及是否执行滤波。随后,可确定关于被执行滤波的边界的滤波强度和滤波类型,然后可执行去块滤波以输出执行了滤波的像素。
参考图9,根据本发明的实施例的去块滤波器可包括:滤波边界和滤波执行确定模块、滤波强度和滤波类型确定模块以及滤波执行模块。
滤波边界和滤波执行确定模块可确定被执行去块滤波的边界是块边界、并行块边界、子画面边界、分块边界还是条带边界,并且确定是否对相应的边界执行滤波。
滤波强度和滤波类型确定模块可确定应用于被确定执行滤波的边界的滤波强度和滤波类型。这里,滤波类型可表示在滤波时使用的样点的数量或位置、被滤波的样点的数量、被滤波的样点的位置和滤波抽头的数量中的至少一个。
此外,并行块用于并行处理,因此对并行块边界执行滤波可能需要另外的后计算。因此,除了用信号传送是否对块边界执行滤波之外,表示是否对并行块边界执行滤波的信息通过父等级被用信号传送,以便选择性地使用对并行块边界的滤波。稍后将描述对并行块边界的滤波。在本文中,代替并行块,可对画面、子画面、条带、分块等中的至少一个使用稍后将被描述的边界滤波。
图10是示出根据本发明的实施例的确定是否执行滤波的方法的流程图的示图。在图10中,块A和块B是彼此相邻的块,并且可以是图8中描述的块A和块B。
参照图10,当deblock_enabled_flag为0时,确定执行滤波不可用,因此可结束滤波(S1010-真)。相反,当deblock_enabled_flag为1时,确定执行滤波可用,因此可执行S1020(S1010-假)。
这里,deblock_enabled_flag是表示执行去块滤波是否可用的信息,并且在deblock_enabled_flag为1的情况下,可表示执行去块滤波可用。相反,在deblock_enabled_flag为0的情况下,可表示执行去块滤波不可用。deblock_enabled_flag可通过以序列、画面、子画面、条带、并行块组、分块或并行块为单位被确定而通过比特流被用信号传送。
在稍后描述的示例中,代替条带,可使用画面、子画面、并行块、分块等中的至少一个。
在S1020,当loop_filter_across_slice为1时,可确定对条带边界进行滤波也可用,并且可执行S1040(S1020-真)。相反,当loop_filter_across_slice为0时,可确定对条带边界进行滤波不可用,并且可执行S1030(S1020-假)。
这里,loop_filter_across_slice是表示对条带边界执行去块滤波是否可用的信息。当loop_filter_across_slice的值为0时,可表示对条带边界执行去块滤波不可用。当该值为1时,可表示对条带边界执行去块滤波可用。当deblock_enabled_flag的值为1时,loop_filter_across_slice可以以序列、画面、子画面、条带、并行块组、块或并行块为单位被确定,并且通过比特流被用信号传送。
在S1030,可确定是否是条带边界,如果是(S1030-真),则可结束滤波。换句话说,当确定对条带边界执行滤波不可用(loop_filter_across_slice==0)并且边界是条带边界时,可结束滤波。相反,当边界不是条带边界时(S1030-假),可执行S1040。
在稍后描述的示例中,代替并行块,可使用画面、子画面、条带、分块等中的至少一个。
在S1040,当边界是并行块的垂直边界并且enable_loop_filter_across_tile_col为0时,可结束滤波(S1040-真)。相反,当边界不是并行块的垂直边界时,或者当enable_loop_filter_across_tile_col为1时,可执行S1050(S1040-假)。
这里,enable_loop_filter_across_tile_col是表示是否对当前并行块的左边界或右边界执行滤波的信息,并且enable_loop_filter_across_tile_col可从通过头发送的关于是否对每个并行块的边界执行滤波的语法中被推导出。在当前执行的滤波是针对垂直边界的操作时,可通过使用上述信息来确定是否执行滤波。
在S1050,当边界是并行块的水平边界并且enable_loop_filter_across_tile_row为0时,可结束滤波(S1050-真)。相反,当边界不是并行块的水平边界时,或者当enable_loop_filter_across_tile_row为1时,可执行S1060(S1060-假)。
这里,enable_loop_filter_across_tile_row是表示是否对当前并行块的顶部边界或底部边界执行滤波的信息。enable_loop_filter_across_tile_row可从通过头发送的关于是否对每个并行块的边界执行滤波的语法中被推导出。在当前执行的滤波是针对水平边界的操作时,可通过使用上述信息来确定是否执行滤波。
此外,当deblock_enabled_flag为0或者loop_filter_across_tile的值为0时,可将enable_loop_filter_across_tile_col的值和enable_loop_filter_across_tile_row的值推导为0。当deblock_enabled_flag为1,并且loop_filter_across_tile的值为1时,可通过使用通过头发送的关于是否对每个并行块的边界执行滤波的语法来执行推导。
在S1060,确定是否是块边界,并且如果是,则可执行滤波(S1060-真)。相反,如果否,则可不执行滤波并且可结束滤波(S1060-假)。这里,块可表示编码树单元、编码单元、预测单元、变换单元、编码树块、编码块、预测块、变换块及其子块。
在图10中,确定对条带边界执行滤波不可用(loop_filter_across_slice==0),并且当边界是条带边界时,不执行滤波。以上内容可被应用于分块、并行块组、编码树单元等的边界。
在示例中,当确定对分块边界执行滤波不可用(loop_filter_across_brick==0)并且边界是分块边界时,可确定不执行滤波。
另外,当块之间的边界是垂直边界并且当前块的左边界与画面的边界匹配时,可确定不执行滤波。另外,当块之间的边界是水平边界并且当前块的顶部边界与画面的边界匹配时,可确定不执行滤波。
此外,可基于块尺寸来确定是否执行根据本发明的实施例的滤波。这里,块尺寸可以是块的宽度、高度和面积中的至少一个。
当块尺寸为M×N并且M或N小于作为阈值(Threshold)的min_deblock_size时,可不执行滤波。
在示例中,在M×N(4×16)的块的情况下,当min_deblock_size=8时,可不执行对垂直边界的滤波。
可选地,在示例中,在M×N(16×4)的块的情况下,当min_deblock_size=8时,可不执行对水平边界的滤波。
图11是根据本发明的实施例的不执行滤波的边界的示例的示图。在图11中,假设作为阈值(Threshold)的min_deblock_size是8。
参考图11,可不对(4×32)块和(4×16)块的垂直边界执行滤波。
在下文中,将描述根据本发明的实施例的确定滤波强度的方法。
可通过考虑当前被执行滤波的块的编码参数、邻近块的编码参数和块尺寸中的至少一个来确定滤波强度。
另外,滤波强度可根据通过使用滤波目标块中包括的样点的值中的至少一个值计算出的值而变化。在示例中,滤波强度可根据通过使用与块之间的边界相邻的样点值计算出的梯度值而变化。
在去块滤波中,可在进行水平滤波之后对当前块执行垂直滤波,或者可在进行垂直滤波之后对当前块执行水平滤波。当在进行水平滤波之后执行垂直滤波或在进行垂直滤波之后执行水平滤波时,在应用非线性滤波时,被执行两次滤波的样点的结果变得不同。因此,图像编码设备和图像解码设备必须按照预定顺序(进行水平滤波之后进行垂直滤波,或者进行垂直滤波之后进行水平滤波)执行滤波,使得图像编码设备和图像解码设备获得相同的结果(或者为了防止编码器/解码器之间的不匹配)。滤波顺序可在图像编码设备和图像解码设备中相同地被隐式地确定,或者可通过用信号传送标志被显式地确定。
此外,在本发明的实施例中,滤波强度可用于具有与边界强度(BS)相同的含义。
图12是示出根据本发明的实施例的确定滤波强度的方法的流程图的示图。在图12中,块A和块B是彼此相邻的块,并且可以是图8中描述的块A和块B。
参考图12,在S1210,当块A的面积和块B的面积都等于或大于inloop_large_block_threshold时,可将滤波强度确定为最强滤波强度(BS=5)(S1210-真)。相反,当块A的面积或块B的面积都小于inloop_large_block_threshold时,可执行S1220(S1210-假)。
这里,inloop_large_block_threshold可以是在图像编码设备和图像解码设备中预定义的值,或者可以是从图像编码设备向图像解码设备用信号传送的信息。
当块尺寸被定义为M×N(M和N是2n,n是正整数)时,块的面积可被定义为M×N。
另外,当块A的面积和块B的面积中的至少一个等于或大于作为预定义常数值的inloop_large_block_threshold时,可将滤波强度确定为最强滤波强度(例如,BS=5)。
另外,当确定滤波强度时,可使用块的宽度和高度中的至少一个而不是块的面积。
另外,当确定滤波强度时,可使用块深度而不是块的面积。在示例中,当块深度大时,可表示块尺寸小。
另外,最强滤波强度不限于BS=5,可执行关于使用应用于一个块的滤波器长度为长度J的滤波器的指示。这里,J是等于或大于3的正整数。换句话说,在本文中,整个滤波器长度可等于或大于2×J。
强滤波强度(例如,BS=5)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。
另外,当滤波强度的值在0至3的范围内时,最强滤波强度可被设置为BS=3。
另外,当滤波强度的值在0至2的范围内时,最强滤波强度可被设置为BS=2。
如上所述,可基于块尺寸(或面积、宽度、高度和深度中的至少一个)来确定滤波强度。
当块具有大块尺寸时,样点之间的相关性高的概率高,因此使用强滤波以有效地去除块效应。
在S1220,当块A的尺寸或块B的尺寸小于min_deblock_size时,可将滤波强度确定为最弱滤波强度(BS=0)(S1220-真)。相反,当块A的尺寸和块B的尺寸等于或大于min_deblock_size时,可执行S1230(S1220-假)。
在示例中,当水平相邻的块A和块B的各自宽度小于min_deblock_size时,关于块之间的垂直边界的滤波强度可被确定为最弱滤波强度(BS=0)。
在示例中,当水平相邻的块A和块B的各自高度小于min_deblock_size时,关于块之间的垂直边界的滤波强度可被确定为最弱滤波强度(BS=0)。
在示例中,当垂直相邻的块A和块B的各自高度小于min_deblock_size时,关于块之间的水平边界的滤波强度可被确定为最弱滤波强度(BS=0)。
在示例中,当垂直相邻的块A和块B的各自宽度小于min_deblock_size时,关于块之间的水平边界的滤波强度可被确定为最弱滤波强度(BS=0)。
可选地,当画面、子画面、条带、并行块组、并行块、分块、CTU、编码块、预测块、变换块和子块中的至少一个被分区为min_block_size×min_block_size的单元时,可不对块A的与相应单元的边界不相应的垂直边界或水平边界以及块B的与相应单元的边界不相应的垂直边界或水平边界执行滤波。换句话说,当画面、子画面、条带、并行块组、并行块、分块、CTU、编码块、预测块、变换块和子块中的至少一个被分区为min_block_size×min_block_size的单元时,可对块A的与相应单元的边界相应的垂直边界或水平边界和块B的与相应单元的边界相应的垂直边界或水平边界执行滤波。这里,min_block_size可表示最小编码单元的尺寸、最小预测单元的尺寸、最小变换单元的尺寸、最小编码块的尺寸、最小预测块的尺寸、最小变换块的尺寸、最小块的尺寸、用于执行去块的最小尺寸,并且可以是1、2、4、8等的正整数。
此外,min_deblock_size可以是从图像编码设备向图像解码设备被用信号传送的信息,并且可以以序列参数集、画面参数集、子画面头、条带/并行块头、分块、CTU等为单位被用信号传送。另外,min_deblock_size可以是在图像编码设备和图像解码设备中预设的值。
最弱滤波强度(例如,BS=0)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是0和0、1和1、2和1、2和2或3和2,并且U可以等于或大于V。这里,当BS=0时,U和V中的至少一个可与在BS=1的情况下的U和V中的至少一个不同。另外,当BS=0时,U和V中的至少一个可小于在BS=1的情况下的U和V中的至少一个的值。
此外,最弱滤波强度(例如,BS=0)可表示不执行滤波。
在S1230,当块A和块B中的至少一个是通过帧内预测被编码的块时,可将滤波强度确定为强滤波强度(例如,BS=4)(S1230-真)。相反,当块A和块B两者通过帧间预测被编码时,可执行S1240(S1230-假)。
在通过帧内预测被编码的块的情况下,由于量化,与通过帧间预测被编码的块相比,发生块效应的概率高,因此为了有效地去除块效应,可对帧内预测的块执行强滤波(BS=4)。
图13和图14是分别示出根据本发明实施例的根据预测模式确定滤波强度的方法的示图。
参照图13,当通过帧内预测对块A进行编码并且通过帧间预测对块B进行编码时,可利用强滤波强度对块A执行滤波,而可利用弱滤波强度对块B执行滤波。
因此,在帧内预测块的情况下,在靠近块内的右侧或底部的区域中发生预测误差的概率高。另外,在帧间预测块的情况下,与帧内预测块相比,预测误差可相对较低。因此,当块A被帧内预测并且块B被帧间预测时,在对块A和块B之间的边界执行滤波时,通过将低于块A的滤波强度的滤波强度应用于块B,可有效地减少块效应。
参考图14,当块A是通过帧间预测被编码的块,并且块B是通过帧内预测被编码的块时,可将强去块滤波器强度应用于块A和块B。通过参考块A的部分右边界的样点来执行对作为帧内预测块的块B的帧内预测,因此当块A中存在量化误差时,将该误差原样传送到块B的概率高。可选地,当块A中不存在量化误差时,在块B中,在与块A相邻的边界附近发生量化误差的可能性较小。
另外,可根据块A的预测模式和块B的预测模式是否彼此不同来确定滤波强度。
在示例中,当块A的预测模式和块B的预测模式彼此不同时,可将滤波强度确定为弱滤波强度(例如,BS=1)。
此外,强滤波强度(例如,BS=4)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。这里,当BS=4时,U和V中的至少一个可与在BS=5的情况下的U和V中的至少一个不同。另外,当BS=4时,U和V中的至少一个可小于在BS=5的情况下的U和V中的至少一个的值。
另外,当滤波强度的值在0至3的范围内时,可将强滤波强度设置为BS=2。
另外,当滤波强度的值在0至2的范围内时,可将强滤波强度设置为BS=2。
在S1240,当块A或块B的变换系数为至少一个时,可将滤波强度确定为中等滤波强度(BS=3)(S1240-真)。相反,当不存在块A或块B的变换系数时,可执行S1250(S1240-假)。
此外,中等滤波强度(例如,BS=3)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。这里,当BS=3时,U和V中的至少一个与在BS=4的情况下的U和V中的至少一个不同。另外,当BS=3时,U和V中的至少一个可小于在BS=4的情况下的U和V中的至少一个的值。
另外,当滤波强度的值在0至3的范围内时,可将中等滤波强度设置为BS=1。
另外,当滤波强度的值在0至2的范围内时,可将中等滤波强度设置为BS=1。
在S1250,当块A的参考画面和块B的参考画面彼此不同时,可将滤波强度确定为中等滤波强度(例如,BS=2)(S1240-假)。相反,当块A的参考画面和块B的参考画面相同时,可执行S1260(S1250-真)。
此外,中等滤波强度(例如,BS=2)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是1和1、2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可等于或大于V。这里,当BS=2时,U和V中的至少一个可与在BS=3的情况下的U和V中的至少一个不同。另外,当BS=2时,U和V中的至少一个可小于在BS=3的情况下的U和V中的至少一个的值。
另外,当滤波强度的值在0至3的范围内时,可将中等滤波强度设置为BS=1。
另外,当滤波强度的值在0至2的范围内时,可将中等滤波强度设置为BS=1。
在S1260,当满足以下条件中的至少一个时,将滤波强度确定为弱滤波强度(BS=1)(S1260-真)。相反,当不满足以下条件时,可将滤波强度确定为最弱滤波强度(BS=0)(S1260-假)。这里,T可以是正整数,例如,16。
-当以1/16像素为单位的块A和块B的运动矢量的差值大于预定义的T时
-当不对块B执行使用关于块A的运动信息的OBMC(重叠块运动补偿)时
-当不对块A执行使用关于块B的运动信息的OBMC(重叠块运动补偿)时
根据本发明的滤波强度可通过是否使用OBMC(重叠块运动补偿)被确定。
当通过使用关于邻近块A的运动信息对当前块B使用OBMC时,块效应可小于OBMC未被用于块A和块B的边界的情况。因此,这里,可通过将滤波强度设置为低值来提高图像质量。
在示例中,如图12的S1260,当使用OBMC时,可将滤波强度BS确定为0,且当不使用OBMC时,可将滤波强度BS确定为1。
此外,当OBMC仅用于Y分量(或亮度分量)时,可在仅对Y分量执行滤波时将滤波强度确定为低,并且可在对U和V分量(或色度分量)执行滤波时保持滤波强度。
在示例中,当OBMC仅用于亮度分量时,关于亮度分量的滤波强度BS被确定为0,并且关于色度分量的滤波强度BS可被确定为1。
图15是示出根据本发明的实施例的确定被执行OBMC的块的滤波强度的方法的示图。
在图15中,当对块B执行使用关于块A的运动信息的OBMC时,可将关于块A与块B之间的边界0的滤波强度确定为最低滤波强度(BS=0)。
此外,即使在对块B执行OBMC时,也通过使用关于块A的运动信息来执行OBMC,因此,关于块B与块C之间的边界1的滤波强度以及关于块B与块D之间的边界2的滤波强度可被确定为低滤波强度(BS=1)。
此外,弱滤波强度(例如,BS=1)可表示通过对包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是1和1、2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可等于或大于V。这里,当BS=1时,U和V中的至少一个可与在BS=2的情况下的U和V中的至少一个不同。另外,当BS=1时,U和V中的至少一个可小于在BS=2的情况下的U和V中的至少一个的值。
另外,当滤波强度的值在0至3的范围内时,可将弱滤波强度设置为BS=1。
另外,当滤波强度的值在0至2的范围内时,可将弱滤波强度设置为BS=1。
已经描述了顺序执行的图12的每个步骤。然而,每个步骤不限于图12所示的顺序,而是可独立地或以不同的顺序执行。
另外,除了滤波强度之外,图12的每个步骤的条件可用于确定是否执行滤波、在滤波时使用的样点的数量/位置、被滤波的样点的数量、滤波类型等。
在示例中,是否使用OBMC可用于确定滤波器类型。当通过使用关于块A的运动信息对块B执行OBMC时,可确定对相应边界使用低强度的滤波器类型,或确定在滤波时使用边界附近的少量样点。
当滤波强度被确定为最弱滤波强度(BS=0)时,可不执行去块滤波,或者可通过应用弱滤波强度(BS=0)来执行去块滤波。最弱滤波强度(例如,BS=0)可表示通过使用包括在块A或块B中的至少U个样点执行滤波来改变包括在块A或块B中的至少V个样点的值。例如,U和V可以是正整数,可以分别是0和0、1和1、2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可等于或大于V。这里,当BS=0时,U和V中的至少一个可与在BS=1的情况下的U和V中的至少一个不同。另外,当BS=0时,U和V中的至少一个可小于在BS=1的情况下的U和V中的至少一个的值。
通过使用形成块边界的两个块的宽度和高度中的至少一个,可确定在对与滤波目标边界相邻的块进行滤波时使用的样点的数量和/或位置。这里,可根据两个块中具有较小宽度或高度的块的尺寸来确定在滤波时使用的样点的数量。另外,可使用块的面积或深度而不是尺寸。
图16是示出根据本发明的实施例的根据块分区进行滤波的示例的示图。
在图16中,64×32区域被分区为具有正方形形状和矩形形状的CU#0至CU#6。在相应的示例中,块以编码单元(CU)的形式表示。然而,不限于此,块可以是PU、TU、CB(编码块)、PB(预测块)、TB(变换块)、子CU、子TU而非CU。
CU#0是使用32×16尺寸的变换的32×16块,CU#1、CU#2和CU#4是使用16×8尺寸的变换的块,CU#3和CU#5是使用8×8尺寸的变换的块,CU#6是使用32×32尺寸的变换的块。
CU#0和CU#6在水平方向上相邻,因此,存在垂直边界,并且CU#0和CU#1在垂直方向上相邻,因此,存在水平边界。
参考图16,可基于CU#0的宽度和CU#6的宽度中的至少一个来确定在对CU#0与CU#6之间的垂直边界进行滤波时使用的样点的数量和/或位置。
此外,当对CU#0和CU#6之间的垂直边界执行滤波,并且块CU#0和块CU#6中的至少一个块的宽度或高度大于inloop_large_block_threshold时,可通过使用CU#0内的从垂直边界起连续的U个样点在水平方向上对V个样点执行滤波,或者可通过使用CU#6内的U个样点来对V个样点执行滤波。例如,U和V可以是正整数,可以分别是4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。
这里,当CU#0的宽度和CU#6的宽度相同时,CU#0内用于去块滤波器的样点的数量和CU#6内用于去块滤波器的样点的数量可相同。另外,当CU#0的宽度和CU#6的宽度相同时,CU#0内的被执行去块滤波的样点的数量和CU#6内的被执行去块滤波的样点的数量可相同。
另外,可基于CU#0的高度和CU#1的高度中的至少一个来确定在对CU#0与CU#1之间的水平边界进行滤波时使用的样点的数量和/或位置。
此外,当对CU#0和CU#1之间的水平边界执行滤波,并且块CU#0和块CU#1中的至少一个块的宽度或高度大于inloop_large_block_threshold时,可通过使用CU#0内的从水平边界起连续的U个样点在垂直方向上对V个样点执行滤波,或者可通过使用CU#1内的U个样点来对V个样点执行滤波。例如,U和V可以是正整数,可以分别是0和0、1和1、2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。
这里,当CU#0的高度和CU#1的高度不同时,CU#0内的用于去块滤波器的样点的数量和CU#1内的用于去块滤波器的样点的数量可彼此不同。例如,当CU#1的高度小于CU#0的高度时,CU#1内的用于去块滤波器的样点的数量可小于CU#0内的用于去块滤波器的样点的数量。另外,当CU#0的高度和CU#1的高度不同时,CU#0内的被执行去块滤波的样点的数量和CU#1内的被执行去块滤波的样点的数量可彼此不同。例如,当CU#1的高度小于CU#0的高度时,CU#1内的被执行去块滤波的样点的数量可小于CU#0内的被执行去块滤波的样点的数量。
另外,可通过使用形成块边界的两个块的宽度和高度中的至少一个来确定关于滤波目标边界的滤波强度。另外,可基于块的面积或深度而不是尺寸来确定滤波强度。另外,可通过使用形成块边界的两个块的宽度和高度中的至少一个来确定在对与滤波目标边界相邻的块进行滤波时使用的样点的数量和/或位置。这里,可根据两个块中具有较小宽度或高度的块的尺寸来确定在滤波时使用的样点的数量。可选地,可根据两个块中具有较大宽度或高度的块的尺寸来确定滤波时使用的样点的数量。
此外,可基于CU#5的宽度和CU#6的宽度中的至少一个来确定在对CU#5和CU#6之间的垂直边界进行滤波时使用的样点的数量和/或位置。
此外,当对CU#5和CU#6之间的垂直边界执行滤波,并且块CU#5和CU#6中的至少一个块的宽度或高度大于inloop_large_block_threshold时,可通过使用CU#5内的从垂直边界起连续的U个样点在水平方向上对V个样点执行滤波,或者可通过使用CU#6内的U个样点来对V个样点执行滤波。这里,例如,U和V可以是正整数,可以分别是0和0、1和1、2和1、2和2、3和2、4和3、5和4、6和4、7和4、6和5、5和3、或6和3,并且U可以等于或大于V。
这里,当CU#5的宽度和CU#6的宽度不同时,CU#5内的用于去块滤波器的样点的数量和CU#6内的用于去块滤波器的样点的数量可彼此不同。例如,当CU#5的宽度小于CU#6的宽度时,CU#5内的用于去块滤波器的样点的数量可小于CU#6内的用于去块滤波器的样点的数量。
另外,当CU#5的宽度和CU#6的宽度不同时,CU#5内的被执行去块滤波的样点的数量和CU#6内的被执行去块滤波的样点的数量可彼此不同。例如,当CU#5的宽度小于CU#6的宽度时,CU#5内的被执行去块滤波的样点的数量可小于CU#6内的被执行去块滤波的样点的数量。
参照图16,当确定关于CU#0和CU#6之间的垂直边界的滤波强度时,可使用两个块CU#0和CU#6中的至少一个块的宽度或高度。另外,当确定关于CU#0与CU#1之间的水平边界的滤波强度时,可使用两个块CU#0和CU#1中的至少一个块的宽度或高度。
此外,关于具有较大尺寸的块内的样点的滤波强度可被确定为比关于具有较小尺寸的块内的样点的滤波强度更强的滤波强度。例如,关于CU#0与CU#6之间的垂直边界的滤波强度可被确定为比关于CU#0与CU#1之间的水平边界的滤波强度更强的滤波强度。
此外,可对矩形形状的块执行诸如32×16、16×8等的矩形形状的变换,并且可对矩形形状的相应块、单元或变换边界执行滤波。
为了提高矩形CU(诸如图16的宽高比大的CU#1或CU#2)中的变换效率,可如图17所示确定各种变换区域。可通过使用关于确定的变换区域的至少一个编码参数来对各种变换区域之间的边界执行去块滤波。
如参照图8至图17所述,可通过使用确定的滤波强度以及在滤波时使用的样点的数量和/或位置中的至少一个来执行对与块边界相邻的样点的滤波。
在下文中,将详细描述根据本发明的实施例的根据滤波强度(BS)的滤波方法。
当滤波强度的值在0至5的范围内时,可通过在BS大小小于4时使用[等式1]、在BS为4时使用[等式2]、以及在BS为5时使用[等式3]和[等式4]来执行滤波。
[等式1]
Δ=Clip[-tc,tc,{(q0-p0)<<2+(p1-q1)+4}/8]
p'0=p0+Δ
q'0=q0+Δ
等式1是针对BS值小于4的示例。
这里,tc的值可通过由|p2-p0|、|q2-q0|和量化参数QP确定的β值被确定。Clip[a,b,c]的Clip函数进行处理,使得c的值不超过a和b之间的值。换句话说,等式1的Clip进行处理,使得((q0-p0)<<2+(p1-q1)+4)/8不超过-tc和tc之间的值。
如等式1,可通过利用使用q1、q0、p0和p1的四抽头滤波器来获得p'0和q'0的值。可通过使用与计算p'0和q'0的方法类似的方法来执行对p'1和q'1的样点值的滤波。这里,作为图16的示例,pn和qn可表示样点的位置。这里,n是包括0的正整数。
[等式2]
q'0=(1×q2+2×q1+2×q0+2×p0+1×p1+4)/8
等式2是例如在BS=4时计算q'0。
这里,五抽头滤波器可以以1、2、2、2、1的顺序应用于滤波系数值,并且可通过由量化参数确定的α和β值来确定是否是真实边缘。通过使用等式2被执行滤波的样点的数量被限制为多达J个样点(在亮度信号的情况下为J,并且在色度信号的情况下为K),并且因此,可针对与边界相邻的每个块执行多达L个样点的滤波。这里,J、K和L可以是正整数,例如,J可以是6,K可以是4,L可以是3。
本发明的实施例可提供一种滤波方法,该滤波方法另外包括关于与具有相对大尺寸的块相邻的边界的滤波强度(例如,BS是5)。等式3和等式4可在对具有相对大尺寸的块的边界进行滤波时使用。例如,对于具有大尺寸的块,可通过与阈值T进行比较来确定是否是具有大尺寸的块。这里,T可以是正整数,例如,32。例如,当特定块的宽度等于或大于T时,可将特定块确定为具有大尺寸的块。在另一示例中,当特定块的高度等于或大于T时,可将特定块确定为具有大尺寸的块。
例如,在使用等式3或等式4进行滤波时使用的样点的数量和被滤波的样点的数量中的至少一个可大于在使用等式2进行滤波时使用的样点的数量和被滤波的样点的数量中的至少一个。
换句话说,等式3或等式4可表示使用更多样点的滤波方法的示例。
[等式3]
q'0=(1×q3+2×q2+3×q1+4×q0+3×p0+2×p1+1×p2+8)/16
等式3是用于计算在与具有相对大尺寸的块相邻的边界上的q'0的等式。在等式3中,使用1、2、3、4、3、2、1的七抽头滤波器,其中,在滤波时使用的样点的数量相比于等式2的在滤波时使用的样点的数量增加。因此,通过增加与具有相对大尺寸的块的边界相邻的样点的数量来执行滤波,可有效地减少块效应。
[等式4]
q'4=(4×q5+3×q4+3×q3+2×q2+2×q1+1×q0+8)/16
等式4是用于对q'4的样点执行滤波的等式。通过使用等式4,可通过对与边界相邻的q'4执行滤波来减少块效应,其中,该边界与具有相对大尺寸的块相邻。
当块尺寸增大时,可通过增加在滤波时使用的样点的数量来减少块效应。具体地,可对与具有相对大尺寸的块相邻的边界通过诸如等式3使用七抽头滤波器来执行滤波。
在示例中,对于垂直边界,在当前块的宽度等于或大于32时,可使用七抽头滤波器。相反,在当前块的宽度小于32时,具有少于七个抽头的抽头的滤波器可用于垂直边界滤波。
在另一示例中,对于水平边界,在当前块的高度等于或大于32时,可使用七抽头滤波器。相反,在当前块的高度小于32时,具有少于七个抽头的抽头的滤波器可用于水平边界滤波。
在本发明的实施例中,在滤波时使用的样点的数量和被滤波的样点的数量的示例不限于利用上述等式描述的方法,并且除此之外,可根据块的尺寸、面积和深度中的至少一个不同地应用各种滤波方法。
此外,当滤波强度的值在0至3的范围内时,可通过在BS大小为1时使用[等式1]、在BS为2时使用[等式2]、以及在BS为3时使用[等式3]和[等式4]来执行滤波。
此外,可基于被执行滤波的每个块的量化参数的值来确定在滤波时使用的样点的数量和被滤波的样点的数量。
在示例中,通过对彼此相邻的各个块A和B的量化参数值进行比较,可通过使用具有较大量化参数值的块的U个样点来对V个样点执行滤波,并且可通过使用具有较小量化参数值的块的X个样点来对Y个样点执行滤波。这里,U和V可分别被确定为等于或大于X和Y。
此外,U、V、X和Y可以是正整数,U可等于或大于V,并且X可等于或大于Y。
此外,可通过当前块的编码参数和相邻的邻近块的编码参数中的至少一个来确定在滤波时使用的样点的数量和被滤波的样点的数量。
此外,在滤波时使用的样点可限于两个块中包括的样点。
此外,可基于预测模式来确定滤波强度。
在示例中,当通过使用IBC(帧内块复制)模式对包括与块边界相邻的样点的块进行编码/解码时,可将滤波强度确定为弱滤波强度(BS=1)。
在另一示例中,当块边界是变换块的边界,并且通过使用CIIP(组合帧内帧间预测)对包括与块边界相邻的样点的块进行编码/解码时,可将滤波强度确定为强滤波强度(BS=2)。
此外,可基于变换模式来确定滤波强度。
在示例中,当对包括与块边界相邻的样点的块执行二次变换时,可将滤波强度确定为BS=2。当执行二次变换时,在残差信号的高频分量中发生误差的概率高,因此可使用高滤波强度。另外,可通过考虑块尺寸以及是否使用二次变换来确定滤波强度。
此外,可基于当前块和邻近块的尺寸以及变换模式来确定在滤波时使用的样点的数量。
在示例中,当块A和块B的各自宽度为32,DCT-2水平变换被用作块A的变换模式,并且DST-7或DCT-8水平变换被用作块B的变换模式时,可确定块A内的在滤波时使用的样点的数量小于块B内的在滤波时使用的样点的数量。
此外,可根据边界是与变换块和变换块之间的边界相应、与编码块和变换块之间的边界相应还是与编码块和编码块之间的边界相应来确定滤波强度。
此外,可根据块的变换和量化类型来确定滤波强度。
在示例中,当变换和量化类型等于或大于64×32或32×64的尺寸时,可使用最强滤波强度。
此外,当变换和量化的单元变大时,在滤波时使用的样点的数量可增加。
本发明的至少一个实施例可用于亮度信号去块滤波或色度信号去块滤波。
当执行滤波时,可根据块尺寸不同地确定在滤波时使用的样点的数量,并且当编码块尺寸、预测块尺寸和变换块尺寸中的至少一个变大时,可增加在滤波时使用的样点的数量。
当执行滤波时,可根据块尺寸不同地确定被滤波的样点的数量,并且可在编码块尺寸、预测块尺寸和变换块尺寸中的至少一个变大时增加被滤波的样点的数量。
此外,应用于亮度分量的滤波强度可被相同地应用于色度分量。可选地,应用于亮度分量的滤波强度和应用于色度分量的滤波强度可彼此独立。
此外,在对亮度分量进行滤波时使用的样点的数量可独立于色度分量。在对色度分量进行滤波时使用的样点的数量可等于或小于用于亮度分量的样点的数量。
此外,可另外确定是否通过使用滤波目标的边界周围的样点来执行滤波、滤波强度和滤波方法中的至少一个。这里,可通过使用边界周围的样点的梯度值来确定边界周围的样点是否与图像的真实边缘相应、或者是否由于对块进行编码/解码而发生块效应,并且可通过使用上述结果来确定是否执行滤波。这里,代替梯度值,可使用通过使用包括在块A和B中的样点的至少一个值执行计算而获得的结果值。
在下文中,将描述根据本发明的实施例的对并行块边界的滤波。这里,代替并行块,可对画面、子画面、条带、分块等中的至少一个使用稍后将被描述的边界滤波。
可在各种应用领域中使用并行块,并且特别地,当对高分辨率360度图像进行编码/解码时,并行块是有用的。当通过将3D空间投影到2D形式的表面来生成360图像时,表面可能不是空间连续的,这是因为除了ERP(等量矩形投影)之外的诸如CMP(立方图投影)的投影方法重新布置了多个表面。可选地,画面边界可与任意并行块边界彼此连续,或者画面边界可彼此连续。通常,在图像编码设备中将单个表面设置为单个并行块,因此是否对并行块边界执行滤波以及滤波方法是重要的。
当对所有边界执行滤波时,可能由于对非连续表面之间的边界执行滤波而发生图像劣化。相反,当不对所有边界执行滤波时,可能由于不对连续表面的边界执行滤波而发生块效应。另外,当不对画面边界执行滤波时,在以3D形式向用户输出解码的画面时可能发生块效应。
为了解决上述问题,图像编码/解码设备可通过头(序列参数集、画面参数集、自适应参数集、条带头、并行块头、分块头等)对是否对每个并行块的画面边界和并行块边界执行滤波以及滤波方法进行熵编码/熵解码。可选地,可通过头(序列参数集、画面参数集、自适应参数集、条带头、并行块头、分块头等)对投影和重新布置360图像的方法进行熵编码/解码,使得图像编码/解码设备可隐式地确定是否对每个并行块的画面边界和并行块边界执行滤波以及滤波方法。
如上所述,可不对非连续并行块边界隐式地执行滤波,或者可对连续并行块边界隐式地执行滤波。可通过使用在投影到2D形式之前位于3D空间中的连续表面的边界处的重建像素并且通过使用编码/解码信息,对并行块内的画面的边界执行滤波。同样,图像编码设备可通过头用信号传送哪个并行块的哪个位置处的边界用于滤波,并且图像解码设备可通过使用传送的信息来确定是否对任意并行块内的画面边界执行滤波、以及被执行滤波的是哪个并行块的哪个位置处的边界。
可选地,可通过头发送投影和重新布置360图像的方法,使得图像编码/解码设备可隐式地确定是否对每个并行块内的画面边界执行滤波以及被执行滤波的是哪个并行块的哪个位置处的边界。这里,除了去块滤波器之外,滤波器还可包括通过使用在边界上或超出边界重建的像素以及编码/解码信息来执行滤波的环路滤波器,诸如自适应样点偏移、自适应环路滤波器。
图18是示出通过以立方图形式进行投影以六个表面(左面、前面、右面、后面、底面和顶面)表示360图像的布局示例的示图。
编码器/解码器可以以矩形形状接收和输出,因此,可通过将六个表面重新布置成没有边缘的矩形形状来对六个表面执行压缩。
图19和图20是分别示出通过以立方图形式进行投影获得的六个表面被重新布置的示例的示图。图19示出了使用CMP(立方图投影)的重新布置,并且图20示出了使用RSP(旋转球体投影)的重新布置。
在图19中,左面和前面、前面和右面以及顶面和前面分别是在3D空间中空间连续的表面。然而,其他表面在空间上不是连续的。当各个表面在各自并行块中被编码/解码时,边界C11、边界C12和边界R11是并行块边界并且是连续边界,并且边界R10、边界R12、边界C01和边界CO2是并行块边界并且是空间上不连续的边界。因此,对边界C11、边界C12和边界R11执行滤波可去除块效应或提高图像质量。相反,在图像质量方面优选的是不对边界R10、边界R12、边界C01和边界C02执行滤波,因为它们是非连续边界。另外,边界(C00和C13)以及边界(R00和R01)是画面边界并且是彼此连续的边界,因此可以通过假设它们是彼此相邻的边界来执行滤波,以提高图像质量。
在图20中,顶面、后面和底面向右旋转90度,并且因此边界R10、边界R11和边界R12是非连续边界,并且其余边界在空间上是连续的。因此,边界R10、边界R11和边界R12是非连续边界,因此在图像质量方面优选的是不执行滤波。另外,边界(C00和R11)以及边界(R00和R12)等是画面边界并且是彼此连续的边界,因此可通过假设它们是彼此相邻的边界来执行滤波以提高图像质量。
在图20所示的投影和重新布置的方法中,编码器可通过头对关于投影和重新布置方法的信息、关于是否对并行块的右边界或左边界执行滤波的信息以及关于执行滤波的方法的信息进行熵编码,并且解码器可通过使用经熵解码的信息来推导是否对任意并行块内的右边界或左边界执行滤波,并且可不隐式地对并行块内的顶部和底部执行滤波。另外,编码器可对关于投影和重新布置方法以及是否对画面边界执行滤波的信息进行熵编码,并且解码器可隐式地确定哪个并行块的哪个位置处的边界将用于执行滤波,并且对每个并行块内的画面边界执行滤波。
图21示出了通过画面参数集定义用于发送是否对每个边界执行滤波以及执行滤波的方法的语法和语义的示例。
编码器可通过下面定义的语法loop_filter_across_tile_col[i][j]和loop_filter_across_tile_row[i][j]来用信号传送是否对每个并行块的画面和并行块边界执行滤波、以及执行滤波的方法。
另外,loop_filter_across_tile_upper_boundary[i]和loop_filter_across_tile_left_boundary[i]是表示针对每个并行块的画面边界对哪个并行块的哪个边界执行滤波的语法。
在不是360图像的情况下,对画面边界的滤波不是必需的,因此可以不用信号传送loop_filter_across_tile_col[i][0]和loop_filter_across_tile_row[i][0]、loop_filter_across_tile_upper_boundarity[i]和loop_filter_across_tile_left_boundarity[i],并且可在编码器/解码器中隐式地推导出“不执行滤波”。
另外,是否对并行块边界执行滤波以及执行滤波的方法可以以CTU为单位或以预定义尺寸(这里,预定义尺寸可以是编码器和解码器中相同地固定的值,或者可通过序列参数集、画面参数集、自适应参数集、条带头、并行块头、分块头等被用信号传送)为单位被发送。
为此,编码器首先可通过序列参数集、画面参数集、自适应参数集、条带头、并行块头、分块头等对标志位进行熵编码,其中,该标志位表示对包括在并行块边界中的所有块单元的边界执行滤波或不同地执行滤波。此外,在执行滤波时,编码器可另外发送位于并行块边界的CT的数量(或数量-1)或预定义尺寸块的数量(或数量-1)的标志位,并且可对是否对位于每个块处的并行块边界执行滤波或执行滤波的方法进行熵编码。解码器可对标志位进行熵解码,并且可相同地对将被解码的并行块内的所有边界执行并行块边界滤波,或者确定是否以位于并行块边界处的CTU为单位或以预定块为单位对并行块边界执行滤波以及执行滤波的方法。
通过使用本发明的实施例,可防止对不存在块效应的边界执行不必要的滤波,并且可去除由于预测、变换和量化中的至少一个引起的块效应。
图22是示出根据本发明的实施例的对图像进行解码的方法的流程图的示图。
参照图22,在S2201,图像解码设备可确定是否对当前块的边界执行滤波。
具体地,可基于当前块的边界是否与画面边界、子画面边界、条带边界、并行块边界和分块边界中的至少一个匹配来执行确定是否执行滤波。
随后,在S2202,图像解码设备可确定关于当前块的边界的滤波强度和在滤波时使用的样点的数量。
这里,可基于当前块的尺寸和与当前块的边界相邻的邻近块的尺寸中的至少一个来确定在滤波时使用的样点的数量。具体地,在当前块的边界是垂直边界时,可基于当前块的宽度和邻近块的宽度中的至少一个来确定在滤波时使用的样点的数量。另外,在当前块的边界是水平边界时,可基于当前块的高度和邻近块的高度中的至少一个来确定在滤波时使用的样点的数量。
另外,可通过对当前块的尺寸和邻近块的尺寸中的至少一个与预定义值进行比较来确定在滤波时使用的样点的数量。
在示例中,用于与当前块的尺寸和邻近块的尺寸进行比较的预定义值可为32。
此外,可根据当前块的亮度分量和色度分量独立地确定在滤波时使用的样点的数量。
此外,可基于邻近块的预测模式和当前块的预测模式来确定滤波强度。
在示例中,当邻近块的预测模式与当前块的预测模式彼此不同时,可将滤波强度确定为弱滤波强度。这里,弱滤波强度可以是BS=1。
随后,在S2203,图像解码设备可基于滤波强度和在滤波时使用的样点的数量对当前块的边界执行滤波。
已经参考图22描述了本发明的图像解码方法。可如参考图22所描述的那样执行本发明的图像编码方法。
此外,本发明可包括存储用于本发明的图像解码方法的图像数据的非暂时性计算机可读记录介质。这里,图像数据可以是比特流。
图像数据可包括关于是否执行滤波的信息和编码参数。在图像解码方法中,当确定是否对当前块的边界执行滤波时,可使用关于是否执行滤波的信息。
在本发明中,当前块的边界可表示当前块和/或邻近块的边界。
在本发明中,邻近块可表示与当前块的边界相邻的块。
可在编码器和解码器中以相同的方法执行上述实施例。
上述实施例中的至少一个或组合可用于对视频进行编码/解码。
应用于以上实施例的顺序在编码器与解码器之间可不同,或者应用于以上实施例的顺序在编码器和解码器中可相同。
可对每个亮度信号和色度信号执行以上实施例,或者可对亮度信号和色度信号相同地执行以上实施例。
应用本发明的以上实施例的块形状可具有正方形形状或非正方形形状。
可根据以下项中的至少一个的尺寸来应用本发明的以上实施例:编码块、预测块、变换块、块、当前块、编码单元、预测单元、变换单元、单元和当前单元。这里,尺寸可被定义为最小尺寸或最大尺寸或者最小尺寸和最大尺寸两者使得应用上述实施例,或者尺寸可被定义为应用以上实施例的固定尺寸。此外,在以上实施例中,可将第一实施例应用于第一尺寸,并且可将第二实施例应用于第二尺寸。换句话说,可根据尺寸组合地应用以上实施例。此外,当尺寸等于或大于最小尺寸并且等于或小于最大尺寸时,可应用以上实施例。换句话说,当块尺寸被包括在特定范围内时,可应用以上实施例。
例如,在当前块的尺寸为8×8或更大时,可应用以上实施例。例如,在当前块的尺寸为4×4或更大时,可应用以上实施例。例如,在当前块的尺寸为16×16或更大时,可应用以上实施例。例如,在当前块的尺寸等于或大于16×16并且等于或小于64×64时,可应用以上实施例。
可根据时间层来应用本发明的以上实施例。为了标识可应用以上实施例的时间层,可用信号传送相应标识符,并且可将以上实施例应用于由相应标识符标识的指定时间层。这里,标识符可被定义为可应用以上实施例的最低层或最高层或者最低层和最高层两者,或者可被定义为指示应用了实施例的特定层。此外,可定义应用了实施例的固定时间层。
例如,在当前图像的时间层是最低层时,可应用以上实施例。例如,在当前图像的时间层标识符是1时,可应用以上实施例。例如,在当前图像的时间层是最高层时,可应用以上实施例。
可定义应用本发明的以上实施例的条带类型或并行块组类型,并且可根据相应条带类型或相应并行块组类型来应用以上实施例。
在上述实施例中,基于具有一系列步骤或单元的流程图描述了所述方法,但是本发明不限于这些步骤的顺序,而是,一些步骤可与其他步骤同时执行或以不同的顺序执行。此外,本领域的普通技术人员应该理解,流程图中的步骤并不互相排斥,并且在不影响本发明的范围的情况下,可将其他步骤添加到流程图或者可将一些步骤从流程图删除。
实施例包括示例的各个方面。可不描述各个方面的所有可能的组合,但是本领域技术人员将能够认识到不同的组合。因此,本发明可包括权利要求的范围内的所有替换、修改和改变。
本发明的实施例可以以程序指令的形式实现,其中,该程序指令可由各种计算机组件执行并且被记录在计算机可读记录介质中。计算机可读记录介质可单独地包括程序指令、数据文件、数据结构等,或者可包括程序指令、数据文件、数据结构等的组合。记录在计算机可读记录介质中的程序指令可以是为本发明专门设计和构造的,或者对于计算机软件技术领域的普通技术人员是公知的。计算机可读记录介质的示例包括磁记录介质(诸如,硬盘、软盘和磁带);光学数据存储介质(诸如,CD-ROM或DVD-ROM);磁光介质(诸如软光盘);以及被专门构造为存储和实现程序指令的硬件装置(诸如,只读存储器(ROM)、随机存取存储器(RAM)、闪存等)。程序指令的示例不仅包括由编译器格式化的机械语言代码,而且包括可由计算机使用解释器来实现的高级语言代码。硬件装置可被配置为由一个或更多个软件模块操作或者反之亦可,以进行根据本发明的处理。
尽管已经在特定项目(诸如,详细元件)以及有限的实施例和附图方面描述了本发明,但是它们仅被提供以帮助更全面地理解本发明,并且本发明不限于以上实施例。本发明所属领域的技术人员将理解,可对以上描述进行各种修改和改变。
因此,本发明的精神将不应限于上述实施例,并且所附权利要求及其等同物的整个范围将落入本发明的范围和精神内。
工业适用性
本发明可被用于对图像进行编码/解码的设备。

Claims (17)

1.一种对图像进行解码的方法,所述方法包括:
确定是否对当前块的边界执行滤波;
确定关于当前块的所述边界的滤波强度以及在滤波时使用的样点的数量;并且
基于所述滤波强度和在滤波时使用的样点的所述数量对当前块的所述边界执行滤波,
其中,在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块的所述边界相邻的邻近块的尺寸中的至少一个被确定。
2.根据权利要求1所述的方法,其中,在当前块的所述边界是垂直边界时,在滤波时使用的样点的所述数量基于当前块的宽度和所述邻近块的宽度中的至少一个被确定。
3.根据权利要求1所述的方法,其中,在当前块的所述边界是水平边界时,在滤波时使用的样点的所述数量基于当前块的高度和所述邻近块的高度中的至少一个被确定。
4.根据权利要求1所述的方法,其中,在滤波时使用的样点的所述数量通过对当前块的尺寸和所述邻近块的尺寸中的至少一个与预定义值进行比较被确定。
5.根据权利要求1所述的方法,其中,所述确定是否对当前块的边界执行滤波通过当前块的所述边界是否与画面边界、条带边界和分块边界中的至少一个相匹配被执行。
6.根据权利要求1所述的方法,其中,所述滤波强度基于所述邻近块的预测模式和当前块的预测模式被确定。
7.根据权利要求1所述的方法,其中,当所述邻近块的预测模式和当前块的预测模式彼此不同时,所述滤波强度被确定为弱滤波强度。
8.根据权利要求1所述的方法,其中,在滤波时使用的样点的所述数量根据当前块的亮度分量和色度分量被独立地确定。
9.一种对图像进行编码的方法,所述方法包括:
确定是否对当前块的边界执行滤波;
确定关于当前块的所述边界的滤波强度以及在滤波时使用的样点的数量;并且
基于所述滤波强度和在滤波时使用的样点的所述数量对当前块的所述边界执行滤波,
其中,在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块相邻的邻近块的尺寸中的至少一个被确定。
10.根据权利要求9所述的方法,其中,在当前块的所述边界是垂直边界时,在滤波时使用的样点的所述数量基于当前块的宽度和所述邻近块的宽度中的至少一个被确定。
11.根据权利要求9所述的方法,其中,在当前块的所述边界是水平边界时,在滤波时使用的样点的所述数量基于当前块的高度和所述邻近块的高度中的至少一个被确定。
12.根据权利要求9所述的方法,其中,在滤波时使用的样点的所述数量通过对当前块的尺寸和所述邻近块的尺寸中的至少一个与预定义值进行比较被确定。
13.根据权利要求9所述的方法,其中,所述确定是否对当前块的边界执行滤波通过当前块的所述边界是否与画面边界、条带边界和分块边界中的至少一个相匹配被执行。
14.根据权利要求9所述的方法,其中,所述滤波强度基于所述邻近块的预测模式和当前块的预测模式被确定。
15.根据权利要求9所述的方法,其中,当所述邻近块的预测模式和当前块的预测模式彼此不同时,所述滤波强度被确定为弱滤波强度。
16.根据权利要求9所述的方法,其中,在滤波时使用的样点的所述数量根据当前块的亮度分量和色度分量被独立地确定。
17.一种非暂时性计算机可读的存储介质,其中,所述存储介质存储用于图像解码方法的图像数据,其中,所述图像数据包括关于是否执行滤波的信息,并且在所述图像解码方法中,所述关于是否执行滤波的信息用于确定是否对当前块的边界执行滤波,其中,在所述图像解码方法中,
关于当前块的所述边界的滤波强度和在滤波时使用的样点的数量被确定,
对当前块的所述边界的滤波基于所述滤波强度和在滤波时使用的样点的所述数量被执行,以及
在滤波时使用的样点的所述数量基于当前块的尺寸和与当前块相邻的邻近块的尺寸中的至少一个被确定。
CN201980043787.0A 2018-06-28 2019-06-28 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质 Pending CN112335250A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2018-0074915 2018-06-28
KR20180074915 2018-06-28
KR20190027762 2019-03-11
KR10-2019-0027762 2019-03-11
PCT/KR2019/007923 WO2020005031A1 (ko) 2018-06-28 2019-06-28 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Publications (1)

Publication Number Publication Date
CN112335250A true CN112335250A (zh) 2021-02-05

Family

ID=68987516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980043787.0A Pending CN112335250A (zh) 2018-06-28 2019-06-28 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质

Country Status (3)

Country Link
KR (1) KR20200002011A (zh)
CN (1) CN112335250A (zh)
WO (1) WO2020005031A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210061579A (ko) 2019-11-20 2021-05-28 현대위아 주식회사 컴프레셔 휠 샤프트 어셈블리 및 이를 갖는 터보 차저
EP4128767A4 (en) * 2020-04-01 2024-05-01 HFI Innovation Inc. METHOD AND APPARATUS FOR SIGNALING SLICE PARTITION INFORMATION FOR IMAGE AND VIDEO CODING

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5344238B2 (ja) * 2009-07-31 2013-11-20 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
TWI508534B (zh) * 2010-05-18 2015-11-11 Sony Corp Image processing apparatus and image processing method
US10681371B2 (en) * 2015-06-07 2020-06-09 Lg Electronics Inc. Method and device for performing deblocking filtering
JP2018530259A (ja) * 2015-09-30 2018-10-11 リアルネットワークス・インコーポレイテッド ビデオ処理システムにおける層状非ブロック化フィルタリングおよび方法
KR20180032775A (ko) * 2016-09-23 2018-04-02 세종대학교산학협력단 적응적 블록 분할에 기반한 비디오 신호 처리 방법 및 장치

Also Published As

Publication number Publication date
US20210274223A1 (en) 2021-09-02
KR20200002011A (ko) 2020-01-07
WO2020005031A1 (ko) 2020-01-02

Similar Documents

Publication Publication Date Title
CN111279695B (zh) 用于基于非对称子块的图像编码/解码的方法及装置
CN113273213B (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN111373755A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112740697B (zh) 图像编码/解码方法和装置及存储比特流的记录介质
CN112369022A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112369021A (zh) 用于吞吐量增强的图像编码/解码方法和设备以及存储比特流的记录介质
CN112740680A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113273188B (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN112771862A (zh) 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112740686A (zh) 用于帧内预测模式编码/解码的方法和设备以及用于存储比特流的记录介质
CN112673629A (zh) 视频编码/解码方法和装置以及用于存储比特流的记录介质
CN112585976A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112425167A (zh) 用于图像编码/解码的方法和装置以及其上存储有比特流的记录介质
CN114788286A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN112740694A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN114342372A (zh) 帧内预测模式、以及熵编解码方法和装置
CN112740671A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN113261286A (zh) 用于推导帧内预测模式的方法和设备
CN113906740A (zh) 帧间预测信息编码/解码方法和装置
CN113196758A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113454993A (zh) 用于对视频进行编码/解码的方法和装置以及存储比特流的记录介质
CN112806018A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN113841398A (zh) 一种基于子块划分的图像编码/解码方法及装置
CN113228643A (zh) 图像编码/解码方法和设备以及用于存储比特流的记录介质
CN113228639A (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