This blog tries to present some advanced tips and tricks to perform smart image processing and graphics operations, using open-source software and libraries only.

The themes addressed here include:

  • The presentation and illustration of some extended features available for GIMP, Krita and other open-source image editing tools, through their available plug-ins (such as the G’MIC plug-in for instance).


  • The use of command-line-based image processing tools (such as G’MIC, ImageMagick or GraphicsMagick) in order to transform images and videos, or to create weird (but nice!) synthetic 2D and 3D graphics from scratch.


  • The coding of specific image processing operators (mainly in C++), for instance with the use of the CImg Library.


Some posts will be quite technical, and not always suited for complete beginners in image processing. I apologize in advance 🙂

Basically, I want to show that we can perform quite complex image processing operations only with the use of open-source tools. You don’t actually need Photoshop or other closed-source (and expensive) software to do real graphics!

Who am I ?

I am David Tschumperlé, a permanent researcher working in the field of image processing in a daily basis, since 1999. I work for the CNRS institute, more particularly in the Image Group at the GREYC laboratory in Caen / France.


I have been particularly interested in PDE’s and variational methods for processing multi-valued images in a local or non-local way, in order to solve a wide range of problems in the medical imaging, photo retouching, or artistic fields. I have written more than 60 articles and papers about my research work, published in recognized international journals and conferences.

I’m also the manager and main programmer of two open-source projects, both focused on the processing of generic images:

logo_gmic G’MIC is an open and full-featured framework for image processing, providing several different user interfaces to convert/manipulate/filter/visualize generic image datasets, from 1d scalar signals to 3d+t sequences of multi-spectral volumetric images. I’ve started the G’MIC project in 2008.
logo_cimg CImg is a small, open source, C++ toolkit for image processing. It is easy to use, efficient and is intended to be a very pleasant toolbox to design image processing algorithms in C++. Due to its generic conception, it can cover a wide range of image processing applications. I’ve started the CImg project in 2000.