En ces temps de vacances d'été, on a rarement envie de rester le nez collé devant un écran d'ordinateur, pour programmer ou faire du traitement d'image. Mais si vous êtes comme moi, et que vous travaillez en Normandie (à Caen), alors c'est différent, car il vaut mieux de toute façon être au sec à l'intérieur, que dehors sous la pluie. Comme dirait un collègue, l'été en Normandie, cette année, c'était le 20 juillet.
Bref, du coup, ça laisse un peu le temps de bosser, et je suis heureux de vous annoncer la sortie de la version 1.3.2.1 de G'MIC (GREYC's Magic Image Converter), qui est un système ouvert et libre pour le traitement d'image (et pas seulement pour les normands). J'ai déjà eu l'occasion de parler de G'MIC sur linuxfr, ici et ici. Pour résumer :
- G'MIC définit un langage rudimentaire (et simple) pour définir des enchaînements (pipelines) d'algorithmes de traitement d'images sur des listes d'images d'entrées. Ces pipelines peuvent être réutilisés par la suite, et viennent donc enrichir le langage. Un exemple de fichier de définitions de fonctions personnalisées peut être vu ici. On peut illustrer ce fait en considérant par exemple qu'un effet cartoon sur une image pourrait être obtenu en combinant le résultat d'une détection de contours et d'une quantification de couleurs, la détection de contours pouvant elle même être estimée par un seuillage binaire d'une norme de gradient, etc.... Créer de tels pipelines donnent des possibilités (presques) infinies en termes d'effets ou de filtres que l'on peut obtenir sur des images.
- G'MIC fournit le code source d'une implémentation libre d'un interpréteur de ce langage, qui peut être ainsi utilisé dans n'importe quel programme extérieur, pour profiter rapidement de tous les traitements disponibles dans G'MIC.
- G'MIC fournit également deux interfaces utilisateurs pour utiliser cet interpréteur : l'une sous forme d'un exécutable gmic à appeler depuis la ligne de commande, et l'autre sous forme d'un greffon pour GIMP, comprenant une interface graphique utilisable par tout un chacun. La version ligne de commande est donc idéologiquement assez proche de l'utilitaire convert de la suite ImageMagick. Le greffon est plus original, et se rapproche dans l'idée de l'excellent greffon Mathmap dont les fonctionalités sont par contre uniquement disponibles à l'intérieur de GIMP.
La version 1.3.2.1 de G'MIC apporte de nombreuses corrections de bugs et d'améliorations du langage, permettant d'avoir notamment de nouveaux filtres/effets disponibles dans le greffon pour GIMP. G'MIC est un projet encore jeune (moins d'un an), et qui se stabilise petit à petit.
Parmi les filtres nouveaux, intéressants ou originaux, on peux noter :
- De nombreux mixeurs de couleurs, dans des espaces divers et variés (RGB,YCbCr,Lab,HSV,CMYK) comme ici par exemple.
- Un rehausseur de contraste local qui permet de faire des effets amusants, en rehaussant les couleurs ou les structures.
- L'inclusion de filtres morphologiques rapides.
- L'extraction d'isophotes dans des images, comme ici par exemple.
- L'amélioration de nombreux filtres déjà existants comme "Polaroid" et "Reflection" qui permettent de créer ce genre d'effets en 3 clics.
A noter également que le greffon de G'MIC est traduit en 4 langues (Français, Italien, Catalan et Anglais), et que vous êtes plus que bienvenus si vous souhaitez aider à la traduction de l'interface (les filtres eux, ne sont pas traduits, le travail requis pour la traduction est donc très réduit).
Pour conclure, pas de grands bouleversements dans cette version 1.3.2.1, mais de petites améliorations et des nouveautés qui je l'espère apporteront de la fraicheur aux traiteurs d'image de toute sorte, infographistes, artistes ou programmeurs.
Bonne rentrée à tous !
# Niveau compilation
Posté par Pierre Bourdon . Évalué à 4.
[^] # Re: Niveau compilation
Posté par David Tschumperlé (site web personnel) . Évalué à 6.
La réponse peut paraitre crue, mais c'est malheureusement vrai.
Nous avons fait quelques tests ici pour déterminer la cause, et il s'avère que g++ bouffe une quantité gigantesque de RAM lors de la phase d'optimisation. En supprimant les optimisations '-O0' à la place de '-O3', G'MIC se compile sans problème même avec 512Mo de RAM en un temps tout à fait acceptable (quelques minutes). Il doit y avoir un flag magique à trouver, je vais peut-être essayer avec d'autres compilo (icc) qui m'ont l'air moins gourmand en ressource pour l'optimsation.
David.
[^] # Re: Niveau compilation
Posté par patrick_g (site web personnel) . Évalué à 4.
[^] # Re: Niveau compilation
Posté par David Tschumperlé (site web personnel) . Évalué à 4.
J'avais fait un bug report g++ (pour un truc mineur surement facile à corriger) qui a mis plus d'un an avant d'être corrigé, donc je suppose qu'il vaut mieux arriver avec le maximum d'indices pour espérer quelque chose de concret (en même temps je les comprend un peu!)
David.
[^] # Re: Niveau compilation
Posté par liberforce (site web personnel) . Évalué à 1.
[^] # Re: Niveau compilation
Posté par David Tschumperlé (site web personnel) . Évalué à 3.
David.
[^] # Re: Niveau compilation
Posté par Thomas Douillard . Évalué à 2.
Si je me souviens bien ta bibliothèque tient dans un header, ça doit être pénible si t'es obligé de tout recompiler à chaque fois.
[^] # Re: Niveau compilation
Posté par rewind (Mastodon) . Évalué à 2.
# Mise à jour : G'MIC 1.3.2.2
Posté par David Tschumperlé (site web personnel) . Évalué à 1.
Des copies d'écran de cette nouvelle possibilité sont disponibles à [http://www.flickr.com/photos/90104203@N00/3820657222] et [http://www.flickr.com/photos/90104203@N00/3820657084/].
Un exemple de gif animé généré par ce procédé est visible ici : [http://www.greyc.unicaen.fr/~dtschump/cube3d.gif].
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.