Point Spread Function calculations for fluorescence microscopy
Project description
Psf is a Python library to calculate Point Spread Functions (PSF) for fluorescence microscopy.
This library is no longer actively developed.
- Authors:
Christoph Gohlke, Oliver Holub
- Organization:
Laboratory for Fluorescence Dynamics. University of California, Irvine
- License:
BSD 3-Clause
- Version:
2020.1.1
Requirements
Matplotlib 3.1 (optional for plotting)
Revisions
- 2020.1.1
Remove support for Python 2.7 and 3.5. Update copyright.
- 2019.10.14
Support Python 3.8.
- 2019.4.22
Fix setup requirements. Fix compiler warning.
References
Electromagnetic diffraction in optical systems. II. Structure of the image field in an aplanatic system. B Richards and E Wolf. Proc R Soc Lond A, 253 (1274), 358-379, 1959.
Focal volume optics and experimental artifacts in confocal fluorescence correlation spectroscopy. S T Hess, W W Webb. Biophys J (83) 2300-17, 2002.
Electromagnetic description of image formation in confocal fluorescence microscopy. T D Viser, S H Wiersma. J Opt Soc Am A (11) 599-608, 1994.
Photon counting histogram: one-photon excitation. B Huang, T D Perroud, R N Zare. Chem Phys Chem (5), 1523-31, 2004. Supporting information: Calculation of the observation volume profile.
Gaussian approximations of fluorescence microscope point-spread function models. B Zhang, J Zerubia, J C Olivo-Marin. Appl. Optics (46) 1819-29, 2007.
The SVI-wiki on 3D microscopy, deconvolution, visualization and analysis. https://svi.nl/NyquistRate
Theory of Confocal Microscopy: Resolution and Contrast in Confocal Microscopy. http://www.olympusfluoview.com/theory/resolutionintro.html
Examples
>>> import psf >>> args = dict(shape=(32, 32), dims=(4, 4), ex_wavelen=488, em_wavelen=520, ... num_aperture=1.2, refr_index=1.333, ... pinhole_radius=0.55, pinhole_shape='round') >>> obsvol = psf.PSF(psf.GAUSSIAN | psf.CONFOCAL, **args) >>> print(f'{obsvol.sigma.ou[0]:.5f}, {obsvol.sigma.ou[1]:.5f}') 2.58832, 1.37059 >>> obsvol = psf.PSF(psf.ISOTROPIC | psf.CONFOCAL, **args) >>> print(obsvol, end='') # doctest:+ELLIPSIS PSF Confocal, Isotropic shape: (32, 32) pixel dimensions: (4.00, 4.00) um, (55.64, 61.80) ou, (8.06, 8.06) au excitation wavelength: 488.0 nm emission wavelength: 520.0 nm numeric aperture: 1.20 refractive index: 1.33 half cone angle: 64.19 deg magnification: 1.00 underfilling: 1.00 pinhole radius: 0.550 um, 8.498 ou, 1.1086 au, 4.40 px computing time: ... ms >>> obsvol[0, :3] array([1. , 0.51071, 0.04397]) >>> # save the image plane to file >>> obsvol.slice(0).tofile('_test_slice.bin') >>> # save a full 3D PSF volume to file >>> obsvol.volume().tofile('_test_volume.bin')
Refer to the psf_example.py file in the source distribution for more examples.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for psf-2020.1.1-pp37-pypy37_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9f6c30c8f6f3ef62f014ea9822e88dd7e5a2d9b62240666c7cad2ddd572b5a5 |
|
MD5 | 4f4b849f892ece85f7c8a44253a83e22 |
|
BLAKE2b-256 | fed45ec29580aa6b3a4d5a2622fc634215ca31b09ae037713de778e9eaaaec14 |
Hashes for psf-2020.1.1-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69e5222d47b9f5942143afa882796d57dbacdb4013e4fdb6c84401bbd2256b01 |
|
MD5 | 4fb25b688920bd92eb56925cdd64b28d |
|
BLAKE2b-256 | dc51f3c1fa6736573ca95782bc5e7dc50b77df310f6fd04efa4c6123b42dbbc9 |
Hashes for psf-2020.1.1-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d81bffc98b100482976c27d7ea898664e03f2f9b3c4e6e5d0e715220f7c21035 |
|
MD5 | 1779b36a163108c5c8bf556237a0aa7a |
|
BLAKE2b-256 | 05c1c70b08ec6f3cbec97ee99bf1ca388583644bc4465b5ce2f915e45b75795e |
Hashes for psf-2020.1.1-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26f3fbf3355085f6e72c0e9e2b74d3dfea13f44f3109931710a6ec0a70f467c0 |
|
MD5 | 663c9c8a0dc02c59e00fe9d8e09b998e |
|
BLAKE2b-256 | 1a002dffe391cfe79d9e35cb165333a2570d923a433fb3ab0e6d73aa12105c05 |
Hashes for psf-2020.1.1-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16dd6a825565e5e65cbf167ee359fbbaae8e2cbe8ff1fad14212020759cd44ce |
|
MD5 | 81bf1230bf430d8cc259c21ecefa13b0 |
|
BLAKE2b-256 | 68b5c0cd136de456cf7c9dde2fb20546c7bfb18c8fe895bf8d492938f928ed47 |
Hashes for psf-2020.1.1-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 143dc00f994b6521f9e785f1953e152d96a8b3dbb3fc121c50a13a9bc030e93e |
|
MD5 | 392924b57949a1cdbf5eab8ad1fc45ae |
|
BLAKE2b-256 | 1359f305b315e254a64efa827a599327e048cee27bc3bfcaf49e050d7166eac7 |
Hashes for psf-2020.1.1-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 425867c0dbfb19edd45022cce791ba63887243eaa4b88332415128627f1ad95e |
|
MD5 | 5bc60c633668b559360b8b73f79a894c |
|
BLAKE2b-256 | 49d2379b62412b75859833353cce9fcd593b729c9ab7991065c659a932c7ae6e |