I'd like to Discuss Retinex. I decided to do it here before submitting a
bug report.

In theory the retinex operation is very useful in fixing badly lit images.
In practice, I've had little success with it. So I decided to fiddle around
with it. My test picture was a Chinese temple on a background of blue sky
(I can upload the XCF on request). usually you want to just brighten up
some darker areas or bring detail in an area that's too brightly lit,
without changing the rest of the image. In my test case, The sky's color
was ruined when retinex was applied and most of the well-lit areas lost
most of their color.

I'll break down what happened:

1. The properties that can be changed by the sliders in the retinex dialog
are not clear at all. The documentation doesn't explain the first two in
terms understandable to a non-mathematician. Whatever it is they are doing,
they are not helping in correcting images. If it is opssible to give them
more descriptive names this would be great.

2. The result is too strong. I find I have to do a "fade" every time I use
it. My suggestion: add a multiplier slider that would do an internal fade.
The default should be about 0.5.

3. The algorithm is indiscriminate: it is used to fix bad lighting but it
also works on well-lit areas. I believe it should have less effect on
pixels (or areas) whose average luminosity value is closer to 0.5, and more
effect on pixels with values closer to 0 or 1.

I managed to achieve a selective retinex using the following method:
1. copy the layer
2. paste into quick mask
3. blur the mask using gaussian blur (8.0 radius)
4. invert the colors (only if you want to affect just the darker areas).
now your light areas are masked out.
5. use levels to also mask out the mid values: in the input scale, push the
black triangle to about midpoint. This part may require a different setting
for each image.
6. go back from quick mask to image and perform Retinex.
7. Fade the result

The above procedure can probably be turned into an integral part of retinex
so that retinex only works on those parts. Perhaps adding another slider
that emulates what I did with the levels operation, to choose how much you
want to affect midtones in the image.

Lastly a comparison to photoshop:
Photoshop's "shadow/highlight" operation (basically retinex) has two
sliders in its basic settings. One for choosing the strength of the effect
on lighter parts of the image, and one for choosing the strength of the
effect on darker parts of the image. So basically it's like doing what I
did with masks twice, one for dark areas and one for light, and combining
the result. There are also dual extended options, one set for dark areas
and one for light areas. In it there is a "tonal width" slider which
according to the help file does pretty much what I did with the levels
operation.

Comments?
_______________________________________________
gimp-developer-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gimp-developer-list

Reply via email to