当前位置: 首页 > 专利查询>微软公司专利>正文

重新排序的变换系数的多级表示制造技术

技术编号:4932780 阅读:215 留言:0更新日期:2012-04-11 18:40
呈现了用于对一块频率系数进行编码和解码的技术和工具。编码器从多个可用扫描次序中选择扫描次序并随后将所选扫描次序应用于变换系数的二维矩阵,从而将频率系数的非零值一起编组在一维串中。编码器根据多级嵌套集合表示对该系数值的一维串进行熵编码。在解码时,解码器对来自多级嵌套集合表示的系数值的一维串进行熵解码。解码器从多个可用扫描次序中选择扫描次序,并随后使用所选扫描次序将这些系数重新排序回二维矩阵。

【技术实现步骤摘要】
【国外来华专利技术】重新排序的变换系数的多级表示背景在编码诸如视频帧或静止图像等图片时,编码器通常将虚拟数据拆分成多块样 本值。编码器执行诸如离散系数变换(DCT)等频率变换来将该块样本值转换成一块变换 系数。按惯例在一个块的左上方示出的变换系数一般称为DC系数,并且其他系数一般 称为AC系数。对于样本值的大多数块,频率变换往往将非零变换系数值组织到左上方, 那里是该块变换系数的较低频率部分。在频率变换之后,编码器量化变换系数值。量化一般减少DC和AC系数的可能 值的数量。这一般将量化值的分辨率以及保真度降低到原始系数值,但它使后续熵编码 更加高效。在较高频率系数具有被量化成零的低振幅时,量化往往还“移除”较高频率 系数(一般被组织在该块的右下侧)。附图说明图1示出量化之后的变换系数的8X8的块(100)的一个示例。在该示例性块 (100)中,该块左上角中的值25是DC系数,而另63个值是AC系数。虽然该块(100) 中的最高振幅系数是左上角的低频系数,但沿着右侧,该块包括较高频率的一簇非零系 数值。在量化了变换系数后,编码器对经量化的变换系数进行熵编码。一种对一块变 换系数进行编码的常见方法通过使用“ζ字形”扫描次序(200)对该块进行重新排序来开 始,如图2所示。在该方法中,编码器根据该扫描次序(200)将来自二维阵列的变换系 数的值映射成一维串。扫描次序200在块(100)的带有DC系数的左上角开始,遍历该 块(100)的位置1和2处的AC系数,遍历位置3、4和5处的AC系数,以此类推。该 扫描根据扫描次序(200)来在该块(100)上跨对角线地继续,在该块(100)的具有最高频 率AC系数的右下角位置63处结束。因为量化操作通常将较低值、较高频系数的显著一 部分量化成零,同时保留较高值、较低频系数的非零值,所以ζ字形扫描重新排序通常造 成剩余非零变换系数中的大多数都靠近一维串的开头且大量零值在该串的结尾。图2示出将扫描次序(200)应用于该块(100)变换系数所得到的示例性一维串 (250)。在该示例中,一维串(250)以与该块(100)的DC系数相对应的值25开始。扫 描次序随后读取值12,此后是两个0,值-52,以此类推。符号“EOB”表示“块结 束”并指示该块中的所有其余值都是0。编码器随后使用行程长度编码或行程级别编码来对系数值的该一维向量进行熵 编码。在行程级别编码中,编码器遍历该一维向量,将连续零值的每一行程编码成行程 计数并将每一非零值编码成一个级别。对于简单编码,编码器向行程计数和级别值分配 如Huffman码的可变长度码。简单编码的一个问题是行程计数可以从0到64变化,只对于行程计数就需要65 个代码的字母表。如果编码器将行程计数与后续非零级别值联合编码(以利用行程计数 和级别值之间的相关),则行程计数-级别字母表的大小更大,这增加了熵编码的复杂度 (例如,由于码表大小和查找操作)。将转义码用于较不频繁的组合帮助控制码表大小, 但可降低编码效率。在编码器对各行程级别组合使用同一可能的代码值而不管哪些AC系数被编码的 情况下,行程级别编码发生另一问题。如果对于较高频率AC系数而言,遇到长行程的 零值的机会增加,则对各行程级别组合使用同一可能代码值有损效率。最后,在一些情况下,使用图2所示的Z字形扫描次序(200)进行重新排序可损 害编码效率。一般而言,一个块内的邻居系数值是相关的——如果变换系数值是零,则 其邻居更可能是零,并且如果该变换系数值为非零,则其邻居更可能为非零。在一些情 况下,使用ζ字形扫描次序(200)的重新排序在一维向量中将各邻居系数位置(例如,位 置15和27)分开。例如,虽然图1中的该块(100)中的非零系数出现在两个簇中,但图 2的一维串(250)中的非零系数值被一个或多个“0”值的序列打断4次。鉴于编码和解码对于数字视频的关键重要性,编码和解码是充分开发的领域并 不令人惊奇。然而,不论先前的视频编码和解码技术的好处如何,它们都没有以下技术 和工具的优点。概述总体而言,“详细描述”呈现了用于编码和解码各块频率系数的技术和工具。 例如,这些技术和工具通过改进各块频率系数的压缩来改进编码器的性能。通过在一维 串中将频率系数的非零值编组在一起来增加压缩效率,并随后根据多级嵌套集合表示来 对这些系数值进行熵编码。在一个实施例中,诸如编码工具等工具选择多个扫描次序之一并应用所选扫描 次序来对一个块的频率系数进行重新排序。该工具使用经重新排序的频率系数的多级嵌 套集合表示来对该经重新排序的频率系数进行熵编码。这包括在概括表示中将经重新排 序的频率系数中的一个或多个的第一集合表示为多分辨率表示的第一级处的第一符号, 并且对该第一符号和多分辨率表示的第一级处的第二符号进行熵编码。在一些情况下, 该工具还在概括表示中将第一集合的经重新排序的频率系数中的一个或多个的第一子集 表示为嵌套集合表示的第二级处的第一子符号,并且该工具对该第一子符号进行熵编 码。在另一实施例中,诸如解码工具等工具通过对来自位流的视频信息进行熵解码 来重构经熵编码的视频。该工具对频率系数的多级嵌套集合表示的第一级处的第一符号 和第二符号进行解码。第一符号表示频率系数中的一个或多个的第一集合,并且第二符 号表示频率系数中的一个或多个的第二集合。接着,该工具对多级嵌套集合表示的第二 级处的第一子符号进行解码。该子符号表示第一集合的频率系数中的一个或多个的第一 子集。该工具随后确定频率系数的扫描次序,根据该扫描次序对这些系数进行重新排 序,并使用这些系数来重构视频。在一些实现中,编码工具使用Huffman编码来进行熵编码,并且解码工具使用 对应的Huffman解码。在其他实现中,编码工具使用行程级别编码或行程长度编码的另 一变型,并且解码工具使用对应解码。在一些实现中,编码和解码工具从多个预定扫描 次序中为一个块来选择扫描次序。在其他实现中,如果预定扫描次序中没有一个产生变 换系数的合适压缩,则编码工具确定新扫描次序。参考附图阅读以下详细描述,将更清楚本专利技术的前述和其他目标、特征和优 点。提供本概述是为了以简化形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所 要求保护的主题的范围。附图简述图1是示出示例性的一块经量化变换系数的图表。图2包括示出现有技术ζ字形扫描次序的图表,并且还示出将该ζ字形扫描次序 应用于来自图1的该块变换系数的结果。图3是其中可实现所描述的若干实施例的合适的计算环境的框图。图4是可用于选择扫描次序并使用各块的多级嵌套集合表示对图片进行编码的 一般化编码工具的框图。图5A-C是示出用于选择扫描次序并使用多级嵌套集合表示对图片进行编码的不 同的一般化技术的流程图。图6是示出选择扫描次序并使用多级嵌套集合表示对图片进行编码的示例性技 术的流程图。图7和8包括示出示例扫描次序的图表,并且还示出将相应扫描次序应用于来自 图1的该块变换系数的结果。图9A和9B是示出扫描次序选择的信令的伪码列表。图10是示出使用多级嵌套集合表示对一个块的一组频率系数进行编码的示例性 技术的流程图。图11A、IlB和IlC是示例多级嵌套集合表示的本文档来自技高网...

【技术保护点】
一个或多个存储指令的存储介质,所述指令在计算机上被执行时使得所述计算机执行一种对视频进行编码的方法,所述方法包括:  选择多个扫描次序之一(605);在位流中输出指示所选扫描次序的信息;  应用所选扫描次序来对一个块的多个频率系数进行排序(610);  使用经重新排序的频率系数的多级嵌套集合表示来对该经重新排序的多个频率系数进行熵编码(630),包括:  将所述经重新排序的多个频率系数中的一个或多个的第一集合表示为具有所述多级嵌套集合表示的第一级别处的第一符号的概括表示;以及对所述多级嵌套集合表示的第一级别处的所述第一符号和第二符号进行熵编码;以及  在所述位流中输出经熵编码的频率系数。

【技术特征摘要】
【国外来华专利技术】US 2008-5-2 12/151,0691.一个或多个存储指令的存储介质,所述指令在计算机上被执行时使得所述计算机 执行一种对视频进行编码的方法,所述方法包括选择多个扫描次序之一(605); 在位流中输出指示所选扫描次序的信息; 应用所选扫描次序来对一个块的多个频率系数进行排序(610); 使用经重新排序的频率系数的多级嵌套集合表示来对该经重新排序的多个频率系数 进行熵编码(630),包括将所述经重新排序的多个频率系数中的一个或多个的第一集合表示为具有所述多级 嵌套集合表示的第一级别处的第一符号的概括表示;以及对所述多级嵌套集合表示的第一级别处的所述第一符号和第二符号进行熵编码;以及在所述位流中输出经熵编码的频率系数。2.如权利要求1所述的一个或多个存储介质,其特征在于,所述第一符号指示非零系 数值在经重新排序的频率系数的第一集合中的存在或缺席。3.如权利要求1所述的一个或多个存储介质,其特征在于,所述第二符号表示在所述 第一集合外的经重新排序的多个频率系数之一。4.如权利要求3所述的一个或多个存储介质,其特征在于,对所述第一符号和所述 第二符号进行熵编码包括使用Huffman编码对所述第一符号和所述第二符号进行联合编 码。5.如权利要求1所述的一个或多个存储介质,其特征在于,对所述第一符号和所述第 二符号进行熵编码包括对所述第一符号和所述第二符号连同一个或多个其他符号进行行 程长度编码。6.如权利要求1所述的一个或多个存储介质,其特征在于,所述熵编码还包括 将所述经重新排序的多个频率系数中的一个或多个的第二集合表示为具有所述多级嵌套集合表示的第一级别处的第二符号的概括表示,其中对所述第一符号和所述第二符 号进行熵编码包括使用Huffman编码对所述第一符号和所述第二符号进行联合编码。7.如权利要求1所述的一个或多个存储介质,其特征在于,所述第一集合包括至少一 个非零系数值,并且其中所述熵编码还包括在所述多级嵌套集合表示的低于所述第一级 别的第二级别处对所述第一集合的相应系数的系数值进行熵编码。8.如权利要求1所述的一个或多个存储介质,其特征在于,所述第一集合包括至少一 个非零系数值,并且其中所述熵编码还包括将所述第一集合的频率系数中的一个或多个的第一子集表示为具有所述多级嵌套集 合表示的低于所述第一级别的第二级别处的第一子符号的概括表示。9.如权利要求8所述的一个或多个存储介质,其特征在于,还包括在所述多级嵌套集 合表示的低于所述第二级别的第三级别处对所述第一子集的相应系数的系数值进行熵编 码。10.如权利要求1所述的一个或多个存储介质,其特征在于,所述选择包括 在所述多个扫描次序之间评估多个预定扫描次序;以及如果所述多个预定扫描次序没...

【专利技术属性】
技术研发人员:C图S瑞古纳萨恩S孙CL林
申请(专利权)人:微软公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1