[EMAIL PROTECTED] (2007-11-22 at 1544.46 +1030):
> Hi Liam,
> On Nov 22, 2007 9:45 AM, Liam R E Quin <[EMAIL PROTECTED]> wrote:
> >
> > Evidence that auto levels loses details --
> > take a photograph (or a scanned engraving, or whatever) and open
> > Levels, and press autl.  Note that the little triangles marking
> > the end-points are not under the ends of the black part - in
> The 'Value' controls are not effected by 'Auto'.
> Look at the R,G,B,(A) controls instead.

And then you see it changes them, in a destructive way.

> All 'Auto' does, is:
>    1. Set the input range to min(CHANNEL), max(CHANNEL) -- ie the
> lowest used value of that channel in the picture, and the highest used
> value of that channel in the picture.

No, it does not. It sets min and max "inside" the histrogram used
range (play with Lin/Log setting if this is not clear). There is a way
anybody can test it:

1 Create new image, 512*512
2 Render plasma, with seed 0 and turbulence 1
3 Run Levels, click the auto button, look at all the channels.... OOPS!

You get:
R  9 1.0 229 | 0 255
G 12 1.0 194 | 0 255
B 25 1.0 241 | 0 255

Those settings are destructive, Red 0-9 becomes 0, Red 229-255 becomes
255, and so on. You can look for such pixels before applying the
operation, mark with guides or points, then look what they are after.

You can also look at the code and see how it iterates over the
histrogram until it decides it has "eaten" enough. It does not stop
when it reaches the first non zero, which would be non destructive (as
in any input channel value gets mapped to a new, different, output
value, rounding and precission issues aside).

>    2. Set the output range to 0, 255
>  for each CHANNEL in R,G,B (and possibly A)
> Because the output range is full, there is literally no way that this
> operation can reduce detail.

If the input range is not full, there is loss, as shadows and
highlights are lost and become flattened, grouped in the same result.

Gimp-developer mailing list

Reply via email to