dgenerate-ultralytics-headless 8.3.218__tar.gz → 8.3.243__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.
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/PKG-INFO +13 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/README.md +3 -3
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/PKG-INFO +13 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/SOURCES.txt +16 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/requires.txt +13 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/pyproject.toml +12 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/__init__.py +5 -7
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/conftest.py +8 -15
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_cli.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_cuda.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_engine.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_exports.py +57 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_integrations.py +4 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_python.py +84 -53
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_solutions.py +160 -151
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/__init__.py +56 -62
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/Argoverse.yaml +7 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/DOTAv1.5.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/DOTAv1.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/ImageNet.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/VOC.yaml +15 -16
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/african-wildlife.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco128-seg.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/dota8-multispectral.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/dota8.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/hand-keypoints.yaml +1 -2
- dgenerate_ultralytics_headless-8.3.243/ultralytics/cfg/datasets/kitti.yaml +27 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/lvis.yaml +5 -5
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/open-images-v7.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/xView.yaml +16 -16
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/default.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11-pose.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yoloe-11-seg.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yoloe-11.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +9 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yoloe-v8.yaml +9 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +2 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-obb.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-p2.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-world.yaml +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +6 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/annotator.py +3 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/augment.py +285 -475
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/base.py +18 -26
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/build.py +52 -44
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/converter.py +35 -45
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/dataset.py +46 -74
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/loaders.py +42 -49
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/split.py +5 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/split_dota.py +8 -15
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/utils.py +34 -43
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/exporter.py +311 -235
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/model.py +147 -187
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/predictor.py +29 -38
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/results.py +174 -308
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/trainer.py +46 -28
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/tuner.py +23 -34
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/validator.py +8 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/hub/__init__.py +16 -19
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/hub/auth.py +6 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/hub/google/__init__.py +7 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/hub/session.py +15 -25
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/hub/utils.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/fastsam/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/fastsam/model.py +8 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/fastsam/predict.py +17 -29
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/fastsam/utils.py +1 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/fastsam/val.py +5 -7
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/nas/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/nas/model.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/nas/predict.py +7 -9
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/nas/val.py +1 -2
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/rtdetr/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/rtdetr/model.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/rtdetr/predict.py +15 -19
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/rtdetr/train.py +10 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/rtdetr/val.py +21 -23
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/__init__.py +25 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/amg.py +14 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/build.py +26 -20
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/build_sam3.py +377 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/model.py +29 -32
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/blocks.py +83 -144
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/decoders.py +19 -37
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/encoders.py +44 -101
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/memory_attention.py +16 -30
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/sam.py +200 -73
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/tiny_encoder.py +64 -83
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/transformer.py +18 -28
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/utils.py +173 -49
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/predict.py +3940 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/__init__.py +3 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/decoder.py +546 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/encoder.py +529 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/geometry_encoders.py +415 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/maskformer_segmentation.py +286 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/model_misc.py +199 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/necks.py +129 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/sam3_image.py +339 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/text_encoder_ve.py +307 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/vitdet.py +547 -0
- dgenerate_ultralytics_headless-8.3.243/ultralytics/models/sam/sam3/vl_combiner.py +160 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/utils/loss.py +14 -26
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/utils/ops.py +13 -17
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/classify/predict.py +9 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/classify/train.py +9 -17
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/classify/val.py +14 -27
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/detect/predict.py +7 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/detect/train.py +11 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/detect/val.py +44 -54
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/model.py +36 -53
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/obb/predict.py +5 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/obb/train.py +11 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/obb/val.py +39 -36
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/pose/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/pose/predict.py +6 -21
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/pose/train.py +5 -15
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/pose/val.py +38 -57
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/segment/predict.py +9 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/segment/train.py +3 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/segment/val.py +92 -44
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/world/train.py +8 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/world/train_world.py +11 -34
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/yoloe/predict.py +16 -23
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/yoloe/train.py +30 -43
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/yoloe/train_seg.py +5 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/yoloe/val.py +15 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/autobackend.py +138 -75
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/activation.py +4 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/block.py +132 -216
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/conv.py +52 -97
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/head.py +48 -101
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/transformer.py +72 -84
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/utils.py +15 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/tasks.py +92 -152
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/text_model.py +40 -67
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/ai_gym.py +11 -17
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/analytics.py +15 -16
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/config.py +5 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/distance_calculation.py +10 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/heatmap.py +7 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/instance_segmentation.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/object_blurrer.py +7 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/object_counter.py +12 -19
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/object_cropper.py +8 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/parking_management.py +33 -31
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/queue_management.py +10 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/region_counter.py +9 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/security_alarm.py +15 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/similarity_search.py +10 -15
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/solutions.py +75 -74
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/speed_estimation.py +7 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/streamlit_inference.py +2 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/templates/similarity-search.html +7 -18
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/trackzone.py +7 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/vision_eye.py +5 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/basetrack.py +3 -5
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/bot_sort.py +10 -27
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/byte_tracker.py +14 -30
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/track.py +3 -6
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/utils/gmc.py +11 -22
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/utils/kalman_filter.py +37 -48
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/utils/matching.py +12 -15
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/__init__.py +116 -116
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/autobatch.py +2 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/autodevice.py +17 -18
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/benchmarks.py +32 -46
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/base.py +8 -10
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/clearml.py +5 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/comet.py +32 -46
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/dvc.py +13 -18
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/mlflow.py +4 -5
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/neptune.py +7 -15
- dgenerate_ultralytics_headless-8.3.243/ultralytics/utils/callbacks/platform.py +290 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/raytune.py +3 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/tensorboard.py +23 -31
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/wb.py +10 -13
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/checks.py +90 -65
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/cpu.py +3 -8
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/dist.py +8 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/downloads.py +20 -30
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/errors.py +6 -14
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/events.py +2 -4
- dgenerate_ultralytics_headless-8.3.243/ultralytics/utils/export/__init__.py +7 -0
- dgenerate_ultralytics_headless-8.3.218/ultralytics/utils/export/__init__.py → dgenerate_ultralytics_headless-8.3.243/ultralytics/utils/export/engine.py +6 -11
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/export/imx.py +79 -53
- dgenerate_ultralytics_headless-8.3.243/ultralytics/utils/export/tensorflow.py +231 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/files.py +24 -28
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/git.py +9 -11
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/instance.py +30 -51
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/logger.py +203 -111
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/loss.py +14 -22
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/metrics.py +120 -152
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/nms.py +13 -16
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/ops.py +81 -141
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/patches.py +33 -21
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/plotting.py +57 -71
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/tal.py +25 -39
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/torch_utils.py +52 -78
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/tqdm.py +20 -20
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/triton.py +13 -19
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/tuner.py +6 -5
- dgenerate_ultralytics_headless-8.3.218/ultralytics/models/sam/__init__.py +0 -12
- dgenerate_ultralytics_headless-8.3.218/ultralytics/models/sam/predict.py +0 -2042
- dgenerate_ultralytics_headless-8.3.218/ultralytics/utils/callbacks/platform.py +0 -73
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/LICENSE +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/dependency_links.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/entry_points.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/dgenerate_ultralytics_headless.egg-info/top_level.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/setup.cfg +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/assets/bus.jpg +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/assets/zidane.jpg +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/HomeObjects-3K.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco8-grayscale.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco8-multispectral.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/construction-ppe.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/signature.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/12/yolo12-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/12/yolo12-obb.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/12/yolo12-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/12/yolo12-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/12/yolo12.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/__init__.py +4 -4
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/scripts/download_weights.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/scripts/get_coco.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/scripts/get_coco128.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/data/scripts/get_imagenet.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/engine/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/sam/modules/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/utils/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/world/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/models/yolo/yoloe/__init__.py +7 -7
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/__init__.py +7 -7
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/nn/modules/__init__.py +60 -60
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/py.typed +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/solutions/__init__.py +12 -12
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/trackers/utils/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/ultralytics/utils/callbacks/hub.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dgenerate-ultralytics-headless
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.243
|
|
4
4
|
Summary: Automatically built Ultralytics package with python-opencv-headless dependency instead of python-opencv
|
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
|
@@ -42,24 +42,23 @@ Requires-Dist: scipy>=1.4.1
|
|
|
42
42
|
Requires-Dist: torch>=1.8.0
|
|
43
43
|
Requires-Dist: torch!=2.4.0,>=1.8.0; sys_platform == "win32"
|
|
44
44
|
Requires-Dist: torchvision>=0.9.0
|
|
45
|
-
Requires-Dist: psutil
|
|
46
|
-
Requires-Dist: polars
|
|
47
|
-
Requires-Dist: ultralytics-thop>=2.0.
|
|
45
|
+
Requires-Dist: psutil>=5.8.0
|
|
46
|
+
Requires-Dist: polars>=0.20.0
|
|
47
|
+
Requires-Dist: ultralytics-thop>=2.0.18
|
|
48
48
|
Provides-Extra: dev
|
|
49
49
|
Requires-Dist: ipython; extra == "dev"
|
|
50
50
|
Requires-Dist: pytest; extra == "dev"
|
|
51
51
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
52
52
|
Requires-Dist: coverage[toml]; extra == "dev"
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist: mkdocs-
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist: mkdocs-ultralytics-plugin>=0.1.29; extra == "dev"
|
|
57
|
-
Requires-Dist: mkdocs-macros-plugin>=1.0.5; extra == "dev"
|
|
53
|
+
Requires-Dist: zensical>=0.0.15; python_version >= "3.10" and extra == "dev"
|
|
54
|
+
Requires-Dist: mkdocs-ultralytics-plugin>=0.2.4; extra == "dev"
|
|
55
|
+
Requires-Dist: minijinja>=2.0.0; extra == "dev"
|
|
58
56
|
Provides-Extra: export
|
|
59
57
|
Requires-Dist: numpy<2.0.0; extra == "export"
|
|
60
58
|
Requires-Dist: onnx>=1.12.0; platform_system != "Darwin" and extra == "export"
|
|
61
59
|
Requires-Dist: onnx<1.18.0,>=1.12.0; platform_system == "Darwin" and extra == "export"
|
|
62
|
-
Requires-Dist:
|
|
60
|
+
Requires-Dist: onnxslim>=0.1.80; extra == "export"
|
|
61
|
+
Requires-Dist: coremltools>=9.0; (platform_system != "Windows" and python_version <= "3.13") and extra == "export"
|
|
63
62
|
Requires-Dist: scikit-learn>=1.3.2; (platform_system != "Windows" and python_version <= "3.13") and extra == "export"
|
|
64
63
|
Requires-Dist: openvino>=2024.0.0; extra == "export"
|
|
65
64
|
Requires-Dist: tensorflow<=2.19.0,>=2.0.0; extra == "export"
|
|
@@ -80,7 +79,7 @@ Requires-Dist: ipython; extra == "extra"
|
|
|
80
79
|
Requires-Dist: albumentations>=1.4.6; extra == "extra"
|
|
81
80
|
Requires-Dist: faster-coco-eval>=1.6.7; extra == "extra"
|
|
82
81
|
Provides-Extra: typing
|
|
83
|
-
Requires-Dist: scipy-stubs; extra == "typing"
|
|
82
|
+
Requires-Dist: scipy-stubs>=1.14.1.4; python_version >= "3.10" and extra == "typing"
|
|
84
83
|
Requires-Dist: types-pillow; extra == "typing"
|
|
85
84
|
Requires-Dist: types-psutil; extra == "typing"
|
|
86
85
|
Requires-Dist: types-pyyaml; extra == "typing"
|
|
@@ -160,7 +159,7 @@ Request an Enterprise License for commercial use at [Ultralytics Licensing](http
|
|
|
160
159
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
161
160
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="2%" alt="Ultralytics Twitter"></a>
|
|
162
161
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
163
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
162
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
164
163
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
165
164
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="2%" alt="Ultralytics TikTok"></a>
|
|
166
165
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
@@ -381,7 +380,7 @@ We look forward to your contributions to help make the Ultralytics ecosystem eve
|
|
|
381
380
|
|
|
382
381
|
Ultralytics offers two licensing options to suit different needs:
|
|
383
382
|
|
|
384
|
-
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
383
|
+
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license/agpl-v3) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
385
384
|
- **Ultralytics Enterprise License**: Designed for commercial use, this license allows for the seamless integration of Ultralytics software and AI models into commercial products and services, bypassing the open-source requirements of AGPL-3.0. If your use case involves commercial deployment, please contact us via [Ultralytics Licensing](https://www.ultralytics.com/license).
|
|
386
385
|
|
|
387
386
|
## 📞 Contact
|
|
@@ -396,7 +395,7 @@ For bug reports and feature requests related to Ultralytics software, please vis
|
|
|
396
395
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
397
396
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="3%" alt="Ultralytics Twitter"></a>
|
|
398
397
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
399
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
398
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
400
399
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
401
400
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="3%" alt="Ultralytics TikTok"></a>
|
|
402
401
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
@@ -70,7 +70,7 @@ Request an Enterprise License for commercial use at [Ultralytics Licensing](http
|
|
|
70
70
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
71
71
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="2%" alt="Ultralytics Twitter"></a>
|
|
72
72
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
73
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
73
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
74
74
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
75
75
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="2%" alt="Ultralytics TikTok"></a>
|
|
76
76
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
@@ -291,7 +291,7 @@ We look forward to your contributions to help make the Ultralytics ecosystem eve
|
|
|
291
291
|
|
|
292
292
|
Ultralytics offers two licensing options to suit different needs:
|
|
293
293
|
|
|
294
|
-
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
294
|
+
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license/agpl-v3) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
295
295
|
- **Ultralytics Enterprise License**: Designed for commercial use, this license allows for the seamless integration of Ultralytics software and AI models into commercial products and services, bypassing the open-source requirements of AGPL-3.0. If your use case involves commercial deployment, please contact us via [Ultralytics Licensing](https://www.ultralytics.com/license).
|
|
296
296
|
|
|
297
297
|
## 📞 Contact
|
|
@@ -306,7 +306,7 @@ For bug reports and feature requests related to Ultralytics software, please vis
|
|
|
306
306
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
307
307
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="3%" alt="Ultralytics Twitter"></a>
|
|
308
308
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
309
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
309
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
310
310
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
311
311
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="3%" alt="Ultralytics TikTok"></a>
|
|
312
312
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dgenerate-ultralytics-headless
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.243
|
|
4
4
|
Summary: Automatically built Ultralytics package with python-opencv-headless dependency instead of python-opencv
|
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
|
@@ -42,24 +42,23 @@ Requires-Dist: scipy>=1.4.1
|
|
|
42
42
|
Requires-Dist: torch>=1.8.0
|
|
43
43
|
Requires-Dist: torch!=2.4.0,>=1.8.0; sys_platform == "win32"
|
|
44
44
|
Requires-Dist: torchvision>=0.9.0
|
|
45
|
-
Requires-Dist: psutil
|
|
46
|
-
Requires-Dist: polars
|
|
47
|
-
Requires-Dist: ultralytics-thop>=2.0.
|
|
45
|
+
Requires-Dist: psutil>=5.8.0
|
|
46
|
+
Requires-Dist: polars>=0.20.0
|
|
47
|
+
Requires-Dist: ultralytics-thop>=2.0.18
|
|
48
48
|
Provides-Extra: dev
|
|
49
49
|
Requires-Dist: ipython; extra == "dev"
|
|
50
50
|
Requires-Dist: pytest; extra == "dev"
|
|
51
51
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
52
52
|
Requires-Dist: coverage[toml]; extra == "dev"
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist: mkdocs-
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist: mkdocs-ultralytics-plugin>=0.1.29; extra == "dev"
|
|
57
|
-
Requires-Dist: mkdocs-macros-plugin>=1.0.5; extra == "dev"
|
|
53
|
+
Requires-Dist: zensical>=0.0.15; python_version >= "3.10" and extra == "dev"
|
|
54
|
+
Requires-Dist: mkdocs-ultralytics-plugin>=0.2.4; extra == "dev"
|
|
55
|
+
Requires-Dist: minijinja>=2.0.0; extra == "dev"
|
|
58
56
|
Provides-Extra: export
|
|
59
57
|
Requires-Dist: numpy<2.0.0; extra == "export"
|
|
60
58
|
Requires-Dist: onnx>=1.12.0; platform_system != "Darwin" and extra == "export"
|
|
61
59
|
Requires-Dist: onnx<1.18.0,>=1.12.0; platform_system == "Darwin" and extra == "export"
|
|
62
|
-
Requires-Dist:
|
|
60
|
+
Requires-Dist: onnxslim>=0.1.80; extra == "export"
|
|
61
|
+
Requires-Dist: coremltools>=9.0; (platform_system != "Windows" and python_version <= "3.13") and extra == "export"
|
|
63
62
|
Requires-Dist: scikit-learn>=1.3.2; (platform_system != "Windows" and python_version <= "3.13") and extra == "export"
|
|
64
63
|
Requires-Dist: openvino>=2024.0.0; extra == "export"
|
|
65
64
|
Requires-Dist: tensorflow<=2.19.0,>=2.0.0; extra == "export"
|
|
@@ -80,7 +79,7 @@ Requires-Dist: ipython; extra == "extra"
|
|
|
80
79
|
Requires-Dist: albumentations>=1.4.6; extra == "extra"
|
|
81
80
|
Requires-Dist: faster-coco-eval>=1.6.7; extra == "extra"
|
|
82
81
|
Provides-Extra: typing
|
|
83
|
-
Requires-Dist: scipy-stubs; extra == "typing"
|
|
82
|
+
Requires-Dist: scipy-stubs>=1.14.1.4; python_version >= "3.10" and extra == "typing"
|
|
84
83
|
Requires-Dist: types-pillow; extra == "typing"
|
|
85
84
|
Requires-Dist: types-psutil; extra == "typing"
|
|
86
85
|
Requires-Dist: types-pyyaml; extra == "typing"
|
|
@@ -160,7 +159,7 @@ Request an Enterprise License for commercial use at [Ultralytics Licensing](http
|
|
|
160
159
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
161
160
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="2%" alt="Ultralytics Twitter"></a>
|
|
162
161
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
163
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
162
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
|
|
164
163
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
165
164
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="2%" alt="Ultralytics TikTok"></a>
|
|
166
165
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
|
|
@@ -381,7 +380,7 @@ We look forward to your contributions to help make the Ultralytics ecosystem eve
|
|
|
381
380
|
|
|
382
381
|
Ultralytics offers two licensing options to suit different needs:
|
|
383
382
|
|
|
384
|
-
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
383
|
+
- **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/license/agpl-v3) open-source license is perfect for students, researchers, and enthusiasts. It encourages open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for full details.
|
|
385
384
|
- **Ultralytics Enterprise License**: Designed for commercial use, this license allows for the seamless integration of Ultralytics software and AI models into commercial products and services, bypassing the open-source requirements of AGPL-3.0. If your use case involves commercial deployment, please contact us via [Ultralytics Licensing](https://www.ultralytics.com/license).
|
|
386
385
|
|
|
387
386
|
## 📞 Contact
|
|
@@ -396,7 +395,7 @@ For bug reports and feature requests related to Ultralytics software, please vis
|
|
|
396
395
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
397
396
|
<a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="3%" alt="Ultralytics Twitter"></a>
|
|
398
397
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
399
|
-
<a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
398
|
+
<a href="https://www.youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
|
|
400
399
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
401
400
|
<a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="3%" alt="Ultralytics TikTok"></a>
|
|
402
401
|
<img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
|
|
@@ -57,6 +57,7 @@ ultralytics/cfg/datasets/dog-pose.yaml
|
|
|
57
57
|
ultralytics/cfg/datasets/dota8-multispectral.yaml
|
|
58
58
|
ultralytics/cfg/datasets/dota8.yaml
|
|
59
59
|
ultralytics/cfg/datasets/hand-keypoints.yaml
|
|
60
|
+
ultralytics/cfg/datasets/kitti.yaml
|
|
60
61
|
ultralytics/cfg/datasets/lvis.yaml
|
|
61
62
|
ultralytics/cfg/datasets/medical-pills.yaml
|
|
62
63
|
ultralytics/cfg/datasets/open-images-v7.yaml
|
|
@@ -167,6 +168,7 @@ ultralytics/models/rtdetr/val.py
|
|
|
167
168
|
ultralytics/models/sam/__init__.py
|
|
168
169
|
ultralytics/models/sam/amg.py
|
|
169
170
|
ultralytics/models/sam/build.py
|
|
171
|
+
ultralytics/models/sam/build_sam3.py
|
|
170
172
|
ultralytics/models/sam/model.py
|
|
171
173
|
ultralytics/models/sam/predict.py
|
|
172
174
|
ultralytics/models/sam/modules/__init__.py
|
|
@@ -178,6 +180,17 @@ ultralytics/models/sam/modules/sam.py
|
|
|
178
180
|
ultralytics/models/sam/modules/tiny_encoder.py
|
|
179
181
|
ultralytics/models/sam/modules/transformer.py
|
|
180
182
|
ultralytics/models/sam/modules/utils.py
|
|
183
|
+
ultralytics/models/sam/sam3/__init__.py
|
|
184
|
+
ultralytics/models/sam/sam3/decoder.py
|
|
185
|
+
ultralytics/models/sam/sam3/encoder.py
|
|
186
|
+
ultralytics/models/sam/sam3/geometry_encoders.py
|
|
187
|
+
ultralytics/models/sam/sam3/maskformer_segmentation.py
|
|
188
|
+
ultralytics/models/sam/sam3/model_misc.py
|
|
189
|
+
ultralytics/models/sam/sam3/necks.py
|
|
190
|
+
ultralytics/models/sam/sam3/sam3_image.py
|
|
191
|
+
ultralytics/models/sam/sam3/text_encoder_ve.py
|
|
192
|
+
ultralytics/models/sam/sam3/vitdet.py
|
|
193
|
+
ultralytics/models/sam/sam3/vl_combiner.py
|
|
181
194
|
ultralytics/models/utils/__init__.py
|
|
182
195
|
ultralytics/models/utils/loss.py
|
|
183
196
|
ultralytics/models/utils/ops.py
|
|
@@ -290,4 +303,6 @@ ultralytics/utils/callbacks/raytune.py
|
|
|
290
303
|
ultralytics/utils/callbacks/tensorboard.py
|
|
291
304
|
ultralytics/utils/callbacks/wb.py
|
|
292
305
|
ultralytics/utils/export/__init__.py
|
|
293
|
-
ultralytics/utils/export/
|
|
306
|
+
ultralytics/utils/export/engine.py
|
|
307
|
+
ultralytics/utils/export/imx.py
|
|
308
|
+
ultralytics/utils/export/tensorflow.py
|
|
@@ -7,9 +7,9 @@ requests>=2.23.0
|
|
|
7
7
|
scipy>=1.4.1
|
|
8
8
|
torch>=1.8.0
|
|
9
9
|
torchvision>=0.9.0
|
|
10
|
-
psutil
|
|
11
|
-
polars
|
|
12
|
-
ultralytics-thop>=2.0.
|
|
10
|
+
psutil>=5.8.0
|
|
11
|
+
polars>=0.20.0
|
|
12
|
+
ultralytics-thop>=2.0.18
|
|
13
13
|
|
|
14
14
|
[:sys_platform == "win32"]
|
|
15
15
|
torch!=2.4.0,>=1.8.0
|
|
@@ -19,14 +19,15 @@ ipython
|
|
|
19
19
|
pytest
|
|
20
20
|
pytest-cov
|
|
21
21
|
coverage[toml]
|
|
22
|
-
mkdocs>=
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
mkdocs-ultralytics-plugin>=0.2.4
|
|
23
|
+
minijinja>=2.0.0
|
|
24
|
+
|
|
25
|
+
[dev:python_version >= "3.10"]
|
|
26
|
+
zensical>=0.0.15
|
|
27
27
|
|
|
28
28
|
[export]
|
|
29
29
|
numpy<2.0.0
|
|
30
|
+
onnxslim>=0.1.80
|
|
30
31
|
openvino>=2024.0.0
|
|
31
32
|
tensorflow<=2.19.0,>=2.0.0
|
|
32
33
|
tensorflowjs>=2.0.0
|
|
@@ -41,7 +42,7 @@ tensorstore>=0.1.63
|
|
|
41
42
|
onnx>=1.12.0
|
|
42
43
|
|
|
43
44
|
[export:platform_system != "Windows" and python_version <= "3.13"]
|
|
44
|
-
coremltools>=
|
|
45
|
+
coremltools>=9.0
|
|
45
46
|
scikit-learn>=1.3.2
|
|
46
47
|
|
|
47
48
|
[export:platform_system == "Darwin"]
|
|
@@ -64,9 +65,11 @@ streamlit>=1.29.0
|
|
|
64
65
|
flask>=3.0.1
|
|
65
66
|
|
|
66
67
|
[typing]
|
|
67
|
-
scipy-stubs
|
|
68
68
|
types-pillow
|
|
69
69
|
types-psutil
|
|
70
70
|
types-pyyaml
|
|
71
71
|
types-requests
|
|
72
72
|
types-shapely
|
|
73
|
+
|
|
74
|
+
[typing:python_version >= "3.10"]
|
|
75
|
+
scipy-stubs>=1.14.1.4
|
{dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/pyproject.toml
RENAMED
|
@@ -71,9 +71,9 @@ dependencies = [
|
|
|
71
71
|
"torch>=1.8.0",
|
|
72
72
|
"torch>=1.8.0,!=2.4.0; sys_platform == 'win32'", # Windows CPU errors w/ 2.4.0 https://github.com/ultralytics/ultralytics/issues/15049
|
|
73
73
|
"torchvision>=0.9.0",
|
|
74
|
-
"psutil", # system utilization
|
|
75
|
-
"polars",
|
|
76
|
-
"ultralytics-thop>=2.0.
|
|
74
|
+
"psutil>=5.8.0", # system utilization
|
|
75
|
+
"polars>=0.20.0",
|
|
76
|
+
"ultralytics-thop>=2.0.18", # FLOPs computation https://github.com/ultralytics/thop
|
|
77
77
|
]
|
|
78
78
|
|
|
79
79
|
# Optional dependencies ------------------------------------------------------------------------------------------------
|
|
@@ -83,17 +83,16 @@ dev = [
|
|
|
83
83
|
"pytest",
|
|
84
84
|
"pytest-cov",
|
|
85
85
|
"coverage[toml]",
|
|
86
|
-
"
|
|
87
|
-
"mkdocs-
|
|
88
|
-
"
|
|
89
|
-
"mkdocs-ultralytics-plugin>=0.1.29", # for meta descriptions and images, dates and authors
|
|
90
|
-
"mkdocs-macros-plugin>=1.0.5", # duplicating content (i.e. export tables) in multiple places
|
|
86
|
+
"zensical>=0.0.15; python_version >= '3.10'",
|
|
87
|
+
"mkdocs-ultralytics-plugin>=0.2.4", # for meta descriptions and images, dates and authors
|
|
88
|
+
"minijinja>=2.0.0", # render docs macros without mkdocs-macros-plugin
|
|
91
89
|
]
|
|
92
90
|
export = [
|
|
93
91
|
"numpy<2.0.0", # TF 2.20 compatibility
|
|
94
92
|
"onnx>=1.12.0; platform_system != 'Darwin'", # ONNX export
|
|
95
|
-
"onnx>=1.12.0,<1.18.0; platform_system == 'Darwin'", # TF inference hanging on MacOS
|
|
96
|
-
"
|
|
93
|
+
"onnx>=1.12.0,<1.18.0; platform_system == 'Darwin'", # TF inference hanging on MacOS (tested up to onnx==1.20.0)
|
|
94
|
+
"onnxslim>=0.1.80",
|
|
95
|
+
"coremltools>=9.0; platform_system != 'Windows' and python_version <= '3.13'", # CoreML supported on macOS and Linux
|
|
97
96
|
"scikit-learn>=1.3.2; platform_system != 'Windows' and python_version <= '3.13'", # CoreML k-means quantization
|
|
98
97
|
"openvino>=2024.0.0", # OpenVINO export
|
|
99
98
|
"tensorflow>=2.0.0,<=2.19.0", # TF bug https://github.com/ultralytics/ultralytics/issues/5161
|
|
@@ -118,7 +117,7 @@ extra = [
|
|
|
118
117
|
"faster-coco-eval>=1.6.7", # COCO mAP
|
|
119
118
|
]
|
|
120
119
|
typing = [
|
|
121
|
-
"scipy-stubs",
|
|
120
|
+
"scipy-stubs>=1.14.1.4; python_version >= '3.10'",
|
|
122
121
|
"types-pillow",
|
|
123
122
|
"types-psutil",
|
|
124
123
|
"types-pyyaml",
|
|
@@ -189,5 +188,5 @@ close-quotes-on-newline = true
|
|
|
189
188
|
in-place = true
|
|
190
189
|
|
|
191
190
|
[tool.codespell]
|
|
192
|
-
ignore-words-list = "crate,nd,ned,strack,dota,ane,segway,fo,gool,winn,commend,bloc,nam,afterall"
|
|
193
|
-
skip =
|
|
191
|
+
ignore-words-list = "grey,writeable,finalY,RepResNet,Idenfy,WIT,Smoot,EHR,ROUGE,ALS,iTerm,Carmel,FPR,Hach,Calle,ore,COO,MOT,crate,nd,ned,strack,dota,ane,segway,fo,gool,winn,commend,bloc,nam,afterall,skelton,goin"
|
|
192
|
+
skip = "*.pt,*.pth,*.torchscript,*.onnx,*.tflite,*.pb,*.bin,*.param,*.mlmodel,*.engine,*.npy,*.data*,*.csv,*pnnx*,*venv*,*translat*,*lock*,__pycache__*,*.ico,*.jpg,*.png,*.webp,*.avif,*.mp4,*.mov,/runs,/.git,./docs/??/*.md,./docs/mkdocs_??.yml"
|
{dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/__init__.py
RENAMED
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
2
|
|
|
3
3
|
from ultralytics.cfg import TASK2DATA, TASK2MODEL, TASKS
|
|
4
|
-
from ultralytics.utils import ASSETS,
|
|
4
|
+
from ultralytics.utils import ASSETS, WEIGHTS_DIR, checks
|
|
5
5
|
|
|
6
6
|
# Constants used in tests
|
|
7
7
|
MODEL = WEIGHTS_DIR / "path with spaces" / "yolo11n.pt" # test spaces in path
|
|
8
8
|
CFG = "yolo11n.yaml"
|
|
9
9
|
SOURCE = ASSETS / "bus.jpg"
|
|
10
10
|
SOURCES_LIST = [ASSETS / "bus.jpg", ASSETS, ASSETS / "*", ASSETS / "**/*.jpg"]
|
|
11
|
-
TMP = (ROOT / "../tests/tmp").resolve() # temp directory for test files
|
|
12
11
|
CUDA_IS_AVAILABLE = checks.cuda_is_available()
|
|
13
12
|
CUDA_DEVICE_COUNT = checks.cuda_device_count()
|
|
14
13
|
TASK_MODEL_DATA = [(task, WEIGHTS_DIR / TASK2MODEL[task], TASK2DATA[task]) for task in TASKS]
|
|
15
|
-
MODELS = frozenset(list(TASK2MODEL.values())
|
|
14
|
+
MODELS = frozenset([*list(TASK2MODEL.values()), "yolo11n-grayscale.pt"])
|
|
16
15
|
|
|
17
16
|
__all__ = (
|
|
18
|
-
"MODEL",
|
|
19
17
|
"CFG",
|
|
18
|
+
"CUDA_DEVICE_COUNT",
|
|
19
|
+
"CUDA_IS_AVAILABLE",
|
|
20
|
+
"MODEL",
|
|
20
21
|
"SOURCE",
|
|
21
22
|
"SOURCES_LIST",
|
|
22
|
-
"TMP",
|
|
23
|
-
"CUDA_IS_AVAILABLE",
|
|
24
|
-
"CUDA_DEVICE_COUNT",
|
|
25
23
|
)
|
{dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/conftest.py
RENAMED
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
import shutil
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
|
|
6
|
-
from tests import TMP
|
|
7
|
-
|
|
8
6
|
|
|
9
7
|
def pytest_addoption(parser):
|
|
10
8
|
"""Add custom command-line options to pytest."""
|
|
@@ -12,8 +10,7 @@ def pytest_addoption(parser):
|
|
|
12
10
|
|
|
13
11
|
|
|
14
12
|
def pytest_collection_modifyitems(config, items):
|
|
15
|
-
"""
|
|
16
|
-
Modify the list of test items to exclude tests marked as slow if the --slow option is not specified.
|
|
13
|
+
"""Modify the list of test items to exclude tests marked as slow if the --slow option is not specified.
|
|
17
14
|
|
|
18
15
|
Args:
|
|
19
16
|
config: The pytest configuration object that provides access to command-line options.
|
|
@@ -25,11 +22,10 @@ def pytest_collection_modifyitems(config, items):
|
|
|
25
22
|
|
|
26
23
|
|
|
27
24
|
def pytest_sessionstart(session):
|
|
28
|
-
"""
|
|
29
|
-
Initialize session configurations for pytest.
|
|
25
|
+
"""Initialize session configurations for pytest.
|
|
30
26
|
|
|
31
27
|
This function is automatically called by pytest after the 'Session' object has been created but before performing
|
|
32
|
-
test collection. It sets the initial seeds
|
|
28
|
+
test collection. It sets the initial seeds for the test session.
|
|
33
29
|
|
|
34
30
|
Args:
|
|
35
31
|
session: The pytest session object.
|
|
@@ -37,16 +33,13 @@ def pytest_sessionstart(session):
|
|
|
37
33
|
from ultralytics.utils.torch_utils import init_seeds
|
|
38
34
|
|
|
39
35
|
init_seeds()
|
|
40
|
-
shutil.rmtree(TMP, ignore_errors=True) # Delete any existing tests/tmp directory
|
|
41
|
-
TMP.mkdir(parents=True, exist_ok=True) # Create a new empty directory
|
|
42
36
|
|
|
43
37
|
|
|
44
38
|
def pytest_terminal_summary(terminalreporter, exitstatus, config):
|
|
45
|
-
"""
|
|
46
|
-
Cleanup operations after pytest session.
|
|
39
|
+
"""Cleanup operations after pytest session.
|
|
47
40
|
|
|
48
|
-
This function is automatically called by pytest at the end of the entire test session. It removes certain files
|
|
49
|
-
|
|
41
|
+
This function is automatically called by pytest at the end of the entire test session. It removes certain files and
|
|
42
|
+
directories used during testing.
|
|
50
43
|
|
|
51
44
|
Args:
|
|
52
45
|
terminalreporter: The terminal reporter object used for terminal output.
|
|
@@ -57,10 +50,10 @@ def pytest_terminal_summary(terminalreporter, exitstatus, config):
|
|
|
57
50
|
|
|
58
51
|
# Remove files
|
|
59
52
|
models = [path for x in {"*.onnx", "*.torchscript"} for path in WEIGHTS_DIR.rglob(x)]
|
|
60
|
-
for file in ["decelera_portrait_min.mov", "bus.jpg", "yolo11n.onnx", "yolo11n.torchscript"
|
|
53
|
+
for file in ["decelera_portrait_min.mov", "bus.jpg", "yolo11n.onnx", "yolo11n.torchscript", *models]:
|
|
61
54
|
Path(file).unlink(missing_ok=True)
|
|
62
55
|
|
|
63
56
|
# Remove directories
|
|
64
57
|
models = [path for x in {"*.mlpackage", "*_openvino_model"} for path in WEIGHTS_DIR.rglob(x)]
|
|
65
|
-
for directory in [WEIGHTS_DIR / "path with spaces",
|
|
58
|
+
for directory in [WEIGHTS_DIR / "path with spaces", *models]:
|
|
66
59
|
shutil.rmtree(directory, ignore_errors=True)
|
{dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_cli.py
RENAMED
|
@@ -82,7 +82,7 @@ def test_fastsam(
|
|
|
82
82
|
everything_results = sam_model(s, device="cpu", retina_masks=True, imgsz=320, conf=0.4, iou=0.9)
|
|
83
83
|
|
|
84
84
|
# Remove small regions
|
|
85
|
-
|
|
85
|
+
_new_masks, _ = Predictor.remove_small_regions(everything_results[0].masks.data, min_area=20)
|
|
86
86
|
|
|
87
87
|
# Run inference with bboxes and points and texts prompt at the same time
|
|
88
88
|
sam_model(source, bboxes=[439, 437, 524, 709], points=[[200, 200]], labels=[1], texts="a photo of a dog")
|
{dgenerate_ultralytics_headless-8.3.218 → dgenerate_ultralytics_headless-8.3.243}/tests/test_cuda.py
RENAMED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
2
|
|
|
3
|
+
import os
|
|
3
4
|
from itertools import product
|
|
4
5
|
from pathlib import Path
|
|
5
6
|
|
|
@@ -110,19 +111,15 @@ def test_export_engine_matrix(task, dynamic, int8, half, batch):
|
|
|
110
111
|
@pytest.mark.skipif(not DEVICES, reason="No CUDA devices available")
|
|
111
112
|
def test_train():
|
|
112
113
|
"""Test model training on a minimal dataset using available CUDA devices."""
|
|
113
|
-
import os
|
|
114
|
-
|
|
115
114
|
device = tuple(DEVICES) if len(DEVICES) > 1 else DEVICES[0]
|
|
116
115
|
# NVIDIA Jetson only has one GPU and therefore skipping checks
|
|
117
116
|
if not IS_JETSON:
|
|
118
|
-
results = YOLO(MODEL).train(
|
|
119
|
-
|
|
120
|
-
) # requires imgsz>=64
|
|
117
|
+
results = YOLO(MODEL).train(data="coco8.yaml", imgsz=64, epochs=1, device=device, batch=15)
|
|
118
|
+
results = YOLO(MODEL).train(data="coco128.yaml", imgsz=64, epochs=1, device=device, batch=15, val=False)
|
|
121
119
|
visible = eval(os.environ["CUDA_VISIBLE_DEVICES"])
|
|
122
120
|
assert visible == device, f"Passed GPUs '{device}', but used GPUs '{visible}'"
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
) # DDP returns None, single-GPU returns metrics
|
|
121
|
+
# Note DDP training returns None, single-GPU returns metrics
|
|
122
|
+
assert (results is None) if len(DEVICES) > 1 else (results is not None)
|
|
126
123
|
|
|
127
124
|
|
|
128
125
|
@pytest.mark.slow
|
|
@@ -13,7 +13,7 @@ from ultralytics.models.yolo import classify, detect, segment
|
|
|
13
13
|
from ultralytics.utils import ASSETS, DEFAULT_CFG, WEIGHTS_DIR
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
def test_func(*args):
|
|
16
|
+
def test_func(*args):
|
|
17
17
|
"""Test function callback for evaluating YOLO model performance metrics."""
|
|
18
18
|
print("callback test passed")
|
|
19
19
|
|
|
@@ -12,15 +12,8 @@ import pytest
|
|
|
12
12
|
from tests import MODEL, SOURCE
|
|
13
13
|
from ultralytics import YOLO
|
|
14
14
|
from ultralytics.cfg import TASK2DATA, TASK2MODEL, TASKS
|
|
15
|
-
from ultralytics.utils import
|
|
16
|
-
|
|
17
|
-
IS_RASPBERRYPI,
|
|
18
|
-
LINUX,
|
|
19
|
-
MACOS,
|
|
20
|
-
WINDOWS,
|
|
21
|
-
checks,
|
|
22
|
-
)
|
|
23
|
-
from ultralytics.utils.torch_utils import TORCH_1_11, TORCH_1_13, TORCH_2_1
|
|
15
|
+
from ultralytics.utils import ARM64, IS_RASPBERRYPI, LINUX, MACOS, WINDOWS, checks
|
|
16
|
+
from ultralytics.utils.torch_utils import TORCH_1_10, TORCH_1_11, TORCH_1_13, TORCH_2_1, TORCH_2_8, TORCH_2_9
|
|
24
17
|
|
|
25
18
|
|
|
26
19
|
def test_export_torchscript():
|
|
@@ -217,6 +210,7 @@ def test_export_paddle():
|
|
|
217
210
|
|
|
218
211
|
|
|
219
212
|
@pytest.mark.slow
|
|
213
|
+
@pytest.mark.skipif(not TORCH_1_10, reason="MNN export requires torch>=1.10")
|
|
220
214
|
def test_export_mnn():
|
|
221
215
|
"""Test YOLO export to MNN format (WARNING: MNN test must precede NCNN test or CI error on Windows)."""
|
|
222
216
|
file = YOLO(MODEL).export(format="mnn", imgsz=32)
|
|
@@ -224,6 +218,7 @@ def test_export_mnn():
|
|
|
224
218
|
|
|
225
219
|
|
|
226
220
|
@pytest.mark.slow
|
|
221
|
+
@pytest.mark.skipif(not TORCH_1_10, reason="MNN export requires torch>=1.10")
|
|
227
222
|
@pytest.mark.parametrize(
|
|
228
223
|
"task, int8, half, batch",
|
|
229
224
|
[ # generate all combinations except for exclusion cases
|
|
@@ -255,10 +250,60 @@ def test_export_ncnn_matrix(task, half, batch):
|
|
|
255
250
|
shutil.rmtree(file, ignore_errors=True) # retry in case of potential lingering multi-threaded file usage errors
|
|
256
251
|
|
|
257
252
|
|
|
258
|
-
@pytest.mark.skipif(
|
|
259
|
-
@pytest.mark.skipif(not
|
|
253
|
+
@pytest.mark.skipif(not TORCH_2_9, reason="IMX export requires torch>=2.9.0")
|
|
254
|
+
@pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_9, reason="Requires Python>=3.9")
|
|
255
|
+
@pytest.mark.skipif(WINDOWS or MACOS, reason="Skipping test on Windows and Macos")
|
|
256
|
+
@pytest.mark.skipif(ARM64, reason="IMX export is not supported on ARM64 architectures.")
|
|
260
257
|
def test_export_imx():
|
|
261
258
|
"""Test YOLO export to IMX format."""
|
|
262
|
-
model = YOLO(
|
|
259
|
+
model = YOLO(MODEL)
|
|
263
260
|
file = model.export(format="imx", imgsz=32)
|
|
264
261
|
YOLO(file)(SOURCE, imgsz=32)
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
@pytest.mark.slow
|
|
265
|
+
@pytest.mark.skipif(not TORCH_2_8, reason="Axelera export requires torch>=2.8.0")
|
|
266
|
+
@pytest.mark.skipif(not LINUX, reason="Axelera export only supported on Linux")
|
|
267
|
+
@pytest.mark.skipif(not checks.IS_PYTHON_3_10, reason="Axelera export requires Python 3.10")
|
|
268
|
+
def test_export_axelera():
|
|
269
|
+
"""Test YOLO export to Axelera format."""
|
|
270
|
+
# For faster testing, use a smaller calibration dataset
|
|
271
|
+
# 32 image size crashes axelera export, so use 64
|
|
272
|
+
file = YOLO(MODEL).export(format="axelera", imgsz=64, data="coco8.yaml")
|
|
273
|
+
assert Path(file).exists(), f"Axelera export failed, directory not found: {file}"
|
|
274
|
+
shutil.rmtree(file, ignore_errors=True) # cleanup
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
@pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_10 or not TORCH_2_9, reason="Requires Python>=3.10 and Torch>=2.9.0")
|
|
278
|
+
@pytest.mark.skipif(WINDOWS, reason="Skipping test on Windows")
|
|
279
|
+
def test_export_executorch():
|
|
280
|
+
"""Test YOLO model export to ExecuTorch format."""
|
|
281
|
+
file = YOLO(MODEL).export(format="executorch", imgsz=32)
|
|
282
|
+
assert Path(file).exists(), f"ExecuTorch export failed, directory not found: {file}"
|
|
283
|
+
# Check that .pte file exists in the exported directory
|
|
284
|
+
pte_file = Path(file) / Path(MODEL).with_suffix(".pte").name
|
|
285
|
+
assert pte_file.exists(), f"ExecuTorch .pte file not found: {pte_file}"
|
|
286
|
+
# Check that metadata.yaml exists
|
|
287
|
+
metadata_file = Path(file) / "metadata.yaml"
|
|
288
|
+
assert metadata_file.exists(), f"ExecuTorch metadata.yaml not found: {metadata_file}"
|
|
289
|
+
# Note: Inference testing skipped as ExecuTorch requires special runtime setup
|
|
290
|
+
shutil.rmtree(file, ignore_errors=True) # cleanup
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
@pytest.mark.slow
|
|
294
|
+
@pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_10 or not TORCH_2_9, reason="Requires Python>=3.10 and Torch>=2.9.0")
|
|
295
|
+
@pytest.mark.skipif(WINDOWS, reason="Skipping test on Windows")
|
|
296
|
+
@pytest.mark.parametrize("task", TASKS)
|
|
297
|
+
def test_export_executorch_matrix(task):
|
|
298
|
+
"""Test YOLO export to ExecuTorch format for various task types."""
|
|
299
|
+
file = YOLO(TASK2MODEL[task]).export(format="executorch", imgsz=32)
|
|
300
|
+
assert Path(file).exists(), f"ExecuTorch export failed for task '{task}', directory not found: {file}"
|
|
301
|
+
# Check that .pte file exists in the exported directory
|
|
302
|
+
model_name = Path(TASK2MODEL[task]).with_suffix(".pte").name
|
|
303
|
+
pte_file = Path(file) / model_name
|
|
304
|
+
assert pte_file.exists(), f"ExecuTorch .pte file not found for task '{task}': {pte_file}"
|
|
305
|
+
# Check that metadata.yaml exists
|
|
306
|
+
metadata_file = Path(file) / "metadata.yaml"
|
|
307
|
+
assert metadata_file.exists(), f"ExecuTorch metadata.yaml not found for task '{task}': {metadata_file}"
|
|
308
|
+
# Note: Inference testing skipped as ExecuTorch requires special runtime setup
|
|
309
|
+
shutil.rmtree(file, ignore_errors=True) # cleanup
|
|
@@ -8,7 +8,7 @@ from pathlib import Path
|
|
|
8
8
|
|
|
9
9
|
import pytest
|
|
10
10
|
|
|
11
|
-
from tests import MODEL, SOURCE
|
|
11
|
+
from tests import MODEL, SOURCE
|
|
12
12
|
from ultralytics import YOLO, download
|
|
13
13
|
from ultralytics.utils import ASSETS_URL, DATASETS_DIR, SETTINGS
|
|
14
14
|
from ultralytics.utils.checks import check_requirements
|
|
@@ -71,14 +71,14 @@ def test_mlflow_keep_run_active():
|
|
|
71
71
|
|
|
72
72
|
|
|
73
73
|
@pytest.mark.skipif(not check_requirements("tritonclient", install=False), reason="tritonclient[all] not installed")
|
|
74
|
-
def test_triton():
|
|
74
|
+
def test_triton(tmp_path):
|
|
75
75
|
"""Test NVIDIA Triton Server functionalities with YOLO model."""
|
|
76
76
|
check_requirements("tritonclient[all]")
|
|
77
|
-
from tritonclient.http import InferenceServerClient
|
|
77
|
+
from tritonclient.http import InferenceServerClient
|
|
78
78
|
|
|
79
79
|
# Create variables
|
|
80
80
|
model_name = "yolo"
|
|
81
|
-
triton_repo =
|
|
81
|
+
triton_repo = tmp_path / "triton_repo" # Triton repo path
|
|
82
82
|
triton_model = triton_repo / model_name # Triton model path
|
|
83
83
|
|
|
84
84
|
# Export model to ONNX
|