Rusty-PSF: Point Spread Function Library
[!NOTE] This is a comprehensive Rust library for calculating Point Spread Functions (PSF) in microscopy and optical systems. It provides efficient implementations for various PSF models including Gaussian, defocus, and optical aberrations using Zernike polynomials.
Table of Contents
Installation
[!TIP] Make sure you have Rust and Cargo installed on your system before proceeding. Visit rust-lang.org for installation instructions.
To use this library, add the following dependencies to your Cargo.toml file:
[]
= "0.1.0"
= { = "0.16.1", = ["rayon"] }
= "0.4.6"
Getting Started
To get started with the Rusty-PSF library, follow these examples:
Basic PSF Generation
[!NOTE] Generate a theoretical Gaussian PSF with specified optical parameters:
use ;
Optical Aberrations
[!NOTE] Create a PSF with specific optical aberrations using Zernike polynomials:
use ;
Features
[!TIP] The library provides comprehensive PSF modeling capabilities:
- 🔬 Gaussian PSF with theoretical parameters
- 🎯 Defocus and through-focus series
- 🌊 Zernike polynomial-based aberrations
- 📊 Efficient FFT implementations
- 📐 Strehl ratio calculations
- 🔄 Normalized coordinate systems
- ⚡ Parallel processing support
- 🧮 High-performance numerical computations
Documentation
[!NOTE] For detailed API documentation and examples, please refer to the Documentation.
License
[!IMPORTANT] This library is licensed under the BSD 3-Clause License. See the LICENSE file for details.