Inspiration

Coronary artery disease data can be difficult to explore when it is reduced to rows of measurements and a single prediction. We built Coronary Atlas to make a research model’s results easier to examine, including what the model used and where its limits lie.

What it does

Coronary Atlas lets a user enter 55 findings and explore four separate model outputs: overall coronary artery disease and narrowing labels for the LAD, LCX, and RCA arteries. It shows the findings that contributed to each score alongside an interactive 3D reference heart. Users can save their latest inputs and export an assessment.

The outputs are research estimates, not diagnoses. The heart identifies anatomy; it does not show a person’s blockage or scan.

How we built it

We trained and evaluated Naive Bayes models on a 303-row dataset. We compared a Gaussian baseline with models designed for mixed numeric and categorical findings, using nested cross-validation to keep model selection inside the training folds. The application uses saved models through a FastAPI service, a Next.js frontend, and Three.js for the heart view. Account and input data are stored in TiDB Cloud.

Challenges we ran into

Preventing data leakage was essential with such a small dataset. We kept outcome labels out of model inputs and performed feature selection, preprocessing, calibration, and threshold selection within the appropriate training folds. We also had to explain model contributions without implying that an association is a cause or that the 3D heart locates a lesion.

Accomplishments that we're proud of

The app brings four model outputs, their explanations, a 55-field form, and an interactive heart into one experience. In repeated held-out evaluation on the supplied dataset, the selected CAD model achieved a mean ROC-AUC of 0.921. We documented weaker vessel results and the limits of the dataset alongside that result.

What we learned

A useful health-related AI demo needs more than a strong headline metric. Clear explanations, careful evaluation, and honest communication about uncertainty matter just as much as the interface.

What's next for Coronary Atlas

We want to clarify source-data permissions and measurement units, evaluate the models on an independent dataset, and improve privacy controls before considering any use beyond synthetic or authorized research demonstrations.

Built With

Share this project:

Updates

Submission history