[Gimp-developer] Adding LAB support to GIMP

Recently I was asked about LAB support in GIMP 2.9/2.10, and realized that GIMP already has a fair amount of support for editing in the LAB and LCH color spaces. So this email is an attempt to summarize what's already available and then make a list of what would be needed for full support. Comments, corrections, additions, etc are very welcome.

Given other coding priorities and limited developer time, better LAB support to GIMP might not make it into 2.10. But it would be nice to have an idea of what full support for LAB in GIMP might require.

Already it's possible to:

* Decompose to LAB and LCH

* Compose/recompose from LAB and LCH

* Pick colors using LAB and LCH

* Modify colors using the LCH Hue-Chroma tool

* Extract LAB and LCH channels as layers, eg for use as layer masks.

* Manipulate image colors in LAB/LCH using LCH and Luminance blend modes. For example: Using the Lightness blend mode allows to produce the exact same result as doing Curves, Levels, Brightness, Exposure, etc on the LAB Lightness channel, simply by doing the operation on a copy of a layer, and setting the layer blend mode to LCH Lightness. Often people want to raise and lower Colorfulness (Chroma divided by Lightness) concurrent with changes in tonality. For this, use Luminance blend for the layer with the modified tonality.

It seems to me that full LAB support would require:

* The option to open images that are in the LAB color space, keeping in mind that there are various LAB color space ICC profiles floating around, and some LAB images don't have any embedded ICC profile, but instead just have metadata that indicates the color space. Upon opening a LAB image, it could be immediately converted to RGB for processing, as the conversions from RGB to LAB or LCH for further processing in these color spaces are already handled by babl.

* The option to convert an image to LAB, including to a specific LAB profile from disk, just before exporting the image to disk in whatever file formats there are that support the LAB color space.

* The ability to do Curves and Levels operations on the LAB channels and perhaps on the CH channels. Having LAB/LCH Curves would allow, for example, to raise and lower specific points in the L/A/B/C/H channels without moving the endpoints of the Curves. Such edits are often used for color correction using the A and B channels. As far as I know, nobody offers C and H Curves/Levels, but it would be interesting to see what uses people might come up with.

* Adding L/A/B/C/H histograms to the Histograms dialog: We already have Luminance in the histograms dialog. Lightness is just the perceptually uniform transform of Luminance.

What else might be required to add full support for the LAB space to GIMP?

These two bug reports are about adding support for editing in the LAB color space:

   Add LAB color mode:

   support other colorspaces in the Curves tool:

These two bug reports are about fixing a couple of bugs in current LAB/LCH functionality:

   Decomposed to LAB images have the wrong ICC profile assigned:

"Extracted L" from "Tools/GEGL Operation/Extract Component/Component LAB L" isn't really "L":


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]