主权项 |
一种基于图形处理器的条带波变换图像压缩方法,包括如下步骤:(1)输入待压缩图像:输入待压缩图像,从输入的待压缩图像中读取数值矩阵,将数值矩阵从内存传输到显存中;(2)小波变换:对数值矩阵进行二维哈尔小波变换,得到哈尔小波系数矩阵;(3)Bandelet化:(3a)将哈尔小波系数矩阵分解成边长为8的小方块,将小方块内的系数加载到图形处理器的共享存储器中,对于每个小方块,在(0,π)区间内,等间隔地抽取32个角度值作为几何流的方向,用符号INF表示无几何流方向;(3b)采用投影值公式,计算每个小方块内哈尔小波系数的坐标在抽取的32个几何流方向上的正交投影值;(3c)将正交投影值按从小到大排序,得到一个长为64的排序索引,对于无几何流方向,排序索引为数字1~64;(3d)将小方块内的哈尔小波系数,按照排序索引进行重新排序,得到一个一维信号,对一维信号进行一维哈尔小波变换,得到小波变换后的一维信号,对小波变换后的一维信号进行量化处理,得到量化后的一维信号,对量化后的一维信号进行一维哈尔小波逆变换得到重构信号;(3e)计算估计误差,选择使估计误差最小的方向作为小方块的最佳几何流方向;(3f)采用投影值公式,计算每个小方块内哈尔小波系数的坐标在最佳几何流方向上的正交投影值,将正交投影值按从小到大排序,得到一个长为64的排序索引,若最佳几何流方向是无几何流方向,排序索引为数字1~64,使用排序索引重新排序小方块内的哈尔小波系数,得到一维信号,对一维信号,进行一维哈尔小波变换,得到哈尔小波变换后的一维信号,使用排序索引,对哈尔小波变换后的一维信号进行重新排序,得到Bandelet变换系数矩阵;(3g)将Bandelet变换系数矩阵转换为整型值;(3h)将Bandelet变换系数矩阵从显存传回内存;(4)嵌入式零树小波编码:(4a)采用嵌入式零树小波方法,对Bandelet变换系数矩阵进行扫描,得到扫描符号列表;(4b)对扫描符号列表进行霍夫曼编码,得到二进制码流,根据图像的像素深度来控制压缩文件的大小;(4c)使用数字对几何流方向进行编码,用数字0~31分别表示等间隔地抽取出来的32个方向值,用数字32表示无几何流方向的符号INF,将二进制码流、嵌入式零树小波扫描的初始阈值、每轮主扫描表和辅扫描表的长度、哈尔小波变换的迭代次数、压缩图像的尺寸、霍夫曼码表、每个小方块内的最佳几何流的方向写入压缩文件中;(4d)输出压缩文件;(5)输入待解压的压缩文件:输入待解压的压缩文件,从压缩文件中提取霍夫曼码表;(6)解码:(6a)从压缩文件中读取二进制码流,对二进制码流进行霍夫曼解码,得到嵌入式零树小波的扫描符号列表;(6b)对扫描符号列表进行嵌入式零树小波解码,得到Bandelet变换的系数矩阵;(7)Bandelet逆变换:(7a)将得到的Bandelet系数矩阵从内存传输到显存中;(7b)将Bandelet系数矩阵分成边长为8的小方块,将小方块内的Bandelet系数从显存读取到图形处理器的共享存储器中;(7c)从压缩文件中读取每个小方块内的最佳几何流的方向,采用投影值公式,计算每个小方块内Bandelet系数的坐标在最佳几何流方向上的正交投影值,将正交投影值按从小到大排序,得到一个长为64的排序索引,若最佳几何流方向是无几何流方向,排序索引为数字1~64,采用排序索引重新排序小方块内的Bandelet变换系数,得到一个一维信号,对一维信号进行一维哈尔小波逆变换得到哈尔小波逆变换后的一维信号,采用排序索引重新排序哈尔小波逆变换后的一维信号,得到哈尔小波变换矩阵;(7d)对哈尔小波变换矩阵进行二维哈尔小波逆变换,得到压缩图像的重构图像;(7e)将压缩图像的重构图像从显存传回内存。 |