spitschan / SilentSubstitutionToolbox

Toolbox to simulate colorimetric observers for evaluation of photoreceptor isolation
Other
7 stars 5 forks source link

SSTReceptorQuestions #9

Closed DavidBrainard closed 7 years ago

DavidBrainard commented 7 years ago

Does SSTReceptor call through the underlying SST routines, so that fixes we make there propagate through, or is it de novo code?

And, is the Asano code implemented in SST, or do you just reach direction back into PTB when you want to do splatter calcs with that model? (It did not look to me like GetHumanPhotoreceptorSS knows about the Asano model, although it could since we could pass the relevant parameters on through to the underlying PTB routine.

spitschan commented 7 years ago

The SSTReceptor object is currently under development. It is stand-alone and object-oriented to derive spectral sensitivities. At this point, the spectral sensitivities supported are the CIE2006 LMS cone fundamentals and the Asano et al. 8-parameter extension. I am planning to replicate the functionality of GetHumanPhotoreceptorSS, i.e. include rods, melanopsin, and the penumbral LMS fundamentals as soon as possible.

The Asano code is implemented in the SSTReceptor object, and the most recent splatter calculations (i.e. the resampling approach) are done with SSTReceptor. We have written a test program that checks the Asano model against our PTB implementation, which lives in the private repository https://github.com/spitschan/LightAndReceptorCalculations/blob/master/xConeFundamentals/AsanoConeFundamentalsTest.m (private b/c it contains the Asano code).

DavidBrainard commented 7 years ago

OK, this seems like a good plan. I see that SSTReceptorHuman calls through our PTB code, which is the right way to do it. When this is all working, we might consider having GetHumanPhotoreceptorSS call through SSTReceptorHuman when possible, just to keep everything consistent.

spitschan commented 7 years ago

This is a great idea. Would be worth making sure that the two methods produce the same results. Will work on this in the near future. Opening a separate issue for this cross-check.