CTFast bleed detector
Flags suspected brain bleeds on non-contrast head CT, slice by slice.
EfficientNet-B0 (timm efficientnet_b0.ra_in1k) fine-tuned on the RSNA
Intracranial Hemorrhage Detection data. Each slice is shown in three CT windows
together with the slices above and below it, nine channels at 256 x 256 pixels.
Outputs: any bleed and five bleed types. A scan's score is the mean of its most
suspicious tenth of slices, and at least three.
Files: model.pt (PyTorch weights) and settings.json (thresholds).
Alert threshold 0.329 catches 95% of validation bleeds.
Possible-bleed threshold 0.052 catches 99%.
| Test set | Scans | AUC | Recall | Specificity | Recall, alert or possible |
|---|---|---|---|---|---|
| cq500 | 471 | 0.969 | 91.3% | 90.9% | 99.0% |
| rsna_test | 2132 | 0.982 | 94.5% | 94.2% | 98.1% |
| kaggle | 43 | 0.934 | 100.0% | 38.5% | 100.0% |
Test sets: CQ500 (Chilamkurthy et al., 2018, CC BY-NC-SA 4.0), RSNA patients kept out of training, and the Kaggle Brain CT Hemorrhage JPEGs (Helwan et al., 2018).
Student project for NTU BC3415. Not a medical device and not for clinical use.