Loading...
 

Slit scanner Point Spread Functions

When using Huygens deconvolution on an image procured from a confocal microscope equipped with a slit detector instead of a pinhole, a special Point Spread Function (PSF) is needed. This section describes how to find the acquire the correct PSF.


Please login to view this page

Login


$slit setp -s {$dx2 $dy2 $dz2}


# Generating a sphere on the anisotropic grid will cause a warning, shut
# verbosity off for this function only:
set normalMode huOpt verb -mode silent
$slit gensphere -> $slit -r $width2
huOpt verb -mode $normalMode

# Now that the slit is generated show it on the proper grid and allow some
# time to admire it:
$slit setp -s {$dx $dx $dz}
exec sleep 5
$slit fft -> $slit

# Taking the optical parameters in '$psf', which are a copy of those in
# 'parent' except for the microscope type, generate a PSF. Since this is a
# wide field PSF, the emission wavelength determines the PSF.
$psf genpsf -> $psf -dims parent

# Forward FFT:
$psf fft -> $fftIm
$fftIm * $slit -> $slit
$fftIm del ; # We don't need this buffer anymore.

# Reverse FFT:
$slit fft -> $slit -dir i
# Correct the shift introduced by colvolving with the centered slit:
$slit optrep -> $slit
# $slit now contains the detection distribution

# Next we need the excitation distribution: a widefield PSF based on the
# excitation wavelength. To set that as reference for the widefield PSF
# generator copy the excitation wavelength to the emission wavelength:
$psf setp -em $origParamArray(lambdaEx)
$psf genpsf -> $psf -dims parent

# Multiply with the excitation distribution to get the overall PSF:
$slit * $psf -> $dest
# Normalize the sum of the PSF to unity:
$dest norm 1.0 -> $dest
# Make sure the destination inherets all parameters from the parent:
$parent adopt -> $dest

# Final cleanup:
$slit del
$psf del

huOpt report "slitPSF Done!"
}

huOpt report "Example to use this script: in the Tcl Scripting window type:\n\
\tslitPSF a psf"

~/pp~