How mintenecha/wildlife_monitor works
Wildlife Monitor processes camera-trap images for species recognition and animal localisation, saves detections and visual overlays, and presents them for review and comparison. Its three documented detection configurations preserve distinct recognition/localisation approaches; a separate behaviour-modeling branch uses MegaDetector count data to train sequence models. The dashboard also exposes upload, map, settings, and export workflows. Core pipeline internals and most dashboard views were not sampled, so those links reflect documented capabilities and visible routing rather than uninspected call details.
Main entry points: pipelines Pipeline Configurations · train.py Training Data Builder · compare.py Pipeline Comparator · app.py Dashboard Router
Components 24
Data and Configuration
- Species Loader
wildlife_monitor/data/loader.py - Runtime Settings
wildlife_monitor/config/settings.py
Detection Pipelines
- Pipeline Configurations
wildlife_monitor/pipelines - BioCLIP Recognition
wildlife_monitor/models/bioclip.py - SAM 1 Segmentation
wildlife_monitor/models/sam1.py - SAM 3 Segmentation
wildlife_monitor/models/sam3.py - YOLO Detection
wildlife_monitor/models/yolo.py - MegaDetector Counts
wildlife_monitor/models/megadetector.py
Results and Dashboard
- Detection Records
wildlife_monitor/utils/records.py - Overlay Rendering
wildlife_monitor/utils/visualisation.py - Detection CSVs and Overlays
- Pipeline Comparator
wildlife_monitor/pipelines/compare.py - Dashboard Router
wildlife_monitor/dashboard/app.py - Dashboard Views
wildlife_monitor/dashboard/views - Dashboard Data Access
wildlife_monitor/dashboard/data_access.py
Behaviour Modeling
- Training Data Builder
wildlife_monitor/pipeline2/train.py - Sequence Features
wildlife_monitor/pipeline2/feature_extractor.py - Sequence Builder
wildlife_monitor/pipeline2/sequence_builder.py - Behaviour Models
wildlife_monitor/pipeline2/models.py - Model Trainer
wildlife_monitor/pipeline2/train.py
Other components
- Monitor User
- Pipeline Runner
scripts/run_pipeline.py - Camera Trap Dataset
- Model Checkpoints
Connections 28
- Monitor User → Pipeline Runner: selects run
- Pipeline Runner → Pipeline Configurations: dispatches pipeline
- Camera Trap Dataset → Species Loader: provides metadata/images
- Pipeline Configurations → Species Loader: loads species images
- Pipeline Configurations → BioCLIP Recognition: recognizes species
- Pipeline Configurations → SAM 1 Segmentation: segments with SAM 1
- Pipeline Configurations → SAM 3 Segmentation: segments with SAM 3
- Pipeline Configurations → YOLO Detection: localizes animals
- Pipeline Configurations → MegaDetector Counts: counts animals
- Model Checkpoints → SAM 1 Segmentation: supplies weights
- Model Checkpoints → SAM 3 Segmentation: supplies gated weights
- Pipeline Configurations → Detection Records: produces detections
- Pipeline Configurations → Overlay Rendering: renders overlays
- Pipeline Configurations → Detection CSVs and Overlays: writes outputs
- Monitor User → Pipeline Comparator: requests comparison
- Pipeline Comparator → Pipeline Configurations: runs each configuration
- Pipeline Comparator → Detection CSVs and Overlays: reads and writes comparison
- Monitor User → Dashboard Router: uses dashboard
- Dashboard Router → Dashboard Views: routes pages
- Dashboard Router → Dashboard Data Access: loads selector data
- Dashboard Views → Dashboard Data Access: requests detection data
- Dashboard Data Access → Detection CSVs and Overlays: reads results
- Detection CSVs and Overlays → Training Data Builder: provides count detections
- Training Data Builder → Sequence Features: extracts features
- Training Data Builder → Sequence Builder: builds sequences
- Training Data Builder → Behaviour Models: trains model
- Training Data Builder → Model Trainer: evaluates model
- Runtime Settings → Pipeline Configurations: configures runs