pypi ultralytics 8.4.116
v8.4.116 - Raise minimum `opencv-python` to 4.7.0 (#25702)

2 hours ago

๐ŸŒŸ Summary

๐Ÿš€ v8.4.116 improves installation reliability, expands YOLOE and Platform workflows, strengthens tracking and export support, and refreshes YOLO26 documentation.

๐Ÿ“Š Key Changes

  • ๐Ÿ”ง OpenCV compatibility fix โ€” current PR #25702 by @Y-T-G

    • Raises the minimum opencv-python version from 4.6.0 to 4.7.0.
    • Keeps the exclusion for 4.13.0.90, which is affected by a FIPS self-test crash.
    • Removes an outdated ONNX DNN backend requirement check.
    • This aligns the dependency with cv2.imdecodemulti, which Ultralytics uses internally.
  • ๐Ÿง  Reusable YOLOE prompt embeddings

    • Adds save_prompt_embeddings() and load_prompt_embeddings() for storing text or visual prompt configurations in NPZ files.
    • Profiles are validated against the source YOLOE model and can be reused before exporting to formats such as ONNX, OpenVINO, TensorRT, CoreML, LiteRT, and RKNN.
    • Exported models remain standard single-input models and do not require the NPZ file at runtime.
  • ๐Ÿ“š Improved model guidance

    • Reworks the model index into a task-and-mode comparison table.
    • Positions YOLO26 as the recommended model for new projects, with YOLO11 as a mature production alternative.
    • Clarifies support for YOLO12, OBB, SAM models, YOLOE, YOLO-World, RT-DETR, and other model families.
    • Adds a YOLO26 custom-dataset training video and highlights monocular depth estimation.
  • ๐ŸŽฏ Broader and safer tracking support

    • Documents and supports OBB tracking alongside detection, segmentation, and pose.
    • Rejects unsupported semantic and depth tracking tasks with a clear error before processing begins.
    • Skips unnecessary camera-motion compensation work when gmc_method: none.
    • Keeps OC-SORT observation history bounded on all track lifecycle paths.
  • ๐Ÿ“ฆ More efficient model export

    • Streams ONNX and QNN calibration data instead of retaining all transformed images in memory.
    • Reduces calibration memory usage substantially for large datasets.
    • Updates anchor creation to use CoreML-friendly tensor operations, improving dynamic CoreML export compatibility.
  • ๐Ÿงช Depth and segmentation fixes

    • Excludes ground-truth depth values outside the configured valid range during calibration, keeping calibration consistent with validation metrics.
    • Fixes FP16 segmentation with class-agnostic NMS.
    • Preserves YOLOE one-to-one classifier weights during linear probing, preventing a severe accuracy drop.
    • Makes pose activation-map gradients compatible with autograd and torch.compile.
  • ๐Ÿ–ผ๏ธ Visualization and analytics improvements

    • Restores percentage labels in analytics pie charts.
    • Speeds up semantic-mask overlay rendering by replacing repeated full-image scans with a palette lookup.
  • โ˜๏ธ Expanded Ultralytics Platform workflows

    • Adds documented custom metadata support for datasets, images, projects, and models.
    • Supports nested metadata, metadata search, NDJSON image metadata, and Dataset Ingest API uploads.
    • Refreshes Platform integration screenshots and documents native Platform support for YOLOv8 and YOLOv5.
    • Refactors Platform callbacks to load only where needed, reducing unnecessary imports in prediction, validation, and export paths.
  • ๐Ÿ›ก๏ธ Reliability and infrastructure

    • Makes downloads atomic, preventing concurrent test or application processes from reading partially written files.
    • Updates CI runner images to Node.js 24 for compatibility with newer tooling.
    • Refreshes OpenVINO benchmark data across Intel CPUs and NPUs.
    • Improves documentation deployment detection when configuration defaults change.

๐ŸŽฏ Purpose & Impact

  • โœ… Fewer installation failures: Users relying on OpenCV image decoding now receive a compatible version automatically.
  • ๐Ÿš€ Simpler YOLOE deployment: Prompt configurations can be prepared once and reused across multiple export targets.
  • ๐Ÿ’พ Lower memory usage: Large ONNX and QNN calibration jobs are more practical, especially on limited-memory systems.
  • ๐ŸŽฅ More capable tracking: OBB tracking is now clearly supported, while unsupported tasks fail with actionable messages instead of obscure runtime errors.
  • ๐Ÿ“ˆ Better model fine-tuning: YOLOE linear probing and depth calibration now preserve pretrained performance more reliably.
  • ๐Ÿงฉ Improved deployment compatibility: Dynamic CoreML exports and FP16 segmentation workflows are more robust.
  • ๐Ÿ” Better Platform organization: Custom metadata helps teams track provenance, review status, equipment, projects, and deployment context.
  • ๐Ÿ“– Clearer onboarding: The refreshed model documentation makes it easier to choose the right Ultralytics model and understand its supported modes.

What's Changed

New Contributors

Full Changelog: v8.4.115...v8.4.116

Don't miss a new ultralytics release

NewReleases is sending notifications on new releases.