tomophantom.supp.speckle_routines#

tomophantom.supp.speckle_routines.model_speckles(asicshape, specklesize)[source]#

models a speckle pattern with a given speckle size (integer) based on random phasors (see JC Goodman - Speckle Phenomena in Optics - Appendix G)

tomophantom.supp.speckle_routines.model_speckles_modes(asicshape, specklesize, modes)[source]#

models a speckle pattern with a given speckle size (integer) and contrast (1/modes)

tomophantom.supp.speckle_routines.sample2ddist(asicshape, kbar, dist)[source]#

samples photons from a 2D distribution

tomophantom.supp.speckle_routines.simulate_charge_sharing(asicshape, modes, specklesize, kbar, sigma=1)[source]#

returns a 2D speckle pattern with given speckle size, contrast (1/modes) and photon density kbar (photons/pixel) including charge sharing simulated with a gaussian at each photon position with with sigma

tomophantom.supp.speckle_routines.simulate_shot_noise(asicshape, kbar)[source]#

returns a 2d shot noise pattern with given dimensions and photon density kbar (photons/pixel)

tomophantom.supp.speckle_routines.simulate_speckles_with_shot_noise(asicshape, modes, specklesize, kbar)[source]#

returns a 2D speckle pattern with given speckle size, contrast (1/modes) and photon density kbar (photons/pixel).