CN104995919B - 用于最末重要系数位置编码中的上下文减少的设备和方法 - Google Patents
用于最末重要系数位置编码中的上下文减少的设备和方法 Download PDFInfo
- Publication number
- CN104995919B CN104995919B CN201380008035.3A CN201380008035A CN104995919B CN 104995919 B CN104995919 B CN 104995919B CN 201380008035 A CN201380008035 A CN 201380008035A CN 104995919 B CN104995919 B CN 104995919B
- Authority
- CN
- China
- Prior art keywords
- index value
- context
- storehouse
- video
- width
- 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 title claims abstract description 49
- 230000009467 reduction Effects 0.000 title description 15
- 230000011664 signaling Effects 0.000 claims description 9
- 230000003044 adaptive effect Effects 0.000 claims description 8
- 238000000151 deposition Methods 0.000 claims 1
- 230000009466 transformation Effects 0.000 description 30
- 238000013139 quantization Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 18
- 238000009826 distribution Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 239000000523 sample Substances 0.000 description 10
- 238000007906 compression Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 8
- 238000001914 filtration Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 230000015654 memory Effects 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 241000196324 Embryophyta Species 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 210000001367 artery Anatomy 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000013074 reference sample Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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/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
-
- 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
-
- 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/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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在一个实施例中,公开了一种视频编码的方法,该方法包括:编码在具有第一宽度的视频块内的最末非零系数的位置,其中最末非零系数的位置被提供为二进制值的串,其中在所述串中的每个二进制值对应于仓位索引值;以及确定针对每个仓位索引值的上下文索引值,其中针对每个仓位索引值的上下文索引值被配置为跨不同宽度的两个或更多个块被共享。
Description
技术领域
本发明总体上涉及视频编码领域,并且更加具体地涉及用于减少在对最末变换位置进行编码时使用的上下文的数目的系统、设备和方法。
相关申请的交叉引用
本申请要求于2012年2月4日递交的、名称为“Chroma Context Reduction forLast Coefficient Position Coding in HEVC”的第61/595,072号美国临时专利申请,于2012年2月5日递交的、名称为“Chroma Context Reduction for Last CoefficientPosition Coding in HEVC”的第61/595,138号美国临时专利申请,以及于2012年2月9日递交的、名称为“Chroma Context Reduction for Last Coefficient Position Coding inHEVC”的第61/597,033号美国临时专利申请的权益,上述美国临时专利申请通过引用被整体并入于此。
背景技术
视频压缩使用块处理用于许多操作。在块处理中,邻近像素的块被分组到编码单元中,并且压缩操作把该像素组当作一个单元对待,以利用编码单元内的邻近像素之间的相关性。基于块的处理通常包括预测编码和变换编码。使用量化的变换编码是一种类型的数据压缩,其通常是“有损的”,因为取自源图像的变换块的量化通常丢弃与源图像中的变换块关联的数据,由此降低其带宽要求但是也常常导致在来自源图像的原始变换块的重现中的质量损失。
MPEG-4AVC(也被称为H.264)是在块处理中使用变换编码的已建立的视频压缩标准。在H.264中,图像被划分为16x16像素的宏块(MB)。每个MB通常进一步被划分为更小的块。使用图像内/图像间预测来预测大小等于或小于MB的块,并且空间变换连同量化一起被应用到预测残差。量化的残差变换系数通常使用熵编码方法(例如可变长度编码或算术编码)来编码。上下文自适应二进制算术编码(CABAC)被引入H.264中用于通过将自适应二进制算术编码技术与一组上下文模型结合来提供基本上无损的压缩效率。在CABAC中,上下文模型选择在提供一定程度的自适应和冗余减少中起作用。H.264规定了针对2D块的两种扫描模式。Z字形扫描用于使用逐行视频压缩技术编码的图像,而备选扫描则针对使用隔行视频压缩技术编码的图像。
被开发用于接替H.264的国际视频编码标准HEVC(高效率视频编码)将变换块大小扩展至16x16和32x32像素以有益于高清晰度(HD)视频编码。HEVC还可以使用包括Z字形在内的各种扫描模式。
在诸如HEVC之类的视频压缩标准内,用于减少空间和时间冗余的编码机制是期望的。正在进行的努力针对提高分别压缩和解压缩视频数据流的编码器和解码器(编码解码器)的效率。因为编码解码器的目的是要减少数字视频帧的大小,由此促进视频的有效存储和通信,所以在编码解码器硬件和编码/解码处理方面的开发继续进行。
附图说明
本公开内容的细节(既关于其结构又关于其操作)可以通过研究附图来部分地理解,其中同样的附图标记指代同样的部分。附图不必要按比例,反而将重点放在说明公开内容的原理上。
图1A是在其中可以使用本公开内容的各种实施例的视频系统;
图1B是在其上可以实施本公开内容的实施例的计算机系统;
图2A、图2B、图3A和图3B图示了根据本公开内容的实施例的某些视频编码原理;
图4A和图4B示出了根据本公开内容的实施例的用于编码器和解码器的可能架构;
图5A和图5B图示了根据本公开内容的实施例的另外的视频编码原理;
图6A至图6D是示出了示例常规上下文模型的图;
图7A至图7C是示出了示例常规上下文模型的图;
图8A至图8C是示出了根据本公开内容的实施例的示例上下文模型的图;
图9A至图9C是示出了根据本公开内容的实施例的示例上下文模型的图;
图10A、图10B、图10C-1和图10C-2是示出了根据本公开内容的实施例的示例上下文模型的图;
图11是根据本公开内容的实施例的上下文减少的最末重要系数位置编码的流程图;
图12是根据本公开内容的实施例的用于具有带有非零系数的至少一个子块的16x16TU的示例L0重要性图(significance map);
图13是用于图12的示例L0重要性图的示例对应L1重要性图。
图14是根据本公开内容的实施例的用于使用最末重要系数编码的MxN变换单元(TU)的一般解码过程的示例流程图;以及
图15是根据本公开内容的实施例的用于使用最末子块位置编码的MxN变换单元(TU)的一般解码过程的示例流程图。
发明内容
因此,本文提供了通过减少在对最末变换位置进行编码时使用的上下文的数目来提高视频压缩效率的系统和方法。本文描述的方法和系统总体上涉及诸如视频编码器和解码器之类的视频处理。
在第一方面,提供了一种视频编码的方法,该方法包括:编码在具有第一宽度的视频块内的最末非零系数的位置,其中最末非零系数的位置被提供为二进制值的串,其中在所述串中的每个二进制值对应于仓位索引值;以及确定针对每个仓位索引值的上下文索引值,其中针对每个仓位索引值的上下文索引值被配置为跨不同宽度的两个或更多个块被共享。在第一方面的实施例中,上下文索引值根据以下等式从仓位索引值得出:上下文索引=仓位索引>>(log2(TUsize)-2),其中>>表示移位操作并且TUsize指的是视频块的宽度。在第一方面的实施例中,上下文索引值使用查找表从仓位索引值得出。在第一方面的实施例中,查找表包括具有针对为8的块宽度的三个上下文索引值的上下文模型。在第一方面的实施例中,与使用三个上下文索引值关联的编码效率的损耗小于1%。在第一方面的实施例中,查找表包括具有针对为16的块宽度的三个上下文索引值的上下文模型。在第一方面的实施例中,与使用三个上下文索引值关联的编码效率的损耗小于1%。在第一方面的实施例中,查找表包括具有针对为16的块宽度的六个上下文索引值的上下文模型。在第一方面的实施例中,与使用六个上下文索引值关联的编码效率的损耗小于1%。在第一方面的实施例中,查找表包括具有针对为16的块宽度的七个上下文索引值的上下文模型。在第一方面的实施例中,与使用七个上下文索引值关联的编码效率的损耗小于1%。在第一方面的实施例中,上下文索引值包括:与块关联的大小;块内的系数中的给定系数根据扫描顺序的位置;以及扫描顺序。在第一方面的实施例中,编码最末非零系数的位置经由熵编码被实现。在第一方面的实施例中,熵编码包括上下文自适应二进制算术编码(CABAC)。在第一方面的实施例中,CABAC包括用于最末非零系数的位置的截位码字。在第一方面的实施例中,编码最末非零系数的位置包括通过独立地信令其X坐标和Y坐标来明确地编码最末非零系数的位置。在第一方面的实施例中,在编码其它非零系数的位置之前编码最末非零系数的位置。在第一方面的实施例中,熵编码包括高效率视频编码(HEVC)。在第一方面的实施例中,编码包括解码,并且其中解码标识视频块内的最末非零系数的位置。在第一方面的实施例中,该方法在具有处理器和耦合到所述处理器的存储器的计算机上被实现,其中至少一些步骤使用所述处理器被执行。
在第二方面,提供了一种用于编码视频的装置,该装置包括视频编码器,视频编码器被配置为:编码在具有第一宽度的视频块内的最末非零系数的位置,其中最末非零系数的位置被提供为二进制值的串,其中在所述串中的每个二进制值对应于仓位索引值;以及确定针对每个仓位索引值的上下文索引值,其中针对每个仓位索引值的上下文索引值被配置为跨不同宽度的两个或更多个块被共享。在第二方面的实施例中,上下文索引值根据以下等式从仓位索引值得出:上下文索引=仓位索引>>(log2(TUsize)-2),其中>>表示移位操作并且TUsize指的是视频块的宽度。在第二方面的实施例中,上下文索引值使用查找表从仓位索引值得出。在第二方面的实施例中,查找表包括具有针对为8的块宽度的三个上下文索引值的上下文模型。在第二方面的实施例中,与使用三个上下文索引值关联的编码效率的损耗小于1%。在第二方面的实施例中,查找表包括具有针对为16的块宽度的三个上下文索引值的上下文模型。在第二方面的实施例中,与使用三个上下文索引值关联的编码效率的损耗小于1%。在第二方面的实施例中,查找表包括具有针对为16的块宽度的六个上下文索引值的上下文模型。在第二方面的实施例中,与使用六个上下文索引值关联的编码效率的损耗小于1%。在第二方面的实施例中,查找表包括具有针对为16的块宽度的七个上下文索引值的上下文模型。在第二方面的实施例中,与使用七个上下文索引值关联的编码效率的损耗小于1%。在第二方面的实施例中,上下文索引值包括:与块关联的大小;块内的系数中的给定系数根据扫描顺序的位置;以及扫描顺序。在第二方面的实施例中,编码最末非零系数的位置经由熵编码被实现。在第二方面的实施例中,熵编码包括上下文自适应二进制算术编码(CABAC)。在第二方面的实施例中,CABAC包括用于最末非零系数的位置的截位码字。在第二方面的实施例中,编码最末非零系数的位置包括通过独立地信令其X坐标和Y坐标来明确地编码最末非零系数的位置。在第二方面的实施例中,其中在编码其它非零系数的位置之前编码最末非零系数的位置。在第二方面的实施例中,熵编码包括高效率视频编码(HEVC)。在第二方面的实施例中,视频编码器包括被配置为解码视频块内的最末非零系数的位置的视频解码器。在第二方面的实施例中,该装置包括以下各项中的至少一项:集成电路;微处理器;以及包括视频解码器的无线通信设备。在第二方面的实施例中,该装置包括以下各项中的至少一项:集成电路;微处理器;以及包括视频编码器的无线通信设备。
具体实施方式
在本公开内容中,术语“编码(coding)”指的是发生在编码器处的编码或者发生在解码器处的解码。相似地,术语编码器指的是编码器、解码器或者组合的编码器/解码器(CODEC)。术语编码器、编码器、解码器和CODEC全部指的是被设计用于与本公开内容一致的影像和/或视频数据的编码(编码和/或解码)的特定机器。影像和视频数据一般由三个分量组成——一个用于表示像素的亮度的亮度分量并且两个用于表示像素的颜色信息的色度分量。
本讨论以对数字影像压缩领域中已知的一些术语和技术的非常简短的概述来开始。这种概述不是意在详细教导已知领域。本领域技术人员知道如何在教科书中和在相关标准中找到更多的细节。
现在将描述在其中可以使用本公开内容的实施例的视频系统的示例。要理解的是,在图中被描绘为功能块的元件可以被实现为硬件、软件或其组合。此外,本公开内容的实施例还可以被用在其它系统上,诸如在个人计算机、智能电话或平板计算机上。
参照图1A,视频系统(总体上标记为10)可以包括有线电视网络的头端(head end)100。头端100可以被配置为递送视频内容到邻居129、130和131。头端100可以在头端的层次结构内进行操作,其中在层次结构中越高的头端一般具有越大的功能。头端100可以被通信链接到卫星天线(satellite dish)112并且从其接收非本地节目的视频信号。头端100还可以被通信链接到递送本地节目到头端100的本地站114。头端100可以包括解码从卫星天线112接收的视频信号的解码器104、从本地站114接收本地节目的离播接收器(off airreceiver)106、路由头端100的各种部件之间的数据通信的切换器102、编码视频信号用于递送到客户的编码器116、调制信号用于递送到客户的调制器118以及将各种信号组合到单个多通道传输中的组合器120。
头端100还可以被通信链接到混合光纤电缆(HFC)网络122。HFC网络122可以被通信链接到多个节点124、126和128。节点124、126和128均可以通过同轴电缆被链接到邻居129、130和131之一,并且递送电缆电视信号到该邻居。更加详细地示出了图1A的邻居之一130。邻居130可以包括许多住宅,这些住宅包括图1A中示出的家132。在家132内可以是被通信链接到视频显示器136的机顶盒134。机顶盒134可以包括第一解码器138和第二解码器140。第一解码器138和第二解码器140可以被通信链接到用户接口142和大容量存储设备144。用户接口142可以被通信链接到视频显示器136。
在操作期间,头端100可以从卫星天线112和本地站114接收本地节目视频信号和非本地节目视频信号。非本地节目视频信号可以以数字视频流的形式被接收,而本地节目视频信号则可以被接收为模拟视频流。在一些实施例中,本地节目也可以被接收为数字视频流。数字视频流可以被解码器104解码并且响应于客户请求被发送到切换器102。头端100还可以包括被通信链接到大容量存储设备110的服务器108。大容量存储设备110可以存储包括视频点播(VOD)在内的各种类型的视频内容,服务器108可以检索这些视频内容并且将其提供给切换器102。切换器102可以将本地节目直接路由给调制本地节目的调制器118,并且将非本地节目(包括任何VOD)路由给编码器116。编码器116可以数字编码非本地节目。经编码的非本地节目然后可以被发送给调制器118。组合器120可以被配置为接收经调制的模拟视频数据和经调制的数字视频数据,组合视频数据并且经由多个射频(RF)通道将它发送给HFC网络122。
HFC网络122可以将组合的视频数据发送给节点124、126和128,这些节点可以将数据重新发送给它们的相应邻居129、130和131。家132可以在机顶盒134处(更具体地,在第一解码器138和第二解码器140处)接收该视频数据。第一解码器138和第二解码器140可以解码视频数据的数字部分并且提供经解码的数据给用户接口142,用户接口142然后可以提供经解码的数据给视频显示器136。
图1A的编码器116以及解码器138和解码器140(以及本文描述的所有其它步骤和功能)可以被实现为包括存储在计算机可读存储设备(诸如存储器或另一类型的存储设备)上的计算机可读指令的计算机代码。计算机代码可以在计算机系统上由处理器(诸如专用集成电路(ASIC)或其它类型的电路)来执行。例如,用于实现编码器116的计算机代码可以在驻留在头端100中的计算机系统(诸如服务器)上被执行。另一方面,用于解码器138和解码器140的计算机代码可以在构成一种类型的计算机系统的机顶盒134上被执行。代码可以作为由源代码、目标代码、可执行代码或者其它格式的程序指令组成的软件程序而存在。应当理解的是,用于图1A中示出的各种部件的计算机代码可以驻留在系统10中的任何地方或者被确定为期望的或有利的其它地方(诸如在云网络中)。此外,假如指令可以被一个或多个部件有效地执行,那么计算机代码可以位于一个或多个部件中。
图1B示出了在其上可以执行用于编码器116以及解码器138和解码器140的计算机代码的计算机系统的示例。计算机系统(总体上标记为400)包括可以实现或执行执行本文描述的一些或所有方法、功能和其它步骤的软件指令的处理器401或者处理电路。来自处理器401的命令和数据可以通过例如通信总线403被传达。计算机系统400还可以包括诸如随机存取存储器(RAM)之类的计算机可读存储设备402,用于处理器401的软件和数据可以在运行期间驻留其中。存储设备402还可以包括非易失性数据存储器。计算机系统400可以包括用于连接到网络的网络接口404。其它已知的电子部件可以被添加或者替换计算机系统400中描绘的部件。计算机系统400可以驻留在头端100中并且执行编码器116,并且还可以被包括在机顶盒134之中用于执行解码器138和解码器140。此外,计算机系统400可以驻留在除头端100和机顶盒134之外的地方,并且可以小型化以便被集成到智能电话或平板计算机中。
视频编码系统可以通过去除视频数据中的冗余(例如通过去除可以被丢弃而不会非常不利地影响重现保真度的那些单元)来实现压缩。因为视频信号发生在时间和空间中,所以大多数视频编码系统利用在这些信号中存在的时间冗余和空间冗余两者。通常,连续帧之间存在高度时间相关性。这在空间域中对于彼此靠近的像素也是如此。因此,通过仔细利用这些时空相关性来实现高压缩增益。
现在将提供在本公开内容的实施例中视频数据如何通过编码器116以及解码器138和解码器140被编码和解码的高级别描述。在该实施例中,编码器和解码器根据高效率视频编码(HEVC)方法进行操作。HEVC是基于块的混合空间和时间预测编码方法。在HEVC中,如在图2A中示出的,输入图像首先被划分为叫作LCU(最大编码单元)或CTB(编码树块)的方形块。不像其它视频编码标准(其中基本编码单元是16x16像素的宏块),在HEVC中,LCU可以大到128x128像素。LCU可以被划分为叫作CU(编码单元)的四个方形块,其是LCU大小的四分之一。每个CU可以被进一步拆分成是原始CU大小的四分之一的四个更小的CU。可以重复拆分过程直到满足某些准则。图3A示出了被划分成CU的LCU的示例。一般而言,对于HEVC,使用的最小CU(例如,如下面进一步详细描述的叶节点)被认为是CU。
特定LCU如何被拆分成CU可以通过四叉树来表示。在四叉树的每个节点处,如果节点被进一步拆分成子节点,则标志被设置为“1”。否则,标志被复位在“0”处。例如,图3A的LCU划分可以通过图3B的四叉树来表示。这些“拆分标志”可以与视频比特流中的其它标志(包括跳跃模式标志、合并模式标志以及预测单元(PU)模式标志等)一起被联合编码。在图3B的四叉树的情况下,拆分标志10100可以作为开销(overhead)与其它标志一起被编码。针对给定CU的语法信息可以被递归地定义,并且可以取决于CU是否被拆分成子CU。
未拆分的节点(例如对应给定四叉树中的终端或者“叶”节点的节点)可以包括一个或多个预测单元(PU)。一般而言,PU表示对应CU的全部或一部分,并且包括用于出于执行针对CU的预测的目的而针对PU检索参考样本的数据。因此,如在图2B中示出的,在四叉树的每个叶处,2Nx2N的CU可以拥有四种可能的模式(NxN、Nx2N、2NxN和2Nx2N)之一。虽然针对2Nx2N CU而被示出,但是可以使用具有不同尺寸和对应模式(例如方形或矩形)的其它PU。CU可以在空间上或者在时间上被预测编码。如果CU以帧内模式被编码,则CU的每个PU可以有其自己的空间预测方向。如果CU以帧间模式被编码,则CU的每个PU可以有其自己的(多个)运动矢量和关联的(多个)参考图像。定义运动矢量的数据例如可以描述运动矢量的水平分量、运动矢量的竖直分量、运动矢量的分辨率(例如四分之一像素精度或八分之一像素精度)、运动矢量所指向的参考帧和/或运动矢量的参考列表(例如列表0或列表1)。此外,运动矢量预测器索引可以被用于标识运动矢量预测器(例如左近邻的MV、同位近邻的MV)。用于CU定义CU的一个或多个PU的数据还可以描述例如将CU划分成一个或多个PU。划分模式在CU未被编码、被帧内预测模式编码还是被帧间预测模式编码之间可以不同。
一般而言,在帧内预测编码中,高级别的空间相关性存在于帧内的邻近块之间。因此,块可以根据附近的经编码和经重构的块来预测,从而产生帧内预测。在一些实施例中,预测可以通过经先前编码的样本(位于当前块的上面和左边)的加权平均来形成。编码器可以选择最小化原始与预测之间的差异或代价的模式,并且在控制数据中信令该选择。
一般而言,在帧间预测编码中,视频序列在各帧之间具有高的时间相关性,使得当前帧中的块能够由经先前编码的帧(被称为参考帧)中的一个区域(或者在双向预测的情况下两个区域)来精确描述。帧间预测利用经先前编码和经重构的参考帧来开发一种使用基于块的运动估计和补偿技术的预测。
紧随用于产生预测数据和残差数据的帧内预测或帧间预测编码,并且紧随用于产生变换系数的任何变换(诸如在H.264/AVC中使用的4x4或8x8整数变换或者离散余弦变换(DCT)),可以执行变换系数的量化。在一些实施例中,使用例如HEVC中的变换跳跃模式可以旁路任何变换操作。量化一般指的是这样的过程,其中例如通过将高精度变换系数转换成有限数目的可能值来对变换系数进行量化,以可能地减少被用于表示系数的数据量。下面将更加详细地讨论这些步骤。
每个CU还可以被划分为变换单元(TU)。在一些实施例中,块变换操作在一个或多个TU上被执行,以解相关块内的像素并且将块能量压缩到变换块的低阶系数中。在一些实施例中,一个8x8或4x4的变换可以被应用。在其它实施例中,一组不同大小的块变换可以被应用到CU,如在图5A中示出的,其中左边的块是被划分成PU的CU,而右边的块是关联的一组变换单元(TU)。CU内的每个块变换的大小和位置由单独的四叉树(叫作RQT)来描述。图5B示出了用于图5A的示例中的CU的TU的四叉树表示。在该示例中,11000作为开销的一部分被编码并且被发送。如被理解的,CU、PU和TU可以具有NxN的大小或者MxN(或NxM)的大小,其中N≠M。
任何给定CU的TU和PU可以用于不同的目的。TU通常用于变换、量化和编码操作,而PU通常用于空间和时间预测。对于给定的CU,PU数目与TU数目之间不一定存在直接联系。
视频块可以包括在像素域中的像素数据的块或者例如在应用变换之后的变换域中的变换系数的块,上述变换诸如对给定视频块的残差数据的离散余弦变换(DCT)、整数变换、小波变换或概念上相似的变换,其中残差数据表示针对块的视频数据和针对块生成的预测数据之间的像素差。在某些情况下,视频块可以包括变换域中经量化的变换系数的块,其中,在对给定视频块的残差数据应用变换之后,产生的变换系数也被量化。在视频编码中,量化是引入损耗的步骤,使得比特率与重构质量之间的平衡可以被建立。下面将进一步讨论这些步骤。
块划分在基于块的视频编码技术中担任重要用途。使用更小的块来编码视频数据可以导致对视频帧的包括高级别细节的位置的数据的更好的预测,并且可以因此减少被表示为残差数据的产生的误差(例如预测数据与源视频数据的偏差)。一般而言,预测通过对各种尺寸的样本块之间的相关性进行建模来利用视频序列中的空间或时间冗余,使得仅仅实际信号与预测信号之间的小差值需要被编码。针对当前块的预测根据已经被编码的样本来创建。虽然潜在地减少残差数据,然而,这样的技术可能需要另外的语法信息来指示更小的块如何相对于视频帧被划分,并且可能导致增加的编码视频比特率。因此,在一些技术中,块划分可以依赖于平衡期望的残差数据的减少与由于另外的语法信息导致的经编码的视频数据的比特率的增加。
一般而言,块及其各种划分(例如子块)可以被认为是视频块。另外,片段(slice)可以被认为是多个视频块(例如宏块或编码单元)和/或子块(宏块的划分,或者诸如PU、TU等的子块之类的子编码单元)。每个片段可以是视频帧的可独立解码的单元。备选地,帧本身可以是可解码单元,或者帧的其它部分可以被定义为可解码单元。此外,GOP(也称为图像组)可以被定义为可解码单元。
根据本公开内容的实施例,编码器116(图1A)可以由如在图4A中示出的若干功能模块组成。这些模块可以被实现为硬件、软件或者两者的任意组合。给定当前PU(x),预测PU(x')可以首先通过空间预测或者时间预测来获得。该空间或时间预测可以分别由空间预测模块129或时间预测模块130来执行。
存在空间预测模块129可以每PU执行的若干可能的空间预测方向,包括水平的、竖直的、45度对角的、135度对角的、DC、平面的等。一般而言,针对亮度PU和色度PU,空间预测可以被不同地执行。例如,包括亮度帧内模式在内,叫作IntraFromLuma的另外的模式可以用于色度帧内预测模式。语法指示每PU的空间预测方向。
编码器116(图1A)可以通过运动估计操作来执行时间预测。具体地,时间预测模块130(图4A)可以通过参考图像搜索当前PU的最佳匹配预测。最佳匹配预测可以由运动矢量(MV)和关联的参考图像(refIdx)来描述。一般地,B图像中的PU可以具有多达两个MV。MV和refIdx两者可以是比特流中的语法的一部分。
预测PU然后可以从当前PU中减去,从而产生残差PU(e)。通过分组与CU关联的残差PU(e)而生成的残差CU然后可以通过变换模块117一次一个变换单元(TU)地变换,从而产生变换域中的残差PU(E)。为了完成这一任务,变换模块117可以使用例如方形或非方形块变换。
再次参照图4A,变换系数E然后可以被量化器模块118量化,从而将高精度变换系数转换成有限数目的可能值。量化过程可以减少与一些或所有系数关联的比特深度。例如,在量化期间,n比特值可以被下舍入为m比特值,其中n大于m。在一些实施例中,外部边界条件用于产生修改的一个或多个变换系数。例如,较低的范围或值可以用于确定变换系数是否被赋予非零值或者只是被归零。如应当理解的,量化是有损操作,并且由量化产生的损耗一般不能被恢复。
量化系数然后可以被熵编码模块120熵编码,从而产生最终的压缩比特。下面将更加详细地讨论由熵编码模块120执行的具体步骤。应当注意的是,上面描述的预测、变换和量化可以针对任何视频数据块(例如,对于CU的PU和/或TU,或者对于宏块)根据指定的编码标准来执行。
为了便于时间和空间预测,编码器116还可以提取量化的变换系数E并且使用解量化器模块122解量化它们,从而产生解量化的变换系数E'。解量化的变换系数然后被逆变换模块124逆变换,从而产生重构的残差PU(e’)。重构的残差PU(e’)然后被加到对应的预测x'(空间的或时间的)以形成重构的PU(x”)。
仍然参照图4A,解块滤波(DBF)操作可以首先在重构的PU(x”)上执行以减少块效应(blocking artifact)。在完成针对经解码的图像的解块滤波过程之后,可以有条件地执行样本自适应偏移(SAO)过程,其补偿重构像素与原始像素之间的像素值偏移。在一些实施例中,DBF操作和SAO过程两者通过自适应环路滤波器功能来实现,该功能可以由环路滤波器模块126通过重构的PU有条件地来执行。在一些实施例中,自适应环路滤波器功能最小化输入图像与输出图像之间的编码失真。在一些实施例中,环路滤波器模块126在帧间图像预测环路期间进行操作。如果重构的图像是参考图像,那么它们可以被存储在参考缓冲器128中以用于将来的时间预测。
HEVC指定了以解块滤波(DBF)首先被应用并且样本自适应偏移(SAO)滤波随后被应用的顺序被应用的两个环路滤波器。该DBF与由H.264/MPEG-4AVC使用的DBF类似,但是具有更加简单的设计以及对并行处理的更好的支持。在HEVC中,DBF仅仅适用于8x8样本网格,而在H.264/MPEG-4AVC的情况下,DBF适用于4x4样本网格。DBF使用8x8样本网格,是由于其不造成明显的退化,并且因为DBF不再造成与其它操作的级联交互而显著改善了并行处理。另一个改变是,HEVC仅仅允许0至2的三个DBF强度。HEVC还要求,DBF必须首先将针对竖直边缘的水平滤波应用到图像并且仅在那之后其将针对水平边缘的竖直滤波应用到图像。这允许多个并行线程被用于DBF。
SAO滤波过程在DBF之后被应用并且通过使用例如包括基于由编码器做出的直方图分析的一些参数的查找表而使其允许更好地重构原始信号幅度。SAO滤波有两个基本类型,它们是边缘偏移(EO)类型和带偏移(BO)类型。可以每编码树块(CTB)应用SAO类型之一。边缘偏移(EO)类型具有四个子类型,它们对应于沿着四个可能的方向(例如,水平的、竖直的、135度的和45度的)处理。对于给定的EO子类型,边缘偏移(EO)处理通过使用四个不同梯度模式之一将像素的值与其近邻中的两个近邻进行比较来操作。偏移在四个梯度模式中的每个梯度模式中被应用到像素。对于不在梯度模式之一中的像素值,不应用偏移。带偏移(BO)处理直接基于被拆分成32个带的样本幅度。偏移被应用到32个带中的16个带中的像素,其中一组16个带对应于BO子类型。SAO滤波过程被设计为通过添加偏移到样本值来减少相比于原始信号的失真。它可以增加边缘锐度并且减少振铃效应(ringing artifact)和脉冲效应(impulse artifact)。
在本公开内容的实施例中,帧内图像(诸如I图像)和帧间图像(诸如P图像或B图像)被编码器116(图1A)支持。帧内图像可以在不参照其它图像的情况下被编码。因此,空间预测可以用于帧内图像内的CU/PU。帧内图像提供解码可以开始的可能点。另一方面,帧间图像一般以高压缩为目的。帧间图像支持帧内预测和帧间预测两者。帧间图像中的CU/PU在空间上或者在时间上被预测编码。时间参考是经先前编码的帧内图像或帧间图像。
现在将更加详细地描述根据实施例的熵编码模块120(图4A)的操作。量化变换域系数块的熵编码可以基于一个或多个上下文模型。例如,熵编码模块120提取从量化器模块118接收的量化系数矩阵,并且用其生成表示所有量化系数的符号的符号矩阵以及生成重要性图。重要性图可以是矩阵,其中每个元素指定量化系数矩阵内的(多个)非零量化系数的(多个)位置。具体地,给定经量化的、2D变换的矩阵,如果在位置(x,y)处的量化系数的值是非零的,则其可以被认为是重要的并且为关联的重要性图中的位置(x,y)分配“1”。否则,将“0”分配给重要性图中的位置(x,y)。一个或多个上下文模型被要求用于不同编码信息的熵编码。
在一些熵编码标准中,在熵编码器部分内的上下文处理与在其它重要系数的位置之前被编码的最末重要系数的位置一起来执行。最末系数的位置可以通过使用一元代码(例如0或1)信令其X坐标和Y坐标来明确地进行编码。X坐标和Y坐标信令可以是独立的,亮度和色度信令也可以是独立的。
在一些实施例中,最末重要系数的CABAC编码被修改。例如,码字结构可以被用于表示最末重要系数的位置。例如,表1示出了关于码字结构如何可以被用于定位或标识大小为8x8的TU中的最末分量的示例性表格。最末位置分量的等级指的是对于每个X方向和Y方向的最末分量的位置。应当理解的是,沿X坐标或方向的位置是沿块的宽度(水平)的位置,而沿Y坐标的位置是沿块的高度(竖直)的位置。因此,对于大小为8x8的TU,对于每个方向X、Y存在范围从0至7的8个位置。
表1:针对TU8x8的二进制化
截位一元(truncated unary)(上下文模型)还可以被称为前缀或前缀代码。定点二元(fixed binary)(旁路(bypass))还可以被称为后缀或后缀代码。截位一元值描述上下文模型。如本文所使用的,“上下文模型”被用于CABAC引擎中以编码二进制符号。上下文模型描述编码符号是“1”而不是“0”的概率。如本文所使用的,“仓位索引”指示在前缀代码内每个仓位的位置。每个仓位由CABAC引擎使用分配的上下文模型来编码。应当理解的是,对于任何给定的TU,非零值通常(例如,基于概率)位于TU的上半或左上象限中。因此,最末重要系数也可能将位于该区域中(例如对于X和Y两者在位置0至3中)。因此,在一些实施例中,使用截位或较短码字用于最有可能的位置节省了比特和存储/处理时间。
仍然参照表1,如可以看到的,最短码字被分配至非零值或系数的最有可能的位置。在一些实施例中,用于缩短或截位码字的另一种方式是分配前缀和后缀给较后面的非零值(以及非零值的更加不太可能的位置)。f_值指定后缀值,例如0或1。对于最短码字(例如位置0至3),仅分配前缀。对于较长码字(例如位置4至8),可以分配前缀和后缀。例如,对于位置(4,5)的系数,发送的码字将是111100111101。作为另一个示例,对于位置(4,6)的系数,发送的码字将是111100111110。因此,可以看到,取决于值(例如,(4或5)或者(6或7)),前缀保持相同,但是不同的后缀被附加用于区分被分组到一起的值(例如,(4和5)或者(6和7))。
表2、表3和表4表示码字结构如何可以被用于定位或标识大小分别为4x4、16x16和32x32的TU中的最末分量。
表2:针对TU4x4的二进制化
表3针对TU16x16的二进制化
表4针对TU32x32的二进制化
图6A至图6D描绘了示出具有仓位的最小重叠或共享的上下文(例如仓位索引)的模型。通过示例的方式,在上下文被单独地但相似地被用于Y坐标的情况下,上下文仅针对X坐标示出。该示例示出了被选择的上下文的共享,这通过在选择的连续仓位中使用相同的上下文编号来指示。例如,在图6C中,上下文18和19在多个仓位之间被共享,而在图6D中,上下文30、31、32、33、34、35、36和37在多个仓位之间被另外共享。在其中具有X的仓位标识不需要新上下文的仓位。
在图6的模型中示出的上下文模型的数目包括针对4x4TU的3个上下文模型(图6A)、针对8x8TU的7个上下文模型(图6B)、针对16x16TU的12个上下文模型(图6C)以及针对32x32TU的16个上下文模型(图6D)。假设上下文模型示出了用于亮度(Luma)编码的X坐标,则该示例总共需要3+7+12+16=38个上下文。对于色度(Chroma)编码,最大块宽度是16,所以使用该示例,其需要3+7+12=22个上下文。在一些实施例中,用于亮度分量的上下文模型不同于用于色度分量的上下文模型。
图7A至图7C描绘了示出具有增加的仓位的重叠量或共享量(或者上下文的减少)的上下文的模型。该示例示出了被选择的上下文的共享,这通过在选择的连续仓位中使用相同的上下文编号来指示。例如,在图7B中,上下文5在多个仓位之间被共享,而在图7C中,上下文9和10在多个仓位之间被共享。一般而言,因为提供了多达16的块大小或宽度,所以图7图示了用于编码色度分量的最末位置的上下文分配表。
在图7的模型中示出的上下文模型的数目包括针对4x4TU的3个上下文模型(图7A)、针对8x8TU的4个上下文模型(图7B)以及针对16x16TU的5个上下文模型(图7C)。假设上下文模型示出了用于色度(Chroma)编码的X坐标,最大块宽度是16,所以使用该示例,其需要3+4+5=12个上下文。
如到目前为止所描述的,表1至表4示出了针对最末位置分量的每个可能量级(magnitude)的具体前缀(截位一元模式)和后缀(旁路模式)的组合。前缀代码中的每个仓位索引被分配以如图6至图10所示的特定上下文模型。应当理解的是,仓位索引0对应于前缀代码的最高比特(最左边的比特)。例如,对于根据表3(针对TU 16x16的二进制化)的具有被标示为“110”的3个仓位的码字“2”,仓位索引“0”的值是“1”,仓位索引“1”的值是“1”并且仓位索引3的值是“0”。
在一些实施例中,对于例如一个或多个亮度TU和色度TU,用于最末重要性系数编码的上下文的总数目还可以进一步减少。在一些实施例中,可以通过每TU大小给X或Y的几个连续仓位分配相同的上下文来减少上下文的数目。例如,如上面参照图6和图7所描述的,针对TU大小的X或Y的第一仓位和第二仓位可以被分配以相同的上下文。针对不同的TU大小,上下文的减少还可以通过给X或Y的某些仓位分配相同的上下文来实现。针对不同的TU大小,这某些仓位可以处在相对类似的X或Y的重要比特位置。例如,在4x4TU和8x8TU中X或Y的第一仓位可以使用相同的上下文。图8、图9和图10描绘了示出具有增加的仓位重叠量或共享量(或者上下文的减少)的上下文的另外的模型。对仓位共享和上下文减少的进一步讨论可以在于2013年1月18日递交的、名称为“Devices and Methods for ContextReduction in Last Significant Coefficient Position Coding”的第13/745,660号美国专利申请(其通过引用被整体并入于此)中找到。
在图8中,3个相同的上下文被用于4x4TU(图8A)和8x8TU(图8B)两者,并且4个不同的上下文被用于16x16TU(图8C),由此对于色度编码,上下文的总数目从12(例如,如在图7的模型中示出的)减少到7。
在图9中,3个相同的上下文被用于4x4TU(图9A)和8x8TU(图9B)两者,并且3个不同的上下文被用于16x16TU(图9C),由此对于色度编码,上下文的总数目从12(例如,如在图7的模型中示出的)减少到6。
在图10中,3个相同的上下文被用于4x4TU(图10A)、8x8TU(图10B)和16x16(图10C-1或图10C-2)TU,由此对于色度编码,上下文的总数目从12(例如,如在图7的模型中示出的)减少到3。
因此,根据图8至图10的教导,针对每个仓位索引的上下文分配可以被比较以查看上下文的效率或减少,如在表5、表6和表7中示出的,其中表5示出了针对图8的每个仓位索引的上下文分配,表6示出了针对图9的每个仓位索引的上下文分配,以及表7示出了针对图10的每个仓位索引的上下文分配。关于最末位置分量的仓位的最大长度在表8中被示出并且说明了图7至图10之间的差异。
表5-针对图8的上下文索引分配的仓位索引
表6-针对图9的上下文索引分配的仓位索引
表7-针对图10的上下文索引分配的仓位索引
*如图IOC-1所示。对于图IOC-2这将是1。
**如图IOC-1所示。对于图IOC-2这将是2。
表8:关于最末位置分量的仓位的最大长度
根据对表5至表8进行回顾,可以理解的是,用于编码最末重要系数的上下文的数目可以通过跨TU大小在相似频繁性的位置处重复使用或共享相同的上下文而被减少。使用这一技术,可以假设量化系数的分布是跨不同的TU可缩放的(例如它们的统计是相似的)。
现在参照表9和表10,使用图9(总共6个上下文)和图10(总共3个上下文)的上下文分配模型的模拟结果分别被示出在表9和表10中。根据表9和表10,说明率失真的实验结果被突出显示。例如,在具有6个上下文的实验中,亮度分量和色度分量的平均损耗分别小于0.0%和0.7%。相似地,在具有3个上下文的实验中,亮度分量和色度分量的平均损耗分别小于0.0%和0.6%。如在本文中使用的,x%的平均损耗指的是编码效率的损耗,意指减少的上下文模型需要x%的附加比特以实现与通过HEVC参考软件压缩的节目(anchor)或者视频的质量相似的重构质量。根据表9和表10,可以看出,与使用减少的上下文模型(例如具有6或7个上下文)关联的编码效率的损耗通常小于约0.5%,并且更一般地小于约1%。
表9:针对具有6个上下文的上下文索引分配的模拟结果
表10-针对具有3个上下文的上下文索引分配的模拟结果
如在表9和表10中示出的,类别A、类别B、类别C、类别D、类别E和类别F指的是测试视频序列组,并且一般与图像分辨率大小有关。例如,类别A具有2560x1600像素的分辨率大小,类别B具有1920x1080像素的分辨率大小,类别E具有1280x720像素的分辨率大小,类别C具有832x480像素的分辨率,以及类别D具有416x240像素的分辨率。类别F在分辨率大小方面从832x480像素变化到1024x768像素,再变化到1280x720像素,其全部具有不同的帧/率。
Y、U和V分别指的是一个亮度分量和两个色度分量。所有帧内HE/LC、随机存取HE/LC/HE-10和低延迟B HE/LC指的是用于测量效率的不同设置(例如图像类型组合、帧内、P-“低延迟”和B-“随机存取”)。例如,随机存取HE-10条件可以利用诸如自适应环路滤波器之类的高级编码工具,可以在输入视频的比特深度之上增加内部比特深度,并且可以允许某些B图像中的PU既在向后的(例如以显示顺序在前的)方向上也在向前的(例如以显示顺序在后的)方向上使用参考。低延迟B LC条件可以禁用诸如SAO之类的一些高复杂度编码工具,可以允许PU在向后的方向上使用参考,并且可以允许多达每PU两个MV。
如可以理解的,表5至表8表明,给定仓位索引值,上下文索引值可以从适当的表(例如基于TU大小或宽度)中被检索(或查找)和选择。尽管使用减少数目的上下文节省存储器,但是将上下文索引值映射到仓位索引值的表格消耗一些存储器。
因此,在一些实施例中,用于从仓位索引值导出上下文索引值的方法可以提供进一步的存储器节省和更快的操作。可以被用于从仓位索引值导出或确定上下文索引值的示例等式被提供在下面的等式1中:
上下文索引=仓位索引>>(log2(TUsize)-2) 等式1
其中>>表示移位操作并且TUsize指的是变换单元的大小或宽度(例如4、8、16、32等)。在下面的示例中,0比特的移位用于大小为4x4的TU并且因此仓位索引的值与上下文索引相同。
使用等式1,针对4x4TU,以下内容可以被确定:
·如果仓位索引=0,那么上下文索引=0
·如果仓位索引=1,那么上下文索引=1
·如果仓位索引=2,那么上下文索引=2
使用等式1,针对8x8TU,以下内容可以被确定:
·如果仓位索引=0,那么上下文索引=0
·如果仓位索引=1,那么上下文索引=0
·如果仓位索引=2,那么上下文索引=1
·如果仓位索引=3,那么上下文索引=1
·如果仓位索引=4,那么上下文索引=2
使用等式1,针对16x16TU,以下内容可以被确定:
·如果仓位索引=0,那么上下文索引=0
·如果仓位索引=1,那么上下文索引=0
·如果仓位索引=2,那么上下文索引=0
·如果仓位索引=3,那么上下文索引=0
·如果仓位索引=4,那么上下文索引=1
·如果仓位索引=5,那么上下文索引=1
·如果仓位索引=6,那么上下文索引=1
一旦熵编码模块120创建了重要性图,它就可以编码重要性图。在一个实施例中,这通过使用基于上下文的自适应二进制算术编码(CABAC)技术来完成。这样做时,熵编码模块120沿扫描线扫描重要性图,并且针对重要性图中的每个条目,编码模块选择用于该条目的上下文模型。熵编码模块120然后基于选择的上下文模型编码该条目。也就是说,基于正被使用的上下文模型(数学概率模型),每个条目被分配以概率。这些概率被累积直到整个重要性图已经被编码。
图11图示了上下文减少的最末重要系数变换编码过程1100的示例实施例。在块1110,(例如根据诸如X方向或Y方向之类的1D顺序)执行扫描(例如2D矩阵中的)变换系数。在块1120,(例如根据1D顺序)确定最末重要变换系数的位置。在块1130,X坐标和Y坐标被分配到在块1120中确定的最末重要系数位置。在块1140,每个坐标然后可以(例如基于2D变换的大小)诸如通过一元编码(例如截位的)、二元编码等或其组合而在数学上被表示。在块1150,连续仓位可以以适当的代码(例如一元、二元等)被划分为连续的子组。最终,在块1160,进行到每个子组中的仓位的一个上下文的分配以用于算术编码,其中响应于仓位宽度来共享仓位。
换种方式说,给定TU,最末重要系数的位置首先由其在TU内的坐标(x,y)表示,其中x指的是横坐标并且y指的是纵坐标。在一些实施例中,x坐标和y坐标两者皆需要被编码。为了做到这一点,每个坐标被转换成例如被CABAC编码的二进制仓位的序列。对于CABAC编码,每个仓位被分配一个上下文。在一些实施例中,针对仓位的上下文分配是基于在仓位序列中的仓位的重要位置(例如,左边的仓位是最重要仓位而右边的仓位是最不重要仓位)。如在本文中描述的,在不同大小的TU中具有相同重要位置的仓位可以共享相同的上下文。
通过熵编码模块120输出的值以及经熵编码的符号、重要性图和非零系数可以通过编码器116(图1A)被插入到比特流中。该比特流可以通过HFC网络122被发送到解码器138和解码器140。
在一些实施例中,可以使用针对TU的两级重要性图编码:级别0(L0)和级别1(L1)。如上面解释的,TU的重要性图指示TU中非零系数的位置。重要性图的两级结构首先将大的TU(例如为16x16和32x32的大小)划分为相同大小(例如4x4)的非重叠子块。
在一些实施例中,L1重要性图指示TU内的哪些4x4子块包含至少一个非零系数。例如,如果4x4子块具有至少一个非零系数,则针对子块的语法标志或指示符被设置为1,否则它被设置为0。
在一些实施例中,L0重要性图指示TU内的哪些系数是非零系数。例如,如果系数是非零系数,则针对该系数的语法标志或指示符被设置为1;否则,它被设置为0。
图12示出了针对具有至少一个有非零系数的子块的16x16TU的L0重要性图的示例。最末重要系数通过用框将其包围来被突出显示,并且其位置语法是12(X坐标)和10(Y坐标)。如所示出的,16x16TU被划分为16个4x4子块。只包含0系数的4x4子块通过具有包围框或边界来被突出显示。根据本公开内容,这些框中子块具有被设置为0的语法标志。4x4子块的平衡包含至少一个非零系数,并且因此它们的语法标志被设置为1。
针对图12的示例,在图13中示出了对应的L1重要性图,其中1被分配给具有至少一个非零系数的4x4子块并且0被分配给只具有0系数的4x4子块。通过用框将其包围来被突出显示的子块是最末被编码的子块。类似于图11的最末被编码的系数位置,可以使用针对最末被编码的子块位置的语法位置或者标志。例如,在图12中,在子块单元中从左边到框中子块的水平位置(X坐标)具有值3。在子块单元中从顶部到框中子块的竖直位置(Y坐标)具有值2。如在图12中示出的,与用于16x16TU的最末被编码的系数位置的范围0至16相比,最末被编码的子块位置的范围减少到0至3。
由于多级重要性图结构的引入,对于MxN TU,除了最末被编码的系数位置以外或者代替最末被编码的系数位置,最末被编码的子块位置可以被编码。在一些实施例中,两级重要性图结构可以被应用到大小为16x16、16x4、4x16、32x32、32x8和8x32的TU。应当理解的是,这个列表只是示例性的,并且其它大小的TU可以使用两级重要性图结构编码。
在一些实施例中,与编码最末被编码的子块关联的好处可以包括最末被编码的位置的范围的减少。例如,如果TU被划分为4x4子块,则对于16xN或Nx16TU,该范围从0至15减少到0至3,并且对于32xN或Nx32TU,该范围从0至31减少到0至7,其中N等于(或者小于少于)另一尺寸大小。另一好处可以包括用于编码最末被编码的位置的语法的上下文表格尺寸的减小。具体地,再次参照表8,代替每个类型(I,P,B)的用于16x16的多达7个亮度上下文(例如对于图8的上下文模型)以及用于32x32的多达7个亮度上下文,仅仅该上下文大小的一半(例如3)或者甚至小于该上下文大小的一半被要求用于最末子块位置的编码。
还有,在一些实施例中,用于4x4TU和8x8TU的上下文可以用于编码16x16TU和32x32TU的最末被编码的子块位置。在这种情况下,16x16上下文和32x32上下文可以被完全移除。例如,如果使用最末组位置编码,则用于4x4TU的相同上下文分配可以用于16x16TU(例如图12和图13中的示例)。相似地,用于8x8TU的相同上下文分配可以用于32x32TU。
在一些实施例中,对于MxN TU(其中M≠N并且max(M,N)≥16),如上面描述的对于方形矩阵在上下文减少方面的相同好处可以是可能的。
如上面描述的,对于图像可以有许多不同大小的TU(例如4x4、8x8和16x16)。如本领域技术人员已知的,具有至少一个非零量化系数的每个TU具有连同编码扫描模式一起被定义的最末重要系数。在一些实施例中,TU的重要系数的位置(x,y)被编码。此后,位置(x,y)的每个分量被转换成仓位序列或串,其中使用例如CABAC编码该仓位序列或串。每个仓位可以使用特定上下文进行CABAC编码(例如,每个仓位被分配以上下文索引)。例如,第一上下文可以被分配给仓位序列的(多个)第一重要仓位,第二上下文可以被分配给仓位序列的(多个)第二重要仓位,以及第三上下文可以被分配给重要仓位的(多个)第三重要仓位。在一些实施例中,第一上下文是0,第二上下文是1,而第三上下文是2。
在一些实施例中,(多个)第一重要仓位可以包括用于4x4TU的第一重要仓位,用于8x8TU的第一和第二重要仓位,以及用于16x16TU的第一、第二、第三和第四最重要仓位。(多个)第二重要仓位可以包括用于4x4TU的第二重要仓位,用于8x8TU的第三和第四重要仓位,以及用于16x16TU的第五、第六和第七重要仓位。(多个)第三重要仓位可以包括用于4x4TU的第三重要仓位以及用于8x8TU的第五重要仓位。
在一些实施例中,特定上下文索引可以被分配给仓位串中多于一个的仓位。在一些实施例中,特定上下文索引可以被分配给仓位串中多于一个的仓位。
在一些实施例中,第一上下文可以被分配给不同大小TU的最末重要系数的仓位序列的第一重要仓位。第二上下文可以被分配给不同大小TU的最末重要系数的仓位序列的第二重要仓位。第三上下文可以被分配给不同大小TU的最末重要系数的仓位序列的第三重要仓位。
如上面描述的,相对于预定的扫描模式/编码顺序,最末系数编码过程可以编码TU的最末非零变换系数的位置,所以解码器可以跳过在TU的末端的连续数目的零系数。图14和图15示出了根据本公开内容的原理的用于MxN TU的解码过程的示例流程图。
在图14中,示出了使用最末重要系数编码的用于MxN变换单元(TU)的一般解码过程1400的流程图。在块1410,最末重要系数位置被解码(例如确定X坐标和Y坐标)。在块1420,最末重要系数位置被映射到最末子块位置。换句话说,如在两级重要性映射中描述的,在其中发现最末重要系数的最末子块可以被标识。在块1430,在最末子块位置之前的所有子块被扫描或者循环通过。在块1440,最末子块可以被解码。此后,在块1450,可以发生重要性图解码过程。在块1460,解码过程然后可以被拉平(level)以保存重要系数的值或量级。此外,在一些实施例中,还可以提供或发送量级的(多个)符号。
在图15中,示出了使用最末子块位置编码的用于MxN变换单元(TU)的一般解码过程的流程图。在块1510,在其中定位最末重要系数位置的子块被解码(例如确定X坐标和Y坐标)。在块1520,在其中定位最末重要系数位置的子块被映射到最末子块位置。在块1530,在最末子块位置之前的所有子块被扫描或者循环通过。在块1540,最末子块可以被解码。此后,在块1550,可以发生重要性图解码过程。在块1560,解码过程然后可以被拉平以保存重要系数的值或量级。此外,在一些实施例中,还可以提供或发送量级的(多个)符号。
在一些实施例中,使用最末子块位置编码在两方面简化了TU块的熵编码。第一,用于信令较高级别的重要性图的开销减少了一半。第二,较高级别的重要性图所要求的逻辑和上下文表格大小被进一步减少。
在解码器138和解码器140(图1A)接收比特流的时候,它们执行例如图4B中示出的功能。解码器145的熵解码模块146可以解码符号值、重要性图和非零系数,以重建经量化的和经变换的系数。在解码重要性图时,熵解码模块146可以执行结合熵编码模块120所描述的过程的逆过程——沿由扫描线构成的扫描模式来解码重要性图。熵解码模块146然后可以提供系数给解量化器模块147,解量化器模块147解量化系数矩阵,从而产生E'。解量化器模块147可以提供经解量化的系数给逆变换模块149。逆变换模块149可以对系数执行逆变换操作,从而产生e'。滤波和空间预测可以以结合图4A所描述的方式被应用。
所公开的实施例的上述描述被提供以使得本领域任何技术人员能够完成或者使用本公开内容。对这些实施例的各种修改对于本领域技术人员将是显而易见的,并且在本文中描述的一般原理可以被应用到其它实施例,而不脱离本公开内容的精神或范围。因此,要理解的是,在本文中给出的描述和附图表示本公开内容的示例性实施例,并且因此代表由本公开内容广泛涵盖的主题。还要理解的是,本公开内容的范围完全包含其它实施例,并且因此本公开内容的范围仅受所附权利要求的限制。
Claims (20)
1.一种视频编码的方法,所述方法包括:
确定在具有第一宽度的第一视频块、具有不同于第一宽度的第二宽度的第二视频块和具有不同于第一宽度和第二宽度的第三宽度的第三视频块中的每一个的最末非零系数的位置,其中第一宽度是4,第二宽度是8,第三宽度是16;
确定针对至少具有第一宽度、第二宽度和第三宽度的视频块的每个仓位索引值的上下文索引值,其中每个仓位索引值表示前缀代码内的仓位的位置;以及
将第一视频块、第二视频块和第三视频块中的每一个的最末非零系数的位置编码为二进制值的串,其中所述串中的每一个二进制值与使用各个上下文索引值的仓位索引值对应,
其中每个仓位索引值的上下文索引值被配置为跨不同宽度的两个或更多块被如下共享:
与第一视频块的最高有效位、第二视频块的最高有效位和次高有效位、第三视频块的最高有效位、次高有效位、第三高有效位和第四高有效位对应的仓位索引值与第一上下文索引值对应;
与第一视频块的次高有效位、第二视频块的第三高有效位和第四高有效位、第三视频块的第五高有效位、第六高有效位和第七高有效位对应的仓位索引值与第二上下文索引值对应;以及
与第一视频块的第三高有效位和第二视频块的第五高有效位对应的仓位索引值与第三上下文索引值对应。
2.根据权利要求1所述的方法,其中所述上下文索引值根据以下等式从所述仓位索引值得出:
上下文索引=仓位索引>>(log2(TUsize)-2)
其中>>表示移位操作并且TUsize指的是所述视频块的宽度。
3.根据权利要求1所述的方法,其中所述上下文索引值使用查找表从所述仓位索引值得出。
4.根据权利要求1所述的方法,其中所述上下文索引值包括:与所述块关联的大小;所述块内的所述系数中的给定系数根据扫描顺序的位置;以及所述扫描顺序。
5.根据权利要求1所述的方法,其中编码所述最末非零系数的所述位置经由熵编码被实现。
6.根据权利要求1所述的方法,其中编码所述最末非零系数的所述位置包括通过独立地信令其X坐标和Y坐标来明确地编码所述最末非零系数的所述位置。
7.根据权利要求1所述的方法,其中在编码其它非零系数的位置之前编码所述最末非零系数的所述位置。
8.根据权利要求5所述的方法,其中所述熵编码包括以下中的一个:根据高效率视频编码(HEVC)的熵编码、和上下文自适应二进制算术编码(CABAC),其中CABAC包括用于所述最末非零系数的位置的截位码字。
9.根据权利要求1所述的方法,其中编码包括解码,并且其中解码标识所述视频块内的所述最末非零系数的所述位置。
10.根据权利要求1所述的方法,其中所述方法在具有处理器和耦合到所述处理器的存储器的计算机上被实现,其中至少一些步骤使用所述处理器被执行。
11.一种用于编码视频的装置,所述装置包括视频编码器,所述视频编码器被配置为:
确定在具有第一宽度的第一视频块、具有不同于第一宽度的第二宽度的第二视频块和具有不同于第一宽度和第二宽度的第三宽度的第三视频块中的每一个的最末非零系数的位置;
确定针对至少具有第一宽度、第二宽度和第三宽度的视频块的每个仓位索引值的上下文索引值;以及
经由熵编码将第一视频块、第二视频块和第三视频块中的每一个的最末非零系数的位置编码为二进制值的串,其中所述串中的每一个二进制值与使用各个上下文索引值的仓位索引值对应,
其中每个仓位索引值的上下文索引值被配置为跨不同宽度的两个或更多块被如下共享:
与第一视频块的最高有效位、第二视频块的最高有效位和次高有效位、第三视频块的最高有效位、次高有效位、第三高有效位和第四高有效位对应的仓位索引值与第一上下文索引值对应;
与第一视频块的次高有效位、第二视频块的第三高有效位和第四高有效位、第三视频块的第五高有效位、第六高有效位和第七高有效位对应的仓位索引值与第二上下文索引值对应;以及
与第一视频块的第三高有效位和第二视频块的第五高有效位对应的仓位索引值与第三上下文索引值对应。
12.根据权利要求11所述的装置,其中所述上下文索引值根据以下等式从所述仓位索引值得出:
上下文索引=仓位索引>>(log2(TUsize)-2)
其中>>表示移位操作并且TUsize指的是所述视频块的宽度。
13.根据权利要求11所述的装置,其中所述上下文索引值使用查找表从所述仓位索引值得出。
14.根据权利要求11所述的装置,其中所述上下文索引值包括:与所述块关联的大小;所述块内的所述系数中的给定系数根据扫描顺序的位置;以及所述扫描顺序。
15.根据权利要求11所述的装置,其中编码所述最末非零系数的所述位置包括通过独立地信令其X坐标和Y坐标来明确地编码所述最末非零系数的所述位置。
16.根据权利要求11所述的装置,其中在编码其它非零系数的位置之前编码所述最末非零系数的所述位置。
17.根据权利要求11所述的装置,其中所述熵编码包括以下中的一个:根据高效率视频编码(HEVC)的熵编码、和上下文自适应二进制算术编码(CABAC),其中CABAC包括用于所述最末非零系数的位置的截位码字。
18.根据权利要求11所述的装置,其中所述视频编码器包括被配置为解码视频块内的最末非零系数的位置的视频解码器。
19.根据权利要求18所述的装置,其中所述装置包括以下各项中的至少一项:
集成电路;
微处理器;以及
包括所述视频解码器的无线通信设备。
20.根据权利要求11所述的装置,其中所述装置包括以下各项中的至少一项:
集成电路;
微处理器;以及
包括所述视频编码器的无线通信设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910634908.0A CN110602509A (zh) | 2012-02-04 | 2013-02-04 | 用于最末重要系数位置编码中的上下文减少的设备和方法 |
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261595072P | 2012-02-04 | 2012-02-04 | |
US61/595,072 | 2012-02-04 | ||
US201261595138P | 2012-02-05 | 2012-02-05 | |
US61/595,138 | 2012-02-05 | ||
US201261597033P | 2012-02-09 | 2012-02-09 | |
US61/597,033 | 2012-02-09 | ||
US13/758,770 | 2013-02-04 | ||
PCT/US2013/024654 WO2013116849A1 (en) | 2012-02-04 | 2013-02-04 | Devices and methods for context reduction in last significant coefficient position coding |
US13/758,770 US9565435B2 (en) | 2012-02-04 | 2013-02-04 | Devices and methods for context reduction in last significant coefficient position coding |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910634908.0A Division CN110602509A (zh) | 2012-02-04 | 2013-02-04 | 用于最末重要系数位置编码中的上下文减少的设备和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104995919A CN104995919A (zh) | 2015-10-21 |
CN104995919B true CN104995919B (zh) | 2019-08-09 |
Family
ID=48902861
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910634908.0A Pending CN110602509A (zh) | 2012-02-04 | 2013-02-04 | 用于最末重要系数位置编码中的上下文减少的设备和方法 |
CN201380008035.3A Active CN104995919B (zh) | 2012-02-04 | 2013-02-04 | 用于最末重要系数位置编码中的上下文减少的设备和方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910634908.0A Pending CN110602509A (zh) | 2012-02-04 | 2013-02-04 | 用于最末重要系数位置编码中的上下文减少的设备和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9565435B2 (zh) |
EP (2) | EP2810440A1 (zh) |
CN (2) | CN110602509A (zh) |
WO (1) | WO2013116849A1 (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8446301B2 (en) * | 2011-04-15 | 2013-05-21 | Research In Motion Limited | Methods and devices for coding and decoding the position of the last significant coefficient |
DK2884749T3 (en) * | 2011-06-28 | 2018-01-22 | Samsung Electronics Co Ltd | Apparatus for decoding video followed by arithmetic decoding and two-dimensional last significant coefficient signaling. |
US9445093B2 (en) * | 2011-06-29 | 2016-09-13 | Qualcomm Incorporated | Multiple zone scanning order for video coding |
JPWO2013046504A1 (ja) * | 2011-09-29 | 2015-03-26 | パナソニックIpマネジメント株式会社 | 算術復号装置、画像復号装置、および算術復号方法 |
WO2013070974A2 (en) | 2011-11-08 | 2013-05-16 | General Instrument Corporation | Method of determining binary codewords for transform coefficients |
CN103931197B (zh) | 2011-11-08 | 2018-01-23 | 谷歌技术控股有限责任公司 | 确定用于变换系数的二进制码字的方法 |
WO2013106987A1 (en) * | 2012-01-16 | 2013-07-25 | Mediatek Singapore Pte. Ltd. | Methods and apparatuses of bypass coding and reducing contexts for some syntax elements |
WO2013109993A1 (en) | 2012-01-21 | 2013-07-25 | General Instrument Corporation | Method of determining binary codewords for transform coefficients |
US10284851B2 (en) | 2012-01-21 | 2019-05-07 | Google Technology Holdings LLC | Method of determining binary codewords for transform coefficients |
US9479780B2 (en) | 2012-02-01 | 2016-10-25 | Google Technology Holdings LLC | Simplification of significance map coding |
US9167245B2 (en) | 2012-02-05 | 2015-10-20 | Google Technology Holdings LLC | Method of determining binary codewords for transform coefficients |
KR20140131352A (ko) | 2012-02-06 | 2014-11-12 | 노키아 코포레이션 | 코딩을 위한 방법 및 장치 |
US9237344B2 (en) * | 2012-03-22 | 2016-01-12 | Qualcomm Incorporated | Deriving context for last position coding for video coding |
US9088770B2 (en) * | 2012-08-15 | 2015-07-21 | Intel Corporation | Size based transform unit context derivation |
US9716884B2 (en) * | 2014-03-20 | 2017-07-25 | Hfi Innovation Inc. | Method of signaling for mode selection in 3D and multi-view video coding |
US10142642B2 (en) * | 2014-06-04 | 2018-11-27 | Qualcomm Incorporated | Block adaptive color-space conversion coding |
US9781424B2 (en) | 2015-01-19 | 2017-10-03 | Google Inc. | Efficient context handling in arithmetic coding |
CN108293139A (zh) * | 2015-09-08 | 2018-07-17 | 三星电子株式会社 | 用于熵编码和熵解码的设备和方法 |
CN108353179A (zh) | 2015-09-10 | 2018-07-31 | 三星电子株式会社 | 编码设备、解码设备及其编码方法和解码方法 |
EP3264763A1 (en) * | 2016-06-29 | 2018-01-03 | Thomson Licensing | Method and apparatus for improved significance flag coding using simple local predictor |
WO2018190595A1 (ko) * | 2017-04-13 | 2018-10-18 | 엘지전자(주) | 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치 |
CN108989825B (zh) * | 2018-07-18 | 2021-05-07 | 北京奇艺世纪科技有限公司 | 一种算术编码方法、装置及电子设备 |
AU2018233042B2 (en) | 2018-09-21 | 2024-06-13 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a tree of blocks of video samples |
KR20230154085A (ko) * | 2018-12-17 | 2023-11-07 | 엘지전자 주식회사 | 고주파 제로잉을 기반으로 변환 계수 스캔 순서를 결정하는 방법 및 장치 |
CN113647112A (zh) | 2019-03-11 | 2021-11-12 | 交互数字Vc控股公司 | 用于视频编码和解码的熵编解码 |
US11218735B2 (en) * | 2019-04-02 | 2022-01-04 | Qualcomm Incorporated | Context derivation for last position coding for video coding |
JP7388900B2 (ja) | 2019-12-06 | 2023-11-29 | 日本放送協会 | 符号化装置、復号装置、及びプログラム |
US11336893B2 (en) * | 2020-01-07 | 2022-05-17 | Qualcomm Incorporated | Context derivation and entropy coding initialization parameters for coordinates of last position coding in video coding |
MX2023012034A (es) * | 2021-04-12 | 2023-10-23 | Guangdong Oppo Mobile Telecommunications Corp Ltd | Metodo de codificacion de coeficiente, codificador, decodificador y medio de almacenamiento de computadora. |
AU2021454442A1 (en) | 2021-06-29 | 2023-12-21 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Encoding and decoding method, bitstream, encoder, decoder, and computer storage medium |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2870515B2 (ja) | 1996-12-27 | 1999-03-17 | 日本電気株式会社 | 可変長符号化装置 |
US7206448B2 (en) | 2002-02-28 | 2007-04-17 | At&T Corp. | System and method for using pattern vectors for video and image coding and decoding |
US7158684B2 (en) | 2002-04-25 | 2007-01-02 | Texas Instruments Incoporated | Entropy coding scheme for video coding |
US7379608B2 (en) | 2003-12-04 | 2008-05-27 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. | Arithmetic coding for transforming video and picture data units |
US7580585B2 (en) | 2004-10-29 | 2009-08-25 | Microsoft Corporation | Lossless adaptive Golomb/Rice encoding and decoding of integer data using backward-adaptive rules |
US7595743B1 (en) * | 2005-10-26 | 2009-09-29 | Lsi Corporation | System and method for reducing storage requirements for content adaptive binary arithmetic coding |
CN101167366B (zh) | 2005-12-05 | 2010-10-27 | 华为技术有限公司 | 一种二进制化方法及装置 |
US8848789B2 (en) * | 2006-03-27 | 2014-09-30 | Qualcomm Incorporated | Method and system for coding and decoding information associated with video compression |
US8275045B2 (en) | 2006-07-12 | 2012-09-25 | Qualcomm Incorporated | Video compression using adaptive variable length codes |
US8045612B1 (en) * | 2007-01-19 | 2011-10-25 | Marvell International Ltd. | Fast inverse integer transform for video decoding |
US7885473B2 (en) | 2007-04-26 | 2011-02-08 | Texas Instruments Incorporated | Method of CABAC coefficient magnitude and sign decoding suitable for use on VLIW data processors |
US7813567B2 (en) | 2007-04-26 | 2010-10-12 | Texas Instruments Incorporated | Method of CABAC significance MAP decoding suitable for use on VLIW data processors |
KR101539240B1 (ko) | 2007-06-14 | 2015-07-30 | 삼성전자주식회사 | 영상 데이터의 엔트로피 부호화, 복호화 방법 및 장치 |
US8891615B2 (en) * | 2008-01-08 | 2014-11-18 | Qualcomm Incorporated | Quantization based on rate-distortion modeling for CABAC coders |
KR101375668B1 (ko) | 2008-03-17 | 2014-03-18 | 삼성전자주식회사 | 변환 계수의 부호화, 복호화 방법 및 장치 |
US8588536B2 (en) | 2010-02-22 | 2013-11-19 | Texas Instruments Incorporated | Guaranteed-rate tiled image data compression |
US9793921B2 (en) * | 2010-05-12 | 2017-10-17 | Thomson Licensing Dtv | Methods and apparatus for unified significance map coding |
SI3104616T1 (sl) * | 2010-07-09 | 2017-10-30 | Samsung Electronics Co., Ltd. | Naprava za entropijsko dekodiranje trasformnih koeficientov |
CA2806523C (en) * | 2010-07-28 | 2016-07-05 | Nokia Corporation | Method and apparatus for providing complexity balanced entropy coding |
JP5707412B2 (ja) | 2010-09-29 | 2015-04-30 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、プログラムおよび集積回路 |
US8526495B2 (en) | 2010-11-22 | 2013-09-03 | Mediatek Singapore Pte. Ltd. | Apparatus and method of constrained partition size for high efficiency video coding |
JP5809292B2 (ja) | 2011-01-14 | 2015-11-10 | ジーイー ビデオ コンプレッション エルエルシー | エントロピー符号化および復号化スキーム |
US8861599B2 (en) * | 2011-03-08 | 2014-10-14 | Sony Corporation | Context reduction for last transform position coding |
CN102256125B (zh) * | 2011-07-14 | 2013-06-05 | 北京工业大学 | 面向高效视频编码hevc基于上下文的自适应算数编码方法 |
WO2013012819A2 (en) | 2011-07-15 | 2013-01-24 | General Instrument Corporation | Context modeling techniques for transform coefficient level coding |
US8891630B2 (en) | 2011-10-24 | 2014-11-18 | Blackberry Limited | Significance map encoding and decoding using partition set based context assignment |
US20130114685A1 (en) | 2011-11-07 | 2013-05-09 | Sharp Laboratories Of America, Inc. | Video decoder with constrained dynamic range |
CN103931197B (zh) | 2011-11-08 | 2018-01-23 | 谷歌技术控股有限责任公司 | 确定用于变换系数的二进制码字的方法 |
US9154792B2 (en) * | 2011-11-08 | 2015-10-06 | Qualcomm Incorporated | Progressive coding of position of last significant coefficient |
WO2013070974A2 (en) | 2011-11-08 | 2013-05-16 | General Instrument Corporation | Method of determining binary codewords for transform coefficients |
US9621894B2 (en) | 2012-01-13 | 2017-04-11 | Qualcomm Incorporated | Determining contexts for coding transform coefficient data in video coding |
US9654139B2 (en) | 2012-01-19 | 2017-05-16 | Huawei Technologies Co., Ltd. | High throughput binarization (HTB) method for CABAC in HEVC |
WO2013109993A1 (en) | 2012-01-21 | 2013-07-25 | General Instrument Corporation | Method of determining binary codewords for transform coefficients |
US10284851B2 (en) | 2012-01-21 | 2019-05-07 | Google Technology Holdings LLC | Method of determining binary codewords for transform coefficients |
WO2013110000A1 (en) | 2012-01-21 | 2013-07-25 | General Instrument Corporation | Method of determining binary codewords for transform coefficients |
US9479780B2 (en) | 2012-02-01 | 2016-10-25 | Google Technology Holdings LLC | Simplification of significance map coding |
US9167245B2 (en) | 2012-02-05 | 2015-10-20 | Google Technology Holdings LLC | Method of determining binary codewords for transform coefficients |
US9363510B2 (en) | 2012-03-02 | 2016-06-07 | Qualcomm Incorporated | Scan-based sliding window in context derivation for transform coefficient coding |
-
2013
- 2013-02-04 CN CN201910634908.0A patent/CN110602509A/zh active Pending
- 2013-02-04 WO PCT/US2013/024654 patent/WO2013116849A1/en active Application Filing
- 2013-02-04 EP EP13704865.8A patent/EP2810440A1/en not_active Withdrawn
- 2013-02-04 CN CN201380008035.3A patent/CN104995919B/zh active Active
- 2013-02-04 US US13/758,770 patent/US9565435B2/en active Active
- 2013-02-04 EP EP17197157.5A patent/EP3328086A1/en not_active Withdrawn
Non-Patent Citations (2)
Title |
---|
CABAC Contexts Reduction for Last Position Coding;Liwei Guo et al;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 8th Meeting》;20120203;摘要,正文第1-3节 * |
Last position coding for CABAC;Wei-Jung Chien, Joel Sole, Marta;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 7th Meeting: Geneva》;20111130;第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2013116849A8 (en) | 2014-12-24 |
CN104995919A (zh) | 2015-10-21 |
EP3328086A1 (en) | 2018-05-30 |
WO2013116849A1 (en) | 2013-08-08 |
US9565435B2 (en) | 2017-02-07 |
EP2810440A1 (en) | 2014-12-10 |
US20130202026A1 (en) | 2013-08-08 |
CN110602509A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104995919B (zh) | 用于最末重要系数位置编码中的上下文减少的设备和方法 | |
CN104956674B (zh) | 用于最末重要系数位置编解码中的上下文减少的设备和方法 | |
JP7445030B2 (ja) | 統一された有意性マップ符号化方法および装置 | |
JP6906070B2 (ja) | イントラ予測における予測ブロックを生成する装置 | |
CN104685874B (zh) | 用于在高效率视频编解码中处理分区模式的设备和方法 | |
CN106068648B (zh) | 调色板译码模式中视频块的逸出像素的量化 | |
CN107197264B (zh) | 解码视频信号的方法 | |
CN104221373B (zh) | 用于采样自适应偏移代码化和/或信号通知的设备和方法 | |
CN104620576B (zh) | 可缩放视频译码中的替代变换 | |
CN103190147B (zh) | 用于视频译码的语法元素的联合译码方法及设备 | |
CN108464001A (zh) | 用于视频译码的多类型树框架 | |
JP2020529766A (ja) | 画像符号化/復号化方法、装置、及びビットストリームを保存した記録媒体 | |
CN110073661A (zh) | 用于视频译码的多种类型树架构 | |
KR101691978B1 (ko) | 영상 부호화/복호화 방법 및 장치 | |
CN110100436A (zh) | 使用导出色度模式译码视频数据 | |
CN105379270A (zh) | 颜色分量间残余预测 | |
CN104604224B (zh) | 可缩放视频译码中的变换基底调整 | |
CN108605122A (zh) | 用于编码/解码屏幕内预测模式的方法和装置 | |
CN108781289A (zh) | 针对视频译码工具的受约束块层级优化和用信号发送 | |
CN104429072B (zh) | 自适应差域空间和时间参考重构及平滑 | |
CN103621082A (zh) | 视频译码中的量化 | |
CN104081777A (zh) | 用于视频译码的残余四叉树(rqt)译码 | |
JP2015508617A (ja) | 映像の符号化における係数の符号化 | |
WO2014055231A1 (en) | Devices and methods for using base layer motion vector for enhancement layer motion vector prediction | |
CN110495171A (zh) | 提供改进的算术编码的用于处理图像的方法、用于使用该方法对图像进行解码和编码的方法及其设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160602 Address after: American California Applicant after: Technology Holdings Co., Ltd of Google Address before: Illinois Applicant before: Motorola Mobility, Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |