Spring Annuals Trial HarnessHabitat NZ · technical demo by EmerTech

Reports

Every file a run produces, generated on demand and carrying its own provenance.

Built for a hearing, not a dashboard

A count is only worth the trail behind it, so every export here travels with the manifest: which models ran and on what versions and licences, which of them ran live inference and which drew a simulated error profile, the tiling every arm shared, the exact matching rule a detection had to satisfy to call itself a hit, and the licence and attribution of every image the number came from. Licence and access ride along per row, not in a header block, because a spreadsheet row that escapes this app has to stay defensible on its own. Coordinates are image pixels, and the GeoJSON says so on every feature rather than quietly implying a map projection.

yw1mismd

ERROR4 Sept 2026, 12:07 amOpen run →
Frames
3
18 cells run
Model arms
6
Detections
0
Cost
—
0 ms
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILECountGDSIMULATED PROFILEGrounding DINO (open Swin-B)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILE
6 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), CountGD, Grounding DINO (open Swin-B), OWLv2 (image-conditioned one-shot), Gemini Flash (tiled) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

18 cells failed and contributed no detections. Treat those counts as absent, not as zero — the manifest lists each failure with its error.

llgx16vj

ERROR3 Sept 2026, 11:57 pmOpen run →
Frames
2
12 cells run
Model arms
6
Detections
0
Cost
—
0 ms
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILECountGDSIMULATED PROFILEGrounding DINO (open Swin-B)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILE
6 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), CountGD, Grounding DINO (open Swin-B), OWLv2 (image-conditioned one-shot), Gemini Flash (tiled) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

12 cells failed and contributed no detections. Treat those counts as absent, not as zero — the manifest lists each failure with its error.

1nabjud4

ERROR3 Sept 2026, 11:48 pmOpen run →
Frames
3
18 cells run
Model arms
6
Detections
0
Cost
—
0 ms
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILECountGDSIMULATED PROFILEGrounding DINO (open Swin-B)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILE
6 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), CountGD, Grounding DINO (open Swin-B), OWLv2 (image-conditioned one-shot), Gemini Flash (tiled) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

18 cells failed and contributed no detections. Treat those counts as absent, not as zero — the manifest lists each failure with its error.

lujssp9m

DONE3 Sept 2026, 11:47 pmOpen run →
Frames
3
3 cells run
Model arms
1
Detections
337
Cost
—
3.5 s
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
SAM 3.1 (exemplar + concept)SIMULATED PROFILE
1 simulated arm in this run
SAM 3.1 (exemplar + concept) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

4es75kuz

ERROR3 Sept 2026, 11:44 pmOpen run →
Frames
1
6 cells run
Model arms
6
Detections
0
Cost
—
0 ms
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILECountGDSIMULATED PROFILEGrounding DINO (open Swin-B)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILE
6 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), CountGD, Grounding DINO (open Swin-B), OWLv2 (image-conditioned one-shot), Gemini Flash (tiled) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

6 cells failed and contributed no detections. Treat those counts as absent, not as zero — the manifest lists each failure with its error.

j0ycxvqu

ERROR3 Sept 2026, 11:32 pmOpen run →
Frames
2
12 cells run
Model arms
6
Detections
0
Cost
—
0 ms
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · Excess Green prefilter on
Prompt
“tiny flower . small plant”
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILECountGDSIMULATED PROFILEGrounding DINO (open Swin-B)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILE
6 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), CountGD, Grounding DINO (open Swin-B), OWLv2 (image-conditioned one-shot), Gemini Flash (tiled) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

12 cells failed and contributed no detections. Treat those counts as absent, not as zero — the manifest lists each failure with its error.

seed-reference-bakeoff

DONE1 Sept 2026, 12:00 pmOpen run →
Frames
10
80 cells run
Model arms
8
Detections
25,067
Cost
—
157.8 s
Tiling
512 px tiles · 20% overlap · merge at IoS 0.3 · no prefilter
Arms
RF-DETR Small/Medium (+SAHI)SIMULATED PROFILESAM 3.1 (exemplar + concept)SIMULATED PROFILEYOLO26-s/m + P2 head (1280–1536, SAHI)SIMULATED PROFILEGeCo2SIMULATED PROFILECountGDSIMULATED PROFILET-Rex2 (interactive visual prompt)SIMULATED PROFILEGemini Flash (tiled)SIMULATED PROFILEOWLv2 (image-conditioned one-shot)SIMULATED PROFILE
8 simulated arms in this run
RF-DETR Small/Medium (+SAHI), SAM 3.1 (exemplar + concept), YOLO26-s/m + P2 head (1280–1536, SAHI), GeCo2, CountGD, T-Rex2 (interactive visual prompt), Gemini Flash (tiled), OWLv2 (image-conditioned one-shot) produced no live inference. Their rows come from a seeded error profile built from published benchmarks — a prior about what those models would plausibly do, never a measurement of what they did on this imagery. The manifest names them and says so in full.

Human annotations

Point CSV in DotDotGoose's own shape — image name, x, y, class — so the ground truth stays portable and stays yours.

A box annotation exports as its centre — a point tool has nowhere to put width and height — and a hard negative travels as the class hard-negative, because DotDotGoose has exactly one class column. The file is filed under a run id for naming only; the points belong to the image and the observer, and the contents are identical whichever run they are fetched under.