8000 Releases · ultralytics/ultralytics · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: ultralytics/ultralytics

v8.3.149 - `ultralytics 8.3.149` Fix group-convolutions export bug for Edge TPU (#20919)

04 Jun 01:17
487e276
Compare
Choose a tag to compare

🌟 Summary

This release enhances model export compatibility, improves usability for video and visualization workflows, and expands documentation and reporting features across Ultralytics tools. 🚀

📊 Key Changes

  • Export Fix for EdgeTPU & TF.js: Resolved a bug that caused errors when exporting models with group convolutions to EdgeTPU and TensorFlow.js formats. Group convolutions are now automatically disabled for these exports.
  • Video Stream Handling Improvements: Refined how video streams and OpenCV windows are managed, preventing unwanted window closures and making quitting streams more reliable.
  • Confusion Matrix Export Upgrades: Added options to normalize and set decimal precision when exporting confusion matrices, making results easier to analyze and share.
  • Expanded IMX500 Export Support: Updated documentation and export tables to clarify that both YOLOv8n and YOLO11n models are now supported for IMX500 hardware.
  • Visualization Documentation Cleanup: Improved and clarified documentation for visualization arguments, especially for the plot() method, ensuring all options are up-to-date and easy to find.
  • YOLOv7 ONNX/TensorRT Guide Update: Made the YOLOv7 integration guide clearer and easier to follow, with improved code formatting and simplified export instructions.

🎯 Purpose & Impact

  • Smoother EdgeTPU & TF.js Deployments: Users can now export models to EdgeTPU and TF.js without running into group convolution errors, making deployment on these platforms more reliable and accessible.
  • Better Video & Window Management: Prevents accidental closure of unrelated OpenCV windows and reduces interruptions during video stream processing, improving the experience for users working with multiple video feeds.
  • Flexible Reporting: Enhanced confusion matrix exports allow for more customizable and interpretable performance reports, supporting both technical and non-technical audiences.
  • Clearer Hardware Support: Users working with Sony IMX500 hardware can confidently use the latest YOLO models, thanks to clearer documentation and expanded export support.
  • Improved Usability & Onboarding: Updated guides and documentation make it easier for both new and experienced users to leverage Ultralytics features effectively, reducing confusion and setup time.

✨ This update is all about making Ultralytics tools more robust, user-friendly, and ready for deployment across a wider range of platforms and workflows!

What's Changed

Full Changelog: v8.3.148...v8.3.149

v8.3.148 - `ultralytics 8.3.148` update `onnxslim>=0.1.56` dependency (#20905)

03 Jun 04:11
d564179
Compare
Choose a tag to compare

🌟 Summary

This release updates key dependencies and improves error handling, making model exports more reliable and troubleshooting easier for users. 🚀🔧

📊 Key Changes

  • Updated the onnxslim dependency to version 0.1.56 for ONNX and TensorFlow SavedModel exports, ensuring compatibility with the latest features and bug fixes.
  • Enhanced error handling when loading dataset caches and model weights, especially for missing modules and outdated NumPy versions.
  • Improved error messages to clearly guide users on how to resolve issues related to missing or incompatible dependencies.

🎯 Purpose & Impact

  • Boosts the reliability of exporting models to ONNX and TensorFlow formats, reducing the risk of export failures. 📦
  • Makes it easier for users to identify and fix issues with their Python environment, especially around NumPy and other dependencies.
  • Delivers a smoother, more user-friendly experience for both new and experienced users—no changes to core workflows, so you can upgrade with confidence! 👍✨

What's Changed

Full Changelog: v8.3.147...v8.3.148

v8.3.147 - `ultralytics 8.3.147` Confusion Matrix export to CSV, XML, HTML, JSON, and SQL formats (#20834)

02 Jun 03:32
a7910a9
Compare
Choose a tag to compare

🌟 Summary

This release brings powerful new ways to export confusion matrix results, improved YOLOv7 ONNX/TensorRT inference support, enhanced OpenVINO documentation for YOLO11, and several usability and documentation updates. 📊🚀


📊 Key Changes

  • Confusion Matrix Export Enhancements

    • You can now export confusion matrix results from model validation in multiple formats: CSV, XML, HTML, JSON, and SQL.
    • ConfusionMatrix class improved to support class names and easier export.
    • Documentation and tests updated to reflect these new export options.
  • YOLOv7 ONNX & TensorRT Inference Support

    • Added detailed guides and scripts to help users export YOLOv7 models to ONNX/TensorRT and run inference with Ultralytics.
    • Clarified that only inference (not training) is supported for YOLOv7 in Ultralytics.
  • OpenVINO Documentation Update for YOLO11

    • All OpenVINO integration docs now reference YOLO11, with updated export instructions, usage examples, and benchmarks for Intel CPUs, GPUs, and NPUs.
    • Added new hardware compatibility tips and troubleshooting guidance.
  • Prediction Arguments & OBB Documentation

    • Added documentation for the new rect argument, explaining its effect on image padding and inference speed.
    • Fixed code example for accessing oriented bounding box (OBB) results.
  • BatchNorm Initialization Fix

    • Prevents unintended changes to BatchNorm statistics when initializing models from YAML files, ensuring more stable model behavior.
  • Training Parameter Docstring Update

    • Updated training function documentation to use the correct parameter name batch instead of batch_size.

🎯 Purpose & Impact

  • Easier, Flexible Analysis

    • Exporting confusion matrices in various formats makes it simple to analyze, share, or report results using your preferred tools. Great for research, presentations, or audits.
  • Broader Model Compatibility

    • YOLOv7 ONNX/TensorRT inference support lets users leverage more model types within Ultralytics, expanding deployment options.
  • Up-to-date Hardware Guidance

    • OpenVINO documentation now fully supports YOLO11 and the latest Intel hardware, helping users achieve optimal performance.
  • Improved Usability

    • Clearer documentation and parameter naming reduce confusion and help both new and experienced users get the most out of Ultralytics.
  • More Reliable Training

    • Fixes to BatchNorm initialization ensure consistent model behavior, especially when loading custom architectures.

In summary:
This update makes validation results more accessible, expands model and hardware support, and improves the overall user experience for both developers and non-experts. 🎉

What's Changed

Full Changelog: v8.3.146...v8.3.147

v8.3.146 - `ultralytics 8.3.146` New COCO8-Grayscale dataset (#20827)

27 May 23:10
48b72f9
Compare
Choose a tag to compare

🌟 Summary

Ultralytics 8.3.146 introduces full support for grayscale object detection workflows, highlighted by the new COCO8-Grayscale dataset, a dedicated grayscale YOLO11n model, and comprehensive grayscale testing and documentation. 🖤📦

📊 Key Changes

  • COCO8-Grayscale Dataset Added:
    • A small, single-channel (grayscale) version of the COCO8 dataset is now available for rapid testing and debugging.
    • Includes a YAML config, download script, and full documentation.
  • Grayscale Model Support:
    • The new yolo11n-grayscale.pt model is now available for download and use.
    • Test suites updated to cover grayscale training, validation, and prediction.
  • Documentation Enhancements:
    • New docs page for COCO8-Grayscale with usage examples, FAQs, and integration tips for YOLO11 and Ultralytics HUB.
    • Dataset indexes updated to include COCO8-Grayscale.
  • Other Improvements:
    • Added a deprecation notice for Neural Magic integrations.
    • Improved analytics chart performance and visuals.
    • Enhanced code quality with better type hints and docstrings.
    • Various documentation cleanups and minor bug fixes.

🎯 Purpose & Impact

  • Broader Research & Application:
    • Enables users to easily experiment with and benchmark grayscale object detection, which is valuable for medical imaging, industrial inspection, and other fields where grayscale data is common.
  • Faster Prototyping:
    • The small COCO8-Grayscale dataset allows for quick pipeline checks before scaling to larger datasets, saving time and resources.
  • Seamless Integration:
    • Full compatibility with YOLO11 and Ultralytics HUB ensures users can leverage cloud training, monitoring, and dataset management for grayscale projects.
  • Improved User Experience:
    • Smoother analytics, clearer documentation, and robust model export/benchmarking processes make the platform more reliable and user-friendly.
  • Future-Proofing:
    • Codebase improvements and deprecation notices help users and developers stay up-to-date and avoid deprecated tools.

In summary:
This release makes Ultralytics a more versatile platform for both color and grayscale object detection, while also delivering a range of usability, performance, and documentation improvements. 🚀

What's Changed

Full Changelog: v8.3.145...v8.3.146

v8.3.145 - `ultralytics 8.3.145` Support all export arguments for benchmark (#20257)

25 May 23:12
ac0b54b
Compare
Choose a tag to compare

🌟 Summary

This release brings major improvements to model benchmarking flexibility, chart interactivity in documentation, and tracking code clarity—making Ultralytics tools easier and more powerful for everyone! 🚀📊

📊 Key Changes

  • Benchmarking Flexibility:
    • The benchmark method now accepts data, format, and verbose directly, and supports all export-specific arguments for more customizable benchmarking.
  • Interactive Documentation Charts:
    • Added a new toolbar to YOLO model comparison charts in the docs, allowing users to download charts as PNG images or CSV data, with improved styling and usability.
    • Chart exports now only include visible (selected) models and use clearer CSV headers.
    • Improved chart code for easier maintenance and consistent color-coding for each model (e.g., YOLO11, YOLOv10).
    • Fixed toolbar positioning and loading for a smoother user experience.
  • Tracking & Solutions Code Simplification:
    • Introduced a new is_track property for easier and more consistent tracking checks across code, examples, and docs.
    • Standardized and simplified how tracking and segmentation results are handled in Ultralytics solutions.
  • Documentation Enhancements:
    • Embedded a new YouTube video guide on YOLO11 deployment options.
    • Clarified the verbose argument in benchmark documentation.
    • Improved installation instructions for the YOLOv8 Region Counter example.
    • Minor code formatting and dependency updates for better readability and build reliability.

🎯 Purpose & Impact

  • For All Users:
    • Easier Benchmarking: Quickly test models with custom datasets, formats, and export options—no advanced setup required.
    • Better Documentation: Download charts and data for your own analysis, and follow video guides for smoother deployment.
    • Smoother Setup: Clearer instructions and improved code formatting reduce confusion and errors.
  • For Developers & Advanced Users:
    • Custom Benchmarking: Pass advanced export arguments for tailored performance evaluations.
    • Cleaner Codebase: Refactored chart and tracking logic makes it easier to maintain, extend, and debug.
    • Consistent Tracking: The new is_track property standardizes tracking checks, reducing bugs and improving code clarity.
  • Overall:
    • These updates make Ultralytics tools more flexible, user-friendly, and robust—helping you get the most out of YOLO models and documentation, whether you're a beginner or a pro! 🌟

Enjoy the new features and improvements! If you have feedback or questions, the Ultralytics community is here to help. 💡

What's Changed

New Contributors

Full Changelog: v8.3.144...v8.3.145

v8.3.144 - `ultralytics 8.3.144` Declarative docstrings and type hints (#20777)

24 May 10:36
b682462
Compare
Choose a tag to compare

🌟 Summary

This release focuses on improved code clarity and reliability, introducing enhanced docstrings and type hints across the Ultralytics codebase, smarter GPU selection, and documentation updates for better user experience. 📝🚀

📊 Key Changes

  • Declarative Docstrings & Type Hints: Comprehensive updates to docstrings and type hints throughout the code, making it easier for users and developers to understand and extend Ultralytics functionalities. (PR #20777)
  • Smarter GPU Selection: The select_idle_gpu function now considers both free memory and GPU utilization, allowing for more efficient and conflict-free device selection. Users can customize thresholds via environment variables. (PR #20780)
  • Validation Logic Improvements: Enhanced validation for Sony IMX models and dynamic models, ensuring more accurate evaluation results. (PR #20769)
  • Documentation Updates: Default IoU threshold in validation docs updated from 0.6 to 0.7, reflecting best practices and helping users achieve cleaner validation results. (PR #20776)
  • General Code & Docs Cleanup: Minor corrections, improved function descriptions, and better parameter explanations across examples and core modules.

🎯 Purpose & Impact

  • Easier Development & Maintenance: Clearer docstrings and type hints make the codebase more approachable for both new and experienced developers, reducing onboarding time and minimizing errors.
  • Better Resource Management: Enhanced GPU selection logic leads to more stable and efficient training, especially in multi-GPU environments.
  • Improved Model Evaluation: More accurate validation logic and updated documentation help users configure experiments correctly and interpret results with confidence.
  • Seamless Integration: Ongoing improvements ensure better compatibility and smoother workflows with Ultralytics HUB and other tools.

✨ This update makes Ultralytics more robust, user-friendly, and ready for both production and research use!

What's Changed

Full Changelog: v8.3.143...v8.3.144

v8.3.143 - `ultralytics 8.3.143` Add Profiling for Solutions (#20730)

22 May 23:15
9584162
Compare
Choose a tag to compare

🌟 Summary

This release introduces detailed performance profiling to Ultralytics Solutions, giving users clear insights into how fast tracking and processing steps run, along with improved logging and more robust object tracking. 🚀⏱️

📊 Key Changes

  • Performance Profiling Added: Solutions now measure and report the speed of tracking/prediction and overall processing, with speed metrics included in results.
  • Enhanced Logging: When verbose mode is enabled, logs now display detailed timing information for each frame, making it easier to monitor performance.
  • Simplified Tracking History: The object counter solution no longer requires specifying bounding box types; it automatically adapts, making tracking more robust and the code cleaner.
  • Minor Improvements: General code clean-up and version update to 8.3.143.

🎯 Purpose & Impact

  • Greater Transparency: Users can see exactly how long each step takes, helping to identify and resolve performance bottlenecks.
  • Easier Optimization: Developers and users can monitor and optimize the speed of their workflows with real-time feedback.
  • Simpler Integration: Tracking history is now more flexible and easier to use, reducing the chance of errors and making the codebase easier to maintain.
  • Improved Debugging: Enhanced logs and profiling make troubleshooting and understanding solution behavior much more straightforward.

This update is especially valuable for anyone looking to monitor, debug, or optimize their use of Ultralytics Solutions.

What's Changed

Full Changelog: v8.3.142...v8.3.143

v8.3.142 - `ultralytics 8.3.142` Simplify `Annotator.box_label` (#20754)

22 May 10:49
8a3be04
Compare
Choose a tag to compare

🌟 Summary

This release streamlines how bounding boxes are drawn and improves overall usability, robustness, and documentation clarity across the Ultralytics ecosystem. 🖼️✨

📊 Key Changes

  • Simplified Bounding Box Drawing: The box_label function no longer requires a rotated parameter; it now automatically detects and handles both standard and oriented bounding boxes.
  • Improved CLI Error Messages: Command-line help and error messages now display valid options in a clearer, list-based format.
  • Updated Minimum Requirements: Documentation now reflects updated minimum versions—Python 3.8+ and PyTorch 1.8+.
  • More Robust Object Counting: Enhanced checks prevent errors when tracking data is missing or incomplete, especially for oriented bounding boxes.
  • Smarter Mouse Event Handling: Mouse callbacks for distance measurement are now only enabled when display is active and supported, reducing unnecessary processing in headless environments.

🎯 Purpose & Impact

  • Cleaner, Easier Code: Developers benefit from simpler, more intuitive code for drawing bounding boxes, reducing the chance for mistakes and making future updates easier.
  • Better User Experience: Clearer CLI messages and robust error handling make Ultralytics tools more accessible and reliable for all users.
  • Accurate Documentation: Users are guided to use supported Python and PyTorch versions, helping avoid compatibility issues.
  • Improved Automation & Server Use: Smarter handling of mouse events ensures smooth operation in automated or non-GUI environments.
  • No Breaking Changes: These updates are behind-the-scenes improvements—there’s no change to how you use Ultralytics models or features day-to-day.

🚀 This release is all about making Ultralytics tools smoother, smarter, and more user-friendly for everyone!

What's Changed

Full Changelog: v8.3.141...v8.3.142

v8.3.141 - `ultralytics 8.3.141` Automatically detect RTDETR models (#20578)

20 May 23:23
5e892b6
Compare
Choose a tag to compare

🌟 Summary

This update introduces automatic detection and seamless handling of RTDETR models, along with several improvements for GPU selection, code clarity, dataset accessibility, and overall robustness. 🚀

📊 Key Changes

  • Automatic RTDETR Model Detection:
    • The YOLO class now automatically recognizes and initializes RTDETR models from checkpoints, making it effortless to use RTDETR alongside other Ultralytics models.
    • You can now re-initialize a model from an existing model instance without duplicating memory or data.
  • Smarter GPU Selection:
    • GPU selection now uses a percentage of free memory (e.g., 20%) instead of a fixed amount, improving compatibility across different hardware.
  • YOLO Libtorch C++ Fix:
    • Fixed CUDA device errors in the YOLOv8 C++ example by specifying the device during model loading.
  • Cleaner Code & Maintenance:
    • Simplified the TaskAlignedAssigner module and classification loss function for better readability and maintainability.
    • Improved handling of legacy image transforms in classification prediction to prevent errors.
    • Streamlined the Open Images V7 dataset download script for easier setup.
  • Enhanced Testing & Docs:
    • VisualAISearch tests now auto-download required images and skip unsupported environments for more reliable testing.
    • Added a Colab badge to the HomeObjects-3K dataset docs for one-click model training in Google Colab.

🎯 Purpose & Impact

  • Effortless Model Usage:
    • Users can now load RTDETR models just like any other YOLO model, with no extra steps or manual configuration.
    • Developers can pass model instances directly to the YOLO class, avoiding unnecessary duplication and saving memory.
  • Better Hardware Compatibility:
    • GPU selection adapts to different devices, making it easier to run Ultralytics tools on a wide range of systems without manual tuning.
  • Improved Reliability:
    • Fixes and enhancements across C++ inference, testing, and prediction make the platform more robust for both developers and end users.
  • Faster Onboarding & Prototyping:
    • The new Colab badge and simplified dataset scripts lower the barrier for beginners and speed up experimentation for researchers.
  • Cleaner, More Maintainable Codebase:
    • Ongoing code quality improvements help ensure long-term stability and ease of contribution.

✨ This release makes Ultralytics models—especially RTDETR—even easier to use, more reliable, and more accessible for everyone!

What's Changed

New Contributors

Full Changelog: v8.3.140...v8.3.141

v8.3.140 - `ultralytics 8.3.140` Fix `uv` checks with `uv -V` (#20710)

19 May 14:10
fa9ec82
Compare
Choose a tag to compare

🌟 Summary

This release brings improved reliability for package management, enhanced export and benchmarking features, clearer documentation, and new video tutorials to help users get the most out of Ultralytics YOLO models. 🚀

📊 Key Changes

  • Improved "uv" Package Manager Detection: Added a robust check for the "uv" package manager to reduce installation issues and updated auto-install logic for smoother dependency management.
  • Flexible Data Export: Enhanced the to_df and to_sql methods, allowing users to control normalization, decimal precision, and dynamic SQL table creation for easier data analysis and reporting.
  • Expanded Benchmarking Support: Added IMX as a supported backend, enabling benchmarking of YOLO models on IMX devices.
  • ONNX Testing for Jetson: Re-enabled ONNX export tests on NVIDIA Jetson devices, increasing test coverage and reliability for edge hardware.
  • Documentation Improvements:
    • Reorganized integration docs for easier navigation and discovery of deployment options.
    • Highlighted SONY IMX500 as a new integration.
    • Embedded YouTube tutorials for DOTA dataset training and thread-safe inference, making it easier for users to learn key workflows.
  • Cleaner Test Suite: Simplified test conditions by removing unnecessary Python version checks, resulting in broader and more maintainable test coverage.

🎯 Purpose & Impact

  • Smoother Installations: More reliable detection of the "uv" package manager means fewer installation errors and a better setup experience for all users. 🛠️
  • Easier Data Handling: Users can now export results with custom formatting and directly to SQL databases, making it simpler to analyze and share results. 📊
  • Broader Hardware Support: Benchmarking and testing improvements ensure YOLO models work well on more devices, including IMX and Jetson platforms. 💻
  • Better Learning Resources: New video tutorials and clearer documentation lower the barrier for new users and help everyone get up to speed faster. 🎥
  • Improved Developer Experience: Cleaner, more precise tests help catch issues early and keep the codebase robust and easy to maintain.

This update is all about making Ultralytics tools more reliable, flexible, and user-friendly—whether you're a developer, researcher, or just getting started with computer vision! 🚀✨

What's Changed

Full Changelog: v8.3.139...v8.3.140

0