ultralytics 8.1.36__tar.gz → 8.1.37__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.
Potentially problematic release.
This version of ultralytics might be problematic. Click here for more details.
- {ultralytics-8.1.36/ultralytics.egg-info → ultralytics-8.1.37}/PKG-INFO +1 -1
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_engine.py +6 -2
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/__init__.py +1 -1
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/__init__.py +3 -2
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/model.py +14 -4
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/hub/utils.py +2 -2
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/__init__.py +5 -4
- {ultralytics-8.1.36 → ultralytics-8.1.37/ultralytics.egg-info}/PKG-INFO +1 -1
- {ultralytics-8.1.36 → ultralytics-8.1.37}/LICENSE +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/README.md +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/pyproject.toml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/setup.cfg +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_cli.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_cuda.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_explorer.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_integrations.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/tests/test_python.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/assets/bus.jpg +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/assets/zidane.jpg +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/VOC.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/dota8.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/datasets/xView.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/default.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/annotator.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/augment.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/base.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/build.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/converter.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/dataset.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/explorer/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/explorer/explorer.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/explorer/gui/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/explorer/gui/dash.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/explorer/utils.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/loaders.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/split_dota.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/data/utils.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/exporter.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/predictor.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/results.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/trainer.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/tuner.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/engine/validator.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/hub/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/hub/auth.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/hub/session.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/model.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/prompt.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/utils.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/fastsam/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/nas/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/nas/model.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/nas/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/nas/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/rtdetr/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/rtdetr/model.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/rtdetr/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/rtdetr/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/rtdetr/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/amg.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/build.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/model.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/decoders.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/encoders.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/sam.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/modules/transformer.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/sam/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/utils/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/utils/loss.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/utils/ops.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/classify/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/classify/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/classify/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/detect/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/detect/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/detect/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/model.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/obb/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/obb/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/obb/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/pose/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/pose/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/pose/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/pose/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/segment/predict.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/segment/train.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/models/yolo/segment/val.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/autobackend.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/block.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/conv.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/head.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/transformer.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/modules/utils.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/nn/tasks.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/ai_gym.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/distance_calculation.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/heatmap.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/object_counter.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/solutions/speed_estimation.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/basetrack.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/bot_sort.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/byte_tracker.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/track.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/utils/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/utils/gmc.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/utils/kalman_filter.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/trackers/utils/matching.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/autobatch.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/benchmarks.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/__init__.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/base.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/clearml.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/comet.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/dvc.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/hub.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/mlflow.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/neptune.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/raytune.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/tensorboard.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/callbacks/wb.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/checks.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/dist.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/downloads.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/errors.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/files.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/instance.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/loss.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/metrics.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/ops.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/patches.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/plotting.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/tal.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/torch_utils.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/triton.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/utils/tuner.py +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics.egg-info/SOURCES.txt +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics.egg-info/dependency_links.txt +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics.egg-info/entry_points.txt +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics.egg-info/requires.txt +0 -0
- {ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.1.
|
|
3
|
+
Version: 8.1.37
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Ultralytics YOLO 🚀, AGPL-3.0 license
|
|
2
2
|
|
|
3
|
+
import sys
|
|
4
|
+
from unittest import mock
|
|
3
5
|
from ultralytics import YOLO
|
|
4
6
|
from ultralytics.cfg import get_cfg
|
|
5
7
|
from ultralytics.engine.exporter import Exporter
|
|
@@ -49,8 +51,10 @@ def test_detect():
|
|
|
49
51
|
pred = detect.DetectionPredictor(overrides={"imgsz": [64, 64]})
|
|
50
52
|
pred.add_callback("on_predict_start", test_func)
|
|
51
53
|
assert test_func in pred.callbacks["on_predict_start"], "callback test failed"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
+
# Confirm there is no issue with sys.argv being empty.
|
|
55
|
+
with mock.patch.object(sys, 'argv', []):
|
|
56
|
+
result = pred(source=ASSETS, model=f"{MODEL}.pt")
|
|
57
|
+
assert len(result), "predictor test failed"
|
|
54
58
|
|
|
55
59
|
overrides["resume"] = trainer.last
|
|
56
60
|
trainer = detect.DetectionTrainer(overrides=overrides)
|
|
@@ -54,8 +54,9 @@ TASK2METRIC = {
|
|
|
54
54
|
"obb": "metrics/mAP50-95(B)",
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
+
ARGV = sys.argv or ["", ""] # sometimes sys.argv = []
|
|
57
58
|
CLI_HELP_MSG = f"""
|
|
58
|
-
Arguments received: {str(['yolo'] +
|
|
59
|
+
Arguments received: {str(['yolo'] + ARGV[1:])}. Ultralytics 'yolo' commands use the following syntax:
|
|
59
60
|
|
|
60
61
|
yolo TASK MODE ARGS
|
|
61
62
|
|
|
@@ -452,7 +453,7 @@ def entrypoint(debug=""):
|
|
|
452
453
|
It uses the package's default cfg and initializes it using the passed overrides.
|
|
453
454
|
Then it calls the CLI function with the composed cfg
|
|
454
455
|
"""
|
|
455
|
-
args = (debug.split(" ") if debug else
|
|
456
|
+
args = (debug.split(" ") if debug else ARGV)[1:]
|
|
456
457
|
if not args: # no arguments passed
|
|
457
458
|
LOGGER.info(CLI_HELP_MSG)
|
|
458
459
|
return
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# Ultralytics YOLO 🚀, AGPL-3.0 license
|
|
2
2
|
|
|
3
3
|
import inspect
|
|
4
|
-
import sys
|
|
5
4
|
from pathlib import Path
|
|
6
5
|
from typing import Union
|
|
7
6
|
|
|
@@ -11,7 +10,18 @@ import torch
|
|
|
11
10
|
from ultralytics.cfg import TASK2DATA, get_cfg, get_save_dir
|
|
12
11
|
from ultralytics.hub.utils import HUB_WEB_ROOT
|
|
13
12
|
from ultralytics.nn.tasks import attempt_load_one_weight, guess_model_task, nn, yaml_model_load
|
|
14
|
-
from ultralytics.utils import
|
|
13
|
+
from ultralytics.utils import (
|
|
14
|
+
ARGV,
|
|
15
|
+
ASSETS,
|
|
16
|
+
DEFAULT_CFG_DICT,
|
|
17
|
+
LOGGER,
|
|
18
|
+
RANK,
|
|
19
|
+
SETTINGS,
|
|
20
|
+
callbacks,
|
|
21
|
+
checks,
|
|
22
|
+
emojis,
|
|
23
|
+
yaml_load,
|
|
24
|
+
)
|
|
15
25
|
|
|
16
26
|
|
|
17
27
|
class Model(nn.Module):
|
|
@@ -421,8 +431,8 @@ class Model(nn.Module):
|
|
|
421
431
|
source = ASSETS
|
|
422
432
|
LOGGER.warning(f"WARNING ⚠️ 'source' is missing. Using 'source={source}'.")
|
|
423
433
|
|
|
424
|
-
is_cli = (
|
|
425
|
-
x in
|
|
434
|
+
is_cli = (ARGV[0].endswith("yolo") or ARGV[0].endswith("ultralytics")) and any(
|
|
435
|
+
x in ARGV for x in ("predict", "track", "mode=predict", "mode=track")
|
|
426
436
|
)
|
|
427
437
|
|
|
428
438
|
custom = {"conf": 0.25, "batch": 1, "save": is_cli, "mode": "predict"} # method defaults
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
import os
|
|
4
4
|
import platform
|
|
5
5
|
import random
|
|
6
|
-
import sys
|
|
7
6
|
import threading
|
|
8
7
|
import time
|
|
9
8
|
from pathlib import Path
|
|
@@ -11,6 +10,7 @@ from pathlib import Path
|
|
|
11
10
|
import requests
|
|
12
11
|
|
|
13
12
|
from ultralytics.utils import (
|
|
13
|
+
ARGV,
|
|
14
14
|
ENVIRONMENT,
|
|
15
15
|
LOGGER,
|
|
16
16
|
ONLINE,
|
|
@@ -188,7 +188,7 @@ class Events:
|
|
|
188
188
|
self.rate_limit = 60.0 # rate limit (seconds)
|
|
189
189
|
self.t = 0.0 # rate limit timer (seconds)
|
|
190
190
|
self.metadata = {
|
|
191
|
-
"cli": Path(
|
|
191
|
+
"cli": Path(ARGV[0]).name == "yolo",
|
|
192
192
|
"install": "git" if is_git_dir() else "pip" if is_pip_package() else "other",
|
|
193
193
|
"python": ".".join(platform.python_version_tuple()[:2]), # i.e. 3.10
|
|
194
194
|
"version": __version__,
|
|
@@ -30,6 +30,7 @@ RANK = int(os.getenv("RANK", -1))
|
|
|
30
30
|
LOCAL_RANK = int(os.getenv("LOCAL_RANK", -1)) # https://pytorch.org/docs/stable/elastic/run.html
|
|
31
31
|
|
|
32
32
|
# Other Constants
|
|
33
|
+
ARGV = sys.argv or ["", ""] # sometimes sys.argv = []
|
|
33
34
|
FILE = Path(__file__).resolve()
|
|
34
35
|
ROOT = FILE.parents[1] # YOLO
|
|
35
36
|
ASSETS = ROOT / "assets" # default images
|
|
@@ -522,7 +523,7 @@ def is_pytest_running():
|
|
|
522
523
|
Returns:
|
|
523
524
|
(bool): True if pytest is running, False otherwise.
|
|
524
525
|
"""
|
|
525
|
-
return ("PYTEST_CURRENT_TEST" in os.environ) or ("pytest" in sys.modules) or ("pytest" in Path(
|
|
526
|
+
return ("PYTEST_CURRENT_TEST" in os.environ) or ("pytest" in sys.modules) or ("pytest" in Path(ARGV[0]).stem)
|
|
526
527
|
|
|
527
528
|
|
|
528
529
|
def is_github_action_running() -> bool:
|
|
@@ -869,8 +870,8 @@ def set_sentry():
|
|
|
869
870
|
return None # do not send event
|
|
870
871
|
|
|
871
872
|
event["tags"] = {
|
|
872
|
-
"sys_argv":
|
|
873
|
-
"sys_argv_name": Path(
|
|
873
|
+
"sys_argv": ARGV[0],
|
|
874
|
+
"sys_argv_name": Path(ARGV[0]).name,
|
|
874
875
|
"install": "git" if is_git_dir() else "pip" if is_pip_package() else "other",
|
|
875
876
|
"os": ENVIRONMENT,
|
|
876
877
|
}
|
|
@@ -879,7 +880,7 @@ def set_sentry():
|
|
|
879
880
|
if (
|
|
880
881
|
SETTINGS["sync"]
|
|
881
882
|
and RANK in (-1, 0)
|
|
882
|
-
and Path(
|
|
883
|
+
and Path(ARGV[0]).name == "yolo"
|
|
883
884
|
and not TESTS_RUNNING
|
|
884
885
|
and ONLINE
|
|
885
886
|
and is_pip_package()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.1.
|
|
3
|
+
Version: 8.1.37
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml
RENAMED
|
File without changes
|
{ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml
RENAMED
|
File without changes
|
{ultralytics-8.1.36 → ultralytics-8.1.37}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|