利用JPG图像之间的冗余

时间:2013-04-04 00:38:05

标签: jpeg grayscale huffman-code libpng lossless-compression

我希望在一组类似的 colored JPG图像中利用冗余。 Set redundancy compression已成功用于类似的8-bit grayscale图像。他们基本上找到一组图像的MAXMIN,并将原始图像编码为differences相对于MAX或MIN图像,具体取决于较小的差异。除了gzip或bzip等常规压缩工具之外,使用此方法还获得了大约20-50%的附加压缩灰度图像。我做了以下事情:

  • 将JPG图像解压缩为RGB char buffers
  • 计算MIN和MAX字符缓冲区
  • 将差异字符缓冲区编码为JPG图像

问题是要从差异图像中检索原始图像,理想情况下我需要无损地编码差异。但是,libjpeg中的RGB-> JPG没有lossless转换,甚至质量= 1.0,因为差异系数(1~10),我最终几乎失去了所有信息(几乎所有解码数据都是1~3)。

为了解决这个问题,我尝试使用差异char缓冲区的huffman encoding

  • 使用霍夫曼编码
  • 对差异字符缓冲区进行编码

原始JPG图像大小约为256 KB,相应的RGB缓冲区大约为7.8 MB,霍夫曼编码的差异图像大小约为2.2 MB。因此,霍夫曼编码可以保存大量的空间w.r.t RGB缓冲区,但原始的JPG等价物小得多

  • 存储这些差异缓冲区的任何建议有效可比较的大小与256 KB原始JPG文件相比?
  • 有没有办法用low valued data coefficients作为JPG图像保存这些差异缓冲区而不会丢失实质性信息?

0 个答案:

没有答案