Camera traps are vital for large-scale biodiversity monitoring, yet accurate automated analysis remains challenging due to diverse deployment environments. While the computer vision community has mostly framed this challenge as cross-domain generalization, this perspective overlooks a primary challenge faced by ecological practitioners: maintaining reliable recognition at the fixed site over time, where the dynamic nature of ecosystems introduces profound temporal shifts in both background and animal distributions. To bridge this gap, we present the first unified study of camera-trap species recognition over time. We introduce a realistic benchmark comprising 546 camera traps with a streaming protocol that evaluates models over chronologically ordered intervals. Our end-user-centric study yields four key findings. (1) Biological foundation models (e.g., BioCLIP 2) underperform at numerous sites even in initial intervals, underscoring the necessity of site-specific adaptation. (2) Adaptation is challenging under realistic evaluation: when models are updated using past data and evaluated on future intervals (mirrors real deployment lifecycles), naive adaptation can even degrade below zero-shot performance. (3) We identify two drivers of this difficulty: severe class imbalance and pronounced temporal shift in both species distribution and backgrounds between consecutive intervals. (4) We find that effective integration of model-update and post-processing techniques can largely improve accuracy, though a gap from the upper bounds remains. Finally, we highlight critical open questions, such as predicting when zero-shot models will succeed at a new site and determining whether/when model updates are necessary. Our benchmark and analysis provide actionable deployment guidelines for ecological practitioners while establishing new directions for future research in vision and machine learning.
Figures & tables
Figure 1: (a). Temporal shifts: Even at a fixed site, foreground and background appearances evolve over time due to changing seasons, weather, and animal distribution. (b). Streaming evaluation: Accumulated ⋆ model is fine-tuned with training data up to the current interval and evaluated on the test data of the next interval. For reference, an Oracle ⋆ model is fine-tuned with the union of training data from all time intervals at a site and evaluated on the test data of all intervals. ( ⋆ : our recipe Sec. 4.4 ).
Figure 2: (a). StreamTrap statistics . Top row: histograms of the image, class, and time span; Bottom row: histograms of temporal shift (TCDS, defined in Sec. 4.3 ) and class imbalance metrics (defined in Sec. 3.1 ). (b). Streaming evaluation protocol: models are continually fine-tuned on the labeled data observed so far and evaluated on future unseen data.
Figure 3: (a). Zero-shot accuracy across camera traps. Green : >90% accuracy; orange : <80% . (b). Accuracy difference between oracle naive fine-tuning and zero-shot. Blue : oracle outperforms zero-shot; red : zero-shot is better. (c). Accuracy difference between oracle fine-tuning with our adaptation recipe (Oracle ⋆ ) and zero-shot.
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
C19
C20
Avg
ZS
97.7
92.3
90.9
89.1
86.1
84.3
81.5
81.2
78.3
77.1
75.8
73.8
70.1
69.8
67.1
66.0
62.2
61.5
56.3
55.8
75.8
Accum
73.6
77.1
50.0
71.7
46.7
33.3
56.7
73.0
45.0
25.0
57.0
50.0
68.2
60.8
66.7
11.4
61.7
58.0
33.3
45.7
53.2
Δ
24.1
15.2
40.9
17.4
39.4
51.0
24.8
8.2
33.3
52.1
18.8
23.8
1.9
9.0
0.4
54.6
0.5
3.5
23.0
10.1
–
Accum ⋆
98.7
89.9
89.9
90.8
79.4
79.2
83.4
88.3
81.0
78.7
76.9
70.1
79.4
75.4
86.9
76.6
88.9
71.3
76.7
82.6
82.2
Δ
1.0
2.4
1.0
1.7
6.7
5.1
1.9
7.1
2.7
1.6
1.1
3.7
9.3
5.6
19.8
10.6
26.7
9.8
20.4
26.8
–
Oracle ⋆
98.7
96.4
94.5
96.6
87.8
91.5
91.0
91.0
87.3
82.0
84.3
88.5
91.0
86.6
91.0
83.9
93.8
89.6
89.9
93.4
90.4
Table 1: Accuracy difference ( Δ ) between zero-shot (ZS) and three fine-tuning methods: naive accumulated fine-tuning (Accum), accumulated fine-tuning with our adaptation recipe (Accum ⋆ ), fine-tuned on all training data at a site with our recipe (Oracle ⋆ ). Blue ( red ) denotes improvement (degradation) relative to ZS.
Figure 4: Illustration of temporal shifts. (Top) Images from a camera trap showing shifting context (vegetation, lighting, weather) over time. (Bottom) TCDS comparison of two camera traps (pie chart: class frequency per interval): the left camera exhibits much higher temporal shifts ( TCDS=0.7712 ) than the right one ( TCDS=0.1166 ).
Figure 5: Performance gain ( ΔAccum⋆ ) of calibration, weight interpolation, and model selection over the Accum ⋆ baseline. They are applied on top of Accum ⋆ . More results can be found in Sec. 0.C.3 .
Figure 6: (a). Non-OOD scores (MSP) moderately correlate with zero-shot accuracy. (b). The Adapt-or-Skip problem: should we adapt at this interval or not?.
Stage
0%
25%
50%
75%
100%
Acc.
76.2
73.1
77.8
82.7
84.9
Table 2: Accum ⋆ is frozen at a specific interval ( e.g . , 25% means frozen after adaptation with the first 25% intervals) and evaluated on all future intervals. Averaged across 8 camera traps with long deployment durations spanning more than one year.
Appendix figures & tables13 assets
Supplementary material from the paper’s appendix.
Appendix
BioCLIP 2 [ 19 ]
CLIP [ 42 ]
84.3
72.3
Appendix
Table 3: Zero-shot baseline selection. Average per-class accuracy (%) across all camera traps in the StreamTrap . BioCLIP 2 is selected as the zero-shot baseline due to its superior performance.
Hyperparameter
Value
Optimizer
AdamW
Max Learning Rate
2.5×10−5
Min Learning Rate
4.17×10−7
Weight Decay
1×10−4
LR Schedule
Cosine Annealing ( Tmax=60 )
Batch Size
32
Appendix
Table 4: Training configuration for fine-tuning BioCLIP 2.
Loss
FT Method
Accuracy
CE
Full
85.9
BSM [ 43 ]
Full
85.1
CB-Focal [ 12 ]
Full
83.2
CDT [ 61 ]
Full
83.2
CE
LoRA [ 22 ]
86.0
CE
VPT [ 25 ]
76.6
Appendix
Table 5: Ablation of imbalance losses and PEFT fine-tuning (FT) methods. Average per-class accuracy (%) is reported. BSM and LoRA achieve the best performance. Our proposed adaptation recipe ( ⋆ ) is highlighted in blue .
Closed-Set
Open-Set
Closed-Set + Rare Species
Zero-shot
82.5
37.8
73.1
Accum ⋆
83.7
76.7
73.4
Oracle ⋆
88.3
86.1
66.8
Appendix
Table 6: Average per-class accuracy (%) under relaxed evaluation assumptions. Open-Set expands the vocabulary to all 1,096 classes across StreamTrap . Rare Species adds rare classes (fewer than 10 samples per interval) to the test set.
Figure 7: (a.) Detailed accuracy difference between oracle fine-tuning with our adaptation recipe (Oracle ⋆ ) and zero-shot ( Fig. 3 in the main paper). (b.) Qualitative examples of camera traps with severely degraded visual quality (e.g., blur, exposure artifacts, and sensor noise).
Figure 8: Performance gain ( Δaccum⋆ ) of calibration, weight interpolation, and model selection over the accum ⋆ baseline across 50 cameras. They are applied on top of accum ⋆ .
Accuracy
ΔOracle⋆
Oracle ⋆
87.0
–
Accum ⋆
79.8
7.1
+ Calibration
83.7
3.3
+ Weight Interpolation
83.2
3.8
+ Model Selection
86.1
0.9
+ Best Post-Processing
86.7
0.2
Appendix
Table 7: Extended post-processing results by average per-class accuracy (%). Δoracle⋆ denotes remaining gap to Oracle ⋆ (87.6 %). Each method is applied on top of accum ⋆ . The last row selects the best-performing post-processing method per camera trap.
Figure 9: Comparison of adapt-or-not methods on our balanced benchmark. Each interval is labeled as either a Skip case (where not adapting is correct) or an Adapt case (where adapting is correct), with Combined reporting overall accuracy across all intervals. Methods include Random, MSP-based, Feature-based, Always Adapt, Always Skip, and an Oracle upper bound. (a). Balanced accuracy under Skip, Adapt, and Combined evaluation. (b.) Binary decision accuracy of each method.
Figure 10: Detailed camera trap data processing pipeline. Raw camera trap images and metadata are filtered, temporally chunked, and cropped into standardized animal patches, producing per-camera chronological streams for online continual evaluation.
Figure 11: Illustration of burst images from a single sequence. Upon detecting motion, the camera captures multiple frames in rapid succession, producing images that share the same environment, background, and animal appearance.
Original Dataset
StreamTrap
Dataset
Continent
# Img
# Cls
# Traps
# Img
# Cls
# Traps
Caltech Camera Traps [ 7 ]
N. America
243.1K
22
140
37.6K
13
15
Idaho Camera Traps [ 23 ]
N. America
1535.7K
62
276
43.6K
10
15
NA Camera Trap Img [ 51 ]
N. America
3280.8K
59
551
964.9K
20
52
NZ Trail Cam. Animals [ 38 ]
Oceania
2045.8K
98
2469
543.9K
41
139
Orinoquía Camera Traps [ 58 ]
S. America
112.2K
58
49
20.1K
16
6
Appendix
Table 9: Summary of dataset statistics from the selected original LILA BC sources and StreamTrap after applying the proposed data processing and filtering pipeline. Datasets marked with * indicate datasets grouped under the unified project Snapshot Safari 2024 Expansion [ 40 ] . Image counts are reported in thousands (K) with one-decimal precision.
Dataset
Camera Trap
Index C
Dataset
Camera Trap
Index C
Snapshot APNR
K082
1
Snapshot Serengeti
L06
59
NA Camera Trap Img
lebec_CA-19
2
NZ Trail Cam. Animals
EFH_HCAMH02
60
Snapshot Madikwe
G08
3
NZ Trail Cam. Animals
EFD_DCAMC05
61
NZ Trail Cam. Animals
EFH_HCAMF12
4
NZ Trail Cam. Animals
EFH_HCAMC06
62
Snapshot Serengeti
G13
5
Orinoquía Camera Traps
M04
63
NZ Trail Cam. Animals
PS1_CAM7709
6
NZ Trail Cam. Animals
EFH_HCAMD10
64
Appendix
Table 10: Camera trap index reorganized by the new camera index. Each camera trap is assigned an index Ci (e.g., C1 , C2 ) used to reference camera traps in figures and tables throughout the paper.
Camera
# Images
# Intervals
# Classes
Snapshot APNR
13U
6,329
23
9
6U
2,081
10
8
BOSP
1,759
6
6
JJ5
4,560
21
9
JJ6
3,223
16
10
Appendix
Table 11: StreamTrap overall camera trap statistics.
Academy of Computer Science and Software Engineering University of Johannesburg Johannesburg, South Africa · Department of Electrical Engineering Linköping University Linköping, Sweden