[argyllcms] Re: Best (smallest) profiling patch set
- From: Gerhard Fuernkranz <nospam456@xxxxxx>
- To: argyllcms@xxxxxxxxxxxxx
- Date: Sun, 23 Apr 2006 16:03:15 +0200
This is to use profile/mpprof to generate an mpp profile, and then use
fakeread with 5000 test patches or so and the mpp profile, to generate
a test set that can be fed into profile to generate a conventional icc
profile.
I have done a test by resampling the USWebCoatedSWOP.icc profile, which
describes a pretty well-behaved device with smooth device
characteristics. From this profile, I have sampled a training set of 50
patches and a test set of 50000 patches.
Interestingly, from these 50 noise-free (pseudo) measurements, it seems
to be possible to create a (non-parametric) ICC profile with "profile"
which fits the test set of 50000 patches pretty well: peak = 4.796294,
avg = 0.706745, rms = 0.881217. I had to choose a pretty low smoothness
factor though, to obtain these numbers (I used -r 1.0 -rs 0.00003 for
this profile, and btw., to make these numbers comparable, I'm already
using rwf[] values of 1.0 in scat.c).
An mpp profile created from the 50 test patches seems not to give really
better results, verified against the huge test set: avg err = 0.734959,
max err = 9.429348.
It's also interesting, that an ICC profile re-fitted non-parametrically
from 5000 points sampled from this MPP profile gives even a lower error
than the MPP profile itself (with -r1.0 -rs1.0, which turned out to be
an optimal smoothness factor for this particular data): peak = 3.851308,
avg = 0.646701, rms = 0.775880
Without noise:
ICC: peak = 4.796294, avg = 0.706745, rms = 0.881217
MPP: avg err = 0.734959, max err = 9.429348
ICC from MPP: 3.851308, avg = 0.646701, rms = 0.775880
With noise:
fakeread -R 0.5:
ICC: peak = 12.481163, avg = 1.945920, rms = 2.233171
MPP: avg err = 2.100661, max err = 12.974311
ICC from MPP: peak = 9.925762, avg = 1.748951, rms = 1.972453
fakeread -R 1.0:
ICC: peak = 15.975544, avg = 2.626265, rms = 3.002383
MPP: avg err = 3.937223, max err = 31.624988
ICC from MPP: 20.960401, avg = 2.730346, rms = 3.324673
So I've the impression that at large noise levels with 50 data points,
the MPP model behaves worse than the non-parametric model (with optimal
smoothing factor), particularly the max. error of MPP is pretty large
(31 dE!), although one would probably expect, that a parametric model
would outperform a non-parametric model at higher noise levels. But it
looks like the MPP model has still a pretty large number of parameters,
and therefore likely still requires more samples to become more immune
against noise.
Comparison with a larger number of patches:
From 5000 noisy patches (-R 1.0) I could create an ICC profile with
peak = 6.254012, avg = 0.691324, rms = 0.850706 (verified against the
huge test set), and an MPP profile with avg err = 0.866134, max err =
5.738640.
Conclusion:
For noise-free data, an astonishingly good profile could be generated
from only 50 patches, for a device which behaves like
USWebCoatedSWOP.icc. But if the data are "noisy" (measurement errors,
reproduction error of the device, etc.), then the difference between a
profile created from a small number of data points and a large number
becomes clearly evident.
Regards,
Gerhard
- Follow-Ups:
- [argyllcms] Re: Best (smallest) profiling patch set
- From: Graeme Gill
- [argyllcms] Printread with DTP41 on WinXP SP2
- From: Roger Breton
- [argyllcms] Profiling a B&W printer
- From: Roger Breton
- References:
- [argyllcms] Re: Adobe BPC (maybe OT?)
- From: Roger Breton
- [argyllcms] Calculating profile from sensor spectral data?
- From: Per Baekgaard
- [argyllcms] Re: Calculating profile from sensor spectral data?
- From: Gerhard Fuernkranz
- [argyllcms] Best (smallest) profiling patch set
- From: Andrej Javoršek
- [argyllcms] Re: Best (smallest) profiling patch set
- From: Graeme Gill
Other related posts:
- » [argyllcms] Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
- » [argyllcms] Re: Best (smallest) profiling patch set
Without noise:
With noise:
Comparison with a larger number of patches:
Conclusion:
Regards, Gerhard
- [argyllcms] Re: Best (smallest) profiling patch set
- From: Graeme Gill
- [argyllcms] Printread with DTP41 on WinXP SP2
- From: Roger Breton
- [argyllcms] Profiling a B&W printer
- From: Roger Breton
- [argyllcms] Re: Adobe BPC (maybe OT?)
- From: Roger Breton
- [argyllcms] Calculating profile from sensor spectral data?
- From: Per Baekgaard
- [argyllcms] Re: Calculating profile from sensor spectral data?
- From: Gerhard Fuernkranz
- [argyllcms] Best (smallest) profiling patch set
- From: Andrej Javoršek
- [argyllcms] Re: Best (smallest) profiling patch set
- From: Graeme Gill