🌟 Summary
Ultralytics v8.3.82 enhances ONNX model export functionality, improves preprocessing for ONNXRuntime examples, and streamlines compatibility across various hardware setups. 🚀
📊 Key Changes
- ONNX FP16 Export Fix: Introduced a workaround (
arange_patch
) for exporting ONNX models with bothdynamic
andhalf
options, avoiding incompatibilities in the PyTorchtorch.arange
function. - Preprocessing Accuracy Boost: Improved image handling (aspect ratio, resizing, and padding) for ONNXRuntime examples to ensure more precise object detection.
- Broader MNN Test Coverage: Enabled MNN export testing on Raspberry Pi to ensure compatibility.
- Dataset Configuration Streamlining: Refined
open-images-v7.yaml
to centralize dataset directory management for clarity and maintainability.
🎯 Purpose & Impact
-
ONNX Export Enhancements:
- Purpose: Solve PyTorch incompatibility issues during ONNX model export with FP16 precision in dynamic mode.
- Impact: Developers can now seamlessly export high-performance ONNX models while avoiding device-specific restrictions, improving workflows on GPUs.
-
Accurate Preprocessing:
- Purpose: Fix preprocessing bugs in ONNXRuntime inference to ensure image resizing, aspect ratio, and padding align with expected outputs.
- Impact: Results in more consistent and reliable object detection performance between PyTorch and ONNX models.
-
Compatibility Extension:
- Purpose: Enable MNN export tests on Raspberry Pi to ensure cross-platform functionality.
- Impact: Broader hardware compatibility for MNN format users, improving reliability on low-cost systems like Raspberry Pi.
-
Dataset Management Improvements:
- Purpose: Streamline configuration for the Open Images V7 dataset.
- Impact: Easier and more consistent dataset setup, particularly useful for developers managing large datasets.
This update improves model export workflows, ensures consistent inference results across platforms, and expands compatibility for developers using diverse environments. 🌐
What's Changed
- Enable
mnn
in Raspberry Pi Tests by @lakshanthad in #19483 - Fix ONNX Example letterboxing by @quangdungluong in #19486
- Fix dataset_dir error with
open-images-v7.yaml
by @Y-T-G in #19475 ultralytics 8.3.82
ONNXdynamic
andhalf
export by @Y-T-G in #19464
New Contributors
- @quangdungluong made their first contribution in #19486
Full Changelog: v8.3.81...v8.3.82