VHPT with TV reconstruction: a software package for regularized virtual hybrid parallel-beam tomography
Creators
Copyright (c) 2024 Melody Alsaker, Siiri Rautio, Samuli Siltanen
Some subroutines use code authored by other individuals. Whenever possible, appropriate credit has been given within the relevant files.
Citation information
DOI: 10.5281/zenodo.12581354
Example citation: Alsaker, M., Rautio, S., & Siltanen, S. (2024). VHPT with TV reconstruction: a software package for regularized virtual hybrid parallel-beam tomography (v1.0). Zenodo. https://doi.org/10.5281/zenodo.12581354
General information
This code was used to produce the results in "CT scans without X-rays: parallel-beam imaging from nonlinear current flows" (http://arxiv.org/abs/2408.12992) by Melody Alsaker(1*), Siiri Rautio(2), Fernando Moura(3), Juan Pablo Agnelli(4), Rashmi Murthy(5), Matti Lassas(2), Jennifer L. Mueller(6), Samuli Siltanen(2).
Department of Mathematics, Gonzaga University, Spokane, WA 99258, USA
Department of Mathematics and Statistics, University of Helsinki, Helsinki, Finland
Engineering, Modeling and Applied Social Sciences Center, Federal University of ABC, São Paulo, Brazil
FaMAF, National University of Córdoba, Córdoba, Argentina and CIEM, National Scientific and Technical Research Council (CONICET), Argentina
Department of Mathematics, Bangalore University, India
Department of Mathematics & School of Biomedical Engineering, Colorado State University, Fort Collins, CO 80521, USA
*Corresponding author. Email: alsaker@gonzaga.edu
Data
The EIT data for the 3 targets used in the paper, along with the calibration set (collected on a tank filled with homogeneous saline) and the set corresponding to numerically simulated data on a homogeneous domain are included in the directory labeled DATA:
Data_S1: Target I
Data_S2: Target II
Data_S3: Target III
Data_S4_clb: Calibration data (homogeneous tank)
Data_S5_cem: CEM simulated data (homogeneous domain)
The experimental datasets Data_S1, Data_S2, Data_S3 and Data_S4_clb were collected in the Electrical Impedance Tomography Lab at Colorado State University using the ACT5 EIT machine, as described in the work O. R. Shishvan et al., "ACT5 Electrical Impedance Tomography System," in IEEE Transactions on Biomedical Engineering, vol. 71, no. 1, pp. 227-236, Jan. 2024, doi: 10.1109/TBME.2023.3295771. Data collection and curation was supervised by Jennifer L. Mueller. The dataset Data_S5_cem was numerically simulated using the finite element method (FEM) with the complete electrode model (CEM).
How to run the code
Run the MATLAB file Step1_runthis.m. The first time you run the code it will generate an output directory if the option to save is selected. This file reads in EIT data and outputs a .mat file containing the blurry sinogram, which is the input for the neural network in Step 2.
Run the Python file Step2_runthis.py to deblur the sinogram which was output in Step 1. The deblurred sinogram is saved as a .mat file in the output directory. The proper use of these files requires the following dependencies: Python '3.10', tensorflow '2.11.0', scipy '1.10.0', cv2 '4.7.0.68', numpy '1.24.2'.
Finally, run the file Step3_runthis.m to reconstruct a conductivity image from the deblurred sinogram using Total Variation regularization. The final reconstruction is saved to output/reconsructions.