dgenerate-ultralytics-headless 8.3.214__py3-none-any.whl → 8.4.7__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.214.dist-info → dgenerate_ultralytics_headless-8.4.7.dist-info}/METADATA +64 -74
- dgenerate_ultralytics_headless-8.4.7.dist-info/RECORD +311 -0
- {dgenerate_ultralytics_headless-8.3.214.dist-info → dgenerate_ultralytics_headless-8.4.7.dist-info}/WHEEL +1 -1
- tests/__init__.py +7 -9
- tests/conftest.py +8 -15
- tests/test_cli.py +1 -1
- tests/test_cuda.py +13 -10
- tests/test_engine.py +9 -9
- tests/test_exports.py +65 -13
- tests/test_integrations.py +13 -13
- tests/test_python.py +125 -69
- tests/test_solutions.py +161 -152
- ultralytics/__init__.py +1 -1
- ultralytics/cfg/__init__.py +86 -92
- ultralytics/cfg/datasets/Argoverse.yaml +7 -6
- ultralytics/cfg/datasets/DOTAv1.5.yaml +1 -1
- ultralytics/cfg/datasets/DOTAv1.yaml +1 -1
- ultralytics/cfg/datasets/ImageNet.yaml +1 -1
- ultralytics/cfg/datasets/TT100K.yaml +346 -0
- ultralytics/cfg/datasets/VOC.yaml +15 -16
- ultralytics/cfg/datasets/african-wildlife.yaml +1 -1
- ultralytics/cfg/datasets/coco-pose.yaml +21 -0
- ultralytics/cfg/datasets/coco12-formats.yaml +101 -0
- ultralytics/cfg/datasets/coco128-seg.yaml +1 -1
- ultralytics/cfg/datasets/coco8-pose.yaml +21 -0
- ultralytics/cfg/datasets/dog-pose.yaml +28 -0
- ultralytics/cfg/datasets/dota8-multispectral.yaml +1 -1
- ultralytics/cfg/datasets/dota8.yaml +2 -2
- ultralytics/cfg/datasets/hand-keypoints.yaml +26 -2
- ultralytics/cfg/datasets/kitti.yaml +27 -0
- ultralytics/cfg/datasets/lvis.yaml +5 -5
- ultralytics/cfg/datasets/open-images-v7.yaml +1 -1
- ultralytics/cfg/datasets/tiger-pose.yaml +16 -0
- ultralytics/cfg/datasets/xView.yaml +16 -16
- ultralytics/cfg/default.yaml +4 -2
- ultralytics/cfg/models/11/yolo11-pose.yaml +1 -1
- ultralytics/cfg/models/11/yoloe-11-seg.yaml +2 -2
- ultralytics/cfg/models/11/yoloe-11.yaml +2 -2
- ultralytics/cfg/models/26/yolo26-cls.yaml +33 -0
- ultralytics/cfg/models/26/yolo26-obb.yaml +52 -0
- ultralytics/cfg/models/26/yolo26-p2.yaml +60 -0
- ultralytics/cfg/models/26/yolo26-p6.yaml +62 -0
- ultralytics/cfg/models/26/yolo26-pose.yaml +53 -0
- ultralytics/cfg/models/26/yolo26-seg.yaml +52 -0
- ultralytics/cfg/models/26/yolo26.yaml +52 -0
- ultralytics/cfg/models/26/yoloe-26-seg.yaml +53 -0
- ultralytics/cfg/models/26/yoloe-26.yaml +53 -0
- ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +1 -1
- ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +1 -1
- ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +1 -1
- ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +1 -1
- ultralytics/cfg/models/v10/yolov10b.yaml +2 -2
- ultralytics/cfg/models/v10/yolov10l.yaml +2 -2
- ultralytics/cfg/models/v10/yolov10m.yaml +2 -2
- ultralytics/cfg/models/v10/yolov10n.yaml +2 -2
- ultralytics/cfg/models/v10/yolov10s.yaml +2 -2
- ultralytics/cfg/models/v10/yolov10x.yaml +2 -2
- ultralytics/cfg/models/v3/yolov3-tiny.yaml +1 -1
- ultralytics/cfg/models/v6/yolov6.yaml +1 -1
- ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +9 -6
- ultralytics/cfg/models/v8/yoloe-v8.yaml +9 -6
- ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +2 -2
- ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +2 -2
- ultralytics/cfg/models/v8/yolov8-ghost.yaml +2 -2
- ultralytics/cfg/models/v8/yolov8-obb.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-p2.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-world.yaml +1 -1
- ultralytics/cfg/models/v8/yolov8-worldv2.yaml +6 -6
- ultralytics/cfg/models/v9/yolov9s.yaml +1 -1
- ultralytics/data/__init__.py +4 -4
- ultralytics/data/annotator.py +5 -6
- ultralytics/data/augment.py +300 -475
- ultralytics/data/base.py +18 -26
- ultralytics/data/build.py +147 -25
- ultralytics/data/converter.py +108 -87
- ultralytics/data/dataset.py +47 -75
- ultralytics/data/loaders.py +42 -49
- ultralytics/data/split.py +5 -6
- ultralytics/data/split_dota.py +8 -15
- ultralytics/data/utils.py +36 -45
- ultralytics/engine/exporter.py +351 -263
- ultralytics/engine/model.py +186 -225
- ultralytics/engine/predictor.py +45 -54
- ultralytics/engine/results.py +198 -325
- ultralytics/engine/trainer.py +165 -106
- ultralytics/engine/tuner.py +41 -43
- ultralytics/engine/validator.py +55 -38
- ultralytics/hub/__init__.py +16 -19
- ultralytics/hub/auth.py +6 -12
- ultralytics/hub/google/__init__.py +7 -10
- ultralytics/hub/session.py +15 -25
- ultralytics/hub/utils.py +5 -8
- ultralytics/models/__init__.py +1 -1
- ultralytics/models/fastsam/__init__.py +1 -1
- ultralytics/models/fastsam/model.py +8 -10
- ultralytics/models/fastsam/predict.py +18 -30
- ultralytics/models/fastsam/utils.py +1 -2
- ultralytics/models/fastsam/val.py +5 -7
- ultralytics/models/nas/__init__.py +1 -1
- ultralytics/models/nas/model.py +5 -8
- ultralytics/models/nas/predict.py +7 -9
- ultralytics/models/nas/val.py +1 -2
- ultralytics/models/rtdetr/__init__.py +1 -1
- ultralytics/models/rtdetr/model.py +5 -8
- ultralytics/models/rtdetr/predict.py +15 -19
- ultralytics/models/rtdetr/train.py +10 -13
- ultralytics/models/rtdetr/val.py +21 -23
- ultralytics/models/sam/__init__.py +15 -2
- ultralytics/models/sam/amg.py +14 -20
- ultralytics/models/sam/build.py +26 -19
- ultralytics/models/sam/build_sam3.py +377 -0
- ultralytics/models/sam/model.py +29 -32
- ultralytics/models/sam/modules/blocks.py +83 -144
- ultralytics/models/sam/modules/decoders.py +19 -37
- ultralytics/models/sam/modules/encoders.py +44 -101
- ultralytics/models/sam/modules/memory_attention.py +16 -30
- ultralytics/models/sam/modules/sam.py +200 -73
- ultralytics/models/sam/modules/tiny_encoder.py +64 -83
- ultralytics/models/sam/modules/transformer.py +18 -28
- ultralytics/models/sam/modules/utils.py +174 -50
- ultralytics/models/sam/predict.py +2248 -350
- ultralytics/models/sam/sam3/__init__.py +3 -0
- ultralytics/models/sam/sam3/decoder.py +546 -0
- ultralytics/models/sam/sam3/encoder.py +529 -0
- ultralytics/models/sam/sam3/geometry_encoders.py +415 -0
- ultralytics/models/sam/sam3/maskformer_segmentation.py +286 -0
- ultralytics/models/sam/sam3/model_misc.py +199 -0
- ultralytics/models/sam/sam3/necks.py +129 -0
- ultralytics/models/sam/sam3/sam3_image.py +339 -0
- ultralytics/models/sam/sam3/text_encoder_ve.py +307 -0
- ultralytics/models/sam/sam3/vitdet.py +547 -0
- ultralytics/models/sam/sam3/vl_combiner.py +160 -0
- ultralytics/models/utils/loss.py +14 -26
- ultralytics/models/utils/ops.py +13 -17
- ultralytics/models/yolo/__init__.py +1 -1
- ultralytics/models/yolo/classify/predict.py +10 -13
- ultralytics/models/yolo/classify/train.py +12 -33
- ultralytics/models/yolo/classify/val.py +30 -29
- ultralytics/models/yolo/detect/predict.py +9 -12
- ultralytics/models/yolo/detect/train.py +17 -23
- ultralytics/models/yolo/detect/val.py +77 -59
- ultralytics/models/yolo/model.py +43 -60
- ultralytics/models/yolo/obb/predict.py +7 -16
- ultralytics/models/yolo/obb/train.py +14 -17
- ultralytics/models/yolo/obb/val.py +40 -37
- ultralytics/models/yolo/pose/__init__.py +1 -1
- ultralytics/models/yolo/pose/predict.py +7 -22
- ultralytics/models/yolo/pose/train.py +13 -16
- ultralytics/models/yolo/pose/val.py +39 -58
- ultralytics/models/yolo/segment/predict.py +17 -21
- ultralytics/models/yolo/segment/train.py +7 -10
- ultralytics/models/yolo/segment/val.py +95 -47
- ultralytics/models/yolo/world/train.py +8 -14
- ultralytics/models/yolo/world/train_world.py +11 -34
- ultralytics/models/yolo/yoloe/__init__.py +7 -7
- ultralytics/models/yolo/yoloe/predict.py +16 -23
- ultralytics/models/yolo/yoloe/train.py +36 -44
- ultralytics/models/yolo/yoloe/train_seg.py +11 -11
- ultralytics/models/yolo/yoloe/val.py +15 -20
- ultralytics/nn/__init__.py +7 -7
- ultralytics/nn/autobackend.py +159 -85
- ultralytics/nn/modules/__init__.py +68 -60
- ultralytics/nn/modules/activation.py +4 -6
- ultralytics/nn/modules/block.py +260 -224
- ultralytics/nn/modules/conv.py +52 -97
- ultralytics/nn/modules/head.py +831 -299
- ultralytics/nn/modules/transformer.py +76 -88
- ultralytics/nn/modules/utils.py +16 -21
- ultralytics/nn/tasks.py +180 -195
- ultralytics/nn/text_model.py +45 -69
- ultralytics/optim/__init__.py +5 -0
- ultralytics/optim/muon.py +338 -0
- ultralytics/solutions/__init__.py +12 -12
- ultralytics/solutions/ai_gym.py +13 -19
- ultralytics/solutions/analytics.py +15 -16
- ultralytics/solutions/config.py +6 -7
- ultralytics/solutions/distance_calculation.py +10 -13
- ultralytics/solutions/heatmap.py +8 -14
- ultralytics/solutions/instance_segmentation.py +6 -9
- ultralytics/solutions/object_blurrer.py +7 -10
- ultralytics/solutions/object_counter.py +12 -19
- ultralytics/solutions/object_cropper.py +8 -14
- ultralytics/solutions/parking_management.py +34 -32
- ultralytics/solutions/queue_management.py +10 -12
- ultralytics/solutions/region_counter.py +9 -12
- ultralytics/solutions/security_alarm.py +15 -20
- ultralytics/solutions/similarity_search.py +10 -15
- ultralytics/solutions/solutions.py +77 -76
- ultralytics/solutions/speed_estimation.py +7 -10
- ultralytics/solutions/streamlit_inference.py +2 -4
- ultralytics/solutions/templates/similarity-search.html +7 -18
- ultralytics/solutions/trackzone.py +7 -10
- ultralytics/solutions/vision_eye.py +5 -8
- ultralytics/trackers/__init__.py +1 -1
- ultralytics/trackers/basetrack.py +3 -5
- ultralytics/trackers/bot_sort.py +10 -27
- ultralytics/trackers/byte_tracker.py +21 -37
- ultralytics/trackers/track.py +4 -7
- ultralytics/trackers/utils/gmc.py +11 -22
- ultralytics/trackers/utils/kalman_filter.py +37 -48
- ultralytics/trackers/utils/matching.py +12 -15
- ultralytics/utils/__init__.py +124 -124
- ultralytics/utils/autobatch.py +2 -4
- ultralytics/utils/autodevice.py +17 -18
- ultralytics/utils/benchmarks.py +57 -71
- ultralytics/utils/callbacks/base.py +8 -10
- ultralytics/utils/callbacks/clearml.py +5 -13
- ultralytics/utils/callbacks/comet.py +32 -46
- ultralytics/utils/callbacks/dvc.py +13 -18
- ultralytics/utils/callbacks/mlflow.py +4 -5
- ultralytics/utils/callbacks/neptune.py +7 -15
- ultralytics/utils/callbacks/platform.py +423 -38
- ultralytics/utils/callbacks/raytune.py +3 -4
- ultralytics/utils/callbacks/tensorboard.py +25 -31
- ultralytics/utils/callbacks/wb.py +16 -14
- ultralytics/utils/checks.py +127 -85
- ultralytics/utils/cpu.py +3 -8
- ultralytics/utils/dist.py +9 -12
- ultralytics/utils/downloads.py +25 -33
- ultralytics/utils/errors.py +6 -14
- ultralytics/utils/events.py +2 -4
- ultralytics/utils/export/__init__.py +4 -236
- ultralytics/utils/export/engine.py +246 -0
- ultralytics/utils/export/imx.py +117 -63
- ultralytics/utils/export/tensorflow.py +231 -0
- ultralytics/utils/files.py +26 -30
- ultralytics/utils/git.py +9 -11
- ultralytics/utils/instance.py +30 -51
- ultralytics/utils/logger.py +212 -114
- ultralytics/utils/loss.py +601 -215
- ultralytics/utils/metrics.py +128 -156
- ultralytics/utils/nms.py +13 -16
- ultralytics/utils/ops.py +117 -166
- ultralytics/utils/patches.py +75 -21
- ultralytics/utils/plotting.py +75 -80
- ultralytics/utils/tal.py +125 -59
- ultralytics/utils/torch_utils.py +53 -79
- ultralytics/utils/tqdm.py +24 -21
- ultralytics/utils/triton.py +13 -19
- ultralytics/utils/tuner.py +19 -10
- dgenerate_ultralytics_headless-8.3.214.dist-info/RECORD +0 -283
- {dgenerate_ultralytics_headless-8.3.214.dist-info → dgenerate_ultralytics_headless-8.4.7.dist-info}/entry_points.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.214.dist-info → dgenerate_ultralytics_headless-8.4.7.dist-info}/licenses/LICENSE +0 -0
- {dgenerate_ultralytics_headless-8.3.214.dist-info → dgenerate_ultralytics_headless-8.4.7.dist-info}/top_level.txt +0 -0
|
@@ -35,7 +35,7 @@ names:
|
|
|
35
35
|
17: armband
|
|
36
36
|
18: armchair
|
|
37
37
|
19: armoire
|
|
38
|
-
20: armor
|
|
38
|
+
20: armor
|
|
39
39
|
21: artichoke
|
|
40
40
|
22: trash can/garbage can/wastebin/dustbin/trash barrel/trash bin
|
|
41
41
|
23: ashtray
|
|
@@ -245,7 +245,7 @@ names:
|
|
|
245
245
|
227: CD player
|
|
246
246
|
228: celery
|
|
247
247
|
229: cellular telephone/cellular phone/cellphone/mobile phone/smart phone
|
|
248
|
-
230: chain mail/ring mail/chain armor/
|
|
248
|
+
230: chain mail/ring mail/chain armor/ring armor
|
|
249
249
|
231: chair
|
|
250
250
|
232: chaise longue/chaise/daybed
|
|
251
251
|
233: chalice
|
|
@@ -305,7 +305,7 @@ names:
|
|
|
305
305
|
287: coin
|
|
306
306
|
288: colander/cullender
|
|
307
307
|
289: coleslaw/slaw
|
|
308
|
-
290: coloring material
|
|
308
|
+
290: coloring material
|
|
309
309
|
291: combination lock
|
|
310
310
|
292: pacifier/teething ring
|
|
311
311
|
293: comic book
|
|
@@ -401,7 +401,7 @@ names:
|
|
|
401
401
|
383: domestic ass/donkey
|
|
402
402
|
384: doorknob/doorhandle
|
|
403
403
|
385: doormat/welcome mat
|
|
404
|
-
386:
|
|
404
|
+
386: donut
|
|
405
405
|
387: dove
|
|
406
406
|
388: dragonfly
|
|
407
407
|
389: drawer
|
|
@@ -1072,7 +1072,7 @@ names:
|
|
|
1072
1072
|
1054: tag
|
|
1073
1073
|
1055: taillight/rear light
|
|
1074
1074
|
1056: tambourine
|
|
1075
|
-
1057: army tank/armored combat vehicle
|
|
1075
|
+
1057: army tank/armored combat vehicle
|
|
1076
1076
|
1058: tank/tank storage vessel/storage tank
|
|
1077
1077
|
1059: tank top/tank top clothing
|
|
1078
1078
|
1060: tape/tape sticky cloth or paper
|
|
@@ -21,5 +21,21 @@ flip_idx: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
|
|
|
21
21
|
names:
|
|
22
22
|
0: tiger
|
|
23
23
|
|
|
24
|
+
# Keypoint names per class
|
|
25
|
+
kpt_names:
|
|
26
|
+
0:
|
|
27
|
+
- nose
|
|
28
|
+
- head
|
|
29
|
+
- withers
|
|
30
|
+
- tail_base
|
|
31
|
+
- right_hind_hock
|
|
32
|
+
- right_hind_paw
|
|
33
|
+
- left_hind_paw
|
|
34
|
+
- left_hind_hock
|
|
35
|
+
- right_front_wrist
|
|
36
|
+
- right_front_paw
|
|
37
|
+
- left_front_wrist
|
|
38
|
+
- left_front_paw
|
|
39
|
+
|
|
24
40
|
# Download script/URL (optional)
|
|
25
41
|
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/tiger-pose.zip
|
|
@@ -1,7 +1,7 @@
|
|
|
1
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)
|
|
4
|
-
# --------
|
|
3
|
+
# DIUx xView 2018 Challenge dataset https://challenge.xviewdataset.org by U.S. National Geospatial-Intelligence Agency (NGA)
|
|
4
|
+
# -------- Download and extract data manually to `datasets/xView` before running the train command. --------
|
|
5
5
|
# Documentation: https://docs.ultralytics.com/datasets/detect/xview/
|
|
6
6
|
# Example usage: yolo train data=xView.yaml
|
|
7
7
|
# parent
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
# 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, ..]
|
|
13
13
|
path: xView # dataset root dir
|
|
14
14
|
train: images/autosplit_train.txt # train images (relative to 'path') 90% of 847 train images
|
|
15
|
-
val: images/autosplit_val.txt #
|
|
15
|
+
val: images/autosplit_val.txt # val images (relative to 'path') 10% of 847 train images
|
|
16
16
|
|
|
17
17
|
# Classes
|
|
18
18
|
names:
|
|
@@ -80,8 +80,8 @@ names:
|
|
|
80
80
|
# Download script/URL (optional) ---------------------------------------------------------------------------------------
|
|
81
81
|
download: |
|
|
82
82
|
import json
|
|
83
|
-
import os
|
|
84
83
|
from pathlib import Path
|
|
84
|
+
import shutil
|
|
85
85
|
|
|
86
86
|
import numpy as np
|
|
87
87
|
from PIL import Image
|
|
@@ -92,15 +92,15 @@ download: |
|
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
def convert_labels(fname=Path("xView/xView_train.geojson")):
|
|
95
|
-
"""
|
|
95
|
+
"""Convert xView GeoJSON labels to YOLO format (classes 0-59) and save them as text files."""
|
|
96
96
|
path = fname.parent
|
|
97
97
|
with open(fname, encoding="utf-8") as f:
|
|
98
98
|
print(f"Loading {fname}...")
|
|
99
99
|
data = json.load(f)
|
|
100
100
|
|
|
101
101
|
# Make dirs
|
|
102
|
-
labels =
|
|
103
|
-
|
|
102
|
+
labels = path / "labels" / "train"
|
|
103
|
+
shutil.rmtree(labels, ignore_errors=True)
|
|
104
104
|
labels.mkdir(parents=True, exist_ok=True)
|
|
105
105
|
|
|
106
106
|
# xView classes 11-94 to 0-59
|
|
@@ -113,24 +113,24 @@ download: |
|
|
|
113
113
|
for feature in TQDM(data["features"], desc=f"Converting {fname}"):
|
|
114
114
|
p = feature["properties"]
|
|
115
115
|
if p["bounds_imcoords"]:
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
if
|
|
116
|
+
image_id = p["image_id"]
|
|
117
|
+
image_file = path / "train_images" / image_id
|
|
118
|
+
if image_file.exists(): # 1395.tif missing
|
|
119
119
|
try:
|
|
120
120
|
box = np.array([int(num) for num in p["bounds_imcoords"].split(",")])
|
|
121
121
|
assert box.shape[0] == 4, f"incorrect box shape {box.shape[0]}"
|
|
122
122
|
cls = p["type_id"]
|
|
123
|
-
cls = xview_class2index[int(cls)] # xView class to 0-
|
|
123
|
+
cls = xview_class2index[int(cls)] # xView class to 0-59
|
|
124
124
|
assert 59 >= cls >= 0, f"incorrect class index {cls}"
|
|
125
125
|
|
|
126
126
|
# Write YOLO label
|
|
127
|
-
if
|
|
128
|
-
shapes[
|
|
129
|
-
box = xyxy2xywhn(box[None].astype(
|
|
130
|
-
with open((labels /
|
|
127
|
+
if image_id not in shapes:
|
|
128
|
+
shapes[image_id] = Image.open(image_file).size
|
|
129
|
+
box = xyxy2xywhn(box[None].astype(float), w=shapes[image_id][0], h=shapes[image_id][1], clip=True)
|
|
130
|
+
with open((labels / image_id).with_suffix(".txt"), "a", encoding="utf-8") as f:
|
|
131
131
|
f.write(f"{cls} {' '.join(f'{x:.6f}' for x in box[0])}\n") # write label.txt
|
|
132
132
|
except Exception as e:
|
|
133
|
-
print(f"WARNING: skipping one label for {
|
|
133
|
+
print(f"WARNING: skipping one label for {image_file}: {e}")
|
|
134
134
|
|
|
135
135
|
|
|
136
136
|
# Download manually from https://challenge.xviewdataset.org
|
ultralytics/cfg/default.yaml
CHANGED
|
@@ -36,7 +36,7 @@ amp: True # (bool) Automatic Mixed Precision (AMP) training; True runs AMP capab
|
|
|
36
36
|
fraction: 1.0 # (float) fraction of training dataset to use (1.0 = all)
|
|
37
37
|
profile: False # (bool) profile ONNX/TensorRT speeds during training for loggers
|
|
38
38
|
freeze: # (int | list, optional) freeze first N layers (int) or specific layer indices (list)
|
|
39
|
-
multi_scale:
|
|
39
|
+
multi_scale: 0.0 # (float) multi-scale range as a fraction of imgsz; sizes are rounded to stride multiples
|
|
40
40
|
compile: False # (bool | str) enable torch.compile() backend='inductor'; True="default", False=off, or "default|reduce-overhead|max-autotune-no-cudagraphs"
|
|
41
41
|
|
|
42
42
|
# Segmentation
|
|
@@ -80,7 +80,7 @@ show_boxes: True # (bool) draw bounding boxes on images
|
|
|
80
80
|
line_width: # (int, optional) line width of boxes; auto-scales with image size if not set
|
|
81
81
|
|
|
82
82
|
# Export settings ------------------------------------------------------------------------------------------------------
|
|
83
|
-
format: torchscript # (str) target format, e.g. torchscript|onnx|openvino|engine|coreml|saved_model|pb|tflite|edgetpu|tfjs|paddle|mnn|ncnn|imx|rknn
|
|
83
|
+
format: torchscript # (str) target format, e.g. torchscript|onnx|openvino|engine|coreml|saved_model|pb|tflite|edgetpu|tfjs|paddle|mnn|ncnn|imx|rknn|executorch
|
|
84
84
|
keras: False # (bool) TF SavedModel only (format=saved_model); enable Keras layers during export
|
|
85
85
|
optimize: False # (bool) TorchScript only; apply mobile optimizations to the scripted model
|
|
86
86
|
int8: False # (bool) INT8/PTQ where supported (openvino, tflite, tfjs, engine, imx); needs calibration data/fraction
|
|
@@ -103,6 +103,8 @@ cls: 0.5 # (float) classification loss gain
|
|
|
103
103
|
dfl: 1.5 # (float) distribution focal loss gain
|
|
104
104
|
pose: 12.0 # (float) pose loss gain (pose tasks)
|
|
105
105
|
kobj: 1.0 # (float) keypoint objectness loss gain (pose tasks)
|
|
106
|
+
rle: 1.0 # (float) rle loss gain (pose tasks)
|
|
107
|
+
angle: 1.0 # (float) oriented angle loss gain (obb tasks)
|
|
106
108
|
nbs: 64 # (int) nominal batch size used for loss normalization
|
|
107
109
|
hsv_h: 0.015 # (float) HSV hue augmentation fraction
|
|
108
110
|
hsv_s: 0.7 # (float) HSV saturation augmentation fraction
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
# Parameters
|
|
8
8
|
nc: 80 # number of classes
|
|
9
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'
|
|
10
|
+
scales: # model compound scaling constants, i.e. 'model=yolo11n-pose.yaml' will call yolo11-pose.yaml with scale 'n'
|
|
11
11
|
# [depth, width, max_channels]
|
|
12
12
|
n: [0.50, 0.25, 1024] # summary: 196 layers, 2908507 parameters, 2908491 gradients, 7.7 GFLOPs
|
|
13
13
|
s: [0.50, 0.50, 1024] # summary: 196 layers, 9948811 parameters, 9948795 gradients, 23.5 GFLOPs
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
2
|
|
|
3
|
-
#
|
|
3
|
+
# Ultralytics YOLOE-11-seg instance segmentation model. For usage examples, see https://docs.ultralytics.com/tasks/segment
|
|
4
4
|
|
|
5
5
|
# Parameters
|
|
6
6
|
nc: 80 # number of classes
|
|
7
|
-
scales: # model compound scaling constants, i.e. 'model=
|
|
7
|
+
scales: # model compound scaling constants, i.e. 'model=yoloe-11n-seg.yaml' will call yoloe-11-seg.yaml with scale 'n'
|
|
8
8
|
# [depth, width, max_channels]
|
|
9
9
|
n: [0.50, 0.25, 1024] # summary: 355 layers, 2876848 parameters, 2876832 gradients, 10.5 GFLOPs
|
|
10
10
|
s: [0.50, 0.50, 1024] # summary: 355 layers, 10113248 parameters, 10113232 gradients, 35.8 GFLOPs
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
2
|
|
|
3
|
-
#
|
|
3
|
+
# Ultralytics YOLOE-11 object detection model with P3/8 - P5/32 outputs. For usage examples, see https://docs.ultralytics.com/tasks/detect
|
|
4
4
|
|
|
5
5
|
# Parameters
|
|
6
6
|
nc: 80 # number of classes
|
|
7
|
-
scales: # model compound scaling constants, i.e. 'model=
|
|
7
|
+
scales: # model compound scaling constants, i.e. 'model=yoloe-11n.yaml' will call yoloe-11.yaml with scale 'n'
|
|
8
8
|
# [depth, width, max_channels]
|
|
9
9
|
n: [0.50, 0.25, 1024] # summary: 319 layers, 2624080 parameters, 2624064 gradients, 6.6 GFLOPs
|
|
10
10
|
s: [0.50, 0.50, 1024] # summary: 319 layers, 9458752 parameters, 9458736 gradients, 21.7 GFLOPs
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26-cls image classification model
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/classify
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 1000 # number of classes
|
|
9
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-cls.yaml' will call yolo26-cls.yaml with scale 'n'
|
|
10
|
+
# [depth, width, max_channels]
|
|
11
|
+
n: [0.50, 0.25, 1024] # summary: 86 layers, 2,812,104 parameters, 2,812,104 gradients, 0.5 GFLOPs
|
|
12
|
+
s: [0.50, 0.50, 1024] # summary: 86 layers, 6,724,008 parameters, 6,724,008 gradients, 1.6 GFLOPs
|
|
13
|
+
m: [0.50, 1.00, 512] # summary: 106 layers, 11,634,216 parameters, 11,634,216 gradients, 5.0 GFLOPs
|
|
14
|
+
l: [1.00, 1.00, 512] # summary: 176 layers, 14,115,624 parameters, 14,115,624 gradients, 6.2 GFLOPs
|
|
15
|
+
x: [1.00, 1.50, 512] # summary: 176 layers, 29,637,064 parameters, 29,637,064 gradients, 13.7 GFLOPs
|
|
16
|
+
|
|
17
|
+
# YOLO26n 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
|
+
# YOLO26n head
|
|
32
|
+
head:
|
|
33
|
+
- [-1, 1, Classify, [nc]] # Classify
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26-obb Oriented Bounding Boxes (OBB) model with P3/8 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/obb
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-obb.yaml' will call yolo26-obb.yaml with scale 'n'
|
|
12
|
+
# [depth, width, max_channels]
|
|
13
|
+
n: [0.50, 0.25, 1024] # summary: 291 layers, 2,715,614 parameters, 2,715,614 gradients, 16.9 GFLOPs
|
|
14
|
+
s: [0.50, 0.50, 1024] # summary: 291 layers, 10,582,142 parameters, 10,582,142 gradients, 63.5 GFLOPs
|
|
15
|
+
m: [0.50, 1.00, 512] # summary: 311 layers, 23,593,918 parameters, 23,593,918 gradients, 211.9 GFLOPs
|
|
16
|
+
l: [1.00, 1.00, 512] # summary: 423 layers, 27,997,374 parameters, 27,997,374 gradients, 259.0 GFLOPs
|
|
17
|
+
x: [1.00, 1.50, 512] # summary: 423 layers, 62,811,678 parameters, 62,811,678 gradients, 578.9 GFLOPs
|
|
18
|
+
|
|
19
|
+
# YOLO26n backbone
|
|
20
|
+
backbone:
|
|
21
|
+
# [from, repeats, module, args]
|
|
22
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
23
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
24
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
25
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
26
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
27
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
28
|
+
- [-1, 2, C3k2, [512, True]]
|
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
30
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
31
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
32
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
33
|
+
|
|
34
|
+
# YOLO26n head
|
|
35
|
+
head:
|
|
36
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
37
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
38
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
39
|
+
|
|
40
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
41
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
42
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
43
|
+
|
|
44
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
45
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
46
|
+
- [-1, 2, C3k2, [512, True]] # 19 (P4/16-medium)
|
|
47
|
+
|
|
48
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
49
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
50
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 22 (P5/32-large)
|
|
51
|
+
|
|
52
|
+
- [[16, 19, 22], 1, OBB26, [nc, 1]] # Detect(P3, P4, P5)
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26 object detection model with P2/4 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-p2.yaml' will call yolo26-p2.yaml with scale 'n'
|
|
12
|
+
# [depth, width, max_channels]
|
|
13
|
+
n: [0.50, 0.25, 1024] # summary: 329 layers, 2,662,400 parameters, 2,662,400 gradients, 9.5 GFLOPs
|
|
14
|
+
s: [0.50, 0.50, 1024] # summary: 329 layers, 9,765,856 parameters, 9,765,856 gradients, 27.8 GFLOPs
|
|
15
|
+
m: [0.50, 1.00, 512] # summary: 349 layers, 21,144,288 parameters, 21,144,288 gradients, 91.4 GFLOPs
|
|
16
|
+
l: [1.00, 1.00, 512] # summary: 489 layers, 25,815,520 parameters, 25,815,520 gradients, 115.3 GFLOPs
|
|
17
|
+
x: [1.00, 1.50, 512] # summary: 489 layers, 57,935,232 parameters, 57,935,232 gradients, 256.9 GFLOPs
|
|
18
|
+
|
|
19
|
+
# YOLO26n backbone
|
|
20
|
+
backbone:
|
|
21
|
+
# [from, repeats, module, args]
|
|
22
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
23
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
24
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
25
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
26
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
27
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
28
|
+
- [-1, 2, C3k2, [512, True]]
|
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
30
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
31
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
32
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
33
|
+
|
|
34
|
+
# YOLO26n head
|
|
35
|
+
head:
|
|
36
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
37
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
38
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
39
|
+
|
|
40
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
41
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
42
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
43
|
+
|
|
44
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
45
|
+
- [[-1, 2], 1, Concat, [1]] # cat backbone P2
|
|
46
|
+
- [-1, 2, C3k2, [128, True]] # 19 (P2/4-xsmall)
|
|
47
|
+
|
|
48
|
+
- [-1, 1, Conv, [128, 3, 2]]
|
|
49
|
+
- [[-1, 16], 1, Concat, [1]] # cat head P3
|
|
50
|
+
- [-1, 2, C3k2, [256, True]] # 22 (P3/8-small)
|
|
51
|
+
|
|
52
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
53
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
54
|
+
- [-1, 2, C3k2, [512, True]] # 25 (P4/16-medium)
|
|
55
|
+
|
|
56
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
57
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
58
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 28 (P5/32-large)
|
|
59
|
+
|
|
60
|
+
- [[19, 22, 25, 28], 1, Detect, [nc]] # Detect(P2, P3, P4, P5)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26 object detection model with P3/8 - P6/64 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-p6.yaml' will call yolo26-p6.yaml with scale 'n'
|
|
12
|
+
# [depth, width, max_channels]
|
|
13
|
+
n: [0.50, 0.25, 1024] # summary: 349 layers, 4,063,872 parameters, 4,063,872 gradients, 6.0 GFLOPs
|
|
14
|
+
s: [0.50, 0.50, 1024] # summary: 349 layers, 15,876,448 parameters, 15,876,448 gradients, 22.3 GFLOPs
|
|
15
|
+
m: [0.50, 1.00, 512] # summary: 369 layers, 32,400,096 parameters, 32,400,096 gradients, 77.3 GFLOPs
|
|
16
|
+
l: [1.00, 1.00, 512] # summary: 523 layers, 39,365,600 parameters, 39,365,600 gradients, 97.0 GFLOPs
|
|
17
|
+
x: [1.00, 1.50, 512] # summary: 523 layers, 88,330,368 parameters, 88,330,368 gradients, 216.6 GFLOPs
|
|
18
|
+
|
|
19
|
+
# YOLO26n backbone
|
|
20
|
+
backbone:
|
|
21
|
+
# [from, repeats, module, args]
|
|
22
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
23
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
24
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
25
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
26
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
27
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
28
|
+
- [-1, 2, C3k2, [512, True]]
|
|
29
|
+
- [-1, 1, Conv, [768, 3, 2]] # 7-P5/32
|
|
30
|
+
- [-1, 2, C3k2, [768, True]]
|
|
31
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 9-P6/64
|
|
32
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
33
|
+
- [-1, 1, SPPF, [1024, 5]] # 11
|
|
34
|
+
- [-1, 2, C2PSA, [1024]] # 12
|
|
35
|
+
|
|
36
|
+
# YOLO26n head
|
|
37
|
+
head:
|
|
38
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
39
|
+
- [[-1, 8], 1, Concat, [1]] # cat backbone P5
|
|
40
|
+
- [-1, 2, C3k2, [768, True]] # 15
|
|
41
|
+
|
|
42
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
43
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
44
|
+
- [-1, 2, C3k2, [512, True]] # 18
|
|
45
|
+
|
|
46
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
47
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
48
|
+
- [-1, 2, C3k2, [256, True]] # 21 (P3/8-small)
|
|
49
|
+
|
|
50
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
51
|
+
- [[-1, 18], 1, Concat, [1]] # cat head P4
|
|
52
|
+
- [-1, 2, C3k2, [512, True]] # 24 (P4/16-medium)
|
|
53
|
+
|
|
54
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
55
|
+
- [[-1, 15], 1, Concat, [1]] # cat head P5
|
|
56
|
+
- [-1, 2, C3k2, [768, True]] # 27 (P5/32-large)
|
|
57
|
+
|
|
58
|
+
- [-1, 1, Conv, [768, 3, 2]]
|
|
59
|
+
- [[-1, 12], 1, Concat, [1]] # cat head P6
|
|
60
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 30 (P6/64-large)
|
|
61
|
+
|
|
62
|
+
- [[21, 24, 27, 30], 1, Detect, [nc]] # Detect(P3, P4, P5, P6)
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26-pose keypoints/pose estimation model with P3/8 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/pose
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
kpt_shape: [17, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
|
|
12
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-pose.yaml' will call yolo26-pose.yaml with scale 'n'
|
|
13
|
+
# [depth, width, max_channels]
|
|
14
|
+
n: [0.50, 0.25, 1024] # summary: 363 layers, 3,747,554 parameters, 3,747,554 gradients, 10.7 GFLOPs
|
|
15
|
+
s: [0.50, 0.50, 1024] # summary: 363 layers, 11,870,498 parameters, 11,870,498 gradients, 29.6 GFLOPs
|
|
16
|
+
m: [0.50, 1.00, 512] # summary: 383 layers, 24,344,482 parameters, 24,344,482 gradients, 85.9 GFLOPs
|
|
17
|
+
l: [1.00, 1.00, 512] # summary: 495 layers, 28,747,938 parameters, 28,747,938 gradients, 104.3 GFLOPs
|
|
18
|
+
x: [1.00, 1.50, 512] # summary: 495 layers, 62,914,350 parameters, 62,914,350 gradients, 226.3 GFLOPs
|
|
19
|
+
|
|
20
|
+
# YOLO26n backbone
|
|
21
|
+
backbone:
|
|
22
|
+
# [from, repeats, module, args]
|
|
23
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
24
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
25
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
26
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
27
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
28
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
29
|
+
- [-1, 2, C3k2, [512, True]]
|
|
30
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
31
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
32
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
33
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
34
|
+
|
|
35
|
+
# YOLO26n head
|
|
36
|
+
head:
|
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
38
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
39
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
40
|
+
|
|
41
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
42
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
43
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
44
|
+
|
|
45
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
46
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
47
|
+
- [-1, 2, C3k2, [512, True]] # 19 (P4/16-medium)
|
|
48
|
+
|
|
49
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
50
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
51
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 22 (P5/32-large)
|
|
52
|
+
|
|
53
|
+
- [[16, 19, 22], 1, Pose26, [nc, kpt_shape]] # Detect(P3, P4, P5)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26-seg instance segmentation model with P3/8 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/segment
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n-seg.yaml' will call yolo26-seg.yaml with scale 'n'
|
|
12
|
+
# [depth, width, max_channels]
|
|
13
|
+
n: [0.50, 0.25, 1024] # summary: 309 layers, 3,126,280 parameters, 3,126,280 gradients, 10.5 GFLOPs
|
|
14
|
+
s: [0.50, 0.50, 1024] # summary: 309 layers, 11,505,800 parameters, 11,505,800 gradients, 37.4 GFLOPs
|
|
15
|
+
m: [0.50, 1.00, 512] # summary: 329 layers, 27,112,072 parameters, 27,112,072 gradients, 132.5 GFLOPs
|
|
16
|
+
l: [1.00, 1.00, 512] # summary: 441 layers, 31,515,528 parameters, 31,515,528 gradients, 150.9 GFLOPs
|
|
17
|
+
x: [1.00, 1.50, 512] # summary: 441 layers, 70,693,800 parameters, 70,693,800 gradients, 337.7 GFLOPs
|
|
18
|
+
|
|
19
|
+
# YOLO26n backbone
|
|
20
|
+
backbone:
|
|
21
|
+
# [from, repeats, module, args]
|
|
22
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
23
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
24
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
25
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
26
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
27
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
28
|
+
- [-1, 2, C3k2, [512, True]]
|
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
30
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
31
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
32
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
33
|
+
|
|
34
|
+
# YOLO26n head
|
|
35
|
+
head:
|
|
36
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
37
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
38
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
39
|
+
|
|
40
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
41
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
42
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
43
|
+
|
|
44
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
45
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
46
|
+
- [-1, 2, C3k2, [512, True]] # 19 (P4/16-medium)
|
|
47
|
+
|
|
48
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
49
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
50
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 22 (P5/32-large)
|
|
51
|
+
|
|
52
|
+
- [[16, 19, 22], 1, Segment26, [nc, 32, 256]] # Segment(P3, P4, P5)
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLO26 object detection model with P3/8 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/detect
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
scales: # model compound scaling constants, i.e. 'model=yolo26n.yaml' will call yolo26.yaml with scale 'n'
|
|
12
|
+
# [depth, width, max_channels]
|
|
13
|
+
n: [0.50, 0.25, 1024] # summary: 260 layers, 2,572,280 parameters, 2,572,280 gradients, 6.1 GFLOPs
|
|
14
|
+
s: [0.50, 0.50, 1024] # summary: 260 layers, 10,009,784 parameters, 10,009,784 gradients, 22.8 GFLOPs
|
|
15
|
+
m: [0.50, 1.00, 512] # summary: 280 layers, 21,896,248 parameters, 21,896,248 gradients, 75.4 GFLOPs
|
|
16
|
+
l: [1.00, 1.00, 512] # summary: 392 layers, 26,299,704 parameters, 26,299,704 gradients, 93.8 GFLOPs
|
|
17
|
+
x: [1.00, 1.50, 512] # summary: 392 layers, 58,993,368 parameters, 58,993,368 gradients, 209.5 GFLOPs
|
|
18
|
+
|
|
19
|
+
# YOLO26n backbone
|
|
20
|
+
backbone:
|
|
21
|
+
# [from, repeats, module, args]
|
|
22
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
23
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
24
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
25
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
26
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
27
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
28
|
+
- [-1, 2, C3k2, [512, True]]
|
|
29
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
30
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
31
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
32
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
33
|
+
|
|
34
|
+
# YOLO26n head
|
|
35
|
+
head:
|
|
36
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
37
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
38
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
39
|
+
|
|
40
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
41
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
42
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
43
|
+
|
|
44
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
45
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
46
|
+
- [-1, 2, C3k2, [512, True]] # 19 (P4/16-medium)
|
|
47
|
+
|
|
48
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
49
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
50
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 22 (P5/32-large)
|
|
51
|
+
|
|
52
|
+
- [[16, 19, 22], 1, Detect, [nc]] # Detect(P3, P4, P5)
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
|
2
|
+
|
|
3
|
+
# Ultralytics YOLOE-26 open-vocabulary instance segmentation model with P3/8 - P5/32 outputs
|
|
4
|
+
# Model docs: https://docs.ultralytics.com/models/yolo26
|
|
5
|
+
# Task docs: https://docs.ultralytics.com/tasks/segment
|
|
6
|
+
|
|
7
|
+
# Parameters
|
|
8
|
+
nc: 80 # number of classes
|
|
9
|
+
end2end: True # whether to use end-to-end mode
|
|
10
|
+
reg_max: 1 # DFL bins
|
|
11
|
+
text_model: mobileclip2:b
|
|
12
|
+
scales: # model compound scaling constants, i.e. 'model=yoloe-26n-seg.yaml' will call yoloe-26-seg.yaml with scale 'n'
|
|
13
|
+
# [depth, width, max_channels]
|
|
14
|
+
n: [0.50, 0.25, 1024] # summary: 347 layers, 5,615,540 parameters, 5,615,540 gradients, 11.7 GFLOPs
|
|
15
|
+
s: [0.50, 0.50, 1024] # summary: 347 layers, 15,272,852 parameters, 15,272,852 gradients, 39.3 GFLOPs
|
|
16
|
+
m: [0.50, 1.00, 512] # summary: 367 layers, 34,922,132 parameters, 34,922,132 gradients, 136.3 GFLOPs
|
|
17
|
+
l: [1.00, 1.00, 512] # summary: 479 layers, 39,325,588 parameters, 39,325,588 gradients, 154.7 GFLOPs
|
|
18
|
+
x: [1.00, 1.50, 512] # summary: 479 layers, 85,397,684 parameters, 85,397,684 gradients, 343.3 GFLOPs
|
|
19
|
+
|
|
20
|
+
# YOLOE26n backbone
|
|
21
|
+
backbone:
|
|
22
|
+
# [from, repeats, module, args]
|
|
23
|
+
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
|
|
24
|
+
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
|
|
25
|
+
- [-1, 2, C3k2, [256, False, 0.25]]
|
|
26
|
+
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8
|
|
27
|
+
- [-1, 2, C3k2, [512, False, 0.25]]
|
|
28
|
+
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16
|
|
29
|
+
- [-1, 2, C3k2, [512, True]]
|
|
30
|
+
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32
|
|
31
|
+
- [-1, 2, C3k2, [1024, True]]
|
|
32
|
+
- [-1, 1, SPPF, [1024, 5, 3, True]] # 9
|
|
33
|
+
- [-1, 2, C2PSA, [1024]] # 10
|
|
34
|
+
|
|
35
|
+
# YOLOE26n head
|
|
36
|
+
head:
|
|
37
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
38
|
+
- [[-1, 6], 1, Concat, [1]] # cat backbone P4
|
|
39
|
+
- [-1, 2, C3k2, [512, True]] # 13
|
|
40
|
+
|
|
41
|
+
- [-1, 1, nn.Upsample, [None, 2, "nearest"]]
|
|
42
|
+
- [[-1, 4], 1, Concat, [1]] # cat backbone P3
|
|
43
|
+
- [-1, 2, C3k2, [256, True]] # 16 (P3/8-small)
|
|
44
|
+
|
|
45
|
+
- [-1, 1, Conv, [256, 3, 2]]
|
|
46
|
+
- [[-1, 13], 1, Concat, [1]] # cat head P4
|
|
47
|
+
- [-1, 2, C3k2, [512, True]] # 19 (P4/16-medium)
|
|
48
|
+
|
|
49
|
+
- [-1, 1, Conv, [512, 3, 2]]
|
|
50
|
+
- [[-1, 10], 1, Concat, [1]] # cat head P5
|
|
51
|
+
- [-1, 1, C3k2, [1024, True, 0.5, True]] # 22 (P5/32-large)
|
|
52
|
+
|
|
53
|
+
- [[16, 19, 22], 1, YOLOESegment26, [nc, 32, 256, 512, True]] # YOLOESegment26(P3, P4, P5)
|