Spaces:
Running
Running
# YOLOv12 π, AGPL-3.0 license | |
# YOLOv12 object detection model with P3-P5 outputs. For Usage examples see https://docs.ultralytics.com/tasks/detect | |
# Parameters | |
nc: 80 # number of classes | |
scales: # model compound scaling constants, i.e. 'model=yolov12n.yaml' will call yolov12.yaml with scale 'n' | |
# [depth, width, max_channels] | |
n: [0.50, 0.25, 1024] # summary: 465 layers, 2,603,056 parameters, 2,603,040 gradients, 6.7 GFLOPs | |
s: [0.50, 0.50, 1024] # summary: 465 layers, 9,285,632 parameters, 9,285,616 gradients, 21.7 GFLOPs | |
m: [0.50, 1.00, 512] # summary: 501 layers, 20,201,216 parameters, 20,201,200 gradients, 68.1 GFLOPs | |
l: [1.00, 1.00, 512] # summary: 831 layers, 26,454,880 parameters, 26,454,864 gradients, 89.7 GFLOPs | |
x: [1.00, 1.50, 512] # summary: 831 layers, 59,216,928 parameters, 59,216,912 gradients, 200.3 GFLOPs | |
# YOLO12n backbone | |
backbone: | |
# [from, repeats, module, args] | |
- [-1, 1, Conv, [64, 3, 2]] # 0-P1/2 | |
- [-1, 1, Conv, [128, 3, 2]] # 1-P2/4 | |
- [-1, 2, C3k2, [256, False, 0.25]] | |
- [-1, 1, Conv, [256, 3, 2]] # 3-P3/8 | |
- [-1, 2, C3k2, [512, False, 0.25]] | |
- [-1, 1, Conv, [512, 3, 2]] # 5-P4/16 | |
- [-1, 4, A2C2f, [512, True, 4]] | |
- [-1, 1, Conv, [1024, 3, 2]] # 7-P5/32 | |
- [-1, 4, A2C2f, [1024, True, 1]] # 8 | |
# YOLO12n head | |
head: | |
- [-1, 1, nn.Upsample, [None, 2, "nearest"]] | |
- [[-1, 6], 1, Concat, [1]] # cat backbone P4 | |
- [-1, 2, A2C2f, [512, False, -1]] # 11 | |
- [-1, 1, nn.Upsample, [None, 2, "nearest"]] | |
- [[-1, 4], 1, Concat, [1]] # cat backbone P3 | |
- [-1, 2, A2C2f, [256, False, -1]] # 14 | |
- [-1, 1, Conv, [256, 3, 2]] | |
- [[-1, 11], 1, Concat, [1]] # cat head P4 | |
- [-1, 2, A2C2f, [512, False, -1]] # 17 | |
- [-1, 1, Conv, [512, 3, 2]] | |
- [[-1, 8], 1, Concat, [1]] # cat head P5 | |
- [-1, 2, C3k2, [1024, True]] # 20 (P5/32-large) | |
- [[14, 17, 20], 1, Detect, [nc]] # Detect(P3, P4, P5) | |