Release of G'MIC

Hi Folks !

I’m happy to announce the release of the version of the G’MIC image processing framework!
I’ve spent a lot of my vacation times to code new features, debug, test, and improve the whole thing.
I hope you will enjoy it !

Here are the details of the new features added to this G’MIC release:

New features:

  • [all] New command -input_glob insert multiple images whose filenames match the specified glob pattern (such as *.jpg). Very convenient for users of the standard Windows console. This command has also an equivalent shortcut -ig.
  • [all] New native command -_status (eq. to -_u) is used to escape any backslash in a status string so that strings containing escape sequences can be easily manipulated.
  • [all] New functions argmin(), argmax(), dowhile(), for() and print() available in the math parser. A math expression can now define its own loops, which opens a lot of perspectives to define new custom algorithms that work at a pixel level.
  • [all] New command -fibonacci which returns the Nth value of the Fibonacci sequence.
  • [gimp] New filter Artistic / Vector painting which creates vectorized abstraction of images.

Improvements / Changes :

  • [all] Folder used to store G’MIC resources and configuration files is not located in $XDG_CONFG_HOME/ (freedesktop standard) when possible.
  • [all] Various optimizations have been done after code profiling. In particular, command -window has been optimized a lot. Parsing function for image selections is also faster for the most common cases.
  • [all] Introduced the notion of G’MIC Standard Library (stdlib) in the source code. Replace the term default commands that was used before.
  • [all] Improved granularity of the abort feature. Testing cancellation of a G’MIC pipeline can be done directly inside CImg methods now.
  • [gimp] Make the interface more responsive when computing filter preview. Parameters of the filters can now be changed even if the preview has not completed.
  • [gimp] Allow filters to hide the zoom buttons below the preview widget. Can be useful when zooming in/out makes the preview very inaccurate.
  • [gimp] Filter tree keeps keyboard focus when a filter is selected.
  • [gimp] Add a warning message when someone changes the zoom factor of the preview for a filter that does not support it (will render an non-accurate preview).
  • [gimp] Add a Reset zoom button to reset zoom factor to best value for the current filter.

Bug fixes:

  • [all] Fix small parsing bug in certain cases where double quotes are not closed.
  • [all] Fix bug preventing to read images from stdin when used format was not in .cimg[z].
  • [all] Fix parallelization bug in 3d object rendering function.
  • [all] Fix unreleased mutex bug that may happen in 3d object rendering function.
  • [all] Plus various minor bug fixes in the G’MIC standard library.
  • [all] Fix support for saving .pan files (PANDORE format) on 64bits systems.
1 Like

Did you mean :wink:

That is what I meant yes :slight_smile:

This seems to be an awesome plugin, but i am getting a negative from Panda Security… Any comment on the issue?

Did you download it from ? If so, I’d say your antivirus is definitely giving you a false positive!

Yes i clicked the direct link at the top of the page… Ok kool. Thanks

1 Like

If it helps to alleviate any concerns you might have, @David_Tschumperle is the creator of G’MIC

Ok, i did post about it in his plug-in forum but no response as yet…

Well, I don’t know really what Panda security is, I develop and run G’MIC mainly on Linux.
I use a Virtual machine to compile G’MIC for Windows. This machine should be clean, as I use it only for that task (I’ve only installed the set of tools to compile G’MIC on it). So it’s highly probable that your antivirus or whatever it is gives you a false positive about the G’MIC plug-in.
But really, I can’t say anything else.

1 Like

Ok thanks man! Cheers!

Is it just me, or is using amazing software created by real people - and then being able to communicate directly with those people really rather exciting ?

Thank you David for software that helps me realise my artistic visions !

1 Like

I absolutely need to make a body sock now, these are so neat. :slight_smile:

1 Like

Take what you see as very much experimental work in progress, so many things that can be improved, but it was so much fun it didn’t really matter. Next time we will get a bit more out of it :smile:

1 Like

Back from holidays… I’ve already fixed some bugs, and released a pre-version for version
This should be the version you get when you download from
If you encounter any issue, please report them so I can improve the software as much as I can.


Welcome back! :smile:

1 Like

Hi David, welcome back :smiley:.
Today I was playing with the euclidean to polar transformation and I noted you got an unused variable ( n ) .
I was wondering what modifies that variable?

I don’t see an unused variable in -polar2euclidean nor -euclidean2polar, at least in the latest version of gmic_def.gmic. Maybe you are referring to an older version ? (current is


euclidean2polar : -skip ${1=50%},${2=50%} -check "${3=1}>0 && isint(${4=1}) && $4>=0 && $4<=2"
  -e[^-1] "Apply euclidean to polar transform on image$?, with center point ($1,$2), power $3 and "${-arg\ 1+$4,dirichlet,neumann,periodic}" boundary conditions."
  -v - -repeat $! -l[$>]
    cx={if(${-is_percent\ $1},$1*(w-1),$1)}
    cy={if(${-is_percent\ $2},$2*(h-1),$2)}
    -f 'r=x*$R/(w-1);a=y*2*pi/(h-1);i($cx+r*cos(a),$cy+r*sin(a),z,c,1,$4)'
  -endl -done -v +

$3 it’s never used.

1 Like

Ha yes, correct. I need to clean this.
Thanks !

EDIT : This has been fixed! Thanks again for reporting !