Convirtiendo miles de imágenes en Linux

Hace años me dediqué profesionalmente a la fotografía, así que tenía acceso a algunas herramientas de gama alta y profesional, entre ellas tenía un escáner Kodak, que digitalizaba los archivos a un formato .PCD de alta resolución, que si bien era de enorme calidad para la época, el problema  surge al ser de código propietario, así que únicamente se puede ver con software que proporciona Kodak. Ahora he querido recuperar dichas fotos, pero los programas de visión y conversión son bastante costosos y no tengo acceso a las herramientas que poseía anteriormente. Arreglemos esto, convirtamos miles de imágenes gratis y rápidamente desde la terminal de Linux.

Instando

Lo primero es instalar el programa imagemagick, estoy en arch para ello utilizamos:

sudo pacman -S imagemagick

Estoy en Arch, deberás utilizar el gestor de paquetes de tu distribución.

Convirtiendo

Ahora que ya tenemos la herramienta instalada y asumiendo que todos los archivos PCD están en la la misma carpeta procedemos a entrar a la carpeta con el comando 
cd ~/carpeta/imagenes
Para iniciar la conversión procedemos con el siguiente comando
for file in *.pcd; do convert $file[6] -colorspace RGB "'basename $file .pcd'.jpg"; done

Veamos que hace toda esta línea de comandos:

La instrucción for file in *.pcd selecciona todos los archivos en el directorio actual que tienen la extensión ".pcd". La instrucción do ejecuta una llamada a la herramienta de conversión ImageMagick, reemplazando $file con el nombre de cada archivo seleccionado y el ciclo se cierra con la declaración done.

La función basename $file .pcd simplemente devuelve el nombre del archivo actual sin la ruta del directorio y sin la extensión del archivo, lo que nos permite reemplazar ".pcd" con una extensión ".jpg". Esto también le dice a ImageMagick que use JPG como formato de imagen de salida. ImageMagick permite multiples formatos de imagen, consulta la documentación para saber más detalles.

Extra

En los parámetros de ImageMagick, la opción [6] es necesaria para indicarle al programa que seleccione el tamaño más grande de imagen almacenada en el archivo PhotoCD, es decir, hasta 6144 px en su lado más largo y 4096 px en su lado más corto. Los archivos Kodak Photo contienen una imagen en seis tamaños diferentes, y es posible elegir la resolución de salida, a continuación dejo los valores correspondientes:

[1] genera una imagen de 192 por 128 ("Base/16")
[2] genera una imagen de 384 por 256 ("Base/4")
[3] genera una imagen de 768 por 512 ("Base")
[4] genera una imagen de 1536 por 1024 ("4 Base")
[5] genera una imagen de 3072 por 2048 ("16 Base")
[6] genera una imagen de 6144 por 4096 ("64 Base")

Notas 

Omitir la opción [x] toma por defecto el valor de [3].
La opción [6] esta reservada solo para la version Kodak Photo Pro, si detectas aberraciones cromáticas, píxeles perdidos o deformción de la imagen opta por probar [5].

Estado de ánimo: Adivinativo
Escuchando: Escuchando: Luis Eduardo Aute - Mojándolo todo

Lo más leído

Elecciones 2024 en México. La historia se repite dos veces

Instala Gnome mínimo en Debian