[argyllcms] Spectral to LAB conversion in ArgyllCMS (non-D50)

  • From: Joe Tschudi <tresorjoe@xxxxxxxxx>
  • To: Argyll <argyllcms@xxxxxxxxxxxxx>
  • Date: Tue, 21 Nov 2017 20:01:12 +0100

Hi all,

I have some doubts concerning Argyll to generate „correct“ results when it 
comes to converting spectral remission data to LAB with illuminants other than 
D50, for example D65. 

Let’s take this measurement as an example:

CTI3   
DESCRIPTOR "Argyll Calibration Target chart information 3"
ORIGINATOR "Argyll chartread"
CREATED "Tue Nov 21 11:40:48 2017"
DEVICE_CLASS "OUTPUT"
COLOR_REP "iRGB_XYZ"
TARGET_INSTRUMENT "X-Rite i1 Pro 2"
DEVCALSTD "XRGA"
SPECTRAL_BANDS "36"
SPECTRAL_START_NM "380.000000"
SPECTRAL_END_NM "730.000000"
NUMBER_OF_FIELDS 44
BEGIN_DATA_FORMAT
SAMPLE_ID SAMPLE_LOC RGB_R RGB_G RGB_B XYZ_X XYZ_Y XYZ_Z SPEC_380 SPEC_390 
SPEC_400 SPEC_410 SPEC_420 SPEC_430 SPEC_440 SPEC_450 SPEC_460 SPEC_470 
SPEC_480 SPEC_490 SPEC_500 SPEC_510 SPEC_520 SPEC_530 SPEC_540 SPEC_550 
SPEC_560 SPEC_570 SPEC_580 SPEC_590 SPEC_600 SPEC_610 SPEC_620 SPEC_630 
SPEC_640 SPEC_650 SPEC_660 SPEC_670 SPEC_680 SPEC_690 SPEC_700 SPEC_710 
SPEC_720 SPEC_730 
END_DATA_FORMAT
NUMBER_OF_SETS 1
BEGIN_DATA
1 "A1" 0.00000 0.00000 0.00000 72.91935 75.78345 63.31897 13.82440 24.51009 
42.92666 62.90718 72.58204 75.32479 76.39339 77.09808 77.86022 78.27855 
78.29813 78.18973 77.92235 77.55539 77.17655 76.51846 75.86392 75.31128 
74.78584 74.74929 74.42571 74.42530 74.71852 75.24019 75.85005 76.50475 
77.39677 78.18509 78.85255 79.27352 79.46704 79.51374 79.58382 79.51583 
78.79055 77.62491 
END_DATA

If we convert to CIE D50 (1931_2) using spec2cie -n I get LAB 89.76 -0.31 
-0.78. So far so good (other applications deliver a deviation of approx. dE76 
0.02, fully acceptable). Bruce Lindbloom’s SpectralCalculator10nm spreadsheet 
returns LAB 89.76 -0.34 -0.76, again within the expected tolerance.
If we convert to CIE using D65 illuminant (1931_2) using spec2cie -i D65 -n I 
get LAB 89.78 -2.66 -18.31. Heavy blue. Other applications return LAB 89.78 
-0.48 -0.57 (example ColorLogic ColorAnt or Babelcolor PatchTool ). Bruce 
Lindbloom’s SpectralCalculator10nm spreadsheet returns LAB 89.78 -0.5 -0.56. 
That looks all much more realistic to me considering the fact that under D65 
viewing light the white doesn’t change that much. 

I get that some understandings (that includes the logic of certain other 
profiling engines!) come from the fact that the PCS of ICC is based on D50. So 
that even a non-D50 illuminant is reverted back to default ICC D50? I don’t 
know. And others obviously use a different approach which I personally find 
more practicable and visibly correct in spectral to LAB conversion, I was 
wondering if Graeme or anyone could kindly shed some light into this matter?

Thanks,
Joe Tschudi


Am 21.11.2017 um 09:42 schrieb Alexey Gribunin <Gribunin@xxxxxxx 
<mailto:Gribunin@xxxxxxx>>:

Hello Graeme!

First of all, many thanks to you for this great tool!

I tried to use conversion form GMDI to XRGA with the following string:
spec2cie.exe -v -A GA GMDI.ti3 XRGA.ti3
And I found that spectral values stays absolutely the same, they are simply 
copied from input to output.
At the same time XYZ and Lab values looks really converted (average dE=0.6, 
Max dE=2).

Is it right behavior? It looks strange because in output ti3 XYZ (and Lab) 
values misaligned with the spectrals in the same file.

Best regards,
Alexey Gribunin, UNIT Color Technologies, Moscow, Russia.

On 18/11/2017 07:03, Graeme Gill wrote:
I'm pleased to announce the release of ArgyllCMS V2.0.0.

This is a bug fix and minor feature release.
See <http://www.argyllcms.com/doc/ChangesSummary.html ;
<http://www.argyllcms.com/doc/ChangesSummary.html>>

Source and binaries are available here:
<http://www.argyllcms.com/#Downloads ;<http://www.argyllcms.com/#Downloads>>

Enjoy!
    Graeme Gill.


Other related posts: