CN1294522C - 用于多标度零树熵编码的设备和方法 - Google Patents

用于多标度零树熵编码的设备和方法 Download PDF

Info

Publication number
CN1294522C
CN1294522C CNB988085313A CN98808531A CN1294522C CN 1294522 C CN1294522 C CN 1294522C CN B988085313 A CNB988085313 A CN B988085313A CN 98808531 A CN98808531 A CN 98808531A CN 1294522 C CN1294522 C CN 1294522C
Authority
CN
China
Prior art keywords
wavelet
quantized
coefficient
wavelet coefficient
zero
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.)
Expired - Lifetime
Application number
CNB988085313A
Other languages
English (en)
Other versions
CN1268235A (zh
Inventor
伊拉吉·索达伽
李鸿儒
哈特里克·保罗
蔡冰冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
MediaTek Inc
Original Assignee
Sharp Corp
MediaTek Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US09/107,544 external-priority patent/US6269192B1/en
Application filed by Sharp Corp, MediaTek Inc filed Critical Sharp Corp
Publication of CN1268235A publication Critical patent/CN1268235A/zh
Application granted granted Critical
Publication of CN1294522C publication Critical patent/CN1294522C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/36Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]

Abstract

披露了一种编码子波树,以产生具有空间、质量和复杂性的可测量性的灵活度的比特流的装置(100)和相应的方法。扩展零树熵(ZTE)编码方法,以便通过实施多标度编码方案来实现完全可标度的编码方法。

Description

用于多标度零树熵编码的设备和方法
本申请要求获得1997年7月11日申请的美国临时申请No.60/052,245的利益,该申请在此引证作为参考。
技术领域
本发明涉及图象和视频处理系统,特别涉及用于编码子波树的图象和视频处理系统,该系统产生具有空间、质量和复杂性的可测量性的灵活度的比特流。
背景技术
数据压缩系统用于用最少数量的比特尽可能精确地表示信息,并因此必须使在信息存储系统或传送系统中存储或传送的数据量最少。由于这种分解导致源图象的分级多标度表示,所以还可称为分级子波段分解的子波变换近来已用于低比特率图象压缩。把子波变换用于低比特率图象编码的重要方面是:表示非零值位置的二进制映射(map)的编码(子波树),也称为变换系数的“有效映射”。利用其后要进行熵编码的标量量化,为了实现很低的比特率,例如小于1bit/pel,量化后最可能的符号一零符号的概率必须非常大。一般来说,比特预算的大部分必须用在编码有效映射上。由此可见,编码有效映射中的有效改进转变为在准备存储或传输的信息的压缩中的有效改进。
为了完成这个任务,已经提出了称为“零树(zerotree)”的新结构。如果系数有小于或等于T的幅度,那么该子波系数就被认为相对于给定的阈值T是无效的。零树基于这样的前提:如果粗标度的子波系数相对于给定的阈值T是无效的,那么在较细标度下相同空间位置中相同取向的所有子波系数相对于T可能都是无效的。
更具体地说,在分级的子波段系统中,除了最高频率的子波段外,给定标度下的每个系数均涉及与称为子波树的结构相同取向的下一个较细标度下的一组系数。把最粗标度下的系数称为父节点,把在相同取向的下一个较细标度下相应于相同空间或时间位置的系数称为子节点。对于给定的父节点来说,把在相同取向的所有较细标度下相应于相同位置的一组系数称为下代。同样地,对于给定的子节点来说,把在相同取向的所有较粗标度下相应于相同位置的一组系数称为祖先。
按从最粗等级至最细等级的分解标度顺序来扫描节点。这意味着直至其父节点和与该父节点相同标度的所有子波段中的其它所有父节点都被扫描后才扫描子节点。这是改进的宽度优先的类型,一个子波段接一个子波段,在由两维数据集的子波变换系数限定的所有子波树上横向完成。
给定阈值等级,以确定系数是否有效,如果1)节点上系数的幅度无效,2)节点不是根的下代,即根据较粗的标度不能完全预测该节点,和3)其所有下代都是无效的,那么认为该节点是ZEROTREEROOT。用特定的符号来编码ZEROTREE ROOT,表示完全可预测在较细标度下的系数无效。为了有效地编码二进制的有效映射,对四个符号进行熵编码:ZEROTREE ROOT、ISOLATED ZERO和两个非零符号POSITIVE SIGNIFICANT及NEGATIVE SIGNIFICANT。
在此引证作为参考的1995年5月2日颁布的美国专利5412741披露了在高度压缩下编码信息的设备和方法。该设备采用比任何现有技术都更有效的方式进行子波系数的零树编码。该设备的关键在于,动态产生将要扫描的系数索引表,从而动态产生的表仅包括必须被编码的符号的系数索引。这是对采用系数索引静态表的现有技术的引人注目的改进,并且必须单独检查各系数,以观察是否a)必须编码符号,或b)完全可以预测该符号。在‘741’专利中论述的方法被称为“Embedded Zerotree Wavelet”(EZW)的方法。
另一方面,也可以在由两维数据集的子波变换系数限定的所有子波树上深度优先地完成子波树(例如,零树)的编码。子波编码的这种方法被称为零树熵(ZTE)编码,在1997年12月31日申请的题目为“Apparatus And Method For Encoding Wavelet Trees GeneratedBy A Wavelet-Based Coding Method”的美国专利申请(代理文件SAR 12234;序号09/002251)中披露了该方法,在此引证作为参考。
尽管已经发现ZTE是有效的子波编码方法,但各种应用都可以从提供多标度子波编码即在空间分辨率和质量上提供可测量性的灵活的子波编码方法中受益。
因此,在现有技术中存在编码子波树的需要,该编码将产生具有空间、质量和复杂性的可测量性的灵活度的比特流。
发明内容
本发明是一种编码零树以产生具有空间、质量和复杂性的可测量性的灵活度的比特流的设备和相应的方法。扩展该ZTE方法,以通过实施多标度零树编码方案获得完全可标度的编码方法。
更具体地说,首先用第一量化器Q0量化第一空间分辨率(和/或质量(信噪比(SNR)))层的子波系数。利用零树概念扫描这些量化系数,然后对有效映射和被量化的系数作熵编码。在该层次上的熵编码器的输出BS0包括比特流的第一部分。
接着,还重新构成第一层的量化子波系数,并从原有的子波系数中减去该系数。这些“剩余”子波系数被送入编码器的下一级,在该级中,用第二(下一个)量化器Q1量化该子波系数,然后,该系数被零树扫描和作熵编码。该级的输出BS1包括输出比特流的第二部分。
再次重新构成第二级的量化系数,并从原有系数中减去该系数。对N级连续进行该处理,以提供N层的可测量性。各级表示SNR的一层或空间(或两者)可测量性。通过把上述N级编码器施加给输入图象的不同空间分辨率来提供空间可测量性。因此,有效地产生可测量性等级或层的宽范围,并插入所获得的比特流中,对于特定应用按需要用例如解码器来抽取该比特流。
本发明提供一种把输入图象编码成比特流的方法,该方法利用子波变换产生具有按父子关系构成为多个子波段的多个子波系数的一个子波树,所述方法包括以下步骤:产生输入图象的具有多个原有子波系数的子波树;用第一量化器量化所述多个原有子波系数;按深度优先方式对所述多个子波段的至少一个施行零树扫描,以把一符号分配给所述子波树的至少一个所述被量化的子波系数;按照所述被分配的符号,编码所述多个被量化的子波系数,产生第一可测量层;和重新构成所述被量化的子波系数,产生下一个可测量层。
本发明还提供一种把输入图象编码成比特流的设备,利用子波变换产生具有按父子关系构成为多个子波段的多个子波系数的一个子波树,所述装置包括以下部分:用于产生输入图象的具有多个原有子波系数的一子波树的装置;用第一量化器量化所述多个原有子波系数的部分;按深度优先方式对所述多个子波段的至少一个施行零树扫描,以把符号分配给所述子波树的至少一个所述被量化子波系数的装置;按照所述分配的符号编码所述多个被量化的子波系数,以产生第一可测量层的装置;和重新构成所述被量化的子波系数,以产生下一个可测量层的装置。
附图简述
通过以下结合附图的详细说明,可以迅速理解本发明的技术,其中:
图1是本发明的图象编码器的方框图;
图2是展示图1所示的编码器的编码方法的流程图;
图3示意性说明在子波树内被分解为三个标度的图象中子波段的父子相关性;
图4表示子取样图象的三代的父子关系;
图5表示子波树内各种节点之关系的示意图;
图6表示子波树的子波块表示法;
图7表示本发明实施的量化方法的流程图;
图8表示本发明实施的符号分配方法的流程图;
图9表示具有空间分辨率可测量性层的比特流方框图;
图10表示具有SNR层或质量可测量性层的比特流方框图;
图11表示具有组合的SNR-空间可测量性的比特流方框图;
图12表示图1所示的图象编码器的详细方框图;
图13示意性展示四个非零子波系数;
图14展示产生SNR可测量性层的一部分编码器的方框图;
图15展示根据上一层预测下一层的有效映射的状态图;
图16展示利用零树状态跟踪各子波系数状态的状态图;和
图17展示本发明的编码系统和解码系统。
为了便于理解,在可能的地方使用相同的参考序号来表示附图中所共有的相同元件。
具体实施方式
图1表示本发明编码器100的方框图,而图2表示图1所示的编码器100的操作流程图。为了更好地理解本发明,读者应该同时参照图1和图2,并且参阅本发明的以下说明。此外,首先参照ZTE来说明本发明,然后进行必要的改进,产生多标度ZTE。
编码器100包括子波树发生器104、可选择的子波树重构器108、量化器110、符号分配器112和熵编码器114。这些成分中的每个成分都串联连接,把端口102上的图象处理成为端口116上的被编码的输出图象。输入图象一般是象素化(数字化)的摄影图象,可以由图象扫描器或计算机图象系统产生。但是,输入图象也可以是在视频图象的一串帧内或由视频编码系统产生的运动补偿剩余帧内的帧。一般来说,本发明处理任何形式的数字化图象或该图象的一部分。因此,操作方法一般在步骤202开始输入“图象”即两维数据的任何形式。
子波树发生器104(在步骤204中)进行子波分级子波段分解,产生输入图象的普通子波树表示。为了完成这种图象分解,利用在两维中每一个上的双倍(times two)子取样,把图象分解成高水平-高垂直(HH)、高水平-低垂直(HL)、低水平-高垂直(LH)和低水平-低垂直(LL)的频率子波段。然后,LL子波段在两维中每一个上再双倍子取样,以产生一组HH、HL、LH和LL子波段。该子取样递归地进行,以产生如图3所示的采用三个子取样的子波段阵列。实际上最好采用四个或更多个子取样,但本发明可以采用任意数量的子取样。由从父节点的子波段至子节点的子波段方向的箭头来表示子波段之间的父子相关性。最低频率子波段在左上部LL3,而最高频率子波段在右底部HH1。在本实例中,所有子节点有一个父节点。在J.M.Shapiro,“Embedded Image Coding Using Zerotrees ofWavelet Coefficients”,IEEE Trans.on Signal Processing,Vol.41,No.12,pp.3445-62,December 1993中披露了有关子波段分解的详细论述。
图4表示三次子取样产生的父子关系。单个父节点400有利用四倍子取样即在两维中每一个上双倍子取样的与图象中相同区域对应的四个子节点402。各子节点402有利用又一个四倍子取样的四个对应的下一代的子节点404。有关父节点与其子节点和孙节点的关系或数据结构是子波树。注意,在低-低子波段中各象素有与其相关的“树”。但是,在现有技术中一般称从同时形成的低-低子波段中延伸的多个树为图象的“子波树”。本说明书也将采用该专用术语。
再参照图1和图2,量化器110通过路径106按“深度优先”模式量化(在步骤210中)子波树的系数。就是说,该方法从低-低子波段(LL3)中的根节点经子节点横向切割各树。
图5表示用于横向切割各树的深度优先模式。例如,在LL3中的节点500开始,沿着醒目的路径,本发明的深度优先处理进入子波段LH3的节点502,然后进入子波段LH2的节点504。从节点504,深度优先横向切割处理继续进行至子波段LH1内的节点506、508、510和512,即进行至节点504的所有子节点,然后继续至504的兄弟(514、524、534),其中在下一个兄弟和其子节点前,横向切割各兄弟的四个子节点。一旦横向切割该树的该整个分支,那么横向切割处理转到节点500的另一子节点上,例如节点544。在达到节点556等之前,深度优先横向切割处理从该节点转到节点546、548、550、552和554。
随着各分支被横向切割,系数被量化成离散值。在本发明情况下可以采用任何量化方法。量化处理把连续的系数值映射成具有正值、负值或零值的离散值。总之,在深度优先扫描模式中,在其父节点504之后和任何相邻的父节点514、524和534之前扫描子节点506、508、510和512。在这种方式中,在下一个相邻空间位置被扫描之前,按从父节点500至子节点502再至孙节点504等的增长频率顺序来扫描表示给定空间位置的所有系数。
尽管深度优先扫描模式的上述说明按“从上向下”的模式进行了论述,但深度优先扫描模式也包括从下向上的扫描。因此,量化也可以从树的“叶”(最底部节点)开始,继续进行到树的上面来完成。利用图5所示的实例,在“从下向上”的模式中,将首先量化节点506、508、510和512,然后量化节点504等,最后达到树上面的节点500。一旦该树完成量化,量化处理就会量化另一棵树,再一棵树等,直至所有树中的所有节点被量化。如下所述,与从上向下模式相比,当采用从下向上模式时,本发明可更有效地进行控制。
为了简化该深度优先扫描模式,本发明识别各子波树的被量化的系数,形成“子波块”。如图1和图2所示,在量化前,在子波树重构器108中完成该重构。
图6示意性地表示本发明产生的子波块604。本发明把在子波树602的低-低波段606(LL3)中的从象素600延伸的树602映射成子波块604。图象帧608的各子波块604包括表示该帧内在该块的空间位置上该帧的所有标度下的那些系数和取向。通过把系数的存储器位置物理地重新映射成形成子波块的新的存储器位置来完成该重构。因此,给定子波块的所有系数存储在顺序的地址位置上。或者,不再重新物理分配系数,而是映射入虚拟存储器中。因此,产生进入物理存储器中的索引,其中该索引(虚拟存储器)有配置成子波块的存储器位置。对于进入索引的每一次访问来说,索引中的地址被映射成在其中存储系数的物理存储器位置。因此,借助虚拟存储器方式,在存储器中没有物理地重新配置系数的情况下,就可利用子波块的优点。
利用深度优先扫描模式,在扫描下一个块之前,完整地扫描各子波块,量化其系数。例如,在光栅扫描模式中通过子波块的帧,完整地扫描块610,然后扫描块612,接着扫描块614等等。块的顺序不必一定按光栅扫描模式,可以按应用要求的任何期望的顺序。这包括定向的对象,从而在其它对象之前扫描和编码与某个对象对应的块。由于以连续的存储器地址设置整个块,所以对于给定块通过选择第一个或者最后一个存储器入口和按增加或减少的顺序访问所有其它的地址,可以容易地按从上向下或从下向上的模式来扫描该块。
重要地,利用这种重构,可以根据其帧的空间位置对各子波块分配不同的量化器标度。这允许量化器110特别地分配给系数的一空间位置和/或按照系数表示的频段来分配该量化器。因此,在整个图象上量化器的标度可以是不同的,以使图象的中心或图象内的某个对象可以比边缘更精确地量化。同样地,量化器标度可以与频率相关,以便可以利用与其它频率不同的标度来量化较高的频率(或者,在这方面,较低频率、中间频率、各种频段等)。再有,代替单个量化器,可以使用量化矩阵来编码各子波块。
尽管子波块形成实施发明的直观数据结构,但子波块的使用是随意的,对实现本发明的编码器100和下述其它编码器不是必要的。如下所述,普通的树结构可以与本发明的改进的树横向切割处理和改进的编码技术一起使用。因此,图1和图2表示作为分别旁路重构器和其相关功能的路径106和路径208的重构器的可选择特征。
在量化后,在树的各节点上,被量化的系数有零值或非零值。只要节点上的系数总是零和其所有下代形成零树,即所有下代节点为零值,就存在“零树”。通过按深度优先方式再次扫描各树可有效地编码子波树的被量化的系数。因此,通过横向切割树和根据节点的量化值以及各节点下代的量化值把特定符号分配给各节点,符号分配器112进行操作(步骤212)。
具体地,在各节点上,本发明的方法分配以下三个符号的其中一个符号:ZEROTREE ROOT、VALUED ZEROTREE ROOT和VALUE。ZEROTREEROOT表示零树根节点的系数。在分配符号的扫描之后,由于已知树中所有系数为零值,所以不需要再扫描该零树。VALUED ZEROTREE ROOT是系数为非零值和所有四个子节点为ZEROTREE ROOT的节点。在该节点之下不再进行该树的编码扫描。VALUE符号表示具有零值或非零值并且还具有沿该树有非零值的一些下代的系数。作为选择,第四个符号Isolated Zero(IZ)可以附加给该有效映射。在这种情况下,IZ符号表示具有零值的系数,但在其一些下代的某处具有非零的系数。如果附加IZ,那么VAL仅表示有一个或更多个非零下代的非零系数。
为了更有效地扫描树,以量化符号和把该符号分配给节点,量化器与符号分配器一起操作。图7表示量化零树系数采用的量化方法700的详细流程图,图8表示分配符号值以表示被量化的系数值的符号分配方法800的详细流程图。
方法700在块702处开始,进入步骤704,从子波树的一节点恢复系数值。如下所述,量化方法按从下向上深度优先的模式扫描子波树。因此,第一地址总是在最高频率的子波段中,重复该方法,该方法前进到树上部进入越来越低的频率子波段。随着被量化的值产生,因而该方法继续跟踪子节点的被量化值,即有值或零的子节点。在步骤706,该方法把恢复的系数值量化成正值、负值和零值。在步骤708,用初始的符号值对与刚刚量化的系数值有关的节点更新标志映射。标志映射符号取决于子节点的值以及本节点的值。注意,由于从下向上进行扫描,所以标志映射不能明确表示节点是否为ZEROTREE ROOT。因此,在所有节点都被分配初始的符号值后,再次按从上至下的模式扫描该树,以最后分配符号值。标志映射是按量化方法700填充的子波树节点的索引。在标志映射中的各地址上,该方法存储初始符号:潜在的VALUE、潜在的VALUED ZEROTREE ROOT或潜在的ZEROTREE ROOT(和可选择的,ISOLATED ZERO)。如果该被量化的系数值有数值,那么用潜在的VALUE符号来标记该系数的标志映射位置。如果该被量化的系数值为零值,并且所有子节点为零值,那么用潜在的ZEROTREE ROOT来标记该标志映射位置。可选择地,如果该被量化的系数为零值,但其一些下代为非零值,那么可用ISOLATED ZERO符号来标记。最后,如果被量化的值有数值,但其子都为零值,那么用潜在的VALUED ZEROTREE ROOT来标记该标志映射位置。
在步骤710,该方法查询子波树中的所有节点是否已经被量化。如果否定地回答该查询,那么该方法进入步骤712,在该步骤中,选择子波树中新的(下一个)节点或树进行量化。然后,该方法返回步骤704。如果在步骤710对该查询作出肯定的回答,那么该方法进入步骤714。在步骤714,该方法查询是否所有树已经被量化。如果对该查询作出否定的回答,那么在步骤716,该方法选择新的(下一个)树或量化。如果在步骤714中对查询作出肯定的回答,那么该方法进入步骤718。在方法700中的该点,所有树中的所有节点都已经被量化和分配初始的符号。在步骤718,方法700调用图8的符号分配方法800。在符号分配之后,方法700在块720中结束。
方法800按从上至下的模式即从根到叶扫描树。但是,由于树在出现ZEROTREE ROOT或VALUED ZEROTREE ROOT的各处被剪断,所以该方法不必访问每个节点。具体地,在步骤802开始方法800,并进入步骤804。在步骤804,该方法从量化的系数树中恢复被量化的系数。在步骤806,该方法恢复对应于恢复的系数的标志映射中的初始符号。该方法在步骤808中查询初始符号是否为潜在的ZEROTREE ROOT。如果对查询作出肯定的回答,那么在步骤810,该方法把ZEROTREE ROOT符号分配给节点。然后,在步骤812,该方法剪断该树,即由于通过限定所有节点有零值,所以该方法忽略在该ZEROTREE ROOT节点下的所有节点。
在步骤820中该方法查询是否已经选择所有节点。如果在步骤820中对查询作出否定的回答,那么该方法沿NO路径进入步骤814。在步骤814,该方法选择下一个节点,在跳越任何剪断的分支后,在从上至下的树中进行深度优先扫描。
如果步骤808中对查询作出否定的回答,那么该方法沿NO路径进入步骤816。在步骤816中,该方法查询标志映射是否包括潜在的VALUED ZEROTREE ROOT的潜在符号。如果在步骤816中对查询作出肯定的回答,那么方法在步骤822中把VALUED ZEROTREE ROOT符号分配给节点,把该值放在非零值表中,然后在步骤824中剪断该树。在步骤820中该方法查询是否所有节点已经被选择。如果在步骤820中对查询作出否定的回答,那么该方法进入步骤814。然后,该方法在步骤814中选择用于符号分配的下一个节点,跳越剪断的分支。
如果步骤816中对查询作出否定的回答,那么该方法在步骤818把VALUE符号分配给节点,并把数值放置于包括数值零的数值表中。该方法在步骤820中查询是否所有节点已经被选择。如果在步骤820中对查询作出否定的回答,那么该方法进入步骤814。然后,该方法在步骤814中选择用于符号分配的下一个节点。
继续实施该分配方法,直至所有节点都有分配给它们的符号。因此,如果步骤820中的查询被肯定回答,那么该方法进入步骤826,方法800结束或返回到方法700。把图7和图8中所讨论的方法共同称为零树熵编码(ZTE)。
再参照图1和图2,利用熵编码器114,例如普通的算术编码器来编码符号和数值(在步骤214)。完成编码的一种可能方式如下所述。利用三个符号字母来编码符号。利用不包括数值零的字母来编码与VALUED ZEROTREE ROOT符号一一对应的非零值表。利用包括数值零的字母来编码与VALUE符号一一对应的剩余系数。对于在扫描中遇到的任何节点来说,其中该节点是没有子的叶,从不提供根符号。因此,通过不对该节点编码任何符号和用包括数值零的字母编码系数,可以节省一些比特。
在Witten et al.,“Arithmetic Coding for DataCompression”,Comm.Of the ACM,Vol.30,No.6,pp.520-540,June1987中披露了利用三个符号或可选择的四个符号编码用于符号的字母和用于数值的多个符号字母的示意性编码器。事实上,本领域的技术人员懂得可以按照分配的符号仅简单地编码系数值(或这些值的表示)来改进本发明。就是说,仅编码系数的值而不必编码表示系数重要性的符号。
编码器100在端口116处产生(在步骤216)编码的输出图象。采用本发明,利用在子波树的各节点上三个符号中之一外加编码的系数值来迅速和有效地编码图象。
在本发明中,上述ZTE方法适合编码子波树,产生具有空间、质量和复杂性的可测量性的灵活度的比特流。更具体地说,图9-11表示具有不同可测量性的比特流的不同实例。
图9表示具有M层的空间分辨率可测量性的比特流900的方框图。就是说,该比特流构成得使表示输入图象的空间分辨率912-942的信息对应于比特流900的不同部分910-940。在该方式中,如果解码器需要获得输入图象的空间分辨率912,那么解码器就简单地解码比特流的相应部分910。因此,如果解码器需要获得输入图象的更高空间分辨率,那么解码器就根据需要简单地解码比特流的相关部分。
图10表示具有N层的SNR或质量可测量性的比特流1000的方框图。就是说,这样构成比特流,使表示输入图象的空间分辨率1012-1042的信息对应于比特流1000的不同部分1010-1040。在该方式中,如果解码器需要获得输入图象的特定质量1012,那么解码器就简单地解码比特流的对应部分1010。因此,如果解码器需要获得输入图象的更高质量,那么解码器就根据需要简单地解码比特流的相关部分。
最后,在图11中,比特流1100有M层的空间分辨率和N层的SNR可测量性,即组合的SNR-空间可测量性。就是说,这样构成比特流,使表示输入图象的不同的组合的SRN-空间可测量性1112-1142的信息对应于比特流1100的不同部分1110-1140。在该方式中,如果解码器需要获得输入图象的SNR-空间可测量性1112的特定组合,那么解码器就简单地解码比特流的对应部分1110。由编码器在比特流中说明可测量性(SNR、空间)的数量和种类。
图12表示图象编码器100的详细方框图。更具体地说,把两个2-d可分开的子波分解施加在离散子波变换(DWT或子波树发生器)104中的输入图象上。由编码器限定亮度分量的分解等级数,并设置于比特流中。把色度分量分解成比亮度分量少一级。
接着,编码器与其它子波段不同地和无关地编码最低子波段。例如利用均匀的中间上升(midriser)量化器110a来量化这些系数。在量化最低的子波段系数后,预测模块112a采用反向预测编码方法,如下所述编码LL波段的量化值。
参照图13,如果a、b、c和x为LL波段中四个非零的子波系数,那么如下以x编码差值:
如果abs(a-b)<abs(a-c),那么编码x-c       (1)
否则,编码x-b
反之,解码器如下计算值x:
如果abs(a-b)<abs(a-c),那么x=value+c    (2)
否则,x=value+b
其中,“value”是由解码器接收的值。总之,式(1)表示如果abs(a-b)<abs(a-c),那么x更接近c(水平系数),如果不是这样,那么x更接近b(垂直系数)。因此,该方法不需要说明基于预测的方向的比特传输(费用)。
接着,利用自适应算术编码器114a编码来自反向预测的系数。首先,寻找系数的最小值。从所有系数中减去该值“band_offset”,以把其下限限定到零。随后,寻找系数的最大值(“band_max_value”)。把值“band_offset”和“band_max_value”置于比特流中。就是说,用“band_max_value”种子(seeds)的均匀分布使算术编码器初始化,然后,利用自适应算术编码器扫描和编码系数。
再参照图12,编码器按照与低-低波段不同的形式编码较高的子波段。更具体地说,为了获得可测量性等级或层的宽范围,采用多标度零树编码方法,在该方法中,按照图14所示那样的多级来实现量化器110b、零树扫描(ZTS)112b和算术编码器114。
图14表示产生SNR层的编码器一部分1400的方框图。更具体地说,编码器的编码部分1400包括多级14101=n,其中各级协助产生SNR层。
在操作中,用量化器Q01412量化特定空间分辨率的输入图象的子波系数(可以使用输入图象的不同空间分辨率)。利用上述零树概念由ZTS模块1414扫描这些被量化的系数,然后,由图7和图8所示的熵(或算术)编码器1416对有效映射和被量化的系数进行熵编码。在该等级上的熵编码器1416的输出BS0是比特流的第一部分,例如第一SNR层。
本熵(算术)编码器累积统计量,提供洞察力或展现趋势,例如,关于系数值的范围和相对于其它系数值的位置。这种信息可用于算术编码器,以提高编码效率,例如,用分配的具有较少比特的符号表示时常遇到的类型或系数值。下面提供采用不同熵(算术)编码器的多个其它实施例。
接着,也重新构成第一层的被量化的子波系数,并通过反向量化器1418和缓冲器1419从原有的子波系数中减去该系数。然后,将“剩余的子波系数”送入编码器的第二级14102,在该级中,用Q1量化子波系数,然后通过ZTS模块1424扫描零树,通过熵编码器1426进行熵编码。应该指出,剩余的子波系数可以表示由量化处理引入的误差。因此,后续的输出BSx可以被认为是可以用于解码器的“细化”,以优化被量化的子波系数的重新构成。但是,还应该指出,在下一级中改变量化器标度也可以引入在前面的级中可能不存在的新的子波系数(例如,这些新的子波系数被预先量化为零)。量化处理还如下所述。该第二级的输出BS1是输出比特流的第二部分,例如,当与第一SNR层组合时产生第二SNR层的附加信息。
第二级14102的被量化系数也被重新构成,并从原有系数中减去该系数,其中,对于下一级等继续进行该处理。如图14所示,编码器的N+1级提供SNR可测量性的N+1层。各级表示SNR的一个层。为了获得空间(或空间和SNR两者)的可测量性,输入图象的不同空间分辨率可以作为输入在路径1405上传送。例如,可以由第一级14101处理输入图象的多个不同的空间分辨率,产生多个空间可测量性。如果要求空间和SNR两者的可测量性,那么可以由编码器部分1400的后续级来处理输入图象的各空间分辨率。
量化
为了获得上述有效的可测量等级的宽范围,在本发明中采用多级量化方法。就是说,可以使Qn具有与由编码器限定的并规定在比特流中Qn-1的某些关系,以提供很灵活的方法来支持等级和可测量类型之间、复杂性和编码效率之间的适当折衷。例如,在第一级量化后,各子波系数不是零就是非零。但是,可以对可测量性的各后面等级规定不同的量化步进尺寸,以在上述层的子波系数重新构造中进行细化,例如,所有量化器可以是具有两倍于量化步进尺寸的静区的中间上升量化器。然后,由编码器在比特流中规定这些量化步进尺寸,例如发送该量化或存储库索引。
在优选实施例中,目前的MZTE量化方法由一组量化步进尺寸Q组成,其中,各SNR层有相关的Q值。Q值是正整数,表示跨接在该SNR层上的量化等级值的范围。对于第一层来说,如果等级不是零等级,那么各量化等级表示Q值([等级*Q、…(等级+1)*Q-1]);如果等级为零等级,那么各量化等级表示2Q-1值([-(Q-1)])。除了值数量可以大于1或小于1外,对于后面的SNR层来说,它是类似的。
为了初始量化,子波系数被简单地除以第一SNR层的Q值。这产生了初始的量化等级。对于连续的SNR层来说,发送表示细化量化值的校正索引,其中,细化值被称为“剩余量”,通过首先计算细化等级数进行计算:
M-ROUND(prevQ/curQ)                (3)
其中:
prevQ为上SNR等级的Q值,
curQ为当前SNR层的Q值,和
ROUND为在最接近的整数。
应该指出,除法本身可以是非整数的。
划分上一SNR层的各量化反向范围,使得该范围将尽可能均匀地影响细化的等级。如果prevQ可被curQ整除(例如,prevQ=25和curQ=5),那么该分区留下分区尺寸之间零的偏差。如果prevQ不被curQ整除(例如,prevQ=25和curQ=10),那么在分区之间最大偏差为1。较大的分区总是接近零的分区。剩余量被简化为实际处于原有未量化值状态的分区数。对该索引有两种情况:
情况I:如果前面个SNR等级量化为零(就是说,该值在静区),那么剩余量必须是{-m,…,0,…,+m}中2m-1值的其中之一。
情况II:如果前面个SNR等级量化为非零值,那么(由于该sign在反向量化器中已知)剩余量必须是{0,…,m-1}中的m值之一。
剩余量的可能值的限定基于连续量化值之间的相互关系和给定值在最后的SNR端口中是否被量化为零(这些事件在解码器中都是已知的)。由于上述同样的原因,相对于算术编码采用两个剩余量模式(相对于第一种情况的模式和相对于第二种情况的模式)使编码效率提高。
对于反向量化来说,认为重新构成等级(在当前的SNR层中)是量化反向范围的中点。因此,误差必定为对应量化等级的反向范围的一半。给定初始量化值和剩余量可以重新构成量化等级。以上的量化方法也允许利用对各附加SNR可量测性的平分量化步进尺寸的制约来进行图象的比特平面编码。
零树扫描和自适应算术编码
零树扫描基于存在于跨于多标度的子波系数幅度中的强相关性的观测和基于该系数的局部顺序的假设。图6表示由方框和连接线表示的父与子情况下的子波树。由于利用反向预测分开编码最低频率子波段(图3所示的左上部),所以子波树从相邻的较高带开始。
在以上的ZTS模式中,认为零树存在于任何树节点,在该节点处系数为零且该节点的所有子都为零树。通过从低-低波段中的根至子扫描各树,有效地表示子波树并进行编码,把四个符号的其中一个符号分配给碰到的各节点:零树根、有值的零树根、数值或独立的零(IZ)。由于已知在这种树中所有系数有零幅度,所以不需要对零树进一步扫描。有值的零树根是系数为非零幅度的节点,和所有四个子为零树根,即该树的扫描可以在该符号处停止。有值符号与零幅度或非零幅度的系数相同,但有一些非零的下代。独立的零(IZ)符号标识这种节点,该节点为零但在其下的树上有非零值。
由图14中的各层产生的有效映射用于预测下一层的有效映射。图15表示该处理。就是说,如果发现一节点在一个层中有效(用VAL符号表示),那么就认为它在随后的层中保持有效,从而不需要重复传送其有效符号,仅把其细化值(精练幅度)放入各通道的比特流中。按同样的方式,如果发现一节点为VZTR,那么在下一个通道中,可以保留VZTR或变为VAL节点。如果还使用第四个符号,IZ,那么带有IZ符号的节点将仅在下一次重复中映射成VAL或IZ。通过对在节点下面的子树与两个相邻可测量层中的IZ符号进行比较,可以实现进一步的改进。如果子树有相同的有效映射,那么编码器发送代替IZ的ZTR符号,并且跳越第二层中的子树有效映射。一旦接收ZTR符号(代替期望的IZ或Val符号),解码器从上一层恢复子树的有效映射,并仅利用细化更新子树。
采用自适应算术编码器114b编码零树符号和量化值。算术编码器自适应地跟踪零树的统计量。利用自适应算术编码器和四个符号字母对符号和由零树级产生的被量化系数值进行编码。利用不包括零的字母,编码与有值的零树根符号一一对应的其它非零的被量化系数表。利用包括零的字母编码与有值符号一一对应的剩余系数。对于在扫描中遇到的任何没有子的叶的节点来说,也不再提供根符号。因此,通过对该节点不编码任何符号和利用包括零的字母编码该系数,可以节省一些比特。
更具体地说,在算术编码器中,三个不同的表格(type、valz、valnz)必须同时编码。各表的统计量不同,因此算术编码器必须至少跟踪三个不同概率的模式,对于各表来说必须跟踪一个概率模式。在本发明的一个实施例中,五个不同的模式被用于这些值的编码;1)类型;2)DC,编码低-低波段的非零的被量化系数;3)AC,编码其它三个低分辨率波段的非零的被量化系数;4)VaLNZ,编码与有值零树根符号一一对应的其它非零的被量化系数;和5)VALZ,编码与有值符号一一对应的剩余系数。对于任何子波块中的各子波系数来说,首先,量化系数,然后计算其类型和数值,最后算术编码这些值。对各表适当地转换算术编码器的概率模式。对于各模式来说,找到字母范围,该数值max_alphabet置于比特流中。
对于各亮度和颜色分量来说,编码器的输出是一个信号比特流。因此,对各运动补偿剩余帧产生三个不同的比特流。三个比特流是连在一起的,附加适当的标题,以配合编码器的主输出比特流。在所有亮度或色度的剩余分量被量化为零的情况下,发送跳越码,以使该剩余分量的编码成本最小化。
另一方面,对于算术编码器来说,本发明包括混合的第零和第一级的概率模式。为了说明算术编码器的最佳操作,一般需要采用符号的联合概率。自适应算术编码器根据已经编码的符号的过去历史试图把需要的概率模式化。可以采用的简单模式是仅根据被编码符号出现的数量(过去)的第零级(order)模式。就是说,第零级模式是简单的累加模式。因此,对于一个n符号序列(这里用x1、x2、…、xn表示)的编码来说,通过评估Pr(x1)Pr(x2)…Pr(xn)的频率计数来近似各概率Pr(x1、x2、…、xn)。模式必须通过频率计数初始化成某个假定的分布。一般假定为均匀分布。由于这种初始化,所以该模式需要在频率计数可以反映“真实的”第零级分布Pr(xi)(如果存在)之前,编码一些符号。
对第零级模式的改进可以是第一级模式,该模式跟踪在出现的前面符号的条件下各符号出现的数量。就是说,第一级模式在过去出现的小“窗口”进行简单回顾。该模式评估概率Pr(x1)Pr(x2|x1)…Pr(xn|x(n-1))。但是,该模式采用更多的符号,以反映比第零级分布“真实的”第一级分布。因此,直至对第一级模式操作一个时间周期之后,算术编码器才可以最佳地完成“真实的”第一级分布。
本发明的另一实施例包括一种折衷方案,其中两个分布同时采用,即组合第零级与第一级模式。由于第零级模式更快地反映真实的分布,所以第零级模式对于编码的第一个符号会有更大的影响,同时在足够数量的符号已经被编码之后可以代之以第一级模式。
为了使用本发明的混合模式,利用四个不同的表格来跟踪各模式。首先的两个表格将与第零级模式的频率和累加频率计数相对应。频率计数指某一符号以前出现的次数。第三和第四表格将与第一级频率和累加频率计数相对应。应该指出,对于第一级表格来说,符号的每次出现允许把大于一的固定的整数值附加在这些表格上。第一级表格的该额外的计数值使其比第零级表格有更大的加权。
假设nsym是我们编码的符号数。可以假设这些符号为{0,1,…,nsym-1}的其中一个。对于第零级来说,需要频率计数表格的nsym个元素和累加频率计数表格(累加频率计数表格的额外元素总为零,用于简化程序)的nsym+1个元素。对于第一级表格来说,需要保持对nsym个符号的每一个的计数,该符号可能会最后出现。因此,需要频率计数表格的nsym*nsym个元素和累加频率计数表格的nsym*(nsym+1)个元素。把第零级表格初始化,以反映均匀分布(对于所有符号=1的频率计数),而第一级表格有初始设定为零的所有计数。
保留对应于编码的最后符号的状态(或内容)变量。它被初始化为符号0(即象0符号是编码的最后符号那样,编码的第一符号增加第一级表格值)。利用各符号的编码,这种变量被更新为新符号。
用于产生算术编码器所需的模式概率的实际频率是第零和第一级表格中的值的简单之和。例如,如果编码的最后符号为S,新的符号为T,并且假定第一级表格是两维的,其第一维对应于编码的最后符号(即第一级表格由与第零级表格相同的nsym个一维表格组成),那么可以使用第零级表格中的第S个元素的频率与第T个第一级表格中第S个元素的频率的和。使freqZeroth为第零级表格和freqFirst为第一级表格,就可以把它按符号写成freqZeroth[S]+freqFirst[T][S]。
在本多标度ZTE(MZTE)方法的一个实施例中,采用上述混合级模式,以如下改善算术编码器的性能:
a)对剩余量的分开概率模式:如果该值在前面可测量层中被量化为一个非零值,那么该值被认为是剩余量,用不同的自适应模式来熵编码其细化索引。该自适应模式表示与该值完全不同的余量统计状态。
b)改进的混合级模式:为了获得“真实”概率的更好评估,把第一和混合级概率模式附加到编码器上。第一级模式被混合级模式用来完成熵编码。总之,该方法试图评估出现符号的概率,假定出现的最后符号的幅值落在某个预定的范围内。
应该指出,与第零级模式相比,简单的第一级模式采用更多的符号表示推测的“真实”概率分布和采用更多的符号来反应该分布中的变化。这是因为有更多的表格要填写。
与第零级模式相比,混合级模式部分的权重更大。通过频率计数增加来进行这种加权。第零级模式部分利用单位增加,而第一级模式部分利用按大于一的值的增加。利用实验结果,第一级增加对于编码的不同类型的符号组是固定的。混合级模式是在第零级模式的快速自适应时间和第一级模式的更高概率模式之间的平衡。
双等级(比特面)算术编码:
另一方面,目前的MZTE方法可以包括双等级(比特面)算术编码。由于算术编码器有带有“n”个储存仓(bin)的概率模式,其中,n是组中存在的最大值,所以编码这些值的另一种方法是用二进制数表示该值和利用二进制算术编码器编码各数字(或称为用比特面编码)。就是说,概率模式仅有两个储存仓:一个为‘0’,一个为‘1’,用以编码子波的被量化值。在本方法中,用均匀分布初始化自适应模式。从最有效比特(MSB)开始,采用一种自适应模式来编码这些值的所有MSB。然后,该模式复位到均匀分布,编码所有值的第二MSB比特。该处理继续进行,直至所有值的最后数字被编码。数字的数量被发送至解码器。
这种双等级编码方法可以用于MZTE的所有编码模式。二进制算术编码比N符号算术编码有更低的计算复杂性。编码效率在编码作为信号符号的数量上有所提高。
剩余量处理
本发明的另一实施例包括剩余量处理方法,以改善上述多标度零树熵编码(MZTE)方法。为了重复,如果在给定节点处的子波系数值在前面可测量层(空间或SNR)中量化后有非零值,那么在后一可测量层中该节点的细化值就被称为剩余量。
在上述MZTE中,当产生可测量层的零树结构时,按与非剩余量相同的方式来处理该剩余量。就是说,它们的值规定在分配‘祖先’节点(在对应于空间位置的较低波段中的节点)零树类型和在分配其自身节点的零树类型中是有效的。因此,在剩余量为零和节点不是叶(即有下代)的情况下,不一定要发送剩余量值(细化索引)。这是因为零树类型足以对解码器提供剩余量值为零的信息。如果节点为零,那么节点零树类型会是ZR下代、ZTR或IZ。节点的ZTR下代状态是ZTR,而IZ类型必须被编码和放置在比特流上。当所有下代为零时,发送ZTR,否则发送IZ。如果剩余量非零,那么会分配VAL或VZTR类型(取决于其下代的有效性),发送细化索引的值。
另一方面,可采用三个供选择的剩余量处理实施例来提高编码效率。首先,当构成可测量层的零树结构时,所有剩余量都被处理,好象这些剩余量为零值。第二,剩余量值(精确表示)总被发送(无论零或非零)。最终,从不发送剩余量的零树类型。
这些改变表明除非剩余量是ZTR的下代(该剩余量暗示其所有下代也是ZTR下代),否则就必须总要编码其第一个非剩余量的下代。这是因为不发送剩余量的类型,并因此不发送有关其下代的任何有效信息。就是说,如果节点为零树类型VZTR或ZTR,那么其所有下代节点为零。如果节点为类型VAL或IZ,那么某些有效的下代存在。它还表示零的剩余量值此时必须发送。在编码效率方面,与当前对剩余量类型从来不发送信息的情况相比,以上两种情况被交替使用,而且由于剩余量具有在形成零树时好象有零值那样的作用的情况,所以还会形成更多的零树。
适应速率
在MZTE的上述算术编码器的一个实施例中采用多概率模式,按照直方图来实现各模式。各直方图有最大频率,对于在单量化模式和多量化模式中使用的所有模式来说,该频率被设定为大的固定值(214-1)。在编码/解码各符号后,对应的直方图项增加。当直方图的所有计数之和达到最大频率计数时,用被2整除的整数来增加各项。在各SNR层的开头和对于各颜色成分来说,初始化所有算术模式。
可以看出,最大频率计数控制模式的适应速率。换句话说,最大频率计数控制在当前的直方图上前面编码的符号作用占多大。最大频率计数越大,这些前面编码的符号作用就越持久。本发明的另一个实施例包括两种方法来控制适应速率。
第一,由于在各模式的字母中有不同数量的符号,所以可允许最大频率对于MZTE中的不同模式而改变,特别是通过对一些模式降低最大频率的值来改变MZTE。因此,可以调整各概率模式,以适合其自身的概率分布。
第二,作为改变最大频率获得同样效果的另一种方法是改变模式初始化的频率。取代在各SNR层的开始和对于各颜色成分的初始化的所有模式,对于各颜色和SNR环中各子波段的所有模式进行初始化。
MZTE编码的零树状态:
本MZTE方法的另一实施例是利用“零树状态”,降低编码器和解码器两者的复杂性。在操作中,上述MZTE方法采用利用一组符号(例如,零树符号)的相同概念表示给定树中子波系数的有效性。这些零树符号被置入比特流中,表示给定树中子波系数的有效性。
但是,由于各符号和当前及在前的可测量层中其它零树符号之间的高度相关性,所以在编码器侧寻找正确的符号和在解码器侧寻找符号的正确译码变成复杂的任务。本发明的另一个实施例是引入被称为“零树状态”一组新的零树符号,这些符号不进入比特流,但被用于确定在任何给定象素即在子波树中的特定节点上编码器/解码器的下一个可能的状态。
上述MZTE可以使用三符号组(ZTR、VAL、VZTR)或四符号组(ZTR、VAL、VZTR、IZ)用于编码。应该澄清,这些零树符号仍被置于比特流中,但新的一组符号(零树状态)用于跟踪各系数的状态。各子波系数在可测量性的各层上有一个明显不同的零树状态。利用原有的零树符号从一个状态至另一个状态编码/解码该系数。图16表示跟踪各子波系数状态的状态图。七个(S_DC、S_LEAF、S_NZ、S_ROOT、S_RLEAF、S_RVAL、S_RVZTR)符号被用于零树状态,其中S_DC、S_LEAF、S_NZ、S_ROOT可以是初始状态。这些符号被定义如下:
S_DC(1610):DC子波系数的状态;一旦编码开始,就保持相同的状态;
S_ROOT(1640):零树状态,该系数为零,并且其所有的下代都为零;零树根ZTR产生并返回状态1640;如果该系数为零而其一个子不为零,那么独立的零产生并返回状态1640;如果该系数为一数值,则该值被量化并发送其幅度;如果系数为一数值,而所有的子都为零,那么该值被量化,并发送VZTR;
S_RVAL(1660):剩余值状态,该系数在前面的可测量层中至少已经被编码为VAL一次;
S_RVZTR(1670):剩余值零树状态,该系数在前面的可测量层中至少已经被编码为VZTR一次;
S_LEAF(1620):位于零树叶上的子波系数的状态,并在当前的可测量层中第一次编码;
S_NZ(1630):第一次编码的非零子波系数的状态;
S_RLEAF(1650):在前面可测量层中已经被至少编码一次的位于零树叶上的子波系数的状态;和
S_RVAL(1660):在前面的可测量层中已经被至少编码一次的非零子波系数的状态。
图16表示零树状态的状态图。如该图所示,通过从一种状态转换为另一种状态来编码零树符号和其值。在图中,对所有变换示出置于比特流中的零树符号和可能的值。“实线”表示发送该系数的值或幅度;“( )”表示未发送,而“---”表示空间层附加部分。
利用这些状态的机器,编码器和解码器两者通过与各状态有关的一个分离的模式可以容易地转换算术编码模式。就熵编码值来说,各个变换还表示应该用于该值的编码/解码的那个模式。
图17表示本发明的编码系统1700和解码系统1705。编码系统1700包括通用计算机1710和各种输入/输出装置1720。通用计算机包括中央处理器(CPU)1712、存储器1714和接收及编码图象序列的编码器1716。
在优选实施例中,编码器1716是如上所述的简单的编码器100和/或编码器1400。编码器1716可以是通过通信信道与CPU 1712耦接的物理装置。另一方面,编码器1716也可以是由例如磁盘或光盘之类的存储装置装入的应用软件(或软件和硬件的组合,例如采用特定集成电路(ASIC)),和保存在计算机存储器1714中的软件。因此,本发明的编码器100和1400可以被存储在计算机可读的介质中,包括由这些编码器产生的比特流。
计算机1710可以与多个输入和输出装置1720耦合,例如键盘、鼠标器、摄象机、可携式摄象机、视频监视器或任意数量的图象装置或存储装置,包括但不限于磁带机、软磁盘驱动器、硬盘驱动器或小型磁盘驱动器。输入装置用于对计算机提供输入,产生编码的视频比特流或接收来自存储装置或图象装置的视频图象序列。
编码系统通过通信信道1750与解码系统耦接。本发明不限于任何特定类型的通信信道。
解码系统1705包括通用计算机1730和各种输入/输出装置1740。通用计算机包括中央处理器(CPU)1732、存储器1734和接收和解码编码图象序列的解码器1736。
在优选实施例中,解码器1736是简单的任何解码器,该解码器与如上所述的编码器100和1400互补,用以解码由编码器100和1400产生的比特流。解码器1736可以是通过通信信道与CPU 1732耦接的物理装置。另一方面,解码器1736也可以是从例如磁盘或光盘存储装置等装入的应用软件,和保存在计算机存储器1734中的软件。因此,本发明编码器100和1400的任何互补解码器可以被存储在计算机可读的介质中。
计算机1730可以与多个输入和输出装置1740耦接,例如键盘、鼠标器、视频监视器或任意数量的存储或分配图象的装置,包括但不限于磁带机、软磁盘驱动器、硬盘驱动器或小型磁盘驱动器。输入装置用于使计算机存储和分配编码的视频图象序列。
尽管已经图示和详细说明了包括本发明技术的各种实施例,但是本领域的技术人员可以容易地推导出仍将包括这些技术的许多其它变更的实施例。

Claims (10)

1.一种把输入图象编码成比特流的方法,该方法利用子波变换产生具有按父子关系构成为多个子波段的多个子波系数的一个子波树,所述方法包括以下步骤:
(a)产生输入图象的具有多个原有子波系数的子波树;
(b)用第一量化器量化所述多个原有子波系数;
(c)按深度优先方式对所述多个子波段的至少一个施行零树扫描,以把一符号分配给所述子波树的至少一个所述被量化的子波系数;
(d)按照所述被分配的符号,编码所述多个被量化的子波系数,产生第一可测量层;和
(e)重新构成所述被量化的子波系数,产生下一个可测量层。
2.如权利要求1的方法,其中,所述重新构成所述被量化子波系数的步骤(e)包括以下步骤:
(e1)把反向量化施加给所述被量化的子波系数;
(e2)从所述原有子波系数中减去所述重构的子波系数,产生剩余子波系数;和
(e3)根据所述剩余子波系产生所述下一个可测量层。
3.如权利要求2的方法,其中,所述产生所述下一个可测量层的步骤(e3)包括以下步骤:
(e31)用第二量化器量化所述多个剩余子波系数;
(e32)施加零树扫描,对所述被量化的剩余子波系数的至少其中一个分配一符号;和
(e33)根据所述分配的符号,编码所述多个被量化的剩余子波系数,产生所述下一个可测量层。
4.如权利要求3的方法,其中,所述编码步骤(e33)还包括利用细化值编码所述被量化的剩余子波系数的步骤。
5.如权利要求3的方法,其中,所述施加零树扫描步骤(e32)包括利用零树状态对所述被量化的剩余子波系数中的至少一个分配一符号的步骤。
6.如权利要求1的方法,其中,所述编码步骤(d)包括利用自适应算术编码器编码所述多个被量化子波系数的步骤。
7.如权利要求1的方法,其中,所述编码步骤(d)包括利用自适应比特面算术编码器编码所述多个被量化子波系数的步骤。
8.如权利要求2的方法,其中,所述编码步骤(d)还包括利用剩余处理编码所述被量化子波系数的步骤。
9.如权利要求1所述的方法,其中所述编码步骤(d)包括以下步骤:
(d1)利用所述被量化的子波系数的联合概率的第零级模式维持至少一第一表格,以跟踪所述被量化的子波系数,该第一表格包括所述被量化的子波系数的第一统计;
(d2)利用所述被量化的子波系数的联合概率的第一级模式维持至少一第二表格,以跟踪所述被量化的子波系数,该第二表格包括所述被量化的子波系数的第二统计,和
(d3)按照所述第一表格和第二表格编码所述被量化的子波系数。
10.一种把输入图象编码成比特流的设备,利用子波变换产生具有按父子关系构成为多个子波段的多个子波系数的一个子波树,所述装置包括以下部分:
用于产生输入图象的具有多个原有子波系数的一子波树的装置;
用第一量化器量化所述多个原有子波系数的部分;
按深度优先方式对所述多个子波段的至少一个施行零树扫描,以把符号分配给所述子波树的至少一个所述被量化子波系数的装置;
按照所述分配的符号编码所述多个被量化的子波系数,以产生第一可测量层的装置;和
重新构成所述被量化的子波系数,以产生下一个可测量层的装置。
CNB988085313A 1997-07-11 1998-07-13 用于多标度零树熵编码的设备和方法 Expired - Lifetime CN1294522C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US5224597P 1997-07-11 1997-07-11
US60/052,245 1998-06-30
US09/107,544 1998-06-30
US09/107,544 US6269192B1 (en) 1997-07-11 1998-06-30 Apparatus and method for multiscale zerotree entropy encoding

Publications (2)

Publication Number Publication Date
CN1268235A CN1268235A (zh) 2000-09-27
CN1294522C true CN1294522C (zh) 2007-01-10

Family

ID=26730377

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB988085313A Expired - Lifetime CN1294522C (zh) 1997-07-11 1998-07-13 用于多标度零树熵编码的设备和方法

Country Status (9)

Country Link
EP (1) EP0996926B1 (zh)
JP (1) JP2001524297A (zh)
KR (1) KR100540275B1 (zh)
CN (1) CN1294522C (zh)
AU (1) AU8387698A (zh)
BR (1) BR9812518A (zh)
CA (1) CA2294159A1 (zh)
DE (1) DE69841488D1 (zh)
WO (1) WO1999003059A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9909605D0 (en) * 1999-04-26 1999-06-23 Telemedia Systems Ltd Networked delivery of media files to clients
US6351491B1 (en) * 1999-06-23 2002-02-26 Sarnoff Corporation Apparatus and method for optimizing the rate control for multiscale entropy encoding
US6781717B1 (en) * 1999-12-30 2004-08-24 Texas Instruments Incorporated Threshold screening using range reduction
AUPQ982400A0 (en) * 2000-09-01 2000-09-28 Canon Kabushiki Kaisha Entropy encoding and decoding
US6757434B2 (en) * 2002-11-12 2004-06-29 Nokia Corporation Region-of-interest tracking method and device for wavelet-based video coding
FI114071B (fi) 2003-01-13 2004-07-30 Nokia Corp Kuvien käsitteleminen rajoitetulla bittimäärällä
US7565018B2 (en) * 2005-08-12 2009-07-21 Microsoft Corporation Adaptive coding and decoding of wide-range coefficients
JP6312312B2 (ja) * 2014-04-15 2018-04-18 日本放送協会 コンテキストモデル生成装置、符号化装置、および復号装置
CN104749532B (zh) * 2015-03-20 2018-01-09 南京航空航天大学 一种航天器电源系统故障检测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315670A (en) * 1991-11-12 1994-05-24 General Electric Company Digital data compression system including zerotree coefficient coding
GB2293733A (en) * 1994-09-20 1996-04-03 Ricoh Kk Apparatus for image data compression using reversible embedded waveletts

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315670A (en) * 1991-11-12 1994-05-24 General Electric Company Digital data compression system including zerotree coefficient coding
GB2293733A (en) * 1994-09-20 1996-04-03 Ricoh Kk Apparatus for image data compression using reversible embedded waveletts

Also Published As

Publication number Publication date
EP0996926A1 (en) 2000-05-03
EP0996926A4 (en) 2002-10-16
KR100540275B1 (ko) 2006-01-10
CN1268235A (zh) 2000-09-27
CA2294159A1 (en) 1999-01-21
DE69841488D1 (de) 2010-03-25
KR20010021741A (ko) 2001-03-15
BR9812518A (pt) 2000-08-01
AU8387698A (en) 1999-02-08
EP0996926B1 (en) 2010-02-03
WO1999003059A1 (en) 1999-01-21
JP2001524297A (ja) 2001-11-27

Similar Documents

Publication Publication Date Title
CN1161708C (zh) 对基于子波编码方法产生的子波树进行编码的装置与方法
US6269192B1 (en) Apparatus and method for multiscale zerotree entropy encoding
CN1231863C (zh) 用于进行图像压缩和解压缩的方法与装置
CN1223959C (zh) 编码系统中基于宏块的速率控制装置和方法
CN1125409C (zh) 使用可变块尺寸的分层运动估算装置和方法
CN1145363C (zh) 静画和动画编码的量化矩阵
EP0857389B1 (en) Apparatus and method for encoding zerotrees generated by a wavelet-based coding technique
CN1222110C (zh) 图象数据的自适应可变长度译码方法
US6671413B1 (en) Embedded and efficient low-complexity hierarchical image coder and corresponding methods therefor
CN1640141A (zh) 用于复合文档压缩的编码器匹配层的分离和插值
CN1689026A (zh) 用于自适应块变换的基于上下文的自适应可变长度编码
CN1897700A (zh) 图像编码装置和图像解码装置
CN1381146A (zh) 利用小波变换的视频编码方法
CN1906624A (zh) 使用匹配追踪的数据压缩
CN1294522C (zh) 用于多标度零树熵编码的设备和方法
CN1211146A (zh) 图象压缩
CN1159922C (zh) 编码二进制形状信号的方法
JPH08186827A (ja) ディジタル画像信号の階層符号化装置
CN1578385A (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
ASS Succession or assignment of patent right

Owner name: MEDIATEK INC.

Free format text: FORMER OWNER: SARNOFF CORP.; APPLICANT

Effective date: 20060407

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20060407

Address after: Taiwan, China

Applicant after: MediaTek.Inc

Co-applicant after: Sharp Corporation

Address before: American New Jersey

Applicant before: Sarnoff Corp.

ASS Succession or assignment of patent right

Owner name: MEDIATEK INC.; APPLICANT

Free format text: FORMER OWNER: SARNOFF CORP.; APPLICANT

Effective date: 20060609

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20060609

Address after: Taiwan, China

Applicant after: MediaTek.Inc

Co-applicant after: Sharp Corporation

Address before: American New Jersey

Applicant before: Sarnoff Corp.

Co-applicant before: Sharp Corporation

C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20070110

CX01 Expiry of patent term