I have a question about the function BGRtoLAB
for LAB, there is a case condition specified in the Manual:
L = 903.3 * (Y/Yn)1/3. for Y/Yn ≤ 0.008856
Now, if I take the border case , 0.008856^(1/3) is ~0.207, -> mult 903.3 = ~187
This value is converted to range of 0..255 by factor 2.55, so we get 476 which is way out of range.
Actually i run into this condition (Y/Yn ≤ 0.008856) for values like R=0, G=0, B=10 which is pretty dark, L should be Close to 0 also
So what is wrong with your formulas?
thx & BR
found some other formulas. I think it should be without Exponent ^(1/3) like in the f(t) formulas:
L = 903.3 * (Y/Yn). for Y/Yn ≤ 0.008856
as 903 is the factor 7.787*116
Yes, have a look. the code is ok, the results are ok of the ipp, just the doku
also in the f(t) formula something is wrong, as f(t) is around ~1 you probably won´t substract 16 and multiply later the result .... . It´s all messed up
the code is ok, the results are ok of the ipp, just the doku
What is "doku"? Besides, what does "the code is ok, the results are ok of the ipp" mean? Your program works OK with the IPP function BGRtoLab?
Is this a “theoretical” question? Or could you provide us with a test image and a sample code that can reproduce the problem that you encountered, please?