nevinbaiju / diabetic-retinopathy

Identifying retina images with diabetic retinopathy using convolutional neural networks.
33 stars 21 forks source link
diabetic-retinopathy-detection django keras python3 tensorflow

diabetic-retinopathy

This is a project for creating a webb app that can classify retina images if it has diabetic retinopathy or not. This was developed as a part of a 24 hour hackathon, Hacktory.

Requirements

For Web app

  1. Python.
  2. Keras with tensorflow backend.
  3. Django

For Training and customization

With the above requirements,

  1. Numpy
  2. Pandas
  3. Scikit-Learn
  4. Matplotlib
  5. Jupyter Notebook

Installation

For running the web app.

  1. Clone this repository
  2. Go to diabetic-retinopathy/website/
  3. Run 'python3 manage.py runserver'
  4. Go to localhost/eye in your browser.

For training the model and customizing.

  1. Clone the repository
  2. Download the dataset, either the subset or the entire dataset.
  3. Arrange the dataset into Symptoms and Non Symptoms according to Keras ImageDataGenerator.
  4. Run the Jupyter notebook.
  5. Model will be saved as model.hd5.

Alternatively, you can use our pretrained model by loading the model.hd5.

Results

The training converged to an accuracy of about 80%. With the validation scores for a small test set generated as,

The training data was generated as,

Since we used the subset of our dataset(scaled down to 64*64) for faster training, we had some limitations in getting higher accuracy. Also using advanced architectures like the inception v3 will boost up our accuracy and help predicting with minimised True negatives.