CS681 Computational Colorimetry -...
Transcript of CS681 Computational Colorimetry -...
9/19/17
1
MinH.Kim(KAIST) CS681:ComputationalColorimetry
CS681ComputationalColorimetry
MinH.KimKAISTSchoolofComputing
MinH.Kim(KAIST) CS681:ComputationalColorimetry
COLORTRANSFORMATION
Acknowledgements:someofslidesarecourtesyofProf.LindsayMcDonaldandPhilGreenatLCC,Prof.RoyBernatRIT,andSteveMarschner atCornell.
9/19/17
2
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproduction• Imaginewehaveaspectrums;wanttomatchonRGBdisplay
• Practically,wecannotachieveaphysicallyidenticalspectrumbecausetheyaredifferentmedia
• Butcouldfindaspectrumsa thatthedisplaycanproduce,whichisametamerofs
ssa
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• Wehaveaspectrums, wewanttomatchonanRGBdisplay– Anyspectrumthatprojectstothesamepointinthevisualcolorspaceisagoodreproduction
• Todoso,wewanttofindaspectrumthatthedisplaycanproducethatmatchess– i.e.,wewanttodisplayametamerofs onthescreen
9/19/17
3
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• Wewanttocomputesa thecombinationofR,G,B
• whichwillprojecttothesamevisualresponseass
• sa willbeametamerofs
XYZ
Spanofeye’sspectralresponsefunctions
Spanofdisplay’sprimaries
Adaptedfro
mSteveM
arschn
er
Visualresponsetosandsa
Spectrums
Spectrumsa C
V
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• Theprojectionontothethreeresponsefunctionscanbewritteninamatrixform:
• or,
XYZ
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥= rX rY
rZ
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥
s
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥.
SpectralresponsivityofXYZ
V = MXYZs. V ∈!3, MXYZ ∈!
3×λ , s∈!λ( )
9/19/17
4
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• ThespectrumthatisproducedbythedisplayforthecolorsignalsR,G,Bis:
• Againthediscreteformcanbewrittenasamatrix:
• or,
Sa (λ) = Rsr (λ)+Gsg (λ)+ Bsb (λ).
sa
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥=
sR sG sB
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥
RGB
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥.
sa = MRGBC.SpectraofRGBphosphors
sa ∈!
λ , MRGB ∈!λ×3, s∈!3( )
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• Whatcolordoweseewhenwelookatthedisplay?
• FeedC(R,G,B) todisplay• Displayproducessa• Eyeslookatsa andproduceV
V = MXYZMRGBC.
XYZ
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥=
rX ⋅ sR rX ⋅ sG rX ⋅ sBrY ⋅ sR rY ⋅ sG rY ⋅ sBrZ ⋅ sR rZ ⋅ sG rZ ⋅ sB
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥
RGB
⎡
⎣
⎢⎢⎢
⎤
⎦
⎥⎥⎥.
XYZ
saC
V
MXYZ ∈!
3×λ , MRGB ∈!λ×3( )
9/19/17
5
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
• Goalofreproduction:visualresponsetos andsa isthesame:
• Substitutingintheexpressionforsa ,
MXYZ s = MXYZ sa .
MXYZ s = MXYZMRGBC.
C = (MXYZMRGB )−1MXYZ s.
Colorreproductionmodelfordisplay XYZ sa≈s
s
saC
V
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorReproductionasLinearAlgebra
XYZ
Spanofeye’sspectralresponsefunctions
Spanofdisplay’sprimaries
Visualresponsetosandsa
Spectrums
Spectrumsa C
V
9/19/17
6
MinH.Kim(KAIST) CS681:ComputationalColorimetry
Wherearethecolortransforms?
• Nowadays,ineverydigitalimagingdevices:– TV,digitalcameras,camcorders,inkjetprinters,laserprinters,LCDdisplays,etc…
• Otherwise…
≠
MinH.Kim(KAIST) CS681:ComputationalColorimetry
COLORMANAGEMENTSYSTEM
12
9/19/17
7
MinH.Kim(KAIST) CS681:ComputationalColorimetry
WhatisICCprofile?• InternationalColorConsortium(foundedin1993)
• TheICCspecificationallowsformatchingofcolorwhenthecolorsaremovedbetweenapplicationsandoperatingsystems,orfromonedevicetotheotherone.
• TheICCdefinestheformat,butnotdefinealgorithmsorprocessingdetails.
MinH.Kim(KAIST) CS681:ComputationalColorimetry
TheneedforColorManagement
• Imagingworkflowsinvolvemultiplesamplingandrenderingsystems.
• Therenderingsystemmaynotbeknownatthetimeofsampling.
9/19/17
8
MinH.Kim(KAIST) CS681:ComputationalColorimetry
TheneedforColorManagement
• Inatraditionalreproductionworkflow,eachpairofdevicesrequiresaseparatetransformationinordertoensurethatthedesiredcolorcanbereproduced.
MinH.Kim(KAIST) CS681:ComputationalColorimetry
TheneedforColorManagement
• Incolormanagement,foreachdevicethereisatransformationbetweendevicecodevaluestoreferencecolorspace.
9/19/17
9
MinH.Kim(KAIST) CS681:ComputationalColorimetry
Keyelementsofacolormanagementsystem• Profiles– Definecharacterizationmodelforagivenmedium–Mayincludeotherelementsofimagecolorreproductiontransform,suchasgamutmappingandchromaticadaptation
– Profilecreatorsarerequired
• CIEcolorimetryspecification– Providesdevice-independentsideofprofiles
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorManagementFramework
• TheICCcolormanagementframeworkincludes:
– Profiles– Acolormatchingmodule(CMM)
– Theapplicationthatinitiatesthetransformandcallstheprofiles;anoperatingsystemmodulethatcanstoreandfetchtheprofiles.
3rd partyCMM
3rd partyCMM
Application
Graphicslibrary
Imaginglibrary
DefaultCMM
Colormanagementframeworkinterface
Profiles
9/19/17
10
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ICCcolorprocessingmodels
• ProfileConnectionSpace(PCS),e.g.CIEXYZ,CIELCH• Thecolorprocessingmodelforamatrix-shaperprofiles• Matrix-shaperprofilesarefasttoimplement,butareonly
validwherethereisnomixingbetweenchannels• Thismakesthemacceptablefor:• CRTdisplays,colorspaceprofiles(occasionally)scanners
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorTarget(Input)
• Cameraandscanner
!
9/19/17
11
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ICCcolorprocessingmodels
• TheprocessingmodelforaCLUT• Acolorlookuptableisthefastestwayofimplementingmorecomplextransformations
• CMYprinter
MinH.Kim(KAIST) CS681:ComputationalColorimetry
ColorTarget(Output)• CMYKPrinters
9/19/17
12
MinH.Kim(KAIST) CS681:ComputationalColorimetry
IssuesinColorManagement• Wheretoputthesmarts– theprofileortheCMM?• Gamutmapping• Colorappearance• Multispectralimaging• Controlprocedures• Needtosimplifyandmakemoreconsistenttheprofilecreationandcolortransformationworkflows