毎秒多くの TIFF 画像を JPEG に変換する必要があります。現在、libmagick++ (Q16) を使用しています。ImageMagick Q8をコンパイルする過程にあり、パフォーマンスが向上する可能性があることを読みました (特に、8 ビット イメージのみを扱っているため)。
CImgも良いオプションのように見え、GraphicsMagickは ImageMagic よりも高速であると主張しています。どちらもまだテストしていませんが、ImageMagick Q8 を使用するよりも高速な代替手段があるかどうか疑問に思っていましたか?
Linux のみのソリューションを探しています。
UPDATE width 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