From 441126a77e3d65409e2a2b78d742a5f30a41acb2 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 27 Dec 2022 05:06:15 +0100 Subject: [PATCH] Add l/x models (#100) --- ultralytics/yolo/v8/models/yolov8l.yaml | 42 +++++++++++++++++++++++++ ultralytics/yolo/v8/models/yolov8x.yaml | 42 +++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 ultralytics/yolo/v8/models/yolov8l.yaml create mode 100644 ultralytics/yolo/v8/models/yolov8x.yaml diff --git a/ultralytics/yolo/v8/models/yolov8l.yaml b/ultralytics/yolo/v8/models/yolov8l.yaml new file mode 100644 index 0000000..762b589 --- /dev/null +++ b/ultralytics/yolo/v8/models/yolov8l.yaml @@ -0,0 +1,42 @@ +# YOLOv5 🚀 by Ultralytics, GPL-3.0 license + +# Parameters +nc: 80 # number of classes +depth_multiple: 1.00 # model depth multiple +width_multiple: 1.00 # layer channel multiple + +# YOLOv8.0l backbone +backbone: + # [from, number, module, args] + [[-1, 1, Conv, [64, 3, 2]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, C2f, [128, True]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 6, C2f, [256, True]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 6, C2f, [512, True]], + [-1, 1, Conv, [512, 3, 2]], # 7-P5/32 + [-1, 3, C2f, [512, True]], + [-1, 1, SPPF, [512, 5]], # 9 + ] + +# YOLOv8.0l head +head: + [[-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, C2f, [512]], # 13 + + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, C2f, [256]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 12], 1, Concat, [1]], # cat head P4 + [-1, 3, C2f, [512]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 9], 1, Concat, [1]], # cat head P5 + [-1, 3, C2f, [512]], # 23 (P5/32-large) + + [[15, 18, 21], 1, Detect, [nc]], # Detect(P3, P4, P5) + ] diff --git a/ultralytics/yolo/v8/models/yolov8x.yaml b/ultralytics/yolo/v8/models/yolov8x.yaml new file mode 100644 index 0000000..d484e85 --- /dev/null +++ b/ultralytics/yolo/v8/models/yolov8x.yaml @@ -0,0 +1,42 @@ +# YOLOv5 🚀 by Ultralytics, GPL-3.0 license + +# Parameters +nc: 80 # number of classes +depth_multiple: 1.00 # model depth multiple +width_multiple: 1.25 # layer channel multiple + +# YOLOv8.0x backbone +backbone: + # [from, number, module, args] + [[-1, 1, Conv, [64, 3, 2]], # 0-P1/2 + [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 + [-1, 3, C2f, [128, True]], + [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 + [-1, 6, C2f, [256, True]], + [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 + [-1, 6, C2f, [512, True]], + [-1, 1, Conv, [512, 3, 2]], # 7-P5/32 + [-1, 3, C2f, [512, True]], + [-1, 1, SPPF, [512, 5]], # 9 + ] + +# YOLOv8.0x head +head: + [[-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 6], 1, Concat, [1]], # cat backbone P4 + [-1, 3, C2f, [512]], # 13 + + [-1, 1, nn.Upsample, [None, 2, 'nearest']], + [[-1, 4], 1, Concat, [1]], # cat backbone P3 + [-1, 3, C2f, [256]], # 17 (P3/8-small) + + [-1, 1, Conv, [256, 3, 2]], + [[-1, 12], 1, Concat, [1]], # cat head P4 + [-1, 3, C2f, [512]], # 20 (P4/16-medium) + + [-1, 1, Conv, [512, 3, 2]], + [[-1, 9], 1, Concat, [1]], # cat head P5 + [-1, 3, C2f, [512]], # 23 (P5/32-large) + + [[15, 18, 21], 1, Detect, [nc]], # Detect(P3, P4, P5) + ]