Robert, i am lost as to what you try to prove. Would like to see some serious proof of all these theories of colorshifts. I have not such experiences.
Hi JR,
I'm not trying to prove anything ... I just don't agree with the notion that, effectively, the larger the working space gamut the better, and that using a smaller gamut will necessarily cause banding, clipping or shifting of colors, especially low luminosity colors. I'm happy with how I do things and if you're also happy with how you do things then we're all happy.
But if you want to follow through on the question of color shifts in perceptual mappings, have a look here:
http://www.argyllcms.com/doc/iccgamutmapping.html. And if you want to get a more thorough explanation ask Graham Gill who is the author of ArgyllCMS. If he doesn't know what he's talking about then we're all in trouble!
Essentially it works like this: when a profile developer creates a perceptual mapping table he/she does not know what colors will be in the source space (say in ProPhoto RGB) because these colors are only known for individual images. With some images all of the colors may be within the destination space, with other images some of the colors may be at the edges of the source space. So the profile developer can either a) assume the worse case that the general case is that image colors will be on the source boundary, or b) assume that the image colors will be in a smaller space than the source space.
If a) is assumed then for a (perceptual) mapping, the mapping table will need to compress the whole of the source space (ProPhoto, say) into the destination space. The table will attempt to minimize the color shifts that lie within the destination space, but the whole idea behind perceptual mappings is to preserve the relationship between colors: in order to do that the mapping will have to shift the colors that lie within the destination space.
If b) is assumed then the profile will be a mix of a relative and perceptual mapping. The same will happen as in a), but for the smaller source space; and the colors outside of the smaller source space will effectively be mapped using a relative-type mapping. In other words the colors will be clipped to the smaller source space boundary before being shifted. This will result in banding for colors that are outside of the smaller source space, but it will give less of an overall color shift.
The only way around this problem is for the mapping table to be constructed immediately prior to the conversion from source to destination. Unfortunately this is a very compute-intensive task. However, if you want to do this then ArgyllCMS does provide a mechanism to do so - and this will ensure that the sort of color shifts I'm talking about will be minimized (but only that: the color shifts will still occur if there are colors that are outside of the destination space). What you do is to create a profile for each image. This sounds complicated, and it is a bit, but not so much. What you need to do is to run the profile mapping against the image using the tables you've already generated from your spectrophotometer and use this image-specific profile to convert to the destination space.
Most of us aren't such perfectionists that we'll do this: a half-way-house solution is to use relative mappings (which result in clipping but not in the same color shifts) or to use smaller working spaces in order to minimize the shifting.
At any rate, as I said, you don't need to take my word for this: Graham Gill is a really nice guy and he will answer your questions if you post them here:
argyllcms@freelists.org.
Robert