Mot-clé - photos

Fil des billets

jeudi 3 décembre 2015

Traitement en lot d'images, ajouter un texte sur toutes les photos d'un répertoire avec mogrify et convert

Avec les outils inclus dans la suite ImageMagick, il est assez facile de modifier en lot les images d'un répertoire.

Par exemple, pour redimensionner tout un lot d'images (la plus grande dimension à 800 pixels), on pourra faire :

mogrify -resize 800x800 *.jpg

Pour effectuer des rotations de 180° sur plusieurs images, on fera :

mogrify -rotate 180 *.jpg

Plus compliqué, pour ajouter un texte (par exemple le nom du photographe) sur chaque photo, on pourra faire :

for file in *.jpg; do  convert $file -pointsize 20 -draw "gravity SouthEast fill white text 1,11 'Voici mon texte ' " $file; done

Cela transforme alors l'image comme suit : overlaytext.jpg

Exiftool pour manipuler les données EXIF d'une photo

Les photos prises avec les appareils modernes sont le plus souvent étiquetées de nombreuses données EXIF (nom de l'appareil, type d'objectif, ouverture, coordonnées GPS de la prise...). Il est parfois souhaitable de supprimer les données EXIF. Heureusement, exiftool existe sous Linux.

Il s'installe comme tout autre paquet, par exemple sous Debian :

apt install exiftool

Pour supprimer les données EXIF d'une photo, on exécute la commande :

exiftool -all= photo.jpg

et pour traiter toutes les images d'un répertoire :

exiftool -all= *.jpg

Si on ne veut supprimer qu'une seule valeur EXIF, par exemple la valeur d'orientation de la photo, on pourra faire :

exiftool -Orientation="" photo.jpg

ou bien pour la modifier :

exiftool -Orientation=1 photo.jpg

L'outil exiftool permet de faire bien plus que cela : afficher toutes les données EXIF, en réécrire certaines, créer de nouvelles données... l'imagination est presque la seule limite. Le manuel de l'outil vous fournira le détail sur les commandes ainsi qu'un grand nombre d'exemples.