Как сжать изображения jpg в Linux

9

Я знаю, что для этого есть «jpegoptim». Но это не всегда уменьшает размер изображения, как ожидалось. Например, если я выполню

jpegoptim --max=50 *.jpg

на изображении размером 550 КБ размер не будет уменьшаться. Поэтому мне интересно, есть ли более эффективные инструменты для этого.

Спасибо

hnns
источник

Ответы:

14

Вы можете попробовать mogrify:

http://www.imagemagick.org/www/mogrify.html

Также см. Конкретные примеры для сжатия изображений:

/ubuntu/25356/decrease-filesize-when-resizing-with-mogrify

mogrify - качество 80 - размер 80 file.jpg

так что вы должны получить что-то вроде

mogrify -quality 80 file.jpg

Тест с моей машины:

aaron@sandbox:~/img-test$ du -h splash.jpg 
188K    splash.jpg
aaron@sandbox:~/img-test$ mogrify -quality 10 splash.jpg
aaron@sandbox:~/img-test$ du -h splash.jpg 
16K splash.jpg

На 10% это выглядит ужасно, но вы поняли.

Вы также можете использовать PIL Python:

/programming/4353019/in-pythons-pil-how-do-i-change-the-quality-of-an-image

из PIL import Image

im = Image.open ("C: \ Users \ Public \ Pictures \ Sample Pictures \ Jellyfish.jpg") im.save ("C: \ Users \ Public \ Pictures \ Sample Pictures \ Jellyfish_compressed.jpg", качество = 10)

Аарон Ньютон
источник