Releases: fangq/redbirdpy
Releases · fangq/redbirdpy
RedbirdPy v0.2.0, codename Flamingo
RedbirdPy - A Model-Based Diffuse Optical Imaging Toolbox for Python
v0.2.0 (Flamingo)
- Author: Qianqian Fang (q.fang at neu.edu)
- License: GNU General Public License version 3 (GPLv3)
- Version: 0.2.0 (Flamingo)
- Website: https://github.com/fangq/redbirdpy
- Python module: https://pypi.org/project/redbirdpy/
Click here to register and download RedbirdPy v0.2.0
What's New
RedbirdPy v0.2.0 is the first feature-complete Python release of the Redbird diffuse optical
imaging toolbox. This release represents a comprehensive port of the original MATLAB-based
Redbird toolbox to Python, providing a fast, experimentally-validated forward solver for the
diffusion equation and advanced non-linear image reconstruction algorithms.
Notable new features include:
- Complete Python port of the Redbird MATLAB toolbox for diffuse optical tomography (DOT)
- Support for wide-field sources including planar, pattern, and Fourier-basis illumination
- Analytical diffusion models for infinite, semi-infinite, and slab geometries with spherical inclusions
- Full image reconstruction pipeline with Gauss-Newton iteration and Tikhonov regularization
- Multiple linear solver backends:
pardiso,umfpack,blqmr,qmr,minres,cg,gmres,bicgstab - Multi-threading support for non-blqmr solvers using
multiprocessing.Pool - Modular solver interface with automatic backend selection
- Comprehensive unit test suite with substantially increased code coverage
- GitHub Actions CI pipeline supporting Python 3.6–3.14
- Requires iso2mesh >= 0.5.4 for mesh generation
Key Features
- Forward Modeling: FEM-based diffusion equation solver for photon fluence computation
- Inverse Reconstruction: Iterative Gauss-Newton with multiple regularization options
- Wide-Field Sources/Detectors: Planar, pattern, and Fourier-basis spatial modulation
- Multi-Spectral Analysis: Wavelength-dependent simulations for chromophore estimation
- Dual-Mesh Reconstruction: Coarse reconstruction mesh for faster inverse solving
- Structure Priors: Laplacian, Helmholtz, and compositional prior support
The detailed updates can be found in the below change log
- 2026-02-03 [67dc2cf] [ci] remove blocksolver for 3.7
- 2026-02-03 [cbe5e04] [solver] use multiprocessing.Pool
- 2026-02-03 [33b089d] [ci] debug python 3.7/3.8 13x faster than newer python
- 2026-02-03 [e253d17] [ci] fix python3 3.14 multhprocessing error
- 2026-02-03 [d413743] [ci] fix python 3.14 solver error, add qmr and minres solvers
- 2026-02-02 [020aff4] [ci] fix ci error
- 2026-02-02 [e2541c8] [ci] remove python 3.6
- 2026-02-02 [532b4bd] [ci] allow running demo script in ci
- 2026-02-02 [be6fea8] [doc] update README, run demo scripts in ci
- 2026-02-02 [de03ffb] [doc] update README
- 2026-02-02 [2c72026] [ci] add action script
- 2026-02-02 [99ad093] [deploy] rename module name to redbirdpy
- 2026-02-01 [eb42218] [test] substantially increase coverage with new unittests
- 2026-02-01 [f468582] [feat] support widefield sources, all recon codes run and converges
- 2026-02-01 [af91bfb] [feat] add analytical diffusion models
- 2026-02-01 [234dae0] [solver] update solver interface, use iso2mesh 0.5.4
- 2026-01-27 [1c6d837] [ci] fix recon bug
- 2026-01-26 [e200f6a] [feat] support multi-threading in other non blqmr solvers
- 2026-01-26 [e9fceb0] [doc] update the old redbird toolbox name
- 2026-01-26 [4779073] [ci] separate linear solver unit, support pardiso, umfpack and blqmr
- 2026-01-23 [5d432ca] [bug] further debug examples
- 2026-01-23 [a48fc02] [init] initial port from matlab to Python
- 2026-01-22 [ed7b2d6] Initial commit