pypi ultralytics 8.4.84
v8.4.84 - Fix EMA-NaN no-checkpoint loss and unhelpful imgsz error (#25005)

4 hours ago

🌟 Summary

Ultralytics v8.4.84 improves training reliability, OBB stability, RT-DETR benchmarking accuracy, and LiteRT/mobile deployment documentation, with the most important fix ensuring valid training runs still save checkpoints even after transient NaN/Inf events πŸš€

πŸ“Š Key Changes

  • More reliable checkpoint saving during training πŸ›‘οΈ
    Fixed a production issue where training could complete successfully but fail at the end because no best.pt or last.pt checkpoint was saved. This happened when transient NaN/Inf values contaminated the EMA model state.

  • Cleaner imgsz validation errors 🧭
    Invalid image size strings like imgsz=640x480 now raise a clear ValueError explaining the correct formats, instead of exposing a raw Python parsing error.

  • Improved OBB training stability for tiny rotated boxes πŸ“¦
    Added safer handling in rotated bounding box loss calculations by applying a small floor inside probabilistic IoU covariance calculations. This helps prevent loss divergence when training on very small oriented objects.

  • Fixed RT-DETR benchmark validation after export πŸ“ˆ
    Exported RT-DETR models are now reloaded with the correct RTDETR wrapper during benchmarking instead of YOLO, ensuring the proper validator and postprocessing are used. This fixes cases where benchmark mAP incorrectly showed 0.

  • Axelera YOLO11 segmentation example improvements πŸŽ₯
    The examples/YOLO-Axelera-Python/yolo11-seg.py example now handles numeric camera sources correctly by mapping them to /dev/video<N> and using the OpenCV backend. Single-image sources also keep the display window open properly.

  • LiteRT and mobile deployment docs expanded πŸ“±
    Documentation now highlights the official Ultralytics YOLO Flutter plugin for running LiteRT .tflite exports on Android, including real-time camera inference, single-image prediction, GPU acceleration, and YOLO26 task support.

  • New LiteRT performance guidance ⚑
    Added measured Android LiteRT performance tables for YOLO26n models across detection, segmentation, semantic segmentation, classification, pose, and OBB tasks, helping users understand real-world CPU/GPU mobile performance.

  • TensorFlow.js and TF SavedModel docs updated πŸ”—
    Deprecated TensorFlow.js export guidance now points to Google’s official LiteRT.js web runtime documentation, and TF SavedModel docs consistently refer to LiteRT instead of TensorFlow Lite where appropriate.

  • Documentation tooling maintenance 🧰
    Updated the MkDocs Ultralytics plugin requirement to >=0.2.5 and added missing GitHub author metadata.

🎯 Purpose & Impact

  • Fewer failed training jobs βœ…
    Users are less likely to lose completed training runs due to checkpoint-saving failures. Even if a temporary numerical issue appears in EMA/model tensors, Ultralytics now sanitizes the saved checkpoint instead of ending with no persistent weights.

  • Better user experience for configuration mistakes πŸ’¬
    Clearer imgsz errors make it easier for both beginners and advanced users to fix incorrect command-line or Python arguments quickly.

  • More stable OBB model training 🧱
    Datasets with tiny rotated objects should train more reliably, reducing the chance of unstable gradients or diverging losses in oriented bounding box workflows.

  • Trustworthy RT-DETR benchmark results 🎯
    RT-DETR users should now see meaningful benchmark metrics after export instead of misleading zero-mAP results caused by the wrong validation pipeline.

  • Smoother edge and mobile deployment path πŸ“²
    The LiteRT documentation improvements make it easier to choose the right deployment route for Android, browser, Apple, and Qualcomm NPU targets, especially with YOLO26 as the recommended model family.

  • Improved examples and docs reduce friction πŸ™Œ
    Axelera users get a more practical segmentation demo, while documentation updates help deployment users avoid dead links, outdated terminology, and unclear driver-version issues.

What's Changed

New Contributors

Full Changelog: v8.4.83...v8.4.84

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.