Benjamin STRABACH Florian Boudal Emilien L'HARIDON

Comment est constitué et réalisé un filtre sous Gimp?

Il faut expliquer l'algorithme qu'utilise GIMP pour réaliser un filtre. L'énumération des différents filtres n'apporte rien. LOUTREL

L'éditeur d'image GIMP propose un outil de filtres divers et variés. Chacun de ces filtres à pour but de donner un effet précis à l'image. Dans la plupart des cas, les filtres possède des paramètres accompagnés d'un aperçu qui permettent de choisir la façon dont sera modifié l'image.

Fonctionnement d'un filtre GIMP:

Pour modifier une image, le filtre vas prendre un calque en entrée puis vas y appliquer un algorithme mathématiques pour retourner le calque d'entrée modifié, au niveau des couleurs par exemple.

Pour définir la zone de modification qui sera affectée par le filtre, GIMP définira un point A de coordonnées (xa;ya) et un point B (xb;yb) de manière à modifier la zone entre ces 2 points.

Le logiciel vas ensuite appliquer l'algorithme propre au filtre. Si on prend pour exemple le filtre de flou gaussien, le filtre va prendre la valeur moyenne du pixel ainsi que celui des pixels adjacents dans un certain rayon pour rendre l'image floue. Plus le rayon est élevé, plus le flou est marqué.

Exemple de la fonction "Adoucir les couleurs" :

La fonction adoucir permet d'atténuer les fortes différences de couleurs dans une image en homogénéisant les couleurs. Ce filtre est souvent utilisé pour adoucir les contours de forme ou d'image avec le fond, par exemple dans le cas d'une incrustation .



Celle-ci sélectionne les 8 pixel autour d'un pixel, et change la valeur du pixel avec la formule :

Celle-ci permet d'avoir la couleur du pixel du milieu égale à la moyenne de la couleur des pixels environnants.
Si on veut un adoucissement moins prononcé et plus précis, le logiciel Gimp indique des valeurs “d'Influence” selon les pixels : les pixels touchant directement le pixel qu'il faut modifié auront par exemple une influence de 2 (si on modifie P5 : P2,P4,P6 et P8) ,quand ceux dans la diagonale auront plutôt une influence de 1 (ici : P1, P3, P7 et P9). Dans les deux cas, on peut augmenter le rayon des pixels environnant à sélectionner, pour avoir un adoucissement plus global mais moins précis. Selon l'agrandissement du rayon du filtre, l'influence des pixels diminue au fil de la distance.

Exemple de la fonction "Niveaux de gris" :

La fonction “niveaux de gris” permet de transformer une image couleur en image “Noir et blanc”. Gimp sélectionne un pixel de l'image, puis va regarder les trois composantes de la couleur : RVB (Rouge, Vert, Bleu) et va faire la moyenne de la couleur : Par exemple si on a un pixel violet (127, 49, 136), Gimp va faire : (127 + 49 + 136)/3 = 104 Il va ensuite appliquer le résultat au 3 composantes : le pixel va alors devenir un pixel gris (104,104,104)

Cette fonction est définie par la formule ci-dessus.

Exemple de la fonction "Ligne noire" :

Cette fonction de Gimp permet de créer une ligne noire autour d'un objet, d'une forme qui se détache du fond. Cette fonction est utile pour détourer une forme de l'image et qu'elle ressorte mieux.

Pour cette fonction, Gimp sélectionne un pixel (ici P2), et vérifie la couleur des deux pixels à sa droite et à sa gauche. Si celle-ci varie trop, il modifie la couleur du pixel pour que celui-ci deviennent noir : Si :

Alors il y a une ligne noire. Mais si P1 et P3 sont tout les deux rouges, il n'y aura pas de ligne noire. Ce filtre à un inconvénient, il ne fonctionne que si l'objet se détache vraiment du fond. Si les deux couleurs sont trop similaires, par exemple : P1 = (180,50,0) et P2 = (187, 43,0), le programme ne fera pas la ligne noire. Il est possible de modifier la sensibilité du filtre, qui modifie la différence de couleur à partir de laquelle le programme crée une ligne.

Équivalence en algorithmie

Dans un algorithme, toute ces formules font partis d'une boucle “for” définie par la taille de la zone de modification définie préalablement. La boucle se répète pour chaque pixel de la zone de modification jusqu'à ce que chaque pixel ai été traité.

Exemple pour le niveaux de gris :

Z est une variable 
N est une variable
I est une variable
C est une variable 
G est une variable 
 
On demande à l'utilisateur la zone à modifier, soit avec une zone de sélection, soit une largeur et une hauteur. 
Z = x*y
Appliquer Z à N, soit le nombre de pixel à modifier

Pour i = 0 à N
  Faire : 
  C = Rouge  + Vert + Bleu 
  G = C / 3
  Appliquer G à Rouge, Vert et Bleu
Fin pour

Exemples de filtre divers:

Exemple de paramètre avec la commande Mixeur de canaux :

  Image d'origine            Image Modifié

Les paramètres avancées

Les différents algorithme de Gimp : GIMP propose un grand nombre de filtres rangés en différentes catégories, on y trouve aussi des sous catégories qui diversifient les filtre.

Il est possible de retrouver tout les filtres sur le site de Gimp. Le fonctionnement et chaque option du filtre y est expliqué.

Documentation de GIMP pour mieux comprendre les filtres : https://docs.gimp.org/fr/filters.html

Sources :