Skip to content

v2.6.1: Bug fixes and maintenance

Latest

Choose a tag to compare

@tstanczyk95 tstanczyk95 released this 25 Sep 10:59

Summary

Trackers 2.6.1 fixes tracker output and mask lifecycle edge cases, restores fractional coordinates in integer-input box conversion, and reads numbered image frames in temporal order. It also prevents malformed boxes from receiving a spurious GIoU bonus and repairs URLs generated by versioned documentation deployment. The patch updates the optional detection dependency floor and refreshes the lockfile and release tooling through #599; users of OC-SORT output, integer box conversion, or the detection extra should review the migration guidance below.

Highlights

  • OC-SORT returns every supplied detection: a detection below high_conf_det_threshold now appears in update() output with tracker_id=-1 instead of disappearing. The row remains in the returned detections, though output order can differ from input order (#566).
  • McByte delivers mask removals after interruptions: removal notifications remain queued across skipped frames, duplicate timestamps, and recoverable CUDA out-of-memory failures, including tracks pruned early during timestamp updates (#568).
  • Input and scoring edge cases behave predictably: image files such as 2.jpg precede 10.jpg, integer box decoding retains fractional coordinates, and inverted boxes cannot gain an invalid positive GIoU bonus (#558, #557, #589).

Migration guide

  • OC-SORT output: if downstream code assumed low-confidence detections were absent, filter detections before update() when confidence is available, or filter the returned rows by confidence. Low-confidence rows have tracker_id=-1; detections without confidence remain eligible for association regardless of the threshold. Do not rely on output row order matching input order.
  • Integer-input box conversion: xcycsr_to_xyxy now promotes integer arrays to float64 before arithmetic for single boxes and batches, preserving fractional coordinates and avoiding integer-product overflow. Code requiring integer boxes should round or cast the decoded array explicitly; floating-point input retains its dtype, including float16.
  • Detection extra: trackers[detection] now requires inference-models>=0.36.0; update an older installed detection stack when upgrading. The final 2.6.1 lock resolves it to 0.37.0.

No other public API removal or new deprecation is present in this release range.

Notable changes

Fixed

  • McByte and Kalman state: mask-removal delivery is durable, while BoT-SORT and McByte refresh process noise for prediction and measurement noise for update instead of rebuilding the unused matrix (#568, #567).
  • OC-SORT output, box conversion, image input, and GIoU: the output and numeric corrections described above are covered by regression tests (#566, #557, #558, #589).
  • Versioned documentation URLs: Mike-deployed canonical, Open Graph, structured-data, and sitemap URLs target the /latest/ alias instead of /latest/2.6.0/ (#582).

Changed

  • Optional detection dependency: raised the inference-models minimum from 0.19.0 to 0.36.0 for the detection extra (#592).
  • Dependency lock: refreshed the applicable 2.6 dependency graph. The final lock contains cryptography 50.0.0, hydra-core 1.3.4, optuna 5.0.0, transformers 5.15.1, and uv 0.12.13. These are dependency updates, with no specific security fix claimed (#537, #542, #546, #570, #575, #581, #588, #591, #592, #599).
  • Release tooling: updated GitHub Actions and pre-commit pins, moved pre-commit autoupdates to monthly, and ignored local benchmarks/ output (#544, #550, #590, #593, 1770d65, 330a9ee).

Documentation

  • Synchronized McByte benchmark and tracker comparison tables, tracker defaults, quickstart and evaluation guidance, dataset details, README terminology, search-result titles, and video poster frames with the 2.6 release layout (#539, #547, #555, #564, #583, #585, #587).

Contributors

  • Jesús Royeth (@JESUSROYETH, LinkedIn) — fixed OC-SORT low-confidence output and McByte mask cleanup; corrected Kalman noise refresh.
  • Alexander Bodner (@AlexBodner, LinkedIn) — fixed box conversion, image-directory ordering, and documentation canonical URLs; improved release documentation.
  • Mahathir Mohammad Shuvo (@MahathirMohammadShuvo, LinkedIn) — fixed GIoU scoring for malformed boxes.
  • Jirka Borovec (@Borda, LinkedIn)) — corrected tracker documentation and McByte summaries; updated pre-commit configuration and contributed to tracker fixes.
  • Tomasz Stanczyk (@tstanczyk95, LinkedIn)) — corrected converter dtype handling after review and adapted release-branch documentation, dependency lock updates, and pre-commit changes.

Automated contributions: @claude[bot], @dependabot[bot], @pre-commit-ci[bot], Claude Fable 5, Claude Opus 5, Copilot Autofix powered by AI, Cursor, OpenAI Codex

Full changelog: 2.6.0 to 2.6.1.

What's Changed

  • release: backport bug fixes for 2.6.1 [rebase & merge] by @tstanczyk95 in #600

Full Changelog: 2.6.0...2.6.1