Hello folks !
This is the changelog for the release of a new minor version (numbered 2.0.3) of the G’MIC image processing framework. This new stable version stays (mostly) compatible with the previous version 2.0.2.
G’MIC (GREYC’s Magic for Image Computing) is a full-featured open-source framework for image processing. It provides several different user interfaces to convert/manipulate/filter/visualize generic image datasets, ranging from 1d scalar signals to 3d+t sequences of multi-spectral volumetric images, thus including 2d color images.
- G’MIC main project page : http://gmic.eu
- G’MIC download : http://gmic.eu/download.shtml
- G’MIC web service : https://gmicol.greyc.fr/
- G’MIC language tutorial pages : http://gmic.eu/tutorial/basics.shtml
The following is the full Changelog of the version 2.0.3, as compared to the previous stable version 2.0.2.
- [gmic-qt] A new G’MIC plug-in for Krita has been implemented, based on our latest Qt-based generic plug-in code, thanks to the tremendous work of Boudewijn Rempt and Sébastien Fourey. This means we should be able to update the plug-in for Krita more regularly, just like the plug-in for GIMP. The G’MIC-Qt plug-in for Krita is already provided in the latest stable release of Krita (3.2.0).
- [gmic-qt] New filter Deformations / Square to circle implements a square to circle mapping (forward and backward), as described in this page.
- [gmic-qt] New filter Degradations / JPEG artefacts simulate the effect of JPEG compression with low quality on an image, based on the quantization of 8x8 DCT blocs.
[stdlib] New command
-tensors3dwhich generates a 3d representation of a 3x3 tensor field.
[stdlib] New command
-resize_mnwhich implements the Mitchell-Netravali filter for image upscaling (one family of bicubic kernels).
[stdlib] Filter Colorize lineart [smart-coloring] gets a new mode to automatically ‘clean’ a color layer done (quickly) by the user.
[core] New substituting expression
$(in a command) is replaced by the list of image indices composing the image selection used when invoking that command.
[core] Math parser defines a bunch of new functions
im(), iM(), ia(), iv(), is(), ip(), ic(), xm(), xM(), ym(), yM(), zm(), zM(), cm()and
cM()which compute the minimum, maximum, average, variance, sum, product, median and min/max coordinates in a possibly dynamic-sized image (same as variables
im, iM, ia, iv, is, ip, ic, xm, xM, ym, yM, zm, zM, cm, cMbut used when the image has a dynamic size, i.e. when function
resize()has been used in the expression).
[core] New math parser functions
ceil()in math parser, that can replace the use or
[core] Overloads of math parser functions
display(#ind)now allows to print info or display an image from a math expression. New function
prints()allows to print a char-valued vector-expression as a string.
[core] Math parser function
end()has now a silent return, so that it can be located at the very end of the math expression without interfering with its values.
[core] Image viewer now limits the display of pixel values with a label containing at max 16 channels (8 first, and 8 last), in case the image has more than 16 channels. It also displays the length of the selected vector (diagonal of the selection box).
-close_binarygets a hatch detection module (hence also filter B&W / Smart coloring), so that less small color regions are produced when using the filter to auto-color a lineart.
- [gmic_qt] In case of filter using randomness, filter rendering is now using the same random seed than the last preview, to get a closer match between preview and rendering results.
[core] Fix issue with variables starting with letter
Zthat couldn’t be assigned.
[gmic-qt] Fix order of layer when Input mode is set to Active and above.
[gmic-qt] Fix access to folder names containing accentuated characters, when required (e.g. in filter Film emulation / User-defined). Thanks to @sguyader for the bug report !
[gmic-qt] Fix on-the-fly changes of the
color()parameter in a filter, when passing from RGBA to RGB colors and vice-versa.
[gmic-qt] Better management of filters that output layers located at different positions.
And as always, many minor bug fixes !