[argyllcms] Having trouble understanding how color spaces are used.

  • From: Leonard Evens <len@xxxxxxxxxxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 07 Feb 2008 14:27:53 -0600

This may not be the right place to pose such a question;  if so, direct
me elsewhere.

I've read what Real World Color Management says about color spaces.
profile connection spaces, and intermediate color spaces, and I think I
understand the general ideas.  But when I try to figure out what is
going on in specific applications, it seems to all fall apart.  In
particular, I am finding it hard to figure out how device profiles
relate to color spaces.

Let me give you an example.  I've been doing some experiments with xsane
and gimp 2.4.   Depending on which options I choose for xsane and gimp,
the RGB values for a given pixel that xsane reports on preview may or
may not be the same as those that gimp reports for the same pixel.
(Either xsane of gimp make be making the change, depending on the
choice.)  What appears on the screen in xsane and gimp looks the same in
any case, as long as color management is enabled, but I haven't actually
tried to make spot reading with an instrument to be sure.  So presumably
the applications are doing what they should, but I'm uneasy about just
what they are doing.

I understand that profiles allow conversion from what an input device
produces to what an output device shows, and there is supposed to be an
intermediate called the profile connection space.  What I don't
understand is how the actual RGB values in the image file may be related
to theoretical values in the profile connection space.  (I know that the
PCS may not be an RGB space, but if I understand correctly, the
difference is one of making the appropriate mathematical transformation,
and in principle one could think of the PCS a being an RGB space.)  In
cases like that I discussed above, the PCS doesn't actually seem to
exist anywhere, except perhaps abstractly as an intermediate step in
translating from one device to another.  

Also, I am a little unclear how the values identifying the color in an
abstract CIE color space relate to any of this.  Presumably, the values
in that space range over the full gamut of possible colors that a normal
human viewer can see under standard viewing conditions, while various
devices like monitors and printers can only produce a limited subset of
those colors.  So would it be accurate in some sense to say that the CIE
color space is that for which the device is the average human viewing
system?   Although, it must be wrong, can we think of there being an RGB
pixel in the visual cortex?  In that sense, we could say that we are
always converting from one device to another, and the object is that
where you end up, a human viewer's brain, the final result is close to
what the same human brain would record---under standard viewing
conditions---directly from the source?

Being confused, I'm not sure I'm really asking about what is bothering
me, but any comments or suggestions about where to look would be
appreciated.  In particular, it would be nice to be able to follow the
details of what the various applications I use actually do.  

Leonard Evens <len@xxxxxxxxxxxxxxxxxxxxx>
Mathematics Department, Northwestern University

Other related posts: