【技术实现步骤摘要】
一种基于Hilbert扫描的灰度图像压缩方法
[0001]本专利技术涉及一种基于Hilbert扫描的灰度图像压缩方法,属于图像存储
技术介绍
[0002]图像压缩是图像存储和高效传输的基础。目前有众多图像压缩的算法,如JPEG算法、Kamata等人提出的算法等。Hilbert曲线作为Peano填充曲线中的一个重要分支,在图像压缩中得到了广泛应用。相比光栅扫描,Hilbert曲线扫描具有更好的内聚性,因此可更好地把灰度值接近的像素点存储在相邻的位置。
[0003]早期的Hilbert编解码算法多为基于递归的算法,编码效率低。Kamata采用的hilbert解码算法,其解码时间占总压缩时间的近50%。通过引入基于高效的Hilbert解码算法,并优化图像压缩过程,可以有效提高图像压缩的效率。
技术实现思路
[0004]本专利技术要解决的技术问题是提供一种基于Hilbert扫描的灰度图像压缩方法,从而解决图像扫描效率低和分区合并过程中空间开销大而导致的图像压缩和解压效率低的问题。
[0005]本专利技术的技术方案是:一种基于Hilbert扫描的灰度图像压缩方法,包括数据映射阶段、压缩阶段和图像还原阶段。数据映射阶段,创建Hilbert解码状态视图,基于高效的hilbert曲线解码算法扫描图像,将图像映射为一维数组。压缩阶段,根据最小方差分区的策略将一维数据划分为灰度值相近的分区,并对满足特定条件的较小的分区进行合并,以降低分区数量,从而将原始图像压缩为长度和灰度两个位数组。还原阶段, ...
【技术保护点】
【技术特征摘要】
1.一种基于Hilbert扫描的灰度图像压缩方法,其特征在于:Step1:构建Hilbert状态视图,沿Hilbert曲线方向顺序扫描图像,得到图像的一维灰度数组G;Step2:将一维灰度数组G分割为灰度值相近的小分区,并将每个小分区的长度和灰度值分别插入到长度位数组R
len
和灰度位数组R
gray
中,从而将原始图像压缩表示为R
len
和R
gray
2个位数组;Step3:将压缩后的位数组R
len
和R
gray
还原为对应图像。2.根据权利要求1所述的基于Hilbert扫描的灰度图像压缩方法,其特征在于所述Step1具体为:Step1.1:基于1阶Hilbert曲线构建解码状态视图,然后采用基于状态视图的高效Hilbert解码算法扫描图像数据,所述1阶Hilbert曲线包含开口向下、向左、向上和向右4种基本状态,分别对应状态0、1、2、3;Step1.2:给定1阶编码值00、01、10、11,其对应的4种状态下的坐标值和下一阶状态如下:状态0:物理坐标:(0,0)、(0,1)、(1,1)、(1,0);下一阶状态:1、0、0、3;状态1:物理坐标:(0,0)、(1,0)、(1,1)、(0,1);下一阶状态:0、1、1、2;状态2:物理坐标:(1,1)、(1,0)、(0,0)、(0,1);下一阶状态:3、2、2、1;状态3:物理坐标:(1,1)、(0,1)、(0,0)、(1,0);下一阶状态:2、3、3、0;Step1.3:给定一张n*n的灰度图像,确定Hilbert阶数为log2n,其中n为图像高度或宽度上的像素点的数量;Step1.4:沿着Hilbert曲线方向,将Hilbert空间内的每个编码值C解码为图像中对应的坐标P(x,y);Step1.5:将P(x,y)像素点的灰度值存入数组G的第C个位置。3.根据权利要求2所述的基于Hilbert扫描的灰度图像压缩方法,其特征在于所述Step1.4具体为:Step1.4.1:设定初始状态s=0,即C的第1阶总是从开口向下的状态开始解码,x=0,y=0;Step1.4.2:循环变量i从1到log2n,循环执行Step1.4.3和Step1.4.4;Step1.4.3:取C的第i阶的2位编码值c,根据当前状态s,查询状态视图获得对应的第i阶坐标值(x
i
,y
i
)及第i+1阶状态值s';Step1.4.4:令x=x<<1|x
i
,y=y<<1|y
i
,s=s',其中“|”为逻辑或操作。4.根据权利要求1所述的基于Hilbert扫描的灰度图像压缩方法,其特征在于所述Step2具体为:Step2....
【专利技术属性】
技术研发人员:贾连印,王炳月,丁家满,李润鑫,李晓武,游进国,
申请(专利权)人:昆明理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。