ultralytics 8.1.28__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.
Files changed (247) hide show
  1. tests/__init__.py +22 -0
  2. tests/conftest.py +83 -0
  3. tests/test_cli.py +122 -0
  4. tests/test_cuda.py +155 -0
  5. tests/test_engine.py +131 -0
  6. tests/test_exports.py +216 -0
  7. tests/test_integrations.py +150 -0
  8. tests/test_python.py +615 -0
  9. tests/test_solutions.py +94 -0
  10. ultralytics/__init__.py +11 -8
  11. ultralytics/cfg/__init__.py +569 -131
  12. ultralytics/cfg/datasets/Argoverse.yaml +2 -1
  13. ultralytics/cfg/datasets/DOTAv1.5.yaml +3 -2
  14. ultralytics/cfg/datasets/DOTAv1.yaml +3 -2
  15. ultralytics/cfg/datasets/GlobalWheat2020.yaml +3 -2
  16. ultralytics/cfg/datasets/ImageNet.yaml +2 -1
  17. ultralytics/cfg/datasets/Objects365.yaml +5 -4
  18. ultralytics/cfg/datasets/SKU-110K.yaml +2 -1
  19. ultralytics/cfg/datasets/VOC.yaml +3 -2
  20. ultralytics/cfg/datasets/VisDrone.yaml +6 -5
  21. ultralytics/cfg/datasets/african-wildlife.yaml +25 -0
  22. ultralytics/cfg/datasets/brain-tumor.yaml +23 -0
  23. ultralytics/cfg/datasets/carparts-seg.yaml +3 -2
  24. ultralytics/cfg/datasets/coco-pose.yaml +7 -6
  25. ultralytics/cfg/datasets/coco.yaml +3 -2
  26. ultralytics/cfg/datasets/coco128-seg.yaml +4 -3
  27. ultralytics/cfg/datasets/coco128.yaml +4 -3
  28. ultralytics/cfg/datasets/coco8-pose.yaml +3 -2
  29. ultralytics/cfg/datasets/coco8-seg.yaml +3 -2
  30. ultralytics/cfg/datasets/coco8.yaml +3 -2
  31. ultralytics/cfg/datasets/crack-seg.yaml +3 -2
  32. ultralytics/cfg/datasets/dog-pose.yaml +24 -0
  33. ultralytics/cfg/datasets/dota8.yaml +3 -2
  34. ultralytics/cfg/datasets/hand-keypoints.yaml +26 -0
  35. ultralytics/cfg/datasets/lvis.yaml +1236 -0
  36. ultralytics/cfg/datasets/medical-pills.yaml +22 -0
  37. ultralytics/cfg/datasets/open-images-v7.yaml +2 -1
  38. ultralytics/cfg/datasets/package-seg.yaml +5 -4
  39. ultralytics/cfg/datasets/signature.yaml +21 -0
  40. ultralytics/cfg/datasets/tiger-pose.yaml +3 -2
  41. ultralytics/cfg/datasets/xView.yaml +2 -1
  42. ultralytics/cfg/default.yaml +14 -11
  43. ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +24 -0
  44. ultralytics/cfg/models/11/yolo11-cls.yaml +33 -0
  45. ultralytics/cfg/models/11/yolo11-obb.yaml +50 -0
  46. ultralytics/cfg/models/11/yolo11-pose.yaml +51 -0
  47. ultralytics/cfg/models/11/yolo11-seg.yaml +50 -0
  48. ultralytics/cfg/models/11/yolo11.yaml +50 -0
  49. ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +5 -2
  50. ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +5 -2
  51. ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +5 -2
  52. ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +5 -2
  53. ultralytics/cfg/models/v10/yolov10b.yaml +45 -0
  54. ultralytics/cfg/models/v10/yolov10l.yaml +45 -0
  55. ultralytics/cfg/models/v10/yolov10m.yaml +45 -0
  56. ultralytics/cfg/models/v10/yolov10n.yaml +45 -0
  57. ultralytics/cfg/models/v10/yolov10s.yaml +45 -0
  58. ultralytics/cfg/models/v10/yolov10x.yaml +45 -0
  59. ultralytics/cfg/models/v3/yolov3-spp.yaml +5 -2
  60. ultralytics/cfg/models/v3/yolov3-tiny.yaml +5 -2
  61. ultralytics/cfg/models/v3/yolov3.yaml +5 -2
  62. ultralytics/cfg/models/v5/yolov5-p6.yaml +5 -2
  63. ultralytics/cfg/models/v5/yolov5.yaml +5 -2
  64. ultralytics/cfg/models/v6/yolov6.yaml +5 -2
  65. ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +5 -2
  66. ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +5 -2
  67. ultralytics/cfg/models/v8/yolov8-cls.yaml +5 -2
  68. ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +6 -2
  69. ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +6 -2
  70. ultralytics/cfg/models/v8/yolov8-ghost.yaml +5 -2
  71. ultralytics/cfg/models/v8/yolov8-obb.yaml +5 -2
  72. ultralytics/cfg/models/v8/yolov8-p2.yaml +5 -2
  73. ultralytics/cfg/models/v8/yolov8-p6.yaml +10 -7
  74. ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +5 -2
  75. ultralytics/cfg/models/v8/yolov8-pose.yaml +5 -2
  76. ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +5 -2
  77. ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +5 -2
  78. ultralytics/cfg/models/v8/yolov8-seg.yaml +5 -2
  79. ultralytics/cfg/models/v8/yolov8-world.yaml +5 -2
  80. ultralytics/cfg/models/v8/yolov8-worldv2.yaml +5 -2
  81. ultralytics/cfg/models/v8/yolov8.yaml +5 -2
  82. ultralytics/cfg/models/v9/yolov9c-seg.yaml +41 -0
  83. ultralytics/cfg/models/v9/yolov9c.yaml +30 -25
  84. ultralytics/cfg/models/v9/yolov9e-seg.yaml +64 -0
  85. ultralytics/cfg/models/v9/yolov9e.yaml +46 -42
  86. ultralytics/cfg/models/v9/yolov9m.yaml +41 -0
  87. ultralytics/cfg/models/v9/yolov9s.yaml +41 -0
  88. ultralytics/cfg/models/v9/yolov9t.yaml +41 -0
  89. ultralytics/cfg/solutions/default.yaml +24 -0
  90. ultralytics/cfg/trackers/botsort.yaml +8 -5
  91. ultralytics/cfg/trackers/bytetrack.yaml +8 -5
  92. ultralytics/data/__init__.py +14 -3
  93. ultralytics/data/annotator.py +37 -15
  94. ultralytics/data/augment.py +1783 -289
  95. ultralytics/data/base.py +62 -27
  96. ultralytics/data/build.py +36 -8
  97. ultralytics/data/converter.py +196 -36
  98. ultralytics/data/dataset.py +233 -94
  99. ultralytics/data/loaders.py +199 -96
  100. ultralytics/data/split_dota.py +39 -29
  101. ultralytics/data/utils.py +110 -40
  102. ultralytics/engine/__init__.py +1 -1
  103. ultralytics/engine/exporter.py +569 -242
  104. ultralytics/engine/model.py +604 -252
  105. ultralytics/engine/predictor.py +22 -11
  106. ultralytics/engine/results.py +1228 -218
  107. ultralytics/engine/trainer.py +190 -129
  108. ultralytics/engine/tuner.py +18 -18
  109. ultralytics/engine/validator.py +18 -15
  110. ultralytics/hub/__init__.py +31 -13
  111. ultralytics/hub/auth.py +11 -7
  112. ultralytics/hub/google/__init__.py +159 -0
  113. ultralytics/hub/session.py +128 -94
  114. ultralytics/hub/utils.py +20 -21
  115. ultralytics/models/__init__.py +4 -2
  116. ultralytics/models/fastsam/__init__.py +2 -3
  117. ultralytics/models/fastsam/model.py +26 -4
  118. ultralytics/models/fastsam/predict.py +127 -63
  119. ultralytics/models/fastsam/utils.py +1 -44
  120. ultralytics/models/fastsam/val.py +1 -1
  121. ultralytics/models/nas/__init__.py +1 -1
  122. ultralytics/models/nas/model.py +21 -10
  123. ultralytics/models/nas/predict.py +3 -6
  124. ultralytics/models/nas/val.py +4 -4
  125. ultralytics/models/rtdetr/__init__.py +1 -1
  126. ultralytics/models/rtdetr/model.py +1 -1
  127. ultralytics/models/rtdetr/predict.py +6 -8
  128. ultralytics/models/rtdetr/train.py +6 -2
  129. ultralytics/models/rtdetr/val.py +3 -3
  130. ultralytics/models/sam/__init__.py +3 -3
  131. ultralytics/models/sam/amg.py +29 -23
  132. ultralytics/models/sam/build.py +211 -13
  133. ultralytics/models/sam/model.py +91 -30
  134. ultralytics/models/sam/modules/__init__.py +1 -1
  135. ultralytics/models/sam/modules/blocks.py +1129 -0
  136. ultralytics/models/sam/modules/decoders.py +381 -53
  137. ultralytics/models/sam/modules/encoders.py +515 -324
  138. ultralytics/models/sam/modules/memory_attention.py +237 -0
  139. ultralytics/models/sam/modules/sam.py +969 -21
  140. ultralytics/models/sam/modules/tiny_encoder.py +425 -154
  141. ultralytics/models/sam/modules/transformer.py +159 -60
  142. ultralytics/models/sam/modules/utils.py +293 -0
  143. ultralytics/models/sam/predict.py +1263 -132
  144. ultralytics/models/utils/__init__.py +1 -1
  145. ultralytics/models/utils/loss.py +36 -24
  146. ultralytics/models/utils/ops.py +3 -7
  147. ultralytics/models/yolo/__init__.py +3 -3
  148. ultralytics/models/yolo/classify/__init__.py +1 -1
  149. ultralytics/models/yolo/classify/predict.py +7 -8
  150. ultralytics/models/yolo/classify/train.py +17 -22
  151. ultralytics/models/yolo/classify/val.py +8 -4
  152. ultralytics/models/yolo/detect/__init__.py +1 -1
  153. ultralytics/models/yolo/detect/predict.py +3 -5
  154. ultralytics/models/yolo/detect/train.py +11 -4
  155. ultralytics/models/yolo/detect/val.py +90 -52
  156. ultralytics/models/yolo/model.py +14 -9
  157. ultralytics/models/yolo/obb/__init__.py +1 -1
  158. ultralytics/models/yolo/obb/predict.py +2 -2
  159. ultralytics/models/yolo/obb/train.py +5 -3
  160. ultralytics/models/yolo/obb/val.py +41 -23
  161. ultralytics/models/yolo/pose/__init__.py +1 -1
  162. ultralytics/models/yolo/pose/predict.py +3 -5
  163. ultralytics/models/yolo/pose/train.py +2 -2
  164. ultralytics/models/yolo/pose/val.py +51 -17
  165. ultralytics/models/yolo/segment/__init__.py +1 -1
  166. ultralytics/models/yolo/segment/predict.py +3 -5
  167. ultralytics/models/yolo/segment/train.py +2 -2
  168. ultralytics/models/yolo/segment/val.py +60 -19
  169. ultralytics/models/yolo/world/__init__.py +5 -0
  170. ultralytics/models/yolo/world/train.py +92 -0
  171. ultralytics/models/yolo/world/train_world.py +109 -0
  172. ultralytics/nn/__init__.py +1 -1
  173. ultralytics/nn/autobackend.py +228 -93
  174. ultralytics/nn/modules/__init__.py +39 -14
  175. ultralytics/nn/modules/activation.py +21 -0
  176. ultralytics/nn/modules/block.py +527 -67
  177. ultralytics/nn/modules/conv.py +24 -7
  178. ultralytics/nn/modules/head.py +177 -34
  179. ultralytics/nn/modules/transformer.py +6 -5
  180. ultralytics/nn/modules/utils.py +1 -2
  181. ultralytics/nn/tasks.py +225 -77
  182. ultralytics/solutions/__init__.py +30 -1
  183. ultralytics/solutions/ai_gym.py +96 -143
  184. ultralytics/solutions/analytics.py +247 -0
  185. ultralytics/solutions/distance_calculation.py +78 -135
  186. ultralytics/solutions/heatmap.py +93 -247
  187. ultralytics/solutions/object_counter.py +184 -259
  188. ultralytics/solutions/parking_management.py +246 -0
  189. ultralytics/solutions/queue_management.py +112 -0
  190. ultralytics/solutions/region_counter.py +116 -0
  191. ultralytics/solutions/security_alarm.py +144 -0
  192. ultralytics/solutions/solutions.py +178 -0
  193. ultralytics/solutions/speed_estimation.py +86 -174
  194. ultralytics/solutions/streamlit_inference.py +190 -0
  195. ultralytics/solutions/trackzone.py +68 -0
  196. ultralytics/trackers/__init__.py +1 -1
  197. ultralytics/trackers/basetrack.py +32 -13
  198. ultralytics/trackers/bot_sort.py +61 -28
  199. ultralytics/trackers/byte_tracker.py +83 -51
  200. ultralytics/trackers/track.py +21 -6
  201. ultralytics/trackers/utils/__init__.py +1 -1
  202. ultralytics/trackers/utils/gmc.py +62 -48
  203. ultralytics/trackers/utils/kalman_filter.py +166 -35
  204. ultralytics/trackers/utils/matching.py +40 -21
  205. ultralytics/utils/__init__.py +511 -239
  206. ultralytics/utils/autobatch.py +40 -22
  207. ultralytics/utils/benchmarks.py +266 -85
  208. ultralytics/utils/callbacks/__init__.py +1 -1
  209. ultralytics/utils/callbacks/base.py +1 -3
  210. ultralytics/utils/callbacks/clearml.py +7 -6
  211. ultralytics/utils/callbacks/comet.py +39 -17
  212. ultralytics/utils/callbacks/dvc.py +1 -1
  213. ultralytics/utils/callbacks/hub.py +16 -16
  214. ultralytics/utils/callbacks/mlflow.py +28 -24
  215. ultralytics/utils/callbacks/neptune.py +6 -2
  216. ultralytics/utils/callbacks/raytune.py +3 -4
  217. ultralytics/utils/callbacks/tensorboard.py +18 -18
  218. ultralytics/utils/callbacks/wb.py +27 -20
  219. ultralytics/utils/checks.py +160 -100
  220. ultralytics/utils/dist.py +2 -1
  221. ultralytics/utils/downloads.py +44 -37
  222. ultralytics/utils/errors.py +1 -1
  223. ultralytics/utils/files.py +72 -38
  224. ultralytics/utils/instance.py +41 -19
  225. ultralytics/utils/loss.py +84 -56
  226. ultralytics/utils/metrics.py +61 -56
  227. ultralytics/utils/ops.py +94 -89
  228. ultralytics/utils/patches.py +30 -14
  229. ultralytics/utils/plotting.py +600 -269
  230. ultralytics/utils/tal.py +67 -26
  231. ultralytics/utils/torch_utils.py +302 -102
  232. ultralytics/utils/triton.py +2 -1
  233. ultralytics/utils/tuner.py +21 -12
  234. ultralytics-8.3.62.dist-info/METADATA +370 -0
  235. ultralytics-8.3.62.dist-info/RECORD +241 -0
  236. {ultralytics-8.1.28.dist-info → ultralytics-8.3.62.dist-info}/WHEEL +1 -1
  237. ultralytics/data/explorer/__init__.py +0 -5
  238. ultralytics/data/explorer/explorer.py +0 -472
  239. ultralytics/data/explorer/gui/__init__.py +0 -1
  240. ultralytics/data/explorer/gui/dash.py +0 -268
  241. ultralytics/data/explorer/utils.py +0 -166
  242. ultralytics/models/fastsam/prompt.py +0 -357
  243. ultralytics-8.1.28.dist-info/METADATA +0 -373
  244. ultralytics-8.1.28.dist-info/RECORD +0 -197
  245. {ultralytics-8.1.28.dist-info → ultralytics-8.3.62.dist-info}/LICENSE +0 -0
  246. {ultralytics-8.1.28.dist-info → ultralytics-8.3.62.dist-info}/entry_points.txt +0 -0
  247. {ultralytics-8.1.28.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 YOLO 🚀, AGPL-3.0 license
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 YOLO 🚀, AGPL-3.0 license
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/train # train images (relative to 'path') 1920 images
13
- val: images/val # val images (relative to 'path') 89 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://ultralytics.com/assets/package-seg.zip
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 YOLO 🚀, AGPL-3.0 license
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://ultralytics.com/assets/tiger-pose.zip
25
+ download: https://github.com/ultralytics/assets/releases/download/v0.0.0/tiger-pose.zip
@@ -1,4 +1,5 @@
1
- # Ultralytics YOLO 🚀, AGPL-3.0 license
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/
@@ -1,17 +1,19 @@
1
- # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # Default training settings and hyperparameters for medium-augmentation COCO training
1
+ # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
3
2
 
4
- task: detect # (str) YOLO task, i.e. detect, segment, classify, pose
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. coco128.yaml
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,h] for predict and export modes
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 should overlap during training (segment train only)
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: False # (bool) ONNX: simplify model
86
+ simplify: True # (bool) ONNX: simplify model using `onnxslim`
85
87
  opset: # (int, optional) ONNX: opset version
86
- workspace: 4 # (int) TensorRT: workspace size (GB)
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 evaluation/inference (0-1)
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 YOLO 🚀, AGPL-3.0 license
2
- # RT-DETR-l object detection model with P3-P5 outputs. For details see https://docs.ultralytics.com/models/rtdetr
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 YOLO 🚀, AGPL-3.0 license
2
- # RT-DETR-ResNet101 object detection model with P3-P5 outputs.
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 YOLO 🚀, AGPL-3.0 license
2
- # RT-DETR-ResNet50 object detection model with P3-P5 outputs.
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 YOLO 🚀, AGPL-3.0 license
2
- # RT-DETR-x object detection model with P3-P5 outputs. For details see https://docs.ultralytics.com/models/rtdetr
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)