一种无损图像分块压缩方法、设备、存储介质

文档序号:36155815发布日期:2023-11-23 03:57阅读:57来源:国知局
一种无损图像分块压缩方法

本发明属于图像压缩,具体涉及一种基于jpeg-ls(joint photographicexperts group-lossless standard)的高并行度、低复杂度的无损图像分块压缩方法。


背景技术:

1、图像压缩是指利用各种技术手段消除图像空间上的冗余或编码上的冗余,以达到减小图像存储占用的空间、提高图像传输速度的目的。在医学成像,卫星图像,技术图等领域,不仅需要压缩图像大小以实现快速传输和存储,同时也要确保图像的保真度,因此需要无损图像压缩技术保证在这些应用场景下图像的细节不会丢失。

2、现有的无损图像压缩技术路线主要有无损预测编码,变换编码,熵编码方法等。其中变换编码过程较为复杂,熵编码应用在自然图像上效果较差,无损预测编码压缩技术路线得益于其高压缩性能和低复杂度,得到了广泛采用,如目前得到普遍应用的jpeg-ls算法。jpeg-ls算法基于惠普实验室开发的loco-i(low complexity losslesscompressionfor images)算法,提供了无损压缩和近无损压缩功能。由于该算法的复杂性适中,只需实现数据的减法、移位以及其他类似的、简单的处理过程且复杂性和效率之间具有良好的平衡性,易于硬件实现,因此在医学影像,人工智能,遥感探测等领域应用广泛。

3、但是,由于jpeg-ls的压缩像素和解压缩像素的过程具有较强的串行性,需要按像素顺序逐行逐像素进行操作,前后像素间具有较强的依赖性,带来了raw(read afterwrite)写后读问题,因此该算法对图像进行压缩的过程不易于硬件设备并行处理的实现,且解压缩时也必须按像素顺序进行,不能实现随机访问图像某一部分进行解压,灵活性较差,大大限制了其应用场景。因此,需要对其进行创新,设计一种压缩并行度更高,解压缩更加灵活,且保持其低复杂度优势的图像压缩方法。


技术实现思路

1、为解决jpeg-ls无损图像压缩算法压缩图像像素的过程中串行性强,存在raw问题,硬件实现并行度低,无法随机访问压缩数据并进行解压缩,灵活性较差的问题,本申请提供一种无损图像分块压缩方法、设备、存储介质。

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

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

4、步骤二、将当前图像组进行图像分块,并对图像块进行边缘填充,并按顺序扫描当前图像组的图像块,获得对该图像组进行压缩时需要的编码参数数组k和c,以及游程长度频率数组p;

5、步骤三、计算当前图像组的编码参数数组k和c与上一图像组的编码参数数组k和c之间元素的平均差,判断是否需要动态更新当前图像组的编码参数数组k和c;

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

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

8、步骤六、利用当前图像组的编码参数数组k和c,以及游程长度的哈夫曼编码表对图像块进行图像压缩,得到图像块压缩数据;

9、步骤七、将获得的编码参数数组k和c、哈夫曼编码表、图像块压缩数据组合得到当前图像组最终的压缩数据;

10、步骤八、转至下一图像组,重复步骤二至步骤七,直到整幅图像所有图像组扫描、压缩完成。

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

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

13、本发明有益效果:

14、现有方法中,jpeg-ls算法压缩和解压缩图像的过程具有严格的串行性,需要逐行逐像素进行压缩或解压缩,像素与像素之间有较强的依赖关系,带来了raw写后读问题,不适合硬件设备高并行度部署该算法。而本发明的一种无损图像分块压缩方法,采用自适应图像分组,分组扫描图像组,计算获得编码参数数组k和c及哈夫曼编码表,并以图像组为单位动态更新编码参数数组k和c,图像组内图像块共用一组编码参数数组k和c,进行图像压缩,打破了像素压缩时原jpeg-ls算法的串行性,有利于硬件设备实现多组图像块,多像素并行压缩,提高压缩并行度和压缩速度。将编码参数数组k和c、哈夫曼编码表、图像块压缩数据组合作为最终压缩数据,使得在解压缩图像时,可以利用已知的编码参数数组k和c、哈夫曼编码表实现随机访问图像压缩数据中任一图像块的压缩数据并直接进行解压缩,及多图像块的并行解压缩,打破了像素解压缩时原jpeg-ls算法的串行性,大大提高了该方法的灵活性和可适用的应用场景,例如本方法可以应用在gpu,tpu等图像处理器中,提高访问颜色缓冲区、对图像块进行渲染和处理过程的带宽等。

15、本发明的一种无损图像分块压缩方法,在分组扫描图像获得编码参数数组k和c时,通过计算、量化编码参数数组k和c与初始值数组以及上一图像组的编码参数数组k和c之间的波动性,有选择地更新编码参数数组k和c,根据编码参数数组k和c的波动性进行动态更新,既符合图像本身的变化规律,又缩减了需要保存的参数量,提高了压缩率和执行效率。

16、本发明提供的一种无损图像分块压缩方法,是一种基于jpeg-ls的高并行度、低复杂度的无损图像分块压缩方法,通过对输入的待压缩图像进行自适应图像分组,对图像组进行图像分块、边缘填充,扫描并计算获得编码参数数组k和c及哈夫曼编码表,以图像组为单位,动态更新编码参数数组k和c;之后,再利用当前图像组对应的编码参数数组k和c对图像块进行编码压缩,达到压缩图像像素的目的;最终,将获得的编码参数数组k和c、哈夫曼编码表、图像块压缩数据组合得到最终的压缩数据,作为图像压缩结果进行输出或存储。本发明方法通过扫描图像组获得编码参数数组k和c及哈夫曼编码表对图像块进行压缩,打破了原jpeg-ls像素压缩过程的串行性,一个图像组内,图像块与图像块的扫描、压缩过程均可以并行执行,为硬件设备的高并行度实现提供了算法层面的支撑,提高了硬件实现的效率和速度;在解压缩图像时,可以利用编码参数数组k和c、哈夫曼编码表进行多图像块的并行解压,也打破了原jpeg-ls算法像素解压缩的串行性,提高了算法的灵活性,拓宽了应用场景。



技术特征:

1.一种无损图像分块压缩方法,其特征在于,包括:

2.如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤一包括如下步骤:

3.如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤二中,按顺序扫描当前图像组的图像块,获得对该图像组进行压缩时需要的编码参数数组k和c,以及游程长度频率数组p,包括如下步骤:

4.如权利要求3所述的无损图像分块压缩方法,其特征在于,利用上下文信息计算编码参数数组k包括如下步骤:

5.如权利要求3所述的无损图像分块压缩方法,其特征在于,利用上下文信息计算编码参数数组c包括如下步骤:

6.如权利要求3所述的无损图像分块压缩方法,其特征在于,计算游程长度包括如下步骤:

7.如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤三包括如下步骤:

8.如权利要求1所述的无损图像分块压缩方法,其特征在于,步骤四包括如下步骤:

9.一种电子设备,包括处理器和存储器,所述存储器存储有可在所述处理器上运行的程序,其特征在于,所述程序被所述处理器执行时实现权利要求1-8任一项所述的无损图像分块压缩方法的步骤。

10.一种计算机可读存储介质,存储有至少一个程序,其特征在于,所述至少一个程序可被至少一个处理器执行,以实现权利要求1-8任一项所述的无损图像分块压缩方法的步骤。


技术总结
本发明公开一种无损图像分块压缩方法、设备、存储介质,是一种基于JPEG‑LS的高并行度、低复杂度的无损图像分块压缩方法,涉及图像压缩技术领域。本发明方法通过扫描获得编码参数数组和哈夫曼编码表对图像块进行压缩,打破了原JPEG‑LS像素压缩过程的严格串行性,增加了硬件实现的并行度,提高压缩速度,并保持了原JPEG‑LS低复杂度的特点,利用保存的编码参数数组和哈夫曼编码表,可实现任意图像块压缩数据的直接解压缩,提高了算法的灵活性,拓宽了应用场景。

技术研发人员:肖昊,许同庆,姚坦,李宁,郭剑博
受保护的技术使用者:合肥工业大学
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1