Thread: [Lcms-user] Converting Lab to Lab values for different illuminants
An ICC-based CMM for color management
Brought to you by:
mm2
From: Martin F. <mf...@gm...> - 2013-11-14 16:39:07
|
Hello, I would like to convert a D50 Lab values to Lab values for a different color temperature illuminant. Is this possible with Little CMS, and if then how? Tahnk you. Martin |
From: <mar...@li...> - 2013-11-15 11:30:45
|
Quoting Martin Florek <mf...@gm...>: > Hello, > I would like to convert a D50 Lab values to Lab values for a different > color temperature illuminant. Is this possible with Little CMS, and if > then how? Tahnk you. Hi Martin, Yes, it is certainly possible. - Create A D50 Lab profile by using cmsCreateLab4Profile(NULL) - Get the chromaticity of color temperature and use it as black-body white point cmsWhitePointFromTemp(&White, temp); cmsCreateLab4Profile(&White); - Set adaptation state to unadapted cmsSetAdaptationState(0); - Then create the transform by using absolute colorimetric intent. You can check this by using transicc: C:\lcms2-2.6\bin>transicc -i*Lab -o*LabD65 -t3 -d0 LittleCMS ColorSpace conversion calculator - 4.2 [LittleCMS 2.06] Enter values, 'q' to quit L*? 100 a*? 0 b*? 0 L*=100.1896 a*=3.9640 b*=17.8366 Regards Marti |
From: Martin F. <mf...@gm...> - 2013-11-15 12:37:59
|
Hello Marti, Thank you for the quick reply. The Lab-2-Lab conversion with different illuminants is just first step in my conversion. Then I apply an ICC profile and convert to RGB with the relative colorimetric intent. Is possible to create a multi-profile transform with different intents for each transformation? I do not see this as an option in LittleCMS. Or I should create two transforms: one transform Lab2Lab with these settings and then the new Lab values convert from this custom illuminant Lab space with my ICC profile to RGB values? One other small thing. I tried using cmsWhitePointFromTemp(&White, temp); cmsCreateLab4Profile(&White); and a transformation from Lab to RGB with an ICC profile gave me the same results for every temperature I used. I use relative colorimetric intent. Any ideas what could be an issue here? Thank you. Regards, Martin On 15.11.2013 12:30, mar...@li... wrote: > > Quoting Martin Florek <mf...@gm...>: > >> Hello, >> I would like to convert a D50 Lab values to Lab values for a different >> color temperature illuminant. Is this possible with Little CMS, and if >> then how? Tahnk you. > > > Hi Martin, > > Yes, it is certainly possible. > > - Create A D50 Lab profile by using > > cmsCreateLab4Profile(NULL) > > - Get the chromaticity of color temperature and use it as black-body > white point > > cmsWhitePointFromTemp(&White, temp); > cmsCreateLab4Profile(&White); > > - Set adaptation state to unadapted > > cmsSetAdaptationState(0); > > - Then create the transform by using absolute colorimetric intent. > > You can check this by using transicc: > > C:\lcms2-2.6\bin>transicc -i*Lab -o*LabD65 -t3 -d0 > LittleCMS ColorSpace conversion calculator - 4.2 [LittleCMS 2.06] > > Enter values, 'q' to quit > L*? 100 > a*? 0 > b*? 0 > > L*=100.1896 a*=3.9640 b*=17.8366 > > Regards > Marti > |
From: <mar...@li...> - 2013-11-15 12:48:30
|
> The Lab-2-Lab conversion with different illuminants is just first > step in my conversion. Then I apply an ICC profile and convert to > RGB with the relative colorimetric intent. Is possible to create a > multi-profile transform with different intents for each > transformation? I do not see this as an option in LittleCMS. Look for cmsCreateExtendedTransform. It does what you need. > One other small thing. I tried using > cmsWhitePointFromTemp(&White, temp); > cmsCreateLab4Profile(&White); > and a transformation from Lab to RGB with an ICC profile gave me the > same results for every temperature I used. I use relative > colorimetric intent. Any ideas what could be an issue here? Thank you. It gives same results because you instructs to do so... *relative* colorimetric intent is exactly that, relative to the white point. If you use absolute colorimetric and no adaptation you will see the changes. Remember to set the adaptation stuff. Regards Marti |
From: Martin F. <mf...@gm...> - 2013-11-15 13:07:09
|
I forget the adaptation state at first, now it works (first absolute colorimetric, then relative colorimetric), thank you. For high temperatures I get a warm tint and for low temperatures I get a cold tint in my colors. Looks good. Thank you again. Regards, Martin On 15.11.2013 13:48, mar...@li... wrote: > > >> The Lab-2-Lab conversion with different illuminants is just first step >> in my conversion. Then I apply an ICC profile and convert to RGB with >> the relative colorimetric intent. Is possible to create a >> multi-profile transform with different intents for each >> transformation? I do not see this as an option in LittleCMS. > > Look for cmsCreateExtendedTransform. It does what you need. > >> One other small thing. I tried using >> cmsWhitePointFromTemp(&White, temp); >> cmsCreateLab4Profile(&White); >> and a transformation from Lab to RGB with an ICC profile gave me the >> same results for every temperature I used. I use relative colorimetric >> intent. Any ideas what could be an issue here? Thank you. > > It gives same results because you instructs to do so... *relative* > colorimetric intent is exactly that, relative to the white point. > If you use absolute colorimetric and no adaptation you will see > the changes. Remember to set the adaptation stuff. > > Regards > Marti > |