URL:     https://linuxfr.org/news/sortie-de-g-mic-3-0-une-troisieme-dose-pour-un-traitement-efficace-de-vos-images
Title:   Sortie de G'MIC 3.0 : Une troisième dose pour un traitement efficace de vos images !
Authors: David Tschumperlé
        Pierre Maziere, Benoît Sibaud, palm123 et theojouedubanjo
Date:    2021-12-09T14:46:23+01:00
License: CC By-SA
Tags:    g'mic, traitement_d'images et greyc
Score:   6


Une nouvelle version majeure (numérotée **3.0.0**) de [_G’MIC_](https://gmic.eu) (_GREYC’s Magic for Image Computing_), [cadriciel](https://fr.wikipedia.org/wiki/Framework) libre pour [le traitement des images](https://fr.wikipedia.org/wiki/Traitement_d%27images), a été publiée le 9 décembre 2021. Ce projet, distribué sous licence libre [_CeCILL_](http://www.cecill.info/licences/Licence_CeCILL_V2.1-fr.html), est développé principalement dans l’équipe [_IMAGE_](https://www.greyc.fr/image) du [_GREYC_](https://www.greyc.fr), laboratoire de recherche en Sciences et Technologies de l’Information et de la Communication (Unité Mixte de Recherche [_CNRS_](https://www.cnrs.fr/) / [_ENSICAEN_](https://www.ensicaen.fr/) / [Université de Caen](https://www.unicaen.fr/)).



[![gmic_teaser](https://gmic.eu/gmic300/fullsize/gmic_teaser.gif)](https://gmic.eu/gmic300/fullsize/gmic_teaser.gif)



[La dernière dépêche _LinuxFr.org_](https://linuxfr.org/news/g-mic-2-7-0-une-rentree-pleine-de-style-pour-le-traitement-d-images) sur ce logiciel avait été publiée il y a plus de deux ans, en août 2019. Depuis, de nouvelles fonctionnalités ont vu le jour. Dans cette dépêche, nous proposons d’en détailler quelques-unes parmi les plus significatives.



C’est le moment de se préparer une boisson chaude, de s’installer bien confortablement dans le canapé et de se laisser conter deux ans de développement d’un projet libre dynamique !
_N. D. A. : cliquez sur les images de la dépêche pour en visualiser des versions de meilleure résolution._

----

[Le projet G'MIC](https://gmic.eu)
[Fil Twitter des nouvelles du projet](https://twitter.com/gmic_ip)
[Série d’articles G’MIC sur LinuxFr.org](https://linuxfr.org/tags/gmic/public)

----

# 1. _G’MIC_ en un peu plus de _3.0.0_ mots



[_G’MIC_](https://gmic.eu) est un cadriciel (_framework_) libre pour la manipulation et le traitement des [images numériques](https://fr.wikipedia.org/wiki/Image_num%C3%A9rique).
Il propose des interfaces utilisateurs variées pour la manipulation algorithmique (automatisée ou semi-automatisée) d’images et de signaux génériques, qui vont du signal 1D simple jusqu’aux séquences d’images volumiques 3D à nombre de canaux quelconque (ce qui inclut de fait les images couleurs classiques). Le cœur de ce projet repose sur la définition d’un langage de script spécialisé (le [_« langage G’MIC »_](https://gmic.eu/reference/overall_context.html)) et sur une implémentation libre de son interpréteur associé. Ce langage métier a été spécifiquement élaboré pour faciliter le prototypage et l’implémentation de nouveaux algorithmes et opérateurs de traitement d’images. Les utilisateurs du cadriciel peuvent ainsi appliquer des opérateurs parmi les centaines déjà prédéfinis, mais ont également la possibilité d’écrire leurs propres pipelines complexes de traitement et les rendre accessibles dans les différentes interfaces utilisateurs du projet. _G’MIC_ est donc, par essence, un cadriciel ouvert, extensible et en évolution constante.



[![G’MIC logo](https://gmic.eu/gmic300/thumb/logo_gmic.png)](https://gmic.eu/gmic300/fullsize/logo_gmic.jpg)
_Fig. 1.1 : logo du projet G’MIC, cadriciel libre pour le traitement d’images, et sa mascotte « Gmicky » (réalisée par [David Revoy](https://www.davidrevoy.com/))._



Le projet _G’MIC_ est développé depuis 2008, principalement par deux membres de l’équipe [_IMAGE_](https://www.greyc.fr/image) du laboratoire [_GREYC_](https://www.greyc.fr/) : [David Tschumperlé](https://tschumperle.users.greyc.fr/) (Chargé de Recherche [_CNRS_](https://www.cnrs.fr), responsable de l’équipe) et [Sébastien Fourey](https://foureys.users.greyc.fr/Fr/index.php) (Maître de Conférences [_ENSICAEN_](https://www.ensicaen.fr)). L’équipe _IMAGE_, l’une des six équipes du _GREYC_, est composée d’une cinquantaine de membres (chercheurs, enseignants‐chercheurs, doctorants, post-doctorants et ingénieurs), tous spécialisés dans les domaines de l’algorithmique et des mathématiques du traitement d’images.



Les interfaces utilisateurs de _G’MIC_ les plus visibles sont : la commande [`gmic`, exploitable en ligne de commande](https://gmic.eu/reference/) (complément indispensable à [_ImageMagick_](https://www.imagemagick.org/) ou [_GraphicsMagick_](http://www.graphicsmagick.org) pour ceux qui traitent leurs images en passant par le terminal), le service Web [_G’MIC Online_](https://gmicol.greyc.fr/), et surtout, le greffon [_G’MIC-Qt_](https://github.com/c-koi/gmic-qt), disponible pour plusieurs logiciels populaires d’édition d’images numériques (libres ou propriétaires) tels que [_GIMP_](https://www.gimp.org), [_Krita_](https://www.krita.org), [_Paint.net_](https://www.getpaint.net), et plus récemment, [_Adobe Photoshop_](https://fr.wikipedia.org/wiki/Adobe_Photoshop) ou encore [_Affinity Photo_](https://fr.wikipedia.org/wiki/Affinity_Photo). Ce greffon permet d’enrichir ces logiciels de plus de 570 filtres et effets différents à appliquer sur des images.



[![Greffon G’MIC-Qt](https://gmic.eu/gmic300/thumb/gmic300.png)](https://gmic.eu/gmic300/fullsize/gmic300.jpg) _Fig. 1.2 : Aperçu du greffon G’MIC-Qt, en version **3.0.0**, ici lancé depuis GIMP 2.10._



Grâce à son langage de script intégré, facilitant le prototypage et l’implémentation d’algorithmes et d’opérateurs de traitement d’images, de nouveaux filtres sont régulièrement créés et ajoutés à _G’MIC_. Une grande partie de cette dépêche sera d’ailleurs consacrée à la description des nouveaux filtres et effets développés ces deux dernières années.



# 2. Nouveautés du greffon _G’MIC-Qt_



_G’MIC-Qt_ étant l’interface la plus populaire et la plus utilisée du projet _G’MIC_, commençons donc par décrire les nouveautés la concernant. Nous avons sélectionné seulement un sous-ensemble des nouveaux filtres et effets ayant fait leur apparition dans le greffon, sans pouvoir être exhaustif, puisque c’est en réalité plus de cinquante nouvelles entrées qui ont été ajoutées en deux ans ! Nous avons essayé de suivre l’adage _« Une image vaut mille mots »_, en parsemant cette dépêche de nombreuses figures, illustrant les nouveautés présentées.



## 2.1. Effets artistiques



- Le nouveau filtre **Artistic / Paint With Brush** s’inscrit dans la grande tradition des effets cherchant à transformer une photographie en dessin ou en peinture. Son originalité réside dans le fait qu’il va repeindre entièrement l’image donnée en entrée sur une toile blanche virtuelle, en appliquant des coups de pinceau successifs à différentes échelles : d’abord avec des brosses grossières, puis avec des brosses de plus en plus fines pour recréer les moindres détails de l’image.



[![gmic_paint_with_brush](https://gmic.eu/gmic300/thumb/gmic_paint_with_brush.png)](https://gmic.eu/gmic300/fullsize/gmic_paint_with_brush.jpg)
_Fig.2.1.1. Le filtre « Artistic / Paint With Brush » en action._



Ici, tout est réglable : le nombre de coups de pinceau à chaque itération, la dynamique de la brosse (taille, opacité, couleur, orientation…), la précision géométrique des traits, etc. Cela en fait un filtre très polyvalent permettant de simuler des styles de peintures variés, comme on peut le voir sur l’animation ci-dessous, qui montre les résultats obtenus pour plusieurs pré-réglages proposés par ce filtre, et ce, pour une même image d’entrée.



[![gmic_paint_with_brush](https://gmic.eu/gmic300/fullsize/gmic_paint_with_brush_anim.gif)](https://gmic.eu/gmic300/fullsize/gmic_paint_with_brush_anim.gif)
_Fig.2.1.2. Les différents préréglages proposés permettent de simuler plusieurs styles de peinture._



- Dans la même veine, le filtre **Artistic / Doodle** redessine une image sous forme de « gribouillages », à savoir un ensemble de traits noirs continus sur fond blanc, localisés principalement sur les contours des objets présents dans les images, comme illustré par le résultat ci-dessous.



[![gmic_doodle](https://gmic.eu/gmic300/fullsize/gmic_doodle.gif)](https://gmic.eu/gmic300/fullsize/gmic_doodle.gif)
_Fig.2.1.3. Résultat du filtre « Artistic / Doodle »._



- Toujours dans l’optique de convertir une image en une illustration, le filtre **Artistic / Comic Book** a été récemment ajouté au greffon et permet de donner un aspect _cartoon_ à vos images.
C’est un filtre « communautaire », puisqu’il a été initié par [Claude Lion](https://github.com/cl4cnam), nouveau contributeur au projet, puis légèrement modifié par moi-même.



[![gmic_comic_book](https://gmic.eu/gmic300/thumb/gmic_comic_book.png)](https://gmic.eu/gmic300/fullsize/gmic_comic_book.jpg)
_Fig.2.1.4. Le filtre « Artistic / Comic Book » en action._



- Vous souhaitez effrayer vos enfants juste avant de les coucher, pour être sûrs qu’ils passent une bonne nuit ? Le nouveau filtre **Artistic / Ghost** est fait pour vous ! Cet algorithme agglomère des segments blancs semi-transparents sur les contours des objets, ce qui a pour effet de générer le plus souvent des images assez cauchemardesques (notamment lorsqu’il est appliqué sur des portraits).



[![gmic_ghost](https://gmic.eu/gmic300/thumb/gmic_ghost.png)](https://gmic.eu/gmic300/fullsize/gmic_ghost.jpg)
_Fig.2.1.5. Le filtre « Artistic / Ghost » en action.  Éloignez les enfants !_



Il est alors facile, en mélangeant le résultat de cet effet avec l’image originale (par des modes de fusion de calques bien choisis) de générer des animations, qui transformeront n’importe laquelle de vos images en vision d’horreur ! (ici, nous l’avons utilisé conjointement avec la commande [`morph`](https://gmic.eu/reference/morph) de _G’MIC_ pour le rendu de l’animation ci-dessous).



[![gmic_ghost](https://gmic.eu/gmic300/fullsize/gmic_ghost_anim2.gif)](https://gmic.eu/gmic300/fullsize/gmic_ghost_anim.gif)
_Fig.2.1.6. Variation animée autour du filtre « Artistic / Ghost »._



- Enfin, mentionnons deux petites améliorations sur des filtres artistiques déjà existants. Tout d’abord, le filtre **Frames / Droste** se dote de points manipulables sur la fenêtre de prévisualisation, permettant de régler plus aisément la zone où va se positionner la répétition de l’image d’entrée. Ce sont les points de couleur visibles aux quatre coins du miroir, sur l’exemple ci-dessous.



[![gmic_droste](https://gmic.eu/gmic300/thumb/gmic_droste.png)](https://gmic.eu/gmic300/fullsize/gmic_droste.jpg)
_Fig.2.1.7. Ajout de points manipulables par l’utilisateur pour le réglage du filtre « Frames / Droste »._



Puis, le filtre **Artistic / Stylize** se dote de six nouveaux styles prédéfinis, élaborés par [Christine Garner](https://thimblefolio.com/), une artiste qui avait beaucoup utilisé ce filtre pour donner un aspect texturé à ses images avant de proposer sa contribution. Ces nouveaux styles permettent par exemple de produire des images avec des textures de crayon, de craie, de pastel ou de fusain.



[![gmic_stylize](https://gmic.eu/gmic300/thumb/gmic_stylize.png)](https://gmic.eu/gmic300/fullsize/gmic_stylize.png)
_Fig.2.1.8. Un des nouveaux styles prédéfinis disponibles dans le filtre « Artistic / Stylize »._



## 2.2. Amélioration d’images



- Le greffon se dote encore d’un nouvel algorithme pour aider au débruitage des images, problème très classique mais ô combien difficile à résoudre, qui occupe les chercheurs en traitement d’images depuis plusieurs générations.
Le nouveau filtre **Repair / Denoise** essaye de s’acquitter de cette tâche par une approche basée sur les [réseaux de neurones convolutifs](https://fr.wikipedia.org/wiki/R%C3%A9seau_neuronal_convolutif).



[![gmic_denoise](https://gmic.eu/gmic300/thumb/gmic_denoise.png)](https://gmic.eu/gmic300/fullsize/gmic_denoise.jpg)
_Fig.2.2.1. Le filtre « Repair / Denoise » en action._



À première vue, cette information peut sembler anodine, mais elle représente en réalité un fait marquant dans l’histoire de _G’MIC_ (ainsi qu’un bon paquet de semaines de développement !). En effet, pour réaliser ce filtre, il a fallu implémenter une bibliothèque complète d’[apprentissage machine](https://fr.wikipedia.org/wiki/Apprentissage_automatique), nommée `nn_lib` (pour « _**N**eural **N**etwork **Lib**rary_ »). Cette bibliothèque permet aujourd’hui la construction, l’apprentissage et l’évaluation de [réseaux de neurones artificiels](https://fr.wikipedia.org/wiki/R%C3%A9seau_de_neurones_artificiels). C’est généralement sous le terme (un peu dévoyé) d’[« Intelligence Artificielle »](https://fr.wikipedia.org/wiki/Intelligence_artificielle) que l’on désigne ce type de méthodes. Le filtre de débruitage **Repair / Denoise** est donc tout simplement le premier filtre de _G’MIC_ basé sur cette nouvelle bibliothèque d’apprentissage machine !



[![gmic_denoise_balloons](https://gmic.eu/gmic300/thumb/gmic_denoise_balloons.png)](https://gmic.eu/gmic300/fullsize/gmic_denoise_balloons.jpg)
[![gmic_denoise_parrot](https://gmic.eu/gmic300/thumb/gmic_denoise_parrot.png)](https://gmic.eu/gmic300/fullsize/gmic_denoise_parrot.jpg)
_Fig.2.2.2. Deux exemples de débruitage d’images, obtenus avec le filtre « Repair / Denoise »._



Avec l’apparition de `nn_lib`, nous espérons proposer dans le futur de plus en plus de filtres basés sur les réseaux de neurones, pour la retouche et la génération d’images. De belles choses à venir en perspective !



- Un autre filtre d’amélioration d’images, plus spécialisé celui-ci, a été intégré au greffon _G’MIC-Qt_. Il s’agit du filtre **Repair / Unpurple** dont le rôle est de supprimer les [franges violettes](https://en.wikipedia.org/wiki/Purple_fringing) qui peuvent apparaître dans les photographies. L’algorithme utilisé ici est un portage direct en langage _G’MIC_ de l’algorithme [Unpurple](https://github.com/mjambon/purple-fringe) de [Martin Jambon](https://github.com/mjambon), portage réalisé par [Stanislav Paskalev](https://github.com/spaskalev). On peut voir ci-dessous l’effet de ce filtre sur une portion d’image comportant ces fâcheuses franges violettes.



[![gmic_unpurple](https://gmic.eu/gmic300/thumb/Purple_fringing.png)](https://gmic.eu/gmic300/fullsize/Purple_fringing.jpg)
_Fig.2.2.3. Portion de photographie couleur comportant des franges violettes._



[![gmic_unpurple](https://gmic.eu/gmic300/thumb/gmic_unpurple.png)](https://gmic.eu/gmic300/fullsize/gmic_unpurple.jpg)
_Fig.2.2.4. Le filtre « Repair / Unpurple » en action._



[![gmic_unpurple](https://gmic.eu/gmic300/thumb/Purple_fringing2.png)](https://gmic.eu/gmic300/fullsize/Purple_fringing2.jpg)
_Fig.2.2.5. Résultat du filtre : les franges violettes ont disparu._



- Une envie soudaine de rehausser les détails dans vos images ? Le nouveau filtre **Details / Sharpen [Multiscale]** pourrait vous intéresser. Il vient compléter l’armada des algorithmes d’amélioration de netteté existants dans _G’MIC_. Il se base sur un algorithme de rehaussement multi-échelle pour faire ressortir les détails de différentes tailles présents dans les images.



[![gmic_sharpen_multiscale](https://gmic.eu/gmic300/thumb/gmic_sharpen_multiscale.png)](https://gmic.eu/gmic300/fullsize/gmic_sharpen_multiscape.jpg)
_Fig.2.2.6. Le filtre « Details / Sharpen [Multiscale] » en action._



[![gmic_sharpen_multiscale_anim](https://gmic.eu/gmic300/fullsize/gmic_sharpen.gif)](https://gmic.eu/gmic300/fullsize/gmic_sharpen.gif)
_Fig.2.2.7. Résultat de l’application du filtre sur une photographie couleur._



## 2.3. Retouche des couleurs



Pour la retouche couleur des images, deux nouveaux filtres particulièrement intéressants font leur apparition dans _G’MIC-Qt_ :



Premièrement, le filtre **Colors / Tune HSV Colors**, qui permet à l’utilisateur de définir, de façon très fine, une fonction de transformation opérant dans l’espace couleur [_HSV_ (Teinte-Saturation-Valeur)](https://fr.wikipedia.org/wiki/Teinte_Saturation_Valeur).
Ce filtre fonctionne de la manière suivante :



- Tout d’abord, le filtre va déterminer, dans l’image d’entrée, les couleurs existantes les plus proches des couleurs pures suivantes : le rouge (dénoté _R_), le jaune (_Y_), le vert (_G_), le cyan (_C_), le bleu (_B_) et le magenta (_M_). À ceci s’ajoute la couleur la plus sombre (_D_), la plus claire (_L_), ainsi que la couleur moyenne (_A_). Il arrive d’ailleurs que l’image d’entrée ne contienne pas du tout l’une ou l’autre de ces couleurs, et dans ce cas, la couleur extraite la plus proche peut être perceptivement assez éloignée de la couleur pure idéale. C’est le cas par exemple avec l’image du papillon illustrée ci-dessous : cette image ne contient aucun pixel dans les tons bleus.



[![gmic_tune_hsv1](https://gmic.eu/gmic300/thumb/gmic_tune_hsv1.png)](https://gmic.eu/gmic300/fullsize/gmic_tune_hsv1.jpg)
_Fig.2.3.1. Le filtre « Colors / Tune HSV Colors » extrait tout d’abord des couleurs de base de l’image._



- Ces neuf couleurs extraites de l’image vont ensuite servir de base pour la définition d’une transformation couleur personnalisée. On va pouvoir en effet modifier chacune de ces couleurs indépendamment dans l’espace _HSV_, en rendant la couleur plus ou moins claire, plus ou moins saturée, ou en changeant carrément sa teinte. C’est ce que nous faisons dans l’exemple ci-dessous où l’on modifie les couleurs les plus rouges et magentas pour les rendre vertes et changer ainsi la couleur de la fleur sur laquelle est posé le papillon (dont on a également modifié légèrement la teinte en passant).



[![gmic_tune_hsv0](https://gmic.eu/gmic300/thumb/gmic_tune_hsv0.png)](https://gmic.eu/gmic300/fullsize/gmic_tune_hsv0.jpg)
_Fig.2.3.2. L’utilisateur peut agir sur chacune des 9 « couleurs-clés » individuellement pour définir une transformation couleur personnalisée._



D’un point de vue technique, cette redéfinition des « couleurs-clés » entraîne dans un premier temps la construction d’une [_CLUT_ (_Color LUT_)](https://www.bromptontech.com/what-is-a-3d-lut/) interpolée dense en 3D, qui sert à modifier dans un second temps l’image d’entrée suivant les désidératas de l’utilisateur, comme illustré ci-dessous dans notre exemple avec le papillon :



[![fig_hsv](https://gmic.eu/gmic300/thumb/fig_hsv.png)](https://gmic.eu/gmic300/fullsize/fig_hsv.jpg)
_Fig.2.3.3. En interne, G’MIC génère une CLUT 3D modélisant la transformation colorimétrique souhaitée._



Les cas d’utilisation de ce filtre sont assez nombreux. Que ce soit pour une retouche locale de couleur (transformation d’une couleur en une autre), ou une retouche colorimétrique plus globale, ce filtre trouvera facilement sa place dans la boîte à outils du bidouilleur de couleurs. Dans la figure ci-dessous, nous utilisons par exemple ce filtre pour définir une ambiance couleur crépusculaire.



[![gmic_tune_hsv2](https://gmic.eu/gmic300/thumb/gmic_tune_hsv2.png)](https://gmic.eu/gmic300/fullsize/gmic_tune_hsv2.jpg)
_Fig.2.3.4. Transformation couleur globale appliquée sur une image de [Pepper & Carrot](https://www.peppercarrot.com/fr/) de l’artiste [David Revoy](https://www.davidrevoy.com/)._



Une vidéo de démonstration de ce filtre est visible sur la chaîne Youtube de Pierre « El Lobo », qui poste régulièrement des tutoriels en français sur l’utilisation de _GIMP_. Cliquez sur l’image ci-dessous pour y accéder. Plus de détails sur l’utilisation de ce filtre peuvent également être trouvés sur le [forum _de G’MIC_](https://discuss.pixls.us/t/filter-colors-tune-hsv-colors/21920) (en anglais).



[![video_tune_hsv](https://gmic.eu/gmic300/thumb/small_video_tune_hsv.png)](https://www.youtube.com/watch?v=AvfusCL0YpA)



Le deuxième filtre de retouche colorimétrique notable se nomme **Colors / Transfer Colors [PCA]**. Il permet de transférer les couleurs d’une image de référence vers une image que l’on souhaite modifier. Techniquement, ce transfert est réalisé en imposant la matrice de covariance de l’image à modifier pour correspondre à celle de l’image de référence.



[![gmic_transfer_pca](https://gmic.eu/gmic300/thumb/gmic_transfer_pca.png)](https://gmic.eu/gmic300/fullsize/gmic_transfer_pca.jpg)
_Fig.2.3.5. Le filtre « Colors / Transfer Colors [PCA] » en action._



[![gmic_transfer_pca_anim](https://gmic.eu/gmic300/fullsize/gmic_transfer_pca.gif)](https://gmic.eu/gmic300/fullsize/gmic_transfer_pca.gif)
_Fig.2.3.6. Résultat du transfert de couleur. Les couleurs de l’image de référence (bonhommes de neige) ont été transférées à l’image de l’oiseau._



À noter que l’algorithme de transfert de couleurs sous-jacent n’est pas utilisé uniquement pour ce filtre, mais a également été intégré comme une sous-partie de traitements plus complexes (par exemple, le filtre **Artistic / Stylize** évoqué précédemment).



## 2.4. Déformations et dégradations



Les amateurs de déformations d’images et de [Glitch art](https://en.wikipedia.org/wiki/Glitch_art) peuvent aussi trouver quelque intérêt dans cette nouvelle version _3.0_ de _G’MIC_.



- D’abord, avec le nouveau filtre **Deformations / Breaks**, qui introduit aléatoirement des discontinuités triangulaires dans les images. Ce filtre provient initialement d’une demande de l’artiste [David Revoy](https://www.davidrevoy.com/) pour générer une déformation proche de ce que donnait un autre filtre plus ancien, **Deformations / Crease**, mais avec des coupures plus nettes. Deux nouveaux modes de déformations ont ainsi été implémentés pour cet effet (modes _Flat_ et _Relief_) avec le résultat suivant :



[![gmic_breaks](https://gmic.eu/gmic300/fullsize/gmic_breaks.gif)](https://gmic.eu/gmic300/fullsize/gmic_breaks.gif)
_Fig.2.4.1. Application des deux modes différents du filtre « Deformations / Breaks » sur une image couleur._



David Revoy nous montre ci-dessous une application de ce filtre de « cassures » d’images dans le domaine de l’illustration, pour un rendu d’éclairs magiques du plus bel effet !



[![gmic_breaks_revoy](https://gmic.eu/gmic300/thumb/gmic_breaks.png)](https://gmic.eu/gmic300/fullsize/gmic_breaks.png)
_Fig.2.4.2. Utilisation du filtre « Deformations / Breaks » pour perturber la forme d’éclairs magiques._



Une vidéo plus détaillée d’utilisation de ce type de filtres par David Revoy est visible en suivant le lien suivant :
[![video_crease](https://gmic.eu/gmic300/thumb/small_video_crease.png)](https://www.youtube.com/watch?v=vopP_8kJMj8)



- Autre effet très _glitchesque_ : le filtre **Degradations / Rebuild From Blocs** s’évertue à reconstruire une image à partir de l’ensemble de ses blocs, en s’imposant néanmoins de ne pas les repositionner à leur place initiale, mais en s’autorisant à réutiliser un même bloc, si besoin. Comme on s’en doute, le résultat ressemble vaguement à l’image initiale mais avec un effet de bloc très prononcé.



[![gmic_rebuild_from_blocs](https://gmic.eu/gmic300/thumb/gmic_rebuild_from_blocs.png)](https://gmic.eu/gmic300/fullsize/gmic_rebuild_from_blocs.jpg)
_Fig.2.4.3. Le filtre « Degradations / Rebuild From Blocs » va changer les positions des blocs de l’image._



Il est amusant de remarquer que dans l’exemple ci-dessus, les blocs correspondant aux yeux de la demoiselle ont simplement été inversés dans les deux images !



- Enfin, le filtre **Degradations / Blur [Multidirectional]** applique, comme son nom l’indique, un effet de flou multi-directionnel sur l’image. Il est possible d’ajuster le nombre de directions de flous simultanées, ainsi que d’éventuellement rehausser les contrastes locaux dans l’image obtenue.



[![gmic_blur_multi](https://gmic.eu/gmic300/thumb/gmic_blur_multi.png)](https://gmic.eu/gmic300/fullsize/gmic_blur_multi.jpg)
_Fig.2.4.4. Le filtre « Degradations / Blur [Multidirectional] » en action._



[![gmic_blur_multi2](https://gmic.eu/gmic300/thumb/gmic_blur_multi2.png)](https://gmic.eu/gmic300/fullsize/gmic_blur_multi2.png)
_Fig.2.4.5. Résultats obtenus avec différents paramétrages du filtre._



## 2.5. Rendus de formes et de motifs



Rentrons maintenant dans le monde merveilleux des filtres de rendus. C’est une catégorie sans pareille où l’on déniche toutes sortes de bizarreries, des filtres qui semblent n’avoir aucune utilité, jusqu’au jour où ils deviennent parfaitement indispensables… ou pas ! Les filtres suivants, qui ont fait leur apparition dans _G’MIC_ _3.0_, n’échappent pas à cette règle. Ils vous serviront sans doute rarement, mais ils sont quand même sympas !



- Commençons par le plus simple d’entre eux, le filtre **Silhouettes / Others / Dragon Curve** dont le but est de tracer la [Courbe du Dragon](https://fr.wikipedia.org/wiki/Courbe_du_dragon), une courbe fractale composée d’un unique tracé continu, construit de manière itérative.



[![gmic_dragoncurve](https://gmic.eu/gmic300/fullsize/gmic_dragon.gif)](https://gmic.eu/gmic300/fullsize/gmic_dragon.gif)
_Fig.2.5.1. Différentes itérations de construction de la courbe du dragon._



- Enchaînons rapidement avec le filtre **Rendering / Hypotrochoid** qui, là aussi, a pour but de tracer une courbe sinusoïdale particulière, à savoir une [Hypotrochoïde](https://fr.wikipedia.org/wiki/Hypotrocho%C3%AFde). À quoi ça sert ? On ne sait pas vraiment, mais il ne faut jamais sous-estimer la puissance créatrice des artistes utilisateurs !



[![gmic_hypotrochoid](https://gmic.eu/gmic300/thumb/gmic_hypotrochoid.png)](https://gmic.eu/gmic300/fullsize/gmic_hypotrochoid.jpg)
_Fig.2.5.2. Le filtre « Rendering / Hypochotroid » en action._



- Toujours dans l’univers du tracé de courbes, attardons-nous un peu plus longuement sur le nouveau filtre **Rendering / Sine Curve**, qui définit une famille de [courbes paramétriques](https://fr.wikipedia.org/wiki/Repr%C3%A9sentation_param%C3%A9trique) 2D ou 3D, avec un grand nombre de paramètres réglables par l’utilisateur (près de 50 !).



[![gmic_sine_curve](https://gmic.eu/gmic300/thumb/gmic_sine_curve.png)](https://gmic.eu/gmic300/fullsize/gmic_sine_curve.jpg)
_Fig.2.5.3. Le filtre « Rendering / Sine Curve » en action._



Le nombre de paramètres est vraiment élevé et ce filtre propose donc un ensemble de pré-réglages servant de base pour jouer avec toutes les variations de courbes possibles. La figure ci-dessous illustre quelques-unes des formes prédéfinies offertes par l’algorithme.



[![gmic_sine_curve_presets](https://gmic.eu/gmic300/thumb/gmic_sine_curve_presets.png)](https://gmic.eu/gmic300/fullsize/gmic_sine_curve_presets.jpg)
_Fig.2.5.4. Quelques pré-réglages de paramètres proposés par le filtre « Rendering / Sine Curve »._



Vous l’aurez compris, ce filtre permet de dessiner des courbes sinusoïdales paramétrées très variées. On pourra l’utiliser notamment pour générer des fonds d’écrans chatoyants. Pierre « El Lobo » a d’ailleurs réalisé un petit tutoriel vidéo sur ce filtre, visible sur sa chaîne Youtube (suivre le lien ci-dessous)
[![video_sine_curve](https://gmic.eu/gmic300/thumb/small_video_sine_curve.png)](https://www.youtube.com/watch?v=qp7B0M50MHk)



- Et si, plutôt que de se contenter de rendus de courbes 1D, on s’intéressait maintenant à la génération paramétrique d’images en 2D ? C’est ce que propose le filtre **Patterns / Random Pattern**, dont le fonctionnement est assez original : il génère une fonction mathématique aléatoire `f(z)` (`z` étant une variable complexe), composée de fonctions complexes de base (`cos()`, `sin()`, `pow()`…) et d’opérateurs (`+`, `-`, `*`, `/`…), en construisant récursivement un arbre d’expression. `f(z)` est ensuite évaluée pour tous les points `z` de l’image, localisés dans un domaine rectangulaire, lui-même choisi aléatoirement. Les valeurs de `f(z)` sont finalement transformées en valeurs _RGB_ pour déterminer les couleurs de tous les pixels de l’image.



[![gmic_random_pattern](https://gmic.eu/gmic300/thumb/gmic_random_pattern.png)](https://gmic.eu/gmic300/fullsize/gmic_random_pattern.png)
_Fig.2.5.5. Le filtre « Patterns / Random Pattern » en action._



Notons que la construction de la fonction `f(z)` dépend uniquement de la graine aléatoire utilisée pour engendrer l’arbre d’expression. La figure ci-dessous illustre quelques rendus d’images obtenus avec différentes valeurs de graines aléatoires.



[![gmic_random_pattern](https://gmic.eu/gmic300/thumb/gmic_random_pattern_all.png)](https://gmic.eu/gmic300/fullsize/gmic_random_pattern_all.png)
_Fig.2.5.6. Quelques exemples de motifs aléatoires générés par le filtre « Patterns / Random Pattern »._



- Les méthodes de génération récursive d’images peuvent produire des motifs géométriques originaux et intéressants, ce que semble également confirmer le filtre **Patterns / Triangular Pattern**. Il génère des images constituées de triangles récursivement subdivisés de différentes façons, chacune ayant une probabilité d’occurrence réglable par l’utilisateur.



[![gmic_triangular](https://gmic.eu/gmic300/thumb/gmic_triangular.png)](https://gmic.eu/gmic300/fullsize/gmic_triangular.jpg)
_Fig.2.5.7. Le filtre « Patterns / Triangular Pattern » en action._



Au fur et à mesure des itérations, on voit se former dans l’image des motifs géométriques de plus en plus complexes, comme le montre l’animation ci-dessous.



[![gmic_triangular_anim](https://gmic.eu/gmic300/fullsize/gmic_triangular_shape_anim.gif)](https://gmic.eu/gmic300/fullsize/gmic_triangular_shape_anim.gif)
_Fig.2.5.8. Visualisation des itérations de construction du motif triangulaire par le filtre « Patterns / Triangular Pattern »._



En augmentant le nombre d’itérations et en ne traçant que les contours des triangles subdivisés, on arrive à générer des motifs géométriques fractals vraiment remarquables, étant donnée la simplicité apparente de l’algorithme de subdivision de triangles, comme l’illustre la figure suivante. De quoi donner des idées de motifs pour carreler sa cuisine ou sa salle de bain !



[![gmic_triangular_patterns](https://gmic.eu/gmic300/thumb/gmic_triangular_patterns.png)](https://gmic.eu/gmic300/fullsize/gmic_triangular_patterns.jpg)
_Fig.2.5.9. Quelques exemples de subdivisions triangulaires récursives aléatoires obtenues par le filtre « Patterns / Triangular Pattern »._



- Et en parlant de fractales, venons-en au filtre **Rendering / Newton Fractal** qui permet justement de naviguer dans les [Fractales de Newton](https://fr.wikipedia.org/wiki/Fractale_de_Newton), avec un grand nombre de paramètres ajustables. Ces fractales sont obtenues en cherchant à trouver les zéros d’une fonction complexe `f(z)` (souvent un polynôme) par la [méthode de Newton](https://fr.wikipedia.org/wiki/M%C3%A9thode_de_Newton). Cette technique itérative construit une suite censée converger vers l’un des zéros de la fonction. Pour chaque point (complexe) `z` de l’image, on détermine donc sa couleur affichée en fonction du nombre d’itérations nécessaires pour arriver à convergence, ce qui donne ces motifs géométriques fractals de toute beauté.



[![gmic_newton](https://gmic.eu/gmic300/thumb/gmic_newton.png)](https://gmic.eu/gmic300/fullsize/gmic_newton.jpg)
_Fig.2.5.10. Le filtre « Rendering / Newton Fractal » en action._



Dans _G’MIC-Qt_, le filtre propose à l’utilisateur de rentrer sa propre formule mathématique pour définir la fonction `f(z)`, ainsi que ses dérivées. Il offre aussi des options pour coloriser la fractale de manière personnalisée et pour se balader facilement dans l’espace fractal grâce à son navigateur intégré, simple mais efficace. Enfin, il étend le principe du calcul à d’autres méthodes de résolutions ([méthode de la Sécante](https://fr.wikipedia.org/wiki/M%C3%A9thode_de_la_s%C3%A9cante) et [méthode de Householder](https://fr.wikipedia.org/wiki/M%C3%A9thode_de_Householder)). Et comme toujours avec _G’MIC_, il est aussi possible de scripter ce filtre à partir de la ligne de commande (avec la commande `gmic`), pour générer par exemple ce type d’animations :



[![gmic_newton_anim](https://gmic.eu/gmic300/fullsize/gmic_newton_anim.gif)](https://gmic.eu/gmic300/fullsize/gmic_newton_anim.gif)
_Fig.2.5.11. Génération d’un zoom dans une fractale de Newton, scriptée avec `gmic`._



- Toujours dans l’esprit « fractal », le nouveau filtre **Rendering / Tree** vous propose de générer des [arbres fractals](https://mathcurve.com/fractals/arbre/arbre.shtml), là encore avec de nombreux paramètres réglables pour varier les plaisirs.



[![gmic_tree](https://gmic.eu/gmic300/thumb/gmic_tree.png)](https://gmic.eu/gmic300/fullsize/gmic_tree.jpg)
_Fig.2.5.12. Le filtre « Rendering / Tree » en action._



On peut ainsi ajuster, outre les couleurs du tronc et des feuilles, les tailles des branches et les probabilités de séparation des branches en plusieurs morceaux. Cela permet de générer des arbres à la géométrie et aux looks assez différents, comme vous pouvez le voir sur la figure ci-dessous.



[![gmic_3_trees](https://gmic.eu/gmic300/thumb/gmic_3_trees.png)](https://gmic.eu/gmic300/fullsize/gmic_3_trees.jpg)
_Fig.2.5.13. Exemples de rendus d’arbres avec des paramétrages différents, par le filtre « Rendering / Tree »._



La vidéo suivante illustre l’utilisation de ce filtre dans _GIMP_  (cliquez sur l’image ci-dessous pour accéder à la vidéo).
[![video_trees.png](https://gmic.eu/gmic300/thumb/small_video_trees.png)](https://www.youtube.com/watch?v=Bsvv0nFFz4w)



- Un autre effet de rendu qui mérite d’être mis en lumière (sans mauvais jeu de mot…) est le filtre **Light & Shadows / Guided Light Rays**. Ce filtre permet de lancer des rayons lumineux à partir d’une source de lumière ponctuelle, vers ou à travers une forme quelconque dessinée par l’utilisateur et définie sous la forme d’un masque opaque placé sur un calque transparent au-dessus de l’image d’entrée.



[![gmic_guided_light_rays](https://gmic.eu/gmic300/thumb/gmic_light2.png)](https://gmic.eu/gmic300/fullsize/gmic_light2.jpg)
_Fig.2.5.14. Le filtre « Light & Shadows / Guided Light Rays » en action._



Dans l’exemple ci-dessus, les rayons lumineux s’arrêtent lorsqu’ils rencontrent les pixels du logo _G’MIC_. Mais on peut aussi adapter les paramètres du filtre pour que les rayons traversent la forme. C’est ce qui est fait dans l’exemple ci-dessous, où le masque défini par l’utilisateur correspond à la surface vitrée des fenêtres d’un salon.



[![gmic_guided_light_rays](https://gmic.eu/gmic300/thumb/gmic_light.png)](https://gmic.eu/gmic300/fullsize/gmic_light.jpg)
_Fig.2.5.15. Rayons lumineux synthétisés pour passer à travers un masque défini par l’utilisateur._



Avec ce filtre, il est ainsi facile d’ajouter des effets d’éclairages personnalisés sur des photographies, comme montré dans l’exemple suivant. Le tout est de bien définir le masque de la forme guidant les rayons lumineux, et le filtre fait le reste !



[![gmic_guided_light_rays_anim](https://gmic.eu/gmic300/fullsize/gmic_guided_light_rays_anim.gif)](https://gmic.eu/gmic300/fullsize/gmic_guided_light_rays_anim.gif)
_Fig.2.5.16. Ajout d’un effet d’éclairage latéral grâce au filtre « Light & Shadows / Guided Light Rays »._



La vidéo tutorielle suivante montre l’utilisation de ce filtre sous _GIMP_ :
[![video_lightrays](https://gmic.eu/gmic300/thumb/small_video_lightrays.png)](https://www.youtube.com/watch?v=VRiWu_0BZvc)



- Enfin, pour conclure notre tour des nouveautés concernant les effets de rendus, terminons avec le filtre **Sequences / Moiré Animation** qui nous entraîne dans le monde merveilleux de l’animation basée sur les technologies (robustes) du siècle dernier, à savoir : la feuille de papier et le calque transparent ! Ce filtre va en effet permettre de créer, à peu de frais, une illusion d’optique animée, en générant des images ayant un [effet Moiré](https://fr.wikipedia.org/wiki/Moir%C3%A9_(physique)). À partir d’une animation donnée en entrée (contenant peu d’images), le filtre va produire une image fixe ainsi qu’un masque binaire contenant des barres verticales comme ci-dessous :



[![gmic_moire](https://gmic.eu/gmic300/thumb/gmic_moire.png)](https://gmic.eu/gmic300/fullsize/gmic_moire.png)
_Fig.2.5.17. Images générées par le filtre « Sequences / Moiré Animation » à partir d’une animation constituée de 5 images._



L’astuce consiste à imprimer la première image sur une page blanche et la seconde sur un calque transparent de même taille. En positionnant le transparent sur la page de manière adéquate, et en déplaçant celui-ci latéralement, on rend visible l’animation. En effet, les barres verticales imprimées sur le transparent ne laissent passer qu’une seule image de l’animation à la fois, ces images se succédant lorsque le transparent se déplace :



[![gmic_moire_anim](https://gmic.eu/gmic300/fullsize/gmic_moire_anim.gif)](https://gmic.eu/gmic300/fullsize/gmic_moire_anim.gif)
_Fig.2.5.18. Rendu de l’animation lorsque le transparent se déplace sur la page imprimée._



À noter que si le nombre d’étapes-clés de l’animation doit être effectivement restreint (en général, moins d’une dizaine, il n’est évidemment pas question de convertir un film de deux heures sous cette forme !), il n’y a pas de raisons de se limiter à des images en niveaux de gris. Les deux figures suivantes illustrent, par exemple, le rendu d’une animation couleur avec ce filtre.



[![gmic_moire](https://gmic.eu/gmic300/thumb/gmic_moire2.png)](https://gmic.eu/gmic300/fullsize/gmic_moire2.png)
_Fig.2.5.19. Images générées par le filtre « Sequences / Moiré Animation » à partir d’une animation couleur de 6 images._



[![gmic_moire_anim](https://gmic.eu/gmic300/fullsize/gmic_moire_anim2.gif)](https://gmic.eu/gmic300/fullsize/gmic_moire_anim2.gif)
_Fig.2.5.20. Rendu de l’animation lorsque le transparent se déplace sur la page imprimée._



« Tes exemples, c’est bien joli, mais en vrai, ça donne quoi ? », m’objecterez-vous. Eh bien, le ressenti d’animation est vraiment présent, comme on peut l’apprécier dans la vidéo ci-dessous :
[![video_moire](https://gmic.eu/gmic300/thumb/small_video_moire.png)](https://www.youtube.com/watch?v=f5plDb_JRq4)



Au final, c’est une manière peu onéreuse et amusante de créer des supports d’animation personnalisées. Les enfants, pas encore ~~lobotomisés~~ blasés par l’application _Youtube_ de leur téléphone portable, adoreront !



## 2.6. Se maintenir à jour



L’ensemble des filtres que nous venons de décrire ne représente qu’une sous-partie de tous les nouveaux filtres ajoutés ces deux dernières années. Il existe en particulier de nombreux filtres « communautaires » qui restent parfois dans l’ombre un certain temps avant d’intégrer la liste principale des filtres proposés (filtres de la catégorie **Testing /** notamment). Pour faciliter le suivi de ces mises à jour, _G’MIC-Qt_ s’est donc doté de la fonction **About / What's New?**, dont le rôle est de lister les récentes additions et suppressions de filtres dans le greffon. Cette liste est adaptée à l’utilisateur, puisqu’elle est élaborée en fonction de la liste précédemment consultée par celui-ci.



[![gmic_whatsnew](https://gmic.eu/gmic300/thumb/gmic_whatsnew.png)](https://gmic.eu/gmic300/fullsize/gmic_whatsnew.jpg)
_Fig.2.6.1. Le filtre « About / What's New? » en action._



Pour rappel, le bouton **Mettre à jour les filtres** situé sous la liste déroulante des filtres permettra au greffon de vérifier si de nouveaux filtres sont disponibles, et le cas échéant, de les télécharger.



Ce tour d’horizon des nouveaux filtres de _G’MIC-Qt_ est maintenant terminé. Mais d’autres améliorations du greffon nous attendent !



## 2.7 Toujours plus de logiciels hôtes



- L’une des nouvelles marquantes dans la vie de _G’MIC-Qt_ concerne sa mise à disposition sous la forme d’un greffon compatible avec le protocole [_8bf_](https://fileinfo.fr/extension/8bf). Cette _API_ a été imaginée par _Adobe_ dans les années 90 pour le développement de greffons pour son logiciel phare (et non-libre) _Photoshop_. C’est un protocole toujours utilisé, malgré son grand âge (et ses limitations techniques). Avec les années, cette _API_ de greffon a même été adoptée par de nombreux autres logiciels d’illustration et de retouche photo. Par conséquent, cette version du greffon _G’MIC-Qt_ peut en pratique être maintenant utilisée à l’intérieur de nombreux logiciels populaires, compatibles avec le protocole _8bf_, à savoir : [_Adobe Photoshop_](https://fr.wikipedia.org/wiki/Adobe_Photoshop), [_Affinity Photo_](https://fr.wikipedia.org/wiki/Affinity_Photo), [_Paint Shop Pro_](https://fr.wikipedia.org/wiki/Corel_Paint_Shop_Pro), [_Photoline_](https://www.pl32.com/), [_XnView_](https://www.xnview.com/fr/), pour n’en citer que quelques-uns.



[![Greffon G’MIC-Qt sous Affinity Photo](https://gmic.eu/gmic300/thumb/gmic_8bf.png)](https://gmic.eu/gmic300/fullsize/gmic_8bf.jpg)
Fig.2.1.1. _Le greffon G’MIC-Qt tournant sous Affinity Photo / Windows._



C’est grâce à [_Nicholas Hayes_](https://github.com/0xC0000054), déjà l’auteur du portage du greffon pour le logiciel [_Paint.NET_](https://www.getpaint.net/), que cette version _8bf_ de _G’MIC-Qt_ a été réalisée. C’est une bonne nouvelle pour tous les utilisateurs de ces logiciels propriétaires, qui pourront bénéficier d’un nouveau greffon bien fourni en filtres divers de traitement d’images, avec la possibilité de les modifier et de les améliorer, et tout cela sans rien payer (ça va les changer ! ☺).



- Une autre bonne nouvelle concerne l’amélioration du support du greffon _G’MIC-Qt_ pour _GIMP_, notamment sous _Windows_, où plusieurs utilisateurs nous avaient rapporté des problèmes de compatibilités avec les `.dll` fournies, lors de la sortie de la dernière version de _GIMP_ (la 2.10.28). De plus, grâce aux modifications apportées par [Jan Tojnar](https://github.com/jtojnar), le greffon _G’MIC-Qt_ peut maintenant se compiler pour la version 2.99 de _GIMP_ (nom de la version de développement de _GIMP_ qui deviendra la très attendue _3.0_). Mentionnons également l’arrivée du greffon _G’MIC-Qt_ pour la version [Flatpack](https://github.com/flathub/org.gimp.GIMP.Plugin.GMic) de _GIMP_, grâce au travail d’[Hubert Figuière](https://github.com/hfiguiere) qui l’a empaqueté pour [Flathub](https://github.com/flathub).



- Enfin, notons l’intégration attendue de _G’MIC-Qt_ _3.0_ dans la prochaine version majeure _5.0_ du logiciel _Krita_, dont la sortie est planifiée ce mois de décembre. Cette intégration est prévue pour être complète et systématique, c’est-à-dire que _G’MIC-Qt_ sera inclus par défaut dans _Krita_, et non plus installé comme un greffon extérieur (comme c’est le cas actuellement). Cela promet une meilleure intégration dans _Krita_ et devrait régler plusieurs problèmes récurrents, en particulier pour les utilisateurs de _Mac_. C’est [_amyspark_](https://www.amyspark.me/), avec qui nous sommes en contact, qui est en charge de cette intégration.



## 2.8. Améliorations de l’interface



Le greffon a aussi vu son interface graphique s’améliorer, avec en particulier :



- La mise à disposition d’un système de _tags_ colorés pouvant être assignés à un ou plusieurs filtres. Ces pastilles de couleur (6 couleurs différentes) permettent à l’utilisateur qui le souhaite de marquer certains filtres pour les retrouver plus facilement par la suite. Chaque utilisateur décide bien sûr du sens qu’il attribue à chaque couleur et les cas d’utilisation sont donc potentiellement nombreux : on peut utiliser ces _tags_ de manière temporaire pour une session donnée, ou au contraire marquer les filtres sur du plus long terme. L’interface du greffon propose un système simple mais efficace pour gérer ces différents _tags_ comme le montre l’animation ci-dessous :



[![gmic_qt_tags](https://gmic.eu/gmic300/fullsize/gmic_qt_tags.gif)](https://gmic.eu/gmic300/fullsize/gmic_qt_tags.gif)
_Fig.2.8.1. Un nouveau système de « tags » colorés pour marquer les filtres a fait son apparition dans le greffon._



- L’apparition d’un bouton _« Copier la commande G’MIC dans le presse-papier »_ localisé en haut à gauche du panneau contenant la liste des filtres :



[![gmic_qt_clipboard](https://gmic.eu/gmic300/thumb/gmic_qt_clipboard.png)](https://gmic.eu/gmic300/fullsize/gmic_qt_clipboard.png)
_Fig.2.8.2. Nouveau bouton de copie de la commande G’MIC dans le presse-papier._



Ce bouton ravira tous les scripteurs : en appuyant dessus, on obtient la commande _G’MIC_ à invoquer dans le terminal avec l’outil en ligne de commande `gmic`, afin d’appliquer le filtre actuellement sélectionné avec ses valeurs de paramètres courantes. Voici par exemple ce que contient le presse-papier après avoir appuyé sur ce bouton dans l’exemple ci-dessus :



```
fx_spherize 50,4.16,0,58.8136,52.1628,0,0,2,0
```





On peut alors recoller cette chaîne dans un appel à `gmic` en ligne de commande, pour obtenir exactement le même effet sur d’autres images, ou pour l’intégrer dans un pipeline plus complexe de traitement :



[![gmic_qt_clipboard2](https://gmic.eu/gmic300/thumb/gmic_qt_clipboard2.png)](https://gmic.eu/gmic300/fullsize/gmic_qt_clipboard2.png)
_Fig.2.8.3. Application via le terminal de la commande G’MIC copiée depuis le greffon G’MIC-Qt, sur d’autres images._



C’est une fonctionnalité vraiment pratique, pour peu que vous écriviez vos propres scripts de traitement. On peut ainsi profiter de la commodité de l’interface graphique du greffon (en particulier sa fenêtre de prévisualisation) pour régler les paramètres d’un filtre, mais aussi du confort de la ligne de commande pour appliquer un traitement par lots sur plusieurs dizaines ou centaines de fichiers images.



- Citons également entre autres améliorations, le fait que _G’MIC-Qt_ se dote d’un système de traduction amélioré (une version française complète est d’ailleurs prévue à court terme), et que l’_API_ proposée par le greffon a été enrichie pour permettre plus de contrôle par le logiciel hôte. Ces améliorations sont par exemple utilisées par _G’MIC-Qt_ pour proposer de [nouvelles options](https://github.com/c-koi/gmic-qt/blob/master/STANDALONE.md) de contrôle via un appel en ligne de commande.



# 3. Améliorations du cœur de G’MIC



Cette description des nouveautés visibles dans le greffon _G’MIC-Qt_ étant achevée, abordons les autres améliorations apportées par cette version _3.0_. Beaucoup de choses intéressantes ont été ajoutées au cœur du projet _G’MIC_, à savoir son interpréteur et sa bibliothèque de traitement d’image associée [_CImg_](http://cimg.eu), qui passent également en version _3.0_ pour l’occasion. Ces nouveautés sont certes moins visibles, mais tout aussi importantes puisqu’elles ont un impact potentiel sur l’ensemble des interfaces du projet !



## 3.1. Améliorations du langage et de l’interpréteur



- Commençons par la fonctionnalité qui a demandé le plus d’effort de développement, que nous avons déjà évoquée précédemment : l’implémentation d’une bibliothèque interne d’[apprentissage machine](https://fr.wikipedia.org/wiki/Apprentissage_automatique) (`nn_lib`). Cette bibliothèque permet de manipuler des [réseaux de neurones](https://fr.wikipedia.org/wiki/R%C3%A9seau_de_neurones_artificiels) génériques et prend en charge à la fois la phase d’apprentissage du réseau et la phase d’inférence. Cette bibliothèque a été ré-implémentée à partir de zéro, ce qui représente un effort réellement conséquent de recherche, d’implémentation et de tests (mais ça a été aussi un travail ô combien instructif !). `nn_lib` permet la construction dans _G’MIC_ de réseaux de neurones comportant des modules convolutifs ou complètement connectés, des modules de _pooling_, des modules résiduels, etc. Plusieurs optimiseurs ont été implémentés pour gérer l’apprentissage (`SGD`, `RMSprop`, `Adam`, `Adamax`) et il est donc déjà possible d’entraîner des réseaux pour certaines tâches de traitement d’images avec cette nouvelle bibliothèque. Le diagramme ci-dessous illustre par exemple l’une des architectures de réseau qui a été entraînée dans le cadre du nouveau filtre de débruitage **Repair / Denoise** cité auparavant.



[![gmic_denoise_nn](https://gmic.eu/gmic300/thumb/gmic_denoise_nn.png)](https://gmic.eu/gmic300/fullsize/gmic_denoise_nn.jpg)
_Fig.3.1. Une des architectures de réseau de neurones entraîné pour le nouveau filtre de débruitage « Repair / Denoise »._



Ce n’est bien sûr encore qu’un début, mais nous espérons généraliser l’utilisation de `nn_lib` pour élaborer de nouveaux filtres intéressants dans un avenir proche. Plus de détails techniques sur la bibliothèque `nn_lib` sont visibles dans [l’article dédié](https://discuss.pixls.us/t/machine-learning-library-in-gmic) (en anglais) sur le forum de _G’MIC_.



- Une autre amélioration notable concerne la ré-implémentation dans _G’MIC_ d’un interpréteur de langage [_Markdown_](https://fr.wikipedia.org/wiki/Markdown) étendu : le `gmd` (comme [_**G**’MIC **M**ark**d**own_](https://gmic.eu/reference/g_mic_markdown.html)). Ce moteur de rendu _Markdown_ est maintenant celui utilisé pour produire la [documentation de référence](https://gmic.eu/reference/) et les [pages de tutoriels](https://gmic.eu/tutorial/), visibles sur la page web du projet. Il est aussi utilisé pour l’affichage de l’aide sur le terminal lorsque l’on invoque _G’MIC_ en ligne de commande (avec `gmic -h` par exemple). L’apparition de ce nouvel analyseur _Markdown_ va donc de pair avec une amélioration globale de la documentation disponible pour le projet.



[![gmic_tutorial_reference](https://gmic.eu/gmic300/thumb/gmic_tutref.png)](https://gmic.eu/gmic300/fullsize/gmic_tutref.png)
_Fig.3.1. Le nouvel analyseur Markdown de G’MIC est utilisé pour le rendu de la documentation web de référence._



- La gestion de nouvelles palettes de couleurs personnalisées a été améliorée, avec l’introduction d’une nouvelle commande [`palette`](https://gmic.eu/reference/palette) mettant à disposition 34 palettes de couleurs prédéfinies, chacune composée de 256 couleurs _RGB_ (certaines étant récupérées depuis [CMOcean](https://matplotlib.org/cmocean/) et [LOSPEC](https://lospec.com/palette-list)) :



[![gmic_palettes](https://gmic.eu/gmic300/thumb/gmic_palettes.png)](https://gmic.eu/gmic300/fullsize/gmic_palettes.png)
_Fig.3.2. Ensemble des palettes de couleurs proposées par défaut dans G’MIC._



De plus l’utilisateur de l’interpréteur _G’MIC_ a maintenant la possibilité de définir et nommer ses propres palettes de couleurs qui seront utilisables dans les commandes [`map`](https://gmic.eu/reference/map) ou [`index`](https://gmic.eu/reference/_index), servant à appliquer ces palettes sur des images couleurs. Les dites palettes sont généralement utiles à des fins de visualisation couleur de données scalaires. Par exemple, la colorisation d’une [fractale de Mandelbrot](https://fr.wikipedia.org/wiki/Ensemble_de_Mandelbrot) peut se faire très simplement en _G’MIC_ avec la ligne de commande suivante :



```
$ gmic 600,600 mandelbrot -1.0132,-0.316356,-1.00227,-0.305418,512 map amiga7800
```






[![gmic_mandelbrot](https://gmic.eu/gmic300/thumb/gmic_mandelbrot.png)](https://gmic.eu/gmic300/fullsize/gmic_mandelbrot.jpg)
_Fig.3.3. Résultat de l’application de la palette de couleur `amiga7800` sur une fractale de Mandelbrot._



- Au niveau du rendu d’objets maillés en 3D, deux nouveautés sont à signaler : d’abord la ré-implémentation du visualiseur 3D (commande [`display3d`](https://gmic.eu/reference/display3d)) qui a été ré-écrit directement en langage _G’MIC_ et qui sera donc plus simple à maintenir et à faire évoluer.



[![gmic_solenoid](https://gmic.eu/gmic300/thumb/gmic_solenoid.png)](https://gmic.eu/gmic300/fullsize/gmic_solenoid.png)
_Fig.3.4. Aperçu du nouveau visualiseur 3D d’objets maillés de G’MIC._



Ensuite, notons la possibilité maintenant offerte d’exporter un objet 3D maillé construit dans _G’MIC_ (typiquement avec une génération procédurale) sous la forme d’un fichier `.obj` en format [_Wavefront_](https://fr.wikipedia.org/wiki/Objet_3D_(format_de_fichier)), un format _ASCII_ simple que la plupart des modeleurs 3D sait relire. Voici, illustré ci-dessous, un exemple d’importation d’un objet 3D généré récursivement sous _G’MIC_ et ré-importé dans [_Blender_](https://www.blender.org/), grâce à l’utilisation de ce format de fichier _Wavefront_.



[![gmic_blender](https://gmic.eu/gmic300/thumb/gmic_blender.png)](https://gmic.eu/gmic300/fullsize/gmic_blender.jpg)
_Fig.3.5. Importation dans Blender d’un objet 3D généré par G’MIC de manière procédurale._



- Toujours en restant dans le domaine des entrées-sorties, notons l’apparition ou l’amélioration du support de certains formats de fichiers, tels que ceux ayant les extensions `.png`, `.tiff`, `.csv`, `.webp`, `.arw`, `.cr2`, `.nef`, `.dng`, `.heic`, `.avif` (ces deux derniers n’étant cependant pas activés par défaut).



- Deux nouvelles commandes [`lorem`](https://gmic.eu/reference/lorem) et [`portrait`](https://gmic.eu/reference/portrait) apparaissent également et permettent de récupérer des images aléatoires à partir de deux services web différents : [_Lorem Picsum_](https://picsum.photos/) et [_ThisPersonDoesNotExist_](https://thispersondoesnotexist.com/). Elles sont assez pratiques pour tester des filtres rapidement sur des images quelconques, sans avoir à les stocker explicitement sur le disque dur. Par exemple, la commande :



```
$ gmic +lorem 800 +portrait 800
```







pourra vous afficher ceci :



[![gmic_lorem_portrait](https://gmic.eu/gmic300/thumb/gmic_lorem_portrait.png)](https://gmic.eu/gmic300/fullsize/gmic_lorem_portrait.jpg)
_Fig.3.6. Aperçu du résultat des nouvelles commandes `lorem` et `portrait`._



- Notons enfin que `gmic`, l’interface en ligne de commande de _G’MIC_, accepte désormais la définition de [points d’entrées](https://fr.wikipedia.org/wiki/Point_d%27entr%C3%A9e) dans des fichiers scripts d’extension `.gmic`, et que l’on peut donc rendre désormais de tels fichiers exécutables (avec le [Shebang](https://fr.wikipedia.org/wiki/Shebang)). Par exemple, sous _Unix_, le fichier `test.gmic` suivant pourra être rendu directement exécutable et lancé depuis un terminal :



```
#!/usr/bin/env gmic
# File 'test.gmic'
echo[] "Salut les amis de Linuxfr !"
```






## 3.2. Améliorations de l’évaluateur d’expressions mathématiques



Le domaine du traitement numérique des images se base essentiellement sur des modélisations mathématiques des images et des algorithmes que l’on souhaite appliquer. _G’MIC_, en bon professionnel du traitement d’images, possède donc son propre évaluateur d’expressions mathématiques, et celui-ci a aussi vu son état général s’améliorer avec le passage à cette nouvelle version _3.0_. Pour résumer, c’est plus de 40 nouvelles fonctions mathématiques qui ont été implémentées dans cet évaluateur ces deux dernières années, afin d’améliorer ses capacités de calcul :
`store()`, `date()`, `begin_t()`, `end_t()`, `merge()`, `f2ui()`, `ui2f()`, `ccos()`, `csin()`, `ctan()`, `ccosh()`, `csinh()`, `ctanh()`, `lerp()`, `maxabs()`, `minabs()`, `argmaxabs()`, `argminabs()`, `da_size()`, `da_insert()`, `da_push()`, `da_remove()`, `da_pop()`, `da_back()`, `isvarname()`, `resize()`, `fill()`, `repeat()`, `set()`, `deg2rad()`, `rad2deg()`, `swap()`, `vargkth()`, `vargmin()`, `vargmax()`, `vargminabs()`, `vargmaxabs()`, `vavg()`, `vkth()`, `vmin()`, `vmax()`, `vminabs()`, `vmaxabs()`, `vmed()`, `vprod()`, `vstd()`, `vsum()`, `vvar()`, `string()`.



Ces fonctions ont été ajoutées au fur et à mesure des besoins et aujourd’hui, de plus en plus de filtres complexes de _G’MIC_ en bénéficient. Un travail d’optimisation important a également été réalisé ces dernières années pour rendre cet évaluateur de plus en plus performant, notamment en favorisant le calcul parallèle lorsque cela est possible. Plutôt que de rentrer dans des détails techniques rébarbatifs sur l’implémentation et l’optimisation de ce module, je vous propose ici un exemple qui montre la façon dont on peut utiliser cet évaluateur dans un pipeline _G’MIC_. Ici, on cherche à produire une image de [Buddhabrot](https://fr.wikipedia.org/wiki/Buddhabrot), une représentation particulière de l’[ensemble de Mandelbrot](https://fr.wikipedia.org/wiki/Ensemble_de_Mandelbrot). Ci-dessous à gauche, on peut voir le contenu du fichier `buddhabrot.gmic` définissant la commande `buddhabrot`, qui produit l’image de droite. L’évaluateur d’expressions mathématiques de _G'MIC_ est appelé entre les lignes `9` et `27`, ce qui correspond donc à une unique expression. Comme on le voit, cet évaluateur est capable de compiler puis d’exécuter une expression qui se trouve être en réalité un vrai petit programme !



[![gmic_buddhabrot_all](https://gmic.eu/gmic300/fullsize/gmic_buddhabrot_all.png)](https://gmic.eu/gmic300/fullsize/gmic_buddhabrot_all.png)
_Fig.3.2.1. Génération d’une image de Buddhabrot avec un script G'MIC._



L’évaluateur mathématique est vraiment un élément essentiel du cadriciel _G’MIC_ et continuera probablement d’évoluer au fil des prochaines versions.



# 4. Autres informations notables



En a-t-on terminé avec cette dépêche ? Pas encore ! Car travailler sur le projet _G’MIC_, c’est évidemment passer beaucoup de soirées à faire de la recherche, de la programmation et du test de nouvelles fonctionnalités, mais une part importante du temps passé concerne également la gestion des éléments annexes, à savoir : répondre aux questions sur les forums ou les forges _github_, trouver des financements pour faire avancer le projet plus rapidement, ou encore communiquer autour du projet (par exemple en écrivant des dépêches _LinuxFr.org_ ☺ !). Et sur ces différents points, il s’est passé des choses appréciables, depuis fin 2019 :



- D’abord, nous avons eu le privilège d’obtenir deux financements (deux _CDD 12 mois_), dans le cadre de l’appel _« Soutien Plateforme »_ de l’[Institut INS2I](https://ins2i.cnrs.fr/) du CNRS. Ces financements ont permis consécutivement le recrutement de deux ingénieurs de développement pour travailler sur le projet _G’MIC_. Le premier (2018-2019), on le connait tous ici, puisqu’il s’agit de [Jehan](https://linuxfr.org/users/jehan) qui écrit les fameuses dépêches _LinuxFr.org_ sur _GIMP_ (et qui est par ailleurs contributeur majeur de _GIMP_). Nous avions d’ailleurs décrit ses apports dans [notre dépêche précédente](https://linuxfr.org/news/g-mic-2-7-0-une-rentree-pleine-de-style-pour-le-traitement-d-images).



- Le deuxième ingénieur (2019-2020), [Jonathan-David Schröder](https://github.com/myselfhimself) a réalisé un travail conséquent pour l’implémentation d’un _binding G’MIC_ pour le langage _Python_ : [https://pypi.org/project/gmic/](https://pypi.org/project/gmic/). Ce _binding_ est pour le moment figé à une version antérieure (_2.9.2_) de _G’MIC_ et il reste a priori quelques corrections à réaliser, mais c’est une interface qu’on aimerait bien mettre sur le devant de la scène. Espérons que cela suscitera l’intérêt de nouveaux contributeurs extérieurs, experts en _Python_, pourquoi pas ? En 2020, Jonathan-David a présenté l’avancement de son travail lors du [_Libre Graphics Meeting_](https://libregraphicsmeeting.org/2020/fr/index.html) qui a eu lieu en ligne. Sa présentation est disponible en cliquant sur le lien suivant :
[![video_lgm2020](https://gmic.eu/gmic300/thumb/small_video_lgm2020.png)](https://www.youtube.com/watch?v=qbJv7QScs3s)



Dans les deux cas, ces financements ont été fructueux et ont permis d’ouvrir le projet _G’MIC_ à d’autres horizons (sans parler du plaisir d’interagir avec ces deux ingénieurs de talent !).



- Une autre nouvelle notable concerne le volet « communication » autour du projet, avec le développement et la mise en place de la borne tactile **_Virtual Artist_** (« Artiste Virtuel » en français). Cette borne interactive montre le principe du transfert de style entre deux images. Elle permet d’initier le grand-public au domaine de l’algorithmique du traitement d’images, avec une application artistique directe et amusante. Elle est constituée d’une table tactile sur laquelle tourne un script _G’MIC_ qui implémente à la fois l’interface utilisateur et l’algorithme de transfert de style démontré. La vidéo ci-dessous illustre le fonctionnement de cette borne (cliquez sur l’image pour ouvrir le lien) :
[![Virtual Artist](https://gmic.eu/gmic300/thumb/gmic_virtual_artist.png)](https://www.youtube.com/watch?v=us_7SkNajm0)



**_Virtual Artist_** constitue un support intéressant pour la médiation scientifique auprès du grand-public. Elle a été utilisée par exemple lors du [_FÉNO 2021_](https://www.normandie.fr/feno) (Festival de l’Excellence Normande qui s’est tenu à Rouen), sur le stand du CNRS.



[![feno2021](https://gmic.eu/gmic300/thumb/feno2021.png)](https://gmic.eu/gmic300/fullsize/feno2021.jpg)
_Fig.4.1. La table tactile « Virtual Artist » du GREYC, en action, lors du FÉNO 2021._



- Et toujours pour rester dans le domaine de la communication, notons que _G’MIC_ a eu droit à une petite séquence vidéo de présentation lors de la [Fête de la Science 2020](https://www.fetedelascience.fr/), réalisée par le service communication de la [délégation CNRS Normandie](https://www.normandie.cnrs.fr/fr/delegation). Cliquez sur l’image ci-dessous pour découvrir cette vidéo :
[![video_fds2020](https://gmic.eu/gmic300/thumb/small_video_fds2020.png)](https://youtu.be/qP_rVje6VFA?t=214)



- Toujours en ce qui concerne la communication, nous voulions en profiter pour annoncer que la mascotte « Gmicky » du projet (le petit tigre magicien) avait été réalisée en crochet par Florence, de [Doomyflocrochet](https://www.doomyflocrochet.com/). Florence réalise des versions crochet de [mascottes de projets libres](https://www.doomyflocrochet.com/boutique/amigurumi-linux/) qui sont bien sympathiques, et qu’on vous invite à aller voir (et pourquoi pas, à commander).



[![Gmicky Crochet](https://gmic.eu/gmic300/thumb/gmicky_crochet.png)](https://www.doomyflocrochet.com/boutique/amigurumi-linux/gmicky-tigre-magicien-mascotte-gmic-en-coton-au-crochet/)
_Fig.4.1. « Gmicky », la mascotte du projet G’MIC, réalisée en crochet._



- Enfin, plus généralement, pour ceux qui souhaiteraient se plonger plus profondément dans la programmation d’algorithmes de traitement d’images, mentionnons la sortie du livre [« Le traitement numérique des images en C++ »](https://www.editions-ellipses.fr/accueil/13463-le-traitement-numerique-des-images-en-c-implementation-dalgorithmes-avec-la-bibliotheque-cimg-9782340045965.html) (Éd. Ellipses, 318 pages), que j’ai coécrit avec mes collègues de l'Université Clermont Auvergne, [Vincent Barra](https://perso.isima.fr/~vibarra/) et [Christophe Tilmant](http://christophe.tilmant.free.fr/), pendant la période de confinement de 2020. Vous y trouverez une présentation de [CImg](http://cimg.eu), la bibliothèque C++ de traitement d’images (dont je suis l’auteur) et sur laquelle la majeure partie des fonctionnalités de _G’MIC_ reposent, ainsi que des ateliers variés autour de différentes thématiques et applications du traitement d’images.



[![Book CImg](https://gmic.eu/gmic300/thumb/book_cimg.png)](https://www.editions-ellipses.fr/accueil/13463-le-traitement-numerique-des-images-en-c-implementation-dalgorithmes-avec-la-bibliotheque-cimg-9782340045965.html)
_Fig.4.2. Un livre pour approfondir ses connaissances en algorithmique du traitement d’images, avec la bibliothèque CImg, sur laquelle est basé G'MIC._



# 5. Et ensuite ?



Depuis 2008, _G’MIC_ n’a cessé d’être un projet actif, et ce, même si nous n’avons jamais défini de feuille de route très précise. Le développement de nouvelles fonctionnalités se réalise en fonction du temps et des opportunités de chacun, ainsi que des activités de recherche en traitement d’images que nous menons en parallèle dans notre équipe de recherche au laboratoire _GREYC_. Nous espérons seulement que ce temps ne finira pas inévitablement par nous faire défaut ! Avoir une activité de chercheur ou d’enseignant-chercheur semble parfois assez incompatible avec une activité de développement logiciel libre, qui est un travail à la fois très prenant et en même temps pas forcément très bien valorisé lors d’un suivi de carrière. Il peut donc être tentant de se focaliser sur des activités plus « rentables » d’un point de vue professionnel.



À titre personnel, je souhaiterais donc adresser des **remerciements appuyés** au [laboratoire _GREYC_](https://www.greyc.fr/) (notamment la direction, le service gestion et le service DDA), la [Délégation _CNRS_ Normandie](https://www.normandie.cnrs.fr/fr/delegation) (notamment le service Valorisation, le service Communication et le service _RH_), l’[Institut _INS2I_](https://www.ins2i.cnrs.fr/fr/institut) du _CNRS_, l’association [_LILA_](https://libreart.info/fr/), mon collègue [Sébastien Fourey](https://foureys.users.greyc.fr/Fr/index.php) (co-développeur principal du projet), les membres de l’association [_PIXLS.US_](https://pixls.us/) (qui héberge [notre forum de discussion](https://discuss.pixls.us/c/software/gmic/)) ainsi que tous les contributeurs au projet, les utilisateurs faisant des retours gentils, [utiles](https://github.com/dtschump/gmic/issues), ou même [financiers](https://libreart.info/en/projects/gmic). Toutes ces personnes qui ont cru au projet à un moment donné et en la capacité de ses développeurs nous ont apporté leur soutien d’une manière ou d’une autre. Cela nous a permis de ne jamais abandonner le développement de _G'MIC_, depuis 2008. Qu’ils en soient vraiment remerciés !



Cette dépêche est quasiment terminée, merci d’avoir tenu jusqu’au bout ! J’essayerai autant que possible de répondre aux questions que vous pourrez poser dans les commentaires.



# 6. Ressources complémentaires



Pour vraiment clore cette dépêche et contenter les lecteurs encore réveillés et qui pourraient être restés sur leur faim, voici une petite sélection de vidéos à regarder, pour occuper les longues soirées d’hiver qui arriveront dans les prochaines semaines :



- Découverte de G’MIC pour GIMP (en français) : _« GIMP 2.10.22 : Tuto 198 ( Filtres G’Mic ) »_.
[![video_gmic_gimp](https://gmic.eu/gmic300/thumb/small_video_gmic_gimp.png)](https://www.youtube.com/watch?v=rNXj83DVmrM)



- Découverte de _G’MIC_ pour _Affinity Photo_ (en français) : _« Tutoriel sur l’installation et l’utilisation du plugin G’MIC pour Affinity Photo »_.
[![video_affinity_fr](https://gmic.eu/gmic300/thumb/small_video_affinity_fr.png)](https://www.youtube.com/watch?v=VkUXiV1rJJU)



- Découverte de _G’MIC_ (en anglais) : « G’MIC -- Free Image Manipulation Powerhouse ».
[![video_gmic_powerhouse](https://gmic.eu/gmic300/thumb/small_video_gmic_powerhouse.png)](https://www.youtube.com/watch?v=1agzsBn7ZE0)



- Découverte de _G’MIC_ (en anglais) : _« G’MIC: An Amazing, Free Plugin »_.
[![video_gmic_amazing](https://gmic.eu/gmic300/thumb/small_video_gmic_amazing.png)](https://www.youtube.com/watch?v=p3h8SASo1nI)



- Présentation de différentes techniques pour transformer une photographie en _cartoon_ (en anglais) : _« G’mic for Krita - Three ways to turn a photograph into a cartoon »_.
[![video_krita_cartoon](https://gmic.eu/gmic300/thumb/small_video_krita_cartoon.png)](https://www.youtube.com/watch?v=d0KiBfRLiUQ)



- Présentation de G’MIC pour Krita (en anglais) : _« G’mic for Krita - Step by Step tutorial on how to use this amazing FREE image manipulation plugin »_.
[![video_krita_gmic](https://gmic.eu/gmic300/thumb/small_video_krita_gmic.png)](https://www.youtube.com/watch?v=pZHS7lgUSM4)



- Présentation _G’MIC_ au _Libre Graphics Meeting 2021_ (en anglais) : _« How to make 890+ Color LUTs fit in 3.3Mb ? »_.
[![video_lgm2021](https://gmic.eu/gmic300/thumb/small_video_lgm2021.png)](https://www.youtube.com/watch?v=YlIDXVDI15E)



- Utilisation du filtre **Degradations / Rain & Snow** de _G’MIC_ (en français) : _« Tutoriel Krita - Comment dessiner la pluie dans Krita avec G’MIC »_.
[![video_rain](https://gmic.eu/gmic300/thumb/small_video_rain.png)](https://www.youtube.com/watch?v=7V1D5OlUq4o)



- Utilisation du filtre **Artistic / Hough Sketch** de _G’MIC_ (en français) : _« Amusez vous avec Hough Sketch de G’MIC dans GIMP »_.
[![video_hough_sketch](https://gmic.eu/gmic300/thumb/small_video_hough_sketch.png)](https://www.youtube.com/watch?v=5wM1-Wg8bhg)



- Utilisation du filtre **Artistic / Stylize** de _G’MIC_ (en anglais) : _« Using the G’MIC Stylize filter in Krita with flat texture patterns »_.
[![video_texture](https://gmic.eu/gmic300/thumb/small_video_texture.png)](https://www.youtube.com/watch?v=BwZNyNo0yjY)



- **Note finale** : cette dépêche est un résumé (si, si !) des notes de versions détaillées suivantes : [notes de version _2.8_](https://discuss.pixls.us/t/release-of-gmic-2-8), [notes de version _2.9_](https://discuss.pixls.us/t/release-of-gmic-2-9), [notes de version _3.0_](https://discuss.pixls.us/t/release-of-gmic-3-0).