[argyllcms] Re: Applying calibration to sRGB profile

  • From: Florian Höch <lists+argyllcms@xxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Sat, 25 Jun 2011 16:31:54 +0200

Hi,

Am 25.06.2011 15:02, schrieb Stephen T:
Hello,
I haven't given up yet. What I have been trying to do is apply my
display calibration to the ICC v2 sRGB profile. The idea is to have a
profile in Windows 7 Color Management that contains the vcgt tag (for
calibration) but leaves colours as default sRGB..

Interesting idea. I just read your previous post, so I think I understand what you're trying to achieve.

First, I tried using applycal:
 >applycal -v -a mycalibration.cal sRGB.icm mysRGB.icm
 >applycal -v -c mysRGB.icm
Profile has had calibration applied
No errors above, but the new profile does not contain a vcgt tag!

applycal (afaik) doesn't have anything to do with vcgt, it will modify the profile data itself to incorporate the calibration. That way, it works for all profile types, e.g. printer (which don't have and don't support vcgt naturally).

Next, I tried fakeread:
 >targen -d3 -f500 500patches
 >fakeread -i mycalibration.cal sRGB.icm 500patches
Fakeread option -i should only insert the calibration into the output
.ti3 file and not affect the readings.
 >colprof -v -D"Calibration plus sRGB" -qm -as 500patches
...
Profile check complete, peak err = 1.679860, avg err = 0.527110, RMS =
0.580622
Increasing the number of patches or using -qh does not significantly
reduce the errors. Now, I was expecting a near perfect fit with colprof
option -as since the sRGB profile seems to be a shaper-matrix profile
(which I inspected with iccdump). I don't know why, but -ax or -aX gives
a near perfect fit:
Profile check complete, peak err = 0.121406, avg err = 0.020250, RMS =
0.026392

I think the profile self fit error depends alot on the number of patches and profile type used, not so much the original profile used in fakeread, so it doesn't seem unreasonable that a LUT-type profile gives lower overall error than the simpler shaper+matrix model.

Anyhow, the profile generated with fakeread and colprof has a vcgt tag.
I can load the inserted calibration and it looks OK. I then loaded the
fakeread sRGB profile in Windows and compared photos in a colour-managed
viewer versus a non-colour managed viewer. There are subtle differences
in some colours although errors of less than 2 delta E are difficult to
detect.
I wonder is there a better way to achieve my objective or if anyone has
any tips?

The most straightforward way should be to just add the calibration as vcgt to (a copy of) the existing sRGB profile. I'm not sure if there's currently a ready-to-use tool that can do it, but I could provide a python script with that functionality pretty easily (code is all there, but I'd need to write a wrapper and simple commandline interface), or you could send/upload the calibration data somewhere and I'll add it to the sRGB profile for you.

Regards
--
Florian Höch


Other related posts: