ultralytics 8.3.200__tar.gz → 8.3.205__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ultralytics-8.3.200 → ultralytics-8.3.205}/PKG-INFO +21 -21
- {ultralytics-8.3.200 → ultralytics-8.3.205}/README.md +20 -20
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_cli.py +7 -9
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_cuda.py +4 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_exports.py +7 -7
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_python.py +18 -10
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_solutions.py +13 -11
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/__init__.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/__init__.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/SKU-110K.yaml +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/build.py +4 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/utils.py +5 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/exporter.py +52 -11
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/model.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/trainer.py +14 -12
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/tuner.py +3 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/validator.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/fastsam/predict.py +2 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/rtdetr/model.py +2 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/sam.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/predict.py +9 -5
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/classify/train.py +2 -2
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/classify/val.py +2 -2
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/detect/train.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/detect/val.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/model.py +1 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/world/train.py +4 -2
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/yoloe/train.py +1 -13
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/autobackend.py +1 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/head.py +3 -3
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/transformer.py +3 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/tasks.py +0 -1
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/similarity_search.py +3 -2
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/streamlit_inference.py +2 -3
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/checks.py +29 -2
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/metrics.py +3 -3
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/plotting.py +8 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/tal.py +3 -5
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/torch_utils.py +5 -34
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/PKG-INFO +21 -21
- {ultralytics-8.3.200 → ultralytics-8.3.205}/LICENSE +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/pyproject.toml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/setup.cfg +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/conftest.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_engine.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/tests/test_integrations.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/assets/bus.jpg +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/assets/zidane.jpg +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/HomeObjects-3K.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/VOC.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco8-grayscale.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco8-multispectral.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/construction-ppe.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/dota8-multispectral.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/dota8.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/lvis.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/signature.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/datasets/xView.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/default.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yoloe-11-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/11/yoloe-11.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/12/yolo12-cls.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/12/yolo12-obb.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/12/yolo12-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/12/yolo12-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/12/yolo12.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yoloe-v8.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/annotator.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/augment.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/base.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/converter.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/dataset.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/loaders.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/scripts/download_weights.sh +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/scripts/get_coco.sh +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/scripts/get_coco128.sh +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/scripts/get_imagenet.sh +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/split.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/data/split_dota.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/predictor.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/engine/results.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/hub/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/hub/auth.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/hub/google/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/hub/session.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/hub/utils.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/fastsam/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/fastsam/model.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/fastsam/utils.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/fastsam/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/nas/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/nas/model.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/nas/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/nas/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/rtdetr/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/rtdetr/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/rtdetr/train.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/rtdetr/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/amg.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/build.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/model.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/blocks.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/decoders.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/encoders.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/memory_attention.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/transformer.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/sam/modules/utils.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/utils/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/utils/loss.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/utils/ops.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/classify/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/detect/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/obb/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/obb/train.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/obb/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/pose/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/pose/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/pose/train.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/pose/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/segment/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/segment/train.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/segment/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/world/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/world/train_world.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/yoloe/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/yoloe/predict.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/yoloe/train_seg.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/models/yolo/yoloe/val.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/activation.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/block.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/conv.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/modules/utils.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/nn/text_model.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/py.typed +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/ai_gym.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/analytics.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/config.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/distance_calculation.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/heatmap.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/instance_segmentation.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/object_blurrer.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/object_counter.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/object_cropper.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/parking_management.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/queue_management.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/region_counter.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/security_alarm.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/solutions.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/speed_estimation.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/templates/similarity-search.html +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/trackzone.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/solutions/vision_eye.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/basetrack.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/bot_sort.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/byte_tracker.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/track.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/utils/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/utils/gmc.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/utils/kalman_filter.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/trackers/utils/matching.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/autobatch.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/autodevice.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/benchmarks.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/base.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/clearml.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/comet.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/dvc.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/hub.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/mlflow.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/neptune.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/platform.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/raytune.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/tensorboard.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/callbacks/wb.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/cpu.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/dist.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/downloads.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/errors.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/events.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/export/__init__.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/export/imx.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/files.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/git.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/instance.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/logger.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/loss.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/nms.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/ops.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/patches.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/tqdm.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/triton.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics/utils/tuner.py +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/SOURCES.txt +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/dependency_links.txt +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/entry_points.txt +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/requires.txt +0 -0
- {ultralytics-8.3.200 → ultralytics-8.3.205}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: ultralytics
|
3
|
-
Version: 8.3.
|
3
|
+
Version: 8.3.205
|
4
4
|
Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
@@ -239,11 +239,11 @@ Refer to the [Segmentation Docs](https://docs.ultralytics.com/tasks/segment/) fo
|
|
239
239
|
|
240
240
|
| Model | size<br><sup>(pixels) | mAP<sup>box<br>50-95 | mAP<sup>mask<br>50-95 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
241
241
|
| -------------------------------------------------------------------------------------------- | --------------------- | -------------------- | --------------------- | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
242
|
-
| [YOLO11n-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-seg.pt) | 640 | 38.9 | 32.0 | 65.9 ± 1.1 | 1.8 ± 0.0 | 2.9 |
|
243
|
-
| [YOLO11s-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-seg.pt) | 640 | 46.6 | 37.8 | 117.6 ± 4.9 | 2.9 ± 0.0 | 10.1 |
|
244
|
-
| [YOLO11m-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-seg.pt) | 640 | 51.5 | 41.5 | 281.6 ± 1.2 | 6.3 ± 0.1 | 22.4 |
|
245
|
-
| [YOLO11l-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-seg.pt) | 640 | 53.4 | 42.9 | 344.2 ± 3.2 | 7.8 ± 0.2 | 27.6 |
|
246
|
-
| [YOLO11x-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-seg.pt) | 640 | 54.7 | 43.8 | 664.5 ± 3.2 | 15.8 ± 0.7 | 62.1 |
|
242
|
+
| [YOLO11n-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-seg.pt) | 640 | 38.9 | 32.0 | 65.9 ± 1.1 | 1.8 ± 0.0 | 2.9 | 9.7 |
|
243
|
+
| [YOLO11s-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-seg.pt) | 640 | 46.6 | 37.8 | 117.6 ± 4.9 | 2.9 ± 0.0 | 10.1 | 33.0 |
|
244
|
+
| [YOLO11m-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-seg.pt) | 640 | 51.5 | 41.5 | 281.6 ± 1.2 | 6.3 ± 0.1 | 22.4 | 113.2 |
|
245
|
+
| [YOLO11l-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-seg.pt) | 640 | 53.4 | 42.9 | 344.2 ± 3.2 | 7.8 ± 0.2 | 27.6 | 132.2 |
|
246
|
+
| [YOLO11x-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-seg.pt) | 640 | 54.7 | 43.8 | 664.5 ± 3.2 | 15.8 ± 0.7 | 62.1 | 296.4 |
|
247
247
|
|
248
248
|
- **mAP<sup>val</sup>** values are for single-model single-scale on the [COCO val2017](https://cocodataset.org/) dataset. See [YOLO Performance Metrics](https://docs.ultralytics.com/guides/yolo-performance-metrics/) for details. <br>Reproduce with `yolo val segment data=coco.yaml device=0`
|
249
249
|
- **Speed** metrics are averaged over COCO val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val segment data=coco.yaml batch=1 device=0|cpu`
|
@@ -256,11 +256,11 @@ Consult the [Classification Docs](https://docs.ultralytics.com/tasks/classify/)
|
|
256
256
|
|
257
257
|
| Model | size<br><sup>(pixels) | acc<br><sup>top1 | acc<br><sup>top5 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) at 224 |
|
258
258
|
| -------------------------------------------------------------------------------------------- | --------------------- | ---------------- | ---------------- | ------------------------------ | ----------------------------------- | ------------------ | ------------------------ |
|
259
|
-
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 |
|
260
|
-
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 |
|
261
|
-
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 |
|
262
|
-
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 |
|
263
|
-
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 |
|
259
|
+
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 2.8 | 0.5 |
|
260
|
+
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 6.7 | 1.6 |
|
261
|
+
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 11.6 | 4.9 |
|
262
|
+
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 14.1 | 6.2 |
|
263
|
+
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 29.6 | 13.6 |
|
264
264
|
|
265
265
|
- **acc** values represent model accuracy on the [ImageNet](https://www.image-net.org/) dataset validation set. <br>Reproduce with `yolo val classify data=path/to/ImageNet device=0`
|
266
266
|
- **Speed** metrics are averaged over ImageNet val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val classify data=path/to/ImageNet batch=1 device=0|cpu`
|
@@ -273,11 +273,11 @@ See the [Pose Estimation Docs](https://docs.ultralytics.com/tasks/pose/) for usa
|
|
273
273
|
|
274
274
|
| Model | size<br><sup>(pixels) | mAP<sup>pose<br>50-95 | mAP<sup>pose<br>50 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
275
275
|
| ---------------------------------------------------------------------------------------------- | --------------------- | --------------------- | ------------------ | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
276
|
-
| [YOLO11n-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-pose.pt) | 640 | 50.0 | 81.0 | 52.4 ± 0.5 | 1.7 ± 0.0 | 2.9 | 7.
|
277
|
-
| [YOLO11s-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-pose.pt) | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.
|
278
|
-
| [YOLO11m-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-pose.pt) | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.
|
279
|
-
| [YOLO11l-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-pose.pt) | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6.4 ± 0.1 | 26.
|
280
|
-
| [YOLO11x-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-pose.pt) | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 |
|
276
|
+
| [YOLO11n-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-pose.pt) | 640 | 50.0 | 81.0 | 52.4 ± 0.5 | 1.7 ± 0.0 | 2.9 | 7.4 |
|
277
|
+
| [YOLO11s-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-pose.pt) | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.1 |
|
278
|
+
| [YOLO11m-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-pose.pt) | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.4 |
|
279
|
+
| [YOLO11l-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-pose.pt) | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6.4 ± 0.1 | 26.1 | 90.3 |
|
280
|
+
| [YOLO11x-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-pose.pt) | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 | 202.8 |
|
281
281
|
|
282
282
|
- **mAP<sup>val</sup>** values are for single-model single-scale on the [COCO Keypoints val2017](https://docs.ultralytics.com/datasets/pose/coco/) dataset. See [YOLO Performance Metrics](https://docs.ultralytics.com/guides/yolo-performance-metrics/) for details. <br>Reproduce with `yolo val pose data=coco-pose.yaml device=0`
|
283
283
|
- **Speed** metrics are averaged over COCO val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val pose data=coco-pose.yaml batch=1 device=0|cpu`
|
@@ -290,11 +290,11 @@ Check the [OBB Docs](https://docs.ultralytics.com/tasks/obb/) for usage examples
|
|
290
290
|
|
291
291
|
| Model | size<br><sup>(pixels) | mAP<sup>test<br>50 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
292
292
|
| -------------------------------------------------------------------------------------------- | --------------------- | ------------------ | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
293
|
-
| [YOLO11n-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-obb.pt) | 1024 | 78.4 | 117.6 ± 0.8 | 4.4 ± 0.0 | 2.7 |
|
294
|
-
| [YOLO11s-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-obb.pt) | 1024 | 79.5 | 219.4 ± 4.0 | 5.1 ± 0.0 | 9.7 | 57.
|
295
|
-
| [YOLO11m-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-obb.pt) | 1024 | 80.9 | 562.8 ± 2.9 | 10.1 ± 0.4 | 20.9 |
|
296
|
-
| [YOLO11l-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-obb.pt) | 1024 | 81.0 | 712.5 ± 5.0 | 13.5 ± 0.6 | 26.
|
297
|
-
| [YOLO11x-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-obb.pt) | 1024 | 81.3 | 1408.6 ± 7.7 | 28.6 ± 1.0 | 58.8 |
|
293
|
+
| [YOLO11n-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-obb.pt) | 1024 | 78.4 | 117.6 ± 0.8 | 4.4 ± 0.0 | 2.7 | 16.8 |
|
294
|
+
| [YOLO11s-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-obb.pt) | 1024 | 79.5 | 219.4 ± 4.0 | 5.1 ± 0.0 | 9.7 | 57.1 |
|
295
|
+
| [YOLO11m-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-obb.pt) | 1024 | 80.9 | 562.8 ± 2.9 | 10.1 ± 0.4 | 20.9 | 182.8 |
|
296
|
+
| [YOLO11l-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-obb.pt) | 1024 | 81.0 | 712.5 ± 5.0 | 13.5 ± 0.6 | 26.1 | 231.2 |
|
297
|
+
| [YOLO11x-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-obb.pt) | 1024 | 81.3 | 1408.6 ± 7.7 | 28.6 ± 1.0 | 58.8 | 519.1 |
|
298
298
|
|
299
299
|
- **mAP<sup>test</sup>** values are for single-model multiscale performance on the [DOTAv1 test set](https://captain-whu.github.io/DOTA/dataset.html). <br>Reproduce by `yolo val obb data=DOTAv1.yaml device=0 split=test` and submit merged results to the [DOTA evaluation server](https://captain-whu.github.io/DOTA/evaluation.html).
|
300
300
|
- **Speed** metrics are averaged over [DOTAv1 val images](https://docs.ultralytics.com/datasets/obb/dota-v2/#dota-v10) using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce by `yolo val obb data=DOTAv1.yaml batch=1 device=0|cpu`
|
@@ -149,11 +149,11 @@ Refer to the [Segmentation Docs](https://docs.ultralytics.com/tasks/segment/) fo
|
|
149
149
|
|
150
150
|
| Model | size<br><sup>(pixels) | mAP<sup>box<br>50-95 | mAP<sup>mask<br>50-95 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
151
151
|
| -------------------------------------------------------------------------------------------- | --------------------- | -------------------- | --------------------- | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
152
|
-
| [YOLO11n-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-seg.pt) | 640 | 38.9 | 32.0 | 65.9 ± 1.1 | 1.8 ± 0.0 | 2.9 |
|
153
|
-
| [YOLO11s-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-seg.pt) | 640 | 46.6 | 37.8 | 117.6 ± 4.9 | 2.9 ± 0.0 | 10.1 |
|
154
|
-
| [YOLO11m-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-seg.pt) | 640 | 51.5 | 41.5 | 281.6 ± 1.2 | 6.3 ± 0.1 | 22.4 |
|
155
|
-
| [YOLO11l-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-seg.pt) | 640 | 53.4 | 42.9 | 344.2 ± 3.2 | 7.8 ± 0.2 | 27.6 |
|
156
|
-
| [YOLO11x-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-seg.pt) | 640 | 54.7 | 43.8 | 664.5 ± 3.2 | 15.8 ± 0.7 | 62.1 |
|
152
|
+
| [YOLO11n-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-seg.pt) | 640 | 38.9 | 32.0 | 65.9 ± 1.1 | 1.8 ± 0.0 | 2.9 | 9.7 |
|
153
|
+
| [YOLO11s-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-seg.pt) | 640 | 46.6 | 37.8 | 117.6 ± 4.9 | 2.9 ± 0.0 | 10.1 | 33.0 |
|
154
|
+
| [YOLO11m-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-seg.pt) | 640 | 51.5 | 41.5 | 281.6 ± 1.2 | 6.3 ± 0.1 | 22.4 | 113.2 |
|
155
|
+
| [YOLO11l-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-seg.pt) | 640 | 53.4 | 42.9 | 344.2 ± 3.2 | 7.8 ± 0.2 | 27.6 | 132.2 |
|
156
|
+
| [YOLO11x-seg](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-seg.pt) | 640 | 54.7 | 43.8 | 664.5 ± 3.2 | 15.8 ± 0.7 | 62.1 | 296.4 |
|
157
157
|
|
158
158
|
- **mAP<sup>val</sup>** values are for single-model single-scale on the [COCO val2017](https://cocodataset.org/) dataset. See [YOLO Performance Metrics](https://docs.ultralytics.com/guides/yolo-performance-metrics/) for details. <br>Reproduce with `yolo val segment data=coco.yaml device=0`
|
159
159
|
- **Speed** metrics are averaged over COCO val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val segment data=coco.yaml batch=1 device=0|cpu`
|
@@ -166,11 +166,11 @@ Consult the [Classification Docs](https://docs.ultralytics.com/tasks/classify/)
|
|
166
166
|
|
167
167
|
| Model | size<br><sup>(pixels) | acc<br><sup>top1 | acc<br><sup>top5 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) at 224 |
|
168
168
|
| -------------------------------------------------------------------------------------------- | --------------------- | ---------------- | ---------------- | ------------------------------ | ----------------------------------- | ------------------ | ------------------------ |
|
169
|
-
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 |
|
170
|
-
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 |
|
171
|
-
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 |
|
172
|
-
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 |
|
173
|
-
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 |
|
169
|
+
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 2.8 | 0.5 |
|
170
|
+
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 6.7 | 1.6 |
|
171
|
+
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 11.6 | 4.9 |
|
172
|
+
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 14.1 | 6.2 |
|
173
|
+
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 29.6 | 13.6 |
|
174
174
|
|
175
175
|
- **acc** values represent model accuracy on the [ImageNet](https://www.image-net.org/) dataset validation set. <br>Reproduce with `yolo val classify data=path/to/ImageNet device=0`
|
176
176
|
- **Speed** metrics are averaged over ImageNet val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val classify data=path/to/ImageNet batch=1 device=0|cpu`
|
@@ -183,11 +183,11 @@ See the [Pose Estimation Docs](https://docs.ultralytics.com/tasks/pose/) for usa
|
|
183
183
|
|
184
184
|
| Model | size<br><sup>(pixels) | mAP<sup>pose<br>50-95 | mAP<sup>pose<br>50 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
185
185
|
| ---------------------------------------------------------------------------------------------- | --------------------- | --------------------- | ------------------ | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
186
|
-
| [YOLO11n-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-pose.pt) | 640 | 50.0 | 81.0 | 52.4 ± 0.5 | 1.7 ± 0.0 | 2.9 | 7.
|
187
|
-
| [YOLO11s-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-pose.pt) | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.
|
188
|
-
| [YOLO11m-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-pose.pt) | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.
|
189
|
-
| [YOLO11l-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-pose.pt) | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6.4 ± 0.1 | 26.
|
190
|
-
| [YOLO11x-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-pose.pt) | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 |
|
186
|
+
| [YOLO11n-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-pose.pt) | 640 | 50.0 | 81.0 | 52.4 ± 0.5 | 1.7 ± 0.0 | 2.9 | 7.4 |
|
187
|
+
| [YOLO11s-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-pose.pt) | 640 | 58.9 | 86.3 | 90.5 ± 0.6 | 2.6 ± 0.0 | 9.9 | 23.1 |
|
188
|
+
| [YOLO11m-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-pose.pt) | 640 | 64.9 | 89.4 | 187.3 ± 0.8 | 4.9 ± 0.1 | 20.9 | 71.4 |
|
189
|
+
| [YOLO11l-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-pose.pt) | 640 | 66.1 | 89.9 | 247.7 ± 1.1 | 6.4 ± 0.1 | 26.1 | 90.3 |
|
190
|
+
| [YOLO11x-pose](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-pose.pt) | 640 | 69.5 | 91.1 | 488.0 ± 13.9 | 12.1 ± 0.2 | 58.8 | 202.8 |
|
191
191
|
|
192
192
|
- **mAP<sup>val</sup>** values are for single-model single-scale on the [COCO Keypoints val2017](https://docs.ultralytics.com/datasets/pose/coco/) dataset. See [YOLO Performance Metrics](https://docs.ultralytics.com/guides/yolo-performance-metrics/) for details. <br>Reproduce with `yolo val pose data=coco-pose.yaml device=0`
|
193
193
|
- **Speed** metrics are averaged over COCO val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce with `yolo val pose data=coco-pose.yaml batch=1 device=0|cpu`
|
@@ -200,11 +200,11 @@ Check the [OBB Docs](https://docs.ultralytics.com/tasks/obb/) for usage examples
|
|
200
200
|
|
201
201
|
| Model | size<br><sup>(pixels) | mAP<sup>test<br>50 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) |
|
202
202
|
| -------------------------------------------------------------------------------------------- | --------------------- | ------------------ | ------------------------------ | ----------------------------------- | ------------------ | ----------------- |
|
203
|
-
| [YOLO11n-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-obb.pt) | 1024 | 78.4 | 117.6 ± 0.8 | 4.4 ± 0.0 | 2.7 |
|
204
|
-
| [YOLO11s-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-obb.pt) | 1024 | 79.5 | 219.4 ± 4.0 | 5.1 ± 0.0 | 9.7 | 57.
|
205
|
-
| [YOLO11m-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-obb.pt) | 1024 | 80.9 | 562.8 ± 2.9 | 10.1 ± 0.4 | 20.9 |
|
206
|
-
| [YOLO11l-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-obb.pt) | 1024 | 81.0 | 712.5 ± 5.0 | 13.5 ± 0.6 | 26.
|
207
|
-
| [YOLO11x-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-obb.pt) | 1024 | 81.3 | 1408.6 ± 7.7 | 28.6 ± 1.0 | 58.8 |
|
203
|
+
| [YOLO11n-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-obb.pt) | 1024 | 78.4 | 117.6 ± 0.8 | 4.4 ± 0.0 | 2.7 | 16.8 |
|
204
|
+
| [YOLO11s-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-obb.pt) | 1024 | 79.5 | 219.4 ± 4.0 | 5.1 ± 0.0 | 9.7 | 57.1 |
|
205
|
+
| [YOLO11m-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-obb.pt) | 1024 | 80.9 | 562.8 ± 2.9 | 10.1 ± 0.4 | 20.9 | 182.8 |
|
206
|
+
| [YOLO11l-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-obb.pt) | 1024 | 81.0 | 712.5 ± 5.0 | 13.5 ± 0.6 | 26.1 | 231.2 |
|
207
|
+
| [YOLO11x-obb](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-obb.pt) | 1024 | 81.3 | 1408.6 ± 7.7 | 28.6 ± 1.0 | 58.8 | 519.1 |
|
208
208
|
|
209
209
|
- **mAP<sup>test</sup>** values are for single-model multiscale performance on the [DOTAv1 test set](https://captain-whu.github.io/DOTA/dataset.html). <br>Reproduce by `yolo val obb data=DOTAv1.yaml device=0 split=test` and submit merged results to the [DOTA evaluation server](https://captain-whu.github.io/DOTA/evaluation.html).
|
210
210
|
- **Speed** metrics are averaged over [DOTAv1 val images](https://docs.ultralytics.com/datasets/obb/dota-v2/#dota-v10) using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. CPU speeds measured with [ONNX](https://onnx.ai/) export. GPU speeds measured with [TensorRT](https://developer.nvidia.com/tensorrt) export. <br>Reproduce by `yolo val obb data=DOTAv1.yaml batch=1 device=0|cpu`
|
@@ -1,13 +1,14 @@
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
2
|
|
3
3
|
import subprocess
|
4
|
+
from pathlib import Path
|
4
5
|
|
5
6
|
import pytest
|
6
7
|
from PIL import Image
|
7
8
|
|
8
9
|
from tests import CUDA_DEVICE_COUNT, CUDA_IS_AVAILABLE, MODELS, TASK_MODEL_DATA
|
9
10
|
from ultralytics.utils import ARM64, ASSETS, LINUX, WEIGHTS_DIR, checks
|
10
|
-
from ultralytics.utils.torch_utils import
|
11
|
+
from ultralytics.utils.torch_utils import TORCH_1_11
|
11
12
|
|
12
13
|
|
13
14
|
def run(cmd: str) -> None:
|
@@ -33,7 +34,7 @@ def test_train(task: str, model: str, data: str) -> None:
|
|
33
34
|
@pytest.mark.parametrize("task,model,data", TASK_MODEL_DATA)
|
34
35
|
def test_val(task: str, model: str, data: str) -> None:
|
35
36
|
"""Test YOLO validation process for specified task, model, and data using a shell command."""
|
36
|
-
run(f"yolo val {task} model={model} data={data} imgsz=32 save_txt save_json")
|
37
|
+
run(f"yolo val {task} model={model} data={data} imgsz=32 save_txt save_json visualize")
|
37
38
|
|
38
39
|
|
39
40
|
@pytest.mark.parametrize("task,model,data", TASK_MODEL_DATA)
|
@@ -48,15 +49,12 @@ def test_export(model: str) -> None:
|
|
48
49
|
run(f"yolo export model={model} format=torchscript imgsz=32")
|
49
50
|
|
50
51
|
|
51
|
-
|
52
|
+
@pytest.mark.skipif(not TORCH_1_11, reason="RTDETR requires torch>=1.11")
|
53
|
+
def test_rtdetr(task: str = "detect", model: Path = WEIGHTS_DIR / "rtdetr-l.pt", data: str = "coco8.yaml") -> None:
|
52
54
|
"""Test the RTDETR functionality within Ultralytics for detection tasks using specified model and data."""
|
53
|
-
#
|
54
|
-
run(f"yolo train {task} model={model} data={data} --imgsz= 160 epochs =1, cache = disk fraction=0.25") # spaces
|
55
|
+
# Add comma, spaces, fraction=0.25 args to test single-image training
|
55
56
|
run(f"yolo predict {task} model={model} source={ASSETS / 'bus.jpg'} imgsz=160 save save_crop save_txt")
|
56
|
-
|
57
|
-
weights = WEIGHTS_DIR / "rtdetr-l.pt"
|
58
|
-
run(f"yolo predict {task} model={weights} source={ASSETS / 'bus.jpg'} imgsz=160 save save_crop save_txt")
|
59
|
-
run(f"yolo train {task} model={weights} epochs=1 imgsz=160 cache=disk data=coco8.yaml")
|
57
|
+
run(f"yolo train {task} model={model} data={data} --imgsz= 160 epochs =1, cache = disk fraction=0.25")
|
60
58
|
|
61
59
|
|
62
60
|
@pytest.mark.skipif(checks.IS_PYTHON_3_12, reason="MobileSAM with CLIP is not supported in Python 3.12")
|
@@ -70,6 +70,7 @@ def test_export_onnx_matrix(task, dynamic, int8, half, batch, simplify, nms):
|
|
70
70
|
simplify=simplify,
|
71
71
|
nms=nms,
|
72
72
|
device=DEVICES[0],
|
73
|
+
# opset=20 if nms else None, # fix ONNX Runtime errors with NMS
|
73
74
|
)
|
74
75
|
YOLO(file)([SOURCE] * batch, imgsz=64 if dynamic else 32, device=DEVICES[0]) # exported model inference
|
75
76
|
Path(file).unlink() # cleanup
|
@@ -114,7 +115,9 @@ def test_train():
|
|
114
115
|
device = tuple(DEVICES) if len(DEVICES) > 1 else DEVICES[0]
|
115
116
|
# NVIDIA Jetson only has one GPU and therefore skipping checks
|
116
117
|
if not IS_JETSON:
|
117
|
-
results = YOLO(MODEL).train(
|
118
|
+
results = YOLO(MODEL).train(
|
119
|
+
data="coco8.yaml", imgsz=64, epochs=1, device=device, batch=15
|
120
|
+
) # requires imgsz>=64
|
118
121
|
visible = eval(os.environ["CUDA_VISIBLE_DEVICES"])
|
119
122
|
assert visible == device, f"Passed GPUs '{device}', but used GPUs '{visible}'"
|
120
123
|
assert (
|
@@ -20,7 +20,7 @@ from ultralytics.utils import (
|
|
20
20
|
WINDOWS,
|
21
21
|
checks,
|
22
22
|
)
|
23
|
-
from ultralytics.utils.torch_utils import
|
23
|
+
from ultralytics.utils.torch_utils import TORCH_1_11, TORCH_1_13, TORCH_2_1
|
24
24
|
|
25
25
|
|
26
26
|
def test_export_torchscript():
|
@@ -35,7 +35,7 @@ def test_export_onnx():
|
|
35
35
|
YOLO(file)(SOURCE, imgsz=32) # exported model inference
|
36
36
|
|
37
37
|
|
38
|
-
@pytest.mark.skipif(not
|
38
|
+
@pytest.mark.skipif(not TORCH_2_1, reason="OpenVINO requires torch>=2.1")
|
39
39
|
def test_export_openvino():
|
40
40
|
"""Test YOLO export to OpenVINO format for model inference compatibility."""
|
41
41
|
file = YOLO(MODEL).export(format="openvino", imgsz=32)
|
@@ -43,7 +43,7 @@ def test_export_openvino():
|
|
43
43
|
|
44
44
|
|
45
45
|
@pytest.mark.slow
|
46
|
-
@pytest.mark.skipif(not
|
46
|
+
@pytest.mark.skipif(not TORCH_2_1, reason="OpenVINO requires torch>=2.1")
|
47
47
|
@pytest.mark.parametrize(
|
48
48
|
"task, dynamic, int8, half, batch, nms",
|
49
49
|
[ # generate all combinations except for exclusion cases
|
@@ -83,7 +83,7 @@ def test_export_openvino_matrix(task, dynamic, int8, half, batch, nms):
|
|
83
83
|
for task, dynamic, int8, half, batch, simplify, nms in product(
|
84
84
|
TASKS, [True, False], [False], [False], [1, 2], [True, False], [True, False]
|
85
85
|
)
|
86
|
-
if not ((int8 and half) or (task == "classify" and nms) or (
|
86
|
+
if not ((int8 and half) or (task == "classify" and nms) or (nms and not TORCH_1_13))
|
87
87
|
],
|
88
88
|
)
|
89
89
|
def test_export_onnx_matrix(task, dynamic, int8, half, batch, simplify, nms):
|
@@ -117,7 +117,7 @@ def test_export_torchscript_matrix(task, dynamic, int8, half, batch, nms):
|
|
117
117
|
|
118
118
|
@pytest.mark.slow
|
119
119
|
@pytest.mark.skipif(not MACOS, reason="CoreML inference only supported on macOS")
|
120
|
-
@pytest.mark.skipif(not
|
120
|
+
@pytest.mark.skipif(not TORCH_1_11, reason="CoreML export requires torch>=1.11")
|
121
121
|
@pytest.mark.skipif(checks.IS_PYTHON_3_13, reason="CoreML not supported in Python 3.13")
|
122
122
|
@pytest.mark.parametrize(
|
123
123
|
"task, dynamic, int8, half, nms, batch",
|
@@ -157,7 +157,7 @@ def test_export_coreml_matrix(task, dynamic, int8, half, nms, batch):
|
|
157
157
|
for task, dynamic, int8, half, batch, nms in product(
|
158
158
|
TASKS, [False], [True, False], [True, False], [1], [True, False]
|
159
159
|
)
|
160
|
-
if not ((int8 and half) or (task == "classify" and nms) or (ARM64 and nms))
|
160
|
+
if not ((int8 and half) or (task == "classify" and nms) or (ARM64 and nms) or (nms and not TORCH_1_13))
|
161
161
|
],
|
162
162
|
)
|
163
163
|
def test_export_tflite_matrix(task, dynamic, int8, half, batch, nms):
|
@@ -169,7 +169,7 @@ def test_export_tflite_matrix(task, dynamic, int8, half, batch, nms):
|
|
169
169
|
Path(file).unlink() # cleanup
|
170
170
|
|
171
171
|
|
172
|
-
@pytest.mark.skipif(not
|
172
|
+
@pytest.mark.skipif(not TORCH_1_11, reason="CoreML export requires torch>=1.11")
|
173
173
|
@pytest.mark.skipif(WINDOWS, reason="CoreML not supported on Windows") # RuntimeError: BlobWriter not loaded
|
174
174
|
@pytest.mark.skipif(LINUX and ARM64, reason="CoreML not supported on aarch64 Linux")
|
175
175
|
@pytest.mark.skipif(checks.IS_PYTHON_3_13, reason="CoreML not supported in Python 3.13")
|
@@ -34,7 +34,7 @@ from ultralytics.utils import (
|
|
34
34
|
is_github_action_running,
|
35
35
|
)
|
36
36
|
from ultralytics.utils.downloads import download
|
37
|
-
from ultralytics.utils.torch_utils import
|
37
|
+
from ultralytics.utils.torch_utils import TORCH_1_11, TORCH_1_13
|
38
38
|
|
39
39
|
IS_TMP_WRITEABLE = is_dir_writeable(TMP) # WARNING: must be run once tests start as TMP does not exist on tests/init
|
40
40
|
|
@@ -125,7 +125,9 @@ def test_predict_img(model_name):
|
|
125
125
|
batch = [
|
126
126
|
str(SOURCE), # filename
|
127
127
|
Path(SOURCE), # Path
|
128
|
-
"https://github.com/ultralytics/assets/releases/download/v0.0.0/zidane.jpg"
|
128
|
+
"https://github.com/ultralytics/assets/releases/download/v0.0.0/zidane.jpg?token=123"
|
129
|
+
if ONLINE
|
130
|
+
else SOURCE, # URI
|
129
131
|
im, # OpenCV
|
130
132
|
Image.open(SOURCE), # PIL
|
131
133
|
np.zeros((320, 640, channels), dtype=np.uint8), # numpy
|
@@ -246,7 +248,7 @@ def test_all_model_yamls():
|
|
246
248
|
"""Test YOLO model creation for all available YAML configurations in the `cfg/models` directory."""
|
247
249
|
for m in (ROOT / "cfg" / "models").rglob("*.yaml"):
|
248
250
|
if "rtdetr" in m.name:
|
249
|
-
if
|
251
|
+
if TORCH_1_11:
|
250
252
|
_ = RTDETR(m.name)(SOURCE, imgsz=640) # must be 640
|
251
253
|
else:
|
252
254
|
YOLO(m.name)
|
@@ -634,7 +636,8 @@ def test_yolo_world():
|
|
634
636
|
)
|
635
637
|
|
636
638
|
|
637
|
-
@pytest.mark.skipif(
|
639
|
+
@pytest.mark.skipif(not TORCH_1_13, reason="YOLOE with CLIP requires torch>=1.13")
|
640
|
+
@pytest.mark.skipif(checks.IS_PYTHON_3_12, reason="YOLOE with CLIP is not supported in Python 3.12")
|
638
641
|
@pytest.mark.skipif(
|
639
642
|
checks.IS_PYTHON_3_8 and LINUX and ARM64,
|
640
643
|
reason="YOLOE with CLIP is not supported in Python 3.8 and aarch64 Linux",
|
@@ -648,16 +651,12 @@ def test_yoloe():
|
|
648
651
|
model.set_classes(names, model.get_text_pe(names))
|
649
652
|
model(SOURCE, conf=0.01)
|
650
653
|
|
651
|
-
import numpy as np
|
652
|
-
|
653
654
|
from ultralytics import YOLOE
|
654
655
|
from ultralytics.models.yolo.yoloe import YOLOEVPSegPredictor
|
655
656
|
|
656
657
|
# visual-prompts
|
657
658
|
visuals = dict(
|
658
|
-
bboxes=np.array(
|
659
|
-
[[221.52, 405.8, 344.98, 857.54], [120, 425, 160, 445]],
|
660
|
-
),
|
659
|
+
bboxes=np.array([[221.52, 405.8, 344.98, 857.54], [120, 425, 160, 445]]),
|
661
660
|
cls=np.array([0, 1]),
|
662
661
|
)
|
663
662
|
model.predict(
|
@@ -674,7 +673,7 @@ def test_yoloe():
|
|
674
673
|
model.val(data="coco128-seg.yaml", load_vp=True, imgsz=32)
|
675
674
|
|
676
675
|
# Train, fine-tune
|
677
|
-
from ultralytics.models.yolo.yoloe import YOLOEPESegTrainer
|
676
|
+
from ultralytics.models.yolo.yoloe import YOLOEPESegTrainer, YOLOESegTrainerFromScratch
|
678
677
|
|
679
678
|
model = YOLOE("yoloe-11s-seg.pt")
|
680
679
|
model.train(
|
@@ -684,6 +683,15 @@ def test_yoloe():
|
|
684
683
|
trainer=YOLOEPESegTrainer,
|
685
684
|
imgsz=32,
|
686
685
|
)
|
686
|
+
# Train, from scratch
|
687
|
+
model = YOLOE("yoloe-11s-seg.yaml")
|
688
|
+
model.train(
|
689
|
+
data=dict(train=dict(yolo_data=["coco128-seg.yaml"]), val=dict(yolo_data=["coco128-seg.yaml"])),
|
690
|
+
epochs=1,
|
691
|
+
close_mosaic=1,
|
692
|
+
trainer=YOLOESegTrainerFromScratch,
|
693
|
+
imgsz=32,
|
694
|
+
)
|
687
695
|
|
688
696
|
# prompt-free
|
689
697
|
# predict
|
@@ -12,8 +12,9 @@ import pytest
|
|
12
12
|
|
13
13
|
from tests import MODEL, TMP
|
14
14
|
from ultralytics import solutions
|
15
|
-
from ultralytics.utils import ASSETS_URL, IS_RASPBERRYPI, checks
|
15
|
+
from ultralytics.utils import ASSETS_URL, IS_RASPBERRYPI, TORCH_VERSION, checks
|
16
16
|
from ultralytics.utils.downloads import safe_download
|
17
|
+
from ultralytics.utils.torch_utils import TORCH_2_4
|
17
18
|
|
18
19
|
# Pre-defined arguments values
|
19
20
|
SHOW = False
|
@@ -205,15 +206,6 @@ def test_solution(name, solution_class, needs_frame_count, video, kwargs):
|
|
205
206
|
)
|
206
207
|
|
207
208
|
|
208
|
-
@pytest.mark.skipif(checks.IS_PYTHON_3_8, reason="Disabled due to unsupported CLIP dependencies.")
|
209
|
-
@pytest.mark.skipif(IS_RASPBERRYPI, reason="Disabled due to slow performance on Raspberry Pi.")
|
210
|
-
def test_similarity_search():
|
211
|
-
"""Test similarity search solution with sample images and text query."""
|
212
|
-
safe_download(f"{ASSETS_URL}/4-imgs-similaritysearch.zip", dir=TMP) # 4 dog images for testing in a zip file
|
213
|
-
searcher = solutions.VisualAISearch(data=str(TMP / "4-imgs-similaritysearch"))
|
214
|
-
_ = searcher("a dog sitting on a bench") # Returns the results in format "- img name | similarity score"
|
215
|
-
|
216
|
-
|
217
209
|
def test_left_click_selection():
|
218
210
|
"""Test distance calculation left click selection functionality."""
|
219
211
|
dc = solutions.DistanceCalculation()
|
@@ -297,7 +289,16 @@ def test_streamlit_handle_video_upload_creates_file():
|
|
297
289
|
os.remove("ultralytics.mp4")
|
298
290
|
|
299
291
|
|
300
|
-
@pytest.mark.skipif(
|
292
|
+
@pytest.mark.skipif(not TORCH_2_4, reason=f"VisualAISearch requires torch>=2.4 (found torch=={TORCH_VERSION})")
|
293
|
+
@pytest.mark.skipif(IS_RASPBERRYPI, reason="Disabled due to slow performance on Raspberry Pi.")
|
294
|
+
def test_similarity_search():
|
295
|
+
"""Test similarity search solution with sample images and text query."""
|
296
|
+
safe_download(f"{ASSETS_URL}/4-imgs-similaritysearch.zip", dir=TMP) # 4 dog images for testing in a zip file
|
297
|
+
searcher = solutions.VisualAISearch(data=str(TMP / "4-imgs-similaritysearch"))
|
298
|
+
_ = searcher("a dog sitting on a bench") # Returns the results in format "- img name | similarity score"
|
299
|
+
|
300
|
+
|
301
|
+
@pytest.mark.skipif(not TORCH_2_4, reason=f"VisualAISearch requires torch>=2.4 (found torch=={TORCH_VERSION})")
|
301
302
|
@pytest.mark.skipif(IS_RASPBERRYPI, reason="Disabled due to slow performance on Raspberry Pi.")
|
302
303
|
def test_similarity_search_app_init():
|
303
304
|
"""Test SearchApp initializes with required attributes."""
|
@@ -306,6 +307,7 @@ def test_similarity_search_app_init():
|
|
306
307
|
assert hasattr(app, "run")
|
307
308
|
|
308
309
|
|
310
|
+
@pytest.mark.skipif(not TORCH_2_4, reason=f"VisualAISearch requires torch>=2.4 (found torch=={TORCH_VERSION})")
|
309
311
|
@pytest.mark.skipif(IS_RASPBERRYPI, reason="Disabled due to slow performance on Raspberry Pi.")
|
310
312
|
def test_similarity_search_complete(tmp_path):
|
311
313
|
"""Test VisualAISearch end-to-end with sample image and query."""
|
@@ -856,7 +856,6 @@ def entrypoint(debug: str = "") -> None:
|
|
856
856
|
return
|
857
857
|
|
858
858
|
special = {
|
859
|
-
"help": lambda: LOGGER.info(CLI_HELP_MSG),
|
860
859
|
"checks": checks.collect_system_info,
|
861
860
|
"version": lambda: LOGGER.info(__version__),
|
862
861
|
"settings": lambda: handle_yolo_settings(args[1:]),
|
@@ -866,6 +865,7 @@ def entrypoint(debug: str = "") -> None:
|
|
866
865
|
"logout": lambda: handle_yolo_hub(args),
|
867
866
|
"copy-cfg": copy_default_cfg,
|
868
867
|
"solutions": lambda: handle_yolo_solutions(args[1:]),
|
868
|
+
"help": lambda: LOGGER.info(CLI_HELP_MSG), # help below hub for -h flag precedence
|
869
869
|
}
|
870
870
|
full_args_dict = {**DEFAULT_CFG_DICT, **{k: None for k in TASKS}, **{k: None for k in MODES}, **special}
|
871
871
|
|
@@ -45,7 +45,7 @@ download: |
|
|
45
45
|
# Convert labels
|
46
46
|
names = "image", "x1", "y1", "x2", "y2", "class", "image_width", "image_height" # column names
|
47
47
|
for d in "annotations_train.csv", "annotations_val.csv", "annotations_test.csv":
|
48
|
-
x = pl.read_csv(dir / "annotations" / d,
|
48
|
+
x = pl.read_csv(dir / "annotations" / d, has_header=False, new_columns=names, infer_schema_length=None).to_numpy() # annotations
|
49
49
|
images, unique_images = x[:, 0], np.unique(x[:, 0])
|
50
50
|
with open((dir / d).with_suffix(".txt").__str__().replace("annotations_", ""), "w", encoding="utf-8") as f:
|
51
51
|
f.writelines(f"./images/{s}\n" for s in unique_images)
|
@@ -7,6 +7,7 @@ import random
|
|
7
7
|
from collections.abc import Iterator
|
8
8
|
from pathlib import Path
|
9
9
|
from typing import Any
|
10
|
+
from urllib.parse import urlsplit
|
10
11
|
|
11
12
|
import numpy as np
|
12
13
|
import torch
|
@@ -247,8 +248,10 @@ def check_source(source):
|
|
247
248
|
if isinstance(source, (str, int, Path)): # int for local usb camera
|
248
249
|
source = str(source)
|
249
250
|
source_lower = source.lower()
|
250
|
-
is_file = source_lower.rpartition(".")[-1] in (IMG_FORMATS | VID_FORMATS)
|
251
251
|
is_url = source_lower.startswith(("https://", "http://", "rtsp://", "rtmp://", "tcp://"))
|
252
|
+
is_file = (urlsplit(source_lower).path if is_url else source_lower).rpartition(".")[-1] in (
|
253
|
+
IMG_FORMATS | VID_FORMATS
|
254
|
+
)
|
252
255
|
webcam = source.isnumeric() or source.endswith(".streams") or (is_url and not is_file)
|
253
256
|
screenshot = source_lower == "screen"
|
254
257
|
if is_url and is_file:
|
@@ -512,6 +512,11 @@ def check_cls_dataset(dataset: str | Path, split: str = "") -> dict[str, Any]:
|
|
512
512
|
dataset = Path(dataset)
|
513
513
|
data_dir = (dataset if dataset.is_dir() else (DATASETS_DIR / dataset)).resolve()
|
514
514
|
if not data_dir.is_dir():
|
515
|
+
if data_dir.suffix != "":
|
516
|
+
raise ValueError(
|
517
|
+
f'Classification datasets must be a directory (data="path/to/dir") not a file (data="{dataset}"), '
|
518
|
+
"See https://docs.ultralytics.com/datasets/classify/"
|
519
|
+
)
|
515
520
|
LOGGER.info("")
|
516
521
|
LOGGER.warning(f"Dataset not found, missing path {data_dir}, attempting download...")
|
517
522
|
t = time.time()
|