Skip to content

Instantly share code, notes, and snippets.

@prokoudine
Last active December 24, 2015 09:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save prokoudine/6780677 to your computer and use it in GitHub Desktop.
Save prokoudine/6780677 to your computer and use it in GitHub Desktop.

GEGL port

High bit depth support

Thanks to GEGL, our new image processing library, GIMP now supports manipulation of pixels with 16, 32 or 64 bit depth per color channel precision, both integer and float. This greatly reduces the loss of colors which occurs at 8bit precision to the rounding of color values and improves the rendering of gradients.

You will find the precision switch in the Image menu. Whenever you load an image that was saved in higher bit depth precision (see File Formats section below), GIMP automatically switches to the relevant mode.

File Formats Support

Thanks to the GEGL port it's now possible to make a much better use of various file formats that support high bit depth data. In particular, PNG, TIFF, and FITS plug-ins support both loading and saving of 16/32/64bit data, and the PSD plug-in supports the loading of 16/32bit files (GSoC2013 project by Simon Lui).

Moreover, support for OpenEXR and RGBE file formats was added to benefit workflows where high dynamic range imaging is critical.

Additionally the loading and exporting of WebP images was added, currently without support for XMP metadata, ICC profiles, and animation.

OpenCL Support

TODO (GSoC, Preferences setting, etc.)

Plugins

TODO (filters to GEGL ops, converted filters, on-canvas preview etc.)

Samplers

TODO

New and Improved Tools

Unified Transform Tool

While editing images it's common to apply different types of transformations to bend a layer or a selection into place. Mikael Magnusson teamed up with Peter Sikking to design and implement a new transformation tool called Unified Transform. It effectively merges rotation, scaling, perspective transform and other tols into a single, easy to use tool.

Unified Transform tool was a Google Summer of Code 2011 project.

Warp Transform Tool

The old iWarp filter was very useful for retouching, but wasn't easy to apply due to its design as a plug-in. Michael Muré rewrote it as a tool that works directly on canvas. He also added a few new features like erasing part of your transformation.

Warp Transform tool was a Google Summer of Code 2011 project.

N-Point Deformation Tool

TODO

Foreground Selection Tool

The existing Foreground Select tool was lacking a selection refinement brush. Instead we reused new matting operations in GEGL to provide fine details selection that just works, without the refinement step.

A few more new tools have been contributed to GIMP. They are currrently under review.

Blend Tool

The existing Blend Tool has been greatly improved by Michael Henning and finally allows to adjust end nodes of the gradient before applying it.

Digital painting improvements

  • MyPaint brush engine
  • symmetric painting mode
  • dedicated brush Hardness and Force sliders, generated brushes draw at given hardness now
  • brush size can be locked to zoom

Transformation Lock

Layers now can be locked from transformations such as movement, rotation, scaling etc.

Color Management

  • Ported to LCMS v2, ICC v4 support.
  • Completely rewritten color management code.
  • Little color fidelity loss during conversions between 8, 16, 32, and 64bit per channel data.

User Interface

TODO

Removed Features

  • Lanczos 3 sampler (replaced by new samplers)
  • Maximum RGB filter (not useful)

API changes

TODO

Misc

TODO

Contributors

The new version was possible thanks to: FIXME (core team members, contributors, GSoC students, usability guys, documentation people etc.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment