Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
imagemagick [Le 23/06/2023, 21:07] zococo [ImageMagick] |
imagemagick [Le 08/01/2025, 17:52] (Version actuelle) bcag2 ancienne révision (Le 26/08/2024, 21:31) restaurée |
||
---|---|---|---|
Ligne 68: | Ligne 68: | ||
</note> | </note> | ||
- | * améliorer le contraste : selon la luminosité lors de la prise d'image, celle-ci peut ne pas utiliser tous les niveaux disponibles, que ce soit dans les tons clairs comme dans les tons sombres, pour améliorer à minima cela, lancez : <code bash>convert image-source-peu-contrasté.jpg -auto-level image-dest-mieux-contrasté.jpg</code> | + | * améliorer le contraste (//expansion d'histogramme//): selon la luminosité lors de la prise d'image, celle-ci peut ne pas utiliser tous les niveaux disponibles, que ce soit dans les tons clairs comme dans les tons sombres, pour améliorer à minima cela, lancez : <code bash>convert image-source-peu-contrasté.jpg -auto-level image-dest-mieux-contrasté.jpg</code> |
* ajouter un //copyright// (« © Ubuntu » par ex.) ou autre //watermark// sur les photos : des scripts ont déjà été faits, facilitant l'utilisation des lignes de commandes, en particulier pour l'ajout d'un //copyright// image transparente : voir dans [[https://forum.ubuntu-fr.org/viewtopic.php?id=301750|ce post de forum]] avec [[http://forum.ubuntu-fr.org/viewtopic.php?pid=1878153#p1878153|ce script]] de [[http://forum.ubuntu-fr.org/profile.php?id=50612|Fake]] ; | * ajouter un //copyright// (« © Ubuntu » par ex.) ou autre //watermark// sur les photos : des scripts ont déjà été faits, facilitant l'utilisation des lignes de commandes, en particulier pour l'ajout d'un //copyright// image transparente : voir dans [[https://forum.ubuntu-fr.org/viewtopic.php?id=301750|ce post de forum]] avec [[http://forum.ubuntu-fr.org/viewtopic.php?pid=1878153#p1878153|ce script]] de [[http://forum.ubuntu-fr.org/profile.php?id=50612|Fake]] ; | ||
* découper une image comme avec un emporte-pièce. Les paramètres largeur et hauteur servent à fixer la largeur et la hauteur de l'image finale (dans la limite des dimensions de l'image originale), les paramètres //x// et //y// servent à localiser le coin supérieur gauche de l'image finale par rapport au coin supérieur gauche de l'image initiale. Pour découper une image de 50 px de largeur et de 100 px de hauteur, située à 10 px du bord gauche et à 20 px du bord supérieur de « initial.png » : <code bash>convert -crop 50x100+10+20 initial.png final.jpg</code> | * découper une image comme avec un emporte-pièce. Les paramètres largeur et hauteur servent à fixer la largeur et la hauteur de l'image finale (dans la limite des dimensions de l'image originale), les paramètres //x// et //y// servent à localiser le coin supérieur gauche de l'image finale par rapport au coin supérieur gauche de l'image initiale. Pour découper une image de 50 px de largeur et de 100 px de hauteur, située à 10 px du bord gauche et à 20 px du bord supérieur de « initial.png » : <code bash>convert -crop 50x100+10+20 initial.png final.jpg</code> | ||
* découper une image de dimensions 55 × 110 en 18 morceaux, 10 morceaux de 20 × 20, 2 morceaux de 20 × 10, 5 morceaux de 15 × 20 et 1 morceau de 15 × 10. En effet, si //x// et //y// sont omis, l'image est intégralement découpée en morceaux de dimensions hauteur×largeur, la découpe se faisant de gauche à droite et de haut en bas, à partir du coin supérieur gauche (il est possible de remplacer hauteur×largeur et //x// et //y// par un % de la largeur. //x// et //y// peuvent être négatifs, dans ce cas le point de départ de la découpe se fera en dehors de l'image d'origine, seule la partie correspondant à des pixels de l'image d'origine étant restituée). Les parties les plus à droite et les plus en bas peuvent être de dimensions inférieures à la taille de la découpe pour s'adapter à la dimension de l'image initiale : <code bash>convert -crop 20x20 initial.jpg final.jpg </code> | * découper une image de dimensions 55 × 110 en 18 morceaux, 10 morceaux de 20 × 20, 2 morceaux de 20 × 10, 5 morceaux de 15 × 20 et 1 morceau de 15 × 10. En effet, si //x// et //y// sont omis, l'image est intégralement découpée en morceaux de dimensions hauteur×largeur, la découpe se faisant de gauche à droite et de haut en bas, à partir du coin supérieur gauche (il est possible de remplacer hauteur×largeur et //x// et //y// par un % de la largeur. //x// et //y// peuvent être négatifs, dans ce cas le point de départ de la découpe se fera en dehors de l'image d'origine, seule la partie correspondant à des pixels de l'image d'origine étant restituée). Les parties les plus à droite et les plus en bas peuvent être de dimensions inférieures à la taille de la découpe pour s'adapter à la dimension de l'image initiale : <code bash>convert -crop 20x20 initial.jpg final.jpg </code> | ||
+ | * convertir une image couleur en niveau de gris : <code bash>convert -colorspace Gray initial.jpg final.jpg</code> | ||
* transformer un dossier d'images : <code bash>convert *.BMP -set filename:f '%t.png' +adjoin '%[filename:f]'</code> | * transformer un dossier d'images : <code bash>convert *.BMP -set filename:f '%t.png' +adjoin '%[filename:f]'</code> | ||
* créer une image unie (par exemple pour y superposer des images de dimensions différentes) : <code bash>convert -size 2450x4780 xc:blue image.png</code> | * créer une image unie (par exemple pour y superposer des images de dimensions différentes) : <code bash>convert -size 2450x4780 xc:blue image.png</code> | ||
+ | * créer une image transparente (par exemple pour y coller d'autres éléments) : <code bash>convert -size 840x600 -colorspace RGB xc:none image-transp.png</code> | ||
+ | <note tip>Fixer l'espace de couleur par -colorspace peut se révéler utile pour ultérieurement coller cette image transparente dans des images au profil de couleur différent, à défaut l'espace de couleur est en niveaux de gris qui peut être incompatible avec des images colorées.</note> | ||
==== Mogrify ==== | ==== Mogrify ==== | ||
Ligne 413: | Ligne 416: | ||
Donc **[[apt>librsvg2-bin]]** pour le support des images svg. | Donc **[[apt>librsvg2-bin]]** pour le support des images svg. | ||
- | ==== J'obtiens une erreur de cache ==== | + | ==== J'obtiens une erreur de cache, width or height ==== |
Erreur du type: | Erreur du type: | ||
<code>convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244</code> | <code>convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244</code> | ||
Ligne 429: | Ligne 432: | ||
sudo sed -i 's/name="memory" value="256MiB"/name="memory" value="512MiB"/' /etc/ImageMagick-6/policy.xml | sudo sed -i 's/name="memory" value="256MiB"/name="memory" value="512MiB"/' /etc/ImageMagick-6/policy.xml | ||
sudo sed -i 's/name="disk" value="1GiB"/name="disk" value="2GiB"/' /etc/ImageMagick-6/policy.xml | sudo sed -i 's/name="disk" value="1GiB"/name="disk" value="2GiB"/' /etc/ImageMagick-6/policy.xml | ||
+ | </code> | ||
+ | |||
+ | Pour une erreur //width or height// (j'avais une image de 7803x19208) ((https://askubuntu.com/a/1484930/385361)): | ||
+ | <file - /etc/ImageMagick-6/policy.xml> | ||
+ | <policy domain="resource" name="width" value="24KP"/> <!-- default 16KP --> | ||
+ | <policy domain="resource" name="height" value="24KP"/> <!-- default 16KP --> | ||
+ | </file> | ||
+ | j'ai eu ensuite l'erreur cache et j'ai dû monter "disk" à 3GiB (cf. ci-dessus) | ||
+ | |||
+ | ==== Quelle est ma version d'imagemagick ? ==== | ||
+ | Pour connaître sa version d'Imagemagick, saisir en console : | ||
+ | <code> | ||
+ | $ identify -version | ||
+ | </code> | ||
+ | ou (pour imagemagick 7) : | ||
+ | <code> | ||
+ | $ magick identify -version | ||
</code> | </code> | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
- | * [[http://www.imagemagick.org/script/command-line-tools.php|Site officiel]] **(en)** | + | * [[https://legacy.imagemagick.org/|Site officiel imagemagick LEGACY]] **(en)** |
+ | * [[https://www.imagemagick.org/script/command-line-tools.php|Site officiel]] **(en)** | ||
+ | * [[https://legacy.imagemagick.org/Usage|De nombreux exemples LEGACY]] **(en)** | ||
* [[http://www.imagemagick.org/Usage|De nombreux exemples]] **(en)** | * [[http://www.imagemagick.org/Usage|De nombreux exemples]] **(en)** | ||
* [[http://www.fmwconcepts.com/imagemagick/multicrop2/index.php|Pour aller plus loin : de nombreux scripts pour Imagemagick]] **(en)** | * [[http://www.fmwconcepts.com/imagemagick/multicrop2/index.php|Pour aller plus loin : de nombreux scripts pour Imagemagick]] **(en)** |