CN112740680A - 图像编码/解码方法和设备以及存储比特流的记录介质 - Google Patents

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

Info

Publication number
CN112740680A
CN112740680A CN201980061580.6A CN201980061580A CN112740680A CN 112740680 A CN112740680 A CN 112740680A CN 201980061580 A CN201980061580 A CN 201980061580A CN 112740680 A CN112740680 A CN 112740680A
Authority
CN
China
Prior art keywords
block
parallel
parallel block
information
slice
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
CN201980061580.6A
Other languages
English (en)
Inventor
姜晶媛
李河贤
林成昶
李镇浩
金晖容
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of CN112740680A publication Critical patent/CN112740680A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • H04N19/436Methods 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 using parallelised computational arrangements
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

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

Abstract

提供了一种图像编码/解码方法和设备。根据本发明的图像解码方法可包括以下步骤:推导与包括在当前画面中的条带有关的条带模式信息;基于条带模式信息推导条带标识信息;以及基于条带标识信息对所述条带进行解码。

Description

图像编码/解码方法和设备以及存储比特流的记录介质
技术领域
本发明涉及一种图像编码/解码方法和设备。更具体地,本发明涉及一种对画面执行基于并行块的分区并用信号传送分区信息的图像编码/解码方法和设备。
背景技术
近来,在各种应用中,对诸如高清(HD)或超高清(UHD)图像的高分辨率和质量图像的需求已经增加。随着图像的分辨率和质量的提高,数据量相应地增加。这是当通过现有的诸如有线或无线宽带信道的传输介质来传输图像数据时或者当存储图像数据时传输成本和存储成本增加的原因之一。为了解决随着高分辨率和质量的图像数据而出现的这些问题,需要高效的图像编码/解码技术。
存在各种视频压缩技术,诸如,帧间预测技术:从先前画面或后续画面内的像素值来预测当前画面内的像素值;帧内预测技术:从当前画面的一个区域内的像素值来预测当前画面的另一区域内的像素值;变换和量化技术:压缩残差信号的能量;以及熵编码技术:将短码分配给频繁出现的像素值而将长码分配给较少出现的像素值。
发明内容
技术问题
本发明的一个目的是提供一种具有提高的编码/解码效率的图像编码/解码方法和设备。
本发明的另一目的是提供一种通过以各种形式对画面进行分区来有效地执行编码/解码的图像编码/解码方法和设备。
本发明的另一目的是提供一种执行有效地用信号传送画面的分区信息的图像编码/解码方法和设备。
本发明的另一目的是提供一种存储由本发明的图像编码方法/设备生成的比特流的记录介质。
本发明的另一目的是提供一种存储比特流的记录介质,其中,该比特流由根据本发明的图像解码设备接收、解码和使用以重建图像。
技术方案
根据本发明的实施例的图像解码方法可包括:推导关于当前画面中包括的条带的条带模式信息,基于所述条带模式信息推导条带标识信息,以及基于所述条带标识信息对所述条带进行解码。
在本发明的图像解码方法中,所述条带模式信息可指示包括在当前画面中的所述条带的模式是配置有根据光栅扫描顺序的连续并行块的第一模式,还是配置有形成矩形区域的至少一个子并行块的第二模式。
在本发明的图像解码方法中,可通过画面参数集用信号传送所述条带模式信息。
在本发明的图像解码方法中,当所述条带模式信息指示第一模式时,所述条带标识信息可包括关于包括在所述条带中的第一子并行块的索引信息和关于包括在所述条带中的子并行块的数量的信息。
在本发明的图像解码方法中,可通过条带头用信号传送所述条带标识信息。
在本发明的图像解码方法中,可基于所述条带标识信息来确定包括在所述条带中的第一子并行块的索引,并且可将包括在当前条带中的第n子并行块的索引设置为通过将包括在当前条带中的第(n-1)子并行块的索引加1而获得的值。
在本发明的图像解码方法中,当所述条带模式信息指示第二模式时,所述条带标识信息可包括关于所述条带内的右下方子并行块的索引信息和条带标识符。
在本发明的图像解码方法中,所述条带内的右下方子并行块的索引信息可表示当前条带内的右下方子并行块的索引与前一条带内的右下方子并行块的索引之间的差值。
在本发明的图像解码方法中,可通过使用关于所述差值的绝对值的信息和关于所述差值的符号信息来用信号传送所述差值。
在本发明的图像解码方法中,可通过画面参数集来用信号传送关于所述差值的绝对值的信息和关于所述差值的符号信息。
根据本发明的另一实施例的图像编码方法可包括:确定关于包括在当前画面中的条带的条带模式并且对指示所确定的条带模式的条带模式信息进行编码,基于所述条带模式确定条带标识信息并且对所确定的条带标识信息进行编码,以及基于所述条带标识信息对所述条带进行编码。
在本发明的图像编码方法中,所述条带模式信息可指示当前画面中包括的所述条带的模式是配置有根据光栅扫描顺序的连续并行块的第一模式,还是配置有形成矩形区域的至少一个子并行块的第二模式。
在本发明的图像编码方法中,可通过画面参数集用信号传送所述条带模式信息。
在本发明的图像编码方法中,当所述条带模式是第一模式时,所述条带标识信息可包括关于包括在所述条带中的第一子并行块的索引信息和关于包括在所述条带中的子并行块的数量的信息。
在本发明的图像编码方法中,可通过条带头用信号传送所述条带标识信息。
在本发明的图像编码方法中,可使用所述条带标识信息对包括在所述条带中的第一子并行块的索引进行编码,并且包括在当前条带中的第n子并行块的索引可以是通过将包括在当前条带中的第(n-1)子并行块的索引加1而获得的值。
在本发明的图像编码方法中,当所述条带模式是第二模式时,所述条带标识信息可包括关于所述条带内的右下方子并行块的索引信息和条带标识符。
在本发明的图像编码方法中,所述条带内的右下方子并行块的索引信息可表示当前条带内的右下方子并行块的索引与前一条带内的右下方子并行块的索引之间的差值。
在本发明的图像编码方法中,可通过使用关于所述差值的绝对值的信息和关于所述差值的符号信息来用信号传送所述差值。
根据本发明的另一实施例的记录介质可以是存储由图像解码设备接收、解码并用于重建图像的比特流的非暂时性计算机可读记录介质,其中,所述比特流可包括关于当前画面中包括的条带的条带模式信息和条带标识信息,所述条带模式信息可用于推导所述条带标识信息,并且所述条带标识信息可用于对所述条带进行解码。
根据本发明的另一个实施例的计算机可读记录介质可存储由根据本发明的图像编码方法和/或设备生成的比特流。
有益效果
根据本发明,可提供一种具有提高的编码/解码效率的图像编码/解码方法和设备。
此外,根据本发明,可提供一种通过以各种形式对画面进行分区来有效地执行编码/解码的图像编码/解码方法和设备。
此外,根据本发明,可提供一种执行有效地用信号传送画面的分区信息的图像编码/解码方法和设备。
此外,根据本发明,可提供一种存储由本发明的图像编码方法/设备生成的比特流的记录介质。
此外,根据本发明,可提供一种存储由根据本发明的图像解码设备接收、解码和使用以重建图像的比特流的记录介质。
附图说明
图1是示出根据实施例的应用了本发明的编码设备的配置的框图。
图2是示出根据实施例的应用了本发明的解码设备的配置的框图。
图3是示意性地示出当对图像进行编码和解码时图像的分区结构的示图。
图4是示出帧内预测处理的示图。
图5是示出帧间预测处理的实施例的示图。
图6是示出变换和量化处理的示图。
图7是示出能够用于帧内预测的参考样点的示图。
图8是示出构成画面的并行块、并行块组和条带的示例的示图。
图9是示出构成画面的并行块、并行块组和条带的另一示例的示图。
图10是示出当执行编码和解码时画面内的CTU的绝对位置的标识符的示例的示图。
图11是分配并行块内的CTU的地址的示例的示图。
图12是示出将并行块CTU地址转换为画面CTU地址的处理的示图。
图13是示出在并行块内分配CTU地址的另一示例的示图。
图14是在并行块组内分配并行块标识符的示例的示图。
图15是示出在并行块内分配CTU地址的另一示例的示图。
图16是示出画面CTU地址的示例的示图。
图17是示出利用具有相同尺寸的并行块来配置单个画面的示例的示图。
图18是示出用信号传送并行块相关信息的示例的示图。
图19是示出用信号传送并行块相关信息的另一示例的示图。
图20是示出利用具有不同水平长度和垂直长度的并行块来配置画面的示例的示图。
图21是示出用信号传送并行块相关信息的又一示例的示图。
图22是示出将画面分区为具有各种尺寸的并行块的示例的示图。
图23是示出根据图22的示例的用信号传送并行块相关信息的示例的示图。
图24是示出将画面分区为具有各种尺寸的并行块的另一示例的示图。
图25是示出根据图24的示例的用信号传送并行块相关信息的示例的示图。
图26是示出将画面分区为具有各种尺寸的并行块的另一示例的示图。
图27是示出用信号传送画面中包括的每个并行块的水平长度和垂直长度的示例的示图。
图28是示出用信号传送画面中包括的每个并行块的左上方位置和右下方位置的示例的示图。
图29是示出用信号传送画面中包括的每个并行块的左上方位置以及并行块的水平长度和垂直长度的示例的示图。
图30是示出用信号传送并行块相关信息的另一示例的示图。
图31是示出用信号传送并行块相关信息的又一示例的示图。
图32是示出将画面分区为子并行块的示例的示图。
图33是示出基于图32的子并行块来配置并行块的示例的示图。
图34是示出用信号传送子并行块的尺寸和位置的示例的示图。
图35是示出用信号传送子并行块的尺寸和位置的另一示例的示图。
图36是示出对并行块边界执行编码/解码的处理的示图。
图37是示出在对并行块边界执行填充/扩展之后执行编码的示例的示图。
图38是示出在六面体内布置呈球体形式的360度图像的示例的示图。
图39是示出对图38的六面体的每个面执行投影并展开六面体的示例的示图。
图40是示出执行将图39的示例打包成2D图像的示例的示图。
具体实施方式
可对本发明做出各种修改,并且存在本发明的各种实施例,其中,现在将参照附图提供并详细描述本发明的各种实施例的示例。然而,尽管示例性实施例可被解释为包括本发明的技术构思和技术范围内的所有修改、等同形式或替换形式,但本发明不限于此。相似的参考标号指在各方面相同或相似的功能。在附图中,为了清楚起见,元件的形状和尺寸可被夸大。在本发明的以下详细描述中,对通过图示的方式示出可实施本发明的具体实施例的附图进行参照。这些实施例被足够详细地描述以使本领域技术人员能够实施本公开。应该理解,本公开的各种实施例尽管不同,但不必是相互排他的。例如,在不脱离本公开的精神和范围的情况下,这里结合一个实施例描述的特定特征、结构和特性可在其它实施例中被实施。此外,应该理解,在不脱离本公开的精神和范围的情况下,每个公开的实施例内的各个元件的位置或布置可被修改。因此,以下详细描述不应以限制的含义来理解,并且本公开的范围仅由所附权利要求(在合适的解释的情况下,还连同权利要求所要求保护的等同物的全部范围)来限定。
在说明书中使用的术语“第一”、“第二”等可被用于描述各种组件,但这些组件并不被解释为受限于这些术语。这些术语仅用于将一个组件与其它组件区分开。例如,在不脱离本发明的范围的情况下,“第一”组件可被称为“第二”组件,并且“第二”组件也可类似地被称为“第一”组件。术语“和/或”包括多个项的组合或者是多个术语中的任意一个。
将理解的是,在本说明书中,当元件仅被称为“连接到”或“结合到”另一元件而不是“直接连接到”或“直接结合到”另一元件时,所述元件可“直接连接到”或“直接结合到”所述另一元件,或者在所述元件与所述另一元件之间具有其他元件的情况下连接到或结合到所述另一元件。相反,应该理解,当元件被称为“直接结合”或“直接连接”到另一元件时,不存在中间元件。
此外,在本发明的实施例中示出的组成部件被独立地示出,以呈现彼此不同的特性功能。因此,这并不意味着每个组成部件以单独的硬件或软件的组成单元被组成。换句话说,为了方便,每个组成部件包括枚举的组成部件中的每一个。因此,每个组成部件中的至少两个组成部件可被组合形成一个组成部件,或者一个组成部件可被划分为用于执行每个功能的多个组成部件。在没有脱离本发明的本质的情况下,每个组成部件被组合的实施例以及一个组成部件被划分的实施例也被包括在本发明的范围中。
在本说明书中使用的术语仅用于描述具体实施例,而不旨在限制本发明。以单数使用的表达包括复数表达,除非它在上下文中具有明显不同的含义。在本说明书中,将理解,诸如“包括……的”、“具有……的”等的术语旨在指明存在说明书中所公开的特征、数量、步骤、动作、元件、部件、或其组合,而并不旨在排除可存在或者可添加一个或更多个其它特征、数量、步骤、动作、元件、部件、或其组合的可能性。换句话说,当特定元件被称为“被包括”时,除相应元件以外的元件并不被排除,而是附加的元件可被包括在本发明的实施例中或者是本发明的范围中。
此外,一些组成元件可以不是执行本发明的必要功能的不可缺的组成元件,而是仅提升其性能的可选组成元件。可通过仅包括用于实施本发明的实质的不可缺的组成部件而排除在提升性能时使用的组成元件来实施本发明。仅包括不可缺的组成元件而排除仅在提升性能时使用的可选组成元件的结构也被包括在本发明的范围中。
在下文中,将参照附图详细描述本发明的实施例。在描述本发明的示例性实施例时,因为公知功能或结构会不必要地模糊对本发明的理解,所以将不详细描述他们。附图中的相同的组成元件由相同的参考标号来表示,并且对相同元件的重复描述将被省略。
在下文中,图像可指构成视频的画面,或者可指视频本身。例如,“对图像进行编码或解码或者进行编码和解码两者”可指“对运动画面进行编码或解码或者进行编码和解码两者”,并且可指“对运动画面的图像中的一个图像进行编码或解码或者进行编码和解码两者”。
在下文中,术语“运动画面”和“视频”可被用作相同的含义并且可彼此替换。
在下文中,目标图像可以是作为编码目标的编码目标图像和/或作为解码目标的解码目标图像。此外,目标图像可以是输入到编码设备的输入图像、以及输入到解码设备的输入图像。这里,目标图像可与当前图像具有相同的含义。
在下文中,术语“图像”、“画面”、“帧”和“屏幕”可被用作相同的含义并且彼此替换。
在下文中,目标块可以是作为编码目标的编码目标块和/或作为解码目标的解码目标块。此外,目标块可以是作为当前编码和/或解码的目标的当前块。例如,术语“目标块”和“当前块”可被用作相同的含义并且彼此替换。
在下文中,术语“块”和“单元”可被用作相同的含义并且彼此替换。或者“块”可表示特定单元。
在下文中,术语“区域”和“片段”可彼此替换。
在下文中,特定信号可以是表示特定块的信号。例如,原始信号可以是表示目标块的信号。预测信号可以是表示预测块的信号。残差信号可以是表示残差块的信号。
在实施例中,特定信息、数据、标志、索引、元素和属性等中的每一个可具有值。等于“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)或参数集中,并且与自适应参数集标识符相应的自适应参数集可用于子画面。
关于自适应参数集标识符的信息可被包括在并行块的头或参数集中,并且与自适应参数集标识符相应的自适应参数集可用于并行块。
关于自适应参数集标识符的信息可被包括在分块的头中,并且与自适应参数集标识符相应的自适应参数集可用于分块。
画面可被分区为一个或更多个并行块行和一个或更多个并行块列。
子画面可被分区为画面内的一个或更多个并行块行和一个或更多个并行块列。子画面可以是画面内具有矩形/正方形形状的区域,并且可包括一个或更多个CTU。另外,至少一个或更多个并行块/分块/条带可被包括在一个子画面内。
并行块可以是画面内具有矩形/正方形形状的区域,并且可包括一个或更多个CTU。另外,并行块可被分区为一个或更多个分块。
分块可表示并行块内的一个或更多个CTU行。并行块可被分区为一个或更多个分块,并且每个分块可具有至少一个或更多个CTU行。不被分区为两个或更多个分块的并行块可表示分块。
条带可包括画面内的一个或更多个并行块,并且可包括并行块内的一个或更多个分块。
解析:可表示通过执行熵解码来确定语法元素的值,或者可表示熵解码本身。
符号:可表示编码/解码目标单元的语法元素、编码参数和变换系数值中的至少一个。此外,符号可表示熵编码目标或熵解码结果。
预测模式:可以是指示利用帧内预测被编码/解码的模式或利用帧间预测被编码/解码的模式的信息。
预测单元:可表示当执行预测(诸如帧间预测、帧内预测、帧间补偿、帧内补偿和运动补偿)时的基本单元。单个预测单元可被分区为具有更小尺寸的多个分区,或者可被分区为多个下层预测单元。多个分区可以是在执行预测或补偿时的基本单元。通过对预测单元进行划分而生成的分区也可以是预测单元。
预测单元分区:可表示通过对预测单元进行分区而获得的形状。
参考画面列表可指包括用于帧间预测或运动补偿的一个或更多个参考画面的列表。存在若干个可使用的参考画面列表的类型,包括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模式实施方案的存储器消耗和装置复杂度。
在下文中,将参照附图描述根据本发明的对画面进行分区的方法的各种实施例。
可将单个画面分区为至少一个矩形区域。换句话说,单个画面可配置有至少一个矩形区域。构成单个画面的单个矩形区域可与另一矩形部分重叠。这里,构成矩形区域的部分像素可重叠。矩形区域可被称为并行块。
除了环内滤波外,可对每个并行块独立地进行编码和解码。通过使用上述特征,当编码器和解码器变得复杂时,并行块可用于所需的并行处理。可选地,并行块可用于提供画面内的感兴趣区域(ROI)。
可通过在水平方向和垂直方向上以相同的间隔对画面进行分区来获得并行块。这里,画面内的并行块可具有相同尺寸(宽度和高度)。如上所述的将画面分区为具有相同尺寸的并行块在稍后将被描述的各种方面中不是高效的。
当分别并行处理构成画面的多个区域时,对于画面内的每个区域,编码和解码的复杂度可能不同。例如,在具有复杂纹理的区域或画面内,可为被分类为重要区域的区域分配大比特率。上述区域可比其他区域增加更多的编码和解码时间。
在上述情况下,当画面被分区为具有相同尺寸的并行块并且对其执行并行处理时,编码和解码时间针对每个并行块而变化。因此,会降低并行处理的效率。因此,为了使并行处理的效率最大化,优选的是,根据画面内的每个区域的特征,使针对每个区域的并行块的尺寸不同。换句话说,具有各种尺寸的并行块存在于同一画面内。
当提供ROI时,画面内的ROI的尺寸可以不是恒定的。另外,在编码效率方面,优选地将画面内除ROI之外的区域分区为尽可能少的并行块。因此,为了提供高效ROI,可将画面分区为针对画面内的每个区域具有各种尺寸的并行块。
此外,可存在在同一画面内提供具有各种尺寸的并行块的各种方法,并且还可存在灵活地提供具有各种尺寸的并行块的各种方法。本发明提出了用于提高执行并行处理和提供ROI的效率的各种方法。
单个画面可配置有单个条带或至少一个并行块组。
基本上,除环内滤波外,可对包括在并行块组中的每个并行块独立地进行编码和解码。然而,当画面被分区为许多并行块时,编码效率可能降低。为了解决上述问题,对并行块组中包括的每个并行块的预测可通过参考同一并行块组内的另一并行块的区域来执行。
例如,当对包括在并行块组中的并行块进行编码和解码时,可通过使用包括在同一并行块组中的重建样点的值来执行帧内预测。这里,属于同一并行块组内的另一并行块的重建样点也可用于对当前并行块的预测。
除了帧内预测外,包括在同一并行块组中的另一并行块的信息可用于执行帧间预测、环内滤波、熵编码/解码。这里,可通过条带头、并行块组头和参数集(诸如画面参数集、序列参数集和画面头参数集)来用信号传送表示是否在并行块之间独立地执行编码和解码的指示符(标志、索引等)。可选地,可通过条带头、并行块组头和参数集(诸如画面参数集、序列参数集和画面头参数集)来用信号传送表示是否执行帧内预测的指示符、表示是否执行帧间预测的指示符、表示是否将环内滤波器应用于并行块边界的指示符、表示是否将熵编码的初始化应用于每个并行块的指示符等。
当执行熵编码(CABAC)的初始化(例如,上下文初始化)时,例如,当不对每个并行块执行熵编码的初始化时(也就是说,当用信号传送表示是否将熵编码的初始化应用于每个并行块的指示符指示不将熵编码的初始化应用于每个并行块时),用于对属于特定并行块组的第N并行块进行熵编码的初始值可被设置为属于相应并行块组的第(N-1)并行块或先前编码的并行块的一个特定CTU的熵状态。
此外,除了环内滤波外,可对每个并行块组独立地执行编码和解码。这里,可通过条带头、并行块组头、参数集(诸如画面参数集、序列参数集和画面头参数集)来用信号传送指示是否将环内滤波器应用于并行块组的边界的指示符。
单个条带(或并行块组)可配置有至少一个并行块。这里,单个条带(或并行块组)可以是独立的传输单元。例如,可基于单个NALU(类似于HEVC或H.264中的NAL单元)来执行传输。因此,单个NALU可包括单个条带(或并行块组)。
当至少两个并行块被包括在条带(或并行块组)中时,相应的条带(或并行块组)的头可在比特流中包括表示每个并行块的编码信息的起始点的信息。因此,可通过经由条带(或并行块组)的头获得包括在相应条带(或并行块组)的数据部分(有效载荷)中的每个并行块的编码信息来独立地执行解码,并且可仅对特定ROI执行解码。这里,并行块的编码信息可以是关于重建包括在相应并行块中的CTU的像素值所需的预测方法、帧内预测、帧间预测、首次变换、二次变换、量化、环内滤波等中的至少一个的信息。
可选地,单个条带可配置有至少一个并行块组。
当单个条带配置有至少一个并行块组时,单独的传输单元可以是条带。例如,单个NALU可包括单个条带。可选地,当单个条带包括至少两个并行块组时,条带头可在比特流中包括每个并行块组的编码信息开始的起始点。可选地,当单个并行块组包括至少两个并行块时,其相应的条带头还可在比特流中包括每个并行块的编码信息开始的起始点。
当单个画面配置有至少两个并行块组时,并行块组之间的顺序可以是用信号传送并行块组的顺序或并行块组的编码顺序和解码顺序,并且顺序可以是预定义顺序。预定义顺序可以是例如光栅扫描顺序。
可根据用信号传送并行块组的顺序或并行块组的编码顺序和解码顺序来确定并行块组的标识符。例如,用信号传送并行块组的顺序或并行块组的编码顺序和解码顺序可与并行块组的标识符相同。
包括在并行块组中的并行块之间的顺序可以是用信号传送并行块组内的并行块的顺序或并行块的编码顺序和解码顺序。顺序可以是预定义顺序,并且预定义顺序可以是例如光栅扫描顺序。
可根据用信号传送并行块的顺序或并行块组内的并行块的编码顺序和解码顺序来确定并行块的标识符。
包括在并行块中的CTU之间的顺序可以是用信号传送CTU的顺序或CTU的编码顺序和解码顺序。顺序可以是预定义顺序,并且预定义顺序可以是例如光栅扫描顺序。
可根据用信号传送CTU的顺序或并行块内的CTU的编码顺序和解码顺序来确定CTU的地址(标识符、索引)。
因此,当存在并行块组和并行块时,CTU地址(标识符)的值从画面的第一并行块组的第一并行块的左上方CTU开始按照光栅扫描顺序到相应并行块的最后一个CTU增大。随后,CTU地址的值可从相应并行块组的第二并行块的第一CTU(左上方CTU)开始按照光栅扫描顺序增大。CTU地址的值重复增大,直到相应并行块组的最后一个并行块的最后一个CTU。随后,CTU地址的值可从第二并行块组的第一并行块的左上方CTU开始按照光栅扫描顺序增大。CTU地址的值可继续增大,直到最后一个并行块组的最后一个并行块。
图8是示出构成画面的并行块、并行块组和条带的示例的示图。
图9是示出构成画面的并行块、并行块组和条带的另一示例的示图。
如图8中所示,条带(或并行块组)可包括画面内呈光栅扫描顺序的并行块。可选地,如图9中所示,条带(或并行块组)可配置有画面内的任意矩形区域。
关于构成画面的条带(或并行块组)是否被配置为图8或图9的示例的信息可作为条带(或并行块组)模式信息被用信号传送。这里,条带(或并行块组)模式信息可通过条带的父级(例如,画面参数集或序列参数集)被用信号传送。
如图8中所示,当条带(或并行块组)包括画面内呈光栅扫描顺序的并行块时,可基于用信号传送的关于以下内容中的至少一个的信息来推导或指定第N条带(或并行块组)中包括的并行块或CTU。这里,N可以是任意整数值。在本说明书中,并行块可包括子并行块。因此,例如,在下面用信号传送的信息中,可用子并行块替换并行块。
-可用信号传送表示第一个被包括的并行块(第一并行块)的标识符(指示符或索引)和表示最后一个被包括的并行块(最后一个并行块)的标识符(指示符或索引)。相应的条带(或并行块组)可包括从由第一并行块指示符指示的并行块到由最后一个并行块指示符指示的并行块的所有并行块。
-可用信号传送第一个被包括的CTU(第一个CTU)的地址信息(标识符、索引或指示符)和最后一个被包括的CTU(最后一个CTU)的地址信息。包括在相应条带(或并行块组)中的CTU可以是从第一个CTU到最后一个CTU的所有CTU。
-可用信号传送最后一个被包括的CTU(最后一个CTU)的地址信息。包括在相应条带(或并行块组)中的CTU可以是从在前一条带(或并行块组)中最后一个被包括的CTU之后的CTU到所述最后一个CTU的CTU。当相应条带(或并行块组)对应于画面的第一条带(或并行块组)时,包括在相应条带(或并行块组)中的CTU可以是从相应画面的第一CTU到最后一个CTU的CTU。
-可用信号传送关于表示第一个被包括的并行块的标识符(指示符或索引)和包括在相应条带(或并行块组)中的并行块的数量的信息。包括在相应条带(或并行块组)中的并行块可从第一并行块到由第M标识符(指示符或索引)指示的并行块。这里,第M标识符可被推导为(第一并行块的标识符(指示符或索引)+(并行块组中包括的并行块的数量)-1)。可基于用信号传送的标识符来重建条带(或并行块组)内的第一并行块的标识符。可通过将恰好前一并行块的标识符增加1来获得之后条带(或并行块组)的并行块的标识符。
-可用信号传送表示最后一个被包括的并行块的标识符(指示符或索引)。在相应条带(或并行块组)中第一个被包括的并行块的标识符可被推导为(在前一条带(或并行块组)中最后一个被包括的并行块的标识符(指示符或索引)+1)。包括在相应条带(或并行块组)中的并行块可从第一并行块到最后一个并行块。这里,当相应条带(或并行块组)是相应画面的第一条带(或并行块组)时,相应条带(或并行块组)的第一并行块可以是相应画面的第一并行块。
-可用信号传送关于包括在相应条带(或并行块组)中的并行块的数量的信息。在相应条带(或并行块组)中第一个被包括的并行块的标识符可被推导为(在前一条带(或并行块组)中最后一个被包括的并行块的标识符(指示符或索引)+1)。包括在相应条带(或并行块组)中的并行块可从第一并行块到由第M标识符(指示符或索引)指示的并行块。这里,第M标识符可被推导为(第一并行块的标识符(指示符或索引)+(并行块组中包括的并行块的数量)-1)。另外,当相应条带(或并行块组)是相应画面的第一条带(或并行块组)时,相应条带(或并行块组)的第一并行块可以是相应并行块的第一并行块。
如图9中所示,当条带(或并行块组)是画面内的任意矩形区域时,可基于用信号传送的关于以下内容中的至少一个的信息来识别包括在条带(或并行块组)中的并行块或CTU。在本说明书中,并行块可包括子并行块。因此,例如,在下面用信号传送的信息中,可用子并行块替换并行块。
-可用信号传送相应条带(或并行块组)的左上方并行块的标识符和右下方并行块的标识符。
-可用信号传送相应条带(或并行块组)的左上方CTU的地址(标识符或索引)和右下方CTU的地址。
-可用信号传送相应条带(或并行块组)的左上方并行块的标识符或CTU地址、以及关于相应条带(或并行块组)的水平长度和垂直长度的信息。
-可用信号传送关于相应条带(或并行块组)的水平长度和垂直长度的信息。这里,可从前一条带(或并行块组)的位置信息来推导相应条带(或并行块组)的左上方位置信息。然而,当相应条带(或并行块组)是画面的第一条带(或并行块组)时,相应条带(或并行块组)的第一并行块或第一CTU可以是画面的第一并行块或CTU。
可选地,如图9中所示,当条带(或并行块组)是画面内的任意矩形区域时,可基于用信号传送的关于以下内容中的至少一个的信息来推导或识别包括在第N条带(或并行块组)中的并行块或CTU。
-可用信号传送表示位于相应条带(或并行块组)的左上方的并行块的标识符(指示符或索引)。
-可用信号传送表示位于相应条带(或并行块组)的右下方的并行块的标识符(指示符或索引)。
-可用信号传送位于相应条带(或并行块组)的左上方的CTU的地址(标识符、索引或指示符)。也就是说,可用信号传送在条带(或并行块组)中第一个被包括的并行块的第一CTU的地址。
-可用信号传送位于相应条带(或并行块组)的右下方的CTU的地址。
-可用信号传送关于相应条带(或并行块组)的水平长度和垂直长度的信息。这里,关于水平长度和垂直长度的信息可指在水平方向或垂直方向中的每一个上包括的并行块的数量,或可指CTU的数量。
-可用信号传送条带(或并行块组)的预设位置处的CTU的地址。
在以上示例中,可通过使用各种方法用信号传送关于左上方并行块的位置或右下方并行块的位置的信息(标识符、指示符或索引)。例如,可直接用信号传送关于左上方并行块的位置或右下方并行块的位置的信息。可选地,该信息可通过使用关于前一条带(或并行块组)的并行块的位置的信息与关于当前条带(或并行块组)的并行块的位置的信息之间的差值被用信号传送。例如,可用信号传送前一条带(或并行块组)的右下方并行块的索引与当前条带(或并行块组)的右下方并行块的索引之间的差值。这里,可通过使用关于相应差值的绝对值和相应差值的符号的信息来用信号传送所述差值。这里,可直接用信号传送第一条带(或并行块组)的右下方并行块的索引,并且可通过使用上述差值用信号传送之后条带(或并行块组)的右下方并行块的索引。因此,可通过使用用信号传送的差值与前一条带(或并行块组)的右下方并行块的索引来推导在第二条带(或并行块组)之后的条带(或并行块组)的右下方并行块的索引。
如图9中所示,当条带(或并行块组)是画面内的任意矩形区域时,可通过条带头用信号传送用于标识包括在画面中的每一条带的条带标识符。当对条带进行解码时,可通过使用包括在相应条带头中的条带标识符来推导包括在相应条带中的并行块的数量、相应条带的左上方并行块的标识符、相应条带的右下方并行块的标识符等。例如,可预先推导关于条带中包括的并行块的数量、条带的左上方并行块的标识符、条带的右下方并行块的标识符等的信息作为针对当前画面的表格形式的信息。随后,当对包括在当前画面中的每个条带进行解码时,可通过使用条带标识符参考表格形式的信息来推导与上述相应条带信息相关的信息。
与单个画面配置有单个并行块组和单个并行块的情况相比,当单个画面被分区为至少一个并行块组并且至少两个并行块被包括在并行块组中时,或当单个画面被分区为至少两个并行块组并且至少一个并行块被包括在并行块组内时,对画面内的CTU进行编码的顺序可变化。可选地,当多个并行块组和多个并行块中的至少一个存在于单个画面内时,对画面内的CTU进行编码的顺序可变化。
因此,当根据编码顺序分配包括在并行块中的CTU的地址(标识符或索引)时,相应CTU的地址变为根据并行块的尺寸和形状以及并行块组的尺寸和形状中的至少一个而变化的相对地址。因此,需要一种识别画面内的相应CTU的位置的方法。例如,可使用以下方法之一。CTU的地址可以是亮度分量(亮度样点)的CTB地址或色度分量(色度样点、Cb/Cr)的CTB地址。
例如,并行块内的CTU的地址可由表示CTU在用于执行编码/解码的画面内的位置(绝对位置)的标识符和表示CTU在并行块内的位置(相对位置)的标识符来表示。可将表示绝对位置的标识符转换为表示CTU的相对位置的标识符。另外,例如,可将表示CTU的相对位置的标识符转换成表示CTU的绝对位置的标识符。
图10是示出当执行编码和解码时CTU在画面内的绝对位置的标识符的示例的示图。图10所示的绝对位置的标识符可与画面存在单个并行块组和单个并行块的情况下的CTU的地址(相对地址)相同。
当并行块组配置有图8中所示的结构时,可如下识别包括在画面内的并行块和特定并行块中的CTU的地址。
-以光栅扫描顺序识别画面内的并行块,并且可分配诸如并行块#1、并行块#2、并行块#3…的并行块标识符。
-CTU的地址可在并行块内按照光栅扫描顺序增加。另外,可根据并行块之间的编码/解码顺序(例如,光栅扫描顺序)来确定并行块之间的CTU顺序。
图11是分配并行块内的CTU的地址的示例的示图。
例如,图11是示出包括在图8的并行块#1、并行块#2和并行块#3中的CTU的地址的示图。如图11中所示,CTU的地址在每一并行块内按照光栅扫描顺序增加。另外,并行块之间的编码/解码顺序是并行块#1、并行块#2和并行块#3的顺序。因此,并行块#1包括CTU地址#1到#28,并行块#2包括CTU地址#29到#56,并且并行块#3包括CTU地址#57到#84。
图11中所示的并行块内的CTU地址(在下文中,被称为“并行块CTU地址”)可被转换为表示图10中所示的CTU在画面内的绝对位置的标识符(在下文中,被称为“画面CTU地址”)。
图12是示出将并行块CTU地址转换为画面CTU地址的处理的示图。
例如,可将包括在图11的并行块#1和并行块#2中的并行块CTU地址转换为图12的画面CTU地址,然后可执行编码和解码。
在下文中,将描述将画面CTU地址转换为并行块CTU地址的实施例。在本说明书中,并行块可包括子并行块,并且并行块可用子并行块替换。
首先,可获得当前CTU在画面内的x坐标和y坐标。画面可被分区为CTU行和CTU列,并且x坐标可指示当前CTU所属的CTU列的地址,并且y坐标可指示当前CTU所属的CTU行的地址。例如,x坐标可以是通过将当前CTU的画面CTU地址除以与当前画面的水平长度(基于CTU的水平长度(基于CTU的宽度))相应的CTU的数量而获得的余数。另外,y坐标可以是通过将当前CTU的画面CTU地址除以当前画面的基于CTU的水平长度而获得的商。例如,在图10中,在当前CTU的画面CTU地址为#(2N+4)时,可将x坐标获得为4,并且可将y坐标获得为2。
在获得当前CTU在画面内的x坐标和y坐标之后,可基于相应坐标确定当前CTU所属的当前并行块。为此,例如,并行块的起始CTU列的地址、并行块的基于CTU的水平长度、并行块的起始CTU行的地址和并行块的基于CTU的垂直长度(基于CTU的高度)可用于画面内的每个并行块。详细地,首先,画面内的第一并行块(索引0)可被设置为目标并行块。随后,可确定是否满足在当前CTU在画面内的x坐标小于(目标并行块的起始CTU列+目标并行块的基于CTU的水平长度)时变为真的第一条件,或者是否满足在当前CTU在画面内的y坐标小于(目标并行块的起始CTU行+基于CTU的垂直长度)时变为真的第二条件。当不满足第一条件和第二条件中的至少一个时,根据光栅扫描顺序将后续并行块(索引+=1)设置为目标并行块,并且可确定是否满足第一条件和第二条件。可重复上述过程,直到满足第一条件和第二条件两者。当满足第一条件和第二条件两者时,可将目标并行块(索引n)确定为当前CTU所属的当前并行块。
最后,可获得针对当前CTU的画面CTU地址的并行块CTU地址。详细地说,首先,可计算画面内的从第一并行块(索引0)到当前并行块(索引n)的恰好前一并行块(索引n-1)的并行块中所包括的CTU的数量。例如,可通过并行块的基于CTU的水平长度与并行块的基于CTU的垂直长度的乘积来计算包括在并行块中的CTU的数量。因此,从索引0到索引n-1,通过使索引增加1,可计算在相应索引的并行块中包括的CTU的数量,并且可累加及求和计算出的值。累加的值可被推导为在画面内的从第一并行块(索引0)到恰好前一并行块(索引n-1)的并行块中所包括的CTU的数量(直到恰好前一并行块的CTU的数量)。随后,可获得当前并行块内的按照光栅扫描顺序在当前CTU之前的CTU的数量。例如,可通过将通过从当前CTU的y坐标减去当前并行块的起始CTU行的地址而获得的值乘以当前并行块的基于CTU的水平长度来计算当前并行块内的直到恰好在包括当前CTU的当前CTU行之前的行为止的CTU的数量(CTU的第一数量)。另外,通过从当前CTU的x坐标减去当前并行块的起始CTU列的地址而获得的值相应于当前CTU行内的直到恰好在包括当前CTU的当前CTU列之前的列为止的CTU的数量(CTU的第二数量)。通过将CTU的第一数量与CTU的第二数量相加而获得的值可被确定为当前并行块内的按照光栅扫描顺序在当前CTU之前的CTU的数量(当前并行块内的先前CTU的数量)。随后,可通过将直到恰好前一并行块的CTU的数量与当前并行块内的先前CTU的数量相加来获得针对当前CTU的画面CTU地址的并行块CTU地址。
可通过从画面内的第一CTU(画面CTU地址=0)到最后一个CTU将画面CTU地址增加1来重复上述处理。通过以上处理,可生成针对包括在画面内的所有CTU的与画面CTU地址和并行块CTU地址相关联的信息。例如,该信息可以是查找表的形式(第一地址转换查找表),其中,在该查找表中,通过使用画面CTU地址作为索引来获得并行块CTU地址。
在下文中,将描述将并行块CTU地址转换为画面CTU地址的方法的实施例。在本说明书中,并行块可包括子并行块。在下文中,可用子并行块替换并行块。
可通过使用上面生成的第一地址转换查找表将并行块CTU地址转换为画面CTU地址。例如,可通过使用第一地址转换查找表来获得针对特定画面CTU地址的并行块CTU地址。换句话说,所获得的并行块CTU地址相应于特定画面CTU地址。
可针对从画面内的第一CTU(画面CTU地址=0)到最后一个CTU的CTU,通过将画面CTU地址增加1来重复以上处理。通过以上处理,可针对包括在画面中的所有CTU生成与并行块CTU地址和画面CTU地址相关联的信息。例如,该信息可以是查找表的形式(第二地址转换查找表),其中,在该查找表中,通过使用并行块CTU地址作为索引来获得画面CTU地址。
在下文中,将描述通过使用相应CTU的并行块CTU地址来识别包括CTU的并行块的实施例。在本说明书中,并行块可包括子并行块。在下文中,可用子并行块替换并行块。这里,可通过获得并行块的标识符来执行识别并行块。
首先,对于从索引n的并行块的第一行到最后一行的每一行,可通过从第一列移动到最后一列来计算相应并行块中包括的CTU的画面CTU地址。例如,并行块的起始CTU行的地址可用作相应并行块的第一行的地址。另外,(起始CTU行的地址+并行块的基于CTU的垂直长度-1)可用作相应并行块的最后一行的地址。类似地,并行块的起始CTU列的地址可用作相应并行块的第一列的地址。另外,(起始CTU列的地址+并行块的基于CTU的水平长度-1)可用作相应并行块的最后一列的地址。相应并行块内的CTU可存在于行地址和列地址的范围内。当相应并行块中包括的CTU的CTU列的地址为x并且相应并行块中包括的CTU的CTU行的地址为y时,可通过(画面的基于CTU的水平长度×(y-1)+x)来计算CTU的画面CTU地址。
随后,可将计算的画面CTU地址转换为并行块CTU地址。例如,可通过使用上述第一地址转换查找表来获得相应CTU的并行块CTU地址。换句话说,具有所获得的并行块CTU地址的CTU可被包括在索引为n的并行块中。
可针对画面内的从第一并行块(索引=0)到最后一个并行块的并行块,通过将索引增加1来重复上述处理。通过上述处理,可针对画面中包括的所有并行块生成与并行块CTU地址和并行块标识符(索引)相关联的信息。例如,该信息可以是查找表的形式(第三并行块标识查找表),其中,在该查找表中,通过使用并行块CTU地址作为索引来获得并行块标识符。
在下文中,将描述识别并行块中包括的第一CTU的并行块CTU地址的实施例。在本说明书中,并行块可包括子并行块。在下文中,可用子并行块替换并行块。
画面内的第一并行块(并行块标识符=0)可被设置为初始目标并行块,并且初始并行块CTU地址可被设置为0。
首先,可将目标并行块的第一CTU的并行块CTU地址设置为当前并行块CTU地址。
随后,可识别目标并行块CTU内的最后一个CTU的并行块CTU地址。例如,可通过将并行块CTU地址增加1来确定相应并行块CTU地址的CTU和后续并行块CTU地址的CTU是否属于彼此不同的并行块。为此,例如,可使用第三并行块标识查找表。当CTU属于同一并行块时,并行块CTU地址可增加1,并且可重复上述确定。当CTU属于彼此不同的并行块时,相应的并行块CTU地址可被识别为目标并行块内的最后一个CTU的并行块CTU地址。可选地,当相应的并行块CTU地址指示画面内的最后一个并行块时,相应的并行块CTU地址可被识别为目标并行块CTU内的最后一个CTU的并行块CTU地址。
在最后一个并行块CTU地址之后的并行块CTU地址可被设置为后续目标并行块的第一CTU的并行块CTU地址。当不存在后续并行块时,可省略上述处理。
可针对画面内的所有并行块执行上述处理。通过以上处理,可针对画面内包括的所有并行块生成与相应并行块内的第一CTU的并行块标识符(索引)和并行块CTU地址相关联的信息。例如,该信息可以是查找表的形式(针对并行块内的第一CTU的第四查找表),其中,在该查找表中,通过使用并行块标识符作为索引来获得相应并行块内的第一CTU的并行块CTU地址。
当并行块组配置有图9所示的结构时,可如下识别包括在画面内的并行块和包括在特定并行块内的CTU地址。
-可以以光栅扫描顺序识别画面内的并行块,并且可分配并行块标识符,诸如并行块#1、并行块#2、并行块#3…。
-然而,并行块之间的编码/解码顺序可以是属于任意并行块组的并行块之间的光栅扫描顺序。
-并行块组之间的编码/解码顺序可以是并行块组之间的光栅扫描顺序。
在图9所示的示例中,并行块组之间的编码/解码顺序可以是并行块组#1(并行块组#1)和并行块组#2(并行块组#2)的顺序。另外,包括在并行块组#1中的并行块之间的编码/解码顺序可以是并行块#1、并行块#2、并行块#5和并行块#6的顺序。另外,包括在并行块组#2中的并行块之间的编码/解码顺序可以是并行块#3、并行块#4、并行块#7和并行块#8的顺序。因此,在图9所示的示例中,并行块之间的编码/解码顺序可以是并行块#1、并行块#2、并行块#5、并行块#6、并行块#3、并行块#4、并行块#7和并行块#8的顺序。
任意并行块内的CTU地址(并行块CTU地址)可以以光栅扫描顺序增加。
图13是示出在并行块内分配CTU地址的另一示例的示图。
在图9中所示的示例中,包括在并行块#1、并行块#2、并行块#3、并行块#5、并行块#6、并行块#7和并行块#8中的CTU的地址可如图13中所示来表示。换句话说,并行块#1可包括CTU地址#1到#28,并行块#2可包括CTU地址#29到#56,且并行块#5可包括CTU地址#57到#84。
图13中所示的并行块CTU地址可被转换成图10中所示的画面CTU地址。例如,可将图13所示的并行块#1、并行块#2和并行块#3中包括的并行块CTU地址转换为图12所示的画面CTU地址,然后可执行编码和解码。
可选地,当并行块组配置有图9所示的结构时,可如下识别包括在画面内的并行块和包括在特定并行块内的CTU地址。
图14是在并行块组内分配并行块标识符的示例的示图。
-如图14所示,可根据光栅扫描顺序来识别并行块组内的并行块,并且可根据所识别的顺序来分配并行块标识符。
-然而,并行块之间的编码/解码顺序可以是属于任意并行块组的并行块之间的光栅扫描顺序。
-并行块组之间的编码/解码顺序可以是并行块组之间的光栅扫描顺序。
在图14所示的示例中,并行块组之间的编码/解码顺序根据光栅扫描顺序可以是并行块组#1(并行块组#1)和并行块组#2(并行块组#2)的顺序。可选地,包括在并行块组#1中的并行块之间的编码/解码顺序可以是并行块#1、并行块#2、并行块#3和并行块#4的顺序。另外,包括在并行块组#2中的并行块之间的编码/解码顺序可以是并行块#5、并行块#6、并行块#7和并行块#8的顺序。因此,在图14所示的示例中,并行块之间的编码/解码顺序可以是并行块#1、并行块#2、并行块#3、并行块#4、并行块#5、并行块#6、并行块#7和并行块#8的顺序。
任意并行块内的CTU地址(并行块CTU地址)可以以光栅扫描顺序增加。
图15是示出在并行块内分配CTU地址的另一示例的示图。
在图14中所示的示例中,并行块#1、并行块#2、并行块#3、并行块#4、并行块#5、并行块#6、并行块#7和并行块#8中包括的CTU的地址可如图15中所示来表示。换句话说,并行块#1可包括CTU地址#1到#28,并行块#2可包括CTU地址#29到#56,且并行块#3可包括CTU地址#57到#84。
图16是示出画面CTU地址的示例的示图。
图15中所示的并行块CTU地址可被转换成图10中所示的画面CTU地址。例如,可将包括在图15的并行块#1至并行块#8中的并行块CTU地址转换为图16所示的画面CTU地址,然后可执行编码和解码。
可选地,例如,可通过组合参照图10至图16描述的方法来确定特定并行块中包括的CTU地址。
当用信号传送至少一个条带(或并行块组)时,条带(或并行块组)的头可包括对相应条带(或并行块组)进行解码所需的所有类型的信息。
可选地,对构成画面的条带(或并行块组)进行解码所需的所有类型的信息可仅包括在参数集中或特定条带(或并行块组)的头中。这里,另一条带(或并行块组)的头可包括以下项中的至少一个:相应条带(或并行块组)的第一CTU地址(标识符或索引)、相应条带(或并行块组)的第一并行块标识符、相应条带(或并行块组)的标识符(指示符或索引)、指示由相应条带(或并行块组)使用的参数集的标识符、以及包括由相应条带(或并行块组)使用的头信息的特定条带(或并行块组)的标识符。
可通过使用包括所需头信息的特定条带(或并行块组)的标识符来识别不通过相应条带(或并行块组)的头被用信号传送但解码所需的信息。因此,可减少基于条带(或并行块组)发送的头信息的量。
此外,当提供ROI时,可通过使用具有矩形形状的条带(或并行块组)容易地执行获得相应的ROI。例如,从比特流仅获得包括特定ROI的条带(或并行块组)可比获得包括在比特流内的特定并行块的编码信息更容易。
在下文中,将通过在对画面进行分区与基于所得到的单元进行编码和解码之间进行区分来描述本发明。
对画面进行分区
表示单个画面是否配置有至少两个并行块的指示符(标志、索引、tiles_enabled_flag等)可通过条带头、并行块组头、参数集(诸如画面参数集和序列参数集)被用信号传送。例如,当指示符具有第一值(例如,0)时,它可表示单个画面配置有单个并行块。当指示符具有第二值(例如,1)时,它可表示单个画面配置有至少两个并行块。
当指示符具有第二值,也就是说,单个画面配置有至少两个并行块时,并行块相关信息和表示是否将环内滤波器应用于并行块边界的并行块边界滤波指示符(标志、索引、loop_filter_across_tiles_enabled_flag等)可通过条带头、并行块组头和参数集(诸如画面参数集和序列参数集)被用信号传送。
当并行块边界滤波指示符具有第一值(例如,0)时,它可表示不将环内滤波器应用于两个并行块相接触的边界。当并行块边界滤波指示符具有第二值(例如,1)时,它可表示将环内滤波器应用于两个并行块相接触的边界。环内滤波器可包括去块滤波器、样点自适应偏移滤波器和自适应环路滤波器中的至少一个。
并行块相关信息可包括单个画面中包括的并行块的数量、每个并行块的尺寸、每个并行块的位置、表示并行块尺寸的默认单位等。当并行块相关信息中不包括关于并行块的尺寸信息和关于并行块的位置信息时,可通过使用并行块相关信息中包括的另一信息来推导并行块相关信息,诸如关于并行块的尺寸信息、关于并行块的位置信息、包括在并行块中的CTU地址等。
关于并行块的尺寸信息可包括例如关于并行块的水平长度和垂直长度、并行块的左上方像素位置和右下方像素位置等的信息。这里,并行块的左上方像素位置和右下方像素位置可相应于关于并行块的位置信息。
表示并行块尺寸的默认单位可按照以下方式中的至少一个的形式来表示。
-并行块尺寸的默认单位可包括至少一个特定数量的CTU、具有特定水平长度和垂直长度的块、配置有至少一个像素的具有任意尺寸的块等。并行块尺寸的默认单位可例如以诸如tile_size_unit的语法形式表示,并且tile_size_unit可表示作为并行块尺寸的默认单位的CTU的数量、像素的数量或具有预定尺寸的块的数量。预定尺寸可以是预定义的,或以序列或画面等级被用信号传送。
并行块尺寸的默认单位可被划分为水平长度默认单位和垂直长度默认单位,并根据其被用信号传送。水平长度默认单位可以是CTU水平长度的N倍,并且垂直长度默认单位可以是CTU垂直长度的M倍。这里,N和M可以是等于或大于1的任意整数值。可选地,水平长度默认单位可以是N个像素,并且垂直长度默认单位可以是M个像素。例如,并行块的水平默认单位可以以诸如tile_column_size_unit的语法形式表示,并且表示像素的数量或CTU的水平长度的倍数。另外,例如,并行块的垂直默认单位可以以诸如tile_row_size_unit的语法形式表示,并且表示像素的数量或CTU的垂直长度的倍数。
可不用信号传送并行块的默认单位,并且在编码器和解码器中预定义的值可用作并行块的默认单位。
画面可被可变地分区为矩形区域的并行块。并行块相关信息可根据将画面分区为并行块的各种形式以各种方法来表示。
可通过按照水平和垂直网格图案对画面进行划分来获得并行块。构成画面的并行块可具有相同的水平长度和相同的垂直长度。可选地,包括在画面中的所有并行块的水平长度和/或垂直长度可以是恒定的。可用信号传送用于表示所有并行块的水平长度和/或垂直长度恒定的信息。另外,当画面中包括的所有并行块的水平长度和/或垂直长度恒定时,可用信号传送关于水平长度的信息和关于垂直长度的信息。
图17是示出利用具有相同尺寸的并行块来配置单个画面的示例的示图。
为了表示并行块尺寸,可用信号传送表示画面内的并行块列的数量(水平方向上的并行块的数量)的信息(例如,num_tile_columns_minus1表示水平方向上的并行块的数量-1)以及表示并行块行的数量(垂直方向上的并行块的数量)的信息(例如,num_tile_rows_minus1可表示垂直方向上的并行块的数量-1)。
可通过使用关于并行块尺寸的默认单位、并行块列的数量和并行块行的数量(水平方向上的并行块的数量和垂直方向上的并行块的数量)、画面的水平长度和垂直长度、CTU尺寸信息等的信息来推导每个并行块的尺寸和/或位置。
在图17所示的示例中,水平方向上的并行块的数量是四个,并且垂直方向上的并行块的数量是两个,因此并行块的总数是八个。当画面具有1920×1080的分辨率时,每个并行块的尺寸变为480×540。
图18是示出用信号传送并行块相关信息的示例的示图。
图19是示出用信号传送并行块相关信息的另一示例的示图。
为了用信号传送并行块相关信息,可使用图18和/或图19中所示的用信号传送方法的一部分或全部。
另外,可用信号传送表示画面内的并行块的尺寸是否一致的指示符(索引、标志、uniform_spacing_flag等)。当相应指示符具有第一值(例如,0)时,它可表示画面内的并行块的尺寸不一致。当相应指示符具有第二值(例如,1)时,它可表示画面内的并行块的尺寸一致。
可通过按照水平和垂直网格图案对画面进行划分来获得并行块。这里,构成画面的并行块的水平长度和/或垂直长度可被可变地设置为任意值。
图20是示出利用具有不同水平长度和垂直长度的并行块来配置画面的示例的示图。
当表示画面内的并行块的尺寸是否一致的指示符具有第一值(也就是说,画面内的并行块的尺寸不一致)时,可如下用信号传送并行块相关信息。
为了表示并行块尺寸,可与水平方向上的并行块数量一样多地从画面的左方向到右方向顺序地用信号传送关于并行块的水平长度的信息。另外,可与垂直方向上的并行块数量一样多地从画面的上方向到下方向顺序地用信号传送关于并行块的垂直长度的信息。这里,可基于并行块尺寸的默认单位来表示用信号传送的关于水平长度的信息或用信号传送的关于垂直长度的信息。
图21是示出用信号传送并行块相关信息的又一示例的示图。
在图20的示例中,画面可被分区为3×4个并行块。这里,每个并行块的水平长度和/或垂直长度可不同。
当并行块尺寸的水平默认单位是CTU的水平长度,并且并行块尺寸的垂直默认单位是CTU的垂直长度时,并行块#1的尺寸可被表示为(8×CTU水平长度)×(3×CTU垂直长度)。这里,7可作为关于并行块#1的水平长度的信息(例如,column_width_minus1[0]=7)被用信号传送,并且2可作为关于并行块#1的垂直长度的信息(例如,row_height_minus1[0]=2)被用信号传送。当CTU水平长度和CTU垂直长度为128时,并行块#1的水平长度可以是(8×128),并且垂直长度可以是(3×128)。
在上述两个示例中,其限制在于通过按照水平和垂直网格图案对画面进行划分来获得并行块。然而,为了提供更有效的并行处理和ROI,可能需要具有各种形状的并行块。
图22是示出将画面分区为具有各种尺寸的并行块的示例的示图。
如图22所示,位于同一行中的并行块的垂直长度可被设置为相同,并且位于同一行中的并行块的水平长度可被设置为不同。这里,位于另一行中的并行块的垂直长度可不同。
在图22的示例中,可用信号传送关于每个并行块行的垂直长度的信息和关于包括在每个并行块行中的每个并行块的水平长度的信息作为并行块相关信息。例如,可用信号传送与(第i并行块行的垂直长度-1)相应的row_height_minus1[i]作为关于垂直长度的信息。例如,可用信号传送与(第i并行块行的第j并行块的水平长度-1)相应的column_width_minus1[i][j]作为关于水平长度的信息。
图23是示出根据图22的示例的用信号传送并行块相关信息的示例的示图。
这里,可基于并行块尺寸的默认单位来用信号传送被用信号传送的关于水平长度的信息和/或被用信号传送的关于垂直长度的信息。
图24是示出将画面分区为具有各种尺寸的并行块的另一示例的示图。
如图24所示,位于同一列的并行块的水平长度可被设置为相同,并且位于同一列的并行块的垂直长度可被设置为不同。这里,存在于另一列中的并行块的水平长度可不同。
在图24所示的示例中,可用信号传送关于每个并行块列的水平长度的信息和关于包括在并行块列中的每个并行块的垂直长度的信息作为并行块相关信息。例如,可用信号传送与(第i并行块列的水平长度-1)相应的colmun_width_minus1[i]作为关于水平长度的信息。例如,可用信号传送与(第i并行块列的第j并行块的垂直长度-1)相应的row_height_minus1[i][j]作为关于垂直长度的信息。
图25是示出根据图24的示例的用信号传送并行块相关信息的示例的示图。
这里,可基于并行块尺寸的默认单位来用信号传送被用信号传送的关于水平长度的信息和/或被用信号传送的关于垂直长度的信息。
图26是示出将画面分区为具有各种尺寸的并行块的另一示例的示图。
参照图22到图25描述的示例可提供画面内具有各种尺寸和形状的并行块。然而,对表示并行块的尺寸和形状存在限制。例如,图26的示例中所示的并行块的配置可能不可用。然而,如图26所示,为了提供并行处理并提高ROI的自由度,可能需要将画面内的并行块的水平长度和垂直长度配置为不同。
另外,为了将这样的并行块分区方法传送到解码器,可能需要用信号传送关于包括在画面中的每个并行块的并行块相关信息。此外,可能存在画面配置有具有相同尺寸的并行块的情况。为了用信号传送的效率,当画面配置有具有相同尺寸的并行块时,可用信号传送包括在画面中的水平并行块和垂直并行块的数量。如果否,则可用信号传送关于包括在画面中的每个并行块的并行块相关信息。
可用信号传送表示画面是否配置有具有相同尺寸的并行块的指示符(索引、标志、uniform_spacing_flag等)。当相应指示符具有第一值(例如,0)时,它可表示画面内的并行块的尺寸不同。当相应指示符具有第二值(例如,1)时,可用信号传送表示水平方向上的并行块的数量的信息和表示垂直方向上的并行块的数量的信息。例如,可用信号传送与(水平方向上的并行块的数量-1)相应的num_tile_columns_minus1作为表示水平方向上的并行块的数量的信息。例如,可用信号传送与(垂直方向上的并行块的数量-1)相应的num_tile_rows_minus1作为表示垂直方向上的并行块的数量的信息。
可通过使用关于并行块尺寸的默认单位的信息、水平方向上的并行块的数量和垂直方向上的并行块的数量、画面的水平长度和垂直长度、关于CTU尺寸的信息等来推导每个并行块的尺寸和位置。
另外,当相应指示符具有第一值时,也就是说,当画面内的并行块的尺寸不同时,用于推导包括在画面中的每个并行块的尺寸和位置的信息可作为并行块相关信息被用信号传送。这里,并行块相关信息可以是例如画面内存在的并行块的数量、关于每个并行块的水平长度的信息、关于每个并行块的垂直长度的信息等。
用信号传送画面内的并行块的顺序可基于并行块的左上方位置而被确定为光栅扫描顺序。这里,可基于并行块相关信息来确定画面内的并行块尺寸和位置以及包括在并行块中的CTU的地址。
图26是示出基于并行块的左上方位置而被确定为光栅扫描顺序的用信号传送并行块的顺序的示例的示图。
例如,如图27至图29所示,可用信号传送与(画面中包括的并行块的总数-1)相应的num_tile_in_picture_minus1作为关于画面内存在的并行块的数量的信息。
图27是示出用信号传送包括在画面中的每个并行块的水平长度和垂直长度的示例的示图。这里,可基于并行块尺寸的默认单位来用信号传送被用信号传送的关于水平长度的信息或被用信号传送的关于垂直长度的信息。
由于并行块是矩形,所以当提供并行块的左上方位置和右下方位置时,可推导出并行块的尺寸和位置以及构成并行块的CTU的地址(或位置)。
图28是示出用信号传送包括在画面中的每个并行块的左上方位置和右下方位置的示例的示图。
左上方位置或右下方位置可以是关于基于并行块尺寸的默认单位的标识符的信息。例如,左上方位置或右下方位置可被表示为CTU地址或像素地址。
例如,当并行块尺寸的默认单位是CTU时,并行块的左上索引(top_left_tile_unit_idx[i](第i并行块的左上索引))可以是位于相应并行块的左上方处的CTU的标识符。另外,并行块的右下索引(bottom_right_tile_unit_idx[i](第i并行块的右下索引))可以是位于相应并行块的右下方处的CTU的标识符。
如上文,被用信号传送的左上索引和被用信号传送的右下索引的含义可根据并行块尺寸的默认单位而变化。例如,当并行块的默认单位是CTU时,左上索引和右下索引可以是CTU地址,并且当并行块的默认单位是像素时,左上索引和右下索引可以是像素位置。另外,当并行块的水平长度的默认单位是(N×CTU水平长度)并且垂直长度的默认单位是(M×CTU垂直长度)时,当左上索引表示第K并行块的默认单位时,可将与左上方位置相应的左上方位置的CTU地址推导为N×M×(K-1)+1。
如图27所示,当仅用信号传送关于每个并行块的水平长度的信息和关于每个并行块的垂直长度的信息时,可通过从第一并行块的CTU地址(或像素地址)顺序地进行推导来推导包括在每个并行块中的CTU地址(或像素地址)。
另一方面,在图28所示的示例中,可通过用信号传送指示每个并行块的左上方和右下方的基于并行块的默认单位(并行块单元)的标识符信息(或CTU地址或像素地址)来容易地推导包括在每个并行块中的CTU地址(或像素地址)。
图29是示出用信号传送画面中包括的每个并行块的左上方位置以及并行块的水平长度和垂直长度的示例的示图。
在图29的示例中,提出一种用于弥补图27的从第一并行块的CTU地址(或像素地址)开始顺序地执行推导以便推导出包括在每个并行块中的CTU地址(或像素地址)的示例的用信号传送方法。
在图29的示例中,每个并行块的左上方位置可通过使用指示相应位置的基于并行块的默认单位(并行块单元)的标识符信息(或CTU地址或像素地址)被用信号传送。另外,在图29的示例中,除此之外,可用信号传送关于每个并行块的水平长度的信息和关于每个并行块的垂直长度的信息。
与图28的示例相比,当包括在画面中的CTU的数量变大并且并行块的默认单位不变大时,在根据图29的示例进行用信号传送期间产生的比特率的量相对减小。另外,与图28的示例相比,在图29的示例中,可通过用信号传送每个并行块的起始位置(左上方位置)以及并行块的水平长度和垂直长度而容易地推导出包括在每个并行块中的CTU的地址(或像素地址)。
图30是示出用信号传送并行块相关信息的另一示例的示图。
图31是示出用信号传送并行块相关信息的又一示例的示图。
在图27到图29的示例中,当画面配置有具有相同尺寸的并行块时,通过用信号传送关于画面是否配置有具有相同尺寸的并行块的信息来提高用信号传送的效率。
另一方面,在图30和图31的示例中,可根据并行块之间的用信号传送顺序和/或编码/解码顺序来用信号传送关于当前并行块的尺寸是否与恰好前一并行块的尺寸相同的信息。根据上文,在当前并行块的尺寸与前一并行块的尺寸相同时,不用信号传送当前并行块的尺寸以便提高用信号传送的效率。
当表示当前并行块的尺寸是否与恰好前一并行块的尺寸相同的指示符(索引、标志、use_previous_tile_size_flag等)具有第一值(例如,0)时,它可表示当前并行块的尺寸和恰好前一并行块的尺寸不同。这里,可用信号传送关于每个并行块的尺寸和位置的信息。此外,当相应指示符具有第二值(例如,1)时,它可表示当前并行块的尺寸与恰好前一并行块的尺寸相同。这里,可不用信号传送关于当前并行块的尺寸的信息。
在图26到图31的示例中,并行块分区方法和用信号传送方法可提供更多自由度。例如,图26的示例是具有各种尺寸的并行块被包括在画面内的极端示例。由于在图26的示例中对并行块的尺寸或位置没有限制,所以编码器和解码器会增加实施复杂度。因此,需要充分确保并行块尺寸和并行块位置的自由度,同时将编码器和解码器的实现复杂度限制到适当的水平。
与图26至图31的示例相比,下文将描述的实施例可满足适当的自由度和适当的实现复杂度两者。
单个画面可配置有至少一个并行块,并且单个并行块可配置有至少一个子并行块。
子并行块可包括与在描述编码时描述的并行块的特征相同的特征。当子并行块包括与并行块的特征相同的特征时,本说明书中描述的并行块可被称为上述并行块组。换句话说,并行块组可配置有至少一个并行块,并且并行块可配置有至少一个子并行块。因此,并行块和子并行块之间的关系可与上述并行块组和并行块之间的关系相同。因此,与并行块组和并行块相关的上述描述可相同地被应用于并行块和子并行块。
可像图17或图20的并行块一样通过在水平方向和垂直方向上按照网格图案将画面进行分区来获得子并行块。这里,像图17的并行块一样,画面内的子并行块的尺寸可以相同,或者像图20的并行块一样,子并行块列和子并行块行的长度可以不同。
图32是示出将画面分区为子并行块的示例的示图。
子并行块尺寸的默认单位可以是至少一个特定数量的CTU、具有特定水平长度和特定垂直长度的块、配置有至少一个像素的具有任意尺寸的块等。另外,子并行块尺寸的水平长度的默认单位和垂直长度的默认单位可不同。水平长度的默认单位(或垂直长度的默认单位)可以是CTU水平长度(或垂直长度)的N倍,并且N可以是等于或大于1的任意整数。
例如,如图34和图35的示例所示,子并行块的默认单位可以以诸如subtile_size_unit的语法形式表示。subtile_size_unit可表示作为并行块尺寸的默认单位的像素的数量或CTU的数量。这里,可预定义默认单位是像素的数量或CTU的N倍。详细地,当默认单位被定义为CTU的N倍,并且CTU尺寸是128×128并且值5作为subtile_size_unit被用信号传送时,子并行块尺寸的默认单位可以是(128×5)×(128×5)尺寸的块。
可选地,例如,如图34和图35所示的示例,子并行块的水平长度的默认单位可被表示为subtile_column_size_unit,并且表示像素的数量或CTU的水平长度的倍数。另外,垂直长度的默认单位可被表示为subtile_row_size_unit,并且表示像素的数量或CTU的垂直长度的倍数。这里,可预定义默认单位是像素的数量或CTU的N倍。详细地,当水平长度被定义为CTU的N倍,并且CTU的水平长度是128并且值2作为subtile_column_size_unit被用信号传送时,子并行块的水平长度的默认单位可以是128×2。
可不用信号传送子并行块的默认单位,并且可使用在编码器和解码器中预定义的值。
图34是示出用信号传送子并行块的尺寸和位置的示例的示图。
图35是示出用信号传送子并行块的尺寸和位置的另一示例的示图。
子并行块的形状(尺寸和位置)可通过使用图18、图19和图21的示例中描述的语法被表示为图34和图35的示例。例如,可用信号传送与(子并行块列的数量-1)相应的num_subtile_columns_minus1作为表示子并行块列的数量(水平方向上的子并行块的数量)的信息。例如,可用信号传送与(子并行块行的数量-1)相应的num_subtile_rows_minus1作为表示子并行块行的数量(垂直方向上的子并行块的数量)的信息。
当像图17所示的并行块一样,画面内的子并行块的所有尺寸是相同的时,可通过使用关于子并行块尺寸的默认单位、子并行块列的数量、子并行块行的数量、画面的水平长度和垂直长度、CTU尺寸信息等的信息来推导每个子并行块的尺寸和位置。
当像图20所示的并行块一样,画面内的子并行块的尺寸根据子并行块列的数量和/或子并行块行的数量而不同时,为了表示子并行块的尺寸,可与子并行块列的数量(水平方向上的子并行块的数量)一样多地从画面的左方向到右方向顺序地用信号传送关于子并行块的水平长度的信息。另外,可与子并行块行的数量(垂直方向上的子并行块的数量)一样多地从画面的上方向到下方向顺序地用信号传送关于子并行块的垂直长度的信息。这里,可基于子并行块尺寸的默认单位来用信号传送被用信号传送的关于水平长度的信息或被用信号传送的关于垂直长度的信息。
图33是示出基于图32的子并行块配置并行块的示例的示图。
并行块可配置有一个或更多个相邻的子并行块。由于并行块是矩形,所以可通过用信号传送关于位于每个并行块的左上方处的子并行块的信息和位于每个并行块的右下方处的子并行块的信息来推导并行块尺寸、并行块位置、构成并行块的子并行块以及CTU地址或CTU位置。
例如,如图34的示例,位于并行块的左上方处的子并行块的索引(top_left_subtile_idx[i](第i并行块的左上索引))可表示位于相应并行块的左上方处的子并行块的编号或地址。另外,位于并行块右下方处的子并行块的索引(right_bottom_subtile_idx[i](第i并行块的右下索引))可表示位于相应并行块的右下方处的子并行块的编号或地址。
可通过使用被用信号传送的信息来推导包括在并行块中的子并行块。另外,可推导包括在子并行块中的CTU的地址。此外,可通过用信号传送关于构成并行块的左上方子并行块以及并行块的水平长度和垂直长度的信息来推导并行块尺寸、并行块位置、构成并行块的子并行块、CTU地址或CTU位置,而不用信号传送关于构成并行块的左上方子并行块和右下方子并行块的信息。
在图33的示例中,在并行块#3的情况下,可通过在水平方向上对并行块进行分区来获得至少一个子并行块。换句话说,包括在相应并行块中的子并行块的水平长度可相同。在上述情况下,可用信号传送关于子并行块的垂直长度的信息作为用于推导包括在并行块中的子并行块的位置和/或尺寸的子并行块相关信息。由于子并行块的水平长度与并行块的水平长度相同,所以可不用信号传送关于子并行块的水平长度的信息。如图33的并行块#3,包括在并行块中的所有子并行块可具有相同的垂直长度。这里,可用信号传送指示并行块内的子并行块的垂直长度一致的指示符和关于子并行块的垂直长度的信息,作为子并行块相关信息。当包括在并行块中的子并行块的垂直长度不同时,可用信号传送指示并行块内的子并行块的垂直长度不一致的指示符、并行块内的子并行块的数量以及关于每个子并行块的垂直长度的信息,作为子并行块相关信息。
子并行块的默认单位可以是CTU,并且上述关于子并行块的垂直长度的信息可被表示为CTU行的数量。当并行块配置有至少一个CTU行时,将并行块分区为至少两个子并行块可能不可用。因此,可仅在并行块包括至少两个CTU行时用信号传送关于是否将并行块分区为至少两个子并行块的信息。另外,将配置有至少两个CTU行的并行块分区为具有与单个CTU相应的垂直长度的两个子并行块。换句话说,两个子并行块的垂直长度一致。因此,可仅在配置有至少两个CTU行的并行块被分区为至少两个子并行块时用信号传送指示包括在并行块中的子并行块的长度一致的指示符。
例如,如图35的示例,可用信号传送top_left_subtile_idx[i](第i并行块的左上方子并行块的索引)作为位于并行块的左上方处的子并行块的索引。另外,可用信号传送column_width_minus1[i](相应于(第i并行块的水平长度-1))作为关于水平长度的信息,并且可用信号传送row_height_minus1[i](相应于(第i并行块的垂直长度-1))作为关于垂直长度的信息。
类似于图30和图31的示例,为了有效地用信号传送并行块尺寸,可不根据表示当前并行块的尺寸是否与恰好前一并行块的尺寸相同的指示符(索引、标志、use_previous_tile_size_flag等)用信号传送当前并行块的尺寸。
在上述示例中,当画面内的并行块的数量为至少两个时,可根据用信号传送并行块的顺序来确定并行块的标识符。例如,当画面内的并行块的数量是num_tiles_in_picture,并且通过从0到num_tiles_in_picture将i增加1来用信号传送关于并行块尺寸的信息时,i可以是相应并行块的标识符。
基于通过画面分区获得的结果单元来执行编码/解码
可基于相应的并行块组从具有小值的标识符的并行块组开始按照升序对单个画面进行编码和解码。在同一并行块组内,可从具有小值的标识符的并行块开始按照升序对相应的并行块执行编码和解码。在同一并行块内,可从具有小值的地址(标识符)的CTU开始按照升序对相应的CTU执行编码和解码。
至少一个并行块组可构成画面内的为矩形区域的子画面。本公开的与并行块或并行块组的配置相关的描述可应用于子画面的配置。并行块、并行块组和/或子画面可以是编码和解码的单位,并且可与画面相同地被编码和解码。
可独立地对并行块进行编码和解码。可通过被同样用作画面边界来对并行块边界进行编码/解码。例如,不同于一般的块分区,并行块边界中的块分区可与应用于画面边界的块分区相同。例如,在右侧并行块边界(或下方并行块边界)中,可隐式地执行垂直方向(或水平方向)上的二叉树分区。另外,并行块边界中的填充可与画面边界中的填充相同。
可选地,代替并行块边界,并行块组的边界可与画面边界相同地被编码/解码。
可选地,并行块边界或并行块组的边界可与条带边界或预定单元的边界相同地被编码/解码。
当基于重建的并行块来重建单个画面时,由于并行块的独立编码和解码,所以可能在并行块边界(即,两个并行块相接触的地方)中发生图像劣化或图像差异。为了减少这种图像劣化或图像差异,可将环内滤波器应用于并行块边界。
然而,为了将环内滤波器应用于并行块边界,需要例如在垂直方向上提供线缓冲器的额外资源,并且因此可通过参数集用信号传送表示是否将环内滤波器应用于并行块边界的指示符(标志)。
编码器可选择是否将环内滤波器应用于并行块边界。当不将环内滤波器应用于并行块边界时,或者即使当为了减少并行块边界中的图像劣化或图像差异而将环内滤波器应用于并行块边界时,可通过在执行并行块编码时对与并行块边界相邻的像素执行填充/扩展来对并行块边界进行编码。
图36是示出对并行块边界执行编码/解码的处理的示图。
在图36所示的示例中,并行块#6的并行块尺寸是12×5。在并行块#6的情况下,可在执行填充/扩展直到与并行块的上边界相邻的N个像素(即,与并行块#2的N个较低行相应的像素)之后执行编码。另外,在并行块#6的情况下,可在执行填充/扩展直到与并行块的右边界相邻的N个像素(即,与并行块#7的N个左列相应的像素)之后执行编码。类似地,对于并行块#6的左边界和下边界,可执行填充/扩展直到N个像素。N可以是任意整数值。针对每个边界填充/扩展的像素的数量可不同。
如并行块#1,在并行块的垂直边界和水平边界中,可存在不存在将被填充/扩展的像素的边界。例如,当相应并行块的边界相应于画面边界时。在这种情况下,可不对相应的边界执行填充或扩展。类似地,当相应并行块的边界相应于包括相应并行块的并行块组的边界时,可不对相应边界执行填充或扩展。
对并行块边界执行填充/扩展的上述描述可相同地被用于并行块组的边界。换句话说,可在执行填充/扩展直到与并行块组的边界相邻的像素之后执行对应并行块组的编码。
当执行解码时,区域的重建像素可通过对重建并行块的填充/扩展区域的像素值与包括相应区域的相邻并行块的填充/扩展区域的重建像素值执行加权求和被生成。
图37是示出在对并行块边界执行填充/扩展之后执行编码的示例的示图。
在图37的示例中,并行块N的右边界和并行块N+1的左边界彼此接触。在与并行块N的右边界相邻的并行块N+1的左侧两列的像素被填充/扩展到并行块N之后,对并行块N进行编码。类似地,在与并行块N+1的左边界相邻的并行块N的右侧两列的像素被填充/扩展到并行块N+1之后,对并行块N+1进行编码。在图37的示例中,填充/扩展了两列像素。然而,不限于此,可填充/扩展M(M是任意正整数)列像素。
在解码器中,重建并行块N可包括并行块N+1的左侧两列的像素,并且重建并行块N+1可包括并行块N的右侧两列的像素。因此,在并行块N和并行块N+1的边界中,在并行块N和并行块N+1中分别重建了从左侧两列到右侧两列的像素,四列像素可分别具有两个重叠的重建值。最终重建像素值可通过所述两个重叠的重建值的加权和生成。
例如,当(x,y)是并行块N与并行块N+1之间的重叠部分的像素位置,P(x,y)是并行块N中的重建像素值,并且Q(x,y)是并行块N+1中的重建像素值时,最终重建像素值K(x,y)可被表示为a×P(x,y)+(1-a)×Q(x,y)。这里,加权因子a可以是0到1之间的值,诸如1/4、1/2、3/4等。
加权因子a可以是在编码器和解码器中预定的固定值。当加权因子未被预定时,关于加权因子a的信息可在父等级(诸如条带头、并行块组头、参数集(诸如序列参数集和画面参数集))中用信号传送。另外,指示加权因子a是否是固定值的指示符可在父等级(诸如条带头、并行块组头和参数集(诸如序列参数集和画面参数集))中用信号传送。
当对并行块执行填充/扩展时,可应用以下方式之一而不使用相邻像素。
-可通过复制并行块边界的部分像素来执行填充/扩展。例如,可通过对并行块的最右侧列的像素进行N次复制来执行对右侧并行块边界的填充/扩展。可相同地执行对并行块的上边界、左边界或下边界的填充/扩展。
在360度视频的情况下,可提供包括立方图的各种投影格式。当通过使用这种投影格式通过打包将360度视频转换为2D图像时,在打包被执行的面之间出现不连续性。
图38至图40是分别示出通过使用立方图对360度视频执行2D图像投影的示图。
图38是示出在六面体内布置呈球体形式的360度图像的示例的示图。
图39是示出对图38的六面体的每个面执行投影并展开六面体的示例的示图。
图39的(a)的每个面是指如图39的(b)所示的图38的六面体的每个面(上面、前面、右面、后面、左面和下面)。
图40是示出执行将图39的示例打包成2D图像的示例的示图。
通常,为了提高编码效率,不以图39的形式对2D图像进行编码,而是可对如图40所示的执行了打包的图像执行编码和解码。这里,如图40所示,可能存在打包被执行的面之间不存在连续性的情况。例如,在图40中,“下”面与“左”面之间不存在连续性。因此,当将每个面编码为单独的并行块时,当对并行块边界执行填充/扩展时,优选的是执行填充/扩展直到在360度图像中相邻的部分像素,而不是执行填充/扩展直到相邻并行块的像素。
例如,在图40的情况下,可通过使用“右”面的N个低行来对“下”面的右边界执行填充/扩展。如上所述,为了对每个并行块的边界执行填充/扩展,关于将使用哪个并行块的哪个边界的哪个部分的信息可在编码器和解码器中被预先定义,或者可被用信号传送。该信息可包括例如将用于填充/扩展的并行块的标识符、将被使用的边界的部分的标识符等。
当通过使用相邻像素对并行块边界执行填充/扩展时,可在父等级(诸如条带头、并行块组头和参数集(诸如序列参数集和画面参数集))中用信号传送下面的至少一种类型的信息。
-当对并行块进行编码时,可用信号传送表示是否通过使用相邻像素来对并行块边界执行填充/扩展的指示符。
-当对并行块边界执行填充/扩展时,可用信号传送关于填充/扩展范围的信息(例如,指示对多少行或多少列执行填充/扩展的信息),并且该信息可用诸如1、2、3、…等的任意整数表示。当用信号传送与是否执行填充/扩展相关的指示符指示执行填充/扩展时,可用信号传送关于填充/扩展范围的信息。
-当对并行块边界执行填充/扩展时,表示最终重建值是否通过在并行块边界中重叠的区域的像素值的加权和被生成的指示符。当用信号传送与是否执行填充/扩展相关的指示符指示执行填充/扩展时,可用信号传送关于是否执行加权和的指示符。
-当对并行块边界执行填充/扩展时,当在并行块边界中使用加权和时,可用信号传送指示是否使用固定加权和的指示符。只有当用信号传送指示是否执行填充/扩展的指示符指示执行填充/扩展时,才会用信号传送指示是否使用固定加权和的指示符。
-当对并行块边界执行填充/扩展时,当在并行块边界中使用加权和时,可用信号传送关于加权因子的信息(例如,加权因子的值、表示加权因子的索引(指示符、标志等))。只有当用信号传送与是否执行填充/扩展相关的指示符指示执行填充/扩展时,才会用信号传送关于加权因子的信息。
-当对并行块边界执行填充/扩展时,可用信号传送包括将在填充中使用的像素的并行块的标识符。
-当对并行块边界执行填充/扩展时,可用信号传送表示包括将在填充中使用的像素的并行块的边界的标识符(例如,右边界、左边界、下边界或上边界)。
在并行块边界中使用填充/扩展的上述编码和解码方法可被相同地应用于并行块组的边界。此外,根据编码器和解码器的复杂度、编码效率等,上述方法可不被应用于并行块组的边界。
与以上内容相关,表示是否对并行块组的边界执行填充/扩展的指示符(标志等)可在父等级(诸如条带头、并行块组头和参数集(诸如序列参数集或画面参数集))中用信号传送。另外,与对并行块边界进行填充/扩展相关的上述信息(例如,指示对多少行或多少列执行填充/扩展的信息)可作为与对并行块组的边界进行填充/扩展相关的信息被用信号传送。
当不单独用信号传送与对并行块组的边界进行填充/扩展相关的信息时,可将与对并行块边界的填充/扩展相关的信息相同地应用于并行块组的边界。
另外,当画面配置有太多并行块时,考虑到编码器和解码器的复杂度以及编码效率,将填充/扩展应用于所有边界不是优选的。因此,填充/扩展被应用于并行块组的边界,而不被应用于并行块边界。指示其的指示符(标志等)可在父等级(诸如条带头、并行块组头和参数集(诸如序列参数集或画面参数集))中用信号传送。
当对并行块执行帧间编码和帧间解码时,可在参考画面内与当前画面的相应并行块的位置相关联的位置处执行帧间预测。换句话说,由并行块内的块的运动矢量指示的区域可被限制在参考画面内与当前画面的相应并行块的位置相关联的区域上。
因此,不需要整个参考画面来对当前并行块执行帧间预测,而是需要参考画面的与当前并行块相关联的区域。因此,当单独地对并行块进行编码和解码时,可提高并行处理的效率。
这里,参考画面的与当前画面的当前并行块相关联的区域可以是以下区域中的一个。
-该区域可以是参考画面内的与当前画面内的当前并行块的位置相同的位置处的区域,即,同位区域。
-该区域可以是参考画面内的与当前画面内的当前并行块被从当前并行块的位置在水平方向上移动x像素并且在垂直方向上移动y像素后的位置相应的位置处的区域。这里,可用信号传送x和y。
当对并行块执行帧间编码和帧间解码时,可在父等级(诸如条带头、并行块组头和参数集(诸如序列参数集或画面参数集))中用信号传送指示是否在参考画面内的与当前画面的相应并行块的位置相关联的位置内执行帧间预测的指示符(标志)。
在本公开中,执行预定操作的图像编码器或图像解码器可执行确定用于执行相应操作的条件或情况的操作。例如,当公开了在满足预定条件时执行预定操作时,编码器或解码器可在确定是否满足预定条件之后执行预定操作。
可在编码器和解码器中以相同的方法执行上述实施例。
上述实施例中的至少一个或组合可用于对视频进行编码/解码。
应用于以上实施例的顺序在编码器与解码器之间可不同,或者应用于以上实施例的顺序在编码器和解码器中可相同。
可对每个亮度信号和色度信号执行以上实施例,或者可对亮度信号和色度信号相同地执行以上实施例。
应用本发明的以上实施例的块形状可具有正方形形状或非正方形形状。
可根据以下项中的至少一个的尺寸来应用本发明的以上实施例:编码块、预测块、变换块、块、当前块、编码单元、预测单元、变换单元、单元和当前单元。这里,尺寸可被定义为最小尺寸或最大尺寸或者最小尺寸和最大尺寸两者使得应用上述实施例,或者尺寸可被定义为应用以上实施例的固定尺寸。此外,在以上实施例中,可将第一实施例应用于第一尺寸,并且可将第二实施例应用于第二尺寸。换句话说,可根据尺寸组合地应用以上实施例。此外,当尺寸等于或大于最小尺寸并且等于或小于最大尺寸时,可应用以上实施例。换句话说,当块尺寸被包括在特定范围内时,可应用以上实施例。
例如,在当前块的尺寸为8×8或更大时,可应用以上实施例。例如,在当前块的尺寸仅为4×4时,可应用以上实施例。例如,在当前块的尺寸为16×16或更小时,可应用以上实施例。例如,在当前块的尺寸等于或大于16×16并且等于或小于64×64时,可应用以上实施例。
可根据时间层来应用本发明的以上实施例。为了标识可应用以上实施例的时间层,可用信号传送相应标识符,并且可将以上实施例应用于由相应标识符标识的指定时间层。这里,标识符可被定义为可应用以上实施例的最低层或最高层或者最低层和最高层两者,或者可被定义为指示应用了实施例的特定层。此外,可定义应用了实施例的固定时间层。
例如,在当前图像的时间层是最低层时,可应用以上实施例。例如,在当前图像的时间层标识符是1时,可应用以上实施例。例如,在当前图像的时间层是最高层时,可应用以上实施例。
可定义应用本发明的以上实施例的条带类型或并行块组类型,并且可根据相应条带类型或相应并行块组类型来应用以上实施例。
在上述实施例中,基于具有一系列步骤或单元的流程图描述了所述方法,但是本发明不限于这些步骤的顺序,而是,一些步骤可与其他步骤同时执行或以不同的顺序执行。此外,本领域的普通技术人员应该理解,流程图中的步骤并不互相排斥,并且在不影响本发明的范围的情况下,可将其他步骤添加到流程图或者可将一些步骤从流程图删除。
实施例包括示例的各个方面。可不描述各个方面的所有可能的组合,但是本领域技术人员将能够认识到不同的组合。因此,本发明可包括权利要求的范围内的所有替换、修改和改变。
本发明的实施例可以以程序指令的形式实现,其中,该程序指令可由各种计算机组件执行并且被记录在计算机可读记录介质中。计算机可读记录介质可单独地包括程序指令、数据文件、数据结构等,或者可包括程序指令、数据文件、数据结构等的组合。记录在计算机可读记录介质中的程序指令可以是为本发明专门设计和构造的,或者对于计算机软件技术领域的普通技术人员是公知的。计算机可读记录介质的示例包括磁记录介质(诸如,硬盘、软盘和磁带);光学数据存储介质(诸如,CD-ROM或DVD-ROM);磁光介质(诸如软光盘);以及被专门构造为存储和实现程序指令的硬件装置(诸如,只读存储器(ROM)、随机存取存储器(RAM)、闪存等)。程序指令的示例不仅包括由编译器格式化的机械语言代码,而且包括可由计算机使用解释器来实现的高级语言代码。硬件装置可被配置为由一个或更多个软件模块操作或者反之亦可,以进行根据本发明的处理。
尽管已经在特定项目(诸如,详细元件)以及有限的实施例和附图方面描述了本发明,但是它们仅被提供以帮助更全面地理解本发明,并且本发明不限于以上实施例。本发明所属领域的技术人员将理解,可对以上描述进行各种修改和改变。
因此,本发明的精神将不应限于上述实施例,并且所附权利要求及其等同物的整个范围将落入本发明的范围和精神内。
工业应用性
本发明可被用于对图像进行编码/解码。

Claims (20)

1.一种对图像进行解码的方法,所述方法包括:
推导关于包括在当前画面中的条带的条带模式信息;
基于所述条带模式信息推导条带标识信息;以及
基于所述条带标识信息对所述条带进行解码。
2.根据权利要求1所述的方法,其中,所述条带模式信息指示包括在当前画面中的所述条带的模式是配置有根据光栅扫描顺序的连续并行块的第一模式,还是配置有形成矩形区域的至少一个子并行块的第二模式。
3.根据权利要求1所述的方法,其中,所述条带模式信息通过画面参数集被用信号传送。
4.根据权利要求2所述的方法,其中,当所述条带模式信息指示第一模式时,所述条带标识信息包括关于包括在所述条带中的第一子并行块的索引信息和关于包括在所述条带中的子并行块的数量的信息。
5.根据权利要求4所述的方法,其中,所述条带标识信息通过条带头被用信号传送。
6.根据权利要求4所述的方法,其中,包括在所述条带中的第一子并行块的索引基于所述条带标识信息被确定,并且包括在当前条带中的第n子并行块的索引被设置为通过将包括在当前条带中的第(n-1)子并行块的索引加1而获得的值。
7.根据权利要求2所述的方法,其中,当所述条带模式信息指示第二模式时,所述条带标识信息包括关于所述条带内的右下方子并行块的索引信息和条带标识符。
8.根据权利要求7所述的方法,其中,所述条带内的右下方子并行块的索引信息表示当前条带内的右下方子并行块的索引与前一条带内的右下方子并行块的索引之间的差值。
9.根据权利要求8所述的方法,其中,所述差值通过使用关于所述差值的绝对值的信息和关于所述差值的符号信息被用信号传送。
10.根据权利要求9所述的方法,其中,关于所述差值的绝对值的信息和关于所述差值的符号信息通过画面参数集被用信号传送。
11.一种对图像进行编码的方法,所述方法包括:
确定关于包括在当前画面中的条带的条带模式,并且对指示所确定的条带模式的条带模式信息进行编码;
基于所述条带模式确定条带标识信息,并且对所确定的条带标识信息进行编码;以及
基于所述条带标识信息对所述条带进行编码。
12.根据权利要求11所述的方法,其中,所述条带模式信息指示包括在当前画面中的所述条带的模式是配置有根据光栅扫描顺序的连续并行块的第一模式,还是配置有形成矩形区域的至少一个子并行块的第二模式。
13.根据权利要求11所述的方法,其中,所述条带模式信息通过画面参数集被用信号传送。
14.根据权利要求12所述的方法,其中,当所述条带模式是第一模式时,所述条带标识信息包括关于包括在所述条带中的第一子并行块的索引信息和关于包括在所述条带中的子并行块的数量的信息。
15.根据权利要求14所述的方法,其中,所述条带标识信息通过条带头被用信号传送。
16.根据权利要求14所述的方法,其中,包括在所述条带中的第一子并行块的索引使用所述条带标识信息被编码,并且包括在当前条带中的第n子并行块的索引是通过将包括在当前条带中的第(n-1)子并行块的索引加1而获得的值。
17.根据权利要求12所述的方法,其中,当所述条带模式是第二模式时,所述条带标识信息包括关于所述条带内的右下方子并行块的索引信息和条带标识符。
18.根据权利要求17所述的方法,其中,所述条带内的右下方子并行块的索引信息表示当前条带内的右下方子并行块的索引与前一条带内的右下方子并行块的索引之间的差值。
19.根据权利要求18所述的方法,其中,所述差值通过使用关于所述差值的绝对值的信息和关于所述差值的符号信息被用信号传送。
20.一种存储比特流的非暂时性计算机可读记录介质,所述比特流由图像解码设备接收、解码并用于重建图像,其中,所述比特流包括关于当前画面中包括的条带的条带模式信息和条带标识信息,
所述条带模式信息用于推导所述条带标识信息,以及
所述条带标识信息用于对所述条带进行解码。
CN201980061580.6A 2018-09-19 2019-09-18 图像编码/解码方法和设备以及存储比特流的记录介质 Pending CN112740680A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
KR10-2018-0112278 2018-09-19
KR20180112278 2018-09-19
KR10-2018-0116517 2018-09-28
KR20180116517 2018-09-28
KR20180174121 2018-12-31
KR10-2018-0174121 2018-12-31
PCT/KR2019/012059 WO2020060184A1 (ko) 2018-09-19 2019-09-18 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Publications (1)

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

Family

ID=69888564

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980061580.6A Pending CN112740680A (zh) 2018-09-19 2019-09-18 图像编码/解码方法和设备以及存储比特流的记录介质

Country Status (5)

Country Link
US (2) US11729383B2 (zh)
EP (1) EP3855740A4 (zh)
KR (1) KR20200033194A (zh)
CN (1) CN112740680A (zh)
WO (1) WO2020060184A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102572140B1 (ko) * 2018-11-30 2023-08-30 샤프 가부시키가이샤 코딩된 비디오의 픽처들에 대한 타일 구조들을 시그널링하기 위한 시스템들 및 방법들
KR20200122254A (ko) * 2019-04-17 2020-10-27 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
US11606574B2 (en) * 2019-05-31 2023-03-14 Apple Inc. Efficient coding of source video sequences partitioned into tiles
US11425376B2 (en) * 2019-08-23 2022-08-23 Apple Inc. Image signal encoding/decoding method and apparatus therefor
US11716488B2 (en) * 2019-09-20 2023-08-01 Qualcomm Incorporated Subpicture signaling in high-level syntax for video coding
WO2021100863A1 (en) * 2019-11-22 2021-05-27 Sharp Kabushiki Kaisha Systems and methods for signaling tiles and slices in video coding
AU2020393729B2 (en) * 2019-11-28 2024-02-29 Lg Electronics Inc. Method and device for signaling information related to slice in image/video encoding/decoding system
CN114762346A (zh) * 2019-12-11 2022-07-15 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
KR20210077625A (ko) * 2019-12-17 2021-06-25 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
KR20220146647A (ko) * 2020-05-19 2022-11-01 구글 엘엘씨 품질-정규화된 비디오 트랜스코딩을 위한 동적 파라미터 선택
WO2022238781A1 (en) 2021-05-10 2022-11-17 3M Innovative Properties Company Optical system including light control film and fresnel lens
EP4203473A1 (en) * 2021-12-22 2023-06-28 Axis AB A method, an image processing device for dividing an array of pixels into slices and tiles, and a system for encoding the slices and tiles into a video stream

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711211B1 (en) 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
US9325999B2 (en) 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
US9621905B2 (en) 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
JP6367965B2 (ja) 2014-03-31 2018-08-01 サムスン エレクトロニクス カンパニー リミテッド デプス映像を符号化または復号する方法、及びその装置
EP3975559A1 (en) * 2016-10-04 2022-03-30 B1 Institute of Image Technology, Inc. Image data encoding/decoding method and apparatus
KR20190024212A (ko) * 2017-08-31 2019-03-08 세종대학교산학협력단 타일 구조의 구성 방법 및 이의 장치
EP3850843A4 (en) * 2018-09-14 2021-11-24 Huawei Technologies Co., Ltd. SLICING AND TILING OF SUBPICTURE SIGNALING IN VIDEO ENCODING
KR102572140B1 (ko) 2018-11-30 2023-08-30 샤프 가부시키가이샤 코딩된 비디오의 픽처들에 대한 타일 구조들을 시그널링하기 위한 시스템들 및 방법들

Also Published As

Publication number Publication date
US20210274176A1 (en) 2021-09-02
EP3855740A1 (en) 2021-07-28
US20230362369A1 (en) 2023-11-09
EP3855740A4 (en) 2022-09-28
WO2020060184A1 (ko) 2020-03-26
US11729383B2 (en) 2023-08-15
KR20200033194A (ko) 2020-03-27

Similar Documents

Publication Publication Date Title
CN111279695B (zh) 用于基于非对称子块的图像编码/解码的方法及装置
CN112740680A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN112369022A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112740685A (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN113273213A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN112369021A (zh) 用于吞吐量增强的图像编码/解码方法和设备以及存储比特流的记录介质
CN112740697A (zh) 图像编码/解码方法和装置及存储比特流的记录介质
CN112335250A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112771862A (zh) 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112740686A (zh) 用于帧内预测模式编码/解码的方法和设备以及用于存储比特流的记录介质
CN113574875A (zh) 基于帧内块复制的编/解码方法和装置及比特流存储介质
CN114788286A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN112740694A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112585976A (zh) 用于对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
CN112740671A (zh) 图像编码/解码方法和装置以及存储比特流的记录介质
CN112673629A (zh) 视频编码/解码方法和装置以及用于存储比特流的记录介质
CN112425167A (zh) 用于图像编码/解码的方法和装置以及其上存储有比特流的记录介质
CN113940077A (zh) 用于视频编码/解码的虚拟边界信令方法和设备
CN113906740A (zh) 帧间预测信息编码/解码方法和装置
CN114342372A (zh) 帧内预测模式、以及熵编解码方法和装置
CN113261286A (zh) 用于推导帧内预测模式的方法和设备
CN113273188A (zh) 图像编码/解码方法和装置以及存储有比特流的记录介质
CN113924779A (zh) 视频编码/解码方法和装置以及比特流存储介质
CN113196758A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
CN114731409A (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