AEGISFlagship

AI-Enhanced Combat Triage Copilot

  • Python
  • PyTorch
  • YOLOv8
  • Whisper
  • Streamlit
  • Jetson
01

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.

02

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.

03

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…

15–30 FPS
04

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.

05

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.

06 —

Links