You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
daaam_ros/src/daaam_ros/nodes/daaam_node.py — Main ROS 2 node that instantiates the pipeline
Service Architecture
The system is composed of loosely-coupled services orchestrated by the PipelineOrchestrator:
Service
File
Responsibility
SegmentationService
segmentation/services.py
SAM / FastSAM / SAM2 segmentation
TrackingService
tracking/services.py
BotSort temporal tracking
AssignmentService
assignment/services.py
Frame selection and segment-to-frame assignment for grounding
GroundingService
grounding/services.py
MMLLM / DAM inference for semantic labeling
SceneGraphService
scene_graph/services.py
Hydra DSG integration and correction management
Each service follows the convention: <service>/services.py (main logic), <service>/models.py (data models), <service>/schemas.py (schemas), <service>/interfaces.py (abstract base classes).
Worker Pattern
Services support pluggable worker implementations selected at runtime via configuration:
Assignment Workers (assignment/workers/)
Worker
Strategy
min_frames.py
Greedy minimization of selected frames to cover all tracked masks
min_frames_max_size.py
Minimum frames + slack, optimizes for object saliency (CVXPY MIP)
Grounding Workers (grounding/workers/)
Worker
Backend
dam_grounding.py
Describe Anything Model (DAM) — multi-image batch grounding