- SAM + XMEM // TRACKING
- PERSISTENT IDENTITY
- API-FIRST
MONAD
EVERY OBJECT, SOVEREIGN
Robots need to understand individual objects, not just detect them. MONAD bridges detection and manipulation with persistent segmentation and tracking. Click once — SAM initializes. XMem propagates. Persistent object identity across 30+ frames, feeding grasping, navigation, and annotation workflows.
MODULE STATUS: ACTIVETracking Persistence
30+
- DIVISION
- ANIMA
- WAVE
- W1
- DOMAIN
- UNDERSTANDING
- WAVE 1 // ANIMA SUITE
- SEGMENTATION & TRACKING
OBJECTS NEED IDENTITY, NOT JUST DETECTION
Robots need to understand individual objects, not just detect them. One button is different from another. But interactive segmentation today is one-shot: click, get a mask, then what? If the object moves, you're starting over.
Manufacturing, pick-and-place, and manipulation demand persistent object identity. You click once at the start of a task, and the system should follow that specific object through the rest of the scene, accounting for motion, occlusion, and lighting changes. MONAD solves this.
WHAT MONAD DELIVERS
MONAD is the productized segmentation and tracking system that bridges detection and manipulation. It takes a point or box prompt and returns persistent object masks.
CAPABILITIES
- Interactive segmentation: initialize from point clicks, box guidance, or detector outputs
- Persistent tracking: same object maintains stable ID across 30+ frames
- SAM + XMem pipeline: paper-faithful implementation derived from IST-ROS research
- Dual backends: demo for deterministic testing, paper (sam_xmem) for production
- REST API endpoints: /segment, /track/init, /track/step, /track/status, /config, /health
- MLX Apple Silicon (M1–M5, ~200ms on M5, 4× M1) + CUDA + CPU support
- Docker profiles: CPU, GPU, Metal — production-ready deployment
WHY THIS IS HARD
Segmentation-only systems don't track. Pure trackers don't segment. Combining them requires careful initialization and frame-to-frame consistency:
- 01Mask propagation drifts over time — XMem alone doesn't initialize from zero, you need SAM for that
- 02Frame-to-frame consistency demands temporal memory management with bounded buffers
- 03Multiple objects require collision-free mask propagation without ID switching
- 04Production inference paths differ from research notebooks — need deterministic validation
- 05Real-time performance requires careful device abstraction across MLX, CUDA, and CPU
MONAD ships both a research path (sam_xmem, paper-faithful) and a deterministic demo backend. It bundles model downloader, health checks, baseline runner, and structured outputs.
REAL HARDWARE PERFORMANCE
Measured with SAM + XMem pipeline:
| METRIC | VALUE |
|---|---|
| Tracking Persistence | 30+ frames continuous |
| SAM Initialization | ~200ms (M5), ~50ms (RTX 4090) |
| XMem Propagation | ~80ms/frame (M5), ~15ms/frame (RTX 4090) |
| Apple M5 (MLX) | ~200ms init, ~80ms/frame (4× M1) |
| RTX 4090 (CUDA) | ~50ms init, ~15ms/frame |
| API Endpoints | 7 REST endpoints |
| Docker Profiles | CPU, GPU, Metal |
WHAT'S BUILT TODAY
| COMPONENT | STATUS | NOTES |
|---|---|---|
| Core models | COMPLETE | SAM + XMem pipeline, production-ready weights |
| API layer | IN PROGRESS | Public API, pending dataset infrastructure |
| Demo Backend | COMPLETE | Deterministic, locally testable |
| Paper Backend (sam_xmem) | COMPLETE | Integrated, target-hardware ready |
| REST API | COMPLETE | /segment, /track/init, /track/step, /track/status |
| Run Registry | COMPLETE | Overlay video, masks, metrics JSON |
| Quality Gates | COMPLETE | ruff, pytest, mypy passing |
| Docker Profiles | COMPLETE | CPU, GPU, Metal production profiles |
WHERE MONAD DEPLOYS
- APP_01
ROBOT GRASPING
One-click object initialization into stable tracking for pick-and-place.
- APP_02
ASSEMBLY AUTOMATION
Track individual parts through assembly steps without ID swaps.
- APP_03
HUMAN-IN-THE-LOOP ANNOTATION
Operators mark objects once, system tracks them for labeling.
- APP_04
WAREHOUSE AUTOMATION
Persistent bin and pallet tracking across camera views.
- APP_05
MANIPULATION RESEARCH
Test segment-and-track hypotheses without reimplementing inference.
- APP_06
NAVIGATION
Persistent understanding of obstacles through the scene.
UNDER THE HOOD
FOUNDATION: IST-ROS
- IST-ROS flexible segmentation framework (SoftwareX 2025)
- SAM for interactive initialization + XMem for video object tracking
- Paper-faithful implementation with production inference paths
- Deterministic core suitable for safety-critical systems
MONAD IMPLEMENTATION
- Python runtime with MLX (Apple Silicon) and CUDA support
- Dual backend: demo (deterministic) + sam_xmem (production)
- Health checks and readiness probes
- Run registry with structured artifact output
INTEGRATION POINTS
- Feeds object masks to manipulation planning modules
- Provides persistent tracking to DAEMON (trajectory observation)
- Outputs segmentation artifacts for downstream annotation (LOGOS)
RESEARCH BASIS
- [01]IST-ROS: A flexible object segmentation and tracking framework for robotics — SoftwareX 2025