[argyllcms] Re: Regarding fitting of Shaper / LAB / XYZ input profiles (question to Graeme)

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 12 Jun 2014 12:58:18 +1000

Derin Korman wrote:

> For input profiles such as scanners, could you expand on the processes of
> the different profile types, as to how they go from the input/reference
> data to the cLUT / curves?

        the ICC standard itself has an introduction that outlines
the various steps in different ICC profile configurations (see section 0.4).
Note that this includes the ICC V4 combinations that Argyll doesn't currently

> I am assuming that the shaper is higher
> polynomials smoothed by lower order ones to create io curves for each
> channel,

That's the type of approach I've used in creating ArgyllCMS shaper
curves, but it's not a limitation of the profile format. Reducing
the curves to a moderate number of parameters makes them able to
be set by a fitting process. I don't use polynomial basis functions
though, but something more appropriate to a transfer curve that
is constrained to be monotonic.

> but I don't understand if XYZ / LAB employ some sort of smoothing
> to fit the cLUT itself, or whether the CMM that uses the profile for
> conversion uses its own smoothing based on the look up table data.

Typically the CMM doesn't modify the cLUT, but uses it as-is.

In doing a scattered data fit it is necessary to use some sort
of regularization to guaranteed continuity in areas that are
otherwise not constrained by measured data point. A smoothness
constraint provides this, as well as a mechanism to reduce the
effect of uncertainties in the measurement values.

> *ps it could be helpful to have these on the website too maybe?

Sorry, I'm not clear on how to label such information, and I'm
not sure how broad interest is in such details. Typically such
information is in the source code comments.

Graeme Gill.

Other related posts: