sdeconv.psfs.SPSFGibsonLanni

sdeconv.psfs.SPSFGibsonLanni#

class sdeconv.psfs.SPSFGibsonLanni(shape: tuple[int, int] | tuple[int, int, int], NA: float = 1.4, wavelength: float = 0.61, M: float = 100, ns: float = 1.33, ng0: float = 1.5, ng: float = 1.5, ni0: float = 1.5, ni: float = 1.5, ti0: float = 150, tg0: float = 170, tg: float = 170, res_lateral: float = 0.1, res_axial: float = 0.25, pZ: float = 0, use_square: bool = False)#

Generate a Gibson-Lanni PSF

Parameters:
  • shape – Size of the PSF array in each dimension [(Z), Y, X],

  • NA – Numerical aperture,

  • wavelength – Wavelength in microns,

  • M – Magnification,

  • ns – Specimen refractive index (RI),

  • ng0 – Coverslip RI design value,

  • ng – Coverslip RI experimental value,

  • ni0 – Immersion medium RI design value,

  • ni – Immersion medium RI experimental value,

  • ti0 – microns, working distance (immersion medium thickness) design value,

  • tg0 – microns, coverslip thickness design value,

  • tg – microns, coverslip thickness experimental value,

  • res_lateral – Lateral resolution in microns,

  • res_axial – Axial resolution in microns,

  • pZ – microns, particle distance from coverslip

  • use_square – If true, calculate the square of the Gibson-Lanni model to simulate a pinhole. It then gives a PSF for a confocal image

__init__(shape: tuple[int, int] | tuple[int, int, int], NA: float = 1.4, wavelength: float = 0.61, M: float = 100, ns: float = 1.33, ng0: float = 1.5, ng: float = 1.5, ni0: float = 1.5, ni: float = 1.5, ti0: float = 150, tg0: float = 170, tg: float = 170, res_lateral: float = 0.1, res_axial: float = 0.25, pZ: float = 0, use_square: bool = False)#

Methods

__init__(shape[, NA, wavelength, M, ns, ...])

add_observer(observer)

Add an observer

notify(message)

Notify progress to observers

progress(value)

Notify progress to observers