G'MIC is a full-featured open-source framework for digital image processing, distributed under the CeCILL free software licenses (LGPL-like and/or GPL-compatible). It provides several different user interfaces for converting, manipulating, filtering and visualizing generic image datasets, ranging from 1D scalar signals to 3D+t sequences of multi-spectral volumetric images, which naturally includes 2D color images. These user interfaces are:
- 1 - gmic, a command-line interface for using G'MIC's image processing features from a shell. In this context, G'MIC can be viewed as a friendly companion to the ImageMagick or GraphicsMagick software suites.
- 2 - libgmic, a small, portable, thread-safe, multi-threaded C++ image processing library designed to be linked with third-party applications. Its simple API allows developers to integrate all G'MIC features into their own software without much effort (a C API is available as well).
- 3 - G'MIC-Qt, a plug-in designed to bring G'MIC's capabilities to image editing applications like GIMP, Krita, Photoshop, Affinity Photo, PaintShop Pro, PhotoLine and Paint.NET. More than 600 filters are already available, sorted by category (Artistic, Black & White, Colors, Contours, Deformations, Degradations, Details, Film emulation, Frames, Layers, Light & shadows, Patterns, Rendering, Repair, Sequences, etc.).
- 4 - G'MIC Online, a web service that lets users apply image processing algorithms to their images, directly from a web browser.
- 5 - ZArt, a Qt-based interface for real-time processing of video streams from webcams or video files.
Other open-source projects integrating G'MIC features include:
- EKD, free software dedicated to post-production processing for videos and images.
- Flowblade, a multitrack non-linear video editor for Linux released under the GPL 3 license.
- Photoflow, a fully non-destructive photo retouching program.
- Veejay, a visual instrument and real-time video sampler.
You can verify that G'MIC is working correctly by running these two commands, which execute all the commands and filters available in the framework:
$ gmic input_text 'https://gmic.eu/gmic_stdlib.$_version' parse_cli images
and
$ gmic input_text 'https://gmic.eu/gmic_stdlib.$_version' parse_gui images
Please make sure you run these commands in an empty folder, as they generate a lot of new image files.
To cite G'MIC in your own publications, please cite the JOSS article, published in January 2025:
-
D. Tschumperlé, S. Fourey and G. Osgood (2025). G'MIC: An Open-Source Self-Extending Framework for Image Processing, Journal of Open Source Software, 10(105), 6618, https://doi.org/10.21105/joss.06618
-
Corresponding BibTeX entry:
@article{Tschumperlé2025,
doi = {10.21105/joss.06618},
url = {https://doi.org/10.21105/joss.06618},
year = {2025},
publisher = {The Open Journal},
volume = {10},
number = {105},
pages = {6618},
author = {David Tschumperlé and Sébastien Fourey and Garry Osgood},
title = {G'MIC: An Open-Source Self-Extending Framework for Image Processing},
journal = {Journal of Open Source Software}
}

