Release of G'MIC 2.8

A big “Thank you !” to the 49 sponsors who donated to support our project, in October and November !


I’m currently working on improving the way the verbosity of the messages is managed in G’MIC.
Big changes on the way.
Basically, the use of the commands verbose will be very reduced in the future, most of the commands just won’t need to deal with that, as things will be done automatically.

Still a lot of things to fix right now, but I’m on the right way :slight_smile:


Bug? I probably ran out of memory, a usual occurrence.

gmic a0.gmz afre_y50 1 colormap 0
[gmic]-0./ Start G'MIC interpreter.
[gmic]-0./ Input file 'a0.gmz' at position 0 (1 image 6016x4010x1x3).
[afre]^_^) y50: Compute luminance (D50 Rec.2020) of image [0].
[gmic]-1./ Estimate full colormap for image [0].terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc

It works for me:

$ gmic sp lena,6000 afre_y50 1 colormap 0
[gmic]-0./ Start G'MIC interpreter.
[gmic]-1./ Input sample image 'lena' (1 image 6000x6000x1x3).
[afre]^_^) y50: Compute luminance (D50 Rec.2020) of image [0].
[gmic]-1./ Estimate full colormap for image [0].
[gmic]-1./ Display image [0] = '[colormap of lena]'.
[0] = '[colormap of lena]':
  size = (273023,1,1,1) [1066 Kio of floats].
  data = (27.632,27.6776,27.911,27.9566,28.1901,28.3529,28.3985,28.4441,28.5864,28.632,28.6776,28.7232,(...),225.902,225.922,225.938,225.948,225.983,225.993,226.029,226.08,226.09,226.126,226.135,226.171).
  min = 27.632, max = 226.171, mean = 136.19, std = 38.806, coords_min = (0,0,0,0), coords_max = (273022,0,0,0).

I have 4GB of RAM, and run Ubuntu Linux.
Are you running it on Windows ?

I’m planning to release stable version 2.8.0 in the next days.

Do you have any suggestions for improvements that can be done in a reasonable amount of time ?

Maybe some more explanation of the new verbosity? I like it, still for
gmic osteo +pink asf,5
level 9 (v 9) was necessary to get the most of it, to see what happens, including the external commands in this example.
Is it possible that program control commands like repeat change the verbosity level too?

The post I’ve made explain it all. There is not much more to say about this.
The big difference compared to the previous behavior, is that each time you enter a new command, the verbosity is decreased, so if you plan to display some messages on the console in a command that is called in a ‘deep’ scope, then you can force it to be verbose by starting it with v 0.

  • 2019/12/04 : Release for version 2.8.0 !

Win10 with 4GB RAM.

I’ve tested yesterday on my virtualized Win7, with 3Gb RAM, and it worked…
4Gb seems more than enough for doing this operation BTW.

I just tried to compile from git using:

git clone && git clone && make -C gmic/src CImg.h gmic_stdlib.h && cd gmic-qt && qmake HOST=gimp && make

Compilation failed soon after download:

Project MESSAGE: GMIC_PATH was not set: Found gmic sources in ../gmic/src
Project MESSAGE: G'MIC repository was found (../gmic/src)
Project MESSAGE: G'MIC version is 281
Project MESSAGE: CImg version is 280
Project ERROR: Version numbers of files 'gmic.h' ( 281 ) and 'CImg.h' ( 280 ) mismatch

Do I need to update the command line instructions or is it something else?

It should be fixed now in the repository.
Try $ make clean in src/ and try again :slight_smile:

Compiled & working thanks! :grinning:

1 Like

Minor flaw with the command
gmic v 0 sp ?
It terminates immediately on my Mac. Is that by purpose?

gmic version
[gmic]-0./ Start G’MIC interpreter.

gmic: GREYC’s Magic for Image Computing: command-line interface
Version 2.8.1 (pre-release #191205)

    Copyright (c) 2008-2020, David Tschumperle / GREYC / CNRS. 

[gmic]-0./ End G’MIC interpreter.

Looks like a bug in 2.8.1. i’ve made some modifs this morning, and this is a regression.
I’ll fix this ASAP.

Ha sorry, not a bug, it is by purpose indeed :slight_smile:

Now, when a pipeline ends its execution, images are not displayed automatically if the verbosity level is <=0. So, gmic v 0 sp d basically solves this “issue”.

Ok, acceptable. Still it could be mentioned in the verbose command description. Image and text is slightly different for me.
Autom. display of remaining images is suppressed for verbosity<=0

a0.gmz stores a 32-bit linear float image of One of if not my best Photograph. exported by PhotoFlow. Although slow, I normally don’t have any issues processing it. The error happened when I did colormap 0, which I rarely use on large images. Not easy for me to test. It takes an inordinate amount of time to run this command. I tried it on another similar file just now. It hasn’t stopped running and I can’t keep it running, so I aborted it. Hope you find a solution. bad_alloc doesn’t sound good.

It simply means, the program tried to allocate a certain amount of memory and didn’t get it.

I know and don’t like it. I want it to work. :pleading_face:


retinex: Is offset 1 or 5?


Again, which is it? Is scheme 0 or 3? Verified that it is 0. Should it be? What do the others mean?