lenient preset¶
Recall: relaxes every threshold (conf 0.15, max_det 1500, looser NMS/association/track-init).
Use it with -c lenient, or start from a local copy with geotrax config copy. Generated from lenient.yaml.
Changed keys¶
| Key | default |
lenient |
|---|---|---|
ultralytics.conf |
0.25 |
0.15 |
ultralytics.iou |
0.7 |
0.8 |
ultralytics.max_det |
1000 |
1500 |
tracker.botsort.track_high_thresh |
0.25 |
0.2 |
tracker.botsort.new_track_thresh |
0.25 |
0.1 |
tracker.botsort.track_buffer |
30 |
45 |
tracker.botsort.match_thresh |
0.8 |
0.9 |
Full diff against default.yaml
--- default.yaml
+++ lenient.yaml
@@ -1,3 +1,20 @@
-# geo-trax pipeline configuration (default.yaml) — the single, self-contained config for
-# the entire pipeline. There are no linked sub-config files; every setting lives here.
+# geo-trax pipeline configuration — "lenient" preset (lenient.yaml).
+#
+# A recall-oriented preset: every detection and tracking threshold is relaxed so the pipeline
+# keeps as much as possible — lower confidence, a higher detection cap, more permissive NMS,
+# lower BoT-SORT track-initiation thresholds, looser association, and a longer track buffer.
+# Maximises recall — catches more vehicles including low-visibility, occluded, or closely spaced
+# ones — at the cost of more false positives. Useful for exploratory or crowded scenes.
+#
+# Note: for NMS iou and the tracker's match_thresh, a HIGHER value is the more permissive one
+# (iou is the overlap needed to suppress a box; match_thresh is a 1-IoU cost ceiling).
+#
+# Differs from default.yaml:
+# ultralytics.conf: 0.25 -> 0.15
+# ultralytics.max_det: 1000 -> 1500
+# ultralytics.iou: 0.7 -> 0.8
+# tracker.botsort.track_high_thresh: 0.25 -> 0.2
+# tracker.botsort.new_track_thresh: 0.25 -> 0.1
+# tracker.botsort.match_thresh: 0.8 -> 0.9
+# tracker.botsort.track_buffer: 30 -> 45
#
@@ -5,7 +22,7 @@
# Instead, work with a local copy:
-# geotrax config show # show where this file lives and which presets are available
-# geotrax config show default # print this file's full contents to the terminal
-# geotrax config copy # copy the presets into the current directory as <name>_copy.yaml
+# geotrax config show # show where this file lives and which presets are available
+# geotrax config show lenient # print this file's full contents to the terminal
+# geotrax config copy # copy the presets into the current directory as <name>_copy.yaml
# Then pass your edited copy to any command with -c, e.g.:
-# geotrax extract video.mp4 -c default_copy.yaml
+# geotrax extract video.mp4 -c lenient_copy.yaml
#
@@ -283,5 +300,5 @@
# Detection / inference
- conf: 0.25 # (float) object confidence threshold for detection; [0.0, 1.0] — CLI: --conf
- iou: 0.7 # (float) IoU threshold for NMS; [0.0, 1.0]
- max_det: 1000 # (int) maximum number of detections per image; [1, inf)
+ conf: 0.15 # (float) object confidence threshold for detection; [0.0, 1.0] — CLI: --conf
+ iou: 0.8 # (float) IoU threshold for NMS; [0.0, 1.0] — raised (recall preset): more permissive NMS, keeps more overlapping/adjacent boxes
+ max_det: 1500 # (int) maximum number of detections per image; [1, inf)
classes: [0,1,2,3] # (int | list[int]) filter by class id(s); 0=car, 1=bus, 2=truck, 3=motorcycle — CLI: --classes
@@ -415,7 +432,7 @@
tracker_type: botsort # Tracker backend; botsort enables GMC and optional ReID; [botsort, bytetrack, ocsort, deepocsort, fasttrack, tracktrack]
- track_high_thresh: 0.25 # Detection confidence threshold for first-stage (high-confidence) association; [0.0, 1.0]
+ track_high_thresh: 0.2 # Detection confidence threshold for first-stage (high-confidence) association; [0.0, 1.0] — lowered (recall preset) to match conf=0.15
track_low_thresh: 0.1 # Detection confidence threshold for second-stage (low-confidence) recovery; [0.0, 1.0]
- new_track_thresh: 0.25 # Minimum confidence to initialise a new track; higher reduces false track initiations; [0.0, 1.0]
- track_buffer: 30 # Frames to keep a lost track alive before deletion; higher tolerates longer occlusions; [1, inf)
- match_thresh: 0.8 # Max association cost (1 - IoU) for track-detection matching; higher = looser (accepts lower-IoU matches); [0.0, 1.0]
+ new_track_thresh: 0.1 # Minimum confidence to initialise a new track; higher reduces false track initiations; [0.0, 1.0] — lowered (recall preset) so low-conf detections start tracks
+ track_buffer: 45 # Frames to keep a lost track alive before deletion; higher tolerates longer occlusions; [1, inf) — raised (recall preset) for crowded/occluded scenes
+ match_thresh: 0.9 # Max association cost (1 - IoU) for track-detection matching; higher = looser (accepts lower-IoU matches); [0.0, 1.0] — raised (recall preset): hold tracks through larger displacement
fuse_score: true # Fuse detection confidence with the IoU cost matrix; improves weak-detection robustness; [true, false]