Product, FYP, Top 10 of 160

Radisist: Medical Imaging AI Platform

AI radiology platform that routes a scan to the right model, segments it, and writes the report.

Final year project, University of Management and Technology. Placed in the top 10 of 160 projects.

Radisist takes a medical image, works out what kind of scan it is, sends it to the model trained for that modality, produces a segmentation mask and a heatmap, and then writes a structured radiology report from the result. The point was to remove the step where a human has to pick the correct model before anything useful happens.

The system covers 7 imaging modalities. A BiomedCLIP-based router classifies the incoming scan, and per-modality UNet++ segmentation models handle the actual analysis. Every run is persisted with its routing decision, classification output, segmentation result, heatmap, and an audit trail, so a report can always be traced back to the exact models that produced it.

Results

Modality router test accuracy
100%
Router training images
14,000
Segmentation accuracy
95%
Dice score
88.5%
Imaging modalities
7

How a scan flows through the system

  • The user signs in and lands on an upload workspace.
  • The Django backend serves sample images per modality so a scan can be tried without uploading patient data.
  • The router returns a modality recommendation with its confidence.
  • Full analysis runs the matched segmentation model and generates a heatmap.
  • The routing result, classification result, segmentation mask, heatmap, and audit trail are all written to PostgreSQL.
  • A structured AI report is generated from the stored results.

Architecture

The repository is a monorepo with three deployable pieces. A legacy standalone FastAPI pipeline holds the original inference code and is still used for direct model runs. A Django backend owns authentication, scans, reports, and the pipeline endpoints, and is the service the product actually talks to. A React frontend provides the clinician-facing workspace.

Models

The trained models are published to Hugging Face rather than baked into the image, so the serving layer pulls versioned weights and the training work stays reproducible and separately citable.

Stack

Models
PyTorchBiomedCLIPUNet++segmentation-models-pytorch
Backend
DjangoDjango REST FrameworkFastAPIPostgreSQL
Frontend
React
Distribution
Hugging Face Hub