Featured work
Brain Tumor Segmentation on the Edge
Getting a multimodal-MRI tumour segmentation model to run on a 5-watt NVIDIA Jetson Nano, without losing the accuracy that makes it worth using.
Input MRI, ground truth, model prediction, and the overlap of the two for a representative case (Dice 0.95).
How it works
- The input is multimodal MRI. Each slice is stacked with its two neighbours so a fast 2D network still gets some depth context.
- It trains with a tuned Focal-Dice loss that leans on recall, since missing tumour tissue is worse than over-segmenting it.
- The trained model is exported to ONNX and compiled to a TensorRT FP16 engine, then run on the Jetson Nano.
- A lighter MobileNetV2-UNet version trades a little accuracy for about 50 times less compute.
Results
- 87.37% Dice on BraTS 2021 with test-time augmentation, running on a workstation.
- On the Jetson Nano: 83.08% Dice, 82.79% recall, 53.56 ms per inference (18.6 FPS), and 5.08 W.
- Zero-shot on unseen BraTS 2019 data: 80.15% Dice, 88.26% recall.
- The lighter MobileNetV2-UNet runs at 134.5 FPS from a 5.2 MB engine.
- The work was presented as a paper at the ICNGSMCA-26 international conference in Bengaluru, July 2026.
In code
for imgs, masks in loader: # 2.5D: slice + its 2 neighbours
logits = model(imgs.to(device))
loss = 0.5 * focal(logits, masks) + 0.5 * dice(logits, masks)
loss = loss * recall_weight # push recall over precision
loss.backward(); opt.step(); opt.zero_grad()▊ Focal-Dice loss, tuned to favour recall so the model does not miss tumour tissue.
Certificate
Paper-presentation certificate from ICNGSMCA-26. You can read it right here.
Comments
Thoughts or questions on this project? Leave a note below.
Loading comments…