Ultralytics YOLO
Abstract
🌟 Summary (single-line synopsis) Ultralytics v8.3.250 adds out-of-the-box support for the TT100K traffic sign dataset 🚦—plus smoother Ultralytics HUB dataset handling, better run directory behavior, and a few quality/build/docs fixes 🛠️📚 📊 Key Changes 🚦 New TT100K dataset integration (PR #22892 by @PrashantDixit0) Adds ultralytics/cfg/datasets/TT100K.yaml with 221 classes and full dataset metadata. Includes an auto download + conversion pipeline that fetches TT100K and converts its annotations into YOLO-format labels automatically. Adds new docs page and navigation entries for TT100K: TT100K dataset page 🌐 Improved Ultralytics HUB dataset URI support + NDJSON auto-conversion (PR #23146 by @glenn-jocher) Training now supports ul://.../datasets/... sources by resolving them locally first, then performing NDJSON → YOLO conversion automatically. Smarter --project path handling for "nested" names like user/project, placing outputs under the normal runs directory. Updates platform webhook base URL used by the platform callback resolver. 📚 Better Kaggle install & troubleshooting docs (PR #22970 by @PrashantDixit0) Adds a clear Kaggle Installation section (internet toggle, install commands, conflict fixes) to reduce setup friction. 🧩 Metrics bugfix: ConfusionMatrix default type mismatch (PR #23138 by @raimbekovm) Fixes ConfusionMatrix(names=...) default from [] to {} to match its annotated type and avoid mutable-default pitfalls. 🛠️ C++ ONNXRuntime example build improvement (PR #23137 by @omar-A-hassan) Respects user-provided ONNXRUNTIME_ROOT in CMake (so custom install paths work as documented). 🔒 Dependency update (PR #23143 by @dependabot[bot]) Bumps urllib3 in the RT-DETR ONNXRuntime Python example requirements. 🎯 Purpose & Impact 🚦 Easier traffic sign training & benchmarking with TT100K You can train YOLO models on TT100K without manually downloading, unpacking, or rewriting annotations—ideal for autonomous driving / ADAS research and small-object detection experiments. Example: yolo detect train data=TT100K.yaml model=yolo11n.pt 🏁 🌐 More seamless Ultralytics HUB workflows If you use Ultralytics HUB datasets (via ul://), training should now "just work" even when the dataset starts as NDJSON—less manual conversion and fewer path surprises 📦✅ 📁 Cleaner experiment organization Nested --project values won't accidentally create confusing folder structures; runs stay grouped under the expected task directory 🗂️ 📚 Faster onboarding on Kaggle Clear install + troubleshooting steps reduce time lost to notebook dependency conflicts and missing internet settings ⚡ 🧩 Fewer edge-case bugs and smoother builds Confusion matrix initialization is safer, and the ONNXRuntime C++ example is easier to compile in custom environments 🧰 What's Changed Fix type mismatch in ConfusionMatrix default parameter by @raimbekovm in https://github.com/ultralytics/ultralytics/pull/23138 fix: respect user-provided ONNXRUNTIME_ROOT in CMakeLists.txt by @omar-A-hassan in https://github.com/ultralytics/ultralytics/pull/23137 Bump urllib3 from 2.6.0 to 2.6.3 in /examples/RTDETR-ONNXRuntime-Python in the pip group across 1 directory by @dependabot[bot] in https://github.com/ultralytics/ultralytics/pull/23143 docs: installation guide in Kaggle Notebook by @PrashantDixit0 in https://github.com/ultralytics/ultralytics/pull/22970 Update platform dir handling by @glenn-jocher in https://github.com/ultralytics/ultralytics/pull/23146 ultralytics 8.3.250 Tsinghua-Tencent 100K dataset by @PrashantDixit0 in https://github.com/ultralytics/ultralytics/pull/22892 New Contributors @omar-A-hassan made their first contribution in https://github.com/ultralytics/ultralytics/pull/23137 Full Changelog: https://github.com/ultralytics/ultralytics/compare/v8.3.249...v8.3.250
Publication details
- Journal / source
- Zenodo (CERN European Organization for Nuclear Research)
- Publication date
- 8 January 2026