AEGISFlagship
AI-Enhanced Combat Triage Copilot
- Python
- PyTorch
- YOLOv8
- Whisper
- Streamlit
- Jetson
Overview & Problem
Mass-casualty triage in combat zones forces medics to make life-or-death decisions in seconds, often without connectivity. Existing software assumes a cloud, a network, and time — none of which are guaranteed at the point of injury.
AEGIS is an offline-first copilot that runs entirely on an NVIDIA Jetson at the edge, fusing real-time vision and audio to support — never replace — the medic's decision.
What I Built
A multi-model perception pipeline: YOLOv8 for casualty detection, ByteTrack and DINOv2 for re-identification across frames, MobileSAM for wound segmentation, and zero-shot CLAP audio classification for respiratory monitoring.
A Streamlit tactical dashboard with Whisper-powered voice commands for hands-free operation, rule-based SALT/TCCC decision support with human-in-the-loop confirmation, and automated 9-line MEDEVAC report generation.
Full offline inference on NVIDIA Jetson, sustaining 15–30 FPS end-to-end.
Architecture
AEGIS runs two perception paths in parallel on a single Jetson. The vision path captures frames and runs YOLOv8 detection, ByteTrack/DINOv2 re-identification, and MobileSAM wound segmentation in sequence; the audio path runs an independent CLAP zero-shot classifier for respiratory monitoring, deliberately decoupled so a stall in one path never blocks the other.
Both paths feed a rule-based SALT/TCCC decision layer that fuses them into a triage category — always surfaced as a recommendation the medic confirms, never an automated action. On confirmation, AEGIS auto-fills a 9-line MEDEVAC request. Models load once at startup, using TensorRT where a converted engine is available and falling back to PyTorch eager otherwise, to keep the worst-case memory footprint inside the Jetson's budget.
See it in action
demo reel
loading…
Key Technical Decisions & Tradeoffs
Offline-first wasn't a feature, it was the constraint that shaped everything. At the point of injury there is no guaranteed network, so every model has to run on-device within the Jetson's compute and memory envelope. That ruled out cloud-served models and forced edge-viable variants at every stage.
Each model was chosen for edge viability over raw accuracy: YOLOv8 for a strong detection baseline with TensorRT support on Jetson, and CLAP's zero-shot classification to avoid collecting and labelling a respiratory-audio dataset — trading some accuracy for the ability to ship without a custom-trained model, a deliberate call given the project's scope.
The system never acts autonomously. Every recommendation — triage category, MEDEVAC fields — requires explicit medic confirmation before anything is committed. In a life-or-death setting an automated error is worse than a slower decision, so the UX is built around keeping the human in control rather than around full automation.
Results
Sustained 15–30 FPS end-to-end inference on Jetson with no network dependency, with the full vision and audio pipelines running concurrently on-device.
The core result was proving the entire pipeline fits and runs offline on edge hardware at interactive frame rates — the exact constraint most comparable triage tools avoid by assuming a cloud connection that isn't there at the point of injury.