¿Como optimizar y comprimir imágenes JPG y PNG desde la Terminal?

Existen algunas herramientas para poder optimizar y comprimir imágenes, seguramente a la hora de realizar esto buscamos algún software específico con interfaz gráfica o alguna web que se encargue de hacer el retoque. Sucede que hay una manera sencilla y fácil de realizar estos procedimientos, directamente desde nuestra amada consola, casi sin gasto de recursos y sin subir imágenes a páginas o cuestiones raras.

Hoy les traigo 2 aplicativos para optimización y compresión de imágenes JPEG y PNG
1) OptiPNG nos permitirá reducir imágenes PNG sin perder calidad de las mismas.
2) JpegOptim otra útil herramienta para optimizar la calidad y comprimir JPEG’s sin perder calidad de las imágenes.

1) Empezamos por OptiPNG:
SU INSTALACIÓN:
a) Debian, ubuntu y derivados:

# apt-get install optipng

b) Red Hat, CentOS y derivados:

# yum install optipng (debemos tener el repo EPEL instalado)

c) Fedora:

# dnf install optipng

¿CÓMO SE USA?:
Utilizaremos una imagen cualquiera (soyadmin.png)
a) Para empezar veremos el tamaño de soyadmin.png

# ls -lh soyadmin.png
-rw-r--r-- 1 soyadmin soyadmin 113k Feb  5 09:05 soyadmin.png
*Vemos que la imagen pesa 113kb

b) Vamos ahora a comprimirla y luego ver nuevamente el espacio

# optipng soyadmin.png
OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.

** Processing: soyadmin.png
1006x1006 pixels, 4x8 bits/pixel, RGB+alpha
Input IDAT size = 115074 bytes
Input file size = 115320 bytes

Trying:
zc = 9  zm = 8  zs = 0  f = 0        IDAT size = 95250

Selecting parameters:
zc = 9  zm = 8  zs = 0  f = 0        IDAT size = 95250

Output IDAT size = 95250 bytes (19824 bytes decrease)
Output file size = 95460 bytes (19860 bytes = 17.22% decrease)

c) Chequeamos nuevamente el peso de la imagen para ver que ha sido optimizada correctamente

# ls -lh soyadmin.png
-rw-r--r-- 1 soyadmin soyadmin 94k Feb  5 09:05 soyadmin.png
*Vemos que la imagen ha sido reducida un 17.22% y ahora pesa 94kb

d) Vamos a optimizar varias imágenes en .png

# optipng *.png
OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.

** Processing: 1.png
2500x2248 pixels, 4x8 bits/pixel, RGB+alpha
Input IDAT size = 4375573 bytes
Input file size = 4384725 bytes

Trying:
zc = 9  zm = 8  zs = 1  f = 5        IDAT size = 4375573
zc = 9  zm = 8  zs = 3  f = 5        IDAT size = 4349273

Selecting parameters:
zc = 9  zm = 8  zs = 3  f = 5        IDAT size = 4349273

Output IDAT size = 4349273 bytes (26300 bytes decrease)
Output file size = 4352017 bytes (32708 bytes = 0.75% decrease)

** Processing: 3.png
993x805 pixels, 4x8 bits/pixel, RGB+alpha
Input IDAT size = 262492 bytes
Input file size = 262847 bytes

Trying:
zc = 9  zm = 8  zs = 1  f = 5        IDAT size = 261288

Selecting parameters:
zc = 9  zm = 8  zs = 1  f = 5        IDAT size = 261288

Output IDAT size = 261288 bytes (1204 bytes decrease)
Output file size = 261547 bytes (1300 bytes = 0.49% decrease)

e) Para más usos y posibles características podemos verificar su manual

# man optipng

2) Ahora utilizaremos jpegoptim
SU INSTALACIÓN:
a) Debian, Ubuntu y derivados:

# apt-get install jpegoptim

b) Red Hat, CentOS y derivados:

# yum install jpegoptim (debemos tener el repo EPEL instalado)

c) Fedora y derivados:

# dnf install jpegoptim

¿CÓMO SE USA?:
Utilizaremos una imagen cualquiera (soyadmin.jpg)
a) Para empezar veremos el tamaño de soyadmin.jpg

# ls -lh soyadmin.jpg
-rw-r--r-- 1 root root 141K Feb  5 10:02 soyadmin.jpg
*Vemos que la imagen pesa 141kb

b) La comprimimos y optimizamos

# jpegoptim soyadmin.jpg
soyadmin.jpg 1280x1024 8bit N JFIF  [WARNING] 143690 --> 55934 bytes (61.07%), optimized.

c) Volvemos a ver el tamaño de la imágen y vemos que fue reducida en un 61.07%

# ls -lh soyadmin.jpg
-rw-r--r-- 1 root root 55K Feb  5 10:04 soyadmin.jpg
*Ahora pesa 55Kb

d) Una interesante opción de esta herramienta que podemos elegir el tamaño aproximado al que queremos reducir la imágen, por ejemplo bajaremos soyadmin.jpg de 141kb a 100kb

# jpegoptim --size=100k soyadmin.jpg
soyadmin.jpg 1280x1024 8bit N JFIF  [WARNING] 143690 --> 105310 bytes (26.71%), optimized.

e) Vemos que ahora que su tamaño ronda los 100k

# ls -lh soyadmin.jpg
-rw-r--r-- 1 root root 103K Feb  5 10:22 soyadmin.jpg

f) Para más opciones y utilidades podemos ver el manual del aplicativo

# man jpegoptim

1 respuesta

  1. abril 10, 2021

    […] unos días enseñábamos a optimizar y comprimir imágenes desde la terminal. La idea es ahora poder previsualizar cualquier imagen .jpg .png, con esta utilidad llamada […]

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.