Re: LAB as working/interchange space
Re: LAB as working/interchange space
- Subject: Re: LAB as working/interchange space
- From: Chris Cox <email@hidden>
- Date: Wed, 23 May 2001 12:08:24 -0700
Message: 4
Date: Tue, 22 May 2001 08:21:14 -0400
Subject: Re: Preview RGB space versus RGB working space
From: Roger Breton <email@hidden>
To: <email@hidden>
Chris,
LAB is not lossless - needing more bits than most RGB spaces to get
the same accuracy.
Could you give a specific example of "why LAB is not lossless"? An example
where a color expressed in "RGB" needs less bit than its sibling in Lab,
like you describe above?
Look at the encoding.
16 million colors in 8 bit/channel sRGB will transform to only 2.47
million colors in 8 bit/channel LAB (without dithering).
As long as you're using integer representations, LAB will require
more bits to represent the same color quality as most RGB
colorspaces. (Yes, it is possible to define a ridiculous RGB space
that would be worse than LAB - but why?)
> Also, ICC LAB is not infinite, and many RGB working spaces include
colors ouside of ICC LAB.
First, what difference could there be between "CIE" Lab and "ICC" Lab, if
any? And second, you mean "imaginary RGB devices" (RGB working spaces) that
have their primaries located outside of the spectrum locus?
CIE Lab has no limits on the range of the chrominance channels.
ICC Lab has a limit of +-128 on the chrominance channels.
CIE Lab has no upper limit on the Luminance channel.
ICC Lab has an upper limit of 100 (perfectly diffuse reflector) on
the Luminance channel.
CIE Lab is specified with real numbers.
ICC Lab is specified with integer numbers (16 bits at best) --
although some implementations use floating point representations
internally, and good implementations carry around more bits for
intermediate values.
And no, you don't have to go outside the spectral locus to find
colors outside of ICC LAB (Adobe RGB's green primary is outside of
ICC LAB).
> There are many reasons (which we've covered before) why LAB is not a
good working space.
Could you refer approximately under what subject heading you've discussed
this here in the past so that I can do a proper search?
At least 6 different topics, over about the past 3 years....
If you don't understand the math, image processing, image encoding,
or human interface issues -- it's easy to assume that LAB would be
the "perfect" working and interchange space. But if you look into
the details at all, you quickly find that LAB is not a great
representation for your image data. It's a nice mathematical
construct for interchanging data -- but whenever you use LAB you have
to keep around extra bits of precision to maintain image quality.
Chris