This project is a result of the WirVsVirus Hackathon. Our objective was to assist doctors in diagnosing COVID-19 patients by training a convolutional network to discriminate between patients with and without the disease, based on an X-ray image. We use a DenseNet121 pretrained on the CheXpert dataset and finetune it to the covid-chestxray-dataset. Furthermore, we implemented a simple prediction service that displays the diagnosis based on an X-ray image uploaded by the user.
What it does
- We first trained the COVID-19 classifier on Google Colab. See the notebook file
- We then implemented a simple backend server in Flask, that loads the classifier and performs inference on the X-ray image uploaded by the user.
- Finally, we developed a simple frontend server that allows user to upload an X-ray image and see the results of diagnosis: the predicted probability of a patient having COVID-19 and the heatmap of critical regions on the X-ray that contributed to the diagnosis.
How I built it
Transfer learning, Pytorch, Flask. See more on Github