How surveytools/scoutbot-two works
Scoutbot is a YOLOv8-based wildlife detection pipeline for aerial-survey imagery. The principal workflow is to submit an image through the CLI or Python API, obtain a configured model, run detection, and return a wildlife score plus localized detections. The repository also supports model fetching and registration, Core ML export, resumable multiprocess batches, and observer-based performance events. The graph reflects documented capabilities, but several internal call details are not visible in the excerpts; those links are omitted or marked unverified rather than inferred.
Main entry points: __init__.py Pipeline API · model_store.py Model fetching · _observability.py Runtime events · scoutbot.py CLI commands
Components 14
Detection workflow
- CLI commands
scoutbot/scoutbot.py - Pipeline API
scoutbot/__init__.py - YOLO detector
scoutbot/tile_batched/main.py - Scores and detections
scoutbot/__init__.py
Models and registry
- Model fetching
scoutbot/model_store.py - Model cache
scoutbot/registry/paths.py - Model registry
scoutbot/registry/__init__.py - Registry records
scoutbot/registry/schema.py - Model source
- Core ML export
scoutbot/model_store.py
Batch processing
- Resume orchestration
scoutbot/_batch_mp.py
Observability
- Observer
- Runtime events
scoutbot/_observability.py
Other components
- Image user
Connections 17
- Image user → CLI commands: runs command
README.md - CLI commands → Pipeline API: calls pipeline
scoutbot/scoutbot.py - Pipeline API → Model fetching: fetches model
scoutbot/__init__.py - Pipeline API → YOLO detector: uses detector
- Pipeline API → Scores and detections: returns results
scoutbot/__init__.py - Model fetching → Model cache: uses cache paths
scoutbot/registry/paths.py - Model fetching → Model registry: looks up and registers
scoutbot/model_store.py - Model registry → Registry records: converts records
scoutbot/registry/__init__.py - Model registry → Model cache: resolves registry path
scoutbot/registry/__init__.py - Model source → Model fetching: provides downloads
scoutbot/model_store.py - Model fetching → Core ML export: exports on demand
scoutbot/model_store.py - CLI commands → Resume orchestration: starts resumable batch
scoutbot/_batch_mp.py - Resume orchestration → Pipeline API: processes images
scoutbot/_batch_mp.py - Pipeline API → Runtime events: emits events
scoutbot/__init__.py - YOLO detector → Runtime events: emits events
scoutbot/tile_batched/main.py - Model fetching → Runtime events: emits events
scoutbot/model_store.py - Observer → Runtime events: receives events
scoutbot/_observability.py