Hi, I need to adapt to a different white point quite quickly for a whole array (image) of (floating point) Lab values. Usually that's performed by transform objects on that buffer. For adapting to a different illuminant however, a von Kries type transformation (mostly, and in lcms the Bradford transformation) is performed. But the implementation only works on single XYZ values (using cmsAdaptToIlluminant), or I can transform setting an alternative white point using cmsLab2XYZ and cmsXYZ2Lab. This works all very fine, it is just slow if it has to be applied pixel by pixel on a whole image buffer.
My (possibly naive) attempt to create a transform using the built in Lab profile with different white points however failed. It didn't alter the values at all. This is (in Pythony pseudo code) my attempt on how I did it: standardLabProfile = cmsCreateLabProfile(NULL) adaptedLabProfile = cmsCreateLabProfile(newWhitePoint_xyY) myTransform = cmsCreateTransform(standardLabProfile, TYPE_Lab_DBL, adaptedLabProfile, TYPE_Lab_DBL, INTENT_PERCEPTUAL cmsFLAGS_NOTPRECALC) Using that myTransform didn't change anything ... :-( So my question is now this: Can I use a transform object to perform a Bradford chromatic adaptation transformation, and if so, how do I do it? If not, is there any other more efficient way to do so? Guy -- Guy K. Kloss Institute of Information and Mathematical Sciences Te Kura Pūtaiao o Mōhiohio me Pāngarau Room 2.63, Quad Block A Building Massey University, Auckland, Albany Private Bag 102 904, North Shore Mail Centre voice: +64 9 414-0800 ext. 9585 fax: +64 9 441-8181 eMail: g.kl...@massey.ac.nz http://iims.massey.ac.nz ------------------------------------------------------------------------------ Check out the new SourceForge.net Marketplace. It is the best place to buy or sell services for just about anything Open Source. http://p.sf.net/sfu/Xq1LFB _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user