Inspiration

One-number risk scores can't show where heart disease lives. We map it artery by artery, with reasons.

What it does

CardioTwin 3D predicts CAD + LAD/LCX/RCA stenosis from 55 routine measurements, paints each probability onto segmented 3D coronaries, and explains every prediction with exact SHAP dossiers. All 303 patients work live, with vessel-focus B&W, condition painting, fullscreen, dark theme, and a Performance tab with locked-test ROC/calibration.

How we built it

Nested-CV model selection (logistic/RF/XGBoost) + Platt calibration, locked 61-patient test: CAD AUC 0.926, LAD 0.923. React Three Fiber + FastAPI single URL, UI on Cloudflare Pages, API on Render.

Challenges we ran into

Small n=303 with honest wide CIs, weak LCX/RCA signal (disclosed, not hidden), leakage-proof pipelines with unit tests, and 3D label overlap.

Accomplishments that we're proud of

Locked-test evidence with per-patient predictions CSV, 2 leakage tests green, full-55 editable form, original B&W focus mode - built in 7 days.

What we learned

Thresholds and calibration matter more than raw AUC, and stated limits build judge trust.

What's next for CardioTwin 3D - Vessel-Level Coronary Risk Mapping

External validation with recalibration, lesion-level labels from imaging, on-device export for fully offline use.

Built With

Share this project:

Updates

Submission history