CN110730349B - 用于微块的约束 - Google Patents
用于微块的约束 Download PDFInfo
- Publication number
- CN110730349B CN110730349B CN201910646610.1A CN201910646610A CN110730349B CN 110730349 B CN110730349 B CN 110730349B CN 201910646610 A CN201910646610 A CN 201910646610A CN 110730349 B CN110730349 B CN 110730349B
- Authority
- CN
- China
- Prior art keywords
- block
- micro
- signaled
- transform
- microblock
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 177
- 238000012545 processing Methods 0.000 claims abstract description 18
- 241000023320 Luma <angiosperm> Species 0.000 claims description 63
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 63
- 238000000638 solvent extraction Methods 0.000 claims description 48
- 230000011664 signaling Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 11
- 238000013139 quantization Methods 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 8
- 238000001914 filtration Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims 1
- 230000007704 transition Effects 0.000 abstract description 9
- 238000005192 partition Methods 0.000 description 28
- 238000005516 engineering process Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 101150114515 CTBS gene Proteins 0.000 description 9
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 229910052757 nitrogen Inorganic materials 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 229910052698 phosphorus Inorganic materials 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/557—Motion estimation characterised by stopping computation or iteration based on certain criteria, e.g. error magnitude being too large or early exit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种用于视频比特流处理的方法和装置,该方法包含:确定块是微块,其中所述块的高度和宽度中至少之一具有2个样本;以及,基于所述确定,以与普通块不同的方式进行所述块与所述块的编解码表示之间的转换。
Description
相关申请的交叉引用
根据适用的专利法和/或《巴黎公约》的规定,本申请及时要求于2018年7月17日提交的国际专利申请No.PCT/CN2018/095918和于2018年9月20日提交的国际专利申请No.PCT/CN2018/106661的优先权和权益。国际专利申请No.PCT/CN2018/095918和NO.PCT/CN2018/106661的全部公开以引用方式并入作为本申请公开的一部分。
技术领域
该专利文件一般涉及图像和视频解码和编码技术。
背景技术
数字视频占互联网和其他数字通信网络上的最大带宽使用。随着能够接收和显示视频的连接用户设备的数量增加,预计数字视频使用的带宽需求将继续增长。
发明内容
描述了与使用块尺寸限制来进行视频编解码方法有关的设备、系统和方法。例如,本公开技术公开了基于视频数据的块的亮度或色度分量的性质(或特性)选择预测模式或确定是否划分视频数据的块(例如,在图片、条带(slice),片(tile)等中)。所述方法可以应用于现有视频编解码标准(例如,高效视频编解码(HEVC))和未来视频编解码标准或视频编解码器。
在一个示例性方面中,公开了视频处理方法。该方法包括:接收包含视频块的视频数据的比特流表示,其中该视频块包括第一分量和第二分量中的样本;在第二分量的视频块被划分为子块的情况下,从第二分量的子块的第二编解码信息导出第一分量的第一编解码信息;基于第一编解码信息,进行视频块与视频块的比特流表示之间的转换。
在另一示例性方面中,公开了一种视频解码的方法。该方法包括:接收包含视频块的数据的比特流表示,其中所述视频块包括第一分量中的样本,所述第一分量中的样本具有M×N的维度;基于满足具体条件中一个或多个,确定用于解码所述块的第一分量的第一预测模式不是双向预测模式;以及通过使用所述第一预测模式解码所述第一分量。
在另一示例性方面中,公开了一种视频解码的方法。该方法包括:接收包含视频块的视频数据的比特流表示,其中所述视频块包括第一分量中的样本和第二分量中的样本;确定用于解码所述块的第一分量的第一预测模式,并且确定用于解码所述块的第二分量的第二预测模式;通过分别使用所述第一预测模式和所述第二预测模式解码所述第一分量和第二分量。
在另一示例性方面中,公开了一种视频解码的方法。该方法包括:接收包含块的数据的比特流表示,其中所述块包括与第一分量和第二分量相关联的样本,其中与所述块的第一分量相关联的样本具有M×N的维度;以及解码所述块的第一分量和第二分量;其中解码所述块的第一分量包括,基于所述维度,解码所述块的第一分量的多个子块,并且通过仅在与所述块的第一分量相关联的样本上进行划分操作而不在与所述块的第二分量相关联的样本上进行划分操作而生成所述多个所述子块。
在另一示例性方面中,公开了一种比特流处理的方法。该方法包含:确定块是微块,其中所述块的高度和宽度至少之一具有2个样本;以及基于所述确定以与普通块不同的方式进行块与块的编解码表示之间的转换。
在又一典型方面,上述方法以处理器可执行代码的形式体现并存储在计算机可读程序介质中。
在又一典型方面,公开了一种配置或可操作以执行上述方法的设备。该设备可以包括被编程为实现该方法的处理器。
在又一典型方面,视频解码器装置可以实施如本文中所述的方法。
在附图、说明书和权利要求中更详细地描述了公开技术的上述和其他方面和特征。
附图说明
图1示出了高效视频编解码(HEVC)视频编码器和解码器的典型示例性框图。
图2示出了H.264/AVC中的宏块(MB)分割的示例。
图3示出了将编解码块(CB)划分为预测块(PB)的示例。
图4A和4B分别示出了将编解码树块(CTB)细分为CB和变换块(TB)以及对应四叉树的示例。
图5示出了一帧的分割结构的示例。
图6A和6B分别示出了在图5中的示例性帧中突出显示的CTB的细分和信令方法。
图7A和7B示出了用于最大编解码单元(LCU)的细分和对应QTBT(四叉树加二叉树)的示例。
图8A-8E示出了划分编解码块的示例。
图9示出了基于QTBT的CB的示例性细分。
图10A-10I示出了支持多树类型(MTT)的CB的分割的示例,其是QTBT的一般化。
图11示出了树型信令的示例。
图12A-12C示出了跨越图片边界的CTB的示例。
图13示出了如果亮度分量可以被划分但色度分量不能被划分的情况下的示例性编码/解码/信令顺序。
图14示出了根据本公开的技术的视频编解码的示例性方法的流程图。
图15是用于实现本文档中描述的可视媒体解码或可视媒体编码技术的硬件平台的示例的框图。
图16示出了根据本公开技术的视频处理的示例性方法的流程图。
图17示出了根据本公开技术的视频解码的另一示例性方法的流程图。
图18示出了根据本公开技术的视频解码的另一示例性方法的流程图。
图19示出了根据本公开技术的视频解码的另一示例性方法的流程图。
图20示出了根据本公开技术的视频解码的另一示例性方法的流程图。
具体实施方式
由于对更高分辨率视频的需求的增加,视频编解码方法和技术在现代技术中普遍存在。视频编解码器通常包括压缩或解压缩数字视频的电子电路或软件,并且不断改进以提供更高的编解码效率。视频编解码器将未压缩视频转换成压缩格式,反之亦然。视频质量,用于表示视频的数据量(由比特率确定),编码和解码算法的复杂性,对数据丢失和错误的敏感性,编辑的简易性,随机存取和端到端延迟(延迟)之间存在复杂的关系。压缩格式通常符合标准视频压缩规范,例如,高效视频编解码(HEVC)标准(也称为H.265或MPEG-H第2部分),待最终确定的多功能视频编解码标准或其他当前和/或未来的视频编解码标准。
所公开的技术的实施例可以应用于现有视频编解码标准(例如,HEVC,H.265)和未来的标准以改进压缩性能。在本文件中使用章节标题来提高描述的可读性,并且不以任何方式将讨论或实施例(和/或实现方式)仅限制到相应的章节。
1.视频编解码的示例性实施例
图1示出了HEVC视频编码器和解码器的典型示例性框图(参考文献[1])。产生符合HEVC的比特流的编码算法通常如下进行。每个图片被分成块状区域,精确的块划分被传送到解码器。视频序列的第一图片(以及进入视频序列的每个干净的随机访问点处的第一图片)仅使用图片内预测(其使用同一图片内区域到区域的空间数据预测,但不依赖其他图片)进行编解码。对于序列的或随机访问点之间的所有剩余图片,图片间时间预测编解码模式通常用于大多数块。用于图片间预测的编码处理包括选择包括要应用于预测每个块的样本的所选参考图片和运动矢量(MV)的运动数据。编码器和解码器通过使用MV和模式决策数据应用运动补偿(MC)来生成相同的图片间预测信号,其作为辅助信息被传输。
通过线性空间变换来变换图片内或图片间预测的残差信号,其是原始块与其预测之间的差。然后对变换系数进行缩放,量化,熵编解码,并与预测信息一起传输。
编码器复制解码器处理循环(参见图1中的灰色阴影框),使得两者都将为后续数据生成相同的预测。因此,通过逆缩放来构造量化的变换系数,然后对其进行逆变换以复制残差信号的解码近似。然后将残差添加到预测,然后可以将该相加的结果馈送到一个或两个环路滤波器中以平滑由逐块处理和量化引起的伪像。最终图片表示(即解码器输出的副本)存储在解码图片缓冲器中以用于后续图片的预测。通常,图片的编码或解码处理的顺序通常不同于它们从源到达的顺序;需要区分解码器的解码顺序(即比特流顺序)和输出顺序(即显示顺序)。
通常期望由HEVC编码的视频材料作为逐行扫描图像输入(由于源视频源自该格式或者由编码之前的去交错产生)。HEVC设计中不存在明确的编解码特征以支持隔行扫描的使用,因为隔行扫描不再用于显示器,并且对于分发而言变得非常不常见。然而,在HEVC中已提供了元数据语法以允许编码器,通过将隔行扫描视频的每个区(即,每个视频帧的偶数或奇数行)编解码为单独的图片来指示已发送隔行扫描视频,或通过将每个隔行扫描帧编解码为HEVC编解码图片来指示它已被发送。这提供了一种对隔行扫描视频进行编解码的有效方法,而不需要支持用于它的特殊解码处理。
1.1.H.264/AVC中的分割树结构的示例
先前标准中的编解码层的核心是宏块,其包含亮度样本的16×16块,并且在4:2:0颜色采样的通常情况下,包含色度样本的两个对应的8×8块。
帧内编解码块使用空间预测来利用像素之间的空间相关性。定义了两个分割:16×16和4×4。
帧间编解码块通过估计图片之间的运动来使用时间预测而不是空间预测。可以针对16×16宏块或其任何子宏块分割独立地估计运动:16×8,8×16,8×8,8×4,4×8,4×4,如图2中所示。每个子宏块分割仅允许一个运动矢量(MV)。
1.2HEVC中的分割树结构的示例
在HEVC中,通过使用表示为编解码树的四叉树结构将编解码树单元(CTU)划分为编解码单元(CU)以适应各种局部特性。使用图片间(时间)还是图片内(空间)预测来编解码图片区域的决定是在CU级别进行的。可以根据PU划分类型将每个CU进一步划分为一个、两个或四个预测单元(PU)。在一个PU内部,应用相同的预测处理,并且基于PU将相关信息传输到解码器。在通过应用基于PU划分类型的预测处理来获得残差块之后,可以根据类似于CU的编解码树的另一种四叉树结构将CU划分为变换单元(TU)。HEVC结构的关键特征之一是它具有多个分割概念,包括CU、PU和TU。
使用HEVC的混合视频编解码中涉及的某些特征包括:
(1)编解码树单元(CTU)和编解码树块(CTB)结构:HEVC中的类似结构是编解码树单元(CTU),其具有由编码器选择的大小并且可以大于传统的宏块。CTU由亮度CTB和对应色度CTB和语法元素组成。亮度CTB的大小L×L可以选择为L=16、32或64个样本,较大的大小通常能够实现更好的压缩。然后HEVC支持使用树结构和类似四叉树的信令将CTB划分为更小的块。
(2)编解码单元(CU)和编解码块(CB):CTU的四叉树语法指定其亮度CB和色度CB的大小和位置。四叉树的根与CTU关联。因此,亮度CTB的大小是亮度CB的最大支持大小。将CTU划分成亮度CB和色度CB被联合信令通知。一个亮度CB和通常两个色度CB以及关联的语法形成编解码单元(CU)。CTB可以仅包含一个CU或者可以被划分以形成多个CU,并且每个CU具有关联的划分的预测单元(PU)和具有变换单元(TU)的树。
(3)预测单元和预测块(PB):在CU级别做出是使用帧间预测还是帧内预测来编解码图片区域的决定。PU划分结构的根在CU级别。取决于基本预测类型决定,然后亮度CB和色度CB可以进一步在大小上划分并从亮度预测块(PB)和色度预测块(PB)进行预测。HEVC支持从64×64下至4×4样本的可变PB大小。图3示出了对于M×M CU的允许PB的示例。
(4)变换单元(TU)和变换块:使用块变换对预测残差进行编解码。TU树结构的根在CU级别。亮度CB残差可以与亮度变换块(TB)相同,或者可以进一步划分成较小的亮度TB。这同样适用于色度TB。对于方形TB大小4×4,8×8,16×16和32×32,定义类似于离散余弦变换(DCT)的整数基函数。对于亮度帧内预测残差的4×4变换,交替地指定从离散正弦变换(DST)的形式导出的整数变换。
1.2.1.树状结构划分为TB和TU的示例
对于残差编解码,可以将CB递归地划分为变换块(TB)。划分通过残差四叉树信令通知。仅指定了方形CB和TB划分,其中块可以递归地划分成象限,如图4A和4B中所示。对于大小为M×M的给定亮度CB,标志信令通知指示它是否被分成大小为M/2×M/2的四个块。如果可能进一步划分,如SPS中指示的残差四叉树的最大深度所信令通知,则为每个象限分配一个标志,所述标志指示它是否被分成四个象限。由残差四叉树产生的叶节点块是通过变换编解码进一步处理的变换块。编码器指示它将使用的最大和最小亮度TB大小。当CB大小大于最大TB大小时,划分是隐含的。当划分将导致亮度TB大小小于指示的最小值时,则不划分是隐含的。在每个维度(dimension)中色度TB大小是亮度TB大小的一半,除了当亮度TB大小为4×4时,在该情况下单个4×4色度TB用于由四个4×4亮度TB覆盖的区域。在帧内预测的CU的情况下,最近相邻TB(在CB内或外)的解码样本用作用于帧内预测的参考数据。
与先前的标准相反,HEVC设计允许TB跨越帧间预测CU的多个PB以最大化四叉树结构的TB划分的潜在编解码效率益处。
1.2.2.图片边界编解码的示例
以最小允许的亮度CB大小为单位定义图片的边界。结果,在图片的右边界和底边界处,一些CTU可以覆盖部分在图片边界之外的区域。该情况由解码器检测到,并且必要时隐含地划分CTU四叉树以将CB大小减小到整个CB将适合图片的点。
图5示出了一帧的分割结构的示例,其具有416×240像素的分辨率和7个CTB×4个CTB的维度,其中CTB的大小是64×64。如图5中所示,部分位于右边界和下边界之外的CTB具有隐含的划分(虚线,表示为502),并且完全落在外面的CU被简单地跳过(未编解码)。
在图5所示的示例中,突出显示的CTB(504),其中行CTB索引等于2并且列CTB索引等于3,在当前图片内具有64×48像素,并且不适合64×64CTB。因此,它被强制划分为32×32而不会对划分标志信令通知。对于左上32×32,它完全被帧覆盖。当它根据速率-失真成本选择在较小的块中进行编解码(对于左上16×16为8×8,其余在16×16中编解码)时,需要对几个划分标志进行编解码。这些划分标志(是否将左上32×32分成四个16×16块的一个标志,以及用于信令指示是否一个16×16进一步被划分并且对于左上16×16内的四个8×8块中的每一个8×8进一步被划分的标志)必须明确地被信令通知。右上32×32块存在类似情况。对于两个底部32×32块,由于它们部分地位于图片边界(506)之外,因此需要应用进一步的QT划分而不用信令通知。图6A和6B分别示出了图5中突出显示的CTB(504)的细分和信令方法。
1.2.3.CTB大小指示的示例
表1中示出了用于通用序列参数集的示例性RBSP(原始字节序列有效载荷)语法表。
表1:RBSP语法结构
对应语义包括:
log2_min_luma_coding_block_size_minus3加3指定最小亮度编解码块大小;以及
log2_diff_max_min_luma_coding_block_size指定最大和最小亮度编解码块大小之间的差。
变量MinCbLog2SizeY,CtbLog2SizeY,MinCbSizeY,CtbSizeY,PicWidthInMinCbsY,PicWidthInCtbsY,PicHeightInMinCbsY,PicHeightInCtbsY,PicSizeInMinCbsY,PicSizeInCtbsY,PicSizeInSamplesY,PicWidthInSamplesC和PicHeightInSamplesC如下导出:
MinCbLog2SizeY=log2_min_luma_coding_block_size_minus3+3
CtbLog2SizeY=MinCbLog2SizeY+log2_diff_max_min_luma_coding_block_size
MinCbSizeY=1<<MinCbLog2SizeY
CtbSizeY=1<<CtbLog2SizeY
PicWidthInMinCbsY=pic_width_in_luma_samples/MinCbSizeY
PicWidthInCtbsY=Ceil(pic_width_in_luma_samples÷CtbSizeY)
PicHeightInMinCbsY=pic_height_in_luma_samples/MinCbSizeY
PicHeightInCtbsY=Ceil(pic_height_in_luma_samples÷CtbSizeY)
PicSizeInMinCbsY=PicWidthInMinCbsY*PicHeightInMinCbsY
PicSizeInCtbsY=PicWidthInCtbsY*PicHeightInCtbsY
PicSizeInSamplesY=pic_width_in_luma_samples*pic_height_in_luma_samples
PicWidthInSamplesC=pic_width_in_luma_samples/SubWidthC
PicHeightInSamplesC=pic_height_in_luma_samples/SubHeightC
分别指定每个色度CTB的阵列的宽度和高度的变量CtbWidthC和CtbHeightC如下导出:
如果chroma_format_idc等于0(单色)或separate_colour_plane_flag等于1,则CtbWidthC和CtbHeightC都等于0;
否则,CtbWidthC和CtbHeightC如下导出:
CtbWidthC=CtbSizeY/SubWidthC
CtbHeightC=CtbSizeY/SubHeightC
1.3.JEM中具有较大CTU的四叉树加二叉树块结构的示例
在一些实施例中,使用称为联合探索模型(JEM)的参考软件(参考文献[4])来探索未来的视频编解码技术(参考文献[3])。除二叉树结构外,JEM还描述了四叉树加二叉树(QTBT)和三叉树(TT)结构。
1.3.1.QTBT块划分结构的示例
与HEVC(参考文献[5])相反,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。
为QTBT划分方案定义以下参数:
--CTU大小:四叉树的根节点大小,与HEVC中相同的概念
--MinQTSize:最小允许的四叉树叶节点大小
--MaxBTSize:最大允许的二叉树根节点大小
--MaxBTDepth:最大允许的二叉树深度
--MinBTSize:最小允许的二叉树叶节点大小
在QTBT划分结构的一个示例中,CTU大小被设置为具有两个对应的64×64色度样本块的128×128亮度样本,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亮度样本。
图7A示出了通过使用QTBT进行块划分的示例,并且图7B示出了对应的树表示。实线表示四叉树划分并且虚线表示二叉树划分。在二叉树的每个划分(即,非叶)节点中,一个标志被信令通知以指示使用哪种划分类型(即,水平或垂直),其中0表示水平划分并且1表示垂直划分。对于四叉树分割,不需要指示划分类型,原因是四叉树划分总是水平地和垂直地划分块以产生具有相同大小的4个子块。
另外,QTBT方案支持亮度和色度具有单独的QTBT结构的能力。目前,对于P和B条带,一个CTU中的亮度和色度CTB共用相同的QTBT结构。然而,对于I条带,亮度CTB通过QTBT结构划分为CU,并且色度CTB通过另一QTBT结构划分为色度CU。这意味着I条带中的CU由亮度分量的编解码块或两个色度分量的编解码块组成,并且P或B条带中的CU由所有三个颜色分量的编解码块组成。
在HEVC中,限制小块的帧间预测以减少运动补偿的存储器访问,使得4×8和8×4块不支持双预测,并且4×4块不支持帧间预测。在JEM的QTBT中,这些限制被去除。
1.4.用于多功能视频编解码(VVC)的三叉树(TT)
图8A示出了四叉树(QT)划分的示例,并且图8B和8C分别示出了垂直和水平二叉树(BT)划分的示例。在一些实施例中,除了四叉树和二叉树之外,还支持三叉树(TT)分割,例如水平和垂直中心侧三叉树(如图8D和8E中所示)。
在一些实现方式中,支持两级树:区域树(四叉树)和预测树(二叉树或三叉树)。首先通过区域树(RT)划分CTU。可以使用预测树(PT)进一步划分RT叶。还可以用PT进一步划分PT叶片直到达到最大PT深度。PT叶是基本编解码单元。为方便起见,它仍被称为CU。CU无法进一步划分。预测和变换都以与JEM相同的方式应用于CU。整个分割结构称为“多类型树”。
1.5.替代视频编解码技术中的划分结构的示例
在一些实施例中,支持称为多树类型(MTT)的树结构,其是QTBT的一般化。在QTBT中,如图9中所示,首先由四叉树结构划分编解码树单元(CTU)。四叉树叶节点进一步由二叉树结构划分。
MTT的结构由两种类型的树节点构成:区域树(RT)和预测树(PT),支持九种类型的分割,如图10A到图10I中所示。区域树可以递归地将CTU划分成方块,直到4×4大小的区域树叶节点。在区域树中的每个节点处,可以从三种树类型之一形成预测树:二叉树,三叉树和非对称二叉树。在PT划分中,禁止在预测树的分支中具有四叉树分割。与JEM中一样,亮度树和色度树在I条带中分离。
通常,除了上下文推导之外,RT信令与JEM中的QT信令相同。对于PT信令,需要多达4个附加箱(bin),如图11中所示。第一箱指示PT是否进一步划分。该箱的上下文基于以下观察来计算:进一步划分的可能性与当前块与其邻域的相对大小高度相关。如果进一步划分PT,则第二箱指示它是水平划分还是垂直划分。在一些实施例中,中心侧三叉树和不对称二叉树(ABT)的存在增加了“高”或“宽”块的出现。第三箱指示分割的树类型,即它是二叉树/三叉树还是非对称二叉树。在二叉树/三叉树的情况下,第四箱指示树的类型。在非对称二叉树的情况下,第四箱指示水平划分树的上或下类型和垂直划分的右或左类型。
1.5.1.图片边界处的限制的示例
在一些实施例中,如果CTB/LCU大小由M×N(通常M等于N,如HEVC/JEM中所定义)指示,对于位于图片(或片或条带或其他类型)边界处的CTB,K×L样本在图片边界内。
图片底部和右边界上的CU划分规则可以应用于编解码树配置QTBT+TT,QTBT+ABT或QTBT+TT+ABT中的任何一个。它们包括以下两个方面:
(1)如果给定编解码树节点(CU)的一部分部分地位于图片外部,则沿着相关边界方向(沿着底部边界的水平划分方向,如图12A中所示,沿着右边界的垂直划分方向,如图12B中所示)总是允许CU的二元对称划分。如果当前CU的右下角在帧外(如图12C中所示),则仅允许CU的四叉树划分。此外,如果当前二叉树深度大于最大二叉树深度并且当前CU在帧边界上,则启用二元划分以确保到达帧边界。
(2)关于三叉树划分处理,在所得到的子CU之间的第一或第二边界恰好位于图片的边界上的情况下,允许三叉树划分。如果划分线(由划分产生的两个子CU之间的边界)与图片边界完全匹配,则允许非对称二叉树划分。
2.现有实现方式的示例
现有实现方式允许在JEM、VTM或BMS中采用灵活的块划分途径,这带来显著的编解码增益,但遭受若干复杂问题不利影响。在一个示例中,最小亮度块尺寸可以是4×4。当双向预测应用于4×4块上时,要求的带宽是巨大的。
在另一示例中,在4:2:0格式的情况下,最小色度块尺寸是2×2。除与亮度分量相似的带宽问题之外,还引入了对硬件设计不友好的另外两个问题:
(i)2×N或N×2变换和逆变换,以及
(ii)2×N或N×2帧内预测。
3.使用基于本公开技术的块尺寸限制的示例性方法
本公开技术的实施例克服现有实现方式的缺陷,由此提供具有更高效率的视频编解码。具体地,使用亮度和/或色度分量的块尺寸来确定如何进行视频编解码,例如,选择什么预测模式或是否划分视频数据的块(以及亮度和色度分量)。
以下对各种实现方式描述的示例中阐述了使用块尺寸限制来改善视频编解码效率并增强现有的和未来的视频编解码标准。以下提供的本公开技术的示例解释总体概念,并且不意图被理解为限制。在示例中,除非明确地相反指示,这些示例中描述的各种特征可以组合。在另一示例中,这些示例中描述的各种特征可以应用于采用块尺寸的图片边界编解码的方法,所述方法向后兼容并将划分树用于可视媒体编解码。
示例1.假定当前亮度编解码块尺寸是M×N,如果满足以下情况中的一种或多种,则对于亮度分量不允许双向预测。
(a)M<=TX且N<=TY,在一个示例中,TX=TY=4;
(b)M<=TX或N<=TY,在一个示例中,TX=TY=4。
(c)当前编解码块应用基于子块的预测,诸如仿射预测或ATMVP。
示例2.假定当前色度编解码块尺寸是M×N,如果满足以下情况中的一种或多种,则对于色度分量不允许双向预测。
(a)M<=TX且N<=TY,在一个示例中,TX=TY=2;
(b)M<=TX或N<=TY,在一个示例中,TX=TY=2。
(c)当前编解码块应用基于子块的预测,诸如仿射预测或ATMVP。
示例3.在相同块中,是否允许双向预测对于亮度分量和色度分量可以是不同的。
示例4.如果对于编解码块不允许双向预测,则表示双向预测的标志或码字被省略并推断为0。
示例5.假定当前亮度编解码块尺寸是M×N,如果满足以下情况中的一种或多种,则划分操作(诸如QT、BT或TT)仅应用在亮度分量上,而不应用在色度分量上,所述情况包含:
(a)M<=TX且N<=TY,在一个示例中,TX=TY=8;
(b)M<=TX或N<=TY,在一个示例中,TX=TY=8。
示例6.如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则编码顺序、解码顺序或信令顺序可以设计为
(a)用于亮度的SubB[0]、用于亮度的SubB[1]、…用于亮度的SubB[X-1]、用于Cb分量的B、用于Cr分量的B,如图13中所示。
(b)替代地,用于亮度的SubB[0],用于亮度的SubB[1]、…用于亮度的SubB[X-1],用于Cr分量的B,用于Cb分量的B;
(c)替代地,用于亮度的SubB[0]、用于Cb分量的B、用于Cr分量的B、用于亮度的SubB[1]、...用于亮度的SubB[X-1];
(d)替代地,用于亮度的SubB[0]、用于Cr分量的B、用于Cb分量的B、用于亮度的SubB[1]、...用于亮度的SubB[X-1];
(e)替代地,用于Cb分量的B、用于Cr分量的B、用于亮度的SubB[0]、用于亮度的SubB[1]、...用于亮度的SubB[X-1];
(f)替代地,用于Cr分量的B、用于Cb分量的B、用于亮度的SubB[0]、亮度的SubB[1]、...用于亮度的SubB[X-1];
(g)SubB[0]、SubB[1]、…SubB[X-1]可以对于亮度分量进一步被划分。
示例7.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则在块B的全部子块的亮度分量已经被重建之后重建块B的色度分量。
示例8.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则可以从亮度分量的子CU的预测模式导出块B的色度分量的预测模式(帧内编解码的或帧间编解码的)。
(a)在一个示例中,将色度分量的预测模式(例如,帧内或帧间或其他模式;帧内预测方向,等)导出为一个子CU(诸如subCU[0],其为编码/解码顺序中的第一子CU)的亮度分量的预测模式,。
(b)在一个示例中,将色度分量的预测模式导出为亮度分量在亮度块中的预定位置(诸如B的上左位置(TL)、B的上右位置(TR)、B的下左位置(BL)、B的下右位置(BR),以及B的中心位置(C))处的样本的预测模式。
(c)在一个示例中,如果B之内的至少一个位置属于亮度分量的帧间编解码的CU,则将色度分量的预测模式导出为帧间编解码的。
(d)在一个示例中,如果B之内的至少一个位置属于亮度分量的帧内编解码的CU,则将色度分量的预测模式导出为帧内编解码的。
(e)在一个示例中,如果B之内属于帧内编解码CU的区域大于属于亮度分量的帧间编解码的CU的区域,则将色度分量的预测模式导出为帧内编解码的,否则,将其导出为帧间编解码的。
示例9.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则块B的色度分量的预测模式可以与亮度分量分开地编解码。
(a)在一个示例中,色度分量的预测模式的编解码取决于亮度分量的预测模式的编解码。
(i)在一个示例中,将从亮度分量导出的预测模式视为色度分量的预测模式的预测。
(ii)替代地,将从亮度分量导出的预测模式视为色度分量的预测模式的编解码上下文。
示例10.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则可以从亮度分量的子CU的运动矢量(MV)导出块B的色度分量的MV。
(a)在一个示例中,将色度分量的MV导出作为一个子CU(诸如subCU[0])的亮度分量的MV。
(b)在一个示例中,将色度分量的MV导出为预定位置(诸如B的上左位置(TL)、B的上右位置(TR)、B的下左位置(BL)、B的下右位置(BR),以及B的中心位置(C))处的亮度分量的MV。
(c)在一个示例中,将色度分量的MV导出为亮度分量在检查顺序中的一系列预定位置处首先找到的MV。例如,检查顺序中的系列的预定位置为{C、TL、TR、BL、BR},则C、TL、TR、BL和BR被逐个检查,选择属于帧间编解码的CU的第一个,并且相关联的MV被选作色度分量的MV。
(d)在一个示例中,如果从子CU S导出色度分量的预测模式,则将色度分量的MV导出为亮度分量的子CU S的MV。
(e)在一个示例中,如果从位置P导出色度分量的预测模式,则将色度分量的MV导出为亮度分量的位置P的MV。
(f)在一个示例中,将色度分量的MV导出为来自若干子CU或在若干位置的亮度分量的MV的函数。示例性函数为average()、minimum()、maximum(),或median()。
(g)在色度分量的运动补偿之前,可以将从亮度分量的MV导出的色度分量的MV缩放。例如,MV_chroma_x=MV_luma_x>>scaleX,MV_chroma_y=MV_luma_y>>scaleY,其中对于4:2:0格式,scaleX=scaleY=1。
示例11.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则可以从亮度分量的子CU的E导出块B的色度分量的运动信息语法元素E(诸如跳过标志、Merge标志、Merge索引、帧间方向(L0、L1或Bi)、参考索引、mv差异(mvd)、mv候选索引、仿射标志、ic标志、imv标志等)。
(a)在一个示例中,将色度分量的E导出作为一个子CU(诸如subCU[0])的亮度分量的E。
(b)在一个示例中,将色度分量的E导出作为预定位置(诸如B的上左位置(TL)、B的上右位置(TR)、B的下左位置(BL)、B的下右位置(BR),以及B的中心位置(C))处的亮度分量的E。
(c)在一个示例中,将色度分量的E导出为亮度分量在检查顺序中的一系列预定位置处首先找到的E。例如,检查顺序中的系列的预定位置为{C、TL、TR、BL、BR},则C、TL、TR、BL和BR被逐个检查,选择属于帧间编解码的CU的第一个,并且相关联的E被选作色度分量的E。
(d)在一个示例中,如果从子CU S导出色度分量的预测模式,则将色度分量的E导出为亮度分量的子CU S的E。
(e)在一个示例中,如果从位置P导出色度分量的预测模式,则将色度分量的E导出为亮度分量的位置P的E。
(f)在一个示例中,将色度分量的E导出为来自若干子CU或在若干位置的亮度分量的E的函数。示例性函数为算子“and”、算子“or”、average()、minimum()、maximum(),或median()。
示例12.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则块B的色度分量的MV可以与亮度分量分开地编解码。
(a)在一个示例中,色度分量的运动信息语法元素E(诸如跳过标志、Merge标志、Merge索引、帧间方向(L0、L1或Bi)、参考索引、mv差异(mvd)、mv候选索引、仿射标志、ic标志、imv标志等)的编解码取决于亮度分量的E。
(i)在一个示例中,将从亮度分量导出的E视为色度分量的E的预测。
(ii)替代地,将从亮度分量导出的E视为编解码色度分量的E的编解码上下文。
示例13.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则可以从亮度分量的子CU的帧内预测模式导出块B的色度分量的帧内预测模式(IPM)(诸如直流(DC)、平面(planar)、垂直等)。
(a)在一个示例中,将色度分量的IPM导出为一个子CU(诸如subCU[0])的亮度分量的IPM。
(b)在一个示例中,将色度分量的IPM导出为预定位置(诸如B的上左位置(TL)、B的上右位置(TR)、B的下左位置(BL)、B的下右位置(BR),以及B的中心位置(C))处的亮度分量的IPM。
(c)在一个示例中,将色度分量的IPM导出作为亮度分量在检查顺序中的一系列预定位置处的首先找到的IPM。例如,检查顺序中的系列的预定位置为{C、TL、TR、BL、BR},则C、TL、TR、BL和BR被逐个检查,选择属于帧内编解码的CU的第一个,并且相关联的IPM被选作色度分量的IPM。
(d)在一个示例中,如果从子CU S导出色度分量的预测模式,则将色度分量的IPM导出作为亮度分量的子CU S的IPM。
(e)在一个示例中,如果从位置P导出色度分量的预测模式,则将色度分量的IPM导出作为亮度分量的位置P的IPM。
(f)在一个示例中,将色度分量的IPM导出为来自若干子CU或在若干位置的亮度分量的IPM的函数。示例性函数为average()、minimum()、maximum(),或median()。
(i)替代地,如果来自若干子CU或在若干位置处的亮度分量的至少一个IPM是平面(Planar),则将色度分量的IPM导出为平面(Planar);
(ii)替代地,如果来自若干子CU或在若干位置处的亮度分量的至少一个IPM是DC,则将色度分量的IPM导出为DC;
示例14.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则块B的色度分量的IPM可以与亮度分量分开地编解码。
(a)在一个示例中,色度分量的IPM的编解码取决于亮度分量的编解码块标志(cbf)。
(i)在一个示例中,将从亮度分量导出的IPM视为色度分量的IPM的预测。在其他示例中,从亮度分量导出的一个或多个IPM被视为色度分量的一个或多个DM模式。
(ii)替代地,将从亮度分量导出的IPM视为要编解码色度分量的IPM的编解码上下文。
示例15.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则可以从亮度分量的子CU的cbf导出块B的色度分量的编解码块标志(cbf)(如果没有残差被编解码,则cbf为0)。
(a)在一个示例中,将色度分量的cbf导出为亮度分量一个子CU(诸如subCU[0],其为编码/解码顺序中的第一子CU)的cbf。
(b)在一个示例中,将色度分量的cbf导出为亮度分量在亮度块中的预定位置(诸如B的上左位置(TL)、B的上右位置(TR)、B的下左位置(BL)、B的下右位置(BR),以及B的中心位置(C))处的样本的cbf。
(c)在一个示例中,将色度分量的cbf导出为在检查顺序中的一系列预定位置处首先找到的亮度分量的非零cbf。例如,检查顺序中的系列的预定位置为{C、TL、TR、BL、BR},则C、TL、TR、BL和BR被逐个检查,选择不等于零的第一个,并且相关联的cbf被选作色度分量的cbf。
(d)在一个示例中,将色度分量的cbf导出为在检查顺序中的一系列预定位置处首先找到的亮度分量的零cbf。例如,检查顺序中的系列的预定位置为{C、TL、TR、BL、BR},则C、TL、TR、BL和BR被逐个检查,选择等于零的第一个,并且相关联的cbf被选作色度分量的cbf。
(e)在一个示例中,如果从子CU S导出色度分量的预测模式,则将色度分量的IPM导出为亮度分量的子CU S的IPM。
(f)在一个示例中,如果从位置P导出色度分量的预测模式,则将色度分量的IPM导出为亮度分量的位置P的IPM。
(g)在一个示例中,将色度分量的cbf导出为来自若干子CU或在若干位置的亮度分量的cbf的函数。示例性函数为算子“and”、算子“or”、minimum(),以及maximum()。
(h)在一个示例中,如果由帧内模式编解码色度分量,则仅考虑来自由帧内模式编解码的亮度分量的子CU或位置的cbf。
(i)在一个示例中,如果由帧间模式编解码色度分量,则仅考虑来自由帧间模式编解码亮度分量的子CU或位置的cbf。
示例16.在一个实施例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则块B的色度分量的cbf可以与亮度分量分开地编解码。
(a)在一个示例中,色度分量的cbf的编解码取决于亮度分量的cbf。
(i)在一个示例中,将从亮度分量导出的cbf视为色度分量的cbf的预测。
(ii)替代地,将从亮度分量导出的cbf视为要编解码色度分量的cbf的编解码上下文。
示例17.对于亮度和色度分量应不同地进行环内滤波。在一个示例中,如果块B被信令通知为要划分为X个子CU(例如,对于QT,X=4;对于TT,X=3;并且对于BT,X=2),但推断块B中的色度分量无法被划分,则在CU在块B之内的边界处对亮度分量进行环内滤波,但不对色度分量进行环内滤波。
示例18.是否以及如何应用限制可以被预定,或它们可以被从编码器传输到解码器。例如,它们可以被在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、条带报头、编解码树单元(CTU)或编解码单元(CU)中信令通知。
示例19.可以对小至2×2的块(其可以称为“微块”(tiny block))应用一些约束。
(a)微块可以定义为2×2块或2×N块或N×2块,或同时包括2×N块和N×2块。在一些实施例中,色度块可以是微块,但其对应的亮度块可以不是微块;在此情况下,色度块及其对应的亮度块可以以不同方式处理。
(b)在一个实施例中,对微块以与普通块(不是微块)不同的方式进行帧内预测。
(i)在一个示例中,在进行帧内预测之前,不对微块的相邻样本应用滤波。
(ii)在一个示例中,在进行帧内预测之后,不对微块的预测样本应用滤波。
(iii)在一个示例中,一些帧内预测模式对微块是无效的,诸如线性模型(LM)模式(其中色度块预测基于使用线性模型的(多个)重建的亮度块)。
(iv)在一个示例中,微块的帧内预测模式不被信令通知但被推断为预定的帧内预测模式。微块总是使用一个预定的帧内预测模式,诸如直流(DC)、平面、垂直或水平模式。
(v)替代地,微块总是使用一个预定的帧内预测模式,诸如DC、平面(Planar)、垂直或水平模式。
(1)在规范的比特流(conformable bitstream)中信令通知的微块的帧内预测模式必须是预定的帧内预测模式。
(2)在规范的比特流中信令通知的微块的帧内预测模式是解析的,但在解码处理中被忽略。
(3)替代地,预定的帧内预测模式可以是简化DC模式。例如,全部预测样本等于(1<<位深度(bitDepth))/2(对于8比特的视频序列为128,对于10比特的视频序列为512)。
(vi)替代地,微块可以使用全部帧内预测模式的子集。微块选择子集中的模式之一。编码器可以将模式信令通知到解码器,或解码器可以对其进行推断。
(1)在一个示例中,子集可以对一个条带/片/CTU行/一组CTU内的全部块是固定的相同。
(2)替代地,子集可以适应性地改变。例如,子集可以取决于块尺寸或块形状。
(3)在一个示例中,子集包含DC和LM模式。
(4)在一个示例中,子集包含水平和垂直模式。
(a)在一个示例中,帧内预测模式取决于块的维度。例如,如果块宽度大于或等于块高度,则使用垂直模式;否则,使用水平模式。
(5)在一个示例中,子集包含LM模式、水平和垂直模式。
(a)在一个示例中,编码器信令通知是否应用LM模式。当不应用LM模式时,如果块宽度大于或等于块高度,则使用垂直模式;否则,使用水平模式。
(c)在一个实施例中,以与普通块(不是微块)不同的方式在微块中进行变换和反变换。
(i)在一个示例中,在微块中可以不应用变换和/或反变换。
(ii)在一个示例中,是否以及如何进行变换/反变换可以取决于块维度。
(1)例如,不在具有尺寸2×2的微块中应用行变换/反变换(变换/反变换之前和之后的样本在行中)和列变换/反变换(变换/反变换之前和之后的样本在列中)两者;
(2)例如,对具有尺寸W×2的微块应用行变换/反变换但不应用列变换/反变换,其中W是微块的宽度;
(3)例如,对具有尺寸2×H的微块不进行行变换/反变换但进行列变换/反变换,其中H是微块的高度;
(iii)在一个示例中,在微块中应用变换跳过(skip)模式。
(iv)在一个示例中,微块的变换跳过标志不被信令通知但被推断为1。微块总是使用变换跳过模式。
(v)替代地,微块总是使用变换跳过模式。
(1)在规范的比特流中信令通知的微块的变换跳过标志必须是1。
(2)在规范的比特流中信令通知的微块的变换跳过标志是解析的,但在解码处理中被忽略。
(vi)替代地,如何信令通知和/或如何推断变换跳过标志可以取决于块的维度。假定当前块的宽度和高度分别被表示为W和H。
(1)在一个示例中:
(a)如果W==2或H==2(或相等地W<=2或H<=2),则变换跳过标志不被信令通知且被推断为1。
(b)否则,如果W×H<=(1<<(transformSkipLog2MaxSize<<1)),其中transformSkipLog2MaxSize在SPS中被从编码器信令通知到解码器,则变换跳过标志被信令通知。
(c)否则((a)和(b)都不满足),变换跳过标志不被信令通知且被推断为0。
(2)在另一示例中:
(a)如果W==2或H==2(或相等地W<=2或H<=2),则变换跳过标志被信令通知。
(b)否则,如果W×H<=(1<<(transformSkipLog2MaxSize<<1)),其中transformSkipLog2MaxSize在SPS被从编码器信令通知到解码器,则变换跳过标志被信令通知。
(c)否则((a)和(b)都不满足),变换跳过标志不被信令通知且被推断为0。在一个示例中,微块中的残差(Residue)总是等于0。
(3)在又一示例中:
(a)如果W<=(1<<(transformSkipLog2MaxSize<<1))或H<=(1<<(transformSkipLog2MaxSize<<1)),其中transformSkipLog2MaxSize在SPS被从编码器信令通知到解码器,则变换跳过标志被信令通知。
(b)否则,变换跳过标志不被信令通知且被推断为0。在一个示例中,微块中的残差总是等于0。
(4)在又一示例中:
(a)如果W<=(1<<(transformSkipLog2MaxSize<<1))且H<=(1<<(transformSkipLog2MaxSize<<1)),其中transformSkipLog2MaxSize在SPS中被从编码器信令通知到解码器,则变换跳过标志被信令通知。
(b)否则,变换跳过标志不被信令通知且被推断为0。
(d)在一个示例中,微块中的残差总是等于0。
(i)在一个示例中,微块的编解码块标志(cbf)不被信令通知但被推断为0。微块总是不具有残差。
(ii)替代地,微块总是不具有残差。
(1)在规范的比特流中信令通知的微块的cbf是0。
(2)在规范的比特流中信令通知的微块的cbf是解析的,但在解码处理中被忽略。
(e)在一个实施例中,如果微块中的残差不全是0,则仅残差的直流(DC)值被信令通知。
(i)对于微块中的每个样本,S(x,y)=P(x,y)+D,其中S(x,y)表示位置(x,y)处的重建,P(x,y)表示位置(x,y)处的预测值,D是对于微块信令通知的残差的直流值。D对于微块中的全部样本相同。
(ii)在一个示例中,D在编码器处被信令通知之前被量化,并且在解码器处构建重建之前被反量化。
(1)例如,变换之后的量化步骤由与普通量化相同的量化参数(QP)决定。
(f)在一个实施例中,微块中的运动补偿以与普通块(不是微块)不同的方式进行。
(i)不对微块进行插值。微块的MV(运动矢量)被四舍五入到接近的(或相邻的)整数像素。
(ii)双线性插值用于微块。
(iii)微块无法使用双向预测。如果色度块是微块,但其对应的亮度块不是微块且其应用双向预测,则色度块仅使用一个MV。此MV可以从L0或从L1获取。
(iv)重叠块运动补偿(OBMC)无法用于微块。
上述示例可以整合在以下描述的方法的上下文中,例如,方法1400,其可以在视频解码器和/或视频编码器处实现。
图14示出了视频编解码的示例性方法的流程图,其可以在视频编码器中实现。在步骤1410,方法1400包括接收包括亮度分量和色度分量的视频数据的块的比特流表示。
在步骤1420,方法1400包括使用第一预测模式处理比特流表示,以生成视频数据的块,其中第一预测模式基于亮度分量或色度分量的性质。在一些实施例中,性质包含亮度分量或色度分量的维度。
在一些实施例中,第一预测模式不是双向预测模式,并且亮度分量的第一预测模式与色度分量的第二预测模式不同。在其他实施例中,第一预测模式不是双向预测模式,并且亮度分量的第一预测模式与色度分量的第二预测模式相同。
方法1400还可以包括对亮度分量或色度分量进行划分操作。在一些实施例中,亮度分量的尺寸是M×N,其中M≤TX和/或N≤TY,且TX和TY为整数阈值,并且其中对亮度分量进行划分操作而不对色度分量进行划分操作。
方法1400还可以包括:基于性质,对视频数据的块进行划分操作,以生成子块。在一些实施例中,色度分量无法被划分,并且对亮度分量进行划分操作,以对子块中的每一个生成亮度分量。
在示例中,在已经重建子块的亮度分量之后,重建色度分量。
在另一示例中,从子块的亮度分量的相同特性导出色度分量的特性。换而言之,来自亮度子块中的一个的特性可以被拷贝在色度块之上。该特性可以是但不限于预测模式、运动矢量、运动信息语法元素、帧内预测模式(IPM),或编解码块标志。在一些实施例中,运动信息语法元素可以是跳过标志、Merge标志、Merge索引、帧间方向、参考索引、运动矢量候选索引、仿射标志、照明补偿标志或整数运动矢量标志。
在一些实施例中,将性质或性质的指示,或更普遍地,是否进行上述示例中阐述的操作中的一个的决定在视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、条带报头、编解码树单元(CTU)或编解码单元(CU)中信令通知。
4.本公开技术的示例性实现方式
图15是视频处理装置1500的框图。装置1500可以用来实现本文所描述的方法中的一种或多种。装置1500可以实施为智能电话、平板、计算机、物联网(IoT)接收器等等。装置1500可以包括一个或多个处理器1502、一个或多个存储器1504,以及视频处理硬件1506。(多个)处理器1502可以配置为实现本文档所描述的一个或多个方法(包括但不限于方法1400)。存储器(多个存储器)1504可以用来储存用于实现本文所描述的方法和技术的数据和代码。在硬件电路中,视频处理硬件1506可以用来实现,本文档所描述的一些技术。
在一些实施例中,视频解码器装置可以实现如本文所描述的使用零单元的用于视频解码的方法。方法的各种特征可以相似于以上描述的方法1400。
在一些实施例中,可以使用在关于图15描述的硬件平台上实现的解码装置来实现视频解码方法。
图16示出了视频处理的示例性方法的流程图,其可以在视频编码器/解码器中实现。在步骤1610,方法1600包括接收包括视频块的视频数据的比特流表示,其中视频块包括第一分量和第二分量中的样本。
在步骤1620,方法1600包括:在第二分量的视频块被划分为子块的情况下,从第二分量的子块的第二编解码信息导出第一分量的第一编解码信息。
在步骤1630,方法1600包括:基于第一编解码信息,进行视频块与视频块的比特流表示之间的转换。
图17示出了视频编解码的示例性方法的流程图,其可以在视频解码侧实现。
如图17所示,方法1700包含,在步骤1710,接收包含视频块的视频数据的比特流表示,其中视频块包括第一分量中的样本,第一分量中的样本具有M×N的维度。
方法1700还包含,在步骤1720,基于满足具体条件中的一个或多个,确定用于解码块的第一分量的第一预测模式不是双向预测模式。
方法1700还包含,在步骤1730,通过使用第一预测模式解码第一分量。
图18根据本公开技术的视频解码的另一示例性方法的流程图。
如图18所示,方法1800包含,在步骤1810,接收包含视频块的视频数据的比特流表示,其中视频块包括第一分量中的样本和第二分量中的样本。
方法1800包含,在步骤1820,确定用于解码所述块的第一分量的第一预测模式,并且确定用于解码所述块的第二分量的第二预测模式。
方法1800包含,在步骤1830,通过分别使用所述第一预测模式和所述第二预测模式解码所述第一分量和第二分量。
图19示出了示出了根据本公开技术的视频解码的另一示例性方法的流程图。
如图19所示,方法1900包含,在步骤1910,接收包含块的数据的比特流表示,其中所述块包括与第一分量和第二分量相关联的样本,其中与所述块的第一分量相关联的样本具有M×N的维度。
方法1900包含,在步骤1920,解码所述块的第一分量和第二分量;其中解码所述块的第一分量包括,基于所述维度,解码所述块的第一分量的多个子块,并且通过仅在与所述块的第一分量相关联的样本上进行划分操作而不在与所述块的第二分量相关联的样本上进行划分操作以生成所述多个所述子块。
图20示出了根据本公开技术的用于视频解码的另一示例性方法的流程图。
如图20所示,方法2000包含,在步骤2010,确定块是微块,其中该块的高度和宽度至少之一具有2个样本。例如,所述确定包含:接收包括第一分量和第二分量的视频数据的块的比特流表示,以及,如果块的第一分量具有2×2、2×N或N×2的维度,则指定块的第一分量为微块,并且指定具有与第一分量不同的维度的块的第二分量为普通块。
方法2000包含,在步骤2020,基于所述确定以与普通块不同的方式进行块与块的编解码表示之间的转换。
本文档公开的各种实施例和技术可以在以下列举的示例中描述。
1.一种用于视频比特流处理的方法,包括:
确定块是微块,其中所述块的高度和宽度中至少之一具有2个样本,
基于所述确定,以与所述普通块不同的方式进行所述块与所述块的编解码表示之间的转换。
2.如示例1所述的方法,其中所述块包括色度分量和/或亮度分量。
3.如示例1所述的方法,其中以不同方式进行被定义为所述微块的色度块的转换及其对应的被定义为所述普通块的亮度分量的转换。
4.如示例1或2所述的方法,其中所述转换包括以与所述普通块不同的方式对所述微块进行帧内预测。
5.如示例4所述的方法,其中在进行所述帧内预测之前,不对所述微块的相邻样本应用滤波。
6.如示例4所述的方法,其中在进行所述帧内预测之后,不对所述微块的预测样本应用滤波。
7.如示例4所述的方法,其中所述帧内预测的至少一种模式是对所述微块无效的,并且所述帧内预测的至少一种模式包括线性模型(LM)模式。
8.如示例4所述的方法,其中所述微块的帧内预测在不信令通知的情况下被推断为预定的预测模式。
9.如示例4所述的方法,其中所述微块的帧内预测是预定的预测模式。
10.如示例9所述的方法,其中所述微块的预定的预测模式被在规范的比特流中信令通知。
11.如示例10所述的方法,其中在所述规范的比特流中信令通知的所述微块的预定的预测模式是解析的,并且在所述解码处理中被忽略。
12.如示例8或9所述的方法,其中所述微块的预定的预测模式是简化直流(DC)预测模式,并且所述微块的全部预测样本等于(1<<位深度)/2。
13.如示例8或9所述的方法,所述预定的预测模式是直流(DC)模式、平面模式、垂直模式、水平模式或线性模型(LM)模式之一。
14.如示例4所述的方法,其中可以对所述微块应用所述帧内预测的全部模式的子集,并且选自所述子集的用于应用于所述微块的帧内预测模式被信令通知或推断。
15.如示例14所述的方法,其中所述子集固定为对于一个条带、片、编解码树单元(CTU)行或一组编解码树单元内的全部块相同。
16.如示例14所述的方法,其中所述子集基于所述微块的尺寸或形状而适应性地改变。
17.如示例14至16中任一项所述的方法,其中所述子集包括直流模式和线性模型模式。
18.如示例14至16中任一项所述的方法,其中所述子集包括水平模式和垂直模式。
19.如示例18所述的方法,其中要从所述子集选择的所述帧内预测模式取决于所述微块的维度。
20.如示例19所述的方法,其中如果所述微块的宽度大于或等于所述微块的高度,则选择所述垂直模式用于应用于所述微块;否则,选择所述水平模式用于应用于所述微块。
21.如示例14至16中任一项所述的方法,其中所述子集包括线性模型模式、水平模式以及垂直模式。
22.如示例21所述的方法,其中将是否应用所述线性模型模式信令通知;并且当不应用所述线性模型模式时,如果所述微块的宽度大于或等于所述微块的高度,则将所述垂直模式应用于所述微块,否则,将所述水平模式应用于所述微块。
23.如示例1所述的方法,其中不对所述微块应用变换和反变换。
24.如示例1所述的方法,其中是否以及如何对所述微块应用所述变换和/或反变换取决于所述微块的维度。
25.如示例24所述的方法,其中如果所述微块的尺寸是2×2,则不对所述微块应用行变换、行反变换、列变换和列反变换。
26.如示例24所述的方法,其中如果所述微块的尺寸是W×2,则对所述微块应用行变换和行反变换,但不应用列变换和列反变换,其中W表示所述微块的宽度且不等于2。
27.如示例24所述的方法,其中如果所述微块的尺寸是2×H,则对所述微块应用列变换和列反变换,但不应用行变换和行反变换,其中H表示所述微块的高度且不等于2。
28.如示例1所述的方法,其中对所述微块应用变换跳过模式。
29.如示例28所述的方法,其中在不信令通知的情况下,所述微块的变换跳过标志被推断为1。
30.如示例28所述的方法,其中所述微块的变换跳过标志被在规范的比特流中信令通知且等于1。
31.如示例30所述的方法,其中在所述规范的比特流中信令通知的所述微块的变换跳过标志是解析的,并且在所述解码处理中被忽略。
32.如示例28所述的方法,其中如何信令通知或如何推断所述变换跳过标志取决于所述微块的维度,并且所述微块的尺寸是W×H,W和H分别表示所述微块的宽度和高度。
33.如示例32所述的方法,其中
如果W<=2或H<=2,则所述变换跳过标志不被信令通知并被推断为1;并且
如果W×H<=(1<<(transformSkipLog2MaxSize<<1)),则所述变换跳过标志被信令通知,所述transformSkipLog2MaxSize被在序列参数集(SPS)中信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
34.如示例32所述的方法,其中
如果W<=2或H<=2,所述变换跳过标志被信令通知;并且
如果W×H<=(1<<(transformSkipLog2MaxSize<<1)),则所述变换跳过标志被信令通知,transformSkipLog2MaxSize被在序列参数集(SPS)中信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
35.如示例32所述的方法,其中
如果W<=(1<<(transformSkipLog2MaxSize<<1))和/或H<=(1<<(transformSkipLog2MaxSize<<1)),则所述变换跳过标志被信令通知,transformSkipLog2MaxSize被在序列参数集(SPS)中信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
36.如示例1所述的方法,其中所述微块中的残差等于0。
37.如示例36所述的方法,其中所述微块的编解码块标志(cbf)不被信令通知并被推断为0;或者
所述微块的编解码块标志被在规范的比特流中信令通知并等于0。
38.如示例36所述的方法,其中所述规范的比特流中信令通知的所述微块的编解码块标志(cbf)是解析的,并且在所述解码处理中被忽略。
39.如示例1所述的方法,其中如果所述微块中的残差不全部为0,则仅所述微块的残差的直流值被信令通知。
40.如示例39所述的方法,其中对于所述微块中的每个样本,S(x,y)=P(x,y)+D,其中S(x,y)表示位置(x,y)处的重建值,P(x,y)表示位置(x,y)处的预测值,D表示对于所述微块被信令通知的所述残差的直流值,并且D对于所述微块中的全部样本相同。
41.如示例40所述的方法,其中D在编码侧信令通知之前被量化,并且在解码侧构建所述重建值之前被反量化。
42.如示例41所述的方法,其中变换之后的量化步骤由与普通量化相同的量化参数(QP)决定。
43.如示例1所述的方法,其中所述转换还包括运动补偿。
44.如示例43所述的方法,其中对所述微块不应用插值,并且所述微块的运动矢量(MV)被四舍五入到接近的整数像素。
45.如示例43所述的方法,其中在所述微块上应用双线性插值。
46.如示例43所述的方法,其中不在所述微块上应用双向预测。
47.如示例3所述的方法,其中定义为微块的色度块仅使用一个运动矢量,其中其对应的亮度块不是微块。
48.如示例47所述的方法,其中所述运动矢量(MV)从L0或L1获取。
49.如示例1所述的方法,其中重叠块运动补偿(OBMC)被禁止用于所述微块。
50.一种包括处理器的视频编码装置,所述处理器配置为实现示例1至49中任一项所列举的方法。
51.一种包括处理器的视频解码装置,所述处理器配置为实现示例1至49中任一项所列举的方法。
52.一种视频系统中的装置,包括处理器和非瞬态存储器,所述非瞬态存储器之上具有指令,其中当由所述处理器执行所述指令时,使所述处理器实现示例1至49中任一项所述的方法。
53.一种计算机程序产品,储存在非瞬态计算机可读介质上,所述解析解程序产品包含程序代码,所述程序代码用于进行如示例1至49中任一项所述的方法。
从前述内容将理解,为了便于说明,本公开技术的具体实施例已经在本文中进行了描述,但是可以在不偏离本发明范围的情况下进行各种修改。因此,除了所附权利要求之外,本公开的技术不受限制。
本专利文件中描述的主题和功能操作的实现方式可以在各种系统、数字电子电路、或计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等效体,或其中一个或多个的组合。本说明书中描述的主题的实现方式可以实现为一个或多个计算机程序产品,即编码在有形和非暂时计算机可读介质上的计算机程序指令的一个或多个模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除硬件外,该装置还可以包括为所述计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或其中一个或多个的组合的代码。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或适合在计算环境中使用的其他单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中、专用于所述程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署成在一台或多台计算机上执行,所述计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。
本说明书描述的处理和逻辑流可以通过一个或多个可编程处理器执行,所述处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如,磁盘、磁光盘或光盘,或可操作联接到一个或多个大容量存储设备以从其接收数据或向其传输数据,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。
本说明书和附图仅意在被视为示例性的,其中示例性是指示例。如本文所用,除非上下文另有明确说明,否则单数形式“a”、“an”和“the”也应包括复数形式。此外,“或”的使用旨在包括“和/或”,除非上下文另有明确说明。
虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独实现,或在任何合适的子组合中实现。而且,尽管上述特征可以描述为在某些组合中起作用,甚至最初要求是这样,但在某些情况下,可以从组合中删除权利要求组合中的一个或多个特征,并且权利要求的组合可以涉及子组合或子组合的变型。
类似地,尽管图中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或按照先后顺序执行这样的操作,或执行所有示出的操作。而且,本专利文件所述实施例中各种系统部件的分离不应理解为在所有实施例中都需要这样的分离。
仅描述了一些实现方式和示例,其他实现方式、增强和变型可以基于本专利文件中描述和示出的内容做出。
Claims (35)
1. 一种用于视频比特流处理的方法,包括:
确定块的色度分量是微块,其中所述微块的维度是2*2, 2*4或者4*2,以及
基于所述确定,以与普通块不同的方式进行所述块与所述块的编码表示之间的转换;
其中当对所述块的亮度分量和色度分量分别进行划分操作时,确定划分操作不应用在所述色度分量上,其中所述划分操作包括四叉树(QT)、二叉树(BT)或三叉树(TT),
其中所述转换包括以与所述普通块不同的方式对所述微块进行帧内预测;
其中对所述微块应用所述帧内预测的全部模式的子集,并且选自所述子集的用于应用于所述微块的帧内预测模式被信令通知或推断;
其中所述子集基于所述微块的尺寸或形状而适应性地改变,
其中所述子集包括水平模式和垂直模式,
其中要从所述子集选择的所述帧内预测模式取决于所述微块的维度,
其中如果所述微块的宽度大于或等于所述微块的高度,则选择所述垂直模式用于应用于所述微块;否则,选择所述水平模式用于应用于所述微块。
2.如权利要求1所述的方法,其中以不同方式进行被定义为所述微块的色度块的转换及其对应的被定义为所述普通块的亮度分量的转换。
3.如权利要求1所述的方法,其中在进行所述帧内预测之前,不对所述微块的相邻样本应用滤波。
4.如权利要求1所述的方法,其中在进行所述帧内预测之后,不对所述微块的预测样本应用滤波。
5.如权利要求1所述的方法,其中所述微块的帧内预测在不信令通知的情况下被推断为预定的预测模式。
6.如权利要求5所述的方法,其中所述微块的预定的预测模式是简化直流(DC)预测模式,并且所述微块的全部预测样本等于(1<<位深度)/2。
7.如权利要求5所述的方法,所述预定的预测模式是直流(DC)模式、平面(planar)模式、垂直模式、水平模式或线性模型(LM)模式之一。
8.如权利要求1所述的方法,其中所述子集固定为对于一个条带、片、编码树单元(CTU)行或一组编码树单元内的全部块相同。
9.如权利要求1所述的方法,其中所述子集包括线性模型(LM)模式、水平模式以及垂直模式,
其中将是否应用所述线性模型模式信令通知;并且当不应用所述线性模型模式时,如果所述微块的宽度大于或等于所述微块的高度,则将所述垂直模式应用于所述微块,否则,将所述水平模式应用于所述微块。
10.如权利要求1所述的方法,其中是否以及如何对所述微块应用变换和/或反变换取决于所述微块的维度,
其中如果所述微块的尺寸是2×2,则不对所述微块应用行变换、行反变换、列变换和列反变换,或者
其中如果所述微块的尺寸是W×2,则对所述微块应用行变换和行反变换,但不应用列变换和列反变换,其中W表示所述微块的宽度且不等于2,或者
其中如果所述微块的尺寸是2×H,则对所述微块应用列变换和列反变换,但不应用行变换和行反变换,其中H表示所述微块的高度且不等于2。
11.如权利要求1所述的方法,其中在不信令通知的情况下,所述微块的变换跳过标志被推断为1。
12.如权利要求1所述的方法,其中所述微块的变换跳过标志被在规范的比特流中信令通知且等于1。
13.如权利要求12所述的方法,其中所述规范的比特流中信令通知的所述微块的变换跳过标志是解析的,并且在解码处理中被忽略。
14.如权利要求1所述的方法,其中,所述微块的尺寸是W×H,W和H分别表示所述微块的宽度和高度,
如果W <=2或H <=2,则变换跳过标志不被信令通知并被推断为1;并且
如果W×H <=(1 <<(transformSkipLog2MaxSize << 1)),则所述变换跳过标志被信令通知,所述transformSkipLog2MaxSize被在序列参数集(SPS)中信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
15.如权利要求1所述的方法,其中,所述微块的尺寸是W×H,W和H分别表示所述微块的宽度和高度,
如果W <=2或H <=2,变换跳过标志被信令通知;并且
如果W×H <=(1 <<(transformSkipLog2MaxSize << 1)),则所述变换跳过标志被信令通知,transformSkipLog2MaxSize被在序列参数集(SPS)信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
16.如权利要求1所述的方法,其中,所述微块的尺寸是W×H,W和H分别表示所述微块的宽度和高度,
如果W <=(1 <<(transformSkipLog2MaxSize << 1))和/或H <=(1 <<(transformSkipLog2MaxSize << 1)),则变换跳过标志被信令通知,transformSkipLog2MaxSize被在序列参数集(SPS)中信令通知;
否则,所述变换跳过标志不被信令通知并被推断为0。
17.如权利要求1所述的方法,其中所述微块中的残差等于0。
18.如权利要求17所述的方法,其中所述微块的编码块标志(cbf)不被信令通知并被推断为0;或者
所述微块的编码块标志被在规范的比特流中信令通知并等于0。
19.如权利要求18所述的方法,其中所述规范的比特流中信令通知的所述微块的编码块标志(cbf)是解析的,并且在解码处理中被忽略。
20.如权利要求1所述的方法,其中如果所述微块中的残差不全部为0,则仅所述微块的残差的直流(DC)值被信令通知。
21.如权利要求20所述的方法,其中对于所述微块中的每个样本,S(x,y)=P(x,y)+D,其中S(x,y)表示位置(x,y)处的重建值,P(x,y)表示所述位置(x,y)处的预测值,D表示对于所述微块被信令通知的所述残差的直流(DC)值,并且D对于所述微块中的全部样本相同。
22.如权利要求21所述的方法,其中D在编码侧信令通知之前被量化,并且在解码侧构建所述重建值之前被反量化。
23.如权利要求22所述的方法,其中变换之后的量化步骤由与普通量化相同的量化参数(QP)决定。
24.如权利要求1所述的方法,其中所述转换还包括运动补偿。
25.如权利要求24所述的方法,其中对所述微块不应用插值,并且所述微块的运动矢量被四舍五入到接近的整数像素。
26.如权利要求24所述的方法,其中对所述微块应用双线性插值。
27.如权利要求24所述的方法,其中不对所述微块应用双向预测。
28.如权利要求2所述的方法,其中定义为微块的色度块仅使用一个运动矢量,其中其对应的亮度块不是微块。
29.如权利要求28所述的方法,其中所述运动矢量从L0或L1获取。
30.如权利要求1所述的方法,其中重叠块运动补偿被禁止用于所述微块。
31.如权利要求1所述的方法,进一步的,在亮度分量上根据划分操作得到对应于色度分量的微块所对应的亮度块。
32.一种包括处理器的视频编码装置,所述处理器配置为实现权利要求1至31中任一项所述的方法。
33.一种包括处理器的视频解码装置,所述处理器配置为实现权利要求1至31中任一项所述的方法。
34.一种视频系统中的装置,包括处理器和非瞬态存储器,所述非瞬态存储器之上具有指令,其中当由所述处理器执行所述指令时,使所述处理器实现权利要求1至31中任一项所述的方法。
35.一种计算机可读存储介质,所述计算机可读介质存储介质用于存储程序代码,其中所述程序代码由计算机执行时,所述计算机实现根据权利要求1至31中任一项所述的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNPCT/CN2018/095918 | 2018-07-17 | ||
CN2018095918 | 2018-07-17 | ||
CN2018106661 | 2018-09-20 | ||
CNPCT/CN2018/106661 | 2018-09-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110730349A CN110730349A (zh) | 2020-01-24 |
CN110730349B true CN110730349B (zh) | 2023-12-29 |
Family
ID=67999991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910646610.1A Active CN110730349B (zh) | 2018-07-17 | 2019-07-17 | 用于微块的约束 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN110730349B (zh) |
TW (1) | TWI707576B (zh) |
WO (1) | WO2020016795A2 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113228638B (zh) | 2018-12-18 | 2023-12-26 | 寰发股份有限公司 | 在区块分割中条件式编码或解码视频区块的方法和装置 |
US11490122B2 (en) * | 2020-09-24 | 2022-11-01 | Tencent America LLC | Method and apparatus for video coding |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777283A (zh) * | 2004-12-31 | 2006-05-24 | 上海广电(集团)有限公司 | 一种基于微块的视频信号编/解码方法 |
AU2012326872A1 (en) * | 2011-10-19 | 2014-05-22 | Kt Corporation | Method and apparatus for encoding/decoding image |
CN104683805A (zh) * | 2013-11-30 | 2015-06-03 | 同济大学 | 图像编码、解码方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2878440A1 (en) * | 2012-07-06 | 2014-01-09 | Telefonaktiebolaget L M Ericsson (Publ) | Restricted intra deblocking filtering for video coding |
US20140192862A1 (en) * | 2013-01-07 | 2014-07-10 | Research In Motion Limited | Methods and systems for prediction filtering in video coding |
US9883197B2 (en) * | 2014-01-09 | 2018-01-30 | Qualcomm Incorporated | Intra prediction of chroma blocks using the same vector |
-
2019
- 2019-07-17 CN CN201910646610.1A patent/CN110730349B/zh active Active
- 2019-07-17 WO PCT/IB2019/056095 patent/WO2020016795A2/en active Application Filing
- 2019-07-17 TW TW108125325A patent/TWI707576B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777283A (zh) * | 2004-12-31 | 2006-05-24 | 上海广电(集团)有限公司 | 一种基于微块的视频信号编/解码方法 |
AU2012326872A1 (en) * | 2011-10-19 | 2014-05-22 | Kt Corporation | Method and apparatus for encoding/decoding image |
CN104683805A (zh) * | 2013-11-30 | 2015-06-03 | 同济大学 | 图像编码、解码方法及装置 |
Non-Patent Citations (3)
Title |
---|
CE3 related: Simplifications for chroma intra coding;Liang Zhao et al;《Joint Video Exploration Team (JVET)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting: Ljubljana, SL》;20180709;全文 * |
Description of Core Experiment 9 (CE9): IBF/CCP interdependency;Robert Cohen et al;《Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 18th Meeting: Sapporo, JP》;20140815;全文 * |
Liang Zhao et al.CE3 related: Simplifications for chroma intra coding.《Joint Video Exploration Team (JVET)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting: Ljubljana, SL》.2018, * |
Also Published As
Publication number | Publication date |
---|---|
WO2020016795A2 (en) | 2020-01-23 |
WO2020016795A3 (en) | 2020-03-05 |
CN110730349A (zh) | 2020-01-24 |
TWI707576B (zh) | 2020-10-11 |
TW202007150A (zh) | 2020-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110719470B (zh) | 视频编码的块尺寸限制 | |
CN110636314B (zh) | 改进的边界分割 | |
US12034911B2 (en) | Definition of zero unit | |
CN110730349B (zh) | 用于微块的约束 | |
CN110662035A (zh) | 零单元的滤波 | |
CN110662038B (zh) | 零单元的划分方法、设备及介质 | |
CN117256141A (zh) | 用于编解码树划分的边界处理 | |
CN117296319A (zh) | 基于邻居的分割约束 | |
CN117280690A (zh) | 对视频块的分割的限制 | |
CN117280694A (zh) | 视频编解码中分割信令通知 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |