https://github.com/thatgeeman/retinopathy_classification_resnet18
Image classification for early detection of diabetic retinopathy in patients. This project uses a custom ResNet18 model built from scratch using PyTorch.
https://github.com/thatgeeman/retinopathy_classification_resnet18
classification pytorch pytorch-implementation resnet-18 retinopathy
Last synced: about 2 months ago
JSON representation
Image classification for early detection of diabetic retinopathy in patients. This project uses a custom ResNet18 model built from scratch using PyTorch.
- Host: GitHub
- URL: https://github.com/thatgeeman/retinopathy_classification_resnet18
- Owner: thatgeeman
- License: mit
- Created: 2022-02-18T11:38:52.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-08-01T16:33:14.000Z (about 3 years ago)
- Last Synced: 2025-02-09T12:27:06.189Z (8 months ago)
- Topics: classification, pytorch, pytorch-implementation, resnet-18, retinopathy
- Language: Python
- Homepage:
- Size: 42 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Project Description
Image classification for early detection of diabetic retinopathy in patients. Classification is
perfomed on retina images of patients taken using fundus photography. This project uses a
custom ResNet18 model built from scratch using PyTorch.> Disclaimer: Not intended for medical diagnosis. This project analyzes medical images for demonstration
> purposes only. Always consult with your doctor, or another qualified healthcare professional for diagnosis.# Data Source
See the APTOS 2019 Blindness Detection competition
for the full [overview](https://www.kaggle.com/c/aptos2019-blindness-detection/overview) and [data
description](https://www.kaggle.com/c/aptos2019-blindness-detection/data) on Kaggle.To download the data using [Kaggle API](https://github.com/Kaggle/kaggle-api/blob/master/README.md):
```bash
kaggle competitions download -c aptos2019-blindness-detection
```
Training and test data is by default expected in `data` directory. Run `python train.py -h` or `python infer.py -h` for
expected parameters.# Usage
Clone repository:
```shell
git clone https://github.com/thatgeeman/retinopathy_classification_resnet18
```
Setup environment and install dependencies:
```shell
pip install pipenv
cd retinopathy_classification_resnet18
pipenv install --python 3.8
pipenv shell
```To train the model from the data in `data/train.csv` with
images located in `data/train_images`
```shell
python train.py 2 10 --csv data/train.csv --data data/train_images
```
Here, the first parameter denotes the number of epochs to train the model with
frozen body parameters. The second parameter denotes the number of epochs to train
the full model.Using the saved checkpoint to run an inference cycle:
```shell
python infer.py checkpoints/model_c15.pth
```