CN109035350A - 基于能量泄露和放大的改进spiht图像编码和解码方法 - Google Patents

基于能量泄露和放大的改进spiht图像编码和解码方法 Download PDF

Info

Publication number
CN109035350A
CN109035350A CN201810871102.9A CN201810871102A CN109035350A CN 109035350 A CN109035350 A CN 109035350A CN 201810871102 A CN201810871102 A CN 201810871102A CN 109035350 A CN109035350 A CN 109035350A
Authority
CN
China
Prior art keywords
bit
coefficient
type
transferred
image
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
Application number
CN201810871102.9A
Other languages
English (en)
Other versions
CN109035350B (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.)
Liaoning Normal University
Original Assignee
Liaoning Normal University
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
Application filed by Liaoning Normal University filed Critical Liaoning Normal University
Priority to CN201810871102.9A priority Critical patent/CN109035350B/zh
Publication of CN109035350A publication Critical patent/CN109035350A/zh
Application granted granted Critical
Publication of CN109035350B publication Critical patent/CN109035350B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开一种基于能量泄露和放大的改进SPIHT图像编码和解码方法,首先,沿着最高频子带的主要梯度方向施加二次小波变换,将那些具有幅值相关性的高幅值系数的能量进一步集中到少量系数上,并增加空间方向树的高度;其次,根据小波变换的高频子带会保留少量的中、低频信息的特点,利用Canny算子检测解码图像的主要边缘和轮廓,并迭代应用具有平滑下降沿的高通滤波器迭代地提取和放大高通系数中残留的中、低频信息,从而增强主要边缘和轮廓处的解码效果。实验结果表明,本发明可有效改善解码图像在低码率下的主客观质量。

Description

基于能量泄露和放大的改进SPIHT图像编码和解码方法
技术领域
本发明涉及图像处理领域,尤其是一种基于能量泄露和放大的改进SPIHT图像编码和解码方法。
背景技术
随着网络多媒体技术及其应用的不断发展,人们对图像编码的要求不断提高,不仅要求解码图像具有较高的重构质量,同时要求其能够适应网络异构特性及终端计算能力不同等应用需求。这就需要一种好的解决方法来实现在保证图像质量的前提下去除各种冗余,用尽量少的比特数来表征图像信息,同时使图像编码码流能很好的适应网络带宽的波动及不同计算能力终端的解码需求。一个图像的编码码流具有可分级性是指利用该码流的一部分(或子集)可以产生对该图像一个有用表示的能力,即解码器能够根据分辨率的实际情况对码流的一部分进行解码。图像编码码流的这种可分级特性可以满足图像的渐进传输、多质量服务以及图像数据库浏览等应用要求。
关于静态图像的编码主要需要考虑两个问题:一是如何能有效地表示重要系数的位置信息,同时尽量占用少的比特来编码同步信息;二是如何能有效地编码重要系数的幅值。近年来,基于小波变换的图像可分级编码方法出现了一些经典的算法,如EZW、SPIHT、k-阶零树、MRWD、EBCOT、SPECK和SPACS等,获得了较好的主观质量效果。
对于第一个问题,利用系数分布相似特性,EZW提出采用“零树”结构来定位重要系数;SPIHT利用“空间方向树”来定位重要系数;k-阶零树算法则在零树和空间方向树的基础上,抽象出了k-阶零树结构;而利用系数的聚集特性,SPECK采用分裂块结构定位重要系数;SPACS则综合考虑小波变换系数的尺度间传递性和尺度内聚集性,将空间方向树和分裂块相结合,进一步提出基于集合分裂编码系统;MRWD利用数学形态学的膨胀操作,对重要系数的聚簇进行提取和编码;而BSP树(Binary Space Partition Tree)和GW(GeometricWavelets)方法则通过二值空间分割树确定图像中具有相同系数特性的一致性区域进行编码。
对于第二个问题,EBCOT利用分数位平面编码重要系数,而其他方法大都采用基于位平面的逐次逼近量化SAQ(Successive Approximation Quantization)来编码重要系数。宋传鸣等人则设计了一种基于二分查找思路的系数逼近策略,适用于阈值不等于2的整数幂时的逐次逼近量化。
然而,现有方法大多忽视了小波变换并非2D图像的最优稀疏表示工具这一不足,图像经过小波变换后,高频子带仍然包含大量具有较大幅值的小波系数,无法实现对复杂边缘奇异的最佳逼近和能量集中。在这种情况下,就不可避免地出现了两方面问题:一方面,EZW、SPIHT、k-阶零树、MRWD、SPECK和SPACS等算法所采用的从低频到高频逐层处理的机制,使得低码率下高频系数无法获得有效解码,信息损失严重,重构图像在边缘轮廓处产生明显的“振铃”效应。而关于结构相似度SSIM (Structural Similarity)指标的研究表明,人眼视觉系统对于边缘、轮廓区域的像素值比对平坦区域的像素值更为敏感,这样不利于保证解码图像的主观质量。另一方面,小波变换在滤波过程中,所采用的低通滤波器和高通滤波器均不是理想的滤波器,低于截止频率的高频能量会向低频子带泄露,高于截止频率的低频能量同样也会向高频子带泄露。若能合理地发掘这部分泄露的能量,则能借助解码出的低频系数重构那些丢失的高频系数,实现高频信息的修复和增强,进而改善低码率下解码图像的主观质量。
发明内容
本发明是为了解决现有技术所存在的上述技术问题,提供一种基于能量泄露和放大的、边缘质量高的改进SPIHT图像编码和解码方法。
本发明的技术解决方案是:一种基于能量泄露和放大的改进SPIHT图像编码方法,其特征在于按照如下步骤进行:
步骤 1. 输入待编码图像和目标码率,设图像大小为像素,根据码率计算编码所需的比特数Bit_Budget= ,并将HW各用1个字节传输至解码端;
步骤2. 对图像进行级Daubechies双正交9/7小波变换;
步骤3. 判断最低频子带是否存在负系数,若包含负系数,则令标志变量HavingNegative=1,否则令HavingNegative=0,然后将HavingNegative的值用1 bit传输至解码端;
步骤 4. 计算最低频子带系数的绝对值最大的幅值,进而得出最大位平面数,并将的值用4 bit传输至解码端;
步骤5. 采用前向差分算子计算最高频子带在每个系数处的梯度,然后分别统计3个最高频子带的梯度方向直方图,进而为每个最高频子带选取一个主要梯度方向,并按照LH、HL和HH的顺序,将3个最高频子带的主要梯度方向各用8 bit传输至解码端;
步骤6. 对3个最高频子带分别沿着其主要梯度方向进行级一维5/3提升小波变换;
步骤7. 初始化非重要系数表、重要系数表、非重要子集表和比特位流表
步骤 8. 采用类似SPIHT的扫描方式编码所有小波变换系数;
所述类似SPIHT的扫描方式包括如下步骤:
步骤8.1 初始化扫描阈值T=2n,将最低频子带的所有系数放入LIP表,将存在孩子系数的最低频系数加入LIS表,并将其扫描类型设置为D型;
步骤8.2 若或比特位流表中的待输出比特数大于Bit_Budget,则转入步骤9;否则,转入步骤8.3;
步骤 8.3 扫描LIP表:顺序取出LIP表中的每个待处理系数,执行步骤8.3.1~步骤8.3.5;若LIP表中的所有系数均已处理完毕,则转入步骤8.4;
步骤8.3.1 若,则在比特位流表E的末尾添加比特“0”,则返回步骤8.3;
步骤8.3.2 若,则在比特位流表E的末尾添加比特“1”,把该系数LIP表中删除并添加到LSP表末尾;
步骤8.3.4 若是最低频系数且HavingNegative=0,则返回步骤8.3;否则,转入步骤8.3.5;
步骤8.3.5 如果系数是正数,则在比特位流表E的末尾添加比特“1”,否则,在比特位流表E的末尾添加比特“0”,返回步骤8.3;
步骤8.4 扫描LIS表:顺序取出LIS表中的每个待处理元素,执行步骤8.4.1~步骤8.4.3;若LIS表中的所有元素均已处理完毕,则转入步骤8.5;
步骤8.4.1 若其扫描类型为D型,则转入步骤8.4.2,否则转入步骤8.4.3;
步骤8.4.2 判断的D型子集是否为重要集合:
a. 若的D型子集是重要集合,则在比特位流表E的末尾添加比特“1”,再执行4次步骤a.1~步骤a.3来依次判断的4个D型孩子系数的重要性;
a.1 若某个孩子系数是重要的,则在比特位流表E的末尾添加比特“1”,并且把该孩子系数加到LSP表末尾,进一步,若该孩子系数是正数,则在比特位流表E的末尾添加比特“1”,否则在比特位流表E的末尾添加比特“0”;
a.2 判断的L型子集是否为空集,如果不为空集,则把的扫描类型由D型转换成L型后添加到LIS表尾部,如果的L型子集为空集,则从LIS表中删除元素
a.3 如果某个孩子系数不是重要系数,则把该孩子系数添加到LIP表末尾,并且在比特位流表末尾添加比特“0”;
b. 如果的D型子集是不重要集合,则在比特位流表末尾添加字符“0”;
步骤8.4.2 判断的L型子集是否为重要集合:
a. 如果的L型子集是重要集合,则在比特位流表末尾添加比特“1”,并且把的4个直接孩子系数添加到LIS表尾部,将其扫描类型设置为D型;返回步骤8.4;
b. 如果的L型子集不是重要集合,则在比特位流表末尾添加比特“0”;返回步骤8.4;
步骤8.5 精细扫描:顺序扫描LSP表,除了本轮扫描增加的那些系数以外,将表中其余系数的第个位平面输出到比特位流表E中;
步骤8.6 令,转入步骤8.2;
步骤9. 将比特位流表E传输至解码端,编码过程结束。
一种与上述基于能量泄露和放大的改进SPIHT图像编码方法对应的解码方法,其特征在于按照如下步骤进行:
步骤 1. 初始化待解码图像的基本信息;
步骤1.1 输入待解码比特流和目标码率,从编码端发送来的比特位流的前2个字节中解码出图像的高度H和宽度W,进而确定解码图像所需的比特数Bit_Budget=
步骤1.2 从比特位流中读取5 bit,解码出HavingNegative和最大位平面数
步骤1.3 从比特位流中读取24 bit,按照LH、HL和HH的顺序,解码出3个最高频子带的主要梯度方向
步骤 2. 初始化非重要系数表、重要系数表、非重要子集表,将待解码图像的级小波变换系数全部初始化为0,令扫描阈值T=2n
步骤3. 将最低频子带的所有系数坐标放入LIP表,将存在孩子系数的最低频系数的坐标添加到LIS表中,并将其扫描类型设置为D型;
步骤 4. 采用类似SPIHT的扫描方式处理LIP表、LIS表和LSP表;
所述类似SPIHT的扫描方式包括如下步骤:
步骤 4.1 扫描LIP表:对于LIP表中的每个待处理元素,执行步骤4.1.1~步骤4.1.5;若LIP表中的所有元素均已处理完毕,则转入步骤4.2;
步骤4.1.1 从比特位流中读取1 bit
步骤4.1.2 若,则表明LIP表中当前坐标(i,j)所对应的系数为不重要系数,返回步骤4.1;
步骤4.1.3 若,表明LIP表中当前坐标(i,j)所对应的系数为重要系数,则将该重要系数的值更新为,然后把坐标(i,j)从LIP表中删除并添加到LSP表末尾;
步骤4.1.4 若当前坐标(i,j)处于最低频子带且HavingNegative=0,则返回步骤4.1;否则,转入步骤4.1.5;
步骤4.1.5 从比特位流中读取1 bit,如果该比特为“0”,则将当前坐标(i,j)所对应的系数值取相反数;否则,保持其系数值不变;
步骤4.2 扫描LIS表:对于LIS表中的每个待处理元素p,执行步骤4.2.1~步骤4.2.3;若LIS表中的所有元素均已处理完毕,则转入步骤4.3;
步骤4.2.1 如果当前待处理元素p的扫描类型为D型,则转入步骤4.2.2,否则转入步骤4.2.3;
步骤4.2.2 从比特位流中读取1 bit
a 如果=1,表明p对应的D型子集是重要集合,执行4次步骤a.1~a.4依次判断其4个D型孩子系数的重要性;
a.1 从比特位流中读取1 bit,如果该比特为“1”,则转入a.2,否则转入a.4;
a.2 把p的直接孩子系数的坐标加到LSP表末尾,并进一步从比特流中读取1 bit,若该比特为“1”,则将相应孩子系数的值更新为,否则将相应孩子系数的值更新为
a.3 判断p的L型子集是否为空集,若不为空集,则把p的扫描类型由D型转换成L型后添加到LIS表尾部;若p的L型子集为空集,则将元素pLIS表中删除;转入步骤4.2.2;
a.4 把孩子系数的坐标添加到LIP表末尾;
b 如果=0,表明p对应的是不重要集合,返回步骤4.2;
步骤4.2.3 从比特位流中读取1 bit,判断p的L型子集是否为重要集合;
a 如果,表明p的L型子集是重要集合,则把p的4个直接孩子系数的坐标添加到LIS表尾部,将其扫描类型设置为D型;返回步骤4.2;
b 如果,表明p的L型子集不是重要集合;返回步骤4.2;
步骤4.3 精细扫描:顺序扫描LSP表,对于除本轮扫描增加的那些元素以外的每个元素,从比特位流中读取1 bit,若该比特为“1”,则将该元素所对应的小波系数绝对值增加,否则将该元素所对应的小波系数绝对值减小
步骤4.4 令,若目前从比特位流中读取的比特位数量已达到Bit_Budget,则转入步骤5,否则转入步骤4.1;
步骤5. 对3个最高频子带LH、HL和HH,分别沿着其主要梯度方向进行级一维5/3提升小波逆变换,得到小波系数矩阵T1,并将T1复制到矩阵T2
步骤6. 将T1进行级Daubechies双正交9/7小波逆变换,得到解码出的图像
步骤7. 利用Canny算子对进行边缘检测,得到边缘像素的二值掩码矩阵E:若图像的像素x位于边缘上,则令E(x)←1,否则令E(x)←0;
步骤8. 将T2的最低频子带系数全部置为0,但保留高频子带系数不变;
步骤9. 对低频置0后的T2进行级Daubechies双正交9/7小波逆变换,得到图像
步骤10. 对进行迭代式高频能量增强,令i←1;
步骤10.1 将R进行高通滤波,得到高通系数矩阵C;
步骤10.2 对于R中的每个像素x,利用高通系数矩阵C和二值掩码矩阵E,根据公式的定义计算增强后的像素值R(x):
所述a表示预设的权重系数,C(x)表示矩阵C中坐标x处的元素值,表示解码图像中坐标x处的像素值;
步骤10.3 令ii+1,若iT Iteration,所述T Iteration表示预设的迭代次数,则转入步骤11,否则转入步骤10.1;
步骤11. 输出R,作为最终的解码图像。
与现有技术相比,本发明具有以下特点:第一,小波变换仅能稀疏表示图像中沿着水平、竖直和对角线方向的点奇异和直线奇异,而图像存在的更加复杂的线奇异则表现为高频子带中大量呈现聚集性和幅值相关性的高幅值小波系数,本发明沿着最高频子带的主要梯度方向施加二次小波变换,既能将那些具有幅值相关性的高幅值系数的能量进一步集中到少量系数上,又可增加空间方向树的高度,进而提高传统SPIHT方法的编码效率;第二,为缓解理想频率截断产生的振铃效应,小波变换的高通滤波器会保留少量的中、低频信息,而这些中、低频信息往往对应图像的宽阔边缘和主要轮廓,利用这一特点,本发明反复应用具有平滑下降沿的高通滤波器迭代地向低频泄露和放大这些能量,从而增强解码图像的边缘和轮廓,改善其人眼主观质量。实验表明本发明可有效改善解码图像在低码率下的主客观质量。
附图说明
图1是本发明实施例在不同码率下解码Lena图像的效果图。
图2是本发明实施例在不同码率下解码Barbara图像的效果图。
图3是本发明实施例在不同码率下解码Goldhill图像的效果图。
具体实施方式
一种基于能量泄露和放大的改进SPIHT图像编码方法,其特征在于按照如下步骤进行:
步骤 1. 输入待编码图像和目标码率,设图像大小为像素,根据码率计算编码所需的比特数Bit_Budget= ,并将HW各用1个字节传输至解码端;
步骤2. 对图像进行级Daubechies双正交9/7小波变换;
步骤3. 判断最低频子带是否存在负系数,若包含负系数,则令标志变量HavingNegative=1,否则令HavingNegative=0,然后将HavingNegative的值用1 bit传输至解码端;
步骤 4. 计算最低频子带系数的绝对值最大的幅值,进而得出最大位平面数,并将的值用4 bit传输至解码端;
步骤5. 采用前向差分算子计算最高频子带在每个系数处的梯度,然后分别统计3个最高频子带的梯度方向直方图,进而为每个最高频子带选取一个主要梯度方向,并按照LH、HL和HH的顺序,将3个最高频子带的主要梯度方向各用8 bit传输至解码端;
步骤6. 对3个最高频子带分别沿着其主要梯度方向进行级一维5/3提升小波变换;
步骤7. 初始化非重要系数表、重要系数表、非重要子集表和比特位流表
步骤 8. 采用类似SPIHT的扫描方式编码所有小波变换系数;
所述类似SPIHT的扫描方式包括如下步骤:
步骤8.1 初始化扫描阈值T=2n,将最低频子带的所有系数放入LIP表,将存在孩子系数的最低频系数加入LIS表,并将其扫描类型设置为D型;
步骤8.2 若或比特位流表中的待输出比特数大于Bit_Budget,则转入步骤9;否则,转入步骤8.3;
步骤 8.3 扫描LIP表:顺序取出LIP表中的每个待处理系数,执行步骤8.3.1~步骤8.3.5;若LIP表中的所有系数均已处理完毕,则转入步骤8.4;
步骤8.3.1 若,则在比特位流表E的末尾添加比特“0”,则返回步骤8.3;
步骤8.3.2 若,则在比特位流表E的末尾添加比特“1”,把该系数LIP表中删除并添加到LSP表末尾;
步骤8.3.4 若是最低频系数且HavingNegative=0,则返回步骤8.3;否则,转入步骤8.3.5;
步骤8.3.5 如果系数是正数,则在比特位流表E的末尾添加比特“1”,否则,在比特位流表E的末尾添加比特“0”,返回步骤8.3;
步骤8.4 扫描LIS表:顺序取出LIS表中的每个待处理元素,执行步骤8.4.1~步骤8.4.3;若LIS表中的所有元素均已处理完毕,则转入步骤8.5;
步骤8.4.1 若其扫描类型为D型,则转入步骤8.4.2,否则转入步骤8.4.3;
步骤8.4.2 判断的D型子集是否为重要集合:
a. 若的D型子集是重要集合,则在比特位流表E的末尾添加比特“1”,再执行4次步骤a.1~步骤a.3来依次判断的4个D型孩子系数的重要性;
a.1 若某个孩子系数是重要的,则在比特位流表E的末尾添加比特“1”,并且把该孩子系数加到LSP表末尾,进一步,若该孩子系数是正数,则在比特位流表E的末尾添加比特“1”,否则在比特位流表E的末尾添加比特“0”;
a.2 判断的L型子集是否为空集,如果不为空集,则把的扫描类型由D型转换成L型后添加到LIS表尾部,如果的L型子集为空集,则从LIS表中删除元素
a.3 如果某个孩子系数不是重要系数,则把该孩子系数添加到LIP表末尾,并且在比特位流表末尾添加比特“0”;
b. 如果的D型子集是不重要集合,则在比特位流表末尾添加字符“0”;
步骤8.4.2 判断的L型子集是否为重要集合:
a. 如果的L型子集是重要集合,则在比特位流表末尾添加比特“1”,并且把的4个直接孩子系数添加到LIS表尾部,将其扫描类型设置为D型;返回步骤8.4;
b. 如果的L型子集不是重要集合,则在比特位流表末尾添加比特“0”;返回步骤8.4;
步骤8.5 精细扫描:顺序扫描LSP表,除了本轮扫描增加的那些系数以外,将表中其余系数的第个位平面输出到比特位流表E中;
步骤8.6 令,转入步骤8.2;
步骤9. 将比特位流表E传输至解码端,编码过程结束。
一种与上述基于能量泄露和放大的改进SPIHT图像编码方法对应的解码方法,其特征在于按照如下步骤进行:
步骤 1. 初始化待解码图像的基本信息;
步骤1.1 输入待解码比特流和目标码率,从编码端发送来的比特位流的前2个字节中解码出图像的高度H和宽度W,进而确定解码图像所需的比特数Bit_Budget=
步骤1.2 从比特位流中读取5 bit,解码出HavingNegative和最大位平面数
步骤1.3 从比特位流中读取24 bit,按照LH、HL和HH的顺序,解码出3个最高频子带的主要梯度方向
步骤 2. 初始化非重要系数表、重要系数表、非重要子集表,将待解码图像的级小波变换系数全部初始化为0,令扫描阈值
步骤3. 将最低频子带的所有系数坐标放入LIP表,将存在孩子系数的最低频系数的坐标添加到LIS表中,并将其扫描类型设置为D型;
步骤 4. 采用类似SPIHT的扫描方式处理LIP表、LIS表和LSP表;
所述类似SPIHT的扫描方式包括如下步骤:
步骤 4.1 扫描LIP表:对于LIP表中的每个待处理元素,执行步骤4.1.1~步骤4.1.5;若LIP表中的所有元素均已处理完毕,则转入步骤4.2;
步骤4.1.1 从比特位流中读取1 bit
步骤4.1.2 若,则表明LIP表中当前坐标(i,j)所对应的系数为不重要系数,返回步骤4.1;
步骤4.1.3 若,表明LIP表中当前坐标(i,j)所对应的系数为重要系数,则将该重要系数的值更新为,然后把坐标(i,j)从LIP表中删除并添加到LSP表末尾;
步骤4.1.4 若当前坐标(i,j)处于最低频子带且HavingNegative=0,则返回步骤4.1;否则,转入步骤4.1.5;
步骤4.1.5 从比特位流中读取1 bit,如果该比特为“0”,则将当前坐标(i,j)所对应的系数值取相反数;否则,保持其系数值不变;
步骤4.2 扫描LIS表:对于LIS表中的每个待处理元素p,执行步骤4.2.1~步骤4.2.3;若LIS表中的所有元素均已处理完毕,则转入步骤4.3;
步骤4.2.1 如果当前待处理元素p的扫描类型为D型,则转入步骤4.2.2,否则转入步骤4.2.3;
步骤4.2.2 从比特位流中读取1 bit
a 如果=1,表明p对应的D型子集是重要集合,执行4次步骤a.1~a.4依次判断其4个D型孩子系数的重要性;
a.1 从比特位流中读取1 bit,如果该比特为“1”,则转入a.2,否则转入a.4;
a.2 把p的直接孩子系数的坐标加到LSP表末尾,并进一步从比特流中读取1 bit,若该比特为“1”,则将相应孩子系数的值更新为,否则将相应孩子系数的值更新为
a.3 判断p的L型子集是否为空集,若不为空集,则把p的扫描类型由D型转换成L型后添加到LIS表尾部;若p的L型子集为空集,则将元素pLIS表中删除;转入步骤4.2.2;
a.4 把孩子系数的坐标添加到LIP表末尾;
b 如果=0,表明p对应的是不重要集合,返回步骤4.2;
步骤4.2.3 从比特位流中读取1 bit,判断p的L型子集是否为重要集合;
a 如果,表明p的L型子集是重要集合,则把p的4个直接孩子系数的坐标添加到LIS表尾部,将其扫描类型设置为D型;返回步骤4.2;
b 如果,表明p的L型子集不是重要集合;返回步骤4.2;
步骤4.3 精细扫描:顺序扫描LSP表,对于除本轮扫描增加的那些元素以外的每个元素,从比特位流中读取1 bit,若该比特为“1”,则将该元素所对应的小波系数绝对值增加,否则将该元素所对应的小波系数绝对值减小
步骤4.4 令,若目前从比特位流中读取的比特位数量已达到Bit_Budget,则转入步骤5,否则转入步骤4.1;
步骤5. 对3个最高频子带LH、HL和HH,分别沿着其主要梯度方向进行级一维5/3提升小波逆变换,得到小波系数矩阵T1,并将T1复制到矩阵T2
步骤6. 将T1进行级Daubechies双正交9/7小波逆变换,得到解码出的图像
步骤7. 利用Canny算子对进行边缘检测,得到边缘像素的二值掩码矩阵E:若图像的像素x位于边缘上,则令E(x)←1,否则令E(x)←0;
步骤8. 将T2的最低频子带系数全部置为0,但保留高频子带系数不变;
步骤9. 对低频置0后的T2进行级Daubechies双正交9/7小波逆变换,得到图像
步骤10. 对进行迭代式高频能量增强,令i←1;
步骤10.1 将R进行高通滤波,得到高通系数矩阵C;
步骤10.2 对于R中的每个像素x,利用高通系数矩阵C和二值掩码矩阵E,根据公式的定义计算增强后的像素值R(x):
所述a表示预设的权重系数,C(x)表示矩阵C中坐标x处的元素值,表示解码图像中坐标x处的像素值,本实施例中,令a=0.12;
步骤10.3 令ii+1,若iT Iteration,所述T Iteration表示预设的迭代次数,则转入步骤11,否则转入步骤10.1,本实施例中,令T Iteration =100;
步骤11. 输出R,作为最终的解码图像。
本发明实施例与传统SPIHT方法、基于改进空间方向树的SPIHT编码和解码方法(2015)的对比如表1~表3。
本发明实施例在不同码率下解码Lena图像的效果图如图1所示;
本发明实施例在不同码率下解码Lena图像的效果图如图2所示。
本发明实施例在不同码率下解码Goldhill图像的效果图如图3所示。
表1 在不同码率下Lena图像(512×512像素)的解码峰值信噪比比较
表2 在不同码率下Barbara图像(512×512像素)的解码峰值信噪比比较
表3 在不同码率下Goldhill图像(512×512像素)的解码质量比较

Claims (2)

1.一种基于能量泄露和放大的改进SPIHT图像编码方法,其特征在于按照如下步骤进行:
步骤 1. 输入待编码图像和目标码率,设图像大小为像素,根据码率计算编码所需的比特数Bit_Budget= ,并将HW各用1个字节传输至解码端;
步骤2. 对图像进行级Daubechies双正交9/7小波变换;
步骤3. 判断最低频子带是否存在负系数,若包含负系数,则令标志变量HavingNegative=1,否则令HavingNegative=0,然后将HavingNegative的值用1 bit传输至解码端;
步骤 4. 计算最低频子带系数的绝对值最大的幅值,进而得出最大位平面数,并将的值用4 bit传输至解码端;
步骤5. 采用前向差分算子计算最高频子带在每个系数处的梯度,然后分别统计3个最高频子带的梯度方向直方图,进而为每个最高频子带选取一个主要梯度方向,并按照LH、HL和HH的顺序,将3个最高频子带的主要梯度方向各用8 bit传输至解码端;
步骤6. 对3个最高频子带分别沿着其主要梯度方向进行级一维5/3提升小波变换;
步骤7. 初始化非重要系数表、重要系数表、非重要子集表和比特位流表
步骤 8. 采用类似SPIHT的扫描方式编码所有小波变换系数;
所述类似SPIHT的扫描方式包括如下步骤:
步骤8.1 初始化扫描阈值T=2n,将最低频子带的所有系数放入LIP表,将存在孩子系数的最低频系数加入LIS表,并将其扫描类型设置为D型;
步骤8.2 若或比特位流表中的待输出比特数大于Bit_Budget,则转入步骤9;否则,转入步骤8.3;
步骤 8.3 扫描LIP表:顺序取出LIP表中的每个待处理系数,执行步骤8.3.1~步骤8.3.5;若LIP表中的所有系数均已处理完毕,则转入步骤8.4;
步骤8.3.1 若,则在比特位流表E的末尾添加比特“0”,则返回步骤8.3;
步骤8.3.2 若,则在比特位流表E的末尾添加比特“1”,把该系数LIP表中删除并添加到LSP表末尾;
步骤8.3.4 若是最低频系数且HavingNegative=0,则返回步骤8.3;否则,转入步骤8.3.5;
步骤8.3.5 如果系数是正数,则在比特位流表E的末尾添加比特“1”,否则,在比特位流表E的末尾添加比特“0”,返回步骤8.3;
步骤8.4 扫描LIS表:顺序取出LIS表中的每个待处理元素,执行步骤8.4.1~步骤8.4.3;若LIS表中的所有元素均已处理完毕,则转入步骤8.5;
步骤8.4.1 若其扫描类型为D型,则转入步骤8.4.2,否则转入步骤8.4.3;
步骤8.4.2 判断的D型子集是否为重要集合:
a. 若的D型子集是重要集合,则在比特位流表E的末尾添加比特“1”,再执行4次步骤a.1~步骤a.3来依次判断的4个D型孩子系数的重要性;
a.1 若某个孩子系数是重要的,则在比特位流表E的末尾添加比特“1”,并且把该孩子系数加到LSP表末尾,进一步,若该孩子系数是正数,则在比特位流表E的末尾添加比特“1”,否则在比特位流表E的末尾添加比特“0”;
a.2 判断的L型子集是否为空集,如果不为空集,则把的扫描类型由D型转换成L型后添加到LIS表尾部,如果的L型子集为空集,则从LIS表中删除元素
a.3 如果某个孩子系数不是重要系数,则把该孩子系数添加到LIP表末尾,并且在比特位流表末尾添加比特“0”;
b. 如果的D型子集是不重要集合,则在比特位流表末尾添加字符“0”;
步骤8.4.2 判断的L型子集是否为重要集合:
a. 如果的L型子集是重要集合,则在比特位流表末尾添加比特“1”,并且把的4个直接孩子系数添加到LIS表尾部,将其扫描类型设置为D型;返回步骤8.4;
b. 如果的L型子集不是重要集合,则在比特位流表末尾添加比特“0”;返回步骤8.4;
步骤8.5 精细扫描:顺序扫描LSP表,除了本轮扫描增加的那些系数以外,将表中其余系数的第个位平面输出到比特位流表E中;
步骤8.6 令,转入步骤8.2;
步骤9. 将比特位流表E传输至解码端,编码过程结束。
2.一种与上述基于能量泄露和放大的改进SPIHT图像编码方法对应的解码方法,其特征在于按照如下步骤进行:
步骤 1. 初始化待解码图像的基本信息;
步骤1.1 输入待解码比特流和目标码率,从编码端发送来的比特位流的前2个字节中解码出图像的高度H和宽度W,进而确定解码图像所需的比特数Bit_Budget=
步骤1.2 从比特位流中读取5 bit,解码出HavingNegative和最大位平面数
步骤1.3 从比特位流中读取24 bit,按照LH、HL和HH的顺序,解码出3个最高频子带的主要梯度方向
步骤 2. 初始化非重要系数表、重要系数表、非重要子集表,将待解码图像的级小波变换系数全部初始化为0,令扫描阈值
步骤3. 将最低频子带的所有系数坐标放入LIP表,将存在孩子系数的最低频系数的坐标添加到LIS表中,并将其扫描类型设置为D型;
步骤 4. 采用类似SPIHT的扫描方式处理LIP表、LIS表和LSP表;
所述类似SPIHT的扫描方式包括如下步骤:
步骤 4.1 扫描LIP表:对于LIP表中的每个待处理元素,执行步骤4.1.1~步骤4.1.5;若LIP表中的所有元素均已处理完毕,则转入步骤4.2;
步骤4.1.1 从比特位流中读取1 bit
步骤4.1.2 若,则表明LIP表中当前坐标(i,j)所对应的系数为不重要系数,返回步骤4.1;
步骤4.1.3 若,表明LIP表中当前坐标(i,j)所对应的系数为重要系数,则将该重要系数的值更新为,然后把坐标(i,j)从LIP表中删除并添加到LSP表末尾;
步骤4.1.4 若当前坐标(i,j)处于最低频子带且HavingNegative=0,则返回步骤4.1;否则,转入步骤4.1.5;
步骤4.1.5 从比特位流中读取1 bit,如果该比特为“0”,则将当前坐标(i,j)所对应的系数值取相反数;否则,保持其系数值不变;
步骤4.2 扫描LIS表:对于LIS表中的每个待处理元素p,执行步骤4.2.1~步骤4.2.3;若LIS表中的所有元素均已处理完毕,则转入步骤4.3;
步骤4.2.1 如果当前待处理元素p的扫描类型为D型,则转入步骤4.2.2,否则转入步骤4.2.3;
步骤4.2.2 从比特位流中读取1 bit
a 如果=1,表明p对应的D型子集是重要集合,执行4次步骤a.1~a.4依次判断其4个D型孩子系数的重要性;
a.1 从比特位流中读取1 bit,如果该比特为“1”,则转入a.2,否则转入a.4;
a.2 把p的直接孩子系数的坐标加到LSP表末尾,并进一步从比特流中读取1 bit,若该比特为“1”,则将相应孩子系数的值更新为,否则将相应孩子系数的值更新为
a.3 判断p的L型子集是否为空集,若不为空集,则把p的扫描类型由D型转换成L型后添加到LIS表尾部;若p的L型子集为空集,则将元素pLIS表中删除;转入步骤4.2.2;
a.4 把孩子系数的坐标添加到LIP表末尾;
b 如果=0,表明p对应的是不重要集合,返回步骤4.2;
步骤4.2.3 从比特位流中读取1 bit ,判断p的L型子集是否为重要集合;
a 如果,表明p的L型子集是重要集合,则把p的4个直接孩子系数的坐标添加到LIS表尾部,将其扫描类型设置为D型;返回步骤4.2;
b 如果,表明p的L型子集不是重要集合;返回步骤4.2;
步骤4.3 精细扫描:顺序扫描LSP表,对于除本轮扫描增加的那些元素以外的每个元素,从比特位流中读取1 bit,若该比特为“1”,则将该元素所对应的小波系数绝对值增加,否则将该元素所对应的小波系数绝对值减小
步骤4.4 令,若目前从比特位流中读取的比特位数量已达到Bit_Budget,则转入步骤5,否则转入步骤4.1;
步骤5. 对3个最高频子带LH、HL和HH,分别沿着其主要梯度方向进行级一维5/3提升小波逆变换,得到小波系数矩阵T1,并将T1复制到矩阵T2
步骤6. 将T1进行级Daubechies双正交9/7小波逆变换,得到解码出的图像
步骤7. 利用Canny算子对进行边缘检测,得到边缘像素的二值掩码矩阵E:若图像的像素x位于边缘上,则令E(x)←1,否则令E(x)←0;
步骤8. 将T2的最低频子带系数全部置为0,但保留高频子带系数不变;
步骤9. 对低频置0后的T2进行级Daubechies双正交9/7小波逆变换,得到图像
步骤10. 对进行迭代式高频能量增强,令i←1;
步骤10.1 将R进行高通滤波,得到高通系数矩阵C;
步骤10.2 对于R中的每个像素x,利用高通系数矩阵C和二值掩码矩阵E,根据公式的定义计算增强后的像素值R(x):
所述a表示预设的权重系数,C(x)表示矩阵C中坐标x处的元素值,表示解码图像中坐标x处的像素值;
步骤10.3 令ii+1,若iT Iteration,所述T Iteration表示预设的迭代次数,则转入步骤11,否则转入步骤10.1;
步骤11. 输出R,作为最终的解码图像。
CN201810871102.9A 2018-08-02 2018-08-02 基于能量泄露和放大的改进spiht图像编码和解码方法 Active CN109035350B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810871102.9A CN109035350B (zh) 2018-08-02 2018-08-02 基于能量泄露和放大的改进spiht图像编码和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810871102.9A CN109035350B (zh) 2018-08-02 2018-08-02 基于能量泄露和放大的改进spiht图像编码和解码方法

Publications (2)

Publication Number Publication Date
CN109035350A true CN109035350A (zh) 2018-12-18
CN109035350B CN109035350B (zh) 2023-03-21

Family

ID=64647713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810871102.9A Active CN109035350B (zh) 2018-08-02 2018-08-02 基于能量泄露和放大的改进spiht图像编码和解码方法

Country Status (1)

Country Link
CN (1) CN109035350B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740333A (zh) * 2019-08-01 2020-01-31 辽宁师范大学 基于小波模极大值重建的改进spiht图像编码和解码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020015443A1 (en) * 2000-05-03 2002-02-07 Boris Felts Encoding method for the compression of a video sequence
CN103024399A (zh) * 2013-01-18 2013-04-03 北京航空航天大学 一种基于小波变换的极低码率视频压缩编码方法
CN105828088A (zh) * 2016-03-22 2016-08-03 辽宁师范大学 边缘增强的改进spiht图像编码和解码方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020015443A1 (en) * 2000-05-03 2002-02-07 Boris Felts Encoding method for the compression of a video sequence
CN103024399A (zh) * 2013-01-18 2013-04-03 北京航空航天大学 一种基于小波变换的极低码率视频压缩编码方法
CN105828088A (zh) * 2016-03-22 2016-08-03 辽宁师范大学 边缘增强的改进spiht图像编码和解码方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740333A (zh) * 2019-08-01 2020-01-31 辽宁师范大学 基于小波模极大值重建的改进spiht图像编码和解码方法
CN110740333B (zh) * 2019-08-01 2021-07-06 辽宁师范大学 基于小波模极大值重建的改进spiht图像编码和解码方法

Also Published As

Publication number Publication date
CN109035350B (zh) 2023-03-21

Similar Documents

Publication Publication Date Title
US6671413B1 (en) Embedded and efficient low-complexity hierarchical image coder and corresponding methods therefor
CN101668196B (zh) 基于下采样和插值的低码率图像压缩方法
Kumar et al. A review: DWT-DCT technique and arithmetic-Huffman coding based image compression
CN101631243B (zh) 一种基于小波变换的图像编和解码的方法
Mander et al. An improved image compression-decompression technique using block truncation and wavelets
Kumari et al. Effect of symlet filter order on denoising of still images
CN105828088B (zh) 边缘增强的改进spiht图像编码和解码方法
CN101155300A (zh) 一种高误比特率下基于离散小波变换的水声图像压缩方法
CN109035350A (zh) 基于能量泄露和放大的改进spiht图像编码和解码方法
CN104079947B (zh) 一种基于改进ezw的声纳图像数据压缩方法
CN110740333B (zh) 基于小波模极大值重建的改进spiht图像编码和解码方法
Niu et al. Edge-based perceptual image coding
Zhu et al. An improved SPIHT algorithm based on wavelet coefficient blocks for image coding
Hong et al. Hybrid image compression model based on subband coding and edge-preserving regularisation
CN104581157A (zh) 基于预截断的jpeg2000感兴趣区域编码方法
CN107948644A (zh) 一种水下图像压缩方法及传输方法
CN104639947B (zh) 基于分类离散余弦变换的高光谱图像有损压缩方法
CN103402043A (zh) 一种大视场空间tdiccd相机的图像压缩装置
CN116563081B (zh) 一种空间域盲图像水印方法
Dawood et al. Rlc-Based Image Compression Using Wavelet Decomposition With Zero-Setting of Unnecessary Sub-Bands
Li et al. Dual x-tree wavelet image coding
Chen et al. Region of interest determined by perceptual-quality and rate-distortion optimization in JPEG 2000
Kok et al. Image coding using DCT of wavelet coefficients
Wang et al. Spherical Image Compression Using Spherical Wavelet Transform
Singh et al. Comparative Analysis of Transform based Lossy Image Compression Techniques

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
GR01 Patent grant
GR01 Patent grant