CardioVision: Explainable AI for Coronary Artery Disease Assessment

Inspiration

Cardiovascular disease is a major health concern, and interpreting multiple clinical measurements to assess coronary artery disease can be challenging. We built CardioVision to combine machine learning, explainable AI, and interactive 3D visualization in one application.

What it does

CardioVision is an AI-powered research prototype that estimates the likelihood of coronary artery disease (CAD) and stenosis in three major coronary arteries: the Left Anterior Descending (LAD), Left Circumflex (LCX), and Right Coronary Artery (RCA).

Users enter non-identifying clinical measurements through a structured assessment form. The application generates model predictions and risk estimates, displays SHAP-based explanations of contributing features, and provides an interactive 3D heart visualization to help users explore the results.

How we built it

The backend uses Python and Flask to process clinical inputs and run trained machine-learning models. Scikit-learn and XGBoost support prediction, while SHAP provides explanations of how clinical features contribute to model outputs.

The frontend uses React and Vite. Three.js powers the interactive 3D heart visualization, allowing users to explore different viewing angles and inspect coronary arteries. The application also includes a structured assessment form and a printable or downloadable report.

Key features

  • CAD, LAD, LCX, and RCA prediction estimates.
  • SHAP-based explanations of individual predictions.
  • Interactive 3D heart visualization with coronary artery highlighting.
  • Structured clinical input form.
  • Assessment results and report generation.

Challenges we faced

One of our main challenges was integrating multiple trained machine-learning pipelines into a single application while keeping preprocessing consistent between training and prediction. We also worked on presenting model explanations clearly and connecting prediction outputs to the 3D visualization.

What's next

We aim to strengthen validation on independent datasets, improve probability calibration, refine the anatomical visualization, and evaluate the prototype with clinical expertise.

Share this project:

Updates

Submission history