CN110546954A - 二次转换核心尺寸选择 - Google Patents
二次转换核心尺寸选择 Download PDFInfo
- Publication number
- CN110546954A CN110546954A CN201880024316.0A CN201880024316A CN110546954A CN 110546954 A CN110546954 A CN 110546954A CN 201880024316 A CN201880024316 A CN 201880024316A CN 110546954 A CN110546954 A CN 110546954A
- Authority
- CN
- China
- Prior art keywords
- block
- size
- transform
- pixels
- core
- 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
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/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/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/124—Quantisation
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- 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/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种关于二次转换操作的方法及装置。其中,像素块的转换系数的特定子集内的非零转换系数被计数并与一个特定阈值比较,以决定是否对该像素块执行二次转换。另外,最佳二次转换核心尺寸是基于块的尺寸隐性获取,或透过使用一个适应性码字基于一个旗标来明确获取。
Description
交叉引用
本申请是要求2017年04月14日提交的申请号为62/485,406的美国临时专利申请案的优先权的美国正式专利申请案的部分。上述列出的申请案内容以引用方式并入本文。
技术领域
本申请大体关于视频处理。具体地,本申请是有关于对转换操作的选择进行发信。
背景技术
除非此处另有说明外,本部分所描述的方法相对于下面列出的申请专利范围而言不是先前技术,并且本部分的引入并非承认其是先前技术。
高效率视频编码(High-Efficiency Video Coding,HEVC)是由视频编码联合协作小组(Joint Collaborative Team on Video Coding,JCT-VC)开发的新型视频编解码标准。HEVC是基于混合的基于块的运动向量补偿的类DCT编解码架构。压缩的基本单元,称为编解码单元(CU),是2Nx2N的方块,且每个CU可被递归地分割为四个更小CU直到达到预定的最小尺寸。每个CU包含一个或多个预测单元(prediction units,PUs)。在预测之后,一个CU被进一步分割为用于转换及量化的转换单元(transform units,TUs)。
如许多其他先前标准,HEVC采用了离散余弦转换类型II(DCT-II)作为其核心转换,因为其具有较好"功耗节约"的属性。大多数信号信息倾向于聚焦在DCT-II的几个低频分量上,其基于马尔可夫过程的一些限制让信号逼近于K-L转换(Karhunen-LoèveTransform,KLT,其在去相关方面是最佳的)。
对于TU,除了用DCT转换作为核心转换,还采用了二次转换来进一步降低系数的功耗并改善编解码效率。如JVET-D1001中,使用基于Hypercube-Givens转换(Hypercube-Givens Transform,HyGT)的不可分离转换作为二次转换,其被称为不可分离二次转换(non-separable secondary transform,NSST)。正交转换的基本元素为Givens旋转,其由正交矩阵G(m,n,θ)定义,其具有下面定义的元素:
HyGT透过于一超立方体排列内合并Givens旋转组来实施。
发明内容
以下发明内容仅是说明性的,不打算以任何方式加以限制。也就是说,以下发明内容被提供以介绍此处所描述的新且非明显的技术的概念、重点、好处和优势。选择而不是所有的实施方式在下面的详细说明中进行进一步描述。因此,以下发明内容不用于决定所要求主题的本质特征,也不用于决定所要求主题的范围。
本发明的一些实施例提供一种于编码或解码像素块时发信二次转换核心尺寸的方法。编码器或解码器决定该像素块的转换系数的特定子集中非零转换系数的计数。当该计数大于特定阈值时,编码器或解码器透过为该像素块执行不可分离二次转换来编解码该像素块。当该计数小于该特定阈值时,编码器或解码器编解码该像素块,而不为该像素块执行不可分离二次转换。该子集之外的转换系数并不包含于该计数内。一些实施例中,转换系数的该特定子集包含该像素块转换单元的左上4x4或8x8的转换系数。
当该块的尺寸大于该阈值时,编码器明确发信用于对该像素块执行NSST的核心尺寸。该旗标是编码于该比特流的片头中,序列头中,或图片头中。一些实施例中,当该转换系数的子集内的非零系数的计数大于阈值时,编码器可透过编码旗标来发信该核心尺寸。
编码器可隐性发信该核心尺寸而不于比特流内编码该核心尺寸。当该块尺寸大于第一阈值时,编码器或解码器可用固定值做为核心尺寸。一些实施例中,核心尺寸是基于该像素块的帧内预测模式决定的。
一些实施例中,该核心尺寸基于用于编解码该像素块的该多个核心尺寸的每一相关的开销来从多个可能核心尺寸中选择。选择的核心尺寸是与最低开销相关的核心尺寸。与核心尺寸相关的开销是透过重建该块的子块的多个像素以及透过比较重建子块与该块的相邻像素来计算。一些实施例中,识别核心尺寸的码字被编解码。不同可能核心尺寸基于该可能核心尺寸的每一计算的开销被分配不同码字。最低开销的核心尺寸被分配最短码字。
附图说明
下列图式用以提供本发明的进一步理解,并被纳入且构成本发明的一部分。这些图式说明了本发明的实施方式,并与说明书一起用以解释本发明的原理。为了清楚地说明本发明的概念,与实际实施方式中的尺寸相比,一些组件可以不按照比例被示出,这些图式无需按照比例绘制。
图1显示选择像素块的二次转换核心尺寸的架构。
图2显示对像素块的非零转换系数计数以决定是否对该像素块执行NSST。
图3显示基于候选NSST核心尺寸与相邻重建块的重建像素的开销的计算。
图4显示基于当前块的重建像素与相邻块的重建像素之间的相关来计算TU的开销。
图5显示基于测量重建残值的能量对TU 500开销的计算。
图6显示隐性及明确发信二次转换核心尺寸的示例视频编码器600。
图7显示明确及隐性发信二次转换的核心尺寸的编码器600的部分。
图8概念性地显示核心尺寸开销分析模块800执行的开销分析与码字分配操作。
图9显示可明确或隐性接收二次转换核心尺寸的发信的示例视频解码器900。
图10显示解码器900处理二次转换核心尺寸的明确及隐性发信的部分。
图11概念性显示核心尺寸开销分析模块1100执行的开销分析及码字分配操作。
图12概念性显示发信二次转换核心尺寸的流程1200。
图13概念性示出在本申请一些实施例中实现的电子***1300。
具体实施方式
在下面详细的说明书中,为了透彻理解相关教示内容,透过举例的方式进行大量具体的细节描述。基于本文所描述的教示内容的任何改变、推导和/或拓展均在本发明的保护范围内。在一些例子中,为了避免不必要地混淆本发明的教示内容的方面,在相对较高的级别而无细节上描述已知的方法、程序、组件和/或关于此处所公开的一个或者多个个示例性实施方式的电路。
于JEM-4.0中,不可分离二次转换(NSST)尺寸的选择取决于转换尺寸。例如,若转换的宽度及高度都大于4,则采用8x8 NSST;否则,采用4x4 NSST。另外,当非零系数的数量大于一个阈值时,采用二次转换。当采用时,于转换系数块的左上8x8或更小区域,即min(8,W)×min(8,H),上执行不可分离转换。同时对量度与色度分量两者采用上述转换选择规则且NSST核心尺寸取决于当前编解码块尺寸。根据JEM-4.0,NSST仅对TU的左上min(8,宽度)xmin(8,高度)区域执行NSST,即便非零系数处于该左上区域之外。这可能会导致于TU的左上min(8,宽度)x min(8,高度)系数子集上执行多余的NSST操作,即使非零系数处于左上min(8,宽度)x min(8,高度)区域之外。
图1显示选择像素块的二次转换核心尺寸的架构。如图所示,只要整个像素块的非零系数的数量大于阈值且当NSST索引不为0时,执行NSST。若块尺寸小于8x8,则总是选择4x4的NSST核心尺寸。若块尺寸为8x8或更大,旗标(NSST_kernel_size_flag)明确地于4x4的NSST核心尺寸或8x8的NSST核心尺寸之间选择。
可是,透过经验可决定对大于8x8的块选择NSST核心尺寸会带来微小编解码增益(码率-失真增益,bitrate-distortion gain)但是会大幅增加编码时间。具体地,总是使用旗标来为大于8x8块发信NSST核心尺寸的选择可因为采用太多额外码率-失真优化(rate-distortion optimization,RDO)检查或旗标而限制了码率-失真改善。而且,更大的块(8x8或更大)可具有聚焦于例如4x4子块区域的低频区域的非零系数,使得最佳二次转换不总是8x8 NSST。
一些本发明的实施例在解码像素块时提供发信二次转换核心尺寸(例如NSST核心尺寸)的方法。二次转换核心尺寸于特定条件下隐性推导以降低码率。该方法也允许对除了4x4及8x8之外的二次转换核心尺寸的选择进行发信。当二次转换仅施加于该TU的特定区域(或转换系数的一特定子集)(例如左上4x4或8x8)时,仅当该特定区域内的非零转换系数的数量大于一个阈值时执行二次转换。于该特定区域外的非零转换系数并不计数来触发二次转换操作。像素块可用帧内预测编解码。
一些实施例中,操作该发信方法的编码器或解码器接收像素块。编码器或解码器决定该像素块的转换系数的特定子集内的非零转换系数的计数。当该计数大于特定阈值时,编码器或解码器透过对该像素块执行不可分离二次转换(NSST)来编解码该像素块。当该计数小于该特定阈值时,编码器或解码器编解码该像素块而无需对像素块执行NSST。
图2显示对像素块的非零转换系数计数以决定是否对该像素块执行NSST。该图显示了示例8x8像素块200。于编码或解码中,编码器或解码器透过帧间预测或帧内预测产生对应该块的8x8预测像素(或预测因子)组210。像素块200与其对应的预测像素组210之间的差值是8x8残差组220(每一残差标示为‘r’)。于残差组220上执行核心转换(可为DCT或DST)以获取8x8转换系数组230。转换系数组230被量化使得部分转换系数量化为零。每一非零系数标示为‘C’。零系数未标示。
对于此例子,二次转换或NSST仅对左上4x4转换系数(区域250)执行。对于在左上4x4系数之外的系数并不执行NSST。(所示例子中,是NSST部分的系数并无阴影,而不是NSST部分的系数有阴影)。对于一些实施例,左上4x4系数(区域250)代表施加NSST于上的转换系数的最重要子集或前16系数(前向扫描)。
为了决定是否对像素块200执行NSST,一些实施例中的编码器或解码器仅对NSST会施加于上的转换系数的子集中的非零转换系数进行计数,所述子集即最重要或左上4x4系数(非阴影区域250内)。左上4x4外的阴影区域内的非零系数并未计数。于此例子中,在所有8x8转换系数组230中总共有12个非零系数,可仅有7个在左上4x4中计数以决定是否对块200执行NSST。在左上4x4之外的5个非零系数被认为是无关的且不被计数。这样最小化或避免对非零系数不在最重要/左上4x4内的像素块执行NSST操作。
当子集内的非零系数计数大于一阈值时,编码器或解码器执行NSST(例如当计数等于或大于2时执行NSST)。若该计数小于阈值,编码器或解码器则不对该块执行NSST,即使该子集外有更多非零系数。基于非零系数的计数,编码器或解码器推导是否执行NSST,而无需在比特流中有任何明确旗标。
所属技术领域内具有通常知识者可了解选择8x8的像素块200以及4x4的转换系数子集250仅仅是用于说明。对非零转换系数计数的技术可用于任何其他尺寸的像素块,例如左上8x8,最重要8x8,前向扫描中的前16,48,或64转换系数,或左上或最重要16x16或32x32,其中NSST施加于转换系数的8x8子集上。
一些实施例中,编码器或解码器透过编码/解码明确旗标来选择核心尺寸,以指示/决定二次转换的核心尺寸。发信核心尺寸的旗标并不总是需要的且在特定条件下采用,例如特定块尺寸。一些实施例中,用于选择核心尺寸的明确旗标当块尺寸大于阈值时存在。该旗标可被编码于比特流的片头中,序列头中,或图片头中。当块尺寸小于阈值时,编码器并不编码该旗标进比特流中且解码器并不需要比特流中有该旗标。
例如,对于8x8块,该旗标被采用且用于选择较佳的NSST核心尺寸。对于尺寸大于8x8的块,NSST核心尺寸可固定为8x8或透过一SPS,PPS,或片段层(例如在对应头中)的旗标来决定。尺寸大于8x8的块的NSST核心尺寸也可隐性推导/得到。
一些实施例中,是否对二次转换核心尺寸的选择明确发信旗标是基于块的复杂度。换句话说,当块的复杂度大于阈值时,编码器明确发信二次转换核心尺寸的选择的明确旗标,解码器也需要该旗标;否则,使用隐性机制来发信该核心尺寸选择。更概括地,旗标是否发信/需要是由被编解码的块的属性决定的。例如,一些实施例中,当转换系数的子集的非零系数的计数大于阈值时,核心尺寸选择的一明确旗标被发信/需要。转换系数的子集可为转换系数的左上或第一子集(例如,左上或第一4x4或8x8系数),或转换系数的任何其他子集,或被编码的块的整个转换系数。
一些实施例中,用于二次转换核心尺寸的选择的旗标通过识别核心尺寸的码字明确发信。对于每个编码的像素块,编码器与解码器动态分配不同长度的码字给不同可能的核心尺寸。一些实施例中,根据在不同可能核心尺寸下编解码像素块的相关开销来分配码字。最低开销的核心尺寸被认定为预测核心尺寸并分配给最短码字。更高开销的核心尺寸被分配给更长码字。换句话说,根据计算的不同核心尺寸的开销所决定的顺序来分配不同码字给不同核心尺寸。例如,当有4个可能核心尺寸(例如4x4,8x8,16x16,及32x32),最低开销的核心尺寸被分配最短码字‘0’,第二低开销的被分配码字‘10’,第三低开销的被分配码字‘110’,最高的被分配码字‘111’。
当编码器选择二次转换核心尺寸来执行二次转换时,选择的二次转换核心尺寸透过被分配给选择的二次转换核心尺寸的码字被发信到解码器。解码器透过执行与像素块的编码器一样的开销计算与码字分配来映射接收的码字到正确的二次转换核心尺寸。
每当编码器选择来执行二次转换的二次核心尺寸匹配预测核心尺寸时,码率会降低因为最短码字用来发信核心尺寸的选择。因为基于开销的码字分配机制成功地为更多块预测核心尺寸,由于二次转换核心尺寸的明确发信所增加的码率会降低。不同二次转换核心尺寸的开销计算与码字分配会在下文参考图8至图11进一步进行说明。
不同的实施例中的发信方法计算开销是不一样的。一些实施例中,透过测量重建残值的特征来获取开销。一些实施例中,透过测量块边界的重建像素与相邻块的重建像素之间的差值来获取。一些实施例中,在计算开销时仅测量重建残值的子集或重建像素的子集(例如左上8x8,4x4或任何其他像素子集)。一些实施例中,每个核心尺寸的开销透过施加该核心尺寸的逆NSST到转换系数的子集上(例如前向扫描的前16,48,或64转换系数,或任何其他转换系数子集)。在子集外的转换系数不会用来计算开销。
编码器与解码器两者都能获取当前块的重建残值与重建像素。当前块的量化转换系数(由核心及/或二次转换产生)被去量化然后被逆转换(由逆二次及/核心转换)来生成重建残值。(残值是指块的源像素值与通过帧内或帧间预测生成的块的预测像素值之间的像素值差值;重建残值是从转换系数重建而来的残值)。透过将重建残值与块的帧间或帧内预测生成的预测子或预测像素相加,当前块的像素可被重建。如此的编码器与解码器的例子会参考下面的图6与图9进行说明。
图3显示基于候选NSST核心尺寸与相邻重建块的重建像素的开销的计算。
图中显示了16x16像素块的示例TU 300。该TU具有16x16转换系数,但是只有左上8x8的转换系数(或扫描顺序中的第一64转换系数)被用于二次转换。如图所示,对于TU300,编码器已经编码(或解码器已经接收)16x16量化转换系数组310。系数的左上8x8子集315被核心尺寸的二次转换逆转换为中间转换系数组320。子集315之外的转换系数并未用于二次转换的逆转换。逆核心转换被施加到中间转换系数组320上以生成16x16重建残值组330。重建残值组330与一组预测像素(图未示)合并来重建16x16重建像素组340。
一些实施例中,核心尺寸相关的开销是基于重建残值330计算的。一些实施例中,核心尺寸相关的开销可基于重建残值的子集计算,例如,重建残值330的左上8x8子块。子集也可用其他形状或包含不同于左上8x8不同数量的残值。
一些实施例中,核心尺寸相关的开销是基于重建像素340计算的。一些实施例中,核心尺寸相关的开销可基于重建像素的子集计算,例如,重建像素340的左上8x8子块。子集也可用其他形状或包含不同于左上8x8不同数量的像素。
一些实施例中,使用边界匹配(boundary-matching)方法来计算开销。假定重建像素与重建相邻像素高度相关,一特定转换核心尺寸的开销可通过测量边界相似度(boundary similarity)来计算。图4显示基于当前块的重建像素与相邻块的重建像素(每个像素值标示为p)之间的相关来计算TU 400的开销。一些实施例中,仅重建像素的子集(例如重建像素340的左上8x8子块)用来计算特定二次转换核心尺寸的开销。基于重建像素的核心尺寸相关的开销如下计算:
此开销计算是基于沿TU上面与左面边界(与之前重建块的边界)的像素。于此边界匹配过程中,仅重建边界像素。一些实施例中,转换系数可被适应性缩放或选择来进行重建。于另一实施例中,重建残值可被适应性缩放或选择来进行重建。
于另一实施例中,用于计算开销的重建像素的子集可具有不同形状且包含不同数量的像素(例如仅上面(only top),仅上方(only above),仅左面或其他像素集合)。于另一实施例中,使用不同开销函数来测量边界相似度。例如,一些实施例中,边界匹配开销函数可将NSST的对应帧内预测模式的方向计算在内。(每一帧内预测模式以不同旋转角度映射到一组NSST转换。)
一些实施例中,不同于基于重建像素执行边界匹配,开销是基于重建残值的特征来计算,例如,透过测量重建残值的能量。图5显示基于测量重建残值的能量对TU 500开销的计算。一些实施例,仅生成重建残值的一子集来计算一特定二次转换核心尺寸的开销。开销被计算为子集内重建残值的绝对值之和。(每一像素处的残值标示为r。)
不同形状与尺寸的子集可用于生成开销。对应于开销计算的Cost1,Cost2,及Cost3是基于三个不同重建残值的子集。
Cost1具体地被计算为上面列与左面的残值的绝对值之和:
Cost2具体地被计算为残值中心区域的绝对值之和:
Cost3具体地被计算为残值的右下角区域的绝对值之和:
二次转换的核心尺寸在特定条件下可被隐性地发信。一些实施例中,编码器或解码器在该块的尺寸大于一阈值时,透过对该核心尺寸使用固定值来决定该核心尺寸。例如,一些实施例中,对于尺寸大于8x8的块,NSST核心尺寸被隐性固定在8x8所以并不明确发信。一些实施例中,像素块的二次转换核心尺寸可基于预测模式及/或用于编解码像素块的二次转换模式来被隐性获取,(二次转换模式可为对应一特定旋转角度下的HyGT转换的索引)。例如,使用DC/Planar帧内预测模式编解码的块隐性地选择4x4核心尺寸而其他预测模式编解码的其他块隐性地选择8x8核心。
一些实施例中,二次转换核心尺寸可用预定流程来隐性发信。计算每一后选二次转换核心尺寸的开销。最小开销的核心尺寸可直接被大于或等于8x8的块采用。在解码器侧,选择的NSST核心尺寸可通过与编码器使用的一样的流程来获取。对一些实施例而言,使用二次转换核心尺寸相关的开销是基于重建残值的特征或重建像素与相邻块的像素之间的边界匹配计算的。基于重建像素或重建残值的开销计算已在上面参考图4与图5进行说明。
示例视频编码器
图6显示隐性及明确发信二次转换核心尺寸的示例视频编码器600。如图所示,视频编码器600从视频源605接收输入视频信号并将该信号编码进比特流695。视频编码器600包含多个组件或模块,用于编码视频信号605,包含转换模块610,量化模块611,逆量化模块614,逆转换模块615,帧内估计模块620,帧内预测模块625,运动补偿模块630,运动估计偿模块635,回路滤波器645,重建图片缓存650,MV缓存665,MV预测模块675,熵编码器690。
一些实施例中,模块610–690是软件指令模块,由计算装置或电子设备的一或多个处理单元(例如处理器)。一些实施例中,模块610–690是硬件电路,由电子装置的一或多个集成电路实施。虽然模块610–690图标为分离的模块,一些模块可合并进一个模块。
视频源605提供原始视频信号,其代表未经压缩的每一视频帧的像素数据。减法器608计算视频源605的原始视频像素数据与来自运动补偿630或帧内预测625的预测像素数据613之间的差值。转换610将该差值(或残余像素数据或残值信号609)转换为转换系数(例如执行分离余弦转换,或DCT)。量化器611将转换系数量化为量化数据(或量化系数)612,其透过熵编码器690被编码进比特流695。
逆量化模块614逆量化该量化资料(或量化系数)612以获取转换系数,且该逆转换模块615对转换系数执行逆转换来产生重建残值619。重建残值619与预测像素数据613相加,来产生重建像素数据617。一些实施例中,重建像素数据617被暂存于线缓存(图未示)内,以用于帧内预测与空间MV预测。重建像素透过回路滤波器645过滤并储存于重建图片缓存650中。一些实施例中,重建图片缓存650是视频编码器600之外的存储器。一些实施例中,重建图片缓存650是视频编码器600之内的存储器。
帧内估计模块620基于重建像素数据617执行帧内预测来产生帧内预测数据。帧内预测数据被提供给熵编码器690以被编码进比特流695。帧内预测数据也被帧内预测模块625使用来产生预测像素数据613。
运动估计模块635透过产生MV去参考储存于重建图片缓存650内的先前解码帧的像素数据来执行帧间预测。这些MV被提供给运动补偿模块630来产生预测像素数据。不同于将完整实际MV编码进比特流695,视频编码器600使用MV预测来生成预测MV,运动补偿使用的MV与预测MV之间的差值被编码为残余运动数据并存储于比特流695内。
MV预测模块675基于用于编码先前视频帧而生成的参考MV生成预测MV,即用于执行运动补偿的运动补偿MV。MV预测模块675从来自MV缓存665的先前视频帧取回参考MV。视频编码器600将从当前视频帧生成的MV储存到MV缓存665中作为用于生成预测MV的参考MV。
MV预测模块675使用参考MV来创建预测MV。预测MV可由空间MV预测或时间MV预测来计算。预测MV与当前帧的运动补偿MV(MC MV)(残余运动数据)之间的差值被熵编码器690编码进比特流695。
熵编码器690通过例如上下文二进制算术编码(context-adaptive binaryarithmetic coding,CABAC)或霍夫曼编码(Huffman encoding)的熵编码技术将各种参数及数据编码进比特流695。熵编码器690将例如量化转换数据及残余运动数据的参数编码进比特流695。比特流695反过来被储存到存储装置或透过例如网络的通讯媒介发送给解码器。
回路滤波器645对重建像素数据617执行滤波或平滑操作来减少编解码的伪影,特别在像素块的边界上。一些实施例中,执行的滤波操作包含取样适应性偏移(sampleadaptive offset,SAO)。一些实施例中,滤波操作包含适应性回路滤波器(adaptive loopfilter,ALF)。
图7显示明确及隐性发信二次转换的核心尺寸的编码器600的部分。具体地,对于每一像素块,编码器600决定是否执行二次转换以及是否明确发信该二次转换的核心尺寸。编码器600还决定二次转换的核心尺寸,计算不同核心尺寸的开销,并映射码字到不同核心尺寸。
如图所示,转换模块610对残值信号609执行核心转换与二次转换(NSST)两者,逆转换模块615执行对应的逆核心转换与逆二次转换。编码器600为转换模块610与逆转换模块615选择核心转换与二次转换。编码器600还决定二次转换与逆二次转换的核心尺寸。
编码器600包含二次转换控制模块700,核心尺寸码字编码模块710,以及核心尺寸开销分析模块800。二次控制模块700决定是否执行二次转换以及是否明确或隐性地发信用于当前像素块的二次转换核心尺寸。二次转换控制模块700可还决定核心尺寸。二次转换控制模块700基于块的尺寸(例如TU的尺寸)以及基于转换系数的子集中的非零转换系数的计数做出这些决定。二次转换控制模块700赋能或禁用转换模块610中的二次转换与逆转换模块615中的逆二次转换。二次转换控制模块700透过控制核心尺寸码字编码模块710来控制是否明确编码核心尺寸。
核心尺寸码字编码模块710从核心尺寸开销分析模块800接收不同核心尺寸的码字映射890-893。核心尺寸码字编码模块710接收由编码器600决定的二次转换的核心尺寸。核心尺寸码字编码模块710映像选择的核心尺寸到分配给不同可能核心尺寸的码字其中之一。若二次转换控制700已决定明确发信该核心尺寸而非隐性发信该核心尺寸,映射的码字被提供给熵编码器690以被包含于比特流695内。
图8概念性地显示核心尺寸开销分析模块800执行的开销分析与码字分配操作。如图所示,核心尺寸开销分析模块800接收当前块的逆量化模块614的输出,其包含逆量化转换系数636。核心尺寸开销分析模块800基于每个后选核心尺寸810-813(例如4x4,8x8,16x16,32x32)对转换系数636执行逆转换操作。核心尺寸开销分析模块800可进一步执行其他必要的逆转换820(例如逆核心转换)。每个后选核心尺寸下的逆转换的结果被作为该后选核心尺寸的重建残值(分别是核心尺寸810-813的重建残值830-833)。核心尺寸开销分析模块800接着计算每个后选核心尺寸的开销(分别为核心尺寸810-813的开销840-843)。基于逆转换的重建残值及/或从重建图片缓存650取回的像素值计算开销。后选核心尺寸的开销计算参考上面第3-5图进行说明。
基于后选核心尺寸的计算的开销的结果,核心尺寸开销分析模块800为不同核心尺寸执行码字分配850与码字映射890-893。具有最小计算的开销的后选核心尺寸被选择或辨识为预测核心尺寸,并被分配最短码字,这样当预测核心尺寸与二次转换实际使用的核心尺寸匹配时会降低码率。其他候选核心尺寸的码字分配是基于各自不同开销的不同后选核心尺寸的顺序。
示例视频解码器
图9显示可明确或隐性接收二次转换核心尺寸的发信的示例视频解码器900。如图所示,视频解码器900是一个图像解码或视频解码电路,其接收比特流995并解码比特流的内容为视频帧的像素数据以输出(如透过显示设备955显示)。视频解码器900具有用于解码比特流995的多个组件,包含逆量化模块905,逆转换模块915,帧内预测模块925,运动补偿模块935,回路滤波器945,解码图片缓存950,MV缓存965,MV预测模块975,以及比特流解析器990。
一些实施例中,模块910–990是由计算设备的一或更多处理单元(例如处理器)执行的软件指令模块。一些实施例中,模块910–990是由电子装置的一个或更多IC实施的硬件电路模块。虽然模块910–990显示为分离模块,一些模块可合并为一个模块。
解析器990(或熵解码器entropy decoder)接收比特流995并根据由一视频编解码或图像编解码标准定义的语法执行初始解析。解析的语法元素包含各种头元素,旗标,以及量化数据(或量化系数)912。解析器990通过例如CABAC或霍夫曼编解码的熵编解码技术解析出各种语法元素。
逆量化模块905逆量化该量化资料(或量化系数)912来获取转换系数,且逆转换模块915对转换系数916执行逆转换来产生重建残值信号919。重建残值信号919与来自帧内预测模块925或运动补偿模块935的预测像素数据相加以产生解码像素数据917。解码的像素数据被回路滤波器945滤波并储存于解码图像缓存950。一些实施例中,解码图像缓存950是视频解码器900之外的存储器。一些实施例中,解码图像缓存950是视频解码器900之内的存储器。
帧内预测模块925从比特流995接收帧内预测资料并根据其,从存储于解码图像缓存950内的解码像素数据917产生预测像素数据913。一些实施例中,解码像素数据917也存储于一线缓存(图未示)内以用于帧内预测与空间MV预测。
一些实施例中,解码图像缓存950的内容是用于显示。显示设备955或者直接从解码图像缓存950取回内容以用于显示,或者将解码图像缓存的内容交给显示缓存。一些实施例中,显示设备955透过一像素运输(pixel transport)从解码图像缓存950的接收像素值。
运动补偿模块935根据运动补偿MV(MC MV)从解码图像缓存950储存的解码像素数据917产生预测像素数据913。这些运动补偿MV是透过将来自比特流995接收的残值运动数据与从MV预测模块975接收的预测MV相加来被解码。
MV预测模块975基于用于解码先前视频帧而生成的参考MV来生成预测MV,例如用于执行运动补偿的运动补偿MV。MV预测模块975从MV缓存965取回先前视频帧的参考MV。视频解码器900存储用于解码当前视频帧的运动补偿MV进MV缓存965以做为产生预测MV的参考MV。
回路滤波器945于解码像素数据917上执行滤波或平滑操作以减少编解码的伪影,特别是在像素块的边界处的伪影。一些实施例中,执行的滤波操作包含取样适应性偏移(sample adaptive offset,SAO)。一些实施例中,执行的滤波操作包含适应性回路滤波(adaptive loop filter,ALF)。
图10显示解码器900处理二次转换核心尺寸的明确及隐性发信的部分。
具体地,对于每个像素块,解码器900决定是否执行二次转换以及是否隐性获取核心尺寸。解码器900还决定二次转换的核心尺寸,计算不同核心尺寸的开销,并分配映射到不同核心尺寸的码字。
解码器900包含二次转换控制模块1000,核心尺寸码字解码模块1010,以及核心尺寸开销分析模块1100。
二次转换控制模块1000决定是否执行二次转换并决定是否需要明确发信的核心尺寸或隐性获取核心尺寸。二次转换控制模块1000基于块的尺寸(例如TU的尺寸)以及/或转换系数的一特定子集中非零转换系数的数量做这些决定。二次转换控制模块1000透过对逆转换模块915中的逆二次转换赋能或跳过来控制是否执行该二次转换。二次转换控制模块1000还提供实际核心尺寸1014给逆转换915。该实际核心尺寸1014可为由核心尺寸解码模块1000通过从比特流995解析核心尺寸1013的码字而解码的明确发信的核心尺寸1012,或是从块尺寸及/或由二次转换控制模块1000决定的块内非零转换系数的数量而获取的隐性发信的核心尺寸。
熵解码器990解码比特流995且可获得用于编码当前像素块的二次转换(NSST)的核心尺寸的码字1013。核心尺寸码字解码模块1010透过查找核心尺寸的码字映射1190-1193来映射解析的码字1013到明确发信的核心尺寸1012。
核心尺寸开销分析模块1100透过执行不同后选核心尺寸的开销分析提供码字映射1190-1193,以识别分配给后选核心尺寸的码字。图11概念性显示核心尺寸码字解码模块1000执行的开销分析及码字分配操作。
如图所示,核心尺寸开销分析模块1100接收用于当前块的逆量化模块914的输出,其包含逆量化转换系数916。
核心尺寸开销分析模块1100于转换系数916上为每一后选核心尺寸1110-1113(例如4x4,8x8,16x16,32x32)执行逆转换操作。核心尺寸开销分析模块1100可进一步执行其他必要逆转换1120(例如每一逆二次转换后的逆核心转换)。每一后选核心尺寸下的逆转换结果被作为该后选核心尺寸的重建残值(核心尺寸1110-1113分别的重建残值1130-1133)。核心尺寸开销分析模块1100然后计算后选核心尺寸每一的开销(核心尺寸1110-1113分别的开销1140-1143)。开销的计算是基于逆转换的重建残值及/或从重建图片缓存950取回的像素值(例如相邻块的重建像素)。后选核心尺寸的开销计算在上面参考图3-5进行说明。
基于后选核心尺寸计算开销的结果,核心尺寸开销分析模块1100为不同核心尺寸执行码字分配1140并产生码字映射1190-1193。映射分配一个码字给每一后选核心尺寸。具有最低计算开销的后选核心尺寸被选择或识别为该预测核心尺寸并被分配最短码字,其当预测核心尺寸与二次转换实际使用的核心尺寸匹配时降低码率。其他候选核心尺寸的码字分配是基于各自不同开销的不同后选核心尺寸的顺序。
图12概念性显示发信二次转换核心尺寸的流程1200。一些实施例中,实施该编码器600或解码器900的一计算设备的一或多个处理单元(例如处理器)透过执行储存于一计算器可读媒介中的指令执行流程1200。一些实施例中,实施该编码器600或解码器900的一电子装置执行流程1200。
一些实施例中,当编码器600为储存或传输而编码一像素块进比特流695时执行该流程1200。一些实施例中,当解码器900从比特流995解码一像素块时执行该流程1200。执行该流程1200的编码器或解码器决定是否执行二次转换(NSST)以及/或逆二次转换,是否该核心尺寸明确被发信或隐性发信,以及二次转换的核心尺寸。
编码器或解码器决定(步骤1210)该像素块的转换系数的一特定子集(例如315)内非零系数的数量的计数。一些实施例中,转换系数的特定子集对应于其上操作NSST转换的转换系数的该子集。在该子集外的转换系数不包含在计数中因为它们不是NSST转换的部分。该特定子集可为左上4x4或8x8转换系数或前向扫描顺序中前16,48,或64转换系数。
该编码器或解码器决定(步骤1215)是否非零转换系数的计数是否大于阈值。一些实施例中,该阈值为二。若该计数大于阈值,即特定子集中存在足够的非零系数,流程进行到步骤1230。若该计数不大于该阈值,编码器或解码器对像素块编码或解码(步骤1220),而并不执行二次转换。
步骤1230中,编码器或解码器基于特定程序决定NSST核心尺寸。一些实施例中,这种程序是基于块的属性,例如块的尺寸,非零系数的数量,以及/或不同可能核心尺寸的开销。一些实施例中,当块的尺寸大于阈值时编码器或解码器使用固定值用于核心尺寸。一些实施例中,编码器或解码器基于用来编码该像素块的帧内预测模式选择核心尺寸。一些实施例中,编码器或解码器计算用于编解码该像素块的不同可能核心尺寸的每一的开销,然后选择对应最低开销的核心尺寸。核心尺寸对应的开销可透过重建该块的一子块的像素来计算以及透过比较重建子块与该块的相邻像素来计算。
编码器或解码器决定(步骤1240)是否NSST核心尺寸是明确发信或隐性发信。一些实施例中,这样的程序是基于块的尺寸。一些实施例中,这样的决定是基于块的属性,例如块的尺寸,非零系数的数量,以及/或不同可能核心尺寸的开销。一些实施例中,当块的尺寸大于阈值时,存在用于选择核心尺寸的明确旗标。一些实施例中,当转换系数的子集的非零系数的计数大于阈值时,存在用于选择核心尺寸的明确旗标(这样的阈值与决定是否有用于执行NSST的足够数量的非零转换系数的阈值可能相同或可能不相同)。若该核心尺寸要被隐性发信,流程进行到1260而并不明确发信。若核心尺寸要被明确发信,流程进行到1250。
步骤1250中,编码器编码(或解码器解码)识别选择的NSST核心尺寸的码字。不同可能的核心尺寸基于每一可能核心尺寸计算的开销被分配不同码字。最低开销的核心尺寸被分配最短码字。一些实施例中,码字可为一个旗标部分,该旗标可编码于比特流的片头,序列头,或图片头中。流程然后进行到步骤1260。
示例电子***
很多上述的特征和应用可以被实现为软件处理,其被指定为记录在计算机可读存储介质(computer readable storage medium)(也被称为计算机可读介质)上的指令集。当这些指令由一个或者多个计算单元或者处理单元(例如,一个或者多个处理器、处理器核或者其他处理单元)来执行时,则这些指令使得该处理单元执行这些指令所表示的动作。计算机可读介质的示例包括但不限于CD-ROM、闪存驱动器(flash drive)、随机存取内存(random access memory,RAM)芯片、硬盘、可擦写可程序设计只读存储器(erasableprogrammable read only memory,EPROM),电可擦除可程序设计只读存储器(electrically erasable programmable read-only memory,EEPROM)等。该计算机可读介质不包括透过无线或有线连接的载波和电信号。
在本说明书中,术语“软件”意味着包括只读存储器中的韧体或者存储在磁存储装置中的应用程序,该应用程序可以被读入到内存中以用于处理器进行处理。同时,在一些实施例中,多个软件发明可以作为更大程序的子部分来实现,而保留不同的软件发明。在一些实施例中,多个软件发明可以作为独立的程序来实现。最后,一起实现此处所描述的软件发明的独立的程序的任何结合是在本发明的范围内。在一些实施例中,当被安装以在一个或者多个电子***上进行操作时,软件程序定义了一个或者多个特定的机器实现方式,该机器实现方式执行和实施该软件程序的操作。
图13概念性示出在本申请一些实施例中实现的电子***1300。电子***1300可以是计算机(例如,台式计算机、个人计算机、平板计算机等)、电话、PDA或者其他种类的电子设备。这个电子***包括各种类型的计算机可读媒质和用于各种其他类型的计算机可读媒质的接口。电子***1300包括总线1305、处理单元1310、图像处理单元((graphics-processing unit,GPU)1315、***内存1320、网络1325、只读存储器(read-only memory,ROM)1330、永久存储装置1335、输入设备1340和输出设备1345。
总线1305集体表示与大量的电子***1300通信连接的内部设备的所有***总线、外设总线和芯片组总线。例如,总线1305透过图像处理单元1315、只读存储器1330、***内存1320和永久存储装置1335,与处理单元1310通信连接。
对于这些各种内存单元,处理单元1310取回执行的指令和处理的数据,以为了执行本发明的处理。在不同实施例中,该处理单元可以是单个处理器或者多核处理器。某些指令被传输图像处理单元1315和并被其执行。该图像处理单元1315可以卸除各种计算或补充由处理单元1310提供的图像处理。
只读存储器1330存储处理单元1310或者电子***的其他模块所需要的静态数据和指令。另一方面,永久存储装置1335是一种读写内存设备(read-and-write memory)。这个设备是一种非易失性(non-volatile)内存单元,其即使在电子***1300关闭时也存储指令和数据。本发明的一些实施例使用大容量存储设备(例如磁盘或光盘及其相应的磁盘驱动器)作为永久存储装置1335。
其他实施例使用卸除式存储装置设备(如软盘、闪存设备等,以及其相应的磁盘驱动器)作为该永久存储装置。与永久存储装置1335一样,***内存1320是一种读写内存设备。但是,与存储装置1335不一样的是,该***内存1320是一种易失性(volatile)读写内存,例如随机读取内存。***内存1320存储一些处理器在运行时需要的指令和数据。在一些实施例中,根据本发明的处理被存储在该***内存1320、永久存储装置1335和/或只读存储器1330中。例如,各种内存单元包括用于根据一些实施例的处理多媒体剪辑的指令。对于这些各种内存单元,处理单元1310取回执行的指令和处理的数据,以为了执行某些实施例的处理。
总线1305也连接到输入设备1340和输出设备1345。该输入设备1340使得用户沟通信息并选择指令到该电子***上。该输入设备1340包括字母数字元键盘和指点设备(也被称为“游标控制设备”),摄像机(如网络摄像机(webcam)),用于接收语音命令的麦克风或类似的设备等。输出设备1345显示由电子***生成的图像或以其他方式输出的数据。输出设备1345包括打印机和显示设备,例如阴极射线管(cathode ray tube,CRT)或液晶显示器(liquid crystal display,LCD),以及扬声器或类似的音讯输出设备。一些实施例包括诸如同时用作输入设备和输出设备的触摸屏等设备。
最后,如图13所示,总线1305也透过网络适配器(未示出)将电子***1300耦接到网络1325。在这个方式中,计算机可以是计算机网络(例如,局域网(local area network,LAN)、广域网(wide area network,WAN)或者内部网络)或者网络的网络(例如互联网)的一部分。电子***1300的任一或者所有组件可以与本发明结合使用。
一些实施例包括电子组件,例如,微处理器、存储装置和内存,其将计算机程序指令存储到机器可读介质或者计算机可读介质(可选地被称为计算机可读存储介质、机器可读介质或者机器可读存储介质)。计算机可读介质的一些实例包括RAM、ROM、只读光盘(read-only compact disc,CD-ROM),可录制光盘(recordable compact disc,CD-R)、可擦写光盘(rewritable compact disc,CD-RW)、只读数字通用光盘(read-only digitalversatile disc)(例如,DVD-ROM,双层DVD-ROM)、各种可记录/可擦写DVD(例如DVD RAM、DVD-RW、DVD+RW等)、闪存(如SD卡、迷你SD卡,微SD卡等)、磁性和/或固态硬盘、只读和可刻录(Blu-)盘、超高密度光盘和其他任何光学介质或磁介质,以及软盘。计算机可读介质可以存储由至少一个处理单元执行的计算机程序,并且包括用于执行各种操作的指令集。计算机程序或计算机代码的示例包括机器代码,例如编译程序产生的机器代码,以及包含由计算机、电子组件或微处理器使用注释器(interpreter)而执行的高级代码的文档。
当以上讨论主要是指执行软件的微处理器或多核处理器时,很多上述的功能和应用程序由一个或多个集成电路执行,如特定应用的集成电路(application specificintegrated circuit,ASIC)或现场可程序设计门阵列(field programmable gate array,FPGA)。在一些实施例中,这种集成电路执行存储在该电路本身上的指令。此外,一些实施例执行存储在可程序设计逻辑器件(programmable logic device,PLD),ROM或RAM设备中的软件。
如本发明的说明书和任一请求项中所使用,术语“计算机”、“服务器”、“处理器”和“内存”均指电子设备或其他技术设备。这些术语不包括人或群体。为了本说明书的目的,术语显示或显示设备指在电子设备上进行显示。如本发明的说明书和任一请求项中所使用,术语“计算机可读介质”、“计算机可读媒质”和“机器可读介质”完全局限于有形的、实体的物体,其以计算机可读的形式存储信息。这些术语不包括任何无线信号、有线下载信号和其他任何短暂信号。
在结合许多具体细节的情况下描述了本发明时,本领域通常知识者将认识到,本发明可以以其他具体形式而被实施,而不脱离本发明的精神。此外,大量的图(包括图1和图12)概念性示出了处理。这些处理的具体操作可以不以所示以及所描述的确切顺序来被执行。这些具体操作可用不在一个连续的操作系列中被执行,并且不同的具体操作可以在不同的实施例中被执行。另外,该处理透过使用几个子处理而被实现,或者作为更大宏处理的部分。因此,本领域通常知识者将能理解的是,本发明不受前述说明性细节的限制,而是由请求项加以界定。
附加的说明
本文所描述的主题有时表示不同的组件,其包含在或者连接到其他不同的组件。可以理解的是,所描述的结构仅是示例,实际上可以由许多其他结构来实施,以实现相同的功能。从概念上讲,任何实现相同功能的组件的排列实际上是“相关联的”,以便实现所需的功能。因此,不论结构或中间部件,为实现特定的功能而组合的任何两个组件被视为“相互关联”,以实现所需的功能。同样,任何两个相关联的组件被看作是相互“可操作连接”或“可操作耦接”,以实现特定功能。能相互关联的任何两个组件也被视为相互“可操作地耦合”以实现特定功能。可操作连接的具体例子包括但不限于物理可配对和/或物理上相互作用的组件,和/或无线可交互和/或无线上相互作用的组件,和/或逻辑上相互作用和/或逻辑上可交互的组件。
此外,关于基本上任何复数和/或单数术语的使用,本领域的技术人员可以根据上下文和/或应用从复数转换为单数和/或从单数到复数。为清楚起见,本文明确规定了不同的单数/复数排列。
此外,本领域的通常知识者可以理解,通常,本发明所使用的术语特别是请求项中的,如请求项的主题,通常用作“开放”术语,例如,“包括”应解释为“包括但不限于,“有”应理解为“至少有”“包括”应解释为“包括但不限于”等。本领域的通常知识者可以进一步理解,若计划介绍特定数量的请求项内容,将在请求项内明确表示,并且,在没有这类内容时将不显示。例如,为帮助理解,下面请求项可能包含短语“至少一个”和“一个或多个”,以介绍请求项内容。然而,这些短语的使用不应理解为暗示使用不定冠词“a”或“an”介绍请求项内容,而限制了任何特定的请求项。甚至当相同的请求项包括介绍性短语“一个或多个”或“至少有一个”,不定冠词,例如“a”或“an”,则应被解释为表示至少一个或者更多,对于用于介绍请求项的明确描述的使用而言,同样成立。此外,即使明确引用特定数量的介绍性内容,本领域通常知识者可以认识到,这样的内容应被解释为表示所引用的数量,例如,没有其他修改的“两个引用”,意味着至少两个引用,或两个或两个以上的引用。此外,在使用类似于“A、B和C中的至少一个”的表述的情况下,通常如此表述是为了本领域通常知识者可以理解该表述,例如,“***包括A、B和C中的至少一个”将包括但不限于单独具有A的***,单独具有B的***,单独具有C的***,具有A和B的***,具有A和C的***,具有B和C的***,和/或具有A、B和C的***,等。本领域通常知识者进一步可理解,无论在说明书中、请求项中或者附图中,由两个或两个以上的替代术语所表现的任何分隔的单词和/或短语应理解为,包括这些术语中的一个,其中一个,或者这两个术语的可能性。例如,“A或B”应理解为,“A”,或者“B”,或者“A和B”的可能性。
从前述可知,为了说明目的,此处已描述了各种实施方案,并且在不偏离本发明的范围和精神的情况下,可以进行各种变形。因此,此处所公开的各种实施方式不用于限制,专利申请范围表示真实的范围和精神。
Claims (24)
1.一种方法,包含:
接收像素块;
决定该像素块的转换系数的特定子集中非零转换系数的计数;
当该计数大于特定阈值时,透过为该像素块执行不可分离二次转换来编解码该像素块以输出;以及
当该计数小于该特定阈值时,编解码该像素块以输出,而不为该像素块执行不可分离二次转换。
2.根据权利要求1所述的方法,其特征在于,该像素块由帧内预测所编码。
3.根据权利要求1所述的方法,其特征在于,该子集之外的转换系数并不包含于该计数内。
4.根据权利要求1所述的方法,其特征在于,转换系数的该特定子集包含于前向扫描中前16,48或64转换系数,或该像素块一个转换单元的左上4x4或8x8的转换系数。
5.根据权利要求1所述的方法,其特征在于,转换系数的该特定子集包含不可分离二次转换执行于其上的转换系数。
6.一种方法,包含:
接收一个像素块;
编解码该像素块以输出,其中采用不可分离二次转换来转换该像素块的系数;以及
从多个可能核心尺寸中为该像素块选择用于该不可分离二次转换的核心尺寸。
7.根据权利要求6所述的方法,其特征在于,选择该核心尺寸的步骤包含:当该块的尺寸大于阈值时,隐性获取该核心尺寸的固定值。
8.根据权利要求6所述的方法,其特征在于,该核心尺寸基于该像素块的帧内预测模式隐性获取。
9.根据权利要求6所述的方法,其特征在于,该核心尺寸基于用于编解码该像素块的该多个核心尺寸的每一相关的开销来隐性获取,其中该选择的核心尺寸是与最低开销相关的核心尺寸。
10.根据权利要求9所述的方法,其特征在于,计算与核心尺寸相关的开销包含:对转换系数的一个子集采用具有该核心尺寸的逆不可分离二次转换。
11.根据权利要求9所述的方法,其特征在于,与核心尺寸相关的开销是透过基于具有该核心尺寸的不可分离二次转换来重建该块的多个像素以及透过比较该块的该多个重建像素与相邻块的重建像素来计算。
12.根据权利要求9所述的方法,其特征在于,与核心尺寸相关的开销是透过基于具有该核心尺寸的不可分离二次转换来重建该块的多个残值以及透过测量该多个重建残值的能量来计算。
13.根据权利要求6所述的方法,其特征在于,选择该核心尺寸的步骤包含:包括指示比特流内的该选择核心尺寸的旗标,或当该块的尺寸大于阈值时从该比特流解析指示该选择核心尺寸的该旗标。
14.根据权利要求13所述的方法,其特征在于,该旗标是位于该比特流的片头中,序列头中,或图片头中。
15.根据权利要求13所述的方法,其特征在于,选择该核心尺寸的步骤包含:当该块的该尺寸不大于该阈值时,基于该块的该尺寸获取该核心尺寸而不包含或解析该旗标。
16.根据权利要求13所述的方法,其特征在于,选择该核心尺寸的步骤包含:基于预定准则获取该核心尺寸而不包含或解析该旗标。
17.根据权利要求6所述的方法,其特征在于,选择该核心尺寸的步骤包含:当该转换系数的子集内的非零系数的计数大于阈值时,包括指示该选择核心尺寸的旗标进入比特流或从该比特流解析指示该选择核心尺寸的该旗标。
18.根据权利要求6所述的方法,其特征在于,选择该核心尺寸的步骤包含对识别该核心尺寸的码字编码或解码,
其中不同可能核心尺寸基于该可能核心尺寸的每一计算的开销被分配不同码字,其中最低开销的核心尺寸被分配最短码字。
19.根据权利要求18所述的方法,其特征在于,与核心尺寸相关的开销是透过对转换系数的子集采用具有该核心尺寸的逆不可分离二次转换来计算。
20.根据权利要求18所述的方法,其特征在于,与核心尺寸相关的开销是透过基于具有该核心尺寸的不可分离二次转换来重建该块的多个像素以及透过比较该块的该多个重建像素与相邻块的重建像素来计算。
21.根据权利要求9所述的方法,其特征在于,与核心尺寸相关的开销是透过基于具有该核心尺寸的不可分离二次转换来重建该块的多个残值以及透过测量该多个重建残值的能量来计算。
22.一种电子装置,包含:
视频编码器电路,用于:
编码像素块为一组转换系数;
决定该转换系数的特定子集内非零转换系数的计数;
当该计数大于特定阈值时,基于该组转换系数,透过执行不可分离二次转换来编码该像素块;
当该计数小于该特定阈值时,编码该像素块而不为该像素块执行不可分离二次转换;以及
储存或传输编码的该像素块进入比特流。
23.一种电子装置,包含:
视频解码器电路,用于:
接收包含编码像素块的比特流;
决定该像素块的转换系数的特定子集内非零转换系数的计数;
当该计数大于特定阈值时,透过对该像素块执行不可分离二次转换来解码该像素块;
当该计数小于该特定阈值时,解码该像素块而不为该像素块执行不可分离二次转换;以及
输出解码的该像素块。
24.一种电子装置,包含:
视频解码器电路,用于:
接收像素块;
编码该像素块以传输或解码该像素块以输出,其中采用不可分离二次转换来转换该像素块的系数;以及
发信核心尺寸的选择,该核心尺寸是从多个可能核心尺寸中为该像素块用于该不可分离二次转换而选择的。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762485406P | 2017-04-14 | 2017-04-14 | |
US62/485,406 | 2017-04-14 | ||
US15/946,765 | 2018-04-06 | ||
US15/946,765 US10855997B2 (en) | 2017-04-14 | 2018-04-06 | Secondary transform kernel size selection |
PCT/CN2018/082967 WO2018188648A1 (en) | 2017-04-14 | 2018-04-13 | Secondary transform kernel size selection |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110546954A true CN110546954A (zh) | 2019-12-06 |
CN110546954B CN110546954B (zh) | 2022-07-26 |
Family
ID=63790483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880024316.0A Active CN110546954B (zh) | 2017-04-14 | 2018-04-13 | 二次转换相关的方法与电子装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10855997B2 (zh) |
EP (1) | EP3607748A4 (zh) |
CN (1) | CN110546954B (zh) |
TW (1) | TWI677234B (zh) |
WO (1) | WO2018188648A1 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017030418A1 (ko) * | 2015-08-19 | 2017-02-23 | 엘지전자(주) | 다중 그래프 기반 모델에 따라 최적화된 변환을 이용하여 비디오 신호를 인코딩/ 디코딩하는 방법 및 장치 |
CN110326294A (zh) * | 2017-01-03 | 2019-10-11 | Lg电子株式会社 | 使用二次变换编码/解码视频信号的方法和设备 |
US20180288439A1 (en) * | 2017-03-31 | 2018-10-04 | Mediatek Inc. | Multiple Transform Prediction |
US11252420B2 (en) * | 2017-12-15 | 2022-02-15 | Lg Electronics Inc. | Image coding method on basis of secondary transform and device therefor |
KR102604680B1 (ko) | 2017-12-21 | 2023-11-21 | 엘지전자 주식회사 | 선택적 변환에 기반한 영상 코딩 방법 및 그 장치 |
CN116847081A (zh) * | 2018-04-01 | 2023-10-03 | Lg电子株式会社 | 图像解码设备、图像编码设备和用于发送视频信号的设备 |
US10462486B1 (en) * | 2018-05-07 | 2019-10-29 | Tencent America, Llc | Fast method for implementing discrete sine transform type VII (DST 7) |
JP7223014B2 (ja) * | 2018-06-03 | 2023-02-15 | エルジー エレクトロニクス インコーポレイティド | 縮小された変換を用いて、ビデオ信号を処理する方法及び装置 |
WO2020009434A1 (ko) * | 2018-07-02 | 2020-01-09 | 엘지전자 주식회사 | 이차 변환을 기반으로 비디오 신호를 처리하는 방법 및 장치 |
CN112703738B (zh) * | 2018-08-03 | 2024-07-16 | V-诺瓦国际有限公司 | 针对信号增强编码的上采样 |
CN116055718A (zh) * | 2018-09-05 | 2023-05-02 | Lg电子株式会社 | 设备对图像信号进行编码/解码的方法及比特流发送方法 |
JP7200379B2 (ja) * | 2018-12-06 | 2023-01-06 | エルジー エレクトロニクス インコーポレイティド | 二次変換に基づく映像コーディング方法、及びその装置 |
GB2579824B (en) | 2018-12-14 | 2022-05-18 | British Broadcasting Corp | Video encoding and video decoding |
GB2580326A (en) * | 2018-12-28 | 2020-07-22 | British Broadcasting Corp | Video encoding and video decoding |
KR20210080557A (ko) * | 2019-01-07 | 2021-06-30 | 엘지전자 주식회사 | 이차 변환에 기반한 영상 코딩 방법 및 그 장치 |
CN116781895A (zh) * | 2019-01-12 | 2023-09-19 | Lg电子株式会社 | 解码设备、编码设备和图像数据发送设备 |
KR20210114386A (ko) | 2019-02-08 | 2021-09-23 | 주식회사 윌러스표준기술연구소 | 이차 변환을 이용하는 비디오 신호 처리 방법 및 장치 |
US11190794B2 (en) * | 2019-02-12 | 2021-11-30 | Tencent America LLC | Method and apparatus for video coding |
WO2020171671A1 (ko) * | 2019-02-24 | 2020-08-27 | 엘지전자 주식회사 | 이차 변환에 기반한 영상 코딩 방법 및 그 장치 |
JP7293376B2 (ja) | 2019-02-28 | 2023-06-19 | ヒューマックス・カンパニー・リミテッド | イントラ予測ベースのビデオ信号処理方法及び装置 |
GB2582023A (en) * | 2019-03-08 | 2020-09-09 | British Broadcasting Corp | Method of signalling in a video codec |
CN111669579B (zh) * | 2019-03-09 | 2022-09-16 | 杭州海康威视数字技术股份有限公司 | 进行编码和解码的方法、编码端、解码端和*** |
JP2020150338A (ja) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | 画像復号装置、画像復号方法、及びプログラム |
JP2020150340A (ja) * | 2019-03-11 | 2020-09-17 | キヤノン株式会社 | 画像符号化装置、画像符号化方法、及びプログラム |
WO2020184991A1 (ko) | 2019-03-11 | 2020-09-17 | 엘지전자 주식회사 | Ibc 모드를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 |
US11172211B2 (en) * | 2019-04-04 | 2021-11-09 | Tencent America LLC | Method and apparatus for video coding |
CN114223207B (zh) * | 2019-04-16 | 2023-09-22 | 寰发股份有限公司 | 用次要变换编解码视讯数据的方法以及装置 |
CN113711607B (zh) * | 2019-04-16 | 2023-10-10 | 寰发股份有限公司 | 用适应性次要变换信令编解码视频数据的方法以及装置 |
KR20220122783A (ko) * | 2019-04-16 | 2022-09-02 | 엘지전자 주식회사 | 변환 인덱스를 이용하는 영상 코딩 |
CN113785576B (zh) | 2019-04-23 | 2023-05-16 | 北京字节跳动网络技术有限公司 | 编解码视频中的二次变换的使用 |
CN113711597B (zh) | 2019-04-23 | 2022-11-25 | 北京字节跳动网络技术有限公司 | 上下文建模和多重变换矩阵的选择 |
WO2020228673A1 (en) * | 2019-05-10 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Conditional use of reduced secondary transform for video processing |
US11032572B2 (en) | 2019-05-17 | 2021-06-08 | Qualcomm Incorporated | Low-frequency non-separable transform signaling based on zero-out patterns for video coding |
US11218728B2 (en) | 2019-06-04 | 2022-01-04 | Tencent America LLC | Method and apparatus for video coding |
CN113950828B (zh) * | 2019-06-07 | 2024-07-05 | 北京字节跳动网络技术有限公司 | 视频比特流中的简化二次变换的有条件信令 |
US11695960B2 (en) | 2019-06-14 | 2023-07-04 | Qualcomm Incorporated | Transform and last significant coefficient position signaling for low-frequency non-separable transform in video coding |
CN116916023A (zh) | 2019-06-19 | 2023-10-20 | Lg电子株式会社 | 图像解码和编码方法、存储介质及发送方法 |
EP3754981A1 (en) * | 2019-06-20 | 2020-12-23 | InterDigital VC Holdings, Inc. | Explicit signaling of reduced secondary transform kernel |
GB2585030A (en) * | 2019-06-25 | 2020-12-30 | British Broadcasting Corp | Method of signalling in a video codec |
KR20220024500A (ko) | 2019-07-12 | 2022-03-03 | 엘지전자 주식회사 | 변환에 기반한 영상 코딩 방법 및 그 장치 |
JP7422858B2 (ja) | 2019-08-03 | 2024-01-26 | 北京字節跳動網絡技術有限公司 | ビデオ処理方法、装置、記憶媒体及び記憶方法 |
WO2021032045A1 (en) | 2019-08-17 | 2021-02-25 | Beijing Bytedance Network Technology Co., Ltd. | Context modeling of side information for reduced secondary transforms in video |
WO2021034100A1 (ko) * | 2019-08-19 | 2021-02-25 | 엘지전자 주식회사 | 영상 코딩 시스템에서 무손실 코딩을 적용하는 영상 디코딩 방법 및 그 장치 |
CN116527937A (zh) * | 2019-09-21 | 2023-08-01 | Lg电子株式会社 | 图像解码方法、图像编码方法和数据发送方法 |
US11206428B1 (en) * | 2020-07-14 | 2021-12-21 | Tencent America LLC | Method and apparatus for frequency-dependent joint component secondary transform |
US11611770B2 (en) * | 2020-10-14 | 2023-03-21 | Tencent America LLC | Method and apparatus for video coding |
US20230099292A1 (en) * | 2021-09-29 | 2023-03-30 | Malini MANOCHA | Detection and management of dysfunctions in subterranean operations |
US20230291900A1 (en) * | 2022-03-09 | 2023-09-14 | Tencent America LLC | Systems and methods for partition dependent secondary transform |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2464013A1 (en) * | 2009-08-06 | 2012-06-13 | Panasonic Corporation | Encoding method, decoding method, encoding device and decoding device |
CN106231329A (zh) * | 2010-04-13 | 2016-12-14 | Ge视频压缩有限责任公司 | 解码器、解码方法、编码器以及编码方法 |
WO2017058615A1 (en) * | 2015-09-29 | 2017-04-06 | Qualcomm Incorporated | Non-separable secondary transform for video coding with reorganizing |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10992958B2 (en) * | 2010-12-29 | 2021-04-27 | Qualcomm Incorporated | Video coding using mapped transforms and scanning modes |
WO2012119540A1 (en) | 2011-03-10 | 2012-09-13 | Mediatek Singapore Pte. Ltd. | Method and apparatus of deblocking filter |
US20120320972A1 (en) * | 2011-06-16 | 2012-12-20 | Samsung Electronics Co., Ltd. | Apparatus and method for low-complexity optimal transform selection |
EP2587803A1 (en) | 2011-10-27 | 2013-05-01 | Thomson Licensing | Methods for coding and reconstructing a pixel block and corresponding devices. |
CN103796014A (zh) | 2012-10-31 | 2014-05-14 | 朱洪波 | 条件于系数数目的自适应插值滤波器编码 |
US20140254661A1 (en) * | 2013-03-08 | 2014-09-11 | Samsung Electronics Co., Ltd. | Method and apparatus for applying secondary transforms on enhancement-layer residuals |
CN106358042B (zh) * | 2015-07-17 | 2020-10-09 | 恩智浦美国有限公司 | 使用视频图像的帧间预测的并行解码器 |
WO2017065525A2 (ko) * | 2015-10-13 | 2017-04-20 | 삼성전자 주식회사 | 영상을 부호화 또는 복호화하는 방법 및 장치 |
US10666984B2 (en) * | 2016-03-08 | 2020-05-26 | Qualcomm Incorporated | Apparatus and method for vector-based entropy coding for display stream compression |
CN110326294A (zh) * | 2017-01-03 | 2019-10-11 | Lg电子株式会社 | 使用二次变换编码/解码视频信号的方法和设备 |
-
2018
- 2018-04-06 US US15/946,765 patent/US10855997B2/en active Active
- 2018-04-09 TW TW107112089A patent/TWI677234B/zh active
- 2018-04-13 CN CN201880024316.0A patent/CN110546954B/zh active Active
- 2018-04-13 EP EP18784277.8A patent/EP3607748A4/en active Pending
- 2018-04-13 WO PCT/CN2018/082967 patent/WO2018188648A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2464013A1 (en) * | 2009-08-06 | 2012-06-13 | Panasonic Corporation | Encoding method, decoding method, encoding device and decoding device |
CN106231329A (zh) * | 2010-04-13 | 2016-12-14 | Ge视频压缩有限责任公司 | 解码器、解码方法、编码器以及编码方法 |
WO2017058615A1 (en) * | 2015-09-29 | 2017-04-06 | Qualcomm Incorporated | Non-separable secondary transform for video coding with reorganizing |
Also Published As
Publication number | Publication date |
---|---|
US20180302631A1 (en) | 2018-10-18 |
WO2018188648A1 (en) | 2018-10-18 |
EP3607748A4 (en) | 2021-01-13 |
TWI677234B (zh) | 2019-11-11 |
US10855997B2 (en) | 2020-12-01 |
EP3607748A1 (en) | 2020-02-12 |
TW201842770A (zh) | 2018-12-01 |
CN110546954B (zh) | 2022-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110546954B (zh) | 二次转换相关的方法与电子装置 | |
TWI681671B (zh) | 多重轉換預測 | |
TWI739386B (zh) | 具有適應性參數集之適應性迴路濾波器 | |
TWI749503B (zh) | 核心轉換和次級轉換間之交互作用及其裝置 | |
US9432697B2 (en) | Motion picture encoding apparatus and method thereof | |
US11303898B2 (en) | Coding transform coefficients with throughput constraints | |
US8687692B2 (en) | Method of processing a video signal | |
WO2021139770A1 (en) | Signaling quantization related parameters | |
US11350131B2 (en) | Signaling coding of transform-skipped blocks | |
US20160381364A1 (en) | Image encoding and decoding apparatus, and image encoding and decoding method | |
CN114747216A (zh) | 多重转换选择的发信技术 | |
CN112042194B (zh) | 一种编码/解码的方法及电子装置 | |
US11863750B2 (en) | Image encoding and decoding apparatus, and image encoding and decoding method using contour mode based intra prediction | |
KR102507024B1 (ko) | 디지털 이미지/비디오 자료를 인코딩 및 디코딩하는 방법 및 장치 | |
JP2017073598A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
WO2023131299A1 (en) | Signaling for transform coding | |
WO2023198187A1 (en) | Template-based intra mode derivation and prediction | |
WO2023104144A1 (en) | Entropy coding transform coefficient signs | |
WO2023241340A1 (en) | Hardware for decoder-side intra mode derivation and prediction | |
TWI826079B (zh) | 視訊編解碼方法及裝置 | |
WO2023217235A1 (en) | Prediction refinement with convolution model | |
WO2023193769A1 (en) | Implicit multi-pass decoder-side motion vector refinement | |
CN113132734A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220425 Address after: Hsinchu County, Taiwan, China Applicant after: MEDIATEK Inc. Address before: Hsinchu Science Park Road, Taiwan city of Hsinchu China Dusing 1 Applicant before: MEDIATEK Inc. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |