This is the changelog of the G’MIC software project, until the release of the 3.5 version.
It lists all new features and changes done since the previous major version 3.4.0.
New features:
-
[stdlib_350]
nn_lib
: Multiple neural networks can now be handled at the same time within the library. -
[gmic-qt-344] New filter Repair / Upscale [CNN2x] doubles image size using a small convolutional neural network (CNN).
-
[stdlib_344]
nn_lib
: Implementation of gradient clipping and L2 weight regularization for neural networt trraining. -
[core-342] Native implementation of the
softmax()
function, both with commandsoftmax
and math functionsoftmax()
. -
[gmic-qt-341] Add native preview splitter in the G’MIC-Qt interface.
-
[stdlib-341] New command
input_normalized
(shortcut:in
) loads an image and ensures its value range is inside [0,255]. Useful to load images that can be either 8bits/channel or 16bits/channels without worrying about normalizing the value range. -
[stdlib-343] New commands
isinf
andisnan
select respectivelyinf
andnan
values in selected images. -
[core-343] Add native I/O support for
.webp
files (enabled by default for Linux builds).
Modifications / Optimizations :
-
[core-350] Command
output
: When saving .png files, it is now possible to force the bit depth used in the saved file. -
[core-350] Command
window
: When command is invoked with a single argument like200%
, makes it also the default value for the second argument. -
[core-350] Commands
convolve
andcorrelate
have been partially recoded. List of arguments have changed to reflect these changes. -
[gmic-qt-342] Add code to be compatible with upcoming GIMP 3.0 plug-in API (cool contribution from Host/Gimp: convert to new GimpProcedureConfig APIs by berrange · Pull Request #208 · c-koi/gmic-qt · GitHub).
-
[gmic-qt-342] New keyboard shortcut
CTRL+SHIFT+P
enables/disables preview splitter. -
[core-341] Command
mproj
has been recoded and optimized. -
[stdlib-341] Hide non-native preview splitter of G’MIC-Qt filters, when G’MIC version number is 3.4.1+ (use native G’MIC-Qt preview splitter instead).
-
[stdlib-343] Command
autocrop
converted from native to custom command of thestdlib
, with newaxes
option added. Commandautocrop_coords
has been recoded from scratch, with newaxes
option added as well. -
[stdlib-344]
nn_lib
: Implements Cosine Annealing LR scheduler as an option for the trainer. Also implements pixel shuffle layer for image up/down-scaling. -
[math-core-343] Function
sort()
: Add optional argument that specifies the index of the sorted values, when dealing with multi-valued blocks. -
[math-core-344] Function
isin()
: Detect and optimize case where every given argument is a constant (so returned boolean can be computed at compile time).
Bugfix :
-
[stdlib-344]
nn_lib
: A lot of bug fix and various improvements in various kind of network layers (normalization, strided convolution). -
[stdlib-343] Command
input_gpl
: Fix file parsing bug. -
[gmic-qt-342] Fix bug in native preview splitter (reported here: https://discuss.pixls.us/t/half-preview-left-or-right-bug-in-3-4-1
-
[core-341] Command
polygon
: Fix argument parsing bug that prevented filling a polygon with a negative-value color. -
[math-core-343] Fix/recode function
v()
that generates random integers to make it work correctly with larger ranges. -
[math-core-343] Fix functions
operator=()
,find()
andsame()
, when value or value sequence to search for or to compare containNaN
values.