/ / Comment redimensionner, convertir et modifier rapidement des images à partir du terminal Linux

Comment redimensionner, convertir et modifier rapidement des images à partir du terminal Linux

en-tête imagemagick

ImageMagick est une suite d'utilitaires de ligne de commandepour modifier et travailler avec des images. ImageMagick peut rapidement effectuer des opérations sur une image à partir d'un terminal, effectuer le traitement par lots de nombreuses images ou être intégré à un script bash.

ImageMagick peut effectuer une grande variété deopérations. Ce guide vous présentera la syntaxe et les opérations de base d’ImageMagick et vous montrera comment combiner des opérations et effectuer le traitement par lots de nombreuses images.

Installation

ImageMagick n’est pas inclus dans les installations par défaut d’Ubuntu et de nombreuses autres distributions Linux. Pour l'installer sur Ubuntu, utilisez la commande suivante:

sudo apt-get install imagemagick

Conversion entre formats

La commande convert prend une image, effectueactions dessus et enregistre l’image avec le nom de fichier que vous spécifiez. Une des choses les plus élémentaires que vous puissiez faire est de convertir des images entre différents formats. La commande suivante prend un fichier PNG nommé «howtogeek.png» dans le répertoire actuel et en crée une image JPEG:

convert howtogeek.png howtogeek.jpg

convertir les formats

Vous pouvez également spécifier un niveau de compression pour les images JPEG:

convert howtogeek.png -quality 95 howtogeek.jpg

Le nombre doit être compris entre 1 et 100. ImageMagick utilise le niveau de qualité de l'image d'entrée, si possible. Sinon, ImageMagick utilise par défaut la valeur 92.

Redimensionnement des images

La commande convert peut également redimensionner rapidement une image. La commande suivante demande à ImageMagick de redimensionner une image de 200 pixels en largeur et de 100 pixels en hauteur:

convert example.png -resize 200x100 example.png

Nous avons utilisé le même nom de fichier ici, donc ImageMagick écrasera le fichier original.

redimensionner

ImageMagick va essayer de préserver les proportionssi vous utilisez cette commande. Cela modifiera l'image pour l'adapter à une zone 200 × 100, mais l'image ne sera peut-être pas exactement 200 × 100. Si vous souhaitez forcer l'image à devenir une taille spécifique, même si elle gâche les proportions, ajoutez un point d'exclamation aux dimensions:

convert example.png -resize 200x100! example.png

Vous pouvez également spécifier une largeur ou une hauteur spécifiqueImageMagick redimensionnera l’image à cette largeur ou hauteur tout en préservant les proportions. La commande suivante redimensionnera une image à une largeur de 200:

convert example.png -resize 200 example.png

La commande suivante redimensionnera une image à une hauteur de 100:

convert example.png -resize x100 example.png

Faire pivoter une image

ImageMagick peut rapidement faire pivoter une image. La commande suivante prend une image appelée howtogeek.jpg, la fait pivoter de 90 degrés et enregistre l'image pivotée sous le nom howtogeek-rotated.jpg:

convert howtogeek.jpg -rotate 90 howtogeek-rotated.jpg

Si vous spécifiez le même nom de fichier, ImageMagick enregistrera l'image pivotée sur le fichier image d'origine.

tourner

Appliquer des effets

ImageMagick peut appliquer divers effets à une image. Par exemple, la commande suivante applique l’effet «charbon de bois» à une image:

convert howtogeek.jpg -charcoal 2 howtogeek-charcoal.jpg

charbon

La commande charcoal applique un effet artistique de style «fusain» à une image - le 2 dans la commande vous permet de contrôler la force de l'effet.

howtogeek-charbon

La commande suivante applique l’effet «Implode» avec une force de 1:

convert howtogeek.jpg -implode 1 howtogeek-imploded.jpg

imploser

L’effet implosé fait apparaître un trou noir au centre de l’image.

howtogeek-implosé

Combinaison d'opérations

Toutes ces opérations peuvent être combinées. Avec une seule commande, vous pouvez redimensionner une image, la faire pivoter, appliquer un effet et la convertir en un autre format:

convert howtogeek.png -resize 400x400 -rotate 180 -charcoal 4 -quality 95 howtogeek.jpg

howtogeek-complex

Ce n'est que le début de ce que vous pouvez faire avec ImageMagick. Il y a beaucoup plus d'opérations que vous pouvez combiner.

Le traitement par lots

Vous pouvez profiter de Bash pour faire rapidementtraitement par lots de nombreuses images. Par exemple, la commande suivante prend tous les fichiers PNG du répertoire en cours, les fait pivoter et enregistre une nouvelle copie de chacun d'eux en ajoutant “rotation” au début de chaque nom de fichier.

for file in *.png; do convert $file -rotate 90 rotated-$file; done

le traitement par lots

Vous pouvez facilement modifier cette commande pour effectuer d'autres actions. Vous pouvez également intégrer des commandes de traitement par lots dans un script shell Bash afin d'automatiser les opérations de traitement d'images.


Tout article sur ImageMagick omettra beaucoup dece que vous pouvez en faire - il y a tout simplement trop d'options et de commandes. Si vous souhaitez en faire plus avec ImageMagick, consultez la documentation officielle sur le site Web ImageMagick pour un aperçu beaucoup plus approfondi de ImageMagick.