Hong Wang, Yuexiang Li, Haimiao Zhang, Jiawei Chen, Kai Ma, Deyu Meng, Yefeng Zheng
[Arxiv&&SM] [Springer MICCAI2021]
For the task of metal artifact reduction (MAR), although deep learning (DL)-based methods have achieved promising performances, most of them suffer from two problems: 1) the CT imaging geometry constraint is not fully embedded into the network during training, leaving room for further performance improvement; 2) the model interpretability is lack of sufficient consideration. Against these issues, we propose a novel interpretable dual domain network, termed as InDuDoNet, which combines the advantages of model-driven and data-driven methodologies. Specifically, we build a joint spatial and Radon domain reconstruction model and utilize the proximal gradient technique to design an iterative algorithm for solving it. The optimization algorithm only consists of simple computational operators, which facilitate us to correspondingly unfold iterative steps into network modules and thus improve the interpretability of the framework. Extensive experiments on synthesized and clinical data show the superiority of our InDuDoNet.
Refer to requirements.txt. The following project links are needed for installing ODL and astra:
ODL: https://github.com/odlgroup/odl Astra: https://github.com/astra-toolbox/astra-toolbox
This repository is tested under the following system settings:
Python 3.6
Pytorch 1.4.0
CUDA 10.1
GPU NVIDIA Tesla V100-SMX2
For running the code, please first test whether ODL and Astra are both installed correctly. This is quite important.
.
|-- train.py
|-- test_deeplesion.py
|-- test_clinic.py
|-- results # reconstructed images
|-- network # InDuDoNet
|-- deeplesion # for train and test
| |-- Dataset.py
| |-- __init__.py
| |-- build_gemotry.py # imaging paramter (FP/FBP)
| |-- train # synthesized data for train
| |-- test # synthesized data for test
|-- CLINIC_metal # for clinical evaluation
| |-- preprocess_clinic # processing CLINIC_metal
| |-- test # clinical data for test
DeepLesion: Download the DeepLesion dataset. We use python
to synthesize the metal-corrupted ones by following the simulation protocol in [1]. The imaging parameters are included in bulid_geometory.py
CLINIC-metal: Download the clinical metal-corrupted CLINIC-metal dataset with mutli-bone segmentation. In our experiments, we only adopt the testing set with 14 volumes for evaluation.
CUDA_VISIBLE_DEVICES=0 python train.py --data_path "deeplesion/train/" --batchnum 2
For the demo, the hyper-parameter batchnum is set as 2. Please change it according to your own training set.
CUDA_VISIBLE_DEVICES=0 python test_deeplesion.py --data_path "deeplesion/test/" --model_dir "models/" --save_path "results/deeplesion/"
CUDA_VISIBLE_DEVICES=0 python test_clinic.py --data_path "CLINIC_metal/test/" --model_dir "models/" --save_path "results/CLINIC_metal/"
The authors would like to thank Dr. Lequan Yu for providing the code bulid_geometory.py
released in this repository.
@inproceedings{wang2021indudonet,
title={InDuDoNet: An Interpretable Dual Domain Network for CT Metal Artifact Reduction},
author={Wang, Hong and Li, Yuexiang and Zhang, Haimiao and Chen, Jiawei and Ma, Kai and Meng, Deyu and Zheng, Yefeng},
booktitle={International Conference on Medical Image Computing and Computer-Assisted Intervention},
pages={107--118},
year={2021},
organization={Springer}
}
[1] Y. Zhang and H. Yu, “Convolutional neural network based metalartifact reduction in X-ray computed tomography,”IEEE Transactionson Medical Imaging, vol. 37, no. 6, pp. 1370–1381, 2018.
If you have any question, please feel free to concat Hong Wang (Email: hongwang01@stu.xjtu.edu.cn)