"gamma" errors after an ICC profile conversion
There seems to be a remaining issue in GIMP's code for detecting the TRC of an image's color space. The issue isn't confined to just down-scaling an image, but down-scaling nicely shows the problem as per the following steps - if it matters I used NoHalo throughout:
-
Download the Dalia Lama test image: http://www.ericbrasseur.org/gamma_dalai_lama_gray.jpg - which unfortunately doesn't have any licensing information, so I can't show screenshots. Call this Image1.
-
Duplicate Image1 and convert it to 32f perceptual precision. Call this Image2.
-
Save Image2 to disk as a tif. Check Preferences to make sure that GIMP doesn't automatically convert newly opened images to GIMP's internal sRGB color space and also doesn't automatically convert newly opened images to linear precision. Now open the newly-saved tif. Call this Image3. This newly-opened image should still be in the embedded linear gamma sRGB color space and should be at 32f perceptual precision. If it's not, change the relevant settings in Preferences and try again.
Downscale Image1 by 50%. The colors are correct.
Downscale Image2 by 50%. The colors are too bright and saturated, a sort of "inverse" gamma problem.
Downscale Image3 by 50%. The colors are correct.
It looks like GIMP correctly detects when an image is loaded from disk (Image3) with an embedded linear gamma ICC profile. But GIMP doesn't detect when the user converts an already open image that's at 32f perceptual precision from whatever color space it's in, to a linear gamma ICC profile from disk.
Following the same steps with the attached png by doing a Gaussian blur instead of downscaling also shows the problem. The "Image2" version has a bright band of yellow after doing the blur, instead of the expected gradual transition of colors.