the numerical stability of lut-based color transformations

20
The numerical stability of LUT-based color transformations Giordano B. Beretta Print Production Automation Lab Hewlett-Packard Laboratories Palo Alto, California 1 April 2010 G. Beretta (HP Labs) speculative 1 April 2010 1 / 20

Upload: giordano-beretta

Post on 06-Sep-2014

617 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: The numerical stability of LUT-based color  transformations

The numerical stability of LUT-based colortransformations

Giordano B. Beretta

Print Production Automation LabHewlett-Packard Laboratories

Palo Alto, California

1 April 2010

G. Beretta (HP Labs) speculative 1 April 2010 1 / 20

Page 2: The numerical stability of LUT-based color  transformations

Disclaimer

For the following I have neither data nor an authoritative referenceThis presentation is purely speculative

G. Beretta (HP Labs) speculative 1 April 2010 2 / 20

Page 3: The numerical stability of LUT-based color  transformations

The ideal black & white printer

L*

counts

31 2131911591279563 2550

toner

paper

G. Beretta (HP Labs) speculative 1 April 2010 3 / 20

Page 4: The numerical stability of LUT-based color  transformations

The real black & white printer

L*

counts

31 2131911591279563 2550

toner

paper

measure

measure

interpo

late

G. Beretta (HP Labs) speculative 1 April 2010 4 / 20

Page 5: The numerical stability of LUT-based color  transformations

Halftoning

Gray tones are interpolated through halftoningSimplest case: spatial (printer) or temporal (display) ditheringExample: 8× 8 cell for 32 gray values (Bayer)

1 17 5 21 2 18 6 2225 9 29 13 26 10 30 147 23 3 19 8 24 4 20

31 15 27 11 32 16 28 122 18 6 22 1 17 5 21

26 10 30 14 25 9 29 138 24 4 20 7 23 3 19

32 16 28 12 31 15 27 11

To achieve a given gray level L? = `1, use the interpolation line tofind the inverse of the number of pixels in the required dithermatrix

G. Beretta (HP Labs) speculative 1 April 2010 5 / 20

Page 6: The numerical stability of LUT-based color  transformations

Determining the dither cell

L*

counts

31 2131911591279563 2550

toner

paper

ℓ1

(increments of 8)

G. Beretta (HP Labs) speculative 1 April 2010 6 / 20

Page 7: The numerical stability of LUT-based color  transformations

Printing is not linear

Printers are not linearDot gain, tribo-electric effects, etc.There is actually no simple modelSolution: printer characterization:

print swatches for the various countsmeasure each swatchinvert the lookup table

Question: How many measurements do we need?After printer linearization, simple linear interpolation is sufficient

G. Beretta (HP Labs) speculative 1 April 2010 7 / 20

Page 8: The numerical stability of LUT-based color  transformations

Piecewise linear interpolation

L*

counts

31 2131911591279563 2550

toner

paper

measure

measure

measure

measure

measure

G. Beretta (HP Labs) speculative 1 April 2010 8 / 20

Page 9: The numerical stability of LUT-based color  transformations

Error sources

1

2

3

4

5

6

7

8

ICC maker

proof vs. press

color transform proofer drift

press drift

inter-instrument

intra-instrument

G. Beretta (HP Labs) speculative 1 April 2010 9 / 20

Page 10: The numerical stability of LUT-based color  transformations

Do not forget your error bars

Printer characterization is a physics experimentMany sources of error (source: Ing. Rainer Wagner):

short term measurement repeatability: ∆E ∈ [0.02,0.34]long term measurement repeatability: ∆E ∈ [0.07,0.62]2 hour drift after calibration: ∆E ∈ [0.15,2.04]difference between instruments: ∆E ∈ [1.38,4.90]difference between sheets in an offset run: ∆E ∈ [0.26,1.51]difference between proofs over days: ∆E ∈ [0.62,1.85]maximal difference in 70% of an offset run: ∆E ∈ [3.20,3.60]error introduced by separation software: ∆E ∈ [2.37,4.82]difference between proof and print if technologies are different, ICCworkflow: ∆E ∈ [2.52,5.33]difference between proof and print if technologies and ICCproducers are different: ∆E ∈ [3.08,6.64]

It is important to keep the error bars in mindThe interpolated values will be in an interval

G. Beretta (HP Labs) speculative 1 April 2010 10 / 20

Page 11: The numerical stability of LUT-based color  transformations

Tolerance

L*

counts

31 2131911591279563 2550

toner

paper

Note the tolerances are not constant!

G. Beretta (HP Labs) speculative 1 April 2010 11 / 20

Page 12: The numerical stability of LUT-based color  transformations

How many measurements do we need?

To avoid artifacts, tone reproduction must be strictly monotonicNaïve thought: because the printer is far from linear, the moremeasurements we perform, the better the LUTHowever:

if the error bars overlap, monotonicity is no longer guaranteedincreasing measurements can backfireto improve print quality, increase printer accuracy first, then moremeasurements are useful

G. Beretta (HP Labs) speculative 1 April 2010 12 / 20

Page 13: The numerical stability of LUT-based color  transformations

Loss of monotonicity

L*

counts

31 2131911591279563 2550

toner

paper

non-monotonic

non-monotonic

On the coarser grid, this function is unchanged!

G. Beretta (HP Labs) speculative 1 April 2010 13 / 20

Page 14: The numerical stability of LUT-based color  transformations

What are the consequences?

Are too many measurements damaging?In practice, the artifacts from loss of monotonicity are small relativeto the printer instability, so they do not make things much worseThere is no change on the coarser gridThere is no benefit having more measurements whenmonotonicity is lost

G. Beretta (HP Labs) speculative 1 April 2010 14 / 20

Page 15: The numerical stability of LUT-based color  transformations

Possible experiment 1

Determine the tolerance for an actual monochrome printer andcalculate the recommended maximal number of measurements forstrict monotonicity

G. Beretta (HP Labs) speculative 1 April 2010 15 / 20

Page 16: The numerical stability of LUT-based color  transformations

Possible experiment 2

Separations introduce additional variance because the mapping isnon-injective (different ink combinations have the same CIELABvalue)Example: add a gray inkTypically, in the mid-tones there are multiple options for theseparations (Marc Mahy patent)Determine the maximum number of meaningful measurementswhen a gray separation is added

G. Beretta (HP Labs) speculative 1 April 2010 16 / 20

Page 17: The numerical stability of LUT-based color  transformations

Possible experiment 3

Consider a gray image printed on a color printerExample: add cyan, magenta, and yellow inksPrinter characterization is iterative

1 perform gray balancing2 determine 3-dimensional lookup table for color correction3 rebalance the grays4 determine a new color correction table5 usually print quality does not improve after 2 iterations

Determine the maximum number of measurements for which thetone scale is monotonic when a color printer is used for grayscaleprinting

G. Beretta (HP Labs) speculative 1 April 2010 17 / 20

Page 18: The numerical stability of LUT-based color  transformations

From grayscale to full color

Tessellation of the printer’s color spaceFailure of monotonicity becomes incorrect tessellation

in one or more dimensions a vertex has a non-monotoniccoordinate value and the tetrahedron is “is folded over”there can be holestetrahedra can intersect

How is the argument scaled from grayscale to full color?

G. Beretta (HP Labs) speculative 1 April 2010 18 / 20

Page 19: The numerical stability of LUT-based color  transformations

Scaling to n inks

There is order only in a 1-dimensional spaceThere is no order in a higher dimensional spaceHeuristic method: print thousands of color scales and examinethem for transposed colorsMore formally:

consider a sequence or family F = (xi )i∈I where the xi are bytecounts in n dimensions (separations)consider the set {Fj} of all families that are monotonic in alldimensionslet T be the color transformationthen the condition is that all T (Fj ) must be monotonic

G. Beretta (HP Labs) speculative 1 April 2010 19 / 20

Page 20: The numerical stability of LUT-based color  transformations

My ignorance

I do not remember the math of all thisAn intelligent paper should use a theorem of the underlying mathto declare a corollary that proves something non-obvious thatcannot be gleaned from studying the tessellation problem by itselfAn opportunity for a small investigation

G. Beretta (HP Labs) speculative 1 April 2010 20 / 20