5.0 KiB
Outils, bonnes pratiques et cas d’usage concrets
Sous Linux, la manipulation d’images ne passe pas nécessairement par une interface graphique. L’écosystème propose depuis longtemps des outils puissants, stables et scriptables permettant de convertir, redimensionner, compresser ou transformer des images en masse, avec un contrôle fin sur la qualité et les métadonnées.
Cet article présente les principaux outils disponibles, leurs forces, leurs limites, et des exemples concrets d’utilisation.
Pourquoi utiliser la ligne de commande pour les images ?
Utiliser la ligne de commande présente plusieurs avantages majeurs :
- Automatisation : intégration dans des scripts, cron, pipelines CI/CD.
- Traitement par lot : milliers d’images en une seule commande.
- Reproductibilité : mêmes paramètres, mêmes résultats.
- Performance : consommation mémoire réduite, rapidité accrue.
- Indépendance graphique : fonctionne sur serveurs sans interface X.
1. ImageMagick – le couteau suisse
Présentation
ImageMagick est probablement l’outil le plus connu et le plus complet. Il prend en charge quasiment tous les formats d’image existants et offre une infinité d’options.
Installation
sudo apt install imagemagick
Commandes de base
Convertir un format :
magick image.jpg image.png
Redimensionner :
magick image.jpg -resize 1024x768 image_redim.jpg
Conserver le ratio et limiter la taille maximale :
magick image.jpg -resize 1920x1920\> image.jpg
Compression pour le web :
magick image.jpg -strip -quality 82 image_web.jpg
Traitement par lot :
mogrify -resize 1600x1600\> -quality 85 *.jpg
⚠️ mogrify modifie les fichiers en place. À utiliser avec prudence.
2. GraphicsMagick – plus léger, plus rapide
GraphicsMagick est un fork d’ImageMagick, souvent plus stable et plus rapide pour des traitements intensifs.
Installation
sudo apt install graphicsmagick
Exemple
gm convert photo.png photo.jpg
Avantages :
- Moins gourmand en mémoire
- Idéal pour serveurs et scripts automatisés
Inconvénient :
- Moins de fonctionnalités avancées qu’ImageMagick
3. FFmpeg – pas que pour la vidéo
FFmpeg gère très bien les images, notamment pour les conversions simples ou les pipelines vidéo → image.
Installation
sudo apt install ffmpeg
Exemples
ffmpeg -i image.png image.jpg
Redimensionnement :
ffmpeg -i input.jpg -vf scale=1280:-1 output.jpg
Extraction d’images depuis une vidéo :
ffmpeg -i video.mp4 frame_%04d.jpg
4. libvips – rapide et économe
vips est conçu pour être extrêmement performant, notamment sur de grandes images (photos RAW, scans, archives).
Installation
sudo apt install libvips-tools
Exemples
vips copy input.png output.jpg
vips resize input.jpg output.jpg 0.5
Avantages :
- Très faible consommation mémoire
- Idéal pour serveurs ou traitements massifs
5. Traitement des métadonnées (EXIF, IPTC)
exiftool
Outil de référence pour lire, modifier ou supprimer les métadonnées.
sudo apt install libimage-exiftool-perl
Afficher les métadonnées :
exiftool image.jpg
Supprimer toutes les métadonnées :
exiftool -all= image.jpg
Copier les métadonnées :
exiftool -TagsFromFile source.jpg destination.jpg
6. Formats RAW (appareils photo)
Pour les fichiers CR2, NEF, ARW, DNG…
dcraw
sudo apt install dcraw
dcraw -c photo.CR2 > photo.ppm
darktable-cli (plus moderne)
darktable-cli input.CR2 output.jpg
7. Cas pratiques utiles
Conversion en masse avec renommage
for f in *.png; do
magick "$f" "${f%.png}.webp"
done
Optimisation web complète
magick input.jpg -resize 1600x1600\> -strip -quality 80 output.jpg
Conversion récursive
find . -name "*.jpg" -exec magick {} -resize 1200x1200\> {} \;
8. Quel outil choisir ?
| Besoin | Outil recommandé |
|---|---|
| Usage général | ImageMagick |
| Serveur / performance | libvips |
| Conversion simple | ffmpeg |
| RAW photo | darktable-cli |
| Métadonnées | exiftool |
Conclusion
Linux offre un écosystème extrêmement riche pour la manipulation d’images en ligne de commande. Que ce soit pour un usage ponctuel, un traitement de masse, un pipeline automatisé ou une intégration serveur, il existe toujours un outil adapté.
Pour un usage général : ImageMagick Pour la performance : libvips Pour la photo : darktable-cli