Peter C wrote:
Hello,I am studying ICC profile creation algorithm, I find it difficult to understand. I have some understanding on color basics such as XYZ, Lab, dE, cms (in general) and C programming.1) How does A2B/B2A table works ? What it takes to build such table ?
They are basically a multidimensional (typically 3D or 4D) lookup tables: you look up device independent (PCS) values for given device values (A2B) or do the reverse (B2A). Values between the grid points have to be interpolated.
2) Any good books and websites on this subject ?
I have no book recommendation, but I think the ICC profile format specifications are essential (and sufficient) to understand what's going on "inside" a profile and to some extend inside a CMM provided that color fundamentals are present:
<http://www.color.org/icc_specs2.xalter>, namely the ICC v2 spec <http://www.color.org/ICC_Minor_Revision_for_Web.pdf>
Filling these tables with meaningful content is something completely different and much more challenging: you have to deal with gamut mapping algorithms as well as interpolation, inversion of multidimensional data, sparse and irregularly sampled data ...
A good book on gamut mapping algorithms seems to be the new one by Jan Morovic: "Color Gamut Mapping" (ISBN 978-0-470-03032-5) (Haven't read it as yet)