Movatterモバイル変換


[0]ホーム

URL:


CN110662038A - Division of zero cells - Google Patents

Division of zero cells
Download PDF

Info

Publication number
CN110662038A
CN110662038ACN201910586408.4ACN201910586408ACN110662038ACN 110662038 ACN110662038 ACN 110662038ACN 201910586408 ACN201910586408 ACN 201910586408ACN 110662038 ACN110662038 ACN 110662038A
Authority
CN
China
Prior art keywords
block
size
units
video data
unit
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.)
Granted
Application number
CN201910586408.4A
Other languages
Chinese (zh)
Other versions
CN110662038B (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.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance 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 Beijing ByteDance Network Technology Co Ltd, ByteDance IncfiledCriticalBeijing ByteDance Network Technology Co Ltd
Publication of CN110662038ApublicationCriticalpatent/CN110662038A/en
Application grantedgrantedCritical
Publication of CN110662038BpublicationCriticalpatent/CN110662038B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

Translated fromChinese

零单元(ZU)在视频的编码或解码中被使用。视频处理的一个示例方法包括,由于视频数据块具有尺寸S×T,并且S和T中的至少一个是非二的幂数,确定视频数据块将被编码为ZU块;将ZU块划分为两个单元、三个单元或四个单元中的一个;以及,通过对该单元编码而生成比特流。

Zero units (ZU) are used in encoding or decoding of a video. An example method of video processing includes determining that a video data block is to be encoded as a ZU block, because the video data block has a size S×T, and at least one of S and T is a non-power-of-two number; dividing the ZU block into one of two units, three units, or four units; and generating a bitstream by encoding the unit.

Description

Translated fromChinese
零单元的划分Division of zero cells

相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS

根据适用的专利法和/或依据巴黎公约的规则,本申请及时要求于2018年6月29日提交的国际专利申请第PCT/CN2018/093631号、于2018年7月2日提交的美国临时专利申请第62/693,415号以及于2018年7月6日提交的国际专利申请第PCT/CN2018/094767号的优先权和权益。出于根据美国法律的所有目的,该国际专利申请第PCT/CN2018/093631号、美国临时申请第62/693,415号和国际专利申请第PCT/CN2018/094767号的全部公开内容通过引用并入作为本申请的公开内容的一部分。This application timely claims International Patent Application No. PCT/CN2018/093631, filed June 29, 2018, U.S. Provisional Patent, July 2, 2018, in accordance with applicable patent law and/or rules pursuant to the Paris Convention Priority and benefit of Application No. 62/693,415 and International Patent Application No. PCT/CN2018/094767, filed on July 6, 2018. The entire disclosures of this International Patent Application No. PCT/CN2018/093631, US Provisional Application No. 62/693,415 and International Patent Application No. PCT/CN2018/094767 are incorporated by reference for all purposes under US law as part of the disclosure of this application.

技术领域technical field

本专利文件一般地涉及图像和视频编码技术。This patent document relates generally to image and video coding techniques.

背景技术Background technique

数字视频占据因特网和其它数字通信网络上最大的带宽使用。随着能够接收和显示视频的所连接的用户设备的数量增加,预计数字视频使用的带宽需求将继续增长。Digital video accounts for the largest use of bandwidth on the Internet and other digital communication networks. As the number of connected user devices capable of receiving and displaying video increases, bandwidth requirements for digital video usage are expected to continue to grow.

发明内容SUMMARY OF THE INVENTION

描述了与专用编码单元(CU)和/或编码树单元(CTU)相关的用于提高编码效率的设备、系统和方法。具体地,本公开的技术公开了提供增强例如处理位于视频数据块的边界处的子块(例如,在图片、条带、片等中)的零单元。所描述的方法可以应用于现有的视频编码标准(例如,高效视频编码(HEVC))和未来的视频编码标准或视频编解码器两者。Apparatuses, systems and methods for improving coding efficiency are described in relation to dedicated coding units (CUs) and/or coding tree units (CTUs). In particular, the techniques of this disclosure disclose zero cells that provide enhancements such as processing sub-blocks located at boundaries of blocks of video data (eg, in pictures, slices, slices, etc.). The described methods can be applied to both existing video coding standards (eg, High Efficiency Video Coding (HEVC)) and future video coding standards or video codecs.

在一个代表性方面中,所公开的技术可以被用于提供视频编码的方法,其可以实现在视频编码器中。该方法包括由于视频数据块具有尺寸S×T,S和T的至少一个是非二的幂数,确定视频数据块将被编码为零单元(ZU)块;将ZU块划分为两个单元、三个单元或四个单元中的一个;以及通过编码单元生成比特流。In one representative aspect, the disclosed techniques may be used to provide a method of video encoding, which may be implemented in a video encoder. The method includes determining that the video data block is to be encoded as a zero unit (ZU) block since the video data block has size S×T, and at least one of S and T is a non-power of two; dividing the ZU block into two units, three unit or one of four units; and generating a bitstream through the coding unit.

在另一示例方面,公开了另一种视频处理的方法。该方法包括接收对应于编码为零单元(ZU)块的视频数据块的比特流,该零单元(ZU)块被划分为两个单元、三个单元或四个单元,视频数据块具有尺寸S×T;以及通过解码比特流生成视频数据块。In another example aspect, another method of video processing is disclosed. The method includes receiving a bitstream corresponding to a block of video data encoded as a zero-unit (ZU) block, the zero-unit (ZU) block being divided into two, three or four units, the video data block having size S xT; and generating a block of video data by decoding the bitstream.

在另一示例方面,公开了另一种视频处理的方法。该方法包括由于块具有非二的幂数的高度或宽度,确定视频数据块将被编码为零单元(ZU)块;使用划分方案来划分视频数据块,其中,划分方案将视频数据块划分为两个单元、三个单元或四个单元中的一个;通过编码视频数据块生成比特流,其中,划分方案使用与用于对作为非零单元块的另一块的划分的信令通知相同的语法来发信令通知。In another example aspect, another method of video processing is disclosed. The method includes determining that a block of video data is to be encoded as a zero unit (ZU) block since the block has a height or width that is not a power of two; dividing the block of video data using a partitioning scheme, wherein the partitioning scheme divides the block of video data into One of two units, three units, or four units; generates a bitstream by encoding a block of video data, where the partitioning scheme uses the same syntax used to signal the partitioning of another block that is a non-zero unit block to signal.

在另一示例方面,公开了另一种视频处理的方法。该方法包括接收对应于视频数据块的比特流,视频数据块由于视频数据块具有尺寸S×T,S和T的至少一个是非二的幂数,而被编码为零单元(ZU)块,其中,使用将视频数据块划分为两个单元、三个单元或四个单元中的一个的划分方案将视频数据块划分,并且其中,划分方案在比特流中使用与用于信令通知非零单元块的划分相同的语法来信令通知;基于信令通知,解码比特流解码以生成视频数据块。In another example aspect, another method of video processing is disclosed. The method includes receiving a bitstream corresponding to a block of video data encoded as a block of zero units (ZU) because the block of video data has size S×T, at least one of S and T being a non-power of two, wherein , the video data block is divided using a partitioning scheme that divides the video data block into one of two, three, or four cells, and wherein the partitioning scheme is used in the bitstream and for signaling non-zero cells The division of the blocks is signaled with the same syntax; based on the signaling, the decoded bitstream is decoded to generate blocks of video data.

在另一示例方面,公开了另一种视频处理的方法。该方法包括由于视频数据块具有尺寸S×T,S和T的至少一个是非二的幂数,确定视频数据块将被编码为零单元(ZU)块;使用从ZU块划分方案的组中选择的划分方案将ZU块划分为两个单元、三个单元或四个单元中的一个;编码该单元;以及在比特流中信令通知被编码的单元。这里,ZU块划分方案的组是可用于分割编码单元(CU)的划分方案的组的子集。In another example aspect, another method of video processing is disclosed. The method includes determining that the video data block is to be encoded as a zero-unit (ZU) block since the video data block has size S x T, at least one of S and T being a non-power of two; using selecting from the group of ZU block partitioning schemes The partitioning scheme of ZU divides the ZU block into one of two units, three units, or four units; encodes the unit; and signals the encoded unit in the bitstream. Here, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).

在另一示例方面,公开了另一种视频处理的方法。该方法包括接收对应于视频数据块的比特流,视频数据块具有尺寸;接收信令通知,该信令通知指示由于视频数据块具有尺寸S×T,S和T的至少一个是非二的幂数,视频数据块作为零单元(ZU)块被划分,使用从ZU块划分方案的组中选择的划分方案将块划分;以及基于信令通知,解码对应于单元的比特流以重建视频数据块。这里,ZU块划分方案的组是可用于分割编码单元(CU)的划分方案的组的子集。In another example aspect, another method of video processing is disclosed. The method includes receiving a bitstream corresponding to a block of video data, the block of video data having a size; receiving signaling indicating that since the block of video data has size S×T, at least one of S and T is a non-power of two , the block of video data is partitioned as a zero-unit (ZU) block, the block is partitioned using a partitioning scheme selected from the group of ZU block partitioning schemes; and based on the signaling, the bitstream corresponding to the unit is decoded to reconstruct the block of video data. Here, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).

在另一示例方面,公开了另一种视频处理的方法。该方法包括由于视频数据块具有尺寸,尺寸的至少一个是非二的幂数,确定视频数据块将被编码为零单元(ZU)块;在确定ZU块位于I条带或帧内编码图片中时,将ZU块划分为两个单元、三个单元或四个单元中的一个;编码单元;以及在比特流中信令通知编码的单元。In another example aspect, another method of video processing is disclosed. The method includes determining that the video data block is to be encoded as a zero unit (ZU) block since the video data block has a size, at least one of which is a non-power of two; when determining that the ZU block is located in an I-slice or an intra-coded picture , dividing the ZU block into one of two units, three units, or four units; an encoding unit; and a unit signaling encoding in the bitstream.

在另一示例方面,公开了另一种视频处理的方法。该方法包括接收对应于视频数据块的比特流,视频数据块具有尺寸;接收信令通知,该信令通知指示视频数据块包括从零单元(ZU)块划分的单元,零单元(ZU)块具有至少高度或宽度为非二的幂数,并且在无变换和残差编码的情况下被编码,划分的ZU块位于I条带或帧内编码图片中;以及基于信令通知,解码对应于单元的比特流以重建视频数据块。In another example aspect, another method of video processing is disclosed. The method includes receiving a bitstream corresponding to a block of video data, the block of video data having a size; receiving signaling indicating that the block of video data includes cells divided from a zero-unit (ZU) block, the zero-unit (ZU) block has at least a height or width that is not a power of two, and is encoded without transform and residual encoding, the divided ZU blocks are located in an I slice or an intra-coded picture; and based on signaling, decoding corresponds to A bitstream of units to reconstruct blocks of video data.

在另一代表性方面中,上述方法以处理器可执行代码的形式体现并且储存在计算机可读程序介质中。In another representative aspect, the above-described method is embodied in processor-executable code and stored on a computer-readable program medium.

在另一代表性方面中,公开了一种配置为或可操作为进行上述方法的设备。该设备可以包括处理器,该处理器被编程以实现该方法。In another representative aspect, an apparatus configured or operable to perform the above method is disclosed. The apparatus may include a processor programmed to implement the method.

在另一代表性方面中,视频解码器装置可实现如本文所述的方法。In another representative aspect, a video decoder device may implement a method as described herein.

在附图、说明书和权利要求中更详细地描述了本公开的技术的上述和其它方面和特征。The above and other aspects and features of the disclosed technology are described in greater detail in the drawings, specification, and claims.

附图说明Description of drawings

图1示出了典型的高效视频编码(HEVC)视频编码器和解码器的示例框图。1 shows an example block diagram of a typical High Efficiency Video Coding (HEVC) video encoder and decoder.

图2示出了H.264/AVC中的宏块(MB)划分的示例。FIG. 2 shows an example of macroblock (MB) division in H.264/AVC.

图3示出了将编码块(CB)分割成预测块(PB)的示例。Figure 3 shows an example of partitioning a coding block (CB) into prediction blocks (PB).

图4A和4B分别示出了将编码树块(CTB)细分为CB和变换块(TB)以及相应的四叉树的示例。Figures 4A and 4B show an example of subdividing a coding tree block (CTB) into CBs and transform blocks (TB) and corresponding quadtrees, respectively.

图5示出了一帧的划分结构的示例。FIG. 5 shows an example of the division structure of one frame.

图6A和6B分别示出了在图5中的示例性帧中突出显示的CTB的细分和信令方法。6A and 6B respectively illustrate the subdivision and signaling method of the CTB highlighted in the exemplary frame in FIG. 5 .

图7A和7B示出了用于最大编码单元(LCU)的细分和相应的QTBT(四叉树加二叉树)的示例。Figures 7A and 7B show an example of a subdivision for a largest coding unit (LCU) and a corresponding QTBT (quadtree plus binary tree).

图8A至8E示出了划分编码块的示例。8A to 8E illustrate an example of dividing a coding block.

图9示出了基于QTBT的CB的示例细分。Figure 9 shows an example subdivision of a QTBT based CB.

图10A至10I示出了支持多树类型(MTT)的CB的划分的示例,其中多树类型(MTT)是QTBT的一般化。10A to 10I illustrate an example of the partitioning of CBs supporting Multi-Tree Type (MTT), which is a generalization of QTBT.

图11示出了树类型信令的示例。Figure 11 shows an example of tree type signaling.

图12A至12C示出了跨越图片边界的CTB的示例。12A to 12C show examples of CTBs that span picture boundaries.

图13示出了图片边界处的零单元的示例。Figure 13 shows an example of zero cells at picture boundaries.

图14示出了根据本公开的技术的用于视频编码的示例方法的流程图。14 illustrates a flowchart of an example method for video encoding in accordance with the techniques of this disclosure.

图15示出了根据本公开的技术的用于视频解码的另一示例方法的流程图。15 illustrates a flowchart of another example method for video decoding in accordance with the techniques of this disclosure.

图16是示出可用于实现本公开技术的各个部分的计算机系统或其它控制设备的架构的示例的框图。16 is a block diagram illustrating an example of the architecture of a computer system or other control device that may be used to implement various portions of the disclosed technology.

图17示出了可用于实现本公开技术的各个部分的移动设备的示例实施例的框图。17 illustrates a block diagram of an example embodiment of a mobile device that may be used to implement portions of the disclosed techniques.

图18是视频处理的示例方法的流程图。18 is a flowchart of an example method of video processing.

图19是视频处理的示例方法的流程图。19 is a flowchart of an example method of video processing.

具体实施方式Detailed ways

由于对更高分辨率视频的需求日益增加,视频编码方法和技术在现代技术中无处不在。视频编解码器通常包括压缩或解压缩数字视频的电子电路或软件,并且视频编解码器被不断改进以提供更高的编码效率。视频编解码器将未压缩视频转换为压缩格式,或反之亦然。视频质量、用于表示视频的数据量(由比特率确定)、编码和解码算法的复杂性、对数据丢失和错误的敏感性、编辑便利性、随机访问以及端到端延迟(迟延)之间存在复杂的关系。压缩格式通常符合标准视频压缩规范,例如高效视频编码(HEVC)标准(也称为H.265或MPEG-H第2部分)、即将最终确定的通用视频编码标准,或其它当前和/或未来的视频编码标准。Video coding methods and techniques are ubiquitous in modern technology due to the increasing demand for higher resolution video. Video codecs typically include electronic circuitry or software that compresses or decompresses digital video, and video codecs are continually being improved to provide higher encoding efficiency. A video codec converts uncompressed video to a compressed format, or vice versa. between video quality, amount of data used to represent the video (determined by bit rate), complexity of encoding and decoding algorithms, susceptibility to data loss and errors, ease of editing, random access, and end-to-end latency (latency) There are complex relationships. Compression formats typically conform to standard video compression specifications, such as the High Efficiency Video Coding (HEVC) standard (also known as H.265 or MPEG-H Part 2), the soon-to-be-finalized Universal Video Coding Standard, or other current and/or future Video coding standard.

所公开的技术的实施例可以应用于现有的视频编码标准(例如,HEVC,H.265)和未来的标准以改善压缩性能。在本文件中使用章节标题来提高描述的可读性而不是以任何方式将讨论或实施例(和/或实现方式)仅限于各个章节。Embodiments of the disclosed techniques may be applied to existing video coding standards (eg, HEVC, H.265) and future standards to improve compression performance. Section headings are used in this document to improve readability of the description and not in any way limit discussion or embodiments (and/or implementations) to individual sections.

在本文件中使用章节标题以便于理解,并且不将章节中公开的实施例仅限于该章节。此外,虽然参考通用视频编码或其它特定视频编解码器描述了某些实施例,但是所公开的技术还可应用于其它视频编码技术。此外,虽然一些实施例详细描述了视频编码步骤,但是应当理解的是,撤销编码的相应解码步骤将由解码器实现。此外,术语视频处理包括视频编码或压缩、视频解码或解压缩以及视频转码,其中视频像素从一种压缩格式表示为另一压缩格式或以不同的压缩比特率表示。Section headings are used in this document for ease of understanding and do not limit the embodiments disclosed in a section to that section only. Additionally, although certain embodiments are described with reference to generic video coding or other specific video codecs, the disclosed techniques may also be applied to other video coding techniques. Furthermore, while some embodiments describe video encoding steps in detail, it should be understood that the corresponding decoding steps of de-encoding will be implemented by a decoder. Furthermore, the term video processing includes video encoding or compression, video decoding or decompression, and video transcoding, where video pixels are represented from one compression format to another compression format or at different compression bit rates.

1.视频编码的示例实施例1. Example Embodiments of Video Coding

图1示出了典型HEVC视频编码器和解码器的示例性框图。产生符合HEVC的比特流的编码算法通常如下进行。每个图片被分割为块状区域,其中精确的块划分被传送到解码器。视频序列的第一图片(以及在对视频序列的每个干净随机访问点处的第一图片)仅使用帧内预测(在同一图片内使用区域到区域的空间上的数据的一些预测,而不基于其它图片)进行编码。对于序列的所有剩余图片或随机访问点之间的图片,对于大多数块通常使用帧间时间预测编码模式。帧间预测的编码过程包括选择包含选定的参考图片和运动矢量(MV)的运动数据,该参考图片和运动矢量(MV)将被应用于预测每个块的样本。编码器和解码器通过应用运动补偿(MC)来生成相同的帧间预测信号,该运动补偿(MC)使用作为辅助信息发送的MV和模式决定数据。Figure 1 shows an exemplary block diagram of a typical HEVC video encoder and decoder. The encoding algorithm to generate the HEVC compliant bitstream generally proceeds as follows. Each picture is divided into block-like regions, where the precise block division is passed to the decoder. The first picture of the video sequence (and the first picture at each clean random access point to the video sequence) uses only intra prediction (with some prediction of the data on the region-to-region space within the same picture, not encoding based on other pictures). For all remaining pictures of the sequence or pictures between random access points, the inter temporal predictive coding mode is typically used for most blocks. The coding process for inter prediction involves selecting motion data that contains a selected reference picture and a motion vector (MV) that will be applied to predict the samples of each block. The encoder and decoder generate the same inter prediction signal by applying motion compensation (MC) using MV and mode decision data sent as side information.

通过线性空间变换对帧内预测或帧间预测的残差信号进行变换,其中该残差信号是原始块与其预测之间的差异。然后对变换系数进行缩放、量化、熵编码并与预测信息一起发送。An intra- or inter-predicted residual signal, which is the difference between the original block and its prediction, is transformed by a linear spatial transform. The transform coefficients are then scaled, quantized, entropy encoded and sent with the prediction information.

编码器复制解码器处理环路(见图1中的灰色阴影框),使得两者都将为后续数据生成相同的预测。因此,量化的变换系数通过逆缩放构造,并且然后进行逆变换以复制残差信号的解码的近似值。然后将残差加入到预测中,并且然后可以将该加法的结果输入一个或两个环路滤波器,以平滑由逐块处理和量化引起的伪影(artifact)。最终的图片表示(即解码器输出的复制)存储在解码的图片缓冲器中以用于后续图片的预测。通常,图片的编码或解码处理的顺序常常不同于它们从来源到达的顺序,需要区分解码器的解码顺序(即比特流顺序)和输出顺序(即显示顺序)。The encoder replicates the decoder processing loop (see the gray shaded box in Figure 1) so that both will produce the same predictions for subsequent data. Thus, the quantized transform coefficients are constructed by inverse scaling, and then inverse transformed to replicate the decoded approximation of the residual signal. The residual is then added to the prediction, and the result of this addition can then be fed into one or two loop filters to smooth out artifacts caused by block-by-block processing and quantization. The final picture representation (ie a copy of the decoder output) is stored in the decoded picture buffer for prediction of subsequent pictures. In general, the order in which pictures are encoded or decoded is often different from the order in which they arrive from the source, requiring a distinction between the decoder's decoding order (ie, bitstream order) and output order (ie, display order).

通常期望将由HEVC编码的视频材料作为逐行扫描图像输入(由于源视频源自该格式或者由于由编码之前的去隔行(deinterlacing)产生)。在HEVC设计中不存在显式编码特征以支持隔行扫描的使用,因为隔行扫描不再用于显示器,并且在分布时变得非常不常见。但是,已经在HEVC中提供了元数据语法以允许编码器指示,隔行扫描的视频已经通过将隔行扫描视频的每个场(即每个视频帧的偶数或奇数行)编码为单独的图片而被发送,或者隔行扫描的视频已经通过将每个隔行扫描的帧编码为HEVC编码的图片而被发送。这提供了一种有效的编码隔行扫描的视频的方法,而无需加重解码器需支持隔行扫描的视频的特殊的解码过程的负担。It is often desirable to input HEVC encoded video material as a progressive scan image (either because the source video originates from this format or as a result of deinterlacing prior to encoding). There is no explicit coding feature in the HEVC design to support the use of interlacing since interlacing is no longer used for displays and has become very uncommon when distributed. However, a metadata syntax has been provided in HEVC to allow encoders to indicate that interlaced video has been encoded by encoding each field (ie, even or odd lines of each video frame) of interlaced video as a separate picture Transmitted, or interlaced video has been transmitted by encoding each interlaced frame as a HEVC encoded picture. This provides an efficient method of encoding interlaced video without burdening the decoder with the special decoding process required to support interlaced video.

1.1.H.264/AVC中的划分树结构的示例1.1. Example of partition tree structure in H.264/AVC

先前标准中的编码层的核心是宏块,包含16×16的亮度(luma)样本块、以及在4:2:0颜色采样的通常情况下的两个对应的8×8的色度(chroma)样本块。The core of the coding layer in the previous standard is the macroblock, containing a 16x16 block of luma (luma) samples, and two corresponding 8x8 chroma (chroma) samples in the usual case of 4:2:0 color sampling. ) sample block.

帧内编码块使用空间预测来利用像素之间的空间相关性。两种划分被定义为:16x16和4x4。Intra-coded blocks use spatial prediction to exploit the spatial correlation between pixels. Two divisions are defined: 16x16 and 4x4.

帧间编码块通过估计图片之间的运动来使用时间预测而不是空间预测。可以对于16x16宏块或其任何子宏块划分16x8、8x16、8x8、8x4、4x8、4x4来独立地估计运动,如图2所示。每子宏块划分仅允许一个运动矢量(MV)。Inter-coded blocks use temporal prediction instead of spatial prediction by estimating motion between pictures. Motion can be estimated independently for a 16x16 macroblock or any of its sub-macroblock partitions 16x8, 8x16, 8x8, 8x4, 4x8, 4x4, as shown in Figure 2. Only one motion vector (MV) is allowed per sub-macroblock partition.

1.2.HEVC中的划分树结构的示例1.2. Example of partition tree structure in HEVC

在HEVC中,通过使用表示为编码树的四叉树结构将编码树单元(CTU)划分成编码单元(CU),以适应各种局部特性。使用帧间(时间)预测还是帧内(空间)预测来对图片区域进行编码的决定是在CU级做出的。根据预测单元(PU)划分类型,每个CU可以进一步划分成一个、两个或四个PU。在一个PU内部,应用相同的预测过程,并且在PU的基础上将相关信息发送到解码器。在通过基于PU划分类型应用预测过程而获得了残差块之后,可以根据类似于CU的编码树的另一个四叉树结构将CU划分为变换单元(TU)。HEVC结构的关键特征之一是它具有多个划分概念,包括CU、PU和TU。In HEVC, a coding tree unit (CTU) is divided into coding units (CUs) by using a quad-tree structure represented as a coding tree to accommodate various local characteristics. The decision to encode a picture region using inter (temporal) prediction or intra (spatial) prediction is made at the CU level. Depending on the prediction unit (PU) partition type, each CU may be further partitioned into one, two, or four PUs. Inside a PU, the same prediction process is applied and relevant information is sent to the decoder on a PU basis. After a residual block is obtained by applying a prediction process based on the PU partition type, the CU may be partitioned into transform units (TUs) according to another quad-tree structure similar to the coding tree of the CU. One of the key features of the HEVC structure is that it has multiple partition concepts, including CU, PU, and TU.

对使用HEVC的混合视频编码中涉及的某些特征包括:Some of the features involved in encoding hybrid video using HEVC include:

(1)编码树单元(CTU)和编码树块(CTB)结构:HEVC中的类似结构是编码树单元(CTU),其具有由编码器选择的尺寸并且可以大于传统宏块。CTU由亮度CTB和相应的色度CTB以及语法元素组成。亮度CTB的尺寸L×L可以被选择为L=16、32或64个样本,较大的尺寸通常能够实现更好的压缩。然后,HEVC支持使用树结构和类似四叉树的信令来将CTB划分为更小的块。(1) Coding Tree Unit (CTU) and Coding Tree Block (CTB) structures: A similar structure in HEVC is a Coding Tree Unit (CTU), which has a size selected by the encoder and can be larger than conventional macroblocks. A CTU consists of a luma CTB and corresponding chroma CTB and syntax elements. The size LxL of the luma CTB can be chosen to be L=16, 32 or 64 samples, with larger sizes generally enabling better compression. HEVC then supports the use of tree structures and quadtree-like signaling to divide the CTB into smaller blocks.

(2)编码单元(CU)和编码块(CB):CTU的四叉树语法指定其亮度CB和色度CB的尺寸和位置。四叉树的根与CTU相关联。因此,亮度CTB的尺寸是亮度CB的最大支持尺寸。将CTU划分成亮度CB和色度CB是信令联合的。一个亮度CB和通常两个色度CB以及相关联的语法一起形成编码单元(CU)。CTB可以仅包含一个CU或者可以被划分以形成多个CU,并且每个CU具有相关联的、向预测单元(PU)以及变换单元(TU)的树的划分。(2) Coding Unit (CU) and Coding Block (CB): The quadtree syntax of a CTU specifies the size and position of its luma CB and chroma CB. The root of the quadtree is associated with the CTU. Therefore, the size of the luma CTB is the maximum supported size of the luma CB. The division of the CTU into luma CBs and chroma CBs is signaling joint. One luma CB and typically two chroma CBs and associated syntax together form a coding unit (CU). A CTB may contain only one CU or may be partitioned to form multiple CUs, and each CU has an associated partition into a tree of prediction units (PUs) and transform units (TUs).

(3)预测单元和预测块(PB):使用帧间图片预测还是帧内图片预测来对图片区域编码的决策是在CU级进行的。PU划分结构的根在CU级。取决于基本预测类型决策,然后可以在尺寸上进一步划分亮度CB和色度CB,并根据亮度和色度预测块(PB)对其进行预测。HEVC支持从64×64到4×4样本的可变PB尺寸。图3示出了对于MxM CU所允许的PB的示例。(3) Prediction Unit and Prediction Block (PB): The decision to encode a picture region using inter-picture prediction or intra-picture prediction is made at the CU level. The root of the PU partition structure is at the CU level. Depending on the base prediction type decision, the luma CB and chroma CB can then be further partitioned in size and predicted from luma and chroma prediction blocks (PB). HEVC supports variable PB sizes from 64x64 to 4x4 samples. FIG. 3 shows an example of PB allowed for an MxM CU.

(4)变换单元(TU)和变换块:使用块变换对预测残差进行编码。TU树结构的根在CU级。亮度CB残差可以与亮度变换块(TB)相同,或者可以被进一步划分成更小的亮度TB。这同样适用于色度TB。对于正方形TB尺寸4×4、8×8、16×16和32×32,定义类似于离散余弦变换(DCT)的整数基函数。对于亮度帧内图片预测残差的4×4变换,可以替代地指定从离散正弦变换(DST)的形式导出的整数变换。(4) Transform Unit (TU) and Transform Block: The prediction residual is encoded using block transform. The root of the TU tree structure is at the CU level. The luma CB residual may be the same as the luma transform block (TB), or may be further divided into smaller luma TBs. The same applies to Chroma TB. For square TB sizes 4x4, 8x8, 16x16 and 32x32, an integer basis function similar to the discrete cosine transform (DCT) is defined. For the 4x4 transform of the luma intra picture prediction residual, an integer transform derived in the form of a discrete sine transform (DST) can be specified instead.

1.2.1.树结构的划分到TB和TU的示例1.2.1. Example of tree structure division into TB and TU

对于残差编码,可以将CB递归地划分为变换块(TB)。由残差四叉树信令通知划分。仅指定正方形CB和TB划分,其中块可以被递归地划分到象限(quadrant),如图4A和4B所示。对于尺寸为M×M的给定亮度CB,标志(flag)表明是否将该CB划分成四个尺寸为M/2×M/2的块。如果如SPS中指示的残差四叉树的最大深度所信令通知的,每个象限能够进一步划分,则为每个象限分配标志,该标志指示是否将其划分成四个象限。由残差四叉树产生的叶节点块是变换块,通过变换编码对其进一步处理。编码器指示它将使用的最大和最小亮度TB尺寸。当CB尺寸大于最大TB尺寸时,划分是隐含的。当划分将导致亮度TB尺寸小于所指示的最小值时,不划分是隐含的。除了当亮度TB尺寸为4×4时,色度TB尺寸在每个维度上是亮度TB尺寸的一半,在亮度TB尺寸为4×4的情况下,单个4×4色度TB被用于由四个4×4亮度TB覆盖的区域。在帧内图片预测的CU的情况下,最近邻的TB(在CB内或在CB外)的解码后样本被用作用于帧内图片预测的参考数据。For residual coding, the CB can be recursively divided into transform blocks (TBs). The division is signaled by a residual quadtree. Only square CB and TB partitions are specified, where blocks can be recursively partitioned into quadrants, as shown in Figures 4A and 4B. For a given luma CB of size MxM, a flag indicates whether the CB is divided into four blocks of size M/2xM/2. If each quadrant can be further divided as signaled by the maximum depth of the residual quadtree indicated in the SPS, each quadrant is assigned a flag indicating whether it is divided into four quadrants. The leaf node blocks produced by the residual quadtree are transform blocks, which are further processed by transform coding. The encoder indicates the maximum and minimum luma TB size it will use. Partitioning is implicit when the CB size is larger than the maximum TB size. No partitioning is implied when partitioning would result in a luma TB size smaller than the minimum indicated. Except when the luma TB size is 4x4, the chroma TB size is half the luma TB size in each dimension, where the luma TB size is 4x4, a single 4x4 chroma TB is used by The area covered by four 4×4 luminance TBs. In the case of a CU for intra picture prediction, the decoded samples of the nearest neighbor TB (either within the CB or outside the CB) are used as reference data for intra picture prediction.

与先前的标准相反,HEVC设计允许TB跨越多个PB以用于帧间预测的CU,以使四叉树结构的TB划分的潜在编码效率益处最大化。Contrary to previous standards, the HEVC design allows TBs to span multiple PBs for inter-predicted CUs to maximize the potential coding efficiency benefits of quadtree-structured TB partitioning.

1.2.2.图片边界编码的示例1.2.2. Example of picture boundary encoding

图片的边界以最小允许的亮度CB大小为单位定义。因此,在图片的右边界和底边界,一些CTU可能会覆盖部分位于图片边界之外的区域。该条件被解码器检测到,并且CTU四叉树根据需要被隐式地分割,以将CB大小减小到整个CB将适合到图片中的程度。The boundaries of the picture are defined in units of the smallest allowed luminance CB size. Therefore, at the right and bottom borders of the picture, some CTUs may cover areas that are partially outside the picture borders. This condition is detected by the decoder and the CTU quadtree is implicitly partitioned as needed to reduce the CB size to the extent that the entire CB will fit in the picture.

图5示出了一个帧的划分结构的示例,其中分辨率为416×240像素,尺寸为7 CTB×4 CTB,其中CTB的大小为64×64。如图5所示,部分位于右边界和底边界之外的CTB具有隐含的分割(虚线,表示为502),并且完全落在外面的CU就被跳过(不被编码)。FIG. 5 shows an example of the division structure of a frame, where the resolution is 416×240 pixels, the size is 7 CTB×4 CTB, and the size of the CTB is 64×64. As shown in FIG. 5, CTBs that partially lie outside the right and bottom borders have implicit partitions (dashed lines, denoted 502), and CUs that fall completely outside are skipped (not encoded).

在图5所示的示例中,突出显示的CTB(504),其行CTB索引等于2且列CTB索引等于3,在当前图片内具有64×48像素,并且不适合64×64CTB。因此,它被强制分割为32x32而没有分割标志信号。对于左上角的32x32,它被帧完全覆盖。当它选择根据速率-失真成本以较小的块编码时(对于左上角的16x16用8x8,并且其余的以16x16编码),需要编码几个分割标志。这些分割标志(用于是否将左上角的32x32分割为四个16x16块的一个标志,以及用于信令通知一个16x16是否被进一步分割,以及对于在左上角的16x16中的四个8x8块中的每一个是否进一步分割8x8的标志)必须被明确地信令通知。右上角的32x32块存在类似情况。对于两个底部32x32块,因为它们部分位于图片边界(506)的外部,需要应用进一步的QT分割而不用信令通知。图6A和6B分别示出了图5中突出显示的CTB(504)的细分和信令方法。In the example shown in Figure 5, the highlighted CTB (504), with row CTB index equal to 2 and column CTB index equal to 3, has 64x48 pixels within the current picture and does not fit into a 64x64 CTB. Therefore, it is forced to be split into 32x32 without the split flag signal. For the 32x32 in the upper left corner, it is completely covered by the frame. When it chooses to encode in smaller blocks according to rate-distortion cost (8x8 for 16x16 in the upper left corner, and 16x16 for the rest), several split flags need to be encoded. These split flags (a flag for whether to split the 32x32 in the upper left corner into four 16x16 blocks, and for signaling whether a 16x16 is further split, and for the four 8x8 blocks in the 16x16 in the upper left corner Each flag whether to further split 8x8) must be signaled explicitly. A similar situation exists for the 32x32 block in the upper right corner. For the two bottom 32x32 blocks, since they are partially outside the picture boundary (506), further QT partitioning needs to be applied without signaling. Figures 6A and 6B illustrate the subdivision and signaling method of the CTB (504) highlighted in Figure 5, respectively.

1.2.3.CTB大小指示的示例1.2.3. Example of CTB size indication

表1中示出了用于一般序列参数集的示例RBSP(原始字节序列有效载荷)语法表。An example RBSP (Raw Byte Sequence Payload) syntax table for the generic sequence parameter set is shown in Table 1.

表1:RBSP语法结构Table 1: RBSP syntax structure

Figure BDA0002114572670000091
Figure BDA0002114572670000091

相应的语义包括:The corresponding semantics include:

log2_min_luma_coding_block_size_minus3加3指定最小亮度编码块大小;以及log2_min_luma_coding_block_size_minus3 plus 3 specifies the minimum luma coding block size; and

log2_diff_max_min_luma_coding_block_size指定最大亮度编码块大小和最小亮度编码块大小之间的差异。log2_diff_max_min_luma_coding_block_size specifies the difference between the maximum luma coding block size and the minimum luma coding block size.

变量:MinCbLog2SizeY,CtbLog2SizeY,MinCbSizeY,CtbSizeY,PicWidthInMinCbsY,PicWidthInCtbsY,PicHeightInMinCbsY,PicHeightInCtbsY,PicSizeInMinCbsY,PicSizeInCtbsY,PicSizeInSamplesY,PicWidthInSamplesC和PicHeightInSamplesC通过以下得到:Variables: MinCbLog2SizeY, CtbLog2SizeY, MinCbSizeY, CtbSizeY, PicWidthInMinCbsY, PicWidthInCtbsY, PicHeightInMinCbsY, PicHeightInCtbsY, PicSizeInMinCbsY, PicSizeInCtbsY, PicSizeInSamplesY, PicWidthInSamplesC and PicHeightInSamplesC are obtained by:

MinCbLog2SizeY=log2_min_luma_coding_block_size_minus3+3MinCbLog2SizeY=log2_min_luma_coding_block_size_minus3+3

CtbLog2SizeY=MinCbLog2SizeY+log2_diff_max_min_luma_coding_block_sizeCtbLog2SizeY=MinCbLog2SizeY+log2_diff_max_min_luma_coding_block_size

MinCbSizeY=1<<MinCbLog2SizeYMinCbSizeY=1<<MinCbLog2SizeY

CtbSizeY=1<<CtbLog2SizeYCtbSizeY=1<<CtbLog2SizeY

PicWidthInMinCbsY=pic_width_in_luma_samples/MinCbSizeYPicWidthInMinCbsY=pic_width_in_luma_samples/MinCbSizeY

PicWidthInCtbsY=Ceil(pic_width_in_luma_samples÷CtbSizeY)PicWidthInCtbsY=Ceil(pic_width_in_luma_samples÷CtbSizeY)

PicHeightInMinCbsY=pic_height_in_luma_samples/MinCbSizeYPicHeightInMinCbsY=pic_height_in_luma_samples/MinCbSizeY

PicHeightInCtbsY=Ceil(pic_height_in_luma_samples÷CtbSizeY)PicHeightInCtbsY=Ceil(pic_height_in_luma_samples÷CtbSizeY)

PicSizeInMinCbsY=PicWidthInMinCbsY*PicHeightInMinCbsYPicSizeInMinCbsY=PicWidthInMinCbsY*PicHeightInMinCbsY

PicSizeInCtbsY=PicWidthInCtbsY*PicHeightInCtbsYPicSizeInCtbsY=PicWidthInCtbsY*PicHeightInCtbsY

PicSizeInSamplesY=pic_width_in_luma_samples*pic_height_in_luma_samplesPicSizeInSamplesY=pic_width_in_luma_samples*pic_height_in_luma_samples

PicWidthInSamplesC=pic_width_in_luma_samples/SubWidthCPicWidthInSamplesC=pic_width_in_luma_samples/SubWidthC

PicHeightInSamplesC=pic_height_in_luma_samples/SubHeightCPicHeightInSamplesC=pic_height_in_luma_samples/SubHeightC

变量CtbWidthC和CtbHeightC,其分别指定每个色度CTB阵列的宽度和高度,通过以下得到:The variables CtbWidthC and CtbHeightC, which specify the width and height, respectively, of each chroma CTB array are obtained by:

如果chroma_format_idc等于0(单色)或者separate_colour_plane_flag等于1,则CtbWidthC和CtbHeightC都等于0;If chroma_format_idc is equal to 0 (monochrome) or separate_colour_plane_flag is equal to 1, then both CtbWidthC and CtbHeightC are equal to 0;

否则,CtbWidthC和CtbHeightC通过以下得到:Otherwise, CtbWidthC and CtbHeightC are obtained by:

CtbWidthC=CtbSizeY/SubWidthCCtbWidthC=CtbSizeY/SubWidthC

CtbHeightC=CtbSizeY/SubHeightCCtbHeightC=CtbSizeY/SubHeightC

1.3.在JEM中具有较大CTU的四叉树加二叉树块结构的示例1.3. Example of quadtree plus binary tree block structure with larger CTU in JEM

在一些实施例中,使用被称为联合探索模型(JEM)的参考软件探索未来的视频编码技术。除二叉树结构外,JEM还描述了四叉树加二叉树(QTBT)和三叉树(TT)结构。In some embodiments, future video coding techniques are explored using reference software known as the Joint Exploration Model (JEM). In addition to the binary tree structure, JEM also describes quadtree plus binary tree (QTBT) and ternary tree (TT) structures.

1.3.1.QTBT块划分结构的示例1.3.1. Example of QTBT block partition structure

与HEVC相比,QTBT结构消除了多种划分类型的概念,即它消除了CU、PU和TU概念的区别,并为CU划分形状提供了更大的灵活性。在QTBT块结构中,CU可以具有正方形或矩形形状。如图7A所示,首先用四叉树结构划分编码树单元(CTU)。四叉树叶节点进一步由二叉树结构划分。在二叉树分割中有两种分割类型,对称水平分割和对称垂直分割。二叉树叶节点被称为编码单元(CU),并且该分段用于预测和变换处理而无需任何进一步划分。这意味着CU、PU和TU在QTBT编码块结构中具有相同的块大小。在JEM中,CU有时由不同颜色分量的编码块(CB)组成——例如,一个CU在4:2:0色度格式的P和B条带的情况下包含一个亮度CB和两个色度CB;并且有时由单个分量的CB组成——例如,一个CU在I条带的情况下仅包含一个亮度CB或仅两个的色度CB。Compared with HEVC, the QTBT structure eliminates the concept of multiple partition types, i.e. it eliminates the distinction of CU, PU and TU concepts, and provides more flexibility for CU partition shape. In the QTBT block structure, a CU may have a square or rectangular shape. As shown in FIG. 7A, a coding tree unit (CTU) is first divided with a quad-tree structure. The quad-leaf nodes are further divided by a binary tree structure. There are two types of split in binary tree split, symmetric horizontal split and symmetric vertical split. A binary leaf node is called a coding unit (CU), and this segment is used for prediction and transform processing without any further partitioning. This means that CUs, PUs and TUs have the same block size in the QTBT coding block structure. In JEM, CUs are sometimes composed of coded blocks (CBs) of different color components - for example, a CU contains one luma CB and two chroma in the case of P and B slices in 4:2:0 chroma format CB; and sometimes consists of CBs of a single component - for example, a CU contains only one luma CB or only two chroma CBs in the case of an I slice.

为QTBT划分方案定义了以下参数:The following parameters are defined for the QTBT partition scheme:

-CTU大小:四叉树的根节点大小,与HEVC中的概念相同-CTU size: the size of the root node of the quadtree, the same concept as in HEVC

-MinQTSize:最小允许的四叉树叶节点大小-MinQTSize: Minimum allowed quad-leaf node size

-MaxBTSize:最大允许的二叉树根节点大小-MaxBTSize: Maximum allowed size of binary tree root node

-MaxBTDepth:最大允许的二叉树深度-MaxBTDepth: maximum allowed depth of binary tree

-MinBTSize:最小允许的二叉树叶节点大小-MinBTSize: Minimum allowed size of binary leaf nodes

在QTBT划分结构的一个示例中,CTU大小设置为128×128个亮度样本,以及两个相应的64×64色度样本块,MinQTSize设置为16×16,MaxBTSize设置为64×64,MinBTSize(对于宽度和高度两者)设置为4×4,并且MaxBTDepth设置为4。四叉树划分首先应用于CTU以生成四叉树叶节点。四叉树叶节点可以具有从16×16(即,MinQTSize)到128×128(即,CTU大小)的大小。如果四叉树叶节点为128×128,则它将不会被二叉树进一步分割,因为大小超过了MaxBTSize(即64×64)。否则,四叉树叶节点可以被二叉树进一步分割。因此,四叉树叶节点也是二叉树的根节点,并且其具有二叉树深度为0。当二叉树深度达到MaxBTDepth(即4)时,不考虑进一步的分割。当二叉树节点的宽度等于MinBTSize(即4)时,不考虑进一步的水平分割。类似地,当二叉树节点的高度等于MinBTSize时,不考虑进一步的垂直分割。通过预测和变换处理进一步处理二叉树的叶节点,而无需任何进一步的划分。在JEM中,最大CTU大小为256×256亮度样本。In an example of a QTBT partition structure, the CTU size is set to 128×128 luma samples, and two corresponding blocks of 64×64 chroma samples, MinQTSize is set to 16×16, MaxBTSize is set to 64×64, MinBTSize (for width and height) are set to 4x4, and MaxBTDepth is set to 4. Quadtree partitioning is first applied to the CTU to generate quad-leaf nodes. A quad-leaf node can have a size from 16x16 (ie, MinQTSize) to 128x128 (ie, CTU size). If the quad-leaf node is 128x128, it will not be further split by the binary tree because the size exceeds MaxBTSize (ie 64x64). Otherwise, the quad-leaf node can be further split by the binary tree. Therefore, the quad-leaf node is also the root node of the binary tree, and it has a binary tree depth of 0. When the binary tree depth reaches MaxBTDepth (ie, 4), no further splits are considered. When the width of a binary tree node is equal to MinBTSize (ie, 4), further horizontal splits are not considered. Similarly, when the height of a binary tree node is equal to MinBTSize, no further vertical splits are considered. The leaf nodes of the binary tree are further processed by prediction and transform processing without any further partitioning. In JEM, the maximum CTU size is 256×256 luma samples.

图7A示出了通过使用QTBT进行块划分的示例。图7B示出了相应的树表示。实线指示四叉树分割,并且虚线指示二叉树分割。在二叉树的每个分割(即,非叶)节点中,用信号通知一个标志以指示使用哪种分割类型(即,水平或垂直),其中0指示水平分割,并且1指示垂直分割。对于四叉树分割,不需要指示分割类型,因为四叉树分割总是同时水平和垂直地分割块以产生具有相同大小的4个子块。FIG. 7A shows an example of block division by using QTBT. Figure 7B shows the corresponding tree representation. Solid lines indicate quadtree splits, and dashed lines indicate binary tree splits. In each split (ie, non-leaf) node of the binary tree, a flag is signaled to indicate which split type (ie, horizontal or vertical) to use, where 0 indicates horizontal split and 1 indicates vertical split. For a quadtree split, there is no need to indicate the split type, since a quadtree split always splits a block both horizontally and vertically to produce 4 sub-blocks of the same size.

此外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。目前,对于P和B条带,一个CTU中的亮度和色度CTB共享相同的QTBT结构。然而,对于I条带,亮度CTB通过QTBT结构划分为CU,并且色度CTB通过另一QTBT结构划分为色度CU。这意味着I条带中的CU由亮度分量的编码块或两个色度分量的编码块组成,并且P或B条带中的CU由所有三个颜色分量的编码块组成。Additionally, the QTBT scheme supports the ability to have separate QTBT structures for luma and chroma. Currently, the luma and chroma CTBs in one CTU share the same QTBT structure for both P and B slices. However, for an I slice, the luma CTB is divided into CUs by a QTBT structure, and the chroma CTBs are divided into chroma CUs by another QTBT structure. This means that a CU in an I slice consists of coded blocks for the luma component or coded blocks for two chroma components, and a CU in a P or B slice consists of coded blocks for all three color components.

在HEVC中,限制小块的帧间预测以减少运动补偿的存储器访问,使得对于4×8和8×4块不支持双向预测,并且对于4×4块不支持帧间预测。在JEM的QTBT中,这些限制被移除。In HEVC, inter prediction of small blocks is restricted to reduce motion compensated memory access such that bi-directional prediction is not supported for 4x8 and 8x4 blocks, and inter prediction is not supported for 4x4 blocks. In JEM's QTBT, these restrictions are removed.

1.4.用于多功能视频编码(VVC)的三叉树(TT)1.4. Trinomial Tree (TT) for Versatile Video Coding (VVC)

图8A示出了四叉树(QT)划分的示例,并且图8B和8C分别示出了垂直和水平二叉树(BT)划分的示例。在一些实施例中,除了四叉树和二叉树之外,还支持三叉树(TT)划分,例如水平和垂直中心侧三叉树(如图8D和8E所示)。FIG. 8A shows an example of quad-tree (QT) division, and FIGS. 8B and 8C show examples of vertical and horizontal binary tree (BT) division, respectively. In some embodiments, in addition to quadtrees and binary trees, tritree (TT) partitioning is also supported, such as horizontal and vertical center-side tritrees (as shown in Figures 8D and 8E).

在一些实现方式中,支持两个级别的树:区域树(四叉树)和预测树(二叉树或三叉树)。首先通过区域树(RT)对CTU进行划分。RT叶可以进一步用预测树(PT)分割。还可以用PT进一步分割PT叶,直到达到最大PT深度。PT叶是基本的编码单元。为方便起见,它仍被称为CU。CU无法进一步分割。预测和变换都以与JEM相同的方式应用于CU。整个划分结构称为“多类型树”。In some implementations, two levels of trees are supported: a region tree (quadtree) and a prediction tree (binary or ternary). First, the CTUs are divided by a region tree (RT). RT leaves can be further split with a prediction tree (PT). PT lobes can also be further segmented with PT until the maximum PT depth is reached. The PT leaf is the basic coding unit. It is still called CU for convenience. The CU cannot be further split. Both prediction and transform are applied to CU in the same way as JEM. The entire partition structure is called a "multi-type tree".

1.5.替代视频编码技术中的划分结构的示例1.5. Examples of Partitioning Structures in Alternative Video Coding Techniques

在一些实施例中,支持称为多树类型(MTT)的树结构(其是QTBT的一般化)。在QTBT中,如图9所示,首先用四叉树结构划分编码树单元(CTU)。四叉树叶节点进一步由二叉树结构划分。In some embodiments, a tree structure called Multiple Tree Type (MTT) (which is a generalization of QTBT) is supported. In QTBT, as shown in FIG. 9 , a coding tree unit (CTU) is first divided with a quad-tree structure. The quad-leaf nodes are further divided by a binary tree structure.

MTT的结构由两种类型的树节点构成:区域树(RT)和预测树(PT),支持九种类型的划分,如图10A至10I所示。区域树可以递归地将CTU分割成方形块,直到分成4×4大小的区域的叶节点。在区域树中的每个节点处,可以从三种树类型中的一个形成预测树:二叉树,三叉树和非对称二叉树。在PT分割中,禁止在预测树的分支中具有四叉树划分。与在JEM中一样,亮度树和色度树在I条带中分开。The structure of MTT consists of two types of tree nodes: Region Tree (RT) and Prediction Tree (PT), and supports nine types of divisions, as shown in Figures 10A to 10I. The region tree can recursively partition the CTU into square blocks, up to the leaf nodes that are divided into regions ofsize 4×4. At each node in the region tree, a prediction tree can be formed from one of three tree types: binary tree, ternary tree, and asymmetric binary tree. In PT partitioning, it is forbidden to have quadtree partitions in the branches of the prediction tree. As in JEM, the luma tree and chroma tree are separated in the I-strip.

通常,除了上下文推导之外,RT信令与JEM中的QT信令相同。对于PT信令,需要多达4个额外的二进制位(bin),如图11所示。第一个二进制位指示PT是否被进一步分割。该二进制位的上下文基于对进一步分割的可能性与当前块与其相邻块的相对大小高度相关的观察来计算。如果进一步分割PT,则第二个二进制位指示其是水平划分还是垂直划分。在一些实施例中,中心侧三叉树和非对称二叉树(ABT)的存在增加了“高”块或“宽”块的出现。第三个二进制位表示划分的树的类型,即它是二叉树/三叉树还是非对称二叉树。在二叉树/三叉树的情况下,第四个二进制位表示树的类型。在非对称二叉树的情况下,第四个二进制位指示对于水平划分树的向上或向下类型,对于垂直划分树的向右或向左类型。In general, RT signaling is the same as QT signaling in JEM, except for context derivation. For PT signaling, up to 4 additional bins are required, as shown in Figure 11. The first binary bit indicates whether the PT is further divided. The context of this bin is computed based on the observation that the likelihood of further segmentation is highly correlated with the relative size of the current block and its neighbors. If the PT is further divided, the second bit indicates whether it is divided horizontally or vertically. In some embodiments, the presence of center-side trigeminal trees and asymmetric binary trees (ABTs) increases the presence of "tall" blocks or "wide" blocks. The third binary bit indicates the type of tree divided, i.e. whether it is a binary/tritree or an asymmetric binary tree. In the case of a binary tree/ternary tree, the fourth binary bit indicates the type of tree. In the case of an asymmetric binary tree, the fourth bit indicates the up or down type for a horizontally partitioned tree, and the right or left type for a vertically partitioned tree.

1.5.1.图片边界处的限制的示例1.5.1. Example of restrictions at picture boundaries

在一些实施例中,如果CTB/LCU大小由M×N指示(通常M等于N,如HEVC/JEM中所定义),并且对于位于图片(或片或条带或其它类型)边界的CTB,K x L个样本处于图片边界内。In some embodiments, if the CTB/LCU size is indicated by MxN (typically M equals N, as defined in HEVC/JEM), and for CTBs located at picture (or slice or slice or other type) boundaries, K x L samples are within the picture boundaries.

在图片底边界和右边界上的CU分割规则可以应用于任何编码树配置QTBT+TT、QTBT+ABT或QTBT+TT+ABT。它们包括以下两个方面:The CU partition rules on the picture bottom and right borders can be applied to any coding tree configuration QTBT+TT, QTBT+ABT or QTBT+TT+ABT. They include the following two aspects:

(1)如果给定编码树节点(CU)的一部分部分地位于图片外部,则总是允许沿着相关边界方向(沿着底边界的水平分割定向,如图12A所示,沿右边界的垂直分割定向,如图12B所示)的CU的二元对称分割。如果当前CU的右下角在帧外(如图12C所示),则只允许CU的四叉树分割。另外,如果当前二叉树深度大于最大二叉树深度并且当前CU在帧边界上,则启用二元分割以确保到达帧边界。(1) If a part of a given coding tree node (CU) is partially outside the picture, it is always allowed along the relevant boundary direction (horizontal split orientation along the bottom boundary, as shown in FIG. 12A , vertical along the right boundary partition orientation, as shown in FIG. 12B ) of the binary symmetric partition of the CU. If the lower right corner of the current CU is out of frame (as shown in Figure 12C), only quadtree partitioning of the CU is allowed. Additionally, if the current binary tree depth is greater than the maximum binary tree depth and the current CU is on a frame boundary, binary partitioning is enabled to ensure that the frame boundary is reached.

(2)关于三叉树分割过程,在产生的子CU之间的第一边界或第二边界恰好位于图片的边界上的情况下,允许三叉树分割。如果分割线(由分割产生的两个子CU之间的边界)与图片边界完全匹配,则允许不对称二叉树分割。(2) Regarding the ternary tree partitioning process, in the case where the first boundary or the second boundary between the generated sub-CUs is exactly on the boundary of the picture, ternary tree partitioning is allowed. Asymmetric binary tree partitioning is allowed if the partition line (the boundary between two sub-CUs resulting from the partition) exactly matches the picture boundary.

2.现有实现方式的示例2. Examples of existing implementations

现有实现方式,CTU或CU的宽度或高度可能不等于2N,其中N是正整数。这些情况很难处理。具体来说,如果行数或列数不是2N的形式,则可能难以设计具有不包括除法的整数运算的变换。In existing implementations, the width or height of a CTU or CU may not be equal to 2N , where N is a positive integer. These situations are difficult to handle. Specifically, if the number of rows or columns is not in the form of2N , it may be difficult to design transforms with integer operations that do not include division.

在一个示例中,为了避免CTU或CU具有不等于2N的宽度或高度,CTU或CU被强制分割为更小,直到宽度和高度两者都是2N的形式或通过填充或使用变换跳过。如果以更灵活的方式处理这些块,则可以进一步改善编码增益。In one example, to avoid a CTU or CU having a width or height not equal to2N , the CTU or CU is forced to be split smaller until both the width and height are in the form of2N or skipped by padding or using transforms . The coding gain can be further improved if these blocks are processed in a more flexible manner.

在另一个示例中,对于宽度或高度不是2N形式的CU定义变换。这种变换在实际的视频编码应用中是不期望的。In another example, transforms are defined for CUs whose width or height is not in the form of2N . Such transformations are undesirable in practical video coding applications.

3.使用基于本公开的技术的零单元的示例方法3. Example methods using zero cells based on techniques of the present disclosure

本公开的技术的实施例克服了现有实施方式的缺点,从而为视频编码提供了更高的效率。具体地,提出零单元块作为特殊的CU/CTU,并且块在当且仅当其高度和/或宽度不是2N的形式时被解释为零单元。Embodiments of the disclosed technology overcome the shortcomings of existing implementations, thereby providing higher efficiency for video encoding. Specifically, a zero-unit block is proposed as a special CU/CTU, and a block is interpreted as a zero-unit if and only if its height and/or width are not in the form of2N .

在以下针对各种实现方式所描述的示例中阐明了使用零单元来提高视频编码效率并增强现有和未来的视频编码标准。下面提供的本公开的技术的示例解释了一般概念,并不意欲被解释为限制。在示例中,除非明确地相反指示,否则可以组合这些示例中描述的各种特征。在另一示例中,这些示例中描述的各种特征可以应用于使用向后兼容的块大小的图片边界编码和使用划分树进行可视媒体编码的方法。图13示出了图片边界处的零单元(具有像素或样本的尺寸)的示例。The use of zero cells to improve video coding efficiency and enhance existing and future video coding standards is illustrated in the examples described below for various implementations. The examples of the disclosed techniques provided below illustrate general concepts and are not intended to be construed as limiting. In examples, various features described in these examples can be combined unless explicitly indicated to the contrary. In another example, the various features described in these examples may be applied to methods of picture boundary encoding using backward compatible block sizes and visual media encoding using partition trees. Figure 13 shows an example of zero cells (with dimensions of pixels or samples) at picture boundaries.

示例A.零单元可以进一步分割为两个单元(BT或ABT)、三个单元(TT、FTT)或四个单元(QT、EQT)。从零单元分割的分割单元可以是零单元,或者它可以是正常CU,其具有2N的形式的宽度或高度。假设零单位Z的大小为S×T。Example A. Zero cells can be further divided into two cells (BT or ABT), three cells (TT, FTT) or four cells (QT, EQT). A partition unit partitioned from a zero unit may be a zero unit, or it may be a normal CU with a width or height in the form of2N . Suppose the zero unit Z is of size S×T.

(a)在一个示例中,Z可以用BT分割为两个单元,二者具有大小为S/2×T。(a) In one example, Z can be split into two cells with BT, both of size S/2xT.

(b)在一个示例中,Z可以用BT分割为两个单元,二者具有大小为S×T/2。(b) In one example, Z can be split into two cells with BT, both of size S×T/2.

(c)在一个示例中,假设2N<S≤2N+1,Z可以用BT分割为两个单元,其具有大小为2N×T和(S-2N)×T,或(S-2N)×T和2N×T。(c) In one example, assuming 2N < S ≤ 2N+1 , Z can be partitioned with BT into two cells withsizes 2N ×T and (S−2N )×T, or (S -2N )×T and 2N ×T.

(d)在一个示例中,假设2N<T≤2N+1,Z可以用BT分割为两个单元,其具有大小为S×2N和S×(T-2N),或S×(T-2N)和S×2N(d) In one example, assuming 2N < T≤2N+1 , Z can be split by BT into two cells with sizes S×2N and S×(T−2N ), or S× (T-2N ) and S×2N .

(e)在一个示例中,Z可以用TT分割为三个单元,其具有大小为S/4×T、S/2×T和S/4×T。(e) In one example, Z can be partitioned by TT into three cells with sizes S/4×T, S/2×T, and S/4×T.

(f)在一个示例中,Z可以用TT分割为三个单元,其具有大小为S×T/4、S×T/2和S×T/4。(f) In one example, Z may be partitioned by TT into three cells with sizes S×T/4, S×T/2, and S×T/4.

(g)在一个示例中,假设2N<S<2N+1,Z可以用TT分割为三个单元,其具有大小为2N-1×T、2N-1×T和(S-2N)×T,或2N-1×T、(S-2N)×T和2N-1×T,或(S-2N)×T、2N-1×T和2N-1×T。(g) In one example, assuming 2N < S < 2N+1 , Z can be divided into three cells with TT withsizes 2N-1 ×T, 2N-1 ×T and (S- 2N )×T, or 2N-1 ×T, (S-2N )×T, and 2N-1 ×T, or (S-2N )×T, 2N-1 ×T, and 2N- 1 x T.

(h)在一个示例中,假设2N<T≤2N+1,Z可以用TT分割为三个单元,其具有大小为S×2N-1、S×2N-1和S×(T-2N),或S×2N-1、S×(T-2N)和S×2N-1,或S×(T-2N)、S×2N-1和S×2N-1(h) In one example, assuming 2N < T≤2N+1 , Z can be divided by TT into three cells with sizes S×2N-1 , S×2N-1 and S×( T-2N ), or S×2N-1 , S×(T-2N ) and S×2N-1 , or S×(T-2N ), S×2N-1 and S×2N-1 .

(i)在一个示例中,Z可以用QT分割为四个单元,均具有大小为S/2×T/2。(i) In one example, Z can be partitioned by QT into four cells, all of size S/2×T/2.

(j)在一个示例中,假设2N<S≤2N+1,Z可以用QT分割为四个单元,具有大小为2N×T/2、2N×T/2、(S-2N)×T/2和(S-2N)×T/2,或(S-2N)×T/2、(S-2N)×T/2、2N×T/2和2N×T/2。(j) In one example, assuming 2N < S≤2N+1 , Z can be partitioned into four cells with QT, withsizes 2N ×T/2, 2N ×T/2, (S-2N )×T/2 and (S-2N )×T/2, or (S-2N )×T/2, (S-2N )×T/2,2N ×T/2 and2N ×T/2.

(k)在一个示例中,假设2N<T≤2N+1,Z可以用QT分割为四个单元,具有大小为S/2×2N、S/2×2N、S/2×(T-2N)和S/2×(T-2N),或S/2×(T-2N)、S/2×(T-2N)、S/2×2N和S/2×2N(k) In one example, assuming 2N < T≤2N+1 , Z can be partitioned by QT into four cells with sizes S/2×2N , S/2×2N , S/2× (T-2N ) and S/2×(T-2N ), or S/2×(T-2N ), S/2×(T-2N ), S/2×2N and S/ 2 × 2N .

(l)在一个示例中,假设2N<S≤2N+1和2M<T≤2M+1,Z可以用QT分割为四个单元,具有大小为2N×2M、2N×2M、(S-2N)×(T-2M)和(S-2N)×(T-2M),或(S-2N)×(T-2M)、(S-2N)×(T-2M)、2N×2M和2N×2M,或2N×(T-2M)、2N×(T-2M)、(S-2N)×2M和(S-2N)×2M,或(S-2N)×2M、(S-2N)×2M、2N×(T-2M)和2N×(T-2M)。(l) In one example, assuming 2N < S ≤ 2N+1 and 2M <T ≤ 2M+1 , Z can be divided into four cells by QT, withsizes 2N × 2M , 2N ×2M , (S-2N )×(T-2M ) and (S-2N )×(T-2M ), or (S-2N )×(T-2M ),(S- 2N )×(T-2M ), 2N ×2M and 2N ×2M , or 2N ×(T-2M ), 2N ×(T-2M ), (S-2N ) ×2M and (S-2N ) × 2M , or (S-2N ) × 2M , (S-2N ) × 2M , 2N ×(T-2M ) and 2N × (T-2M ).

(m)在一个示例中,所有分割单元的宽度/高度应为偶数。如果一个划分结构导致单元的宽度或高度为奇数,则自动禁止这样的划分结构。(m) In one example, the width/height of all split cells should be an even number. If a partition structure results in an odd width or height of the cell, such partition structure is automatically disabled.

或者,此外,跳过这种划分结构的信令。Or, in addition, skip the signaling of this partition structure.

(n)在一个示例中,Z可以用TT分割为三个单元。(n) In one example, Z can be divided into three units with TT.

在一个示例中,假设3*2N<S<=3*2N+1,三个单元的大小分别为2N×T、2N+1×T和(S-3*2N)×T。In one example, assuming 3*2N <S<=3*2N+1 , the sizes of the three cells are 2N ×T, 2N+1 ×T, and (S-3*2N )×T, respectively .

在一个示例中,假设3*2N<T<=3*2N+1,三个单元的大小分别为Sx2N、Sx2N+1和S×(T-3*2N)。In one example, assuming 3*2N <T<=3*2N+1 , the sizes of the three cells are Sx2N , Sx2N+1 and S×(T-3*2N ), respectively.

(o)在一个示例中,所有分割单元的宽度和/或高度应为K*M的形式,其中M是允许的编码单元/预测单元的最小宽度和/或高度,诸如4;K是大于0的整数。如果一个划分结构导致单元的宽度或高度不是这样的形式,则自动禁止该划分结构。(o) In one example, the width and/or height of all partition units shall be in the form of K*M, where M is the minimum width and/or height of the allowed coding unit/prediction unit, such as 4; K is greater than 0 the integer. If a partition results in a cell width or height not in this form, the partition is automatically disabled.

例如,假设划分结构中分割单元的宽度和高度为W和H,如果W<M或H<M或(W&(M-1)!=0)或(H&(M-1)!=0),则禁止该划分结构。For example, assuming that the width and height of the division unit in the division structure are W and H, if W<M or H<M or (W&(M-1)!=0) or (H&(M-1)!=0), The partition structure is then prohibited.

或者,此外,跳过这种划分结构的信令。Or, in addition, skip the signaling of this partition structure.

或者,所有分割的非ZU的宽度和/或高度应为K*M的形式,其中M是允许的编码单元/预测单元的最小宽度和/或高度,诸如4。在这种情况下,如果分割的零单元不遵循此限制但非ZU遵循此限制,则仍允许划分结构。Alternatively, the width and/or height of all partitioned non-ZUs should be in the form of K*M, where M is the minimum width and/or height of an allowed coding unit/prediction unit, such as 4. In this case, if the partitioned zero cells do not obey this restriction but the non-ZU does, the partitioned structure is still allowed.

示例B.ZU的分割信令方法与正常CU的分割信令方法相同。Example B. The partition signaling method of the ZU is the same as that of the normal CU.

a.在一个示例中,可以使用不同的上下文来编码ZU或非ZU。a. In one example, different contexts may be used to encode ZU or non-ZU.

b.或者,对于ZU,仅允许正常CU的部分分割方法。b. Alternatively, for ZU, only partial partitioning methods for normal CUs are allowed.

i.对ZU所允许的正常CU的分割方法的子集由ZU大小和/或图片/条带/片边界位置(底部、右部、右下部等)和/或条带类型确定。i. The subset of partitioning methods for normal CUs allowed for the ZU is determined by the ZU size and/or picture/slice/slice boundary position (bottom, right, bottom right, etc.) and/or slice type.

ii.在一个示例中,对于ZU只允许QT和BT划分结构。ii. In one example, only QT and BT partitions are allowed for ZU.

iii.或者,此外,在ZU分割信息中不发信号通知是否使用TT以及如何使用TT(以及除QT/BT之外的其它种类的划分结构)。iii. Alternatively, in addition, whether and how to use TT (and other kinds of partition structures than QT/BT) is not signaled in the ZU partition information.

iv.或者,此外,ZU的分割信令方法仍然与正常CU的分割信令方法保持相同,然而,TT(或其它类型的划分结构)的指示的上下文可以进一步取决于当前块是否是ZU。iv. Alternatively, in addition, the partition signaling method of the ZU remains the same as that of the normal CU, however, the context of the indication of the TT (or other type of partition structure) may further depend on whether the current block is a ZU.

示例C.在一个实施例中,ZU必须在I条带或帧内编码图像中分割。Example C. In one embodiment, the ZU must be segmented in an I-slice or intra-coded picture.

在一个示例中,ZU的宽度或高度不是2N的形式。In one example, the width or height of ZU is not in the form of2N .

在一个示例中,则当以下条件成立时,CU被视为ZU,In one example, then a CU is considered a ZU when the following conditions hold,

i)W>=T0且H>=T1。T0和/或T1是诸如128或256的整数。i) W>=T0 and H>=T1. T0 and/or T1 are integers such as 128 or 256.

ii)W>=T0或H>=T1。T0和/或T1是诸如128或256的整数。ii) W>=T0 or H>=T1. T0 and/or T1 are integers such as 128 or 256.

iii)W×H>=T。T是诸如16384或65536的整数。iii) W×H>=T. T is an integer such as 16384 or 65536.

上述示例可以结合在下面描述的方法的上下文中——例如,方法1400和1500,其可以在视频解码器和/或视频编码器处实现。The above examples may be combined in the context of the methods described below - eg,methods 1400 and 1500, which may be implemented at a video decoder and/or a video encoder.

图14示出了用于视频编码的示例性方法的流程图,其可以在视频编码器中实现。方法1400包括,在步骤1410处,确定视频数据块的尺寸。14 shows a flowchart of an exemplary method for video encoding, which may be implemented in a video encoder.Method 1400 includes, atstep 1410, determining a size of a block of video data.

方法1400包括,在步骤1420处,在确定至少一个尺寸是非二的幂时,将视频数据块作为零单元(ZU)块来信令通知,其是不可变换的。Themethod 1400 includes, atstep 1420, signaling a block of video data as a zero unit (ZU) block, which is not transformable, upon determining that at least one size is not a power of two.

在一些实施例中,非二的幂是不能以2N的形式表示的任何非零数字。例如,不包括二的幂的整数(例如,1,3,5,6,7,9,10,11,12,13,14,15,17,18,...)的每个都是非二的幂。In some embodiments, a non-power of two is any non-zero number that cannot be represented in the form of 2N. For example, every integer that does not include a power of two (eg, 1, 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 17, 18, ...) is non-two power of .

在一些实施例中,可以在示例2的上下文中定义不可变换,使得不对零单元调用变换、逆变换、量化和去量化操作。例如,零单元的不可变换属性是其被推断为用跳过模式进行编码,并且因此,不需要明确地用信令通知跳过模式。在其它实施例中,可以在示例3的上下文中定义不可变换,使得尽管可能存在非零残差,但对于零单元没有定义变换和逆变换操作。In some embodiments, non-transformable may be defined in the context of Example 2 such that transform, inverse transform, quantization, and dequantization operations are not invoked on zero cells. For example, a non-transformable property of a zero cell is that it is inferred to be encoded with skip mode, and thus, skip mode need not be explicitly signaled. In other embodiments, non-transformation may be defined in the context of Example 3 such that no transform and inverse transform operations are defined for zero cells, although there may be non-zero residuals.

图15示出了用于视频编码的另一示例性方法的流程图,该方法可以在视频解码器中实现。该流程图包括与图14中所示并且在上面描述的类似的一些特征和/或步骤。本章节中可能未单独描述这些特征和/或步骤中的至少一些。15 shows a flowchart of another exemplary method for video encoding, which may be implemented in a video decoder. The flowchart includes some features and/or steps similar to those shown in FIG. 14 and described above. At least some of these features and/or steps may not be separately described in this section.

方法1500包括,在步骤1510处,接收对应于视频数据块的比特流。Themethod 1500 includes, atstep 1510, receiving a bitstream corresponding to a block of video data.

方法1500包括,在步骤1520处,接收信令,其指示视频数据块是零单元(ZU)块,该零单元(ZU)块是不可变换的,并且具有非二的幂的至少一个尺寸。Themethod 1500 includes, atstep 1520, receiving signaling indicating that the video data block is a zero-unit (ZU) block, the zero-unit (ZU) block is not transformable, and has at least one size that is not a power of two.

方法1500包括,在步骤1530处,基于信令解码比特流以重建视频数据块。Themethod 1500 includes, atstep 1530, decoding the bitstream based on the signaling to reconstruct a block of video data.

在一些实施例中,方法1400和1500,以及如在示例1的上下文中所描述的,可以进一步包括视频数据块的尺寸是偶数,具有2N形式,或者具有2KN的形式,其中K=1,2,3,4…。在其它实施例中,信令可以不包括合并索引或跳过标记、和/或不包括prediction_mode_flag、和/或包括ZU块的至少一个尺寸的最大值或最小值。在示例中,信令在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、条带报头、编码树单元(CTU)或编码单元(CU)中。In some embodiments,methods 1400 and 1500, and as described in the context of Example 1, may further include that the size of the video data blocks is even, in the form of 2N, or in the form of 2KN, where K=1, 2 , 3, 4…. In other embodiments, the signaling may not include a merge index or skip flag, and/or not include prediction_mode_flag, and/or include a maximum or minimum value of at least one size of the ZU block. In an example, the signaling is in a video parameter set (VPS), sequence parameter set (SPS), picture parameter set (PPS), slice header, coding tree unit (CTU) or coding unit (CU).

在一些实施例中,ZU块的运动信息从大小为2N×2M的相邻块的运动信息继承。In some embodiments, the motion information of the ZU block is inherited from the motion information of neighboring blocks of size 2Nx2M.

在一个实施例中,并且如在示例7的上下文中所描述的,ZU块被分割为两个或更多个单元。在示例中,两个或更多个单元中的至少一个是零单元。在另一个示例中,在两个或更多个单元中的至少一个是尺寸为2N×2M的编码单元(CU)。In one embodiment, and as described in the context of Example 7, the ZU block is partitioned into two or more units. In an example, at least one of the two or more cells is a zero cell. In another example, at least one of the two or more units is a coding unit (CU) of size 2N×2M.

4.所公开的技术的示例实现方式4. Example Implementations of the Disclosed Technology

图16是示出可以用于实现本公开的技术的各个部分的计算机系统或其它控制设备1600的架构的示例的框图,本公开的技术包括(但不限于)方法1400和1500。在图16中,计算机系统1600包括经由互连1625连接的一个或多个处理器1605和存储器1610。互连1625可以代表通过适当的桥接器、适配器连接的任何一个或多个单独的物理总线、点对点连接或两者。因此,互连1625可以包括例如,系统总线、外围组件互连(PCI)总线、双向传输总线(HyperTransport)或工业标准架构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、IIC(I2C)总线或电气和电子工程师协会(IEEE)标准674总线,有时也称为“Firewire”。16 is a block diagram illustrating an example of the architecture of a computer system or other control device 1600 that may be used to implement various portions of the techniques of the present disclosure, including but not limited tomethods 1400 and 1500. In FIG. 16 , computer system 1600 includes one or more processors 1605 and memory 1610 connected via interconnect 1625 . Interconnect 1625 may represent any one or more separate physical buses, point-to-point connections, or both, connected by suitable bridges, adapters. Thus, interconnect 1625 may include, for example, a system bus, a Peripheral Component Interconnect (PCI) bus, a HyperTransport or Industry Standard Architecture (ISA) bus, a Small Computer System Interface (SCSI) bus, a Universal Serial Bus ( USB), IIC (I2C) bus, or Institute of Electrical and Electronics Engineers (IEEE) Standard 674 bus, sometimes referred to as "Firewire".

(一个或多个)处理器1605可以包括中央处理单元(CPU)以控制例如主计算机的整体操作。在某些实施例中,(一个或多个)处理器1605通过执行存储器1610中存储的软件或固件来实现这一点。(一个或多个)处理器1605可以是或可以包括一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASIC)、可编程逻辑器件(PLD)等,或这些器件的组合。The processor(s) 1605 may include a central processing unit (CPU) to control, for example, the overall operation of a host computer. In some embodiments, processor(s) 1605 accomplish this by executing software or firmware stored in memory 1610 . The processor(s) 1605 may be or include one or more programmable general purpose or special purpose microprocessors, digital signal processors (DSPs), programmable controllers, application specific integrated circuits (ASICs), programmable logic device (PLD), etc., or a combination of these devices.

存储器1610可以是或可以包括计算机系统的主存储器。存储器1610表示任何合适形式的随机存取存储器(RAM)、只读存储器(ROM)、闪存存储器等,或其组合。在使用中,存储器1610可以包含机器指令集,当由处理器1605执行该机器指令集时,使得处理器1605进行操作以实现本公开技术的实施例。Memory 1610 may be or include the main memory of the computer system. Memory 1610 represents any suitable form of random access memory (RAM), read only memory (ROM), flash memory, etc., or a combination thereof. In use, memory 1610 may contain a set of machine instructions that, when executed by processor 1605, cause processor 1605 to operate to implement embodiments of the disclosed technology.

通过互连1625也连接到(一个或多个)处理器1605的是(可选的)网络适配器1615。网络适配器1615向计算机系统1600提供与远程设备通信的能力,远程设备例如储存器客户端和/或其它储存器服务器,并且网络适配器1615可以是例如以太网适配器或光纤信道适配器。Also connected to processor(s) 1605 via interconnect 1625 is (optional) network adapter 1615. Network adapter 1615 provides computer system 1600 with the ability to communicate with remote devices, such as storage clients and/or other storage servers, and may be, for example, an Ethernet adapter or a Fibre Channel adapter.

图17示出了可用于实现本公开技术的各个部分的移动设备1700的示例实施例的框图,包括(但不限于)方法1400和1500。移动设备1700可以是膝上型电脑、智能电话、平板电脑、便携式摄像机或能够处理视频的其它类型的设备。移动设备1700包括用于处理数据的处理器或控制器1701,以及与处理器1701通信以存储和/或缓冲数据的存储器1702。例如,处理器1701可以包括中央处理单元(CPU)或微控制器单元(MCU)。在一些实现方式中,处理器1701可以包括现场可编程门阵列(FPGA)。在一些实现方式中,移动设备1700包括用于智能电话设备的各种可视和/或通信数据处理功能的图形处理单元(GPU)、视频处理单元(VPU)和/或无线通信单元或与之通信。例如,存储器1702可以包括并存储处理器可执行代码,其在由处理器1701执行时配置移动设备1700以执行各种操作,例如接收信息、命令和/或数据,处理信息和数据,并且将处理后的信息/数据发送或提供给诸如致动器或外部显示器的另一个设备。17 illustrates a block diagram of an example embodiment of amobile device 1700 that may be used to implement various portions of the disclosed techniques, including but not limited tomethods 1400 and 1500.Mobile device 1700 may be a laptop, smartphone, tablet, camcorder, or other type of device capable of processing video.Mobile device 1700 includes a processor or controller 1701 for processing data, and a memory 1702 in communication with processor 1701 to store and/or buffer data. For example, the processor 1701 may include a central processing unit (CPU) or a microcontroller unit (MCU). In some implementations, the processor 1701 may include a field programmable gate array (FPGA). In some implementations,mobile device 1700 includes or is associated with a graphics processing unit (GPU), video processing unit (VPU), and/or wireless communication unit for various visual and/or communication data processing functions of the smartphone device communication. For example, memory 1702 may include and store processor-executable code that, when executed by processor 1701, configuresmobile device 1700 to perform various operations, such as receiving information, commands and/or data, processing information and data, and processing The subsequent information/data is sent or provided to another device such as an actuator or an external display.

为了支持移动设备1700的各种功能,存储器1702可以存储信息和数据,诸如指令、软件、值、图像以及由处理器1701处理或参考的其它数据。例如,各种类型的随机存取存储器(RAM)设备、只读存储器(ROM)设备、闪存设备和其它合适的存储介质可已被用于实现存储器1702的存储功能。在一些实现方式中,移动设备1700包括输入/输出(I/O)单元1703,以将处理器1701和/或存储器1702与其它模块、单元或设备接口。例如,I/O单元1703可以利用与典型数据通信标准(例如,在云中的一个或多个计算机与用户设备之间的)兼容的各种类型的无线接口,以将处理器1701与存储器1702接口。在一些实现方式中,移动设备1700可以经由I/O单元1703使用有线连接与其它设备接口。移动设备1700还可以与其它外部接口(例如数据存储器)和/或视觉或音频显示设备1704接口,以取回和传送数据和信息,该数据和信息可由处理器处理、存储在存储器中或在显示设备1704或外部设备的输出单元上展示。例如,显示设备1704可以显示包括块(CU、PU或TU)的视频帧,该块基于是否使用运动补偿算法并根据所公开的技术对块进行编码来应用块内复制。To support various functions ofmobile device 1700 , memory 1702 may store information and data, such as instructions, software, values, images, and other data processed or referenced by processor 1701 . For example, various types of random access memory (RAM) devices, read only memory (ROM) devices, flash memory devices, and other suitable storage media may have been used to implement the storage function of memory 1702 . In some implementations,mobile device 1700 includes an input/output (I/O) unit 1703 to interface processor 1701 and/or memory 1702 with other modules, units or devices. For example, I/O unit 1703 may utilize various types of wireless interfaces compatible with typical data communication standards (eg, between one or more computers and user equipment in the cloud) to interface processor 1701 with memory 1702 interface. In some implementations,mobile device 1700 can interface with other devices via I/O unit 1703 using a wired connection.Mobile device 1700 may also interface with other external interfaces (eg, data storage) and/or visual or audio display device 1704 to retrieve and transfer data and information that may be processed by the processor, stored in memory, or displayed on display. Displayed on the output unit of device 1704 or an external device. For example, display device 1704 may display a video frame that includes a block (CU, PU, or TU) that applies intra-block copying based on whether a motion compensation algorithm is used and the block is encoded according to the disclosed techniques.

在一些实施例中,视频解码器设备可以实现使用如本文中所描述的零单元的方法以用于视频解码。该方法的各种特征可以类似于上述各种方法。In some embodiments, a video decoder apparatus may implement a method using zero cells as described herein for video decoding. Various features of the method may be similar to the various methods described above.

在一些实施例中,视频解码方法可以使用解码设备来实现,该解码设备在如图16和图17中所述的硬件平台上实现。In some embodiments, the video decoding method may be implemented using a decoding device implemented on a hardware platform as described in FIGS. 16 and 17 .

可以使用以下解决方案的列表来捕获本文描述的一些实施例。Some of the embodiments described herein can be captured using the following list of solutions.

1.一种视频编码方法(例如,图18中所描述的方法1800),包括:确定(1802)视频数据块将被编码为零单元(ZU)块,视频数据块具有尺寸S×T;将ZU块划分(1804)为两个单元、三个单元或四个单元中的一个;以及通过编码单元生成(1806)比特流。1. A method of video encoding (eg,method 1800 described in FIG. 18 ), comprising: determining (1802) that a block of video data is to be encoded as a zero unit (ZU) block, the block of video data having size S×T; The ZU blocks are divided (1804) into one of two units, three units, or four units; and a bitstream is generated (1806) by the coding unit.

2.一种视频解码方法(例如,图19中所描述的方法1900)包括:接收(1902)对应于编码为零单元(ZU)块的视频数据块的比特流,该零单元(ZU)块被划分为两个单元、三个单元或四个单元,该视频数据块具有尺寸S×T;以及通过解码比特流生成(1904)视频数据块。2. A video decoding method (eg,method 1900 described in FIG. 19 ) comprising: receiving (1902) a bitstream corresponding to a block of video data encoded as a zero-unit (ZU) block, the zero-unit (ZU) block Divided into two units, three units or four units, the video data block has size SxT; and the video data block is generated (1904) by decoding the bitstream.

3.如解决方案1或2所述的方法,其中,ZU块使用二叉树划分方案被划分为两个单元,每个ZU块具有尺寸S/2×T。3. The method ofsolution 1 or 2, wherein the ZU blocks are divided into two units using a binary tree partitioning scheme, each ZU block having size S/2xT.

4.如解决方案1或2所述的方法,其中,ZU块使用二叉树划分方案被划分为两个单元,每个单元具有尺寸S×T/2。4. The method ofsolution 1 or 2, wherein the ZU block is divided into two units using a binary tree partitioning scheme, each unit having size S×T/2.

5.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,两个单元的第一单元具有尺寸2N×T并且两个单元的第二单元具有尺寸(S-2N)×T。5. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<S≤2N+1 being divided into two cells using a binary tree partitioning scheme, the first cell of the two cells has size 2N× T and the second cell of the two cells has size (S-2N)×T.

6.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,两个单元的第一单元具有尺寸(S-2N)×T并且两个单元的第二单元具有尺寸2N×T。6. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<S≤2N+1 being divided into two cells using a binary tree partitioning scheme, the first cell of the two cells has size (S -2N)×T and the second cell of the two cells has size 2N×T.

7.如解决方案1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,两个单元的第一单元具有尺寸S×2N并且两个单元的第二单元具有尺寸S×(T-2N)。7. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<T≤2N+1 being divided into two cells using a binary tree partitioning scheme, the first cell of the two cells has size S× 2N and the second cell of the two cells has size S×(T-2N).

8.如解决方案1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,两个单元的第一单元具有尺寸S×(T-2N)并且两个单元的第二单元具有尺寸S×2N。8. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<T≤2N+1 being divided into two cells using a binary tree partitioning scheme, the first cell of the two cells has size S× (T-2N) and the second cell of the two cells has size S×2N.

9.如解决方案1或2所述的方法,其中,ZU块使用三叉树划分方案被划分为三个单元,三个单元中的两个单元的每一个具有尺寸S/4×T并且三个单元中的一个单元具有尺寸S/2×T。9. The method ofsolution 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, two of the three units each having size S/4×T and three One of the cells has size S/2xT.

10.如解决方案1或2所述的方法,其中,ZU块使用三叉树划分方案被划分为三个单元,三个单元中的两个具有尺寸S×T/4并且三个单元中的一个具有尺寸S×T/2。10. The method ofsolution 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, two of the three units have size S×T/4 and one of the three units Has size S×T/2.

11.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用三叉树划分方案被划分为三个单元的结果,第一单元具有尺寸2N-1×T,第二单元具有尺寸(S-2N)×T,并且第三单元具有尺寸2N-1×T。11. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<S≤2N+1 being divided into three units using a ternary tree partitioning scheme, the first unit has size 2N-1×T , the second cell has size (S-2N)×T, and the third cell has size 2N-1×T.

12.如解决方案1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用三叉树划分方案被划分为三个单元的结果,第一单元具有尺寸S×2N-1,第二单元具有尺寸S×(T-2N),并且第三单元具有尺寸S×2N-1。12. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<T≤2N+1 being divided into three units using a ternary tree partitioning scheme, the first unit has size S×2N-1 , the second cell has size S×(T−2N), and the third cell has size S×2N−1.

13.如解决方案1或2所述的方法,其中,ZU块使用四叉树划分方案被划分为四个单元,每个单元具有尺寸S/2×T/2。13. The method ofsolution 1 or 2, wherein the ZU block is divided into four cells using a quadtree partitioning scheme, each cell having size S/2xT/2.

14.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×T/2,第二单元具有尺寸2N×T/2,并且第三单元具有尺寸S/2×(T-2N),并且第四单元具有尺寸S/2×(T-2N)。14. The method ofsolution 1 or 2, wherein as a result of a ZU block of 2N<S≤2N+1 being divided into four cells using a quadtree partitioning scheme, the first cell has size 2N×T/ 2. The second cell has size 2N×T/2, the third cell has size S/2×(T-2N), and the fourth cell has size S/2×(T-2N).

15.如解决方案1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸S/2×2N,第二单元具有尺寸S/2×2N,并且第三单元具有尺寸S/2×(T-2N),并且第四单元具有尺寸S/2×(T-2N)。15. The method ofsolution 1 or 2, wherein as a result of a ZU block of 2N<T≤2N+1 being divided into four cells using a quadtree partitioning scheme, the first cell has size S/2× 2N, the second cell has size S/2*2N, the third cell has size S/2*(T-2N), and the fourth cell has size S/2*(T-2N).

16.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1并且2M<T≤2M+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×2M,第二单元具有尺寸2N×2M,并且第三单元具有尺寸(S-2N)×(T-2M),并且第四单元具有尺寸(S-2N)×(T-2M)。16. The method ofsolution 1 or 2, wherein as a result of a ZU block of 2N<S≤2N+1 and 2M<T≤2M+1 being divided into four units using a quadtree partition scheme, the th One cell has size 2N×2M, the second cell has size 2N×2M, and the third cell has size (S-2N)×(T-2M), and the fourth cell has size (S-2N)×(T- 2M).

17.如解决方案1或2所述的方法,其中,作为2N<S≤2N+1并且2M<T≤2M+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×(T-2M),第二单元具有尺寸2N×(T-2M),并且第三单元具有尺寸(S-2N)×2M,并且第四单元具有尺寸(S-2N)×2M。17. The method ofsolution 1 or 2, wherein as a result of the ZU block of 2N<S≤2N+1 and 2M<T≤2M+1 being divided into four units using a quadtree partition scheme, the th One cell has size 2N×(T-2M), the second cell has size 2N×(T-2M), and the third cell has size (S-2N)×2M, and the fourth cell has size (S-2N) ×2M.

18.如解决方案1或2所述的方法,其中,ZU块的每个单元的高度和/或宽度是偶数。18. The method ofsolution 1 or 2, wherein the height and/or width of each cell of the ZU block is an even number.

19.如解决方案1或2所述的方法,其中,ZU块使用三叉树划分方案被分割为三个单元。19. The method ofsolution 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme.

20.如解决方案19所述的方法,其中,作为3*2N<S≤3*2N+1的ZU块被划分的结果,三个单元中的第一单元具有尺寸2N×T,三个单元中的第二单元具有尺寸(S-3*2N)×T,并且三个单元中的第三单元具有尺寸2N+1×T。20. The method of solution 19, wherein, as a result of the division of ZU blocks of 3*2N<S≤3*2N+1, the first of the three cells has size 2NxT, the three cells The second cell in has size (S-3*2N)*T, and the third cell in three cells has size 2N+1*T.

21.如解决方案19所述的方法,其中,作为3*2N<T≤3*2N+1的ZU块被划分的结果,三个单元中的第一单元具有尺寸S×2N,三个单元中的第二单元具有尺寸S×(T-3*2N),并且三个单元中的第三单元具有尺寸S×2N+1。21. The method of solution 19, wherein, as a result of the division of ZU blocks of 3*2N<T≤3*2N+1, the first of the three cells has size S×2N, the three cells The second cell in has size S×(T-3*2N), and the third cell in three cells has size S×2N+1.

22.如解决方案1或2所述的方法,其中,单元具有K*M形式的尺寸,其中M和K是整数。22. The method ofsolution 1 or 2, wherein the cells have dimensions of the form K*M, where M and K are integers.

23.如解决方案1或2所述的方法,其中,单元具有K*M形式的尺寸,M是允许的编码单元的最小高度或最小宽度并且单元从非ZU块划分。23. The method ofsolution 1 or 2, wherein the unit has a size of the form K*M, M being the minimum height or minimum width of the coding unit allowed and the unit is partitioned from non-ZU blocks.

24.如解决方案22所述的方法,其中,导致不以K*M形式的单元的ZU块划分方案的信令通知被跳过。24. The method of solution 22, wherein signaling of a ZU block partitioning scheme resulting in cells not in K*M form is skipped.

25.如解决方案23所述的方法,其中,导致从非ZU块划分的不以K*M形式的单元的划分方案的信令通知被跳过。25. The method of solution 23, wherein signaling of a partitioning scheme resulting in cells not in K*M form partitioned from non-ZU blocks is skipped.

26.一种视频编码方法,包括:确定视频数据块将被编码为零单元(ZU)块;使用划分方案来划分视频数据块,其中,划分方案将视频数据块划分为两个单元、三个单元或四个单元中的一个;通过编码视频数据块生成比特流,其中,划分方案使用与用于对作为非零单元块的另一视频数据块的划分的信令通知相同的语法来发信令通知。26. A video encoding method comprising: determining that a block of video data is to be encoded as a zero unit (ZU) block; using a partitioning scheme to divide the block of video data, wherein the partitioning scheme divides the block of video data into two units, three A unit or one of four units; a bitstream is generated by encoding a block of video data, wherein the partitioning scheme is signaled using the same syntax used to signal the partitioning of another block of video data that is a non-zero unit block order notice.

27.一种视频解码方法,包括:接收对应于被编码为零单元(ZU)块的视频数据块的比特流,其中,使用将视频数据块划分为两个单元、三个单元或四个单元中的一个的划分方案将视频数据块划分,并且其中,划分方案在比特流中使用与用于信令通知非零单元块的划分相同的语法来信令通知;基于信令通知,解码比特流以生成视频数据块。27. A video decoding method comprising: receiving a bitstream corresponding to a block of video data encoded as a zero unit (ZU) block, wherein the block of video data is divided into two units, three units or four units using The partitioning scheme of one of the partitioning schemes divides the video data blocks, and wherein the partitioning scheme is signaled in the bitstream using the same syntax as used to signal the partitioning of non-zero unit blocks; based on the signaling, the decoded bitstream is Generate video data blocks.

28.一种视频编码方法,包括:确定视频数据块将被编码为零单元(ZU)块,视频数据块具有尺寸;使用从ZU块划分方案的组中选择的划分方案将ZU块划分为两个单元、三个单元或四个单元中的一个;编码单元;以及在比特流中信令通知编码的单元。这里,ZU块划分方案的组是可用于分割编码单元(CU)的划分方案的组的子集。28. A method of video encoding comprising: determining that a block of video data is to be encoded as a zero unit (ZU) block, the block of video data having a size; and dividing the ZU block into two using a partitioning scheme selected from a group of ZU block partitioning schemes. One of the units, three units, or four units; the encoding unit; and the encoding unit signaled in the bitstream. Here, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).

29.一种视频解码方法,包括:接收对应于视频数据块的比特流,视频数据块具有尺寸;接收信令通知,该信令通知指示视频数据块包括从零单元(ZU)块划分的单元,使用从ZU块划分方案的组中选择的划分方案来将该划分的ZU块划分;以及基于信令通知,解码对应于单元的比特流以重建视频数据块。这里,ZU块划分方案的组是可用于分割编码单元(CU)的划分方案的组的子集。29. A video decoding method, comprising: receiving a bitstream corresponding to a block of video data, the block of video data having a size; receiving signaling indicating that the block of video data comprises units divided from zero unit (ZU) blocks , dividing the divided ZU block using a division scheme selected from the group of ZU block division schemes; and based on the signaling, decoding the bitstream corresponding to the unit to reconstruct the video data block. Here, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).

30.如解决方案28或29所述的方法,其中,ZU块划分方案的组基于ZU块的大小或者与图片、条带、片或条带类型的一个有关的ZU块的位置中的一个。30. The method of solution 28 or 29, wherein the set of ZU block partitioning schemes is based on one of the size of the ZU block or the position of the ZU block in relation to one of a picture, slice, slice or slice type.

31.如解决方案28或29所述的方法,其中,可用的ZU块划分方案的组限于四叉树划分方案和二叉树划分方案。31. The method of solution 28 or 29, wherein the set of available ZU block partitioning schemes is limited to a quad-tree partitioning scheme and a binary-tree partitioning scheme.

32.如解决方案28或29所述的方法,其中,ZU块使用三叉树划分方案被划分为三个单元,并且ZU块的信令通知不包括与划分方案有关的信息。32. The method of solution 28 or 29, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, and the signaling of the ZU block does not include information related to the partitioning scheme.

33.如解决方案28或29所述的方法,其中,ZU块划分方案的组与可用于分割编码单元(CU)的划分方案的组相同,并且基于视频数据块是ZU块来选择用于信令通知分割ZU块的指示的上下文。33. The method of solution 28 or 29, wherein the set of ZU block partitioning schemes is the same as the set of partitioning schemes available for partitioning coding units (CUs), and the selection for the information is based on the fact that the video data block is a ZU block. Lets notify the context of the instruction to divide the ZU block.

34.一种视频编码方法,包括:确定视频数据块将被编码为零单元(ZU)块,视频数据块具有尺寸;在确定ZU块位于I条带或帧内编码图片中时,将ZU块划分为两个单元、三个单元或四个单元中的一个;编码单元;以及在比特流中信令通知编码的单元。34. A video encoding method, comprising: determining that a video data block will be encoded as a zero unit (ZU) block, and the video data block has a size; when determining that the ZU block is located in an I slice or an intra-coded picture, the ZU block is Divided into one of two units, three units, or four units; an encoding unit; and a unit signaling encoding in the bitstream.

35.一种视频解码方法,包括:接收对应于视频数据块的比特流,视频数据块具有尺寸;接收信令通知,该信令通知指示视频数据块包括从零单元(ZU)块划分的单元,划分的ZU块位于I条带或帧内编码图片中;以及基于信令通知,解码对应于单元的比特流以重建视频数据块。35. A video decoding method, comprising: receiving a bitstream corresponding to a block of video data, the block of video data having a size; receiving signaling indicating that the block of video data comprises units divided from zero unit (ZU) blocks , the divided ZU blocks are located in an I-slice or an intra-coded picture; and based on the signaling, the bitstream corresponding to the unit is decoded to reconstruct the video data block.

36.如解决方案34或35所述的方法,其中,ZU块的至少一个尺寸是非二的幂数。36. The method of solution 34 or 35, wherein at least one dimension of the ZU block is a non-power of two.

37.如解决方案34或35所述的方法,其中,视频数据块是编码单元(CU)块,并且其中,CU块由于至少一个尺寸为大于阈值的整数而被看待为ZU块。37. The method of solution 34 or 35, wherein the video data block is a coding unit (CU) block, and wherein the CU block is treated as a ZU block because at least one size is an integer greater than a threshold.

38.一种视频系统中的装置,包括处理器和其上具有指令的非瞬时性的存储器,其中,当由处理器执行指令时,使得处理器实现如解决方案1到37中的任一个所述的方法。38. An apparatus in a video system comprising a processor and a non-transitory memory having instructions thereon, wherein the instructions, when executed by the processor, cause the processor to implement as described in any one ofsolutions 1 to 37. method described.

39.一种储存在非瞬时性的计算机可读介质上的计算机程序产品,计算机程序产品包括用于执行解决方案1到37中的任一个中的方法的程序代码。39. A computer program product stored on a non-transitory computer readable medium, the computer program product comprising program code for performing the method of any one ofsolutions 1 to 37.

40.如本文件中所描述的方法、装置或系统。40. A method, apparatus or system as described in this document.

从前述内容可以理解,本文已经出于说明的目的描述了本公开技术的具体实施例,但是可以在不脱离本发明范围的情况下进行各种修改。因此,本公开的技术除了所附权利要求外不受限制。It will be understood from the foregoing that specific embodiments of the disclosed technology have been described herein for purposes of illustration, but various modifications may be made without departing from the scope of the invention. Accordingly, the technology of the present disclosure is not to be limited except by the appended claims.

本专利文件中描述的主题和功能操作的实现方式可以以各种系统、数字电子电路实现,或者以计算机软件、固件或硬件实现,包括说明书中公开的结构及其结构等同物,或者以它们中的一个或多个的组合实现。公开和其它实施例可以实现为一个或多个计算机程序产品,即,在有形且非瞬时性的计算机可读介质上编码的一个或多个计算机程序指令模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质组合、或者它们中的一个或多个的组合。术语“数据处理单元”或“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合的代码。Implementations of the subject matter and functional operations described in this patent document can be implemented in various systems, digital electronic circuits, or in computer software, firmware, or hardware, including the structures disclosed in the specification and their structural equivalents, or in any of them A combination of one or more of the implementations. The disclosure and other embodiments may be implemented as one or more computer program products, ie, one or more modules of computer program instructions encoded on a tangible and non-transitory computer readable medium for execution or control by a data processing apparatus Operation of the data processing device. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a combination of matter that affects a machine-readable propagated signal, or a combination of one or more thereof. The term "data processing unit" or "data processing apparatus" encompasses all apparatus, devices and machines for processing data, including, for example, a programmable processor, computer or multiple processors or computers. In addition to hardware, the apparatus may include code that creates an execution environment for the computer program in question, eg, constituting processor firmware, protocol stacks, database management systems, operating systems, or a combination of one or more of these code.

计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式来部署计算机程序,包括独立程序或适合在计算环境中使用的模块、组件、子例程或其它单元。计算机程序并不必需对应于文件系统中的文件。程序可以存储在文件的保存其它程序或数据(例如,存储在标记语言文件中的一个或多个脚本)的部分中,存储在专用于所讨论的程序的单个文件中,或存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。Computer programs (also known as programs, software, software applications, scripts or codes) may be written in any form of programming language, including compiled or interpreted languages, and may be deployed in any form, including stand-alone programs or suitable for use in a computing environment modules, components, subroutines, or other units used in The computer program does not necessarily correspond to a file in the file system. Programs may be stored in portions of the file that hold other programs or data (eg, one or more scripts stored in a markup language file), in a single file dedicated to the program in question, or in multiple coordinated in a file (eg, a file that stores one or more modules, subroutines, or sections of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.

本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。The processes and logic flows described in this specification can be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, eg, an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).

举例来说,适合于执行计算机程序的处理器包括通用和专用微处理器、以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合到用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘,以从该一个或多个大容量存储设备接收数据,或将数据传输到该一个或多个大容量存储设备,或者既接收又传递数据。然而,计算机不需要具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Typically, a processor will receive instructions and data from read-only memory or random access memory, or both. The basic elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Typically, a computer will also include or be operably coupled to one or more mass storage devices for storing data, such as magnetic, magneto-optical disks, or optical disks, to receive data from, or to store data from, the one or more mass storage devices Data is transmitted to the one or more mass storage devices, or data is both received and delivered. However, a computer need not have such a device. Computer readable media suitable for storage of computer program instructions and data include all forms of nonvolatile memory, media, and memory devices, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices. The processor and memory may be supplemented by or incorporated in special purpose logic circuitry.

说明书和附图旨在被认为仅是示例性的,其中示例性意味着示例。如这里所使用的,单数形式的“一”,“一个”和“该”旨在也包括复数形式,除非上下文另有明确说明。另外,除非上下文另有明确说明,否则“或”的使用旨在包括“和/或”。The specification and drawings are intended to be considered exemplary only, wherein exemplary means examples. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. In addition, the use of "or" is intended to include "and/or" unless the context clearly dictates otherwise.

虽然本专利文件包含许多细节,但这些细节不应被解释为对任何发明或可要求保护的范围的限制,而是作为特定于特定发明的特定实施例的特征的描述。在本专利文件中,在单独的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求权利保护,但是在某些情况下,可以从所要求保护的组合中去除来自该组合的一个或多个特征,并且所要求保护的组合可以指向子组合或子组合的变型。Although this patent document contains many details, these should not be construed as limitations on the scope of any invention or claimable, but as descriptions of features specific to particular embodiments of particular inventions. In this patent document certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Furthermore, although the above features may be described as functioning in certain combinations and even originally claimed as such, in certain instances one or more features from a claimed combination may be excluded from that combination, and The claimed combination may be directed to a subcombination or a variation of a subcombination.

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为要求以所示的特定顺序或按顺序执行这样的操作,或者执行所有示出的操作,以实现期望的结果。此外,在本专利文件中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都要求这种分离。Similarly, although operations are depicted in the figures in a particular order, this should not be construed as requiring that such operations be performed in the particular order shown, or sequential order, or that all illustrated operations be performed, to achieve desirable results . Furthermore, the separation of various system components in the embodiments described in this patent document should not be construed as requiring such separation in all embodiments.

仅描述了几个实现方式和示例,并且可以基于本专利文件中描述和示出的内容来做出其它实现方式、增强和变型。Only a few implementations and examples have been described, and other implementations, enhancements and modifications can be made based on what is described and illustrated in this patent document.

Claims (40)

Translated fromChinese
1.一种视频编码方法,包括:1. A video coding method, comprising:由于视频数据块具有尺寸S×T,S和T中的至少一个是非二的幂数,确定所述视频数据块将被编码为零单元(ZU)块;Since the video data block has size S×T, at least one of S and T is a non-power-of-two number, determining that the video data block is to be encoded as a zero unit (ZU) block;将所述ZU块划分为两个单元、三个单元或四个单元中的一个;以及dividing the ZU block into one of two cells, three cells, or four cells; and通过编码所述单元生成比特流。A bitstream is generated by encoding the units.2.一种视频解码方法,包括:2. A video decoding method, comprising:接收对应于编码为零单元(ZU)块的视频数据块的比特流,该零单元(ZU)块被划分为两个单元、三个单元或四个单元,所述视频数据块具有尺寸S×T;以及receiving a bitstream corresponding to a block of video data encoded as a zero-unit (ZU) block, the zero-unit (ZU) block being divided into two, three, or four units, the video data block having size S× T; and通过解码所述比特流生成所述视频数据块。The block of video data is generated by decoding the bitstream.3.如权利要求1或2所述的方法,其中,所述ZU块使用二叉树划分方案被划分为两个单元,每个单元具有尺寸S/2×T。3. The method of claim 1 or 2, wherein the ZU block is divided into two units using a binary tree partitioning scheme, each unit having size S/2xT.4.如权利要求1或2所述的方法,其中,所述ZU块使用二叉树划分方案被划分为两个单元,每个单元具有尺寸S×T/2。4. The method of claim 1 or 2, wherein the ZU block is divided into two units using a binary tree partitioning scheme, each unit having size SxT/2.5.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,所述两个单元中的第一单元具有尺寸2N×T,并且所述两个单元中的第二单元具有尺寸(S-2N)×T。5. The method of claim 1 or 2, wherein, as a result of a ZU block of2N <S≤2N+1 being divided into two units using a binary tree partitioning scheme, the first of the two units A cell has dimensions2N ×T, and the second of the two cells has dimensions (S-2N )×T.6.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,所述两个单元中的第一单元具有尺寸(S-2N)×T,并且所述两个单元中的第二单元具有尺寸2N×T。6. The method of claim 1 or 2, wherein, as a result of a ZU block of2N <S≤2N+1 being divided into two units using a binary tree partitioning scheme, the first of the two units A cell has dimensions (S-2N )×T, and the second of the two cells has dimensions2N ×T.7.如权利要求1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,所述两个单元中的第一单元具有尺寸S×2N,并且所述两个单元中的第二单元具有尺寸S×(T-2N)。7. The method of claim 1 or 2, wherein, as a result of a ZU block of2N <T≤2N+1 being divided into two units using a binary tree partitioning scheme, the first of the two units A cell has size S×2N , and the second of the two cells has size S×(T-2N ).8.如权利要求1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用二叉树划分方案被划分为两个单元的结果,所述两个单元中的第一单元具有尺寸S×(T-2N)并且所述两个单元中的第二单元具有尺寸S×2N8. The method of claim 1 or 2, wherein, as a result of a ZU block of2N <T≤2N+1 being divided into two units using a binary tree partitioning scheme, the first of the two units A cell has size Sx(T-2N ) and the second of the two cells has sizeSx2N .9.如权利要求1或2所述的方法,其中,所述ZU块使用三叉树划分方案被划分为三个单元,所述三个单元中的两个单元的每一个具有尺寸S/4×T,并且所述三个单元中的一个单元具有尺寸S/2×T。9. The method of claim 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, two of the three units each having size S/4× T, and one of the three cells has size S/2×T.10.如权利要求1或2所述的方法,其中,所述ZU块使用三叉树划分方案被划分为三个单元,所述三个单元中的两个具有尺寸S×T/4,并且所述三个单元中的一个具有尺寸S×T/2。10. The method of claim 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, two of the three units have size S×T/4, and the One of the three cells has size S×T/2.11.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用三叉树划分方案被划分为三个单元的结果,第一单元具有尺寸2N-1×T,第二单元具有尺寸(S-2N)×T,并且第三单元具有尺寸2N-1×T。11. The method of claim 1 or 2, wherein as a result of a ZU block of2N <S≤2N+1 being divided into three units using a ternary tree partitioning scheme, the first unit has size2N- 1 ×T, the second cell has size (S-2N )×T, and the third cell has size2N-1 ×T.12.如权利要求1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用三叉树划分方案被划分为三个单元的结果,第一单元具有尺寸S×2N-1,第二单元具有尺寸S×(T-2N),并且第三单元具有尺寸S×2N-112. The method of claim 1 or 2, wherein as a result of a ZU block of2N <T≤2N+1 being divided into three units using a ternary tree partitioning scheme, the first unit has size S×2N-1 , the second cell has size S×(T-2N ), and the third cell has size S×2N-1 .13.如权利要求1或2所述的方法,其中,所述ZU块使用四叉树划分方案被划分为四个单元,每个单元具有尺寸S/2×T/2。13. The method of claim 1 or 2, wherein the ZU block is divided into four units using a quadtree partitioning scheme, each unit having size S/2xT/2.14.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×T/2,第二单元具有尺寸2N×T/2,并且第三单元具有尺寸S/2×(T-2N),并且第四单元具有尺寸S/2×(T-2N)。14. The method of claim 1 or 2, wherein as a result of a ZU block of2N <S≤2N+1 being divided into four cells using a quadtree partitioning scheme, the first cell has size2N ×T/2, the second cell has size2N ×T/2, and the third cell has size S/2×(T-2N ), and the fourth cell has size S/2×(T-2N ) .15.如权利要求1或2所述的方法,其中,作为2N<T≤2N+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸S/2×2N,第二单元具有尺寸S/2×2N,并且第三单元具有尺寸S/2×(T-2N),并且第四单元具有尺寸S/2×(T-2N)。15. The method of claim 1 or 2, wherein as a result of a ZU block of2N <T≤2N+1 being divided into four units using a quadtree partitioning scheme, the first unit has size S/ 2×2N , the second cell has size S/2×2N , the third cell has size S/2×(T-2N ), and the fourth cell has size S/2×(T-2N ) .16.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1且2M<T≤2M+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×2M,第二单元具有尺寸2N×2M,并且第三单元具有尺寸(S-2N)×(T-2M),并且第四单元具有尺寸(S-2N)×(T-2M)。16. The method of claim 1 or 2, wherein a ZU block as2N <S≤2N+1 and2M <T≤2M+1 is divided into four units using a quadtree partition scheme As a result, the first cell has size 2N × 2M , the second cell has size 2N × 2M , and the third cell has size (S-2N ) × (T-2M ), and the fourth cell has Dimensions (S-2N ) × (T-2M ).17.如权利要求1或2所述的方法,其中,作为2N<S≤2N+1且2M<T≤2M+1的ZU块使用四叉树划分方案被划分为四个单元的结果,第一单元具有尺寸2N×(T-2M),第二单元具有尺寸2N×(T-2M),第三单元具有尺寸(S-2N)×2M,并且第四单元具有尺寸(S-2N)×2M17. The method of claim 1 or 2, wherein a ZU block as2N <S≤2N+1 and2M <T≤2M+1 is divided into four units using a quadtree partition scheme As a result, the first cell has size 2N × (T-2M ), the second cell has size 2N × (T-2M ), the third cell has size (S-2N ) × 2M , and the third cell has size 2 N × (T-2 M ) The quad unit has dimensions (S-2N )×2M .18.如权利要求1或2所述的方法,其中,所述ZU块的每个单元的高度和/或宽度是偶数。18. The method of claim 1 or 2, wherein the height and/or width of each cell of the ZU block is an even number.19.如权利要求1或2所述的方法,其中,所述ZU块使用三叉树划分方案被分割为三个单元。19. The method of claim 1 or 2, wherein the ZU block is divided into three units using a ternary tree partitioning scheme.20.如权利要求19所述的方法,其中,作为3*2N<S≤3*2N+1的ZU块被划分的结果,所述三个单元中的第一单元具有尺寸2N×T,所述三个单元中的第二单元具有尺寸(S-3*2N)×T,并且所述三个单元中的第三单元具有尺寸2N+1×T。20. The method of claim 19, wherein thefirst of the three cells has size2N× T, the second of the three cells has size (S-3*2N )×T, and the third cell of the three cells has size 2N+1 ×T.21.如权利要求19所述的方法,其中,作为3*2N<T≤3*2N+1的ZU块被划分的结果,所述三个单元中的第一单元具有尺寸S×2N,所述三个单元中的第二单元具有尺寸S×(T-3*2N),并且所述三个单元中的第三单元具有尺寸S×2N+121. The method of claim 19, wherein the first of the three cells has size S×2 as a result of division of ZU blocks of 3*2N <T≤3*2N+1N , the second of the three cells has size S×(T-3*2N ), and the third cell of the three cells has size S×2N+1 .22.如权利要求1或2所述的方法,其中,所述单元具有K*M形式的尺寸,其中M和K是整数。22. The method of claim 1 or 2, wherein the cells have dimensions of the form K*M, where M and K are integers.23.如权利要求1或2所述的方法,其中,所述单元具有K*M形式的尺寸,M是允许的编码单元的最小高度或最小宽度,并且所述单元是从非ZU块划分得到的。23. The method of claim 1 or 2, wherein the unit has a size of the form K*M, where M is the minimum height or minimum width of an allowed coding unit, and the unit is derived from a non-ZU block division of.24.如权利要求22所述的方法,其中,导致非K*M形式的单元的ZU块划分方案的信令通知被跳过。24. The method of claim 22, wherein signaling of a ZU block partitioning scheme resulting in units other than K*M form is skipped.25.如权利要求23所述的方法,其中,导致从非ZU块划分的非K*M形式的单元的划分方案的信令通知被跳过。25. The method of claim 23, wherein signaling of a partitioning scheme resulting in non-K*M form units partitioned from non-ZU blocks is skipped.26.一种视频编码方法,包括:26. A video coding method, comprising:由于所述块具有非二的幂数的高度或宽度,确定视频数据块将被编码为零单元(ZU)块;determining that the block of video data is to be encoded as a zero-unit (ZU) block because the block has a height or width that is not a power of two;使用划分方案来划分所述视频数据块,其中,所述划分方案将所述视频数据块划分为两个单元、三个单元或四个单元中的一个;dividing the block of video data using a partitioning scheme, wherein the partitioning scheme divides the block of video data into one of two units, three units, or four units;通过编码所述视频数据块生成比特流,其中,所述划分方案使用与用于对作为非零单元块的另一视频数据块进行划分的信令通知相同的语法来发信令通知。A bitstream is generated by encoding the block of video data, wherein the partitioning scheme is signaled using the same syntax used to signal the partitioning of another block of video data that is a non-zero unit block.27.一种视频解码方法,包括:27. A video decoding method, comprising:接收对应于视频数据块的比特流,由于所述视频数据块具有尺寸S×T,S和T中的至少一个是非二的幂数,所述视频数据块被编码为零单元(ZU)块,其中,使用将所述视频数据块划分为两个单元、三个单元或四个单元中的一个的划分方案将所述视频数据块划分,并且其中,所述划分方案在所述比特流中使用与用于信令通知非零单元块的划分相同的语法来发信令通知;receiving a bitstream corresponding to a block of video data encoded as a zero-unit (ZU) block since the block of video data has size S×T and at least one of S and T is a non-power-of-two number, wherein the block of video data is divided using a partitioning scheme that divides the block of video data into one of two, three or four units, and wherein the partitioning scheme is used in the bitstream Signal the same syntax as used to signal the partitioning of non-zero cell blocks;基于所述信令通知,解码所述比特流以生成所述视频数据块。Based on the signaling, the bitstream is decoded to generate the block of video data.28.一种视频编码方法,包括:28. A video coding method, comprising:由于视频数据块具有尺寸S×T,S和T的至少一个是非二的幂数,确定所述视频数据块将被编码为零单元(ZU)块;Since the video data block has size S×T, at least one of S and T is a non-power-of-two number, determining that the video data block is to be encoded as a zero unit (ZU) block;使用从ZU块划分方案的组中选择的划分方案将所述ZU块划分为两个单元、三个单元或四个单元中的一个;dividing the ZU block into one of two cells, three cells, or four cells using a partitioning scheme selected from the group of ZU block partitioning schemes;编码所述单元;以及encoding the unit; and在比特流中信令通知被编码的单元;signaling the encoded unit in the bitstream;其中,所述ZU块划分方案的组是可用于划分编码单元(CU)的划分方案的组的子集。Wherein, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).29.一种视频解码方法,包括:29. A video decoding method, comprising:接收对应于视频数据块的比特流,所述视频数据块具有尺寸;receiving a bitstream corresponding to a block of video data, the block of video data having a size;接收信令通知,所述信令通知指示由于所述视频数据块具有尺寸S×T,S和T中的至少一个是非二的幂数,所述视频数据块作为零单元(ZU)块被划分,使用从ZU块划分方案的组中选择的划分方案将所述块划分;以及receiving signaling indicating that the video data block is divided as a zero unit (ZU) block due to the fact that the video data block has size S×T and at least one of S and T is a non-power-of-two number , the block is partitioned using a partitioning scheme selected from the group of ZU block partitioning schemes; and基于所述信令通知,解码对应于所述单元的所述比特流以重建所述视频数据块;decoding the bitstream corresponding to the unit to reconstruct the block of video data based on the signaling;其中,所述ZU块划分方案的组是可用于分割编码单元(CU)的划分方案的组的子集。Wherein, the set of ZU block partitioning schemes is a subset of the set of partitioning schemes that can be used to partition coding units (CUs).30.如权利要求28或29所述的方法,其中,所述ZU块划分方案的组基于所述ZU块的大小或者与图片、条带、片或条带类型的一个有关的所述ZU块的位置中的一个。30. The method of claim 28 or 29, wherein the set of ZU block partitioning schemes is based on the size of the ZU block or the ZU block associated with one of a picture, slice, slice or slice type one of the locations.31.如权利要求28或29所述的方法,其中,可用的所述ZU块划分方案的组限于四叉树划分方案和二叉树划分方案。31. The method of claim 28 or 29, wherein the set of available ZU block partitioning schemes is limited to a quad-tree partitioning scheme and a binary-tree partitioning scheme.32.如权利要求28或29所述的方法,其中,所述ZU块使用三叉树划分方案被划分为三个单元,并且所述ZU块的信令通知不包括与所述划分方案有关的信息。32. The method of claim 28 or 29, wherein the ZU block is divided into three units using a ternary tree partitioning scheme, and the signaling of the ZU block does not include information related to the partitioning scheme .33.如权利要求28或29所述的方法,其中,所述ZU块划分方案的组与可用于分割所述编码单元(CU)的所述划分方案的组相同,并且基于所述视频数据块是所述ZU块来选择用于信令通知分割所述ZU块的指示的上下文。33. The method of claim 28 or 29, wherein the set of ZU block partitioning schemes is the same as the set of partitioning schemes available for partitioning the coding unit (CU), and is based on the video data block It is the ZU block that selects the context for signaling the indication to split the ZU block.34.一种视频编码方法,包括:34. A video encoding method, comprising:由于所述视频数据块具有尺寸,并且所述尺寸的高和宽中的至少一个是非二的幂数,确定视频数据块将被编码为零单元(ZU)块;Since the video data block has a size, and at least one of a height and a width of the size is a non-power-of-two number, determining that the video data block is to be encoded as a zero-unit (ZU) block;在确定所述ZU块位于I条带或帧内编码的图片中时,将所述ZU块划分为两个单元、三个单元或四个单元中的一个;When it is determined that the ZU block is located in an I slice or an intra-coded picture, dividing the ZU block into one of two units, three units or four units;编码所述单元;以及encoding the unit; and在比特流中信令通知被编码的单元。The encoded units are signaled in the bitstream.35.一种视频解码方法,包括:35. A video decoding method, comprising:接收对应于视频数据块的比特流,所述视频数据块具有尺寸;receiving a bitstream corresponding to a block of video data, the block of video data having a size;接收信令通知,所述信令通知指示所述视频数据块包括从零单元(ZU)块划分的单元,所述零单元(ZU)块至少高度或宽度为非二的幂数,并且在无变换和残差编码的情况下被编码,所述划分的ZU块位于I条带或帧内编码图片中;以及Receive signaling indicating that the block of video data includes cells partitioned from a zero-unit (ZU) block that is at least a height or width that is not a power of two, and in the absence of is encoded in the case of transform and residual encoding, the partitioned ZU blocks are located in an I-slice or intra-coded picture; and基于所述信令通知,解码对应于所述单元的所述比特流以重建所述视频数据块。Based on the signaling, the bitstream corresponding to the unit is decoded to reconstruct the block of video data.36.如权利要求34或35所述的方法,其中,所述ZU块的尺寸的高和宽中的至少一个是非二的幂数。36. The method of claim 34 or 35, wherein at least one of a height and a width of the size of the ZU block is a non-power of two.37.如权利要求34或35所述的方法,其中,所述视频数据块是编码单元(CU)块,并且其中,所述CU块由于至少一个尺寸为大于阈值的整数而被看待为ZU块。37. The method of claim 34 or 35, wherein the block of video data is a coding unit (CU) block, and wherein the CU block is treated as a ZU block because at least one size is an integer greater than a threshold .38.一种视频系统中的设备,包括处理器和其上存储有指令的非瞬时性存储器,其中,当由所述处理器执行所述指令时,使得所述处理器实现如权利要求1到37中的一个或多个所述的方法。38. An apparatus in a video system, comprising a processor and a non-transitory memory having instructions stored thereon, wherein, when executed by the processor, the instructions cause the processor to implement any of claims 1 to The method of one or more of 37.39.一种储存在非瞬时性的计算机可读介质上的计算机程序产品,所述计算机程序产品包括用于执行如权利要求1到37中的一个或多个所述的方法的程序代码。39. A computer program product stored on a non-transitory computer readable medium, the computer program product comprising program code for performing the method of one or more of claims 1 to 37.40.如本文件中所描述的方法、装置或系统。40. A method, apparatus or system as described in this document.
CN201910586408.4A2018-06-292019-07-01Zero unit dividing method, equipment and mediumActiveCN110662038B (en)

Applications Claiming Priority (6)

Application NumberPriority DateFiling DateTitle
CNPCT/CN2018/0936312018-06-29
CN20180936312018-06-29
US201862693415P2018-07-022018-07-02
US62/693,4152018-07-02
CN20180947672018-07-06
CNPCT/CN2018/0947672018-07-06

Publications (2)

Publication NumberPublication Date
CN110662038Atrue CN110662038A (en)2020-01-07
CN110662038B CN110662038B (en)2022-02-08

Family

ID=67909423

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201910586408.4AActiveCN110662038B (en)2018-06-292019-07-01Zero unit dividing method, equipment and medium

Country Status (3)

CountryLink
CN (1)CN110662038B (en)
TW (1)TWI707580B (en)
WO (1)WO2020003183A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US11956430B2 (en)*2018-06-182024-04-09Interdigital Vc Holdings, Inc.Method and apparatus for video encoding and decoding based on asymmetric binary partitioning of image blocks

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20120230411A1 (en)*2011-03-092012-09-13Mediatek Singapore Pte. Ltd.Method and Apparatus of Transform Unit Partition with Reduced Complexity
CN105721867A (en)*2010-04-132016-06-29三星电子株式会社 How to decode video
US20180109812A1 (en)*2016-10-142018-04-19Media Tek Inc.Block partitioning using tree structures
WO2018088805A1 (en)*2016-11-082018-05-17주식회사 케이티Video signal processing method and apparatus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20180109814A1 (en)*2016-10-142018-04-19Mediatek Inc.Method And Apparatus Of Coding Unit Information Inheritance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN105721867A (en)*2010-04-132016-06-29三星电子株式会社 How to decode video
US20120230411A1 (en)*2011-03-092012-09-13Mediatek Singapore Pte. Ltd.Method and Apparatus of Transform Unit Partition with Reduced Complexity
US20180109812A1 (en)*2016-10-142018-04-19Media Tek Inc.Block partitioning using tree structures
WO2018088805A1 (en)*2016-11-082018-05-17주식회사 케이티Video signal processing method and apparatus

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JACKIE MA等: "Description of Core Experiment 1 (CE 1): Partitioning(JVET-J1021)", 《JOINT VIDEO EXPLORATION TEAM (JVET)10TH MEETING: SAN DIEGO》*
XIAOYU XIU等: "Rext HLS: on lossless coding(JCTVC-Q0106)", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)17TH MEETING: VALENCIA》*

Also Published As

Publication numberPublication date
TW202002658A (en)2020-01-01
WO2020003183A1 (en)2020-01-02
CN110662038B (en)2022-02-08
TWI707580B (en)2020-10-11

Similar Documents

PublicationPublication DateTitle
CN110636314B (en) Improved boundary segmentation
CN110719481B (en) Cross-component encoding information export
CN110662050B (en)Method, apparatus and storage medium for processing video data
CN110662035B (en)Filtering of zero units
CN110730349B (en)Constraint for microblocks
CN110662038B (en)Zero unit dividing method, equipment and medium

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp