Guión (script) para redimensionamiento masivo de imágenes

Si tenemos en mente producir un video a partir de imágenes, la geometría (formato) más usual de video puede no coincidir (probablemente no lo hará) con aquella con la cual se han tomado las fotos. Por ejemplo, en mi caso tomé las imágenes con calidad de 6 Megapíxeles lo que corresponde en mi cámara a un formato de 2848×2144 píxeles. Si tratamos de redimensionar a un formato de video conocido, como el de 720×480, nos damos cuenta que no existe una proporcionalidad adecuada porque si utilizamos el gimp sólo lograríamos 720×542 si no queremos distorsionar la imagen. Por ello, es necesario prescindir de una parte de ella (la inferior) para alcanzar el requerido 720×480 y que se espera no afecte grandemente la calidad de la misma (éste es mi criterio particular porque pudiese no ser así en algunos casos).

Para pocas fotos, ese trabajo manual con el gimp puede ser llevadero pero cuando se trata de más de 1500 imágenes el procedimiento es verdaderamente tedioso. Por tanto, es necesario automatizarlo a través de un guión de bash. Esto se puede hacer a través del comando convert de la suite ImageMagick. El primer paso requeriría el redimensionamiento a 720×542 que se logra con la opción resize para, posteriormente con la opción crop, lograr el definitivo 720×480. El guión es muy sencillo y tiene la siguiente sintaxis:

#!/bin/bash
echo "Por favor, Espere..."
for i in *.jpg
do
convert -resize 720x542 $i carpeta/$i
convert -crop 720x480 carpeta/$i salida/$i
rm salida/*-1*
done

En carpeta tendremos las imágenes 720×542 y en salida las correspondientes a 720×480. La opción crop en convert produce, para cada foto 720×542, dos imágenes. La primera tiene la geometría 720×480 (la que nos interesa) e incluye en su nombre, antes de la extensión jpg (si es el caso), los caracteres -0. La segunda es de geometría 720×62 e incluye en el nombre los caracteres -1. Como no se requieren estas últimas se remueven en la última parte del guión.
Por otra parte, el script tardó alrededor de 30 minutos (en una Core 2 duo) en producir 1142 imágenes de 720×480 a partir de los originales de 2848×2144 píxeles. Imagínense el tiempo a gastar si se hubiese empleado el gimp para el redimensionamiento manual individual que fue lo que me tocó hacer antes de decidirme a crear el guión.

About these ads
Esta entrada fue publicada en Linux. Guarda el enlace permanente.

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s