[Openicc] Drop size calibration

Robert Krawitz rlk at alum.mit.edu
Fri Feb 1 20:31:56 PST 2008


   From: "Hal V. Engel" <hvengel at astound.net>
   Date: Fri, 1 Feb 2008 12:25:03 -0800
   MIME-Version: 1.0
   Content-Type: text/plain; charset="us-ascii"

   On Friday 01 February 2008 06:04:34 Lars Tore Gustavsen wrote:
   > On Feb 1, 2008 12:35 AM, Hal V. Engel <hvengel at astound.net> wrote:
   > > No I took this offlist since there were only two people that expressed an
   > > interest in it.  But if the list feels that this is not too far out side
   > > of the lists scope I can also post this here.  (If not, Lars, I will send
   > > you a copy of the measurement files and spreadsheets and also include you
   > > in any responses)  The off list thread has generated some interesting
   > > information about the measurements and the resulting plots.
   > >
   > > Hal
   >
   > Thanks Hal.
   >
   > It was quite interesting reading, and as usual it was over my head.
   > Anyway I found these sentences here (pleas forgive me for posting this
   >
   > publicly):
   > >"Hal writes
   > >In my earlier testing I also noticed that these curves seemed to change
   > >significantly when I switched ink carts.  So if there were a calibration
   > >utility it would make sense to recalibrate whenever a cart was changed."
   >
   > I guess the same would apply for other printers than the R2400. 

   I do not have any reason to believe that this does not apply to
   most if not all ink jet printers.  For some printers, like those
   with the nozzles built into the ink carts, this might be even more
   of an issue.

The 2400 is one of Epson's better non-Stylus Pro printers, to boot.
The question is, how much do the curves change.

   > And until then your spreadsheet is a really 
   > nice guide for gutenprint curves adjustments.

   I put the spreadsheet together to help me visualize what was going
   on and to see how my adjustments affected things.  It does not give
   you any guidance on what those curves should actually look like
   (beyond of course being smooth) or exactly what adjustments need to
   be made to correct specific issues in the curves.

One thing to consider would be to compare curves with 4-color inks
with 6 or 7 color inks.  You can do that by setting the ink type to 4
Color Standard rather than the default.  Then we could try to make the
two sets of curves match.  That would take care of the light inks.  To
handle drop sizes, compare the curves with single drop sizes with
those using multiple drop sizes (the CVS repository currently contains
code that allows you to adjust all of this).

The basic way I would do it in both cases would be to print a linear
sweep and try to find a best fit constant that would relate the two
curves, or at least the lower part of the curves before dot
gain/saturation issues started to come into play (particularly for
variable drops).

Maybe I really do need a spectrometer...

   For example Robert looked at the curves and based on his experience
   was able to say that perhaps there needed to be changes made to
   some of the light/dark ink transitions and he was able to say
   specifically what needed to be adjusted.  Looking at the curves I
   was able to surmise that some of the curve issues were related to
   the light/dark ink transition but this was mostly because there
   were none of those issues in the yellow curve which only uses a
   single ink.  I also had no idea what kind of adjustment would have
   improved the curves.

This one's actually a particularly egregious case, since the scaling
constants for light to dark inks are very different for cyan than for
magenta as it's currently tuned, and the curves suggested that the
tuning is probably wrong for both.

You actually did the right thing here by testing at a very high
resolution, since you were using only a single drop size and could
easily isolate the effects of dark/light transitions.

   In addition I don't know how much variation there is from printer
   to printer.  That is some of the problems I was seeing in the
   curves of my printer may not show up in your R2400 or the one
   Robert has.  Perhaps you could run a set of test measurements using
   the same settings I did and drop those into the spreadsheet.  If
   the curves look like mine then this is likely not something
   specific to my printer.

In this particular case I'm willing to all but guarantee that you'll
get very similar results.

So here's a very rough cut at a workflow (with a bunch of steps left
out for now; if this sounds interesting I'll flesh it out) I'd suggest
for calibrating drop sizes and light inks.  It's basically what I try
to do by eyeball, but with measurements it could be done a lot more
easily.

1) To calibrate light inks:

   A) Use the Ordered dither algorithm at a sufficiently high
      resolution to guarantee use of only one drop size.  For printers
      with 4 pl or bigger drops, use 2880x1440; for 2 pl or bigger,
      use 2880x2880 if available, or otherwise 5760x1440; for 1 pl or
      bigger, use 5760x2880.  Don't use a resolution much higher than
      this; you'll run into saturation problems.

   B) Using the paper of your choice, print a sweep of dark cyan using
      an appropriate number of patches, and also print a sweep of
      light cyan using the same number of patches, using Raw color
      correction.  This can be done with the test pattern generator
      (this allows you to access the individual ink channels); I'll
      need to provide instructions.  Then let dry as appropriate and
      measure.

   C) Find a best fit constant relating the two curves at each point.
      Ideally you should find that the dark cyan curve is consistently
      a certain amount darker, at any ink level, than the light cyan
      curve.  If you get a good linear relationship in the lower part
      of the curve, use that.

   D) Set the Light Cyan Value to the constant, and Light Cyan
      Transition to 1, and compare a sweep printed with the "normal"
      cyan (mix of light and dark) against the dark cyan only curve.
      If you see a dip in the curve centered near the constant, reduce
      Light Cyan Transition appropriately.  If you see a significant
      difference overall in the lower part of the curve, that means
      that your constant is wrong.  If the lower part of the curve is
      too light, your constant is too high (not enough light ink is
      being used).  If the lower part of the curve is too dark, your
      constant is too low (too much light ink is being used).

      For example: if you determine in step C that the constant
      relating light and dark cyan is 0.25, and you see a dip in the
      composite curve relative to the dark-only centered around 0.25,
      look to see where the dip starts.  If the dip starts around 0.2,
      you want to reduce the light cyan transition to 0.8 (this means
      that dark cyan ink starts to be used when light cyan has reached
      0.8).

      If the lower part of the curve is too dark overall, then your
      constant of 0.25 (meaning that light ink is 0.25 the value of
      dark ink, so 4x as much light ink is used to produce the same
      darkness) is too low, and you'll need to remeasure.  Similarly,
      if it's too light overall, your constant of 0.25 is too high,
      and not enough dark ink is being used.

      Now repeat the measurement.  If the two curves match, you're
      done.  If not, make adjustments as described above and repeat.

      The Light Cyan Transition controls where light ink starts
      transitioning to dark ink.  Generally, setting it to a lower
      value will produce a smoother and more "accurate" curve, but
      will yield grainier results, while setting it to a higher value
      will produce smoother texture but an increased dip in the
      midtones.  You may find that after you've adjusted per-channel
      ink limits that you can make the value of this control larger.

   E) If you have three level inks (black/light black/light light
      black) or quadtone, the basic procedure is the same, except that
      you should do it pairwise with adjacent inks starting from the
      darkest inks (black/light black first).  First calibrate black
      to light black.  When you've achieved good calibration, then
      calibrate light black to light light black.  When you've
      achieved good calibration there, combine all three.  You'll need
      to look more carefully at errors in the curves...

2) To calibrate drop sizes:

   This needs to be done separately at each resolution you're
   interested in.  I calibrate drop sizes using black.

   The basic process is similar to light ink adjustment, except that
   the upper part of the curve (when the ink is approaching
   saturation) will not yield a linear relationship.  Again, you want
   to find a relationship that yields the smoothest composite curve.
   I usually use Ordered dithering for this, but you may want to use
   Ordered New, which will probably yield better transitions due to
   the three level dither.

   Again, the test pattern generator provides a way to print sweeps of
   the three drop sizes separately.

   ...

Would a more detailed writeup on this be of interest to other people?

-- 
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