CN112262577A - 亮度和色度分量的波阵面并行处理 - Google Patents
亮度和色度分量的波阵面并行处理 Download PDFInfo
- Publication number
- CN112262577A CN112262577A CN201980039147.2A CN201980039147A CN112262577A CN 112262577 A CN112262577 A CN 112262577A CN 201980039147 A CN201980039147 A CN 201980039147A CN 112262577 A CN112262577 A CN 112262577A
- Authority
- CN
- China
- Prior art keywords
- context
- luma
- chroma
- coding units
- coding
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 57
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims abstract description 206
- 241000023320 Luma <angiosperm> Species 0.000 claims abstract description 202
- 238000000034 method Methods 0.000 claims abstract description 139
- 230000003044 adaptive effect Effects 0.000 claims abstract description 103
- 230000001902 propagating effect Effects 0.000 claims abstract description 24
- 230000000644 propagated effect Effects 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 57
- 230000015654 memory Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 18
- 238000005192 partition Methods 0.000 description 9
- 241000209094 Oryza Species 0.000 description 7
- 235000007164 Oryza sativa Nutrition 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 235000009566 rice Nutrition 0.000 description 7
- 238000000926 separation method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008520 organization Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000009977 dual effect Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000001364 causal effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 101150071238 tut1 gene Proteins 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000012812 general test Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- -1 variables Substances 0.000 description 1
Images
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/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/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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- 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/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)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了至少一种方法及设备,用于提高视频图片的亮度分量和色度分量的波阵面并行编码和解码的并行化。例如,视频图像的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元。从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量,并且从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量。使用该传播对视频图片进行编码和解码,以提供波阵面并行处理。
Description
技术领域
本实施例总体上涉及用于视频编码或解码的方法及设备,并且更具体地,涉及与现有视频压缩系统相比,用于提高亮度和色度分量的波阵面并行编码和解码的并行化水平的方法及设备。
背景技术
为了实现高压缩效率,图像和视频编码方案通常采用预测和变换来利用视频内容中的空间和时间冗余。通常,使用帧内或帧间预测来开发帧内或帧间相关性,然后对原始块和预测的块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵编码。为了重建视频,通过与熵编码、量化、变换和预测相对应的逆过程来对压缩数据进行解码。
波阵面并行处理(WPP,wavefront parallel processing)是已经用于对视频数据进行有效并行处理的技术。例如,在ITU-T H.265HEVC标准中,兼容解码器能够对启用波阵面并行处理并编码的图片数据进行解码,其中编码的图片的每个编码树单元(CTU)行构成单独的分区或线程,并将来自前一行第二CTU的上下文自适应二进制算术编码(CABAC)上下文变量传播到当前行的第一CTU。因此,图片的每个视频行可以在几乎没有等待时间的情况下被并行解码。
发明内容
根据实施例,提出了一种用于使用波阵面并行处理的视频编码的方法,该方法包括:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于使用波阵面并行处理的视频解码的方法,该方法包括:访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频编码的设备,该设备包括一个或多个处理器,其中,所述一个或多个处理器被配置为:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频解码的设备,该设备包括一个或多个处理器,其中,所述一个或多个处理器被配置为:访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频编码的设备,包括:用于将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元的部件;用于从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量的部件;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及用于使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理的部件。
根据另一实施例,提出了一种用于视频解码的设备,该设备包括:用于访问视频图片的独立细分的亮度分量和独立细分的色度分量的部件,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及用于使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理的部件。
根据另一实施例,提出了一种包括视频图片的视频信号,该视频信号是通过执行以下而形成的:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
附图说明
图1图示了视频编码器的实施例的框图。
图2图示了视频解码器的实施例的框图。
图3A是描绘在HEVC中使用波阵面并行处理(WPP)的CABAC上下文变量的传播的图解示例。
图3B图示了HEVC中在WPP的情况下比特流的组织。
图4A是描绘针对单独亮度/色度树的WPP的实现的图解示例。
图4B图示了VTM 5.0中在WPP的情况下比特流的组织。
图5是描绘VTM-1.0中亮度和色度CTU的解析和解码依从关系的图解示例。
图6是描绘根据实施例的用于对亮度/色度分量进行编码/解码的波阵面处理的实现的图解示例。
图7是描绘根据实施例的用于对亮度和色度CTU进行解析和解码的依从关系的图解示例。
图8A是描绘CABAC变量上下文从CTU亮度到并置CTU色度的传播的图解示例。
图8B图示了根据实施例的在WPP的情况下比特流的组织。
图9是描绘根据另一实施例的用于对亮度和色度CTU进行解析和解码的依从关系的图解示例。
图10图示了示例性SAO参数合并过程。
图11图示了根据实施例的另一示例性SAO参数合并过程。
图12图示了根据实施例的视频编码的示例性方法。
图13图示了根据实施例的视频解码的示例性方法。
图14图示出了能够在其中实现本实施例的方面的系统的框图。
具体实施方式
本公开旨在与例如以下中描述的H.265/HEVC系统的现有视频压缩系统相比提高并行化水平:ITU-T H.265TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU(10/2014),SERIES H:AUDIOVISUAL AND MULTIMEDIA SYSTEMS,Infrastructure ofaudiovisual services-Coding of moving video,High efficiency video coding,Recommendation ITU-T H.265(ITU-T H.265ITU电信标准化部门(10/2014),H系列:视听和多媒体系统、视听服务的基础设施-运动视频编码,高效视频编码,ITU-T H.265建议书),以及“Algorithm description for Versatile Video Coding and Test Model 1(VTM 1)”,J.Chen,E.Alshina,document JVET-J1002,Joint Video Experts Team(JVET)of ITU-TSG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,10th Meeting,San Diego,US,10-20Apr.2018(“通用视频编码和测试模型1(VTM 1)的算法描述”,J.Chen,E.Alshina,文件JVET-J1002,ITU-T SG 16WP 3和ISO/IEC JTC 1/SC 29/WG 11的联合视频专家组(JVET),第十次会议,美国圣地亚哥,2018年4月10日至20日)。
本公开提出了一种允许并行地解析与亮度和色度有关的语法的方法及设备,如在波阵面并行处理(WPP)中那样,如在“Wavefront Parallel Processing”,Document JCTVC-E196,Joint Collaborative Team on Video Coding of ISO/IEC JTC1/SC29/WG11,5thMeeting:Geneva,CH,16-23March 2011(“波阵面并行处理”,文件JCTVC-E196,ISO/IECJTC1/SC29/WG11的关于视频编码的联合协作组,第5次会议:瑞士日内瓦,2011年3月16日至23日)中描述的。
图1图示了示例性视频编码器100,诸如高效视频编码(HEVC)编码器。图1还可以图示其中对HEVC标准进行了改进的编码器或采用类似于HEVC的技术的编码器,诸如由JVET(联合视频探索小组)正在开发的JEM(联合探索模型)编码器。
在本申请中,术语“重建”和“解码”可以互换使用,术语“编码(encode)”或“编码(code)”可以互换使用,并且术语“图像”、“图片”和“帧”可以互换使用。通常但并非必须,术语“重建”在编码器侧使用,而“解码”在解码器侧使用。
在被编码之前,视频序列可以经过预编码处理(101),例如,对输入的颜色图片应用颜色变换(例如,从RGB 4:4:4到YCbCr 4:2:0的转换)或执行输入的图片分量的重新映射以便得到对压缩更有弹性的信号分布(例如,使用颜色分量之一的直方图均衡化)。元数据可以与预处理相关联并附加到比特流。
在HEVC中,为了对具有一个或多个图片的视频序列进行编码,将图片分区(102)成一个或多个条带,其中每个条带可以包括一个或多个条带片段。条带片段被组织为编码单元、预测单元和变换单元。HEVC规范在“块”和“单元”之间进行区分,其中“块”针对样本阵列(例如亮度,Y)中的特定区域,而“单元”包括所有编码颜色分量(Y、Cb、Cr或单色)的并置块、语法元素以及与块相关联的预测数据(例如,运动矢量)。
为了编码,将图片分区为具有可配置尺寸的正方形的编码树块(CTB),并将编码树块的连续集分组为条带。编码树单元(CTU)包含已编码颜色分量的CTB。CTB是分区为编码块(CB)的四叉树的根,并且编码块可以分区为一个或多个预测块(PB),并形成分区为变换块(TB)的四叉树的根。与编码块、预测块和变换块相对应,编码单元(CU)包括预测单元(PU)和变换单元(TU)的树状结构的集合,PU包括所有颜色分量的预测信息,而TU包括每个颜色分量的残差编码语法结构。亮度分量的CB、PB和TB的尺寸适用于相应的CU、PU和TU。在本申请中,术语“块”可以用来指代例如CTU、CU、PU、TU、CB、PB和TB中的任一个。另外,“块”还可以用来指代H.264/AVC或其他视频编码标准中指定的宏块和分区,并且更一般地指代各种尺寸的数据阵列。
在示例性编码器100中,如下所述,由编码器元件对图片进行编码。以CU为单位对要编码的图片进行处理。使用帧内模式或帧间模式对每个CU进行编码。当CU以帧内模式编码时,其执行帧内预测(160)。在帧间模式下,执行运动估计(175)和补偿(170)。编码器判定(105)帧内模式或帧间模式中的哪一个用于编码CU,并通过预测模式标志指示帧内/帧间判定。通过从原始图像块中减去(110)预测的块,来计算预测残差。
为了利用空间冗余,根据相同条带内重建的相邻样本(即,参考样本)来预测帧内模式下的CU。当考虑当前CU的编码/解码时,因果相邻CU已经被编码/解码。为了避免不匹配,编码器和解码器具有相同的预测。因此,编码器和解码器二者使用来自重建/解码的相邻因果CU的信息来形成对当前CU的预测。
然后对预测残差进行变换(125)和量化(130)。对量化的变换系数以及运动矢量和其他语法元素进行熵编码(145)以输出比特流。编码器还可以跳过变换,并以4×4TU为基础将量化直接应用于未变换的残差信号。编码器还可以绕过变换和量化两者,即,在不应用变换或量化处理的情况下直接对残差进行编码。在直接PCM编码中,不应用任何预测,并且将编码单元样本直接编码到比特流中。
编码器对编码块进行解码,以提供用于进一步预测的参考。对量化的变换系数进行解量化(140)和逆变换(150)以解码预测残差。组合(155)解码的预测残差和预测的块,重建图像块。环内滤波器(165)被应用于重建的图片,以例如执行解块/SAO(样本自适应偏移)滤波来减少编码伪像。滤波后的图像存储在参考图片缓冲器(180)。
图2图示了示例性视频解码器200(诸如,HEVC解码器)的框图。在示例性解码器200中,如下所述,由解码器元件对比特流进行解码。视频解码器200通常执行与如图1所示的编码通道相对的解码通道,它执行视频解码作为编码视频数据的一部分。图2还可以图示其中对HEVC标准进行了改进的解码器或采用类似于HEVC的技术的解码器,诸如JEM解码器。
具体而言,解码器的输入包括可以由视频编码器100生成的视频比特流。首先对该比特流进行熵解码(230)以获得变换系数、运动矢量、图片分区信息以及其他编码信息。图片分区信息指示CTU的尺寸、以及将CTU分割为CU的方式,并且在适用时可能分割为PU的方式。因此,解码器可以根据解码的图片分区信息将图片划分(235)成CTU,并且将每个CTU划分成CU。对变换系数进行解量化(240)和逆变换(250),以解码预测残差。
组合(255)解码的预测残差和预测的块,重建图像块。可以从帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)预测的块。如上所述,AMVP和合并模式技术可以用于推导出用于运动补偿的运动矢量,其可以使用插值滤波器来计算参考块的子整数样本的插值。环内滤波器(265)被应用于重建的图像。滤波后的图像存储在参考图片缓冲器(280)。
解码图片可以进一步经过解码后处理(285),例如,逆颜色变换(例如,从YCbCr 4:2:0到RGB 4:4:4的转换)或者执行在预编码处理(101)中执行的重新映射过程的逆过程的逆重新映射。解码后处理可以使用在预编码处理中推导出并在比特流中用信号通知的元数据。
如上所述,在HEVC中,视频序列的帧的编码以块结构为基础。帧被划分为正方形编码树单元(CTU),然后可以基于速率失真准则被四叉树(QT)分割为多个编码单元。每个CU或者被帧内预测(即,根据因果相邻CU在空间上预测),或者被帧间预测(即,根据已解码的参考帧在时间上预测)。在I条带中,所有CU被帧内预测,而在P和B条带中,CU可以被帧内预测或被帧间预测。对于帧内预测,HEVC定义了35种预测模式,其中包括一种平面模式(索引为模式0)、一种DC模式(索引为模式1)和33种方向性预测模式(索引为模式2-34)。
在JEM中,QTBT(四叉树加二叉树)结构去除了HEVC中多分区类型的概念,即去除了CU、PU和TU概念的区分。首先按照四叉树结构对编码树单元(CTU)进行分区。进一步按照二叉树结构对四叉树叶节点进行分区。二叉树叶节点被称为编码单元(CUs),其用于预测和变换而无需进一步分区。因此,在新的编码QTBT块结构中,CU、PU和TU具有相同的块尺寸。在JEM中,CU由不同颜色分量的编码块(CB)组成。它是在JEM中执行预测过程和残差变换的级别。CU可以是正方形或矩形。
在许多解码器实现方式中,该过程分为两个阶段:解析和解码。通常,解析过程是指从比特流中提取语法元素的过程,其中语法是在比特流中表示的数据的元素,并且语义指定语法元素的值的含义。语义可以进一步约束语法元素可以选择的值,以及基于语法元素定义要在解码过程中使用的变量。
解析可以仅限于语法元素值的解码,其中来自比特流的比特用作输入,并且提供语法元素值作为输出。对于每个元素,可以在语法表中使用描述符来指定适用的解析过程。
解码过程指定如何使用语法元素来重建样本。解码过程将语法元素值作为输入,并基于语法元素的语义来重建视频序列。
应当注意,“解码过程”也可以称为“重建过程”,并且短语“解码过程”通常可以应用于“解析过程”和“解码过程”的组合。基于特定描述的上下文,所使用的短语“解码过程”是旨在专门指代操作的子集(例如,不含有解析),还是广义上指代解码过程(例如,含有解析)将是清楚的,并且相信是本领域技术人员很好地理解的。
在HEVC视频压缩标准中,将图片划分为所谓的编码树单元(CTU),其尺寸通常为64×64、128×128或256×256像素。以光栅扫描顺序来处理CTU,而CABAC熵编码器动态地(onthe fly)更新其概率。为了对当前CTU进行编码,需要左侧CTU、左上CTU、顶部CTU和右上CTU可用(已解码),以便将空间和运动信息用于帧内和帧间预测。当开始符号的熵编码时,所使用的CABAC概率就是在已经处理先前CTU(左侧CTU)之后可用的概率。具体而言,由于光栅扫描顺序,一行的第一个CTU使用在处理先前行的最后一个CTU之后可用的CABAC概率。在HEVC中,没有用于亮度相关语法元素的CABAC上下文被用于色度相关语法元素。
在HEVC中,基本实体是编码树块(CTB)和相应的编码树单元(CTU)。CTU包含编码的颜色分量的CTB,并且形成比特流语法中的完整实体。编码树的语法(编码树块的分区)对于所有分量是共同的。对于给定的编码单元,与每个编码块(CB)相关的语法是交错的,例如对于帧内编码CU,首先对帧内亮度模式进行编码,然后对帧内色度模式进行编码,然后对两个色度分量的cbfs(coded_block_flag)进行编码,然后对亮度分量的cbf进行编码。然后,在色度分量的残差之前对亮度的残差进行编码。
在WPP模式下,通过使用两个连续CTU的延迟,相对于每个CTU行的先前CTU行来处理每个CTU行。这样,除了在每个CTU行的结束处的CABAC上下文变量之外,在分区边界处没有打断连续CTU行之间的依赖关系。为了减轻在每个CTU行的起点处由常规CABAC初始化可能导致的编码效率的潜在损失,(部分)适应的CABAC上下文变量的内容从先前CTU行的编码/解码后的第二个CTU传播到当前CTU行的第一个CTU。结果,与不使用WPP但是其他方面具有相同设置的图片编码的情况相比,由WPP引入的编码效率损失相对小。此外,WPP不会更改CTU的常规光栅扫描顺序。此外,通过使用相对简单的CABAC转码技术,WPP比特流可以转码为非WPP比特流或可以从非WPP比特流来转码WPP比特流,而对图片重建过程没有任何改变。
当启用WPP时,多达图片中CTU行数的多个线程可以并行工作以处理各个CTU行,其中CTU行数取决于亮度样本中的图片高度与在宽度或高度方面的亮度CTB尺寸的比率,如图3A所示。图3A图示了例如波阵面并行处理以及如HEVC中使用的CABAC上下文传播。
当启用WPP时,条带片段报头包含指向比特流的字节对齐入口点列表,这些入口点标记每行中第一个CTU的开始。每行的解码过程从比特流中的相应入口点开始。图3B图示了在WPP的情况下比特流的组织,其中箭头指示在条带报头中指示的字节位置处开始解码的入口点。在HEVC中,给定CTU的亮度和色度的语法数据在比特流中针对每个CU交错。
在JEM中,如“Algorithm Description of Joint Exploration Test Model 7(JEM7)”,Document JVET-G1001,Joint Video Exploration Team of ISO/IEC JTC1/SC29/WG11,7th Meeting:Torino,IT,13-21July 2017(“联合探索测试模型7(JEM7)的算法描述”,文件JVET-G1001,ISO/IEC JTC1/SC29/WG11的联合视频探索小组,第7次会议:意大利都灵,2017年7月13日至21日)中描述的,在称为DualTree(双树)的模式下,已引入了相同CTU上的亮度和色度编码树的分离。在帧内条带中,亮度和色度可以具有不同的QTBT结构。亮度CTB按照QTBT结构分区为CU,且色度CTB按照另一QTBT结构分区为色度CU。对于P和B条带,亮度和色度在一个CTU中具有相同的QTBT结构。这意味着,I条带中的CU由亮度分量的编码块或两个色度分量的编码块组成,而P或B条带中的CU由全部亮度和色度分量的编码块组成。
为了减少跨分量冗余,在JEM中使用了跨分量线性模型(CCLM)预测模式,为此,通过使用以下线性模型基于相同CU的重建亮度样本来预测色度样本:
predC(i,j)=α·recL′(i,j)+ β 式1
其中,rec′L是重建的亮度样本,predc是预测的色度样本,i、j分别是当前样本的行和列。通过使当前块周围的相邻重建亮度和色度样本之间的回归误差最小化,来推导出缩放因子α和偏移β。
通过本公开解决的问题是,通过考虑在使用DualTree模式的帧内条带中编码树对于亮度和色度是单独的,从而允许在编码器和解码器处更好地并行化,且编码性能损失较小。帧内条带通常编码/解码最慢,因为与P/B条带相比,语法和残差对编码/解码更重要。注意,为了使解码器并行,应以与解码器相同的方式执行在编码器中CABAC上下文的传播。另外,虽然编码器可以并行实现,但是编码器并非必须使用并行实现来支持解码器处的并行实现。
在WPP与亮度和色度的单独编码树的直接组合中,当处理CTU时,首先处理亮度编码树块(CTB),然后处理色度CTB。在比特流中,语法遵循相同的顺序:来自CTU_0的CTB亮度,然后是来自CTU_0的CTB色度,来自CTU_1的CTB亮度,然后是来自CTU_1的CTB色度,……等等。这图示在图4A中,其示出了针对单独亮度/色度树的WPP的直接实现。
亮度和色度CTB可以共享一些CABAC上下文,例如在通用测试模型1(VTM-1.0)中,在亮度和色度之间共享了split_cu_flag、split_cu_mode_mt_flag、emt_tu_index或一些残差语法上下文(例如,lastX、lastY、SigCGPattern)。例如,为了在亮度和色度之间共享上下文,对于split_cu_flag,亮度CTB(N-1)的上下文模型将用于并置色度CTB(N-1),然后色度CTB(N-1)的上下文模型将用于下一个亮度CTB N等等。
在VTM-1.0中,在针对帧内条带启用Dual Tree的情况下,只要编码块的尺寸大于64个样本,则对每个编码块隐含四叉树分割。此外,在比特流中,每个64×64编码块的亮度语法和色度语法在比特流中交错。
当启用WPP时,条带片段报头包含指向比特流的字节对齐入口点列表,这些入口点标记每行中第一个CTU的开始。每行的解码过程从比特流中的相应入口点开始。图4B图示了在WPP的情况下比特流的组织,其中箭头指示在条带报头中指示的字节位置处开始解码的入口点。在VTM-5.0中,在Dual Tree的情况下,给定CTU的亮度和色度的语法数据在比特流中针对每个64×64编码块交错。
在图5中,示出了VTM-1.0中亮度和色度CTU的解析和解码依从关系。在该依从关系图和以后的其他依从关系图中,为了简单起见,没有示出与用于方向性预测的邻居的解码依从关系。
下面,使用HEVC或VVC中的一些语法元素(Benjamin Bross,“Versatile VideoCoding(Draft 1)”JVET-J1001-v2,JVET 10th Meeting:San Diego,US,10-20Apr.2018(Benjamin Bross,“通用视频编码(草案1)”JVET-J1001-v2,JVET第十次会议:美国圣地亚哥,2018年4月10日至20日)为例,解释将什么视为如图3A所示的类别2)-4)。应当注意,这些语法元素是出于示例性目的而描述的,并且针对每个类别可以有更多的语法元素。
HEVC的7.3.8.5节:编码单元语法
HEVC的7.3.8.11节:残差编码语法
…
VVC(草案1)的7.3.4.3节:编码四叉树语法
VVC(草案1)的7.3.4.3节:多类型树语法
1.特定于帧内亮度预测的语法元素:(类别2)
语法元素prev_intra_luma_pred_flag[x0+i][y0+j]、mpm_idx[x0+i][y0+j]和rem_intra_luma_pred_mode[x0+i][y0+j]指定了亮度样本的帧内预测模式。阵列索引x0+i、y0+j指定了所考虑的预测块的左上亮度样本相对于图片的左上亮度样本的位置(x0+i,y0+j)。当prev_intra_luma_pred_flag[x0+i][y0+j]等于1时,根据条款8.4.2,从相邻帧内预测的预测单元推断帧内预测模式。
2.特定于帧内色度预测的语法元素:(类别3)
intra_chroma_pred_mode[x0][y0]指定了色度样本的帧内预测模式。阵列索引x0、y0指定了所考虑的预测块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
3.亮度和色度预测之间共享的语法元素,具有单独的上下文索引
在一些情况下,在亮度和色度之间共享相同的语法元素,但是对于亮度和色度,所使用的上下文索引不同(例如,transform_skip_flag)。当语法用于亮度时,可以认为其为类别2;而当语法用于色度时,可以认为其为类别3。
transform_skip_flag[x0][y0][cIdx]指定了变换是否应用于相关联的变换块:阵列索引x0、y0指定了所考虑的变换块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。阵列索引cIdx指定了颜色分量的指示器;对于亮度其等于0,对于Cb其等于1,对于Cr其等于2。transform_skip_flag[x0][y0][cIdx]等于1指定了没有变换应用于当前变换块。transform_skip_flag[x0][y0][cIdx]等于0指定了变换是否应用于当前变换块的判定取决于其他语法元素。当不存在transform_skip_flag[x0][y0][cIdx]时,则推断它等于0。
4.在亮度和色度预测之间共享的语法元素,具有共享的上下文索引:(类别4)
qt_split_cu_flag[x0][y0]指定了是否将编码单元分割为具有一半水平和垂直尺寸的编码单元。阵列索引x0、y0指定了所考虑的编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
该语法对应于HEVC中的语法元素split_cu_flag。
mtt_split_cu_flag等于0指定了未分割编码单元。mtt_split_cu_flag等于1指定了如语法元素mtt_split_cu_binary_flag所指示的使用二元分割将编码单元分割为两个编码单元,或者使用三元分割将编码单元分割为三个编码单元。如语法元素mtt_split_cu_vertical_flag所指示的,二元或三元分割可以是垂直的或者可以是水平的。
当不存在mtt_split_cu_flag时,推断mtt_split_cu_flag的值等于0。
mtt_split_cu_vertical_flag等于0指定了水平分割编码单元。mtt_split_cu_vertical_flag等于1指定了垂直分割编码单元。
当不存在mtt_split_cu_vertical_flag时,可以如下推断:
-如果allowSplitBtHor等于TRUE(真)或allowSplitTtHor等于TRUE,则推断mtt_split_cu_vertical_flag的值等于0。
-否则,推断mtt_split_cu_vertical_flag的值等于1。
mtt_split_cu_binary_flag等于0指定了使用三元分割将编码单元分割为三个编码单元。mtt_split_cu_binary_flag等于1指定了使用二元分割将编码单元分割为两个编码单元。
将使用HEVC第9.3.1节中描述的解析过程作为示例,来说明在各种实施例中所做的更改:
9.3条带片段数据的CABAC解析过程
9.3.1总则
在条款7.3.8.1至7.3.8.12中用描述符ae(v)解析语法元素时,调用该过程。该过程的输入是对语法元素的值和先前解析的语法元素的值的请求。
该过程的输出是语法元素的值。
当开始解析以下中的一项或多项时,调用如条款9.3.2中规定的CABAC解析过程的初始化过程:
-条款7.3.8.1中规定的条带片段数据语法。
-条款7.3.8.2中规定的编码树单元语法,并且编码树单元是分片中的第一个编码树单元。
-条款7.3.8.2中规定的编码树单元语法,entropy_coding_sync_enabled_flag等于1,并且相关联的亮度编码树块是分片的编码树单元行中的第一个亮度编码树块。
如下地应用上下文变量的存储过程:
-当条款7.3.8.2中的编码树单元语法的解析结束时,entropy_coding_sync_enabled_flag等于1,并且CtbAddrInRs%PicWidthInCtbsY等于1,或者两个CtbAddrInRs大于1,并且TileId[CtbAddrInTs]不等于TileId[CtbAddrRsToTs[CtbAddrInRs-2]],调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxWpp、TableMpsValWpp和TableStatCoeffWpp作为输出。
-当条款7.3.8.1中的通用条带片段数据语法的解析结束时,dependent_slice_segments_enabled_flag等于1并且end_of_slice_segment_flag等于1,调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxDs、TableMpsValDs和TableStatCoeffDs作为输出。
图9-1中示出了语法元素synEl的整个CABAC解析过程。
我们提出将亮度和色度编码树块的处理分为不同的线程。在一个实施例中,CABAC上下文变量从先前行的第二个亮度CTB传播到当前行的第一个亮度CTB。类似地,CABAC上下文变量从先前行的第二个色度CTB传播到当前行的第一个色度CTB。此外,色度CTU的解析不依赖于任何亮度CTU,因此在亮度和色度之间不再共享CABAC上下文。在下文中,我们还将描述亮度/色度CTB之间CABAC上下文传播的其他变型,并且我们还可以扩展不同条带和/或网络抽象层单元(NALU)中亮度和色度的分离。
实施例1
图6图示了根据实施例的方法,其中可以在不同线程中处理亮度CTU和色度CTU。亮度CABAC上下文从先前CTU行的编码/解码后的第二个CTU亮度传播到当前CTU行的第一个CTU亮度,然后先前行和当前行的亮度上下文之间不再存在依从关系。类似地,色度CABAC上下文从先前CTU行的编码/解码后的第二个CTU色度传播到当前CTU行的第一个CTU色度。亮度和色度之间共享的CABAC上下文被分离,第一个亮度CTU和第一个色度CTU的初始化是相同的,然后对于亮度和色度,上下文将分别演进。
由于色度预测使用重建的亮度样本,因此当前色度CTB需要并置的亮度CTB已被编码/解码。初始化第一个色度CTU的CABAC上下文,而无需来自另一CTU的传播。综上所述,对于CABAC语法元素的解析,当前色度CTU不依赖于亮度CTU。对于解码过程,当前色度CTU需要并置的亮度CTU进行预测。
通常,CABAC上下文在色度CTU之间的传播比在亮度CTU之间的传播更简单,因为它通常涉及更少的上下文(例如,通常仅与帧内色度上下文相关)。
在图7中,我们示出了根据实施例的亮度和色度CTU的解析和解码依从关系。如前已经注意的,在这些依从关系图中,为了简单起见,没有示出与用于方向性预测的邻居的解码依从关系。
对于其上下文在亮度和色度之间共享的语法元素(例如,分割标志),亮度和色度的上下文可以分别被初始化并演进。另选地,可以在初始化时(例如,在条带片段、条带的开始或行的开始)复制(即,相同)亮度和色度的上下文,如图7所示。
类别4的语法和语义可以保持不变。可以对解析过程进行如下修改,其中修改带有下划线:
9.3条带片段数据的CABAC解析过程
9.3.1总则
在条款7.3.8.1至7.3.8.12中用描述符ae(v)解析语法元素时,调用该过程。该过程的输入是对语法元素的值和先前解析的语法元素的值的请求。
该过程的输出是语法元素的值。
当开始解析以下中的一项或多项时,调用如条款9.3.2中规定的CABAC解析过程的初始化过程:
-条款7.3.8.1中规定的条带片段数据语法
-条款7.3.8.2中规定的编码树单元语法,并且编码树单元是分片中的第一个编码树单元。
-条款7.3.8.2中规定的编码树单元语法,entropy_coding_sync_enabled_flag等于1,并且相关联的亮度编码树块是分片的编码树单元行中的第一个亮度编码树块或者如 果编码树单元行中的第一个色度编码树块,则是相关联的色度编码树块。
如下地应用上下文变量的存储过程:
-当条款7.3.8.2中的编码树单元语法的解析结束时,entropy_coding_sync_enabled_flag等于1,并且CtbAddrInRs%PicWidthInCtbsY等于1,或者两个CtbAddrInRs大于1,并且TileId[CtbAddrInTs]不等于TileId[CtbAddrRsToTs[CtbAddrInRs-2]],调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxWppLuma、TableStateIdxWppChroma、TableMpsValWppLuma TableMpsValWppChroma、TableStatCoeffWppLuma、TableStatCoeffWppChroma作为输出。
-当条款7.3.8.1中的通用条带片段数据语法的解析结束时,dependent_slice_segments_enabled_flag等于1并且end_of_slice_segment_flag等于1,调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxDs、TableMpsValDs和TableStatCoeffDs作为输出。
实施例2,从亮度CTU到色度CTU的传播
在第二实施例中,从并置的亮度CTU以及从先前的色度CTU传播色度CTU的CABAC上下文。色度CTU将受益于在亮度CTU之后CABAC上下文的演进,如图8A所示。另一更改(相对于实施例1)在于,亮度和色度之间的共享上下文不从色度CTU传播到亮度CTU,这确保了可以单独地编码/解码亮度CTU。
图9示出了根据实施例的亮度和色度CTU的解析和解码依从关系。
类别4的语法和语义可以保持不变。可以对解析过程进行如下修改,其中修改带有下划线:
9.3条带片段数据的CABAC解析过程
9.3.1总则
在条款7.3.8.1至7.3.8.12中用描述符ae(v)解析语法元素时,调用该过程。该过程的输入是对语法元素的值和先前解析的语法元素的值的请求。
该过程的输出是语法元素的值。
当开始解析以下中的一项或多项时,调用如条款9.3.2中规定的CABAC解析过程的初始化过程:
-条款7.3.8.1中规定的条带片段数据语法
-条款7.3.8.2中规定的编码树单元语法,并且编码树单元是分片中的第一个编码树单元。
-条款7.3.8.2中规定的编码树单元语法,entropy_coding_sync_enabled_flag等于1,并且相关联的亮度编码树块是分片的编码树单元行中的第一个亮度编码树块或者针 对每个色度编码树块。
如下地应用上下文变量的存储过程:
-当条款7.3.8.2中的编码树单元语法的解析结束时,entropy_coding_sync_enabled_flag等于1,并且CtbAddrInRs%PicWidthInCtbsY等于1,或者两个CtbAddrInRs大于1,并且TileId[CtbAddrInTs]不等于TileId[CtbAddrRsToTs[CtbAddrInRs-2]],调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxWppLuma、TableMpsValWppLuma和TableStatCoeffWppLuma作为输出。
-当条款7.3.8.2中的编码树单元语法的解析结束时,entropy_coding_sync_ enabled_flag等于1,上下文变量和Rice参数初始化的存储过程,以 TableStateIdxWppChroma、TableMpsValWppChroma、TableStatCoeffWppChroma作为输出。
-当条款7.3.8.1中的通用条带片段数据语法的解析结束时,dependent_slice_segments_enabled_flag等于1并且end_of_slice_segment_flag等于1,调用如条款9.3.2.3中规定的上下文变量和Rice参数初始化状态的存储过程,以TableStateIdxDs、TableMpsValDs和TableStatCoeffDs作为输出。
实施例3,设计的亮度/色度的并行波阵面
如果我们对亮度和色度CTU使用不同且独立的CABAC上下文,则由于CABAC上下文的传播在亮度和色度之间是独立的,因此通过设计编码器/解码器可以针对亮度/色度独立进行并行波阵面处理。
该方法需要在亮度CTU和色度CTU之间完全分离上下文,但是可能导致性能损失。
与第一实施例的区别在于,在该实施例中,上下文在亮度CTU和色度CTU之间是完全分离的,使得亮度和色度中的语法元素没有共享的上下文。没有在亮度和色度之间共享的变量,因此在亮度和色度之间没有上下文的传播。同样在该实施例中,即使未启用波阵面并行处理(即,顺序地处理所有CTU),亮度CTU和色度CTU仍可以并行处理(除了当前色度CTU依赖于当前亮度CTU进行预测)。
当启用亮度/色度的并行波阵面时,条带片段报头包含指向比特流的字节对齐入口点列表,这些入口点标记每行中第一个CTU的开始。每行的解码过程从比特流中的相应入口点开始。图8B图示了在WPP的情况下比特流的组织,其中箭头指示在条带报头中指示的字节位置处开始解码的入口点。在该实施例中,在Dual Tree的情况下,给定CTU的亮度和色度的语法数据被分离在比特流的不同子流中。在与WPP的结合中,来自第一行CTU的亮度数据的语法处于可以通过第一入口点访问的第一子流中。来自第一行CTU的色度数据处于可以通过第二入口点访问的第二子流中。来自第二行CTU的亮度数据处于可以通过第三入口点访问的第三子流中,依此类推。
在根据图8B的实施例中,每行有两个子流。在另一实施例中,我们可以针对图片仅使用两个子流,一个用于亮度,一个用于色度。
因此,对于类别4,引入新的语法元素以分别表示亮度和色度CTU,而没有共享上下文。下面示出了qt_split_cu_flag的更改,其中更改带有下划线,并且类似的更改可以应用于其他语法元素。对于表9-8,initValue可以取任何值,并且并非必须与表9-7中所示的qt_split_cu_flag_luma相同。
qt_split_cu_flag_luma[x0][y0]指定了是否将亮度编码单元分割为具有一半水平和垂直尺寸的亮度编码单元。阵列索引x0、y0指定了所考虑的编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当不存在qt_split_cu_flag_luma[x0][y0]时,应用以下:
-如果以下条件中的一个或多个为真,则推断qt_split_cu_flag_luma[x0][y0]的值等于1:
-x0+(1<<log2CbSize)大于pic_width_in_luma_samples。
-y0+(1<<log2CbSize)大于pic_height_in_luma_samples。
-否则,推断qt_split_cu_flag_luma[x0][y0]的值等于0。
表9-7-qt_split_cu_flag_luma的ctxIdx的initValue值
qt_split_cu_flag_chroma[x0][y0]指定了是否将色度编码单元分割为具有一半
水平和垂直尺寸的色度编码单元。阵列索引x0、y0指定了所考虑的编码块的左上亮度样本
相对于图片的左上亮度样本的位置(x0,y0)。
当不存在qt_split_cu_flag_chroma[x0][y0]时,应用以下:
-如果以下条件中的一个或多个为真,则推断qt_split_cu_flag_chroma[x0][y0] 的值等于1:
-x0+(1<<log2CbSize)大于pic_width_in_luma_samples。
-y0+(1<<log2CbSize)大于pic_height_in_luma_samples。
-否则,推断qt_split_cu_flag_chroma[x0][y0]的值等于0。
表9-8-qt_split_cu_flag_chroma的ctxIdx的initValue的值
实施例4,亮度帧内条带和色度帧内条带
在该实施例中,亮度语法和色度语法被分成两个不同的条带。这样,解析在设计上是并行的。色度的重建需要亮度来进行预测,但是如果并置的亮度CTU在亮度帧内条带中已经被编码/解码,则编码器/解码器可以开始色度CTU的重建。在变型中,亮度和色度处于两个不同的条带片段中,因此条带报头是共同的,因而减少了条带报头中冗余语法的开销。
在变型中,亮度和色度处于两个不同的条带片段中,因此条带报头是共同的,因而减少了条带报头中冗余语法的开销。
要注意的是,该实施例允许颜色缩放性。实际上,可以对亮度条带进行解码,而可以丢弃色度条带。在这种情况下,可以获得灰度图像。因此,如果希望分析亮度分量但不需要色度样本,则这是令人感兴趣的功能。在这种情况下,从任何颜色格式到4:0:0的转码也直截了当。
分离的亮度/色度后滤波
对于亮度和色度,解块滤波器已经分开。在亮度和色度树分离的情况下,可以将分离扩展到后滤波器,使得独立地对它们进行后滤波。例如,即使尚未处理第一色度CTU,也可以针对第一亮度CTU处理样本自适应偏移(SAO)。
在HEVC中,每个分量地用信号通知SAO参数,并在相邻CTU之间可以合并SAO参数。SAO合并信息由所有三个颜色分量共享。这在图10中图示。
在对于亮度/色度分量的并行波阵面的情况下,将亮度SAO参数和色度SAO参数的合并分开。这在图11中图示。
在VTM-1.0中,如HEVC中那样,色度分量的滤波判定仅基于块边界强度(“B”)。因此,在亮度和色度解块之间共享的仅有数据是B,其取决于预测类型。这使得与H.264/AVC中不同,可以独立于亮度分量来处理色度分量,在H.264/AVC中色度解块使用为亮度解块做出的判定。
在VTM-1.0中,ALF(自适应环路滤波器)在帧级别进行处理,亮度和色度滤波器参数的分离可以以相同方式进行分离。
所有通道的分离
在所有先前实施例的该变型中,所有通道是分离的,通常为Y、Cb和Cr。这可以应用于所有颜色空间,如RGB、XYZ、…等。这也可以应用于所有颜色格式4:2:0、4:2:2、4:4:4(出于明显的原因,4:0:0除外)。
图12图示了根据实施例的用于使用波阵面并行处理的视频编码的示例性方法1200。在步骤1210,方法1200将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元。在步骤1220,方法1200从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量。在步骤1230,方法1200从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量。在步骤1240,方法1200使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
图13图示了根据实施例的用于使用波阵面并行处理的视频解码的示例性方法1300。在步骤1310,方法1300访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中,亮度分量被独立地细分为多个亮度编码单元,并且色度分量被独立地细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行。在步骤1320,方法1300使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理。
以上描述了各种方法,并且每种方法包括用于实现所描述的方法的一个或多个步骤或动作。除非方法的正确操作需要特定的步骤或动作顺序,否则可以修改或组合特定步骤和/或动作的顺序和/或使用。
在本申请中使用各种数值,例如,图片中的行数或列数的值。应当注意,特定值是出于示例性目的,并且本实施例不限于这些特定值。
本文档中描述的各种方法和其他方面可以用于修改如图1和图2所示的视频编码器100和解码器200的模块,例如,熵编码和/或解码模块(145、230)。此外,本方面不限于VVC或HEVC,并且可以应用于例如其他标准和建议,无论是预先存在的还是将来开发的,以及任何这种标准和建议(包括VVC和HEVC)的扩展。除非另有说明或技术上被排除,否则本文档中描述的各个方面可以单独使用或组合使用。
图14图示了其中实现了各个方面和实施例的系统的示例的框图。系统1400可以体现为包括以下描述的各种组件的装置,并且被配置为执行本申请中描述的一个或多个方面。这样的设备的示例包括但不限于各种电子装置,诸如个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收机、个人视频记录系统、连接的家用电器和服务器。系统1400的元件可以单独或组合地体现在单个集成电路、多个IC和/或分立组件中。例如,在至少一个实施例中,系统1400的处理和编码器/解码器元件分布在多个IC和/或分立组件上。在各种实施例中,系统1400经由例如通信总线或通过专用输入和/或输出端口来通信地耦合到其他系统或其他电子装置。在各个实施例中,系统1400被配置为实现本文档中描述的一个或多个方面。
系统1400包括至少一个处理器1410,该至少一个处理器1410被配置为执行其中加载的指令,以实现例如本文档中描述的各个方面。处理器1410可以包括嵌入式存储器、输入输出接口和本领域已知的各种其他电路。系统1400包括至少一个存储器1420(例如,易失性存储装置和/或非易失性存储装置)。系统1400包括存储装置1440,其可以包括非易失性存储器和/或易失性存储器,包括但不限于EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储装置1440可以包括内部存储装置、附接的存储装置和/或网络可访问的存储装置。
系统1400包括编码器/解码器模块1430,其被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块1430可以包括其自己的处理器和存储器。编码器/解码器模块1430表示可以包括在装置中以执行编码和/或解码功能的模块。众所周知,装置可以包括编码和解码模块之一或两者。另外,如本领域技术人员已知的,编码器/解码器模块1430可以被实现为系统1400的单独元件,或者可以作为硬件和软件的组合并入处理器1410内。
要加载到处理器1410或编码器/解码器1430上以执行本文档中描述的各个方面的程序代码可以存储在存储装置1440中,顺序地加载到存储器1420上,以由处理器1410执行。根据各种实施例,在执行本文档中描述的过程期间,处理器1410、存储器1420、存储装置1440和编码器/解码器模块1430中的一个或多个可以存储各种项目中的一项或多项。这样存储的项目可以包括但不限于输入视频、解码视频或解码视频的一部分、比特流、矩阵、变量以及对等式、公式、运算和运算逻辑的处理的中间或最终结果。
在几个实施例中,处理器1410和/或编码器/解码器模块1430内部的存储器用于存储指令并为编码或解码期间所需的处理提供工作存储器。然而,在其他实施例中,针对这些功能中的一个或更多个,使用处理装置(例如,处理装置可以是处理器1410或编码器/解码器模块1430)外部的存储器。外部存储器可以是存储器1420和/或存储装置1440,例如,动态易失性存储器和/或非易失性闪存。在几个实施例中,外部非易失性闪存用于存储电视的操作系统。在至少一个实施例中,诸如RAM之类的快速外部动态易失性存储器用作用于诸如MPEG-2、HEVC或VVC(通用视频编码)之类的视频编码和解码操作的工作存储器。
可以通过如框1405中所示的各种输入装置来提供对系统1400的元件的输入。这样的输入装置包括但不限于:(i)RF部分,该RF部分接收例如通过广播器经由空中传送的RF信号;(ii)复合输入端子;(iii)USB输入端子;和/或(iv)HDMI输入端子。
在各种实施例中,框1405的输入装置具有如本领域中已知的相关联的相应输入处理元件。例如,RF部分可以与适合于以下的元件相关联:(i)选择所需频率(也称为选择信号,或将信号波段限制为频带),(ii)下变频所选信号,(iii)再次波段限制到更窄频带以选择(例如)在一些实施例中可以称为信道的信号频带,(iv)解调下变频并波段限制的信号,(v)执行纠错,以及(vi)解复用以选择所期望的数据分组流。各种实施例的RF部分包括执行这些功能的一个或多个元件,例如,频率选择器、信号选择器、波段限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可以包括执行各种这些功能的调谐器,包括例如将接收到的信号下变频为较低频率(例如,中频或近基带频率)或基带。在一个机顶盒实施例中,RF部分及其关联的输入处理元件接收经由有线(例如线缆)介质传送的RF信号,并通过滤波、下变频和再次滤波到期望的频带,来执行频率选择。各种实施例重新布置上述(和其他)元件的顺序,去除这些元件中的一些,和/或添加执行类似或不同功能的其他元件。添加元件可以包括在现有元件之间插入元件,例如,插入放大器和模数转换器。在各个实施例中,RF部分包括天线。
另外,USB和/或HDMI端子可以包括相应的接口处理器,用于经由USB和/或HDMI连接将系统1400连接到其他电子装置。应当理解,可以根据需要例如在单独的输入处理IC内或在处理器1410内实现输入处理的各个方面,例如里德-所罗门纠错。类似地,USB或HDMI接口处理的各方面可以根据需要在单独的接口IC内或在处理器1410内实现。解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器1410和与存储器和存储元件结合操作的编码器/解码器1430,以根据需要处理数据流,以在输出装置上呈现。
系统1400的各种元件可以设置在集成壳体内。在集成壳体内,各种元件可以使用合适的连接布置1415互连并在它们之间传输数据,合适的连接布置1415例如是本领域已知的内部总线,包括I2C总线、布线和印刷电路板。
系统1400包括使得能够经由通信信道1460与其他装置进行通信的通信接口1450。通信接口1450可以包括但不限于被配置为经由通信信道1490传送和接收数据的收发器。通信接口1450可以包括但不限于调制解调器或网卡,并且通信信道1490可以例如在有线和/或无线介质内实现。
在各种实施例中,使用诸如IEEE 802.11之类的Wi-Fi网络将数据流式传输到系统1400。通过适于Wi-Fi通信的通信信道1490和通信接口1450,接收这些实施例的Wi-Fi信号。这些实施例的通信信道1490通常连接到接入点或路由器,该接入点或路由器提供对包括因特网的外部网络的访问,以允许流式传输应用和其他过顶(over-the-top)通信。其他实施例使用机顶盒向系统1400提供流式传输的数据,该机顶盒经由输入块1405的HDMI连接传递数据。其他实施例使用输入块1405的RF连接向系统1400提供流式传输的数据。
系统1400可以向包括显示器1465、扬声器1475和其他外设1485的各种输出装置提供输出信号。在实施例的各种示例中,其他外设1485包括独立DVR、盘播放器、立体声系统、照明系统、和基于系统1400的输出提供功能的其他装置中的一个或多个。在各种实施例中,使用诸如AV.Link、CEC、或在有或没有用户干预的情况下启用装置到装置的控制的其他通信协议之类的信令,在系统1400和显示器1465、扬声器1475、或其他外设1485之间传达控制信号。输出装置可以通过各个接口1460、1470和1480经由专用连接而通信地耦合至系统1400。另选地,输出装置可以经由通信接口1450使用通信信道1460而连接至系统1400。在例如电视机的电子装置中,显示器1465和扬声器1475可以与系统1400的其他组件集成在单个单元中。在各种实施例中,显示接口1460包括显示驱动器,例如时序控制器(T Con)芯片。
例如,如果输入1405的RF部分是单独机顶盒的一部分,则显示器1465和扬声器1475可以另选地与一个或多个其他组件分开。在显示器1465和扬声器1475是外部组件的各种实施例中,可以经由专用输出连接来提供输出信号,该专用输出连接包括例如HDMI端口、USB端口或COMP输出。
根据实施例,提出了一种用于使用波阵面并行处理的视频编码的方法,该方法包括:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于使用波阵面并行处理的视频解码的方法,该方法包括:访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频编码的设备,该设备包括一个或多个处理器,其中,所述一个或多个处理器被配置为:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频解码的设备,该设备包括一个或多个处理器,其中,所述一个或多个处理器被配置为:访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理。
根据另一实施例,提出了一种用于视频编码的设备,包括:用于将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元的部件;用于从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量的部件;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及用于使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理的部件。
根据另一实施例,提出了一种用于视频解码的设备,该设备包括:用于访问视频图片的独立细分的亮度分量和独立细分的色度分量的部件,其中亮度分量独立细分为多个亮度编码单元,并且色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到独立细分的多个色度编码单元的当前行;以及用于使用独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对视频图片进行解码,以提供波阵面并行处理的部件。
根据另一实施例,提出了一种包括视频图片的视频信号,该视频信号是通过执行以下而形成的:将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;从独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;从独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及使用独立细分的多个亮度编码单元的基于上下文的自适应二进制编码上下文变量的传播和独立细分的多个色度编码单元的基于上下文的自适应二进制编码上下文变量的传播,对视频图片进行编码,以提供波阵面并行处理。
根据实施例,上下文在亮度分量中的传播独立于上下文在色度分量中的传播。
根据实施例,独立细分的多个亮度编码单元和独立细分的多个亮度编码单元是基于四叉树加二叉树细分而细分的。
根据实施例,用于亮度分量的基于上下文的自适应二进制编码上下文变量从先前行的第二位置中的亮度编码单元传播到当前行的第一位置,并且用于色度分量的基于上下文的自适应二进制编码上下文变量从先前行的第二位置中的色度编码单元传播到当前行的第一位置。
根据实施例,还从亮度分量的并置的亮度编码单元传播用于色度分量的色度编码单元的至少一个基于上下文的自适应二进制编码上下文变量。
根据实施例,在亮度分量和色度分量之间共享一个或多个基于上下文的自适应二进制编码上下文变量。
根据实施例,单独的语法元素用于独立地表示用于亮度分量的基于亮度上下文的自适应二进制编码上下文变量和用于色度分量的基于色度上下文的自适应二进制编码上下文变量。
根据实施例,亮度分量和色度分量处于不同的条带或条带片段中。
根据实施例,亮度分量和色度分量被独立地后滤波。
实施例提供了一种计算机程序,其包括指令,当由一个或多个处理器执行该指令时使一个或多个处理器执行根据以上描述的任何实施例的编码方法或解码方法。本实施例中的一个或多个还提供了一种计算机可读存储介质,其上存储有用于根据上述方法对视频数据进行编码或解码的指令。一个或多个实施例还提供了一种计算机可读存储介质,其上存储有根据上述方法生成的比特流或数据内容。一个或多个实施例还提供一种用于传送或接收根据上述方法生成的比特流或数据内容的方法及设备。
各种实现方式涉及解码。如本申请中所使用的,“解码”可以涵盖例如为了产生适于显示的最终输出而对接收到的编码序列所执行的全部或部分过程。在各种实施例中,这种过程包括通常由解码器执行的一个或多个过程,例如,熵解码、逆量化、逆变换和差分解码。基于特定描述的上下文,短语“解码过程”是旨在专门指代操作的子集,还是广义上指代更广泛的解码过程将是清楚的,并且相信是本领域技术人员很好地理解的。
各种实现方式涉及编码。以与以上关于“解码”的讨论类似的方式,在本申请中使用的“编码”可以包括例如为了产生编码的比特流而对输入视频序列所执行的全部或部分过程。
可以以例如方法或过程、设备、软件程序、数据流或信号来实现本文描述的实现方式。即使仅在单一形式的实现方式的上下文中进行讨论(例如,仅作为方法进行讨论),也可以以其他形式(例如,设备或程序)来实现所讨论的特征的实现方式。设备可以例如以适当的硬件、软件和固件来实现。例如,方法可以在诸如例如处理器之类的设备中实现,该处理器通常指处理装置,包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信装置,诸如例如计算机、蜂窝电话、便携式/个人数字助理(“PDA”)和便于最终用户之间信息通信的其他装置。
对“一个实施例”或“实施例”或“一个实现方式”或“实现方式”及其其他变型的引用意味着结合该实施例描述的特定特征、结构、特性等包括在至少一个实施例中。因此,贯穿说明书各处出现的短语“在一个实施例中”或“在实施例中”或“在一个实现方式中”或“在实现方式中”以及任何其他变型并非必须全部指代相同的实施例。
此外,本说明书或其权利要求可以涉及“确定”各种信息。确定信息可以包括例如以下中的一项或多项:估计信息、计算信息、预测信息或从存储器中取回信息。
此外,本说明书或其权利要求可以涉及“访问”各种信息。访问信息可以包括例如以下中的一项或多项:接收信息、(例如从存储器中)取回信息、存储信息、移动信息、复制信息、计算信息、预测信息或估计信息。
此外,本说明书或其权利要求可以涉及“接收”各种信息。接收与“访问”一样旨在是广义术语。接收信息可以包括例如以下中的一项或多项:访问信息或(例如,从存储器中)取回信息。此外,在诸如例如存储信息、处理信息、传送信息、移动信息、复制信息、擦除信息,计算信息、确定信息、预测信息或估计信息的操作期间,通常以一种或另一种方式涉及“接收”。
本文档中描述和考虑的方面可以以许多不同的形式来实现。下面的图12、图13和图14提供了一些实施例,但是可以构想其他实施例,并且对图12、图13和图14的讨论不限制实现方式的广度。这些方面中的至少一个方面总体上涉及视频编码和解码,并且至少一个其他方面总体上涉及传送所生成或编码的比特流。这些和其他方面可以被实现为方法、设备、上面存储有用于根据所描述的任何方法对视频数据进行编码或解码的指令的计算机可读存储介质、和/或上面存储有根据所描述的任何方法生成的比特流的计算机可读存储介质。
对于本领域普通技术人员显而易见的是,实现方式可以产生被格式化为承载例如可以存储或传送的信息的各种信号。该信息可以包括例如用于执行方法的指令或由所描述的实现方式之一产生的数据。例如,信号可以被格式化为承载所描述的实施例的比特流。这种信号可以被格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码以及用编码的数据流来调制载波。信号承载的信息可以是例如模拟或数字信息。众所周知,信号可以经由各种不同的有线或无线链路传送。信号可以存储在处理器可读介质上。
Claims (15)
1.一种用于视频编码的方法,包括:
将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;
从所述独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;
从所述独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及
使用所述独立细分的多个亮度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播和所述独立细分的多个色度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播,对所述视频图片进行编码。
2.一种用于使用波阵面并行处理的视频解码的方法,包括:
访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中所述亮度分量独立细分为多个亮度编码单元,并且所述色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到所述独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到所述独立细分的多个色度编码单元的当前行;以及
使用所述独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和所述独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对所述视频图片进行解码,以提供波阵面并行处理。
3.一种用于对视频数据进行编码的设备,包括:
一个或多个处理器,其中,所述一个或多个处理器被配置为:
将视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;
从所述独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;
从所述独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及
使用所述独立细分的多个亮度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播和所述独立细分的多个色度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播,对所述视频图片进行编码。
4.一种用于对视频数据进行编码的设备,包括:
一个或多个处理器,其中,所述一个或多个处理器被配置为:
访问视频图片的独立细分的亮度分量和独立细分的色度分量,其中所述亮度分量独立细分为多个亮度编码单元,并且所述色度分量独立细分为多个色度编码单元,并且其中来自先前行的基于上下文的自适应二进制编码上下文变量被传播到所述独立细分的多个亮度编码单元的当前行,并且来自先前行的基于上下文的自适应二进制编码上下文变量被传播到所述独立细分的多个色度编码单元的当前行;以及
使用所述独立细分的多个亮度编码单元的所传播的基于上下文的自适应二进制编码上下文变量和所述独立细分的多个色度编码单元的所传播的基于上下文的自适应二进制编码上下文变量,对所述视频图片进行解码,以提供波阵面并行处理。
5.根据权利要求1或2所述的方法,或者根据权利要求3或4所述的设备,其中,所述独立细分的多个亮度编码单元和所述独立细分的多个亮度编码单元是基于四叉树加二叉树细分而细分的。
6.根据权利要求5所述的方法或设备,其中,用于所述亮度分量的所述基于上下文的自适应二进制编码上下文变量从所述先前行的第二位置中的亮度编码单元传播到所述当前行的第一位置,并且用于所述色度分量的所述基于上下文的自适应二进制编码上下文变量从所述先前行的第二位置中的色度编码单元传播到所述当前行的第一位置。
7.根据权利要求6所述的方法或设备,其中,还从所述亮度分量的并置的亮度编码单元传播用于所述色度分量的色度编码单元的至少一个基于上下文的自适应二进制编码上下文变量。
8.根据权利要求1或2所述的方法,或者根据权利要求3或4所述的设备,其中,在所述亮度分量和所述色度分量之间共享一个或多个基于上下文的自适应二进制编码上下文变量。
9.根据权利要求1或2所述的方法,或者根据权利要求3或4所述的设备,其中,所述基于上下文的自适应二进制编码上下文变量在亮度编码单元中的传播独立于所述基于上下文的自适应二进制编码上下文变量在色度编码单元中的传播。
10.根据权利要求1或2所述的方法,或者根据权利要求3或4所述的设备,其中,单独的语法元素用于独立地表示用于所述亮度分量的基于亮度上下文的自适应二进制编码上下文变量和用于所述色度分量的基于色度上下文的自适应二进制编码上下文变量。
11.根据权利要求1或2所述的方法,或者根据权利要求3或4所述的设备,其中,所述亮度分量和所述色度分量处于不同的条带或条带片段中。
12.根据权利要求1、2和5-11中任一项所述的方法,或者根据权利要求3-11中任一项所述的设备,其中,所述亮度分量和所述色度分量被独立地后滤波。
13.一种非暂时性计算机可读介质,其包含根据权利要求3-12中任一项所述的设备或通过权利要求1、2和4-12中任一项所述的方法生成的数据内容,以用于使用处理器进行回放。
14.一种计算机程序产品,其包括计算指令,用于当由多个处理器之一执行该计算指令时执行根据权利要求1、2和5-12中任一项所述的方法。
15.一种包括视频图片的视频信号,所述视频信号是通过执行以下步骤而形成的:
将所述视频图片的亮度分量和色度分量分别独立地细分为多个亮度编码单元和多个色度编码单元;
从所述独立细分的多个亮度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;
从所述独立细分的多个色度编码单元的先前行向当前行传播基于上下文的自适应二进制编码上下文变量;以及
使用所述独立细分的多个亮度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播和所述独立细分的多个色度编码单元的所述基于上下文的自适应二进制编码上下文变量的传播,对所述视频图片进行编码,以提供波阵面并行处理。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18305833.8 | 2018-06-29 | ||
EP18305833 | 2018-06-29 | ||
EP18306208.2 | 2018-09-17 | ||
EP18306208.2A EP3624450A1 (en) | 2018-09-17 | 2018-09-17 | Wavefront parallel processing of luma and chroma components |
PCT/US2019/038477 WO2020005758A1 (en) | 2018-06-29 | 2019-06-21 | Wavefront parallel processing of luma and chroma components |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112262577A true CN112262577A (zh) | 2021-01-22 |
CN112262577B CN112262577B (zh) | 2024-07-16 |
Family
ID=67145880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980039147.2A Active CN112262577B (zh) | 2018-06-29 | 2019-06-21 | 亮度和色度分量的波阵面并行处理 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11197006B2 (zh) |
EP (1) | EP3815364A1 (zh) |
CN (1) | CN112262577B (zh) |
WO (1) | WO2020005758A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3129377A1 (en) * | 2019-02-08 | 2020-08-13 | Sharp Kabushiki Kaisha | Moving-image coding device and moving-image decoding device |
CN115152210A (zh) | 2020-02-24 | 2022-10-04 | 字节跳动有限公司 | 子图片的高度的推导 |
KR20220143857A (ko) | 2020-03-03 | 2022-10-25 | 바이트댄스 아이엔씨 | 비디오 코딩에서의 저 주파수 비-분리가능 변환 시그널링 |
EP4243413A4 (en) * | 2020-11-05 | 2024-08-21 | Lg Electronics Inc | POINT CLOUD DATA TRANSMISSION DEVICE, POINT CLOUD DATA TRANSMISSION METHOD, POINT CLOUD DATA RECEIVING DEVICE, AND POINT CLOUD DATA RECEIVING METHOD |
US11876970B2 (en) | 2021-07-22 | 2024-01-16 | Tencent America LLC | Non-interleaved separate tree |
US20230035118A1 (en) * | 2021-07-23 | 2023-02-02 | Tencent America LLC | Cross component end of block flag coding |
US20230140628A1 (en) * | 2021-11-04 | 2023-05-04 | Meta Platforms, Inc. | Novel buffer format for a two-stage video encoding process |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018337A (zh) * | 2006-02-10 | 2007-08-15 | 富士施乐株式会社 | 编码装置、解码装置、编码方法、解码方法、计算机可读介质 |
JP2009031519A (ja) * | 2007-07-26 | 2009-02-12 | Nippon Telegr & Teleph Corp <Ntt> | ベクトル量子化符号化装置、ベクトル量子化復号化装置、それらの方法、それらのプログラム、及びそれらの記録媒体 |
CA3056122A1 (en) * | 2012-04-13 | 2013-10-17 | Robert SKUPIN | Low delay picture coding |
US20140003531A1 (en) * | 2012-06-29 | 2014-01-02 | Qualcomm Incorporated | Tiles and wavefront parallel processing |
CN104054347A (zh) * | 2012-01-18 | 2014-09-17 | 高通股份有限公司 | 在视频译码中波前平行处理的使用的指示 |
CN104063522A (zh) * | 2014-07-18 | 2014-09-24 | 国家电网公司 | 一种基于增强微结构和上下文相似度的图像检索方法 |
US20150003518A1 (en) * | 2013-06-28 | 2015-01-01 | Research In Motion Limited | Methods and devices for emulating low-fidelity coding in a high-fidelity coder |
WO2016074147A1 (en) * | 2014-11-11 | 2016-05-19 | Mediatek Singapore Pte. Ltd. | Separated coding tree for luma and chroma |
CN105721881A (zh) * | 2007-01-11 | 2016-06-29 | 汤姆森许可贸易公司 | 对mpeg-4avc高层编码中简档使用语法的方法和装置 |
US20170272748A1 (en) * | 2016-03-21 | 2017-09-21 | Qualcomm Incorporated | Using luma information for chroma prediction with separate luma-chroma framework in video coding |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7830959B2 (en) | 2003-12-26 | 2010-11-09 | Electronics And Telecommunications Research Institute | Apparatus and method for performing intra prediction for image decoder |
US20080123750A1 (en) | 2006-11-29 | 2008-05-29 | Michael Bronstein | Parallel deblocking filter for H.264 video codec |
EP2230849A1 (en) | 2009-03-20 | 2010-09-22 | Mitsubishi Electric R&D Centre Europe B.V. | Encoding and decoding video data using motion vectors |
US10382793B2 (en) | 2015-06-23 | 2019-08-13 | Integrated Device Technology, Inc. | Apparatuses and methods for performing information extraction and insertion on bitstreams |
-
2019
- 2019-06-21 WO PCT/US2019/038477 patent/WO2020005758A1/en active Application Filing
- 2019-06-21 US US17/047,908 patent/US11197006B2/en active Active
- 2019-06-21 EP EP19735690.0A patent/EP3815364A1/en active Pending
- 2019-06-21 CN CN201980039147.2A patent/CN112262577B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018337A (zh) * | 2006-02-10 | 2007-08-15 | 富士施乐株式会社 | 编码装置、解码装置、编码方法、解码方法、计算机可读介质 |
CN105721881A (zh) * | 2007-01-11 | 2016-06-29 | 汤姆森许可贸易公司 | 对mpeg-4avc高层编码中简档使用语法的方法和装置 |
JP2009031519A (ja) * | 2007-07-26 | 2009-02-12 | Nippon Telegr & Teleph Corp <Ntt> | ベクトル量子化符号化装置、ベクトル量子化復号化装置、それらの方法、それらのプログラム、及びそれらの記録媒体 |
CN104054347A (zh) * | 2012-01-18 | 2014-09-17 | 高通股份有限公司 | 在视频译码中波前平行处理的使用的指示 |
CA3056122A1 (en) * | 2012-04-13 | 2013-10-17 | Robert SKUPIN | Low delay picture coding |
US20140003531A1 (en) * | 2012-06-29 | 2014-01-02 | Qualcomm Incorporated | Tiles and wavefront parallel processing |
US20150003518A1 (en) * | 2013-06-28 | 2015-01-01 | Research In Motion Limited | Methods and devices for emulating low-fidelity coding in a high-fidelity coder |
CN104063522A (zh) * | 2014-07-18 | 2014-09-24 | 国家电网公司 | 一种基于增强微结构和上下文相似度的图像检索方法 |
WO2016074147A1 (en) * | 2014-11-11 | 2016-05-19 | Mediatek Singapore Pte. Ltd. | Separated coding tree for luma and chroma |
US20170272748A1 (en) * | 2016-03-21 | 2017-09-21 | Qualcomm Incorporated | Using luma information for chroma prediction with separate luma-chroma framework in video coding |
Non-Patent Citations (1)
Title |
---|
A. WIECKOWSKI: "Thread Parallel Encoding", JOINT VIDEO EXPLORATION TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 10TH MEETING: SAN DIEGO, US, 10–20 APR. 2018, 20 April 2018 (2018-04-20) * |
Also Published As
Publication number | Publication date |
---|---|
CN112262577B (zh) | 2024-07-16 |
US20210144391A1 (en) | 2021-05-13 |
US11197006B2 (en) | 2021-12-07 |
WO2020005758A1 (en) | 2020-01-02 |
EP3815364A1 (en) | 2021-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112262577B (zh) | 亮度和色度分量的波阵面并行处理 | |
CN113228650B (zh) | 基于块的表面的视频编码或解码的量化 | |
CN113196781B (zh) | 管理编解码工具组合和限制 | |
US20240283958A1 (en) | Virtual pipeline for video encoding and decoding | |
US11956430B2 (en) | Method and apparatus for video encoding and decoding based on asymmetric binary partitioning of image blocks | |
CN114208178A (zh) | 用于视频编码和解码的二次变换 | |
US20230421788A1 (en) | Parameter grouping among plural coding units forvideo encoding and decoding | |
EP3624450A1 (en) | Wavefront parallel processing of luma and chroma components | |
WO2020185492A1 (en) | Transform selection and signaling for video encoding or decoding | |
CN114930819A (zh) | 三角形合并模式中的子块合并候选 | |
CN114026863A (zh) | 使用高级语法元素发信号通知解码数据的方法和装置 | |
US12081798B2 (en) | Scaling process for joint chroma coded blocks | |
US20230024223A1 (en) | Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction | |
US20210344962A1 (en) | Method and apparatus for video encoding and decoding with signaling of coding type or coding tree type | |
JP2024513657A (ja) | ビデオエンコード及びデコードのためのテンプレートマッチング予測 | |
JP2022548495A (ja) | 複数参照ラインイントラ予測を用いた最確モードのシグナリング |
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 |