Es habitual descargar imágenes que nos encontramos en internet para incluirlas en nuestros artículos o documentos. Muchas de estas imágenes están en formato JPG, el cual nos permite establecer un nivel de calidad entre 0 y 100 o nivel de compresión. El objetivo de este tutorial es cómo averiguar la calidad de una imagen JPG y así determinar su nivel de compresión.
Cuando os hablamos del mejor programa para optimizar imágenes, dedicamos un apartado a hablar sobre las imágenes en formato JPG, el cual recomiendo leer. Lo que debemos tener claro, es que el formato JPG es un formato con pérdidas y cada vez que guardamos una imagen en este formato estamos perdiendo calidad.
Cómo obtener la calidad de una imagen JPG o su nivel de compresión.
Como ya dijimos al principio, cuando guardamos una imagen en formato JPG podemos establecer la calidad con un número entre 0 y 100. En algunos programas se hace referencia a este parámetro como nivel de compresión, pero lo habitual es designarlo como calidad.
Cuando descargamos una imagen en formato JPG, no hay una forma directa para averiguar su calidad o su nivel de compresión. El formato no guarda esta información, aunque es cierto que algunos programan añaden esta información en los metadatos de la imagen, no es lo habitual.
A pesar de todo esto, existe un método para averiguar el parámetro de calidad de un JPG, para lo que emplearemos el software gratuito y multiplataforma ImageMagick. Dentro del paquete de ImageMagick encontraremos el programa identify
, que nos permite obtener información detallada de una imagen.
Para averiguar la calidad de un JPG ejecutamos el siguiente comando desde la línea de comandos:
identify -format '%Q' laimagen.jpg
Vemos que nos mostrará el número de calidad en pantalla, representado por su valor.
Consideraciones a la hora de interpretar la calidad de una imagen JPG.
Debemos tener claro que la calidad global de un archivo JPG no depende únicamente del parámetro de calidad establecido, sino que intervienen otros parámetros como el chroma subsampling, quantization tables, etc. Con esto, lo que quiero haceros ver, es que la calidad de una misma imagen JPG puede variar si la guardamos con diferentes programas, aunque empleemos el mismo parámetro de calidad.
Para demostrarlo podéis ver la siguiente imagen, que en ambos casos ha sido guardada con un parámetro de calidad 60, pero la primera imagen ha sido guardada con GIMP y la segunda con Photoshop.
Si nos fijamos, podemos observar que la imagen guardada con Photoshop ofrece mayor calidad global que la guardada con GIMP. También tenemos que considerar que la imagen guardada con Photoshop tiene un tamaño de 15,5KB mientras que la guardada con GIMP 9,91KB. Pero esta diferencia de tamaño tiene una explicación y es que la calidad elegida en Photoshop de 60, en realidad se corresponde con un parámetro de calidad 86.
A continuación os dejo los datos completos de las dos imágenes comparadas:
C:\ImageMagick-7.0.5-0-portable>identify -verbose test_gimp.jpg
Image: test_gimp.jpg
Format: JPEG (Joint Photographic Experts Group JFIF format)
Mime type: image/jpeg
Class: DirectClass
Geometry: 480x220+0+0
Resolution: 72x72
Print size: 6.66667x3.05556
Units: PixelsPerInch
Type: TrueColor
Endianess: Undefined
Colorspace: sRGB
Depth: 8-bit
Channel depth:
Red: 8-bit
Green: 8-bit
Blue: 8-bit
Channel statistics:
Pixels: 105600
Red:
min: 0 (0)
max: 255 (1)
mean: 192.338 (0.754266)
standard deviation: 40.7007 (0.159611)
kurtosis: -0.59641
skewness: 0.193754
entropy: 0.508844
Green:
min: 45 (0.176471)
max: 255 (1)
mean: 157.433 (0.617385)
standard deviation: 48.0412 (0.188397)
kurtosis: -0.460929
skewness: 0.541649
entropy: 0.547715
Blue:
min: 18 (0.0705882)
max: 255 (1)
mean: 177.084 (0.694446)
standard deviation: 46.2831 (0.181502)
kurtosis: 0.581174
skewness: -1.11279
entropy: 0.557997
Image statistics:
Overall:
min: 0 (0)
max: 255 (1)
mean: 175.618 (0.688699)
standard deviation: 47.325 (0.185588)
kurtosis: -0.342889
skewness: -0.226262
entropy: 0.538186
Rendering intent: Perceptual
Gamma: 0.454545
Chromaticity:
red primary: (0.64,0.33)
green primary: (0.3,0.6)
blue primary: (0.15,0.06)
white point: (0.3127,0.329)
Matte color: grey74
Background color: white
Border color: srgb(223,223,223)
Transparent color: none
Interlace: JPEG
Intensity: Undefined
Compose: Over
Page geometry: 480x220+0+0
Dispose: Undefined
Iterations: 0
Compression: JPEG
Quality: 60
Orientation: Undefined
Properties:
date:create: 2017-03-02T16:27:01+01:00
date:modify: 2017-03-02T16:27:01+01:00
jpeg:colorspace: 2
jpeg:sampling-factor: 1x1,1x1,1x1
signature: a0ecd9fc0fe16532fd6a71e4055d410a86ff90e555dcc8dbb213c9ab7364a633
Artifacts:
verbose: true
Tainted: False
Filesize: 9.91KB
Number pixels: 106K
Pixels per second: 17.6MB
User time: 0.016u
Elapsed time: 0:01.006
Version: ImageMagick 7.0.5-0 Q16 x64 2017-02-20 http://www.imagemagick.org
C:\ImageMagick-7.0.5-0-portable>identify -verbose test_photoshop.jpg
Image: test_photoshop.jpg
Format: JPEG (Joint Photographic Experts Group JFIF format)
Mime type: image/jpeg
Class: DirectClass
Geometry: 480x220+0+0
Units: Undefined
Type: TrueColor
Endianess: Undefined
Colorspace: sRGB
Depth: 8-bit
Channel depth:
Red: 8-bit
Green: 8-bit
Blue: 8-bit
Channel statistics:
Pixels: 105600
Red:
min: 0 (0)
max: 255 (1)
mean: 192.711 (0.755728)
standard deviation: 40.5036 (0.158838)
kurtosis: -0.461151
skewness: 0.153411
entropy: 0.522216
Green:
min: 41 (0.160784)
max: 255 (1)
mean: 157.996 (0.619592)
standard deviation: 48.1356 (0.188767)
kurtosis: -0.460604
skewness: 0.523291
entropy: 0.545854
Blue:
min: 29 (0.113725)
max: 255 (1)
mean: 177.555 (0.696293)
standard deviation: 46.9984 (0.184308)
kurtosis: 0.520238
skewness: -1.11799
entropy: 0.556904
Image statistics:
Overall:
min: 0 (0)
max: 255 (1)
mean: 176.087 (0.690538)
standard deviation: 47.512 (0.186322)
kurtosis: -0.324822
skewness: -0.258086
entropy: 0.541658
Rendering intent: Perceptual
Gamma: 0.454545
Chromaticity:
red primary: (0.64,0.33)
green primary: (0.3,0.6)
blue primary: (0.15,0.06)
white point: (0.3127,0.329)
Matte color: grey74
Background color: white
Border color: srgb(223,223,223)
Transparent color: none
Interlace: None
Intensity: Undefined
Compose: Over
Page geometry: 480x220+0+0
Dispose: Undefined
Iterations: 0
Compression: JPEG
Quality: 86
Orientation: Undefined
Properties:
date:create: 2017-03-02T16:28:10+01:00
date:modify: 2017-03-02T16:28:11+01:00
jpeg:colorspace: 2
jpeg:sampling-factor: 1x1,1x1,1x1
signature: 7e7c7e918d7d2f7e8fd340f7c775f1ff72ac43b6c7870446a1c41311209b80b0
Profiles:
Profile-app12: 15 bytes
Profile-exif: 22 bytes
Profile-xmp: 766 bytes
Artifacts:
verbose: true
Tainted: False
Filesize: 15.5KB
Number pixels: 106K
Pixels per second: 26.4MB
User time: 0.000u
Elapsed time: 0:01.003
Version: ImageMagick 7.0.5-0 Q16 x64 2017-02-20 http://www.imagemagick.org
Para terminar, también quiero aclarar que si una imagen JPG que ha sido guardada con el parámetro de calidad con un valor de 80, si volvemos a guardarla con un parámetro de calidad 90, no mejorará la calidad. Esto se debe a que el formato JPG es un formato con pérdidas.
Por el motivo anterior es tan importante conocer la calidad de una imagen JPG que descargamos de internet, para así no guardarla con mayor calidad de la necesaria y no desperdiciar espacio.
La entrada Cómo obtener la calidad de una imagen JPG o su nivel de compresión aparece primero en Vozidea.com.