Inspiration

I’ve always believed that technology should serve a meaningful purpose, especially in healthcare. As I learned more about the impact of vision-related diseases, I was struck by how many cases of blindness or severe impairment could be prevented with early diagnosis. This motivated me to build an AI-powered web application that classifies eye fundus images into four categories: Normal, Myopia, Cataract, and Diabetic Retinopathy. My goal is to create a tool that makes eye health diagnostics more accessible, accurate, and efficient—especially in communities where professional screening isn’t always within reach.

What it does

The application takes in a fundus image of the right eye and uses a trained deep learning model to classify it into one of four categories: Normal, Myopia, Cataract, or Diabetic Retinopathy. After the user uploads an image, the system quickly returns the predicted label along with the model’s confidence scores for each class. These results are visually represented in a pie chart, making it easier for users to understand the model’s output at a glance. The tool is designed to be intuitive for both healthcare professionals and everyday users.

How I built it

I preprocessed a large dataset of labeled fundus images and trained a Convolutional Neural Network (CNN) using Python and TensorFlow. The backend is built with Flask, which handles model inference and image processing, while the frontend is a React app with a clean, responsive UI that allows users to upload images and view results in real-time. I containerized the app with Docker and deployed it to the cloud for accessibility.

Challenges I ran into

One major challenge was handling multi-label images where a single fundus image contained multiple diagnoses. I had to carefully clean and curate the dataset to make sure the model learned meaningful patterns. Another hurdle was optimizing the model to balance accuracy with inference speed so users wouldn’t be left waiting. Deploying the Flask-React architecture with Docker also required careful coordination and testing across components.

Accomplishments that I'm proud of

I’m proud of building an end-to-end AI solution from scratch—handling everything from data preparation to model training, frontend development, and deployment. The app runs smoothly, and the classification accuracy exceeded my expectations. It feels good to create something that has real-world health impact potential.

What I learned

This project taught me how to manage an AI pipeline end-to-end, including model evaluation, API design, and frontend-backend communication. I gained hands-on experience with deep learning, Docker, Flask, React, and cloud deployment, and I deepened my understanding of how to structure scalable, user-friendly ML applications.

Share this project:

Updates