La vibrance avec Gimp


Nous voyons apparaitre de plus en plus la notion de vibrance dans les logiciels propriétaires de traitement de photo. Cette option est utilisée pour augmenter la saturation d'une images tout en évitant le phénomène de sur-saturation. Au lieu d'augmenter uniformémant la saturation de tous les pixels, cela augmente un peu plus la saturation des pixel les moins saturés. Gimp ne possède pas une telle fonction, mais il est possible d'avoir le même résultat.
L'image ci-dessus est le résultat final et l'image ci-dessous est l'image d'origine.

Décomposition

Nous allons d'abord décomposer notre image en 3 calques TSV pour Teinte, Saturation, Valeur. Allez dans le menu "Couleur->Composants->Décomposer...". Choisissez le modèle colorimétrique "TSV", laissez la case "Décomposer en calques" cochée et validez.

Cela créer un nouveau document contenant 3 calques, dans le panneau de gestion des calques, sélectionnez le calque appelé "saturation". Copiez le avec un "CTRL-C".

Revenez sur votre document d'origine, dupliquez l'image de base, ajoutez un masque à ce nouveau calque.

Sélectionnez le masque de calque et déposez y le calque de saturation en faisant un "CTRL-V". Inversez les couleurs du masque de calque et réglez l'opacité du calque à 30%.

Nous changeons maintenant le mode de fusion de notre calque en "Saturation". Il ne nous reste plus qu'a saturer généreusement notre calque de saturation.

Faire un diaporama avec Impress!ve

Le logiciel Impress!ve anciennement appelé Keyjnote a été développé pour faire de jolies présentations à partir d'un fichier PDF; il peu aussi se servir d'un répertoire contenant des images. Il est possible de le scripter pour faire une présentation automatique et de définir pour chaque image : la durée, le type de transition, la durée de la transition et une musique. Tout ce dont nous avons besoin pour faire un diaporama. Nous pourrions aussi utiliser des logiciels comme SMILE ou bien dvd-slideshow mais ces logiciels sont avant tout destinés à réaliser des diaporamas vidéos.

Ordonner les photos

Pour faire notre diaporama, nous avons besoin d'ordonner les photos que nous allons utiliser. Pour cela, nous avons 2 solutions :
  1. soit nous utilisons OpenOffice Impress pour créer un PDF et organiser nos slides (avec l'opération fastidieuse d'importation des photos).
  2. soit nous utilisons Gthumb et sa fonction "Catalogue" qui permet d'organiser les photos et qui enregistre leur ordre dans un fichier plat.
C'est cette 2ème solution que nous allons utiliser. Nous créons un nouveau catalogue dans Gthumb et y importons les photos nécessaires à notre diaporama. Un catalogue est juste un fichier plat contenant le nom complet de chaque image, il est enregistré sous $HOME/.gnome/gthumb/catalogue avec une extension gqv. Nous pouvons ordonner les photos du catalogue, en ajouter et en supprimer. Une fois que notre ordre nous convient, nous copions les photos dans un nouveau répertoire et les renommons pour qu'elles soient listée dans notre nouvel ordre car Impress!ve prend les photos dans leur ordre alphabétique. Le script suivant est un exemple de renommage. Il créer un nouveau répertoire "Diaporama dans notre $HOME et copie les photos du catalogue en les renommant dans l'ordre du catalogue. Ce script considère que nos photos sont en jpg :
#!/bin/bash
cnt=100

mkdir $HOME/Diaporama

grep file $HOME/.gnome2/gthumb/collections/Diapo.gqv | sed "s/file:\/\///" | sed "s/\"//g" > diapo.txt

for photo in `cat diapo.txt`
do
    cnt=$((cnt+1))
    cp $photo $HOME/Diaporama/photo$cnt.jpg
done

rm diapo.txt
Nous pouvons aussi redimensionner les photos au format d'affichage de l'écran pour éviter à impress!ve de faire le travail et rendre ainsi le démarrage du diaporama plus rapide.

Création du script du diaporama

Voici un exemple de script avec 2 photos. Pour chacune des photos nous définissons une Durée d'affichage "timeout" en ms, un type de transition "transition", une durée de transition "transtime" en ms de la photo courante avec la photo suivante, cette durée de transition s'ajoute à la durée d'affichage et enfin nous ajoutons une musique "sound" qui commence à jouer sur la première photo (nous avons placé notre musique dans le répertoire du diaporama). Nous pouvons mettre une musique différente pour chaque photo; la musique la plus récente coupe la précédente :
PageProps = {
1: {
    'transition': Crossfade,
    'transtime': 1000,
    'timeout': 3000,
    'sound': "Diapo/musique.flac"
   },
2: {
    'transition': none,
    'transtime': 0,
    'timeout': 2000
   }
}
Les deux types de transition les plus utilisées pour un diaporama sont "none" (pas de transition) et "Crossfade" (fondu enchaîné). Nous pouvons utiliser d'autres transitions mais il ne faut pas en abuser sous peine d'avoir un diaporama difficile à regarder. La commande "impressive -l" permet de connaître toutes les transitions disponibles. A noter que dans l'écriture de notre script, il ne faut surtout pas oublier les virgules entre chaque option et entre chaque blocs de définition.

Lancement du diaporama

Pour lancer notre diaporama nous nous plaçons dans notre $HOME et nous lançons la commande suivante :
impressive -I Diapo.info Diapo
où Diapo.info est notre script et Diapo est le répertoire contenant les photos de notre diaporama.

Petit tour en terre d'ImageMagick

A quoi peu bien servir un logiciel de traitement d'image en ligne de commande ? En plus, son utilisation ne semble pas intuitive au premier abord. Nous allons voir dans ce billet qu'ImageMagick possède des atouts très intéressants :
  • traitement d'images par lot
  • traitement sur 16 bits
  • gestion de calques (si, si, en se débrouillant bien, nous pouvons faire "comme si")

Convert, composite et mogrify

Les trois commandes principales pour travailler avec ImageMagick sont convert, composite et mogrify. La première "convert" permet de faire des modifications sur une image et les enregistrer dans une nouvelle image. Cette commande permet aussi de fusionner 2 images avec différents modes de fusion et d'utiliser une troisième image comme masque. La commande composite ne permet que de fusionner 2 images entre elles. Mogrify permet de modifier une image et d'enregistrer le résultat sur la source.
Il existe aussi la possibilité d'utiliser des scripts MSL (?Magick Scripting Language) qui sont des scripts XML. Ce n'est pas le propos de ce billet, peut-être un prochain.

Filtre passe-haut

Voici une petite fonction bash qui permet produire le résultat d'un filtre passe-haut. Pour rappel, un filtre passe-haut s'obtient :
  • en plaçant le négatif d'une image par dessus elle-même
  • en floutant ce négatif (taille du filtre)
  • en passant l'opacité de ce négatif à 50%
La fonction prend en paramètre :
  • le nom de l'image d'origine
  • le nom de l'image résultat
  • le radius du filtre (sa taille)
HiPassFilter()
{
convert $1 \( $1 -blur 0x$3 -negate \) \( $1 -fill gray50 -colorize 100 \) -compose over -type Grayscale -composite $2
}
Elle est constituée d'une seule commande "convert" que nous allons détailler :
  • le premier paramètre est l'image d'origine
  • $1
  • le second paramètre se trouve en-capsulé entre les premiers \( et \), il s'agit du négatif que nous superposons
  • \( $1 -blur 0x$3 -negate \)
  • le troisième paramètre se trouve en-capsulé entre les seconds \( et \), il s'agit du masque
  • \( $1 -fill gray50 -colorize 100 \)
  • le quatrième paramètre détermine la façon dont les images vont être composées. Ici nous plaçons juste le négatif au-dessus.
  • -compose over
  • le cinquième paramètre converti le résultat en niveau de gris
  • -type Grayscale
  • le dernier paramètre détermine le nom de la sortie
Les \( et \) permettent de créer des sous-traitements qui sont calculés avant le traitement principal. Seule la commande "convert" permet d'utiliser des sous-traitement. Dans le cas du second paramètre, nous floutons l'image
(-blur 0x$3)
puis nous l'inversons
(-negate)
. Dans le cas du troisième paramètre, nous remplissons le masque avec un gris à 50%
(-fill gray50)
. Comme ce masque est uniforme, cela revient à modifier l'opacité du négatif et la positionner à 50%.

Mode de fusion

Pour connaitre les différents mode de fusion/composition des images, il suffit de faire un :
convert -list compose
. Nous retrouvons les classiques "additionner", "multiplier", "superposer" et ausi "Lumière dure" ou "Lumière douce". Actuellement, ma version d'Imagemagick comporte plus de 55 modes de fusion !
A travers ce petit exemple, nous avons vu qu'ImageMagick offre des possibilités similaires à Gimp en matière de manipulation de calque. La différence est qu'ImageMagick ne sera utilisé que dans des scripts que nous pouvons appeler à partir du gestionnaire de fichiers.

Booster les couleurs avec ImageMagick en mode Lab

C2g en mode batch

<< | < précédente | page 8 sur 9 | suivante >