Ben Goren wrote:
Anyway, it occurred to me that the best way to figure out the proper error value to use for the -r option of profile would be to print out a chart with a bunch of patches of the same colors, measure it, and then figure out what the standard deviation is (and convert that into a percentage). So, that's exactly what I did: I created a 39-patch chart, did a copy / paste in a text editor (with some editing) to make eight copies of the patch set, printed it, measured it, imported the results into an OpenOffice spreadsheet, and fiddled around with it until I came up with about a third of one percent as the error--which is in line with my eyeball guesses. (I'll be doing some more testing later today to further confirm and explore all this.)
This is a pretty reasonable way to go about things. It's tedious though, and tells you about the level of error at only one point in the colorspace.
I'm also pretty sure that that value would be much too low for my parents' cheap color laser printer, and probably a bit too high for ``real'' paper (I did this on plain paper just to figure out if it even made sense to do in the first place). I'm also curious to learn just how much of an impact patch size has on accuracy.
The most sensitive "real world" test I stumbled across, was to simply make up the profile, and eyeball the gamut surface. I found quite noticeable changes in the smoothness of the gamut surface, as I varied the -r factor in profile. Too small, and the surface was noticeably bumpy. As the number increased, the surface got visibly smoother, and looked more like one would expect for a well behaved device. The self fit errors rise as the -r factor goes up too, so I stopped at a suitable "knee" point.
Now, whether this is a good way of doing it, or the only way of doing it, I'm not sure.
There'd be a new flag to targen, similar to the existing -e flag, that tells how many times to repeat /all/ patches, not just the white ones. When profile is fed a chart with repeated patches, it calculates the appropriate value for -r itself, uses that, then creates a profile and reports the recommended value for -r for future use. You can then use the generated profile with the -c option of targen or just toss it entirely.
I' not sure such a thing is worth doing, unless there is an indication that such a calculated number is useful and meaningful. You've already expressed doubt that the number you came up with for your printer seems realistic. How does it compare with the number you arrive at in getting a smooth looking gamut surface ? Do the numbers agree ?
What sort of color was your test patch ? It would be interesting to do the same test with a quite light, and quite dark color, to see if the errors have a different magnitude.
cheers, Graeme Gill.