Download Latest Version v8.4.33 - _ultralytics 8.4.33_ Progressive loss train resume fix (#24074) source code.tar.gz (2.2 MB)
Email in envelope

Get an email when there's a new version of Ultralytics

Home / v8.4.31
Name Modified Size InfoDownloads / Week
Parent folder
sbom.spdx.json 2026-03-28 747.9 kB
README.md 2026-03-28 4.6 kB
v8.4.31 - _ultralytics 8.4.31_ INT8 calibration with non-square _imgsz_ (#24028) source code.tar.gz 2026-03-28 2.2 MB
v8.4.31 - _ultralytics 8.4.31_ INT8 calibration with non-square _imgsz_ (#24028) source code.zip 2026-03-28 2.9 MB
Totals: 4 Items   5.8 MB 2

🌟 Summary

Ultralytics v8.4.31 is a reliability-focused release that mainly fixes INT8 export calibration for non-square image sizes (the headline change), while also improving training stability, export maintainability, and documentation for deployment and dataset workflows πŸš€

πŸ“Š Key Changes

  • πŸ”₯ Main update (PR [#24028] by @Y-T-G): INT8 calibration now works correctly with non-square imgsz
  • Fixes export calibration for commands like imgsz=640,480 with int8.
  • Affects multiple export targets: OpenVINO, TFLite, TensorRT engine, and IMX.
  • Calibration now uses the correct effective size and preserves rectangular shape during preprocessing (LetterBox behavior fixed).

  • 🧩 Export system refactor (PR [#23914] by @onuralpszr)

  • Export logic was split from one large file into per-format utility modules (torchscript, openvino, coreml, ncnn, mnn, paddle, rknn, axelera, etc.).
  • No major user-facing CLI change, but big internal cleanup for maintainability.

  • 🍎 Apple Silicon stability improvement (PR [#24038] by @Y-T-G)

  • More aggressive memory clearing on MPS devices to reduce leak-related OOM issues during train/val.

  • πŸ“¦ Better auto-batch with multi-scale (PR [#24051] by @glenn-jocher)

  • Auto batch-size estimation now accounts for larger effective image sizes when multi_scale is enabled.

  • πŸ“š Docs and usability upgrades

  • New COCO-to-YOLO conversion guide (PR [#23930] by @raimbekovm).
  • New YOLO26 training recipe guide (PR [#23949] by @raimbekovm).
  • Platform docs now clearly explain video inference support on dedicated endpoints (PR [#24029] by @t-hakobyan). πŸŽ₯

  • πŸ› οΈ CI and environment robustness

  • CI runner migration to ubuntu-latest and Codecov v6 updates.
  • Added PyTorch 2.11.0 + Torchvision 0.26.0 slow-test coverage.
  • EdgeTPU install command improved for non-interactive environments (--no-tty).

  • βœ… Dataset conversion validation tightening (PR [#24031] by @glenn-jocher)

  • Non-classification NDJSONβ†’YOLO conversion now expects a val split (instead of allowing test as substitute).

🎯 Purpose & Impact

  • Most important impact: users exporting INT8 models with rectangular inputs should see far fewer calibration mismatches and export failures βœ…
  • Deployment confidence improves across common edge/runtime formats (OpenVINO, TFLite, TensorRT, IMX) with non-square pipelines πŸ“ˆ
  • Training becomes more reliable on Apple Silicon and with multi-scale auto-batch settings πŸ’ͺ
  • Developer velocity increases thanks to cleaner export architecture, which should make future exporter fixes/features faster and safer 🧠
  • Onboarding gets easier through clearer guides (especially COCO conversion and YOLO26 training best practices), helping both new and advanced users get productive faster πŸ“˜βœ¨

What's Changed

Full Changelog: https://github.com/ultralytics/ultralytics/compare/v8.4.30...v8.4.31

Source: README.md, updated 2026-03-28