Skip to content

Model Zoo

This page lists every model supported by CanopyRS, grouped by pipeline stage. If you just want a ready-made configuration, see Presets. If you want to build a custom pipeline, use the tables below to pick models for each stage and reference them in your pipeline.yaml.

All checkpoints are downloaded automatically the first time a model is used.


Detectors

Detectors produce bounding boxes around individual trees.

Config file Architecture Training data Checkpoint Config
detectors/dino_swinL_multi_NQOS.yaml DINO + Swin‑L 384 Multi-resolution, multi-dataset (NeonTrees, QuebecTrees, OAM-TCD, SelvaBox) HuggingFace (CanopyRS) YAML
detectors/dino_swinL_multi_NQOS_selvamask_FT.yaml DINO + Swin‑L 384 Multi-resolution, multi-dataset (NeonTrees, QuebecTrees, OAM-TCD, SelvaBox), fine-tuned on SelvaMask HuggingFace (CanopyRS) YAML
detectors/dino_r50_single_S.yaml DINO + ResNet‑50 SelvaBox (single resolution, 6 cm/px) HuggingFace (CanopyRS) YAML
detectors/fasterrcnn_r50_single_S.yaml Faster R‑CNN + ResNet‑50 SelvaBox (single resolution, 10 cm/px) HuggingFace (CanopyRS) YAML

External models

These detectors come from third-party projects. CanopyRS wraps them so they can be used as pipeline components.

Config file Architecture Project Training data Checkpoint Config
detectors/deepforest.yaml RetinaNet + ResNet‑50 DeepForest NeonTrees DeepForest YAML

Segmenters

Segmenters produce per-tree instance masks. They can be prompted (fed bounding boxes from a detector) or unprompted (run directly on tiles).

Prompted segmenters

These models take bounding boxes as input and produce a mask for each box. Chain them after a detector.

Config file Architecture Training data Checkpoint Config
segmenters/sam2_L.yaml SAM 2 Large SA-1B (foundation model) Meta YAML
segmenters/sam3_multi_selvamask_FT.yaml SAM 3 SA-1B, fine-tuned on SelvaMask HuggingFace (CanopyRS) YAML

Note: SAM 3 requires a Hugging Face access request from Meta before first use. See Installation — SAM 3 access request for details.

Unprompted segmenters

These models perform end-to-end instance segmentation without requiring bounding box prompts.

Config file Architecture Training data Checkpoint Config
segmenters/mask2former_swinL_multi_selvamask.yaml Mask2Former + Swin‑L SelvaMask HuggingFace (CanopyRS) YAML
segmenters/maskrcnn_r50_multi_selvamask.yaml Mask R‑CNN + ResNet‑50 SelvaMask HuggingFace (CanopyRS) YAML

External models

These segmenters come from third-party projects. CanopyRS wraps them so they can be used as pipeline components.

Config file Architecture Project Training data Checkpoint Config
segmenters/detectree2_flexi.yaml Mask R‑CNN + ResNet‑101 Detectree2 Detectree2 + urban data Zenodo YAML
segmenters/detectree2_randresizefull.yaml Mask R‑CNN + ResNet‑101 Detectree2 Detectree2 Zenodo YAML

Using a model in a custom pipeline

To use any model listed above, reference its config in your pipeline.yaml:

Detector:

- detector: detectors/dino_swinL_multi_NQOS.yaml

Segmenter:

- segmenter: segmenters/sam2_L.yaml

See Configuration for the full list of parameters you can override.