我需要每秒将许多 TIFF 图像转换为 JPEG。目前我正在使用 libmagick++ (Q16)。我正在编译ImageMagick Q8,因为我读到它可能会提高性能(特别是因为我只使用 8 位图像)。
CImg看起来也是一个不错的选择,GraphicsMagick声称比 ImageMagic 更快。我还没有测试过其中任何一个,但我想知道是否有任何其他替代方法可以比使用 ImageMagick Q8 更快?
我正在寻找仅适用于 Linux 的解决方案。
更新宽度 GraphicsMagick & ImageMagick Q8
基础比较(见 Mark 的评论):ImageMagick Q16 0.2 秒
我用 Q8 成功编译了 GraphicsMagick,但毕竟它似乎比 ImageMagick 慢了大约 30%(0.3 秒)。
使用 Q8 编译 ImageMagick 后,增益约为 25%(0.15 秒)。好的 :)
更新宽度 VIPS
感谢 Mark 的帖子,我尝试了一下VIPS。使用 Ubuntu Trusty 存储库中的 7.38 版本:
time vips copy input.tiff output.jpg[Q=95]
real 0m0.105s
user 0m0.130s
sys 0m0.038s
非常好 :)
我也尝试了 7.42(来自 ppa:dhor/myway),但它似乎有点慢:
real 0m0.134s
user 0m0.168s
sys 0m0.039s
我将尝试从源代码编译 VIPS,看看我是否能打败那个时间。干得好马克!
更新:使用 VIPS 8.0
从源代码编译,vips-8.0 的性能几乎与 7.38 相同:
real 0m0.100s
user 0m0.137s
sys 0m0.031s
配置命令:
./configure CC=c99 CFLAGS=-O2 --without-magick --without-OpenEXR --without-openslide --without-matio --without-cfitsio --without-libwebp --without-pangoft2 --without-zip --without-png --without-python