This repository contains the python implementations of the paper: Robust single-shot 3D fluorescence imaging in scattering media with a simulator-trained neural network. We provide a code in a python package, sbrnet-core
, that contains functions for generating synthetic data and training models.
If you find this project useful in your research, please consider citing our paper:
Imaging through scattering is a pervasive and difficult problem in many biological applications. The high background and the exponentially attenuated target signals due to scattering fundamentally limits the imaging depth of fluorescence microscopy. Light-field systems are favorable for high-speed volumetric imaging, but the 2D-to-3D reconstruction is fundamentally ill-posed and scattering exacerbates the condition of the inverse problem. Here, we develop a scattering simulator that models low-contrast target signals buried in heterogeneous strong background. We then train a deep neural network solely on synthetic data to descatter and reconstruct a 3D volume from a single-shot light-field measurement with low signal-to-background ratio (SBR). We apply this network to our previously developed Computational Miniature Mesoscope and demonstrate the robustness of our deep learning algorithm on a 75 micron thick fixed mouse brain section and on bulk scattering phantoms with different scattering conditions. The network can robustly reconstruct emitters in 3D with a 2D measurement of SBR as low as 1.05 and as deep as a scattering length. We analyze fundamental tradeoffs based on network design factors and out-of-distribution data that affect the deep learning model's generalizability to real experimental data. Broadly, we believe that our simulator-based deep learning approach can be applied to a wide range of imaging through scattering techniques where experimental paired training data is lacking.
All data to reproduce results from the paper can be found in this google drive.
Clone the repo into a folder of your choice with
git clone https://github.com/bu-cisl/sbrnet.git
and set up the package with
python setup.py
Ensure the necessary dependencies are installed using
pip install -r requirements.txt
This project is licensed under the terms of the MIT license. see the LICENSE file for details