Skip to content

sfu-mial/LADOTNet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Limited-Angle Diffuse Optical Tomography Image Reconstruction using Deep Learning

This is the software repository "LADOTNet" for our paper s addresses the problem of reconstructing breast cancer lesions in acquired diffuse optical tomography data by leveraging cross-domain learning.

Motivation

Diffuse optical tomography (DOT) leverages near-infrared light propagation through in vivo tissue to assess its optical properties and identify abnormalities such as cancerous lesions. While this relatively new optical imaging modality is cost-effective and non-invasive, its inverse problem,i.e., recovering an image from raw signal measurements, is ill-posed, due to the highly diffusive nature of light propagation in biological tissues and limited boundary measurements. Solving the inverse problem becomes even more challenging in the case of limited-angle data acquisition given the restricted number of sources and sensors, the sparsity of the recovered information, and the presence of noise, representative of real world acquisition environments. Traditional optimization-based reconstruction methods are computationally intensive and thus too slow for real-time imaging applications. We propose a novel image reconstruction method for breast cancer DOT imaging. Our method is highlighted by two components: (i) a deep learning network with a novel hybrid loss, and (ii) a distribution transfer learning module. Our model is designed to focus on lesion specific information and small reconstruction details to reduce reconstruction loss and lesion localization errors. The transfer learning module alleviates the need for real training data by taking advantage of cross-domain learning. Both quantitative and qualitative results demonstrate that the proposed method's accuracy surpasses existing methods' in detecting tissue abnormalities.

Architecture

A Workflow example for DOT image reconstruction: Illumination, detection, and estimation of optical coefficients in tissue. Light propagation and scattering in the tissue are schematized. DOT reconstructed image shows the optical coefficients in the tissue. The success of diagnosis and treatment relies on accurate reconstruction and estimation of the optical properties of a medium.

Keywords

Diffuse optical tomography,inverse problem, image reconstruction, deep learning, tissue estimation, Fuzzy Jaccard, transfer learning, handheld probe.

Citation

@inproceedings{ben2019limited,
  title={Limited-angle diffuse optical tomography image reconstruction using deep learning},
  author={Ben Yedder, Hanene and Shokoufi, Majid and Cardoen, Ben and Golnaraghi, Farid and Hamarneh, Ghassan},
  booktitle={Medical Image Computing and Computer Assisted Intervention--MICCAI 2019: 22nd International Conference, Shenzhen, China, October 13--17, 2019, Proceedings, Part I 22},
  pages={66--74},
  year={2019},
  organization={Springer}
  doi={https://doi.org/10.1007/978-3-030-32239-7_8}}

Table of contents

  1. Contribution
  2. Installation
  3. Training
  4. Tranfer Learning
  5. Questions?

Contribution

  • We investigate the benefits of end-to-end deep learning on the quality of limited-data acquisition DOT reconstruction.
  • We introduce a similarity-wise loss, based Fuzzy Jaccard, that focuses on lesion-specific information and small reconstruction details to reduce reconstruction loss and improve lesion localization accuracy.
  • To bridge the gap between real-world acquisition and in silico data simulation, we employ transfer learning. We assess the model's ability to generalize to unseen data, accounting for sensor non-idealities and noise.

Installation

git clone https://github.com/haneneby/LADOTNet.git  
cd LADOTNet
conda env create -f requirement.yml --name LADOTNet
conda activate LADOTNet

Training

export CUDA_VISIBLE_DEVICES=0 #or change to your GPU config
mkdir myoutput
cd LADOTNet
python3 LADOTNet.py --epochs 100 --outputfolder ../myoutput.      

This will show something like:

Epoch 1/100
  16/3739 [..............................] - ETA: 34:23 - loss: 1.7838

Tranfer Learning

A transfer learning network, implemented as a multilayer perceptron, tackles the domain shift between the real data measurement, as collected from the probe and used during inference, and the in silico data measurement used during training time. By minimizing a loss, the transfer learning network learns to translate the real world data distribution onto the in silico data distribution.

To train the TL module run the following command:

mkdir TLoutput
cd LADOTNet
python3 TL.py  

The results will be saved output in TLoutput.

Questions?

Please create a new issue detailing concisely, yet complete what issue you encountered, in a reproducible way.