ultralytics 8.1.29__py3-none-any.whl → 8.3.62__py3-none-any.whl
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.
- tests/__init__.py +22 -0
- tests/conftest.py +83 -0
- tests/test_cli.py +122 -0
- tests/test_cuda.py +155 -0
- tests/test_engine.py +131 -0
- tests/test_exports.py +216 -0
- tests/test_integrations.py +150 -0
- tests/test_python.py +615 -0
- tests/test_solutions.py +94 -0
- ultralytics/__init__.py +11 -8
- ultralytics/cfg/__init__.py +569 -131
- ultralytics/cfg/datasets/Argoverse.yaml +2 -1
- ultralytics/cfg/datasets/DOTAv1.5.yaml +3 -2
- ultralytics/cfg/datasets/DOTAv1.yaml +3 -2
- ultralytics/cfg/datasets/GlobalWheat2020.yaml +3 -2
- ultralytics/cfg/datasets/ImageNet.yaml +2 -1
- ultralytics/cfg/datasets/Objects365.yaml +5 -4
- ultralytics/cfg/datasets/SKU-110K.yaml +2 -1
- ultralytics/cfg/datasets/VOC.yaml +3 -2
- ultralytics/cfg/datasets/VisDrone.yaml +6 -5
- ultralytics/cfg/datasets/african-wildlife.yaml +25 -0
- ultralytics/cfg/datasets/brain-tumor.yaml +23 -0
- ultralytics/cfg/datasets/carparts-seg.yaml +3 -2
- ultralytics/cfg/datasets/coco-pose.yaml +7 -6
- ultralytics/cfg/datasets/coco.yaml +3 -2
- ultralytics/cfg/datasets/coco128-seg.yaml +4 -3
- ultralytics/cfg/datasets/coco128.yaml +4 -3
- ultralytics/cfg/datasets/coco8-pose.yaml +3 -2
- ultralytics/cfg/datasets/coco8-seg.yaml +3 -2
- ultralytics/cfg/datasets/coco8.yaml +3 -2
- ultralytics/cfg/datasets/crack-seg.yaml +3 -2
- ultralytics/cfg/datasets/dog-pose.yaml +24 -0
- ultralytics/cfg/datasets/dota8.yaml +3 -2
- ultralytics/cfg/datasets/hand-keypoints.yaml +26 -0
- ultralytics/cfg/datasets/lvis.yaml +1236 -0
- ultralytics/cfg/datasets/medical-pills.yaml +22 -0
- ultralytics/cfg/datasets/open-images-v7.yaml +2 -1
- ultralytics/cfg/datasets/package-seg.yaml +5 -4
- ultralytics/cfg/datasets/signature.yaml +21 -0
- ultralytics/cfg/datasets/tiger-pose.yaml +3 -2
- ultralytics/cfg/datasets/xView.yaml +2 -1
- ultralytics/cfg/default.yaml +14 -11
- ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +24 -0
- ultralytics/cfg/models/11/yolo11-cls.yaml +33 -0
- ultralytics/cfg/models/11/yolo11-obb.yaml +50 -0
- ultralytics/cfg/models/11/yolo11-pose.yaml +51 -0
- ultralytics/cfg/models/11/yolo11-seg.yaml +50 -0
- ultralytics/cfg/models/11/yolo11.yaml +50 -0
- ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +5 -2
- ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +5 -2
- ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +5 -2
- ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +5 -2
- ultralytics/cfg/models/v10/yolov10b.yaml +45 -0
- ultralytics/cfg/models/v10/yolov10l.yaml +45 -0
- ultralytics/cfg/models/v10/yolov10m.yaml +45 -0
- ultralytics/cfg/models/v10/yolov10n.yaml +45 -0
- ultralytics/cfg/models/v10/yolov10s.yaml +45 -0
- ultralytics/cfg/models/v10/yolov10x.yaml +45 -0
- ultralytics/cfg/models/v3/yolov3-spp.yaml +5 -2
- ultralytics/cfg/models/v3/yolov3-tiny.yaml +5 -2
- ultralytics/cfg/models/v3/yolov3.yaml +5 -2
- ultralytics/cfg/models/v5/yolov5-p6.yaml +5 -2
- ultralytics/cfg/models/v5/yolov5.yaml +5 -2
- ultralytics/cfg/models/v6/yolov6.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-cls.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +6 -2
- ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +6 -2
- ultralytics/cfg/models/v8/yolov8-ghost.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-obb.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-p2.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-p6.yaml +10 -7
- ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-pose.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-seg.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-world.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8-worldv2.yaml +5 -2
- ultralytics/cfg/models/v8/yolov8.yaml +5 -2
- ultralytics/cfg/models/v9/yolov9c-seg.yaml +41 -0
- ultralytics/cfg/models/v9/yolov9c.yaml +30 -25
- ultralytics/cfg/models/v9/yolov9e-seg.yaml +64 -0
- ultralytics/cfg/models/v9/yolov9e.yaml +46 -42
- ultralytics/cfg/models/v9/yolov9m.yaml +41 -0
- ultralytics/cfg/models/v9/yolov9s.yaml +41 -0
- ultralytics/cfg/models/v9/yolov9t.yaml +41 -0
- ultralytics/cfg/solutions/default.yaml +24 -0
- ultralytics/cfg/trackers/botsort.yaml +8 -5
- ultralytics/cfg/trackers/bytetrack.yaml +8 -5
- ultralytics/data/__init__.py +14 -3
- ultralytics/data/annotator.py +37 -15
- ultralytics/data/augment.py +1783 -289
- ultralytics/data/base.py +62 -27
- ultralytics/data/build.py +36 -8
- ultralytics/data/converter.py +196 -36
- ultralytics/data/dataset.py +233 -94
- ultralytics/data/loaders.py +199 -96
- ultralytics/data/split_dota.py +39 -29
- ultralytics/data/utils.py +110 -40
- ultralytics/engine/__init__.py +1 -1
- ultralytics/engine/exporter.py +569 -242
- ultralytics/engine/model.py +604 -252
- ultralytics/engine/predictor.py +22 -11
- ultralytics/engine/results.py +1228 -218
- ultralytics/engine/trainer.py +190 -129
- ultralytics/engine/tuner.py +18 -18
- ultralytics/engine/validator.py +18 -15
- ultralytics/hub/__init__.py +31 -13
- ultralytics/hub/auth.py +11 -7
- ultralytics/hub/google/__init__.py +159 -0
- ultralytics/hub/session.py +128 -94
- ultralytics/hub/utils.py +20 -21
- ultralytics/models/__init__.py +4 -2
- ultralytics/models/fastsam/__init__.py +2 -3
- ultralytics/models/fastsam/model.py +26 -4
- ultralytics/models/fastsam/predict.py +127 -63
- ultralytics/models/fastsam/utils.py +1 -44
- ultralytics/models/fastsam/val.py +1 -1
- ultralytics/models/nas/__init__.py +1 -1
- ultralytics/models/nas/model.py +21 -10
- ultralytics/models/nas/predict.py +3 -6
- ultralytics/models/nas/val.py +4 -4
- ultralytics/models/rtdetr/__init__.py +1 -1
- ultralytics/models/rtdetr/model.py +1 -1
- ultralytics/models/rtdetr/predict.py +6 -8
- ultralytics/models/rtdetr/train.py +6 -2
- ultralytics/models/rtdetr/val.py +3 -3
- ultralytics/models/sam/__init__.py +3 -3
- ultralytics/models/sam/amg.py +29 -23
- ultralytics/models/sam/build.py +211 -13
- ultralytics/models/sam/model.py +91 -30
- ultralytics/models/sam/modules/__init__.py +1 -1
- ultralytics/models/sam/modules/blocks.py +1129 -0
- ultralytics/models/sam/modules/decoders.py +381 -53
- ultralytics/models/sam/modules/encoders.py +515 -324
- ultralytics/models/sam/modules/memory_attention.py +237 -0
- ultralytics/models/sam/modules/sam.py +969 -21
- ultralytics/models/sam/modules/tiny_encoder.py +425 -154
- ultralytics/models/sam/modules/transformer.py +159 -60
- ultralytics/models/sam/modules/utils.py +293 -0
- ultralytics/models/sam/predict.py +1263 -132
- ultralytics/models/utils/__init__.py +1 -1
- ultralytics/models/utils/loss.py +36 -24
- ultralytics/models/utils/ops.py +3 -7
- ultralytics/models/yolo/__init__.py +3 -3
- ultralytics/models/yolo/classify/__init__.py +1 -1
- ultralytics/models/yolo/classify/predict.py +7 -8
- ultralytics/models/yolo/classify/train.py +17 -22
- ultralytics/models/yolo/classify/val.py +8 -4
- ultralytics/models/yolo/detect/__init__.py +1 -1
- ultralytics/models/yolo/detect/predict.py +3 -5
- ultralytics/models/yolo/detect/train.py +11 -4
- ultralytics/models/yolo/detect/val.py +90 -52
- ultralytics/models/yolo/model.py +14 -9
- ultralytics/models/yolo/obb/__init__.py +1 -1
- ultralytics/models/yolo/obb/predict.py +2 -2
- ultralytics/models/yolo/obb/train.py +5 -3
- ultralytics/models/yolo/obb/val.py +41 -23
- ultralytics/models/yolo/pose/__init__.py +1 -1
- ultralytics/models/yolo/pose/predict.py +3 -5
- ultralytics/models/yolo/pose/train.py +2 -2
- ultralytics/models/yolo/pose/val.py +51 -17
- ultralytics/models/yolo/segment/__init__.py +1 -1
- ultralytics/models/yolo/segment/predict.py +3 -5
- ultralytics/models/yolo/segment/train.py +2 -2
- ultralytics/models/yolo/segment/val.py +60 -19
- ultralytics/models/yolo/world/__init__.py +5 -0
- ultralytics/models/yolo/world/train.py +92 -0
- ultralytics/models/yolo/world/train_world.py +109 -0
- ultralytics/nn/__init__.py +1 -1
- ultralytics/nn/autobackend.py +228 -93
- ultralytics/nn/modules/__init__.py +39 -14
- ultralytics/nn/modules/activation.py +21 -0
- ultralytics/nn/modules/block.py +526 -66
- ultralytics/nn/modules/conv.py +24 -7
- ultralytics/nn/modules/head.py +177 -34
- ultralytics/nn/modules/transformer.py +6 -5
- ultralytics/nn/modules/utils.py +1 -2
- ultralytics/nn/tasks.py +225 -77
- ultralytics/solutions/__init__.py +30 -1
- ultralytics/solutions/ai_gym.py +96 -143
- ultralytics/solutions/analytics.py +247 -0
- ultralytics/solutions/distance_calculation.py +78 -135
- ultralytics/solutions/heatmap.py +93 -247
- ultralytics/solutions/object_counter.py +184 -259
- ultralytics/solutions/parking_management.py +246 -0
- ultralytics/solutions/queue_management.py +112 -0
- ultralytics/solutions/region_counter.py +116 -0
- ultralytics/solutions/security_alarm.py +144 -0
- ultralytics/solutions/solutions.py +178 -0
- ultralytics/solutions/speed_estimation.py +86 -174
- ultralytics/solutions/streamlit_inference.py +190 -0
- ultralytics/solutions/trackzone.py +68 -0
- ultralytics/trackers/__init__.py +1 -1
- ultralytics/trackers/basetrack.py +32 -13
- ultralytics/trackers/bot_sort.py +61 -28
- ultralytics/trackers/byte_tracker.py +83 -51
- ultralytics/trackers/track.py +21 -6
- ultralytics/trackers/utils/__init__.py +1 -1
- ultralytics/trackers/utils/gmc.py +62 -48
- ultralytics/trackers/utils/kalman_filter.py +166 -35
- ultralytics/trackers/utils/matching.py +40 -21
- ultralytics/utils/__init__.py +511 -239
- ultralytics/utils/autobatch.py +40 -22
- ultralytics/utils/benchmarks.py +266 -85
- ultralytics/utils/callbacks/__init__.py +1 -1
- ultralytics/utils/callbacks/base.py +1 -3
- ultralytics/utils/callbacks/clearml.py +7 -6
- ultralytics/utils/callbacks/comet.py +39 -17
- ultralytics/utils/callbacks/dvc.py +1 -1
- ultralytics/utils/callbacks/hub.py +16 -16
- ultralytics/utils/callbacks/mlflow.py +28 -24
- ultralytics/utils/callbacks/neptune.py +6 -2
- ultralytics/utils/callbacks/raytune.py +3 -4
- ultralytics/utils/callbacks/tensorboard.py +18 -18
- ultralytics/utils/callbacks/wb.py +27 -20
- ultralytics/utils/checks.py +160 -100
- ultralytics/utils/dist.py +2 -1
- ultralytics/utils/downloads.py +40 -34
- ultralytics/utils/errors.py +1 -1
- ultralytics/utils/files.py +72 -38
- ultralytics/utils/instance.py +41 -19
- ultralytics/utils/loss.py +83 -55
- ultralytics/utils/metrics.py +61 -56
- ultralytics/utils/ops.py +94 -89
- ultralytics/utils/patches.py +30 -14
- ultralytics/utils/plotting.py +600 -269
- ultralytics/utils/tal.py +67 -26
- ultralytics/utils/torch_utils.py +302 -102
- ultralytics/utils/triton.py +2 -1
- ultralytics/utils/tuner.py +21 -12
- ultralytics-8.3.62.dist-info/METADATA +370 -0
- ultralytics-8.3.62.dist-info/RECORD +241 -0
- {ultralytics-8.1.29.dist-info → ultralytics-8.3.62.dist-info}/WHEEL +1 -1
- ultralytics/data/explorer/__init__.py +0 -5
- ultralytics/data/explorer/explorer.py +0 -472
- ultralytics/data/explorer/gui/__init__.py +0 -1
- ultralytics/data/explorer/gui/dash.py +0 -268
- ultralytics/data/explorer/utils.py +0 -166
- ultralytics/models/fastsam/prompt.py +0 -357
- ultralytics-8.1.29.dist-info/METADATA +0 -373
- ultralytics-8.1.29.dist-info/RECORD +0 -197
- {ultralytics-8.1.29.dist-info → ultralytics-8.3.62.dist-info}/LICENSE +0 -0
- {ultralytics-8.1.29.dist-info → ultralytics-8.3.62.dist-info}/entry_points.txt +0 -0
- {ultralytics-8.1.29.dist-info → ultralytics-8.3.62.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,22 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Medical-pills dataset by Ultralytics
|
4
|
+
# Documentation: https://docs.ultralytics.com/datasets/detect/medical-pills/
|
5
|
+
# Example usage: yolo train data=medical-pills.yaml
|
6
|
+
# parent
|
7
|
+
# ├── ultralytics
|
8
|
+
# └── datasets
|
9
|
+
# └── medical-pills ← downloads here (8.19 MB)
|
10
|
+
|
11
|
+
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
|
12
|
+
path: ../datasets/medical-pills # dataset root dir
|
13
|
+
train: train/images # train images (relative to 'path') 92 images
|
14
|
+
val: valid/images # val images (relative to 'path') 23 images
|
15
|
+
test: # test images (relative to 'path')
|
16
|
+
|
17
|
+
# Classes
|
18
|
+
names:
|
19
|
+
0: pill
|
20
|
+
|
21
|
+
# Download script/URL (optional)
|
22
|
+
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/medical-pills.zip
|
@@ -1,4 +1,5 @@
|
|
1
|
-
# Ultralytics
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
2
3
|
# Open Images v7 dataset https://storage.googleapis.com/openimages/web/index.html by Google
|
3
4
|
# Documentation: https://docs.ultralytics.com/datasets/detect/open-images-v7/
|
4
5
|
# Example usage: yolo train data=open-images-v7.yaml
|
@@ -1,4 +1,5 @@
|
|
1
|
-
# Ultralytics
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
2
3
|
# Package-seg dataset by Ultralytics
|
3
4
|
# Documentation: https://docs.ultralytics.com/datasets/segment/package-seg/
|
4
5
|
# Example usage: yolo train data=package-seg.yaml
|
@@ -9,8 +10,8 @@
|
|
9
10
|
|
10
11
|
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
|
11
12
|
path: ../datasets/package-seg # dataset root dir
|
12
|
-
train: images
|
13
|
-
val: images
|
13
|
+
train: train/images # train images (relative to 'path') 1920 images
|
14
|
+
val: valid/images # val images (relative to 'path') 89 images
|
14
15
|
test: test/images # test images (relative to 'path') 188 images
|
15
16
|
|
16
17
|
# Classes
|
@@ -18,4 +19,4 @@ names:
|
|
18
19
|
0: package
|
19
20
|
|
20
21
|
# Download script/URL (optional)
|
21
|
-
download: https://
|
22
|
+
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/package-seg.zip
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Signature dataset by Ultralytics
|
4
|
+
# Documentation: https://docs.ultralytics.com/datasets/detect/signature/
|
5
|
+
# Example usage: yolo train data=signature.yaml
|
6
|
+
# parent
|
7
|
+
# ├── ultralytics
|
8
|
+
# └── datasets
|
9
|
+
# └── signature ← downloads here (11.2 MB)
|
10
|
+
|
11
|
+
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
|
12
|
+
path: ../datasets/signature # dataset root dir
|
13
|
+
train: train/images # train images (relative to 'path') 143 images
|
14
|
+
val: valid/images # val images (relative to 'path') 35 images
|
15
|
+
|
16
|
+
# Classes
|
17
|
+
names:
|
18
|
+
0: signature
|
19
|
+
|
20
|
+
# Download script/URL (optional)
|
21
|
+
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/signature.zip
|
@@ -1,4 +1,5 @@
|
|
1
|
-
# Ultralytics
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
2
3
|
# Tiger Pose dataset by Ultralytics
|
3
4
|
# Documentation: https://docs.ultralytics.com/datasets/pose/tiger-pose/
|
4
5
|
# Example usage: yolo train data=tiger-pose.yaml
|
@@ -21,4 +22,4 @@ names:
|
|
21
22
|
0: tiger
|
22
23
|
|
23
24
|
# Download script/URL (optional)
|
24
|
-
download: https://
|
25
|
+
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/tiger-pose.zip
|
@@ -1,4 +1,5 @@
|
|
1
|
-
# Ultralytics
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
2
3
|
# DIUx xView 2018 Challenge https://challenge.xviewdataset.org by U.S. National Geospatial-Intelligence Agency (NGA)
|
3
4
|
# -------- DOWNLOAD DATA MANUALLY and jar xf val_images.zip to 'datasets/xView' before running train command! --------
|
4
5
|
# Documentation: https://docs.ultralytics.com/datasets/detect/xview/
|
ultralytics/cfg/default.yaml
CHANGED
@@ -1,17 +1,19 @@
|
|
1
|
-
# Ultralytics
|
2
|
-
# Default training settings and hyperparameters for medium-augmentation COCO training
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
3
2
|
|
4
|
-
|
3
|
+
# Global configuration YAML with settings and hyperparameters for YOLO training, validation, prediction and export
|
4
|
+
# For documentation see https://docs.ultralytics.com/usage/cfg/
|
5
|
+
|
6
|
+
task: detect # (str) YOLO task, i.e. detect, segment, classify, pose, obb
|
5
7
|
mode: train # (str) YOLO mode, i.e. train, val, predict, export, track, benchmark
|
6
8
|
|
7
9
|
# Train settings -------------------------------------------------------------------------------------------------------
|
8
10
|
model: # (str, optional) path to model file, i.e. yolov8n.pt, yolov8n.yaml
|
9
|
-
data: # (str, optional) path to data file, i.e.
|
11
|
+
data: # (str, optional) path to data file, i.e. coco8.yaml
|
10
12
|
epochs: 100 # (int) number of epochs to train for
|
11
13
|
time: # (float, optional) number of hours to train for, overrides epochs if supplied
|
12
14
|
patience: 100 # (int) epochs to wait for no observable improvement for early stopping of training
|
13
15
|
batch: 16 # (int) number of images per batch (-1 for AutoBatch)
|
14
|
-
imgsz: 640 # (int | list) input images size as int for train and val modes, or list[w
|
16
|
+
imgsz: 640 # (int | list) input images size as int for train and val modes, or list[h,w] for predict and export modes
|
15
17
|
save: True # (bool) save train checkpoints and predict results
|
16
18
|
save_period: -1 # (int) Save checkpoint every x epochs (disabled if < 1)
|
17
19
|
cache: False # (bool) True/ram, disk or False. Use cache for data loading
|
@@ -36,7 +38,7 @@ profile: False # (bool) profile ONNX and TensorRT speeds during training for log
|
|
36
38
|
freeze: None # (int | list, optional) freeze first n layers, or freeze list of layer indices during training
|
37
39
|
multi_scale: False # (bool) Whether to use multiscale during training
|
38
40
|
# Segmentation
|
39
|
-
overlap_mask: True # (bool) masks
|
41
|
+
overlap_mask: True # (bool) merge object masks into a single image mask during training (segment train only)
|
40
42
|
mask_ratio: 4 # (int) mask downsample ratio (segment train only)
|
41
43
|
# Classification
|
42
44
|
dropout: 0.0 # (float) use dropout regularization (classify train only)
|
@@ -81,9 +83,9 @@ keras: False # (bool) use Kera=s
|
|
81
83
|
optimize: False # (bool) TorchScript: optimize for mobile
|
82
84
|
int8: False # (bool) CoreML/TF INT8 quantization
|
83
85
|
dynamic: False # (bool) ONNX/TF/TensorRT: dynamic axes
|
84
|
-
simplify:
|
86
|
+
simplify: True # (bool) ONNX: simplify model using `onnxslim`
|
85
87
|
opset: # (int, optional) ONNX: opset version
|
86
|
-
workspace:
|
88
|
+
workspace: None # (float, optional) TensorRT: workspace size (GiB), `None` will let TensorRT auto-allocate memory
|
87
89
|
nms: False # (bool) CoreML: add NMS
|
88
90
|
|
89
91
|
# Hyperparameters ------------------------------------------------------------------------------------------------------
|
@@ -99,7 +101,6 @@ cls: 0.5 # (float) cls loss gain (scale with pixels)
|
|
99
101
|
dfl: 1.5 # (float) dfl loss gain
|
100
102
|
pose: 12.0 # (float) pose loss gain
|
101
103
|
kobj: 1.0 # (float) keypoint obj loss gain
|
102
|
-
label_smoothing: 0.0 # (float) label smoothing (fraction)
|
103
104
|
nbs: 64 # (int) nominal batch size
|
104
105
|
hsv_h: 0.015 # (float) image HSV-Hue augmentation (fraction)
|
105
106
|
hsv_s: 0.7 # (float) image HSV-Saturation augmentation (fraction)
|
@@ -111,12 +112,14 @@ shear: 0.0 # (float) image shear (+/- deg)
|
|
111
112
|
perspective: 0.0 # (float) image perspective (+/- fraction), range 0-0.001
|
112
113
|
flipud: 0.0 # (float) image flip up-down (probability)
|
113
114
|
fliplr: 0.5 # (float) image flip left-right (probability)
|
115
|
+
bgr: 0.0 # (float) image channel BGR (probability)
|
114
116
|
mosaic: 1.0 # (float) image mosaic (probability)
|
115
117
|
mixup: 0.0 # (float) image mixup (probability)
|
116
118
|
copy_paste: 0.0 # (float) segment copy-paste (probability)
|
119
|
+
copy_paste_mode: "flip" # (str) the method to do copy_paste augmentation (flip, mixup)
|
117
120
|
auto_augment: randaugment # (str) auto augmentation policy for classification (randaugment, autoaugment, augmix)
|
118
|
-
erasing: 0.4 # (float) probability of random erasing during classification training (0-1
|
119
|
-
crop_fraction: 1.0 # (float) image crop fraction for classification
|
121
|
+
erasing: 0.4 # (float) probability of random erasing during classification training (0-0.9), 0 means no erasing, must be less than 1.0.
|
122
|
+
crop_fraction: 1.0 # (float) image crop fraction for classification (0.1-1), 1.0 means no crop, must be greater than 0.
|
120
123
|
|
121
124
|
# Custom config.yaml ---------------------------------------------------------------------------------------------------
|
122
125
|
cfg: # (str, optional) for overriding defaults.yaml
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11-cls image classification model with ResNet18 backbone
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/classify
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 10 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-cls.yaml' will call yolo11-cls.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024]
|
12
|
+
s: [0.33, 0.50, 1024]
|
13
|
+
m: [0.67, 0.75, 1024]
|
14
|
+
l: [1.00, 1.00, 1024]
|
15
|
+
x: [1.00, 1.25, 1024]
|
16
|
+
|
17
|
+
# ResNet18 backbone
|
18
|
+
backbone:
|
19
|
+
# [from, repeats, module, args]
|
20
|
+
- [-1, 1, TorchVision, [512, "resnet18", "DEFAULT", True, 2]] # truncate two layers from the end
|
21
|
+
|
22
|
+
# YOLO11n head
|
23
|
+
head:
|
24
|
+
- [-1, 1, Classify, [nc]] # Classify
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11-cls image classification model
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/classify
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-cls.yaml' will call yolo11-cls.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.50, 0.25, 1024] # summary: 151 layers, 1633584 parameters, 1633584 gradients, 3.3 GFLOPs
|
12
|
+
s: [0.50, 0.50, 1024] # summary: 151 layers, 5545488 parameters, 5545488 gradients, 12.2 GFLOPs
|
13
|
+
m: [0.50, 1.00, 512] # summary: 187 layers, 10455696 parameters, 10455696 gradients, 39.7 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # summary: 309 layers, 12937104 parameters, 12937104 gradients, 49.9 GFLOPs
|
15
|
+
x: [1.00, 1.50, 512] # summary: 309 layers, 28458544 parameters, 28458544 gradients, 111.1 GFLOPs
|
16
|
+
|
17
|
+
# YOLO11n backbone
|
18
|
+
backbone:
|
19
|
+
# [from, repeats, module, args]
|
20
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
21
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
22
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 2, C3k2, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 2, C3k2, [1024, True]]
|
29
|
+
- [-1, 2, C2PSA, [1024]] # 9
|
30
|
+
|
31
|
+
# YOLO11n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, Classify, [nc]] # Classify
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11-obb Oriented Bounding Boxes (OBB) model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/obb
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-obb.yaml' will call yolo11-obb.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.50, 0.25, 1024] # summary: 344 layers, 2695747 parameters, 2695731 gradients, 6.9 GFLOPs
|
12
|
+
s: [0.50, 0.50, 1024] # summary: 344 layers, 9744931 parameters, 9744915 gradients, 22.7 GFLOPs
|
13
|
+
m: [0.50, 1.00, 512] # summary: 434 layers, 20963523 parameters, 20963507 gradients, 72.2 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # summary: 656 layers, 26220995 parameters, 26220979 gradients, 91.3 GFLOPs
|
15
|
+
x: [1.00, 1.50, 512] # summary: 656 layers, 58875331 parameters, 58875315 gradients, 204.3 GFLOPs
|
16
|
+
|
17
|
+
# YOLO11n backbone
|
18
|
+
backbone:
|
19
|
+
# [from, repeats, module, args]
|
20
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
21
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
22
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 2, C3k2, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 2, C3k2, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
31
|
+
|
32
|
+
# YOLO11n head
|
33
|
+
head:
|
34
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
35
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
36
|
+
- [-1, 2, C3k2, [512, False]] # 13
|
37
|
+
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
39
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
40
|
+
- [-1, 2, C3k2, [256, False]] # 16 (P3/8-small)
|
41
|
+
|
42
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
43
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
44
|
+
- [-1, 2, C3k2, [512, False]] # 19 (P4/16-medium)
|
45
|
+
|
46
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
47
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
48
|
+
- [-1, 2, C3k2, [1024, True]] # 22 (P5/32-large)
|
49
|
+
|
50
|
+
- [[16, 19, 22], 1, OBB, [nc, 1]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11-pose keypoints/pose estimation model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/pose
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
kpt_shape: [17, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
|
10
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-pose.yaml' will call yolo11.yaml with scale 'n'
|
11
|
+
# [depth, width, max_channels]
|
12
|
+
n: [0.50, 0.25, 1024] # summary: 344 layers, 2908507 parameters, 2908491 gradients, 7.7 GFLOPs
|
13
|
+
s: [0.50, 0.50, 1024] # summary: 344 layers, 9948811 parameters, 9948795 gradients, 23.5 GFLOPs
|
14
|
+
m: [0.50, 1.00, 512] # summary: 434 layers, 20973273 parameters, 20973257 gradients, 72.3 GFLOPs
|
15
|
+
l: [1.00, 1.00, 512] # summary: 656 layers, 26230745 parameters, 26230729 gradients, 91.4 GFLOPs
|
16
|
+
x: [1.00, 1.50, 512] # summary: 656 layers, 58889881 parameters, 58889865 gradients, 204.3 GFLOPs
|
17
|
+
|
18
|
+
# YOLO11n backbone
|
19
|
+
backbone:
|
20
|
+
# [from, repeats, module, args]
|
21
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
22
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
23
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
24
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
25
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
26
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
27
|
+
- [-1, 2, C3k2, [512, True]]
|
28
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
29
|
+
- [-1, 2, C3k2, [1024, True]]
|
30
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
31
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
32
|
+
|
33
|
+
# YOLO11n head
|
34
|
+
head:
|
35
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
36
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
37
|
+
- [-1, 2, C3k2, [512, False]] # 13
|
38
|
+
|
39
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
40
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
41
|
+
- [-1, 2, C3k2, [256, False]] # 16 (P3/8-small)
|
42
|
+
|
43
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
44
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
45
|
+
- [-1, 2, C3k2, [512, False]] # 19 (P4/16-medium)
|
46
|
+
|
47
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
48
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
49
|
+
- [-1, 2, C3k2, [1024, True]] # 22 (P5/32-large)
|
50
|
+
|
51
|
+
- [[16, 19, 22], 1, Pose, [nc, kpt_shape]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11-seg instance segmentation model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/segment
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-seg.yaml' will call yolo11-seg.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.50, 0.25, 1024] # summary: 355 layers, 2876848 parameters, 2876832 gradients, 10.5 GFLOPs
|
12
|
+
s: [0.50, 0.50, 1024] # summary: 355 layers, 10113248 parameters, 10113232 gradients, 35.8 GFLOPs
|
13
|
+
m: [0.50, 1.00, 512] # summary: 445 layers, 22420896 parameters, 22420880 gradients, 123.9 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # summary: 667 layers, 27678368 parameters, 27678352 gradients, 143.0 GFLOPs
|
15
|
+
x: [1.00, 1.50, 512] # summary: 667 layers, 62142656 parameters, 62142640 gradients, 320.2 GFLOPs
|
16
|
+
|
17
|
+
# YOLO11n backbone
|
18
|
+
backbone:
|
19
|
+
# [from, repeats, module, args]
|
20
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
21
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
22
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 2, C3k2, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 2, C3k2, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
31
|
+
|
32
|
+
# YOLO11n head
|
33
|
+
head:
|
34
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
35
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
36
|
+
- [-1, 2, C3k2, [512, False]] # 13
|
37
|
+
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
39
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
40
|
+
- [-1, 2, C3k2, [256, False]] # 16 (P3/8-small)
|
41
|
+
|
42
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
43
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
44
|
+
- [-1, 2, C3k2, [512, False]] # 19 (P4/16-medium)
|
45
|
+
|
46
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
47
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
48
|
+
- [-1, 2, C3k2, [1024, True]] # 22 (P5/32-large)
|
49
|
+
|
50
|
+
- [[16, 19, 22], 1, Segment, [nc, 32, 256]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLO11 object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo11
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n.yaml' will call yolo11.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.50, 0.25, 1024] # summary: 319 layers, 2624080 parameters, 2624064 gradients, 6.6 GFLOPs
|
12
|
+
s: [0.50, 0.50, 1024] # summary: 319 layers, 9458752 parameters, 9458736 gradients, 21.7 GFLOPs
|
13
|
+
m: [0.50, 1.00, 512] # summary: 409 layers, 20114688 parameters, 20114672 gradients, 68.5 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # summary: 631 layers, 25372160 parameters, 25372144 gradients, 87.6 GFLOPs
|
15
|
+
x: [1.00, 1.50, 512] # summary: 631 layers, 56966176 parameters, 56966160 gradients, 196.0 GFLOPs
|
16
|
+
|
17
|
+
# YOLO11n backbone
|
18
|
+
backbone:
|
19
|
+
# [from, repeats, module, args]
|
20
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
21
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
22
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 2, C3k2, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 2, C3k2, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
31
|
+
|
32
|
+
# YOLO11n head
|
33
|
+
head:
|
34
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
35
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
36
|
+
- [-1, 2, C3k2, [512, False]] # 13
|
37
|
+
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
39
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
40
|
+
- [-1, 2, C3k2, [256, False]] # 16 (P3/8-small)
|
41
|
+
|
42
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
43
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
44
|
+
- [-1, 2, C3k2, [512, False]] # 19 (P4/16-medium)
|
45
|
+
|
46
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
47
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
48
|
+
- [-1, 2, C3k2, [1024, True]] # 22 (P5/32-large)
|
49
|
+
|
50
|
+
- [[16, 19, 22], 1, Detect, [nc]] # Detect(P3, P4, P5)
|
@@ -1,5 +1,8 @@
|
|
1
|
-
# Ultralytics
|
2
|
-
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics RT-DETR-l hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/rtdetr
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
3
6
|
|
4
7
|
# Parameters
|
5
8
|
nc: 80 # number of classes
|
@@ -1,5 +1,8 @@
|
|
1
|
-
# Ultralytics
|
2
|
-
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics RT-DETR-ResNet101 hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/rtdetr
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
3
6
|
|
4
7
|
# Parameters
|
5
8
|
nc: 80 # number of classes
|
@@ -1,5 +1,8 @@
|
|
1
|
-
# Ultralytics
|
2
|
-
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics RT-DETR-ResNet50 hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/rtdetr
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
3
6
|
|
4
7
|
# Parameters
|
5
8
|
nc: 80 # number of classes
|
@@ -1,5 +1,8 @@
|
|
1
|
-
# Ultralytics
|
2
|
-
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics RT-DETR-x hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/rtdetr
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
3
6
|
|
4
7
|
# Parameters
|
5
8
|
nc: 80 # number of classes
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# YOLOv10b object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov10
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolov10n.yaml' will call yolov10.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
b: [0.67, 1.00, 512]
|
12
|
+
|
13
|
+
backbone:
|
14
|
+
# [from, repeats, module, args]
|
15
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
16
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
17
|
+
- [-1, 3, C2f, [128, True]]
|
18
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
19
|
+
- [-1, 6, C2f, [256, True]]
|
20
|
+
- [-1, 1, SCDown, [512, 3, 2]] # 5-P4/16
|
21
|
+
- [-1, 6, C2f, [512, True]]
|
22
|
+
- [-1, 1, SCDown, [1024, 3, 2]] # 7-P5/32
|
23
|
+
- [-1, 3, C2fCIB, [1024, True]]
|
24
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
25
|
+
- [-1, 1, PSA, [1024]] # 10
|
26
|
+
|
27
|
+
# YOLOv10.0n head
|
28
|
+
head:
|
29
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
30
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
31
|
+
- [-1, 3, C2fCIB, [512, True]] # 13
|
32
|
+
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
35
|
+
- [-1, 3, C2f, [256]] # 16 (P3/8-small)
|
36
|
+
|
37
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
38
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
39
|
+
- [-1, 3, C2fCIB, [512, True]] # 19 (P4/16-medium)
|
40
|
+
|
41
|
+
- [-1, 1, SCDown, [512, 3, 2]]
|
42
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
43
|
+
- [-1, 3, C2fCIB, [1024, True]] # 22 (P5/32-large)
|
44
|
+
|
45
|
+
- [[16, 19, 22], 1, v10Detect, [nc]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# YOLOv10l object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov10
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolov10n.yaml' will call yolov10.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
l: [1.00, 1.00, 512]
|
12
|
+
|
13
|
+
backbone:
|
14
|
+
# [from, repeats, module, args]
|
15
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
16
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
17
|
+
- [-1, 3, C2f, [128, True]]
|
18
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
19
|
+
- [-1, 6, C2f, [256, True]]
|
20
|
+
- [-1, 1, SCDown, [512, 3, 2]] # 5-P4/16
|
21
|
+
- [-1, 6, C2f, [512, True]]
|
22
|
+
- [-1, 1, SCDown, [1024, 3, 2]] # 7-P5/32
|
23
|
+
- [-1, 3, C2fCIB, [1024, True]]
|
24
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
25
|
+
- [-1, 1, PSA, [1024]] # 10
|
26
|
+
|
27
|
+
# YOLOv10.0n head
|
28
|
+
head:
|
29
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
30
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
31
|
+
- [-1, 3, C2fCIB, [512, True]] # 13
|
32
|
+
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
35
|
+
- [-1, 3, C2f, [256]] # 16 (P3/8-small)
|
36
|
+
|
37
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
38
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
39
|
+
- [-1, 3, C2fCIB, [512, True]] # 19 (P4/16-medium)
|
40
|
+
|
41
|
+
- [-1, 1, SCDown, [512, 3, 2]]
|
42
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
43
|
+
- [-1, 3, C2fCIB, [1024, True]] # 22 (P5/32-large)
|
44
|
+
|
45
|
+
- [[16, 19, 22], 1, v10Detect, [nc]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# YOLOv10m object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov10
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolov10n.yaml' will call yolov10.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
m: [0.67, 0.75, 768]
|
12
|
+
|
13
|
+
backbone:
|
14
|
+
# [from, repeats, module, args]
|
15
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
16
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
17
|
+
- [-1, 3, C2f, [128, True]]
|
18
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
19
|
+
- [-1, 6, C2f, [256, True]]
|
20
|
+
- [-1, 1, SCDown, [512, 3, 2]] # 5-P4/16
|
21
|
+
- [-1, 6, C2f, [512, True]]
|
22
|
+
- [-1, 1, SCDown, [1024, 3, 2]] # 7-P5/32
|
23
|
+
- [-1, 3, C2fCIB, [1024, True]]
|
24
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
25
|
+
- [-1, 1, PSA, [1024]] # 10
|
26
|
+
|
27
|
+
# YOLOv10.0n head
|
28
|
+
head:
|
29
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
30
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
31
|
+
- [-1, 3, C2f, [512]] # 13
|
32
|
+
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
35
|
+
- [-1, 3, C2f, [256]] # 16 (P3/8-small)
|
36
|
+
|
37
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
38
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
39
|
+
- [-1, 3, C2fCIB, [512, True]] # 19 (P4/16-medium)
|
40
|
+
|
41
|
+
- [-1, 1, SCDown, [512, 3, 2]]
|
42
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
43
|
+
- [-1, 3, C2fCIB, [1024, True]] # 22 (P5/32-large)
|
44
|
+
|
45
|
+
- [[16, 19, 22], 1, v10Detect, [nc]] # Detect(P3, P4, P5)
|