Skip to content

Latest commit

 

History

History
68 lines (52 loc) · 4.1 KB

README.md

File metadata and controls

68 lines (52 loc) · 4.1 KB

MRPyrNet

Official implementation of the MRPyrNet architecture proposed in the papers Improving MRI-based Knee Disorder Diagnosis with Pyramidal Feature Details (MIDL 2021) and Deep convolutional feature details for better knee disorder diagnoses in magnetic resonance images (Computerized Medical Imaging and Graphics, 2022).

drawing

Abstract

This paper presents MRPyrNet, a new convolutional neural network (CNN) architecture that improves the capabilities of CNN-based pipelines for knee injury detection via magnetic resonance imaging (MRI). Existing works showed that anomalies are localized in small-sized knee regions that appear in particular areas of MRI scans. Based on such facts, MRPyrNet exploits a Feature Pyramid Network to enhance small appearing features and Pyramidal Detail Pooling to capture such relevant information in a robust way. Experimental results on two publicly available datasets demonstrate that MRPyrNet improves the ACL tear and meniscal tear diagnosis capabilities of two state-of-the-art methodologies. Code is available at https://git.io/JtMPH.

Installation

Code has been developed and tested on Ubuntu 18.04 with Python 3.7, PyTorch 1.7.1, scikit-learn==0.22.2.post1, and CUDA 10.

Clone the GIT repository.

git clone https://github.com/dontfollowmeimcrazy/MRPyrNet.git

Download the MRNet dataset.

Download the official MRNet dataset and put wherever you want in your local machine. Then, set the path to the MRNet folder into the variable DATA_PATH contained in the bash files train_mrpyrnet.sh located in the folders MRNet+MRPyrNet and ELNet+MRPyrNet.

Train and Test

Run the following commands

cd MRNet+MRPyrNet
bash train_mrpyrnet.sh 

to run an experiment with the MRPyrNet applied to the MRNet pipeline. Brifely, This will train a MRNet+MRPyrNet instance for each view (axial, coronal, sagittal) for both the ACL and meniscus tear tasks. After, for each task, the script will train and test a logistic regressor combining the predictions of the three instances. Results, logs, and checkpoints for each experiment will be saved in the folder MRNet+MRPyrNet/experiments/.

Run the following commands

cd ELNet+MRPyrNet
bash train_mrpyrnet.sh 

to run an experiment with the MRPyrNet applied to the ELNet pipeline. Brifely, This will train a single ELNet+MRPyrNet instance for the the ACL (axial view) and meniscus tear (coronal view) tasks. Results, logs, and checkpoints for each experiment will be saved in the folder ELNet+MRPyrNet/experiments/.

Contact

Feel free to open an issue on GitHub for any problems. Otherwise you can contact me via e-mail by writing to matteo.dunnhofer@uniud.it.

Reference

If you find this work useful please cite

@InProceedings{Dunnhofer_2021_MIDL,
	author    = {Dunnhofer, Matteo and Martinel, Niki and Micheloni, Christian},
	title     = {Improving MRI-based Knee Disorder Diagnosis with Pyramidal Feature Details},
	booktitle = {Proceedings of the Fourth Conference on Medical Imaging with Deep Learning (MIDL)},
	year      = {2021}
}

@article{Dunnhofer_2022_CMIG,
	title = {Deep convolutional feature details for better knee disorder diagnoses in magnetic resonance images},
	journal = {Computerized Medical Imaging and Graphics},
	pages = {102142},
	year = {2022},
	issn = {0895-6111},
	doi = {https://doi.org/10.1016/j.compmedimag.2022.102142},
	url = {https://www.sciencedirect.com/science/article/pii/S0895611122001124},
	author = {Matteo Dunnhofer and Niki Martinel and Christian Micheloni},
}

Acknowledgements

This repository was built upon the code of https://github.com/ahmedbesbes/mrnet and of the original MRNet.