Yahoo Groups archive

Digital BW, The Print

Index last updated: 2026-04-28 22:56 UTC

Message

Re: [Digital BW] Tonal range and linearization

2004-12-06 by Steve Kale

Tyler

Ever narrowing circles of misunderstanding! We are getting closer - I think.
I wish I we had a white board - I think we would be done in about 10
seconds.


> From: Tyler Boley <tyler@...>



> Steve, my wording above was perhaps confusing. I did not mean to imply
> LAB makes sense as a working or editing space, but as an output
> standard for linearization.
> 

I understood you.  I guess I was raising the counter question that if there
is little difference in grey scale between 2.2 gamma and LAB (see Bruce's
curves) then what is gained by output at LAB?  But as I noted later in my
post, as the error rate between 2.2 gamma and LAB is low, I could tolerate
the difference if we solve the issue below:

> ...
>> With reference to my point above, do you linearize over 0 to 1 or
> over the
>> dynamic range for that curve?
> 
> I still don't see the logic in your previous assertions. an input
> value of 0 will always map to "no ink", paper white. It's density will
> always be determined by the particular paper. 1 (one) will always be
> the dmax capable from the particular hardware/workflow/materials.
> There are no input values "outside" that range. I don't see how any
> other approach can be useful. Put in a different paper, less white or
> with a coating that can't print as black, and everything changes. But
> I still want the full linearized range between, so why would I clip
> info or whatever?
> I'm not challenging what you have been saying, I've just not carefully
> followed it due to brain constraints on my end.
> StudioPrint is linearizing between paper white and ink black, though I
> can select where that black point is based on what the readings are
> telling me (there may be a better black point than max ink load).
> But I still want to send the RIP ALL the values of the file.
> 

OK let me try to explain what I am thinking.

Let's assume we do our step wedges like Paul does: 100% black (pixel value
0) on the left, 0% black ie white (pixel value 1) on the right.

First of all, I suspect we can agree that we both want to use the full range
of the printer and I think we can also agree that since the tonal range of
the printer is less than the tonal range of the image file (assuming the
image has been adjusted to fill or spread pixel values from 0 to 1, either
naturally, with a curve or with a levels adjustment) there must be some
compression of tonal range - either by the RIP or before it gets to the RIP.
Let's leave which to one side for now! Let us also agree that we don't want
any clipping.  So we have a necessary compression from perfect black (pixel
value = 0) to printer dMax and from pure white (pixel value = 1) to paper
white, and some function in between.

Do you agree that we can measure and test the results of our linearization
ie we have an empirical test as to whether we have done things right?  This
can be done by printing another step wedge with linearization "in place"
measuring the densities, calculating their luminosity equivalents, plotting
log10(luminance), ie -Density, against log10(pixel value), and comparing
this versus the same figures for the gamma 2.2 space.  The two graphs should
overlap as straight lines for the range of log10(pixel value) which are
within the tonal range of the printer.  If they do not then we have not then
we have not linearized to our chosen space.

The target values for gamma 2.2 are in 11 steps:

Norm. Pixel Val   log10(pixel value)  log10(luminance)
0.0     -infinity   -infinity
0.1     -1.00    -2.20
0.2     -0.70   -1.54
0.3     -0.52   -1.15
0.4     -0.40   -0.88
0.5     -0.30   -0.66
0.6     -0.22   -0.49
0.7     -0.15   -0.34
0.8     -0.10   -0.21
0.9     -0.05   -0.10
1.0      0.00    0.00


The log10(luminance) or -Density figures for LAB would, I believe, be
-infinity, -1.95, -1.52, -1.21, -0.95, -0.73, -0.55, -0.39, -0.25, -0.12,
0.00.

Now unless I am mistaken, a linearized RIP like QTR when it receives a
normalised pixel of 0 puts down max ink and gets dMax, around 1.68 for EEM,
and when it gets a normalised pixel value of 1 it puts down zero ink and
gets dMin (paper white), around 0.04 for EEM.  Fine, but what about points
in between?  Let's look at normalised pixel value = 0.1 (25.5 in 8 bit).
Gamma 2.2 wants 2.20 and LAB wants 1.95 but the max the printer can produce
is 1.68. I believe QTR would give it even less than 1.68. I think we can
already see that our empirical test will fail.  There will be no overlapping
of the curves and they will not necessarily cross at 0.5.  Put another way,
the have a completely different gamma.  It may be linear (I haven't tested
it) but it isn't gamma 2.2 and it isn't LAB.

If on the other hand, I recognised that the printer can't begin to record
changes in tone until dMin and that this equates to our linerization target
norm. pixel value equivalent of just over 0.9 and that it stops recording
changes in tone at dMax and that this equates to our linearization target
norm. pixel value of just under 0.20 and I put dMin and dMax in these places
and linearized between them then I would have a solid overlap from dMin to
dMax in my empirical test chart.  I would have linearized to my target.
Outside of this range my printer can't register tonal range but within it I
have a rate of change of values consistent with gamma 2.2 or LAB, whichever
I chose.

(As an aside, what if I had a photographic paper which was as white as EEM
and could only record the same dMax as EEM and a contrast of 2.2, how would
Kodak plot it's "characteristic curve"?  It would begin flat at a density of
0.04 then turn upwards at a linear slope until it hits 1.68 reflection
density and turn flat again. The horizontal axis LOG Exposure is equivalent
to LOG normalised pixel Value.  Only the chart in the second case has the
same profile as that which would be drawn by Kodak.)

So putting off to one side for the moment the issue of editing in one space
and linearizing to another, I do not see how you can linearize to LAB or
gamma 2.2 except in the manner I have described.  You linearize I guess but
not the way you intend to.  And if LAB more closely matches the way the "eye
sees" then I would want to be sure that I matched it. Starting at the mid
and moving left seeing increasingly darker shades at the correct rate of
change (and vice versa to the right).  If I linearize the way I am
suggesting and I used LAB, I also get my Kodak grey card reading for all
pixels at the mid point of 0.5 (K=50%, LAB=50) if I read their density in
the final print.

I am really not sure that I can explain myself more clearly.  If you believe
in LAB then you want to linearize to LAB.  LAB says that if I have a 20%
change from 50 to 60 in my range I get a defined change in tone.  As you get
better paper white and better inks then the range around LAB=50 gets wider -
we reach further out on our step wedge ALWAYS AT THE SAME RATE AS LAB...not
some other rate of change.

I hope this helps and would welcome any comments

Steve

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.