AngioAI / README.md
MuhammadAdil63's picture
fix: gradio 4.44.1 + correct model info in README (cache bust)
65204e4
|
Raw
History Blame Contribute Delete
1.91 kB
---
title: Angio AI
emoji: 🫀
colorFrom: red
colorTo: blue
sdk: gradio
sdk_version: 4.44.1
app_file: app.py
pinned: false
license: apache-2.0
---
# Angio AI — Coronary Angiography Analysis System
**MS Data Science Thesis · Information Technology University Lahore**
**Supervisor: Dr. Arif Mehmood**
---
## What it does
Upload a coronary X-ray angiography (XCA) video and the pipeline automatically:
| Step | Module | Output |
|------|--------|--------|
| 1 | Keyframe extraction | Best diagnostic frame (contrast × sharpness score) |
| 2 | Mask2Former | Stenosis detection — bounding boxes + instance masks |
| 3a | ResUNet | Binary vessel mask (Dice 0.8015 on ARCADE) |
| 3b | YOLOv8m-seg | 26-class coronary anatomy segmentation |
| 4 | FFR Pipeline v4 | Quantitative Flow Ratio (QFR) estimation |
| 5 | SYNTAX Score | Lesion complexity scoring |
---
## Models
All checkpoints are stored in [`MuhammadAdil63/angio-ai-checkpoints`](https://huggingface.co/MuhammadAdil63/angio-ai-checkpoints) and downloaded automatically on first run.
| File | Architecture | Task | Performance |
|------|-------------|------|------------|
| `mask2former_best.pth` | Mask2Former Swin-Base | Stenosis detection | — |
| `binary_best.pth` | ResUNet (16→256 ch) | Binary vessel segmentation | Dice 0.8015 |
| `best.pt` | YOLOv8m-seg (nc=26) | 26-class coronary anatomy | — |
Dataset: [ARCADE Challenge](https://arcade.grand-challenge.org/) (syntax + stenosis splits)
---
## Notes
- **Hardware**: CPU-only (HF free tier) — inference takes ~30–60 seconds per video
- **Input**: MP4 / AVI coronary angiography video, ideally ≥5 seconds
- **Scale**: Default 3.75 px/mm (ARCADE hardware). Adjust slider for non-ARCADE data.
- **FFR formula**: QFR = 1 − (0.33·DS + 0.60·DS²) — Tu et al. JACC 2016 / FAVOR II
---
*This tool is for research purposes only and is not intended for clinical use.*