@@ -1,51 +1,49 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 | |||
- [116,90, 156,198, 373,326] # P5/32 | |||
- [ 10,13, 16,30, 33,23 ] # P3/8 | |||
- [ 30,61, 62,45, 59,119 ] # P4/16 | |||
- [ 116,90, 156,198, 373,326 ] # P5/32 | |||
# darknet53 backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Conv, [32, 3, 1]], # 0 | |||
[-1, 1, Conv, [64, 3, 2]], # 1-P1/2 | |||
[-1, 1, Bottleneck, [64]], | |||
[-1, 1, Conv, [128, 3, 2]], # 3-P2/4 | |||
[-1, 2, Bottleneck, [128]], | |||
[-1, 1, Conv, [256, 3, 2]], # 5-P3/8 | |||
[-1, 8, Bottleneck, [256]], | |||
[-1, 1, Conv, [512, 3, 2]], # 7-P4/16 | |||
[-1, 8, Bottleneck, [512]], | |||
[-1, 1, Conv, [1024, 3, 2]], # 9-P5/32 | |||
[-1, 4, Bottleneck, [1024]], # 10 | |||
[ [ -1, 1, Conv, [ 32, 3, 1 ] ], # 0 | |||
[ -1, 1, Conv, [ 64, 3, 2 ] ], # 1-P1/2 | |||
[ -1, 1, Bottleneck, [ 64 ] ], | |||
[ -1, 1, Conv, [ 128, 3, 2 ] ], # 3-P2/4 | |||
[ -1, 2, Bottleneck, [ 128 ] ], | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], # 5-P3/8 | |||
[ -1, 8, Bottleneck, [ 256 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], # 7-P4/16 | |||
[ -1, 8, Bottleneck, [ 512 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P5/32 | |||
[ -1, 4, Bottleneck, [ 1024 ] ], # 10 | |||
] | |||
# YOLOv3-SPP head | |||
head: | |||
[[-1, 1, Bottleneck, [1024, False]], | |||
[-1, 1, SPP, [512, [5, 9, 13]]], | |||
[-1, 1, Conv, [1024, 3, 1]], | |||
[-1, 1, Conv, [512, 1, 1]], | |||
[-1, 1, Conv, [1024, 3, 1]], # 15 (P5/32-large) | |||
[ [ -1, 1, Bottleneck, [ 1024, False ] ], | |||
[ -1, 1, SPP, [ 512, [ 5, 9, 13 ] ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 1 ] ], | |||
[ -1, 1, Conv, [ 512, 1, 1 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 1 ] ], # 15 (P5/32-large) | |||
[-2, 1, Conv, [256, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 8], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 1, Bottleneck, [512, False]], | |||
[-1, 1, Bottleneck, [512, False]], | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 1, Conv, [512, 3, 1]], # 22 (P4/16-medium) | |||
[ -2, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 1, Bottleneck, [ 512, False ] ], | |||
[ -1, 1, Bottleneck, [ 512, False ] ], | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 1 ] ], # 22 (P4/16-medium) | |||
[-2, 1, Conv, [128, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 6], 1, Concat, [1]], # cat backbone P3 | |||
[-1, 1, Bottleneck, [256, False]], | |||
[-1, 2, Bottleneck, [256, False]], # 27 (P3/8-small) | |||
[ -2, 1, Conv, [ 128, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P3 | |||
[ -1, 1, Bottleneck, [ 256, False ] ], | |||
[ -1, 2, Bottleneck, [ 256, False ] ], # 27 (P3/8-small) | |||
[[27, 22, 15], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) | |||
[ [ 27, 22, 15 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5) | |||
] |
@@ -1,41 +1,39 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,14, 23,27, 37,58] # P4/16 | |||
- [81,82, 135,169, 344,319] # P5/32 | |||
- [ 10,14, 23,27, 37,58 ] # P4/16 | |||
- [ 81,82, 135,169, 344,319 ] # P5/32 | |||
# YOLOv3-tiny backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Conv, [16, 3, 1]], # 0 | |||
[-1, 1, nn.MaxPool2d, [2, 2, 0]], # 1-P1/2 | |||
[-1, 1, Conv, [32, 3, 1]], | |||
[-1, 1, nn.MaxPool2d, [2, 2, 0]], # 3-P2/4 | |||
[-1, 1, Conv, [64, 3, 1]], | |||
[-1, 1, nn.MaxPool2d, [2, 2, 0]], # 5-P3/8 | |||
[-1, 1, Conv, [128, 3, 1]], | |||
[-1, 1, nn.MaxPool2d, [2, 2, 0]], # 7-P4/16 | |||
[-1, 1, Conv, [256, 3, 1]], | |||
[-1, 1, nn.MaxPool2d, [2, 2, 0]], # 9-P5/32 | |||
[-1, 1, Conv, [512, 3, 1]], | |||
[-1, 1, nn.ZeroPad2d, [[0, 1, 0, 1]]], # 11 | |||
[-1, 1, nn.MaxPool2d, [2, 1, 0]], # 12 | |||
[ [ -1, 1, Conv, [ 16, 3, 1 ] ], # 0 | |||
[ -1, 1, nn.MaxPool2d, [ 2, 2, 0 ] ], # 1-P1/2 | |||
[ -1, 1, Conv, [ 32, 3, 1 ] ], | |||
[ -1, 1, nn.MaxPool2d, [ 2, 2, 0 ] ], # 3-P2/4 | |||
[ -1, 1, Conv, [ 64, 3, 1 ] ], | |||
[ -1, 1, nn.MaxPool2d, [ 2, 2, 0 ] ], # 5-P3/8 | |||
[ -1, 1, Conv, [ 128, 3, 1 ] ], | |||
[ -1, 1, nn.MaxPool2d, [ 2, 2, 0 ] ], # 7-P4/16 | |||
[ -1, 1, Conv, [ 256, 3, 1 ] ], | |||
[ -1, 1, nn.MaxPool2d, [ 2, 2, 0 ] ], # 9-P5/32 | |||
[ -1, 1, Conv, [ 512, 3, 1 ] ], | |||
[ -1, 1, nn.ZeroPad2d, [ [ 0, 1, 0, 1 ] ] ], # 11 | |||
[ -1, 1, nn.MaxPool2d, [ 2, 1, 0 ] ], # 12 | |||
] | |||
# YOLOv3-tiny head | |||
head: | |||
[[-1, 1, Conv, [1024, 3, 1]], | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 1, Conv, [512, 3, 1]], # 15 (P5/32-large) | |||
[ [ -1, 1, Conv, [ 1024, 3, 1 ] ], | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 1 ] ], # 15 (P5/32-large) | |||
[-2, 1, Conv, [128, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 8], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 1, Conv, [256, 3, 1]], # 19 (P4/16-medium) | |||
[ -2, 1, Conv, [ 128, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 1, Conv, [ 256, 3, 1 ] ], # 19 (P4/16-medium) | |||
[[19, 15], 1, Detect, [nc, anchors]], # Detect(P4, P5) | |||
[ [ 19, 15 ], 1, Detect, [ nc, anchors ] ], # Detect(P4, P5) | |||
] |
@@ -1,51 +1,49 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 | |||
- [116,90, 156,198, 373,326] # P5/32 | |||
- [ 10,13, 16,30, 33,23 ] # P3/8 | |||
- [ 30,61, 62,45, 59,119 ] # P4/16 | |||
- [ 116,90, 156,198, 373,326 ] # P5/32 | |||
# darknet53 backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Conv, [32, 3, 1]], # 0 | |||
[-1, 1, Conv, [64, 3, 2]], # 1-P1/2 | |||
[-1, 1, Bottleneck, [64]], | |||
[-1, 1, Conv, [128, 3, 2]], # 3-P2/4 | |||
[-1, 2, Bottleneck, [128]], | |||
[-1, 1, Conv, [256, 3, 2]], # 5-P3/8 | |||
[-1, 8, Bottleneck, [256]], | |||
[-1, 1, Conv, [512, 3, 2]], # 7-P4/16 | |||
[-1, 8, Bottleneck, [512]], | |||
[-1, 1, Conv, [1024, 3, 2]], # 9-P5/32 | |||
[-1, 4, Bottleneck, [1024]], # 10 | |||
[ [ -1, 1, Conv, [ 32, 3, 1 ] ], # 0 | |||
[ -1, 1, Conv, [ 64, 3, 2 ] ], # 1-P1/2 | |||
[ -1, 1, Bottleneck, [ 64 ] ], | |||
[ -1, 1, Conv, [ 128, 3, 2 ] ], # 3-P2/4 | |||
[ -1, 2, Bottleneck, [ 128 ] ], | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], # 5-P3/8 | |||
[ -1, 8, Bottleneck, [ 256 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], # 7-P4/16 | |||
[ -1, 8, Bottleneck, [ 512 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 2 ] ], # 9-P5/32 | |||
[ -1, 4, Bottleneck, [ 1024 ] ], # 10 | |||
] | |||
# YOLOv3 head | |||
head: | |||
[[-1, 1, Bottleneck, [1024, False]], | |||
[-1, 1, Conv, [512, [1, 1]]], | |||
[-1, 1, Conv, [1024, 3, 1]], | |||
[-1, 1, Conv, [512, 1, 1]], | |||
[-1, 1, Conv, [1024, 3, 1]], # 15 (P5/32-large) | |||
[ [ -1, 1, Bottleneck, [ 1024, False ] ], | |||
[ -1, 1, Conv, [ 512, [ 1, 1 ] ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 1 ] ], | |||
[ -1, 1, Conv, [ 512, 1, 1 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 1 ] ], # 15 (P5/32-large) | |||
[-2, 1, Conv, [256, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 8], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 1, Bottleneck, [512, False]], | |||
[-1, 1, Bottleneck, [512, False]], | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 1, Conv, [512, 3, 1]], # 22 (P4/16-medium) | |||
[ -2, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 8 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 1, Bottleneck, [ 512, False ] ], | |||
[ -1, 1, Bottleneck, [ 512, False ] ], | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 1 ] ], # 22 (P4/16-medium) | |||
[-2, 1, Conv, [128, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 6], 1, Concat, [1]], # cat backbone P3 | |||
[-1, 1, Bottleneck, [256, False]], | |||
[-1, 2, Bottleneck, [256, False]], # 27 (P3/8-small) | |||
[ -2, 1, Conv, [ 128, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P3 | |||
[ -1, 1, Bottleneck, [ 256, False ] ], | |||
[ -1, 2, Bottleneck, [ 256, False ] ], # 27 (P3/8-small) | |||
[[27, 22, 15], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) | |||
[ [ 27, 22, 15 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5) | |||
] |
@@ -1,42 +1,40 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 | |||
- [116,90, 156,198, 373,326] # P5/32 | |||
- [ 10,13, 16,30, 33,23 ] # P3/8 | |||
- [ 30,61, 62,45, 59,119 ] # P4/16 | |||
- [ 116,90, 156,198, 373,326 ] # P5/32 | |||
# YOLOv5 backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Focus, [64, 3]], # 0-P1/2 | |||
[-1, 1, Conv, [128, 3, 2]], # 1-P2/4 | |||
[-1, 3, Bottleneck, [128]], | |||
[-1, 1, Conv, [256, 3, 2]], # 3-P3/8 | |||
[-1, 9, BottleneckCSP, [256]], | |||
[-1, 1, Conv, [512, 3, 2]], # 5-P4/16 | |||
[-1, 9, BottleneckCSP, [512]], | |||
[-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 | |||
[-1, 1, SPP, [1024, [5, 9, 13]]], | |||
[-1, 6, BottleneckCSP, [1024]], # 9 | |||
[ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2 | |||
[ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4 | |||
[ -1, 3, Bottleneck, [ 128 ] ], | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8 | |||
[ -1, 9, BottleneckCSP, [ 256 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16 | |||
[ -1, 9, BottleneckCSP, [ 512 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 2 ] ], # 7-P5/32 | |||
[ -1, 1, SPP, [ 1024, [ 5, 9, 13 ] ] ], | |||
[ -1, 6, BottleneckCSP, [ 1024 ] ], # 9 | |||
] | |||
# YOLOv5 FPN head | |||
head: | |||
[[-1, 3, BottleneckCSP, [1024, False]], # 10 (P5/32-large) | |||
[ [ -1, 3, BottleneckCSP, [ 1024, False ] ], # 10 (P5/32-large) | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 6], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 1, Conv, [512, 1, 1]], | |||
[-1, 3, BottleneckCSP, [512, False]], # 14 (P4/16-medium) | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 1, Conv, [ 512, 1, 1 ] ], | |||
[ -1, 3, BottleneckCSP, [ 512, False ] ], # 14 (P4/16-medium) | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 4], 1, Concat, [1]], # cat backbone P3 | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 3, BottleneckCSP, [256, False]], # 18 (P3/8-small) | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3 | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 3, BottleneckCSP, [ 256, False ] ], # 18 (P3/8-small) | |||
[[18, 14, 10], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) | |||
[ [ 18, 14, 10 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5) | |||
] |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: 3 | |||
# YOLOv5 backbone |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: 3 | |||
# YOLOv5 backbone |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: 3 | |||
# YOLOv5 backbone |
@@ -1,48 +1,46 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 | |||
- [116,90, 156,198, 373,326] # P5/32 | |||
- [ 10,13, 16,30, 33,23 ] # P3/8 | |||
- [ 30,61, 62,45, 59,119 ] # P4/16 | |||
- [ 116,90, 156,198, 373,326 ] # P5/32 | |||
# YOLOv5 backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Focus, [64, 3]], # 0-P1/2 | |||
[-1, 1, Conv, [128, 3, 2]], # 1-P2/4 | |||
[-1, 3, BottleneckCSP, [128]], | |||
[-1, 1, Conv, [256, 3, 2]], # 3-P3/8 | |||
[-1, 9, BottleneckCSP, [256]], | |||
[-1, 1, Conv, [512, 3, 2]], # 5-P4/16 | |||
[-1, 9, BottleneckCSP, [512]], | |||
[-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 | |||
[-1, 1, SPP, [1024, [5, 9, 13]]], | |||
[-1, 3, BottleneckCSP, [1024, False]], # 9 | |||
[ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2 | |||
[ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4 | |||
[ -1, 3, BottleneckCSP, [ 128 ] ], | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8 | |||
[ -1, 9, BottleneckCSP, [ 256 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16 | |||
[ -1, 9, BottleneckCSP, [ 512 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 2 ] ], # 7-P5/32 | |||
[ -1, 1, SPP, [ 1024, [ 5, 9, 13 ] ] ], | |||
[ -1, 3, BottleneckCSP, [ 1024, False ] ], # 9 | |||
] | |||
# YOLOv5 PANet head | |||
head: | |||
[[-1, 1, Conv, [512, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 6], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 3, BottleneckCSP, [512, False]], # 13 | |||
[ [ -1, 1, Conv, [ 512, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 3, BottleneckCSP, [ 512, False ] ], # 13 | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 4], 1, Concat, [1]], # cat backbone P3 | |||
[-1, 3, BottleneckCSP, [256, False]], # 17 (P3/8-small) | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3 | |||
[ -1, 3, BottleneckCSP, [ 256, False ] ], # 17 (P3/8-small) | |||
[-1, 1, Conv, [256, 3, 2]], | |||
[[-1, 14], 1, Concat, [1]], # cat head P4 | |||
[-1, 3, BottleneckCSP, [512, False]], # 20 (P4/16-medium) | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], | |||
[ [ -1, 14 ], 1, Concat, [ 1 ] ], # cat head P4 | |||
[ -1, 3, BottleneckCSP, [ 512, False ] ], # 20 (P4/16-medium) | |||
[-1, 1, Conv, [512, 3, 2]], | |||
[[-1, 10], 1, Concat, [1]], # cat head P5 | |||
[-1, 3, BottleneckCSP, [1024, False]], # 23 (P5/32-large) | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], | |||
[ [ -1, 10 ], 1, Concat, [ 1 ] ], # cat head P5 | |||
[ -1, 3, BottleneckCSP, [ 1024, False ] ], # 23 (P5/32-large) | |||
[[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) | |||
[ [ 17, 20, 23 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5) | |||
] |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [ 19,27, 44,40, 38,94 ] # P3/8 | |||
- [ 96,68, 86,152, 180,137 ] # P4/16 |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 0.67 # model depth multiple | |||
width_multiple: 0.75 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [ 19,27, 44,40, 38,94 ] # P3/8 | |||
- [ 96,68, 86,152, 180,137 ] # P4/16 |
@@ -1,48 +1,46 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 0.33 # model depth multiple | |||
width_multiple: 0.50 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 | |||
- [116,90, 156,198, 373,326] # P5/32 | |||
- [ 10,13, 16,30, 33,23 ] # P3/8 | |||
- [ 30,61, 62,45, 59,119 ] # P4/16 | |||
- [ 116,90, 156,198, 373,326 ] # P5/32 | |||
# YOLOv5 backbone | |||
backbone: | |||
# [from, number, module, args] | |||
[[-1, 1, Focus, [64, 3]], # 0-P1/2 | |||
[-1, 1, Conv, [128, 3, 2]], # 1-P2/4 | |||
[-1, 3, C3, [128]], | |||
[-1, 1, Conv, [256, 3, 2]], # 3-P3/8 | |||
[-1, 9, C3, [256]], | |||
[-1, 1, Conv, [512, 3, 2]], # 5-P4/16 | |||
[-1, 9, C3, [512]], | |||
[-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 | |||
[-1, 1, SPP, [1024, [5, 9, 13]]], | |||
[-1, 3, C3TR, [1024, False]], # 9 <-------- C3TR() Transformer module | |||
[ [ -1, 1, Focus, [ 64, 3 ] ], # 0-P1/2 | |||
[ -1, 1, Conv, [ 128, 3, 2 ] ], # 1-P2/4 | |||
[ -1, 3, C3, [ 128 ] ], | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], # 3-P3/8 | |||
[ -1, 9, C3, [ 256 ] ], | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], # 5-P4/16 | |||
[ -1, 9, C3, [ 512 ] ], | |||
[ -1, 1, Conv, [ 1024, 3, 2 ] ], # 7-P5/32 | |||
[ -1, 1, SPP, [ 1024, [ 5, 9, 13 ] ] ], | |||
[ -1, 3, C3TR, [ 1024, False ] ], # 9 <-------- C3TR() Transformer module | |||
] | |||
# YOLOv5 head | |||
head: | |||
[[-1, 1, Conv, [512, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 6], 1, Concat, [1]], # cat backbone P4 | |||
[-1, 3, C3, [512, False]], # 13 | |||
[ [ -1, 1, Conv, [ 512, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 6 ], 1, Concat, [ 1 ] ], # cat backbone P4 | |||
[ -1, 3, C3, [ 512, False ] ], # 13 | |||
[-1, 1, Conv, [256, 1, 1]], | |||
[-1, 1, nn.Upsample, [None, 2, 'nearest']], | |||
[[-1, 4], 1, Concat, [1]], # cat backbone P3 | |||
[-1, 3, C3, [256, False]], # 17 (P3/8-small) | |||
[ -1, 1, Conv, [ 256, 1, 1 ] ], | |||
[ -1, 1, nn.Upsample, [ None, 2, 'nearest' ] ], | |||
[ [ -1, 4 ], 1, Concat, [ 1 ] ], # cat backbone P3 | |||
[ -1, 3, C3, [ 256, False ] ], # 17 (P3/8-small) | |||
[-1, 1, Conv, [256, 3, 2]], | |||
[[-1, 14], 1, Concat, [1]], # cat head P4 | |||
[-1, 3, C3, [512, False]], # 20 (P4/16-medium) | |||
[ -1, 1, Conv, [ 256, 3, 2 ] ], | |||
[ [ -1, 14 ], 1, Concat, [ 1 ] ], # cat head P4 | |||
[ -1, 3, C3, [ 512, False ] ], # 20 (P4/16-medium) | |||
[-1, 1, Conv, [512, 3, 2]], | |||
[[-1, 10], 1, Concat, [1]], # cat head P5 | |||
[-1, 3, C3, [1024, False]], # 23 (P5/32-large) | |||
[ -1, 1, Conv, [ 512, 3, 2 ] ], | |||
[ [ -1, 10 ], 1, Concat, [ 1 ] ], # cat head P5 | |||
[ -1, 3, C3, [ 1024, False ] ], # 23 (P5/32-large) | |||
[[17, 20, 23], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5) | |||
[ [ 17, 20, 23 ], 1, Detect, [ nc, anchors ] ], # Detect(P3, P4, P5) | |||
] |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 0.33 # model depth multiple | |||
width_multiple: 0.50 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [ 19,27, 44,40, 38,94 ] # P3/8 | |||
- [ 96,68, 86,152, 180,137 ] # P4/16 |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.33 # model depth multiple | |||
width_multiple: 1.25 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [ 19,27, 44,40, 38,94 ] # P3/8 | |||
- [ 96,68, 86,152, 180,137 ] # P4/16 |
@@ -154,7 +154,7 @@ class Model(nn.Module): | |||
x = m(x) # run | |||
y.append(x if m.i in self.save else None) # save output | |||
if feature_vis and m.type == 'models.common.SPP': | |||
feature_visualization(x, m.type, m.i) | |||
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.0 # model depth multiple | |||
width_multiple: 1.0 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 0.67 # model depth multiple | |||
width_multiple: 0.75 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 0.33 # model depth multiple | |||
width_multiple: 0.50 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 |
@@ -1,9 +1,7 @@ | |||
# parameters | |||
# Parameters | |||
nc: 80 # number of classes | |||
depth_multiple: 1.33 # model depth multiple | |||
width_multiple: 1.25 # layer channel multiple | |||
# anchors | |||
anchors: | |||
- [10,13, 16,30, 33,23] # P3/8 | |||
- [30,61, 62,45, 59,119] # P4/16 |