Imagemagick -quality 85 não funciona

3

Eu corro mogrify para compactar uma imagem JPEG com qualidade de 85%:

$ ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 440K May 24 12:10 Screenshot.jpg
$ mogrify -compress JPEG Screenshot.jpg -quality 85
$ ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 441K May 24 12:10 Screenshot.jpg

O tamanho não diminui. No entanto, se eu abrir a imagem no Gimp e economizar 85% de qualidade, o tamanho diminuirá:

ls -lah Screenshot.jpg
-rw-rw-r--.  1 USER GROUP 135K May 24 12:11 Screenshot.jpg

Por que o ImageMagick não compacta a imagem JPEG em 85%? Estou usando o ImageMagick-6.6.4.1-15.fc14.i686 no Fedora.

    
por LanceBaynes 24.05.2011 / 12:12

2 respostas

5

Parece que a ordem relativa de argumentos modificadores (NN de qualidade) e nomes de arquivos é importante aqui, quase como se estivesse fazendo o que é dito de uma maneira muito simplista.

: cez@rhk; !ls
ls -lh Screenshot.jpg 
-rw-r--r--  1 cez  staff   1.3M  5 24 19:20 Screenshot.jpg
: cez@rhk; mogrify -verbose -monitor -compress JPEG Screenshot.jpg -quality 10
load image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.335MB 0.120u 0:05.680
save image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.327MB 0.240u 0:02.960
: cez@rhk; 

Então, a primeira vez que rodamos mogrify, nós especificamos o argumento -quality após o nome do arquivo, e assim ele não sabe que o especificador de qualidade deve se aplicar àquela imagem.

: cez@rhk;mogrify -verbose -monitor -compress JPEG -quality 85 Screenshot.jpg 
load image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 1.341MB 0.100u 0:00.119
save image[Screenshot.jpg]: 1079 of 1080, 100% complete
Screenshot.jpg JPEG 1920x1080 1920x1080+0+0 8-bit DirectClass 459KB 0.190u 0:00.200
: cez@rhk; 

Por outro lado, se especificarmos a configuração de qualidade antes do nome do arquivo de imagem, ele salvará a imagem com mais compactação, reduzindo o tamanho do arquivo.

    
por 24.05.2011 / 12:38
0

Não é exatamente o mesmo problema, mas fiquei preso nisso por muito tempo. Acontece que o tamanho não estava diminuindo porque todo o tamanho do arquivo estava nos metadados e a adição de -strip ao comando diminuiu o tamanho.

    
por 23.11.2018 / 03:55