spectral-based color separation algorithm development - citeseer

349
SPECTRAL-BASED COLOR SEPARATION ALGORITHM DEVELOPMENT FOR MULTIPLE-INK COLOR REPRODUCTION by Di-Yuan Tzeng B.S. Chinese Culture University, Taipei, Taiwan (1988) M.A. Central Connecticut State University (1994) A dissertation submitted in partial fulfillment of the requirements for the degree of Ph.D. in the Chester F. Carlson Center for Imaging Science of the College of Science Rochester Institute of Technology September 1999 Signature of the Author ____________________________________________________ Accepted by ____________________________________________________ Coordinator, Ph.D. Degree Program Date

Upload: others

Post on 15-Feb-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: spectral-based color separation algorithm development - CiteSeer

SPECTRAL-BASED COLOR SEPARATION ALGORITHMDEVELOPMENT FOR MULTIPLE-INK COLOR

REPRODUCTION

by

Di-Yuan Tzeng

B.S. Chinese Culture University, Taipei, Taiwan (1988)

M.A. Central Connecticut State University (1994)

A dissertation submitted in partial fulfillmentof the requirements for the degree of Ph.D. in theChester F. Carlson Center for Imaging Science

of the College of ScienceRochester Institute of Technology

September 1999

Signature of the Author ____________________________________________________

Accepted by ____________________________________________________Coordinator, Ph.D. Degree Program Date

Page 2: spectral-based color separation algorithm development - CiteSeer

ii

CHESTER F. CARLSONCENTER FOR IMAGING SCIENCE

COLLEGE OF SCIENCEROCHESTER INSTITUTE OF TECHNOLOGY

ROCHESTER, NY

CERTIFICATE OF APPROVAL

Ph.D. DEGREE DISSERTATION

The Ph.D. Degree Dissertation of Di-Yuan Tzenghas been examined and approved by thedissertation committee as satisfactory for

the dissertation requirement for thePh.D. degree in Imaging Science

Dr. Roy S. Berns, Dissertation Advisor

Dr. Mark D. Fairchild

Dr. Jonathan S. Arney

Mr. Hubert D. Wood

Date

Page 3: spectral-based color separation algorithm development - CiteSeer

iii

DISSERTATION RELEASE PERMISSIONROCHESTER INSTITUTE OF TECHNOLOGY

ROCHESTER, NY YORK

SPECTRAL-BASED COLOR SEPARATION ALGORITHM DEVELOPMENT FORMULTIPLE-INK COLOR REPRODUCTION

I, Di-Yuan Tzeng, hereby grant permission to Wallace Memorial Library of R.I.T. toreproduce my dissertation in whole or in part. Any reproduction will not be forcommercial use or profit.

Di-Yuan Tzeng

Date

Page 4: spectral-based color separation algorithm development - CiteSeer

iv

SPECTRAL-BASED COLOR SEPARATION ALGORITHMDEVELOPMENT FOR MULTIPLE-INK COLOR

REPRODUCTION

by

Di-Yuan Tzeng

Submitted to the Center for Imaging Sciencein partial fulfill of the requirements for the Ph. D.

degree as Rochester Institute of Technology

September 1999

ABSTRACT

Conventional four-color printing systems are limited by an insufficient number of degreesof freedom for tuning the visible region of the spectrum; as a consequence, they are oftenlimited to metameric color reproductions. That is, color matches defined for a singleobserver and illuminant (usually CIE illuminant D50 and the 1931 standard observer) areoften unstable when viewed under other illuminants or by other observers. For criticalcolor-matching applications, such as catalog sales and artwork reproductions, the resultsare usually disappointing due to typical uncontrolled lighting and viewing. Furthermore,the existing multiple-ink printing systems, which all focus on expanding color gamut, donot alleviate metamerism since their separation algorithms are trichromatic in nature. Theadvantage of an increased number of degrees of freedom is not exploited.A research and development program has been initiated at the Rochester Institute ofTechnology’s Munsell Color Science Laboratory to develop a spectral-based colorreproduction system. Research has included multi-spectral acquisition systems andspectral-based printing. The current research is concerned with bridging these analysis andsynthesis stages of color reproduction. The goal of the doctoral research was to minimize

Page 5: spectral-based color separation algorithm development - CiteSeer

v

metamerism between originals and their corresponding reproductions, thus bestapproaching spectral matches. Accomplishing this goal required first estimating thespectral properties of the colorants used to create the original object or set of objects.After the possible colorants were statistically uncovered, they were correlated to anexisting ink database for determining an optimal ink set. An algorithm was developed forpredicting ink overprints, known as the Neugebauer secondary, tertiary, quaternaryprimaries, etc., which is the required information for color synthesis using a halftoneprinting process. Once all the required Neugebauer primaries were determined, a spectral-based printing model minimizing metamerism was derived to calculate the correspondingcolor separations for each selected ink. The various research components were testedcomputationally and experimentally. Finally, a DuPont Waterproof® system was used as arepresentation of halftone printing process to output each color separation in order to testseveral computational subsystems. This completes the chain of a spectral-based outputsystem. Five modules of this chain were developed and discussed in this dissertation.

Page 6: spectral-based color separation algorithm development - CiteSeer

vi

DEDICATION

This dissertation is dedicated to my parents, Chien-feng and Ai-Tsu, my beloved wife,Wei-Chien, my dearest son, Andrew Tsu-Jin, my second coming son, Yo-Jin, my youngerbrother, Chih-Yuan, and my youngest brother, Li-Yuan.

Page 7: spectral-based color separation algorithm development - CiteSeer

vii

ACKNOWLEDGEMENTS

I would like to thank Dr. Roy S. Berns, my advisor and a good friend, who saw the best ofme and helped to make this document and its associated research the single mostsignificant accomplishment of my life. His tireless guidance and inspiring advise has taughtme so much more than he realizes. I could not come to this point without his wisdom.

I thank my parents for giving me the strength and foundation materially and spiritually thathave accompanied me to come to this point. I could not have done this without theirunselfish support and so many sleepless nights. I greatly thank them for never giving up onme when I was a wild teenager.

I would like to thank my wife, Wei-Chien, for her entire devotion to my family taking fullcare of our family such that I can fully concentrate on pursuing this academic achievement.

I would like to thank my two sons, Andrew Tsu-Jin and Yo-Jin, who all came on thecrucial time of my academic life and brought me luck. Wei-chien was pregnant with Tsu-Jin when I had the Ph.D. comprehensive exam and passed it later. Now she is in her fifth-month of pregnancy with Yo-Jin. The advent of Yo-Jin brought me through my defensetoward my Ph.D. degree.

I gratefully acknowledge the financial support of the Munsell Color Science Laboratory,the Center for Imaging Science, and E. I. Du Pont de Nemours and Company.

I thank Dr. Mark D. Fairchild, Dr. Jonathan S. Arney, and Mr. Hubert D. Wood for theirgenerous efforts monitoring the quality of this doctoral research and their informativeadvise.

I would like to express my appreciation to Dr. Tony Liang and his colleagues at DuPontfor their tireless sample preparations to help substantiate this research.

Finally, I would like to thank all my friends and colleagues in the Munsell Color ScienceLaboratory for their innumerable comments, inspirations, and encouragement to thisresearch, especially, Dr. Noboru Ohta; Dr. Ethan Montag; Dr. Francisco Imai; Dr. PeterBurns; Mr. Gus Braun, who is going to be a Ph.D. in a short time; Mr. Dave Wyble, whohelped with the proofreading of this dissertation; and Mrs. Colleen Desimone.

Page 8: spectral-based color separation algorithm development - CiteSeer

viii

Table of Contents

I. INTRODUCTION 1A. OVERALL PROBLEM 3B. OVERALL SOLUTION 7C. SCOPE OF DISSERTATION 9

1. Colorant Estimation 102. Optimal Ink Selection 123. Ink Overprint Prediction 134. Spectral-Based Six-Color Separation Minimizing Metamerism 175. Multiple-Ink Direct Printing 18

II. BACKGROUND 20A. MULTIPLE-INK COLOR SYSTEMS 20B. KUBELKA-MUNK TURBID MEDIA THEORY 21C. COMPUTER COLORANT MATCHING 26D. VECTOR REPRESENTATION FOR COLORANTS 28

Vector Subspace 32E. LINEAR MODELING TECHNIQUES 34

Principal Component Analysis (PCA) 34 Principal Component Analysis for Color Science Applications 43 Interpretations for Coloration Processing Applications by PCA 46 Multivariate Normality for Effective Data Reduction 51

F. SPECTRAL PRINTING MODELS 57Basic Assumptions 58Murray-Davies Theory 59Dot Gain 61Neugebauer Theory 62

III. LINEAR COLORANT MIXING SPACES 66A. REFLECTION AND ABSORPTION SPACES 67B. TRANSFORMATION BETWEEN REFLECTANCE AND ΦΦΦΦ SPECTRA 70C. DIMENSIONALITY REDUCTION: NORMAL VERSUS NON-NORMAL POPULATIONS 73D. VERIFICATIONS 77E. CONCLUSIONS 85

Page 9: spectral-based color separation algorithm development - CiteSeer

ix

IV. COLORANT ESTIMATION OF ORIGINAL OBJECTS 86A. APPROXIMATELY LINEAR COLORANT MIXING SPACE 87B. PRINCIPAL COMPONENT ANALYSIS 88C. COLORANT ESTIMATION 90D. JUSTIFICATION OF EIGENVECTOR RECONSTRUCTION WITHOUT SAMPLE MEAN 92E. VERIFICATIONS 93

Testing the Constrained-Rotation Engine by a Virtual Sample Population 93 Colorant Estimation for the Kodak Q60C Target 95 Colorant Estimation for the Still Life Painting 97 Colorant Estimation for 105 Mixtures Using Ψ Space 102

F. CONCLUSIONS 107

V. OPTIMAL INK-SELECTION 109A. FIRST ORDER INK-SELECTION BY VECTOR CORRELATION 110B. CONTINUOUS TONE APPROXIMATION 113C. VERIFICATIONS AND RESULTS 116

Deriving a Linear Color Mixing Space for Continuous Tone Approximation 116 Vector Correlation Analysis in Ψ Space 120 Colorimetric and Spectral Performance by Continuous Tone Approximation 123

D. CONCLUSIONS 127

VI. SPECTRAL REFLECTANCE PREDICTION OF INK OVERPRINT USING KUBELKA-MUNK TURBIDMEDIA THEORY 129

A. PRIVIOUS RESEARCH 131B. TECHNICAL APPROACH 132C. EXPERIMENTAL 137D. RESULTS 139E. DISCUSSIONS 144F. CONCLUSIONS 145

Page 10: spectral-based color separation algorithm development - CiteSeer

x

VII. SPECTRAL-BASED SIX-COLOR SEPARATION MINIMIZING METAMERISM 146

A. SIX-COLOR YULE-NIELSEN MODIFIED SPECTRAL NUEGEBAUER EQUATION 147B. AN ALTERNATIVE APPROACH USING SIX-COLOR HALFTONE PRINTING PROCESS MINIMIZING METAMERISM 151

Subdivision of Six-Color Modeling 152 Forward Four-Color Halftone Spectral Printing Models 153

1. The first order forward model 1532. Second Order improvement (modeling for ink- and optical-trapping) 1573. Alternative second order improvement 1624. Modeling by matrix transformation 168

Proper Four-Color Sub-Model Selection 169 Backward Printing Models for Six-Color Separation Minimizing Metamerism 171

C. EXPERIMENTAL AND VERIFICATION 174Sample Preparation 175

1. Preparation for ramps 1762. Preparation of the verification target (5x5x5x5 combinatorial design for mixtures) 1763. Sample measurements 1774. Accuracy metric 178

Determining the Yule-Nielsen n-Factor 178Accuracy for the First Order Six-Color Forward Printing Model 180Second Order Modification (By Iino and Berns’ Suggestion) 184Alternative Second Order Modification (Proposed Algorithm) 189Modeling by Matrix Transformation 199Six-Color Separation Minimizing Metamerism 202

D. SPECTRAL PERFORMANCE COMPARISONS FOR THREE-, FOUR-, AND SIX-COLOR PRINTING PROCESSES 206E. CONCLUSIONS 209

VIII. MULTIPLE-INK DIRECT PRINTING 212A. VERIFICATIONS 212B. CONCLUSIONS 215

IX. CONCLUSIONS, DISCUSSIONS, AND SUGGESTIONS FOR FUTURE RESEARCH 217

Page 11: spectral-based color separation algorithm development - CiteSeer

xi

X. REFERENCES 228

XI. APPENDICES 236

APPENDIX A : MATLAB PROGRAMS FOR THE“MUNSELL” LIBRARY 237

APPENDIX B : MATLAB PROGRAMS FOR THE COLORANTESTIMATION SUBSYSTEM 248

APPENDIX C : MATLAB PROGRAMS FOR THE INK SELECTIONSUBSYSTEM 251

APPENDIX D : MATLAB PROGRAMS FOR THE INK OVERPRINTPREDICTION SUBSYSTEM 254

APPENDIX E : MATLAB PROGRAMS FOR THE PROPOSEDSIX-COLOR FORWARD PRINTING MODEL 271

APPENDIX F : MATLAB PROGRAMS FOR THE SPECTRAL-BASED SIX-COLOR SEPARATIONMINIMIZNG METAMERISM 285

APPENDIX G : THE SIX ESTIMATED COLORANTS FOR THE105 MIXTURES OF THE POSTER COLORS 294

APPENDIX H : THE ESTIMATED SPECTRAL ABSORPTION ANDSCATTERING COEFFICIENTS FOR THEWATERPROOF® CMYRGB PRIMARIES 295

APPENDIX I : THE REFLECTANCE SPECTRA OF THE ORIGINALGRETAG MACBETH COLOR CHECKER 297

APPENDIX J : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLORCHECKER BY THE PROPOSED SIX-COLORSEPARATION ALGORITHM 301

APPENDIX K : THE REFLECTANCE SPECTRA OF THEREPRODUCED GRETAG MACBETH COLORCHECKER USING DUPONT WATERPROOF ® SYSTEM 305

APPENDIX L : THE REFLECTANCE SPECTRA OF THE PREDICTEDGRETAG MACBETH COLOR CHECKER USINGFUJIX PICTROGRAPH 3000 309

APPENDIX M : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLORCHECKER USING KODAK PROFESSIONAL8670 PS THERMAL PRINTER 313

Page 12: spectral-based color separation algorithm development - CiteSeer

xii

APPENDIX N : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLORCHECKER USING DUPONT WATERPROOF ®

WITH CMYK PRIMARIES 317APPENDIX O : THE ACCURACY OF THE GRETAG SPECTROLINO

SPECTROPHOTOMETER 321

Page 13: spectral-based color separation algorithm development - CiteSeer

xiii

LIST OF TABELS

Table 1-1: The number of overprints of a k-primary halftone printing process. 16

Table 2-1: A sample set (shown up to five samples) of absorptionmeasurements from 400 nm to 700 nm at 20 nm intervals. 41

Table 2-2: The principal components as the new coordinates in the eigenvector coordinate system of the samples in Table 2-1. 42

Table 3-1: The colorimetric and spectral accuracy of the multivariate normaland non-normal sample sets reconstructed with different numberof dimensions, where Stdev stands for the standard deviation andRMS representing the totalroot mean square error of thereconstructed reflectance spectra. 77

Table 3-2: The percent variance by eigenvector analysis in both reflectanceand absorption space of IT8.7/2 reflection target. 78

Table 3-3: The colorimetric and spectral performance of three eigenvectorreconstruction in both spaces for an IT8.7/2 reflection target. 80

Table 3-4: The statistical performance by six-eigenvector reconstruction for141 acrylic colors in R, Ψ and Φ spaces. 81

Table 3-5: The statistical performance by six-eigenvector reconstruction for105 poster colors in R, Ψ ,and Φ spaces. 82

Table 4-1: The spectral and colorimetric accuracy of the three-eigenvectorreconstruction for the Kodak Q60C. 95

Table 4-2: The spectral and colorimetric accuracy of the six-eigenvectorreconstruction for the still life painting. 98

Table 4-3: The spectral and colorimetric accuracy of the six estimatedcolorants for the still life painting. 100

Table 4-4: The colorimetric and spectral accuracy of the six eigenvectorreconstruction for the 105 mixtures. 105

Table 5-1: The colorimetric and spectral accuracy for the four SWOPprimaries synthesizing the 928 samples of IT8/7.3 target in theproposed linear colorant mixing space. 118

Table 5-2: The correation coefficeints and the chroma of the 18 inks withthe five chromatic statistical primaries. 122

Table 5-3: The spectral and colorimetric accuracy of the three optimal ink sets. 123

Page 14: spectral-based color separation algorithm development - CiteSeer

xiv

Table 5-4: The Pantone color names of the three optimal ink sets. 124Table 5-5: The spectral and colorimetric accuracy of the three worst performing

ink sets. 125Table 5-6: The ink combinations of the three worst performing ink sets. 125

Table 6-1: The colorimetric accuracy, spectral accuracy, and the statisticalthickness for the six primaries. 140

Table 6-2: The colorimetric and spectral accuracy of the 25 overprints. 142

Table 7-1: The effective dot areas and the correction scalar, q, of cyan fixedat 50% theoretical dot area by overlapping the secondary magenta ink at various theoretical dot areas (Iino and Berns, 1998). 161

Table 7-2: The determined q scalars by proposed modification and thedot-gain of the primary (magenta) given that the secondary (cyan) is present. 164

Table 7-3: The colorimetric and spectral accuracy of n = 2.2 in predicting all72 samples of the six primary ramps where Stdev stands for thestandard deviation and RMS represents the root-mean-square error in unit of reflectance factor. 179

Table 7-4: The colorimetric and spectral accuracy of the first order forwardmodel in predicting the 6,250 samples of the verification target. 181

Table 7-5: The colorimetric and spectral accuracy in predicting the verificationof 6,250 sample by the algorithms suggested by Iino and Berns. 186

Table 7-6: The theoretical dot areas and their correction scalar by Eq. (7-14)without logical correction. 190

Table 7-7: The theoretical dot areas and their correction scalar by Eq. (7-14)with logical correction. 192

Table 7-8: The colorimeric and spectral accuracy of the proposed algorithmsin predicting the verification target of 6,250 sample mixtures. 193

Table 7-9: The colorimeric and spectral accuracy of the proposed algorithmsmodified by Eq. (7-20) in predicting the verification target of 6,250sample mixtures. 196

Table 7-10: The colorimetric and spectral performance of the verificationtarget predicted by the matrix method. 201

Table 7-11: The predicted theoretical dot areas, colorimetric and spectralerrors of the 24 colors in Macbeth color checker where M.I.represents the metamerism index. 203

Table 7-12: The statistical results in predicting the 24 colors using theproposed six-color printing model. 204

Page 15: spectral-based color separation algorithm development - CiteSeer

xv

Table 7- 13: The colorimetric and spectral performance of the 22 in gamutcolors. 204

Table 7-14: The color difference of the predicted Macbeth Color Checkerunder illuminant A and F2 by four different printing processes,where the color names corresponding to the bold faced entriesare the out of colorimetric gamut colors of each device. 208

Table 8-1: The colorimetric and spectral accuracy of original vs. reproductionand prediction vs. reproduction for the Gretag Macbeth ColorChecker. 213

Table 8-2: The statistical colorimetric and spectral accuracy correspondingto the predicted and reproduced Gretag Macbeth Color Checker. 214

Page 16: spectral-based color separation algorithm development - CiteSeer

xvi

LIST OF FIGURES

Fig. 1-1: An application of paint catalog sales by the conventional four-colorprinting. Notice that the paint chip approximately matches the printedpaint chip under daylight illuminant and mismatches the printed paintchip under the Incandescent illuminant. 5

Fig. 1-2: The color gamuts projected on the xy chromaticity plane for Pantone Hexachrome, conventional four-color printing process, and CRT. 6Fig. 1-3: The outline of a multi-spectral color reproduction system. 8Fig. 1-4: The structure chart of the research development for spectral printing. 10Fig. 1-5: The structure diagram of colorant estimation. 12Fig. 1-6: The optimal ink selection scheme for low-error spectral reproduction. 13Fig. 1-7: The microscopic structure of halftone color formulation of a CMY

printing device, where Rλ, color is the spectral reflectance factor of acolor appearing in the figure. 14

Fig. 1-8: The structure of spectral-based six-color printing process whereYNSN stands for Yule-Nielsen modified spectral Neugebauer equation. 19

Fig. 2-1: The three dimensional vector, P3, in ℜℜℜℜ3. 29Fig. 2-2: Spectral reflectance curve of the example. 31Fig. 2-3: Example for a set of three dimensional vectors localized in various

vector subspaces. 33Fig. 2-4: Scatter plot of a two dimensional sample set. 35Fig. 2-5: The representation of sample set of Figure 4 in the eigenvector

coordinate system. 38Fig. 2-6: The mean (thick line), the first eigenvector (thin line), and the

second eigenvector (dashed line) of the 622 daylight measurements(Judd, MacAdam, and Wyszecki, 1964). 45

Fig. 2-7: Spectral distribution of typical daylight at correlated colortemperatures 4800 K, 5500 K, 6500 K, 7500 K, and 10,000 K(Judd, MacAdam, and Wyszecki, 1964). 46

Fig. 2-8: Three sets of absorption spectra of cyan, magenta, and yellow dyes(left to right) at eleven different concentrations. 47

Fig. 2-9: The first six eigenvectors obtained for the virtual sample set. (Asmany as thirty-one eigenvectors can be shown.) 48

Fig. 2-10: The six eigenvectors obtained from an IT8.7/2 reflection target. 50Fig. 2-11: Scatter plot of the 500 random samples and their eigenvectors from

a uniform distribution. 52

Page 17: spectral-based color separation algorithm development - CiteSeer

xvii

Fig. 2-12: Normal probability plot of absorption coefficients at 500 nm fromthe virtual normal population obtained by linear combinations of threelinearly independent dyes. 55

Fig. 2-13: Normal probability plot of absorption coefficients at 500 nm of theexponential population obtained by linear combinations of threelinearly independent dyes. 55

Fig. 2-14: The two-dimensional scatter plot of absorption coefficients at550 nm vs. 500 nm from the virtual normal population obtained bylinear combinations of three independent dyes. 57

Fig. 2-15: The outline of a 2x2 halftone cell. 58Fig. 2-16: The 3x3 halftone cells covered by three different dot area coverage. 60Fig. 2-17: Non-ideal halftone dot shapes vary due to the mechanical dot gain effect. 61Fig. 2-18: The cause of optical dot gain. 62

Fig. 3-1: The possible field of view of a spectrophotometer. 71Fig. 3-2: The normal plot of simulated reflectance factors at each sample

wavelength obtained by linear combinations of six approximatelynormal distributions. 75

Fig. 3-3:The normal plot of simulated reflectance factors at each samplewavelength generated by linear combinations of six non-normaldistributions. 76

Fig. 3-4: The normal plot of marginal distributions of IT8.7/2 reflection targetin reflectance space. 79

Fig. 3-5: The Kubelka-Munk inverse transformation, Eq. (3-3), for opaquecolor. 83

Fig. 3-6: An example of enhanced spectral error after the transformation byEq. (3-3). 84

Fig. 3-7: The transformation from Ψ to R space by Eq. (3-7). 84

Fig. 4-1: The still life painting of a floral arrangement creating with six opaquecolorants. 87

Fig. 4-2: The six eigenvectors obtained from the still life painting. 89Fig. 4-3: The six acrylic paints used for the computer generated sample

population. 93Fig. 4-4: The all-positive eigenvectors as the estimated dye spectra (thick line)

and the local eigenvectors (dotted lines). 96Fig. 4-5: The six all-positive eigenvectors as the estimated colorants for the still

life painting. 99Fig. 4-6: The estimated colorants (solid lines) and the original colorants

(astroidal lines) used for the still life painting. 100

Page 18: spectral-based color separation algorithm development - CiteSeer

xviii

Fig. 4-7: The 105 mixtures created by hand mixing six opaque poster paints. 103Fig. 4-8: The spectral reflectance factors of the six poster colors used for

creating the 105 opaque mixtures. 103Fig. 4-9: The offset vector,

v

a , for transforming the 105 mixtures to Ψ space. 104Fig. 4-10: The six eigenvectors of the 105 mixtures in Ψ space. 105Fig. 4-11: The reflectance factors of the six original colorants (solid lines) and

statistical primaries (dashed lines) derived by a constrained rotationfrom the six eigenvectors. 106

Fig. 5-1: The SWOP specified process CMYK primaries and paper substrate. 117Fig. 5-2: The colorimetric and spectral error vs. w values for the empirical

transformation, Eq. (5-2), where M.I. represents metamerism index. 117Fig. 5-3: The four spectra reconstructed with the highest colorimetric and

spectral errors based on the linear colorant mixing space where solidline is the measured spectrum and the dashed line is the reconstructedspectrum . 119

Fig. 5-4: The six statistical primaries derived from the 105 mixtures by thecolorant estimation module. 120

Fig. 5-5: The Pantone 14 basic colors and the process CMYK as the inkdatabase (Color name order corresponding to each spectrum is fromleft to right and top to bottom). 121

Fig. 5-6: The three spectral reconstructions of a sample corresponding to themaximum prediction error by the three optimal ink sets. 125

Fig. 5-7: The three spectral predictions of the sample, shown in Fig. 5-6, bythe three worst performed ink sets. 126

Fig. 5-8: The two reconstructed spectra by set 23 and set 26 for the sampleused as the example in Fig. 5-6. 127

Fig. 6-1: The microscopic structure of color formation by a halftone printingprocess where Rλ,color represents the spectral reflectance factor ofa color appearing in the square area. 129

Fig. 6-2: An ink film applied on black and white contrast paper. 133Fig. 6-3: The diagram of a three-ink-layer overprint. 136Fig. 6-4: The six primaries printed on contrast paper. 138Fig. 6-5: Twenty-five overprints printed on coated paper. 138Fig. 6-6: The spectral absorption (solid line) and scattering (dashed line

multiplied by ten times) curves of the six primaries. 139Fig. 6-7: The difference spectra between measured and predicted primaries. 140Fig. 6-8: Histogram of the metamerism indices for prediction of the 25

overprints. 142

Page 19: spectral-based color separation algorithm development - CiteSeer

xix

Fig. 6-9: The difference spectra of four overprints best predicted with highaccuracy. 143

Fig. 6-10: The difference spectra of four overprints predicted with relativelylow accuracy. 143

Fig. 6-11: The estimated two optical constants for cyan ink and correspondingdifference spectrum in units of reflectance factor. 145

Fig. 7-1: The structure chart for the development of six-color separationminimizing metamerism. 152

Fig. 7-2: The structure of a general forward halftone printing model where f( )is a mathematical function or LUT describing the dot-gain effect andNλ,n( ) is the function of Yule-Nielsen modified spectral Neugebauerequation. 154

Fig. 7-3: The algorithm structure of determining the Yule-Nielsen n-factorwhere INV(YNMD) stands for the inverse function, Eq. (7-3), ofn-factor corrected spectral Murray-Davies equation. 156

Fig. 7-4: A set of theoretical to effective dot area transfer functions determinedfrom a CMYK halftone printing process. 157

Fig. 7-5: The dot-gain functions of the CMYK ramps given in Fig. 7-4. 158Fig. 7-6: The family of dot-gain curves of a cyan ramp when magenta ink

presents at 0%, 25%, 50%, and 75% fractional dot areas. 159Fig. 7-7: The dot-gain loci of a cyan ramp when a magenta ink is present at

different theoretical dot areas where the locus goes through a3, b3,and c3 are the dot gains esimated by the first-order model, Iino andBerns' algoritms, and the proposed algorithms, respectively. 166

Fig. 7- 8: The functions of dot gain corrrection scalar by Iino and Berns (left)and the proposed (right) algorithms. 167

Fig. 7-9: The structure of the six-color backward spectral printing model usingcyan, magenta, yellow, green, orange and black ink as printingprimaries. 173

Fig. 7-10: The reflectance spectra of the printed six primaries and substrate. 175Fig. 7-11: The mean prediction accuracy of all 72 samples of the six primary

ramps as function of n-factor. 178Fig. 7-12: The measured and the predicted reflectance spectra by Eqs. (7-3)

and (2-33) using n = 2.2 where the solid lines are measured spectraand the dashed lines are the predicted spectra. 179

Fig. 7-13: The theoretical to effective transfer functions of the six primaries. 180Fig. 7-14: Histogram of the colorimetric performance using the first-order

forward printing model in predicting the 6,250 samples of theverification target. 181

Page 20: spectral-based color separation algorithm development - CiteSeer

xx

Fig. 7-15: The vector plot of the 100 predicted samples with the highestcolorimeric errors by the first-order forward model. The vector tailrepresents the measured coordinate and the vector head representsthe prediction. 183

Fig. 7-16: Four example spectra showing under prediction by the first ordermodel. 183

Fig. 7-17: The three example functions of dot-gain correction scalar determinedfor CMYK sub-model based on Iino and Berns' algorithms. 185

Fig. 7-18: Histogram of the colorimetric error in units of ∆E*94 for the 6,250

samples predicted by Iino and Berns' algorithms. 186Fig. 7-19: The vector plot of L* vs. a* for the 100 samples used as examples

in Fig. 7-15 predicted by Iino and Berns' algorithms. 187Fig. 7-20: The spectral predictions of the four example samples used as

examples in Fig. 7-16 by the Iino and Berns' algorithms. 188Fig. 7-21: The three example functions of dot-gain correction scalar

determined for CMYK sub-model based on proposed algorithms. 190Fig. 7-22: Histogram of the colorimeric accuracy of the proposed algorithms

in predicting the verification target of 6,250 sample mixtures. 193Fig. 7-23: The vector plot of L* vs. a* for the 100 samples used as examples

in Fig. 7-15 predicted by the proposed algorithms. 194Fig. 7-24: The spectral prediction of the four samples used as examples in

Fig. 7-16 by the proposed algorithms. 195Fig. 7-25: Histogram of the colorimeric accuracy of the proposed algorithms

modified by Eq. (7-20) in predicting the verification target of 6,250sample mixtures. 197

Fig. 7-26: The vector plot of L* vs. a*, L* vs. b*, and b* vs a* for the 300samples whose colorimetric error is predicted higher than 2.41 unitsof ∆E*94. 198

Fig. 7-27: The spectral prediction by the proposed algorithms modified byEq. (7-20) for the four samples used as examples in Fig. 7-16. 199

Fig. 7-28: Histogram of the colorimeric accuracy of the matrix method inpredicting the verification target of 6,250 sample mixtures. 201

Fig. 7-29: The four best predicted spectra in terms of metamerism index ofthe 24 colors. 205

Fig. 7-30: The four worst predicted spectra in terms of metamerism index ofthe 24 colors. 206

Fig. 8-1: The original, predicted, and reproduced spectral reflectance factorsof the six Gretag Macbeth Colors. 215

Page 21: spectral-based color separation algorithm development - CiteSeer

1

I. INTRODUCTION

Conventional graphic reproduction at the analysis stage, in general, uses broad

band RGB filters to determine color densities (Dr, Dg, and Db) of an original. It then

converts the measured color densities to effective halftone fractional dot areas

corresponding to process cyan, magenta, yellow and black (CMYK) inks. This is done by

using empirically determined ink tables constructed by exhaustive sampling and measuring

prints of a particular printing process (Pobboravsky and Pearson, 1972; Viggiano, 1985).

High-end color scanners for the printing industry were initially invented by Hardy

and Wurzburg in 1948, known as the Hardy and Wurzburg scanner, and by Murray and

Morse in 1941 known as the P.D.I. scanner. The Hardy and Wurzburg scanner was

designed with spectral sensitivities equal to the CIE color matching functions,

x y and z( ), ( ), ( ),λ λ λ or linear transformations of them, in order to record tristimulus

values of originals and evaluate the amount of CMY inks needed to be delivered onto

paper substrate through electronic computing circuits (Hardy and Wurzburg, 1948; Hardy

and Dench, 1948). Whereas, the P.D.I. scanner was devised based on the masking theory

instead of the Neugebauer theory (Murray and Morse, 1941; Hunt, 1995).

The later modified versions such as the Crossfield Diascan, Hell Chromagraph, and

Linotype-Paul Linoscan, are generally designed with three narrow-band spectral

sensitivities centered around short (450 nm), medium (550 nm), and long (650 nm)

Page 22: spectral-based color separation algorithm development - CiteSeer

2

wavelength regions throughout the visible spectrum to evaluate the color densities (Dr, Dg,

and Db) or CMYK concentrations of an original. These scanners function more closely to

densitometers instead of colorimeters since their spectral sensitivities are not linearly

related to CIE color matching functions. High-end scanners used in the printing industry,

which evaluate color densities (Dr, Dg, and Db) or CMYK concentrations of originals, do

not unambiguously record the color information of originals. As a consequence, only a

metameric reproduction can be achieved by a printing process if colorants used in

reproduction are different from that of original (Berns and Shyu, 1995). Thus, the

outcome of the pre-press color acquisition together with the four process colors by the

conventional printing is intrinsically metameric.

Although metameric reproduction by CMYK color reproduction of conventional

printing technology accomplishes pleasing results, the color mismatch under illuminants

other than that standardized by the printing industry is always problematic for critical

color-matching applications such as catalog sales, art-work reproduction, and computer-

aided design.

Nowadays, the demanded quality of color reproduction is skyrocketing.

Consumers are more willing to invest extra capital in pursuing high fidelity color

reproduction for its appealing results with respect to printing technology. Generally, the

terms Hi-Fi, multispectral, and multiple-ink are synonyms. The so called “high fidelity”

color reproduction utilizes more than four primary inks to expand device gamuts (Carli

Page 23: spectral-based color separation algorithm development - CiteSeer

3

and Davis, 1991). It is believed that a larger device gamut has a better chance to match

colors from the real world because, theoretically, a system can exactly reproduce the

colorimetric values that fall within its color gamut. Previous research by Ostromoukohv

suggested a way to enhance chromaticity gamut via heptatone multicolor printing process

(Ostromoukhov, 1993). He employed the Neugebauer equation together with seven

printing primaries to match the colorimetric information (tristimulus values) of an

original. This approach is a prevalent scheme for state-of-the-art Hi-Fi color systems.

However, the colorimetric matching reproduction still suffers from both illuminant and

observer metamerism (Grum and Bartleson, 1980). Kohler and Berns pointed out that

illuminant metamerism could be reduced by using five or more colored inks based on

spectral color reproduction (Kohler and Berns, 1993). The primary goal of this doctoral

research is to devise color separation algorithms for multiple-ink printing systems that are

capable of reconstructing the spectral information from original objects such that the

metamerism is minimized between original objects and their color reproductions.

A. OVERALL PROBLEM

One manifestation of metamerism occurs when two surfaces, each produced with

different colorants as judged by their distinct spectral reflectance factors integrate to the

same color perception under a given lighting condition and to a different color perception

under other illuminants with respect to the human visual system. Metamerism can be used

Page 24: spectral-based color separation algorithm development - CiteSeer

4

as an advantage for color devices such as CRTs and printers to reproduce trichromatic

matches between originals and reproductions under a predefined viewing condition. That

is, metamerism enables CRTs and printers to accomplish colorimetric synthesis in a

relatively inexpensive fashion since the color match is defined as the identical colorimetric

values between originals and their reproductions. However, all sorts of materials are not

necessarily made from phosphors and inks. The color synthesis by phosphors and inks do

not render color unambiguously when only a metameric color match can be achieved.

Ambiguity means that the color match is only defined for a standard viewing environment.

Color mismatch, due to uncontrollable lighting conditions, affects the accuracy of color

communication (Berns, 1998).

Current four-color printing systems are limited to metameric reproduction due to

an insufficient number of degrees of freedom. This means that the possible spectral

variations from originals can not be synthesized by only four inks given that the originals

are likely constituted by more than four distinct colorants. Figure 1-1 exemplifies a catalog

sales for a paint retail store. Paint samples were printed on the catalog to convey the

chromatic information and try to attract the preference of consumers. A paint chip is

placed underneath the catalog to represent the paint sold in a paint store. Standard

daylight is assumed as the illumination for paint stores and incandescent illuminant is

assumed to be the typical indoor illumination used by general consumers. Once a

consumer matches his or her color preference under home illumination from the catalog

Page 25: spectral-based color separation algorithm development - CiteSeer

5

and purchases the paint based on a visual match by the catalog under the illumination in a

paint store, it is possible that the consumer will return the paint after he or she realizes

there are mismatches for his or her applications indicating by that the paint matches the

printed sample under daylight illuminant and mismatches under the incandescent

illuminant. This is a typical problem of metamerism. The paint industry can not just sell

paint by catalog because of metameric catalog reproduction.

Daylight illuminant Incandescent illuminant

Fig. 1-1: An application of paint catalog sales by the conventional four-color printing.Notice that the paint chip approximately matches the printed paint chip under daylight

illuminant and mismatches the printed paint chip under the Incandescent illuminant.

Since the insufficient number of degrees of freedom lead to metameric

reproduction, the intuitive action for increasing degrees of freedom by adopting two or

more inks should alleviate metamerism. Although the current multiple-ink printing

Page 26: spectral-based color separation algorithm development - CiteSeer

6

systems, such as Pantone Hexachrome, Küppers 7-Color, and DuPont Hyper Color,

employ six or more inks for high fidelity color reproduction, their color separation

algorithms are still based on trichromatic color reproduction. The increased degrees of

freedom are used for expanding device color gamut (Herbert, 1993; Boll, 1994; Stollnitz,

Ostromoukhov, and Salesin, 1998; Viggiano, 1998). The problem of metamerism is not

alleviated by these systems. The advantage of more number of degrees of freedom is not

fully exploited. Figure 1-2 demonstrates the color gamuts, plotted in terms of xy

chromaticities, of Hexachrome, RGB monitior, and four-color printing process,

respectively.

Hexachrome

RGB Monitor

Process 4C

x

y

Fig. 1-2: The color gamuts projected on the xy chromaticity plane for PantoneHexachrome, conventional four-color printing process, and CRT.

Page 27: spectral-based color separation algorithm development - CiteSeer

7

Although the comparison should be made by evaluating the three gamut volumes, the

projection of each device gamut onto the xy chromaticity plane is shown for that the

Hexachrome system has a larger gamut projection relative to RGB monitor and

conventional four-color printing.

B. OVERVIEW OF SOLUTION

In order to reduce the degree of metamerism, a spectral approach, as opposed to a

trichromatic approach, is the answer for critical color matching applications. The goal of

spectral reproduction is to reproduce the best spectral match whose color-match remains

constant under most illuminants within a visual tolerance. This ensures that the colors of

merchandise reproduced in a catalog, or the colors of an original painting reproduced in an

art book, will unambiguously be rendered under various illuminating and viewing

conditions.

A research and development program has been initiated at the Munsell Color

Science Laboratory in Rochester Institute of Technology for developing a spectral-based

color reproduction system (Berns, Imai, Burns, and Tzeng, 1998). Research has included

multi-spectral acquisition systems (Burns and Berns, 1996; Burns, 1997; Burns and Berns,

1997a; Burns and Berns, 1997b) and spectral-based printing algorithms (Iino and Berns,

1997; Iino and Berns, 1998a; Iino and Berns, 1998b). The current research effort is

devoted for the development of the spectral output system which is comprised of an ink-

Page 28: spectral-based color separation algorithm development - CiteSeer

8

selection module, and the implementation of spectral-based printing algorithms for a

multiple-ink printing device, shown as Fig. 1-3.

Multi-SpectralAcquisition

Spectal-BasedPrinting

Fig. 1-3: The outline of a multi-spectral color reproduction system.

Since the limitation of four-color reproduction for spectral reconstruction is due to

insufficient number of degrees of freedom for adjusting the reproduced spectra, printers

need extra primary inks to shape the region of the spectrum that is beyond the limitations

of four-color processes. Intuitively, the extra inks extend the capability and accuracy for

spectral reproduction, when chosen properly. A properly selected ink set implies that the

adoption of a fixed ink set by previously mentioned multiple-ink systems are not

sufficiently equipped for spectral reproduction since the spectral variations may be beyond

the synthesis capability of those ink sets. In another words, original objects are unlikely

Page 29: spectral-based color separation algorithm development - CiteSeer

9

created by those ink sets. Thus, the overall solution for multiple-ink printing devices focus

on minimizing metamerism by developing spectral-based color separation algorithms

which employ a greater number of degrees of freedom as well as the dynamic ink selection

to overcome the shortcoming of current multiple-ink systems. It is expected that the

greater number of degrees of freedom together with the flexibility of dynamic ink selection

can well describe the spectral variations from an arbitrary original object.

C. SCOPE OF DISERTATION

The scope of this dissertation was to develop a spectral-based color separation

algorithm for a multiple-ink printing process and to derive a spectral reconstruction

scheme based on the spectral Neugebauer equation at the synthesis stage. The current

research aims to identify a set of six inks for spectral halftone printing, corresponding to

the fact that six-color capabilities are widely available around the world. According to

NAFTA statistics, six-ink printing capabilities are available at over seven thousand sites in

North America alone. The choice of the number six is based on this production

convenience.

The research development of spectral six-color printing is divided into modules of

colorant estimation (Tzeng and Berns, 1998), optimal ink selection (Tzeng and Berns,

1999a), prediction of ink overprint (Tzeng and Berns, 1999b), spectral-based color

separation minimizing metamerism, and direct digital or conventional printing. Structure

Page 30: spectral-based color separation algorithm development - CiteSeer

10

of the proposed research development is depicted in Fig. 1-4 by assuming that the input of

this spectral printing system is a spectral image acquired by a multi-spectral acquisition

device.

ColorantEstimation

Spectral-BasedColor SeparationMinimizingMetamerism

Ink SelectionAlgorithm

Multiple-InkDirect Digital orConventionalPrinting

Ink OverprintPrediction

SpectralImage

Fig. 1-4: The structure chart of the research development for spectral printing.

Function of each module is designated as follows:

1. Colorant Estimation

To minimize metamerism between spectral inputs and their corresponding

reproductions, it is desirable to understand the spectral properties of the colorants possibly

utilized for creating the original objects. Then the use of a new set of colorants with

similar or identical spectral properties for synthesis should achieve the minimum or zero

spectral error. Since, in practice, it is not likely that the colorant information for original

Page 31: spectral-based color separation algorithm development - CiteSeer

11

objects is available from their creators, the estimation has to resort to statistical

approaches. Any set of spectral samples can be captured by a multi-spectral acquisition

device or measured via a spectrophotometer or spectroradiometer with finite bandwidth

across the visible spectrum. Then the set of spectral samples is distributed in a multi-

dimensional vector space. Principal component analysis (PCA) can provide a gauge to

statistically decompose these spectral samples into fewer statistical dimensions. These

dimensions dominate the major sample variations of these spectral measurements. In

another words, majority of samples vary along the directions of these statistical

dimensions. It can be viewed as if there existed a set of colorants whose spectral

properties coincide with the directions of the major sample variation, therefore, the whole

sample variations are the exact combinations of the set of imaginary colorants, which are

the eigenvectors derived by PCA. Since the eigenvectors are the only link to the physical

colorants which can be used for synthesis, a transformation to a set of all-positive vector

representations as the estimated primary colorants is necessary to account for the all-

positive spectral properties of real materials.

Thus, at the analysis stage, this research will perform statistical analysis via PCA

on original images, which are the spectral inputs prior to color separation, followed by a

constrained transformation to statistically estimate the possible primaries that can be used

for low-error spectral synthesis. That is, the colorant estimation procedure statistically

estimates a set of possible primary colorants, whose linear mixtures are the closest

Page 32: spectral-based color separation algorithm development - CiteSeer

12

approximation for each pixel of spectral inputs. Ideally, if the estimated primary colorants

exist in a current ink database, then the use of the exact ink set for halftone printing will

yield ideal spectral reproduction. A detailed chart of this module is shown in Fig. 1-5.

The six rotated normalized all-positive eigenvectors

0

0.2

0.4

0.6

0.8

1

1.2

400

430

460

490

520

550

580

610

640

670

700

Wavelength

(Abs

orpt

ion

/ Sca

tterin

g)

Sampledwavelength

Spectral image

Kubelka-Munkor empiricaltransformationinto a linearcolor mixingrepresentation

Six eigenvectors Statistical primaries

Constrainedtransformation

400 500 600 700-1

-0.5

0

0.5

1The 1st eigenvector.

K/S

400 500 600 700-1

-0.5

0

0.5

1The 2nd eigenvector.

400 500 600 700-1

-0.5

0

0.5

1The 3rd eigenvector.

400 500 600 700-1

-0.5

0

0.5

1The 4th eigenvector.

Wavelength

K/S

400 500 600 700-1

-0.5

0

0.5

1The 5th eigenvector.

Wavelength400 500 600 700

-1

-0.5

0

0.5

1The 6th eigenvector.

Wavelength

400 450 500 550 600 650 7000

0.5

1

1.5

2

2.5

Wavelength

K/S

Principal componentanalysis

Fig. 1-5: The structure diagram of colorant estimation.

2. Optimal Ink Selection

It is not likely to have an ink set with identical spectral properties to the estimated

primaries exist in the ink data base. The optimal ink set which minimizes the spectral error

between original objects and reproductions could be manufactured by colorant chemists to

obtain the desired spectral characteristic. However, the optimal ink set is image

Page 33: spectral-based color separation algorithm development - CiteSeer

13

dependent. Frequently, it is not time and cost efficient to manufacture an optimal ink set

for industrial applications whenever spectral color reproduction is encountered. It is more

practical to select an optimal ink set from a large ink database, currently in manufacture.

Hence, devising an optimal ink selection method in order to choose the corresponding inks

for the best spectral reconstruction is necessary. An optimal ink selection scheme, shown

as Fig. 1-6, will be devised based on vector correlation analysis by searching through the

existing ink database such as Pantone formula colors to identify the most similar ink set.

Th e six rotate d normali zed all - posi tive ei ge nvectors

0

0.2

0.4

0.6

0.8

1

1.2

400

430

460

490

520

550

580

610

640

670

700

W ave length

(Abs

orpt

ion

/ Sca

tterin

g)

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

400

430

460

490

520

550

580

610

640

670

700

Wavelength

Ref

lect

or fa

ctor

Rhodamine red

Purple

Reflex blue

process black

process yellow

process cyan

Ink selection by vectorcorrelation analysis

Optimal ink-set

Statistical primaries

Pantone colors

Fig. 1-6: The optimal ink selection scheme for low-error spectral reproduction.

3. Ink Overprint Prediction

At the synthesis stage of this research, the chosen optimal ink set will be used as

the printing primaries. The spectral expansion of the Neugebauer equation together with

Page 34: spectral-based color separation algorithm development - CiteSeer

14

the Yule-Nielsen n-factor correction will be designated as the halftone printer model. This

model is capable of reconstructing the spectra of an original with high accuracy

(Pobboravsky and Pearson, 1972; Rolleston and Balasubramanian, 1993). Consider the

color formulation depicted as Fig. 1-7 by a CMY halftone printing device, the overall

color stimulus over a printed spot is contributed by the colors appearing in that spot.

Fig. 1-7: The microscopic structure of halftone color formulation of a CMY printingdevice, where Rλ, color is the spectral reflectance factor of a color appearing in the figure.

Assuming the spot is circumscribed by the thick line square in Fig. 1-7, then the

overall color stimulus over the thick line square in terms of spectral reflectance factor is

the linear sum of the spectral reflectance factor of each color inside the square.

Apparently, the corresponding modulation is proportional to the percentage of the

occurrence of each color inside the square. This percentage of occurrence is quantified by

Rλ,Y

Rλ,M

Rλ,C

Rλ,White

Rλ,R

Rλ,G

Rλ,B

Rλ,CMY

Page 35: spectral-based color separation algorithm development - CiteSeer

15

the fractional dot area of each color. These colors inside the square are not just printing

primary colors (cyan, magenta, and yellow) but also overprints (red, green, blue, and

three-color black). The linear sum is exactly the three-color spectral Neugebauer equation,

shown as Eq. (1-1) and its Yule-Nielsen n-factor (Yule and Nielsen, 1951) corrected

spectral Neugebauer equation, shown as Eq. (1-2).

Rλ = aCRλ,C + aMRλ,M + aYRλ,Y

+ aRRλ,R + aGRλ,G + aBRλ,B + aCMYRλ,CMY , (1-1)

+ (1- aC - aM - aY - aR - aG - aB - aCMY)Rλ,white,

Rλ = [aCRλ,C1/n + aMRλ,M

1/n + aYRλ,Y1/n

+ aRRλ,R1/n + aGRλ,G

1/n + aBRλ,B1/n + aCMYRλ,CMY

1/n , (1-2)

+ (1- aC - aM - aY - aR - aG - aB - aCMY)Rλ,white1/n]n,

where λ is wavelength, R represents reflectance factor, a is fractional dot area, and the

capitalized subscripts represent the color names of primaries, secondary, and tertiary

primaries. These primaries are also named the Neugebauer primaries.

To utilize the original or n-factor modified spectral Neugebauer equation, it is

necessary to posses the knowledge for the spectra of the Neugebauer primaries, i.e., the

spectra of secondary, tertiary, quaternary primaries (for four-color halftone printing), and

so forth. The spectral reflectance factors of overprints are usually obtained by printing and

measuring. Recognizing that with a change of materials (i.e., inks and paper), the spectral

reflectance factor on top of the printed samples includes a change in overprints. In order

Page 36: spectral-based color separation algorithm development - CiteSeer

16

to characterize a halftone printing process, the ramps for primaries and overprints need to

be printed and measured when new materials are applied. There are 2k-k-1 overprints for a

k-color printing process. The effort required for printing and measuring of ramps may not

be significant when a four-color printing process is encountered since the number of over

printings is only eleven. Table 1-1 lists the number of overprints corresponding to three to

eight-color printing processes. It shows that as the number of primaries increases linearly,

the number of corresponding overprints increases exponentially. The use of analytical

prediction of overprints can avoid the necessity of printing and measuring upon changing

the ink set selected by the ink-selection procedure. The computation for the entire

integrated multiple-ink printing system can be automated without interruption due to the

change of ink set and paper.

A reasonable prediction process for overprints is to use the Kubelka-Munk turbid

media theory for translucent materials to predict the spectra of ink overprints. Once all the

spectral information of Neugebauer primaries is compiled, the spectral estimation is

enabled by the use of the Yule-Nielsen modified spectral Neugebauer equation.

Table 1-1: The number of overprints of a k-primary halftone printing process.

Number of primaries Number of overprints3 44 115 266 577 1208 247

Page 37: spectral-based color separation algorithm development - CiteSeer

17

4. Spectral-Based Six-Color Separation Minimizing Metamerism

When printing solid inks on top of each other, the ability to print the later wet ink

on top of formerly printed wet ink is call ink trapping. Ink trapping failure is caused by the

wetness and total amount of ink piling on a printed spot. The SWOP standard constrains

the ink trapping limit in terms of total fraction dot area to be 300%. Several printing

applications extending this limitation to 340% to 400% depending on the physical and

chemical design of the ink materials. Based on this physical limitation of ink trapping, it is

impossible to overprint six solid primaries in one location. Hence, the ink limiting is the

primary concern of the design of the six color printing process. In addition, consider an

input color with an arbitrary spectrum, if the subtractive synthesis requires more than four

independent colors then this particular color is of low spectral reflectance factor. Hence, it

is able to be approximated by a black and three chromatic inks for its spectral synthesis.

Therefore, the ink limiting predefining the six-color printing model is based on ten four-

color printing sub-models since choosing one black ink and three chromatic ink out of

remaining five from the optimal ink set is ten (C(5, 3)).

Often, given a color with a known spectrum, the real world problem is to

determine the amount of ink, or the percentage of dot areas, which needs to be delivered

onto a paper support. The Yule-Nielsen modified spectral Neugebauer equation is

required to be inverted to solve for the effective dot areas for a known color. Since the

analytical inversion of Neugebauer equation is impossible to accomplish, it must be

Page 38: spectral-based color separation algorithm development - CiteSeer

18

approximated by a numerical approach (Mahy and Delabastita, 1996). For this research

development, MATLAB and its optimization toolbox are utilized for inverting the Yule-

Nielsen modified spectral Neugebauer equation (MATLAB, 1996).

With the derived effective fractional dot areas, spectral reconstruction of an

original will be performed using the forward Yule-Nielsen modified Neugebauer equation

at the synthesis stage. The performance of this process will be evaluated in terms of

colorimetric and spectral accuracy. If the minimized spectral error still reveals low

colorimetric accuracy then the post-process of slightly trading in spectral accuracy to

exchange for the high colorimetric accuracy under the standard illuminant D50 will be

adopted. This will result in the closest possible match across multiple light sources.

Hence, the degree of metamerism is reduced.

5. Multiple-Ink Direct Printing

The six-color separations are output by a multiple-color proofing system with

stochastic screening at 175 LPI (or equivalent) screen frequency to avoid the Moiré

pattern. Figure 1-8 shows the processes of color separation minimizing metamerism and

multiple-ink direct printing. Accomplishment of the processes described above completes

the research of the spectral-based color separation algorithms development for multiple-

ink color reproduction. Detailed technical contents are described in the later chapters.

Page 39: spectral-based color separation algorithm development - CiteSeer

19

Color separationby YNSN

Direct printingor proofing

Original painting

Spectral reproduction

Fig. 1-8: The structure of spectral-based six-color printing process where YNSN standsfor Yule-Nielsen modified spectral Neugebauer equation.

Page 40: spectral-based color separation algorithm development - CiteSeer

20

II. BACKGROUND

Current research developments involve colorant estimation, ink selection, ink

overprint prediction, and spectral-based printing minimizing metamerism. The theoretical

underpinnings include multiple-ink printing systems, Kubelka-Munk turbid media theory,

computer colorant matching, multivariate statistics including principal component analysis,

and the Neugebauer theory for modeling the halftone printing process. This chapter

provides a review for these topics.

A. MULTIPLE-INK COLOR SYSTEMS

The concept of utilizing multiple inks for color reproduction is not new (Leekley,

Cox, and Gordon, 1953). It originated during the 19th century for color enhancement

(Friedman, 1978). State-of-the-art multiple-ink color reproduction systems such as Hi-Fi

color systems utilize more colors than that of conventional CMYK color reproduction

processes. The most well known Hi-Fi color systems are DuPont Hyper Color, Küppers 7-

Color (Küppers, 1986), K&E (BASF) 7-Color, Fogra 7-Color, and Pantone Hexachrome

(Di Bernardo and Matarazzo, 1995; Herbert and Di Bernardo, 1998). DuPont Hyper

Color applies the process CMY inks with two different density levels and one process

black for color reproduction. Pantone Hexachrome was designed with fluorescent

mixtures to form cyan, magenta, yellow, black, orange, and green as the printing

Page 41: spectral-based color separation algorithm development - CiteSeer

21

primaries. Designing with the usage of fluorescent inks is to drive the reproduction gamut

as large as possible. The remaining systems all use CMYK plus RGB for color

reproduction.

Since present multiple-ink systems are all originally contrived to expand the

reproduction color gamut, color matches are still limited to standard ANSI viewing

conditions. Nevertheless, multiple-ink systems are quite capable of reproducing highly

saturated colors well beyond that of a conventional CMYK printing process (Takaghi,

Ozeki, Ogata, and Minato, 1994; Granger, 1996).

B. KUBELKA-MUNK TURBID MEDIA THEORY

Kubelka and Munk examined the reflectance of a material which had a thin layer of

colorant in optical contact with its diffuse opaque substrate (Kubelka and Munk, 1931;

Kubelka, 1948). They assumed that the layer of colorant could be further divided into a

large number of sublayers parallel to the surface of the entire colorant layer. Then,

sublayers were homogenous with identical optical properties to each other. Assuming the

thickness of the entire layer is X, then the thickness of the sublayers is differentially

defined as dx. Kubelka and Munk further assumed two diffuse light fluxes i, a downward

flux, and j, an upward flux. The magnitude of the downward flux, i is decreased by the

absorption and scattering of the colorant sublayer. The effect of the scattering process is

to reverse the portion of downward flux, i, to the upward direction toward the surface of

Page 42: spectral-based color separation algorithm development - CiteSeer

22

the colorant layer. The upward flux, j, is further absorbed and scattered back to the

downward direction by the sublayer. Hence, the portion of the upward flux, j, scattered

back to the downward direction, needs to be added to the remainder of the downward

flux. Continuing in this fashion, the differential equations to account for the downward

and upward flux was initially set up as

di (S K)idx Sjdx− = − + + (2-1)

and

dj (S K)jdx Sidx = − + + , (2-2)

where K is the absorption coefficient and S is the scattering coefficient. The negative sign

in Eqs. (2-1) and (2-2) to account for the downward direction had been defined as the

negative direction (Wyszecki and Stiles, 1982).

To solve the above differential equation in terms of reflectance factor, R, of the

material, let ρ be the ratio of j to i then, from the quotient rule of differentiation (Allen,

1980),

d

dx

d j i

dx

i(dj dx j di dx

i

ρ= =

−( / ) / ) ( / )2 . (2-3)

Substituting Eqs. (2-1) and (2-2) to Eq. (2-3), Eq. (4) is obtained as

d

dxS K S S

ρρ ρ= − + +2 2( ) . (2-4)

Equation (2-4) is a separable first-order differential equation. The boundary conditions

are that ρ = Rg when x = 0, and ρ = R when x = X, where Rg is the reflectance factor of a

Page 43: spectral-based color separation algorithm development - CiteSeer

23

substrate, R is the surface reflectance factor of a material, and X is the thickness of the

colorant layer of the corresponding material. Rearranging Eq. (2-4) together with the

boundary conditions, it turns out as Eq. (2-5),

dxd

S K S S

X

R

R

g0 22∫ ∫=− + +

ρρ ρ( )

. (2-5)

Solving for Eq. (2-5) in terms of R, the famous Kubelka-Munk equation results in

RRg a b bSX

a Rg b bSX=

− −− +

1 ( coth( ))

coth( ), (2-6)

where a is equal to 1+K/S and b is equal to (a2 - 1)1/2.

For an opaque colorant layer, known as the complete hiding case, light flux

traveling in the colorant layer keeps being scattered and never reaches the substrate. It is

equivalent to treating the thickness X of the entire colorant layer as infinitely large.

Another assumption by Kubelka and Munk is that there is no fluorescence in the colorant

layer. Based on these assumptions, Eq. (2-6) can be further simplified to Eq. (2-7),

R K S K S K S∞ = + − +1 22( / ) ( / ) ( / ) , (2-7)

and its inverse, Eq. (2-8),

K S R R/ ( ) /= − ∞ ∞1 22 , (2-8)

for the opaque material where R∞ denotes as the surface reflectance factor of an opaque

material with thickness.

Page 44: spectral-based color separation algorithm development - CiteSeer

24

In the application of a transparent layer in optical contact with a highly scattering

support, such as the photographic paper, the scattering of the colorant layer is ideally

zero. Therefore, a portion of downward flux passing through the colorant layer is

absorbed and not scattered. The remaining flux reaches the substrate and gets reflected

upward. The second absorption proceeds as the upward flux travels again through the

colorant layer. Hence, Eq. (2-6) approaches Eq. (2-9) as S approaches zero. That is,

limS

gKXR R e

−=0

2 . (2-9)

For most applications predicting color mixing for a transparent colorant layer in optical

contact with an opaque support, the thickness X of the colorant layer is frequently

assumed to be unity. Thus, the inverse of Eq. (2-9) in terms of absorption coefficient K is

obtain as:

KR

Rg

= −0 5. ln( ). (2-10)

It has been shown that the absorption and scattering coefficients are linearly

related to concentration (Allen, 1980; McDonald, 1987; Shan and Gandhi, 1990). Hence,

the colorant mixing, mathematically described by Eq. (2-11), for the transparent material

in optical contact with an opaque support is simply the mixture of the absorption

coefficients normalized to unit concentration, k, of primary colorants modulated by their

concentrations.

K c k c k c k c kmix i i= + + + +1 1 2 2 3 3 L , (2-11)

Page 45: spectral-based color separation algorithm development - CiteSeer

25

where ci is the concentration of the ith colorant. The reflectance factor of such material

can be calculated by Eq. (2-9). For the opaque material, the reflectance factor of color

mixture is a function of the mixtures of the absorption coefficient, shown as Eq. (2-12),

and the scattering coefficient, shown as Eq. (2-13).

K k c k c k c kmix t i i= + + + +1 1 2 2 L , (2-12)

where t denotes the substrate that suspends the primary colorant inside the colorant layer

and kt is the absorption coefficient of the substrate.

S s c s c s c smix t i i= + + + +1 1 2 2 L . (2-13)

Coefficient s represents the scattering normalized to its unit concentration. Hence the ratio

of the absorption to scattering coefficients in the opaque colorant layer is

K

S

k c k c k c k

s c s c s c smix

t i i

t i i

=

+ + + ++ + + +

1 1 2 2

1 1 2 2

L

L. (2-14)

Approaches leading to Eq. (2-14) are known as Kubelka-Munk two constant theory.

Consider that when the individual scattering influence contributed by each primary

colorant within the colorant layer is far less than the scattering power of the substrate.

Equation (2-14) can be simplified to Eq. (2-15), known as Kubleka-Munk single constant

theory,

Page 46: spectral-based color separation algorithm development - CiteSeer

26

K

S

k c k c k c k

s

k

sc

k

sc

k

sc

k

s

mix

t i i

t

ti

i

=

+ + + +

=

+

+

+ +

1 1 2 2

11

22

L

L

. (2-15)

The reflectance factor of a mixture of opaque colorants can be calculated by Eq. (2-7).

C. COMPUTER COLORANT MATCHING

Computers have long been used for dye recipe formulation in the textile and paint

industries. The early commercial applications were first proposed in 1961 (Anderson,

Atherton, and Derbyshire, 1961). Several alternative approaches were later refined in 1963

when computers were practically available. Up-to-date, computer methods for colorant

formulation have been vastly developed and published. Allen disclosed a common

algorithm for tristimulus matching in the applications of computer colorant formulation

(Allen, 1966; 1974). This algorithm is based on Kubelka-Munk turbid theory for a dyed

highly scattering opaque substrate. The matrix equation of the single constant theory for

the first prediction of concentration vector c corresponding to a matched standard color is

defined by Eq. (2-16).

c = (TEDΦΦΦΦ)-1 TED(f(a) - f(t)) (2-16)

where T is a matrix of one of the CIE color matching functions, E is a matrix of the

spectral power distribution of a CIE standard illuminant, f(a) is a matrix of the linearized

function of the reflectance of an opaque sample fabricated by colorant mixtures in optical

Page 47: spectral-based color separation algorithm development - CiteSeer

27

contact with an opaque substrate, f(t) is a matrix of the linearized function of reflectance of

an opaque substrate, D is a diagonal matrix of a derivative weighting function, and ΦΦΦΦ is a

matrix of the ratios of spectral absorptivities and unit scattering coefficients of three basis

colorants. In addition, their matrix forms are shown by the following:

T E f (a)

f (t)

= = =

=

x x x

y y y

z z z

E

E

E

f R a

f R a

f R a

f R t

f R t

f R t

400 410 700

400 410 700

400 410 700

400 0 0

0 410 0

0 0 700

400

410

700

400

410

700

L

L

L

L

L

M M O M

L

M

M

, ,

( )( )

( )( )

( )( )

,

( )( )

( )( )

( )( )

= =, ,

( ) ( ) ( )

( ) ( ) ( )

( ) ( ) ( )

D

d

d

d

400 0 0

0 410 0

0 0 700

4001

4002

4003

4101

4102

4103

7001

7002

7003

L

L

M M O M

L

M M MΦΦΦΦ

φ φ φ

φ φ φ

φ φ φ

.

The linearized function for opaque samples is f(Rλ) = (K/S)λ = (1-Rλ)2/(2Rλ) and

the Jacobian suggested by Allen is dλ = (-2Rλ2)/(1- Rλ

2). Equation (2-16) is used to

estimate concentrations of the matched standard. This is only an approximation. The real

solution requires an iterative process by defining the tristimulus and concentration

difference vectors, ∆∆∆∆

∆∆∆∆

t c=

=

X

Y

Z

c

c

c

,

1

2

3

, respectively, where ∆t represents the

tristimulus difference and ∆c is the concentration difference vector between the standard

Page 48: spectral-based color separation algorithm development - CiteSeer

28

and the prediction at the current stage of iteration. Both values are bipolar and are

interrelated in the iterative correction process as Eq. (2-17),

∆∆∆∆c = (TEDφφφφ)-1 ∆∆∆∆t . (2-17)

The value of ∆t is used as the conditional specification for the iterative process. If ∆t is

within a goodness criteria then the iteration stops. If not, the ∆c at current iteration is

added to the old concentration to get the new concentration used for the next iteration.

This process continues until a goodness criteria is met. (The computer colorant matching

technique for the Kubelka-Munk two-constant theory is not shown in this review.

Interested reader can refer to Allen’s 1974 publication.)

D. VECTOR REPRESENTATION FOR COLORANTS

Generally speaking, a vector is a description for measurements at several features

of an event. For instance, an event can represent a point, P3 = (x, y, z), in a three

dimensional Cartesian coordinate system, denoted as ℜℜℜℜ3, where ℜℜℜℜ is the set of real

numbers. Since the standard basis vectors (Marsden and Tromba), which are orthonormal,

of ℜℜℜℜ3 are i = (1, 0, 0), j = (0, 1, 0), and k = (0, 0, 1), x, y, and z are the three features

describing the magnitudes of P3 along the directions of i, j , and k, respectively.

(“Orthonormal vectors” are a set of vectors with unit length which are perpendicular to

each other. “Basis vectors” are a set of vectors which are not only linearly independent to

each other but also span the entire vector space (Anton, 1991).) Although P3 is a

Page 49: spectral-based color separation algorithm development - CiteSeer

29

coordinate in ℜℜℜℜ3, it also can be viewed as a vector emerging from the origin since P3 can

be expressed as a linear combination of the i, j , and k, i.e.,

P3 = x⋅ i + y⋅ j + z⋅ k . (2-18)

Figure 2-1 denotes the visualization of a three dimensional vector P3 in ℜℜℜℜ3 where x, y, and

z are the scalar magnitudes (or projection length) along the i, j , and k, respectively.

i

k

j

P3 = (x, y, z)

x

z

y

(0, 0, 0)

Fig. 2-1: The three dimensional vector, P3, in ℜℜℜℜ3.

By extension, a point Pn = (x1, x2, x3,…, xn) in an n dimensional Cartesian coordinate

system, ℜℜℜℜn , has n feature measurements, x1, x2, x3,…, xn, describing the magnitudes of Pn

along the directions of n standard basis vectors in ℜℜℜℜn† , respectively. Hence, for any

† The standard basis vectors in ℜℜℜℜn are i1 = (1, 0, 0,…,0), i2 = (0, 1, 0,…,0), i3 = (0, 0, 1,…,0), …, in = (0,0, 0,…,1).

Page 50: spectral-based color separation algorithm development - CiteSeer

30

coordinate, Pn, treated as a vector in ℜℜℜℜn can be expressed as the linear combination of the

standard basis vector in ℜℜℜℜn, i.e.,

P in = ⋅=

∑ x jj

n

j1

. (2-19)

The basic mathematical operations applied to vectors are vector addition and scalar

multiplication. For two vectors, Pn,1 and Pn,2, in ℜℜℜℜn, the vector addition is defined as

P P i i in n, , , , , ,( )1 2 11

21

1 21

+ = ⋅ + ⋅ = + ⋅= = =

∑ ∑ ∑x x x xjj

n

j jj

n

j j jj

n

j . (2-20)

Equation (2-20) indicates that the vector addition operates by adding the two vectors

componentwise. The scalar multiplication is defined as

a a x a xjj

n

j jj

n

j⋅ = ⋅ ⋅ = ⋅ ⋅= =

∑ ∑P i in1 1

( ) , (2-21)

where a is a real number. Equation (2-21) shows that scalar multiplication modulates

every component of the vector, Pn, with the same scalar. It is useful to examine whether

measured spectral information can be represented as a vector; then all the merits of vector

algebra can be used for color science applications.

Given a sample with spectral reflectance factor, Rλ, measured within the visible

spectrum between 400 nm and 700 nm at 10 nm intervals where λ is a sampled

wavelength, Rλ is merely an array of thirty-one numbers; for example,

Rλ,yellow = (0.0153, 0.0154, 0.0152, 0.0148, 0.0153, 0.0161, 0.0165, 0.0166, 0.0191,

0.0301, 0.0905, 0.2706, 0.5216, 0.685, 0.7541, 0.7825, 0.8014, 0.8128,

Page 51: spectral-based color separation algorithm development - CiteSeer

31

0.8202, 0.8284, 0.832, 0.8341, 0.836, 0.8386, 0.8403, 0.8461, 0.8451,

0.8429, 0.8459, 0.849, 0.8491).

Rλ,yellow is usually plotted versus measured wavelength, shown in Fig. 2-2.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

400 450 500 550 600 650 700

Wavelength

Ref

lect

ance

fact

or

Fig. 2-2: Spectral reflectance curve of the example.

Although Rλ,yellow is sampled discretely at a 10 nm bandpass, it is viewed as a spectral

curve for the reason of smooth transition across 10 nm spectral neighborhood for typical

materials. Color scientists are used to examining and analyzing the thirty-one component

array on such a two dimensional layout of spectral measurements. In a coloration process,

various amounts of colorants are used for manufacturing a desired color. The modulated

spectral curves might be treated by multiplying the spectral curve of the colorant at 100%

of its maximum concentration for any percentage of modulation. Every component of a

Page 52: spectral-based color separation algorithm development - CiteSeer

32

measured array is multiplied by the same percentage such that, as a consequence, the

modulated spectral curves are parallel.

Similarly, in color science applications, the previous mentioned event can be a

spectral curve such as Rλ,yellow which has thirty-one measured reflectance factors at each

sampled wavelength. Measurements at each sampled wavelength specifies a dimension of

reflectance variations. Thus, Rλ,yellow can be treated as a vector in ℜℜℜℜ31 with the set of

standard basis vectors, i1, i2, i3,…, i31. Modulation by the amount of a colorant is

equivalent to scalar multiplication of the basic vector operation. The measured spectral

reflectance factors can be further transformed to different representations such as spectral

absorption where the vector addition and scalar multiplication are well defined. The

determination of the optimal transformation is discussed in a later section. Therefore,

adopted vector representations of the spectral information for color objects can further

employ vector algebra and linear modeling techniques to analyze originals and synthesize

reproductions.

Vector Subspace

For any set of n dimensional vectors, it is distributed in the n dimensional vector

space or sometimes localized in a lower dimensional vector subspace. Figure 2-3

demonstrates the three possible distributions for three sets of three dimensional vectors.

Page 53: spectral-based color separation algorithm development - CiteSeer

33

0

0.5

1

0

0.5

1

0

0.2

0.4

0.6

0.8

1

0

0.5

1

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.8

1

0

0.5

1

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.8

1

Fig. 2-3: Example for a set of three dimensional vectors localized in various vectorsubspaces.

Each set of vectors are normalized and translated into the cube of [0, 1]3 which represents

the universe of ℜℜℜℜ3. The left-most figure shows that the uniform distribution of the three

dimensional vectors spanning the entire three dimensional vector space. The middle- and

right-most figures indicate that two sets of three dimensional vectors localize in a two and

one dimensional vector subspaces, respectively. A set of spectral measurements is

probably localized in a lower dimensional vector subspace since the spectral variations are

highly correlated across neighborhood spectral regions. The dimensionality of the set of

spectral measurements can be analyzed and approximated by principal component analysis.

Page 54: spectral-based color separation algorithm development - CiteSeer

34

E. LINEAR MODELING TECHNIQUES

Linear modeling techniques based on principle component analysis (PCA) have

been vastly applied for estimating the spectral reflectance factors of objects (Jaaskelainen,

Parkkien, and Toyooka, 1990; Maloney, 1986; Vrhel, Gershon ,and Iwan, 1994; Vrhel

and Trussel, 1992; García-Beltrán, Nieves, Hernández-Andrés, and Romero, 1998;

Tajima, 1998). Previous research was aimed at determining a smaller numbers of basis

vectors (or eigenvectors) dominating the data variation from a particular set of

measurements. These basis vectors are usually an acceptable representation of the original

objects. Seemingly, the greater the number of basis vectors, the higher the accuracy of the

spectral reconstruction. Applications based on PCA have been generated to characterize

multispectral CCD cameras for capturing spectral reflectance factors of a scene (Burns,

1997; Burns and Berns, 1997a; Burns and Berns, 1997b; Burns and Berns, 1996;

Haneishi, Hasegawa, Tsumura, and Miyake, 1997).

Principal Component Analysis (PCA)

Principal component analysis explores the variance-covariance or correlation

structure of a sample set in vector form. It primarily serves the purpose of data (or

dimensionality) reduction and interpretation (Johnson and Wichern, 1992). Data reduction

is accomplished by neglecting the unimportant directions along where samples’ variances

are insignificantly small. Since major sample variations are along several significant

directions, the number of these directions approximates the dimensionality of the sample

Page 55: spectral-based color separation algorithm development - CiteSeer

35

set. Figure 2-4 demonstrates a set of two dimensional samples migrating along a

significant direction in which i = (1, 0) and j = (0, 1) are two standard basis vectors of the

Cartesian coordinate system and e1 and e2 are two orthonormal vectors specifying the

directions of a rotated coordinate system.

0 0.5 1 1.5 2 2.5 30

0.5

1

1.5

2

2.5

3

x axis with standard basis vector i=(1,0)

y axis

with

stan

dard

bas

is ve

ctor j

=(0,

1)

Fig. 2-4: Scatter plot of a two dimensional sample set.

e2

Sample mean

e1

Page 56: spectral-based color separation algorithm development - CiteSeer

36

Figure 2-4 indicates strongly that samples vary significantly along direction of e1,

whereas, direction of e2 accounts for significantly less variation. The variation along

directions of e1 and e2 reveals the covariance structure between samples. Let i and j be the

directions for feature measurements in terms of, for example, reflectance factors separately

measured at two sampled wavelengths. The corresponding coefficients, x and y, of i and j

can be treated as two random variables of a random measurement at the two features,

denoted as feature x and feature y, which describe an arbitrary sample. The example set of

two dimensional samples in Fig. 2-4 specifies one trend that as feature x of the samples

increases, feature y increases, and vise versa. Hence, features x and y are positively

correlated. The other trend is that as the feature x increases, the feature y decreases, and

vise versa, indicating that features x and y are negatively correlated. The direction of e1 is

the weighted average (or weighted sum) direction of x and y, and the direction of e2 is the

contrast (or weighted difference) direction of x and y. Observation for algebraic

interpretation can be made by finding a line equation of ax + by = c which is parallel to the

direction of e1 where a and b are positive real numbers and c is a real number. Thus, a

sample along the direction of e1 is exactly described by the weighted sum of features x and

y as the equation ax + by = c shows. Similarly, a line equation of dx - ey = f can be found

to be parallel to the direction of e2 where d and e are positive real number and f is a real

number. Hence, a sample along e2 is exactly described by the difference of weighted

features x and y. These justifications are useful for data interpretation depending on the

Page 57: spectral-based color separation algorithm development - CiteSeer

37

physical meanings of the features x and y (recall that x and y are representing the

reflectance factors measured at any two different sampled wavelengths for this example).

Since there is less variation along e2, it might be considered as an insignificant direction (or

dimension). The entire two dimensional sample set can be approximated by modulating the

vector, e1. Thus, data (dimensionality) reduction is achieved by eliminating the dimension

with negligible variance.

The e1 and e2 are known as the two eigenvectors of the two dimensional sample

set. Having samples in Fig. 2-4 represented in the new (or eigenvector) coordinate system

whose basis vectors are e1 and e2, then e1 and e2, as opposed to the standard basis vectors

in ℜℜℜℜ2, become two new metrics of feature measurements describing each sample. Each

sample has been relabeled by the coefficients of the linear combination of e1 and e2. That

is, if a sample P = xi + yj = le1 + me2 where x, y, l, and m are real numbers, then P is

labeled as (x, y) in the Cartesian coordinate system and labeled as (l, m) in the eigenvector

coordinate system. Figure 2-5 depicts the appearance of sample set represented in the

eigenvector coordinate system. The sample set in the eigenvector coordinate system is

decorrelated, i.e., the l and m features of a sample are uncorrelated. Hence, the modulation

of e1 is not affecting the modulation of e2.

Page 58: spectral-based color separation algorithm development - CiteSeer

38

-1 -0.5 0 0.5 1 1.5 2 2.5

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

l axis with eigenvector vector e1

m a

xis

with

eig

enve

ctor

vec

tor

e2

Fig. 2-5: The representation of sample set of Figure 4 in the eigenvector coordinatesystem.

Given a sample set, V, with q number of samples and n features, the sample

variance-covariance matrix of size nxn is calculated as

S V V V V=−

− −=∑1

1 1q ii

q

iT( )( ) , (2-22)

where V is the mean vector of size nx1 of the sample set. Notice that n features specify

that the sample set is in an n dimensional vector space. Diagonal entries of S are variances

measured along the standard basis vectors, i1, i2, i3,…, in, in the n dimensional Cartesian

Page 59: spectral-based color separation algorithm development - CiteSeer

39

coordinate system. S can be further transformed to a diagonal matrix, ΛΛΛΛ, for uncovering

the variances along the significant directions. Equation (2-23) specifies the matrix

diagonalization transformation.

ΛΛΛΛ = − −( )E SET 1 1 , (2-23)

where E is an nxn matrix whose n column vectors are the eigenvectors of S. The

transformation by Eq. (2-23) decorrelates the sample variance-covariance matrix, S, of a

sample set according to the eigenvectors such that the new sample representations are

uncorrelated and the corresponding variance are maximized along the basis vectors, e1, e2,

e3,…, en, in the eigenvector coordinate system. The off-diagonal terms of ΛΛΛΛ are zeros

which further symbolize the sample features represented in the eigenvector coordinate

system are uncorrelated. The diagonal terms, L1, L2, L3,…, Ln, of ΛΛΛΛ, the so called

eigenvalues, are the variances measured with respect to the eigenvectors. Eigenvalues of

the sample set can be attained from the sample variance-covariance matrix by the

characteristic equation,

det( )L ⋅ − =I S 0, (2-24)

where det is the determinant of a square matrix, L is an arbitrary eigenvalue, and I is the

nxn identity matrix. There are n eigenvalues solved by Eq. (2-24). With these eigenvalues,

their corresponding eigenvectors can be derived by Eq. (2-23).

Eigenvalues can be zeros when a set of sample, V, is actually distributed in an m-

dimensional subspace, where m ≤ n. Eigenvectors whose corresponding eigenvalues are

Page 60: spectral-based color separation algorithm development - CiteSeer

40

zero explain no variance. Thus, an arbitrary sample, Vsample, in the sample set, V, can be

exactly described by a linear combination of the significant m eigenvectors derived from

the variance-covariance matrix of V, i.e.,

V esample ii

m

ib==

∑1

, (2-25)

where bi is the coefficient for reconstructing Vsample. In this case, m eigenvectors explain

hundred percent of the variance. The percent variance explained by m eigenvectors is

calculated by

Percent Variance

L

L

ii

m

ii

n= =

=

∑1

1

% . (2-26)

Percent variance can be used as a gauge to estimate the dimensionality of a sample set.

Given an n dimensional sample set, if 99.00% (depends on the type of applications and the

required accuracy for reconstruction) of total variance is explained by m eigenvectors

where m ≤ n then the sample set can be approximately reconstructed by the significant m

eigenvectors together with the sample mean vector, V sample mean, i.e.,

V e Vsample ii

m

i sample meanb≅ +=∑

1

. (2-27)

Therefore, data reduction is accomplished by an m-dimensional approximation.

Principal components are often mistakenly referred to as eigenvectors (Vrhel and

Trussel, 1992; Tajima, 1998; Haneishi, Hasegawa, Tsumura, and Miyake, 1997; García-

Page 61: spectral-based color separation algorithm development - CiteSeer

41

Beltrán, Nieves, Hernández-Andrés , and Romero, 1998). The following is given to clarify

the difference between principal components and eigenvectors. Having eigenvectors, e1,

e2, e3,…, en, and their corresponding eigenvalues, L1, L2, L3,…, Ln such that L1 ≥ L2 ≥ L3

≥ … ≥ Ln, principal components are defined as the new coordinates of samples onto

eigenvector coordinate system. Hence, there are n principal components for an n

dimensional sample set. The ith principal component, Pci, is the collection by projecting

samples, V, of size nxp, onto the ith eigenvector, i.e.,

Pc e Vi iT= , (2-28)

where i = 1…n. Hence, the whole sample set is decomposed into n uncorrlated

components, Pc1, Pc2, … Pcn, by Eq. (2-28) whose variances are exactly the n

eigenvalues, L1, L2, … ,Ln. Assuming the data in Table 2-1 is the measured spectral

absorption coefficients, shown up to five samples, sampled between 400 nm and 700 nm at

each 20 nm interval. The principal components calculated by Eq. (2-28) are shown in

Table 2-2.

Table 2-1: A sample set (shown up to five samples) of absorption measurements from 400nm to 700 nm at 20 nm intervals.

Wavelength Sample 1 Sample 2 Sample 3 Sample 4 Sample 5 Variance400 0.569 0.334 0.360 0.663 0.921 0.058420 0.757 0.556 0.650 1.127 1.552 0.169440 0.670 0.551 0.693 1.230 1.732 0.248460 0.642 0.595 0.739 1.267 1.743 0.246480 0.812 0.814 0.906 1.353 1.628 0.136500 1.127 1.161 1.186 1.548 1.509 0.042520 1.439 1.481 1.451 1.763 1.467 0.019540 1.618 1.619 1.557 1.840 1.432 0.022

Page 62: spectral-based color separation algorithm development - CiteSeer

42

560 1.563 1.463 1.380 1.621 1.246 0.022580 1.326 1.042 0.944 1.102 0.866 0.031600 1.222 0.719 0.581 0.679 0.550 0.074620 1.267 0.577 0.387 0.461 0.384 0.139640 1.341 0.520 0.281 0.346 0.297 0.201660 1.377 0.499 0.232 0.294 0.258 0.234680 1.322 0.469 0.198 0.256 0.228 0.225700 1.178 0.417 0.166 0.219 0.197 0.182

Table 2-2: The principal components as the new coordinates in the eigenvector coordinatesystem of the samples in Table 2-1.

Principal component Sample 1 Sample 2 Sample 3 Sample 4 Sample 5 VariancePc1 4.582 3.063 2.725 3.661 3.701 0.504Pc2 0.066 -1.066 -1.573 -2.348 -2.774 1.245Pc3 -1.226 -1.538 -1.381 -1.211 -0.163 0.294Pc4 0.069 0.052 -0.016 -0.043 -0.072 0.004Pc5 -0.001 -0.050 -0.079 -0.051 -0.031 0.001Pc6 -0.012 -0.018 -0.020 -0.003 0.007 0.000Pc7 -0.003 0.000 0.012 0.005 -0.001 0.000Pc8 0.021 0.017 0.024 0.022 0.022 0.000Pc9 -0.004 -0.012 -0.001 0.005 0.001 0.000Pc10 0.001 0.005 0.003 0.004 0.002 0.000Pc11 0.003 0.003 0.005 0.003 0.003 0.000Pc12 -0.001 -0.002 0.003 0.001 0.002 0.000Pc13 -0.001 -0.001 -0.001 -0.001 0.000 0.000Pc14 0.000 0.001 -0.001 0.000 0.000 0.000Pc15 0.000 -0.002 -0.001 -0.001 -0.001 0.000Pc16 0.002 0.002 0.001 0.002 0.001 0.000

Variances along standard basis (or absorption measured at each sampled wavelength) and

along eigenvectors are listed as the last of columns of Tables 2-1 and 2-2, respectively.

Variances along each sampled wavelength are not informative. Attention is specially paid

in the eigenvector coordinate system. Large percentage of variances explained by the first

three principal components retain as much information as that of Table 2-1. Thus, the

sample information is approximately preserved by retaining only three eigenvectors and

Page 63: spectral-based color separation algorithm development - CiteSeer

43

three principal components, as a consequence, data reduction is achieved. That is, the five

samples can be approximated by the linear combination of the first three eigenvectors

together with the first three principal components as the coefficients of reconstruction.

The further justification to explore the concept of the last sentence. Let E equal

the nxn matrix of eigenvectors as the column vectors and Pc equal the nxp matrix of

principal components of a sample set, V. The matrix E is known as an orthogonal matrix

with properties such that

EET = ETE = I , (2-29)

where I is the nxn identity matrix. Equation (2-28) is rewritten as

Pc = ETV. (2-30)

Multiplying E on sides of Eq. (2-30) yielded

EPc = EETV = IV = V . (2-31)

Hence, an arbitrary sample set, V, can be reconstructed by linear combinations of

eigenvectors modulated by their corresponding principal components as claimed. The

principal components are not eigenvectors but exactly the coefficients, bi, used in Eqs. (2-

25) and (2-27).

Principal Component Analysis for Color Science Applications

Color science research employing PCA was published as early as 1954 (Morris and

Morrissey, 1954). This early research devised an objective method for determining

equivalent neutral densities of color film images. The basic concept was to determine the

Page 64: spectral-based color separation algorithm development - CiteSeer

44

minimum number of spectral density curves as the basis vectors necessary to account for

spectral variability of typical processed film with different exposures. They calculated the

three most significant eigenvectors and corresponding eigenvalues based on forty-two

patches of Ektachrome film. Then the three eigenvectors were used to spectrally

reconstruct the spectral densities of single-layer-coated films (e.g., cyan, or magenta, or

yellow dyes). The eigenvector-fitted dye density spectra were considered as the “assumed

dyes” which were the closest representations of spectral densities of three dyes accounting

for the minimum residual variance from normal manufacturing and processing.

Later, Simonds, in a landmark article, exemplified the applications of PCA for

photographic and optical response data (Simonds, 1963). He showed a visualization of

how a measured response curve was decomposed by six curves, that is, the response curve

can be synthesized by a linear combination of the six curves provided by his

demonstration. Mathematical basics and numerical examples were also discussed.

The spectral distribution of typical daylight as a function of correlated color

temperature was determined using PCA (Judd, MacAdam, and Wyszecki, 1964). The

compiled six hundred and twenty-two samples of daylight (249 daylight measurements

from Rochester, United States, 274 daylight measurements from Enfield, England, and 99

daylight measurements from Ottawa, Canada) were used to derive the mean daylight

vector and two eigenvectors of daylight, shown in Fig. 2-6. By Eq. (2-27), the mean and

first two eigenvectors were used to reconstruct the daylight distributions, plotted in Fig. 2-

Page 65: spectral-based color separation algorithm development - CiteSeer

45

7, at correlated color temperatures 4800 K, 5500 K, 6500 K, 7500 K, and 10000 K by

specially chosen scalar multiples in Eq. (2-27), bi, for reproducing exactly the same

chromaticities of the specified correlated color temperatures.

-200

0

200

400

600

800

1000

1200

1400

300

330

360

390

420

450

480

510

540

570

600

630

660

690

720

750

780

810

Wavelength

Rel

ativ

e irr

adia

nce

Fig. 2-6: The mean (thick line), the first eigenvector (thin line), and the second eigenvector(dashed line) of the 622 daylight measurements (Judd, MacAdam, and Wyszecki, 1964).

Figure 2-6 reveals three aspects of important information. First, the average

daylight is blue-greenish. Second, the first eigenvector indicates that, among six hundred

and twenty-two measurements, daylight spectral distributions vary mainly along the

yellow-blue direction which corresponds to the sky colors changing from yellowish to

bluish during a day. Finally, the second eigenvector explains the greenish to purplish

variation of daylight. This green-purple variation, according to the interpretation of Judd

et al., may be caused by the water vapor in the sky.

Page 66: spectral-based color separation algorithm development - CiteSeer

46

0

200

400

600

800

1000

1200

1400

1600

1800

300

330

360

390

420

450

480

510

540

570

600

630

660

690

720

750

780

810

Wavelength

Rel

ativ

e irr

adia

nce

Fig. 2-7: Spectral distribution of typical daylight at correlated color temperatures 4800 K,5500 K, 6500 K, 7500 K, and 10,000 K (Judd, MacAdam, and Wyszecki, 1964).

Interpretations for Coloration Processing Applications by PCA

Assuming objects are measured within the visible spectrum between 400 nm and

700 nm at 10 nm intervals, every measured sample is a vector of thirty-one components.

Thus, a measured sample set is thirty-one dimensional. Vector representations of colored

objects will adopt a type of spectral information whose vector addition and scalar

multiplication are defined. Hence, temporarily, the matrix-vector notation, ΦΦΦΦ, is employed

as the additive and scalar multiplicative spectral information. Consider three sets of

spectral absorption spectra of cyan, magenta, and yellow dyes modulated at different

concentrations, depicted in Fig. 2-8.

4800 K5500 K

6500 K

7500 K

10000 K

Page 67: spectral-based color separation algorithm development - CiteSeer

47

4 00 5 00 6 00 7 000

0 .5

1

1 .5

2

2 .5

3

Ab

so

rpta

nc

e

4 00 5 00 6 00 7 000

0 .5

1

1 .5

2

2 .5

W ave leng th4 00 5 00 6 00 7 000

0 .5

1

1 .5

2

2 .5

Fig. 2-8: Three sets of absorption spectra of cyan, magenta, and yellow dyes (left to right)at eleven different concentrations.

A “virtual” sample set, Φλ,mixture can be created by each combination of spectra at six

different percentages (0%, 20%, 40% 60%, 80% and 100%) of the three. Thus, the a

priori knowledge about this virtual sample set of two hundred and sixteen samples is that

it is theoretically distributed in a three dimensional subspace of ℜℜℜℜ31 since it is formed from

a combination of three dyes. Hence, visualizing in a thirty-one dimensional space, the

underlying variations of three-dye mixtures are along the cyan, magenta, and yellow

dimensions as shown in Fig. 2-8. Spectra of cyan, magenta, and yellow dyes at one

hundred percent concentration, Φλ,cyan, Φλ,magenta, and Φλ,yellow, respectively, are the basis

vectors of the three-dye coordinate system. Spectra of mixtures can not be easily

Page 68: spectral-based color separation algorithm development - CiteSeer

48

decomposed with respect to Φλ,cyan, Φλ,magenta, and Φλ,yellow if they are initially unknown.

Alternatively, if the Φλ,mixture could be scatter plotted in ℜℜℜℜ31 then the appearance of the

sample set would have samples varying along one weighted average direction and several

contrast directions, as mentioned previously. Since the visualization is impossible for a

thirty-one dimensional scatter plot, the feasible alternative is to observe the spectral curves

of the eigenvectors, shown in Fig. 2-9, derived from Φλ,mixture (spectral absorption

coefficients in this case).

400 500 600 700-1

-0.5

0

0.5

1The 1st eigenvector

Ab

sorp

tanc

e

400 500 600 700-1

-0.5

0

0.5

1The 2nd eigenvector

400 500 600 700-1

-0.5

0

0.5

1The 3rd eigenvector

400 500 600 700-1

-0.5

0

0.5

1The 4th eigenvector

Wavelength

Ab

sorp

tanc

e

400 500 600 700-1

-0.5

0

0.5

1The 5th eigenvector

Wavelength400 500 600 700

-1

-0.5

0

0.5

1The 6th eigenvector

Wavelength

Fig. 2-9: The first six eigenvectors obtained for the virtual sample set. (As many as thirty-one eigenvectors can be shown.)

The first eigenvector points out the weighted average direction along which the

samples are distributed. This implies that there are neutral colors in the Φλ,mixture judged by

Page 69: spectral-based color separation algorithm development - CiteSeer

49

the appearance of a flat spectrum, i. e., majority of samples are distributed along the

direction of weighted-average absoprtion. The second eigenvector reveals that samples

vary from short wavelength regions to long wavelength regions indicating the existence of

bluish, blue-greenish, yellowish, and reddish samples in Φλ,mixture. Similarly, the third

eigenvector describes that samples varying along the middle wavelength regions and the

corresponding complementary spectral regions indicates the existence of greenish and

purplish color samples in Φλ,mixture. These three eigenvectors explain one hundred percent

of total variance and the corresponding directions reveal the color information of samples

according to the previous interpretation. The rest of the eigenvectors (the fourth to sixth

are plotted to demonstrate their content) are associated with zero variance, that is, no

sample varies along such directions. Therefore, the interpretation of them is meaningless.

In practice, a measured sample set does not provide the statistical results of exactly the

same dimensionality as the known number of colorants used to construct the sample set.

For example, Fig. 2-10 depicts the six eigenvectors determined from the IT8.7/2 reflection

target, Kodak Q60C for Ektacolor paper, a test target of two hundred and sixty-four color

patches sampling the photographic paper’s color gamut (McDowell, 1993).

Page 70: spectral-based color separation algorithm development - CiteSeer

50

400 500 600 700-1

-0.5

0

0.5

1The 1st eigenvector

Ab

so

rpta

nce

400 500 600 700-1

-0.5

0

0.5

1The 2nd eigenvector

400 500 600 700-1

-0.5

0

0.5

1The 3rd eigenvector

400 500 600 700-1

-0.5

0

0.5

1The 4th eigenvector

Wavelength

Ab

so

rpta

nce

400 500 600 700-1

-0.5

0

0.5

1The 5th eigenvector

Wavelength400 500 600 700

-1

-0.5

0

0.5

1The 6th eigenvector

Wavelength

Fig. 2-10: The six eigenvectors obtained from an IT8.7/2 reflection target.

The first three eigenvectors explain 99.96% of total variance. The interpretation of the

first three eigenvectors was described previously. Interest is focused on the extra

dimensions of the statistical estimation. As the variance explained by the ith eigenvector

decreases, the oscillating appearance of the corresponding eigenvector increases. This can

be realized by inspecting the fourth to the ith eigenvectors with nonzero variance.

Explanations of the high degree of oscillation can be attributed to noise caused by

manufacturing, photographic processing, and spectrophotometric measurements. Since the

rapidly oscillating eigenvectors indicate the directions of samples with spectral properties

varying rapidly across the neighborhood spectral regions, no such colorants exist in the

Page 71: spectral-based color separation algorithm development - CiteSeer

51

physical world. Such eigenvectors must describe the noise behavior of the sample set.

Fortunately, the noisy behavior only contributes to insignificant statistical results. Thus,

the reconstruction of a sample set achieved by the significant eigenvectors fulfills the goal

of data (dimensionality) reduction.

Multivariate Normality for Effective Data Reduction

It is worth speculating on the multivariate normality of a given set of multivariate

measurements although it is not a requirement for deriving eigenvector-eigenvalue pairs.

Multivariate normality ensures that eigenvectors and the associated eigenvalues derived

from measured samples is close to the eigenvector-eigenvalue pairs of the entire

population since manufacturing and sampling procedures may not be optimally performed

(Johnson and Wichern, 1992a; Anderson, 1984; Anderson, 1963; Grishick, 1939). If a

population is multivariate normally distributed then the 99% of the population should

distribute inside an ellipse, ellipsoid, and hyper-ellipsoid for two, three, and higher

dimensional populations, respectively. Half lengths of the axes of an ellipsoid in an

eigenvector coordinate system are directly proportional to the corresponding eigenvalues.

If a population is not of ellipsoidal shape then data reduction may not be optimally applied

for reconstructing the samples from this population since the non-ellipsoidal shape of the

population may imply a bizarre structure among the random variables representing the

sample features (in this case, the random variable can be, for instance, the Φλ measured at

Page 72: spectral-based color separation algorithm development - CiteSeer

52

each sampled wavelength). To give a clearer insight, a set of 500 random samples was

generated from a bivariate uniform distribution, plotted in Fig. 2-11.

0 1 2 3 4 5 60

1

2

3

4

5

6

7

Random variable X

Ran

dom

var

iabl

e Y

Fig. 2-11: Scatter plot of the 500 random samples and their eigenvectors from a uniformdistribution.

The corresponding sample variance-covariance matrix and mean were calculated. A 99%

confidence region of an ellipse with two eigenvectors given by the very sample variance-

covariance matrix and mean to form a bivariate normal distribution are also super imposed

on to the 500 random samples in Fig. 2-11. Assuming another set of 500 samples are from

e1

e2

Page 73: spectral-based color separation algorithm development - CiteSeer

53

a bivariate normal distribution of the same covariance matrix and sample mean, then 99%

of them should be located inside the elliptical confidence region. By design, these two sets

of samples have the identical eigenvector-eigenvalue pairs. Once data reduction is required

by the first eigenvector approximation, the total error of the normal sample set by the first

eigenvector approximation is less that of uniform sample set since the total error is

proportional to their corresponding areas.

When the calculated eigenvectors with their corresponding eigenvalues explaining

small variances, which are considered as insignificant, are overlooked, the overlooked

eigenvectors may still be important for reconstruction due to not knowing how the

samples are distributed. The corresponding eigenvalues can not provide correct

information for data (dimensionality) reduction; that is, the estimation of the true

dimensionality based on the information of the total explained variance calculated by Eq.

(2-26) is not objective. Therefore, the information given by the calculation of percent

variance is less informative by non-normal multivariate distributions for the decision of

data (dimensionality) reduction.

It is required to check on two necessary conditions for the normality of a sample

set. First is the normality of the marginal distributions (spectral information measured at

each sampled wavelength) since all linear combinations of normal distributions are also

normal (Johnson and Wichern, 1992b). The normality of a univariate, often a marginal,

distribution can be inspected by the Q-Q plot or gamma plot for a bivariate distribution

Page 74: spectral-based color separation algorithm development - CiteSeer

54

(Johnson and Wichern, 1992c). The degree of normality can be specified by the

correlation coefficient of the Q-Q plot and the Chi-squire distance for univariate and

bivariate distributions, respectively. The normal plot procedure provided in MATLAB was

utilized for visual inspection. A virtual normal marginal distribution of one thousand

samples was generated by linear combinations of the spectral absorption coefficients of

three linearly independent colorant vectors. If an examined set is normally distributed then

the corresponding normal plot is a straight line.

As an example, Fig. 2-12 depicts the normal plot of absorption coefficients at 500

nm. The coefficients of linear combinations were generated from a normal random number

generator. The normal plot of the absorption coefficients at each sampled wavelength

appears to be straight lines as expected. Non-normal population of one thousand samples,

whose normal plot of absorption coefficients at 500 nm is shown as Fig. 2-13, was also

obtained by linear combinations of the same colorant vectors as that of Fig. 2-12 whose

coefficients came from an exponential distribution. The non-normal marginal distribution

reveals curvature in the normal plot. The shape of the sample set with non-normal

marginal distributions can not be ellipsoidal in a higher dimensional space by the

implications of the curvatures of marginal distributions in the normal plot. It can be

expected that most errors yielded of the reconstructed population by PCA are from those

samples deviating from the estimated straight line of their corresponding normal plot.

Page 75: spectral-based color separation algorithm development - CiteSeer

55

2 4 6 8 1 0 1 2 1 4

0 . 0 0 10 . 0 0 3

0 . 0 1 0 . 0 2

0 . 0 5

0 . 1 0

0 . 2 5

0 . 5 0

0 . 7 5

0 . 9 0

0 . 9 5

0 . 9 8 0 . 9 9

0 . 9 9 70 . 9 9 9

A b s o r p t io n c o e f f ic ie n t s a t 5 0 0 nm

Pro

ba

bili

ty

Fig. 2-12: Normal probability plot of absorption coefficients at 500 nm from the virtualnormal population obtained by linear combinations of three linearly independent dyes.

0 5 1 0 1 5 2 0 2 5 3 0

0 .0 0 10 .0 0 3

0 .0 1 0 .0 2

0 .0 5

0 .1 0

0 .2 5

0 .5 0

0 .7 5

0 .9 0

0 .9 5

0 .9 8 0 .9 9

0 .9 9 70 .9 9 9

A b s o r p t io n c o e f f ic ie nts a t 5 0 0 nm

Pro

ba

bili

ty

Fig. 2-13: Normal probability plot of absorption coefficients at 500 nm of the exponentialpopulation obtained by linear combinations of three linearly independent dyes.

Page 76: spectral-based color separation algorithm development - CiteSeer

56

The second condition is determined by whether two dimensional scatter plots of

any measurements of any two random variables generate an elliptical appearance. For a set

of spectral measurements using sampled between 400 nm and 700 nm at 10 nm interval,

there are four hundred and forty-three ( C(31,2)-31=434) scatter plots to be examined. An

elliptical appearance of a two dimensional scatter plot reveal the existence of bivariate

normality. Figure 2-14 is depicted as an example by scatter plotting the absorption

coefficients at 550 nm versus absorption coefficients at 500 nm of the virtual normal

sample set. The elliptical appearance of the two dimensional scatter plot suggests that

absorption coefficients at 550 nm and 500 nm are bivariate normally distributed.

If the first and second conditions are met then univariate and bivariate normality

are generated. Whether or not it implies the multivariate normality of an examined sample

set, it is difficult to conclude inductively. Without the satisfaction of the first and second

conditions, the existence of multivariate normality of the examined sample set should be

denied. Non-normal samples can be further transformed to a set of representations with

more degrees of normality by logarithmic, power, or polynomial transformations (Johnson

and Wichern, 1992d).

Page 77: spectral-based color separation algorithm development - CiteSeer

57

0 0.5 1 1.5 2 2.5 30

0.5

1

1.5

2

2.5

3

Absorption coefficients at 500 nm

Abs

orpt

ion

coef

ficie

nts

at 5

50 n

m

Fig. 2-14: The two-dimensional scatter plot of absorption coefficients at 550 nm vs. 500nm from the virtual normal population obtained by linear combinations of three

independent dyes.

F. SPECTRAL PRINTING MODELS

Conventional CMYK halftone printing processes are the most popular color

reproduction processes for their relative inexpensive cost and reproduction speed. High

speed printing presses generate more than 10,000 prints per hour. A priceless artwork can

be massively reproduced in such a fashion at a relatively low cost. Since the goal of this

research is to build a six-color output system. A halftone printing process is a natural

choice.

Page 78: spectral-based color separation algorithm development - CiteSeer

58

In this section, the underlying physical phenomena of the color formation of a

halftone printing process will be discussed. Mathematical description for the halftone color

formation such as Murray-Davies and Neugebauer equations as well as the dot-gain effect

introduced by Yule-Nielsen will be shown.

Basic Assumptions

A halftone cell is designed by laying down a grid of pixels. The overall reflectance

factor over a halftone cell is theoretically the average result of the reflectance factor of the

pixels which are turned on, termed as on-pixels, and the reflectance factor of the pixels

which are off, termed as off-pixels, modulated by the percentage of on-pixels and the

percentage of off-pixels. A halftone cell with NxN addressibility is depicted in Fig. 2-15,

where N = 2.

Fig. 2-15: The outline of a 2x2 halftone cell.

The calculations for spectral reflectance of a halftone cell equation are based on the

following underlying assumptions:

1. The spectral reflectance factor of the primary colorant varies proportionally to

that of the primary at 100% area coverage.

i = 1 i = 2

i = 3 i = 4

Page 79: spectral-based color separation algorithm development - CiteSeer

59

2. Spectral reflectance factor is additive within the halftone cell.

3. Human eye cannot resolve the halftone cell.

These three assumptions lead to the spectral reflectance factor Rλ of a halftone cell,

conceptually, being the sum of the spectral reflectance factor of each primary color at

100% area coverage modulated by their corresponding fractional dot area coverage inside

the halftone cell. In practice, the analytical description is more complicated than this

simple concept. The analytical description of a halftone color formation depends on the

type of halftone cell and the alignment of dots. Generally, the so called dot-on-dot type of

halftone device can be analytically modeled by Murray-Davies theory, and the traditional

halftone dot placement by rotated-screen or stochastic dot formation can be analytically

described by Neugebauer theory together with Demichel’s probability model for dot

overlap.

Murray-Davies Theory

Figure 2-16 shows a halftone cell printed by a single ink on an opaque support can

be covered with different dot area coverage. It shows the notion of how the spectral

reflectance factor over a halftone cell varies with respect to the percentage of the area

covered by a single color ink. By the assumptions of additivity inside a halftone cell, the

spectral reflectance factor Rλ of a halftone cell printed on paper by a single color ink, can

be estimated based on the Murray-Davies equation,

R aR a R paperλ λ λ= + −, ,( )100% 1 , (2-32)

Page 80: spectral-based color separation algorithm development - CiteSeer

60

where a is the fractional dot area of a single color ink, Rλ,100% is the spectral reflectance

factor of the color ink at 100% dot area coverage, and Rλ,paper is the spectral reflectance

factor of the paper support (Murray, 1936).

11% area coverage 56% area coverage 100% area coverage

Fig. 2-16: The 3x3 halftone cell covered by three different dot areas.

The accuracy of the estimated spectral reflectance factor of a halftone cell, predicted by

the Murray-Davies equation, relies on linearity for each ink printed on a paper support.

Linearity is defined as that, for each primary, the reflectance factors should be summed up

according to their fractional dot areas. That is, if the fraction dot areas of a primary are

summed up to a percent, where 0 ≤ a ≤ 100, then the resultant reflectance factor is

summed up to a percent of the reflectance factor of the primary at 100% area coverage.

Due to the failure of linearity, the Murray-Davies equation can not provide adequate

prediction of the estimated spectral reflectance factor inside a halftone cell. The physical

phenomena that limit linearity are known as mechanical and optical dot-gain. To model

both mechanical and optical dot-gain, the Yule-Nielsen n-factor was employed to modify

Page 81: spectral-based color separation algorithm development - CiteSeer

61

the Murray-Davies equation (Yule and Nielsen, 1951). The n-factor modified Murray-

Davies Equation is shown in Eq. (2-33), where terms in the Eq. (2-33) are similarly

defined as those in Eq. (2-32).

R a Rnpapern n

λ λ λ= + −[aR ( ) ],/

,/

100%1 11 , (2-33)

Dot Gain

There are two sources of dot gain, mechanical and optical dot gain. Mechanical

dot gain is caused by printing ink submerging and spreading when delivered onto a paper

substrate causing the physical dot size to be changed. Figure 2-17 depicts the appearance

of mechanical dot gain at a microscopic level.

Ideal dot shape non-ideal dot shape aftermechnical dot gain

Fig. 2-17: Non-ideal halftone dot shapes vary due to the mechanical dot gain effect.

Optical dot gain effect is depicted in Fig. 2-18, known as the Yule-Nielsen effect, and

originates from light flux that penetrates the ink film, enters the paper substrate, scatters,

and finally emerges from non-ink area. Simultaneously, light flux can enter the paper

Page 82: spectral-based color separation algorithm development - CiteSeer

62

substrate and get scattered, penetrate the ink film, and finally emerge from the ink film.

These two physical phenomena cause printing models to predict smaller or larger dot size.

Paper Paper

Light

Dot

Fig. 2-18: The cause of optical dot gain.

Several dot gain models have been published to take into account that the dot gain

effect is a function of the size of halftone dots, scattering, and the surface reflection of ink

films (Arney, Engeldrum, and Zeng, 1995; Wedin and Kruse, 1995; Arney, Arney, and

Engeldrum, 1996). Arney et al., (1996) further determined the paper spread function, or

the modulation transfer function, by Fourier analysis.

Although the Yule-Nielsen n-factor is an empirical parameter, several research

efforts have shown that it is capable to maintain high accuracy of model fitting. Yule-

Nielsen n-factor is still widely employed for its simplicity (Viggano, 1985;

Balasubramanian, 1995; Iino and Berns, 1997; 1998a; 1998b; Pearson, 1980; Pope, 1989).

Neugebauer Theory

The Murray-Davies equation is only used for prediction of a single-color halftone

cell. It can not predict the spectral reflectance over a multiple-color halftone cell. A

multiple-color halftone cell is defined as an area covered by various printer primary inks.

Page 83: spectral-based color separation algorithm development - CiteSeer

63

Wide varieties of colors are produced by modulating the area coverage of printer primaries

in a halftone cell on an opaque medium such as paper. The spectral Neugebauer equation

can be used to predict spectral reflectance factor over a multiple-color halftone cell

(Neugebauer, 1937).

For a CMYK printing process, channels of white, cyan, magenta, yellow, red,

green, blue, three-color black, black, black-cyan, black magenta, black yellow, black-red,

black-green, black-blue, and four-color black are known as the sixteen Neugebauer

primaries. Neugebauer theory assumes that each channel of Neugebauer primary is linear

and color halftone dots are placed at random. Thus, the spectral reflectance factor over a

halftone cell, printed by a CMYK printer, is calculated by the sum of the fractional dot

area of each channel multiplied by the spectral reflectance of the corresponding

Neugebauer primary at 100% dot area coverage. The spectral Neugebauer equation is

defined as the following:

R a Rii

iλ λ==

∑1

16

, , (2-34)

where Rλ is the spectral reflectance factor of a halftone cell printed on a paper support,

Rλ,i is the spectral reflectance factor of the ith Neugebauer primary, and ai is the fractional

dot area coverage of the ith Neugebauer primary.

Fractional dot area coverage, ai, of the ith Neugebauer primary is calculated by

employing the Demichel’s dot-overlap model (Demichel, 1924; Yule, 1967; Kang, 1997).

The Demichel model is based on the assumption that dots are delivered on the substrate in

Page 84: spectral-based color separation algorithm development - CiteSeer

64

a random fashion. Hence, the overlap area of two inks is nothing more than the joint

probability of these two inks. There are 24 = 16 combinations to predict the Neugebauer

primaries in the four-color case. Non-overlapping portions are simply the CMYKW

primaries, two-color overlaps are defined as RGB secondary primaries, three-color

overlaps are tertiary primaries, and four-color overlap is essentially the unique four-color

black. The fractional dot areas for sixteen Neugebauer primaries are calculated as below:

White : a1 = (1 - c) (1 - m) (1 - y) (1-k)Cyan : a2 = c (1 - m) (1 - y) (1-k)Magenta : a3 = m (1 - c) (1 - y) (1-k)Yellow : a4 = y (1 - c) (1 - m) (1-k)Red : a5 = y m (1 - c) (1-k)Green : a6 = c y (1 - m) (1-k)Blue : a7 = c m (1 - y) (1-k)3-Color Black : a8 = c m y (1-k) (2-35)Black : a9 = k (1 - c) (1 - m) (1 - y)Black-Cyan : a10 = c k (1 - m) (1 - y)Black-Magenta : a11 = m k (1 - c) (1 - y)Black-Yellow : a12 = y k (1 - c) (1 - m)Black-Red : a13 = y m k (1 - c)Black-Green : a14 = c y k (1 - m)Black-Blue : a15 = c m k (1 - y)4-Color Black : a16 = c m y k

where c, m, y, and k are fractional dot areas of printer primaries within a halftone cell.

As the result of linearity failure caused by mechanical dot-gain, optical dot-gain, or both,

the spectral Neugebauer equation can not accurately predicte spectral reflectance over a

halftone cell. The spectral Neugebauer equation together with the Yule-Nielsen n-factor

Page 85: spectral-based color separation algorithm development - CiteSeer

65

again can be employed to improve the model accuracy which is shown as equation (2-36),

where terms in Eq. (2-36) are similarly defined as that of (2-34).

R a Rii

in n

λ λ==

∑[ ],/

1

161 , (2-36)

Page 86: spectral-based color separation algorithm development - CiteSeer

66

III. LINEAR COLORANT MIXING SPACES

As discussed in the previous chapter of theoretical background, researchers

frequently perform PCA using reflectance factor of color samples requiring reproduction.

Often, the number of significant dimensions (basis vectors) exceeds the number of physical

parameters, for example, a photographic system requires more than three dimensions for

spectral reconstruction. This contradicts the knowledge that photographic materials are

manufactured by three known dyes. Apparently, the color synthesis by PCA using

reflectance factor as the representation for photographic materials is not optimal. This

justification also applies for all analysis and synthesis using PCA on surface colors of all

types. Hence, a transformation to account for the real physical dimensions of a set of

measurements as well as to agree with the process of an opaque coloration is desirable.

Mathematical transformation based on Kubelka-Munk turbid media theory is an obvious

choice. The resultant space after Kubelka-Munk transformation is termed as Φ space for

simplicity through the rest of this dissertation. Upon our numerous attempts using Φ space

for opaque color analysis and synthesis, PCA failed to predict the reconstructed accuracy

with constrained number of dimensions. For example, a set of opaque mixtures was

created by mixing six opaque paints. Six eigenvectors of the set of opaque mixtures in Φ

space frequently fail to spectral reconstruct the low absorptive samples. Such phenomena

which are not realizable for physical materials are profound by the negative spectral

Page 87: spectral-based color separation algorithm development - CiteSeer

67

components as a result of six-eigenvector reconstruction. Since Kubelka-Munk

transformation is highly nonlinear, the consequence of inverse transforming the negative

spectral components is not interpretable.

Our primary goal is to employ or derive a transformation to ensure that the

dimensionality of the linear representation of a set of color samples agrees with their

physical dimensionality. During the process of searching and deriving the optimal

transformation, the fundamentals of PCA were thoroughly reviewed. It was discovered

that the multivariate normality of a sample set contributed to the efficiency of data

(dimensionality) reduction. This lead us to utility the multivariate normality as a beneficial

factor in designing the transformation.

A. REFLECTANCE AND ABSORPTION SPACES

Both reflection and absorption occur when opaque objects are exposed to

electromagnetic radiation. If there is no thermal or other energy loss then the total

reflected and absorbed energy should be identical to the total incident energy.

Quantitatively, there is a relationship between reflectance and absorption according to the

law of conservation of energy. Kubelka and Munk initiated the derivations of this

relationship (Kubelka and Munk, 1931; Kubelka, 1948). They found reflectance factor is a

function of the ratio of absorption coefficient, K, and scattering coefficient, S. The ratio,

K/S, is again denoted as Φ for simplicity and (K/S)λ as well as Φλ are denoted as their

Page 88: spectral-based color separation algorithm development - CiteSeer

68

spectral extension. It is also known that the ratio of the absorption coefficient and

scattering coefficient is approximately linear with respect to concentration (Allen, 1966;

Allen, 1980; Shah and Gandhi,1990). Colorant formulation can be performed by linear

combinations of (K/S)λ of colorants used for synthesis, i. e.,

(K/S) c (k/s),mixture i ,ii

n

λ λ==∑

1

, (3-1)

where c represents the concentration, k and s are the absorption and scattering coefficients

of a colorant normalized to unit concentration. Therefore, the absorption and scattering

properties of materials also provide a useful platform for color scientists to perform color

analysis and synthesis. Again, the vector space of Eq. (3-1) is denoted as Φ space for

compactness of terminology. Although Φλ has the advantageous linear property with

respect to concentration, interestingly, there is relatively little research concerned with

estimating spectral information by applying linear modeling techniques in Φ space.

Φ space related research by Ohta determined the three eigenvectors from

measurements of spectral densities of a photography material (Ohta, 1973). He then tried

to linearly transform the three eigenvectors to a set of all-positive vectors as the estimation

of the underlying real dye spectra. Once the basis density spectra are statistically

uncovered, any spectral density measured from the photographic material can be

synthesized with high colorimatric and spectral accuracy. Reconstructed density spectra

can be further transformed to the representations of spectral transmission or reflectance

Page 89: spectral-based color separation algorithm development - CiteSeer

69

factors. Berns and Shyu extensively carried out this process to estimate the spectral

transmission and reflectance factors of four photographic films (Berns and Shyu, 1995). In

order to validate the accuracy of their dye estimates based on PCA, a tristimulus matching

algorithm was used to achieve an exact match for CIE illuminant D50 and the 1931

observer (Allen, 1980). CIELAB color difference for illuminant A was used as an

metamerism index. Smaller indices indicated better spectral reconstruction. Accuracy for

the four photographic films tested, averages and maximum metamerism indices varied

from 0.1 to 0.3 ∆E*ab and 0.4 to 1.3 ∆E*

ab, respectively.

By the inspiration of these two researches, Φ space as opposed to reflectance

space might be a better alternative space to approximate natural scenes since Φ is

approximately linear with respect to concentration. The superiority between two spaces

depends on whether or not the spectral properties (reflectance factor or Φ) forming a

scene whose dimensionality distribute in each space agree with their physical

dimensionality. A linear colorant mixing space with larger degree of multivariate normality

can be further approximated with lower dimensionality. This is a beneficial factor when

research applications are frequently confined to use limited number of primary colorants

for color synthesis. This research project will be focusing on the comparisons among

spaces based on these two factors.

Page 90: spectral-based color separation algorithm development - CiteSeer

70

B. TRANSFORMATION BETWEEN REFLECTANCE AND ΦΦΦΦSPECTRA

The transformation between reflectance factor and Φ is often based upon Kubelka-

Munk turbid media theory. Equations (3-2) and (3-3) are used for opaque materials such

as acrylic paints and textiles, where the R λ,∞ is the spectral reflectance factor of an opaque

material.

Rλ λ λ λ,∞ = + − +1 22Φ Φ Φ (3-2)

Φ λ λ λ= − ∞ ∞( ) /, ,1 22R R (3-3)

Equations (3-4) and (3-5) are used for transparent color layer in optical contact with an

opaque support such as photographic paper,where Rλ, g is the spectral reflectance factor of

an opaque support and X is the thickness of the transparent colorant layer. Equation (3-5)

is the inverse transformation of Eq. (3-4) by assuming that the thickness, X, is unity.

lim ,S

gXR R e

−=0

2λ λ

λΦ (3-4)

lim . ln( ),

Sg

R

R→= −

00 5Φλ

λ

λ(3-5)

Kubleka-Munk turbid media theory is based on a two-flux assumption, that is, the

light in the colorant layer only become scattered upward or downward. No other

directional scattering is assumed. Hence, the Kubleka-Munk transformation itself is an

approximation of coloration processes (Van De Hulst, 1980; Nobbs, 1985). Accuracy is

Page 91: spectral-based color separation algorithm development - CiteSeer

71

quite reasonable for materials with optical characteristics modeled by Eqs. (3-4) and (3-5).

However, as this research progressed, it was discovered that the transformation for

opaque materials does not always describe the optical properties of mixtures formed by

the corresponding coloration. In retrospect, this leads to the violation of the two flux

assumption. A real material most frequently scatters light in all directions which causes the

failure of Eqs. (3-2) and (3-3). Furthermore, measurement by spectrophotometers with

non-optimal aperture sizes causes failure to the linear assumption in Φ space (Tzeng and

Berns, 1998a). Concentration is no longer linear with respect to Φλ. Consider a

spectrophotometer measuring the surface of a multicolor object. Its field of view may

cover several color surfaces as shown in Fig. 3-1.

Fig. 3-1: The possible field of view of a spectrophotometer.

In this case, the reading of the spectrophotometer is the result of spatial averaging inside

its field of view. This implies the additive operation has already been performed in

Spectrophotometer Sensor plane Field of view

Color object

Page 92: spectral-based color separation algorithm development - CiteSeer

72

reflectance space. Since the Kubelka-Munk opaque transformation is nonlinear, the

additivity of colorant vectors is, therefore, not well defined in Φ space.

In dealing with the failure of Kubelka-Munk turbid media theory, many more

theories utilizing multi-flux methods in solving radiation transfer problem have been

published by a number of authors for improving the predicting accuracy (Mudget and

Richards, 1971; Mudget and Richards, 1972; Maheu, Letoulouzan and Gouesbet, 1984;

Mehta and Shah, 1986a; Mehta and Shah, 1986b). However, these complex models,

despite their improved correlation with the true optics of colorant mixtures, usually

required considerable parameter optimization in order to result in acceptable accuracy. It

seems reasonable to directly derive an empirical transformation. The main concerns for the

derivation of an empirical space are: transforming a non-normal population to a near

normal population since the normality is a beneficial factor for data (dimensionalty)

reduction, obtaining a new colorant vector space with reduced dimensionality that

corresponds to the physical dimensionality of a given sample set, and the vector addition

and scalar multiplication in new vector space should approximately describe the process of

subtractive opaque coloration. Consider the subtractive opaque colorant mixing, the more

colorants that are added for coloration, the darker the resultant mixture is. A vector space

formed by adding reflectance factors is not realizable for opaque coloration. Thus, an

empirical equation was derived based on these restrictions.

Page 93: spectral-based color separation algorithm development - CiteSeer

73

The new near-normal as well as reduced dimensionality space, Ψ, and its inverse

transformation were determined and described by

Ψλ λ= −�

a R12 (3-6)

and

R aλ λ= −( )� Ψ 2 , (3-7)

where Ψλ represents the new linear vector representation of an opaque colorant and

a≅ 1 which is empirically determined from a set of samples requiring reproduction. The

process of optimizing �

a and the MATLAB programs are attached in Appendix B.

Determination of �

a is to perform the transformation by Eq. (3-6) such that the resultant

set of Ψλ is of the requested dimensionality upon color reproduction, i.e., the Ψλ for

photographic material should be three dimensional. The use of square root transformation

of the spectral reflectance factors improves normality (Johnson and Wichern, 1992) and

the offset term is required to account for a subtractive opaque coloration.

C. DIMENSIONALITY REDUCTION: NORMAL VERSUS NON-NORMAL POPULATIONS

The proof for multivariate normality used as a beneficial property for sample

reproduction requiring data (dimension) reduction is to construct both multivariate normal

and non-normal populations with known dimensionality and employ a fewer number of

eigenvectors for spectral reconstruction. The metric for judging the reconstruction

Page 94: spectral-based color separation algorithm development - CiteSeer

74

accuracy should be the RMS error of reflectance factors, Rλ. If the Ψ or Φ space is used

for linear modeling, then minimizing the RMS error of Ψλ or Φλ is not equivalent to

minimizing the RMS of Rλ since the transformations is nonlinear for the Ψ or Φ spaces. In

order to compare the reconstruction accuracy in terms of RMS error, the comparison for

the superiority between a normal and a non-normal set linearly modeled by PCA is

convenient using reflectance space. Hence, the simulation discussed next will use

reflectance space for color mixing though it is not realizable by subtractive coloration, and

the colorimetric error and metameric index can be shown. Colorimetric accuracy of

eigenvector reconstruction is specified by ∆E*94 color difference equation (CIE Technical

Report, 1995) under CIE standard illuminant D65 and 1931 standard observer. Spectral

accuracy is indicated by metameric index based on parameric correction (Fairman, 1987)

for D65 and the 1931 observer followed by a color difference calculation for illuminant A.

The parameric correction is equivalent to modulating colorant concentration such that an

exact colorimetric match is achieved for D65 and the color difference under A indicated

the degree of metamerism. The higher the metamerism index, the larger the degree of

spectral mismatch.

The multivariate normal sample set is generated by six linearly independent

colorant vectors modulated by coefficients which are randomly sampled from a beta

distribution with parameters α = 5 and β = 5 (Dougherty, 1990). Hence, the resultant

population, which is the linear combination of six bell-shape marginal distributions, is

Page 95: spectral-based color separation algorithm development - CiteSeer

75

approximately multivariate normally distributed. On the contrary, the same six colorant

vectors were modulated by coefficients which come from six beta distributions with six

different combinations of α and β to create a non-normal distribution. Sample sets of five

hundred six-colorant mixtures, one multivariate normal and one non-normal, were created

computationally. Normality is conformed by the inspection of its normal plot, shown in

Fig. 3-2, revealing that the each marginal distribution is approximately normally

distributed (straight lines). Non-normality is conformed by the non-normal marginal

distributions plotted in Fig. 3-3.

0.1 0.2 0.3 0.4 0.5 0.6 0.7

0.001

0.003

0.01 0.02

0.05

0.10

0.25

0.50

0.75

0.90

0.95

0.98 0.99

0.997

0.999

Reflectance factor

Pro

bab

ility

Fig. 3-2: The normal plot of simulated reflectance factors at each sample wavelengthobtained by linear combinations of six approximately normal distributions.

Page 96: spectral-based color separation algorithm development - CiteSeer

76

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8

0.001

0.003

0.01 0.02

0.05

0.10

0.25

0.50

0.75

0.90

0.95

0.98 0.99

0.997

0.999

Reflectance factor

Pro

ba

bili

ty

Fig. 3-3:The normal plot of simulated reflectance factors at each sample wavelengthgenerated by linear combinations of six non-normal distributions.

Since the two sample sets are distributed in six dimensional spaces, six eigenvectors

should ideally span the entire six dimensional sample space. This simulation is to

demonstrate that it is possible to approximate the entire six dimensional sample space by

lower dimensional subspaces if they are multivariate normally distributed. Table 3-1 shows

the colorimetric and spectral accuracy of the multivariate normal and the non-normal

sample sets reconstructed with different dimensionalities at a random simulation. By

comparing the two sets, the dimensionality can be reduced to three dimensional for the

multivariate normal sample set indicated by low RMS error and satisfactory colorimatric

Page 97: spectral-based color separation algorithm development - CiteSeer

77

and spectral performance. Whereas, the non-normal sample set can not be effectively

approximated below four dimensional reconstruction.

Table 3-1: The colorimetric and spectral accuracy of the multivariate normal and non-normal sample sets reconstructed with different number of dimensions, where Stdev standsfor the standard deviation and RMS representing the total root mean square error of thereconstructed reflectance spectra.

Multivariate Normal Sample set∆E*

94 Metamerism Index (∆E*94)

Dimensionality six five four three six five four threeMean 0.0 0.0 0.8 0.9 0.0 0.0 0.1 0.3Stdev 0.0 0.0 0.4 0.6 0.0 0.0 0.0 0.2Maximum 0.0 0.1 2.0 2.9 0.0 0.0 0.2 1.3Minimum 0.0 0.0 0.0 0.1 0.0 0.0 0.0 0.0RMS 0.000 0.004 0.005 0.008

Non-Normal Sample setDimensionality six five four three six five four threeMean 0.0 0.1 1.5 3.1 0.0 0.0 0.1 1.5SDV 0.0 0.0 0.8 1.3 0.0 0.0 0.1 0.7Maximum 0.0 0.2 4.9 7.1 0.0 0.0 0.5 3.2Minimum 0.0 0.0 0.0 0.2 0.0 0.0 0.0 0.1RMS 0.000 0.007 0.009 0.023

D. VERIFICATIONS

The first sample set used was the ANSI IT8.7/2 reflection target measured with a

Gretag SPM 60 spectrophotometer. Since the IT8.7/2 reflection target is manufactured

with three dyes, dimensionality should be theoretically three in a vector space via a

suitable transformation. The Kubelka-Munk transformation for a transparent colorant

layer in optical contact with an opaque support, Eqs. (3-4) and (3-5), was utilized. Table

Page 98: spectral-based color separation algorithm development - CiteSeer

78

3-2 shows the percent variance (PV) of the significant eigenvectors calculated in both

reflectance and absorption space of the IT8.7/2 reflection target.

Table 3-2: The percent variance by eigenvector analysis in both reflectance and absorptionspace of IT8.7/2 reflection target.

Reflectance AbsorptionThe ith

EigenvectorEigenvalue Percent

Variance(PV) %

CumulativePV %

Eigenvalue PercentVariance(PV) %

CumulativePV %

1 0.9474 80.43 80.43 7.5702 74.25 74.252 0.1845 15.66 96.09 1.9038 18.67 92.923 0.0415 0.35 99.62 0.7172 7.03 99.964 0.0033 0.28 99.905 0.0006 0.05 99.95

PCA requires five eigenvectors in reflectance space to explain the same variance of

IT8.7/2 reflection target as that of absorption space with three eigenvectors. If Eq. (3-5)

transforms the measured spectral reflectance factor of the IT8.7/2 reflection target into the

representation of spectral absorption whose dimensionality is exactly three, then the

multivariate normality of IT8.7/2 reflection target in absorption space is not crucial since

three eigenvectors in absorption space already span the entire absorption space of IT8.7/2

reflection target, i.e., no data (dimensionality) reduction is required. Since the spectral

measurements in absorption space for the IT8.7/2 reflection target is approximately three

dimensional, properly modeled by Eqs. (3-4) and (3-5), the multivariate normality in

absorption space is viewed as less crucial for three-eigenvector reconstruction. On the

contrary, the dimensionality of the reflectance space of IT8.7/2 reflection target is

Page 99: spectral-based color separation algorithm development - CiteSeer

79

obviously beyond three dimensions. In order to achieve high colorimatric and spectral

accuracy by three-eigenvector reconstruction in reflectance space, the multivariate

normality in reflectance space for the IT8.7/2 reflection target is crucial for data

(dimension) reduction. The normality plot of reflectance factors at each sample

wavelength (marginal distribution) is shown in Fig. 3-4.

0 0.1 0 .2 0 .3 0 .4 0 .5 0 .6 0 .7 0 .8

0 .003

0.01 0 .02

0 .05

0 .10

0 .25

0 .50

0 .75

0 .90

0 .95

0 .98 0 .99

0 .997

R efle ctanc e fac to r

Pro

ba

bili

ty

Fig. 3-4: The normal plot of marginal distributions of IT8.7/2 reflection target inreflectance space.

Since the multivariate-normality is less crucial for IT8.7/2 reflection target in

absorption space, the attention is focused on reflectance space. Recall the necessary

condition of multivariate normal distribution is that the marginal distribution must be

normal. By inspecting Fig. 3-4, the degree of normality is low as shown by the large

amount of curvature. It is expected that three-eigenvector reconstruction in reflectance

Page 100: spectral-based color separation algorithm development - CiteSeer

80

will not yield satisfactory accuracy. The performance of three-eigenvector reconstruction

and the statistical results of colorimetric and spectral metrics in both spaces are listed in

Table 3-3.

Table 3-3: The colorimetric and spectral performance of three eigenvector reconstructionin both spaces for an IT8.7/2 reflection target.

Reflectance Absorption∆E*

94 Metamerism Index ∆E*94 Metamerism Index

Mean 1.8 0.6 0.5 0.1Stdev 1.5 0.6 0.2 0.1Maximum 8.5 3.6 1.0 0.4Minimum 0.0 0.0 0.0 0.0RMS 0.014 0.006

From Table 3-3, the colorimetric and spectral accuracy is far superior in absorption space

compared with reflectance space. Tables 3-2 and 3-3 assure that Kubelka-Munk

equations, Eqs. (3-4) and (3-5), are suitable transformations to model the IT8.7/2

reflection target. The accuracy by three-eigenvector reconstruction in absorption space

agrees with the fact that the IT8.7/2 reflection target is comprised of three dyes. Modeling

the IT8.7/2 reflection target should be a three dimensional problem instead of five

dimensional. The ideal reproduction should be achieved using three eigenvectors since the

IT8.7/2 reflection target is three dimensional. Whereas, the measurement noise and

validity of Kubelka-Munk transparent transformation affect the accuracy.

The analysis for IT8.7/2 is based on the Kubelka-Munk turbid media theory while

color materials behave similarly to the underlying theoretical requirements. However,

Page 101: spectral-based color separation algorithm development - CiteSeer

81

when the absorption and scattering behavior of the object violates the two flux

assumption, spatial averaging occurs due to a large field of view, noise contributes to the

measurements, and objects are not completely opaque, the Kubelka-Munk opaque

transformations Eqs. (3-2) and (3-3) are no longer valid. The proposed transformation

methods, shown as Eqs. (3-6) and (3-7), are employed.

The second verification was performed on a paint target of 141 patches created by

mixing six linearly independent Galeria acrylic colors which were measured using a

Macbeth Color-Eye 7000 integrating sphere spectrophotometer with specular component

included. By knowing that this set of samples is theoretically six dimensional, the spectral

reproductions by the six significant eigenvectros in R (reflectance), Ψ, and Φ space were

performed. The colorimetric and spectral accuracy, RMS, and percent variance (PV)

explained by the six significant eigenvectros are tabulated in Table 3-4. Six-eigenvector

reconstruction in Ψ space yielded the best performance in light of metameric and RMS

error. Interestingly, the percent variance explained by six-eigenvectors in Φ space is the

highest (99.92%) among the three, whereas, the spectral reconstruction yielded the highest

RMS error, hence, the lowest colorimetric and spectral accuracy.

Table 3-4: The statistical performance by six-eigenvector reconstruction for 141 acryliccolors in R, Ψ and Φ spaces.

∆E*94 Metamerism Index (∆E*

94)Space Mean SDV Max Min Mean SDV Max Min RMS PV (%)

R 0.4 0.3 1.6 0.0 0.2 0.2 1.0 0.0 0.010 99.84Ψ 0.3 0.2 0.8 0.0 0.1 0.1 0.7 0.0 0.007 99.85Φ 1.0 1.7 6.6 0.0 0.3 0.4 1.8 0.0 0.026 99.92

Page 102: spectral-based color separation algorithm development - CiteSeer

82

Another verification was performed on a set of 105 color patches created by

another set of six linearly independent colorants (two Sakura poster colors and four Pentel

poster colors) using the same measuring instrument and geometry described above. The

colorimetric and spectral accuracy, RMS, and percent variance explained by the six

significant eigenvectros are shown in Table 3-5.

Table 3-5: The statistical performance by six-eigenvector reconstruction for 105 postercolors in R, Ψ ,and Φ spaces.

∆E*94 Metamerism Index (∆E*

94)Space Mean SDV Max Min Mean SDV Max Min RMS PV (%)

R 1.0 0.7 2.8 0.1 0.3 0.2 0.7 0.0 0.012 99.60Ψ 0.5 0.3 1.1 0.1 0.2 0.1 0.4 0.0 0.007 99.70Φ 0.5 0.3 1.9 0.0 0.1 0.1 0.5 0.0 0.012 99.98

This results is again showing that even though the percent variance explained by six

eigenvectors is the highest in Φ space (99.98%), the spectral reconstruction can still go

wrong due to its nonlinear inverse transformation, Eq. (3-3). Figure 3-5 shows the

nonlinear transformation is acting as an high gain amplifier at the low Φ value

corresponding to high reflectance factor. Even a tiny mismatch around the low Φ region

will be enhanced after inverse transformation causing high colorimetric error.

Furthermore, the spectral regions with low Φ components are most likely reconstructed

with error based on PCA if the number of eigenvectors is not sufficient for reconstruction.

Kubelka-Munk transformation is, thus, sensitive to the real dimensionality of a sample set

by this observation.

Page 103: spectral-based color separation algorithm development - CiteSeer

83

0 5 10 150

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

K/S

Ref

lect

ance

fac

tor

Fig. 3-5: The Kubelka-Munk inverse transformation, Eq. (3-3), for opaque color.

Figure 3-6 shows the spectral error is enhanced at the low Φ spectral region while

the error is suppressed at the high Φ spectral region after Kubelka-Munk inverse

transformation for opaque coloration. The proposed transformation was designed to

overcome this type of problem by first ensuring that the dimensionality in Ψ space meets

the demanded dimensionality; and second transforming from Ψ to R space, shown in Fig.

3-7, by Eq. (3-7) with less steepness does not over-amplify the spectral mismatch from Ψ

space.

Page 104: spectral-based color separation algorithm development - CiteSeer

84

400 450 500 550 600 650 700-0.5

0

0.5

1

1.5

2

Wavelength

K/S

400 450 500 550 600 650 7000.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Wavelength

Refle

ctanc

e fac

tor

Eq. (3-3)

Fig. 3-6: An example of enhanced spectral error after the transformation by Eq. (3-3).

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Re

fle

cta

nc

e f

ac

tor

Fig. 3-7: The transformation from Ψ to R space by Eq. (3-7).

Although the multivariate normality among three spaces is not easy to conclude by

inspecting their normal plot (not shown) for these two examples, the example of IT8.7/2

ReconstructedΦ

OriginalΦ

OriginalR

ReconstructedR

Page 105: spectral-based color separation algorithm development - CiteSeer

85

shown above as well as the observation on the percent variance indicate that multivariate

normality allow a larger degree of data (dimensionality) reduction. The derivation for

empirical transformation to Ψ space is based on the beneficial factor of multivariate

normality.

E. CONCLUSIONS

Several linear colorant mixing spaces were discussed. Given a sample set, accurate

spectral reconstruction can take advantage of the normality of a sample set represented in

a linear space when reconstruction is limited to a lower number of dimensions. It was

shown by the numerical simulation using linear combinations of basis colorant whose

concentrations are generated from several approximately normal distributions and the

example of IT8.7/2. Spectral error essentially lies in the higher dimensions beyond the

reconstructibility with constrained dimensionality. These two examples imply that

normality has lower magnitude of higher dimensional error such that PCA confined to a

limited dimensionality can model a sample set with satisfactory accuracy.

A new transformation was empirically defined when encountering a set of sample

measurements modeled by PCA. The transformation to a reduced dimensionality and near

normal space for PCA estimation can well approximate the sample measurements. It is

also designed to account for the opaque coloration of physical materials. Examples shown

for verification are highly accurate in terms of colorimetric and spectral performance.

Page 106: spectral-based color separation algorithm development - CiteSeer

86

IV. COLORANT ESTIMATION OF ORIGI NAL OBJECTS

The goal of research for colorant estimation is to determine a set of six basis

colorants which are the best representation of original objects such as paintings. That is,

their spectral information can be accurately reconstructed by linear combinations of the six

estimated colorants represented in a linear colorant mixing space. Since each painting is

possibly created by different colorants, the six estimated colorants are image dependent.

The clue leading to the six estimated colorants is the six eigenvectors determined from the

corresponding spectral measurements. The relationship between the six eigenvectors and

estimated colorants is merely the linear transformation (or geometrical rotation). Based

on these observations, a constrained-rotation engine using MATLAB was devised to

perform the transformation from the eigenvectors to a set of all-positive vectors as the

estimated colorants. Once a set of reasonable colorants is uncovered, this set of colorants

can be used to synthesize the original artwork with the least metameric effect between the

reproductions and originals. This chapter will show the derivation of the relationship

between eigenvectors and the statistical primaries as the desired colorant for synthesis of

an original object. For simplicity of communication, all linear modeling techniques will

utilize the Φ space for discussions. All the algorithms derived for this module were also

applied in Ψ space.

Page 107: spectral-based color separation algorithm development - CiteSeer

87

A. APPROXIMATELY LINEAR COLORANT MIXING SPACE

Kubelka-Munk turbid media theory is used as the first-order approximation

transforming spectral reflectance factor, Rλ, into an approximately linear space, defined as

Φ space. The mathematical description for linear color mixing, specified as Eq. (3-1), is

re-expressed by Eq. (4-1),

Φλ λφ, ,miture i ii

k

c==

∑1

, (4-1)

where c represents concentration and (k/s)λ is replaced with φλ. As an example, a still life

painting of a floral arrangement was produced with six independent acrylic paints shown in

Fig. 4-1.

Fig. 4-1: The still life painting of a floral arrangement creating with six opaque colorants.

Page 108: spectral-based color separation algorithm development - CiteSeer

88

Each paint was applied on a paper stock at a thickness achieving opacity and measured

spectrally using a Gretag SPM 60 spectrophotometer. Each reflectance vector had thirty-

one components: 400 nm - 700 nm at 10 nm bandwidths and intervals. These reflectance

vectors were transformed to Φλ. Ideally, one needs thirty-one “spectral colorants” with 10

nm bandwidth absorption and scattering properties at the sampled wavelengths in order to

reconstruct the measured sample spectra. Realistically, colorants do not have such narrow

band properties. Furthermore, reproducing a color by mixing thirty-one colorants is highly

impractical for any real coloration process. Fortunately, chromatic stimuli are not

originally created by such spectral colorants; hence, their Φλ do not span the entire thirty-

one dimensional Φλ space. Instead, they are distributed in a lower dimensional Φλ

subspace. If an original painting was only painted, for example, using six independent

colorants, then, ideally, the measured set of Φλ should be distributed only in a six-

dimensional subspace of Φλ space.

B. PRINCIPAL COMPONENT ANALYSIS

Principal component analysis (PCA) can provide a measure to statistically

determine the dimensionality of the sample population. The linear combinations of the first

p eigenvectors should describe the entire set of Φλ if the original was created by p

colorants, i.e.,

Page 109: spectral-based color separation algorithm development - CiteSeer

89

Φλ λ, ,sample i ii

p

b e==∑

1

, (4-2)

where eλ, i is the ith eigenvector and bi is the corresponding coefficient to reconstruct a

sample. Rewriting Eq. (4-2) in matrix form:

ΦΦΦΦ = EB. (4-3)

E is the matrix of the first six eigenvectors and B is the coefficient matrix to reconstruct

the sample population, ΦΦΦΦ. Figure 4-2 shows the first six eigenvectors which were obtained

from the still life painting explaining the most sample variations (99.98%) in Φλ space.

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 1 st e ig e nve ctor.

K/S

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 2 nd e ig e nve cto r.

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 3 rd e ig enve cto r.

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 4 th e ig e nve ctor.

W a ve le ng th

K/S

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 5 th e ig e nve ctor.

W a ve le ng th

4 0 0 5 0 0 6 0 0 7 0 0-1

-0 .5

0

0 .5

1The 6 th e ig e nve ctor.

W a ve le ng th

Fig. 4-2: The six eigenvectors obtained from the still life painting.

Page 110: spectral-based color separation algorithm development - CiteSeer

90

C. COLORANT ESTIMATION

As shown in Fig. 4-2, the thirty-one components of the eigenvectors are often

bipolar; consequently, they are not a set of physical colorants. Furthermore, their

corresponding coefficient vectors are also bipolar not representing physical

concentrations. Real colorants should have all-positive Φλ as their vector components, and

the corresponding concentrations should be all-positive. Since an original was created by

mixing a set of existing physical colorants at different concentrations and the color mixing

operation is mathematically described by Eq. (4-1), the sampled ΦΦΦΦ are distributed in an all-

positive space. Rewriting Eq. (4-1) in matrix form:

ΦΦΦΦ = φφφφC, (4-4)

where φφφφ is the matrix of the basis colorants and C is the concentration matrix to

reconstruct the sample population, ΦΦΦΦ. Notice that Eq. (4-4) can be equated with Eq. (4-3)

in order to obtain the relationship between the eigenvectors and the φλ of the basis

colorants used for creating the original painting. Based on this observation, the

relationship between the eigenvectors and the physical basis colorants is merely a linear

transformation, or a geometric rotation. Since

ΦΦΦΦ = EB = φφφφC, (4-5)

this implies that

φφφφ = EBC- = EM, (4-6)

Page 111: spectral-based color separation algorithm development - CiteSeer

91

where C- stands for the pseudo-inverse of the concentration matrix and M is the

representation of the matrix product of B and C-. The linear transformation from

eigenvectors to physical basis colorants should result in two important properties. First,

the rotated eigenvectors should be a set of all-positive vectors. Second, the concentration

matrix should have all non-negative entries. These two constraints should result in

colorant spectra that are very similar or linearly related to the actual colorants.

This constrained rotation was previously performed by Ohta (1973). His research

goal was to estimate the spectral density curves of an unknown dye set for photographic

materials using only the spectra of color mixtures such as ANSI IT8 targets. A Monte

Carlo method was also used to help identify the most likely dye set. It was a three

dimensional vector transformation. This research extends the challenge to six dimensions.

In the current analysis, a constrained-rotation engine using MATLAB as the calculation

platform was devised to solve the problem. Since the ultimate goal of this research is to

identify a set of printing inks that minimize metamerism between a set of objects and their

printed reproduction, the dimensionality is limited to six, corresponding to six printing

stations. If the dimensionality of the original ΦΦΦΦ is greater than six, or if there is appreciable

spectral measurement error, residual errors will result. Hence, goodness metrics are

required. The spectral accuracy was quantified by an index of metamerism that consists of

both a parameric correction for D50 and the use of CIE94 under illuminant A. The

colorimetric accuracy is calculated using CIE94 under D50 for the 1931 observer.

Page 112: spectral-based color separation algorithm development - CiteSeer

92

D. JUSTIFICATION OF EIGENVECTOR RECONSTRUCTIONWITHOUT SAMPLE MEAN

In practice, the measured samples often reveal more than p dimensions due to

measurement noise and limitations in the validity of the Kubelka-Munk transformations.

Given the p limited dimensions for spectral reconstruction, one should employ Eq. (4-2)

together with the sample mean for better accuracy. That is,

Φ Φλ λ λ, , ,sample i ii

p

sample meanb e= +=∑

1

. (4-7)

The existence of a sample mean for spectral reconstruction poses several difficulties for

this research. First, the sample mean is only a statistical result which specifies the average

Φλ behavior for the set of samples. The sample mean does not represent any physical

colorant. Second, in Eq. (4-7), the sample mean is acting as an offset vector which

impedes the equality relationship in Eq. (4-5). Since the eigenvectors are the only clue

leading to a set of possible colorants, the sample mean must be excluded for maintaining

the rotation relationship between eigenvectors and the set of possible colorants which is

specified by Eq. (4-6). Finally, the confidence for excluding the sample mean is that if the

dimensionality of sample population is approximately the constrained number of

dimensions, then the sample mean approximately resides in the reconstructed sample

population. That is, the sample mean can be approximately expressed as a linear

Page 113: spectral-based color separation algorithm development - CiteSeer

93

combination by the limited number of eigenvectros. Henceforth, the sample mean in Eq.

(4-7) can be excluded without significant error, i.e., Eq. (4-2) will be used.

E. VERIFICATIONS

Testing the Constrained-Rotation Engine by a Virtual Sample Population

The constrained-rotation engine was first tested for a virtual sample population

with three thousand random mixtures created by linear combinations of the six acrylic-

paint spectra in Φλ space. These six spectra, plotted in Fig. 4-3, were carefully chosen and

verified to be independent colorant vectors, i.e., no one colorant vector can be expressed

as the linear combination of any other five colorant vectors.

0

0.2

0.4

0.6

0.8

1

1.2

400

420

440

460

480

500

520

540

560

580

600

620

640

660

680

700

Wavelength

Nor

mal

ized

K/S

yellow

magenta

cyan

green

blue

black

Fig. 4-3: The six acrylic paints used for the computer generated sample population.

Page 114: spectral-based color separation algorithm development - CiteSeer

94

Hence, the virtual sample population is ensured to be six dimensional. The corresponding

concentration vectors were randomly generated from uniform distributions. Thus, the

resulted population of linear combinations of six uniform distributions is approximately

multivariate normally distributed (convolution of six uniform distributions is approximately

normal).

Given that real sample populations can be confounded by processes and

measurements, the idea of using the computer generated sample population to test the

constrained-rotation engine is to provide a noise free sample population. This ensures that

the rotated eigenvectors with all-positive vector components as the estimated colorant

spectra should be identical or linearly related to the six acrylic-paint spectra if the

proposed vector transformation theory expressed as Eq. (4-5) is valid.

Six-eigenvector reconstruction without a sample mean vector, based on Eq. (4-2),

yielded approximately zero spectral errors, hence, zero colorimetric errors since full

dimensionalty was employed. Then, an arbitrary set of six colorant vectors were used as

the initial values for the constrained-rotation engine. The resultant all-positive

eigenvectors as the set of estimated colorant vectors are identical to the original six

acrylic-paint spectra. In addition, another set of six block spectra evenly spaced within 400

nm to 700 nm representing an initial colorant vectors was utilized and the resulted

estimated colorant vectors were also identical to the six acrylic-paint spectra. This is

surprising since the vector transformation can not be unique; multiple solutions should

Page 115: spectral-based color separation algorithm development - CiteSeer

95

exist. Whereas, those solution are linearly related with each other since they all are the

linear transformations of the six eigenvectors. Thus, the first test shows that the

constrained-rotation engine is able to converge to an all-positive representation of the

eigenvectors. The MATLAB program for the implementation of constrained-rotation is

attached in Appendix B.

Colorant Estimation for a Kodak Q60C Target

The second verification was performed on a Kodak Q60C, a photographic

reflection target that was a precursor to the ANSI IT8 target. Three eigenvector

reconstruction should yield low spectral and colorimetric errors corresponding to the fact

that it is manufactured using three dyes. The Kulbeka-Munk transformation for

transparent materials was used to transform reflectance factor to absorption. The spectral

and colorimetric accuracy, based on the three-eigenvector reconstruction, is shown in

Table 4-1. Ideally, this is a three dimensional problem. Whereas, the spectral and

colorimetric accuracy is confounded by the manufacturing, processing and measuring

noise, and the model accuracy limitations of Kulbeka-Munk theory.

Table 4-1: The spectral and colorimetric accuracy of the three-eigenvector reconstructionfor the Kodak Q60C.

∆E*94 Metamerism Index

Mean 0.48 0.19Stdev 0.20 0.17Max 1.12 1.00Min 0.00 0.00

Page 116: spectral-based color separation algorithm development - CiteSeer

96

Uncovering the set of all-positive eigenvectors as the estimated dye spectra of the

Q60C was preceded by using the first eigenvectors of cyan, magenta, and yellow ramps of

the Q60C as the initial colorant vectors. The first eigenvector of each ramp, denoted as the

"local eigenvector," is the first statistical estimation of the real dye spectrum (Berns and

Shyu, 1995). By this approach, the advantage is to get a close solution and help expedite

the rotation process. The estimated dye spectra (thick lines) and the local eigenvectors

(dotted lines) are plotted in Fig. 4-4. Since the all-positive eigenvectors representing the

estimated dyes are an exact linear transformation of the first three eigenvectors, denoted

as global eigenvectors determined from the Kodak Q60C target, the spectral and

colorimetric performance of estimated dyes is the same as that of global eigenvectors.

0

0.2

0.4

0.6

0.8

1

1.2

400

420

440

460

480

500

520

540

560

580

600

620

640

660

680

700

Wavelength

Nor

mal

ized

abs

orpt

ion

coef

ficie

nt

Fig. 4-4: The all-positive eigenvectors as the estimated dye spectra (thick line) and thelocal eigenvectors (dotted lines).

Page 117: spectral-based color separation algorithm development - CiteSeer

97

It was found that the local eigenvectors were not the exact transformation of the

global eigenvectors. The spectral reconstructibility by local eigenvectors was worse than

that of the estimated dyes, as expected. Furthermore, the broader absorption bandwidths

of the local eigenvectors symbolize the possible impurity contamination during the

manufacturing, processing, and measuring. In comparison, the all-positive eigenvectors as

the estimated dye spectra showing narrower absorption bandwidths may be close to the

real dye spectra based on the support of low spectral and colorimetric errors.

The testing for the proposed colorant-estimation engine favors the sense of reverse

engineering, i.e., uncovering the spectral structures of real colorants. However, for the

current research applications, it needs only one reasonable set of colorant spectra which

can be used to search through the existing ink database or for a colorant chemist to

synthesize the exact inks. Once one exact or similar set of inks is selected, spectral-based

printing process can utilize the selected ink set to fulfill the least metameric reproduction.

Hence, it is not critical for the proposed colorant estimation engine to converge to the

exact colorant spectra which were used to manufacture the colored objects.

Colorant Estimation for the Still Life Painting

Another verification for the constrained-rotation engine was performed by spectral

measurements of the still life painting mentioned previously. The painting was painted by

six independent acrylic-paints whose Φλ spectra are plotted in Fig. 4-3. One hundred and

twenty-six samples were obtained to represent the entire Φλ space of the painting whose

Page 118: spectral-based color separation algorithm development - CiteSeer

98

six eigenvectors plotted in Fig. 4-2 explaining 99.98% of total variation indicated that this

sample population is approximately six dimensional. The spectral and colorimetric

accuracy of the six-eigenvector reconstruction is specified in Table 4-2.

Table 4-2: The spectral and colorimetric accuracy of the six-eigenvector reconstructionfor the still life painting.

∆E*94 Metamerism Index

Mean 0.21 0.18Stdev 0.14 0.16Max 0.75 0.95Min 0.02 0.01

Initially, the colorant estimation was intended to directly rotate the six eigenvectors to one

set of all-positive representations. The resultant colorant spectra are plotted in Fig. 4-5

and show that there is a colorant (thin dotted line) with various absorption bands across

the visible spectral region and the reasonable appearance of the rest of the five colorants.

Several sets of colorant vectors were used as the initial estimation for the constrained-

rotation engine. The resulting sets of estimated colorants all possessed the similar spectral

properties. These initial attempts did not reveal the existence of a neutral colorant judged

by the lack of a flat spectrum.

Page 119: spectral-based color separation algorithm development - CiteSeer

99

0

0.2

0.4

0.6

0.8

1

1.2

400

420

440

460

480

500

520

540

560

580

600

620

640

660

680

700

Wavelength

Nor

mal

ized

K/S

Fig. 4-5: The six all-positive eigenvectors as the estimated colorants for the still lifepainting.

The neutral colorant with an approximately flat spectrum can be approximated by

the linear combination of the rest of the five estimated colorants. The lack of a neutral

colorant indicated that the rest of the five estimated colorants did not explain sufficient

spectral variation. Since the current research aims to uncover one neutral and five

chromatic colorants for printing processes, the approach was to constrain the assumption

of the existence of the neutral colorant. Hence, the colorant estimation for the still life

painting was proceeded by: first, estimate the neutral colorant using linear regression to fit

the perfect flat spectrum by the six eigenvectors. Second, rotate the most significant five

eigenvectors to their all-positive representations. The resultant estimated colorants should

explain a higher degree of spectral variation once the neutral dimension is constrained. The

Page 120: spectral-based color separation algorithm development - CiteSeer

100

spectral and colorimetric accuracy of the resultant six estimated colorants is shown in

Table 4-3 and their spectral curves (solid lines) are simultaneously plotted with the six

original colorants (astroidal lines) used for the still life painting in Fig. 4-6.

Table 4-3: The spectral and colorimetric accuracy of the six estimated colorants for thestill life painting.

∆E*94 Metamerism Index

Mean 0.22 0.21Stdev 0.16 0.18Max 0.92 1.01Min 0.02 0.01

400 500 600 7000

0.2

0.4

0.6

0.8

1

Yellow

No

rma

lize

d K

/S

400 500 600 7000

0.2

0.4

0.6

0.8

1

Magenta

400 500 600 7000

0.2

0.4

0.6

0.8

1

Cyan

400 500 600 7000

0.2

0.4

0.6

0.8

1

Green

Wavelength

No

rma

lize

d K

/S

400 500 600 7000

0.2

0.4

0.6

0.8

1

Blue

Wavelength400 500 600 7000

0.2

0.4

0.6

0.8

1

Neutral

Wavelength

Fig. 4-6: The estimated colorants (solid lines) and the original colorants (astroidal lines)used for the still life painting.

Page 121: spectral-based color separation algorithm development - CiteSeer

101

The constrained-rotation of the six eigenvectors obtained from the still life painting

yielded a reasonable set of estimated colorants. Judging from them, most colorants have

similar spectral properties to the original which were utilized to create the still life

painting. Whereas, the spectral property similar to green is absent in this set of estimated

colorants. Instead, the constrained-rotation process gave out a spectrum equivalent to a

yellow colorant. This can be attributed to the sampling error due to the usage of larger

aperture size of spectrophotometer which violates the additive assumption in Φλ space. It

was discussed in Chapter III that the possible field of view of a spectrophotometer may

sample at a multi-color surface. Once the spectrophotometer samples at a spot where two

or more contiguous colors are within its field of view, the reading is equivalent to the

additive result of the spectral reflectance factors confined by the spot whose spectral

reflectance is contributed by that of the two or more colors. Furthermore, the additive

operation in reflectance space undergoing a nonlinear transformation such as Eqs. (3-2)

and (3-3) results in the additive operation undefined in Φλ space. As a consequence, the

behavior of samples in Φλ space are not predictable by the linear model of Eq. (4-2). This

type of sampling error can be reduced when the spectral reflectance factor of a color

object is estimated by a high resolution CCD camera with very narrow field of views for

each pixel. The under-sampling of green and over-sampling of yellow-orange color are the

other source of errors which cause the estimated colorants not to agree with the original

colorant. Once the sample gamut is approximately uniform, i.e., each color has

Page 122: spectral-based color separation algorithm development - CiteSeer

102

approximately equal probability of occurrence in the sample population, this type of error

is minimized. Since the sample gamut of the still life was carefully controlled to be as

uniform as possible, the lack of green colorant is mainly caused by the violation of the

additive assumption in Φλ space due to the large field of view of the spectrophotometer.

Colorant Estimation for 105 Mixtures Using ΨΨΨΨ Space

Since the non-optimal aperture size of a spectrophotometer leads to sampling error

and a spectral image captured by a multi-spectral acquisition system is still under

development, the rational proof for the validity of the constrained-rotation mechanism is

to avoid the type of sampling error leading to the additive failure in a linear color mixing

space. Although the verification for Kodak Q60 target does not suffer this sampling error

since the measurements were performed on color patches, this section repeats the

verification with a set of six-color mixtures whose underlying primaries are known. If the

rotation results can converge or nearly go to the original primary colorants, then it not

only verifies the validity of the proposed rotation algorithms but also confirms the

effectiveness of the linear colorant mixing space utilized for analysis.

Accordingly, a set of 105 six-color mixtures, shown in Fig. 4-7, created by hand

mixing six opaque poster paints (Sakura cerulean blue No. 25, Sakura rose violet No. 22,

Pentel yellow No. 5, Pentel sap green No. 63, Pentel ultramarine N0. 25, and Pentel black

No. 28), whose spectral reflectance factor are shown in Fig. 4-8, which are the exact set

of colorants to paint the still life painting. Measurements were done by using a Macbeth

Page 123: spectral-based color separation algorithm development - CiteSeer

103

Color Eye 7000 spectrophotometer with SPEX measuring geometry and an integrating

sphere.

Fig. 4-7: The 105 mixtures created by hand mixing six opaque poster paints.

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

Re

felc

tan

ce

C e ru le a n b lu e

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1R o s e v i o le t

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1Y e llo w

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a v e le n g th

Re

felc

tan

ce

S a p g re e n

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a v e le n g th

U lt ra m a r i n e

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a v e le n g th

B la c k

Fig. 4-8: The spectral reflectance factors of the six poster colors used for creating the 105opaque mixtures.

Page 124: spectral-based color separation algorithm development - CiteSeer

104

Since the accuracy of Kubelka-Munk transformations for opaque colorant, Eqs (3-2) and

(3-3), did not provide sufficient accuracy, the linear colorant mixing space obtained by the

empirical transformation, Eq. (3-6), was utilized for analysis and process. The offset

vector v

a , shown in Fig. 4-9 and in Eq. (3-6), was optimized according to the 105 mixtures

in Ψ space such that the 105 mixtures in Ψ space are distributed in a near six dimensional

vector space. The optimization procedures are shown in Appendix B. Six eigenvectors,

shown in Fig. 4-10, explain 99.70% sample variation in Ψ space. The colorimetric and

spectral accuracy of six eigenvector reconstruction is listed in Table 4-4.

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 00

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

Ψ

W a ve le n g th

Fig. 4-9: The offset vector, v

a , for transforming the 105 mixtures to Ψ space.

From Table 4-4, the colorimetric and spectral errors are low for the six-eignvector

reconstruction. This indicates that the 105 mixtures distributed in Ψ space are

approximately six dimensional.

Page 125: spectral-based color separation algorithm development - CiteSeer

105

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 1 s t e ig enve c to r.

Ψ

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 2 nd e ige nvec to r.

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 3 rd e ig e nvec to r.

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 4 th e ig enve c to r.

W a ve leng th

Ψ

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 5 th e ig enve c to r.

W a ve leng th

4 00 5 00 6 00 7 00-1

-0 .5

0

0 .5

1The 6 th e ig enve c to r.

W a ve leng th

Fig. 4-10: The six eigenvectors of the 105 mixtures in Ψ space.

Table 4-4: The colorimetric and spectral accuracy of the six eigenvector reconstruction forthe 105 mixtures.

∆E*94 Metamerism Index

Mean 0.22 0.21Stdev 0.16 0.18Max 0.92 1.01Min 0.02 0.01RMS 0.007

Constrained rotation by the proposed algorithms were performed on the

determined six eigenvectors derived from the 105 mixtures in Ψ space. Since the a priori

knowledge about the primary colorants is known, the spectra of the six primaries were

used as the initial vectors for rotation process. It was desired to conclude whether the

Page 126: spectral-based color separation algorithm development - CiteSeer

106

constrained-rotation mechanism can perform "reverse engineering" if the initial colorant

vectors were known for comparing to the estimated colorants, though it is not necessary

for this research. The six rotated all-positive eigenvectors as the statistical primaries

whose reflectance spectra are shown in Appendix G, shown in Fig. 4-11, are plotted with

original six primary colorant in reflectance space. Five chromatic colorants were

normalized to 0.9 units of reflectance factor and the black colorant was normalized to 0.1

and shifted up 0.8 to 0.9 units of reflectance factor for visual comparison.

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

Re

felc

tan

ce

C e ru le a n b lu e vs . P r im a ry 1

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1R o s e vio le t vs . P r im a ry 2

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1Ye llo w vs . P r im a ry 3

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a ve le n g th

Re

felc

tan

ce

S a p g re e n vs . P r im a ry 4

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a ve le n g th

U ltra m a rine vs . P ri m a ry 5

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1

W a ve le n g th

B la c k vs . P r im a ry 6

Fig. 4-11: The reflectance factors of the six original colorants (solid lines) and statisticalprimaries (dashed lines) derived by a constrained rotation from the six eigenvectors.

From Fig. 4-11, the six statistical primaries did not converge to the original

colorants. They converged to a set of close solutions. The agreement between the six

Page 127: spectral-based color separation algorithm development - CiteSeer

107

original and statistical primaries are high. Although the statistical primaries are not

identical to the six originals, the probable causes leading to this discrepancy are unwanted

contamination, measuring error, and the validity of the empirical transformation by Eq. (3-

6). It was tested by a linear regression model to see if the six original primaries span the

105 mixtures in Ψ space, that is, for any vector of the 105 mixtures is a linear combination

of the six original primaries. It was found that the six original primary do not span the 105

colorants in Ψ space judged by that negative concentrations were required to synthesis a

spectrum. This implies that the six original primaries only span a partial colorant space that

does not include all of the 105 mixtures. In another words, the six original primaries do

not explain all the spectral variation of the 105 mixtures. This is strong evidence for

unwanted contamination when hand mixing the 105 mixtures. Since the statistical

primaries approximately span the entire 105 mixtures in Ψ space and the measurement

was done by a highly accurate instrument. The unwanted contamination is attributed to be

the main cause for the discrepancy. Nevertheless, the correlation between the six original

and statistical primaries is high. The statistical primaries can be used as the basis

information for synthesizing an object such as a painting created by unknown colorants.

I. CONCLUSIONS

An algorithm was developed for the colorant estimation of original objects through

vector analysis and principal component analysis. The relationship between basis colorants

Page 128: spectral-based color separation algorithm development - CiteSeer

108

and eigenvectors is elucidated by performing a constrained linear transformation. Since the

basis colorants used for creating original objects can be statistically uncovered with

sufficient accuracy, the color reproduction at the synthesis stage gains the maximum

capability to spectrally reconstruct a sample from the original. Therefore, metamerism

between the reproduction and original is minimized.

Page 129: spectral-based color separation algorithm development - CiteSeer

109

V. OPTIMAL INK SELECTION

Given a spectral image, the mission of spectral reproduction using a multiple-ink

printing process can be a challenging task. Even though the number of degrees of

freedom is increased, the spectrum corresponding to every pixel in a given spectral image

may not well be inside the spectral gamut of the multiple-ink process. Theoretically, a

given spectral image whose spectra of all pixels should be located inside the spectral

gamut of the multiple-ink printing process. Then each spectrum requiring reproduction is

described by a set mathematical functions of its printing primaries. The analytical

descriptions of a multiple-ink printing process are discussed in chapter VII. Therefore, the

set of printing primaries dominate the capability of spectral reproduction.

Given a large set of inks, the decision for choosing an optimal ink set can be a

tedious task. The combinations of candidate ink set can be a geometric figure. There are

C(n, 6) combinations of possible ink sets for n inks in storage to be chosen for a six-color

printing process. For example if n = 100, then there are 119,205,240 combinations of

choices. For a practical example, even if n = 18 (Pantone 14 basic colors in addition to

four process colors) then there still exist 18,564 combinations to choose from. To estimate

the performance of each ink set in terms of colorimetric and spectral accuracy, a spectral

printing model is needed to evaluate the spectral reconstruction. This requires

construction of 18,564 six-color printing models for the 18 ink combinations and estimate

Page 130: spectral-based color separation algorithm development - CiteSeer

110

the total performance model by model. The computation for trying 18,564 combinations is

unreasonable, not to mention the model building effort. It can be safely said that is a

"mission impossible." Clearly, testing each ink set is insufficient and a robust ink-selection

algorithm is required.

A. FIRST ORDER INK SELECTION BY VECTOR CORRELATION

Although there are 18,564 combinations of ink sets by selecting six inks from an

18 ink database for a six-color printing process, a large portion of combinations are

obviously impossible ink combinations for synthesis. The question boils down to this: on

what basis can these impossible ink sets be excluded analytically? For a printing system

which performs colorimetric other than spectral reproduction, it can be achieved visually

by determining all the colorimetric values of a given image inside a colorimetric gamut

spanned by a set of ink combinations. This is done by examining visualizations of a 2-D, 3-

D CIELAB, or chromaticity plots. Generally, the larger the colorimetric gamut a set of

inks can provide, the more accurate colorimetric reproduction can be accomplished.

The very reason for the current research project to derive a colorant estimation

module for a multi-spectral output system is to eliminate the impossible combinations of

ink sets analytically. The set of statistical primaries are utilized as a set of basis to remove

the impossible ink combinations. Testing the performance of the irrational ink

combinations can be avoided by well defined analytical printing models that describe the

Page 131: spectral-based color separation algorithm development - CiteSeer

111

color mixing behavior. Once the statistical primaries are uncovered for an input spectral

image, the process of the throughput for the proposed multiple-ink printing system

minimizing metamerism is to correlate the statistical primaries to a set of physical inks

which are the most capable of spectrally reproducing the spectral image during the

synthesis stage. Theoretically, if an exact set of inks exist in a current manufacture line or

in storage, then the use of the exact ink set will yield the ideal or closest spectral

reproduction relative to the input spectral image. Since the statistical primaries are image

dependent, the probability of an exact ink set is low. Hence, the exact spectral

reproduction can not be achieved. A compromise has to be made to balance between

colorimetric and spectral accuracy. Since the colorimetric match is the first priority for any

color application, it is necessary to trade a slight decrease in spectral accuracy in exchange

for higher colorimetric accuracy. This compromise will be discussed in a later section.

Intuitively, the use of the statistical primaries is to search for the exact or similar

inks in a given ink database. Vector correlation can be used to compare the similarity

among them. A similarity measurement for ink1 and ink2, shown as Eq. (5-1), is quantified

by the correlation coefficient, ρ, which is the cosine of the angle between a statistical

primary and an ink from a large ink database, where Ψλ,ink1 is the linear colorant vector of

ink1 and λ is a wavelength within the visible spectrum. Hence, the closer the correlation

coefficient is to unity, the higher the similarity between a statistical primary and an ink in

the database.

Page 132: spectral-based color separation algorithm development - CiteSeer

112

ρλ λ

λ

λλ

λλ

= =

= =

∑ ∑

Ψ Ψ

Ψ Ψ

, ,

, ,

ink ink

ink ink

1 2400

700

12

400

700

22

400

700(5-1)

Since the chances of selecting inks from a large ink database which are identical to

the statistical primaries are low, candidate inks corresponding to each primary can be

selected using a threshold of an acceptable correlation coefficient, say 0.90, or the highest

twenty. Further filtration of the selected candidates is done by adopting the two candidates

with the highest chroma for each statistical primary. A larger colorimetric gamut

corresponding to a better possibility of colorimetric reproduction has been elucidated by

various literature and experiential evidences (Ostromoukhov, 1993; Boll, 1994; Stollnitz,

Ostromoukhov, and Salesin, 1998; Viggiano and Hoagland, 1998). The use of the highly

chromatic primaries for colorant mixing yields a larger colorimetric gamut which is

essentially desired when an exact spectral color reproduction cannot be accomplished.

Compromises have to be made by trading decreased spectral accuracy in exchange for

colorimetric accuracy. This is the reason for choosing candidates with the highest chroma

for balancing between colorimetric and spectral accuracy. Based on this selection method,

there are 64 (26) possible combinations of candidate ink sets. This is a significant reduction

from 18,564. Nevertheless, it is still necessary to pinpoint the exact ink set for the

application of the least metameric reproduction.

Page 133: spectral-based color separation algorithm development - CiteSeer

113

Now this has come to the point of which type of analytical description for printing

process should be utilized to estimate the performance of these first order selections. The

intuitive choice is the six-color printing model based on the Yule-Nielsen modified spectral

Neugebauer equation. To build 64 six-color printing models, it is required to do the

sample preparations for printing 64 sets of ramps of Neugebauer primaries and verification

targets corresponding to the 64 sets of selected ink combinations. The efforts of model

building are beyond economical consideration. Even if the sample preparations can be

replaced by computer simulation under certain assumptions, the model building efforts are

still computational costly and time inefficient. Hence, a more efficient mechanism for

estimating the colorimetric and spectral performance of the 64 selected ink sets are

desired.

B. CONTINUOUS TONE APPROXIMATION

The further removal of low proficient combinations among the 64 is judged by

scrutinizing the ink sets which are incapable of spanning the vector space of a given set of

color samples. For this task, an assumption is made that halftone reproduction can be

approximated by a continuous-tone model for subtractive color mixing (Berns, Bose, and

Tzeng, 1996; Van De Capelle and Meireson, 1997). The continuous-tone modeling

techniques used by the research program (Berns, 1993; Berns and Shyu, 1995) at the

Munsell Color Science Laboratory at Rochester Institute of Technology are mostly based

Page 134: spectral-based color separation algorithm development - CiteSeer

114

on Kubelka-Munk turbid media theory. However, for this application, Kubelka-Munk

theory has insufficient accuracy. Alternatively, an empirical transformation for

approximating the color mixing behavior of a halftone printing process, shown as Eq. (5-

2) whose inverse transformation is shown as Eq. (5-3), was derived as

Ψλ λ λ= −R Rpaperw w,

1 1

and (5-2)

R R paperw w

λ λ λ= −( ),

1

Ψ , (5-3)

where the Rλ,paper is the spectral reflectance factor of the paper substrate being printed on

by primary inks and 2 ≤ w ≤ ∞. The transformation of a reflectance factor to the

empirically derived space is somewhat different from Eq. (3-6) since Eq. (3-6) is derived

for opaque colorant. Whereas, they have basically the same structure, one offset vector

accounting for subtractive color mixing and a higher order power to account for the

nonlinearity. The use of R paperwλ ,

1

as the offset vector has a significant meaning. Consider

that transforming a spectrum, which is exactly Rλ,paper, to the linear color mixing space, the

result is a zero vector. This corresponds to the fact that there is not any primary presented

in the linear space. Furthermore, Eq. (5-3) transforms a zero in the linear space back to the

exact reflectance spectrum of the paper, Rλ,paper. The justifications for the use of the

proposed transformation for continuous tone approximation to be described in verification

section. Equation (5-2) transforms spectral reflectance factor to the representation for a

Page 135: spectral-based color separation algorithm development - CiteSeer

115

subtractive color mixing process. Hence, the synthesis, quantitatively described by Eq. (5-

4), of color mixtures is the linear combinations of the primary colorants modulated by

their corresponding concentrations

Ψλ λψ, ,mixture i ii

k

c==

∑1

, (5-4)

where ψλ is the linear operand of a primary colorant normalized to its unit concentration, c

is the corresponding concentration, and k is the number of the primary colorants.

Based on the assumption that a multiple-ink halftone printing process can be

approximated by continuous tone modeling using Eq. (5-2) and (5-3), a direct constrained

regression model using Eq. (5-4) was employed to estimate the performance of each

candidate ink set. The estimated concentration for each primary is constrained to be

positive. Positivity symbolizes the capability of a candidate ink set to span the entire

colorant vector space of the target. If a negative concentration is reported using Eq. (5-4)

without this constraint, then the corresponding ink set is only spanning the partial colorant

vector space of the target. As a consequence, the spectral reconstruction by the ink set

yields spectral error when the constraint of positivity is enforced. The final decision should

favor the ink set(s) whose spectral reconstruction for a given target achieves the higher

colorimetric and spectral accuracy. For this research project, the colorimetric accuracy is

specified by the CIE color difference equation ∆E*94 under standard illuminant D50 and

the 1931 standard observer. The spectral accuracy is quantified by the metameric index

Page 136: spectral-based color separation algorithm development - CiteSeer

116

which is calculated by ∆E*94 under standard illuminant A and the 1931 standard observer

based on a parameric correction.

C. VERIFICATIONS AND RESULTS

Deriving a Linear Color Mixing Space for Continuous Tone Approximation

Current research analysis is based on the validity for a linear colorant mixing space

which approximates the color mixing behavior of a multiple-ink halftone printing process

such that the vector correlation analysis and constrained regression can be performed. The

verification of deriving an empirical transformation, Eq. (5-2), for a typical halftone

printing process utilized the spectral reflectance factor of IT8/7.3 of 928 samples printed

by SWOP standard at 133 LPI screen frequency (McDowell, 1995). The SWOP specified

spectral reflectance factor of paper and process CMYK are plotted in Fig. 5-1. The

parameter in Eq. (5-2) to be optimized is w. The optimization process is to use a non-

negative least square function, nnls( ), built in MATLAB, to set up a constrained

regression model, based on Eq. (5-4), for synthesizing every spectrum of the IT8/7.3

target. The nnls( ) performs a least square match for each spectrum by constraining the

corresponding concentration for each primary to be non-negative. The w corresponding to

the highest colorimetric and spectral accuracy will be adopted. Figure 5-2 shows the

colorimetric and spectral accuracy with respect to different w values.

Page 137: spectral-based color separation algorithm development - CiteSeer

117

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 00

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

W a ve le n g th

Re

flec

tan

ce

fa

cto

r

C y a nM a g e n taY e llo wB la c kP a p e r

Fig. 5-1: The SWOP specified process CMYK primaries and paper substrate.

2 2 .5 3 3 .5 4 4 .5 50

0 .2

0 .4

0 .6

0 .8

1w vs . average D e lta E 94

w

De

lta E

94

2 2 .5 3 3 .5 4 4 .5 50

2

4

6

8

10w vs . maximum D e lta E94

w

De

lta E

94

2 2 .5 3 3 .5 4 4 .5 50

0 .2

0 .4

0 .6

0 .8

1w vs . average M .I.

w

M.I.

2 2 .5 3 3 .5 4 4 .5 50

1

2

3

4

5w vs . maximum M .I.

w

M.I.

Fig. 5-2: The colorimetric and spectral error vs. w values for the empirical transformation,Eq. (5-2), where M.I. represents metamerism index.

Page 138: spectral-based color separation algorithm development - CiteSeer

118

It was found that colorimetric and spectral errors monotonically decease as w

approached ∞. Since the slope of decreasing of average ∆E*94 and metamerism indices are

small when w is higher than three, the change of w does not increase the average

performance significantly. It only improved the maximum errors significantly as w

increases. The adopted w was 3.5 for an empirical decision. Colorimetric and spectral

accuracy for the four SWOP primaries synthesizing 928 samples of the IT8/7.3 in the

proposed linear colorant mixing space is shown in Table 5-1. Low colorimetric and

spectral error indicated by Table 5-1 reveals that the four SWOP primaries span the 928

samples of the IT8/7.3 target in the proposed linear color mixing space. That is, every

sample is a linear combination of the CMYK primaries. The color formation for this

halftone printing process is approximately described by mixing the CMYK in the linear

colorant mixing space.

Table 5-1: The colorimetric and spectral accuracy for the four SWOP primariessynthesizing the 928 samples of IT8/7.3 target in the proposed linear colorant mixingspace.

∆E*94 Metamerism Index

Mean 0.65 0.14Stdev 0.65 0.16Max 5.08 1.41Min 0.00 0.00RMS 0.0047

Four reconstructed spectra corresponding to the highest four colorimetric and spectral

error are shown in Fig. 5-3.

Page 139: spectral-based color separation algorithm development - CiteSeer

119

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .2

0 .4

0 .6

0 .8

1

Re

flec

tan

ce

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .2

0 .4

0 .6

0 .8

1

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .2

0 .4

0 .6

0 .8

1

W a ve leng th

Re

flec

tan

ce

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .2

0 .4

0 .6

0 .8

1

W a ve leng th

Fig. 5-3: The four spectra reconstructed with the highest colorimetric and spectral errorsbased on the linear colorant mixing space where solid line is the measured spectrum and

the dashed line is the reconstructed spectrum .

Even though the four spectra are reconstructed with the highest colorimetric and spectral

errors, the reconstructed curves are well tracing the originally measured spectra. This

implies that the halftone printing process can be well described by a continuous-tone

approximation based on the proposed transformation. Hence, the derived new Ψ space

can be used for estimating the performance of the 64 ink sets without heavy halftone

modeling efforts.

Page 140: spectral-based color separation algorithm development - CiteSeer

120

Vector Correlation Analysis in ΨΨΨΨ Space

The set of 105 color patches, Shown in Fig. 4-7, was employed as the presumed

reproduction target of an arbitrary image. Its six statistical primaries, shown in Fig. 5-4,

were estimated by the module of colorant estimation discussed in Chapter IV.

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 1

Re

fle

cta

nc

e

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 2

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 3

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 4

W a v e le n g th

Re

fle

cta

nc

e

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 5

W a v e le n g th

4 0 0 5 0 0 6 0 0 7 0 00

0 . 2

0 . 4

0 . 6

0 . 8

1P r i m a r y 6

W a v e le n g th

Fig. 5-4: The six statistical primaries derived from the 105 mixtures by the colorantestimation module.

Since the six statistical primaries are, theoretically, the exact rotation of the six

eigenvectors of the reproduction target in the proposed linear color space, their

colorimetric and spectral accuracy in reconstructing the 105 patches is, theoretically,

identical to the accuracy, shown in Table 4-4 of the six-eigenvector reconstruction.

Discrepancy between the accuracy reconstructed by two sets of basis vectors depends on

the numerical precision of the constrained rotation. Nevertheless, in spite of this

Page 141: spectral-based color separation algorithm development - CiteSeer

121

discrepancy, the six statistical primaries are treated equivalent to the six eigenvectors.

Hence, the use of the six statistical primaries is capable of reproducing the 105 six-color

mixtures with a desired accuracy. Their spectral information is the link to select a closest

set of inks from a given ink database for six-color halftone reproduction.

Pantone 14 basic and process CMYK printed coated paper, shown in Fig. 5-5,

were utilized as an ink database to perform the analysis for ink selection algorithms.

(Color names and their abbreviates are yellow (Y) , yellow 012 (Y 12), orange 021 (O

21), warm red (Wr), red 032 (R), rubine red (Rr), rhodamine red (Rh), purple (Pu), violet

(V), blue 072 (B 72), reflex blue (Rb), process blue (Prs B), green (G), black (K), process

yellow (Prs Y), process magenta (Prs M), process cyan (Prs C), and process black (Prs

K).)

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

4 0 0 5 0 0 6 0 0 7 0 00

0 .5

1

Fig. 5-5: The Pantone 14 basic colors and the process CMYK as the ink database (Colorname order corresponding to each spectrum is from left to right and top to bottom).

Page 142: spectral-based color separation algorithm development - CiteSeer

122

All the spectral reflectance factors for the statistical primaries and the ink database were

first transformed by Eq. (5-2) to a linear colorant mixing space. Then, correlation

coefficients of all 18 inks in the database for the statistical primaries were calculated using

Eq. (5-1). Up to two candidate inks for each statistical primary with the highest chroma

among those highly correlated inks were chosen. Their correlation coefficients and chroma

are tabulated in Table 5-2. Since the research development aims at using one black and

five chromatic inks to perform spectral reproduction, the two black inks in the ink data

base are the certain candidate inks for the continuous tone estimation. Hence, their chroma

and correlation coefficients with the sixth primaries were not tabulated in Table 5-2.

Table 5-2: The correation coefficeints and the chroma of the 18 inks with the fivechromatic statistical primaries.

Candidate Inks Primary 1 Primary 2 Primary 3 Primary 4 Primary 5 ChromaProcess Blue 0.98 68.6Process Cyan 0.98 64.1

Rhodamine Red 0.94 80.1Purple 0.88 86.8Yellow 0.98 112.6

Process Yellow 0.97 106.3Green 0.36 82.3

Blue 072 0.66 88.8Reflex Blue 0.65 75.4

There are two candidates for each statistical primary except for the primary 4 due

to the lack of similar ink existing in the 18 ink database. It was forced to chose only one

with the highest correlation coefficient with respective to primary 4 among the 18 inks.

Another situation happens when an ink in the database is simultaneously chosen as the

Page 143: spectral-based color separation algorithm development - CiteSeer

123

candidate for two or more primaries; that is, an ink is selected more than twice. Then this

ink is a sure candidate. Thus, the candidacy of this ink should be removed for other

primaries. This ensures that when forming ink combinations by all candidates, there are

double or triple selected inks in an ink combination, consequently, leading to a

combination of smaller gamut colorimetrically and spectrally.

Colorimetric and Spectral Performance by Continuous Tone Approximation

Thirty-two (2x2x2x1x2x2) ink sets were formed by 11 candidate inks. Their

colorimetric and spectral accuracy were estimated based on the constrained regression

model using Ψ space. Since the validity of continuous tone approximation has been

verified for the IT8/7.3 printed by SWOP standard, it is generalized to any of the printing

process meeting the SWOP specification. Three ink sets were designated as the optimal

ink sets for reproducing the 105 mixtures based on their highest spectral accuracy

specified by the metamerism index. Their spectral and colorimetric accuracy are listed in

Table 5-3 and their ink combinations are described in Table 5-4.

Table 5-3: The spectral and colorimetric accuracy of the three optimal ink sets.

Metamerism Index ∆E*94

Ink Set Mean Stdev Max Min Mean Stdev Max Min RMS23 0.70 0.51 1.86 0.05 2.26 0.99 4.35 0.37 0.02824 0.73 0.52 1.88 0.05 2.35 0.96 4.20 0.37 0.02819 0.73 0.53 1.86 0.04 2.40 1.17 4.75 0.20 0.028

Page 144: spectral-based color separation algorithm development - CiteSeer

124

Table 5-4: The Pantone color names of the three optimal ink sets.

Ink Set Primary 1 Primary 2 Primary 3 Primary 4 Primary 5 Primary 623 Process

CyanRhodamine

RedYellow Green Blue 72 Process

Black24 Process

CyanRhodamine

RedYellow Green Blue 72 Black

19 ProcessCyan

RhodamineRed

ProcessYellow

Green Blue 72 ProcessBlack

The performance among the three ink sets are not significantly different. Set 23

and set 24 are only different in the use of the sixth primary. It is concluded that the use of

process black and the black is approximately invariant with the resultant performance. In

addition, set 23 and set 19 are different by the use of the third primary. It is concluded that

the use of yellow and process yellow is also approximately invariant with performance.

Three reconstructed spectra for a sample of 105 mixture corresponding to the maximum

error predicted by the three sets are plotted in Fig. 5-6. The three reconstructed spectra

are nearly identical. Based on this observation, the three optimal ink sets approximately

span the same colorant mixing space.

Three worst performed ink sets, whose colorimetric and spectral accuracy in

predicting the 105 mixtures are shown in Table 5-5, are specified in Table 5-6.

Performances of the three worst performing ink sets are about identical to each other. The

same justification applied for the three optimal ink sets can also be applied for the three

worst performers. Their reconstructed spectra for the sample, shown in Fig. 5-6, are

depicted in Fig. 5-7.

Page 145: spectral-based color separation algorithm development - CiteSeer

125

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 00

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

W a ve le ng th

Re

flec

tan

ce

fa

cto

r

M e a s u re dS e t 2 3S e t 2 4S e t 1 9

Fig. 5-6: The three spectral reconstructions of a sample corresponding to the maximumprediction error by the three optimal ink sets.

Table 5-5: The spectral and colorimetric accuracy of the three worst performing ink sets.

Metamerism Index ∆E*94

Ink Set Mean Stdev Max Min Mean Stdev Max Min RMS26 0.93 0.74 2.68 0.03 3.73 1.34 7.03 0.48 0.03714 0.93 0.73 2.68 0.05 3.69 1.36 7.03 0.43 0.0379 0.96 0.73 2.67 0.05 3.73 1.38 6.69 0.43 0.037

Table 5-6: The ink combinations of the three worst performing ink sets.

Ink Set Primary 1 Primary 2 Primary 3 Primary 4 Primary 5 Primary 626 Process

CyanPurple Process

YellowGreen Reflex

BlueProcessBlack

14 ProcessBlue

Purple Yellow Green ReflexBlue

ProcessBlack

9 ProcessBlue

Purple ProcessYellow

Green ReflexBlue

Black

Page 146: spectral-based color separation algorithm development - CiteSeer

126

400 450 500 550 600 650 7000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

W avelength

Re

flect

an

ce fa

cto

r

M easuredSe t 26Se t 14Se t 9

Fig. 5-7: The three spectral predictions of the sample, shown in Fig. 5-6, by the threeworst performed ink sets.

Finally, two predictions for a sample by set 23 and set 26, plotted in Fig. 5-8, are

shown. By the numerical results, the colorimetric and spectral accuracy of set 23 is higher

than that of set 26. By Fig. 5-8, the shape of the spectrum reconstructed by set 23 whose

RMS error is 0.041 is closer to the measured spectrum than that of the reconstruction by

set 26 whose RMS error is 0.050. The implication is that the color space spanned by set

23 is closer to the color space of the 150 mixtures than the color space spanned by set 26.

Since the decision of choosing optimal ink sets is based on the metamerism index, the

above justification was made to correlate the effectiveness of metamerism index to a set of

Page 147: spectral-based color separation algorithm development - CiteSeer

127

ink combinations, which is the optimal selection. The implementation of ink selection

subsystem is attached in C.

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 00

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

W a ve le ng th

Re

fle

cta

nc

e f

ac

tor

M e a s u re dS e t 2 3S e t 2 6

Fig. 5-8: The two reconstructed spectra by set 23 and set 26 for the sample used as theexample in Fig. 5-6.

D. CONCLUSIONS

An optimal ink set selection algorithm was proposed and justified. Its primary goal

is to bridge between multi-spectral acquisition systems and multiple-ink output systems for

the least metameric color reproduction. It serves the purpose of removing the redundancy

or the deficiency of large ink combinations of a given ink database. This research also

proposed applying a linear color mixing space for a continuous tone approximation to a

halftone printing process. It dramatically reduced large scale of modeling efforts in

Page 148: spectral-based color separation algorithm development - CiteSeer

128

estimating the validity of optimal ink selection. The ink selection algorithm was comprised

of vector correlation analysis follow by a constrained regression analysis. The proposed

approach was able to remove a large number of ink combinations from an ink database. It

pinpointed the optimal ink combination for a spectral-based halftone color reproduction

system minimizing metamerism.

Page 149: spectral-based color separation algorithm development - CiteSeer

129

VI. SPECTRAL REFLECTANCE PREDICTION OF INKOVERPRINT USING KUBELKA-MUNK TURBID M EDIATHEORY

Consider the microscopic structure of ink on paper as delivered by a typical

halftone printing process, shown in Fig. 6-1; a three-color halftone print is shown for

demonstration. The total spectral reflectance factor over a square area, which is assumed

to be the area of interest, is a summation of the individual spectral reflectance factors of

each color inside the area.

Fig. 6-1: The microscopic structure of color formation by a halftone printing processwhere Rλ,color represents the spectral reflectance factor of a color appearing in the square

area.

As we can see, the colors appearing inside the area of interest for reproduction are not

only the primary colors, white, primary one (P1), primary two (P2), and primary three (P3),

R Pλ , 2

R P Pλ , 1 2

R P Pλ , 2 3

R p p pλ , 1 2 3

R Pλ, 1

R P Pλ, 1 3

R Pλ , 3

R whiteλ ,

Page 150: spectral-based color separation algorithm development - CiteSeer

130

but also the overprints of the primaries, primary one on primary two (P1P2), primary one

on primary three (P1P3), primary two on primary three (P2P3), and the three-primary

overprint (P1P2P3). These colors are usually called the Neugebauer primaries. Intuitively,

the total spectral reflectance factor, Rλ,mix, over the area of interest is the linear sum,

known as the spectral Neugebauer equation, of each spectral reflectance factor of the

Neugebauer primaries modulated by their corresponding probability of occurrences. Yule

and Nielsen further introduced an empirical n-factor to modify the spectral Neugebauer

equation in order to account for light scattering within the paper, usually referred to as

"optical dot gain." The Yule-Nielsen modified spectral Neugebauer equation for a three-

color (P1, P2, and P3) printing process is defined as

R R a R a R

a R a R a R a R

a a a a a a a R

mix P Pn

P Pn

P Pn

P P P Pn

P P P Pn

P P P Pn

P P P P P Pn

P P P P P P P P P P P P

λ λ λ λ

λ λ λ λ

λ

, ,/

,/

,/

,/

,/

,/

,/

,

[a

( )

= + + +

+ + + +

− − − − − − −

1 1 2 2 3 3

1 2 1 2 1 3 1 3 2 3 2 3 1 2 3 1 2 3

1 2 3 1 2 1 3 2 3 1 2 3

1 1 1

1 1 1 1

1 whiten n1/ ]

, (6-1)

where a (indexed by P1, P2, P3, P1P2, P1P3, P2P3, and P1P2P3) represents the fractional dot

area of a Neugebauer primary.

In order to use the Yule-Nielsen modified spectral Neugebauer equation, the

spectral reflectance factor of each ink overprinted at 100% dot area coverage (known as

secondary, tertiary, quaternary primaries, and so forth) are required as a priori knowledge

for predicting the fractional dot area coverage of given spectra from an input spectral

image. There are 2j-j-1 overprints for a j-color halftone printing system. For example, a

seven-color halftone printing process needs to print and measure 120 (27-7-1) overprints.

Page 151: spectral-based color separation algorithm development - CiteSeer

131

As the number of colors used for halftone printing increases linearly, the number of

overprints increases exponentially. Hence, an analytical method for predicting the spectral

properties of overprints can avoid the necessity of exhaustively printing and measuring

each overprint upon using different ink and paper materials.

A. PREVIOUS RESEARCH

Previous research for this task had been performed by Allen (1969). He proposed a

three-layer model using Kubelka-Munk turbid media theory for translucent inks printed on

top of a highly scattering support (Kubelka and Munk, 1931; Kubelka, 1948). Somehow,

Allen abandoned the complex model proposed in 1969 in favor of a simpler approach

(Allen and Hoffenberg, 1973). Basically, they applied a thin ink film on a Mylar film and

backed the film with both black and white supports in optical contact in order to determine

two surface reflectance measurements over the printed Mylar film. The two optical

constants known as absorption, K, and scattering, S, coefficients of an arbitrary ink were

numerically estimated by using the weight of the ink film to calibrate the thickness.

According to Kubelka-Munk theory, the surface reflectance factor is a function of K, S,

the thickness of the ink film alone, and the reflectance factor of the background.

Van De Capelle and Meireson (1997) took a different approach in which the

surface reflectance factor of an ink printed on an opaque support is a function of three

parameters, conceptually similar to the absorption and scattering coefficients and an

Page 152: spectral-based color separation algorithm development - CiteSeer

132

additional interaction term. The determination of these three parameters requires printing

an arbitrary ink onto white, gray, and black surfaces for setting up three simultaneous

equations in order to solve for the three unknowns.

Another type of approach was recently exercised by Stollnitz, et al. (1998). It was

claimed that the surface reflectance factor of multiple ink layers sitting on top of an

opaque support is a function of the transmitance factor of each ink layer, multiple internal

reflections at each interface, and the reflectance factor of support. The scattering of each

ink layer was not considered.

Finally, Viggiano and Hoagland (1998) used the additivity of ink density to predict

ink overprints.

Unfortunately, the colorimetric and spectral accuracy for the Allen, Stollnitz, and

Viggiano studies were not disclosed. The approach by Van De Capelle has been patented

by Barco Co. Thus, it was of interest to explore whether Kubelka-Munk theory could

predict these overprints with sufficient colorimetric and spectral accuracy for spectral-

based color reproduction.

B. TECHNICAL APPROACH

The famous Kubelka-Munk basic equation (1931) is shown in Eq. (6-2):

RR a b b S X

a R b b S Xg

λ λ λ λ λ

λ λ λ λ λ

=− −

− +1 ,

,

[ coth( )]

coth( ), (6-2)

Page 153: spectral-based color separation algorithm development - CiteSeer

133

where λ is a wavelength within the visible spectrum, Rλ,g is the spectral reflectance factor

of an opaque support, Kλ is the absorption coefficient, Sλ is the scattering coefficient, X is

the thickness of the layer of colorant, aλ is equal to 1+(K/S)λ, bλ is equal to [(aλ)2 - 1]1/2,

and coth( ) is the hyperbolic cotangent function. The determination of K and S is carried

out by drawing down or printing, for example, a thin ink film on black and white contrast

paper, depicted as Fig. 6-2. Contrast paper whose surface is covered by a transparent

plastic layer or resin coating is normally used. This layer prevents the ink from submerging

into the paper fiber. The process utilizing contrast paper with plastic or resin coating is

similar to that of Allen and Hoffenberg’s preparation using Mylar film back-coated by

black and white paints.

Rλ,Pk Rλ,Pw

Rλ,wRλ,k

Fig. 6-2: An ink film applied on black and white contrast paper.

Page 154: spectral-based color separation algorithm development - CiteSeer

134

Four spectra can be attained by this technique to set up the two nonlinear

equations using Eq. (6-2) by assuming the ink thickness is unity and homogenous where

Rλ,Pw and Rλ,Pk are the spectral reflectance factor of an primary ink (P) printed over white

and black support, respectively, and Rλ,w and Rλ,k are the spectral reflectance factor of the

white and black areas of the contrast paper, respectively. First, the surface reflectance

factor, Rλ,Pw, of the ink printed on top of the white background is described by

RR a b b S

a R b b SPw

w P P P P

P w P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )=

− −− +

1 , (6-3)

where X is assumed to be unity. Second, the surface reflectance factor, Rλ,Pk, of the same

primary ink printed on top of black background is described by

RR a b b S

a R b b SPk

k P P P P

P k P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )=

− −− +

1 . (6-4)

Notice that the difference between Eqs. (6-3) and (6-4) is the term of Rλ,g in Eq. (6-2)

which is substituted with the spectral reflectance factor of the white support in Eq. (6-3)

and substituted with the spectral reflectance factor of the black support in Eq. (6-4). Thus,

Eqs. (6-3) and (6-4) construct a nonlinear system with two equations and two unknowns,

Kλ and Sλ. To solve this system of nonlinear equations, a numerical method based on the

techniques of operational research can be employed to estimate these two optical

constants. This is repeated for each ink of interest.

Once all the optical constants related to the assumed thickness are numerically

determined, the prediction of overprints depends on the thickness of inks actually printed

Page 155: spectral-based color separation algorithm development - CiteSeer

135

on a medium, such as the SWOP specified standard paper. The effective thickness for each

ink can be estimated using Eq. (6-2) by the known optical constants for each ink,

measured surface reflectance factors of each ink printed on a specific paper, and the

measured reflectance factor, Rλ,paper, for the specific paper. The equation for estimating the

thickness, typical of a printing or proofing process, of an primary ink (P) is set up by

RR a b b S X

a R b b S XP

paper P P P P P

P paper P P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )=

− −− +

1 , (6-5)

where Rλ,P is the spectral reflectance factor of a primary ink printed on top of a specific

paper with spectral reflectance factor, Rλ,paper, and XP is the effective thickness. XP again

can be solved by a numerical method. Once Kλ, Sλ, and X for each ink are estimated, the

prediction of ink overprints is simply a recursive calculation using Eq. (6-2). That is,

taking a three-ink-layer overprint as an example, given that all sets of characteristic

parameters for all ink layers were estimated, the prediction of the topmost spectral

reflectance factor requires the knowledge about the spectral reflectance factor of the

second layer which are predicted based on the a priori knowledge about the known

spectral reflectance factor of the bottom layer.

Page 156: spectral-based color separation algorithm development - CiteSeer

136

Paper

Fig. 6-3: The diagram of a three-ink-layer overprint.

Figure 6-3 is shown to conceptualize this process where R Pλ, 3is the spectral reflectance

factor of primary three printed on paper with R paperλ, , R P Pλ, 2 3is the spectral reflectance

factor of primary two printed on top of the primary three, and R P P Pλ, 1 2 3is the spectral

reflectance factor of primary one printed on the topmost layer. Analytically, the estimation

of spectral reflectance factor for all three ink layers can be described by Eq. (6-6) for the

bottom layer, Eq. (6-7) for the inner layer, and Eq. (6-8) for the topmost layer,

respectively:

RR a b b S X

a R b b S XP

paper P P P P P

P paper P P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )3

3 3 3 3 3

3 3 3 3 3

1=

− −− +

, (6-6)

RR a b b S X

a R b b S XP P

P P P P P P

P P P P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )2 3

3 2 2 2 2 2

2 3 2 2 2 2

1=

− −− +

, (6-7)

K S X

K S X

K S X

P P P

P P P

P P P

λ λ

λ λ

λ λ

, ,

, ,

, ,

1 1 1

2 2 2

3 3 3

R Pλ , 3

R paperλ ,

R P Pλ, 2 3

R P P Pλ , 1 2 3

Page 157: spectral-based color separation algorithm development - CiteSeer

137

RR a b b S X

a R b b S XP P P

P P P P P P P

P P P P P P Pλ

λ λ λ λ λ

λ λ λ λ λ,

, , , , ,

, , , , ,

[ coth( )]

coth( )1 2 3

2 3 1 1 1 1 1

1 2 3 1 1 1 1

1=

− −− +

. (6-8)

The accuracy of this process was defined using the CIE94 color difference

equation calculated under standard illuminant D50 and the 1931 standard observer (CIE,

1995). The spectral accuracy is quantified both by root-mean-square (RMS) error in units

of reflectance factor and the CIE94 color difference equation calculated under standard

illuminant A and the 1931 standard observer as the metamerism index (M.I.) after

parameric correction (Fairman, 1987).

C. EXPERIMENTAL

For the convenience of verifying the technical approach described above, the

DuPont Water Proof system was used to print six primaries, which are cyan, magenta,

yellow, red, green, and blue, on six pieces of contrast paper shown in Fig. 6-4. Twenty-

five overprints, shown in Fig. 6-5, were generated using at most three-primary

combinations. Among the 25 overprints, 14 are two-color overprints and 11 are three-

color overprints. The printing order corresponds to the color order putting cyan at the

bottom-most layer, magenta on cyan, yellow on magenta, red on yellow, green on red, and

blue on the top-most layer. These samples were measured using a Gretag Spectrolino by

averaging five measurements for each color. Due to the different refractive indices among

air, ink, and support, the Saunderson correction was employed to correct for refractive-

index discontinuity at each interface (Saunderson, 1942; Allen, 1987).

Page 158: spectral-based color separation algorithm development - CiteSeer

138

Fig. 6-4: The six primaries printed on contrast paper.

Fig. 6-5: Twenty-five overprints printed on coated paper.

Page 159: spectral-based color separation algorithm development - CiteSeer

139

D. RESULTS

Equations (6-3) and (6-4) were used to set up the system of nonlinear equations

and solved for the two unknowns by assuming the thickness for each ink is unity. The

estimated Kλ and Sλ, attached in Appendix H, of the six primaries are plotted in Fig. 6-6.

400 500 600 7000

0.5

1

1.5

2

2.5

3Cyan

K o

r S

400 500 600 7000

0.5

1

1.5

2

2.5

3Magenta

400 500 600 7000

0.5

1

1.5

2

2.5

3Yellow

400 500 600 7000

0.5

1

1.5

2

2.5

3Red

Wavelength

K o

r S

400 500 600 7000

0.5

1

1.5

2

2.5

3Green

Wavelength

400 500 600 7000

0.5

1

1.5

2

2.5

3Blue

Wavelength

Fig. 6-6: The spectral absorption (solid line) and scattering (dashed line multiplied by tentimes) curves of the six primaries.

Thickness was then estimated for each primary printed on the coated paper shown in Fig.

6-5, using Eq. (6-2). Due to the high colorimetic and spectral accuracy for predicting

Page 160: spectral-based color separation algorithm development - CiteSeer

140

primaries, the difference spectra between measured and predicted primaries printed on the

coated paper are plotted in Fig. 6-7 and their colorimetric and spectral accuracy as well as

their statistical thicknesses are shown in Table 6-1. Thickness is a ratio related to the ink

thickness of each primary printed on contrast paper.

400 500 600 700-0.05

0

0.05

Del

ta R

Cyan

400 500 600 700-0.05

0

0.05Magenta

400 500 600 700-0.05

0

0.05Yellow

400 500 600 700-0.05

0

0.05

Del

ta R

Wavelength

Red

400 500 600 700-0.05

0

0.05

Wavelength

Green

400 500 600 700-0.05

0

0.05

Wavelength

Blue

Fig. 6-7: The difference spectra between measured and predicted primaries.

Table 6-1: The colorimetric accuracy, spectral accuracy, and the statistical thickness forthe six primaries.

Cyan Magenta Yellow Red Green Blue∆E*

94 0.8 0.3 0.1 0.4 0.2 0.8Metamerism Index 0.0 0.0 0.0 0.0 0.0 0.2RMS Error 0.005 0.002 0.004 0.004 0.001 0.004Thickness 0.956 0.958 0.975 1.026 0.962 0.987

Page 161: spectral-based color separation algorithm development - CiteSeer

141

According to Table 6-1, the prediction of each primary is of high spectral accuracy as

indicated by the near zero metamerism index and the low RMS error. Thus, the first

verification ensures the success using of Kubelka-Munk theory to predict the translucent

material backed by an opaque support. With the knowledge of optical constants, Kλ and

Sλ, and the effective thickness of ink deposited by a typical printing process, the estimation

of spectral reflectance factor can be accomplished whenever the paper support is changed

under the assumption that there is no interaction between ink and paper (coated paper is

preferred). Since the accuracy of the first prediction is high, the interaction between ink

and paper is considered insignificant. Second, the prediction of overprints is based on the

assumption that no chemical or physical interaction at interfaces of each ink layer. In our

experiment, the statistical colorimetric and spectral performance of predictions for the 25

overprints, shown in Table 6-2, is considered high judged by the low average and standard

deviation (Stdev) of metamerism indices whose histogram is shown in Fig. 6-8. It indicates

that almost all the overprints are predicted with high accuracy since most of estimated

metamerism indices of the 25 overprints are concentrated around 0.3 ∆E*94 units. Figures

6-9 and 6-10 are shown as examples of good predictions and predictions with relatively

low accuracy in terms of their metamerism indices. However, the spectral predictions of

these “relative low accuracy” samples are considered acceptable judged by their low

colorimetric and spectral error. The predicted spectral curves correspond well to the

Page 162: spectral-based color separation algorithm development - CiteSeer

142

measured spectral curves indicated by the difference spectra. The implementation of ink

overprint prediction is shown in Appendix D.

Table 6-2: The colorimetric and spectral accuracy of the 25 overprints.

∆E*94 Metamerism index

Mean 0.9 0.3Stdev 0.5 0.3Maximum 2.1 1.2Minimum 0.2 0.0RMS Error 0.004

0 0 .2 0 .4 0 .6 0 .8 1 1 .2 1 .40

1

2

3

4

5

6

7

8

9

1 0

M e ta m e ris m Ind e x

Fre

qu

en

cy

Fig. 6-8: Histogram of the metamerism indices for prediction of the 25 overprints.

Page 163: spectral-based color separation algorithm development - CiteSeer

143

400 500 600 700-0.05

0

0.05

De

lta R

Red on Magenta

400 500 600 700-0.05

0

0.05Yellow on Magenta

400 500 600 700-0.05

0

0.05Red on Yellow

Wavelength

De

lta R

400 500 600 700-0.05

0

0.05Green on Yellow

Wavelength

Fig. 6-9: The difference spectra of four overprints best predicted with high accuracy.

400 500 600 700-0.05

0

0.05

De

lta R

G reen on Red

400 500 600 700-0.05

0

0.05Blue on Y ellow

400 500 600 700-0.05

0

0.05Blue on Cyan

Wavelength

De

lta R

400 500 600 700-0.05

0

0.05Blue on Y ellow on Cyan

Wavelength

Fig. 6-10: The difference spectra of four overprints predicted with relatively low accuracy.

∆E*94 0.2

M. I. 0.0∆E*

94 0.4M. I. 0.1

∆E*94 0.3

M. I. 0.1∆E*

94 0.4M. I. 0.1

∆E*94 2.1

M. I. 0.4∆E*

94 0.9M. I. 0.5

∆E*94 1.4

M. I. 0.7∆E*

94 1.2M. I. 1.1

Page 164: spectral-based color separation algorithm development - CiteSeer

144

E. DISCUSSIONS

The errors contributed to the prediction using the technical approach described

herein can be attributed to three types of error. The first is the uniformity of the paper

support to be printed. The second is the homogeneity of the ink thickness delivered by the

printing process. The last is the accuracy of the determination of the two optical constants,

Kλ and Sλ. Recall that Kλ and Sλ are solved numerically. In the process of solving for Kλ

and Sλ, the constraints of the positivity of these two optical constants should be

superimposed in numerical estimation to account for the absorption and scattering

properties of real material, i.e., the negativity of Kλ and Sλ is not realizable. Another

realistic consideration for the numerical estimation is that the term aλ in Eq. (6-2) is a

function of the ratio of absorption to scattering coefficient, (K/S)λ, at a sampled

wavelength. When estimated Sλ is zero, the numerical error of division by zero happens.

The process required setting the lower boundary of Sλ to be nonzero to prevent the

numerical error of the division by zero in addition to that Eq. (6-2) can be confounded by

the numerical result of zero divided by zero. This limitation causes the over-prediction for

the reflectance factor when both the estimated Kλ and Sλ are low and close to zero. The

strongest evidence is the prediction for cyan ink printed on the coated paper. Figure 6-11

indicates that the estimated low absorption (solid line) and scattering (dashed line) for

cyan ink happens from 440 nm to 470 nm. Its corresponding prediction of spectral

Page 165: spectral-based color separation algorithm development - CiteSeer

145

reflectance factor is over-predicted (the difference spectrum is obtained by the predicted

subtracted from the measured) at the same spectral region due to this numerical limitation.

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 0

0

0 .2

0 .4

0 .6

0 .8

1

1 .2

1 .4

1 .6

1 .8

2E s t i m a te d K & S

W a ve le n g th

K o

r S

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 0-0 .0 2

-0 .0 1 5

-0 .0 1

-0 .0 0 5

0

0 .0 0 5

0 .0 1

0 .0 1 5

0 .0 2D i f fe re n c e S p e c t ru m

W a ve le n g th

De

lta

R

Fig. 6-11: The estimated two optical constants for cyan ink and corresponding differencespectrum in units of reflectance factor.

F. CONCLUSIONS

An algorithm for predicting overprints by a proofing device was exercised and

verified. The errors contributing to this verification process are the uniformity of a coated

paper to be printed, homogeneity of the printed ink thickness, and numerical limitations

when estimating the two optical constants. Nevertheless, high colorimetric and spectral

accuracy was achieved by this approach using Kubelka-Munk turbid media theory.

Page 166: spectral-based color separation algorithm development - CiteSeer

146

VII. SPECTRAL-BASED SIX-COLOR SEPARATIONMINIMIZING METAMERISM

Given an input image, the task in the synthesis stage of its color reproduction using

halftone printing device is to determine the ink amount corresponding to each primary to

be delivered onto a paper substrate. This task is so called "color separation". The

determined ink amount in terms of fractional areas are stored as color separation records

corresponding to each primary ink by digital storage or conventional high contrast

lithographic film. The reproduction is accomplished by transferring the ink information in

each color-separation record digitally by an inkjet printer or conventionally by a printing

press. This chain completes the synthesis stage of a halftone printing process.

Conventionally, color separation schemes often utilize empirical ink tables or

multi-dimensional look up tables (CLUT). Such approaches require quite a few data

samples and measurements. On the contrary, analytical models frequently require relatively

small number of samples to build device profile. This is especially efficient whenever the

printing process is subject to a change of ink and paper material. Most analytical models

are based on the Murray-Davies and Neugebauer equations. The former is utilized as the

analytical description for the color formation of a single ink printed on a substrate.

Whereas, the latter is employed as the analytical description for the color formation of

multi-color printing processes.

Page 167: spectral-based color separation algorithm development - CiteSeer

147

Four-color modeling techniques based on the Neugebauer equation for halftone

printing process have long been disclosed and well established (Pobboravsky and Pearson,

1972; Balasubramanian, 1995; 1996; 1998; Viggiano, 1985). The quality of this type of

color synthesis is based on the accuracy of colorimetric reproduction. It suffers from the

problem of metamerism due to a lack of degrees of freedom. The use of more than four

inks for the halftone printing process not only increases the colorimetric gamut but also

increases the "spectral gamut" of the color mixtures produced by a halftone device.

Spectral gamut is defined as the set of spectra which is spanned by a set of basis primaries

used for halftone synthesis. Theoretically, the larger the spectral gamut, the higher the

probability matching a sample from the input image spectrally. Based on the economy and

production convenience as described in the introduction, this research extends the

challenge to build an analytical model for a six-color halftone printing process.

A. SIX-COLOR YULE-NIELSEN MODIFIED SPECTRALNEUGEBAUER EQUATION

An analytical estimation for the synthesis of a reflectance spectrum using six

primary inks can employ the Yule-Nielsen modified spectral Neugebauer equation

generalized to a six-primary expression, shown as Eq. (7-1),

R a Rii

in n

λ λ==∑[ ],

/

1

641 , (7-1)

Page 168: spectral-based color separation algorithm development - CiteSeer

148

where terms are similarly defined as that of Eq. (2-36). Notice that Eq. (7-1) is extended

to a linear sum of 64 Nuegebauer primaries. The corresponding 64 coefficients as the

fractional dot areas can be expressed again by the Demichel probability model extended to

a six-primary case shown as Eq. (7-2),

White : a1 = (1 - P1) (1 - P2) (1 - P3) (1 - P4) (1 - P5) (1 - P6)

Six Primaries

P1 : a2 = P1 (1 - P2) (1 - P3) (1 - P4) (1 - P5) (1 - P6)P2 : a3 = (1 - P1) P2 (1 - P3) (1 - P4) (1 - P5) (1 - P6)P3 : a4 = (1 - P1) (1 - P2) P3 (1 - P4) (1 - P5) (1 - P6)P4 : a5 = (1 - P1) (1 - P2) (1 - P3) P4 (1 - P5) (1 - P6)P5 : a6 = (1 - P1) (1 - P3) (1 - P3) (1 - P4) P5 (1 - P6)P6 : a7 = (1 - P1) (1 - P3) (1 - P3) (1 - P4) (1 - P5) P6

Secondaries (fifteen two-color overprints)

P1P2 : a8 = P1 P2 (1 - P3) (1 - P4) (1 - P5) (1 - P6)P1P3 : a9 = P1 (1 - P2) P3 (1 - P4) (1 - P5) (1 - P6)P1P4 : a10 = P1 (1 - P2) (1 - P3) P4 (1 - P5) (1 - P6)P1P5 : a11 = P1 (1 - P2) (1 - P3) (1 - P4) P5 (1 - P6)P1P6 : a12 = P1 (1 - P2) (1 - P3) (1 - P4) (1 - P5) P6

P2P3 : a13 = (1 - P1) P2 P3 (1 - P4) (1 - P5) (1 - P6)P2P4 : a14 = (1 - P1) P2 (1 - P3) P4 (1 - P5) (1 - P6)P2P5 : a15 = (1 - P1) P2 (1 - P3) (1 - P4) P5 (1 - P6)P2P6 : a16 = (1 - P1) P2 (1 - P3) (1 - P4) (1 - P5) P6

P3P4 : a17 = (1 - P1) (1 - P2) P3 P4 (1 - P5) (1 - P6)P3P5 : a18 = (1 - P1) (1 - P2) P3 (1 - P4) P5 (1 - P6)P3P6 : a19 = (1 - P1) (1 - P2) P3 (1 - P4) (1 - P5) P6

P4P5 : a20 = (1 - P1) (1 - P2) (1 - P3) P4 P5 (1 - P6)P4P6 : a21 = (1 - P1) (1 - P2) (1 - P3) P4 (1 - P5) P6

P5P6 : a22 = (1 - P1) (1 - P2) (1 - P3) (1 - P4) P5 P6

Tertiaries (twenty three-color overprints)

Page 169: spectral-based color separation algorithm development - CiteSeer

149

P1P2P3 : a23 = P1 P2 P3 (1 - P4) (1 - P5) (1 - P6)P1P2P4 : a24 = P1 P2 (1 - P3) P4 (1 - P5) (1 - P6)P1P2P5 : a25 = P1 P2 (1 - P3) (1 - P4) P5 (1 - P6)P1P2P6 : a26 = P1 P2 (1 - P3) (1 - P4) (1 - P5) P6

P1P3P4 : a27 = P1 (1 - P2) P3 P4 (1 - P5) (1 - P6)P1P3P5 : a28 = P1 (1 - P2) P3 (1 - P4) P5 (1 - P6)P1P3P6 : a29 = P1 (1 - P2) P3 (1 - P4) (1 - P5) P6

P1P4P5 : a30 = P1 (1 - P2) (1 - P3) P4 P5 (1 - P6)P1P4P6 : a31 = P1 (1 - P2) (1 - P3) P4 (1 - P5) P6

P1P5P6 : a32 = P1 (1 - P2) (1 - P3) (1 - P4) P5 P6, (7-2)P2P3P4 : a33 = (1 - P1) P2 P3 P4 (1 - P5) (1 - P6)P2P3P5 : a34 = (1 - P1) P2 P3 (1 - P4) P5 (1 - P6)P2P3P6 : a35 = (1 - P1) P2 P3 (1 - P4) (1 - P5) P6

P2P4P5 : a36 = (1 - P1) P2 (1 - P3) P4 P5 (1 - P6)P2P4P6 : a37 = (1 - P1) P2 (1 - P3) P4 (1 - P5) P6

P2P5P6 : a38 = (1 - P1) P2 (1 - P3) (1 - P4) P5 P6

P3P4P5 : a39 = (1 - P1) (1 - P2) P3 P4 P5 (1 - P6)P3P4P6 : a40 = (1 - P1) (1 - P2) P3 P4 (1 - P5) P6

P3P5P6 : a41 = (1 - P1) (1 - P2) P3 (1 - P4) P5 P6

P4P5P6 : a42 = (1 - P1) (1 - P2) (1 - P3) P4 P5 P6

Quaternaries (fifteen four-color overprints)

P1P2P3P4 : a43 = P1 P2 P3 P4 (1 - P5) (1 - P6)P1P2P3P5 : a44 = P1 P2 P3 (1 - P4) P5 (1 - P6)P1P2P3P6 : a45 = P1 P2 P3 (1 - P4) (1 - P5) P6

P1P2P4P5 : a46 = P1 P2 (1 - P3) P4 P5 (1 - P6)P1P2P4P6 : a47 = P1 P2 (1 - P3) P4 (1 - P5) P6

P1P2P5P6 : a48 = P1 P2 (1 - P3) (1 - P4) P5 P6

P1P3P4P5 : a49 = P1 (1 - P2) P3 P4 P5 (1 - P6)P1P3P4P6 : a50 = P1 (1 - P2) P3 P4 (1 - P5) P6

P1P3P5P6 : a51 = P1 (1 - P2) P3 (1 - P4) P5 P6

P1P4P5P6 : a52 = P1 (1 - P2) (1 - P3) P4 P5 P6

P2P3P4P5 : a53 = (1 - P1) P2 P3 P4 P5 (1 - P6)P2P3P4P6 : a54 = (1 - P1) P2 P3 P4 (1 - P5) P6

P2P3P5P6 : a55 = (1 - P1) P2 P3 (1 - P4) P5 P6

P2P4P5P6 : a56 = (1 - P1) P2 (1 - P3) P4 P5 P6

P3P4P5P6 : a57 = (1 - P1) (1 - P2) P3 P4 P5 P6

Quinaries (six five-color overprints)

Page 170: spectral-based color separation algorithm development - CiteSeer

150

P1P2P3P4P5 : a58 = P1 P2 P3 P4 P5 (1 - P6)P1P2P3P4P6 : a59 = P1 P2 P3 P4 (1 - P5) P6

P1P2P3P5P6 : a60 = P1 P2 P3 (1 - P4) P5) P6

P1P2P4P5P6 : a61 = P1 P2 (1 - P3) P4 P5 P6

P1P3P4P5P6 : a62 = P1 (1 - P2) P3 P4 P5 P6

P2P3P4P5P6 : a63 = (1 - P1) P2 P3 P4 P5 P6

Hexary (one six-color overprint)

P1P2P3P4P5P6 : a64 = P1 P2 P3 P4 P5 P6

where P1, P2,…, P6 represent the six-primary inks.

Although Eq. (7-1) theoretically describes the synthesis of a desired color

spectrum, whether or not an actual six-color halftone printing process which is capable of

abiding by this analytical description is not known. The failure is due to the ink-trapping

limitation which is defined as the capability in terms of percentage of ink amount for

successive inks printed on top of the preceding ink. At the stage of ink-trapping, the

preceding inks are still wet. Several practical observations have reported that ink-trapping

lithography off-set printing is limited to 300~400% of total ink amount printed over a

fixed area. Hence, it is very likely that the validity of Eq. (7-1) is confined by this physical

limitation.

From Eq. (7-1), a given reflectance spectrum requires fitting by the linear

combination of 64 basis spectra† (Neugebauer primaries). The redundancy among those 64

basis spectra is worthwhile checking since the linear independency among them is not a

Page 171: spectral-based color separation algorithm development - CiteSeer

151

certainty. It can be reasoned by an example of six-color halftone printing process using

cyan, magenta, yellow, green, orange, and black inks. Consider that the quinary and

hexary as well as some quaternary whose spectra are flat are neutral colors. It is highly

probable that those Neugebauer primaries can be approximated by linear combinations of

others. If so, then the redundancy of those Neugebauer primaries is high. Their

contribution to the synthesis of a spectrum is insignificant.

Based on the physical limitation of a certain printing process, the use of six-color

Yule-Nielsen modified spectral Neugebauer equation seems impractical. In addition, the

speculation on the basis spectra indicated that the existence of five or six color overprints

may not be significant for spectral reproduction. Thus, an alternative approach which

takes advantage of more degrees of freedom as well as abiding by the physical limitation

of a particular printing process is desired.

B. AN ALTERNATIVE APPROACH USING SIX-COLORHALFTONE PRINTING PROCESS MINIMIZING METAMERISM

The current research project proposes a paradigmatic algorithm in balancing

between the spectral gamut and physical limitation due to ink-trapping failure. These

modules for the current research development are sequentially outlined in Fig. 7-1.

† We don’t want to call the Neugebauer primaries as the basis vectors since they are not necessary linearlyindependent. Recall that basis vectors are defined as the set of vectors which are not only linearlyindependent but also span the entire vector space.

Page 172: spectral-based color separation algorithm development - CiteSeer

152

Subdivisionof Six-ColorModeling

Forward Four-ColorHalftone SpectralPrinting Models

Proper Four-ColorSub-Model Selection

Backward PrintingModels for Six-ColorSeparation MinimizingMetamerism

Fig. 7-1: The structure chart for the development of six-color separation minimizingmetamerism.

Subdivision of Six-Color Modeling

The task of analytical modeling for a six-color halftone printing process is

subdivided into k four-color modeling processes in order to comply with the ink-trapping

limitation. The number, k, depends on the division algorithm and will be specified later in

this section. The six-color printing model can be viewed as the super-model of the k four-

color printing sub-models. The spectral gamut of the six-color printing model is assumed

to be a good approximation to the spectral gamut of an input image by the ink-selection

algorithm. If the ink-selection algorithm suggests an optimal inkset, for an arbitrary

example, comprised by cyan (C), magenta (M), yellow (Y), green (G), orange (O), and

Page 173: spectral-based color separation algorithm development - CiteSeer

153

black (K) inks and a division algorithm recommends the use of one black and three

chromatic inks to synthesize each pixel of a given spectral image, then there are ten four-

color printing sub-models to be constructed. They are CMYK, CMGK, CMOK, CYGK,

CYOK, CGOK, MYGK, MYOK, MGOK, and YGOK.

Forward Four-Color Halftone Spectral Printing Models

Since the modeling of six-color halftone printing process is subdivided into ten

four-color modeling processes, a modeling process for CMYK halftone printing will be

utilized for discussion. Then, it is generalized for any four-color printing process using

different primaries.

1. The first-order forward model

The mission for a forward model is to obtain an accurate estimation of a

synthesized spectrum given a set of requested (or theoretical) dot areas "dialed in" by a

printer. Owing to mechanical and optical dot gain, the effective dot size printed on a

substrate is different from the theoretical dot size. Hence, the first task is to determine the

Yule-Nielsen n-factor, the second is to relate the theoretical dot area to the effective dot

area through a mathematical function or look up table (LUT), and finally, the estimated

spectrum is estimated by the Yule-Nielsen modified spectral Neugebauer equation. The

chain of first-order forward modeling process based on Yule-Nielsen modified spectral

Neugebauer equation is outlined in Fig. 7-2.

Page 174: spectral-based color separation algorithm development - CiteSeer

154

cmyk(theoretical dot areas)

f(c, m, y, k)

Nλ,n (c’, m’, y’, k’)

c’m’y’k’(effective dot areas)

Rλ,synthesis

Fig. 7-2: The structure of a general forward halftone printing model where f( ) is amathematical function or LUT describing the dot-gain effect and Nλ,n( ) is the function of

Yule-Nielsen modified spectral Neugebauer equation.

In order to complete the forward printing model, the transfer function relating the

theoretical to effective dot areas, f( ), and the Yule-Nielsen n-factor need to be uncovered

for a particular halftone printing process. The n-factor is utilized to compensate for the

non-linearity using the Neugebauer equation. Hence, the use of n-factor accounts for both

the mechanical and optical dot-gain behavior. Solving for n-factor corresponding to a

halftone printing system usually comes first followed by a determination of theoretical to

effective dot area transfer function, f( ). This modeling procedure only requires a sample

preparation of primary ramps of different fractional dot area and overprints of all

combinations of them.

Page 175: spectral-based color separation algorithm development - CiteSeer

155

From the primary ramps, the color formation can be described by the Yule-Nielsen

modified spectral Murray-Davies equation, specified as Eq. (2-33). By inverting Eq. (2-

33), the effective dot area of each patch can be estimated. The inversion of Eq. (2-33) in

terms of fractional dot area is shown as

aR R

R Rkn

papern

npapern=

−−

λ λ

λ λ

, %/

,/

,/

,/

1 1

100%1 1 , (7-3)

where a is the solved effective dot area corresponding to a primary printed at theoretical

dot area to be k% (0 ≤ k ≤ 100 ) whose spectral reflectance factor is Rλ,k%, Rλ,100% is the

spectral reflectance factor of the primary printed at 100% ink coverage, and Rλ,paper is the

spectral reflectance factor of the paper substrate. Notice that a = k% if n=1, i.e, there is no

dot-gain effect or the effective dot area is equal to the theoretical dot area.

With the solved fractional dot area, a, the predicted spectral reflectance factor for

each patch can be estimated by Eq. (2-33) given a known n-factor. Hence, the optimality

of n-factor determines the predicting accuracy of the estimated reflectance spectra. The

optimization of n-factor can be carried out by the procedure outlined in Fig. 7-3. Figure 7-

3 suggests the use of all the patches of primary ramps to step through all values of n-factor

with increment of ∆n and find an optimal n value corresponding to the smallest average

∆E*94 of the predictions of all patches.

Page 176: spectral-based color separation algorithm development - CiteSeer

156

INV(YNMD) YNMD

n = 1

R kλ, %

if ∆E*94 is minimum

, %R kλ

Yesn

no

n = n + ∆na

Fig. 7-3: The algorithm structure of determining the Yule-Nielsen n-factor whereINV(YNMD) stands for the inverse function, Eq. (7-3), of n-factor corrected spectral

Murray-Davies equation.

Once the n-factor is optimized, the corresponding solved effective dot area, a, for each

patch of each primary ramp is used to build the transfer function, f( ), by higher order

polynomials or nonlinear interpolation by cubic spline functions. A set of transfer

functions, depicted in Fig. 7-4, determined from a printing process is shown as an

example.

Page 177: spectral-based color separation algorithm development - CiteSeer

157

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Theoretical dot area

Effe

ctiv

e do

t are

a

cyanmagentayellowblack

Fig. 7-4: A set of theoretical to effective dot area transfer functions determined from aCMYK halftone printing process.

2. Second order improvement (modeling for ink- and optical-trapping)

The first-order forward printing model does not take ink trapping and optical

interaction into account. Its model accuracy is confined by these two physical effects. It

assumes that 100% ink-trapping capability and the optical dot gain of a multi-layer ink

overprint is the same as that of single primary layer. Since the percentage of ink trapping

varies for each printing process, the 100% assumption is not optimal. Furthermore, the

optical dot gain is obviously different among multi-layer overprints. This concept, termed

as optical-trapping, can be found in the literature published by Iino and Berns (1998).

Both ink trapping and optical trapping caused the first-order prediction to be too dark for

a sample; that is, the effective dot areas by printing the successive ink on top of the

preceding ink are smaller than expected. Hence, by overestimating the effective dot areas

Page 178: spectral-based color separation algorithm development - CiteSeer

158

for synthesizing a sample requiring reproduction, the resultant reflectance spectrum by the

first-order forward printing model is under predicted.

Iino and Berns proposed the use of a correction factor, q, to rectify the effective

dot area estimated by the theoretical to effective dot area transfer function, f( ), for the

first-order printing model. This correction factor originated from an observation on the

dot gain effect of a primary ramp at the existence of another primary. Dot-gain, g, can be

quantitatively defined as the difference between effective dot area, aeff, and theoretical dot

area, atheo, shown as Eq. (7-4),

g = aeff - atheo . (7-4)

Figure 7-5 shows the dot gain curves (g vs. theoretical dot area) of the CMYK ramps

given in Fig. 7-4.

0 0 .1 0 .2 0 .3 0 .4 0 .5 0 .6 0 .7 0 .8 0 .9 10

0 .05

0 .1

0 .15

0 .2

0 .25

0 .3

0 .35

0 .4

Theoretica l do t a rea

Do

t-g

ain

in

un

its

of

fra

ctio

nal

do

t a

rea

c yanma gentayello wblack

Fig. 7-5: The dot-gain functions of the CMYK ramps given in Fig. 7-4.

Page 179: spectral-based color separation algorithm development - CiteSeer

159

Iino and Berns hypothesized each primary ink has its inherent dot-gain function

which can be obtained from its corresponding primary ramp. They further hypothesized

that the dot-gain functions with respect to a primary varies their extent but not shape

given the existence of other primaries. For example, the family of dot-gain curves of a

cyan ramp given that the magenta ink is present at 0%, 25% 50%, and 75% fractional dot

areas is plotted in Fig. 7-6.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Theoretical dot area

Do

t-ga

in in

un

its o

f fr

actio

nal

do

t a

rea

mag=0%mag=25%mag=50%mag=75%

Fig. 7-6: The family of dot-gain curves of a cyan ramp when magenta ink presents at 0%,25%, 50%, and 75% fractional dot areas.

Thus, when magenta ink is present at 0%, the corresponding curve whose extent is the

highest describes the dot-gain behavior of the cyan primary alone, denoted as gc. When

Page 180: spectral-based color separation algorithm development - CiteSeer

160

magenta ink presents at nonzero dot area, the dot-gain of the cyan ramp is reduced. The

percentage of reduction is represented by a scalar, q, which depends on the existence of

other primary inks, where 0 ≤ q ≤ 1. Hence, quantitative description of global dot-gain int

the presence of another primary, g, is the product of q and the dot-gain, gp, of a primary

ramp, i.e.,

g = qgp = q(aeff, priamry - atheo,primary), (7-5)

where aeff, priamry and atheo,primary are the effective and theoretical dot areas of a primary,

respectively.

Intuitively, the correction scalar, q, for a primary ink is a function of the theoretical

dot area of the second ink. It was assumed that the dot-gain variance for an arbitrary

primary printed at 50% theoretical dot area is maximized although variance of dot-gain

curves shown in Fig. 7-6 seems to peak around 45%. (The location of peak variance is

related to the dot shape formed by a specific halftone screening process. Usually, the

elliptical, diamond dot shape, and the dot shape formed by FM screening peaks around

45% theoretical dot area, whereas, the round and square dot shape peak around at 50%

theoretical dot area.) Hence, to model this correction scalar, it is required to print a

primary at 50% theoretical dot area and varying the second ink from 0% to 100% by

assuming the dot-gain variance peaks at 50% theoretical area for a particular halftone

printing process. Let the gi=50%,j be the dot gain of a primary i printed at 50% theoretical

dot area given that the second primary j is present at a known theoretical dot area,

Page 181: spectral-based color separation algorithm development - CiteSeer

161

gi=50%,j = aeff,i=50%,j - 0.5 , (7-6)

where aeff,i=50%,j is the effective dot area estimated using the inverse Yule-Nielsen modified

spectral Neugebauer equation of the primary i at 50% theoretical dot area given that the

second primary j is present at a known theoretical dot area. Further, the dot gain, gi=50%, of

the primary i alone printed on a paper substrate at 50% theoretical dot area is the

difference of the corresponding effective dot area, aeff,i=50% and atheo,i, i.e.,

gi=50% = aeff,i=50% - atheo,i , (7-7)

where atheo = 0.5. Thereby, the correction scalar, q, is the ratio of gi=50%,j to gi=50%, i.e.,

q = gi=50%,j / gi=50% = (aeff,i=50%,j - atheo,i) / (aeff,i=50% - atheo,i) . (7-8)

Since q varies with the theoretical dot area of the second primary j, atheo,j, q is defined as a

function of atheo,j, that is, q = fi_j(atheo,j). Table 7-1 is the example published by Iino and

Berns (1998). They fixed cyan ink at 50% theoretical dot area and overlapping the

magenta ink at 0%, 25%, 50%, 75% and 100%.

Table 7-1: The effective dot areas and the correction scalar, q, of cyan fixed at 50%theoretical dot area by overlapping the secondary magenta ink at various theoretical dotareas (Iino and Berns, 1998).

TheoreticalDot area Effective Dot area Correction scalar1 2 3 4 5

Cyan Magenta Cyan Magenta q0.500 0.000 0.629 0.000 1.0000.500 0.250 0.613 0.320 0.8760.500 0.500 0.597 0.605 0.7520.500 0.750 0.592 0.809 0.7130.500 1.000 0.594 1.000 0.729

Page 182: spectral-based color separation algorithm development - CiteSeer

162

Using Eq. (7-6) the dot-gain of the cyan ink when the secondary magenta ink exists,

gc=50%,m, is the difference between the column 3 and column 1. Since the dot-gain of cyan

ink at 50% printed at paper alone (magenta ink is not present) by Eq. (7-7) is 0.129

(0.629 - 0.5). Hence, by Eq. (7-8), the correction scalar, q, listed in column 5, of the cyan

ink at 50% when the magenta ink is present is gc=50%,m / 0.129.

Iino and Berns further generalized the dot-gain correction scalar, q, for tertiary,

and quaternary overprint of a four-color halftone process. They hypothesized that the dot-

gain correction scalar is the product of correction scalar of each combination of secondary

overprint. For example if i, j and s primaries coexist, the correction scalar for primary i, qi,

is equal to the product of fi_j(atheo,j) and fi_s(atheo,s). For the CMYK halftone printing

process, the global correction scalar for each primary is defined as

qc = fc_m(atheo,m) fc_y(atheo,y) fc_k(atheo,k)qm = fm_c(atheo,c) fm_y(atheo,y) fm_k(atheo,k) . (7-9)qy = fy_c(atheo,c) fy_m(atheo,m) fy_k(atheo,k)qk = fk_c(atheo,c) fk_m(atheo,m) fk_y(atheo,y)

Hence, final effective dot area is the sum of the theoretical dot area and dot-gain, i.e.,

aeff = atheo + g = atheo + qgp = atheo + q(aeff,primary - atheo,primary). (7-10)

3. Alternative second order improvement

The algorithms proposed by Iino and Berns resulted in significant and impressive

improvement for CMYK processed. Whereas, these algorithms implemented for processes

Page 183: spectral-based color separation algorithm development - CiteSeer

163

using primaries other than CMYK (e.g., CMGK, CMOK, MYOK,…, etc.) do not

significantly improve or sometimes worsen the accuracy relative to the first-order printing

model. Whether or not the dot-gain characteristic of the process using other than CMYK

does not agree with the Iino and Berns' assumptions, it is difficult to conclude. Since our

goal is to use various four-color processes to enhance the capability of spectral

reproduction, it is necessary to uncover other algorithms which are capable of modeling

the ink- and optical-trapping of any primary combination for the second order

improvement.

Conceptually, the proposed modification is not too different from the algorithms

proposed by Iino and Berns. The difference is in the determination of the correction scalar,

q. The alternative approach (using the Iino and Berns' notation) is to look at the dot-gain

effect of a primary ramp given that the secondary is present at 50% theoretical dot area.

The use of secondary at 50% theoretical dot area is hypothesized to have the average

influence on the dot-gain characteristic of the primary ramp. Hence, dot gain of a primary j

at theoretical dot area p% given that the existence of the secondary i at 50% theoretical

dot area† is

gi=50%,j=p% = aeff,i=50%,j=p% - p/100 . (7-11)

By Eq.(7-7), the dot gain of the primary j printed alone (secondary i is not presented) at

p% theoretical dot area is

† The intention of assigning j to be the primary and i to be the secondary is to be consistent with the Iinoand Benrs' notation.

Page 184: spectral-based color separation algorithm development - CiteSeer

164

gj=p% = aeff,j=p% - atheo,j , (7-12)

where atheo,j = p/100. Therefore, the correction scalar, q, is the ratio of gi=50%,j=p% to gj=p%,

i.e,

q = gi=50%,j=p% / gj=p% , (7-13)

Similarly, q varies with the theoretical dot area of the primary j, atheo,j, q is again defined as

a function of atheo,j, that is, q = gi_j(atheo,j). Table 7-2 shows an example of the determined q

scalar and dot gains of primary (magenta) given that the secondary (cyan) is present where

the estimation of effective dot area is performed by inverting the Yule-Nielsen modified

spectral Neugebauer equation.

Table 7-2: The determined q scalars by proposed modification and the dot-gain of theprimary (magenta) given that the secondary (cyan) is present.

Theoretical Dot area Effective Dot area Correction scalar1 2 3 4 5

Cyan Magenta Magenta Magenta q(with (withoutCyan) Cyan)

0.500 0.000 0 0 1.0000.500 0.250 0.503 0.546 0.8560.500 0.500 0.808 0.813 0.9840.500 0.700 0.919 0.931 0.9460.500 0.900 0.979 0.990 0.872

By Eq. (7-13), the correction scalar, q, column 5, is obtained by (column 3 - column 2) /

(column 4 - column 2).

Page 185: spectral-based color separation algorithm development - CiteSeer

165

To generalize the dot gain correction scalar, q, for tertiary and quaternary

overprints of a four-color halftone process, it uses the similar hypothesis to the Iino and

Berns that the dot-gain correction scalar is the product of the correction scalar of each

combination of secondary (two-color) overprint. For example if i, j and s primaries

coexist, the correction scalar for primary j, qj , is equal to the product of gi_j(atheo,j) and

gs_j(atheo,j). For the CMYK halftone printing process, the global correction scalar for each

primary is defined as

qc = gm_c(atheo,c) gy_c(atheo,c) gk_c(atheo,c)qm = gc_m(atheo,m) gy_m(atheo,m) gk_m(atheo,m) . (7-14)qy = gc_y(atheo,y) gm_y(atheo,y) gk_y(atheo,y)qk = gc_k(atheo,k) gm_k(atheo,k) gy_k(atheo,k)

Iino and Berns' algorithms are different from the proposed alternative algorithms.

Conceptually, Iino and Berns' algorithms suggested that, for example, for cyan and

magenta ink mixtures, whose theoretical dot areas are m% and k%, respectively, the dot

gain of the cyan is normalized to the dot-gain locus of the cyan when the magenta is

present at k%. Similarly, the dot gain of the magenta is normalized to the dot gain locus of

the magenta when the cyan is present at m%. Whereas, the proposed algorithms

recommend that the optimal dot gain of the cyan is normalized to the dot-gain locus of the

magenta presenting at 50% theoretical dot area whenever the magenta is present at any

theoretical dot area other than zero.

Page 186: spectral-based color separation algorithm development - CiteSeer

166

To be more specific, when cyan and magenta are present at 50% and 25%

theoretical dot areas, respectively. The dot gain of the cyan estimated by the first-order

model is the point a3 in Fig. 7-7. After Iino and Berns' modification the estimated dot gain

of the cyan subjected to the optical trapping is at point b3. Whereas, the suggested dot

gain of the cyan subjected to the optical trapping by the proposed algorithms is at point c3.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.05

0.1

0.15

0.2

0.25

0.3

0.35

Theoretical dot area

Do

t-g

ain

in u

nits

of

fra

ctio

na

l dot

are

a

mag=0%mag=25%mag=50%mag=75%

Fig. 7-7: The dot-gain loci of a cyan ramp when a magenta ink is present at differenttheoretical dot areas where the locus goes through a3, b3, and c3 are the dot gains esimated

by the first-order model, Iino and Berns' algoritms, and the proposed algorithms,respectively.

Iino and Berns modeled the optical trapping by defining the dot gain correction scalar, q =

fc_m(atheo,m), exemplified by Fig. 7-7, to be the ratio of the dot gain value of the cyan at

a1

a2 a3

a4

c1

c2 c3

c4

b3

d3

Page 187: spectral-based color separation algorithm development - CiteSeer

167

50% theoretical dot area when the magenta is present at atheo,m to the dot gain value of the

cyan at 50% theoretical dot area when the magenta is not present. Whereas, the proposed

algorithm modeled the optical trapping by defining the dot gain correction scalar, q =

gc_m(atheo,c), to be the ratio of the dot gain value of the cyan at atheo,c theoretical dot area

when the magenta is present at any theoretical area other than zero to the dot gain value

of the cyan at atheo,c theoretical dot area when the magenta is not present. The difference

between the two second-order improvements is shown by Fig. 7- 8.

0 0 .2 0 .4 0 .6 0 .80

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

at h e o , m

f cm

T h e c o rr e c ti o n s c a la r b y Ii n o a n d B e r n s

0 0 .2 0 .4 0 .6 0 .80 .5

0 .5 5

0 .6

0 .6 5

0 .7

0 .7 5

0 .8

0 .8 5

0 .9

0 .9 5

1

at h e o , c

gm

c

T h e c o rr e c ti o n s c a la r b y th e p ro p o s e d a lg o r i th m

Fig. 7- 8: The functions of dot gain corrrection scalar by Iino and Berns (left) and theproposed (right) algorithms.

a3/a3

b3/a3

c3/a3

d3/a3

c1/a1

c2/a2

c3/a3

c4/a4

Page 188: spectral-based color separation algorithm development - CiteSeer

168

The examples in Fig. 7- 8 pictorially show how the correction scalars associated with the

two second-order improvements were obtained. Notice that the fc_m, shown as an

monotonic function, is not necessary an monotonic function since the dot gain loci of real

situation is not necessary as regularly shaped and spaced as that shown in Fig. 7-7.

4. Modeling by matrix transformation

One straightforward approach to model a halftone printing process is to directly

relate the theoretical dot area to the effective dot area of the printed sample through a

matrix transformation. This requires extensive sampling of the colorimetric or spectral

gamut to achieve high accuracy. Ideally, the set of effective dot areas of the representative

sampling on a particular printing process is equal to the product of a transformation and

the set of corresponding theoretical dot areas, i.e.,

aeff = M atheo , (7-15)

where aeff and atheo are the vector-matrix representations of effective and theoretical dot

areas, respectively and M is a transformation matrix. Realistically, the effective dot area

obtained by inverting Yule-Nielsen modified spectral Neugebauer equation is highly

nonlinearly related to the theoretical dot area. Thus, the theoretical dot area needs to

undergo a transformation to a representation which is linearly related to the effective dot

area. Thereafter, the transformation matrix, M , can be derived by the pseudo-inverse

matrix operation.

Page 189: spectral-based color separation algorithm development - CiteSeer

169

The most frequently used process in finding a transformation is through polynomial

regression. Its process is to represent the theoretical dot area by a higher order

polynomial. For example, assuming the set of theoretical dot areas for a CMYK printing

process is represented as c, m, y, and k, in vector-matrix form, the corresponding matrix

of a second order polynomial representation is [c m y k c2 m2 y 2 k2 cm cy ck my mk

yk]. Hence, the transformation matrix, M , can be obtained by

M = pinv([c m y k c2 m2 y 2 k2 cm cy ck my mk yk]) aeff , (7-16)

where pinv( ) stands for the pseudo-inverse function.

Proper Four-Color Sub-Model Selection

At the color separation stage, it is necessary to decide a set of four inks (one black

and three chromatic inks) associated with a four-color sub-model for synthesizing an input

spectrum abiding by the ink limiting scheme. Conventionally, the selection can be done by

locating a colorimetric value requiring reproduction inside a colorimetric gamut spanned

by a set of candidate inks. The decision is based on whether the set of candidate inks

whose colorimetric gamut includes the colorimetric value requiring reproduction. This

requires a printing model to populate the colorimetric gamut boundary of the set of

candidate inks and an inclusion algorithm to determine whether the colorimetric value is

interior to the colorimetric gamut.

This conventional method is not suitable for our challenge to accomplish spectral

reproduction, since the higher dimensional spectral gamut is impossible to visualize. The

Page 190: spectral-based color separation algorithm development - CiteSeer

170

use of inclusion algorithms is computationally intensive for determining an interior point

inside a spectral gamut spanned by a set of candidate inks. If there exists a linear color

mixing space that approximates the color formation of the employed halftone printing

process, then it is possible to select the most significant set of four inks through regression

or select the most significant set of four inks with the minimum reconstructing error in the

linear color mixing space. It is of great interest to derive a linear color mixing space for a

halftone printing process utilized by the experiment.

1. Deriving a linear color mixing transformation for a halftone printing process

Although the derivation of the linear color mixing space for halftone printing process has

been shown in Chapter V, it is described here again for the completeness of this chapter.

First, it should agree with subtractive color mixing. Second, the dimensionality should

coincide with the number of primaries to span the spectral gamut in the resultant mixing

space. The transformation and its inverse transformation for halftone color are empirically

derived as

Ψλ λ λ= −R Rpaperw w,

1 1

and (7-17)

R R paperw w

λ λ λ= −( ),

1

Ψ , (7-18)

respectively, where the Rλ,paper is the spectral reflectance factor of the paper substrate

being printed on by primary inks and 2 ≤ w ≤ ∞. The transformation of reflectance factor

to the empirically derived space is somewhat different from Eq. (3-6) since Eq. (3-6) is

Page 191: spectral-based color separation algorithm development - CiteSeer

171

derived for opaque colorants. Whereas, they have basically the same structure, one offset

vector accounting for subtractive color mixing and a higher order power to account for

the nonlinearity. The use of R paperwλ ,

1

as the offset vector has a significant meaning.

Consider that transforming a spectrum, which is exactly Rλ,paper, to the linear color mixing

space, the result is a zero vector. This corresponds to the fact that there is not any primary

presented in the linear space. Furthermore, Eq. (7-18) transforms a zero in the linear space

back to the exact reflectance spectrum of the paper, Rλ,paper.

2. Selecting the most significant four primaries from the defined six-colors inkset

The next step is to set up a regression model using the linear color mixing space to

determined the suitable set of three chromatic primaries by constraining on the absolute

existence of black ink for a given input spectral image pixel by pixel. One can utilize any

statistical software with a stepwise option to remove the two least significant chromatic

inks out of five. Whereas, for a robust process, it is suggested to try all the ten

combinations of a set of four primaries, which are partitioned by the proposed method

described in the section of sub-division of six color modeling, for a given pixel. The set

with the least spectral error reconstruction is the candidate for the particular pixel.

Backward Printing Models for Six-Color Separation Minimizing Metamerism

The last component for the proposed six-color separation algorithm, which

minimizes the metamerism between a given input spectral image and its spectral

reproduction, is to estimate the set of theoretical dot areas corresponding to each pixel.

Page 192: spectral-based color separation algorithm development - CiteSeer

172

The estimated theoretical dot areas will be stored as six separation records corresponding

to each primary ink. To accomplish this, a backward printer model needs to be derived.

Since it is not possible to analytically invert the forward printing model, the most feasible

approach is to numerically invert the forward printing model. Thus, the backward six-

color printing model is comprised of the proposed six-color forward spectral halftone

printing model and a optimization module using the Simplex or Newton-Raphson iterative

method to estimated a set of optimal theoretical dot areas which minimizes metamerism

pixel by pixel between an input spectral image and it reproduction. For this prototypical

research, the constrained optimization function in the optimization toolbox of MATLAB is

utilized for the numerical engine. The structure of the six-color backward spectral printing

model is depicted in Fig. 7-9.

In Fig. 7-9, those modules inside the dashed box construct the proposed six-color

forward spectral halftone printing model. Outside the dashed box, the process is handled

by a numerical optimization engine. The process of spectral-based six-color separation

starts from a given reflectance spectrum depicted as an input module located at the lower

left corner. The proper four inks for reproducing an input spectrum are determined by the

four-ink selector. Then, the optimization initializes a set of theoretical dot areas, which are

the concentrations estimated in the linear color mixing space, corresponding to the

selected four inks in the throughput processes for estimating the reconstructed spectrum,

that is the output of the forward model and located at the lower right corner. The decision

Page 193: spectral-based color separation algorithm development - CiteSeer

173

module in the diamond box located in the lower center then compares the input and output

spectra at this iteration stage. If the spectral reconstruction satisfies the error criteria then

output the set of theoretical dot areas at current iteration stage and terminate the iteration.

If not, the following module located near the input module decides and feeds back the

modification of the set of theoretical areas for the next iteration.

f(c, m, y,k) Nλ,n(c’, m’, y’, k’)c’m’ y’k’

Second OrderImprovement

f(c, m, g,k) Nλ,n(c’, m’, g’, k’)c’m’ g’k’

f(c, m, o,k) Nλ,n(c’, m’, o’, k’)c’m’g’k’

f(c, y, g, k) Nλ,n(c’, y’, g’, k’)c’y’g’k’

f(c, y,o, k) Nλ,n(c’, y’, o’, k’)c’y’o’k’

f(c, g,o, k) Nλ,n(c’, g’,o’, k’)c’g’o’k’

f(m,y,g, k) Nλ,n(m’, y’, g’, k’)m’y’g’k’

f(m,y,o, k) Nλ,n(m’, y’, o’, k’)m’y’o’k’

f(m,g,o, k) Nλ,n(m’, g’, o’, k’)m’g’o’k’

f(y,g,o, k) Nλ,n(y’,g’, o’, k’)y’g’o’k’

Four-InkSelector

Rλ,sample

cmyk

cmgk

cm k

cygk

cyok

cgok

mygk

myok

mgok

ygok

InitialTheoreticalDot Area

(optional)

Rλ,estimated

ChangeTheoreticalDot Area

No

Output the CurrentTheoretical Dot Area

Yes

Minimum Spectral Error orMinimum Four Tristimulus Error

Six-Color Forward Spectral Halftone Printing Model

Effective Dot Areas

Fig. 7-9: The structure of the six-color backward spectral printing model using cyan,magenta, yellow, green, orange and black ink as printing primaries.

Page 194: spectral-based color separation algorithm development - CiteSeer

174

Initially, the optimization criteria is to minimize the spectral error. If the spectral

minimization yields unsatisfactory accuracy, then the optimization pursues to balance

between spectral and colorimetric accuracy. Because the six-color forward spectral

printing model is composed by ten forward four-color sub-models, the optimization

criteria for balancing between spectral and colorimetric accuracy is to minimize the total

error of four tristimulus values. The four tristimulus values are obtain by the tristimulus

values under standard viewing illumant such as D50 for printing industry. Then, the fourth

value is the X value calculated under second standard viewing illumant such as A, based

on the research by Allen (1980).

C. EXPERIMENTAL AND VERIFICATION

In order to verify the proposed algorithm in building a six-color spectral halftone

printing model, the current research utilized the DuPont Waterproof® system to represent

a halftone printing process. The standard cyan (C), magenta (M), yellow (Y), black (K),

green (G), and orange (O) designed for DuPont Waterproof® system were advised to be

used as the six printing primaries for a stable proofing process. The choice, which was an

arbitrary decision, of these colors was not defined by the optimal inkset selection

algorithm since a spectral image was not given. Although the six primaries were not

defined by the optimal inkset selection algorithm, the development of the six-color spectral

printing model is independent from any of previous colorant estimation, optimal inkset

Page 195: spectral-based color separation algorithm development - CiteSeer

175

selection, and overprint prediction modules. Thus, this research assumes that the usage of

the six primaries is independent from the proposed algorithms developed for a general

spectral-based six-color printing system. The spectral reflectance factors of the printed six

primaries and the paper substrate (100# Vintage Gloss Text) are plotted in Fig. 7-10.

4 0 0 4 5 0 5 0 0 5 5 0 6 0 0 6 5 0 7 0 00

0 .1

0 .2

0 .3

0 .4

0 .5

0 .6

0 .7

0 .8

0 .9

1

W a ve le ng th

Re

flec

tan

ce

fa

cto

r

C ya nM a gen taYe llowG ree nO rangeB la c kS ubs tra te

Fig. 7-10: The reflectance spectra of the printed six primaries and substrate.

Sample Preparation

Usually, modeling of halftone printing process requires a set of ramps including

primary secondary, tertiary, quaternary,…, and so forth and a verification target

representing the device gamut. Since this research aims at developing a six-color printing

system, the preparation for each printed sample patch utilized FM screening to avoid

moiré patterns. The screen frequency was chosen at 175 LPI resolution or equivalent (the

Page 196: spectral-based color separation algorithm development - CiteSeer

176

resolution of stochastic screening can not be represented in units of LPI) to account for

the most common condition for practical use.

1. Preparation for ramps

Each ramp was printed at 5%, 10%, 15%, 20%, 30%, 40%, 50%, 60%, 70%,

80%, 90%, and 100% theoretical dot areas. For a four-color halftone printing process,

there are secondary (two-ink overprints), tertiary (three-ink overprints), and quaternary

(four-ink overprints). Although this research used six primary inks for halftone

reproduction, the approach to reproduce an input color (spectrally) is limited to use three

chromatic and one black inks for synthesis. Therefore, five-ink and six-ink overprints were

not generated in the six-color printing process. The overprints are categorized by their

number of inks and listed as follows. There were fifteen two-ink overprint combinations

(C(6,2)) selecting two inks out of six. They were CM, CY, CG, CO, CK, MY, MG, MO,

MK, YG, YO, YK, GO, GK, and OK. There were twenty three-ink overprint

combinations (C(6,3)) selecting three inks out of six. They were CMY, CMG, CMO,

CMK, CYG, CYO, CYK, CGO, CGK, COK, MYG, MYO, MYK, MGO, MGK, MOK,

YGO, YGK, YOK, and GOK. There were ten four-ink overprint combinations (C(5,3))

selecting three chromatic inks out of five plus one black due to the constraint mentioned

previously. They are CMYK, CMGK, CMOK, CYGK, CYOK, CGOK, MYGK, MYOK,

MGOK, and YGOK.

2. Preparation of the verification target (5x5x5x5 combinatorial design for mixtures)

Page 197: spectral-based color separation algorithm development - CiteSeer

177

Again, the constraint is to use black and three chromatic inks to reproduce each

pixel from a spectral image. The six-color halftone printing model can be viewed as a

super set of several sets of four-color halftone models. In this case, there were ten subsets

of four-color halftone models. They are CMYK, CMGK, CMOK, CYGK, CYOK,

CGOK, MYGK, MYOK, MGOK, and YGOK. There were 625 combinations for each

subset, the 5x5x5x5 combinatorial design of mixtures modulated by five different

fractional dot areas. To printing the 625 mixtures for CMYK sub-model, twenty-five

samples were printed on paper by varying the theoretical dot areas of cyan and magenta

inks at the 0% of yellow and 0% of black ink. This printing procedure was repeated 25

times by varying the yellow and black inks at five different fractional dot areas ( 0%, 25%,

50%, 70%, and 90%). Since there are ten sets of four-ink combinations to compose the

proposed six-color model, the total number of samples was 6,250 for the 5x5x5x5

combinatorial design.

3. Sample measurements

Samples were measured using a Gretag Spectrolino, whose sampling geometry is

0/45, with automatic station to obtain reflectance spectra. The adopted spectral range was

from 400 nm to 700 nm at 10 nm intervals. The spectral data of ramps (total 612 patches)

were obtained by the average of four measurements on each patch. Due to the large

number of patches of the verification target (total 6,250), the spectral data of each patch

were only measured once.

Page 198: spectral-based color separation algorithm development - CiteSeer

178

4. Accuracy metric

The colorimetric accuracy was specified by the CIE94 color difference equation

for standard illuminant D50 and 1931 standard observer. The spectral accuracy was

specified by a metamerism index which is quantified by the CIE94 color difference

equation for standard illuminant A and 1931 standard observer after a parameric

correction.

Determining the Yule-Nielsen n-Factor

Performing the estimation using the algorithm outlined in Fig. 7-3, the n-factor was found

to be 2.2 for this set of six-primary ramps. The mean colorimetric accuracy, specified in

units of ∆E*94, in predicting all 72 samples of the six primary ramps against different n

values is plotted in Fig. 7-11. With n = 2.2, the colorimetric and spectral accuracy is listed

in Table 7-3 and the reconstructed spectra for each primary ramp are plotted in Fig. 7-12.

1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 30.2

0.4

0.6

0.8

1

1.2

1.4

1.6

n-factor

Me

an

De

lta E

94

und

er

D5

0

Fig. 7-11: The mean prediction accuracy of all 72 samples of the six primary ramps asfunction of n-factor.

Page 199: spectral-based color separation algorithm development - CiteSeer

179

Table 7-3: The colorimetric and spectral accuracy of n = 2.2 in predicting all 72 samplesof the six primary ramps where Stdev stands for the standard deviation and RMSrepresents the root-mean-square error in unit of reflectance factor.

∆E*94 Metamerism Index

Mean 0.27 0.04Stdev 0.28 0.05Max 1.42 0.20Min 0.00 0.00RMS 0.005

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1C yan ra m p

Re

fle

cta

nc

e

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1M a g e nta ra m p

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1Ye llo w ra m p

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1G re e n ra m p

W a ve le ng th

Re

fle

cta

nc

e

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1W a rm re d (o ) ra m p

W a ve le ng th

4 0 0 5 0 0 6 0 0 7 0 00

0 .2

0 .4

0 .6

0 .8

1B la ck ra m p

W a ve le ng th

Fig. 7-12: The measured and the predicted reflectance spectra by Eqs. (7-3) and (2-33)using n = 2.2 where the solid lines are measured spectra and the dashed lines are the

predicted spectra.

Page 200: spectral-based color separation algorithm development - CiteSeer

180

First, Fig. 7-12 provides a visual confirmation for the spectral prediction using n = 2.2.

Second, from Table 7-3 the mean and maximum colorimetric errors in predicting the

primary ramp are 0.27 and 1.4 unit of ∆E*94, respectively. Their low mean and maximum

metamerism index as well as low RMS error indicate that the determined Yule-Neilsen n-

factor was optimal for the primary ramp prediction. This n-factor (n = 2.2) will be used as

the optimal parameter to the construction of the six-color spectral halftone printing model

for this particular printing process.

Accuracy of the First-Order Six-Color Forward Printing Model

By adopting n = 2.2, the theoretical to effective dot area transfer function, f( ), for

each primary ramp was attained by discretely sampling at the effective dot area forming

continuous transfer functions using cubic spline interpolation. The theoretical to effective

dot area transfer functions for the six primaries are plotted in Fig. 7-13.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Theoretical dot area

Effe

ctiv

e do

t are

a

CyanMagentaYellowGreenOrangeBlack

Fig. 7-13: The theoretical to effective transfer functions of the six primaries.

Page 201: spectral-based color separation algorithm development - CiteSeer

181

The performance of the first order forward halftone printing model in predicting the 6,250

samples of the verification target is specified in Table 7-4 and the histogram of the

colorimetric accuracy is plotted in Fig. 7-14.

Table 7-4: The colorimetric and spectral accuracy of the first order forward model inpredicting the 6,250 samples of the verification target.

∆E*94 Metamerism Index

Mean 1.95 0.22Stdev 1.51 0.22Max 9.7 1.58Min 0.00 0.00RMS 0.008

0 1 2 3 4 5 6 7 8 9 1 00

5 0 0

1 0 0 0

1 5 0 0

2 0 0 0

2 5 0 0

D e lta E 9 4

Fre

qu

en

cy

Fig. 7-14: Histogram of the colorimetric performance using the first-order forwardprinting model in predicting the 6,250 samples of the verification target.

Page 202: spectral-based color separation algorithm development - CiteSeer

182

Observing the accuracy with an average ∆E*94 =1.95 and the histogram of color

differences for the verification target, the first impression of this model is that it is quite

capable to describe the color formation of the Waterproof® system since the most of

samples (approximately 4,000 samples) can be matched under two units of ∆E*94.

Nevertheless, there are still about 824 samples which were predicted with colorimetric

error higher than four units of ∆E*94. As Iino and Berns suggested, these prediction errors

are mainly due to the overestimating effective dot areas, thereby, under predicting the

spectral reflectance factors. On account of the non ideal ink and optical trapping, the

effective dot areas were actually smaller than that estimated by the first-order

approximation since it does not these the trapping factors into account. Since the printing

device used for this verification generates samples similar to Matchprint, the ink-trapping

ability is assumed to be ideal; thus the influence is mainly referred to as optical-trapping.

The visual evidence of overestimating the effective dot areas leading to the under

prediction of reflectance factors can be provided by the vector plot of the L* vs. a*, shown

in Fig. 7-15. Due to the large number of data (6,250), it only shows the vector plots of the

100 predicted samples with the highest colorimetric errors. As pictured by Fig. 7-15, the

trend of the predicted L* indicates the over estimation of effective dot areas. Another

visual aid, Fig. 7-16, shows that the four estimated samples with large prediction errors

have been reproduced with lower reflectance factors.

Page 203: spectral-based color separation algorithm development - CiteSeer

183

0

10

20

30

40

50

60

70

-50 -40 -30 -20 -10 0 10 20 30 40 50

L*

a*

Fig. 7-15: The vector plot of the 100 predicted samples with the highest colorimeric errorsby the first-order forward model. The vector tail represents the measured coordinate and

the vector head represents the prediction.

4 00 4 50 5 00 5 50 6 00 6 50 7 000 .02

0 .04

0 .06

0 .08

0 .1

0 .12

0 .14

Re

flec

tan

ce

fa

cto

r

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .02

0 .04

0 .06

0 .08

0 .1

M e a s uredPre dic te d

4 00 4 50 5 00 5 50 6 00 6 50 7 000

0 .05

0 .1

0 .15

0 .2

W a ve le ng th

Re

flec

tan

ce

fa

cto

r

4 00 4 50 5 00 5 50 6 00 6 50 7 000 .02

0 .04

0 .06

0 .08

0 .1

0 .12

0 .14

0 .16

W a ve le ng th

Fig. 7-16: Four example spectra showing under prediction by the first order model.

Page 204: spectral-based color separation algorithm development - CiteSeer

184

Second-Order Modification (By Iino and Berns' Suggestion)

Iino and Berns' algorithms were implemented to estimate the colorimetric and

spectral performance in predicting the verification target of 6,250 mixtures. This second-

order printer model required determining the dot-gain correction scalar, q, as a function of

theoretical dot area, mentioned previously. The database for modeling q was obtained

from some of the samples in the verification target with the exact theoretical dot area

combinations. For example, to determine the fc_m described in Eq. (7-9), the five samples

with the theoretical dot area combinations for cyan = 50% and magenta = 0%, 25%, 50%,

70%, and 90% were selected and cubic spline was employed to interpolate the data in

between. The sample of cyan = 50% and magenta = 100% was not included at the

beginning of designing the verification target. Hence, the corresponding fc_m(am=100%) was

extrapolated. Since the designed verification target does not include this sample, the

effectiveness or the validity of the extrapolation will not affect the verification accuracy.

There are 12 fi_j functions determined for each four-color sub-model. Three of the

example fi_j functions, fc_m, fc_y, and fc_k, determined for the CMYK sub-model is shown

in Fig. 7-17. In Iino and Berns' article, the fi_j functions are second-order polynomials

since those function were found to be monotonically decreasing by their experiment.

Whereas, the fi_j functions, shown in Fig. 7-17, were not monotonic. This indicates that

the two-dimensional dot gain surface of two-ink mixtures were not smooth and

monotonically decreasing for the Waterproof® samples. It was suspected that this

Page 205: spectral-based color separation algorithm development - CiteSeer

185

discrepancy is not caused by different printing systems but the halftone screening shcemes.

That is, the regular dot pattern generated by the conventional rotated-screen (utilized by

Iino and Berns) has smoother dot gain characteristic, whereas, the stochastic dot pattern

(utilized by this research) has relatively irregular dot gain behavior.

0 0 .1 0 .2 0 .3 0 .4 0 .5 0 .6 0 .7 0 .8 0 .9

0 .85

0 .9

0 .95

1

Theore tica l do t a re a

q

fcm

fcy

fck

Fig. 7-17: The three example functions of dot-gain correction scalar determined forCMYK sub-model based on Iino and Berns' algorithms.

After the determination of all q functions the correction scalar for each primary,

qc, qm, qy, qg, qo, and qk, were calculated by Eq. (7-9) for each theoretical dot area

combination. Colorimetric and spectral accuracy, shown by Table 7-5, was estimated and

the histogram of colorimetric errors is shown in Fig. 7-18.

Page 206: spectral-based color separation algorithm development - CiteSeer

186

Table 7-5: The colorimetric and spectral accuracy in predicting the verification of 6,250sample by the algorithms suggested by Iino and Berns.

∆E*94 Metamerism Index

Mean 1.93 0.32Stdev 1.41 0.32Max 9.79 2.41Min 0.00 0.00RMS 0.008

0 1 2 3 4 5 6 7 8 9 1 00

2 0 0

4 0 0

6 0 0

8 0 0

1 0 0 0

1 2 0 0

1 4 0 0

1 6 0 0

1 8 0 0

2 0 0 0

D e lta E 9 4

Fre

qu

en

cy

Fig. 7-18: Histogram of the colorimetric error in units of ∆E*94 for the 6,250 samples

predicted by Iino and Berns' algorithms.

At first glance, the performance of this second-order modification seems not

significantly different from that of the first-order printing model due to the similar average

and maximum values. However, in predicting the large number of samples, the standard

Page 207: spectral-based color separation algorithm development - CiteSeer

187

deviation and histogram of ∆E*94 should be examined and compared. The Iino and Berns

model performed with a smaller standard deviation of colorimetric errors. Furthermore, it

improves the first-order printing model by lowering the number of high colorimetric errors

above 4 units of ∆E*94 from 824 to 507 samples. This can be visually confirmed by

comparing the histograms in Figs. 7-14 and 7-18. The vector plot , shown in Fig. 7-19, of

L* vs. a* for the exact same 100 samples, plotted in Fig. 7-15, indicates that this second-

order modification significantly reduced the lightness errors relative to the first- order

model.

0

10

20

30

40

50

60

70

-40 -30 -20 -10 0 10 20 30 40

L*

a*

Fig. 7-19: The vector plot of L* vs. a* for the 100 samples used as examples in Fig. 7-15predicted by Iino and Berns' algorithms.

Page 208: spectral-based color separation algorithm development - CiteSeer

188

The spectral predictions of the four samples used as examples are Fig. 7-16 is

depicted in Fig. 7-20. Compared with Fig. 7-16, the spectral predictions are significantly

improved. Based on this analysis, it is concluded that the Iino and Bern algorithms

significantly corrects the under prediction of mixtures due to optical-trapping. However,

given that the average predicted colorimetric error is similar to that of the first- order

prediction, the other alternative second-order improvements need to evaluated. Hopefully,

one of these will yield high colorimetric and spectral accuracy.

400 450 500 550 600 650 7000

0.05

0.1

0.15

Re

flect

anc

e fa

cto

r

400 450 500 550 600 650 7000

0.02

0.04

0.06

0.08

0.1

MeasuredPredicted

400 450 500 550 600 650 7000

0.05

0.1

0.15

0.2

Wavelength

Re

flect

anc

e fa

cto

r

400 450 500 550 600 650 7000

0.05

0.1

0.15

0.2

Wavelength

Fig. 7-20: The spectral predictions of the four example samples used as examples in Fig.7-16 by the Iino and Berns' algorithms.

Page 209: spectral-based color separation algorithm development - CiteSeer

189

Alternative Second-Order Modification (Proposed Algorithm)

This proposed alternative second-order modification attacks the (ink and) optical

trapping from the stand point of modeling the optical-trapping of primary-secondary

interactions under the assumption of average influence of a secondary ink presenting at

50% theoretical dot area. To determine the gm_c described in Eq. (7-14), the five samples

with the theoretical dot area combinations for magenta = 50% and cyan = 0%, 25%, 50%,

70%, and 90% were selected and cubic spline was employed to interpolate the data in

between. The sample of magenta = 50% and cyan = 100% was not included at the

beginning of designing the verification. Hence, the corresponding gm_c(ac=100%) was set to

one since there will be no dot-gain for cyan at 100% theoretical dot area. There are 12 q

functions determined for each four-color sub-model. Three of the example q functions,

gm_c, gy_c, and gk_c, determined for the CMYK sub-model are shown in Fig. 7-21. One

logical consideration using Eq. (7-14) is worth mentioning. Consider a set of the

theoretical dot areas with ac = t%, am = 0%, ay = 0%, ak = 0%, the corresponding

correction scalar for each primary should be 0 ≤ qc ≤ 1, qm = 1, qy = 1, and qk = 1 where

0 ≤ t ≤ 100. That is, when a sample is exactly a primary color, there is no correction scalar

needed for its dot gain determined by the first-order theoretical to effective dot area

transfer function, f( ). Whereas, if Eq. (7-14) is utilized without modification then the qc in

Eq. (7-14), being a product of gm_c, gy_c, and gk_c, will yield correction when cyan appears

alone. This error also is encountered for two or three primary mixtures. To be more

Page 210: spectral-based color separation algorithm development - CiteSeer

190

specific, Table 7-6 shows some samples' theoretical dot areas and their correction scalars

for each ramp using Eq. (7-14) without logical operator correction.

0 0 .1 0 .2 0 .3 0 .4 0 .5 0 .6 0 .7 0 .8 0 .90 .7

0 .7 5

0 .8

0 .8 5

0 .9

0 .9 5

1

T he o re ti c a l d o t a re a

q

gm c

gy c

gk c

Fig. 7-21: The three example functions of dot-gain correction scalar determined forCMYK sub-model based on proposed algorithms.

Table 7-6: The theoretical dot areas and their correction scalar by Eq. (7-14) withoutlogical correction.

ac am ay ak qc qm qy qk

0 0 0 0 1 1 1 10.25 0 0 0 0.260 1 1 10.5 0 0 0 0.470 1 1 10.7 0 0 0 0.645 1 1 10.9 0 0 0 0.477 1 1 10 0.25 0 0 1 0.346 1 1

0.25 0.25 0 0 0.260 0.346 1 10.5 0.25 0 0 0.470 0.346 1 10.7 0.25 0 0 0.645 0.346 1 10.9 0.25 0 0 0.477 0.346 1 1

Page 211: spectral-based color separation algorithm development - CiteSeer

191

It can be seen that the first five samples are pure cyan at different dot areas. Their

correction scalars, qcs are not unity as expected, i. e., no correction is needed for its dot

gain. Hence, a logical modification is required to rectify this error. The logical

modification was derived by

g'i_j = gi_j.*{[(1./g i_j).*(~atheo,i)]+(~~atheo,i)} , (7-19)

where .* and ./ are the vector-matrix componentwise multiplication and division,

respectively, and ~ is a logical "not" operator (MATLAB, 1996). It will be shown by

example when applying the logical modification, Eq. (7-19), to the correction scalar, q, for

each ramp. It turns out that the logical modification is needed only when the secondary is

present. Let i be m and j be c, thus c is assumed as primary and m is assumed as

secondary.

Case 1: if atheo,m is zero then ~atheo,m = 1 and ~~atheo,c = 0. This dot area combination

indicates the samples are cyan ramp along. Using Eq. (7-19) results in

g'm_c(atheo,c) = gm_c(atheo,c).*{[(1./g m_c(atheo,c)).*(~atheo,m)]+(~~atheo,m)}= gm_c(atheo,c).*{[(1./g m_c(atheo,c)).*(1)]+(0)}= gm_c(atheo,c).*[1./gm_c(atheo,c)] = 1.

Case 2: If atheo,m is nonzero then ~atheo,m = 0 and ~~atheo,c = 1. Using Eq. (7-19) results in

g'm_c(atheo,c) = gm_c(atheo,c).*{[(1./g m_c(atheo,c)).*(~atheo,m)]+(~~atheo,m)}= gm_c(atheo,c).*{[(1./g m_c(atheo,c)).*(0)]+(1)}= gm_c(atheo,c).*(0 + 1) = gm_c(atheo,c).

That is, the dot-gain correction scalars are not changed when a secondary is present.

Page 212: spectral-based color separation algorithm development - CiteSeer

192

Table 7-7 shows the theoretical dot areas and the corresponding correction scalar

for each ramp of the same samples shown in Table 7-6 after logical correction. After

logical modification the first five samples, which are cyan primaries printed at different

areas, have the correct corresponding correction scalars, qc, of unity. The rest of

correction scalars for none-appearing secondaries are all one as expected. In addition, the

sixth through tenth samples, which are cyan and magenta mixtures, whose correction

scalars for the cyan ramp are different from the correction scalars for the cyan ramp in

Table 7-6, neither for the magenta ramp. Hence, the logical error is dramatically affecting

the accuracy of the dot-gain correction scalar, q, for the proposed algorithms. (It was

investigated to see if Iino and Berns' algorithms also required logical modification for dot-

gain correction scalar. It was found that the dot-gain correction scalar for each primary by

Eq. (7-9) was invariant with this logical modification.)

Table 7-7: The theoretical dot areas and their correction scalar by Eq. (7-14) with logicalcorrection.

ac am ay ak qc qm qy qk

0 0 0 0 1 1 1 10.25 0 0 0 1 1 1 10.5 0 0 0 1 1 1 10.7 0 0 0 1 1 1 10.9 0 0 0 1 1 1 10 0.25 0 0 1 1 1 1

0.25 0.25 0 0 0.848 0.856 1 10.5 0.25 0 0 0.960 0.856 1 10.7 0.25 0 0 0.992 0.856 1 10.9 0.25 0 0 0.977 0.856 1 1

Page 213: spectral-based color separation algorithm development - CiteSeer

193

The colorimetric and spectral accuracy of the proposed algorithms in predicting

the 6,250 samples is listed in Table 7-8 and the histogram is plotted in Fig. 7-22.

Table 7-8: The colorimeric and spectral accuracy of the proposed algorithms in predictingthe verification target of 6,250 sample mixtures.

∆E*94 Metamerism Index

Mean 1.44 0.22Stdev 1.16 0.25Max 7.59 1.75Min 0.00 0.00RMS 0.006

0 1 2 3 4 5 6 7 80

5 0 0

1 0 0 0

1 5 0 0

2 0 0 0

2 5 0 0

D e lta E 9 4

Fre

qu

en

cy

Fig. 7-22: Histogram of the colorimeric accuracy of the proposed algorithms in predictingthe verification target of 6,250 sample mixtures.

Page 214: spectral-based color separation algorithm development - CiteSeer

194

Table 7-8 reveals that the average and maximum colorimetric errors are 1.44 and 7.59

∆E*94, respectively. In addition, it also indicates that the majority of sample mixtures can

be reproduced with lower colorimeric errors by the proposed algorithms given the tight

standard deviation. There are only 251 as opposed to 507 (by Iino and Berns'

modification) or 824 (by the first order prediction) samples predicted with higher than four

units of ∆E*94. Colorimetrically, this is a significant improvement. The spectral accuracy

specified by the low average metamerism index indicates that the verification target is

spectrally well predicted for all three models discussed so far. Performance of spectral

prediction for all three models is not significantly different judging by the statistical results

of the metamerism index. The L* vs. a* and the four predicted sample spectra used for the

previous example are plotted in Figs. 7-23 and 7-24, respectively.

0

10

20

30

40

50

60

70

-40 -30 -20 -10 0 10 20 30 40

L*

a*

Fig. 7-23: The vector plot of L* vs. a* for the 100 samples used as examples in Fig. 7-15predicted by the proposed algorithms.

Page 215: spectral-based color separation algorithm development - CiteSeer

195

At first glance of Figs 7-23 and 7-24, the proposed algorithms tend to over predict the

spectral reflectance factors or under estimate the effective dot areas for low lightness

mixtures. Although the colorimetric and the spectral performance of the proposed

algorithm is considered as superior, the appearance of the spectral matches shown by Fig.

7-24 is disappointing.

400 450 500 550 600 650 7000

0.05

0.1

0.15

0.2

Re

flect

anc

e f

ac

tor

400 450 500 550 600 650 7000

0.05

0.1

0.15

400 450 500 550 600 650 7000

0.05

0.1

0.15

0.2

W avelength

Re

flect

anc

e f

ac

tor

400 450 500 550 600 650 7000

0.05

0.1

0.15

0.2

W avelength

Fig. 7-24: The spectral prediction of the four samples used as examples in Fig. 7-16 by theproposed algorithms.

By comparing at the L* vs. a* vector plots of Figs 7-21 and 7-13, it was found that

the prediction trend by the proposed algorithms is approximately opposite to that of the

first-order prediction. Thus, it was hypothesized that the accurate estimation of effective

Page 216: spectral-based color separation algorithm development - CiteSeer

196

dot areas linearly lies between the estimation by the proposed algorithms and by the first

order prediction. With this observation, the final estimation of effective dot area, aeff,est is

modified by a linear combination of aeff,proposed and aeff,1st, i. e.,

aeff,est = taeff,proposed + (1-t)aeff,1st , (7-20)

where t is a linear scalar and 0 ≤ t ≤ 1, aeff,proposed is the effective dot area estimated by the

proposed algorithm, and aeff,1st is the effective area estimated by the first order printing

model. Equation (7-20) can be expressed as Eq. (7-21) based on Eq. (7-10),

aeff,est = t(atheo + q(aeff,primary - atheo,primary)) + (1-t)aeff,1st . (7-21)

It was found that best spectral prediction by Eq. (7-20) occurred when t = 0.62. The

colorimetric and spectral performance of the proposed algorithms modified by Eq. (7-20)

in predicting the verification target is shown in Table 7-9 and the histogram of the

colorimetric error is plotted in Fig. 7-25. The implementation for the six-color forward

printing model based on the proposed algorithm is shown in Appendix E.

Table 7-9: The colorimeric and spectral accuracy of the proposed algorithms modified byEq. (7-20) in predicting the verification target of 6,250 sample mixtures.

∆E*94 Metamerism Index

Mean 0.90 0.10Stdev 0.75 0.10Max 6.06 1.19Min 0.00 0.00RMS 0.004

Page 217: spectral-based color separation algorithm development - CiteSeer

197

0 1 2 3 4 5 6 70

50 0

10 00

15 00

20 00

25 00

30 00

D elta E 94

Fre

qu

enc

y

Fig. 7-25: Histogram of the colorimeric accuracy of the proposed algorithms modified byEq. (7-20) in predicting the verification target of 6,250 sample mixtures.

The modification by Eq (7-20) yielded excellent accuracy improvement in predicting the

6,250 samples judged by the statistical results of colorimetric and spectral error. It also

rectifies the problem of over prediction of spectral reflectance factors for low L* samples.

Visual evidence is provided by the vector plot, shown in Fig. 7-26, of L* vs. a*, L* vs. b*,

and b* vs. a* for the 300 samples whose colorimetric error is predicted higher than 2.41

units of ∆E*94.

Page 218: spectral-based color separation algorithm development - CiteSeer

198

Fig. 7-26: The vector plot of L* vs. a*, L* vs. b*, and b* vs a* for the 300 samples whosecolorimetric error is predicted higher than 2.41 units of ∆E*94.

Observing Fig. 7-26, lightness errors of the reproduction are dramatically reduced.

There are only three to four samples with large lightness errors and two to three with large

0

10

20

30

40

50

60

70

80

90

100

-60 -40 -20 0 20 40 60

L*

a*

0

10

20

30

40

50

60

70

80

90

100

-60 -40 -20 0 20 40 60

L*b*

-60

-40

-20

0

20

40

60

-60 -40 -20 0 20 40 60

b*

a*

Page 219: spectral-based color separation algorithm development - CiteSeer

199

chromatic errors. The rest of sample are predicted with low colorimetric error. Recall that

Fig. 7-26 represents the 300 samples predicted with higher colorimetric error. Thus, the

proposed algorithm together with the modification Eq. (7-20) provided the best

performance second-order printing model for this research project. The spectral prediction

for the four samples used as examples in Fig. 7-16, shown in Fig. 7-27, reflects this

superiority.

400 450 500 550 600 650 7000

0 .05

0 .1

0 .15

Re

flec

tan

ce

fa

cto

r

4 00 450 500 550 600 650 7000

0 .02

0 .04

0 .06

0 .08

0 .1

Mea suredPredic ted

400 450 500 550 600 650 7000

0 .05

0 .1

0 .15

0 .2

W ave leng th

Re

flec

tan

ce

fa

cto

r

4 00 450 500 550 600 650 7000

0 .05

0 .1

0 .15

0 .2

W ave leng th

Fig. 7-27: The spectral prediction by the proposed algorithms modified by Eq. (7-20) forthe four samples used as examples in Fig. 7-16.

Modeling by Matrix Transformation

A modeling method was evaluated by directly relating a set of theoretical dot areas

of a multi-ink mixture to the corresponding set of effective dot areas estimated by

Page 220: spectral-based color separation algorithm development - CiteSeer

200

inverting the Yule-Nielsen modified spectral Neugebauer equation. This requires a large

sample database to represent major sample behavior. Hence, its accuracy relies on the size

of database. Since the theoretical dot area is nonlinearly related to the effective dot area

due to the mechanical dot-gain, optical dot-gain, and ink and optical trapping, a direct

linear transformation using Eq. (7-15) is not possible. Hence, this research project

implemented a higher-order polynomial regression using Eq. (7-16) seeking the matrix

relationship between the theoretical and effective dot areas. It was found that the order of

the polynomial matrix should be higher than four to achieve the similar accuracy predicted

by the proposed algorithms. The process of the six-color modeling by matrix method is

similar to the structure of the six-color forward printing model depicted in Fig. 7-9. The

only difference is that the ten theoretical to effective dot area transfer functions, f( )s, and

the second order improvements are replaced with ten matrices for each four-color sub-

model. The fourth order polynomial matrix, as the input to the matrix transformation, for

each four-color sub-model was implemented with 27 terms to account for any of

nonlinearity between the theoretical and effective dot area.

This research project investigated the matrix method in predicting the verification

of 6,250 samples. Its colorimetric and spectral accuracy is shown Table 7-10 and the

histogram of the predicted colorimetric errors is plotted in Fig. 7-28.

Page 221: spectral-based color separation algorithm development - CiteSeer

201

Table 7-10: The colorimetric and spectral performance of the verification target predictedby the matrix method.

∆E*94 Metamerism Index

Mean 1.66 0.20Stdev 1.39 0.21Max 14.08 3.04Min 0.02 0.00RMS 0.012

0 2 4 6 8 10 12 140

500

1000

1500

2000

2500

3000

3500

4000

D e lta E 94

Fre

qu

en

cy

Fig. 7-28: Histogram of the colorimeric accuracy of the matrix method in predicting theverification target of 6,250 sample mixtures.

From Table 7-10 and Fig. 7-28, the performance of the matrix method is not a favorable

approach relative to the proposed algorithms in predicting the verification target.

Furthermore, it requires a relatively large sample database to explain the color mixing of a

Page 222: spectral-based color separation algorithm development - CiteSeer

202

halftone printing process. Furthermore, the estimated effective dot area obtained by the

matrix method sometime is a negative value leading to a non-rational synthesis by Yule-

Nielsen modified spectral Neugebauer equation. Hence, the matrix method is not adopted

by the research development of six-color separation minimizing metamerism.

Six-Color Separation Minimizing Metamerism

It was desired to verify the validity of the backward printing model which is

comprised by a four-ink selector, a forward printing model, and a numerical engine. The

proposed algorithms modified by Eq, (7-20) were utilized as the forward printing model

since it has the best accuracy for the Waterproof® system. This research project chose the

Gretag Macbeth Color Checker as a separation target and tried to reproduce the spectrum

for each color with minimal metamerism. Owing to the original spectral image (the Gretag

Macbeth Color Checker) was unavailable, the use of CMYGOK as printing primaries was

not a decision from the optimal inkset selection module. Hence, some of color spectra may

be outside the spectral gamut of the developed six-color spectral printing model using the

Waterproof® system. Nevertheless, the objective of this section is to verify the spectral

reproducibility simultaneously balancing with the colorimetric accuracy of the proposed

six-color modeling process.

As mentioned previously, given a reflectance factor of a color sample, the task of

color separation is to determine a set of theoretical dot areas (or sometime called request

dot areas), corresponding to the printing primaries, for a printer to synthesize the desired

Page 223: spectral-based color separation algorithm development - CiteSeer

203

spectrum. The estimated 24 sets of theoretical dot areas with respect to the 24 colors in

the Color Checker, the corresponding 24 colorimetric errors in units of ∆E*94, the

corresponding 24 metamerism indices, and the corresponding RMS error in units of

reflectance factor are shown in Table 7-11 and the statistical results in predicting the 24

colors using the proposed six-color printing model is listed in Table 7-12.

Table 7-11: The predicted theoretical dot areas, colorimetric and spectral errors of the 24colors in Macbeth color checker where M.I. represents the metamerism index.

Color Name ac am ay ag ao ak ∆E*94 M.I. RMS

Dark Skin 0.000 0.040 0.121 0.000 0.200 0.346 0.01 0.09 0.007Light Skin 0.000 0.140 0.227 0.000 0.000 0.093 0.02 0.11 0.031Blue Sky 0.305 0.106 0.000 0.000 0.000 0.133 0.41 0.86 0.041Foliage 0.026 0.000 0.308 0.099 0.000 0.310 0.11 0.34 0.013Blue Flower 0.278 0.209 0.012 0.000 0.000 0.022 0.24 0.69 0.051Blue Green 0.144 0.000 0.000 0.103 0.000 0.000 0.94 0.17 0.044Orange 0.069 0.000 0.460 0.000 0.364 0.021 0.20 0.56 0.021Purplish Blue 0.555 0.323 0.000 0.000 0.000 0.000 1.48 1.63 0.037Moderate Red 0.000 0.479 0.262 0.020 0.000 0.031 0.03 0.16 0.024Purple 0.461 0.499 0.171 0.000 0.000 0.050 0.07 0.73 0.079Yellow Green 0.000 0.000 0.621 0.120 0.032 0.000 0.32 0.65 0.026Orange Yellow 0.000 0.000 0.648 0.031 0.240 0.001 0.36 1.01 0.041Blue 0.921 0.418 0.000 0.000 0.000 0.000 5.57 1.55 0.028Green 0.000 0.000 0.297 0.250 0.025 0.074 0.02 0.17 0.021Red 0.059 0.763 0.515 0.000 0.000 0.040 0.35 0.39 0.071Yellow 0.000 0.000 0.820 0.015 0.078 0.008 0.17 0.39 0.021Magenta 0.092 0.448 0.004 0.000 0.000 0.000 0.36 0.49 0.115Cyan 0.562 0.047 0.000 0.039 0.000 0.086 0.33 0.89 0.032White 0.000 0.000 0.000 0.000 0.000 0.000 1.60 0.35 0.062N8 0.005 0.000 0.000 0.001 0.000 0.088 0.15 0.30 0.054N6.5 0.012 0.000 0.000 0.001 0.000 0.189 0.29 0.57 0.043N5 0.021 0.000 0.000 0.000 0.000 0.317 0.24 0.45 0.027N3.5 0.034 0.005 0.000 0.000 0.000 0.466 0.28 0.52 0.013Black 0.207 0.110 0.155 0.000 0.000 0.601 0.46 0.90 0.005

Page 224: spectral-based color separation algorithm development - CiteSeer

204

Table 7-12: The statistical results in predicting the 24 colors using the proposed six-colorprinting model.

∆E*94 Metamerism Index

Mean 0.58 0.58Stdev 1.14 0.41Max 5.57 1.63Min 0.02 0.11RMS 0.045

First, the overall colorimetric accuracy in predicting the spectral reflectance of the

24 colors with average 0.57 and maximum 5.57 units of ∆E*94 is satisfactory. There are 20

out of 24 colors predicted with colorimetric errors below 0.5 units of ∆E*94. Furthermore,

the Blue and White are the out of gamut colors. Excluding these out of colorimetric gamut

colors, the statistical results of the colorimetric and spectral performance for 22 in gamut

colors is listed in Table 7- 13.

Table 7- 13: The colorimetric and spectral performance of the 22 in gamut colors.

∆E*94 Metamerism Index

Mean 0.31 0.55Stdev 0.33 0.36Max 1.48 1.63Min 0.01 0.11RMS 0.045

Since the primary goal for this research development is to minimize the metamerism

between the original and its color reproduction, special attention is drawn to metamerism.

The metamerism index represents the color difference under the second reference

Page 225: spectral-based color separation algorithm development - CiteSeer

205

illuminant (A) while the color difference between the original and reproduction is zero

under the first standard illuminant (D50) after parameric correction (Fairman, 1987).

Thus, the average, 0.55, and maximum, 1.63, in units ∆E*94 indicates that the metamerism

is not severe at all for this reproduction. There are 21 out of 24 colors which were

predicted under one unit of metamerism index. This implies that the spectral mismatch

between the original and reproduction is small such that their color matches are

approximately invariant and constant across illuminants. The four best and four worst

predicted spectra in terms of metamerism index are plotted in Figs. 7-29 and 7-30,

respectively.

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

Re

flec

tan

ce

Dark Skin

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

L ight Skin

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

W avelength

Re

flec

tan

ce

G reen

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

W avelength

B lue G ree n

Fig. 7-29: The four best predicted spectra in terms of metamerism index of the 24 colors.

Page 226: spectral-based color separation algorithm development - CiteSeer

206

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

Re

flec

tanc

e

Purplish Blue

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

Blue

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

Wavelength

Re

flec

tanc

e

Cyan

400 450 500 550 600 650 7000

0.2

0.4

0.6

0.8

1

Wavelength

Orange Yellow

Fig. 7-30: The four worst predicted spectra in terms of metamerism index of the 24 colors.

The implementation of the spectral-based six-color separation algorithm is shown in

Appendix F.

D. SPECTRAL PERFORMANCE COMPARISONS FOR THREE-,FOUR-, AND SIX-COLOR PRINTING PROCESSES

In order to substantiate the superiority of the spectral performance by adopting

more number of degrees of freedom, two three-color (CMY) continuous tone printing

devices, Fujix Pictrography 3000 and Kodak Professional 8670 PS thermal printer, and

one four-color (CMYK) printing processes, DuPont Waterproof®, were utilized to

formulate the color reproductions of the Macbeth Color Checker computationally.

Page 227: spectral-based color separation algorithm development - CiteSeer

207

Kubelka-Munk transformations, Eqs. (2-9) and (2-10), for transparent material in

optical contact with opaque support were used to describe the color synthesis for the two

continuous tone printers. Two sets of one thousand samples of 10x10x10 combinatorial

mixtures in units of monitor RGB were printed by the two three-color printers. The three

eigenvectors derived in the absorption space for each printer were used as the pseudo-

primaries for color synthesis (recall that the eigenvectors are theoretically linearly related

to that actual primary colorants, described in Chapter IV).

The proposed algorithm for modeling a four-color halftone printing process was

employed to describe the color synthesis of DuPont Waterproof® system using CMYK.

Exact colorimetric matches not including the out of colorimetric gamut colors

under illuminant D50 and 1931 observer for the Macbeth Color Checker were obtained by

all the three- and four-color printing processes. The color difference in unit of ∆E*94 under

illuminant A and F2, shown in Table 7-14, were calculated for the prediction by Fujix,

Kodak, Waterproof® CMYK, and Waterproof® CMYKGO printing processes whose

predicted spectral reflectance factors are attached in Appendices L, M, and N,

respectively. It can be seen that the average color difference under illuminant A for the

Waterproof® CMYK process was relatively large, whereas, that of rest of the three

printing processes were small. In addition, the average color differences under illuminant

F2 for the Fujix, Kodak, Waterproof® CMYK processes were relatively large, whereas,

the color difference predicted by the Waterproof® CMYKGO was the smallest.

Page 228: spectral-based color separation algorithm development - CiteSeer

208

Table 7-14: The color difference of the predicted Macbeth Color Checker under illuminantA and F2 by four different printing processes, where the color names corresponding to thebold faced entries are the out of colorimetric gamut colors of each device.

Fujix Kodak WaterproofCMYK

WaterproofCMYKGO

∆E*94

underA

∆E*94

underF2

RMS ∆E*94

underA

∆E*94

underF2

RMS ∆E*94

underA

∆E*94

underF2

RMS ∆E*94

underA

∆E*94

underF2

RMS

Dark Skin 0.78 1.39 0.057 0.23 2.72 0.043 2.47 2.26 0.029 0.09 0.04 0.007Light Skin 0.05 1.24 0.041 0.21 2.30 0.066 0.76 1.39 0.034 0.11 0.89 0.031Blue Sky 0.64 0.77 0.060 1.41 1.78 0.041 1.77 1.23 0.047 0.86 0.63 0.041Foliage 0.36 1.80 0.050 0.59 2.94 0.048 2.67 1.79 0.034 0.34 0.90 0.013

Blue Flower 1.00 1.65 0.058 1.72 2.30 0.082 0.81 1.27 0.05 0.69 1.21 0.051Blue Green 0.98 1.07 0.060 1.16 1.68 0.0660.65 1.70 0.055 0.17 0.98 0.044

Orange 1.59 1.85 0.080 1.70 2.16 0.0892.23 2.49 0.079 0.56 0.45 0.021Purplish Blue 0.23 1.13 0.039 1.08 1.64 0.044 1.60 1.53 0.038 1.63 1.57 0.037Moderate Red 0.05 0.36 0.033 0.24 1.34 0.059 0.28 0.56 0.023 0.16 0.45 0.024

Purple 0.84 3.33 0.050 1.42 3.68 0.095 0.79 2.90 0.078 0.73 2.85 0.079Yellow Green 0.23 0.37 0.052 0.23 0.95 0.063 1.79 1.56 0.064 0.65 0.67 0.026Orange Yellow 1.69 2.14 0.070 1.90 2.50 0.0902.23 2.64 0.081 1.01 1.39 0.041

Blue 0.15 1.87 0.050 0.99 2.05 0.0461.25 2.25 0.031 1.55 2.66 0.028Green 0.31 0.59 0.048 0.33 0.93 0.039 1.81 2.00 0.049 0.17 0.93 0.021Red 0.63 1.32 0.037 0.77 1.23 0.062 0.44 1.53 0.074 0.39 1.41 0.071

Yellow 0.46 0.60 0.031 0.73 1.06 0.0710.91 1.02 0.042 0.39 0.53 0.021Magenta 0.63 2.17 0.087 0.72 1.82 0.106 0.53 2.09 0.118 0.49 1.95 0.115

Cyan 2.70 1.54 0.052 2.92 2.03 0.051 0.50 0.92 0.034 0.89 0.67 0.032White 0.99 0.41 0.106 0.04 0.25 0.028 0.35 0.18 0.062 0.35 0.18 0.062

N8 0.51 1.00 0.068 0.16 1.69 0.037 1.64 1.27 0.067 0.30 0.39 0.054N6.5 0.87 1.35 0.070 0.26 2.70 0.046 2.98 2.16 0.067 0.57 0.55 0.043N5 0.82 1.60 0.064 0.16 3.40 0.045 3.61 2.55 0.052 0.45 0.43 0.027

N3.5 0.95 1.80 0.051 0.20 3.76 0.035 3.92 2.51 0.032 0.52 0.30 0.013Black 0.90 1.82 0.034 0.27 3.61 0.022 3.18 1.68 0.014 0.90 0.53 0.005

Mean 0.77 1.38 0.81 2.10 1.63 1.73 0.58 0.94Stdev 0.59 0.69 0.73 0.94 1.09 0.69 0.41 0.73Max 2.70 3.33 2.92 3.76 3.92 2.90 1.63 2.85Min 0.05 0.36 0.04 0.25 0.28 0.18 0.09 0.04

Page 229: spectral-based color separation algorithm development - CiteSeer

209

Observing the individual color match predicted by these three- and four printing processes,

most colors such as blue, foliage, purple, neutral colors, and so forth were highly

metameric. Whereas, the predictions by the proposed six-color spectral printing process

was the least metameric results. Hence, the color reproductions by the Fujix, Kodak,

Waterproof® CMYK are of high degree of metamerism and the degree of metamerism

synthesized by the proposed six-color spectral printing process using Waterproof®

CMYKGO can be minimized.

E. CONCLUSIONS

Although the six-color Yule-Nielsen modified spectral Neugebauer equation

should be employed to construct a six-color printing model, the physical printing limitation

such as ink-trapping failure confines the existence or stability of real five-color and six-

color overprints which are the Neugauer primaries. Since a six-color Yule-Nielsen

modified spectral Neugebauer uses up to six-color overprints as its basis spectra for

spectral reconstruction, stable five-color and six-color overprints are necessary for

accurate reconstruction of a given spectral reflectance factor. This especially is a problem

when attempting to derive a more than six-color printing model. There are 97 (27 -31)

five-color, six-color, and seven-color overprints for a seven-color printing process. Even

the sample preparation of these Neugebauer primaries will be a critical issue. Although the

analytical prediction of those overprints were presented in Chapter VI, the physical

Page 230: spectral-based color separation algorithm development - CiteSeer

210

feasibility is still questionable due to the ink-trapping limitation. Hence, the proposed

approach by this research development seems a reasonable paradigm. The modeling for a

k-color printing process is suggested to subdivide into several four-color sub-models.

Their union of their spectral gamut can be a good approximation of the spectral gamut

spanned by the all combinations of k primaries since the color of the more than four

overprints tend to be neutral and low lightness.

Spectral-based six-color separation algorithms were derived in building a six-color

forward and backward spectral printing model. Four six-color forward spectral printing

models were compared for their performance in terms of colorimetric and spectral

accuracy using Waterproof®, a halftone proofing system. They are the first-order forward

printing model comprised of a theoretical to effective dot area transfer function, f( ), and

the Yule-Nielsen modified spectral Neugebauer equation, the second order modification

suggested by Iino and Berns, an alternative second order improvement by the proposed

algorithms, and the printing process modeled by matrix transformation method. The

proposed algorithms together with the modification by Eq. (7-20) were the favorite

forward printing model for its highest performance both in terms of high colorimetric and

spectral accuracy.

A backward spectral printing model was constructed by a four-ink selector, the

adopted six-color forward spectral printing model based on the proposed algorithms, and

a numerical engine. The performance of this backward printing model was tested in

Page 231: spectral-based color separation algorithm development - CiteSeer

211

estimating the theoretical dot areas of 24 colors of the Gretag Macbeth Color Checker.

The colorimetric and spectral accuracy, shown in Table 7-12, of the predictions

corresponding to the estimated theoretical dot areas by the proposed backward model is

high. One thing worth mentioning is that the four-selector is able to select a proper set of

four inks from the defined six inks for reproducing the Gretag Macbeth Color Checker.

The validity for the hypothesis of continuous tone approximation and the use of Eq. (7-

17), derived empirically, are reassured by the accuracy of the color separation performed

on the Color Checker.

An analysis was made by comparing the spectral performance of three- and four

printing processed to the proposed six-color technology. It was shown that the degree of

metamerism for the prediction by the three- (Fujix Pictrography 3000 and Kodak

Professional 8670 PS thermal printer) and four-color (Dupont Waterproof® using CMYK)

printing processes were relatively high.

Based upon all of these analyses, it is concluded that the proposed color separation

algorithms are capable of minimizing metamerism between the original and its

reproduction while maintaining high colorimetric accuracy.

Page 232: spectral-based color separation algorithm development - CiteSeer

212

VIII. MULTIPLE-INK DIRECTING PRINTING

The last stage of this dissertation is to utilize the implemented spectral-based color

separation algorithm in building a multi-spectral output system. This requires predefining a

multiple-ink halftone printing process to be used as an output device since forward and

backward halftone printing models are device dependent. The Waterproof® system was

utilized to verify the research development of the six-color spectral halftone printing

models and a set of six color separation records for the Gretag Macbeth Color Checker

was calculated corresponding to the six primaries for this printing process. The final

verification for the research development in building a multi-spectral output system is to

output the six color separation records, shown in Table 7-11, by employed printing

process and observe the colorimetric and spectral accuracy of the reproduction.

A. VERIFICATIONS

The six color separation records of the Gretag Macbeth Color Checker were

output by the DuPont Waterproof® system using the specified six primaries. Four six-color

printed Checker were measured five times for each by the Gretag Spectrolino (since it was

utilized for the samples to model the six-color printing process) and averaged to account

for the print to print variation and spatial uniformity. The colorimetric and spectral

accuracy for each individual color is shown in Table 8-1. The statistical colorimetric and

Page 233: spectral-based color separation algorithm development - CiteSeer

213

spectral performance for original vs. reproduction and prediction vs. reproduction are

listed Table 8-2.

Table 8-1: The colorimetric and spectral accuracy of original vs. reproduction andprediction vs. reproduction for the Gretag Macbeth Color Checker.

Origianl vs. Reproduction Prediction vs. ReproductionColor Name ∆E*

94 M.I. RMS ∆E*94 M.I. RMS

Dark Skin 1.64 0.51 0.013 1.64 0.60 0.010Light Skin 1.57 0.14 0.038 1.57 0.27 0.017Blue Sky 2.09 0.68 0.038 1.73 0.49 0.010Foliage 1.70 0.49 0.016 1.71 0.34 0.009Blue Flower 2.21 0.20 0.056 2.07 0.79 0.020Blue Green 1.26 0.21 0.041 0.98 0.08 0.011Orange 1.76 0.33 0.019 1.80 0.39 0.020Purplish Blue 2.53 1.51 0.037 1.49 0.66 0.012Moderate Red 1.54 0.12 0.028 1.54 0.12 0.011Purple 1.87 1.08 0.083 1.81 0.50 0.008Yellow Green 1.50 0.52 0.022 1.27 0.32 0.016Orange Yellow 2.81 1.06 0.046 3.02 0.29 0.028Blue 5.80 1.39 0.028 0.74 0.37 0.007Green 1.05 0.29 0.020 1.04 0.23 0.008Red 0.91 0.56 0.078 0.86 0.17 0.008Yellow 1.52 0.32 0.027 1.60 0.19 0.020Magenta 0.96 0.80 0.123 0.83 0.18 0.012Cyan 1.55 1.74 0.034 1.72 0.38 0.011White 1.45 0.40 0.059 0.26 0.05 0.004N8 1.44 0.16 0.054 1.42 0.47 0.022N6.5 2.89 0.25 0.050 2.90 0.95 0.033N5 3.08 0.48 0.033 3.09 1.01 0.024N3.5 2.00 0.11 0.014 2.01 0.67 0.009Black 1.55 0.63 0.005 1.45 0.58 0.004

Page 234: spectral-based color separation algorithm development - CiteSeer

214

Table 8-2: The statistical colorimetric and spectral accuracy corresponding to thepredicted and reproduced Gretag Macbeth Color Checker.

Origianl vs. Reproduction Prediction vs. Reproduction∆E*

94 Metamerism Index ∆E*94 Metamerism Index

Mean 1.94 0.58 1.61 0.42Stdev 1.01 0.46 0.69 0.26Max 5.80 1.74 3.09 1.01Min 0.91 0.11 0.26 0.05RMS 0.048 0.016

Ideally, the colorimetric and spectral error between the prediction and the actual

reproduction should be zero. Actual average colorimateric and spectral error between the

prediction and the reproduction were 1.61 ∆E*94 and 0.42 unit of metamerism index,

respectively. This discrepancy is due to the print to print variation and calibration status of

the printing process. (The proposed six-color spectral printing model was established one

month before the Gretag Macbeth Color Checker was printed.) Nevertheless, this

accuracy is still satisfactory. Figure 8-1 shows the spectral reflectance factors of six colors

arbitrarily chosen for demonstration. It can been seen that the spectral reflectance factors

of reproduction was systematically lower than the prediction. This was attributed to the

print to print variation and calibration status of the printing process. The reproduced

Gratag Macbeth Color Checker is bounded at the end of this chapter and the original,

predicted, and reproduced spectral reflectance factors are shown in Appendices I, J, and

K, respectively.

Page 235: spectral-based color separation algorithm development - CiteSeer

215

400 500 600 7000

0.2

0.4

0.6

0.8

1

Re

flec

tan

ce

B lue flower

400 500 600 7000

0.2

0.4

0.6

0.8

1Ora nge

400 500 600 7000

0.2

0.4

0.6

0.8

1P urp lish b lue

Origina lPredictedReproduc tion

400 500 600 7000

0.2

0.4

0.6

0.8

1

Re

flec

tan

ce

W ave length

Yellow green

400 500 600 7000

0.2

0.4

0.6

0.8

1

W ave length

Neutra l 8

400 500 600 7000

0.2

0.4

0.6

0.8

1

W ave length

Neutra l 6 .5

Fig. 8-1: The original, predicted, and reproduced spectral reflectance factors of the sixGretag Macbeth Colors.

B. CONCLUSIONS

The six color separation records in terms of the theoretical dot areas, shown in

Tabel 7-11, for the Gretag Macbeth Color Checker were output by the DuPont

Waterproof® system using the cyan, magenta, yellow, black, green, and orange, the

standard DuPont Waterproof® primaries, which were utilized to established the six-color

spectral printing model. Curve shapes of the reproduced reflectance spectra were

approximately parallel to the spectra predicted by the proposed six-color printing model.

Page 236: spectral-based color separation algorithm development - CiteSeer

216

The discrepancy is due to the print to print variation and calibration status of the physical

printing device. Nevertheless, the similarity of the spectral curves between the reproduced

and predicted spectra indicates that the proposed six-color printing model is capable of

predicting the color formulated by the actual Dupont Waterproof® printing process.

Page 237: spectral-based color separation algorithm development - CiteSeer

217

IX. CONCLUSIONS DISCUSSIONS AND SUGGESTIONS FORFUTURE RESEARCH

Research for bridging a multi-spectral image acquisition system and a spectral-

based output system has been described. It includes colorant estimation, optimal ink-

selection, spectral reflectance factor prediction for ink overprints, spectral-based six-color

separation minimizing metamerism, and verification from direct printing. Results show a

promising future for the feasibility of the proposed algorithms in terms of colorimetric and

spectral accuracy.

Since linear modeling techniques are heavily employed for the first-order analysis

for this research project, a linear colorant mixing space was desired. Kubelka-Munk turbid

media theory has frequently been used to represent opaque colorant mixtures in a linear

vector space. It was observed for the colorant mixtures used in this research that the

accuracy of spectral prediction based on Kubelka-Munk theory was not satisfactory.

Furthermore, excessively large fields of view for conventional spectrophotometry result in

additivity failure when spectral data are transformed to Kubelka-Munk representations.

As a consequence, an empirical transformation was derived, as described in

chapter III, resulting in improved prediction accuracy for a set of opaque colorant

mixtures requiring reproduction. The proposed transformation was designed according to

the coloration process of subtractive colorant mixing and the exact or reduced

dimensionality of a set of mixtures in the linear colorant mixing space after the proposed

Page 238: spectral-based color separation algorithm development - CiteSeer

218

transformation. The former was concerned with the observation that the more colorants

used for coloration, the darker the resultant colorant mixture. The latter accounted for the

underlying number of colorants used for creating the set of colorant mixtures. The

accuracy of the proposed transformation was high.

In the analysis stage, a colorant estimation algorithm, described in chapter IV,

statistically decomposed an input spectral image according to the six directions explaining

major variation of the spectral image in a linear colorant mixing space. These directions

are known as the directions of six significant eigenvectors. Hence, each pixel of the

spectral image represented in a linear colorant mixing space is a linear combination of the

six eigenvectors corresponding to the input spectral image. Since the six eigenvectors did

not represent physical colorant spectra judged by their bipolar appearance across the

visible spectrum, a constrained rotation algorithm was applied to transform them to a set

of all-positive vector representations leading to non-negative coordinates for describing

every pixel in the input spectral image. The six all-positive eigenvectors, as the statistical

primaries, symbolized a set of six primary colorants utilized for creating the original object

corresponding to the captured spectral image. The non-negative coordinates associated

with each pixel account for a typical coloration process, i.e. no negative concentrations,

can be used for color synthesis. Based on these two physical constraints, the proposed

colorant estimation algorithm was able to converge to a set of reasonable basis colorants

Page 239: spectral-based color separation algorithm development - CiteSeer

219

whose prediction accuracy were identical to that of the six eigenvectors derived for the set

of input spectra requiring synthesis.

Once the set of statistical primaries corresponding to a given image were

uncovered, the optimal ink-selection module correlated the statistical primaries to an

existing ink database in order to attain the most similar ink set for a halftone printing

process using multiple inks. Since the number of six-ink combinations generated from a

large ink database is enormous, the effort of inspecting the performance of every

combination was prohibitive. The obviously infeasible ink combinations, such as those sets

formed by the inks of same hue, should be removed analytically. The proposed ink-

selection algorithm, described in chapter V, was capable of removing the impossible ink

combinations resulting in significant reduction, i.e., from 18,564 down to 32 for a

database of 18 inks. Small numbers of candidate ink sets were much more feasible to

evaluate for spectral reconstruction.

The Yule-Nielsen modified spectral Neugebauer equation was an obvious choice in

building halftone printing models for performance evaluation. Whereas, parameters such

as dot gain factor and reflectance spectra of ink overprints of a printing process were

frequently unknown. The halftone model building effort was not quite feasible at this

phase. Practically, this research suggested a continuous-tone approximation to a halftone

printing process based on the proposed transformation described in Chapter III. The

transformation was revised in describing the colorant mixing for a halftone printing

Page 240: spectral-based color separation algorithm development - CiteSeer

220

process. The verification of the IT8/7.3 target printed by SWOP standard conditions

showed that the continuous-tone approximation was reasonable.

Since the optimal ink set for minimizing metamerism is image dependent, the

optimal ink set varies from image to image. In order to construct an analytical printing

model using the Yule-Nielsen modified Neugebauer equation, the ink overprints, known as

the Neugebauer primaries, were the basis information required to use this equation. Due to

the number of overprints increasing exponentially with each additional ink, the number of

overprints was enormous when the number of primary inks was large. This would lead to

an unreasonable number of samples to be prepared and measured, in addition to

necessitating resampling and remeasurement upon changes in consumable (e.g., ink and

paper). This research, therefore, included the analytical prediction of ink overprints using

the Kubelka-Munk theory for translucent materials as opposed to exhaustively printing

and measuring. Two optical constants, absorption and scattering coefficients, of each ink

were estimated numerically using the reflectance measurements of an ink printed on a

white and black surfaces and the reflectance factors of the white and black surfaces,

respectively. Hence, the surface spectral reflectance factor of an ink overprint was a

function of the absorption and scattering coefficients, thickness of the top-most ink layer,

and the spectral reflectance factor of the layer underneath the top-most layer.

This research tested the algorithm discussed in Chapter VI using the DuPont

Waterproof® system, a halftone proofing process. Twenty-five overprints, which were at

Page 241: spectral-based color separation algorithm development - CiteSeer

221

most three-color overprints, were generated from a combination of six primaries. The

prediction results were excellent. Relatively poorer predictions resulted for some of the

three-color overprints. There was a systematic trend in which the samples were too dark.

It was reasoned that the prediction using this algorithm for dark overprints was sensitive

to noise. Noise was greatly amplified when it underwent the transformation using the

translucent equation which is highly non-linear. Nevertheless, the colorimetric and spectral

accuracy was still high.

The development for the synthesis stage of this research was to construct a highly

accurate six-color printing model. DuPont Waterproof® was also utilized to print six-color

ramps and a verification target of 6,250 samples. The six-color printing model was

comprised of ten four-color printing sub-models. The modeling of the six-color printing

process was a collection of modeling ten four-color printing processes. Four different

models were evaluated: the first-order Yule-Nielsen modified spectral Nuegebauer

equation together with the theoretical to effective dot area transfer function, the second-

order improvement published by Iino and Berns, an alternative second-order modification,

and a higher-order matrix transformation. These models were described and evaluated in

Chapter VII. By inspecting two-dimensional vector plots of CIELAB L* versus a*, it was

revealed that the first-order estimation tended to under predict the spectral reflectance

factors, due to an overestimation of the effective dot areas of multiple-ink mixtures for the

dark samples. The error of overestimating effective dot areas was mainly caused by an

Page 242: spectral-based color separation algorithm development - CiteSeer

222

“optical-trapping” effect. A second-order modification proposed by Iino and Berns,

accounting for optical-trapping, was tested to improve the model accuracy. Although it

yielded approximately the same accuracy as that of the first-order approximation for this

type of printing process, it was capable of correcting the prediction of some of the dark

colors. It was found that the prediction errors were mostly chromatic errors. The third

algorithm, developed during this dissertation as an alternate model of optical trapping, was

more effective in reducing the errors for these dark samples. The difference between the

newly developed algorithm and that described by Iino and Berns was that, conceptually,

Iino and Berns' algorithms suggested that, for example, for cyan and magenta ink

mixtures, whose theoretical dot areas are m% and k%, respectively, the dot gain of the

cyan is normalized to the dot-gain locus of the cyan when the magenta is present at k%.

Similarly, the dot gain of the magenta is normalized to the dot gain locus of the magenta

when the cyan is present at m%. Whereas, the proposed algorithms recommend that the

more optimal dot gain of the cyan is normalized to the dot-gain locus of the magenta

presenting at 50% theoretical dot area whenever the magenta is present at any theoretical

dot area other than zero. It was found that the new approach tended to over predict

spectral reflectance factor (or under estimate the effective dot areas) for the 6,250

mixtures. It is not a surprising nature of the newly developed algorithms since the

approximation by the dot gain of a primary given a secondary presenting at 50%

theoretical will overestimate the effective dot area of the primary when the secondary is

Page 243: spectral-based color separation algorithm development - CiteSeer

223

actually present at less than 50% theoretical dot area and vice versa. Nevertheless, this

drawback is corrected by Eq. (7-21), as a consequence, yielding the best accuracy.

By inspecting the vector plots of CIELAB values, it was also found that the

reproduction trend was approximately opposite to that of the first-order approximation.

Thus, it was concluded that the real effective dot areas for predicting the 6,250 samples

was linearly located between the effective dot areas estimated by the first-order

approximation and that estimated by the new algorithm. A weighted sum was statistically

estimated and found to yield the highest colorimetric and spectral accuracy. The matrix

method was undesirable for this research since it required a large sample database for

modeling process. In addition, it occasionally produced negative effective dot areas.

This research tested the six-color spectral printing model by estimating the dot

areas required to reproduce a Gretag Macbeth Color Checker. The six color separations,

defined in terms of theoretical dot areas, would lead to color-reproduction accuracy of an

average of 0.57 and a maximum of 5.57 ∆E*94 and an average of 0.78 and a maximum of

2.09 units of metamerism index. Thus, the colorimetric and spectral accuracy was

satisfactory. Since the six primaries were not optimized for the Gretag Macbeth Color

Checker (having been arbitrarily defined by DuPont), the maximum errors were due to

spectral and colorimetric gamut limitations. Comparisons among the spectral gamut

limitation for two three-color printing processes (Fujix Pictrography 3000 and Kodak

Professional 8670 PS thermal printer), one four-color printing process (DuPont

Page 244: spectral-based color separation algorithm development - CiteSeer

224

Waterproof® system using CMYK), and the proposed six-color technology were made

computationally. The color formulation by the three- and four-color printing processes

were highly metameric relative to the proposed six-color technology. It was concluded

that the spectral-based color separation algorithm was capable of minimizing metamerism

while maintaining high colorimetric accuracy.

The six separation records for the 24 color patches of the Gretag Macbeth Color

Checker were printed using DuPont Waterproof® using the defined six primaries.

Accuracy comparisons among the original, prediction by the six-color model, and

reproduction based on the six-color separations in terms of the theoretical dot areas

predicted by the proposed six-color printing model were shown. It was found that the

colorimetric and spectral error between the prediction and the reproduction was

systematic owing to the print to print variation and the calibration status of the employed

printing process. However, the average colorimetric and spectral error with 1.61 ∆E*94

and 0.42 units of metamerism index, respectively was satisfactory. The stability of the

DuPont Waterproof® is considered high. Hence, the validity of the proposed six-color

printing model is substantiated by this verification.

This research has accomplished a theoretical development and several prototypical

implementations. There is still a need for improvement in order to implement this research

in practice. The colorant-estimation model was implemented by a constrained rotation

process using MATLAB. It takes minutes to hours converging to a set of statistical

Page 245: spectral-based color separation algorithm development - CiteSeer

225

primaries depending on the initial estimation and the requested numerical precision. It is

possible to statistically guess the initial set of colorants by directly selecting the spectra

located at the vertices of the colorimetric gamut of an input spectral image. The Monte

Carlo simulation suggested by Ohta (1973) may be an alternative to expedite the

converging speed.

The Pantone 14 basic and four process colors were utilized as the ink database for

ink selection. There is only one green in the ink database. From the development of

optimal ink-selection, the performance is partially limited by the lack of green inks to

choose from though it is not the absolute dominant factor. This implies that a wide variety

of candidate inks are desirable, in general.

The development for ink overprint prediction was verified by a proofing process.

Color patches were printed by holding colorant on a laminate, then applying on a

substrate. Unlike a conventional printing process, the phenomenon of colorant penetration

into the substrate was negligible. The penetration of ink causes the estimation of the

scattering coefficient to be difficult. Further research could test the ink overprint

predictions using process-printed samples.

During the development of the six-color separation algorithm, the spectral image

acquisition system was still under development. Hence, it was not possible to test each

component developed during this dissertation within a system. Clearly, the next step is to

Page 246: spectral-based color separation algorithm development - CiteSeer

226

combine these results with an spectral image acquisition system and develop and test the

complete spectral color reproduction system.

This research has demonstrated the capability of spectral reproduction six-color

spectral printing process. Colorimetric and spectral accuracy for reproducting the Gretag

Macbeth Color Checker was very high even though the six primaries (CMYKGO) were

not defined from the ink selection algorithm. However, the derived six-color process was

not capable of reproducing the blue and purple colors with high accuracy. It is

hypothesized that by adding one degree of freedom to derive a seven-color printing

process, the capability of spectral reproduction can be greatly improved. It is also

hypothesized that by a properly defined ink set of seven colors can approximately bypass

the process of ink selection based on the predicting accuracy of the Gretag Macbeth Color

Checker estimated by the derived six-color printing model.

Since the proposed color separation algorithm is constrained to use one black and

three chromatic inks to reproduce a pixel from an original, the modeling process for a

seven-color printing model is at the expense of establishing ten more four-color sub-

models. There are 20 (C(6, 3)) four-color sub-models for a seven-color printing process

based on the proposed ink-limiting scheme. It is worth mentioning that the file size will be

the same for storing the k-color separation records, where k ≥ 5. To be more specific,

consider the file structure of the separation records diagram as below:

Page 247: spectral-based color separation algorithm development - CiteSeer

227

Tag of an inkset

Theoretical dotarea of the 1st

ink

Theoretical dotarea of the 2nd

ink

Theoretical dotarea of the 3rd

ink

Theoretical dotarea of theblack ink

1 0.05 0.81 0.21 0.435 0.66 0.32 0.12 0.02.3 . . . .. . . . .. . . . .8 0.83 0.90 0.11 0.11

The tag of an ink set specifies which ink combination should be used for the particular

pixel and the corresponding four theoretical dot areas, shown in the same row, required

for spectral reproduction.

For a six-color printing process the integer tag is ranged from one to ten, from 1 to

20 (C(6, 3)) for a seven-color printing process, and from 1 to 35 (C(7,3)) for a eight-color

printing process. Only 6 bits are required to store the information of the four-ink

combinations up to eight-color printing process. There are only five channels for a

multiple-ink printing process abiding by the proposed ink-limiting scheme. Hence, it is

suggested by this research to speculate the performance of a seven-color printing process,

which is an extension of the proposed six-color technology, without large additional

modeling efforts and storage issues.

Page 248: spectral-based color separation algorithm development - CiteSeer

228

X. REFERENCES

--, CIE Technical Report 116, Industrial Color-Difference Evaluation, CIE, Vienna,1995.

--, MATLAB Version 5, The Math Works Inc., 1996.

Anderson, T. W., An Introduction to Multivariate Statistical Analysis, 2nd ed., WileySeries in Probability and Mathematical Statistics, 451-477, 1984.

Anderson, T. W., Asymptotic Theory for Principal Component Analysis, Annals ofMathematical Statistics 34, 122-148 (1963).

Alderson, J. V., E. Atherton, and A. N. Derbyshire, J. S. D. C. 77, 657 (1961).

Allen, E., Basic Equation Used in Computer Color Matching, J. Opt. Soc. Am. 56, No. 9,1256-1259 (1966).

Allen E., An Approach to the Color Matching of Printed Ink Films,” AIC Color’69, 909-919 (1969).

Allen, E., Basic Equation Used in Computer Color Matching, II. Tristimulus Match, Two-Constant Theory, J. Opt. Soc. Am. 64, No. 7, 991-993 (1974).

Allen, E., Colorant Formationand Shading, in Optical Radiation Measurements, Volume 2,Color Measurement, F. Grum and C. J. Bartleson, Eds., Academic Press, New York, 290-336, 1980.

Allen E., Reflective-Index Correction for Translucent Films,” Color Res. Appl. 12, 106-107 (1987).

Allen E., and P. Hoffenberg, Color Matching of Printed Ink Films,” AIC Color’73, 429-430 (1973).

Anton, H, Elementary Linear Algebra, Sixth Ed., John Wiley and Sons, INC., New York,235-239, 1991.

Arney, J. S., P. G. Angeldrum, and H. Zeng, An Expanded Murray-Davies Model of ToneReproduction in Halftone Imaging, J. IS&T 39, No. 6, 502-508 (1995).

Page 249: spectral-based color separation algorithm development - CiteSeer

229

Arney, J. S., C. D. Arney, and P. G. Angeldrum, The Impact of Paper Optical Propertieson Hard Copy Image Quality, Proc. IS&T Non-Impact Printing 12: InternationalConference on Digital Printing Technologies, 166-168 (1996).

Balasubramanian, R., A Printer Model for Dot-on-dot Halftone Screen, Proc. SPIE 2413356-364 (1995).

Balasubramanian, R., The Use of Spectral Regression In Modeling Halftone ColorPrinters, Proc. IS&T/OSA Optics and Imaging in the Information Age, 372-375(1996).

Balasubramanian, R., Colorimetric Modeling of Binary Printers, Proc. IEEE-ICIP II 327-330 (1998).

Berns, R. S., Challenges for Colour Science in Multimedia Imaging, in L. MacDonald andM. R. Luo, Eds., Colour Imaging: Vision and Technology, John Wiley & Sons,Chichester, pp. 99-127, 1999.

Berns, R. S., A. Bose, and D. Y. Tzeng, The Spectral Modeling of Large-Format Ink-JetPrinters, RIT MCSL Research and Development Final Report, 15-18 (1996).

Berns, R. S., F. H. Imai, P. D. Burns, and D. Y. Tzeng, Multi-Spectral-Based ColorReproduction Research at the Munsell Color Science Laboratory, Proc. SPIE/EuroptoSeries, Electronic Imaging: Processing, Printing, and Publishing in Color 3409, 14-25(1998).

Berns, R. S., and M. J. Shyu, Colorimetric characterization of a desktop drum scannerusing a spectral model, J. Elec. Imag. 4, 360-372 (1995).

Boll, H., A Color to Colorant Transformation for Seven Ink Process, Proc. IS&T 3rd

Technical Symposium on Prepress Proofing and Printing, 31-36 (1993).

Burns, P. D., and R. S. Berns, Analysis of multispectral image capture, Proc. 4thIS&T/SID Color Imaging Conference, 19-22 (1996).

Burns, P.D., Analysis of Image Noise in Multispectral Color Acquisition, Ph.D.Dissertation, Rochester Institute of Technology, 1997.

Page 250: spectral-based color separation algorithm development - CiteSeer

230

Burns, P. D., and R. S. Berns, Error propagation in color signal transformations, ColorRes. Appl. 22, 280-289 (1997a).

Burns, P. D., and R. S. Berns, Modeling Colorimetric Error in Electronic ImageAcquisition, IS&T/OSA Optical Imaging in the Information Age, 147-149 (1997b).

Carli, D., and M. Davis, High Fidelity Color Rendering and Reproduction,Proc. TAGA, 8-19 (1991).

Di Bernardo, A., and C. Matarazzo, Hi-Fi Color, American Ink Maker, 37-54 (1995).

Demichel, M. E., Procédé 26, 17-21, 26-27 (1924).

Dougherty, E. R., Probability and Statistics for the Engineering, Computing, and PhysicalSciences, Prentice-Hall, Inc., 185-190, 1990.

Fairman, H., Metameric Correction Using Parameric Decomposition, Color Res. Appl. 12,261-265 (1987).

Friedman, J., Color Printing in England 1486-1870, Yale Univ. Press.

García-Beltrán, A., J. L. Nieves, J. Hernández-Andrés, and J. Romero, Linear Bases forSpectral Reflectance Functions of Acrylic Paints, Color Res. and Appl. 23, 39-45 (1998).

Granger, E. M., Press Controls for Extra-trinary Printing, Proc. SPIE 2658, 147-150(1996).

Grishick, M. A., On the Sampling Theory of Roots of Determinantal Equations, Annals ofMathematical Statistics 10, 203-224 (1939).

Grum, F., and C. J. Bartleson, Optical Radiation Measurements, Volume 2, ColorMeasurement, Academic Press, New York, 1980.

Haneishi, H., T. Hasegawa, N. Tsumura, and Y. Miyake, Design of Color Filters forRecording Artworks, IS&T, Proc. 50th Annual Conference, 369-372 (1997).

Hardy, A. C., and F. L. Wurzburg, Color Correstion in Color Printing, J. Opt. Soc. Am.,38, No. 4, 300-307 (1948).

Page 251: spectral-based color separation algorithm development - CiteSeer

231

Hardy, A. C., and E. Dench, An Electronic Method for Solving Simultaneous Equation, J.Opt. Soc. Am., 38, No. 4, 308-312 (1948).

Herbert, R., Hexachrome Color Selection and Separation-Model for Print Media, Proc.IS&T 3rd Technical Symposium on Press Proofing and Printing, 28-30 (1993).

Herbert, R., and A. Di Bernardo, U.S. Patent, 5,734,800, 1998.

Hunt, R. W. G., The Reproduction of Color Fifth Ed. Fountain Press England, 1995.

Iino, K., and R. S. Berns, A Spectral Based Model of Color Printing that Compensatesfor Optical Interactions of Multiple Inks, AIC Color 97, Proc. 8th Congress InternationalColour Association, 610-613 (1997).

Iino, K., and R. S. Berns, Building Color Management Modules Using LinearOptimization I. Desktop Color System, J. Imag. Sci. Tech. 42, 79-94 (1998a).

Iino, K., and R. S. Berns, Building Color Management Modules Using LinearOptimization II. Prepress System for Offset Printing, J. Imag. Sci. Tech. 42, 99-114(1998b).

Jaaskelainen, T., J. Parkkinen and S. Toyooka, Vector-Subspace Model for ColorRepresentation, J. Opt. Soc. Am. 7, 725-730 (1990).

Johnson, R. A., and D. W. Wichern, Applied Multivariate Statistical Analysis, 3rd ed.,Prentice Hall, New Jersey, 380-382, 1992a.

Johnson, R. A., and D. W. Wichern, Applied Multivariate Statistical Analysis, 3rd ed.,Prentice Hall, New Jersey, 152-153, 1992b.

Johnson, R. A., and D. W. Wichern, Applied Multivariate Statistical Analysis, 3rd ed.,Prentice Hall, New Jersey, 154-163, 1992c.

Johnson, R. A., and D. W. Wichern, Applied Multivariate Statistical Analysis, 3rd ed.,Prentice Hall, New Jersey, 164-170, 1992d.

Judd, D. B., D. L. MacAdam, and G. Wyszecki, Spectral Distribution of Typical Daylightas a Function of Correlated Color Temperature, J. Opt. Soc. Am. 54, 1031-1040 (1964).

Page 252: spectral-based color separation algorithm development - CiteSeer

232

Kang, H. R., Color-Mixing Models, in Color Technology for Electronic Imaging Devices,SPIE Optical Engineering Press, 34-43, 1997.

Kohler, T., and R. S. Berns, Reducing Metamerism and Increasing Gamut Using Five orMore Colored Inks, IS&T Proc. 3rd Technical Symposium on Press, Proofing & Printing,24-28 (1993).

Kubelka, P., and F. Munk, Ein Beitrag zur Optik der Farbanstriche, Z. Tech. Phys.(German) 12, 593-601 (1931).

Kubleka, P., New Contribution to the Optics of Intensely Light-Scattering Materials. PartI, J. Opt. Soc. of Am. 38, 448-457 (1948).

Küppers, H., U.S. Patent 4,812,899,1986.

Leekley, R. M., F. L. Cox, and J. G. Gordon, The Ball Four- and Five-Color Systems,Proc. TAGA, 78-88 (1953).

Maheu, B., J. N. Letoulouzan and G. Gouesbet, Four-flux models to solve the scatteringtransfer equation in terms of Lorenz-Mie parameters, Appl. Opt., 23, 3353-3362 (1984).

Mahy, M., and P. Delabastita, Inversion of The Neugebauer Equations, Color Res. andAppl. 21 No. 6, 404-411 (1996).

Maloney, L. T., Evaluation of Linear Models of Surface Spectral Reflectance with SmallNumbers of Parameters, J. Opt. Soc. Am. 10, 1673-1683 (1986).

Marsden, J. E., and A. J. Tromba, Vector Calculus, 3rd ed., W. H. Freeman andCompany, New York, 8-9, 1981.

McDonald, R., Computer Match Prediction - Dyes, in Colour Physics for Industry, R.McDonald Edited, Society of Dyers and Colourists, 116-185, 1987.

McDowell, D. Q., Summary of IT8/SC4 Color Activities, Proc. Device-IndependentColor Imaging and Systems Integration SPIE 1909, 229-235 (1993).

McDowell, D. Q., Graphic Arts Standards Update - 1995, Proc. Device-IndependentColor Imaging and Systems Integration SPIE 2413, 323-332 (1995).

Page 253: spectral-based color separation algorithm development - CiteSeer

233

Mehta, K. T., and H. S. Shah, Simplified equations to calculate Mie-theory parameter foruse in many-flux calculations for predicting the reflectance of paint Films, Color Res.and Appl., 12, 147-153 (1986a).Mehta, K. T., and H. S. Shah, Prediction of reflectance of paint film using many fluxtheory and its comparison with experimentally measured values, J. Opt., 15, 13-20(1986b).

Morris, R. H., and J. H. Morrissey, An Objective Method for Determination of EquivalentNeutral Densities of Color Film Images. II. Determination of Primary Equivalent NeutralDensities, J. Opt. Soc. Am. 44, 530-539 (1954).

Mudgett, P. S., and L. W. Richards, Multiple Scattering Calculations for Technology,Appl. Opt., 10, 1485-1502 (1971).

Mudgett, P. S., and L. W. Richards, Multiple Scattering Calculations for Technology II, J.Colloid Interface Sci., 39, 551-567 (1972).

Murray, A., Monochrome Reproduction in Photoengraving, J. Franklin Inst. 221,721-744(1936).

Murray, A., and R.S. Morse, U.S. Patent 2,253,086 (1941).

Nobbs, J. H., Kubelka-Munk Theory and the Prediction of Reflectance, Rev. Prog.Coloration 15, 66-75 (1985).

Neugebauer, H. E. J., Die Theoretischen Grundlagen des Mehrfarbenbuchdrucks,(German) Zeitschrift für Wissenshaftliche Photographie Photophysik und Photochemie36:4, 73-89 (1937) [Reprinted in Proc. SPIE 1184: Neugebauer Memorial Seminar onColor Reproduction, 194-202 (1989).]

Pearson, M. n Value for General Condition, Proc. TAGA 32, 415-425 (1980).

Pobboravsky, I., and M. Pearson, Computation of Dot Areas Required to Match AColorimetrically Specified Neugebauer Equation, Proc.TAGA, 65-77 (1972).

Pope, W. W., A Practical Approach to n-Value, Proc. TAGA 41, 142-151 (1989).

Ohta, N., Estimating Absorption Bands of Component Dyes by Means of PrincipalComponent Analysis, Anal. Chem. 45, 553-557 (1973).

Page 254: spectral-based color separation algorithm development - CiteSeer

234

Ostromoukhov, V., Chromaticity Gamut Enhancement by Heptatone Multi-ColorPrinting, Device Independent Color Imaging and Imaging System Integration, SPIE1909, 139-151(1993).

Rolleston, R., and R. Balasubramanian, Accuracy of Various Types of Neugebauer Model,Proc. 1st IS&T/SID Color Imaging Conference: Transportability of Color, 32-37 (1993).

Shah, H. S., and R. S. Gandhi, Optical Theory for Colour Matching, in InstrumentalColour Measurements and Computer Aided Colour Matching for Textiles, Mahajan BookDistributors, India, 204-220, 1990.

Saunderson J. L., Calculation of the color of pigmented plastics, J. Opt. Soc. of Am. 32,727-736 (1942).

Simonds, J. L., Application of Characteristic Vector Analysis to Photographic and OpticalResponse Data, J. Opt. Soc. Am. 53, 968-974 (1963).

Stollnitz, E. J., V. Ostromoukhov, and D. H. Salesin, Reproduction Color Images UsingCustom Inks, Proc. SIGGRAPH 98, 267-272b (1998).

Tajima, J., A Huge Spectral Characteristics Database and its Application to Color ImagingDevice Dsign, Proc. 6th IS&T/SID Color Imaging Conference, 86-89 (1998).

Takaghi, A., T. Ozeki, Y. Ogata, and S. Minato, Faithful Color Printing for ComputerGenerated Image Synthesis with Highly Saturated Component Inks, Proc. 2nd IS&T/SIDColor Imaging Conference, 108-111 (1994)

Tzeng, D. Y., and R. S. Berns, Spectral-Based Ink Selection for Multiple-ink Printing I.Colorant Estimation of Original Objects, Proc. 6th IS&T/SID Color Imaging Conference,112-113 (1998).

Tzeng, D. Y., and R. S. Berns, Spectral-Based Ink Selection for Multiple-ink Printing II.Optimal Ink Selection, Proc. 7th IS&T/SID Color Imaging Conference, in press (1999a).

Page 255: spectral-based color separation algorithm development - CiteSeer

235

Tzeng, D. Y., and R. S. Berns, Spectral Reflectance Prediction of Ink Overprints byKubelka-Munk Turbid Media Theory, Proc. TAGA/ISCC Symposium in Vancouver B. C.,in press (1999b).

Van De Capelle, J. P., and B. Meireson, A New Method for Characterizing OutputDevices and Its Fit into ICC and HIFI Color Workflows, Proc. 5th IS&T/SID ColorImaging Conference, 66-69 (1997).

Van de Hulst, H. C., Multiple Light Scattering: Tables Formulas and Applications Volume2, Academic Press, New York, 1980.

Viggiano, J. A. S., The Color of Halftone Tints, Proc. TAGA, 647-661 (1985).

Viggiano, J. A. S., and W. J. Hoagland, Colorant Selection for Six-color LithographicPrinting, Proc. 6th IS&T/SID Color Imaging Conference, 112-113 (1998).

Vrhel, M. j., R. Gershon, and L. S. Iwan, Measurement and Analysis of ObjectReflectance Spectra, Color Res. and Appl. 19, 4-9 (1994).

Vrhel, M. J., and H. J. Trussel, Color Correction Using Principal Components, Color Res.and Appl. 17, 328-338 (1992).

Wedin, M., and B. Kruse, Halftone Colour Prints: Dot Gain and Modeling of Colourdistributions, Proc. Device-Independent Color Imaging and Systems Integration SPIE2413, 344-355 (1995).

Wyszecki, G., and W. S. Stiles, Color Science: Concepts and Methods, Quantitative Dataand Formulae, 2nd edition, 221-222, 1982.

Yule, J. A. C., Principles of Color Reproduction, John Wiley & Sons, Inc, 255, 1967.

Yule, J. A. C., and W. J. Nielsen, The Penetration of Light into Paper and its Effect onHalftone Reproduction, Proc. TAGA, 65-76 (1951).

Page 256: spectral-based color separation algorithm development - CiteSeer

236

X. APPENDICES

This research utilized MATLAB V5.2 as the algorithm developing tool. A

collection of program scripts developed for the calculation of fundamental colorimetry,

such as XYZ tristimulus values, L*a*b*, L*ch, ∆E*ab, ∆E*

94, metamerism index,…, and so

forth, Kubelka-Munk translucent equation, functions for Saunderson correction, and

database for colorimetry, such as color matching functions, ASTM weights for standard

illuminants (D65, D50 , A,…, etc.) is stored as the MATLAB library or toolbox named

under "munsell". When running the attached program scripts in each appendix, the

"munsell" library is indispensable. User should include the "munsell" in the search path

when working with the MATLAB environment. The program scripts developed for each

module of this research are shown in the following appendices.

This research adopted the spectral range from 400 nm to 700 nm at 10 nm interval.

Hence, all the spectral data should be of 31 components. Most sets of spectral data were

stored as column vectors. Whereas, a few sets of spectral data from large measurements

are stored as row vectors. User should be aware of the dimensionality of these matrices

before running the program.

Page 257: spectral-based color separation algorithm development - CiteSeer

237

APPENDIX A : MATLAB PROGRAMS FOR THE "MUNSELL"LIBRARY

asaunder.m

%This is the fuchtion of inverse Saunderson correction. The argument R_inf%is the corrected reflectance factor by Saunderson correction.

function R_meas=asaunder(R_inf)

k1=0.04;k2=0.6;

R_meas=((1-k1)*(1-k2)*R_inf)./(1-k2*R_inf);

cost_eig.m

%This the objective function of pos_tran.m performing all-positive%vector rotation. the first argument is the initially estimated coefficient%matrix which might rotate the set of input eigenvector (second argument)%matrix to an all positive basis vector matrix close to the third argument%(target-Spectra).

function [f, g]=cost_eig(coefficient, eigenvec, target_spectra)

new_basis = eigenvec*coefficient';

f=rms(target_spectra, new_basis); % rms: function for root-mean-square error

g(1,:)= [-new_basis]'; %the constraints for the positivity of the resultant vector

del_e94.m

%This program calculates the color difference in units of CIE94 color difference equation for two samples with ref1 and ref2, respectively,%where the white_point is a 31x1 reflectance vector of the reference white.%The illum_option is 1x2 vector of specifying the illuminant and observer

function De94=del_e94(ref1, ref2, white_point, illum_option)

if (nargin <= 1) fprintf('The first two argument are matrices of reflectance factors of the standard and trial samples,\n'); fprintf('The third argument is a reflectance vector of a white point.\n'); fprintf('The fourth argument is character string for a viewing illuminant.\n'); fprintf('It could be illumD65 or illumA.\n\n'); return;elseif nargin == 2 fprintf('The default white point is perfect white reflector.\n'); fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n\n'); white_point=ones(31,1); illum_option=[1 1];elseif nargin == 3 fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n\n'); illum_option=[1 1];end

Page 258: spectral-based color separation algorithm development - CiteSeer

238

lch1=lch_ab(ref1, white_point, illum_option);lch2=lch_ab(ref2, white_point, illum_option);

Lab1=lab(ref1, white_point, illum_option);Lab2=lab(ref2, white_point, illum_option);

del_L=lch1(:,1)-lch2(:,1);del_C=lch1(:,2)-lch2(:,2);

[m,n]=size(lch1);

del_H=zeros(m,1);

for i=1:m if (Lab1(i,2)*Lab2(i,3)) == (Lab2(i,2)*Lab1(i,3)) del_H(i,1)=0; elseif (Lab1(i,2)*Lab2(i,3)) > (Lab2(i,2)*Lab1(i,3)) del_H(i,1)= -sqrt(2*(lch1(i,2)*lch2(i,2)-Lab1(i,2)*Lab2(i,2)-Lab1(i,3)*Lab2(i,3))); else del_H(i,1)= sqrt(2*(lch1(i,2)*lch2(i,2)-Lab1(i,2)*Lab2(i,2)-Lab1(i,3)*Lab2(i,3))); endend

Cab=(lch1(:,2).*lch2(:,2)).^(0.5);%Cab=lch1(:,2);SL=1;SC=1+0.045*Cab;SH=1+0.015*Cab;

De94=sqrt((del_L./SL).^2 + (del_C./SC).^2 + (del_H./SH).^2);

etok.m

%This program is the objective function of the constrained optimization%process for the colorant estimation subsystem, where k_ink is the variable%of a set of estimated colorants represented in a linear color mixing space%such as K/S space. The pseudo is the coefficient of a set of eigenvectors,%named as eigenvec. The k_black is a black colorant in linear color mixing%space to be constrained for its pre-existence in the set of mixtures.

function [f,g]=etok(k_ink, pseudo, eigenvec, k_black)

k1=eigenvec*pseudo;k1=(abs(k1)+k1)/2;

%conc=pinv([k_ink k_black])*k1; %if need to constrain the pre-existence of black %k2=[k_ink k_black]*conc; %then use these two line

conc=pinv(k_ink)*k1;k2=k_ink*conc;

f=rms(k1,k2); %calculate the RMS error between two reconstructed set of samples

g=-conc; % concentration is constrained to be all-positive

Page 259: spectral-based color separation algorithm development - CiteSeer

239

k_pca.m

%This program calculates a required numbers (num_of_eig) of eigenvectors%(K_eig) for a set of sample (kovs) in linear color mixing space, where%the prin_fig is the option for displaying the plot of eigenvectors%if that is required.

function [K_eig, report]=k_pca(kovs, num_of_eig, prin_fig)

if nargin == 0 fprintf('The first argument is a matrix of K/S,\n'); fprintf('The second argument is the number of required eigenvectors.\n');elseif nargin == 1 fprintf('The default number of required eigenvectors is six.\n'); num_of_eig=6; prin_fig=0;elseif nargin == 2 prin_fig=0;end

lambda=[400:10:700];

sigma=cov(kovs');[vk,ek]=eig(sigma);ek=flipud(diag(ek));tot_per_var=sum(ek(1:num_of_eig))/sum(ek);per_var= ek/sum(ek);

cum_var=zeros(31,1);cum_var(1)=per_var(1);

for i=2:31 cum_var(i)=cum_var(i-1)+per_var(i);end

if prin_fig==1 figure subplot(2,1,1) plot(ek, 'r+') title('The 31 eigenvalues based on K/S.') xlabel('The ith eigenvectors.') ylabel('Eigenvalue')

subplot(2,1,2) plot(cum_var*100, 'r+') title('The cumulative variance% of i eigenvectors based on K/S.') xlabel('The ith eigenvectors.') ylabel('Variance%')

fprintf('The total percent variance described by %g\n', num_of_eig) fprintf('eigenvectors in K/S space is %f\n', tot_per_var*100);

if num_of_eig <=6 figure subplot(2,3,1) plot(lambda, vk(:,31),'r') title('The 1st eigenvector.') %xlabel('Wavelength') ylabel('K/S') axis([400 700 -1 1]);

subplot(2,3,2)

Page 260: spectral-based color separation algorithm development - CiteSeer

240

plot(lambda, vk(:,30),'r') title('The 2nd eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S) axis([400 700 -1 1]);

subplot(2,3,3) plot(lambda, vk(:,29),'r') title('The 3rd eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,4) plot(lambda, vk(:,28),'r') title('The 4th eigenvector.') xlabel('Wavelength') ylabel('K/S') axis([400 700 -1 1]);

subplot(2,3,5) plot(lambda, vk(:,27),'r') title('The 5th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,6) plot(lambda, vk(:,26),'r') title('The 6th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

else figure subplot(2,3,1) plot(lambda, vk(:,31),'r') title('The 1st eigenvector.') %xlabel('Wavelength') ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,2) plot(lambda, vk(:,30),'r') title('The 2nd eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,3) plot(lambda, vk(:,29),'r') title('The 3rd eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,4) plot(lambda, vk(:,28),'r') title('The 4th eigenvector.') xlabel('Wavelength') ylabel('Pseudo-K/S') axis([400 700 -1 1]);

Page 261: spectral-based color separation algorithm development - CiteSeer

241

subplot(2,3,5) plot(lambda, vk(:,27),'r') title('The 5th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,6) plot(lambda, vk(:,26),'r') title('The 6th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

figure subplot(2,3,1) plot(lambda, vk(:,25),'r') title('The 7th eigenvector.') %xlabel('Wavelength') ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,2) plot(lambda, vk(:,24),'r') title('The 8th eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,3) plot(lambda, vk(:,23),'r') title('The 9th eigenvector.') %xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,4) plot(lambda, vk(:,22),'r') title('The 10th eigenvector.') xlabel('Wavelength') ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,5) plot(lambda, vk(:,21),'r') title('The 11th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);

subplot(2,3,6) plot(lambda, vk(:,20),'r') title('The 12th eigenvector.') xlabel('Wavelength') %ylabel('Pseudo-K/S') axis([400 700 -1 1]);endend % if prin_fig=='on'

report=[ek(1:num_of_eig) per_var(1:num_of_eig) cum_var(1:num_of_eig)];vk=fliplr(vk);K_eig=vk(:,1:num_of_eig);

Page 262: spectral-based color separation algorithm development - CiteSeer

242

km_trans.m

%This program calculated the surface reflectance of translucent material by%the Kubleka-Munk basic equation

function reflectance=km_trans(thickness, ks, Rg)

a=1+(ks(:,1)./ks(:,2));

b=sqrt((a.^2)-1);

reflectance= (1-Rg.*(a-b.*coth(b.*ks(:,2)*thickness)))./(a-Rg+b.*coth(b.*ks(:,2)*thickness));

lab.m

%This function calculates the CIELAB value of a sample with reflectance factor,%stored as reflect1, where the white_point is a 31x1 reflectance vector%of the reference white. The illum_option is 1x2 vector of specifying%the illuminant and observer

function Lab= lab(reflect1, white_point, illum_option)

if nargin == 0 fprintf('The first argument is a matrix of reflectance,\n'); fprintf('The second argument is a reflectance vector of a white point.\n'); fprintf('The third argument is character string for a viewing illuminant.\n'); fprintf('It could be illumD65_2, illumD65_10, illumA_2, or illumA_10.\n\n'); return;elseif nargin == 1 fprintf('The default white point is perfect white reflector.\n'); fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n'); white_point=ones(31,1); illum_option=[1 1];elseif nargin == 2 fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n'); illum_option=[1 1];end

if (illum_option(1)==1)&(illum_option(2)==1) load wd65_2.dat; XYZ_1=[wd65_2'* reflect1]'; XnYnZn =[wd65_2'* white_point]';elseif (illum_option(1)==1)&(illum_option(2)==2) load wd65_10.dat; XYZ_1=[wd65_10'* reflect1]'; XnYnZn =[wd65_10'* white_point]';elseif (illum_option(1)==2)&(illum_option(2)==1) load wa_2.dat; XYZ_1=[wa_2'* reflect1]'; XnYnZn =[wa_2'* white_point]';elseif (illum_option(1)==2)&(illum_option(2)==2) load wa_10.dat; XYZ_1=[wa_10'* reflect1]'; XnYnZn =[wa_10'* white_point]';

Page 263: spectral-based color separation algorithm development - CiteSeer

243

elseif (illum_option(1)==3)&(illum_option(2)==1) load wd50_2.dat; XYZ_1=[wd50_2'* reflect1]'; XnYnZn =[wd50_2'* white_point]';elseif (illum_option(1)==3)&(illum_option(2)==2) load wd50_10.dat; XYZ_1=[wd50_10'* reflect1]'; XnYnZn =[wd50_10'* white_point]';

elseif (illum_option(1)==4)&(illum_option(2)==1) load wf2_2.dat; XYZ_1=[wf2_2'* reflect1]'; XnYnZn =[wf2_2'* white_point]';elseif (illum_option(1)==4)&(illum_option(2)==2) load wf2_10.dat; XYZ_1=[wf2_10'* reflect1]'; XnYnZn =[wf2_10'* white_point]';

elseif (illum_option(1)==5)&(illum_option(2)==1) load wf7_2.dat; XYZ_1=[wf7_2'* reflect1]'; XnYnZn =[wf7_2'* white_point]';end

Lab=xyz_lab(XYZ_1, XnYnZn);

lch_ab.m

%This function calculates the CIELCH value of a sample with reflectance factor,%stored as reflect1, where the white_point is a 31x1 reflectance vector%of the reference white. The illum_option is 1x2 vector of specifying%the illuminant and observer

function LCH=lch_ab(reflectance, white_point, illum_option)

if nargin == 0 fprintf('The first argument is a matrix of reflectance,\n'); fprintf('The second argument is a reflectance vector of a white point.\n'); fprintf('The third argument is character string for a viewing illuminant.\n'); fprintf('It could be illumD65 or illumA.\n\n'); return;elseif nargin == 1 fprintf('The default white point is perfect white reflector.\n'); fprintf('The default illuminant is D65.\n\n'); white_point=ones(31,1); illum_option=[1 1];elseif nargin == 2 fprintf('The default illuminant is D65.\n\n'); illum_option=[1 1];end

LAB=lab(reflectance, white_point, illum_option);

LCH(:,1)=LAB(:,1);LCH(:,2)=sqrt((LAB(:,2).^2)+(LAB(:,3).^2));

[m,n]=size(LAB);

Page 264: spectral-based color separation algorithm development - CiteSeer

244

for i=1:m if (LAB(i,2)==0) & (LAB(i,3)==0) LCH(i,3)=0; elseif (LAB(i,2)==0) & (LAB(i,3)>0) LCH(i,3)=pi/2; elseif (LAB(i,2)==0) & (LAB(i,3)<0) LCH(i,3)=-pi/2; elseif (LAB(i,2)<0) & (LAB(i,3)==0) LCH(i,3)=pi; else LCH(i,3)=atan2(LAB(i,3), LAB(i,2))*180/pi; endend

meta_idx.m

%This function calculates the index of metaterism between the standard and the trial samples.%This function needs two to four arguments.%The 1st argument is a 31xn matrix of standard reflectance,%The 2nd argument is a 31xn matrix of trial reflectance,%The 3rd argument is the 31x1 reflectance vector of a white point, and%The 4th argument is an 1x3 vector of options.%% option(1) = 1: standard illuminant is D65.% = 2: standard illuminant is A.% = 3: standard illuminant is D50.% = 4: standard illuminant is f2.% = 5: standard illuminant is f7.%This illuminant is used for a standard viewing illuminant.%% option(2) = 1: referential illuminant is D65.% = 2: referential illuminant is A.% = 3: referential illuminant = D50.% = 4: standard illuminate is f2.% = 5: standard illuminate is f7.

%This illuminate is used for indicating the degree of metamerism.%% option(3) = 1: 2 degree observer.% = 2: 10 degree observer.%This indicates the color matching function used for calculation.%% option(4) = 1: color difference metric is delta Eab.% = 2: color difference metric is delta Eab94.%This color difference metric is used for calculating the index of metamerism.%%The defult option = [1 2 1 2].

function meta_index=meta_idx(standard, trial, white_point, option)

if nargin < 3 fprintf('The first argument is a matrix of standard reflectance,\n\n'); fprintf('The second argument is a matrix of trial reflectance.\n\n'); fprintf('The third argument is the 31x1 reflectance vector of a white point.\n'); fprintf('The default white point is prd.\n'); fprintf('The 4th argument is an 1x3 vector of options.\n'); fprintf('Type >>help meta_idx for details. \n\n');

elseif nargin == 2

Page 265: spectral-based color separation algorithm development - CiteSeer

245

fprintf('The default white point is prd and.\n'); fprintf('The default defult option = [1 2 1 2], Type >>help meta_idx for details.\n'); white_point=ones(31,1); option = [1 2 1 2];elseif nargin == 3 fprintf('The default defult option = [1 2 1 2], Type >>help meta_idx for details.\n'); option = [1 2 1 2];end

if option(1)==option(2) fprintf('ERROR :The standard and referencial viewing illuminant are the same.\n'); fprintf(' The results of metameric index are not reliable.\n\n');end

corrected_spectra=pcorrect(standard, trial, [option(1) option(3)]);

if option(4)==1 meta_index=del_e(standard, corrected_spectra, white_point, [option(2) option(3)]);elseif option(4)==2 meta_index=del_e94(standard, corrected_spectra, white_point, [option(2) option(3)]);end

off_fn.m

%This is the objective function for the optimization process of estimating%the offset vector of the empirical transformation derived for opaque%colorant represented in the resultant linear color mixing space, where%b is the offset vector, sample is a reflectance matrix of a set of sample%requiring reproduction, and po is the power (default=0.5).

function [f,g]=off_fn(b, sample, po, numofeig)[n,m]=size(sample);

tmp=b;for i=2:m tmp=[tmp b];end

k_paint=tmp-(sample.^po);[eig_k, repk]=k_pca(k_paint,numofeig);psu_con=pinv(eig_k)*k_paint;ks_recon=eig_k*psu_con;ks_recon=(abs(ks_recon)+ks_recon)/2;%R_pred=(tmp-ks_recon).^(1/po);

f=rms(k_paint, ks_recon);%f=rms(R_pred, sample);

g=-k_paint;

pcorrect.m

%This function calculate the corrected spectrum for two sample which are paramour%based on the article of Fairman (1987). Refer to the program meta_idx.m for the%definitions of the input arguments.

function corrected_spectra=pcorrect(standard, trial, illum_option)

Page 266: spectral-based color separation algorithm development - CiteSeer

246

if nargin < 2 fprintf('The first argument is a matrix of standard reflectance,\n'); fprintf('The second argument is a matrix of trial reflectance.\n'); fprintf('The third argument is character string for a viewing illuminant.\n'); fprintf('It could be illumD65, illumA, or illumd50.\n\n');elseif nargin == 2 fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n'); illum_option=[1 1];end

if (illum_option(1)==1)&(illum_option(2)==1) load wd65_2.dat; light_source=wd65_2;elseif (illum_option(1)==1)&(illum_option(2)==2) load wd65_10.dat; light_source=wd65_10;elseif (illum_option(1)==2)&(illum_option(2)==1) load wa_2.dat; light_source=wa_2;elseif (illum_option(1)==2)&(illum_option(2)==2) load wa_10.dat; light_source=wa_10;elseif (illum_option(1)==3)&(illum_option(2)==1) load wd50_2.dat; light_source=wd50_2;elseif (illum_option(1)==3)&(illum_option(2)==2) load wd50_10.dat; light_source=wd50_10;elseif (illum_option(1)==4)&(illum_option(2)==1) load wf2_2.dat; light_source=wf2_2;elseif (illum_option(1)==4)&(illum_option(2)==2) load wf2_10.dat; light_source=wf2_10;elseif (illum_option(1)==5) load wf7_2.dat; light_source=wf7_2;

end

R=light_source*inv(light_source'*light_source)*light_source';

[m,n]=size(R);

identity=diag(ones(m,1));

corrected_spectra=R*standard + (identity-R)*trial;

saunder.m

%This fuction performs the Saunderson's correction to the discontinuity%of the refractive index for two material in optical contact with each other

function R_inf=saunder(R_meas)

k1=0.04;k2=0.6;

Page 267: spectral-based color separation algorithm development - CiteSeer

247

R_inf=R_meas./(1-k1-k2+k1*k2+k2*R_meas);

xyz.m

%This program calculates the XYZ tristimulus. Refer to the lab.m for the definition of arguments.

function [XYZ, xy]=xyz(reflect1, illum_option)

if nargin == 0 fprintf('The first argument is a matrix of reflectance,\n'); fprintf('The second argument is character string for a viewing illuminant.\n'); fprintf('It could be illumD65_2, illumD65_10, illumA_2, or illumA_10.\n\n'); return;elseif nargin == 1 fprintf('The default illuminant is D65 of 2 degree ASTM weight.\n'); illum_option=[1 1];end

if (illum_option(1)==1)&(illum_option(2)==1) load wd65_2.dat; XYZ=[wd65_2'* reflect1]';elseif (illum_option(1)==1)&(illum_option(2)==2) load wd65_10.dat; XYZ=[wd65_10'* reflect1]';elseif (illum_option(1)==2)&(illum_option(2)==1) load wa_2.dat; XYZ=[wa_2'* reflect1]';elseif (illum_option(1)==2)&(illum_option(2)==2) load wa_10.dat; XYZ=[wa_10'* reflect1]';elseif (illum_option(1)==3)&(illum_option(2)==1) load wd50_2.dat; XYZ=[wd50_2'* reflect1]';elseif (illum_option(1)==3)&(illum_option(2)==2) load wd50_10.dat; XYZ=[wd50_10'* reflect1]';

elseif (illum_option(1)==4)&(illum_option(2)==1) load wf2_2.dat; XYZ=[wf2_2'* reflect1]';elseif (illum_option(1)==4)&(illum_option(2)==2) load wf2_10.dat; XYZ=[wf2_10'* reflect1]';

elseif (illum_option(1)==5)&(illum_option(2)==1) load wf7_2.dat; XYZ=[wf7_2'* reflect1]';

end

[m,n]=size(XYZ);

for i=1:m xy(i,1)=XYZ(i,1)/sum(XYZ(i,:)); xy(i,2)=XYZ(i,2)/sum(XYZ(i,:));end

Page 268: spectral-based color separation algorithm development - CiteSeer

248

APPENDIX B : MATLAB PROGRAMS FOR THE COLORANTESTIMATION SUBSYSTEM

The following diagram depicts the program structure of the process for the colorant estimation subsystem.

Main Program

(colorant_est.m)

Optimization for theoffset vector of the

empirical transformationPrincipal component analysis Colorant estimation

colorant_est.m

%This program was implemented based on the algorithm of the colorant estimation research.%It estimates the underlying colorant of a set of 105 opaque mixtures obtained by hand mixing%six opaque Poster Colorants

close all; clear all;

load target105.txt %the 105 patches of the hand mixed poster colorspaint=target105; %now paint is the matrix of the reflectance spectra %of the 105 patches

lambda=[400:10:700]';

load white.txt;R_paper=white; %white is the reflectance spectrum of the reference white %now R_paper is the reference white

%************************************************************************************%This section of scripts performance the optimization to obtain the offset vector of the%empirical transformation for opaque color represented in a linear colorant mixing space%named psi space%************************************************************************************

b=ones(31,1); %initializing the offset vector of the empirical transformation

numeig=6; %number of eigenvector is six due to the 105 samples were mixed with six poster colors

Page 269: spectral-based color separation algorithm development - CiteSeer

249

vlb=zeros(31,1);vub=ones(31,1);options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=10000000;

po=1/2; %power of the empirical transformation

b=constr('off_fn', b, options, vlb, vub, '', paint, po, numeig);

[n,m]=size(paint);

tmp=b;for i=2:m tmp=[tmp b];end

b=tmp; %now b is a 31x105 matrixclear tmp;

k_meas=b-paint.^(po); %the 105 mixtures were transformed to a linear colorant mixing representation

[eig6_k, report]=k_pca(k_meas, numeig, 1); %deriving the six eigenvectors from the psi space

fprintf('The total percent variance described by 6 eigenvectors in psi space is %f\n', report(numeig,3)*100);

%************************************************************************************% Spectral reconstruction by PCA analysis% Model : K_reconstruction = eig6_k * C%************************************************************************************

pseudo_con100=pinv(eig6_k(:,1:6))*k_meas;k_recon=eig6_k(:,1:6)*pseudo_con100;R_predicted=(b-k_recon).^(1/po);

delta_e94=del_e94(R_predicted, paint, R_paper);

fprintf('The statistical results of the delta E94')fprintf( 'Mean \t\t%f\n', mean(delta_e94) );fprintf( 'Standard Deviation \t\t%f\n', std(delta_e94) );fprintf( 'Maximum \t\t%f\n', max(delta_e94) );fprintf( 'Minimum \t\t%f\n\n', min(delta_e94) );

spectral_RMS = RMS( R_predicted, paint );

midx=meta_idx(R_predicted, paint, R_paper);fprintf('The statistical results of the metamerism index')fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

fprintf( 'The root mean square error by 6 eigenvectors in reflectance space is %f\n\n', spectral_RMS );

figure[yy,xx]=hist(delta_e94);bar(xx,yy,'r')title('The histogram color difference between measured and predicted by PCA.')xlabel('Delta E94')

Page 270: spectral-based color separation algorithm development - CiteSeer

250

ylabel('Frequency')

%************************************************************************************%This section is performing the colorant estimation for the 105 mixtures based on the%proposed constrained vector rotation theory% pos_est.txt is the stored text file of the best estimation in psi space%************************************************************************************

k_ink=b(:,1:6)-primary.^(1/2); %k_ink is the initial estimated six colorant for the 105 mixtures

vlb=ones(31,6)*0.05;vub=b(:,1:6);options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=100000000000000000;

Black=ones(31,1)*0.95; %if the black is constrained to be the pre-existing colorant

k_ink=constr('etok', k_ink, options, vlb, vub, '',pseudo_con100, eig6_k(:,1:6), black);

conc=pinv([black k_ink])*eig6_k(:,1:6)*pseudo_con100;k_recon=[black k_ink]*conc;

%conc=pinv(k_ink)*eig6_k(:,1:6)*pseudo_con100; %if the black is not constrained, use these two lines%k_recon=k_ink*conc;

R_predicted=(b-k_recon).^(1/po);

delta_e94=del_e94(R_predicted,paint, R_paper);fprintf('The average color difference between measured and predicted by choosed ink-set %f\n', mean(delta_e94));fprintf( 'Mean \t\t%f\n', mean(delta_e94) );fprintf( 'Standard Deviation \t\t%f\n', std(delta_e94) );fprintf( 'Maximum \t\t%f\n', max(delta_e94) );fprintf( 'Minimum \t\t%f\n\n', min(delta_e94) );

spectral_RMS = RMS( R_predicted, paint );

fprintf( 'The root mean square error of the 100 measurements is %f\n\n', spectral_RMS );

figure[yy,xx]=hist(delta_e94);bar(xx,yy,'r')title('The histogram of color difference between measured and predicted by 6C K-M.')xlabel('Delta E94')ylabel('Frequency')

midx=meta_idx(R_predicted, paint, R_paper);fprintf('The average color difference between measured and predicted undek illum A by choosed ink-set %f\n', mean(midx));fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

figure[yy,xx]=hist(midx);bar(xx,yy,'r')title('The histogram of color difference between measured and predicted by parametric method.')xlabel('Delta E under illum A for corrected paramers')ylabel('Frequency')

Page 271: spectral-based color separation algorithm development - CiteSeer

251

APPENDIX C : MATLAB PROGRAMS FOR THE INK SELECTIONSUBSYSTEM

The following diagram depicts the program structure of the process for the ink selection subsystem.

Main Program

(inkselection.m)

Highest chroma selection

Performance evaluation for 32 candidate ink sets by

continuous tone approximation

Vector correlation analysis

inkselection.m

%This program performs the analysis based on the ink selection algorithm

close all; clear all;load pan18.txt; %the ink database of 14 Pantone basic color and 4 process CMYKload pos_rest.txt; %the statistical primaries of the 105 mixtures

lambda=[400:10:700]';

figure;for i=1:18 subplot(3,6,i); plot(lambda, pan18(:,i)); axis([400 700 0 1]);end

load panwhite.txtR_paper=panwhite; %the reference white is the coated paper printed with Pantone inks

pan16=[pan18(:,1:13) pan18(:,15:17)]; % the two black inks are the sure candidates % only 16 colors need to be correlated[r,c]=size(pan16);

po=1/3.5; %the power of the empirical transformation is 1/3.5 for transparent/translucent %ink in optical contact with an opaque substrate (R_paper)

tmp=R_paper.^po; %the offest vector in this case is R_paper.^(1/3.5)

Page 272: spectral-based color separation algorithm development - CiteSeer

252

for i=2:c tmp=[tmp R_paper.^po];end

b=tmp;clear tmp;

%************************************************************************************% Vector correlation analysis%************************************************************************************coef_tab=zeros(5,c);

for i=1:5 for j=1:c tmpcorr=corrcoef(b(:,1)-pos_rest(:,i).^po, b(:,1)-pan16(:,j).^po); coef_tab(i,j)=tmpcorr(1,2); endend

coef_tab=coef_tab'; %correlation coefficients are stored in coef_tab

%************************************************************************************% Selecting the two highest chroma values%************************************************************************************

lab_pan16=lab(pan16,R_paper,[3 1]);chroma=sqrt(lab_pan16(:,2).^2+lab_pan16(:,3).^2);

[coef1,idx1]=sortrows([coef_tab(:,1) chroma]);coef1=flipud(coef1);idx1=flipud(idx1);

[coef2,idx2]=sortrows([coef_tab(:,2) chroma]);coef2=flipud(coef2);idx2=flipud(idx2);

[coef3,idx3]=sortrows([coef_tab(:,3) chroma]);coef3=flipud(coef3);idx3=flipud(idx3);

[coef4,idx4]=sortrows([coef_tab(:,4) chroma]);coef4=flipud(coef4);idx4=flipud(idx4);

[coef5,idx5]=sortrows([coef_tab(:,5) chroma]);coef5=flipud(coef5);idx5=flipud(idx5);

tmpcoef=[coef1(:,1) coef2(:,1) coef3(:,1) coef4(:,1) coef5(:,1)];tmpchroma=[coef1(:,2) coef2(:,2) coef3(:,2) coef4(:,2) coef5(:,2)];tmpidx=[idx1 idx2 idx3 idx4 idx5];

%************************************************************************************% Performance analysis for each candidate ink set by Continuous tone approximation%************************************************************************************

load target105.txt %the reflectance spectra of the 105 mixtures[m,n]=size(target105);load inkset.txt %32 sets of ink combinations formed by the 11 selected inks

tmp=R_paper.^po;for i=2:n

Page 273: spectral-based color separation algorithm development - CiteSeer

253

tmp=[tmp R_paper.^po];end

b=tmp;clear tmp;

k_tar=b-target105.^po; %the 105 mixtures represented in psi space

pan18=[pan16 pan18(:,14) pan18(:,18)];

performance=zeros(32,9); %accuracy of the 32 sets are stored in performancefor i=1:32 conc=zeros(6,n); primary=[pan18(:,inkset(i,1)) pan18(:,inkset(i,2)) pan18(:,inkset(i,3))]; primary=[primary pan18(:,inkset(i,4)) pan18(:,inkset(i,5)) pan18(:,inkset(i,6))]; k_prmy=b(:,1:6)-primary.^po; for j=1:n conc(:,j)=nnls(k_prmy, k_tar(:,j)); end k_recon=k_prmy*conc; R_predicted=(b-k_recon).^(1/po); delta_e94=del_e94(target105, R_predicted,R_paper,[3 1]); midx=meta_idx(target105, R_predicted, R_paper, [3 1 2 1]); performance(i,1)=mean(midx); performance(i,2)=std(midx); performance(i,3)=max(midx); performance(i,4)=min(midx); performance(i,5)=mean(delta_e94); performance(i,6)=std(delta_e94); performance(i,7)=max(delta_e94); performance(i,8)=min(delta_e94); performance(i,9)=rms(target105,R_predicted);end

[mdx,imdx]=sortrows(performance);

load sam94set.txttemp=sam94set;

figure;plot(lambda,temp(:,1),'b', lambda,temp(:,2),'m:',lambda,temp(:,3),'g-.', lambda,temp(:,4),'k--')xlabel('Wavelength')ylabel('Reflectance factor')axis([400 700 0 1])legend('Measured', 'Set 23','Set 24','Set 19')

figure;plot(lambda,temp(:,1),'b', lambda,temp(:,5),'m:',lambda,temp(:,6),'g-.', lambda,temp(:,7),'k--')xlabel('Wavelength')ylabel('Reflectance factor')axis([400 700 0 1])legend('Measured', 'Set 26','Set 14','Set 9')

figure;plot(lambda,temp(:,1),'b', lambda,temp(:,2),'m:',lambda,temp(:,5),'k-.')xlabel('Wavelength')ylabel('Reflectance factor')axis([400 700 0 1])legend('Measured', 'Set 23','Set 26')

Page 274: spectral-based color separation algorithm development - CiteSeer

254

APPENDIX D : MATLAB PROGRAMS FOR THE INK OVERPRINTPREDICTION SUBSYSTEM

There are two parts of this subsystem. The first estimates the absorption (K) and scattering (S) coefficientsof translucent ink. The second uses the estimated K and S to predicted an overprint by using the K, S, andthickness data of the topmost layer ink and the reflectance data the layer underneath the topmost layer asthe parameters of the Kubelka-Munk basic equation. The first process is the program named ksfind.m andthe second is named overprint.m

The following diagram is the structure chart of the first component for K and S estimation for translucentinks.

Main Program

(ksfind.m)

K&S estimation for Yellow ink

K&S estimation for magenta ink

K&S estimation for cyan ink

K&S estimation for red ink

K&S estimation for green ink

K&S estimation for blue ink

Objective function(ksest.m)

Objective function(ksest.m)

Objective function(ksest.m)

Objective function(ksest.m)

Objective function(ksest.m)

Objective function(ksest.m)

ksfind.m

%This program estimates the absorption (K) and scattering (S) coefficients for translucent%inks

clear all; close all;load black_b.txt; %reflectance spectrum of the black surface of contrast paperload white_b.txt; %reflectance spectrum of the white surface of contrast paperload r_on_ba.txt; %reflectance spectra of primary inks printed on contrast paper %data order is ink printed on white followed by ink printed on black

r_on_ba2=saunder(r_on_ba); %reflectance spectra of primary inks printed on contrast % paper after saunderson's correctionlambda=[400:10:700]';

%************************************************************************************% Determining the K and S for yellow ink%************************************************************************************

ks_yel(:,1)=white_b-r_on_ba2(:,1); %initialing K for yellow inkks_yel(:,2)=r_on_ba2(:,2)-black_b; %initialing S for yellow ink %K&S data are stored as K followed by Sks_yel=abs(ks_yel);

Page 275: spectral-based color separation algorithm development - CiteSeer

255

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*100;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_yel=constr('ksest', ks_yel, options, vlb, vub, '',r_on_ba(:,1), r_on_ba(:,2), white_b, black_b);

figureplot(lambda, ks_yel(:,1),'b', lambda, ks_yel(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of yellow ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

ay=1+(ks_yel(:,1)./ks_yel(:,2));by= sqrt(ay.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);Ry_est= (1-white_b.*(ay-by.*coth(by.*ks_yel(:,2))))./(ay-white_b+by.*coth(by.*ks_yel(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRy_est=asaunder(Ry_est);deltaE94=del_e94(r_on_ba(:,1), Ry_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,1),'b', lambda, Ry_est,'m')title('The measured and predicted reflectance of yellow ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

%************************************************************************************% Determining the K and S for magenta ink%************************************************************************************load white_b.txt; %reflectance spectrum of the white surface of contrast paperks_mag(:,1)=white_b-r_on_ba2(:,3); %initialing K for magenta inkks_mag(:,2)=r_on_ba2(:,4)-black_b; %initialing S for magenta inkks_mag=abs(ks_mag);

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*100;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_mag=constr('ksest', ks_mag, options, vlb, vub, '',r_on_ba(:,3), r_on_ba(:,4), white_b, black_b);

figureplot(lambda, ks_mag(:,1),'b', lambda, ks_mag(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of magenta ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

am=1+(ks_mag(:,1)./ks_mag(:,2));bm= sqrt(am.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);

Page 276: spectral-based color separation algorithm development - CiteSeer

256

Rm_est= (1-white_b.*(am-bm.*coth(bm.*ks_mag(:,2))))./(am-white_b+bm.*coth(bm.*ks_mag(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRm_est=asaunder(Rm_est);

deltaE94=del_e94(r_on_ba(:,3), Rm_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,3),'b', lambda, Rm_est,'m')title('The measured and predicted reflectance of magenta ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

%************************************************************************************% Determining the K and S for cyan ink%************************************************************************************load white_b.txt; %reflectance spectrum of the white surface of contrast paperks_cyan(:,1)=white_b-r_on_ba2(:,5); %initialing K for cyan inkks_cyan(:,2)=r_on_ba2(:,6)-black_b; %initialing S for cyan inkks_cyan=abs(ks_cyan);

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*10;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_cyan=constr('ksest', ks_cyan, options, vlb, vub, '',r_on_ba(:,5), r_on_ba(:,6), white_b, black_b);

figureplot(lambda, ks_cyan(:,1),'b', lambda, ks_cyan(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of cyan ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

ac=1+(ks_cyan(:,1)./ks_cyan(:,2));bc= sqrt(ac.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);Rc_est= (1-white_b.*(ac-bc.*coth(bc.*ks_cyan(:,2))))./(ac-white_b+bc.*coth(bc.*ks_cyan(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRc_est=asaunder(Rc_est);

deltaE94=del_e94(r_on_ba(:,5), Rc_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,5),'b', lambda, Rc_est,'m')title('The measured and predicted reflectance of cyan ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

%************************************************************************************% Determining the K and S for red ink%************************************************************************************load white_b.txt; %reflectance spectrum of the white surface of contrast paperks_red(:,1)=white_b-r_on_ba2(:,7); %initialing K for red inkks_red(:,2)=r_on_ba2(:,8)-black_b;ks_red=abs(ks_red);

Page 277: spectral-based color separation algorithm development - CiteSeer

257

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*10;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_red=constr('ksest', ks_red, options, vlb, vub, '',r_on_ba(:,7), r_on_ba(:,8), white_b, black_b);

figureplot(lambda, ks_red(:,1),'b', lambda, ks_red(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of red ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

ar=1+(ks_red(:,1)./ks_red(:,2));br= sqrt(ar.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);Rr_est= (1-white_b.*(ar-br.*coth(br.*ks_red(:,2))))./(ar-white_b+br.*coth(br.*ks_red(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRr_est=asaunder(Rr_est);

deltaE94=del_e94(r_on_ba(:,7), Rr_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,7),'b', lambda, Rr_est,'m')title('The measured and predicted reflectance of red ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

%************************************************************************************% Determining the K and S for green ink%************************************************************************************load white_b.txt; %reflectance spectrum of the white surface of contrast paperks_grn(:,1)=white_b-r_on_ba2(:,9); %initialing K for green inkks_grn(:,2)=r_on_ba2(:,10)-black_b; %initialing S for green inkks_grn=abs(ks_grn);

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*10;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_grn=constr('ksest', ks_grn, options, vlb, vub, '',r_on_ba(:,9), r_on_ba(:,10), white_b, black_b);

figureplot(lambda, ks_grn(:,1),'b', lambda, ks_grn(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of green ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

ag=1+(ks_grn(:,1)./ks_grn(:,2));bg= sqrt(ag.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);

Page 278: spectral-based color separation algorithm development - CiteSeer

258

Rg_est= (1-white_b.*(ag-bg.*coth(bg.*ks_grn(:,2))))./(ag-white_b+bg.*coth(bg.*ks_grn(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRg_est=asaunder(Rg_est);

deltaE94=del_e94(r_on_ba(:,9), Rg_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,9),'b', lambda, Rg_est,'m')title('The measured and predicted reflectance of green ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

%************************************************************************************% Determining the K and S for blue ink%************************************************************************************load white_b.txt; %reflectance spectrum of the white surface of contrast paperks_blu(:,1)=white_b-r_on_ba2(:,11); %initialing K for blue inkks_blu(:,2)=r_on_ba2(:,12)-black_b; %initialing S for blue inkks_blu=abs(ks_blu);

vlb=ones(31,2)*0.000000000001;vub=ones(31,2)*10;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=1000000;

ks_blu=constr('ksest', ks_blu, options, vlb, vub, '',r_on_ba(:,11), r_on_ba(:,12), white_b, black_b);

figureplot(lambda, ks_blu(:,1),'b', lambda, ks_blu(:,2), 'm')title('The estimated spectral absorption and scattering coefficient of blue ink.')xlabel('Wavelength')ylabel('Absorption and Scattering Coefficient')legend('b', 'Absorbtion', 'm','Scattering')

ab=1+(ks_blu(:,1)./ks_blu(:,2));bb= sqrt(ab.^2-1); %a and b parameters of the Kubelka-Munk basic equation

white_b=saunder(white_b);Rb_est= (1-white_b.*(ab-bb.*coth(bb.*ks_blu(:,2))))./(ab-white_b+bb.*coth(bb.*ks_blu(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRb_est=asaunder(Rb_est);

deltaE94=del_e94(r_on_ba(:,11), Rb_est, white_b)T=num2str( deltaE94, 4 );figureplot(lambda, r_on_ba(:,11),'b', lambda, Rb_est,'m')title('The measured and predicted reflectance of blue ink.')xlabel('Wavelength')ylabel('Reflectance factor')legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)

ks=[ks_yel ks_mag ks_cyan ks_red ks_grn ks_blu];

save 'du_ks.txt' ks -ASCII -DOUBLE -TABS

Page 279: spectral-based color separation algorithm development - CiteSeer

259

ksest.m

%This is program of the objective function for estimating the absorption and scattering%coefficients for translucent inks

function [f,g]=ksest(ks, Ronw, Ronbk, white, black)

aw=1+(ks(:,1)./ks(:,2));bw= sqrt((aw.^2)-1); %a and b parameters of the Kubelka-Munk basic equation

white=saunder(white);black=saunder(black);Rw_est= (1-white.*(aw-bw.*coth(bw.*ks(:,2))))./(aw-white+bw.*coth(bw.*ks(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRw_est=asaunder(Rw_est);ak=1+(ks(:,1)./ks(:,2));bk= sqrt(ak.^2-1); %a and b parameters of the Kubelka-Munk basic equation

Rk_est= (1-black.*(ak-bk.*coth(bk.*ks(:,2))))./(ak-black+bk.*coth(bk.*ks(:,2))); %Reflectance estimation by the Kubelka-Munk basic equationRk_est=asaunder(Rk_est);f=rms([Ronw Ronbk], [Rw_est Rk_est]);

g=-[Rw_est Rk_est];

The following diagram is the structure chart of the ink overprint prediction.

Main Program

(overprint.m)

Overpr1.m

Thicknessestimation

Ink overprintestimation

thickest.m km_trans.m

Overpr2.m

Thicknessestimation

Ink overprintestimation

thickest.m km_trans.m

Overpr3.m

Thicknessestimation

Ink overprintestimation

thickest.m km_trans.m

Overpr4.m

Thicknessestimation

Ink overprintestimation

thickest.m km_trans.m

Page 280: spectral-based color separation algorithm development - CiteSeer

260

overprint.m

%This program performs the spectral reflectance factor prediction of ink overprintload ks_dup.sn1; %the absorption and scattering information of the CMYRGB primaries %are stored in a text file named ks_dup.sn1

figuresubplot(2,3,1)plot(lambda, ks_dup(:,1),'b',lambda, ks_dup(:,2)*10,'k:')title('Cyan')ylabel('K or S')axis([400 700 0 3])

subplot(2,3,2)plot(lambda, ks_dup(:,3),'b',lambda, ks_dup(:,4)*10,'k:')title('Magenta')axis([400 700 0 3])

subplot(2,3,3)plot(lambda, ks_dup(:,5),'b',lambda, ks_dup(:,6)*10,'k:')title('Yellow')axis([400 700 0 3])

subplot(2,3,4)plot(lambda, ks_dup(:,7),'b',lambda, ks_dup(:,8)*10,'k:')title('Red')xlabel('Wavelength')ylabel('K or S')axis([400 700 0 3])

subplot(2,3,5)plot(lambda, ks_dup(:,9),'b',lambda, ks_dup(:,10)*10,'k:')title('Green')xlabel('Wavelength')axis([400 700 0 3])

subplot(2,3,6)plot(lambda, ks_dup(:,11),'b',lambda, ks_dup(:,12)*10,'k:')title('Blue')xlabel('Wavelength')axis([400 700 0 3])

overpr1; %prediction of the 1st set of ink overprints proceduced by Waterproofo_est=over_est;overpr2; %prediction of the 2nd set of ink overprints proceduced by Waterproofo_est=[o_est over_est];overpr3; %prediction of the 3rd set of ink overprints proceduced by Waterproofo_est=[o_est over_est];overpr4; %prediction of the 4th set of ink overprints proceduced by Waterproofo_est=[o_est over_est];

load duover.txt; %25 ink overprints produced by Waterproof

deltaE94=del_e94(duover, o_est, ones(31,1), [3 1]);fprintf('The average color difference between measured and predicted DuPont overprints is \n');fprintf( 'Mean \t\t%f\n', mean(deltaE94) );fprintf( 'Standard Deviation \t\t%f\n', std(deltaE94) );fprintf( 'Maximum \t\t%f\n', max(deltaE94) );fprintf( 'Minimum \t\t%f\n\n', min(deltaE94) );

figure[yy,xx]=hist(deltaE94);bar(xx,yy,'r')

Page 281: spectral-based color separation algorithm development - CiteSeer

261

title('The histogram color difference between measured and predicted DuPont overprints.')xlabel('Delta E94')ylabel('Frequency')

spectral_RMS = RMS(duover, o_est);

midx=meta_idx(duover, o_est, ones(31,1));fprintf('The average color difference between measured and predicted DuPont overprints under illum A is %f\n', mean(midx));fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

fprintf( 'The root mean square error of predicted DuPont overprints is %f\n\n', spectral_RMS );

figure[yy,xx]=hist(midx);bar(xx,yy,'r')title('The histogram of the index of metamerism between measured and predicted DuPont overprints.')xlabel('Index of Metamerism')ylabel('Frequency')

deltaE94=[deltaE94(1:11);deltaE94(15:21); deltaE94(28:30); deltaE94(34:37)];midx=[midx(1:11);midx(15:21); midx(28:30); midx(34:37)];

fprintf('The average color difference between measured and predicted DuPont overprints is \n');fprintf( 'Mean \t\t%f\n', mean(deltaE94) );fprintf( 'Standard Deviation \t\t%f\n', std(deltaE94) );fprintf( 'Maximum \t\t%f\n', max(deltaE94) );fprintf( 'Minimum \t\t%f\n\n', min(deltaE94) );

figure[yy,xx]=hist(deltaE94);bar(xx,yy,'r')title('The histogram color difference between measured and predicted DuPont overprints.')xlabel('Delta E94')ylabel('Frequency')

fprintf('The average color difference between measured and predicted DuPont overprints under illum A is %f\n', mean(midx));fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

figure[yy,xx]=hist(midx);bar(xx,yy,'r')%title('The histogram of the index of metamerism between measured and predicted DuPont overprints.')xlabel('Metameric Index')ylabel('Frequency')

figuresubplot(2,2,1)plot(lambda,duover(:,5),'b',lambda,o_est(:,5),'m:')%xlabel('Wavelength')ylabel('Reflectance')title('Red on Magenta')%legend('measured','predicted','DE94 0.2', 'MI 0.0')axis([400 700 0 1])

Page 282: spectral-based color separation algorithm development - CiteSeer

262

subplot(2,2,2)plot(lambda,duover(:,21),'b',lambda,o_est(:,21),'m:')title('Yellow on Magenta')%xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.4', 'MI 0.1')axis([400 700 0 1])

subplot(2,2,3)plot(lambda,duover(:,15),'b',lambda,o_est(:,15),'m:')title('Red on Yellow')xlabel('Wavelength')ylabel('Reflectance')%legend('measured','predicted','DE94 0.3', 'MI 0.1')axis([400 700 0 1])

subplot(2,2,4)plot(lambda,duover(:,16),'b',lambda,o_est(:,16),'m:')title('Green on Yellow')xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.4', 'MI 0.1')axis([400 700 0 1])

figuresubplot(2,2,1)plot(lambda,duover(:,5)-o_est(:,5),'b')%xlabel('Wavelength')ylabel('Delta R')title('Red on Magenta')%legend('measured','predicted','DE94 0.2', 'MI 0.0')axis([400 700 -0.05 0.05])

subplot(2,2,2)plot(lambda,duover(:,21)-o_est(:,21),'b')title('Yellow on Magenta')%xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.4', 'MI 0.1')axis([400 700 -0.05 0.05])

subplot(2,2,3)plot(lambda,duover(:,15)-o_est(:,15),'b')title('Red on Yellow')xlabel('Wavelength')ylabel('Delta R')%legend('measured','predicted','DE94 0.3', 'MI 0.1')axis([400 700 -0.05 0.05])

subplot(2,2,4)plot(lambda,duover(:,16)-o_est(:,16),'b')title('Green on Yellow')xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.4', 'MI 0.1')axis([400 700 -0.05 0.05])

figuresubplot(2,2,1)plot(lambda,duover(:,34),'b',lambda,o_est(:,34),'m:')%xlabel('Wavelength')ylabel('Reflectance')

Page 283: spectral-based color separation algorithm development - CiteSeer

263

title('Green on Red')%legend('measured','predicted','DE94 2.1', 'MI 0.4')axis([400 700 0 1])

subplot(2,2,2)plot(lambda,duover(:,17),'b',lambda,o_est(:,17),'m:')title('Blue on Yellow')%xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.9', 'MI 0.5')axis([400 700 0 1])

subplot(2,2,3)plot(lambda,duover(:,4),'b',lambda,o_est(:,4),'m:')title('Blue on Cyan')xlabel('Wavelength')ylabel('Reflectance')%legend('measured','predicted','DE94 1.4', 'MI 0.7')axis([400 700 0 1])

subplot(2,2,4)plot(lambda,duover(:,20),'b',lambda,o_est(:,20),'m:')title('Blue on Yellow on Cyan')xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 1.2', 'MI 1.1')axis([400 700 0 1])

figuresubplot(2,2,1)plot(lambda,duover(:,34)-o_est(:,34),'b')%xlabel('Wavelength')ylabel('Delta R')title('Green on Red')%legend('measured','predicted','DE94 2.1', 'MI 0.4')axis([400 700 -0.05 0.05])

subplot(2,2,2)plot(lambda,duover(:,17)-o_est(:,17),'b')title('Blue on Yellow')%xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 0.9', 'MI 0.5')axis([400 700 -0.05 0.05])

subplot(2,2,3)plot(lambda,duover(:,4)-o_est(:,4),'b')title('Blue on Cyan')xlabel('Wavelength')ylabel('Delta R')%legend('measured','predicted','DE94 1.4', 'MI 0.7')axis([400 700 -0.05 0.05])

subplot(2,2,4)plot(lambda,duover(:,20)-o_est(:,20),'b')title('Blue on Yellow on Cyan')xlabel('Wavelength')%ylabel('Reflectance')%legend('measured','predicted','DE94 1.2', 'MI 1.1')axis([400 700 -0.05 0.05])

load prmy_est.txtload primary.txt

Page 284: spectral-based color separation algorithm development - CiteSeer

264

figuresubplot(1,2,1)plot(lambda,ks_dup(:,1),'b',lambda,ks_dup(:,2),'k:')%grid ontitle('Estimated K & S')xlabel('Wavelength')ylabel('K or S')axis([400 700 -0.1 2])

subplot(1,2,2)plot(lambda,primary(:,3)-prmy_est(:,1),'b')grid ontitle('Difference Spectrum')xlabel('Wavelength')ylabel('Delta R')axis([400 700 -0.02 0.02])

overpr1.m

%This program performs ink overprints of the first set of Waterproof samplesclear all; close all;

lambda=[400:10:700]';

load set1.txt; %measured reflectance of overprint

[r,c]=size(set1);

inkidx=set1(1,3:c);

Rg=set1(2:32,2); %spectral reflectance factor of the coated paper

prints=set1(2:r,3:c);

clear set1;

i=1;while inkidx(i) < 7i=i+1;end

num_of_prmy=i-1;pidx=inkidx(:,num_of_prmy+1:c-2); %index of overprintprimary=prints(:,1:num_of_prmy);overprint=prints(:,num_of_prmy+1:c-2);clear prints;

load ks_dup.sn1; %The determined k and S data are stored in ks_dup.sn1

%************************************************************************************% Thickness estimation%************************************************************************************thickness=ones(1,6)*0.001;prmy_est=zeros(31,6);

for i=1:num_of_prmy ks=ks_dup(:,(inkidx(i)-1)*2+1:(inkidx(i)-1)*2+2); vlb=0; vub=10;

Page 285: spectral-based color separation algorithm development - CiteSeer

265

options(1)=1; options(2)=1e-5; options(3)=1e-5; options(4)=1e-5; options(14)=1000000;

thickness(inkidx(i))=constr('thickest', thickness(inkidx(i)), options, vlb, vub, '',ks, saunder(Rg), saunder(primary(:,i))); prmy_est(:,inkidx(i))=asaunder(km_trans(thickness(inkidx(i)), ks, saunder(Rg))); deltaE94=del_e94(primary(:,i), prmy_est(:,inkidx(i)), Rg, [3 1]) T=num2str( deltaE94, 4 );

figure plot(lambda, primary(:,i),'b', lambda, prmy_est(:,inkidx(i)),'m') %title('The measured and predicted reflectance of yellow ink.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

[r,c]=size(pidx);over_est=zeros(31,c);

%thickness=[0.9754 0.9584 0.95605 1.02565 0.961775 0.987025];

%************************************************************************************% Ink overprint prediction%************************************************************************************

for i=1:c %c tmpstr=num2str(pidx(i)); num_of_color=length(tmpstr); if num_of_color==2 substrate=prmy_est(:,str2num(tmpstr(2))); ith_prmy=str2num(tmpstr(1)); else substrate=over_est(:,1); ith_prmy=str2num(tmpstr(1)); end ks=ks_dup(:,(ith_prmy-1)*2+1:(ith_prmy-1)*2+2); over_est(:,i)=asaunder(km_trans(thickness(ith_prmy), ks, saunder(substrate))); deltaE94=del_e94(overprint(:,i), over_est(:,i), Rg, [3 1]); T=num2str( deltaE94, 4 ); figure plot(lambda, overprint(:,i),'b', lambda, over_est(:,i),'m') title('The measured and predicted reflectance of overprint.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

overpr2.m

%This program performs ink overprints of the second set of Waterproof samples

lambda=[400:10:700]';load set2.txt; %measured reflectance of overprints[r,c]=size(set2);inkidx=set2(1,3:c);

Page 286: spectral-based color separation algorithm development - CiteSeer

266

Rg=set2(2:32,2); %spectral reflectance factor of the coated paper

prints=set2(2:r,3:c);

clear set2;

i=1;while inkidx(i) < 7i=i+1;end

num_of_prmy=i-1;

pidx=inkidx(:,num_of_prmy+1:c-2); %index of overprint

primary=prints(:,1:num_of_prmy);

overprint=prints(:,num_of_prmy+1:c-2);

clear prints;

load ks_dup.sn1;

%************************************************************************************% Thickness estimation%************************************************************************************thickness=ones(1,6)*0.001;

prmy_est=zeros(31,6);

for i=1:num_of_prmy ks=ks_dup(:,(inkidx(i)-1)*2+1:(inkidx(i)-1)*2+2); vlb=0; vub=10; options(1)=1; options(2)=1e-5; options(3)=1e-5; options(4)=1e-5; options(14)=1000000; thickness(inkidx(i))=constr('thickest', thickness(inkidx(i)), options, vlb, vub, '',ks, saunder(Rg), saunder(primary(:,i))); prmy_est(:,inkidx(i))=asaunder(km_trans(thickness(inkidx(i)), ks, saunder(Rg))); deltaE94=del_e94(primary(:,i), prmy_est(:,inkidx(i)), Rg, [3 1]) T=num2str( deltaE94, 4 );

figure plot(lambda, primary(:,i),'b', lambda, prmy_est(:,inkidx(i)),'m') title('The measured and predicted reflectance of yellow ink.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

[r,c]=size(pidx);over_est=zeros(31,c);

%thickness=[0.9754 0.9584 0.95605 1.02565 0.961775 0.987025];

%************************************************************************************% Ink overprint prediction%************************************************************************************

for i=1:c %c

Page 287: spectral-based color separation algorithm development - CiteSeer

267

tmpstr=num2str(pidx(i)); num_of_color=length(tmpstr); if num_of_color==2 substrate=prmy_est(:,str2num(tmpstr(2))); ith_prmy=str2num(tmpstr(1)); else substrate=over_est(:,1); ith_prmy=str2num(tmpstr(1)); end ks=ks_dup(:,(ith_prmy-1)*2+1:(ith_prmy-1)*2+2); over_est(:,i)=asaunder(km_trans(thickness(ith_prmy), ks, saunder(substrate))); deltaE94=del_e94(overprint(:,i), over_est(:,i), Rg, [3 1]); T=num2str( deltaE94, 4 ); figure plot(lambda, overprint(:,i),'b', lambda, over_est(:,i),'m') title('The measured and predicted reflectance of overprint.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

overpr3.m

%This program performs ink overprints of the second set of Waterproof samples

lambda=[400:10:700]';load set3.txt; %measured reflectance of overprints[r,c]=size(set3);inkidx=set3(1,3:c);Rg=set3(2:32,2); %spectral reflectance factor of the coated paperprints=set3(2:r,3:c);

clear set3;

i=1;while inkidx(i) < 7 i=i+1;end

num_of_prmy=i-1;

pidx=inkidx(:,num_of_prmy+1:c-2); %index of overprintprimary=prints(:,1:num_of_prmy);overprint=prints(:,num_of_prmy+1:c-2);clear prints;

load ks_dup.sn1;

%************************************************************************************% Thickness estimation%************************************************************************************

thickness=ones(1,6)*0.001;

prmy_est=zeros(31,6);

for i=1:num_of_prmy ks=ks_dup(:,(inkidx(i)-1)*2+1:(inkidx(i)-1)*2+2); vlb=0;

Page 288: spectral-based color separation algorithm development - CiteSeer

268

vub=10; options(1)=1; options(2)=1e-5; options(3)=1e-5; options(4)=1e-5; options(14)=1000000;

thickness(inkidx(i))=constr('thickest', thickness(inkidx(i)), options, vlb, vub, '',ks, saunder(Rg), saunder(primary(:,i))); prmy_est(:,inkidx(i))=asaunder(km_trans(thickness(inkidx(i)), ks, saunder(Rg))); deltaE94=del_e94(primary(:,i), prmy_est(:,inkidx(i)), Rg, [3 1]) T=num2str( deltaE94, 4 ); figure plot(lambda, primary(:,i),'b', lambda, prmy_est(:,inkidx(i)),'m') title('The measured and predicted reflectance of yellow ink.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

[r,c]=size(pidx);over_est=zeros(31,c);

%thickness=[0.9754 0.9584 0.95605 1.02565 0.961775 0.987025];

%************************************************************************************% Ink overprint prediction%************************************************************************************for i=1:c %c tmpstr=num2str(pidx(i)); num_of_color=length(tmpstr); if num_of_color==2 substrate=prmy_est(:,str2num(tmpstr(2))); ith_prmy=str2num(tmpstr(1)); else substrate=over_est(:,1); ith_prmy=str2num(tmpstr(1)); end ks=ks_dup(:,(ith_prmy-1)*2+1:(ith_prmy-1)*2+2); over_est(:,i)=asaunder(km_trans(thickness(ith_prmy), ks, saunder(substrate))); deltaE94=del_e94(overprint(:,i), over_est(:,i), Rg, [3 1]); T=num2str( deltaE94, 4 ); figure plot(lambda, overprint(:,i),'b', lambda, over_est(:,i),'m') title('The measured and predicted reflectance of overprint.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

overpr4.m

%This program performs ink overprints of the second set of Waterproof samples

lambda=[400:10:700]';load set4.txt; %measured reflectance of overprints[r,c]=size(set4);inkidx=set4(1,3:c);Rg=set4(2:32,2); %spectral reflectance factor of the coated paper

Page 289: spectral-based color separation algorithm development - CiteSeer

269

prints=set4(2:r,3:c);

clear set4;

i=1;while inkidx(i) < 7 i=i+1;end

num_of_prmy=i-1;

pidx=inkidx(:,num_of_prmy+1:c-2); %index of overprint

primary=prints(:,1:num_of_prmy);

overprint=prints(:,num_of_prmy+1:c-2);

clear prints;

load ks_dup.sn1;

%************************************************************************************% Thickness estimation%************************************************************************************thickness=ones(1,6)*0.001;

prmy_est=zeros(31,6);

for i=1:num_of_prmy ks=ks_dup(:,(inkidx(i)-1)*2+1:(inkidx(i)-1)*2+2); vlb=0; vub=10; options(1)=1; options(2)=1e-5; options(3)=1e-5; options(4)=1e-5; options(14)=1000000;

thickness(inkidx(i))=constr('thickest', thickness(inkidx(i)), options, vlb, vub, '',ks, saunder(Rg), saunder(primary(:,i))); prmy_est(:,inkidx(i))=asaunder(km_trans(thickness(inkidx(i)), ks, saunder(Rg))); deltaE94=del_e94(primary(:,i), prmy_est(:,inkidx(i)), Rg, [3 1]) T=num2str( deltaE94, 4 ); figure plot(lambda, primary(:,i),'b', lambda, prmy_est(:,inkidx(i)),'m') title('The measured and predicted reflectance of yellow ink.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

[r,c]=size(pidx);over_est=zeros(31,c);

%thickness=[0.9754 0.9584 0.95605 1.02565 0.961775 0.987025];

%************************************************************************************% Ink overprint prediction%************************************************************************************for i=1:c %c tmpstr=num2str(pidx(i)); num_of_color=length(tmpstr);

Page 290: spectral-based color separation algorithm development - CiteSeer

270

if num_of_color==2 substrate=prmy_est(:,str2num(tmpstr(2))); ith_prmy=str2num(tmpstr(1)); else substrate=over_est(:,1); ith_prmy=str2num(tmpstr(1)); end ks=ks_dup(:,(ith_prmy-1)*2+1:(ith_prmy-1)*2+2); over_est(:,i)=asaunder(km_trans(thickness(ith_prmy), ks, saunder(substrate))); deltaE94=del_e94(overprint(:,i), over_est(:,i), Rg, [3 1]); T=num2str( deltaE94, 4 ); figure plot(lambda, overprint(:,i),'b', lambda, over_est(:,i),'m') title('The measured and predicted reflectance of overprint.') xlabel('Wavelength') ylabel('Reflectance factor') axis([400 700 0 1]) legend('b','Measured', 'm','Predicted', 'bk', 'Delta_E94', 'bk', T)end

thickest.m

%This is the objective fuction of estimating the actual ink thickness of an printed on%an opaque substrate

function [f,g]=thickest(thick, ks, Rg, R_sample)

R_est=km_trans(thick, ks, Rg); % Kubelka-Munk equation for translucent materialf=rms(R_est, R_sample);g=-R_est;

Page 291: spectral-based color separation algorithm development - CiteSeer

271

APPENDIX E : MATLAB PROGRAMS FOR THE PROPOSED SIX-COLOR FORWARD PRINTING MODEL

Since a six-color printing model is the union of 10 four-color sub-models, the following structure chartonly shows the program structure for a CMYK modeling process.

Main Program

(secondorder.m)

Finding data for modeling

optical-trapping(optrap1.m)

Determining the dot gain

correction function

(interink.m)

Determining the effective dot

area

The first order estimation

(theo2eff.m)

The second order dot gain

correction(iino_q.m)

Reflectance estimation byNeugebauer

equation(neug4c.m)

...

...

Determiningn-factor

(nfind.m)

CMYKmodeling

YGOKmodeling

Demichel equation

(dmi4c.m)

secondorder.m

%This program is a forward second order six-color printing model proposed by this research%modeling optical trapping effect to modified the accuracy of the first order printing model%which is comprised of theoretical to effective dot area transfer function and the Yule-Nielsen modified%spectral Neugebauer equation

clear all; close all;load ave_ramp.txt %the spectral reflectance factors of 13-step ramps

c_ramp=(ave_ramp(1:13, 7:37))';m_ramp=(ave_ramp(14:26, 7:37))';y_ramp=(ave_ramp(27:39, 7:37))';

Page 292: spectral-based color separation algorithm development - CiteSeer

272

g_ramp=(ave_ramp(40:52, 7:37))';o_ramp=(ave_ramp(53:65, 7:37))';k_ramp=(ave_ramp(66:78, 7:37))';

clear ave_ramp;

lambda=[400:10:700]';

R_paper=c_ramp(:,13);

dc=[100;90;80;70;60;50;40;30;20;15;10;5;0]/100; %the theoretical dot areas of each ramp

n=nfind(c_ramp,m_ramp,y_ramp,g_ramp,o_ramp,k_ramp,R_paper,20,0.1);%determining the Yule-Nielsen n-factor (n=2.2)

%the effective dot area of primary ramps solved by n-modified Murray-Davies equationa_c=inv_murr(c_ramp,R_paper,n);a_m=inv_murr(m_ramp,R_paper,n);a_y=inv_murr(y_ramp,R_paper,n);a_g=inv_murr(g_ramp,R_paper,n);a_o=inv_murr(o_ramp,R_paper,n);a_k=inv_murr(k_ramp,R_paper,n);

%prediction of primary ramps by n-modified Murray-Davies equationreconc=murray(c_ramp(:,1), a_c, R_paper, n);reconm=murray(m_ramp(:,1), a_m, R_paper, n);recony=murray(y_ramp(:,1), a_y, R_paper, n);recong=murray(g_ramp(:,1), a_g, R_paper, n);recono=murray(o_ramp(:,1), a_o, R_paper, n);reconk=murray(k_ramp(:,1), a_k, R_paper, n);

figure;plot(dc, [a_c a_m a_y a_g a_o a_k]);axis([0 1 0 1])xlabel('Theoretical dot area')ylabel('Effective dot area')title('Mechanical dot gain of six-color ramps')

figure;plot(dc, a_c,'k-',dc,a_m,'k:',dc, a_y,'k-.',dc, a_k,'k--');axis([0 1 0 1])xlabel('Theoretical dot area')ylabel('Effective dot area')%title('Mechanical dot gain of six-color ramps')legend('cyan','magenta', 'yellow','black')

figure;plot(dc, a_c-dc,'k-',dc,a_m-dc,'k:',dc, a_y-dc,'k-.',dc, a_k-dc,'k--');axis([0 1 0 0.4])xlabel('Theoretical dot area')ylabel('Dot-gain in units of fractional dot area')%title('Mechanical dot gain of six-color ramps')legend('cyan','magenta', 'yellow','black')

tmp1=a_c-dc;tmp2=(a_c-dc)*0.75;tmp3=(a_c-dc)*0.50;tmp4=(a_c-dc)*0.25;

figure;plot(dc, tmp1,'k-',dc,tmp2,'k:',dc, tmp3,'k-.',dc, tmp4,'k--');

Page 293: spectral-based color separation algorithm development - CiteSeer

273

axis([0 1 0 0.35])xlabel('Theoretical dot area')ylabel('Dot-gain in units of fractional dot area')%title('Mechanical dot gain of six-color ramps')legend('mag=0%','mag=25%', 'mag=50%','mag=75%')hold onplot([0.1; 0.1],[0; tmp1(11)],'k:');plot([0.3; 0.3],[0; tmp1(8)],'k:');plot([0.5; 0.5],[0; tmp1(6)],'k:');plot([0.7; 0.7],[0; tmp1(4)],'k:');

figuresubplot(1,2,1)plot([0;0.25;0.5;0.75], [1; tmp2(6)/tmp1(6); tmp3(6)/tmp1(6); tmp4(6)/tmp1(6)].^(2));xlabel('a_t_h_e_o_,_m')ylabel('f_c_m')axis([0 0.8 0 1])title('The correction scalar by Iino and Berns')subplot(1,2,2)plot([0;0.1;0.3;0.5;0.7], [1; 0.85; 0.87; 0.86; 0.9]);xlabel('a_t_h_e_o_,_c')ylabel('g_m_c')axis([0 0.8 0.5 1])title('The correction scalar by the proposed algorithm')

c=c_ramp(:,1);m=m_ramp(:,1);y=y_ramp(:,1);g=g_ramp(:,1);o=o_ramp(:,1);k=k_ramp(:,1);w=R_paper;

figure;plot(lambda,c,'c',lambda,m,'m',lambda,y,'y',lambda,g,'g',lambda,o,'r',lambda,k,'k',lambda,w,'k:')xlabel('Wavelength')ylabel('Reflectance factor')axis([400 700 0 1])legend('Cyan','Magenta','Yellow','Green','Orange','Black','Substrate')

figure;plot(lambda, c_ramp,'b', lambda, reconc,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted c_ramp')axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

figure;plot(lambda, m_ramp,'b', lambda, reconm,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted m_ramp')axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

figure;plot(lambda, y_ramp,'b', lambda, recony,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted y_ramp')

Page 294: spectral-based color separation algorithm development - CiteSeer

274

axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

figure;plot(lambda, g_ramp,'b', lambda, recong,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted g_ramp')axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

figure;plot(lambda, o_ramp,'b', lambda, recono,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted o_ramp')axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

figure;plot(lambda, k_ramp,'b', lambda, reconk,'m:')xlabel('Wavelength')ylabel('Reflectance factor')title('Measured and predicted k_ramp')axis([400 700 0 1])legend('b','Measured', 'm:', 'Predicted')

dac=[0 25 50 70 90]/100; %the theoretical dot areas for modeling ink trappingdac=dac';

sc=0.62; %scalar for adjusting the actual effective dot areas

%************************************************************************************% The forward CMYK submodel%************************************************************************************load cmyk.txtdc_1=cmyk(:,2:5)/100; %the theoretical dot areas of the CMYK targetcmyk5555=cmyk(:,6:36)'; %the 625 CMYK mixtures

load neprmy1.txt %the 16 Neugebauer primaries of CMYK printing process

%optrap1=trapfind(cmyk); %the procedure searching for data in the verification target %for modeling optical-trapping effect

%fij=interink(optrap1, neprmy1, n, a_c, a_m, a_y, a_k, dc, dac);%save 'fij_1.txt' fij -ASCII -DOUBLE -TABS %the fij is the dot gain correction scalar function discussed in the thesis %here, fij is the gij described in the thesis

load fij_1.txt; %the dot gain correction scalar function for CMYK printing processfij=fij_1;

qscalar=iino_q(fij, dc_1, dac); %the dot gain correction scalars for the CMYK verification target

eff=theo2eff(dc_1, dc, c_ramp, m_ramp, y_ramp, k_ramp, R_paper, n); %the first order estimated theoretical dot areas for CMYK verification target

eff1=dc_1+qscalar.*(eff-dc_1); %the effective dot areas for CMYK verification target after the second order %improvement by dot gain correction

Page 295: spectral-based color separation algorithm development - CiteSeer

275

eff1=(dc_1+qscalar.*(eff-dc_1))*sc + eff*(1-sc); %the final effective dot areas for CMYK verification target lies between the first %order estimation and the second order estimation

pred1=neug4c(eff1, neprmy1, n); %spectral reconstruction by n-modified Neugebauer equation

del1=del_e94(cmyk5555, pred1, R_paper, [3 1]);

%************************************************************************************% The forward CMGK submodel%************************************************************************************load cmgk.txtdc_2=cmgk(:,2:5)/100;cmgk5555=cmgk(:,6:36)';

load neprmy2.txt

%optrap2=trapfind(cmgk);

%fij=interink(optrap2, neprmy2, n, a_c, a_m, a_g, a_k, dc, dac);%save 'fij_2.txt' fij -ASCII -DOUBLE -TABS

load fij_2.txt;fij=fij_2;

qscalar=iino_q(fij, dc_2, dac);

eff=theo2eff(dc_2, dc, c_ramp, m_ramp, g_ramp, k_ramp, R_paper, n);

eff2=dc_2+qscalar.*(eff-dc_2);eff2=(dc_2+qscalar.*(eff-dc_2))*sc + eff*(1-sc);

pred2=neug4c(eff2, neprmy2, n);

del2=del_e94(cmgk5555, pred2, R_paper, [3 1]);

%************************************************************************************% The forward CMOK submodel%************************************************************************************load cmok.txtdc_3=cmok(:,2:5)/100;cmok5555=cmok(:,6:36)';

load neprmy3.txt

%optrap3=trapfind(cmok);

%fij=interink(optrap3, neprmy3, n, a_c, a_m, a_o, a_k, dc, dac);%save 'fij_3.txt' fij -ASCII -DOUBLE -TABS

load fij_3.txt;fij=fij_3;

qscalar=iino_q(fij, dc_3, dac);

eff=theo2eff(dc_3, dc, c_ramp, m_ramp, o_ramp, k_ramp, R_paper, n);

eff3=dc_3+qscalar.*(eff-dc_3);

eff3=(dc_3+qscalar.*(eff-dc_3))*sc + eff*(1-sc);

pred3=neug4c(eff3, neprmy3, n);

Page 296: spectral-based color separation algorithm development - CiteSeer

276

del3=del_e94(cmok5555, pred3, R_paper, [3 1]);

%************************************************************************************% The forward CYGK submodel%************************************************************************************load cygk.txtdc_4=cygk(:,2:5)/100;cygk5555=cygk(:,6:36)';

load neprmy4.txt

%optrap4=trapfind(cygk);

%fij=interink(optrap4, neprmy4, n, a_c, a_y, a_g, a_k, dc, dac);%save 'fij_4.txt' fij -ASCII -DOUBLE -TABS

load fij_4.txt;fij=fij_4;

qscalar=iino_q(fij, dc_4, dac);

eff=theo2eff(dc_4, dc, c_ramp, y_ramp, g_ramp, k_ramp, R_paper, n);

eff4=dc_4+qscalar.*(eff-dc_4);

eff4=(dc_4+qscalar.*(eff-dc_4))*sc + eff*(1-sc);

pred4=neug4c(eff4, neprmy4, n);

del4=del_e94(cygk5555, pred4, R_paper, [3 1]);

%************************************************************************************% The forward CYOK submodel%************************************************************************************load cyok.txtdc_5=cyok(:,2:5)/100;cyok5555=cyok(:,6:36)';

load neprmy5.txt

%optrap5=trapfind(cyok);

%fij=interink(optrap5, neprmy5, n, a_c, a_y, a_o, a_k, dc, dac);%save 'fij_5.txt' fij -ASCII -DOUBLE -TABS

load fij_5.txt;fij=fij_5;

qscalar=iino_q(fij, dc_5, dac);

eff=theo2eff(dc_5, dc, c_ramp, y_ramp, o_ramp, k_ramp, R_paper, n);

eff5=dc_5+qscalar.*(eff-dc_5);eff5=(dc_5+qscalar.*(eff-dc_5))*sc + eff*(1-sc);

pred5=neug4c(eff5, neprmy5, n);

del5=del_e94(cyok5555, pred5, R_paper, [3 1]);

%************************************************************************************% The forward CGOK submodel%************************************************************************************load cgok.txt

Page 297: spectral-based color separation algorithm development - CiteSeer

277

dc_6=cgok(:,2:5)/100;cgok5555=cgok(:,6:36)';

load neprmy6.txt

%optrap6=trapfind(cgok);

%fij=interink(optrap6, neprmy6, n, a_c, a_g, a_o, a_k, dc, dac);%save 'fij_6.txt' fij -ASCII -DOUBLE -TABS

load fij_6.txt;fij=fij_6;

qscalar=iino_q(fij, dc_6, dac);

eff=theo2eff(dc_6, dc, c_ramp, g_ramp, o_ramp, k_ramp, R_paper, n);

eff6=dc_6+qscalar.*(eff-dc_6);eff6=(dc_6+qscalar.*(eff-dc_6))*sc + eff*(1-sc);

pred6=neug4c(eff6, neprmy6, n);

del6=del_e94(cgok5555, pred6, R_paper, [3 1]);

%************************************************************************************% The forward MYGK submodel%************************************************************************************load mygk.txtdc_7=mygk(:,2:5)/100;mygk5555=mygk(:,6:36)';

load neprmy7.txt

%optrap7=trapfind(mygk);

%fij=interink(optrap7, neprmy7, n, a_m, a_y, a_g, a_k, dc, dac);%save 'fij_7.txt' fij -ASCII -DOUBLE -TABS

load fij_7.txt;fij=fij_7;

qscalar=iino_q(fij, dc_7, dac);

eff=theo2eff(dc_7, dc, m_ramp, y_ramp, g_ramp, k_ramp, R_paper, n);

eff7=dc_7+qscalar.*(eff-dc_7);eff7=(dc_7+qscalar.*(eff-dc_7))*sc + eff*(1-sc);

pred7=neug4c(eff7, neprmy7, n);

del7=del_e94(mygk5555, pred7, R_paper, [3 1]);

%************************************************************************************% The forward MYOK submodel%************************************************************************************load myok.txtdc_8=myok(:,2:5)/100;myok5555=myok(:,6:36)';

load neprmy8.txt

%optrap8=trapfind(myok);

Page 298: spectral-based color separation algorithm development - CiteSeer

278

%fij=interink(optrap8, neprmy8, n, a_m, a_y, a_o, a_k, dc, dac);%save 'fij_8.txt' fij -ASCII -DOUBLE -TABS

load fij_8.txt;fij=fij_8;

qscalar=iino_q(fij, dc_8, dac);

eff=theo2eff(dc_8, dc, m_ramp, y_ramp, o_ramp, k_ramp, R_paper, n);

eff8=dc_8+qscalar.*(eff-dc_8);eff8=(dc_8+qscalar.*(eff-dc_8))*sc + eff*(1-sc);

pred8=neug4c(eff8, neprmy8, n);

del8=del_e94(myok5555, pred8, R_paper, [3 1]);

%************************************************************************************% The forward MGOK submodel%************************************************************************************load mgok.txtdc_9=mgok(:,2:5)/100;mgok5555=mgok(:,6:36)';

load neprmy9.txt

%optrap9=trapfind(mgok);

%fij=interink(optrap9, neprmy9, n, a_m, a_g, a_o, a_k, dc, dac);%save 'fij_9.txt' fij -ASCII -DOUBLE -TABS

load fij_9.txt;fij=fij_9;

qscalar=iino_q(fij, dc_9, dac);

eff=theo2eff(dc_9, dc, m_ramp, g_ramp, o_ramp, k_ramp, R_paper, n);

eff9=dc_9+qscalar.*(eff-dc_9);eff9=(dc_9+qscalar.*(eff-dc_9))*sc + eff*(1-sc);

pred9=neug4c(eff9, neprmy9, n);

del9=del_e94(mgok5555, pred9, R_paper, [3 1]);

%************************************************************************************% The forward YGOK submodel%************************************************************************************load ygok.txtdc_10=ygok(:,2:5)/100;ygok5555=ygok(:,6:36)';

load neprmy10.txt

%optrap10=trapfind(ygok);

%fij=interink(optrap10, neprmy10, n, a_y, a_g, a_o, a_k, dc, dac);%save 'fij_10.txt' fij -ASCII -DOUBLE -TABS

load fij_10.txt;fij=fij_10;

Page 299: spectral-based color separation algorithm development - CiteSeer

279

qscalar=iino_q(fij, dc_10, dac);

eff=theo2eff(dc_10, dc, y_ramp, g_ramp, o_ramp, k_ramp, R_paper, n);

eff10=dc_10+qscalar.*(eff-dc_10);eff10=(dc_10+qscalar.*(eff-dc_10))*sc + eff*(1-sc);

pred10=neug4c(eff10, neprmy10, n);

del10=del_e94(ygok5555, pred10, R_paper, [3 1]);

tmp1=[mean(del1);mean(del2);mean(del3);mean(del4);mean(del4);mean(del6)];meande=[tmp1;mean(del7);mean(del8);mean(del9);mean(del10)]

tmp1=[max(del1);max(del2);max(del3);max(del4);max(del4);max(del6)];maxde=[tmp1;max(del7);max(del8);max(del9);max(del10)]

tmp1=[std(del1);std(del2);std(del3);std(del4);std(del4);std(del6)];stdde=[tmp1;std(del7);std(del8);std(del9);std(del10)]

measured=[cmyk5555 cmgk5555 cmok5555 cygk5555 cyok5555 cgok5555];measured=[measured mygk5555 myok5555 mgok5555 ygok5555];

predicted=[pred1 pred2 pred3 pred4 pred5 pred6 pred7 pred8 pred9 pred10];

delta_e94=del_e94(measured, predicted, R_paper, [3 1]);

fprintf('The statistical color difference between measured and predicted ramps is \n');fprintf( 'Mean \t\t%f\n', mean(delta_e94) );fprintf( 'Standard Deviation \t\t%f\n', std(delta_e94) );fprintf( 'Maximum \t\t%f\n', max(delta_e94) );fprintf( 'Minimum \t\t%f\n\n', min(delta_e94) );

spectral_RMS = RMS( measured, predicted );

midx=meta_idx(measured, predicted, R_paper, [3 2 1 2]);fprintf('The statistical color difference between measured and predicted under illum A %f\n', mean(midx));fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

figure[yy,xx]=hist(delta_e94);bar(xx,yy,'r')%title('The histogram color difference between measured and predicted')xlabel('Delta E94')ylabel('Frequency')

nfind.m

%This program searches and optimizes the best n-factor for reconstructing the ramps with%minimum error

function n_factor=nfind(ramp1, ramp2, ramp3, ramp4, ramp5, ramp6, R_paper, num_of_step, step)

n=1;idx_deltaE=zeros(num_of_step,2);for i=1:num_of_step dotarea1=inv_murr(ramp1,R_paper,n);

Page 300: spectral-based color separation algorithm development - CiteSeer

280

dotarea2=inv_murr(ramp2,R_paper,n); dotarea3=inv_murr(ramp3,R_paper,n); dotarea4=inv_murr(ramp4,R_paper,n); dotarea5=inv_murr(ramp5,R_paper,n); dotarea6=inv_murr(ramp6,R_paper,n);

recon1=murray(ramp1(:,1), dotarea1, R_paper, n); recon2=murray(ramp2(:,1), dotarea2, R_paper, n); recon3=murray(ramp3(:,1), dotarea3, R_paper, n); recon4=murray(ramp4(:,1), dotarea4, R_paper, n); recon5=murray(ramp5(:,1), dotarea5, R_paper, n); recon6=murray(ramp6(:,1), dotarea6, R_paper, n);

measured=[ramp1 ramp2 ramp3 ramp4 ramp5 ramp6]; predicted=[recon1 recon2 recon3 recon4 recon5 recon6];

idx_deltaE(i,1)=mean(real(del_e94(measured, predicted, R_paper, [3 1]))); idx_deltaE(i,2)=n;

n=n+step;end

figure;plot(idx_deltaE(:,2), idx_deltaE(:,1));xlabel('n-factor')ylabel('Delta E94 for D50')

[sorted, idx]=sortrows(idx_deltaE);

n_factor=sorted(1,2);

trapfind.m

%This fuction search the ink mixture in the verification target for modeling optical trapping

function trapdata=trapfind(cmyk)

load trapdac.txt % the theoretical dot areas of ink mixtures which are required for modeling optical trapping

dc_1=cmyk(:,2:5)/100;cmyk5555=cmyk(:,6:36)';

[p,q]=size(trapdac);[s,t]=size(dc_1);

trap_idx=zeros(p,1);for i=1:p for j=1:s if trapdac(i,:)-dc_1(j,:)*100==0 trap_idx(i)=j; end endend

optrap1=cmyk(trap_idx(1),:);

for i=2:p optrap1=[optrap1 ;cmyk(trap_idx(i),:)];end

Page 301: spectral-based color separation algorithm development - CiteSeer

281

trapdata=optrap1(:,6:36)';

interink.m

%This program models the optical-trapping and builds dot gain correction functions for each%verification target

function fij=interink(optrap1, neprmy1, n, a_c, a_m, a_y, a_k, dc, dac)

rcm=optrap1(:,1:5); rcy=optrap1(:,6:10); rck=optrap1(:,11:15);rmc=optrap1(:,16:20); rmy=optrap1(:,21:25); rmk=optrap1(:,26:30);ryc=optrap1(:,31:35); rym=optrap1(:,36:40); ryk=optrap1(:,41:45);rkc=optrap1(:,46:50); rkm=optrap1(:,51:55); rky=optrap1(:,56:60);

fcm=r_neug2c(rcm, [neprmy1(:,1:3) neprmy1(:,7)], n);fcy=r_neug2c(rcy, [neprmy1(:,1:2) neprmy1(:,4) neprmy1(:,6)], n);fck=r_neug2c(rck, [neprmy1(:,1:2) neprmy1(:,9:10)], n);fmc=r_neug2c(rmc, [neprmy1(:,1:3) neprmy1(:,7)], n);fmy=r_neug2c(rmy, [neprmy1(:,1) neprmy1(:,3:5)], n);fmk=r_neug2c(rmk, [neprmy1(:,1) neprmy1(:,3) neprmy1(:,9) neprmy1(:,11)], n);fyc=r_neug2c(ryc, [neprmy1(:,1) neprmy1(:,2) neprmy1(:,4) neprmy1(:,6)], n);fym=r_neug2c(rym, [neprmy1(:,1) neprmy1(:,3) neprmy1(:,4) neprmy1(:,5)], n);fyk=r_neug2c(ryk, [neprmy1(:,1) neprmy1(:,4) neprmy1(:,9) neprmy1(:,12)], n);fkc=r_neug2c(rkc, [neprmy1(:,1) neprmy1(:,2) neprmy1(:,9) neprmy1(:,10)], n);fkm=r_neug2c(rkm, [neprmy1(:,1) neprmy1(:,3) neprmy1(:,9) neprmy1(:,11)], n);fky=r_neug2c(rky, [neprmy1(:,1) neprmy1(:,4) neprmy1(:,9) neprmy1(:,12)], n); %r_neug2c() is a inverse Neugebauer equation for a two color case

tmp=[fcm(:,2) fcy(:,2) fck(:,2) fmc(:,1) fmy(:,2) fmk(:,2)];tmp=[tmp fyc(:,1) fym(:,1) fyk(:,2) fkc(:,1) fkm(:,1) fky(:,1)];

c=interp1(dc, a_c, dac, 'cubic');m=interp1(dc, a_m, dac, 'cubic');y=interp1(dc, a_y, dac, 'cubic');k=interp1(dc, a_k, dac, 'cubic');

tmp2=ones(5,12);tmp2(2:5,1)=(tmp(2:5,1)-dac(2:5))./(m(2:5,1)-dac(2:5));tmp2(2:5,2)=(tmp(2:5,2)-dac(2:5))./(y(2:5,1)-dac(2:5));tmp2(2:5,3)=(tmp(2:5,3)-dac(2:5))./(k(2:5,1)-dac(2:5));tmp2(2:5,4)=(tmp(2:5,4)-dac(2:5))./(c(2:5,1)-dac(2:5));tmp2(2:5,5)=(tmp(2:5,5)-dac(2:5))./(y(2:5,1)-dac(2:5));tmp2(2:5,6)=(tmp(2:5,6)-dac(2:5))./(k(2:5,1)-dac(2:5));tmp2(2:5,7)=(tmp(2:5,7)-dac(2:5))./(c(2:5,1)-dac(2:5));tmp2(2:5,8)=(tmp(2:5,8)-dac(2:5))./(m(2:5,1)-dac(2:5));tmp2(2:5,9)=(tmp(2:5,9)-dac(2:5))./(k(2:5,1)-dac(2:5));tmp2(2:5,10)=(tmp(2:5,10)-dac(2:5))./(c(2:5,1)-dac(2:5));tmp2(2:5,11)=(tmp(2:5,11)-dac(2:5))./(m(2:5,1)-dac(2:5));tmp2(2:5,12)=(tmp(2:5,12)-dac(2:5))./(y(2:5,1)-dac(2:5));

fij=tmp2;

%This program determines the global correction scalar for the dot gain of each primary%ramp due to the ink and optical trapping

function qscalar=iino_q(fij, dc_1, dac)

fmc=interp1(dac, fij(:,4), dc_1(:,1), 'cubic');fyc=interp1(dac, fij(:,7), dc_1(:,1), 'cubic');fkc=interp1(dac, fij(:,10), dc_1(:,1), 'cubic');

Page 302: spectral-based color separation algorithm development - CiteSeer

282

fcm=interp1(dac, fij(:,1), dc_1(:,2), 'cubic');fym=interp1(dac, fij(:,8), dc_1(:,2), 'cubic');fkm=interp1(dac, fij(:,11), dc_1(:,2), 'cubic');

fcy=interp1(dac, fij(:,2), dc_1(:,3), 'cubic');fmy=interp1(dac, fij(:,5), dc_1(:,3), 'cubic');fky=interp1(dac, fij(:,12), dc_1(:,3), 'cubic');

fck=interp1(dac, fij(:,3), dc_1(:,4), 'cubic');fmk=interp1(dac, fij(:,6), dc_1(:,4), 'cubic');fyk=interp1(dac, fij(:,9), dc_1(:,4), 'cubic');

%the following check for the existence of secondary%fmc should be corrected by the existence of magenta in as the secondary ink

fmc_c=fmc.*(((1./fmc).*(~dc_1(:,2)))+(~~dc_1(:,2))); %corrected fmcfyc_c=fyc.*(((1./fyc).*(~dc_1(:,3)))+(~~dc_1(:,3)));fkc_c=fkc.*(((1./fkc).*(~dc_1(:,4)))+(~~dc_1(:,4)));

fcm_c=fcm.*(((1./fcm).*(~dc_1(:,1)))+(~~dc_1(:,1)));fym_c=fym.*(((1./fym).*(~dc_1(:,3)))+(~~dc_1(:,3)));fkm_c=fkm.*(((1./fkm).*(~dc_1(:,4)))+(~~dc_1(:,4)));

fcy_c=fcy.*(((1./fcy).*(~dc_1(:,1)))+(~~dc_1(:,1)));fmy_c=fmy.*(((1./fmy).*(~dc_1(:,2)))+(~~dc_1(:,2)));fky_c=fky.*(((1./fky).*(~dc_1(:,4)))+(~~dc_1(:,4)));

fck_c=fck.*(((1./fck).*(~dc_1(:,1)))+(~~dc_1(:,1)));fmk_c=fmk.*(((1./fmk).*(~dc_1(:,2)))+(~~dc_1(:,2)));fyk_c=fyk.*(((1./fyk).*(~dc_1(:,3)))+(~~dc_1(:,3)));

qscalar=[fmc_c.*fyc_c.*fkc_c fcm_c.*fym_c.*fkm_c fcy_c.*fmy_c.*fky_c fck_c.*fmk_c.*fyk_c];

neug2c.m

%This program performs the spectral reflectance estimation for a two-color printing process.%The estimation is based the n-modified spectral Neugebauer equation

function R_predicted=neug2c(cm, neuprimary, nf)

a=demi2c(cm);a1=a(:,1);

%notice a1 is the area of papera2=a(:,2);a3=a(:,3);a4=a(:,4);

clear a;

R1=neuprimary(:,1);%notice R1 is the R_paper

R2=neuprimary(:,2);R3=neuprimary(:,3);R4=neuprimary(:,4);

[n,m]=size(cm);

Page 303: spectral-based color separation algorithm development - CiteSeer

283

[p,q]=size(neuprimary);tmp=zeros(p,n);

for i=1:n tmp(:,i)=a1(i)*(R1.^(1/nf))+a2(i)*(R2.^(1/nf))+a3(i)*(R3.^(1/nf))+a4(i)*(R4.^(1/nf)); tmp(:,i)=tmp(:,i).^nf;end

R_predicted=tmp;

neug4c.m%This program performs the spectral reflectance estimation for a four-color printing process.%The estimation is based the n-modified spectral Neugebauer equation

function R_predicted=neug4c(cmyk, neuprimary, nf)

a=demi4c(cmyk);a1=a(:,1);

%notice a1 is the area of papera2=a(:,2);a3=a(:,3);a4=a(:,4);a5=a(:,5);a6=a(:,6);a7=a(:,7);a8=a(:,8);a9=a(:,9);a10=a(:,10);a11=a(:,11);a12=a(:,12);a13=a(:,13);a14=a(:,14);a15=a(:,15);a16=a(:,16);

clear a;

R1=neuprimary(:,1);%notice R1 is the R_paper

R2=neuprimary(:,2);R3=neuprimary(:,3);R4=neuprimary(:,4);R5=neuprimary(:,5);R6=neuprimary(:,6);R7=neuprimary(:,7);R8=neuprimary(:,8);R9=neuprimary(:,9);R10=neuprimary(:,10);R11=neuprimary(:,11);R12=neuprimary(:,12);R13=neuprimary(:,13);R14=neuprimary(:,14);R15=neuprimary(:,15);R16=neuprimary(:,16);

[n,m]=size(cmyk);[p,q]=size(neuprimary);tmp=zeros(p,n);

Page 304: spectral-based color separation algorithm development - CiteSeer

284

for i=1:n tmp(:,i)=a1(i)*(R1.^(1/nf))+a2(i)*(R2.^(1/nf))+a3(i)*(R3.^(1/nf))+a4(i)*(R4.^(1/nf)); tmp(:,i)=tmp(:,i)+a5(i)*(R5.^(1/nf))+a6(i)*(R6.^(1/nf))+a7(i)*(R7.^(1/nf))+a8(i)*(R8.^(1/nf)); tmp(:,i)=tmp(:,i)+a9(i)*(R9.^(1/nf))+a10(i)*(R10.^(1/nf))+a11(i)*(R11.^(1/nf))+a12(i)*(R12.^(1/nf)); tmp(:,i)=tmp(:,i)+a13(i)*(R13.^(1/nf))+a14(i)*(R14.^(1/nf))+a15(i)*(R15.^(1/nf))+a16(i)*(R16.^(1/nf)); tmp(:,i)=tmp(:,i).^nf;end

R_predicted=tmp;

demi4c.m

%This function calculated the dot area coverage based on the Demichel's probability model

function area=demi4c(cmyk)

f1 =(1-cmyk(:,1)).*(1-cmyk(:,2)).*(1-cmyk(:,3)).*(1-cmyk(:,4)); %white

f2 = cmyk(:,1).*(1-cmyk(:,2)).*(1-cmyk(:,3)).*(1-cmyk(:,4)); %cyanf3 =(1-cmyk(:,1)).* cmyk(:,2).*(1-cmyk(:,3)).*(1-cmyk(:,4)); %magentaf4 =(1-cmyk(:,1)).*(1-cmyk(:,2)).* cmyk(:,3).*(1-cmyk(:,4)); %yellowf5 =(1-cmyk(:,1)).* cmyk(:,2).* cmyk(:,3).*(1-cmyk(:,4)); %redf6 = cmyk(:,1).*(1-cmyk(:,2)).* cmyk(:,3).*(1-cmyk(:,4)); %greenf7 = cmyk(:,1).* cmyk(:,2).*(1-cmyk(:,3)).*(1-cmyk(:,4)); %bluef8 = cmyk(:,1).* cmyk(:,2).* cmyk(:,3).*(1-cmyk(:,4)); %3cblack

f9 =(1-cmyk(:,1)).*(1-cmyk(:,2)).*(1-cmyk(:,3)).* cmyk(:,4); %1cblack

f10 = cmyk(:,1).*(1-cmyk(:,2)).*(1-cmyk(:,3)).* cmyk(:,4); %kcyanf11 =(1-cmyk(:,1)).* cmyk(:,2).*(1-cmyk(:,3)).* cmyk(:,4); %kmagentaf12 =(1-cmyk(:,1)).*(1-cmyk(:,2)).* cmyk(:,3).* cmyk(:,4); %kyellowf13 =(1-cmyk(:,1)).* cmyk(:,2).* cmyk(:,3).* cmyk(:,4); %kredf14 = cmyk(:,1).*(1-cmyk(:,2)).* cmyk(:,3).* cmyk(:,4); %kgreenf15 = cmyk(:,1).* cmyk(:,2).*(1-cmyk(:,3)).* cmyk(:,4); %kbluef16 = cmyk(:,1).* cmyk(:,2).* cmyk(:,3).* cmyk(:,4); %4cblack

area=[f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16];

theo2eff.m

%The module builds an transfer function for theoretical to effective dot area%using one-dimensional look up table and cubic spline for interpolation

function eff=theo2eff(cmyk, dc, c_ramp, m_ramp, y_ramp, k_ramp, R_paper, nf);

efflut_c=inv_murr(c_ramp, R_paper, nf);efflut_m=inv_murr(m_ramp, R_paper, nf);efflut_y=inv_murr(y_ramp, R_paper, nf);efflut_k=inv_murr(k_ramp, R_paper, nf);

[row, col]=size(cmyk);

eff=zeros(row,col);

eff(:,1)=interp1(dc, efflut_c, cmyk(:,1),'cubic');eff(:,2)=interp1(dc, efflut_m, cmyk(:,2),'cubic');eff(:,3)=interp1(dc, efflut_y, cmyk(:,3),'cubic');eff(:,4)=interp1(dc, efflut_k, cmyk(:,4),'cubic');

Page 305: spectral-based color separation algorithm development - CiteSeer

285

APPENDIX F : MATLAB PROGRAMS FOR THE SPECTRAL-BASED SIX-COLOR SEPARATION MINIMIZING METAMERISM

The following diagram depicts the structure of the MLTLAB program which performs the spectral-basedsix-color separation to determine the ink amount corresponding to each printing primary.

Main Program

(checksep.m)

Four-inkselector

(selector.m)

Six color backward printing model

(six_sep.m)

Six color forward printing model

(neuge6.m)

CMYK backward printing model(cmyk_sep.m)

YGOK backward printing model(ygok_sep.m)

... CMYK forward printing model(cmyk_sub.m)

YGOK forward printing model(ygok_sub.m)

...Nonnegative leastsquare fitting

(nnls.m)

Objective functionminimizingmetamerism(sep1_obj.m)

Objective functionminimizingmetamerism(sep1_obj.m)

Spectralreconstruction by

the proposed printingmodel

(forward2nd.m)

Spectralreconstruction by

the proposed printingmodel

(forward2nd.m)

checksep.m

%This program performs spectral-based six-color separation of the Gretag Macbeth Color Checker%minimizing the metamerism between the original and its reproduction

clear all; close all;load ave_ramp.txt %the six-color ramps for the forward modeling

c_ramp=(ave_ramp(1:13, 7:37))';m_ramp=(ave_ramp(14:26, 7:37))';y_ramp=(ave_ramp(27:39, 7:37))';g_ramp=(ave_ramp(40:52, 7:37))';o_ramp=(ave_ramp(53:65, 7:37))';k_ramp=(ave_ramp(66:78, 7:37))';

clear ave_ramp;

lambda=[400:10:700]';

Page 306: spectral-based color separation algorithm development - CiteSeer

286

R_paper=c_ramp(:,13);

dc=[100;90;80;70;60;50;40;30;20;15;10;5;0]/100; %theoretical dot area for ramps

n=2.2; %the determined n-factor is 2.2

prmy_ramp=[c_ramp m_ramp y_ramp g_ramp o_ramp k_ramp];primary=[c_ramp(:,1) m_ramp(:,1) y_ramp(:,1) g_ramp(:,1) o_ramp(:,1) k_ramp(:,1)];

load checker.txt %spectral reflectance of the Gretag Macbeth Color Checker

po=1/3.5; %po can be form 1/4 to 1/3

checktag=selector(checker, R_paper, primary, po); %the selector determines best four ink for a spectrum requiring six-color reproduction

dc_est=six_sep(checktag, checker, prmy_ramp,R_paper, n); %the six-color backward printing model

check_dc =dc_est(:,2:5);

R_predicted=neuge6(check_dc, checktag, prmy_ramp, R_paper, n); %the proposed six-color forward printing model

delta_e94=del_e94(R_predicted, checker, R_paper, [3 1]);

fprintf('The average color difference between measured and predicted is \n');fprintf( 'Mean \t\t%f\n', mean(delta_e94) );fprintf( 'Standard Deviation \t\t%f\n', std(delta_e94) );fprintf( 'Maximum \t\t%f\n', max(delta_e94) );fprintf( 'Minimum \t\t%f\n\n', min(delta_e94) );

spectral_RMS = RMS( R_predicted, checker);

midx=meta_idx(R_predicted, checker, R_paper, [3 2 1 2]);fprintf('The average color difference between measured and predicted under illum A %f\n', mean(midx));fprintf( 'Mean \t\t%f\n', mean(midx) );fprintf( 'Standard Deviation \t\t%f\n', std(midx) );fprintf( 'Maximum \t\t%f\n', max(midx) );fprintf( 'Minimum \t\t%f\n\n', min(midx) );

fprintf( 'The root mean square error of reflectance factor is %f\n\n', spectral_RMS );

figure[yy,xx]=hist(delta_e94);bar(xx,yy,'r')title('The histogram color difference between measured and predicted')xlabel('Delta E94')ylabel('Frequency')

lab_meas=lab(checker,R_paper,[3 1]);lab_pred=lab(R_predicted,R_paper, [3 1]);primary=[c_ramp(:,1) m_ramp(:,1) y_ramp(:,1) g_ramp(:,1) o_ramp(:,1) k_ramp(:,1)];lab_prmy=lab(primary,R_paper,[3 1]);

figure;plot(lab_meas(:,2),lab_meas(:,3),'*')hold onplot(lab_pred(:,2),lab_pred(:,3),'mo')hold onplot(lab_prmy(:,2), lab_prmy(:,3),'g+')

figure;

Page 307: spectral-based color separation algorithm development - CiteSeer

287

plot(lab_meas(:,2),lab_meas(:,1),'*')hold onplot(lab_pred(:,2),lab_pred(:,1),'mo')

figure;plot(lab_meas(:,3),lab_meas(:,1),'*')hold onplot(lab_pred(:,3),lab_pred(:,1),'mo')

delta_e94=delta_e94(1:24);midx=midx(1:24);

a=[midx delta];[y,i]=sort(a);

figure;subplot(2,2,1)plot(lambda,checker(:,1),'k', lambda,R_predicted(:,1),'k:')axis([400 700 0 1])%xlabel('Wavelength')ylabel('Reflectance')legend('Dark Skin')

subplot(2,2,2)plot(lambda,checker(:,2),'k', lambda,R_predicted(:,2),'k:')axis([400 700 0 1])%xlabel('Wavelength')%ylabel('Reflectance')legend('Light Skin')

subplot(2,2,3)plot(lambda,checker(:,14),'k', lambda,R_predicted(:,14),'k:')axis([400 700 0 1])xlabel('Wavelength')ylabel('Reflectance')legend('Green')

subplot(2,2,4)plot(lambda,checker(:,6),'k', lambda,R_predicted(:,6),'k:')axis([400 700 0 1])xlabel('Wavelength')%ylabel('Reflectance')legend('Blue Green')

figure;subplot(2,2,1)plot(lambda,checker(:,8),'k', lambda,R_predicted(:,8),'k:')axis([400 700 0 1])%xlabel('Wavelength')ylabel('Reflectance')legend('Purplish Blue')

subplot(2,2,2)plot(lambda,checker(:,13),'k', lambda,R_predicted(:,13),'k:')axis([400 700 0 1])%xlabel('Wavelength')%ylabel('Reflectance')legend('Blue')

subplot(2,2,3)plot(lambda,checker(:,18),'k', lambda,R_predicted(:,18),'k:')axis([400 700 0 1])

Page 308: spectral-based color separation algorithm development - CiteSeer

288

xlabel('Wavelength')ylabel('Reflectance')legend('Cyan')

subplot(2,2,4)plot(lambda,checker(:,12),'k', lambda,R_predicted(:,12),'k:')axis([400 700 0 1])xlabel('Wavelength')%ylabel('Reflectance')legend('Orange Yellow')

load check_dc.txt;checktag=check_dc(:,1);check_dc=check_dc(:,2:5);

predicted=neuge6(check_dc, checktag, prmy_ramp, R_paper, n);

load check_6c_print.txt

printed=check_6c_print;

figure;subplot(2,3,1)plot(lambda, checker(:,5),'b', lambda, predicted(:,5),'m',lambda, printed(:,5),'g')ylabel('Reflectance')axis([400 700 0 1])title('Blue flower')

subplot(2,3,2)plot(lambda, checker(:,7),'b', lambda, predicted(:,7),'m',lambda, printed(:,7),'g')%ylabel('Reflectance')axis([400 700 0 1])title('Orange')

subplot(2,3,3)plot(lambda, checker(:,8),'b', lambda, predicted(:,8),'m',lambda, printed(:,8),'g')%ylabel('Reflectance')legend('Original','Predicted','Reproduction')axis([400 700 0 1])title('Purplish blue')

subplot(2,3,4)plot(lambda, checker(:,11),'b', lambda, predicted(:,11),'m',lambda, printed(:,11),'g')ylabel('Reflectance')xlabel('Wavelength')axis([400 700 0 1])title('Yellow green')

subplot(2,3,5)plot(lambda, checker(:,20),'b', lambda, predicted(:,20),'m',lambda, printed(:,20),'g')xlabel('Wavelength')axis([400 700 0 1])title('Neutral 8')

subplot(2,3,6)plot(lambda, checker(:,21),'b', lambda, predicted(:,21),'m',lambda, printed(:,21),'g')xlabel('Wavelength')axis([400 700 0 1])title('Neutral 6.5')

Page 309: spectral-based color separation algorithm development - CiteSeer

289

selector.m

%This program performs the proper four inks for a given input spectrum requiring%six color reproduction

function inktag=selector(sample, R_paper, primary, po)

if nargin==3 po=1/3.5;end

[n,m]=size(sample);

tmp=R_paper.^po;for i=2:m tmp=[tmp R_paper.^po];end

k_prmy=tmp(:,1:6)-primary.^po;

k_c=k_prmy(:,1);k_m=k_prmy(:,2);k_y=k_prmy(:,3);k_g=k_prmy(:,4);k_o=k_prmy(:,5);k_k=k_prmy(:,6);

k_cmyk=[k_prmy(:,1) k_prmy(:,2) k_prmy(:,3) k_prmy(:,6)];k_cmgk=[k_prmy(:,1) k_prmy(:,2) k_prmy(:,4) k_prmy(:,6)];k_cmok=[k_prmy(:,1) k_prmy(:,2) k_prmy(:,5) k_prmy(:,6)];k_cygk=[k_prmy(:,1) k_prmy(:,3) k_prmy(:,4) k_prmy(:,6)];k_cyok=[k_prmy(:,1) k_prmy(:,3) k_prmy(:,5) k_prmy(:,6)];k_cgok=[k_prmy(:,1) k_prmy(:,4) k_prmy(:,5) k_prmy(:,6)];k_mygk=[k_prmy(:,2) k_prmy(:,3) k_prmy(:,4) k_prmy(:,6)];k_myok=[k_prmy(:,2) k_prmy(:,3) k_prmy(:,5) k_prmy(:,6)];k_mgok=[k_prmy(:,2) k_prmy(:,4) k_prmy(:,5) k_prmy(:,6)];k_ygok=[k_prmy(:,3) k_prmy(:,4) k_prmy(:,5) k_prmy(:,6)];

k_sample=tmp-(sample.^po); %tranform ink samples to psi space

tmp=tmp(:,1:10);

tmp_tag=zeros(m,1);

for i=1:m R_spectra=sample(:,i); for j=1:9 R_spectra=[R_spectra sample(:,i)]; end

k_spectra=zeros(31,10); conc1=nnls(k_cmyk, k_sample(:,i)); %nonnegative least square fittting by CMYK inks conc2=nnls(k_cmgk, k_sample(:,i)); conc3=nnls(k_cmok, k_sample(:,i)); conc4=nnls(k_cygk, k_sample(:,i)); conc5=nnls(k_cyok, k_sample(:,i)); conc6=nnls(k_cgok, k_sample(:,i)); conc7=nnls(k_mygk, k_sample(:,i)); conc8=nnls(k_myok, k_sample(:,i)); conc9=nnls(k_mgok, k_sample(:,i)); conc10=nnls(k_ygok, k_sample(:,i));

Page 310: spectral-based color separation algorithm development - CiteSeer

290

k_spectra(:,1)=k_cmyk*conc1; k_spectra(:,2)=k_cmgk*conc2; k_spectra(:,3)=k_cmok*conc3; k_spectra(:,4)=k_cygk*conc4; k_spectra(:,5)=k_cyok*conc5; k_spectra(:,6)=k_cgok*conc6; k_spectra(:,7)=k_mygk*conc7; k_spectra(:,8)=k_myok*conc8; k_spectra(:,9)=k_mgok*conc9; k_spectra(:,10)=k_ygok*conc10; R_pred10=(tmp-k_spectra).^(1/po); criteria = sqrt(mean((R_pred10-R_spectra).^2)); %the root-mean-squrae error

%xyz_sample=[xyz(R_spectra, [1 1]) xyz(R_spectra, [2 1]) xyz(R_spectra, [3 1])]'; %xyz_pred=[xyz(R_pred10, [1 1]) xyz(R_pred10, [2 1]) xyz(R_pred10, [3 1])]'; %criteria=sqrt(mean((xyz_pred-xyz_sample).^2)); [y,ink_idx]=sort(criteria);

tmp_tag(i)=ink_idx(1);end

inktag=tmp_tag;

six_sep.m

%This program performs the proposed spectral-based six-color separation algorithm where%the parameter "inktag" is the vector of enumerated ink combination formed by CMYKGO

function dc_est=six_sep(inktag, sample, prmy_ramp,R_paper, n, dc)

[p,q]=size(sample);

prmy_cmyk=[prmy_ramp(:,1:39) prmy_ramp(:,66:78)];prmy_cmgk=[prmy_ramp(:,1:26) prmy_ramp(:,40:52) prmy_ramp(:,66:78)];prmy_cmok=[prmy_ramp(:,1:26) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_cygk=[prmy_ramp(:,1:13) prmy_ramp(:,27:39) prmy_ramp(:,40:52) prmy_ramp(:,66:78)];prmy_cyok=[prmy_ramp(:,1:13) prmy_ramp(:,27:39) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_cgok=[prmy_ramp(:,1:13) prmy_ramp(:,40:78)];prmy_mygk=[prmy_ramp(:,14:52) prmy_ramp(:,66:78)];prmy_myok=[prmy_ramp(:,14:39) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_mgok=[prmy_ramp(:,14:26) prmy_ramp(:,40:78)];prmy_ygok=[prmy_ramp(:,27:78)];

dc_tmp=zeros(q,5);for i=1:q i switch inktag(i) case 1, dc_tmp(i,:)= cmyk_sep(sample(:,i), prmy_cmyk, R_paper, n); case 2, dc_tmp(i,:)= cmgk_sep(sample(:,i), prmy_cmgk, R_paper, n); case 3, dc_tmp(i,:)= cmok_sep(sample(:,i), prmy_cmok, R_paper, n); case 4, dc_tmp(i,:)= cygk_sep(sample(:,i), prmy_cygk, R_paper, n); case 5, dc_tmp(i,:)= cyok_sep(sample(:,i), prmy_cyok, R_paper, n); case 6, dc_tmp(i,:)= cgok_sep(sample(:,i), prmy_cgok, R_paper, n); case 7, dc_tmp(i,:)= mygk_sep(sample(:,i), prmy_mygk, R_paper, n); case 8, dc_tmp(i,:)= myok_sep(sample(:,i), prmy_myok, R_paper, n); case 9, dc_tmp(i,:)= mgok_sep(sample(:,i), prmy_mgok, R_paper, n); case 10, dc_tmp(i,:)= ygok_sep(sample(:,i), prmy_ygok, R_paper, n); otherwise fprintf('error'); end

Page 311: spectral-based color separation algorithm development - CiteSeer

291

end

dc_est=dc_tmp;

cmyk_sep.m

%This program is the backward CMYK printing model

function dot_est=cmyk_sep(sample, ramp, R_paper, n);load fij_1.txt;

fij_1=[fij_1; ones(1,12)];load neprmy1.txt

cmyk_est=ones(1,4)*0.5;vlb=ones(1,4)*0.0001;vub=ones(1,4)*0.99;options(1)=1;options(2)=1e-3;options(3)=1e-3;options(4)=1e-3;options(14)=10000;

cmyk_est=constr('sep1_obj',cmyk_est,options,vlb,vub,'',sample,ramp,fij_1,neprmy1, R_paper, n);

dot_est=[1 cmyk_est];

sep1_obj.m

%This is the objective function for a four-color forward printing model

function [f,g]=sep1_obj(dot_est, sample, ramp, fij, neprmy, R_paper, n);

sc=0.62;dac=[0 25 50 70 90 100]/100;dac=dac';dc=[100;90;80;70;60;50;40;30;20;15;10;5;0]/100;

qscalar=iino_q(fij, dot_est, dac);eff=theo2eff(dot_est, dc, ramp(:,1:13), ramp(:,14:26), ramp(:,27:39), ramp(:,40:52), R_paper, n);eff1=(dot_est+qscalar.*(eff-dot_est))*sc + eff*(1-sc);

pred=neug4c(eff1, neprmy, n);

%xyz_sample=[xyz(sample, [3 1]) xyz(sample, [2 1])]';%xyz_pred=[xyz(pred, [3 1]) xyz(pred, [2 1])]';%f=rms(xyz_sample(1:4), xyz_pred(1:4));

f=del_e94(sample, pred, R_paper, [3 1]);

tmpcmyk=sum(dot_est);g(1)=-tmpcmyk;g(2)=tmpcmyk-3;g(3)=dot_est(4)-0.001;g(4)=-dot_est(4);

Page 312: spectral-based color separation algorithm development - CiteSeer

292

neuge6.m

%This program performs the proposed spectral-based six-color synthesis based on the union%of 10 four-color forward printing models where the parameter "inktag" is the vector%of enumerated ink combination formed by CMYKGO

function R_predicted=neuge6(check_dc, inktag,prmy_ramp,R_paper, n);

[q,p]=size(check_dc);

prmy_cmyk=[prmy_ramp(:,1:39) prmy_ramp(:,66:78)];prmy_cmgk=[prmy_ramp(:,1:26) prmy_ramp(:,40:52) prmy_ramp(:,66:78)];prmy_cmok=[prmy_ramp(:,1:26) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_cygk=[prmy_ramp(:,1:13) prmy_ramp(:,27:39) prmy_ramp(:,40:52) prmy_ramp(:,66:78)];prmy_cyok=[prmy_ramp(:,1:13) prmy_ramp(:,27:39) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_cgok=[prmy_ramp(:,1:13) prmy_ramp(:,40:78)];prmy_mygk=[prmy_ramp(:,14:52) prmy_ramp(:,66:78)];prmy_myok=[prmy_ramp(:,14:39) prmy_ramp(:,53:65) prmy_ramp(:,66:78)];prmy_mgok=[prmy_ramp(:,14:26) prmy_ramp(:,40:78)];prmy_ygok=[prmy_ramp(:,27:78)];

tmp=zeros(31,q);for i=1:q switch inktag(i) case 1, tmp(:,i)= cmyk_sub(check_dc(i,:), prmy_cmyk, R_paper, n); case 2, tmp(:,i)= cmgk_sub(check_dc(i,:), prmy_cmgk, R_paper, n); case 3, tmp(:,i)= cmok_sub(check_dc(i,:), prmy_cmok, R_paper, n); case 4, tmp(:,i)= cygk_sub(check_dc(i,:), prmy_cygk, R_paper, n); case 5, tmp(:,i)= cyok_sub(check_dc(i,:), prmy_cyok, R_paper, n); case 6, tmp(:,i)= cgok_sub(check_dc(i,:), prmy_cgok, R_paper, n); case 7, tmp(:,i)= mygk_sub(check_dc(i,:), prmy_mygk, R_paper, n); case 8, tmp(:,i)= myok_sub(check_dc(i,:), prmy_myok, R_paper, n); case 9, tmp(:,i)= mgok_sub(check_dc(i,:), prmy_mgok, R_paper, n); case 10, tmp(:,i)= ygok_sub(check_dc(i,:), prmy_ygok, R_paper, n); otherwise fprintf('error'); endend

R_predicted=tmp;

cmyk_sub.m

%This program performs the spectral reconstruction using CMYK inks

function pred= cmyk_sub(dot_est, ramp, R_paper, n);load fij_1.txt;

fij_1=[fij_1; ones(1,12)];load neprmy1.txt

pred=forward2nd(dot_est, ramp, fij_1, neprmy1, R_paper, n);

forward2nd.m

%This program is the proposed four-color forward printing model

Page 313: spectral-based color separation algorithm development - CiteSeer

293

function pred=forward2nd(dottiest, ramp, fij, neprmy, R_paper, n);

sc=0.62;dac=[0 25 50 70 90 100]/100;dac=dac';dc=[100;90;80;70;60;50;40;30;20;15;10;5;0]/100;

qscalar=iino_q(fij, dot_est, dac);

eff=theo2eff(dot_est, dc, ramp(:,1:13), ramp(:,14:26), ramp(:,27:39), ramp(:,40:52), R_paper, n);

eff1=(dot_est+qscalar.*(eff-dot_est))*sc + eff*(1-sc);

pred=neug4c(eff1, neprmy, n);

Page 314: spectral-based color separation algorithm development - CiteSeer

294

APPENDIX G : THE SIX ESTIMATED COLORANTS FOR THE 105MIXTURES OF POSTER COLORS

Wavelength Primary 1 Primary 2 Primary 3 Primary 4 Primary 5 Primary 6400 0.278 0.457 0.004 0.591 0.556 0.003410 0.319 0.480 0.001 0.559 0.651 0.003420 0.349 0.500 0.000 0.537 0.728 0.002430 0.387 0.513 0.000 0.487 0.789 0.001440 0.454 0.496 0.000 0.359 0.791 0.001450 0.538 0.443 0.002 0.204 0.690 0.001460 0.631 0.363 0.010 0.075 0.522 0.001470 0.708 0.281 0.027 0.012 0.355 0.001480 0.738 0.208 0.052 0.000 0.223 0.001490 0.720 0.149 0.104 0.000 0.125 0.003500 0.704 0.090 0.260 0.020 0.039 0.007510 0.641 0.033 0.542 0.224 0.004 0.008520 0.512 0.004 0.757 0.619 0.002 0.007530 0.373 0.000 0.835 0.887 0.010 0.006540 0.262 0.000 0.841 0.881 0.034 0.005550 0.173 0.005 0.832 0.747 0.080 0.005560 0.107 0.025 0.830 0.552 0.143 0.006570 0.062 0.072 0.845 0.371 0.211 0.008580 0.036 0.157 0.875 0.214 0.251 0.010590 0.027 0.270 0.892 0.108 0.232 0.010600 0.027 0.406 0.891 0.041 0.160 0.009610 0.032 0.531 0.883 0.010 0.094 0.008620 0.037 0.610 0.872 0.002 0.060 0.008630 0.042 0.656 0.865 0.000 0.047 0.009640 0.045 0.685 0.867 0.000 0.043 0.010650 0.049 0.708 0.871 0.001 0.038 0.010660 0.053 0.738 0.877 0.005 0.028 0.009670 0.061 0.776 0.877 0.013 0.013 0.007680 0.075 0.823 0.866 0.034 0.003 0.005690 0.096 0.876 0.849 0.074 0.000 0.004700 0.123 0.901 0.836 0.143 0.000 0.006

Page 315: spectral-based color separation algorithm development - CiteSeer

295

APPENDIX H : THE ESTIMATED SPECTRAL ABSORPTION ANDSCATTERING COEFFICIENTS FOR THE WATERPROOF ®

CMYRGB PRIMARIES

Wavelength Kcyan Scyan Kmagenta Smagenta Kyellow Syellow

400 0.282 0.027 0.514 0.022 0.959 0.036410 0.158 0.021 0.460 0.016 1.140 0.043420 0.118 0.015 0.455 0.016 1.310 0.050430 0.087 0.012 0.449 0.015 1.370 0.051440 0.055 0.009 0.452 0.015 1.350 0.054450 0.034 0.007 0.485 0.017 1.200 0.051460 0.030 0.006 0.544 0.019 1.000 0.044470 0.031 0.005 0.621 0.021 0.877 0.038480 0.036 0.004 0.734 0.023 0.749 0.041490 0.046 0.003 0.872 0.025 0.516 0.041500 0.062 0.002 0.990 0.028 0.279 0.035510 0.086 0.002 1.160 0.034 0.121 0.026520 0.125 0.002 1.450 0.044 0.044 0.020530 0.181 0.003 1.650 0.048 0.015 0.015540 0.258 0.004 1.530 0.041 0.006 0.012550 0.369 0.007 1.530 0.041 0.003 0.010560 0.540 0.011 1.790 0.054 0.002 0.008570 0.755 0.015 2.100 0.087 0.002 0.008580 0.956 0.019 1.150 0.088 0.002 0.006590 1.100 0.022 0.417 0.066 0.001 0.006600 1.240 0.025 0.169 0.046 0.001 0.005610 1.360 0.028 0.086 0.033 0.000 0.005620 1.380 0.029 0.057 0.025 0.000 0.005630 1.350 0.028 0.048 0.020 0.000 0.004640 1.280 0.026 0.044 0.016 0.000 0.003650 1.160 0.023 0.042 0.013 0.000 0.003660 1.020 0.020 0.042 0.012 0.000 0.003670 0.963 0.018 0.041 0.010 0.000 0.003680 0.991 0.018 0.040 0.009 0.000 0.003690 1.060 0.020 0.039 0.009 0.000 0.002700 1.180 0.023 0.038 0.007 0.000 0.002

Page 316: spectral-based color separation algorithm development - CiteSeer

296

Wavelength Kred Sred Kgreen Sgreen Kblue Sblue

400 1.200 0.100 3.130 0.219 0.800 0.100

410 1.100 0.065 2.270 0.156 0.614 0.050

420 1.140 0.075 1.960 0.136 0.489 0.041

430 1.130 0.069 1.670 0.113 0.393 0.035

440 1.150 0.070 1.460 0.103 0.297 0.029

450 1.220 0.075 1.220 0.093 0.221 0.025

460 1.380 0.086 0.961 0.081 0.200 0.022

470 1.740 0.113 0.763 0.074 0.212 0.020

480 2.020 0.121 0.604 0.070 0.256 0.019

490 2.170 0.114 0.416 0.067 0.342 0.019

500 2.250 0.111 0.245 0.062 0.464 0.021

510 2.290 0.111 0.165 0.054 0.629 0.022

520 2.310 0.109 0.159 0.045 0.877 0.027

530 2.320 0.111 0.191 0.039 1.220 0.029

540 2.320 0.127 0.252 0.036 2.240 0.102

550 2.300 0.160 0.346 0.035 2.560 0.060

560 2.250 0.204 0.483 0.036 2.650 0.041

570 2.210 0.232 0.671 0.040 2.660 0.042

580 1.910 0.247 0.941 0.045 2.660 0.043

590 0.690 0.132 1.350 0.058 2.650 0.046

600 0.240 0.101 1.940 0.076 2.640 0.047

610 0.084 0.080 2.460 0.094 2.630 0.049

620 0.032 0.066 2.560 0.095 2.610 0.051

630 0.014 0.056 2.580 0.100 2.590 0.052

640 0.007 0.049 2.600 0.103 2.570 0.054

650 0.004 0.044 2.600 0.107 2.560 0.054

660 0.003 0.039 2.560 0.116 2.540 0.053

670 0.002 0.036 2.410 0.119 2.540 0.051

680 0.001 0.033 2.080 0.111 2.550 0.047

690 0.001 0.031 1.740 0.087 2.560 0.049

700 0.001 0.029 1.620 0.087 2.550 0.052

Page 317: spectral-based color separation algorithm development - CiteSeer

297

APPENDIX I : THE REFLECTANCE SPECTRA OF THEORIGINAL GRETAG MACBETH COLOR CHECKER

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.059 0.195 0.249 0.057 0.301 0.262410 0.059 0.214 0.294 0.058 0.377 0.311420 0.059 0.216 0.305 0.060 0.405 0.329430 0.059 0.216 0.311 0.062 0.417 0.343440 0.059 0.217 0.321 0.065 0.423 0.359450 0.059 0.220 0.326 0.067 0.425 0.383460 0.059 0.225 0.323 0.068 0.417 0.421470 0.059 0.233 0.313 0.068 0.401 0.467480 0.059 0.243 0.302 0.070 0.376 0.516490 0.060 0.250 0.290 0.073 0.341 0.563500 0.062 0.256 0.273 0.083 0.304 0.592510 0.067 0.267 0.250 0.110 0.275 0.598520 0.073 0.282 0.227 0.155 0.249 0.584530 0.075 0.288 0.211 0.187 0.225 0.557540 0.077 0.293 0.196 0.188 0.211 0.522550 0.080 0.304 0.175 0.167 0.206 0.479560 0.087 0.311 0.154 0.142 0.200 0.433570 0.100 0.321 0.143 0.123 0.194 0.388580 0.118 0.353 0.151 0.114 0.191 0.344590 0.134 0.396 0.158 0.109 0.198 0.300600 0.144 0.438 0.152 0.104 0.214 0.259610 0.148 0.478 0.145 0.100 0.229 0.232620 0.152 0.515 0.141 0.100 0.239 0.219630 0.158 0.540 0.140 0.103 0.251 0.211640 0.166 0.555 0.141 0.108 0.276 0.206650 0.174 0.563 0.144 0.112 0.308 0.202660 0.179 0.568 0.149 0.115 0.338 0.204670 0.179 0.571 0.151 0.113 0.353 0.210680 0.175 0.574 0.147 0.108 0.350 0.220690 0.171 0.577 0.140 0.104 0.343 0.230700 0.171 0.579 0.133 0.104 0.343 0.238

Page 318: spectral-based color separation algorithm development - CiteSeer

298

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.055 0.232 0.134 0.173 0.060 0.066410 0.055 0.283 0.139 0.206 0.061 0.067420 0.055 0.312 0.138 0.214 0.062 0.066430 0.055 0.338 0.137 0.197 0.064 0.066440 0.055 0.365 0.136 0.168 0.067 0.066450 0.056 0.377 0.135 0.139 0.073 0.067460 0.056 0.364 0.132 0.114 0.083 0.069470 0.057 0.332 0.127 0.094 0.100 0.073480 0.058 0.286 0.121 0.081 0.128 0.080490 0.061 0.235 0.116 0.072 0.174 0.090500 0.069 0.190 0.111 0.064 0.249 0.103510 0.094 0.157 0.105 0.060 0.356 0.126520 0.134 0.131 0.100 0.058 0.457 0.186530 0.165 0.114 0.097 0.055 0.514 0.289540 0.182 0.103 0.097 0.054 0.530 0.379550 0.204 0.096 0.097 0.054 0.521 0.432560 0.250 0.091 0.099 0.055 0.500 0.479570 0.328 0.087 0.109 0.054 0.476 0.530580 0.423 0.086 0.159 0.053 0.450 0.573590 0.502 0.085 0.271 0.054 0.411 0.602600 0.543 0.085 0.410 0.059 0.361 0.614610 0.556 0.084 0.503 0.071 0.324 0.615620 0.563 0.084 0.550 0.092 0.302 0.620630 0.572 0.084 0.568 0.119 0.289 0.638640 0.582 0.087 0.572 0.145 0.280 0.667650 0.589 0.091 0.573 0.170 0.272 0.695660 0.592 0.098 0.580 0.198 0.273 0.715670 0.588 0.107 0.596 0.232 0.282 0.713680 0.585 0.120 0.617 0.275 0.296 0.695690 0.587 0.139 0.636 0.332 0.313 0.691700 0.595 0.166 0.649 0.399 0.327 0.703

Page 319: spectral-based color separation algorithm development - CiteSeer

299

Wavelength Blue Green Red YellowMagenta Cyan400 0.114 0.053 0.059 0.057 0.280 0.185410 0.151 0.054 0.058 0.058 0.339 0.224420 0.185 0.055 0.057 0.058 0.351 0.245430 0.223 0.056 0.057 0.060 0.341 0.269440 0.274 0.059 0.057 0.063 0.320 0.302450 0.325 0.064 0.057 0.068 0.293 0.338460 0.332 0.074 0.056 0.078 0.263 0.378470 0.294 0.091 0.055 0.093 0.236 0.415480 0.225 0.118 0.053 0.118 0.207 0.432490 0.155 0.162 0.052 0.159 0.180 0.428500 0.104 0.226 0.051 0.225 0.160 0.403510 0.074 0.299 0.050 0.328 0.143 0.364520 0.059 0.333 0.049 0.456 0.123 0.314530 0.051 0.325 0.049 0.556 0.105 0.262540 0.047 0.307 0.049 0.611 0.100 0.214550 0.045 0.284 0.050 0.641 0.104 0.171560 0.044 0.252 0.052 0.662 0.104 0.135570 0.043 0.221 0.057 0.681 0.109 0.111580 0.043 0.195 0.072 0.696 0.138 0.097590 0.043 0.167 0.116 0.708 0.200 0.088600 0.042 0.133 0.230 0.717 0.291 0.080610 0.043 0.108 0.374 0.724 0.391 0.076620 0.043 0.093 0.487 0.731 0.491 0.074630 0.043 0.084 0.551 0.737 0.575 0.073640 0.043 0.078 0.583 0.743 0.647 0.073650 0.044 0.074 0.600 0.749 0.705 0.074660 0.044 0.071 0.618 0.753 0.748 0.076670 0.044 0.071 0.636 0.755 0.778 0.077680 0.044 0.072 0.657 0.760 0.799 0.076690 0.045 0.075 0.678 0.767 0.814 0.075700 0.046 0.078 0.695 0.771 0.826 0.073

Page 320: spectral-based color separation algorithm development - CiteSeer

300

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.437 0.372 0.283 0.178 0.087 0.033410 0.684 0.509 0.340 0.196 0.089 0.034420 0.838 0.557 0.353 0.199 0.090 0.034430 0.883 0.566 0.356 0.200 0.091 0.034440 0.891 0.569 0.357 0.201 0.092 0.034450 0.894 0.570 0.358 0.201 0.092 0.034460 0.895 0.569 0.357 0.202 0.091 0.034470 0.895 0.567 0.356 0.202 0.090 0.034480 0.895 0.565 0.354 0.202 0.090 0.033490 0.894 0.564 0.353 0.201 0.089 0.033500 0.892 0.564 0.352 0.200 0.089 0.033510 0.891 0.564 0.351 0.200 0.089 0.033520 0.888 0.564 0.350 0.198 0.089 0.033530 0.885 0.564 0.349 0.197 0.089 0.033540 0.885 0.564 0.349 0.197 0.089 0.033550 0.885 0.564 0.349 0.197 0.089 0.033560 0.883 0.564 0.352 0.197 0.089 0.033570 0.883 0.565 0.356 0.197 0.089 0.032580 0.885 0.567 0.360 0.199 0.089 0.032590 0.888 0.567 0.360 0.199 0.089 0.032600 0.890 0.566 0.355 0.198 0.089 0.032610 0.889 0.564 0.349 0.196 0.088 0.032620 0.888 0.563 0.344 0.194 0.088 0.032630 0.888 0.561 0.340 0.192 0.087 0.032640 0.890 0.559 0.337 0.190 0.086 0.032650 0.892 0.557 0.335 0.188 0.086 0.032660 0.894 0.555 0.334 0.187 0.085 0.032670 0.894 0.553 0.335 0.186 0.085 0.032680 0.895 0.551 0.337 0.186 0.084 0.032690 0.896 0.549 0.338 0.185 0.084 0.032700 0.896 0.547 0.338 0.185 0.083 0.032

Page 321: spectral-based color separation algorithm development - CiteSeer

301

APPENDIX J : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLOR CHECKER BY THE

PROPOSED SIX-COLOR SEPARATION ALGORITHM

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.028 0.079 0.086 0.027 0.113 0.101410 0.041 0.138 0.171 0.039 0.230 0.199420 0.055 0.200 0.263 0.051 0.354 0.311430 0.058 0.221 0.305 0.055 0.408 0.360440 0.059 0.226 0.327 0.058 0.434 0.386450 0.060 0.228 0.333 0.061 0.436 0.406460 0.059 0.228 0.326 0.066 0.419 0.426470 0.059 0.228 0.319 0.073 0.401 0.463480 0.060 0.229 0.308 0.080 0.376 0.492490 0.062 0.240 0.294 0.092 0.350 0.506500 0.065 0.262 0.280 0.112 0.329 0.527510 0.068 0.283 0.262 0.138 0.302 0.564520 0.070 0.292 0.239 0.159 0.267 0.590530 0.073 0.295 0.217 0.167 0.239 0.579540 0.078 0.302 0.200 0.163 0.225 0.539550 0.085 0.303 0.178 0.155 0.202 0.484560 0.089 0.295 0.151 0.144 0.169 0.421570 0.096 0.293 0.132 0.134 0.148 0.366580 0.111 0.329 0.129 0.123 0.163 0.319590 0.132 0.409 0.141 0.113 0.210 0.281600 0.146 0.472 0.147 0.106 0.241 0.252610 0.154 0.506 0.148 0.102 0.253 0.237620 0.158 0.522 0.150 0.101 0.260 0.233630 0.160 0.528 0.152 0.101 0.265 0.233640 0.163 0.532 0.156 0.102 0.272 0.234650 0.166 0.536 0.165 0.103 0.286 0.239660 0.169 0.540 0.176 0.105 0.302 0.246670 0.172 0.543 0.181 0.107 0.310 0.252680 0.173 0.546 0.179 0.110 0.307 0.256690 0.174 0.547 0.174 0.112 0.298 0.259700 0.175 0.548 0.166 0.113 0.285 0.259

Page 322: spectral-based color separation algorithm development - CiteSeer

302

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.028 0.089 0.055 0.047 0.032 0.031410 0.038 0.191 0.092 0.087 0.044 0.041420 0.046 0.291 0.125 0.122 0.056 0.049430 0.048 0.342 0.136 0.138 0.060 0.051440 0.050 0.371 0.139 0.147 0.063 0.054450 0.052 0.374 0.137 0.146 0.071 0.059460 0.056 0.352 0.133 0.138 0.085 0.067470 0.059 0.328 0.127 0.126 0.103 0.075480 0.065 0.294 0.119 0.111 0.127 0.088490 0.079 0.259 0.116 0.100 0.174 0.117500 0.101 0.230 0.120 0.093 0.260 0.168510 0.124 0.197 0.118 0.081 0.381 0.230520 0.142 0.157 0.105 0.062 0.490 0.284530 0.159 0.129 0.098 0.051 0.541 0.320540 0.189 0.115 0.104 0.049 0.542 0.355550 0.227 0.094 0.103 0.043 0.520 0.394560 0.252 0.068 0.090 0.032 0.484 0.418570 0.295 0.053 0.084 0.027 0.450 0.457580 0.381 0.060 0.138 0.041 0.414 0.528590 0.477 0.082 0.288 0.076 0.376 0.599600 0.540 0.091 0.431 0.099 0.344 0.641610 0.570 0.091 0.513 0.107 0.328 0.661620 0.586 0.093 0.548 0.111 0.323 0.671630 0.593 0.095 0.562 0.114 0.321 0.675640 0.599 0.100 0.568 0.118 0.320 0.676650 0.608 0.113 0.573 0.129 0.320 0.678660 0.618 0.130 0.577 0.143 0.323 0.680670 0.623 0.137 0.582 0.150 0.328 0.684680 0.623 0.133 0.586 0.146 0.337 0.688690 0.620 0.123 0.590 0.139 0.346 0.693700 0.615 0.110 0.593 0.128 0.353 0.696

Page 323: spectral-based color separation algorithm development - CiteSeer

303

Wavelength Blue Green Red YellowMagenta Cyan400 0.072 0.025 0.029 0.034 0.099 0.082410 0.156 0.037 0.042 0.044 0.191 0.170420 0.235 0.050 0.051 0.052 0.280 0.264430 0.277 0.056 0.054 0.053 0.314 0.313440 0.302 0.060 0.055 0.056 0.321 0.347450 0.302 0.067 0.057 0.065 0.306 0.367460 0.280 0.080 0.058 0.080 0.278 0.371470 0.254 0.099 0.056 0.093 0.250 0.378480 0.220 0.121 0.053 0.114 0.216 0.376490 0.185 0.146 0.054 0.167 0.184 0.366500 0.159 0.190 0.058 0.266 0.162 0.355510 0.129 0.258 0.055 0.395 0.138 0.340520 0.095 0.321 0.043 0.504 0.109 0.314530 0.074 0.345 0.036 0.564 0.095 0.277540 0.066 0.332 0.040 0.596 0.099 0.238550 0.052 0.301 0.039 0.619 0.095 0.192560 0.034 0.261 0.030 0.629 0.080 0.144570 0.026 0.222 0.027 0.648 0.073 0.108580 0.030 0.182 0.064 0.681 0.125 0.089590 0.042 0.144 0.196 0.713 0.268 0.081600 0.043 0.115 0.341 0.731 0.402 0.074610 0.039 0.101 0.427 0.741 0.477 0.069620 0.039 0.096 0.465 0.746 0.510 0.069630 0.040 0.095 0.481 0.748 0.525 0.070640 0.043 0.094 0.490 0.749 0.533 0.073650 0.053 0.094 0.499 0.751 0.545 0.081660 0.066 0.096 0.508 0.753 0.556 0.091670 0.072 0.100 0.514 0.756 0.563 0.095680 0.068 0.106 0.516 0.760 0.563 0.093690 0.060 0.113 0.515 0.764 0.559 0.088700 0.049 0.118 0.512 0.766 0.553 0.081

Page 324: spectral-based color separation algorithm development - CiteSeer

304

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.235 0.162 0.108 0.066 0.035 0.017410 0.471 0.316 0.203 0.118 0.057 0.024420 0.756 0.501 0.315 0.178 0.080 0.030430 0.858 0.567 0.355 0.199 0.089 0.032440 0.879 0.582 0.365 0.205 0.092 0.033450 0.873 0.580 0.364 0.206 0.093 0.034460 0.860 0.572 0.360 0.204 0.092 0.034470 0.858 0.572 0.360 0.204 0.093 0.034480 0.855 0.571 0.360 0.204 0.093 0.035490 0.853 0.570 0.359 0.204 0.093 0.035500 0.851 0.569 0.359 0.204 0.093 0.036510 0.850 0.568 0.358 0.203 0.092 0.037520 0.850 0.568 0.357 0.202 0.092 0.037530 0.849 0.566 0.355 0.201 0.091 0.035540 0.848 0.565 0.353 0.199 0.090 0.034550 0.850 0.564 0.352 0.198 0.089 0.032560 0.848 0.561 0.349 0.195 0.087 0.030570 0.853 0.562 0.348 0.194 0.086 0.028580 0.854 0.560 0.347 0.193 0.086 0.028590 0.856 0.561 0.347 0.193 0.087 0.030600 0.857 0.561 0.347 0.193 0.087 0.032610 0.859 0.562 0.348 0.194 0.087 0.032620 0.862 0.564 0.349 0.194 0.088 0.033630 0.863 0.565 0.350 0.196 0.089 0.033640 0.863 0.567 0.353 0.198 0.091 0.035650 0.866 0.570 0.357 0.202 0.093 0.036660 0.868 0.574 0.360 0.205 0.096 0.039670 0.869 0.576 0.363 0.208 0.098 0.040680 0.871 0.578 0.365 0.209 0.099 0.040690 0.873 0.579 0.365 0.209 0.099 0.040700 0.873 0.579 0.365 0.209 0.099 0.039

Page 325: spectral-based color separation algorithm development - CiteSeer

305

APPENDIX K : THE REFLECTANCE SPECTRA OF THEREPRODUCED GRETAG MACBETH COLOR CHECKER USING

DUPONT WATERPROOF® SYSTEM

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.029 0.084 0.094 0.028 0.121 0.114410 0.040 0.136 0.177 0.038 0.234 0.210420 0.050 0.186 0.261 0.047 0.347 0.311430 0.052 0.200 0.297 0.049 0.396 0.354440 0.053 0.204 0.316 0.051 0.418 0.379450 0.053 0.206 0.321 0.055 0.418 0.398460 0.053 0.208 0.315 0.059 0.401 0.420470 0.053 0.209 0.308 0.066 0.382 0.458480 0.053 0.210 0.298 0.073 0.358 0.488490 0.055 0.224 0.285 0.085 0.333 0.503500 0.058 0.250 0.273 0.105 0.313 0.527510 0.060 0.273 0.257 0.128 0.288 0.566520 0.062 0.279 0.236 0.146 0.254 0.592530 0.065 0.281 0.216 0.152 0.229 0.578540 0.071 0.287 0.199 0.149 0.215 0.532550 0.078 0.288 0.176 0.143 0.192 0.473560 0.083 0.279 0.147 0.133 0.159 0.407570 0.090 0.275 0.126 0.124 0.136 0.352580 0.105 0.313 0.122 0.114 0.150 0.306590 0.123 0.397 0.131 0.105 0.194 0.269600 0.135 0.460 0.135 0.098 0.219 0.240610 0.141 0.490 0.134 0.094 0.227 0.224620 0.144 0.503 0.136 0.092 0.232 0.219630 0.146 0.509 0.138 0.092 0.237 0.217640 0.148 0.512 0.142 0.093 0.243 0.218650 0.151 0.516 0.151 0.094 0.256 0.223660 0.155 0.519 0.161 0.096 0.272 0.230670 0.157 0.522 0.166 0.099 0.280 0.238680 0.159 0.525 0.164 0.102 0.276 0.243690 0.159 0.526 0.159 0.104 0.267 0.246700 0.160 0.527 0.151 0.106 0.255 0.246

Page 326: spectral-based color separation algorithm development - CiteSeer

306

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.029 0.095 0.057 0.051 0.032 0.030410 0.036 0.191 0.090 0.091 0.041 0.036420 0.041 0.284 0.117 0.123 0.048 0.040430 0.041 0.329 0.125 0.137 0.050 0.041440 0.041 0.355 0.126 0.145 0.053 0.042450 0.043 0.355 0.125 0.143 0.060 0.046460 0.046 0.333 0.121 0.136 0.074 0.053470 0.049 0.309 0.116 0.124 0.090 0.060480 0.054 0.276 0.107 0.110 0.112 0.070490 0.066 0.243 0.104 0.099 0.160 0.096500 0.086 0.217 0.108 0.093 0.251 0.141510 0.105 0.186 0.105 0.081 0.378 0.193520 0.119 0.150 0.091 0.063 0.490 0.234530 0.135 0.125 0.084 0.052 0.541 0.265540 0.167 0.113 0.090 0.051 0.541 0.303550 0.207 0.093 0.089 0.044 0.517 0.347560 0.235 0.065 0.077 0.032 0.479 0.376570 0.281 0.049 0.071 0.026 0.442 0.423580 0.371 0.055 0.125 0.040 0.404 0.508590 0.465 0.075 0.281 0.072 0.363 0.586600 0.521 0.082 0.427 0.091 0.327 0.626610 0.546 0.080 0.506 0.096 0.306 0.641620 0.559 0.081 0.539 0.098 0.298 0.648630 0.565 0.083 0.551 0.101 0.294 0.650640 0.571 0.088 0.557 0.106 0.292 0.650650 0.580 0.101 0.561 0.116 0.292 0.652660 0.589 0.116 0.565 0.130 0.296 0.654670 0.595 0.124 0.570 0.136 0.304 0.659680 0.594 0.119 0.575 0.133 0.315 0.666690 0.590 0.109 0.579 0.125 0.327 0.672700 0.584 0.097 0.582 0.114 0.335 0.676

Page 327: spectral-based color separation algorithm development - CiteSeer

307

Wavelength Blue Green Red YellowMagenta Cyan400 0.076 0.026 0.030 0.035 0.105 0.088410 0.156 0.036 0.041 0.041 0.192 0.174420 0.230 0.045 0.048 0.045 0.273 0.260430 0.268 0.049 0.049 0.044 0.303 0.303440 0.291 0.053 0.050 0.046 0.308 0.334450 0.288 0.060 0.051 0.053 0.293 0.352460 0.266 0.072 0.053 0.067 0.266 0.356470 0.240 0.091 0.051 0.080 0.238 0.363480 0.207 0.112 0.048 0.098 0.205 0.362490 0.175 0.138 0.049 0.150 0.174 0.354500 0.151 0.185 0.054 0.249 0.154 0.345510 0.123 0.254 0.051 0.372 0.130 0.332520 0.092 0.317 0.039 0.471 0.103 0.307530 0.073 0.340 0.032 0.526 0.091 0.271540 0.066 0.327 0.036 0.560 0.095 0.231550 0.052 0.296 0.035 0.587 0.092 0.184560 0.034 0.256 0.026 0.601 0.076 0.133570 0.024 0.216 0.023 0.626 0.069 0.097580 0.029 0.176 0.062 0.666 0.120 0.078590 0.041 0.137 0.199 0.701 0.267 0.070600 0.041 0.107 0.341 0.717 0.398 0.062610 0.037 0.091 0.421 0.724 0.465 0.057620 0.036 0.085 0.455 0.727 0.494 0.056630 0.037 0.083 0.469 0.728 0.507 0.058640 0.040 0.082 0.477 0.728 0.515 0.061650 0.050 0.082 0.486 0.730 0.526 0.068660 0.063 0.084 0.495 0.732 0.537 0.078670 0.068 0.089 0.500 0.736 0.544 0.082680 0.065 0.096 0.501 0.740 0.543 0.080690 0.056 0.104 0.500 0.744 0.539 0.075700 0.046 0.110 0.497 0.747 0.533 0.068

Page 328: spectral-based color separation algorithm development - CiteSeer

308

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.247 0.173 0.112 0.067 0.036 0.017410 0.481 0.323 0.198 0.112 0.054 0.022420 0.759 0.489 0.289 0.158 0.073 0.026430 0.857 0.547 0.320 0.174 0.079 0.028440 0.879 0.560 0.328 0.178 0.081 0.029450 0.874 0.558 0.328 0.179 0.082 0.030460 0.862 0.551 0.324 0.177 0.082 0.030470 0.860 0.550 0.324 0.177 0.082 0.030480 0.858 0.549 0.324 0.178 0.082 0.031490 0.856 0.548 0.324 0.178 0.083 0.031500 0.854 0.547 0.323 0.178 0.082 0.033510 0.853 0.546 0.322 0.177 0.082 0.033520 0.854 0.546 0.322 0.177 0.082 0.033530 0.853 0.544 0.320 0.175 0.081 0.032540 0.852 0.542 0.319 0.174 0.080 0.031550 0.854 0.541 0.318 0.174 0.080 0.029560 0.852 0.537 0.315 0.171 0.078 0.027570 0.858 0.538 0.314 0.170 0.077 0.025580 0.858 0.537 0.313 0.169 0.077 0.025590 0.860 0.537 0.314 0.170 0.078 0.027600 0.861 0.537 0.314 0.170 0.078 0.028610 0.863 0.538 0.314 0.170 0.078 0.029620 0.866 0.540 0.315 0.171 0.079 0.029630 0.867 0.541 0.317 0.172 0.080 0.030640 0.867 0.543 0.319 0.174 0.082 0.031650 0.869 0.546 0.323 0.178 0.084 0.033660 0.870 0.550 0.327 0.181 0.087 0.035670 0.872 0.552 0.329 0.184 0.089 0.036680 0.874 0.554 0.331 0.185 0.090 0.036690 0.875 0.554 0.331 0.185 0.090 0.036700 0.876 0.554 0.331 0.185 0.090 0.035

Page 329: spectral-based color separation algorithm development - CiteSeer

309

APPENDIX L : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLOR CHECKER USING

FUJIX PICTROGRAPH 3000

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.037 0.093 0.110 0.036 0.136 0.127410 0.053 0.160 0.207 0.052 0.265 0.238420 0.066 0.230 0.318 0.064 0.418 0.374430 0.063 0.237 0.341 0.063 0.451 0.410440 0.059 0.232 0.338 0.061 0.447 0.417450 0.054 0.218 0.321 0.058 0.421 0.407460 0.052 0.213 0.311 0.058 0.403 0.409470 0.055 0.219 0.306 0.065 0.389 0.425480 0.062 0.233 0.299 0.078 0.368 0.450490 0.073 0.256 0.290 0.101 0.343 0.489500 0.084 0.281 0.275 0.131 0.313 0.531510 0.089 0.296 0.252 0.156 0.278 0.562520 0.085 0.296 0.224 0.165 0.244 0.571530 0.078 0.287 0.199 0.160 0.216 0.559540 0.072 0.279 0.179 0.150 0.198 0.533550 0.070 0.280 0.167 0.141 0.189 0.499560 0.073 0.289 0.161 0.134 0.189 0.457570 0.086 0.318 0.163 0.134 0.200 0.415580 0.109 0.364 0.168 0.136 0.221 0.366590 0.138 0.421 0.171 0.135 0.243 0.315600 0.159 0.470 0.161 0.123 0.250 0.261610 0.162 0.497 0.142 0.104 0.241 0.215620 0.156 0.505 0.124 0.088 0.225 0.184630 0.150 0.507 0.114 0.080 0.215 0.167640 0.154 0.515 0.114 0.080 0.218 0.167650 0.163 0.529 0.121 0.086 0.228 0.174660 0.173 0.541 0.128 0.092 0.238 0.182670 0.195 0.563 0.147 0.108 0.262 0.204680 0.245 0.605 0.194 0.149 0.316 0.256690 0.327 0.661 0.274 0.222 0.400 0.339700 0.428 0.717 0.374 0.322 0.495 0.438

Page 330: spectral-based color separation algorithm development - CiteSeer

310

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.035 0.117 0.070 0.066 0.043 0.039410 0.048 0.228 0.115 0.114 0.061 0.053420 0.056 0.360 0.156 0.159 0.077 0.063430 0.053 0.388 0.153 0.160 0.076 0.060440 0.050 0.382 0.144 0.151 0.075 0.058450 0.046 0.358 0.130 0.137 0.072 0.054460 0.046 0.338 0.122 0.127 0.075 0.055470 0.052 0.318 0.120 0.120 0.089 0.064480 0.065 0.287 0.120 0.111 0.118 0.085490 0.090 0.249 0.122 0.101 0.174 0.124500 0.127 0.208 0.121 0.087 0.265 0.186510 0.164 0.167 0.113 0.071 0.375 0.259520 0.188 0.134 0.101 0.056 0.467 0.318530 0.196 0.109 0.090 0.044 0.516 0.349540 0.199 0.094 0.084 0.038 0.527 0.363550 0.206 0.086 0.086 0.036 0.517 0.375560 0.224 0.083 0.098 0.038 0.495 0.393570 0.263 0.087 0.127 0.047 0.471 0.430580 0.328 0.096 0.185 0.063 0.440 0.486590 0.420 0.103 0.279 0.086 0.406 0.557600 0.516 0.100 0.390 0.102 0.365 0.625610 0.589 0.087 0.481 0.104 0.326 0.677620 0.633 0.074 0.535 0.098 0.297 0.708630 0.654 0.067 0.560 0.093 0.281 0.724640 0.670 0.068 0.580 0.096 0.282 0.736650 0.688 0.073 0.600 0.103 0.292 0.751660 0.702 0.079 0.616 0.111 0.302 0.762670 0.718 0.093 0.636 0.128 0.327 0.775680 0.741 0.132 0.670 0.172 0.381 0.792690 0.772 0.202 0.714 0.249 0.461 0.813700 0.805 0.300 0.759 0.349 0.551 0.836

Page 331: spectral-based color separation algorithm development - CiteSeer

311

Wavelength Blue Green Red YellowMagenta Cyan400 0.101 0.039 0.041 0.043 0.117 0.108410 0.197 0.056 0.060 0.059 0.218 0.207420 0.306 0.071 0.074 0.072 0.329 0.327430 0.326 0.071 0.068 0.070 0.338 0.361440 0.318 0.070 0.062 0.068 0.322 0.367450 0.293 0.068 0.054 0.065 0.291 0.358460 0.271 0.071 0.050 0.067 0.267 0.355470 0.246 0.082 0.049 0.080 0.246 0.357480 0.210 0.106 0.051 0.109 0.221 0.356490 0.169 0.148 0.052 0.165 0.192 0.353500 0.128 0.210 0.053 0.262 0.162 0.343510 0.093 0.275 0.049 0.386 0.132 0.320520 0.067 0.319 0.042 0.499 0.106 0.289530 0.051 0.329 0.036 0.570 0.089 0.256540 0.041 0.315 0.033 0.605 0.081 0.225550 0.037 0.292 0.035 0.623 0.082 0.197560 0.036 0.262 0.041 0.632 0.092 0.171570 0.039 0.233 0.060 0.649 0.120 0.149580 0.046 0.202 0.102 0.669 0.174 0.126590 0.052 0.167 0.181 0.695 0.261 0.102600 0.052 0.130 0.290 0.719 0.363 0.075610 0.044 0.098 0.389 0.740 0.444 0.052620 0.036 0.078 0.451 0.754 0.489 0.039630 0.032 0.068 0.480 0.761 0.509 0.033640 0.032 0.068 0.504 0.769 0.526 0.032650 0.035 0.072 0.527 0.780 0.545 0.035660 0.039 0.078 0.546 0.789 0.561 0.038670 0.048 0.092 0.568 0.800 0.582 0.047680 0.076 0.130 0.607 0.814 0.622 0.074690 0.131 0.200 0.662 0.831 0.675 0.130700 0.218 0.298 0.717 0.850 0.727 0.216

Page 332: spectral-based color separation algorithm development - CiteSeer

312

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.213 0.169 0.122 0.082 0.048 0.024410 0.437 0.332 0.227 0.142 0.074 0.033420 0.734 0.537 0.348 0.205 0.098 0.039430 0.819 0.588 0.372 0.212 0.097 0.036440 0.833 0.592 0.370 0.208 0.093 0.034450 0.805 0.569 0.353 0.196 0.086 0.031460 0.791 0.558 0.345 0.191 0.084 0.030470 0.789 0.560 0.349 0.195 0.087 0.031480 0.785 0.563 0.357 0.204 0.093 0.035490 0.790 0.575 0.371 0.217 0.102 0.040500 0.798 0.587 0.383 0.228 0.110 0.044510 0.804 0.590 0.385 0.228 0.110 0.044520 0.805 0.584 0.373 0.217 0.101 0.039530 0.801 0.570 0.356 0.200 0.090 0.033540 0.795 0.557 0.340 0.186 0.080 0.028550 0.791 0.550 0.331 0.178 0.075 0.025560 0.784 0.545 0.328 0.177 0.075 0.025570 0.783 0.551 0.337 0.185 0.080 0.028580 0.779 0.561 0.353 0.200 0.092 0.034590 0.780 0.572 0.369 0.215 0.103 0.040600 0.784 0.576 0.371 0.216 0.103 0.040610 0.789 0.570 0.358 0.203 0.093 0.034620 0.792 0.561 0.342 0.186 0.081 0.028630 0.793 0.554 0.331 0.176 0.074 0.024640 0.796 0.557 0.334 0.178 0.076 0.025650 0.802 0.568 0.345 0.187 0.081 0.028660 0.809 0.578 0.356 0.196 0.087 0.031670 0.819 0.599 0.381 0.219 0.103 0.039680 0.834 0.639 0.435 0.271 0.143 0.062690 0.848 0.689 0.511 0.354 0.215 0.113700 0.861 0.739 0.593 0.453 0.314 0.195

Page 333: spectral-based color separation algorithm development - CiteSeer

313

APPENDIX M : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLOR CHECKER USING

KODAK PROFESSIONAL 8670 PS THERMAL PRINTER

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.174 0.340 0.254 0.150 0.321 0.299410 0.180 0.399 0.348 0.163 0.439 0.410420 0.139 0.363 0.382 0.132 0.483 0.450430 0.092 0.295 0.373 0.091 0.478 0.443440 0.058 0.231 0.343 0.060 0.448 0.414450 0.040 0.189 0.311 0.043 0.413 0.388460 0.032 0.170 0.286 0.036 0.383 0.374470 0.036 0.180 0.279 0.043 0.364 0.393480 0.057 0.230 0.296 0.074 0.362 0.460490 0.085 0.286 0.304 0.125 0.349 0.534500 0.098 0.311 0.284 0.161 0.314 0.576510 0.093 0.307 0.251 0.170 0.273 0.583520 0.082 0.293 0.219 0.162 0.237 0.570530 0.074 0.280 0.193 0.151 0.212 0.543540 0.068 0.272 0.175 0.140 0.195 0.511550 0.067 0.274 0.164 0.133 0.188 0.481560 0.072 0.286 0.160 0.130 0.190 0.449570 0.087 0.319 0.167 0.134 0.206 0.417580 0.113 0.369 0.177 0.141 0.231 0.378590 0.141 0.424 0.180 0.143 0.252 0.335600 0.163 0.471 0.172 0.134 0.260 0.285610 0.174 0.505 0.155 0.118 0.254 0.237620 0.171 0.520 0.133 0.099 0.238 0.196630 0.159 0.519 0.112 0.081 0.216 0.162640 0.146 0.512 0.095 0.067 0.196 0.138650 0.134 0.505 0.083 0.057 0.181 0.121660 0.125 0.498 0.075 0.051 0.170 0.110670 0.121 0.494 0.070 0.047 0.164 0.104680 0.121 0.495 0.070 0.047 0.164 0.104690 0.125 0.500 0.074 0.050 0.169 0.108700 0.134 0.509 0.081 0.056 0.180 0.117

Page 334: spectral-based color separation algorithm development - CiteSeer

314

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.237 0.226 0.302 0.195 0.219 0.255410 0.215 0.327 0.331 0.242 0.222 0.234420 0.141 0.383 0.275 0.234 0.167 0.156430 0.079 0.401 0.202 0.198 0.108 0.089440 0.044 0.388 0.143 0.156 0.069 0.051450 0.028 0.361 0.107 0.124 0.049 0.033460 0.023 0.329 0.089 0.104 0.043 0.028470 0.029 0.299 0.090 0.097 0.056 0.036480 0.058 0.279 0.113 0.104 0.112 0.076490 0.112 0.248 0.133 0.104 0.223 0.156500 0.162 0.204 0.131 0.089 0.345 0.242510 0.185 0.161 0.115 0.069 0.432 0.298520 0.190 0.129 0.099 0.053 0.478 0.326530 0.191 0.108 0.089 0.043 0.495 0.340540 0.194 0.094 0.086 0.038 0.496 0.350550 0.202 0.086 0.088 0.036 0.490 0.364560 0.220 0.085 0.100 0.039 0.476 0.384570 0.261 0.092 0.131 0.049 0.463 0.423580 0.328 0.103 0.190 0.067 0.446 0.483590 0.412 0.109 0.272 0.089 0.424 0.553600 0.500 0.106 0.368 0.105 0.393 0.619610 0.581 0.095 0.463 0.112 0.357 0.678620 0.641 0.080 0.538 0.108 0.320 0.720630 0.678 0.065 0.583 0.098 0.287 0.744640 0.697 0.053 0.608 0.087 0.260 0.757650 0.710 0.045 0.623 0.077 0.240 0.766660 0.716 0.040 0.630 0.071 0.226 0.769670 0.718 0.037 0.634 0.068 0.219 0.771680 0.720 0.037 0.637 0.067 0.218 0.772690 0.720 0.039 0.640 0.071 0.223 0.771700 0.720 0.044 0.642 0.078 0.235 0.770

Page 335: spectral-based color separation algorithm development - CiteSeer

315

Wavelength Blue Green Red YellowMagenta Cyan400 0.175 0.151 0.229 0.271 0.362 0.186410 0.261 0.168 0.222 0.253 0.449 0.280420 0.314 0.140 0.159 0.172 0.439 0.342430 0.335 0.100 0.098 0.101 0.386 0.371440 0.326 0.068 0.059 0.059 0.324 0.371450 0.299 0.051 0.038 0.040 0.272 0.358460 0.265 0.044 0.030 0.035 0.236 0.341470 0.229 0.055 0.031 0.046 0.217 0.337480 0.201 0.103 0.044 0.099 0.210 0.360490 0.164 0.188 0.058 0.212 0.193 0.374500 0.123 0.268 0.060 0.346 0.161 0.358510 0.088 0.311 0.051 0.451 0.128 0.325520 0.065 0.322 0.042 0.517 0.104 0.286530 0.051 0.312 0.037 0.556 0.090 0.249540 0.042 0.293 0.035 0.580 0.084 0.216550 0.038 0.273 0.036 0.599 0.085 0.190560 0.038 0.252 0.043 0.613 0.096 0.169570 0.042 0.232 0.064 0.635 0.126 0.152580 0.050 0.209 0.106 0.664 0.181 0.133590 0.056 0.181 0.175 0.698 0.259 0.110600 0.055 0.147 0.266 0.728 0.346 0.083610 0.048 0.115 0.366 0.754 0.430 0.059620 0.039 0.088 0.452 0.770 0.493 0.041630 0.030 0.067 0.508 0.777 0.528 0.029640 0.023 0.053 0.540 0.779 0.544 0.021650 0.019 0.044 0.558 0.782 0.552 0.016660 0.016 0.038 0.567 0.782 0.555 0.013670 0.015 0.035 0.572 0.781 0.557 0.012680 0.015 0.035 0.576 0.781 0.560 0.012690 0.016 0.037 0.579 0.780 0.565 0.013700 0.018 0.042 0.581 0.781 0.570 0.015

Page 336: spectral-based color separation algorithm development - CiteSeer

316

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.559 0.443 0.345 0.253 0.164 0.094410 0.770 0.591 0.445 0.313 0.192 0.102420 0.859 0.632 0.456 0.304 0.171 0.082430 0.888 0.618 0.420 0.260 0.131 0.055440 0.886 0.581 0.370 0.211 0.095 0.034450 0.879 0.547 0.330 0.176 0.072 0.023460 0.874 0.528 0.308 0.157 0.061 0.018470 0.876 0.534 0.314 0.163 0.064 0.019480 0.881 0.570 0.357 0.201 0.089 0.031490 0.888 0.603 0.398 0.239 0.117 0.047500 0.891 0.610 0.407 0.248 0.124 0.052510 0.890 0.598 0.391 0.233 0.113 0.045520 0.888 0.580 0.368 0.212 0.098 0.037530 0.881 0.561 0.347 0.193 0.085 0.030540 0.874 0.547 0.331 0.180 0.077 0.026550 0.874 0.540 0.323 0.173 0.072 0.024560 0.870 0.540 0.324 0.174 0.073 0.025570 0.872 0.553 0.340 0.187 0.082 0.029580 0.873 0.571 0.362 0.208 0.096 0.036590 0.878 0.586 0.380 0.224 0.108 0.042600 0.881 0.591 0.385 0.227 0.110 0.043610 0.885 0.587 0.376 0.218 0.103 0.039620 0.886 0.572 0.357 0.200 0.091 0.032630 0.885 0.553 0.333 0.179 0.076 0.025640 0.885 0.535 0.311 0.159 0.064 0.019650 0.888 0.522 0.294 0.145 0.055 0.016660 0.890 0.511 0.281 0.135 0.049 0.013670 0.892 0.506 0.274 0.129 0.046 0.012680 0.893 0.506 0.274 0.129 0.046 0.012690 0.892 0.511 0.280 0.133 0.049 0.013700 0.891 0.521 0.292 0.143 0.054 0.015

Page 337: spectral-based color separation algorithm development - CiteSeer

317

APPENDIX N : THE REFLECTANCE SPECTRA OF THEPREDICTED GRETAG MACBETH COLOR CHECKER USING

DUPONT WATERPROOF® WITH CMYK PRIMARIES

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.025 0.076 0.085 0.025 0.112 0.102410 0.036 0.133 0.171 0.035 0.230 0.199420 0.043 0.191 0.257 0.041 0.353 0.301430 0.045 0.211 0.298 0.044 0.407 0.348440 0.049 0.220 0.323 0.048 0.433 0.379450 0.054 0.226 0.333 0.056 0.436 0.405460 0.061 0.230 0.328 0.067 0.419 0.424470 0.064 0.231 0.320 0.074 0.401 0.439480 0.067 0.233 0.306 0.084 0.376 0.456490 0.079 0.249 0.297 0.110 0.351 0.497500 0.100 0.282 0.295 0.156 0.331 0.558510 0.110 0.309 0.284 0.193 0.305 0.610520 0.101 0.313 0.253 0.197 0.268 0.620530 0.090 0.308 0.223 0.182 0.240 0.587540 0.086 0.309 0.202 0.165 0.224 0.532550 0.076 0.299 0.172 0.139 0.201 0.466560 0.059 0.275 0.134 0.107 0.166 0.392570 0.051 0.263 0.110 0.086 0.145 0.333580 0.070 0.302 0.114 0.088 0.161 0.295590 0.120 0.400 0.141 0.109 0.210 0.274600 0.157 0.478 0.154 0.119 0.243 0.258610 0.172 0.518 0.157 0.120 0.256 0.248620 0.179 0.536 0.160 0.121 0.263 0.247630 0.184 0.545 0.163 0.124 0.269 0.250640 0.190 0.551 0.170 0.129 0.276 0.256650 0.203 0.561 0.184 0.142 0.290 0.272660 0.220 0.571 0.202 0.158 0.308 0.291670 0.228 0.577 0.210 0.165 0.316 0.300680 0.224 0.577 0.206 0.161 0.313 0.296690 0.215 0.573 0.195 0.152 0.303 0.285700 0.202 0.567 0.181 0.139 0.289 0.269

Page 338: spectral-based color separation algorithm development - CiteSeer

318

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.017 0.088 0.054 0.046 0.031 0.030410 0.019 0.188 0.091 0.087 0.041 0.037420 0.019 0.286 0.123 0.121 0.047 0.042430 0.018 0.335 0.133 0.137 0.049 0.042440 0.019 0.363 0.137 0.146 0.053 0.045450 0.023 0.364 0.137 0.146 0.065 0.052460 0.027 0.342 0.134 0.138 0.085 0.065470 0.029 0.317 0.128 0.127 0.101 0.075480 0.031 0.283 0.120 0.112 0.126 0.089490 0.037 0.248 0.118 0.101 0.191 0.129500 0.045 0.220 0.125 0.096 0.313 0.201510 0.044 0.187 0.123 0.083 0.456 0.285520 0.031 0.149 0.108 0.063 0.546 0.341530 0.025 0.122 0.099 0.050 0.562 0.366540 0.028 0.110 0.104 0.049 0.537 0.383550 0.027 0.091 0.101 0.042 0.493 0.386560 0.020 0.065 0.087 0.030 0.436 0.373570 0.017 0.051 0.081 0.025 0.391 0.369580 0.058 0.060 0.134 0.040 0.368 0.423590 0.240 0.084 0.285 0.077 0.365 0.551600 0.464 0.096 0.430 0.100 0.360 0.655610 0.607 0.096 0.513 0.107 0.355 0.713620 0.672 0.098 0.550 0.111 0.356 0.738630 0.696 0.101 0.565 0.114 0.359 0.747640 0.708 0.106 0.574 0.119 0.365 0.751650 0.716 0.119 0.584 0.131 0.379 0.756660 0.721 0.136 0.593 0.147 0.397 0.759670 0.726 0.143 0.599 0.155 0.406 0.763680 0.731 0.139 0.600 0.151 0.402 0.766690 0.734 0.129 0.598 0.141 0.393 0.768700 0.736 0.116 0.595 0.128 0.380 0.769

Page 339: spectral-based color separation algorithm development - CiteSeer

319

Wavelength Blue Green Red YellowMagenta Cyan400 0.068 0.027 0.029 0.034 0.099 0.083410 0.144 0.038 0.042 0.042 0.190 0.173420 0.215 0.043 0.051 0.048 0.280 0.264430 0.252 0.046 0.053 0.048 0.313 0.312440 0.272 0.051 0.055 0.052 0.321 0.348450 0.268 0.062 0.057 0.062 0.306 0.369460 0.244 0.079 0.058 0.079 0.279 0.374470 0.217 0.093 0.057 0.093 0.251 0.372480 0.183 0.113 0.054 0.115 0.218 0.366490 0.151 0.165 0.056 0.173 0.186 0.365500 0.127 0.258 0.061 0.285 0.165 0.370510 0.100 0.351 0.058 0.425 0.140 0.362520 0.071 0.387 0.045 0.535 0.111 0.327530 0.055 0.367 0.038 0.588 0.098 0.282540 0.050 0.325 0.042 0.609 0.101 0.239550 0.041 0.269 0.040 0.613 0.098 0.188560 0.027 0.206 0.031 0.603 0.082 0.134570 0.022 0.160 0.028 0.601 0.076 0.097580 0.030 0.140 0.066 0.629 0.127 0.082590 0.047 0.137 0.197 0.692 0.267 0.081600 0.052 0.131 0.338 0.741 0.397 0.076610 0.049 0.126 0.421 0.767 0.470 0.070620 0.049 0.126 0.458 0.779 0.502 0.070630 0.050 0.128 0.474 0.784 0.517 0.072640 0.054 0.134 0.483 0.786 0.525 0.077650 0.064 0.148 0.493 0.790 0.536 0.089660 0.078 0.166 0.503 0.794 0.547 0.104670 0.085 0.174 0.509 0.797 0.554 0.112680 0.081 0.170 0.510 0.800 0.554 0.107690 0.072 0.159 0.508 0.801 0.550 0.098700 0.061 0.145 0.504 0.801 0.545 0.085

Page 340: spectral-based color separation algorithm development - CiteSeer

320

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.235 0.157 0.102 0.061 0.032 0.015410 0.471 0.309 0.195 0.112 0.053 0.021420 0.756 0.483 0.292 0.159 0.068 0.023430 0.858 0.549 0.332 0.179 0.075 0.024440 0.879 0.573 0.352 0.193 0.082 0.027450 0.873 0.580 0.362 0.203 0.089 0.031460 0.860 0.577 0.365 0.208 0.095 0.036470 0.858 0.576 0.365 0.209 0.096 0.038480 0.855 0.573 0.363 0.208 0.097 0.039490 0.853 0.580 0.374 0.220 0.107 0.046500 0.851 0.596 0.398 0.245 0.126 0.056510 0.850 0.608 0.414 0.259 0.133 0.056520 0.850 0.605 0.406 0.247 0.119 0.043530 0.849 0.591 0.386 0.226 0.102 0.033540 0.848 0.578 0.369 0.211 0.094 0.032550 0.850 0.558 0.341 0.186 0.079 0.026560 0.848 0.526 0.301 0.151 0.058 0.018570 0.853 0.505 0.274 0.129 0.047 0.016580 0.854 0.513 0.286 0.141 0.057 0.023590 0.856 0.549 0.332 0.183 0.085 0.037600 0.857 0.573 0.364 0.209 0.099 0.039610 0.859 0.585 0.377 0.218 0.102 0.035620 0.862 0.592 0.385 0.224 0.104 0.034630 0.863 0.596 0.390 0.229 0.106 0.035640 0.863 0.601 0.397 0.236 0.111 0.037650 0.866 0.611 0.411 0.250 0.124 0.046660 0.868 0.622 0.427 0.268 0.141 0.058670 0.869 0.628 0.435 0.277 0.148 0.064680 0.871 0.627 0.432 0.273 0.144 0.060690 0.873 0.622 0.424 0.263 0.134 0.052700 0.873 0.615 0.412 0.249 0.121 0.042

Page 341: spectral-based color separation algorithm development - CiteSeer

321

APPENDIX O : THE ACCURACY OF THE GRETAGSPECTROLINO SPECTROPHOTOMETER

The accuracy of spectral reproduction is sensitive to the accuracy of measuringinstruments. Since a Gretag Spectrolino with an automatic station was used to measurethe 6,250 printed samples, an evaluation of the accuracy of this spectrophotometer isrequired. It is hypothesized that a Gretag SPM 60 is highly accurate, hence, designated asa standard spectrophotometer. Accuracy of the Gretag Spectrolino was evaluated by thecolorimetric and spectral accuracy of the reflectance spectra of the Gretag Macbeth ColorChecker measured by the two instruments. The colorimectric and spectral accuracy isshown below.

∆E*94 Metamerism Index

Mean 0.44 0.04Stdev 0.17 0.03Max 0.72 0.14Min 0.12 0.00RMS 0.004

The following figure is the histogram of the colorimetric error.

0 .1 0 .2 0 .3 0 .4 0 .5 0 .6 0 .7 0 .80

1

2

3

4

5

6

D e lta E 9 4

Fre

qu

en

cy

According to this accuracy comparison, the agreement between the two instruments werevery high revealed by the very low ∆E*

94, metamerism index, and the RMS error. Hence,

Page 342: spectral-based color separation algorithm development - CiteSeer

322

this ensures the spectral reproduction quality and prediction accuracy of the proposed six-color separation mechanism such that the resultant spectral reflectance spectra of theactual reproduction is consistent with the theoretical prediction.

Spectral reflectance factors of the Gretag Macbeth Color Checker measured by theGretag SPM 60 spectrophotometer

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.060 0.206 0.260 0.053 0.301 0.254410 0.061 0.231 0.319 0.054 0.400 0.314420 0.060 0.230 0.325 0.055 0.425 0.331430 0.060 0.228 0.332 0.057 0.434 0.346440 0.060 0.228 0.343 0.060 0.441 0.362450 0.060 0.229 0.349 0.062 0.444 0.386460 0.060 0.230 0.347 0.063 0.441 0.421470 0.060 0.233 0.335 0.064 0.424 0.469480 0.061 0.244 0.322 0.065 0.401 0.514490 0.061 0.268 0.309 0.068 0.363 0.553500 0.063 0.295 0.292 0.074 0.321 0.579510 0.068 0.306 0.266 0.099 0.289 0.590520 0.074 0.302 0.239 0.148 0.259 0.584530 0.077 0.297 0.221 0.184 0.230 0.564540 0.078 0.296 0.207 0.188 0.217 0.537550 0.080 0.291 0.183 0.170 0.214 0.498560 0.086 0.289 0.158 0.144 0.205 0.453570 0.100 0.297 0.144 0.125 0.198 0.406580 0.119 0.363 0.156 0.115 0.199 0.358590 0.138 0.455 0.166 0.110 0.208 0.307600 0.148 0.495 0.159 0.105 0.225 0.259610 0.151 0.503 0.150 0.101 0.238 0.228620 0.155 0.513 0.146 0.100 0.244 0.212630 0.163 0.530 0.144 0.103 0.251 0.202640 0.174 0.555 0.144 0.108 0.275 0.196650 0.185 0.578 0.148 0.112 0.309 0.192660 0.193 0.593 0.155 0.115 0.343 0.192670 0.195 0.590 0.158 0.113 0.360 0.200680 0.189 0.572 0.153 0.109 0.357 0.212690 0.183 0.555 0.146 0.105 0.347 0.224700 0.183 0.552 0.136 0.104 0.346 0.232

Page 343: spectral-based color separation algorithm development - CiteSeer

323

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.048 0.246 0.136 0.164 0.058 0.068410 0.048 0.309 0.139 0.201 0.059 0.068420 0.048 0.340 0.137 0.216 0.059 0.067430 0.049 0.365 0.136 0.204 0.061 0.068440 0.050 0.391 0.135 0.179 0.064 0.068450 0.051 0.403 0.134 0.150 0.069 0.069460 0.051 0.393 0.132 0.122 0.079 0.071470 0.052 0.361 0.127 0.098 0.095 0.072480 0.053 0.312 0.121 0.081 0.123 0.075490 0.056 0.255 0.116 0.068 0.167 0.079500 0.061 0.204 0.111 0.060 0.245 0.089510 0.084 0.165 0.105 0.055 0.371 0.128520 0.130 0.135 0.100 0.052 0.493 0.223530 0.162 0.114 0.097 0.049 0.553 0.323540 0.176 0.102 0.098 0.048 0.570 0.379550 0.195 0.094 0.098 0.049 0.564 0.415560 0.240 0.087 0.100 0.050 0.549 0.464570 0.327 0.083 0.107 0.051 0.527 0.532580 0.438 0.081 0.151 0.051 0.493 0.586590 0.542 0.080 0.276 0.051 0.445 0.615600 0.594 0.080 0.423 0.056 0.388 0.622610 0.599 0.079 0.516 0.069 0.347 0.620620 0.595 0.079 0.557 0.093 0.326 0.630630 0.588 0.079 0.567 0.120 0.315 0.649640 0.582 0.082 0.568 0.144 0.308 0.677650 0.576 0.087 0.567 0.167 0.304 0.701660 0.568 0.094 0.570 0.193 0.309 0.714670 0.559 0.104 0.583 0.225 0.325 0.705680 0.562 0.118 0.603 0.263 0.349 0.691690 0.571 0.139 0.623 0.312 0.373 0.683700 0.586 0.167 0.637 0.360 0.393 0.690

Page 344: spectral-based color separation algorithm development - CiteSeer

324

Wavelength Blue Green Red YellowMagenta Cyan400 0.115 0.052 0.049 0.056 0.291 0.180410 0.156 0.052 0.048 0.056 0.363 0.221420 0.193 0.053 0.048 0.057 0.372 0.236430 0.232 0.055 0.048 0.058 0.362 0.260440 0.283 0.057 0.048 0.061 0.340 0.293450 0.349 0.061 0.047 0.065 0.311 0.329460 0.359 0.069 0.047 0.074 0.281 0.371470 0.312 0.085 0.046 0.088 0.250 0.422480 0.235 0.111 0.045 0.111 0.219 0.448490 0.160 0.153 0.044 0.148 0.188 0.445500 0.106 0.222 0.044 0.210 0.165 0.417510 0.075 0.314 0.043 0.318 0.148 0.374520 0.058 0.358 0.043 0.466 0.125 0.321530 0.050 0.343 0.043 0.573 0.104 0.268540 0.046 0.322 0.044 0.627 0.098 0.218550 0.043 0.297 0.045 0.656 0.103 0.173560 0.040 0.257 0.048 0.677 0.103 0.134570 0.040 0.221 0.053 0.698 0.105 0.108580 0.039 0.192 0.065 0.714 0.132 0.094590 0.039 0.162 0.099 0.725 0.197 0.084600 0.039 0.129 0.180 0.730 0.289 0.077610 0.039 0.104 0.315 0.734 0.394 0.072620 0.039 0.089 0.474 0.738 0.509 0.070630 0.039 0.081 0.595 0.738 0.611 0.069640 0.040 0.076 0.665 0.741 0.686 0.069650 0.040 0.073 0.701 0.744 0.736 0.070660 0.041 0.070 0.721 0.747 0.768 0.072670 0.041 0.069 0.733 0.750 0.786 0.073680 0.042 0.070 0.741 0.757 0.798 0.073690 0.043 0.072 0.749 0.763 0.806 0.072700 0.044 0.075 0.755 0.769 0.811 0.069

Page 345: spectral-based color separation algorithm development - CiteSeer

325

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.371 0.332 0.265 0.167 0.079 0.033410 0.657 0.509 0.335 0.184 0.082 0.033420 0.823 0.558 0.347 0.187 0.083 0.032430 0.860 0.566 0.349 0.191 0.085 0.032440 0.870 0.571 0.353 0.195 0.087 0.033450 0.880 0.575 0.354 0.197 0.087 0.032460 0.888 0.577 0.353 0.197 0.087 0.032470 0.889 0.573 0.350 0.195 0.086 0.032480 0.890 0.571 0.348 0.194 0.086 0.032490 0.894 0.572 0.347 0.194 0.085 0.032500 0.893 0.573 0.346 0.194 0.086 0.032510 0.894 0.574 0.346 0.195 0.086 0.032520 0.894 0.575 0.346 0.196 0.086 0.032530 0.891 0.575 0.346 0.197 0.087 0.032540 0.891 0.576 0.346 0.197 0.087 0.032550 0.889 0.575 0.345 0.196 0.086 0.032560 0.884 0.574 0.345 0.196 0.086 0.032570 0.882 0.575 0.348 0.196 0.086 0.032580 0.882 0.574 0.350 0.195 0.085 0.032590 0.884 0.574 0.351 0.195 0.085 0.032600 0.884 0.572 0.350 0.194 0.084 0.032610 0.883 0.570 0.349 0.192 0.084 0.032620 0.887 0.570 0.347 0.191 0.083 0.032630 0.886 0.566 0.344 0.189 0.082 0.032640 0.888 0.565 0.342 0.187 0.082 0.032650 0.894 0.564 0.340 0.186 0.081 0.032660 0.897 0.562 0.338 0.184 0.080 0.032670 0.897 0.560 0.336 0.183 0.080 0.032680 0.899 0.559 0.335 0.182 0.079 0.033690 0.899 0.557 0.332 0.180 0.079 0.033700 0.897 0.555 0.330 0.178 0.078 0.033

Page 346: spectral-based color separation algorithm development - CiteSeer

326

Spectral reflectance factors of the Gretag Macbeth Color Checker measured by theGretag Spectrolino spectrophotometer

WavelengthDark skin Light skin Blue sky Foliage Blue flower Blue green

400 0.059 0.205 0.254 0.051 0.297 0.249410 0.060 0.231 0.313 0.053 0.392 0.309420 0.059 0.232 0.322 0.054 0.421 0.328430 0.059 0.230 0.329 0.056 0.433 0.343440 0.059 0.229 0.338 0.058 0.438 0.360450 0.059 0.229 0.345 0.060 0.441 0.384460 0.059 0.230 0.341 0.061 0.435 0.420470 0.059 0.234 0.331 0.062 0.420 0.466480 0.059 0.246 0.317 0.063 0.395 0.510490 0.059 0.271 0.304 0.066 0.358 0.549500 0.061 0.296 0.286 0.074 0.317 0.575510 0.067 0.306 0.261 0.100 0.285 0.585520 0.073 0.303 0.235 0.145 0.255 0.580530 0.075 0.299 0.218 0.179 0.228 0.561540 0.076 0.297 0.202 0.182 0.215 0.532550 0.079 0.294 0.180 0.165 0.212 0.495560 0.086 0.291 0.156 0.140 0.203 0.449570 0.100 0.307 0.145 0.122 0.197 0.404580 0.119 0.375 0.155 0.112 0.199 0.354590 0.137 0.461 0.163 0.107 0.209 0.304600 0.147 0.500 0.157 0.102 0.225 0.258610 0.151 0.511 0.149 0.098 0.238 0.228620 0.156 0.522 0.145 0.098 0.244 0.212630 0.164 0.542 0.143 0.101 0.254 0.203640 0.175 0.566 0.144 0.105 0.278 0.197650 0.187 0.590 0.148 0.109 0.312 0.192660 0.195 0.604 0.154 0.112 0.344 0.194670 0.196 0.602 0.156 0.110 0.360 0.202680 0.191 0.586 0.152 0.106 0.359 0.214690 0.187 0.572 0.145 0.103 0.352 0.225700 0.188 0.571 0.136 0.103 0.352 0.234

Page 347: spectral-based color separation algorithm development - CiteSeer

327

Wavelength Orange Purplishblue

Moderatered

Purple Yellowgreen

Orangeyellow

400 0.047 0.242 0.131 0.161 0.058 0.066410 0.047 0.306 0.137 0.199 0.058 0.066420 0.047 0.338 0.135 0.213 0.059 0.065430 0.047 0.364 0.134 0.202 0.060 0.065440 0.048 0.387 0.133 0.178 0.063 0.065450 0.048 0.398 0.132 0.149 0.069 0.067460 0.049 0.387 0.129 0.120 0.078 0.068470 0.050 0.356 0.124 0.096 0.095 0.069480 0.051 0.307 0.119 0.080 0.123 0.072490 0.053 0.251 0.113 0.067 0.169 0.077500 0.060 0.201 0.108 0.058 0.249 0.088510 0.085 0.163 0.103 0.053 0.369 0.130520 0.128 0.134 0.098 0.050 0.485 0.221530 0.159 0.113 0.096 0.048 0.546 0.316540 0.175 0.101 0.096 0.047 0.563 0.372550 0.197 0.093 0.096 0.048 0.559 0.411560 0.246 0.087 0.098 0.049 0.543 0.461570 0.335 0.083 0.109 0.050 0.522 0.527580 0.447 0.081 0.162 0.050 0.487 0.579590 0.547 0.080 0.285 0.050 0.438 0.608600 0.597 0.080 0.425 0.056 0.385 0.616610 0.605 0.079 0.518 0.070 0.346 0.618620 0.601 0.079 0.558 0.095 0.325 0.628630 0.595 0.080 0.571 0.122 0.315 0.649640 0.589 0.083 0.572 0.146 0.308 0.674650 0.583 0.088 0.571 0.169 0.304 0.697660 0.576 0.095 0.576 0.196 0.309 0.708670 0.571 0.106 0.591 0.229 0.326 0.702680 0.574 0.120 0.612 0.269 0.350 0.690690 0.586 0.141 0.633 0.316 0.374 0.684700 0.603 0.169 0.648 0.365 0.393 0.690

Page 348: spectral-based color separation algorithm development - CiteSeer

328

Wavelength Blue Green Red YellowMagenta Cyan400 0.113 0.051 0.048 0.056 0.281 0.177410 0.152 0.051 0.048 0.056 0.353 0.219420 0.189 0.052 0.047 0.056 0.364 0.238430 0.228 0.053 0.046 0.057 0.357 0.262440 0.279 0.056 0.046 0.060 0.335 0.293450 0.336 0.060 0.046 0.065 0.307 0.331460 0.345 0.068 0.045 0.073 0.275 0.374470 0.301 0.084 0.044 0.087 0.245 0.422480 0.226 0.111 0.043 0.111 0.214 0.446490 0.154 0.154 0.042 0.149 0.184 0.444500 0.102 0.223 0.042 0.213 0.161 0.416510 0.072 0.307 0.041 0.322 0.143 0.372520 0.056 0.349 0.041 0.463 0.121 0.321530 0.048 0.338 0.041 0.568 0.101 0.267540 0.044 0.317 0.042 0.623 0.096 0.218550 0.041 0.291 0.044 0.655 0.101 0.172560 0.039 0.253 0.046 0.677 0.101 0.134570 0.038 0.218 0.052 0.700 0.106 0.109580 0.037 0.188 0.066 0.714 0.136 0.094590 0.037 0.158 0.104 0.725 0.202 0.084600 0.037 0.126 0.189 0.732 0.293 0.077610 0.037 0.102 0.327 0.737 0.402 0.072620 0.038 0.088 0.482 0.740 0.516 0.070630 0.038 0.080 0.600 0.742 0.616 0.070640 0.038 0.075 0.669 0.744 0.688 0.070650 0.039 0.072 0.706 0.747 0.737 0.071660 0.040 0.069 0.726 0.750 0.769 0.072670 0.040 0.068 0.739 0.755 0.789 0.074680 0.041 0.069 0.749 0.762 0.802 0.074690 0.041 0.071 0.758 0.770 0.811 0.073700 0.043 0.074 0.765 0.778 0.819 0.071

Page 349: spectral-based color separation algorithm development - CiteSeer

329

Wavelength White Neutral 8 Neutral 6.5 Neutral 5 Neutral 3.5Black400 0.374 0.329 0.256 0.159 0.076 0.032410 0.634 0.489 0.323 0.179 0.081 0.032420 0.803 0.544 0.338 0.184 0.082 0.031430 0.856 0.558 0.343 0.188 0.084 0.031440 0.869 0.563 0.345 0.192 0.085 0.031450 0.878 0.567 0.347 0.194 0.086 0.031460 0.883 0.567 0.345 0.194 0.085 0.031470 0.887 0.566 0.343 0.192 0.085 0.031480 0.888 0.564 0.341 0.191 0.084 0.031490 0.892 0.565 0.341 0.191 0.084 0.031500 0.893 0.566 0.340 0.192 0.084 0.031510 0.894 0.567 0.340 0.193 0.085 0.030520 0.896 0.570 0.341 0.194 0.085 0.030530 0.895 0.571 0.341 0.195 0.085 0.030540 0.895 0.571 0.341 0.195 0.085 0.030550 0.895 0.573 0.342 0.195 0.085 0.030560 0.890 0.572 0.342 0.195 0.085 0.030570 0.891 0.574 0.346 0.196 0.085 0.030580 0.889 0.573 0.348 0.195 0.085 0.030590 0.891 0.573 0.349 0.194 0.084 0.030600 0.892 0.572 0.348 0.193 0.084 0.031610 0.893 0.572 0.348 0.192 0.083 0.031620 0.895 0.571 0.346 0.191 0.082 0.031630 0.897 0.569 0.344 0.189 0.082 0.031640 0.898 0.567 0.342 0.188 0.081 0.031650 0.903 0.566 0.340 0.186 0.081 0.031660 0.907 0.564 0.338 0.185 0.080 0.031670 0.909 0.564 0.337 0.184 0.079 0.031680 0.911 0.563 0.336 0.183 0.079 0.031690 0.912 0.562 0.334 0.182 0.078 0.032700 0.913 0.562 0.332 0.180 0.078 0.032