glenn-jocher commited on
Commit
6e6f77b
1 Parent(s): 6bfa9c2

Add YOLOv5-P6 models (#2083)

Browse files
models/hub/yolov5l6.yaml ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # parameters
2
+ nc: 80 # number of classes
3
+ depth_multiple: 1.0 # model depth multiple
4
+ width_multiple: 1.0 # layer channel multiple
5
+
6
+ # anchors
7
+ anchors:
8
+ - [ 19,27, 44,40, 38,94 ] # P3/8
9
+ - [ 96,68, 86,152, 180,137 ] # P4/16
10
+ - [ 140,301, 303,264, 238,542 ] # P5/32
11
+ - [ 436,615, 739,380, 925,792 ] # P6/64
12
+
13
+ # YOLOv5 backbone
14
+ backbone:
15
+ # [from, number, module, args]
16
+ [ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2
17
+ [ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4
18
+ [ -1, 3, C3, [ 128 ] ],
19
+ [ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8
20
+ [ -1, 9, C3, [ 256 ] ],
21
+ [ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16
22
+ [ -1, 9, C3, [ 512 ] ],
23
+ [ -1, 1, Conv, [ 768, 3, 2 ] ], # 7-P5/32
24
+ [ -1, 3, C3, [ 768 ] ],
25
+ [ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P6/64
26
+ [ -1, 1, SPP, [ 1024, [ 3, 5, 7 ] ] ],
27
+ [ -1, 3, C3, [ 1024, False ] ], # 11
28
+ ]
29
+
30
+ # YOLOv5 head
31
+ head:
32
+ [ [ -1, 1, Conv, [ 768, 1, 1 ] ],
33
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
34
+ [ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P5
35
+ [ -1, 3, C3, [ 768, False ] ], # 15
36
+
37
+ [ -1, 1, Conv, [ 512, 1, 1 ] ],
38
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
39
+ [ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4
40
+ [ -1, 3, C3, [ 512, False ] ], # 19
41
+
42
+ [ -1, 1, Conv, [ 256, 1, 1 ] ],
43
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
44
+ [ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3
45
+ [ -1, 3, C3, [ 256, False ] ], # 23 (P3/8-small)
46
+
47
+ [ -1, 1, Conv, [ 256, 3, 2 ] ],
48
+ [ [ -1, 20 ], 1, Concat, [ 1 ] ], # cat head P4
49
+ [ -1, 3, C3, [ 512, False ] ], # 26 (P4/16-medium)
50
+
51
+ [ -1, 1, Conv, [ 512, 3, 2 ] ],
52
+ [ [ -1, 16 ], 1, Concat, [ 1 ] ], # cat head P5
53
+ [ -1, 3, C3, [ 768, False ] ], # 29 (P5/32-large)
54
+
55
+ [ -1, 1, Conv, [ 768, 3, 2 ] ],
56
+ [ [ -1, 12 ], 1, Concat, [ 1 ] ], # cat head P6
57
+ [ -1, 3, C3, [ 1024, False ] ], # 32 (P5/64-xlarge)
58
+
59
+ [ [ 23, 26, 29, 32 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5, P6)
60
+ ]
models/hub/yolov5m6.yaml ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # parameters
2
+ nc: 80 # number of classes
3
+ depth_multiple: 0.67 # model depth multiple
4
+ width_multiple: 0.75 # layer channel multiple
5
+
6
+ # anchors
7
+ anchors:
8
+ - [ 19,27, 44,40, 38,94 ] # P3/8
9
+ - [ 96,68, 86,152, 180,137 ] # P4/16
10
+ - [ 140,301, 303,264, 238,542 ] # P5/32
11
+ - [ 436,615, 739,380, 925,792 ] # P6/64
12
+
13
+ # YOLOv5 backbone
14
+ backbone:
15
+ # [from, number, module, args]
16
+ [ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2
17
+ [ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4
18
+ [ -1, 3, C3, [ 128 ] ],
19
+ [ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8
20
+ [ -1, 9, C3, [ 256 ] ],
21
+ [ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16
22
+ [ -1, 9, C3, [ 512 ] ],
23
+ [ -1, 1, Conv, [ 768, 3, 2 ] ], # 7-P5/32
24
+ [ -1, 3, C3, [ 768 ] ],
25
+ [ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P6/64
26
+ [ -1, 1, SPP, [ 1024, [ 3, 5, 7 ] ] ],
27
+ [ -1, 3, C3, [ 1024, False ] ], # 11
28
+ ]
29
+
30
+ # YOLOv5 head
31
+ head:
32
+ [ [ -1, 1, Conv, [ 768, 1, 1 ] ],
33
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
34
+ [ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P5
35
+ [ -1, 3, C3, [ 768, False ] ], # 15
36
+
37
+ [ -1, 1, Conv, [ 512, 1, 1 ] ],
38
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
39
+ [ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4
40
+ [ -1, 3, C3, [ 512, False ] ], # 19
41
+
42
+ [ -1, 1, Conv, [ 256, 1, 1 ] ],
43
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
44
+ [ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3
45
+ [ -1, 3, C3, [ 256, False ] ], # 23 (P3/8-small)
46
+
47
+ [ -1, 1, Conv, [ 256, 3, 2 ] ],
48
+ [ [ -1, 20 ], 1, Concat, [ 1 ] ], # cat head P4
49
+ [ -1, 3, C3, [ 512, False ] ], # 26 (P4/16-medium)
50
+
51
+ [ -1, 1, Conv, [ 512, 3, 2 ] ],
52
+ [ [ -1, 16 ], 1, Concat, [ 1 ] ], # cat head P5
53
+ [ -1, 3, C3, [ 768, False ] ], # 29 (P5/32-large)
54
+
55
+ [ -1, 1, Conv, [ 768, 3, 2 ] ],
56
+ [ [ -1, 12 ], 1, Concat, [ 1 ] ], # cat head P6
57
+ [ -1, 3, C3, [ 1024, False ] ], # 32 (P5/64-xlarge)
58
+
59
+ [ [ 23, 26, 29, 32 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5, P6)
60
+ ]
models/hub/yolov5s6.yaml ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # parameters
2
+ nc: 80 # number of classes
3
+ depth_multiple: 0.33 # model depth multiple
4
+ width_multiple: 0.50 # layer channel multiple
5
+
6
+ # anchors
7
+ anchors:
8
+ - [ 19,27, 44,40, 38,94 ] # P3/8
9
+ - [ 96,68, 86,152, 180,137 ] # P4/16
10
+ - [ 140,301, 303,264, 238,542 ] # P5/32
11
+ - [ 436,615, 739,380, 925,792 ] # P6/64
12
+
13
+ # YOLOv5 backbone
14
+ backbone:
15
+ # [from, number, module, args]
16
+ [ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2
17
+ [ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4
18
+ [ -1, 3, C3, [ 128 ] ],
19
+ [ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8
20
+ [ -1, 9, C3, [ 256 ] ],
21
+ [ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16
22
+ [ -1, 9, C3, [ 512 ] ],
23
+ [ -1, 1, Conv, [ 768, 3, 2 ] ], # 7-P5/32
24
+ [ -1, 3, C3, [ 768 ] ],
25
+ [ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P6/64
26
+ [ -1, 1, SPP, [ 1024, [ 3, 5, 7 ] ] ],
27
+ [ -1, 3, C3, [ 1024, False ] ], # 11
28
+ ]
29
+
30
+ # YOLOv5 head
31
+ head:
32
+ [ [ -1, 1, Conv, [ 768, 1, 1 ] ],
33
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
34
+ [ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P5
35
+ [ -1, 3, C3, [ 768, False ] ], # 15
36
+
37
+ [ -1, 1, Conv, [ 512, 1, 1 ] ],
38
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
39
+ [ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4
40
+ [ -1, 3, C3, [ 512, False ] ], # 19
41
+
42
+ [ -1, 1, Conv, [ 256, 1, 1 ] ],
43
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
44
+ [ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3
45
+ [ -1, 3, C3, [ 256, False ] ], # 23 (P3/8-small)
46
+
47
+ [ -1, 1, Conv, [ 256, 3, 2 ] ],
48
+ [ [ -1, 20 ], 1, Concat, [ 1 ] ], # cat head P4
49
+ [ -1, 3, C3, [ 512, False ] ], # 26 (P4/16-medium)
50
+
51
+ [ -1, 1, Conv, [ 512, 3, 2 ] ],
52
+ [ [ -1, 16 ], 1, Concat, [ 1 ] ], # cat head P5
53
+ [ -1, 3, C3, [ 768, False ] ], # 29 (P5/32-large)
54
+
55
+ [ -1, 1, Conv, [ 768, 3, 2 ] ],
56
+ [ [ -1, 12 ], 1, Concat, [ 1 ] ], # cat head P6
57
+ [ -1, 3, C3, [ 1024, False ] ], # 32 (P5/64-xlarge)
58
+
59
+ [ [ 23, 26, 29, 32 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5, P6)
60
+ ]
models/hub/yolov5x6.yaml ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # parameters
2
+ nc: 80 # number of classes
3
+ depth_multiple: 1.33 # model depth multiple
4
+ width_multiple: 1.25 # layer channel multiple
5
+
6
+ # anchors
7
+ anchors:
8
+ - [ 19,27, 44,40, 38,94 ] # P3/8
9
+ - [ 96,68, 86,152, 180,137 ] # P4/16
10
+ - [ 140,301, 303,264, 238,542 ] # P5/32
11
+ - [ 436,615, 739,380, 925,792 ] # P6/64
12
+
13
+ # YOLOv5 backbone
14
+ backbone:
15
+ # [from, number, module, args]
16
+ [ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2
17
+ [ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4
18
+ [ -1, 3, C3, [ 128 ] ],
19
+ [ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8
20
+ [ -1, 9, C3, [ 256 ] ],
21
+ [ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16
22
+ [ -1, 9, C3, [ 512 ] ],
23
+ [ -1, 1, Conv, [ 768, 3, 2 ] ], # 7-P5/32
24
+ [ -1, 3, C3, [ 768 ] ],
25
+ [ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P6/64
26
+ [ -1, 1, SPP, [ 1024, [ 3, 5, 7 ] ] ],
27
+ [ -1, 3, C3, [ 1024, False ] ], # 11
28
+ ]
29
+
30
+ # YOLOv5 head
31
+ head:
32
+ [ [ -1, 1, Conv, [ 768, 1, 1 ] ],
33
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
34
+ [ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P5
35
+ [ -1, 3, C3, [ 768, False ] ], # 15
36
+
37
+ [ -1, 1, Conv, [ 512, 1, 1 ] ],
38
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
39
+ [ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4
40
+ [ -1, 3, C3, [ 512, False ] ], # 19
41
+
42
+ [ -1, 1, Conv, [ 256, 1, 1 ] ],
43
+ [ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ],
44
+ [ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3
45
+ [ -1, 3, C3, [ 256, False ] ], # 23 (P3/8-small)
46
+
47
+ [ -1, 1, Conv, [ 256, 3, 2 ] ],
48
+ [ [ -1, 20 ], 1, Concat, [ 1 ] ], # cat head P4
49
+ [ -1, 3, C3, [ 512, False ] ], # 26 (P4/16-medium)
50
+
51
+ [ -1, 1, Conv, [ 512, 3, 2 ] ],
52
+ [ [ -1, 16 ], 1, Concat, [ 1 ] ], # cat head P5
53
+ [ -1, 3, C3, [ 768, False ] ], # 29 (P5/32-large)
54
+
55
+ [ -1, 1, Conv, [ 768, 3, 2 ] ],
56
+ [ [ -1, 12 ], 1, Concat, [ 1 ] ], # cat head P6
57
+ [ -1, 3, C3, [ 1024, False ] ], # 32 (P5/64-xlarge)
58
+
59
+ [ [ 23, 26, 29, 32 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5, P6)
60
+ ]