1
A novel scheme for color-correction using 2-D Tone Response Curves
(TRCs)
Vishal MongaESPL Group Meeting,
Nov. 14, 2003
2
Outline
Device Calibration & Characterization
One-dimensional Calibration– Typical Approaches– Merits and Limitations
Two-dimensional Color-Correction– Basic Concept– Applications
– calibration– stability control – device emulation
3
Why characterization & calibration?
Different devices capture and produce color differently
4
Why characterization & calibration?
Produce consistent color on different devices
5
Device Independent Paradigm
6
Printer Calibration and Characterization
Calibration– Tune device to a desired color characteristic– Typically done with 1-D TRCs
Characterization– Derive relationship between device dependent
and device independent color– Forward characterization – given CMYK, predict
CIELAB response (based on a printer model)– Inverse characterization – given an input
CIELAB response, determine CMYK required to produce it
7
Partitioning the device-correction
Characterization CalibrationOutputDevice
Calib.CMYK Archival/ Fast Re-print Path
Device Independent
Color
“Calibrated”CMYK
DeviceCMYK
Device-correction-function
“Calibrated Device”Alternate CMYK (fast emulation)
Motivation– Some effects e.g. device drift may be addressed (almost) completely via calibration– Calibration requires significantly lower measurement and computational effort
8
One-Dimensional Calibration
Two major approaches– Channel Independent – Gray-Balanced Calibration
Channel Independent– Each of C, M, Y and K separately linearized to
a metric e.g. Optical density or E from paper
– Ensures a visually linear response along the individual channels
9
Channel wise linearization ……….
Device Raw Response One-dimensional TRCs
10
Channel wise Linearization …. Testing
CMYK
sweeps
Calibrated
Printer response
11
Gray-balance Calibration
Goal: C=M=Y must produce gray/neutral – search for CMY combinations producing a*= b*=0
– Also capable of handling user-specified aim curves
12
One-Dimensional Calibration : Analysis
Very efficient for real-time color processing– For 8 bit processing just 256 bytes/channel– Very fast 1-D lookup
So what’s the problem?– Device gamut is 3-dimensional (excluding K) – We only shape the response along a one-
dimensional locus i.e. very limited control
13
1-D Calibration : Analysis ……..
Example: 1-D TRCs can achieve gray-balance or channel-wise linearity but not both
14
1-D Calibration : Analysis ……..
Gray-balance lost with channelwise linearization
a* vs C=M=Y=d
b* vs C=M=Y=d
15
Alternatives
Use a complete characterization– 3-D (or 4-D) look-up tables (LUTs) involve no
compromises – Expensive w.r.t storage and/or computation– Require more measurement effort
Explore an intermediate dimensionality– 2-D color correction– Requirements: Must be relatively inexpensive
w.r.t computation, storage & measurement effort
16
Two-Dimensional Color Correction
2-D TRCs instead of 1-D TRCs
2D TRC
Calibration determined2D TRCs
C
M
Y
Calibration Transform
C’
2D TRC
vi1(C,M,Y)
M’vi2(C,M,Y)
Y’vi3(C,M,Y)
Fixed Transforms
2D TRC
17
Example of 2-D Color Correction
Cyan 2-D LUT:
–Specify desired response along certain 1-D loci– Interpolate to fill in the rest of the table– LUT size = 256 x 511 = 128 kB/channel
0
x
Control along device
Gray (C = M = Y)
Control along device secondary axis (e.g. C = M, Y = 0)
Control along primary
Control along device secondary to black
255
510
C
M + Y
Control along primary
to black
18
Example of 2-D Color Correction
CM
Y
Calibration Transform
C’
M + Y
vi1(C,M,Y)
M’vi2(C,M,Y)
Y’vi3(C,M,Y)
Fixed Transforms
Calibration determined2D TRCs
C
C + Y
M
C + M
Y
Linearization 1-D TRCK’K
19
Application to Device Calibration
20
Application to Device Calibration
Enables greater control in calibration– e.g. linearization and gray-balance simultaneously– More generally, arbitrary loci in 2-D space can be
controlled to arbitrary aims
A geometric comparison with 1-D– 1-D: An entire plane C=C0 maps to same output C’
– 2-D: A line in 3-D space (intersection of planes C=C0, M+Y = S0) maps to same output C’
21
Visualization of 1-D Vs 2-D calibration
22
Results
Hardcopy Prints– Fig. 1, 1D linearization TRC (deltaE from
paper)– Fig. 2, 1D gray-balance TRC– Fig. 3, 2-D TRCs
23
Application to Stability Control
24
Experiment
Build calibration & characterization at time T0
– Print & measure a CIELAB target, compute E between input and measured CIELAB values
– Repeat at time T1 (>> T0 ) for different calibrations (e.g. 1-D deltaE, gray-balance, 2-D)
Calibration(updated)
Characterization(static)
Print & measure
LAB target within device gamut
Error metric calculation
E
LAB Values
CMYK
25
Results Printer : Phaser 7700 Times: T0 = Aug 1st T1 = Aug 20th
Correction
Derived at
Measured at
Average E94
error
95% E94 error
1-D gray-balance+ characterization
T0
T0
2.21
4.08
1-D channel independent
T1
T1
5.78
7.51
1-D gray-balance
T1
T1
4.73
8.02
2-D
T1
T1
2.66
4.59
No recalibration
T0
T1
6.83
10.67
26
Application to Device Emulation
27
Device Emulation
forward response g( vs ) of
emulated device Control Values
vs
Response Values
rs correction function h( rs ) of
emulating device
Emulation Control Values
ve
Complete Emulation Transform
fe( vs )=h(g(vs))
Calibration Transform
fc( vs ) (Partial Emulation)
Partial Emulation Control Values
Vc
Make a target device ``emulate” a reference
– Reference could be another device – printer/display
– Or a mathematical idealization (SWOP)
28
SWOP emulation on Xerox CMYK
Problem: – SWOP rich black requires high C,M,Y– Xerox CMYK rich black requires low C,M,Y
1-D TRCs for emulation– Monotonic cannot preserve rich black
4-D SWOP CMYK Xerox CMYK– Accurate, but costly for high speed printing
2-D emulation– A good tradeoff?
29
Partial 2-D Emulation
Use 4-D emulation as “ground truth” to derive 2-D TRCs
2-D Emulation LUTs are:C vs. M+Y M vs. C+Y Y vs. C+M K vs. min(C,M,Y)
K addition4 4
emulation LUTCMY
control point
C
M + Y
SWOP CMYK
2D TRC for Cyan
Xerox CMYK
Fill in C value
SWOP GCR
30
Visualization of emulation transform
31
Emulation : Results
1D 2D 4D
32
Conclusions
2-D color correction– Enables significantly greater control than 1-D– Implementation cost > 1-D but << 3/4-D
– Addresses a variety of problems – Calibration– Stability Control– Device Emulation
References– V. Monga, R. Bala and G. Sharma, ``Two-
dimensional transforms for device color calibration'', Proc. SPIE/IS&T Conf. On Color Imaging, Jan. 18-22, 2004
33
Back Up Slides
34
2-D Calibration : Response Shaping
35
SWOP Emulation on iGen
How to populate the 2-D table(s) ?– Specify 1-D swop2igen type corrections
along various axis (wherever possible) and interpolate?
– Experiments show interpolating gives a poor approximation to the response
K
min(C,M,Y)
Example
K’ is substantial
Almost no K’
Interpolating between 1-D loci does not capture this behavior
36
SWOP Emulation on iGen
Instead populate by “brute force” mimicking of the 4-dimensional response– For the K table, treat min(C,M,Y) axis as
C=M=Y (approximately a measure of input black)
– Run equal CMY sweeps for each K through 4-D corrections & fill the K table with the results
C, M, Y tables are trickier– Need to fold GCR into the table as well– C’ (corrected Cyan) must be a function of (C,
M+Y) as well as K
37
SWOP Emulation on iGen
510
G,B
M + Y
0
255
1 2
34
C
M,Y
For each C = i, i = 0, 1, … 255
(1) increase M up to i, Y = 0 (2) increase Y up to C=M=Y=i (3) increase M from i … 255 & (4) increase Y from i … 255, add K in sweeps according to a SWOP like GCR
Red
black
white
38
K
min(C,M,Y)
K’ = f (K, min(C,M,Y) )
0
255
255
SWOP Emulation on iGen - the K channel
39
Implementation
ALI scripts to derive 2-D TRCs
Calibration:– Core routine: get2DTRCs.ali– Support routines: stretchTRCs.ali,
tuneGrayTRCs.ali, fittrc2maxgray.ali – 2-D TRCs written as an ELFLIST of
ELFOBJECTS (in this case CTK LUT objects)
Emulation:– 2Demuln.ali, make2DTRCK.ali