[Openicc] Drop size calibration

Robert Krawitz rlk at alum.mit.edu
Mon Jan 28 04:37:45 PST 2008


   Date: Mon, 28 Jan 2008 10:52:25 +0100
   From: Gerhard Fuernkranz <nospam456 at gmx.de>

   Graeme Gill wrote:
   > Robert Krawitz wrote:
   >   
   >> I'm experimenting with another approach to drop size calibration.
   >> This uses the new segmented dither algorithm to print stripes using
   >> different drop sizes.
   >>     
   >
   > I guess I'm a bit puzzled as to why you need such a calibration.
   > By definition a larger drop is going to result in higher density
   > than a smaller drop. So as long as the dither/screen progresses
   > through the dots in order, the result should be monotonic, even
   > if it's not very linear. As long as the input precision to
   > the screen/dither is high enough, and the resulting raw screen
   > transfer curve is smooth enough, the calibration will linearize the
   > result.

   The calibration algorithm just must be prepared of course, that the
   theoretical raw transfer curve of a typical multi-level screen
   which dithers between two adjacent drop sizes, may have
   discontinuities of the 1st derivatives at the boundaries between
   the drop sizes, i.e. the theoretical raw transfer curve is
   segmented, where each segment is continuous. But I think
   linearizing such curves should still be no problem, if the channel
   response is measured with sufficiently small steps (if necessary
   iteratively with two linearization passes). In practice one likely
   does not even notice these discontinuities as sharp corners in the
   measured raw response curve, due to noise, so in practice I'd
   assume that the raw curve is smoother than theoretically anyway.

   So I'm not so sure, whether it is really necessary to tune the
   dither algorithm just on order to give a smoother raw response (if
   this tunig does not improve other issues too), but it is likely
   more important to keep the algorithm's behaviour monotonic as long
   it is granted that drop size 1 < drop size 2 < drop size 3 ... The
   dither algorithm should be designed in a way, so that even wrong
   assumption about the absolute sizes of the drops should never
   result in a non-monotonicity.

This tuning is on a per-printer, per-drop size basis; it doesn't
involve actually modifying the dither algorithm.

The other thing is that I suspect that not every combination of
printer, paper, resolution, etc. will wind up getting properly
linearized, so I want to have reasonably good estimates of the drop
size out of the box.  I could always simply set sizes of 0.25, 0.5,
1.0 for everything and be done with it, but then a lot of resolutions
on a lot of printers will look rather ugly until someone gets around
to doing a lot of work.  This method is a lot faster than what I was
doing before (when I had to recompile the driver and print a whole
bunch of test strips and then try to estimate matches to make any
changes at all to the drop sizes).

-- 
Robert Krawitz                                     <rlk at alum.mit.edu>

Tall Clubs International  --  http://www.tall.org/ or 1-888-IM-TALL-2
Member of the League for Programming Freedom -- mail lpf at uunet.uu.net
Project lead for Gutenprint   --    http://gimp-print.sourceforge.net

"Linux doesn't dictate how I work, I dictate how Linux works."
--Eric Crampton


More information about the openicc mailing list