[argyllcms] Re: ranges of LAB values

  • From: <graxx@xxxxxxxxxxxx>
  • To: <argyllcms@xxxxxxxxxxxxx>
  • Date: Thu, 21 Apr 2022 13:39:56 -0400

I better go take more programming lessons because I never knew that “12.45” 
could be represented using an “integer” type. I completely confess my 
ignorance. I use “int” to hold numbers that “don’t have” decimal parts, such as 
65536, and “double” to hold numbers that “do have” decimal parts such as 
“12.45” or “87.92”.

 

I’m sorry I completely missed your point but I don’t feel offended. 

 

/ Roger

 

From: argyllcms-bounce@xxxxxxxxxxxxx <argyllcms-bounce@xxxxxxxxxxxxx> On Behalf 
Of Chris Lilley
Sent: April 21, 2022 1:10 PM
To: argyllcms@xxxxxxxxxxxxx
Subject: [argyllcms] Re: ranges of LAB values

 

This is completely correct, except for the float part.

Using 16bits per component (uint16 for L, int16 for a and b) also preserves the 
fractional component.

But no-one should be representing Lab in 8bits unless they don't care about 
accuracy at all! Think of it this way - if values are rounded (or, worse, 
truncated) to 8bits there is a worst-case error of almost 1 on each of L, a and 
b. So a deltaE 76 of sqrt(3) = 1.7, from quantization error alone!

On 2022-04-21 09:23, graxx@xxxxxxxxxxxx <mailto:graxx@xxxxxxxxxxxx>  wrote:

Sylvain,

 

CIE Lab is independent of any computer implementation.

If you look at CIE Publications 15-2 which defines Colorimetry, you won’t find 
any mention of how the numbers should be represented inside a computer memory. 
CIE Lab numbers are just numbers and don’t need computers to exist.

 

Actually, you need “floating-point” variables to correctly represent CIE Lab, 
otherwise you loose the fractional part.

 

/ Roger

 

From: argyllcms-bounce@xxxxxxxxxxxxx <mailto:argyllcms-bounce@xxxxxxxxxxxxx>   
<mailto:argyllcms-bounce@xxxxxxxxxxxxx> <argyllcms-bounce@xxxxxxxxxxxxx> On 
Behalf Of Sylvain Ard
Sent: April 21, 2022 7:33 AM
To: argyllcms@xxxxxxxxxxxxx <mailto:argyllcms@xxxxxxxxxxxxx
Subject: [argyllcms] Re: ranges of LAB values

 

I want to understand, it's all. I think you're right the good formula is 255*(0 
to 1 value)-128 because I saw on Internet that unsigned bytes come from -128 to 
127 and I think that CieLab is standard unsigned byte.

Do you know my imagemagick commands ?

Sylvain Ard
0549507724
0778380991

sylvain.ard@xxxxxxxxx <mailto:sylvain.ard@xxxxxxxxx

http://sylvain-ard.fr

Entreprise individuelle SIRET : 80079243400022

Appt 26 Bât A Résidence Le Patio

83 rue de la Bugellerie

86000 Poitiers

 

 

Le jeu. 21 avr. 2022 à 13:29, Aaron Perelmuter <aaron.746@xxxxxxxxx 
<mailto:aaron.746@xxxxxxxxx> > a écrit :

I suppose that depends on from where one derives their definitions. I would 
generally do 256*x-128 as 0>>255 contains 256 integers. Also, do the math and 
substitute either 127 or 128 and I doubt the resulting colour will be in any 
way noticeably different. 

 

I am somewhat confused though, if you already know the answer to your question, 
why ask? Please don’t misunderstand what I’m saying, I mean, it’s better to be 
as specific as you possibly can in terms of what you’re asking. If you 
understand something to be 255*value-127, why not ask about the time you saw 
something very slightly different to that? Just makes it easier to give the 
exact answer you’re searching for is all. 

 

Keep the questions coming, we can all learn from them. 

 

On Thu, 21 Apr 2022 at 9:19 pm, Sylvain Ard <sylvain.ard@xxxxxxxxx 
<mailto:sylvain.ard@xxxxxxxxx> > wrote:

isn't it rather -127 - 128?

because to match 0-1 values to near 127 values we do 255*value-127 ?

 

Sylvain Ard
0549507724
0778380991

sylvain.ard@xxxxxxxxx <mailto:sylvain.ard@xxxxxxxxx

http://sylvain-ard.fr

Entreprise individuelle SIRET : 80079243400022

Appt 26 Bât A Résidence Le Patio

83 rue de la Bugellerie 
<https://www.google.com/maps/search/83+rue+de+la+Bugellerie+86000+Poitiers?entry=gmail&source=g>
 

86000 Poitiers 
<https://www.google.com/maps/search/83+rue+de+la+Bugellerie+86000+Poitiers?entry=gmail&source=g>
 

 

 

Le jeu. 21 avr. 2022 à 13:15, Aaron Perelmuter <aaron.746@xxxxxxxxx 
<mailto:aaron.746@xxxxxxxxx> > a écrit :

In most cases, for all intents and purposes, Lab is understood to be within the 
following ranges: L*0>>100;a*-128>>127;b*-128>>127

 

As was mentioned in a reply to a previous list message, technically Lab values 
can and do sometimes go well outside of the ranges listed but in almost every 
instance, for the vast majority of people and use cases, Lab is understood to 
be within the bounds listed above. 

 

As was also mentioned in another reply to a list message, it certainly helps to 
be able to give a more accurate or more pertinent answer if you can state your 
reasons why you’d like to know what it is you’re asking about. 

 

I’m not 100% sure about this but ttbomk, there’s no such thing as a v2, v4 or 
any other version number for Lab profiles, for tiff or any other file format. 
Is there even a Lab profile anyway? What’s the exact file name for the Lab 
profiles you’re asking about? Finally, IT8 files consists of a great many 
different sub-types which are used for myriad purposes. Most commonly IT.7/3 
and  IT8.7/4 are often used for profiling CMYK processes, IT8.7/2 (used to be) 
often used for creating scanner profiles and so on - I say used to be because 
not many people in this day and age are creating scanner profiles or even 
own/use a scanner. Regardless, there are several flavours of IT8 type files but 
again, in almost every case the Lab range is as listed above. 

 

Best Regards,

Aaron. 

 

On Thu, 21 Apr 2022 at 8:45 pm, Sylvain Ard <sylvain.ard@xxxxxxxxx 
<mailto:sylvain.ard@xxxxxxxxx> > wrote:

Hi I would like to know the ranges of L,A and B values in : ICC profiles v2, 
TIFF images with LAB profile v2 and v4, IT8 CGATS files and their matches 
because the ranges are differents.

Thank you

Best regards

 

Sylvain Ard
0549507724
0778380991

sylvain.ard@xxxxxxxxx <mailto:sylvain.ard@xxxxxxxxx

http://sylvain-ard.fr

Entreprise individuelle SIRET : 80079243400022

Appt 26 Bât A Résidence Le Patio

83 rue de la Bugellerie 
<https://www.google.com/maps/search/83+rue+de+la+Bugellerie+86000+Poitiers?entry=gmail&source=g>
 

86000 Poitiers 
<https://www.google.com/maps/search/83+rue+de+la+Bugellerie+86000+Poitiers?entry=gmail&source=g>
 

-- 
Chris Lilley
@svgeesus
Technical Director @ W3C
W3C Strategy Team, Core Web Design
W3C Architecture & Technology Team, Core Web & Media

Other related posts: