【问题标题】:compression algorithm for bitmap images位图图像的压缩算法
【发布时间】:2012-03-08 09:35:23
【问题描述】:

是否有击败 LZ 系列的位图图像无损压缩算法?适用于嵌入式环境。

要求:

  • 最大压缩率
  • 面向低 bpp 的图像:2-8,最大 15
  • 低内存消耗或就地解压
  • 快速解压

【问题讨论】:

  • 通常的嫌疑人(gzip、bzip2、lzma、PNG)在您需要压缩的图像语料库上表现如何?他们是否在您的目标平台上实时解压缩?你能告诉我更多关于你的图像语料库的特点吗?照片般逼真(尽管 bpp 较低)还是计算机生成的?调色板?
  • @Mike:您的所有问题都已得到解答。是的,图像是基于调色板的,因此专门的压缩可能会比通用 LZ 产生更好的结果。像 LZMA/PPMD 这样的算法是不切实际的。实时减压是理想的,但不是必需的。
  • 虽然 2-8 bpp 通常意味着调色板,但 15 bpp 让我想到 RGB555。您的 15 bpp 机箱真的是调色板吗?另外,bzip2 不是 LZ 家族的一部分,所以我也想问这个问题(但那是压缩学究气)。根据您到目前为止的描述,我推断您的语料库特征中存在相当多的视觉多样性,这可能会导致很难找到一种比 PNG 更好地压缩所有这些特征的单一格式。
  • 您找到合适的解决方案了吗?你能分享你的经验吗?

标签: image compression


【解决方案1】:

一个候选者可能是 Rad Game Tools 的 Smacker 算法。他们的免费压缩工具可以在http://www.radgametools.com/smkdown.htm下载

优点:Smacker 视频从 1990 年代中期就开始使用,可以在内存微薄的 i486 计算机上实时解码(按照今天的标准)。虽然它是一种视频格式,但许多游戏已将其用于静止图像。

缺点:虽然它是调色板,但我不完全确定它是无损的。不过,它可能有拨盘。此外,如果您计划基于它分发产品,则需要支付许可证费用。我不知道你需要什么样的平台,但他们可能没有为你准备好的解码器。幸运的是,FFmpeg 项目中有一个开源解码器,但同样是许可问题——即使你购买了许可证,也不知道他们是否会同意你使用开源解码器。

如果这不符合您的需求,您将不得不提供更多细节和更具体的目标,首先是演示常见压缩格式如何在您的语料库上运行以及哪些特定目标(压缩和速度-明智的)你想实现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多