2017-05-15 15 views
0

画像のファイルサイズを小さくすることで、画像ファイルのサイズを小さくする操作を見つけようとしています。imageMagickを使用して画像ファイルのサイズを縮小する

この操作はIMAGESIZEが減少する品質係数を削減

convert -fuzz 1% -trim -quality 90 -limit memory 32MiB original.jpg converted.jpg 

動作します。同じことを実現し、MAX_SIZEの制限を追加する方法はありますか?

例えば5Mbのイメージは、あなたが-define jpeg:extent=...を使用する2Mbの

+0

ご不明な点がありましたら、コマンドオーダーを整理してください。ほとんどの場合、それは「入力オプションの出力を変換する」です。あなたは通常V6では間違った順序で逃げることができますが、V7はより厳格です。これにより、V7まで移動したときに混乱を避けることができます。 – Bonzo

+0

@Bonzoありがとう、私はそれを念頭に置いておきます – akash

答えて

2

に小型化する必要があります。

ここでは、ランダムなデータの大きな画像を使用し、妥当な品質で正確に表現するために非常に大きなファイルサイズが必要な例を示します。

convert -size 10000x1000 xc:gray +noise random -define jpeg:extent=2MB out.jpg 

結果

-rw-r--r-- 1 mark staff 1844050 15 May 10:44 out.jpg 

、使用品質をチェック:

identify -format "%Q" out.jpg 
21 

もう一つの例:

convert -size 10000x1000 xc:gray +noise random -define jpeg:extent=400kb out.jpg 

結果

-rw-r--r-- 1 mark staff 377757 15 May 10:44 out.jpg 

、使用品質チェック:

identify -format "%Q" out.jpg 
5 
+0

これは素晴らしいです!ありがとうございます。 – akash

0

品質だけでなく、重要な要因は、クロマサブサンプリングです。デフォルトでは、IMは「半分のクロマ」を使用しますが、「4分割クロマ」を使用できます。詳細については、this questionを参照してください。

は、IMの変換でjpeg:extent optionを確認してください:

またGoogle's Guetzliを使用することができます。私が理解する限り、ファイルのサイズを減らすためにさまざまなJPEGエンコーディングオプションを試し、結果の視覚的許容性をチェックします。

+0

IM 6の正しい構文は、設定と演算子を適用する前にラスターイメージを読み取ります。変換コマンドの直後に入力してください。 – fmw42

関連する問題