Re: [Gimp-developer] Three questions about opening an image and converting it to linear light RGB

I just noticed that I sent my last two e-mails to Nicolas without
forwarding them to the list.
I think his replies address these questions, so I'll copy them here.
Sorry for the inconvenience. I forgot to hit "reply all".


El vie, 04-04-2014 a las 08:53 +0200, Nicolas Robidoux escribiĆ³:
Some operations are made worse if you don't allow out of "gamut"
values (e.g. blacker than black and whiter than white).

What do you mean with "blacker than black" and "whiter than white" and
how those achromatic values can be out of gamut?
I get it if you mean that white can go beyond 1.0 (display referred
white) in scene referred HDR, but what does "blacker than black" mean?
Negative light?
Could you please explain that and give an example of how those values
could be produced?

The first example that comes to mind is convolutions that are
implemented in a separable way and that have negative coefficients.

I vaguely remember something about resampling with a transparency
channel too (which is done correctly in ImageMagick; there is a thread
where I question this and then "approve" in the ImageMagick forums).

I'm not sure if this is exactly what you mean, but I remember from
Blender that some of its antialiasing filters created negative values in
alpha channels.
iirc Blender used to clamp those negative to zero, which was a terrible
idea, since in an image with associated alpha those clamped values meant
that pixels that needed to be semitransparent became fully transparent.
I can't remember if it was fixed (and how) but I do remember that either
the negative values or the clamped values in alpha channel introduced
compositing artifacts.
It looks safer to avoid negatives in convolutions in the first place.

So: If your operation is made worse by out of "gamut" values, clamp
them first thing.

Sometimes it isn't enough for fixing the problem, and in the context of
unbounded gamut I think that clamping means clipping gamut, which
defeats the purpose of unbounded gamut.

Maybe I'm getting all wrong, so I'd appreciate is somebody clarifies it.

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