Inspiration
This project aims to assist healthcare professionals in the early and accurate detection of diseases through the analysis of medical images using artificial intelligence. The website was designed to reach healthcare professionals (doctors, radiologists, etc.), medical researchers, and potentially patients seeking preliminary information.
What it does
Users can upload medical images (X-rays, CT scans, etc.) in common formats. The application then uses trained AI models to analyze the uploaded image for signs of specific diseases. The app can currently detect Pneumonia, Diabetes, Blood Cancer, Melanoma, Breast Cancer and Alzheimer's. The results are displayed clearly, including the predicted disease and a confidence score. There is also a link to a disease information page that provides more details about each condition, including symptoms, causes, and prevention methods.
How we built it
All ML models were built from scratch using Python, Tensorflow and Keras, with unique optimizations for each model relative to the dataset used to train it. All datasets were found on Kaggle. All models are CNN's. For the website itself, it was designed using HTML, CSS, and JavaScript. It has four pages: a home page, a ScanAId page (disease detector page), a disease information page, and an about page. The front end and back end were integrated using Python and Flask. An image uploaded to the website was sent to the respective model using a POST request and the prediction as well as the confidence score was received using JSON.
Challenges we ran into
Reaching intended amounts of high accuracy lead to lots of time for model to be trained and then further optimized (around 40 mins per model reaching up to 60 mins at times) which led to fewer models trained due to lack of time. Data found was almost always biased which led to tons of overfitting which had to be dealt with by increasing dataset size through image editing. Connecting the front end to the back end took a large amount of time and led to multiple setbacks. Adding the functionality for image uploads and adding restrictions to the uploads was also challenging.
Accomplishments that we're proud of
5/6 models have over 90% validation accuracy with an emphasis on preventing false negatives, thus giving patients better results and not putting them in harms way. Successfully integrating the backend to the frontend and presenting the project in an appealing way. Time management and delagating was also crucial to the completion of the project.
What we learned
Machine Learning models can infact accurately predict diseases in patients as good as doctors and trained medical professionals if not even better sometimes. This could lead to higher success rates for patient dianosis and decrease workload of said professionals in the future.
What's next for ScanAId
Further optimization of models to reach almost perfect scores along with increasing number of diseases that can be predicted by training more models. Adding login functionality to the frontend so users can save past scans and generate a history.
Log in or sign up for Devpost to join the conversation.