Linear vs non-linear light color processing in GIMP 3.0 (original) (raw)

March 21, 2025, 12:54am 1

I’m porting a python plug-in from 2.10 to 3.0. Dealing with the interface changes, esp. wrt plug-in registration, has been interesting but went rather smoothly! However I’m also running into issues with the plug-in’s algorithm.

The plug-in does sepia toning. I tried both curves_explicit() and curves_spline() to manipulate the red, green and blue curves. After much experimentation, I’m quite convinced now that GIMP 3.0 does these curve adjustments in linear light, whereas 2.10 did them in non-linear light. The color->curves tool seems to still operate in non-linear light, the result is different with GIMP 3.0 when I try to apply in the GUI the same curves as in the plug-in.

Am I confused? Is this new behavior intended? Is there some documentation that explains how GIMP handles things internally? Is there a way for the plug-in to control linear vs non-linear light it works with? Or even just know which it’s dealing with if both are possible? Or is all processing now done in the linear light? If so, how does colors->curves give me what looks like non-linear processing?

Thanks,
Lew

system (system) Closed May 5, 2025, 12:55am 2

This topic was automatically closed 45 days after the last reply. New replies are no longer allowed.