基于门控线性网络(GLN) 的无损图像压缩

本文来源: OpenFPGA

本项目的目标是通过引入无损高压缩比图像压缩来使医疗数据存储系统更加高效。

GLN.png

介绍

实现基于门控线性网络(GLN)的高压缩比无损医学图像压缩算法,以提高医学图像存储和分发系统的效率。与“传统”的基于上下文的数据压缩算法相比,基于GLN的系统使用一组不同的上下文模型。所有上下文模型的输出由 GLN 组合成单个概率值,用作熵编码算法的输入值。这个想法是由 Matt Mahoney 提出的,他发起了 PAQ Archiver 系列的开发。 PAQ Archiver在衡量无损压缩算法压缩率的多个基准测试中均名列前茅。

研究科学家 Joel Veness(Google DeepMind)解释了 PAQ Archiver系列的经验成功。 Joel Veness 介绍并描述了 GLN 的架构,并指出 PAQ 算法是该框架的特例。

据我们所知,基于 GLN 的压缩算法在嵌入式系统中的实现尚未在文献和任何商业系统中出现。与“传统”无损图像压缩算法(例如 JPEG-LS 和 JPEG-2000)相比,基于 GLN 的压缩系统的优势在于提高了压缩率。基于 GLN 的压缩系统的压缩率可能至少高出 20%。因此,理论上可以增加20%的医学图像存储量。面临的挑战是实现基于 GLN 的压缩以及适合实际系统的吞吐量。

有关 GLN 的更深入描述可在以下来源中找到:

1)https://arxiv.org/abs/1712.01897;

2)https://arxiv.org/abs/2002.11611;

3)https://ieeexplore.ieee.org/abstract/document/9134252

有关 PAQ 系列的更深入描述可在以下来源中找到:

1)http://mattmahoney.net/dc/dce.html;

2) https://arxiv.org/abs/1108.3298;

下图是图像压缩/解压缩的数据流。

数据流.png

项目使用

通过Python脚本与FPGA板卡进行通信。将图像传输到板卡上。

开源项目中下载压缩的 Vivado 项目文件。解压并编译。下载bit流到FPGA中,打开 PC 并启动 Python 脚本。

开源链接

https://gitee.com/openfpga/gln