低位深度、灰度图像的最佳图像压缩?

低位深度、灰度图像的最佳图像压缩?

我正在尝试压缩许多(最多 2,500 张)小(300x200 像素)灰度图像,以使文件大小尽可能小。目前,我的位深度为 4(16 级灰度)。图像源是远程位置的监控摄像头,我们需要通过非常慢的卫星连接发送图像。我正在使用 ImageMagick 将图像转换为 4 位深度未压缩的灰度 TIF。每张图像的未压缩大小约为 41 KB。我能够使用 7zip 将其中 1,500 张图像压缩到 3MB,这大约减少了 95%。我也尝试过 zpaq 上的设置,但仍然无法将其缩小到 3MB 以下。我知道这看起来很小,但卫星连接的速度是 kbps,我们按分钟支付通话时间。

因为这是监控摄像头,所以图像之间变化不大,所以我也尝试使用 ffmpeg 将它们转换为 H.264 视频,但文件大小更大(我相信这是因为 H.264 不支持灰度,所以 RGB 仍然存在)。

是否有更好的 zpaq 设置可以产生更好的结果,或者还有其他想法?

提前致谢

答案1

让算法选择最佳的压缩方式往往更好。索引颜色压缩适合边缘清晰的图像。照片图像最好通过 JPEG 和 MPEG 等标准进行压缩。

我使用 FFmpeg 和我制作的游泳池视频测试了 H.264 压缩。首先,我将视频转换为灰度、300x200 像素和 2 fps。所以我使用视频的 00:12:30 来获取 1,500 帧。我得到了以下结果:

ffmpeg -i input.mp4 -c:v libx264 -crf 30 crf30.mp4

文件大小:5.7 MB
比特率:60.7 Kbps
示例帧:
在此处输入图片描述

ffmpeg -i input.mp4 -c:v libx264 -crf 40 crf40.mp4

文件大小:1.6 MB
比特率:17.2 Kbps
示例帧:
在此处输入图片描述

ffmpeg -i input.mp4 -c:v libx264 -crf 45 crf45.mp4

文件大小:768.5 kB
比特率:7998 bps
示例帧:
在此处输入图片描述

相关内容