Low Complexity Two Dimensional Color

A novel scheme for color-correction
using 2-D Tone Response Curves (TRCs)
Vishal Monga
ESPL Group Meeting,
Nov. 14, 2003
1
Outline
Device Calibration & Characterization
One-dimensional Calibration
–
–
Typical Approaches
Merits and Limitations
Two-dimensional Color-Correction
–
–
Basic Concept
Applications
–
–
–
calibration
stability control
device emulation
2
Why characterization & calibration?
Different devices capture and produce
color differently
3
Why characterization & calibration?
Produce consistent color on different devices
4
Device Independent Paradigm
5
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
6
Partitioning the device-correction
Device-correction-function
Device
Independent
Color
“Calibrated”
CMYK
Calibration
Characterization
Device
CMYK
Output
Device
“Calibrated Device”
Alternate
CMYK (fast
emulation)
Calib.CMYK
Archival/ Fast
Re-print Path
Motivation
Some effects e.g. device drift may be addressed
(almost) completely via calibration
– Calibration requires significantly lower measurement
7
and computational effort
–
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
8
Channel wise linearization ……….
Device Raw Response
One-dimensional TRCs
9
Channel wise Linearization …. Testing
CMYK
sweeps
Calibrated
Printer response
10
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
11
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 onedimensional locus i.e. very limited control
12
1-D Calibration : Analysis ……..
Example: 1-D TRCs can achieve gray-balance
or channel-wise linearity but not both
13
1-D Calibration : Analysis ……..
Gray-balance lost with channelwise linearization
a* vs C=M=Y=d
b* vs C=M=Y=d
14
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
15
Two-Dimensional Color Correction
2-D TRCs instead of 1-D TRCs
Calibration Transform
C’
vi1(C,M,Y)
2D TRC
C
M
M’
vi2(C,M,Y)
Y
2D TRC
Y’
vi3(C,M,Y)
2D TRC
Fixed
Transforms
Calibration determined
2D TRCs
16
Example of 2-D Color Correction
Cyan 2-D LUT:
Control along device secondary axis (e.g. C = M, Y = 0)
255
C
Control along device
Gray (C = M = Y)
Control along primary
x
Control along device
secondary to black
Control along primary
510
0
M+Y
–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
to black
17
Example of 2-D Color Correction
Calibration Transform
C
C’
vi1(C,M,Y)
M+Y
M
C
M
Y
M’
vi2(C,M,Y)
C+Y
Y
Y’
vi3(C,M,Y)
C+M
Fixed
Transforms
Calibration determined
2D TRCs
K’
K
Linearization 1-D TRC
18
Application to Device Calibration
19
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’
20
Visualization of 1-D Vs 2-D calibration
21
Results
Hardcopy Prints
–
–
–
Fig. 1, 1D linearization TRC (deltaE from paper)
Fig. 2, 1D gray-balance TRC
Fig. 3, 2-D TRCs
22
Application to Stability Control
23
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)
LAB target
within device gamut
Characterization
(static)
Calibration
CMYK (updated)
Print & measure
LAB Values
Error metric
calculation
E
24
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
25
Application to Device Emulation
26
Device Emulation
Control Values
vs
forward response
g( vs ) of
emulated device
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)
27
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?
28
Partial 2-D Emulation
Use 4-D emulation as “ground truth” to derive
2-D TRCs
CMY
control point
SWOP
CMYK
K addition
Xerox CMYK
4 4
emulation LUT
Fill in C value
SWOP GCR
2D TRC for
Cyan
C
M+Y
2-D Emulation LUTs are:
C vs. M+Y
Y vs. C+M
M vs. C+Y
K vs. min(C,M,Y)
29
Visualization of emulation transform
30
Emulation : Results
1D
2D
4D
31
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
32
Back Up Slides
33
2-D Calibration : Response Shaping
34
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
Example
K
K’ is substantial
Almost no K’
min(C,M,Y)
Interpolating between 1-D loci does not capture this behavior
35
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
36
SWOP Emulation on iGen
G,B
black
255
C
1
2
3
white0
M,Y
M+Y
For each C = i, i = 0, 1, … 255
4
510
Red
(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,
37
add K in sweeps according to a SWOP like GCR
SWOP Emulation on iGen - the K channel
255
K
K’ = f (K, min(C,M,Y) )
0
min(C,M,Y)
255
38
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
39