[ICMLA'19] [Tensorflow] Classifying different Retinal Diseases using Deep Learning from Optical Coherence Tomography Images
A model for classifying different Retinal Diseases using Deep Learning from Optical Coherence Tomography Images. This code is part of the supplementary materials for the IEEE ICMLA 2019 for our paper Optic-net: A Novel Convolutional Neural Network for Diagnosis of Retinal Diseases from Optical Tomography Images. The paper has since been accpeted to IEEE ICMLA 2019 and will be preseneted in December 2019.
https://ieeexplore.ieee.org/document/8999264
https://arxiv.org/abs/1910.05672
@inproceedings{kamran2019optic,
title={Optic-Net: A Novel Convolutional Neural Network for Diagnosis of Retinal Diseases from Optical Tomography Images},
author={Kamran, Sharif Amit and Saha, Sourajit and Sabbir, Ali Shihab and Tavakkoli, Alireza},
booktitle={2019 18th IEEE International Conference On Machine Learning And Applications (ICMLA)},
pages={964--971},
year={2019}
organization={IEEE}
}
sudo apt-get install pip3 python3-dev
sudo pip3 install tensorflow-gpu==1.12.1
sudo pip3 install keras==2.2.4
sudo pip3 install tensorflow==1.12.1
sudo pip3 install keras==2.2.4
sudo pip3 -r requirements.txt
sudo pip3 install tensorflow-gpu==1.12.1
sudo pip3 install keras==2.2.4
sudo pip3 install tensorflow==1.12.1
sudo pip3 install keras==2.2.4
sudo pip3 -r requirements.txt
python3 inference.py --imgpath='location of the testing image(single file)' --weights='location to the .h5 file' --dataset='Srinivasan2014 or Kermany2018'
@article{kermany2018identifying,
title={Identifying medical diagnoses and treatable diseases by image-based deep learning},
author={Kermany, Daniel S and Goldbaum, Michael and Cai, Wenjia and Valentim, Carolina CS and Liang, Huiying and Baxter, Sally L and McKeown, Alex and Yang, Ge and Wu, Xiaokang and Yan, Fangbing and others},
journal={Cell},
volume={172},
number={5},
pages={1122--1131},
year={2018},
publisher={Elsevier}
}
https://data.mendeley.com/datasets/rscbjbr9sj/3
├── data
| ├──OCT2017
| ├──train
| ├──CNV
| ├──DME
| ├──DRUSEN
| └──NORMAL
| ├──test
| ├──CNV
| ├──DME
| ├──DRUSEN
| └──NORMAL
├── src
├── LICENSE
├── README.md
├── data_preprocess_sri2014.py
├── inference.py
├── requirements.txt
├── test.py
└── train.py
python3 train.py --dataset=Kermany2018 --datadir=data/OCT2017 --batch=4 --epoch=30 --logdir=optic-net-oct2017-log --snapshot_name=optic-net-oct2017
'--dataset', type=str, required=True, help='Choosing between 2 OCT datasets', choices=['Srinivasan2014','Kermany2018']
'--batch', type=int, default=8
'--input_dim', type=int, default=224
'--datadir', type=str, required=True, help='path/to/data_directory'
'--epoch', type=int, default=30
'--logdir', type=str
'--weights', type=str,default=None, help='Resuming training from previous weights'
'--snapshot_name',type=str, default=None, help='Name the saved snapshot'
@article{sri2014,
title={Fully automated detection of diabetic macular edema and dry age-related macular degeneration from optical coherence tomography images},
author={Srinivasan, Pratul P and Kim, Leo A and Mettu, Priyatham S and Cousins, Scott W and Comer, Grant M and Izatt, Joseph A and Farsiu, Sina},
journal={Biomedical optics express},
volume={5},
number={10},
pages={3568--3577},
year={2014},
publisher={Optical Society of America}
}
http://people.duke.edu/~sf59/Srinivasan_BOE_2014_dataset.htm
python3 data_preprocess_sri2014.py
|──2014_BOE_Srinivasan
| ├──Publication_Dataset
| ├──AMD1
| ├──AMD2
| ├──DME1
| ├──DME2
| .....
| .....
| └──NORMAL15
| └──TIFFs
| └──8bitTIFFs
├── src
├── LICENSE
├── README.md
├── data_preprocess_sri2014.py
├── inference.py
├── requirements.txt
├── test.py
└── train.py
├── data
| ├──Srinivasan2014
| ├──Train
| ├──AMD
| ├──DME
| └──NORMAL
| ├──Test
| ├──AMD
| ├──DME
| └──NORMAL
├── src
├── LICENSE
├── README.md
├── data_preprocess_sri2014.py
├── inference.py
├── requirements.txt
├── test.py
└── train.py
python3 train.py --dataset=Srinivasan2014 --datadir=data/Srinivasan2014 --batch=4 --epoch=30 --logdir=optic-net-sri2014-log --snapshot_name=optic-net-sri2014
'--dataset', type=str, required=True, help='Choosing between 2 OCT datasets', choices=['Srinivasan2014','Kermany2018']
'--batch', type=int, default=8
'--input_dim', type=int, default=224
'--datadir', type=str, required=True, help='path/to/data_directory'
'--epoch', type=int, default=30
'--logdir', type=str
'--weights', type=str,default=None, help='Resuming training from previous weights'
'--snapshot_name',type=str, default=None, help='Name the saved snapshot'
The code is released under the MIT License, you can read the license file included in the repository for details.