一种嵌入式零树小波图像编码压缩方法与流程

文档序号:19414977发布日期:2019-12-14 00:50阅读:386来源:国知局
一种嵌入式零树小波图像编码压缩方法与流程

本发明属于图像处理领域,涉及一种嵌入式零树小波图像编码压缩方法。



背景技术:

信息时代带来了信息爆炸导致了数据爆炸性增加,因此,不管数据传输或数据存储,高效数据压缩是必要的。

近年来,基于小波的图像压缩算法与嵌入式比特流相继提出,如嵌入式零树小波压缩(ezw)算法、集合分层树(spiht)算法、嵌入式块编码与优化截断(ebcot)算法和自适应扫描小波差分减少(asw-dr)等等。其中,ezw是一种简单有效的图像压缩算法,由shapiro于1993年提出。ezw算法适应不同尺度层在小波域中的幅度相关性预测和排序,可以消除像素之间的相关性,同时可以在不同的分辨率下保持精细的结构。所以ezw可以实现一些重要系数的渐进编码和有效压缩。

虽然ezw算法现在被认为对于小波图像编码方法更有效,但仍存在不足之处。例如:ezw的编码思想是通过不断扫描小波变换后的图像,以生成更多的零树来对图像进行编码。扫描过程中为了判断小波系数是零树根还是孤零,需要对系数进行重复扫描;由于ezw算法中的“零树结构”思想,在实际的编码过程中,生成的零树根越多,用以表示图像的数据量便会越少。而多棵零数根将会导致零树根大量存在编码流中;编码产生的四种符号中,每一种符号出现的机率也是不相等的。出现机率最高的是零树根,占有的比率达到百分之五十以上,而且它的连续性也很强。另外三种符号出现的机率不是很高且连续性也不是很强。上述问题会导致编码符号流中存在大量冗余,使得压缩编码时间变长,从而降低图像的编码效率。



技术实现要素:

为解决上述问题,本发明首先扩充编码符号改进扫描方式,实现零树结构的快速判断,然后再使用霍夫曼编码和行程长度编码进行进一步的数据压缩。

为实现上述目的,本发明的技术方案为嵌入式零树小波图像编码压缩方法,包括以下步骤:

s10,对输入的图像进行小波变换,将变换后的数据变换为小波系数矩阵;

s20,小波系数量化;

s30,压缩量化值,形成码流;

其中,s20包括以下步骤:

s21,确定初始化阈值

t0为第一次主扫描使用的阈值,表示不大于x的最大整数,xi是小波变换的分解到第i级时的系数;

s22,主扫描,第n(n=1,2,...,l)次扫描时,按照顺序将小波分解系数与阈值tn-1依次进行比较,如果系数的绝对值大于等于阈值,为重要系数;否则,为不重要系数,由以下输出符号表示,

pt,当前系数为正且绝对值大于等于阈值,且子孙中至少有一个重要系数;

nt,当前系数为负且绝对值大于等于阈值,且子孙中至少有一个重要系数;

p,当前系数为正且绝对值大于等于阈值,且子孙中不含重要系数;

n,当前系数为负且绝对值大于等于阈值,且子孙中不含重要系数;

t,当前系数为不重要,且所有子孙系数都为不重要系数;

z,当前系数值不重要,但是至少有一个子孙系数重要;

s23,辅扫描,对于主扫描后的重要系数做细化编码,对主扫描表进行顺序扫描,对其中输出符号为pt、nt、p、n的小波系数进行量化,量化器的输入间隔为[tn-1,2tn-1),将其等分为两个量化区间[tn-1,1.5tn-1),[1.5tn-1,2tn-1),若小波系数属于前一区间,则输出量化符号“0”,重构值为1.25tn-1;否则,输出量化符号为“1”,重构值为1.75tn-1,输出的量化符号“0”、“1”由一个辅扫描表记录;取阈值tn继续进行主扫描,直到达到预设的比特率或所需精度,其中,tn=tn-1/2表示下一轮主扫描的阈值为上一轮主扫描阈值的一半。

优选地,所述小波变换,对于模拟图像,采用二维小波变换,由下式,

其中,f(x1,x2)表示空间l2(r)中的一个二维信号,变量x1、x2分别表示信号的水平坐标和垂直坐标;ψ(x1,x2)表示由此信号构造的小波基;ψ((x1-b1)/a,(x2-b2)/a)表示函数扩大或缩小的范围。

优选地,所述小波变换,输入的图像为数字图像时,采用二维离散小波变换,具体包括以下步骤:

s11,对数字图像的行作小波变换,再对其进行列小波变换;

s12,分解为四个子系统的图像:ll、lh、hl、hh,ll表示特征的原始图像,包含原始数字图像的基本内容;lh、hl和hh是垂直、水平和高频特性的对角分量向右倾斜,分别包含边缘、纹理和轮廓的垂直、水平和对角线方向的图像数据;

s13,ll子系统包含图像的大多数数据,对小波变换的一级低频子带重复上述变换,直到达到所需分辨率。

优选地,所述s30包括以下步骤,

s31,将主扫描形成的主扫描表与辅扫描表中的量化值进行霍夫曼编码;

s32,再进行行程长度编码,形成的码流变为某量化步长下的零树方式的编码码流。

本发明至少具有如下有益效果:

1、在不影响其他标志位的前提下,在重要系数扫描,即主扫描过程中对那些子孙含有重要系数的用新的符号表示(pt、nt),并不再判断那些子孙中没有重要系数的子孙节点,减少了不必要的判断时间,同时极大的减少了其子孙中零树根标志位的数量;

2、针对主扫描之后产生系数符号的序列,不同符号出现的机率不同,且零树符号比率很高的特点,采用霍夫曼编码进行压缩,再将编码后的标志位比特流与幅值量化得到的比特流组合进行行程长度编码,进一步提高了压缩比和编码效率。

附图说明

图1为本发明实施例的嵌入式零树小波图像编码压缩方法的步骤流程图;

图2为本发明实施例的嵌入式零树小波图像编码压缩方法的小波系数量化步骤流程图;

图3为本发明实施例的嵌入式零树小波图像编码压缩方法的小波变换的小波分解示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。

参见图1、2,为本发明实施例的嵌入式零树小波图像编码压缩方法的步骤流程图和小波系数量化的步骤流程图,包括以下步骤:

s10,对输入的图像进行小波变换,将变换后的数据变换为小波系数矩阵;

s20,小波系数量化;

s30,压缩量化值,形成码流;

其中,s20包括以下步骤:

s21,确定初始化阈值

t0为第一次主扫描使用的阈值,表示不大于x的最大整数,xi是小波变换的分解到第i级时的系数;扫描顺序由高级至低级进行,对于三级小波变换扫描顺序如下:ll3、hl3、lh3、hl2、lh2、hh2、hl1、lh1、hh1。

s22,主扫描,第n(n=1,2,...,l)次扫描时,按照顺序将小波分解系数与阈值tn-1依次进行比较,如果系数的绝对值大于等于阈值,为重要系数;否则,为不重要系数,由以下输出符号表示,

pt,当前系数为正且绝对值大于等于阈值,且子孙中至少有一个重要系数;

nt,当前系数为负且绝对值大于等于阈值,且子孙中至少有一个重要系数;

p,当前系数为正且绝对值大于等于阈值,且子孙中不含重要系数;

n,当前系数为负且绝对值大于等于阈值,且子孙中不含重要系数;

t,当前系数为不重要,且所有子孙系数都为不重要系数;

z,当前系数值不重要,但是至少有一个子孙系数重要;

通过六个符号,扫描小波系数,并判断小波系数,将相应的符号放入符号表中,也就是说在扫描过程中,用一个主扫描表记录这些输出符号。为防止下次主扫描时重复编码,在第n次扫描结束后,将输出符号重要系数的位置加标记或将这些系数置0。

s23,辅扫描,对于主扫描后的重要系数做细化编码,对主扫描表进行顺序扫描,对其中输出符号为pt、nt、p、n的小波系数进行量化,量化器的输入间隔为[tn-1,2tn-1),将其等分为两个量化区间[tn-1,1.5tn-1),[1.5tn-1,2tn-1),若小波系数属于前一区间,则输出量化符号“0”,重构值为1.25tn-1;否则,输出量化符号为“1”,重构值为1.75tn-1,输出的量化符号“0”、“1”由一个辅扫描表记录;取阈值tn继续进行主扫描,直到达到预设的比特率或所需精度,其中,tn=tn-1/2表示下一轮主扫描的阈值为上一轮主扫描阈值的一半。

具体实施例中小波变换,对于模拟图像,采用二维小波变换,由下式,

其中,f(x1,x2)表示空间l2(r)中的一个二维信号,变量x1、x2分别表示信号的水平坐标和垂直坐标;ψ(x1,x2)表示由此信号构造的小波基;ψ((x1-b1)/a,(x2-b2)/a)表示函数扩大或缩小的范围。

小波变换,输入的图像为数字图像时,采用二维离散小波变换,具体包括以下步骤:

s11,对数字图像的行作小波变换,再对其进行列小波变换;

s12,分解为四个子系统的图像:ll、lh、hl、hh,ll表示特征的原始图像,包含原始数字图像的基本内容;lh、hl和hh是垂直、水平和高频特性的对角分量向右倾斜,分别包含边缘、纹理和轮廓的垂直、水平和对角线方向的图像数据;

s13,ll子系统包含图像的大多数数据,对小波变换的一级低频子带重复上述变换,直到达到所需分辨率。

参见图3是小波分解的示意图,ll子带包含图像的大多数数据,然后对小波变换的一级低频子带重复以上变换,直到达到所需要的分辨率为止。一级分解后继续分解的过程叫做多分辨率分析,即多级小波分解的概念,形成小波的多级变换,图中ll3表示三级分解下的低频子带,包含图像的基本内容;hl3、lh3、hh3为三级分解下的高频子带,分别包含三级分解下的图像垂直、水平和对角线方向的数据;hl2、lh2、hh2为二级分解下的高频子带,分别包含二级分解下的图像垂直、水平和对角线方向的数据;hl1、lh1、hh1为一级分解下的高频子带,分别包含一级分解下的图像垂直、水平和对角线方向的数据;如果是多级分解,只对上一级的低频子带进行再进行分解。

s30包括以下步骤,

s31,将主扫描形成的主扫描表与辅扫描表中的量化值进行霍夫曼编码;

s32,再进行行程长度编码,形成的码流变为某量化步长下的零树方式的编码码流。

通过解码这个码流就可以得到输入图像的重构恢复图像,如前所述,每完成一次编码,阈值就会减半,然后进行重复主扫描、辅扫描和编码,直到达到设定的比特率或其所需要的精度。

采用扩充编码符号的方法进行改进,用6个标志位代替ezw算法中的4个标志位对小波系数进行量化,以实现零树结构的快速判断。由于在图像的分解过程中,会产生大量的能量,其中大部分会聚集在低频子带中。这就导致了低频子带的系数远远大于其余的子带,因此会产生更多的零树。而且在编码时重要系数的后面依旧会产生很多零树根,因此在扫描低频子带ll时,若一个系数为正重要系数,则继续对其子孙系数进行判断,若子孙中至少含有一个重要系数则标记为pt,若不含重要系数则标记为p;若一个系数为负重要系数,则继续对其子孙系数进行扫描判断,若子孙中至少含有一个重要系数则标记为nt,若不含重要系数则标记为n,并对子孙系数进行标记,在该阈值下跳过不扫描。通过这种方式,减少了对非重要系数的扫描,提高了效率。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1