用于扫描变换系数的方法和装置的制作方法

文档序号:7574470阅读:161来源:国知局
专利名称:用于扫描变换系数的方法和装置的制作方法
技术领域
本发明涉及视频/图象压缩,更具体地,涉及变换系数的编码。
已知视频系统包括多个通信装置和通信信道,后者提供通信介质给通信装置。例如,通信信道可能是有线线路连接或是射频RF载波。为了增加视频系统的效率,需要通过通信媒介传输的视频是受到数字压缩的。在保持视频的感觉质量的同时,数字压缩减少了为表示该视频所需的位数。位数的减少能更有效地使用信道带宽并降低了存贮要求。为了实现数字视频压缩,每个通信装置可包含一个编码器和一个解码器。编码器能使一个通信装置在通过一个通信信道传输之前压缩视频。解码器能使该通信装置接收来自一个通信信道的被压缩的视频并使其成为可见的。可以使用数字视频压缩的通信装置包括电视发射机和接收机,有线电视发射机和接收机、视频电话、计算机以及便携式无线电台。
正在研究中的几个用于数字视频压缩的标准包括国际电信联盟(ITU),ITU-T建议H.263+和H.263/L,国际标准化组织/国际电工技术委员会(ISO/IEC),以及国际标准MPEG-4。这些标准很可能使用变换编码作为标准部件的部分以求得好的编码效率。现在,甚低比特率可视电话的专家组,LBC,为了编码效率,正在考虑使用离散余弦变换。活动图像专家组,MPEG,也可能使用离散余弦变换或其它变换形式。为了完成压缩,对变换系数要进行量化,扫描和熵编码。所以,为了使压缩容量最大,需要一种扫描量化的变换系数的方法和装置,使得它们能得到比已发表的标准H.261,H.263,MPEG-1,和MPEG-2更为有效的熵编码。


图1是一流程图,表明按照本发明一个编码方法的步骤的一个实施例。
图2是一流程图,表明按照本发明一个解码方法的步骤的一个实施例。
图3是按照本发明一个装置的一个实施例的方框图。
图4是在H.261,H.263,MPEG-1和MPEG-2中已知的扫描顺序的图形表示。
图5是按照本发明的扫描顺序的图形表示。
图6是按照本发明在每个区内扫描系数的平均功率的图形表示。
本发明是用于视频/图象压缩系统中扫描变换系数的一种方法和装置。为了扫描,首先,接收到一个预定数目的量化的变换系数。第二,将量化的变换系数分离为一预定数目的分离的系数区,区内系数比跨区系数在统计上更为相关。第三,以通常递减的平均功率的预定顺序来扫描每个区内的系数。此后,第一熵编码器对至少有一个非零系数的那些区进行编码以便提供熵编码信息位。对于每个有非零系数的系数区,由一预定方案从多个熵编码器中选出的一个编码器对它的系数进行编码来提供熵编码信息位。来自第一熵编码器以及其它熵编码器的信息位以一预定的顺序被多路复用在一起以形成最后的熵编码信息位。
本发明可与一个压缩算法一起来使用,该算法将一个图象处理为有预定变换尺寸的量化变换系数的二维字块。然后将每个字块分为多个区。按照通常递减平均功率的预定顺序将每个区内的系数扫描成为一个一维阵列。
将量化的变换系数的二维阵列扫描为系数区的多个一维阵列,如下例所示。例如,考虑8×8量化系数的二维阵列。
4 2 1 1 1 0 0 01 3 3 1 1 0 0 01 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0用图5中的扫描顺序将它扫描成DC系数,{4},以及4个一维阵列,区1={2,1,1,1,0,0,0}区2={3,3,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},区3={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},区4={1,1,0,0,0,0,0}。
发送一个可变长度码来表明区1,区2,区4含有非零系数,而区3完全由零系数组成。然后对区1,区2和区4的系数分别进行熵编码。熵编码器中的一个例子就是在H.263中用于对变换系数进行编码的熵编码器。
参考图1-5可以更完全地描述本发明。图1,标号100是一流程图,它表明按照本发明编码方法的步骤的一个实施例。编码方法中的第一步骤是将一预定数目的量化的变换系数分离为多个系数区,并将这些系数区以这样一种方式存入存贮单元(102)内,即在一个区内的系数比起跨区的系数在统计上有更大的相关。编码方法中的第二步骤是从存贮单元中检查每个系数区的每个系数来确定哪个/哪些区至少具有一个非零系数(104)。编码方法中的第三步骤是以一般递减平均功率的预定的扫描顺序(106)对至少具有一个非零系数的多个区扫描每个系数区的每个系数。编码方法中的第四步骤是用一区模式熵编码器对至少包含一个非零系数的那些系数区进行编码来提供第一熵编码信息位(108)。编码方法中的第五步骤是确定是否至少有一个系数区是将要编码的(110)。如果系数是从一静止图象产生或任何一个系数不为零,则至少有一个系数区是将要编码的。否则没有系数区要编码。编码方法中的第六即最后的步骤是在至少有一个系数区要编码的地方,通过事先从多个区熵编码器选出的一个区熵编码器对非零系数区的系数进行编码来提供第二熵编码信息位(112),这种选择是以正在被编码的系数区中系数的先验统计量作为基础的。
图2,标号200,是一流程图,它表明按照本发明解码方法的步骤的一个实施例。解码方法的第一步骤是利用区模式熵解码器对熵编码信息位进行解码来确定哪个/哪些系数区只包含零系数(202)。解码方法的第二步骤是将只含有零系数区中的零系数存入第二存贮单元(204)。解码方法的第三步骤是确定是否至少有一个系数区是要解码的(206)。如果系数是从一静止图象产生或区模式指明至少有一个区包含非零系数,则至少有一个系数区是要解码的。否则,没有系数区是要解码的。解码方法的第四或最后步骤是在至少有一个系数区是要解码的地方,通过事先从多个区熵解码器中选出的一个区熵解码器对第二熵编码信息位近行解码来提供一个/一些非零系数区的系数(208)。
图3,标号300,是按照本发明一个装置的一个实施例的方框图。该装置包含一个第一存贮单元(204),一个扫描控制器(206),一个区模式熵编码器(214),以及多个区熵编码器(216)。在完成解码时,该装置还包含一个区模式熵解码器(220),一个反向扫描控制器(226),多个区熵解码器(222),以及一个第二存贮单元(230)。
对于编码,接收到量化的变换系数(202)并将其存入第一存贮单元(204)。连接的扫描控制器(206)用来接收来自存贮单元的量化的变换系数(208),为的是将一预定数目的量化的变换系数分离为多个系数区,并以预定的一般递减平均功率的扫描顺序对每个系数区的每个系数进行扫描,来确定至少有一个非零系数的多个区,并确定是否至少有一个系数区是要编码的。连接到扫描控制器(206)的区模式熵编码器(214)是用于对区模式进行编码(212)来提供第一熵编码信息位,它指明哪个系数区至少包含一个非零系数。区熵编码器(216)连接到扫描控制器(206),并且事先有选择地连接来接收来自第一存贮单元的量化的变换系数(210),在至少有一个系数区是要编码的地方,用于编码一个/一些非零系数区的系数来提供第二熵编码信息位。
对于解码,连接的区模式熵解码器(202)接收熵编码信息位(218),用于解码熵编码信息位来确定哪个/哪些系数区只含有零系数。连接到区模式熵编码器(220)的反向扫描控制器(226)再生只含有零系数的一个/一些区的零系数,并将再生的零系数(228)存入第二存贮单元内(230),并事先决定利用多个区熵解码器(222)中哪个熵解码器来解码哪个系数区。区熵解码器(222)连接到反向扫描控制器(226),并且有选择地连接来接收第二熵编码信息位。区熵解码器对第二熵编码信息位进行解码来提供一个/多个非零系数区的系数(232)。
图4,标号400,是关于量化的8×8DCT系数扫描顺序的图形表示,正如在H.261,H.263,MPEG-1中已知的那样。8×8DCT系数用二维格栅(402)示出,从左到右水平频率(408)递增,而从顶到底垂直频率(406)递增。以锯齿形的顺序(404)扫描量化的变换系数来形成一个通常以递减平均功率顺序的64系数的一维阵列。
图5,标号500,是按照本发明关于8×8量化的内DCT系数扫描顺序的图形表示。8×8内DCT系数用二维栅格(502)示出,从左到右水平频率(410)递增,而从顶到底垂直频率(508)递增。将量化的变换系数扫描成为DC和4个分离的AC区(512,514,504,506)来形成关于AC系数的4个一维阵列。
图6,标号600,是按照本发明以扫描顺序(602)对每个区的系数的平均功率(604)的图形表示,这里区1(606)和区4(608)平均功率的图形是相似的并明显地高于区2(610)和区3(612)平均功率的图形,而区2和区3的平均功率也是相似的。
本发明对量化的变换系数编码的方法比起H.261,H.263,和MPEG-2中所用的编码方法使用更少的位数。本发明对具有相似统计量的每个区中的系数进行编码,它利用一个熵编码器可对一个区内系数局部的统计量优化,而H.261,H.263,MPEG-1和MPEG-2的每种方式中单独熵编码器不能对系数的局部统计量优化。
在不偏离本发明的精神或本质特性的条件下,本发明还可以其它具体的形式体现。所描述的实施例应被认为在各方面仅是示范性的并且不受限制的。因此,本发明的范围应由所附的权利要求所指示,而不是由以上的描述所指示。在权利要求等效性的意义和程度内的所有变化都包含在此范围内。
权利要求
1.至少在编码或解码中任一种情况下,用于图象/视频编码/解码器中扫描变换系数的一种方法,它包括以下步骤在编码中A)将一预定数目的量化的变换系数分离为多个系数区,并将系数区存入存贮单元内;B)从存贮单元检查每个系数区的每个系数来确定哪个/哪些具有至少一个非零系数;C)对于至少具有一个非零系数的系数区,以一个预定的扫描顺序来扫描每个系数区的每个系数;D)利用一个区模式熵编码器对至少包含一个非零系数的那个系数区进行编码来提供第一熵编码信息位;E)确定是否至少有一个系数区是要编码的;F)在至少有一个系数区是要编码的地方,按照一个预定的方案从多个区熵编码器中选出一个区熵编码器,对非零系数区的系数进行编码来提供第二熵编码信息位;以及在解码中G)利用区模式熵解码器对熵编码信息位进行解码来确定哪个/哪些系数区只包含零系数;H)将只含有零系数的一个/一些区的零系数存入第二存贮单元中;I)确定是否至少有一个系数区是要解码的;J)在至少有一个系数区是要解码的地方,使用一个预定的方案从多个区熵解码器中选出的一个区熵解码器,对第二熵编码信息位进行解码来提供一个/一些非零系数区的系数。
2.权利要求1的方法,该方法体现在A)一个集成电路;B)一个处理器;C)软件;D)一台计算机;E)一台电视机。
3.数字存贮介质,具有一种方法存贮于其中,该方法至少在编码或解码中任一种情况下,用于在图象/视频编码/解码器中扫描变换系数,它包含以下步骤在编码中A)将一预定数目的量化的变换系数分离为多个系数区,并将该系数区存入数字存贮介质;B)从数字存贮介质检查每个系数区的每个系数来确定哪个/哪些区至少具有一个非零系数;C)在至少具有一个非零系数的区内,以一个预定的扫描顺序来扫描每个系数区的每个系数;D)利用一个区模式熵编码器,对至少包含一个非零系数的那个系数区进行编码来提供第一熵编码信息位;E)确定是否至少有一个系数区是要编码的;F)在至少有一个系数区是要编码的地方,按照一个预定的方案从多个区熵编码器中选出一个区熵编码器,对非零系数区的系数进行编码来提供第二熵编码信息位;以及在解码中G)利用区模式熵解码器对熵编码信息位进行解码来确定哪个/哪些系数区只包含零系数;H)将只含有零系数的一个/一些区的零系数存入数字存贮介质;I)确定是否至少有一个系数区是要解码的;J)在至少有一个系数区是要解码的地方,使用一个预定的方案从多个区熵解码器中选出一个区熵解码器,对第二熵编码信息位进行解码来提供非零系数的一个/一些区的系数。
4.一种装置,至少在编码或解码中任一种情况下,用于在图象/视频编码/解码器中扫描量化的变换系数,它包含在编码器中A)一个用于接收和存贮量化的变换系数的存贮单元;B)连接的一个扫描控制器接收来自存贮单元的量化的变换系数,用于将一个预定数目的量化的变换系数分离为多个系数区,以一个预定的扫描顺序对每个系数区的每个系数进行扫描以便确定至少有一个非零系数的多个区并确定是否至少有一个系数区是要编码的;D)连接到扫描控制器的一个区模式熵编码器,用来编码以提供第一熵编码信息位,以表明哪个系数区至少包含一个非零系数;E)区熵编码器,连接到扫描控制器并且有选择地连接以便接收来自第一存贮单元的量化的变换系数,在至少有一个系数区是要编码的地方,按照一个预定的方案,对一个/一些非零系数区的系数进行编码,以便提供第二熵编码信息位;以及在解码中G)连接的一个区模式熵解码器接收熵编码信息位,用于对熵编码信息位进行解码,以便确定哪个/哪些系数区只包含零系数;H)连接到区模式熵编码器的一个反向扫描控制器,用于将只包含零系数的一个/一些区的零系数再生,将再生的零系数存贮在第二存贮单元内,并确定哪个系数区是要解码的;I)一个/一些区熵解码器,连接到反向扫描控制器,并有选择地连接来接收第二熵编码信息位,对第二熵编码信息位进行解码,以便提供一个/一些非零系数区的系数。
5.权利要求1的装置,该装置体现在A)一个集成电路;B)一个处理器;C)软件;D)一台计算机;E)一台电视机。
6.一台计算机,具有一种装置,至少在编码或解码中任一种情况下,该装置用于在图象/视频编码/解码器中扫描量化的变换系数,该装置包含在编码器中A)一个用于接收和存贮量化的变换系数的存贮单元;B)连接的一个扫描控制器接收来自存贮单元的量化的变换系数,用于将一个预定数目的量化的变换系数分离为多个系数区,以一个预定的扫描顺序对每个系数区的每个系数进行扫描以便确定至少有一个非零系数的多个区并确定是否至少有一个系数区是要编码的;D)连接到扫描控制器的一个区模式熵编码器,用来编码以提供第一熵编码信息位,以表明哪个系数区至少包含一个非零系数;E)区熵编码器,连接到扫描控制器并且有选择地连接以便接收来自第一存贮单元的量化的变换系数,在至少有一个系数区是要编码的地方,按照一个预定的方案,对一个/一些非零系数区的系数进行编码,以便提供第二熵编码信息位;以及在解码中G)连接的一个区模式熵解码器,接收熵编码信息位,用于对熵编码信息位进行解码,以便确定哪个/哪些系数区只包含零系数;H)连接到区模式熵编码器的一个反向扫描控制器,用于将只包含零系数的一个/一些区的零系数再生,将再生的零系数存贮在第二存贮单元内,并确定哪个系数区是要解码的;I)一个/一些区熵解码器,连接到反向扫描控制器,并有选择地连接来接收第二熵编码信息位,对第二熵编码信息位进行解码,以便提供一个/一些非零系数区的系数。
7.一个集成电路,具有一种装置,至少在编码或解码中任一种情况下,该装置用于在图象/视频编码/解码器中扫描量化的变换系数,该装置包含在编码器中A)一个用于接收和存贮量化的变换系数的存贮单元;B)连接的一个扫描控制器,接收来自存贮单元的量化的变换系数,用于将一个预定数目的量化的变换系数分离为多个系数区,以一个预定的扫描顺序对每个系数区的每个系数进行扫描以便确定至少有一个非零系数的多个区并确定是否至少有一个系数区是要编码的;D)连接到扫描控制器的一个区模式熵编码器,用来编码以提供第一熵编码信息位,以表明哪个系数区至少包含一个非零系数;E)区熵编码器,连接到扫描控制器并且有选择地连接以便接收来自第一存贮单元的量化的变换系数,在至少有一个系数区是要编码的地方,按照一个预定的方案,对一个/一些非零系数区的系数进行编码,以便提供第二熵编码信息位;以及在解码中G)连接的一个区模式熵解码器,接收熵编码信息位,用于对熵编码信息位进行解码,以便确定哪个/哪些系数区只包含零系数;H)连接到区模式熵编码器的一个反向扫描控制器,用于将只包含零系数的一个/一些区的零系数再生,将再生的零系数存贮在第二存贮单元内,并确定哪个系数区是要解码的;I)一个/一些区熵解码器,连接到反向扫描控制器,并有选择地连接来接收第二熵编码信息位,对第二熵编码信息位进行解码,以便提供一个/一些非零系数区的系数。
8.一台电视机,具有一种装置,至少在编码或解码中任一种情况下,该装置用于在图象/视频编码/解码器中扫描量化的变换系数,该装置包含在编码器中A)一个用于接收和存贮量化的变换系数的存贮单元;B)连接的一个扫描控制器,接收来自存贮单元的量化的变换系数,用于将一个预定数目的量化的变换系数分离为多个系数区,以一个预定的扫描顺序对每个系数区的每个系数进行扫描以便确定至少有一个非零系数的多个区并确定是否至少有一个系数区是要编码的;D)连接到扫描控制器的一个区模式熵编码器,用来编码以提供第一熵编码信息位,以表明哪个系数区至少包含一个非零系数;E)区熵编码器,连接到扫描控制器并且有选择地连接以便接收来自第一存贮单元的量化的变换系数,在至少有一个系数区是要编码的地方,按照一个预定的方案,对一个/一些非零系数区的系数进行编码,以便提供第二熵编码信息位;以及在解码中G)连接的一个区模式熵解码器,接收熵编码信息位,用于对熵编码信息位进行解码,以便确定哪个/哪些系数区只包含零系数;H)连接到区模式熵编码器的一个反向扫描控制器,用于将只包含零系数的一个/一些区的零系数再生,将再生的零系数存贮在第二存贮单元内,并确定哪个系数区是要解码的;I)一个/一些区熵解码器,连接到反向扫描控制器,并有选择地连接来接收第二熵编码信息位,对第二熵编码信息位进行解码,以便提供一个/一些非零系数区的系数。
全文摘要
本发明提供一种装置和方法,至少在编码或解码中任一种情况下,用于在图象/视频编码/解码器中扫描变换系数。在编码中步骤包括:将一预定数目的量化的变换系数分离为多个的系数区,并将该系数区存入存贮单元(102)内;检查每个系数以确定哪个/哪些区至少有一个非零系数(104);以一个预定的扫描顺序对至少具有一个非零系数的系数区的每个系数进行扫描(106),对至少含有一个非零系数的那个系数区进行编码以提供第一熵编码信息位(108),确定是否至少有一个系数区是要编码的(110);对非零系数进行编码以提供第二熵编码信息位(112)。解决是以镜象的方式实现。
文档编号H04N7/26GK1197523SQ97190839
公开日1998年10月28日 申请日期1997年6月27日 优先权日1996年7月3日
发明者邱翱泳(音译) 申请人:摩托罗拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1