Optic Disc and Cup Segmentation Methods with U-Net
Note: the codebase is deprecated. It would require significant refactoring for newly released keras and tensorflow versions, however, due to the lack of time I am unable to do that continuously. Feel free to fork the repository to make any changes.
This repository contains code in support of the paper: "Optic Disc and Cup Segmentation Methods for Glaucoma Detection with Modification of U-Net Convolutional Neural Network", available in several versions:
- Sevastopolsky A., Optic disc and cup segmentation methods for glaucoma detection with modification of U-Net convolutional neural network, Pattern Recognition and Image Analysis 27 (2017), no. 3, 618β624.
- Sevastopolsky, Artem. Optic Disc and Cup Segmentation Methods for Glaucoma Detection with Modification of U-Net Convolutional Neural Network. arXiv preprint arXiv:1704.00979 (2017).
Built with Python 3.7, Keras 2.3.1 with TensorFlow backend 2.0.0.
See scripts folder for notebooks for training with clarification of usage.
HDF5 datasets can be recreated with scripts/Organize datasets.ipynb notebook or downloaded from this url.
models_weights folder contains pre-trained models.
Click the following links to watch content of notebooks in a handy way:
- U-Net, OD on RIM-ONE v3 (fold 0).ipynb (nbviewer)
- U-Net, OD on DRIONS-DB (fold 0).ipynb (nbviewer)
- U-Net, OD cup on RIM-ONE v3, cropped by OD (fold 0).ipynb (nbviewer)
- U-Net, OD cup on DRISHTI-GS, cropped by OD (fold 0).ipynb (nbviewer)
The software is distributed under MIT License, which requires that copyright notice and this permission notice shall be included in all copies or substantial portions of this software. Commercial use, distribution, modification and private use are allowed, but no warranty or support can be guaranteed.