CFA Strength and Color Discrimination

Started Oct 17, 2017 | Discussions thread
Flat view
Jack Hogan Veteran Member • Posts: 6,599
CFA Strength and Color Discrimination

I have often wondered what people mean when they say that CFA strength has weakened in recent times, resulting in poorer color discrimination than in the old days.

How are 'strength' and 'discrimination' defined? Recently there was a suggestion that higher strength could be represented by narrower Spectral Sensitivity Functions in the CFA and that a ballpark proxy for discrimination could be provided by SMI, the Sensitivity Metamerism Index (just another way of showing the average deltaE off a number of color patches).

Below I show some preliminary findings* based on a D50 illuminant, a Colorchecker 24 target and simulated gaussian CFA SSFs of varying standard deviation. In a nutshell, absent any mistakes on my part* it appears that with my simulated setup SMI peaks when the standard deviation allows a fair amount of overlap - but not too much. This makes intuitive sense to me.

Below are the resulting dE values and CFA SSFs for standard deviations of 10, 20, 40, and 60 nm. Peak SMI with my setup occurred at a standard deviation of 39nm.

Standard Deviation of 10nm --> SMI 53.7

Standard Deviation of 20nm --> SMI 66.1

Standard Deviation of 40nm --> SMI 86.3

Standard Deviation of 60nm --> SMI 66.4

Here is the matrix from white balanced 'raw' data to XYZ for the highest SMI, at a standard deviation of 39nm:

Correlated Color Temperature is 4919K

In case anyone is wondering, below is the CFA obtained by averaging a number of Nikon camera SSFs, taken from RIT *.

Happy to discuss these findings and/or try different combinations should anyone be interested. And especially interested in obtaining feedback on the procedure I followed below.


*The low SMI obtained from the Nikon average CFA is somewhat surprising to me, especially given that I measured my own camera, a Nikon D610, and got an SMI of 85 (see the very bottom here ). Makes me wonder whether I made any procedural mistakes, please check it below:

1) D50 illuminant and CC24 reflectivity generated by matlab plug-in Optprop in energy units
2) multiply together illuminant and reflectivity for each CC24 patch
3) multiply the results of 2) by CIE 2006 2 degree LMS color matching functions to get XYZ values for each CC24 patch
4) convert results in 3) to Lab, these will be the reference values for the patches

5) multiply the result of 2) above by wavelength in order to convert energy to photons
6) generate gaussian CFA SSFs centered on 470, 530 and 590 nm with the desired standard deviation
7) multiply the result of 5) above by CFA SSFs to get 'raw' RGB values
8) white balance raw data based on patch D4
9) find the matrix that minimizes deltaE to reference Lab values in 4)
10) calculate SMI = 100-5.5*average deltaE of color patches in CC24

Nikon D50
If you believe there are incorrect tags, please send us this post using our feedback form.
Flat view
Post (hide subjects) Posted by
Keyboard shortcuts:
FForum PPrevious NNext WNext unread UUpvote SSubscribe RReply QQuote BBookmark MMy threads
Color scheme? Blue / Yellow