🌟 Summary
This release (v8.3.128) brings major improvements to object tracking reliability, multi-GPU training, and documentation accessibility, while also enhancing compatibility and user experience across various platforms and features. 🚀🛠️🌍
📊 Key Changes
-
Object Tracking & ReID Enhancements
- Expanded and improved tests for object tracking, covering more Global Motion Compensation (GMC) methods and ReID (Re-Identification) models.
- Simplified and made feature extraction more robust for object detection and tracking, especially for BoT-SORT tracker compatibility.
- Improved tracker initialization and feature handling for more reliable tracking results.
-
Multi-GPU & Device Handling
- Added stronger checks and assertions for multi-GPU (Distributed Data Parallel) training, ensuring correct CUDA device usage and preventing misconfigurations.
- Improved device selection logic for post-training validation, making GPU usage more consistent and reliable.
-
Platform Compatibility
- Blocked unsupported PaddlePaddle exports on NVIDIA Jetson devices, providing clear error messages to avoid confusion.
- Enhanced TensorRT inference compatibility on Jetson by supporting Python versions up to 3.8.10, reducing errors with NumPy.
-
VisualAISearch & CLIP Integration
- Switched VisualAISearch to use Ultralytics' own CLIP implementation, improving compatibility and reducing third-party dependencies.
- Updated documentation for VisualAISearch with clear parameter tables for easier setup.
-
Documentation & Internationalization
- Added a robust language switcher with country flags and improved navigation for multilingual documentation.
- Expanded documentation language support to include 13 languages, making resources more accessible globally.
- Updated TensorRT export documentation to recommend the latest calibration method ("MINMAX_CALIBRATION") for better performance.
- Included MNN model format in Raspberry Pi 5 YOLO11 benchmarks for more comprehensive comparisons.
- Ensured HTML templates are included in package distribution for improved solution support.
🎯 Purpose & Impact
- Greater Reliability: More robust tracking and multi-GPU training reduce errors and improve performance for advanced users and large-scale projects.
- Better Compatibility: Smoother experience on edge devices (like Jetson and Raspberry Pi) and with various Python versions, making Ultralytics models more versatile.
- Simplified Setup: Reduced dependency complexity for VisualAISearch and clearer documentation make it easier for all users to get started and troubleshoot.
- Global Accessibility: Multilingual documentation and improved navigation empower users worldwide to learn and use Ultralytics tools effectively.
- User Guidance: Clearer error messages and updated docs help prevent common pitfalls, saving users time and frustration.
Overall, this update strengthens Ultralytics' commitment to reliability, accessibility, and ease of use for both developers and end users. 🌟
What's Changed
- Skip
paddlepaddle
export on NVIDIA Jetson by @lakshanthad in #20490 - Add MINMAX_CALIBRATION info to TensorRT Doc by @lakshanthad in #20489
- Add
templates
folder in thepyproject.toml
package-data by @RizwanMunawar in #20484 - Mkdocs language switcher by @glenn-jocher in #20494
- Fix language switcher links by @glenn-jocher in #20501
- Fix Python version to downgrade
numpy
for TensorRT inference on JetPack 5 by @lakshanthad in #20485 - Update raspberry-pi.md by @erfan-zekri in #20495
- Fix language switch HTML solution with JS by @glenn-jocher in #20504
- Include arguments details in the
VisualAISearch
documentation by @RizwanMunawar in #20507 - Add checks for multi-GPU training by @Y-T-G in #20516
- Use original
CLIP
module forsimilarity_search
by @RizwanMunawar in #20513 - Fix DDP training by @Y-T-G in #20502
ultralytics 8.3.128
Fix ReID feature shape check and add tests by @Y-T-G in #20499
Full Changelog: v8.3.127...v8.3.128