Ultralytics v8.4.175: More Reliable Training, Validation, and Deployment
Ultralytics YOLO v8.4.175 is focused on reliability across existing models—no new model architecture this time. The headline improvement prevents classification images from remaining in both training and validation splits after you change the split ratio, helping keep evaluation results trustworthy.
This release also improves pretrained weight loading, validation coverage, image and stream handling, export compatibility, tracking, and depth prediction. Explore the v8.4.175 release notes for the complete release overview.
Training and Dataset Improvements
Changing your classification split ratio should not introduce train/validation leakage. Reassigned images now have their old split copies removed, while nested image paths and existing cache and split directories are preserved.
- Safer classification workflows: PR #26597 by @Vaishnavi220506 improves classification training and validation, including split cleanup.
- Nested classification images: PR #26598 by @Nikhi00718 preserves nested images during automatic splitting.
- Better pretrained weight transfer: PR #26570 by @raimbekovm transfers class names when appropriate and adapts RGB first-convolution weights for grayscale models.
- More effective fine-tuning: PR #26589 by @fcakyon retains class-branch features when fine-tuning to fewer classes.
- Pose metadata: PR #26574 by @zkoymen sets
kpt_shapefor pose models built from YAML. - Class-weight handling: PR #26599 by @raimbekovm keeps classes without training labels neutral in
cls_pwweights. - Text-prompt training compatibility: PR #26600 by @raimbekovm skips
cls_pwin World and YOLOE text-prompt trainers.
More Trustworthy Validation
These fixes help ensure validation includes the expected samples and handles annotation and mask edge cases correctly.
- Complete validation batches: PR #26565 by @raimbekovm fixes
drop_lastbehavior for compiled validation and distributed training shards. - Large semantic-segmentation counts: PR #26561 by @aswanth-07 uses
int64pixel counts in semantic validation. - COCO keypoint annotations: PR #26564 by @8rulerstar skips annotations without labeled keypoints during conversion.
- Semantic data handling: PR #26566 by @raimbekovm fixes semantic mask reading, class-count caching, and box labels.
- Mask alignment: PR #26607 by @raimbekovm crops letterbox padding on whole pixels for retina and SAM masks.
Image, Stream, Tracking, and Depth Fixes
- 16-bit image inputs: PR #26577 by @raimbekovm converts 16-bit TIFF and PIL images to 8-bit before inference.
- Image URL and stream routing: PR #26568 by @raimbekovm correctly routes extensionless image URLs and RTSP/RTMP/TCP streams with video-like suffixes.
- RGBA TIFF compatibility: PR #26611 by @raimbekovm reads RGBA TIFFs as three channels for three-channel models.
- Inference and cache robustness: PR #26579 by @cainiao33 fixes stale NumPy cache reads, multi-stream tracking, custom predictors, CLI brackets, and CPU FP16 handling.
- Additional pipeline fixes: PR #26604 by @cainiao33 addresses image caching, export batching, DOTA merging, and segmentation heads.
- Independent tracker IDs: PR #26591 by @raimbekovm gives each tracker its own track-ID counter.
- Stable ReID batch outputs: PR #26610 by @raimbekovm clones each fixed-batch ReID chunk output before the next inference call.
- Rectangular ReID inputs: PR #26596 by @aswanth-07 fixes rectangular ONNX inputs in tracker ReID preprocessing.
- Consistent depth preprocessing: PR #26556 by @Y-T-G aligns depth prediction image stretching with validation and adds calibration guidance without a depth camera.
Export and Runtime Compatibility
- Embedded NMS and CoreML: PR #26585 by @raimbekovm fixes larger inference batches for embedded-NMS exports and empty-frame handling in CoreML.
- Dynamic YOLOE exports: PR #26567 by @Y-T-G fixes YOLOE CoreML export with
dynamic=True. - Static TorchScript validation: PR #26554 by @amanharshx validates static TorchScript exports at their exported image size.
- Complete ONNX backend outputs: PR #26606 by @raimbekovm returns every output from the OpenCV DNN ONNX backend.
- Dependency requirement checks: PR #26575 by @shoutoutuoadi325 enforces version specifiers for extras and
~=requirements.
Documentation and Tooling Updates
- Security guidance: PR #26552 by @glenn-jocher expands the security help page.
- Agent Skills documentation: PR #26558 by @glenn-jocher expands the Agent Skills guide.
- Unified documentation diagrams: PR #26573 by @glenn-jocher migrates Mermaid diagrams to the unified design system.
- Clearer Platform workflows: PR #26562 by @raimbekovm aligns diagrams with current Ultralytics Platform behavior and corrects Axelera labels.
- Dataset discovery and metadata: PR #26588 by @raimbekovm documents Explore filters and dataset metadata in version comparisons.
- Updated Platform FAQs: PR #26586 by @miles-deans-ultralytics refreshes common Platform questions and answers.
- Rectangular validation guidance: PR #26594 by @maisternia documents the half-stride border used in rectangular validation.
- Edge-device benchmarks: PR #26614 by @lakshanthad adds Raspberry Pi 5 + AI HAT+ Hailo-8 benchmarks.
- Simpler CI environment setup: PR #26557 by @glenn-jocher uses
setup-uvdefaults for Python and the virtual environment. - AI-assisted CI failure analysis: PR #26553 by @Y-T-G adds failure analysis to CI Slack alerts.
- Shared failure alerts: PR #26592 by @glenn-jocher unifies CI and Docker Slack alert handling.
- Less notification noise: PR #26613 by @glenn-jocher suppresses Slack notifications on workflow reruns.
- Updated build infrastructure: PR #26612 by @glenn-jocher updates PyTorch to 2.14.1 and GitHub runners to 2.338.0.
Welcome, New Contributors!
A warm welcome to @8rulerstar, @maisternia, and @shoutoutuoadi325 for their first contributions! Thanks to the YOLO community and Ultralytics team for making this reliability-focused release possible.
Try v8.4.175 and Share Your Feedback
Install the release with:
pip install --upgrade ultralytics==8.4.175
Review the full changelog to see everything included, then try it with your training, validation, inference, or deployment workflow.
How does v8.4.175 work with your setup? Share your results or report any issues below—reproduction steps and environment details are especially helpful.