一种无损图像分块压缩方法技术

技术编号:39510252 阅读:10 留言:0更新日期:2023-11-25 18:45
本发明专利技术公开一种无损图像分块压缩方法

【技术实现步骤摘要】
一种无损图像分块压缩方法、设备、存储介质


[0001]本专利技术属于图像压缩
,具体涉及一种基于
JPEG

LS

Joint Photographic Experts Group

Lossless Standard
)的高并行度

低复杂度的无损图像分块压缩方法


技术介绍

[0002]图像压缩是指利用各种技术手段消除图像空间上的冗余或编码上的冗余,以达到减小图像存储占用的空间

提高图像传输速度的目的

在医学成像,卫星图像,技术图等领域,不仅需要压缩图像大小以实现快速传输和存储,同时也要确保图像的保真度,因此需要无损图像压缩技术保证在这些应用场景下图像的细节不会丢失

[0003]现有的无损图像压缩技术路线主要有无损预测编码,变换编码,熵编码方法等

其中变换编码过程较为复杂,熵编码应用在自然图像上效果较差,无损预测编码压缩技术路线得益于其高压缩性能和低复杂度,得到了广泛采用,如目前得到普遍应用的
JPEG

LS
算法
。JPEG

LS
算法基于惠普实验室开发的
LOCO

I

LOw COmplexity LOsslessCOmpression for Images
)算法,提供了无损压缩和近无损压缩功能r/>。
由于该算法的复杂性适中,只需实现数据的减法

移位以及其他类似的

简单的处理过程且复杂性和效率之间具有良好的平衡性,易于硬件实现,因此在医学影像,人工智能,遥感探测等领域应用广泛

[0004]但是,由于
JPEG

LS
的压缩像素和解压缩像素的过程具有较强的串行性,需要按像素顺序逐行逐像素进行操作,前后像素间具有较强的依赖性,带来了
RAW

Read After Write
)写后读问题,因此该算法对图像进行压缩的过程不易于硬件设备并行处理的实现,且解压缩时也必须按像素顺序进行,不能实现随机访问图像某一部分进行解压,灵活性较差,大大限制了其应用场景

因此,需要对其进行创新,设计一种压缩并行度更高,解压缩更加灵活,且保持其低复杂度优势的图像压缩方法


技术实现思路

[0005]为解决
JPEG

LS
无损图像压缩算法压缩图像像素的过程中串行性强,存在
RAW
问题,硬件实现并行度低,无法随机访问压缩数据并进行解压缩,灵活性较差的问题,本申请提供一种无损图像分块压缩方法

设备

存储介质

[0006]本申请实施例提供一种无损图像分块压缩方法,其特征在于,包括:步骤一

对输入的一张图像按分辨率进行自适应图像分组;步骤二

将当前图像组进行图像分块,并对图像块进行边缘填充,并按顺序扫描当前图像组的图像块,获得对该图像组进行压缩时需要的编码参数数组
K

C
,以及游程长度频率数组
P
;步骤三

计算当前图像组的编码参数数组
K

C
与上一图像组的编码参数数组
K

C
之间元素的平均差,判断是否需要动态更新当前图像组的编码参数数组
K

C
;步骤四

按游程长度频率数组
P
对当前图像组游程长度进行哈夫曼编码,得到游程长度的哈夫曼编码表;
步骤五

从当前图像组中按顺序读取边缘填充后的图像块数据,并将每个图像块的首个像素原值直接写入图像块压缩数据的比特流中;步骤六

利用当前图像组的编码参数数组
K

C
,以及游程长度的哈夫曼编码表对图像块进行图像压缩,得到图像块压缩数据;步骤七

将获得的编码参数数组
K

C、
哈夫曼编码表

图像块压缩数据组合得到当前图像组最终的压缩数据;步骤八

转至下一图像组,重复步骤二至步骤七,直到整幅图像所有图像组扫描

压缩完成

[0007]本申请实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有可在所述处理器上运行的程序,其特征在于,所述程序被所述处理器执行时实现所述的无损图像分块压缩方法的步骤

[0008]本申请实施例还提供一种计算机可读存储介质,存储有至少一个程序,其特征在于,所述至少一个程序可被至少一个处理器执行,以实现所述的无损图像分块压缩方法的步骤

[0009]本专利技术有益效果:现有方法中,
JPEG

LS
算法压缩和解压缩图像的过程具有严格的串行性,需要逐行逐像素进行压缩或解压缩,像素与像素之间有较强的依赖关系,带来了
RAW
写后读问题,不适合硬件设备高并行度部署该算法

而本专利技术的一种无损图像分块压缩方法,采用自适应图像分组,分组扫描图像组,计算获得编码参数数组
K

C
及哈夫曼编码表,并以图像组为单位动态更新编码参数数组
K

C
,图像组内图像块共用一组编码参数数组
K

C
,进行图像压缩,打破了像素压缩时原
JPEG

LS
算法的串行性,有利于硬件设备实现多组图像块,多像素并行压缩,提高压缩并行度和压缩速度

将编码参数数组
K

C、
哈夫曼编码表

图像块压缩数据组合作为最终压缩数据,使得在解压缩图像时,可以利用已知的编码参数数组
K

C、
哈夫曼编码表实现随机访问图像压缩数据中任一图像块的压缩数据并直接进行解压缩,及多图像块的并行解压缩,打破了像素解压缩时原
JPEG

LS
算法的串行性,大大提高了该方法的灵活性和可适用的应用场景,例如本方法可以应用在
GPU,TPU
等图像处理器中,提高访问颜色缓冲区

对图像块进行渲染和处理过程的带宽等

[0010]本专利技术的一种无损图像分块压缩方法,在分组扫描图像获得编码参数数组
K

C
时,通过计算

...

【技术保护点】

【技术特征摘要】
1.
一种无损图像分块压缩方法,其特征在于,包括:步骤一

对输入的一张图像按分辨率进行自适应图像分组;步骤二

将当前图像组进行图像分块,对图像块进行边缘填充,按顺序扫描当前图像组的图像块,获得对该图像组进行压缩时需要的编码参数数组
K

C
,以及游程长度频率数组
P
;步骤三

计算当前图像组的编码参数数组
K

C
与上一图像组的编码参数数组
K

C
之间元素的平均差,判断是否需要动态更新当前图像组的编码参数数组
K

C
;步骤四

按游程长度频率数组
P
对当前图像组游程长度进行哈夫曼编码,得到游程长度的哈夫曼编码表;步骤五

从当前图像组中按顺序读取边缘填充后的图像块数据,并将每个图像块的首个像素原值直接写入图像块压缩数据的比特流中;步骤六

利用当前图像组的编码参数数组
K

C
,以及游程长度的哈夫曼编码表对图像块进行图像压缩,得到图像块压缩数据;步骤七

将获得的编码参数数组
K

C、
哈夫曼编码表

图像块压缩数据组合得到当前图像组最终的压缩数据;步骤八

转至下一图像组,重复步骤二至步骤七,直到整幅图像所有图像组扫描

压缩完成
。2.
如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤一包括如下步骤:将输入的一张图像平均分为
Piece_Num
组,图像分组数利用以下公式计算:
Piece_Num = Ceil (pwidth*pheight*Channel_Num/Max_Buffer_Size)
,其中,
pwidth
为图像宽度,
pheight
为图像高度,
Channel_Num
为图像的通道数,
Max_Buffer_Size
为最大的分组容量,
Ceil
表示上取整
。3.
如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤二中,按顺序扫描当前图像组的图像块,获得对该图像组进行压缩时需要的编码参数数组
K

C
,以及游程长度频率数组
P
,包括如下步骤:(
2.1
)将图像块数据读出,构建当前扫描像素的因果模板,根据因果模板计算当前扫描像素的梯度值;(
2.2
)若梯度值不均为0,进入普通模式,计算普通模式的上下文信息,并利用上下文信息计算编码参数数组
K

C
;(
2.3) 若梯度值均为0,进入游程模式,计算游程长度,更新游程长度频率数组
P。4.
如权利要求3所述的无损图像分块压缩方法,其特征在于,利用上下文信息计算编码参数数组
K
包括如下步骤:在一个图像组中所有图像块扫描结束后,利用整副图像中相同上下文环境索引下预测误差绝对值的和
A[Q_Index]、
整幅图像中相同上下文环境出现的次数
NA[Q_Index]
计算编码参数数组
K
中包含的所有编码参数
K[Q_Index]
,其中
Q_Index
表示索引号,
K[Q_Index]
的值取满足以下不等式的最小非负整数:2K[Q_Index] * NA[Q_Index]≥A[Q_Index]
如果在一个图像组中,有
n
个图像块同时进行扫描操作,则在该
n
个图像块扫描完成后,对该
n
个图像块的
A[Q_Index]、NA[Q_Index]
进行合并;若当前图像组中所有图像块已经扫
描完,则合并后的
A[...

【专利技术属性】
技术研发人员:肖昊许同庆姚坦李宁郭剑博
申请(专利权)人:合肥工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1