dgenerate-ultralytics-headless 8.3.134__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.
- dgenerate_ultralytics_headless-8.3.134.dist-info/METADATA +400 -0
- dgenerate_ultralytics_headless-8.3.134.dist-info/RECORD +272 -0
- dgenerate_ultralytics_headless-8.3.134.dist-info/WHEEL +5 -0
- dgenerate_ultralytics_headless-8.3.134.dist-info/entry_points.txt +3 -0
- dgenerate_ultralytics_headless-8.3.134.dist-info/licenses/LICENSE +661 -0
- dgenerate_ultralytics_headless-8.3.134.dist-info/top_level.txt +1 -0
- tests/__init__.py +22 -0
- tests/conftest.py +83 -0
- tests/test_cli.py +138 -0
- tests/test_cuda.py +215 -0
- tests/test_engine.py +131 -0
- tests/test_exports.py +236 -0
- tests/test_integrations.py +154 -0
- tests/test_python.py +694 -0
- tests/test_solutions.py +187 -0
- ultralytics/__init__.py +30 -0
- ultralytics/assets/bus.jpg +0 -0
- ultralytics/assets/zidane.jpg +0 -0
- ultralytics/cfg/__init__.py +1023 -0
- ultralytics/cfg/datasets/Argoverse.yaml +77 -0
- ultralytics/cfg/datasets/DOTAv1.5.yaml +37 -0
- ultralytics/cfg/datasets/DOTAv1.yaml +36 -0
- ultralytics/cfg/datasets/GlobalWheat2020.yaml +68 -0
- ultralytics/cfg/datasets/HomeObjects-3K.yaml +33 -0
- ultralytics/cfg/datasets/ImageNet.yaml +2025 -0
- ultralytics/cfg/datasets/Objects365.yaml +443 -0
- ultralytics/cfg/datasets/SKU-110K.yaml +58 -0
- ultralytics/cfg/datasets/VOC.yaml +106 -0
- ultralytics/cfg/datasets/VisDrone.yaml +77 -0
- ultralytics/cfg/datasets/african-wildlife.yaml +25 -0
- ultralytics/cfg/datasets/brain-tumor.yaml +23 -0
- ultralytics/cfg/datasets/carparts-seg.yaml +44 -0
- ultralytics/cfg/datasets/coco-pose.yaml +42 -0
- ultralytics/cfg/datasets/coco.yaml +118 -0
- ultralytics/cfg/datasets/coco128-seg.yaml +101 -0
- ultralytics/cfg/datasets/coco128.yaml +101 -0
- ultralytics/cfg/datasets/coco8-multispectral.yaml +104 -0
- ultralytics/cfg/datasets/coco8-pose.yaml +26 -0
- ultralytics/cfg/datasets/coco8-seg.yaml +101 -0
- ultralytics/cfg/datasets/coco8.yaml +101 -0
- ultralytics/cfg/datasets/crack-seg.yaml +22 -0
- ultralytics/cfg/datasets/dog-pose.yaml +24 -0
- ultralytics/cfg/datasets/dota8-multispectral.yaml +38 -0
- ultralytics/cfg/datasets/dota8.yaml +35 -0
- ultralytics/cfg/datasets/hand-keypoints.yaml +26 -0
- ultralytics/cfg/datasets/lvis.yaml +1240 -0
- ultralytics/cfg/datasets/medical-pills.yaml +22 -0
- ultralytics/cfg/datasets/open-images-v7.yaml +666 -0
- ultralytics/cfg/datasets/package-seg.yaml +22 -0
- ultralytics/cfg/datasets/signature.yaml +21 -0
- ultralytics/cfg/datasets/tiger-pose.yaml +25 -0
- ultralytics/cfg/datasets/xView.yaml +155 -0
- ultralytics/cfg/default.yaml +127 -0
- ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +17 -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/11/yoloe-11-seg.yaml +48 -0
- ultralytics/cfg/models/11/yoloe-11.yaml +48 -0
- ultralytics/cfg/models/12/yolo12-cls.yaml +32 -0
- ultralytics/cfg/models/12/yolo12-obb.yaml +48 -0
- ultralytics/cfg/models/12/yolo12-pose.yaml +49 -0
- ultralytics/cfg/models/12/yolo12-seg.yaml +48 -0
- ultralytics/cfg/models/12/yolo12.yaml +48 -0
- ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +53 -0
- ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +45 -0
- ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +45 -0
- ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +57 -0
- 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 +49 -0
- ultralytics/cfg/models/v3/yolov3-tiny.yaml +40 -0
- ultralytics/cfg/models/v3/yolov3.yaml +49 -0
- ultralytics/cfg/models/v5/yolov5-p6.yaml +62 -0
- ultralytics/cfg/models/v5/yolov5.yaml +51 -0
- ultralytics/cfg/models/v6/yolov6.yaml +56 -0
- ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +45 -0
- ultralytics/cfg/models/v8/yoloe-v8.yaml +45 -0
- ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +28 -0
- ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +28 -0
- ultralytics/cfg/models/v8/yolov8-cls.yaml +32 -0
- ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +58 -0
- ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +60 -0
- ultralytics/cfg/models/v8/yolov8-ghost.yaml +50 -0
- ultralytics/cfg/models/v8/yolov8-obb.yaml +49 -0
- ultralytics/cfg/models/v8/yolov8-p2.yaml +57 -0
- ultralytics/cfg/models/v8/yolov8-p6.yaml +59 -0
- ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +60 -0
- ultralytics/cfg/models/v8/yolov8-pose.yaml +50 -0
- ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +49 -0
- ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +59 -0
- ultralytics/cfg/models/v8/yolov8-seg.yaml +49 -0
- ultralytics/cfg/models/v8/yolov8-world.yaml +51 -0
- ultralytics/cfg/models/v8/yolov8-worldv2.yaml +49 -0
- ultralytics/cfg/models/v8/yolov8.yaml +49 -0
- ultralytics/cfg/models/v9/yolov9c-seg.yaml +41 -0
- ultralytics/cfg/models/v9/yolov9c.yaml +41 -0
- ultralytics/cfg/models/v9/yolov9e-seg.yaml +64 -0
- ultralytics/cfg/models/v9/yolov9e.yaml +64 -0
- 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/trackers/botsort.yaml +22 -0
- ultralytics/cfg/trackers/bytetrack.yaml +14 -0
- ultralytics/data/__init__.py +26 -0
- ultralytics/data/annotator.py +66 -0
- ultralytics/data/augment.py +2945 -0
- ultralytics/data/base.py +438 -0
- ultralytics/data/build.py +258 -0
- ultralytics/data/converter.py +754 -0
- ultralytics/data/dataset.py +834 -0
- ultralytics/data/loaders.py +676 -0
- ultralytics/data/scripts/download_weights.sh +18 -0
- ultralytics/data/scripts/get_coco.sh +61 -0
- ultralytics/data/scripts/get_coco128.sh +18 -0
- ultralytics/data/scripts/get_imagenet.sh +52 -0
- ultralytics/data/split.py +125 -0
- ultralytics/data/split_dota.py +325 -0
- ultralytics/data/utils.py +777 -0
- ultralytics/engine/__init__.py +1 -0
- ultralytics/engine/exporter.py +1519 -0
- ultralytics/engine/model.py +1156 -0
- ultralytics/engine/predictor.py +502 -0
- ultralytics/engine/results.py +1840 -0
- ultralytics/engine/trainer.py +853 -0
- ultralytics/engine/tuner.py +243 -0
- ultralytics/engine/validator.py +377 -0
- ultralytics/hub/__init__.py +168 -0
- ultralytics/hub/auth.py +137 -0
- ultralytics/hub/google/__init__.py +176 -0
- ultralytics/hub/session.py +446 -0
- ultralytics/hub/utils.py +248 -0
- ultralytics/models/__init__.py +9 -0
- ultralytics/models/fastsam/__init__.py +7 -0
- ultralytics/models/fastsam/model.py +61 -0
- ultralytics/models/fastsam/predict.py +181 -0
- ultralytics/models/fastsam/utils.py +24 -0
- ultralytics/models/fastsam/val.py +40 -0
- ultralytics/models/nas/__init__.py +7 -0
- ultralytics/models/nas/model.py +102 -0
- ultralytics/models/nas/predict.py +58 -0
- ultralytics/models/nas/val.py +39 -0
- ultralytics/models/rtdetr/__init__.py +7 -0
- ultralytics/models/rtdetr/model.py +63 -0
- ultralytics/models/rtdetr/predict.py +84 -0
- ultralytics/models/rtdetr/train.py +85 -0
- ultralytics/models/rtdetr/val.py +191 -0
- ultralytics/models/sam/__init__.py +6 -0
- ultralytics/models/sam/amg.py +260 -0
- ultralytics/models/sam/build.py +358 -0
- ultralytics/models/sam/model.py +170 -0
- ultralytics/models/sam/modules/__init__.py +1 -0
- ultralytics/models/sam/modules/blocks.py +1129 -0
- ultralytics/models/sam/modules/decoders.py +515 -0
- ultralytics/models/sam/modules/encoders.py +854 -0
- ultralytics/models/sam/modules/memory_attention.py +299 -0
- ultralytics/models/sam/modules/sam.py +1006 -0
- ultralytics/models/sam/modules/tiny_encoder.py +1002 -0
- ultralytics/models/sam/modules/transformer.py +351 -0
- ultralytics/models/sam/modules/utils.py +394 -0
- ultralytics/models/sam/predict.py +1605 -0
- ultralytics/models/utils/__init__.py +1 -0
- ultralytics/models/utils/loss.py +455 -0
- ultralytics/models/utils/ops.py +268 -0
- ultralytics/models/yolo/__init__.py +7 -0
- ultralytics/models/yolo/classify/__init__.py +7 -0
- ultralytics/models/yolo/classify/predict.py +88 -0
- ultralytics/models/yolo/classify/train.py +233 -0
- ultralytics/models/yolo/classify/val.py +215 -0
- ultralytics/models/yolo/detect/__init__.py +7 -0
- ultralytics/models/yolo/detect/predict.py +124 -0
- ultralytics/models/yolo/detect/train.py +217 -0
- ultralytics/models/yolo/detect/val.py +451 -0
- ultralytics/models/yolo/model.py +354 -0
- ultralytics/models/yolo/obb/__init__.py +7 -0
- ultralytics/models/yolo/obb/predict.py +66 -0
- ultralytics/models/yolo/obb/train.py +81 -0
- ultralytics/models/yolo/obb/val.py +283 -0
- ultralytics/models/yolo/pose/__init__.py +7 -0
- ultralytics/models/yolo/pose/predict.py +79 -0
- ultralytics/models/yolo/pose/train.py +154 -0
- ultralytics/models/yolo/pose/val.py +394 -0
- ultralytics/models/yolo/segment/__init__.py +7 -0
- ultralytics/models/yolo/segment/predict.py +113 -0
- ultralytics/models/yolo/segment/train.py +123 -0
- ultralytics/models/yolo/segment/val.py +428 -0
- ultralytics/models/yolo/world/__init__.py +5 -0
- ultralytics/models/yolo/world/train.py +119 -0
- ultralytics/models/yolo/world/train_world.py +176 -0
- ultralytics/models/yolo/yoloe/__init__.py +22 -0
- ultralytics/models/yolo/yoloe/predict.py +169 -0
- ultralytics/models/yolo/yoloe/train.py +298 -0
- ultralytics/models/yolo/yoloe/train_seg.py +124 -0
- ultralytics/models/yolo/yoloe/val.py +191 -0
- ultralytics/nn/__init__.py +29 -0
- ultralytics/nn/autobackend.py +842 -0
- ultralytics/nn/modules/__init__.py +182 -0
- ultralytics/nn/modules/activation.py +53 -0
- ultralytics/nn/modules/block.py +1966 -0
- ultralytics/nn/modules/conv.py +712 -0
- ultralytics/nn/modules/head.py +880 -0
- ultralytics/nn/modules/transformer.py +713 -0
- ultralytics/nn/modules/utils.py +164 -0
- ultralytics/nn/tasks.py +1627 -0
- ultralytics/nn/text_model.py +351 -0
- ultralytics/solutions/__init__.py +41 -0
- ultralytics/solutions/ai_gym.py +116 -0
- ultralytics/solutions/analytics.py +252 -0
- ultralytics/solutions/config.py +106 -0
- ultralytics/solutions/distance_calculation.py +124 -0
- ultralytics/solutions/heatmap.py +127 -0
- ultralytics/solutions/instance_segmentation.py +84 -0
- ultralytics/solutions/object_blurrer.py +90 -0
- ultralytics/solutions/object_counter.py +195 -0
- ultralytics/solutions/object_cropper.py +84 -0
- ultralytics/solutions/parking_management.py +273 -0
- ultralytics/solutions/queue_management.py +93 -0
- ultralytics/solutions/region_counter.py +120 -0
- ultralytics/solutions/security_alarm.py +154 -0
- ultralytics/solutions/similarity_search.py +172 -0
- ultralytics/solutions/solutions.py +724 -0
- ultralytics/solutions/speed_estimation.py +110 -0
- ultralytics/solutions/streamlit_inference.py +196 -0
- ultralytics/solutions/templates/similarity-search.html +160 -0
- ultralytics/solutions/trackzone.py +88 -0
- ultralytics/solutions/vision_eye.py +68 -0
- ultralytics/trackers/__init__.py +7 -0
- ultralytics/trackers/basetrack.py +124 -0
- ultralytics/trackers/bot_sort.py +260 -0
- ultralytics/trackers/byte_tracker.py +480 -0
- ultralytics/trackers/track.py +125 -0
- ultralytics/trackers/utils/__init__.py +1 -0
- ultralytics/trackers/utils/gmc.py +376 -0
- ultralytics/trackers/utils/kalman_filter.py +493 -0
- ultralytics/trackers/utils/matching.py +157 -0
- ultralytics/utils/__init__.py +1435 -0
- ultralytics/utils/autobatch.py +106 -0
- ultralytics/utils/autodevice.py +174 -0
- ultralytics/utils/benchmarks.py +695 -0
- ultralytics/utils/callbacks/__init__.py +5 -0
- ultralytics/utils/callbacks/base.py +234 -0
- ultralytics/utils/callbacks/clearml.py +153 -0
- ultralytics/utils/callbacks/comet.py +552 -0
- ultralytics/utils/callbacks/dvc.py +205 -0
- ultralytics/utils/callbacks/hub.py +108 -0
- ultralytics/utils/callbacks/mlflow.py +138 -0
- ultralytics/utils/callbacks/neptune.py +140 -0
- ultralytics/utils/callbacks/raytune.py +43 -0
- ultralytics/utils/callbacks/tensorboard.py +132 -0
- ultralytics/utils/callbacks/wb.py +185 -0
- ultralytics/utils/checks.py +897 -0
- ultralytics/utils/dist.py +119 -0
- ultralytics/utils/downloads.py +499 -0
- ultralytics/utils/errors.py +43 -0
- ultralytics/utils/export.py +219 -0
- ultralytics/utils/files.py +221 -0
- ultralytics/utils/instance.py +499 -0
- ultralytics/utils/loss.py +813 -0
- ultralytics/utils/metrics.py +1356 -0
- ultralytics/utils/ops.py +885 -0
- ultralytics/utils/patches.py +143 -0
- ultralytics/utils/plotting.py +1011 -0
- ultralytics/utils/tal.py +416 -0
- ultralytics/utils/torch_utils.py +990 -0
- ultralytics/utils/triton.py +116 -0
- ultralytics/utils/tuner.py +159 -0
@@ -0,0 +1,50 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8 object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
6
|
+
# Employs Ghost convolutions and modules proposed in Huawei's GhostNet in https://arxiv.org/abs/1911.11907v2
|
7
|
+
|
8
|
+
# Parameters
|
9
|
+
nc: 80 # number of classes
|
10
|
+
scales: # model compound scaling constants, i.e. 'model=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
11
|
+
# [depth, width, max_channels]
|
12
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-ghost summary: 237 layers, 1865316 parameters, 1865300 gradients, 5.8 GFLOPs
|
13
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-ghost summary: 237 layers, 5960072 parameters, 5960056 gradients, 16.4 GFLOPs
|
14
|
+
m: [0.67, 0.75, 768] # YOLOv8m-ghost summary: 357 layers, 10336312 parameters, 10336296 gradients, 32.7 GFLOPs
|
15
|
+
l: [1.00, 1.00, 512] # YOLOv8l-ghost summary: 477 layers, 14277872 parameters, 14277856 gradients, 53.7 GFLOPs
|
16
|
+
x: [1.00, 1.25, 512] # YOLOv8x-ghost summary: 477 layers, 22229308 parameters, 22229292 gradients, 83.3 GFLOPs
|
17
|
+
|
18
|
+
# YOLOv8.0n-ghost backbone
|
19
|
+
backbone:
|
20
|
+
# [from, repeats, module, args]
|
21
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
22
|
+
- [-1, 1, GhostConv, [128, 3, 2]] # 1-P2/4
|
23
|
+
- [-1, 3, C3Ghost, [128, True]]
|
24
|
+
- [-1, 1, GhostConv, [256, 3, 2]] # 3-P3/8
|
25
|
+
- [-1, 6, C3Ghost, [256, True]]
|
26
|
+
- [-1, 1, GhostConv, [512, 3, 2]] # 5-P4/16
|
27
|
+
- [-1, 6, C3Ghost, [512, True]]
|
28
|
+
- [-1, 1, GhostConv, [1024, 3, 2]] # 7-P5/32
|
29
|
+
- [-1, 3, C3Ghost, [1024, True]]
|
30
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
31
|
+
|
32
|
+
# YOLOv8.0n head
|
33
|
+
head:
|
34
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
35
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
36
|
+
- [-1, 3, C3Ghost, [512]] # 12
|
37
|
+
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
39
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
40
|
+
- [-1, 3, C3Ghost, [256]] # 15 (P3/8-small)
|
41
|
+
|
42
|
+
- [-1, 1, GhostConv, [256, 3, 2]]
|
43
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
44
|
+
- [-1, 3, C3Ghost, [512]] # 18 (P4/16-medium)
|
45
|
+
|
46
|
+
- [-1, 1, GhostConv, [512, 3, 2]]
|
47
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
48
|
+
- [-1, 3, C3Ghost, [1024]] # 21 (P5/32-large)
|
49
|
+
|
50
|
+
- [[15, 18, 21], 1, Detect, [nc]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-obb Oriented Bounding Boxes (OBB) model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-obb summary: 144 layers, 3228867 parameters, 3228851 gradients, 9.1 GFLOPs
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-obb summary: 144 layers, 11452739 parameters, 11452723 gradients, 29.8 GFLOPs
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m-obb summary: 184 layers, 26463235 parameters, 26463219 gradients, 81.5 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l-obb summary: 224 layers, 44540355 parameters, 44540339 gradients, 169.4 GFLOPs
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x-obb summary: 224 layers, 69555651 parameters, 69555635 gradients, 264.3 GFLOPs
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2f, [512]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
42
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
43
|
+
- [-1, 3, C2f, [512]] # 18 (P4/16-medium)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
46
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
47
|
+
- [-1, 3, C2f, [1024]] # 21 (P5/32-large)
|
48
|
+
|
49
|
+
- [[15, 18, 21], 1, OBB, [nc, 1]] # OBB(P3, P4, P5)
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8 object detection model with P2/4 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n.yaml' will call yolov8.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, 768]
|
14
|
+
l: [1.00, 1.00, 512]
|
15
|
+
x: [1.00, 1.25, 512]
|
16
|
+
|
17
|
+
# YOLOv8.0 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0-p2 head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2f, [512]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
42
|
+
- [[-1, 2], 1, Concat, [1]] # cat backbone P2
|
43
|
+
- [-1, 3, C2f, [128]] # 18 (P2/4-xsmall)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [128, 3, 2]]
|
46
|
+
- [[-1, 15], 1, Concat, [1]] # cat head P3
|
47
|
+
- [-1, 3, C2f, [256]] # 21 (P3/8-small)
|
48
|
+
|
49
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
50
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
51
|
+
- [-1, 3, C2f, [512]] # 24 (P4/16-medium)
|
52
|
+
|
53
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
54
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
55
|
+
- [-1, 3, C2f, [1024]] # 27 (P5/32-large)
|
56
|
+
|
57
|
+
- [[18, 21, 24, 27], 1, Detect, [nc]] # Detect(P2, P3, P4, P5)
|
@@ -0,0 +1,59 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8 object detection model with P3/8 - P6/64 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n-p6.yaml' will call yolov8-p6.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-p6 summary: 170 layers, 4984352 parameters, 4984336 gradients, 8.8 GFLOPs
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-p6 summary: 170 layers, 17911792 parameters, 17911776 gradients, 28.7 GFLOPs
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m-p6 summary: 222 layers, 44887488 parameters, 44887472 gradients, 83.5 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l-p6 summary: 274 layers, 62384016 parameters, 62384000 gradients, 167.9 GFLOPs
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x-p6 summary: 274 layers, 97423072 parameters, 97423056 gradients, 261.8 GFLOPs
|
16
|
+
|
17
|
+
# YOLOv8.0x6 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [768, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [768, True]]
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 9-P6/64
|
30
|
+
- [-1, 3, C2f, [1024, True]]
|
31
|
+
- [-1, 1, SPPF, [1024, 5]] # 11
|
32
|
+
|
33
|
+
# YOLOv8.0x6 head
|
34
|
+
head:
|
35
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
36
|
+
- [[-1, 8], 1, Concat, [1]] # cat backbone P5
|
37
|
+
- [-1, 3, C2, [768, False]] # 14
|
38
|
+
|
39
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
40
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
41
|
+
- [-1, 3, C2, [512, False]] # 17
|
42
|
+
|
43
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
44
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
45
|
+
- [-1, 3, C2, [256, False]] # 20 (P3/8-small)
|
46
|
+
|
47
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
48
|
+
- [[-1, 17], 1, Concat, [1]] # cat head P4
|
49
|
+
- [-1, 3, C2, [512, False]] # 23 (P4/16-medium)
|
50
|
+
|
51
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
52
|
+
- [[-1, 14], 1, Concat, [1]] # cat head P5
|
53
|
+
- [-1, 3, C2, [768, False]] # 26 (P5/32-large)
|
54
|
+
|
55
|
+
- [-1, 1, Conv, [768, 3, 2]]
|
56
|
+
- [[-1, 11], 1, Concat, [1]] # cat head P6
|
57
|
+
- [-1, 3, C2, [1024, False]] # 29 (P6/64-xlarge)
|
58
|
+
|
59
|
+
- [[20, 23, 26, 29], 1, Detect, [nc]] # Detect(P3, P4, P5, P6)
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-pose keypoints/pose estimation model with P3/8 - P6/64 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/pose
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 1 # 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=yolov8n-p6.yaml' will call yolov8-p6.yaml with scale 'n'
|
11
|
+
# [depth, width, max_channels]
|
12
|
+
n: [0.33, 0.25, 1024]
|
13
|
+
s: [0.33, 0.50, 1024]
|
14
|
+
m: [0.67, 0.75, 768]
|
15
|
+
l: [1.00, 1.00, 512]
|
16
|
+
x: [1.00, 1.25, 512]
|
17
|
+
|
18
|
+
# YOLOv8.0x6 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, 3, C2f, [128, True]]
|
24
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
25
|
+
- [-1, 6, C2f, [256, True]]
|
26
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
27
|
+
- [-1, 6, C2f, [512, True]]
|
28
|
+
- [-1, 1, Conv, [768, 3, 2]] # 7-P5/32
|
29
|
+
- [-1, 3, C2f, [768, True]]
|
30
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 9-P6/64
|
31
|
+
- [-1, 3, C2f, [1024, True]]
|
32
|
+
- [-1, 1, SPPF, [1024, 5]] # 11
|
33
|
+
|
34
|
+
# YOLOv8.0x6 head
|
35
|
+
head:
|
36
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
37
|
+
- [[-1, 8], 1, Concat, [1]] # cat backbone P5
|
38
|
+
- [-1, 3, C2, [768, False]] # 14
|
39
|
+
|
40
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
41
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
42
|
+
- [-1, 3, C2, [512, False]] # 17
|
43
|
+
|
44
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
45
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
46
|
+
- [-1, 3, C2, [256, False]] # 20 (P3/8-small)
|
47
|
+
|
48
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
49
|
+
- [[-1, 17], 1, Concat, [1]] # cat head P4
|
50
|
+
- [-1, 3, C2, [512, False]] # 23 (P4/16-medium)
|
51
|
+
|
52
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
53
|
+
- [[-1, 14], 1, Concat, [1]] # cat head P5
|
54
|
+
- [-1, 3, C2, [768, False]] # 26 (P5/32-large)
|
55
|
+
|
56
|
+
- [-1, 1, Conv, [768, 3, 2]]
|
57
|
+
- [[-1, 11], 1, Concat, [1]] # cat head P6
|
58
|
+
- [-1, 3, C2, [1024, False]] # 29 (P6/64-xlarge)
|
59
|
+
|
60
|
+
- [[20, 23, 26, 29], 1, Pose, [nc, kpt_shape]] # Pose(P3, P4, P5, P6)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-pose keypoints/pose estimation model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/pose
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 1 # 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=yolov8n-pose.yaml' will call yolov8-pose.yaml with scale 'n'
|
11
|
+
# [depth, width, max_channels]
|
12
|
+
n: [0.33, 0.25, 1024]
|
13
|
+
s: [0.33, 0.50, 1024]
|
14
|
+
m: [0.67, 0.75, 768]
|
15
|
+
l: [1.00, 1.00, 512]
|
16
|
+
x: [1.00, 1.25, 512]
|
17
|
+
|
18
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
24
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
25
|
+
- [-1, 6, C2f, [256, True]]
|
26
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
27
|
+
- [-1, 6, C2f, [512, True]]
|
28
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
29
|
+
- [-1, 3, C2f, [1024, True]]
|
30
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
31
|
+
|
32
|
+
# YOLOv8.0n head
|
33
|
+
head:
|
34
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
35
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
36
|
+
- [-1, 3, C2f, [512]] # 12
|
37
|
+
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
39
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
40
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
41
|
+
|
42
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
43
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
44
|
+
- [-1, 3, C2f, [512]] # 18 (P4/16-medium)
|
45
|
+
|
46
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
47
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
48
|
+
- [-1, 3, C2f, [1024]] # 21 (P5/32-large)
|
49
|
+
|
50
|
+
- [[15, 18, 21], 1, Pose, [nc, kpt_shape]] # Pose(P3, P4, P5)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-RTDETR 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
|
6
|
+
|
7
|
+
# Parameters
|
8
|
+
nc: 80 # number of classes
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-rtdetr summary: 235 layers, 9643868 parameters, 9643868 gradients, 17.1 GFLOPs
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-rtdetr summary: 235 layers, 16518572 parameters, 16518572 gradients, 32.8 GFLOPs
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m-rtdetr summary: 275 layers, 29645180 parameters, 29645180 gradients, 75.8 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l-rtdetr summary: 315 layers, 45644364 parameters, 45644364 gradients, 152.3 GFLOPs
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x-rtdetr summary: 315 layers, 67113884 parameters, 67113884 gradients, 230.8 GFLOPs
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2f, [512]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
42
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
43
|
+
- [-1, 3, C2f, [512]] # 18 (P4/16-medium)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
46
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
47
|
+
- [-1, 3, C2f, [1024]] # 21 (P5/32-large)
|
48
|
+
|
49
|
+
- [[15, 18, 21], 1, RTDETRDecoder, [nc]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,59 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-seg instance segmentation model with P3/8 - P6/64 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n-seg-p6.yaml' will call yolov8-seg-p6.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, 768]
|
14
|
+
l: [1.00, 1.00, 512]
|
15
|
+
x: [1.00, 1.25, 512]
|
16
|
+
|
17
|
+
# YOLOv8.0x6 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [768, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [768, True]]
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 9-P6/64
|
30
|
+
- [-1, 3, C2f, [1024, True]]
|
31
|
+
- [-1, 1, SPPF, [1024, 5]] # 11
|
32
|
+
|
33
|
+
# YOLOv8.0x6 head
|
34
|
+
head:
|
35
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
36
|
+
- [[-1, 8], 1, Concat, [1]] # cat backbone P5
|
37
|
+
- [-1, 3, C2, [768, False]] # 14
|
38
|
+
|
39
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
40
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
41
|
+
- [-1, 3, C2, [512, False]] # 17
|
42
|
+
|
43
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
44
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
45
|
+
- [-1, 3, C2, [256, False]] # 20 (P3/8-small)
|
46
|
+
|
47
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
48
|
+
- [[-1, 17], 1, Concat, [1]] # cat head P4
|
49
|
+
- [-1, 3, C2, [512, False]] # 23 (P4/16-medium)
|
50
|
+
|
51
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
52
|
+
- [[-1, 14], 1, Concat, [1]] # cat head P5
|
53
|
+
- [-1, 3, C2, [768, False]] # 26 (P5/32-large)
|
54
|
+
|
55
|
+
- [-1, 1, Conv, [768, 3, 2]]
|
56
|
+
- [[-1, 11], 1, Concat, [1]] # cat head P6
|
57
|
+
- [-1, 3, C2, [1024, False]] # 29 (P6/64-xlarge)
|
58
|
+
|
59
|
+
- [[20, 23, 26, 29], 1, Segment, [nc, 32, 256]] # Pose(P3, P4, P5, P6)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-seg instance segmentation model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n-seg.yaml' will call yolov8-seg.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, 768]
|
14
|
+
l: [1.00, 1.00, 512]
|
15
|
+
x: [1.00, 1.25, 512]
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2f, [512]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
42
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
43
|
+
- [-1, 3, C2f, [512]] # 18 (P4/16-medium)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
46
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
47
|
+
- [-1, 3, C2f, [1024]] # 21 (P5/32-large)
|
48
|
+
|
49
|
+
- [[15, 18, 21], 1, Segment, [nc, 32, 256]] # Segment(P3, P4, P5)
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-World hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo-world
|
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=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-world summary: 161 layers, 4204111 parameters, 4204095 gradients, 39.6 GFLOPs
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-world summary: 161 layers, 13383496 parameters, 13383480 gradients, 71.5 GFLOPs
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m-world summary: 201 layers, 29065310 parameters, 29065294 gradients, 131.4 GFLOPs
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l-world summary: 241 layers, 47553970 parameters, 47553954 gradients, 225.6 GFLOPs
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x-world summary: 241 layers, 73690217 parameters, 73690201 gradients, 330.8 GFLOPs
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2fAttn, [512, 256, 8]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2fAttn, [256, 128, 4]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [[15, 12, 9], 1, ImagePoolingAttn, [256]] # 16 (P3/8-small)
|
42
|
+
|
43
|
+
- [15, 1, Conv, [256, 3, 2]]
|
44
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
45
|
+
- [-1, 3, C2fAttn, [512, 256, 8]] # 19 (P4/16-medium)
|
46
|
+
|
47
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
48
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
49
|
+
- [-1, 3, C2fAttn, [1024, 512, 16]] # 22 (P5/32-large)
|
50
|
+
|
51
|
+
- [[15, 19, 22], 1, WorldDetect, [nc, 512, False]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8-Worldv2 hybrid object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo-world
|
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=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n-worldv2 summary: 148 layers, 3695183 parameters, 3695167 gradients, 19.5 GFLOPS
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s-worldv2 summary: 148 layers, 12759880 parameters, 12759864 gradients, 51.0 GFLOPS
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m-worldv2 summary: 188 layers, 28376158 parameters, 28376142 gradients, 110.5 GFLOPS
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l-worldv2 summary: 228 layers, 46832050 parameters, 46832034 gradients, 204.5 GFLOPS
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x-worldv2 summary: 228 layers, 72886377 parameters, 72886361 gradients, 309.3 GFLOPS
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2fAttn, [512, 256, 8]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2fAttn, [256, 128, 4]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [15, 1, Conv, [256, 3, 2]]
|
42
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
43
|
+
- [-1, 3, C2fAttn, [512, 256, 8]] # 18 (P4/16-medium)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
46
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
47
|
+
- [-1, 3, C2fAttn, [1024, 512, 16]] # 21 (P5/32-large)
|
48
|
+
|
49
|
+
- [[15, 18, 21], 1, WorldDetect, [nc, 512, True]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Ultralytics YOLOv8 object detection model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov8
|
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=yolov8n.yaml' will call yolov8.yaml with scale 'n'
|
10
|
+
# [depth, width, max_channels]
|
11
|
+
n: [0.33, 0.25, 1024] # YOLOv8n summary: 129 layers, 3157200 parameters, 3157184 gradients, 8.9 GFLOPS
|
12
|
+
s: [0.33, 0.50, 1024] # YOLOv8s summary: 129 layers, 11166560 parameters, 11166544 gradients, 28.8 GFLOPS
|
13
|
+
m: [0.67, 0.75, 768] # YOLOv8m summary: 169 layers, 25902640 parameters, 25902624 gradients, 79.3 GFLOPS
|
14
|
+
l: [1.00, 1.00, 512] # YOLOv8l summary: 209 layers, 43691520 parameters, 43691504 gradients, 165.7 GFLOPS
|
15
|
+
x: [1.00, 1.25, 512] # YOLOv8x summary: 209 layers, 68229648 parameters, 68229632 gradients, 258.5 GFLOPS
|
16
|
+
|
17
|
+
# YOLOv8.0n 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, 3, C2f, [128, True]]
|
23
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
24
|
+
- [-1, 6, C2f, [256, True]]
|
25
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
26
|
+
- [-1, 6, C2f, [512, True]]
|
27
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
28
|
+
- [-1, 3, C2f, [1024, True]]
|
29
|
+
- [-1, 1, SPPF, [1024, 5]] # 9
|
30
|
+
|
31
|
+
# YOLOv8.0n head
|
32
|
+
head:
|
33
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
34
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
35
|
+
- [-1, 3, C2f, [512]] # 12
|
36
|
+
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
38
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
39
|
+
- [-1, 3, C2f, [256]] # 15 (P3/8-small)
|
40
|
+
|
41
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
42
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
43
|
+
- [-1, 3, C2f, [512]] # 18 (P4/16-medium)
|
44
|
+
|
45
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
46
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
47
|
+
- [-1, 3, C2f, [1024]] # 21 (P5/32-large)
|
48
|
+
|
49
|
+
- [[15, 18, 21], 1, Detect, [nc]] # Detect(P3, P4, P5)
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# YOLOv9c-seg instance segmentation model with P3/8 - P5/32 outputs
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolov9
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/segment
|
6
|
+
# 380 layers, 27897120 parameters, 159.4 GFLOPs
|
7
|
+
|
8
|
+
# Parameters
|
9
|
+
nc: 80 # number of classes
|
10
|
+
|
11
|
+
# GELAN backbone
|
12
|
+
backbone:
|
13
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
14
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
15
|
+
- [-1, 1, RepNCSPELAN4, [256, 128, 64, 1]] # 2
|
16
|
+
- [-1, 1, ADown, [256]] # 3-P3/8
|
17
|
+
- [-1, 1, RepNCSPELAN4, [512, 256, 128, 1]] # 4
|
18
|
+
- [-1, 1, ADown, [512]] # 5-P4/16
|
19
|
+
- [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]] # 6
|
20
|
+
- [-1, 1, ADown, [512]] # 7-P5/32
|
21
|
+
- [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]] # 8
|
22
|
+
- [-1, 1, SPPELAN, [512, 256]] # 9
|
23
|
+
|
24
|
+
head:
|
25
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
26
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
27
|
+
- [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]] # 12
|
28
|
+
|
29
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
30
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
31
|
+
- [-1, 1, RepNCSPELAN4, [256, 256, 128, 1]] # 15 (P3/8-small)
|
32
|
+
|
33
|
+
- [-1, 1, ADown, [256]]
|
34
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P4
|
35
|
+
- [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]] # 18 (P4/16-medium)
|
36
|
+
|
37
|
+
- [-1, 1, ADown, [512]]
|
38
|
+
- [[-1, 9], 1, Concat, [1]] # cat head P5
|
39
|
+
- [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]] # 21 (P5/32-large)
|
40
|
+
|
41
|
+
- [[15, 18, 21], 1, Segment, [nc, 32, 256]] # Segment(P3, P4, P5)
|