[Lcms-user] Missing PCS black point adjustment for perceptual transforms between version-2 and vers
An ICC-based CMM for color management
Brought to you by:
mm2
From: Maurice L. <mau...@gm...> - 2019-10-03 16:40:00
|
Hi, I've been looking through the internals of LCMS2, in particular function DefaultICCintents() which converts the array of profiles, intents etc. into a cmsPipeline. But I'm a bit puzzled, since I would expect to see a conversion being introduced in case of a transformation with a perceptual rendering intent between a version-2 profile and a version-4 profile (or vice versa) in order to handle the difference in PCS black points of version-2 and version-4 profiles. In order to verify this, I did a test with a floating point conversion of RGB (0, 0, 0) from the version-4 sRGB_v4_ICC_preference.icc profile to the version-2 sRGB2014.icc profile (and I multiplied the output values by 255). If everything is fine, I would expect the result to also have RGB = (0, 0, 0). If there is a black point mismatch, I would expect the RGB value to correspond to the version-4 black point (which has a lightness of about 3.1). The resulting RGB value (times 255) that I got was (11.311, 11.311, 11.311), which indeed corresponds to the lightness of the version-4 PCS black point. This suggests that adjustments between the version-2 and version-4 perceptual PCS black points (and vice versa) are indeed missing. Or am I misunderstanding something? With kind regards, Maurice |